Source code for httk.web.model.page

from dataclasses import dataclass, field
from pathlib import Path
from typing import Literal


@dataclass(frozen=True)
[docs] class ResolvedRoute:
[docs] kind: Literal["static", "content", "missing"]
[docs] route: str
[docs] source_path: Path | None = None
@dataclass(frozen=True)
[docs] class PageResult:
[docs] status_code: int
[docs] content_type: str
[docs] body: bytes
[docs] metadata: dict[str, object] = field(default_factory=dict)
[docs] warnings: list[str] = field(default_factory=list)
@dataclass(frozen=True)
[docs] class PublishReport:
[docs] written_files: list[Path] = field(default_factory=list)
[docs] warnings: list[str] = field(default_factory=list)