httk.serve.web.model ==================== .. py:module:: httk.serve.web.model Submodules ---------- .. toctree:: :maxdepth: 1 /reference/autoapi/httk/serve/web/model/config/index /reference/autoapi/httk/serve/web/model/errors/index /reference/autoapi/httk/serve/web/model/page/index /reference/autoapi/httk/serve/web/model/request/index Exceptions ---------- .. autoapisummary:: httk.serve.web.model.FunctionInjectionError httk.serve.web.model.NotFoundError httk.serve.web.model.WebError httk.serve.web.model.WidgetDiscoveryError httk.serve.web.model.WidgetError httk.serve.web.model.WidgetParseError httk.serve.web.model.WidgetRenderingError httk.serve.web.model.WidgetValidationError Classes ------- .. autoapisummary:: httk.serve.web.model.SiteConfig httk.serve.web.model.PageResult httk.serve.web.model.PublishReport httk.serve.web.model.ResolvedRoute httk.serve.web.model.HttpRequestContext Package Contents ---------------- .. py:class:: SiteConfig .. py:attribute:: srcdir :type: pathlib.Path .. py:attribute:: content_subdir :type: str :value: 'content' .. py:attribute:: static_subdir :type: str :value: 'static' .. py:attribute:: template_subdir :type: str :value: 'templates' .. py:attribute:: functions_subdir :type: str :value: 'functions' .. py:attribute:: widgets_subdir :type: str :value: 'widgets' .. py:attribute:: baseurl :type: str | None :value: None .. py:attribute:: host_static :type: str | None :value: None .. py:attribute:: compatibility_mode :type: bool :value: False .. py:attribute:: config_name :type: str :value: 'config' .. py:attribute:: publish_use_urls_without_ext :type: bool :value: True .. py:method:: from_srcdir(srcdir: str | pathlib.Path, *, baseurl: str | None = None, host_static: str | None = None, compatibility_mode: bool = False, config_name: str = 'config', publish_use_urls_without_ext: bool = True) -> Self :classmethod: .. py:property:: content_dir :type: pathlib.Path .. py:property:: static_dir :type: pathlib.Path .. py:property:: template_dir :type: pathlib.Path .. py:property:: functions_dir :type: pathlib.Path .. py:property:: widgets_dir :type: pathlib.Path .. py:exception:: FunctionInjectionError(message: str) Bases: :py:obj:`WebError` Common base class for all non-exit exceptions. .. py:exception:: NotFoundError(message: str = 'Not Found') Bases: :py:obj:`WebError` Common base class for all non-exit exceptions. .. py:exception:: WebError(message: str, *, status_code: int = 500) Bases: :py:obj:`Exception` Common base class for all non-exit exceptions. .. py:attribute:: status_code :value: 500 .. py:exception:: WidgetDiscoveryError(message: str, *, source_path: object | None = None, line: int | None = None, column: int | None = None, snippet: str | None = None, widget_name: str | None = None, widget_id: str | None = None, correction: str | None = None) Bases: :py:obj:`WidgetError` Base error for a widget invocation with source-aware diagnostics. .. py:attribute:: phase :value: 'discovery' .. py:exception:: WidgetError(message: str, *, source_path: object | None = None, line: int | None = None, column: int | None = None, snippet: str | None = None, widget_name: str | None = None, widget_id: str | None = None, correction: str | None = None) Bases: :py:obj:`WebError` Base error for a widget invocation with source-aware diagnostics. .. py:attribute:: phase :value: 'widget' .. py:exception:: WidgetParseError(message: str, *, source_path: object | None = None, line: int | None = None, column: int | None = None, snippet: str | None = None, widget_name: str | None = None, widget_id: str | None = None, correction: str | None = None) Bases: :py:obj:`WidgetError` Base error for a widget invocation with source-aware diagnostics. .. py:attribute:: phase :value: 'parse' .. py:exception:: WidgetRenderingError(message: str, *, source_path: object | None = None, line: int | None = None, column: int | None = None, snippet: str | None = None, widget_name: str | None = None, widget_id: str | None = None, correction: str | None = None) Bases: :py:obj:`WidgetError` Base error for a widget invocation with source-aware diagnostics. .. py:attribute:: phase :value: 'rendering' .. py:exception:: WidgetValidationError(message: str, *, source_path: object | None = None, line: int | None = None, column: int | None = None, snippet: str | None = None, widget_name: str | None = None, widget_id: str | None = None, correction: str | None = None) Bases: :py:obj:`WidgetError` Base error for a widget invocation with source-aware diagnostics. .. py:attribute:: phase :value: 'validation' .. py:class:: PageResult .. py:attribute:: status_code :type: int .. py:attribute:: content_type :type: str .. py:attribute:: body :type: bytes .. py:attribute:: metadata :type: dict[str, object] .. py:attribute:: warnings :type: list[str] :value: [] .. py:attribute:: assets :type: tuple[httk.serve.web.widgets.core.WidgetAsset, Ellipsis] :value: () .. py:class:: PublishReport .. py:attribute:: written_files :type: list[pathlib.Path] :value: [] .. py:attribute:: warnings :type: list[str] :value: [] .. py:class:: ResolvedRoute .. py:attribute:: kind :type: Literal['static', 'content', 'missing'] .. py:attribute:: route :type: str .. py:attribute:: source_path :type: pathlib.Path | None :value: None .. py:class:: HttpRequestContext .. py:attribute:: method :type: str :value: 'GET' .. py:attribute:: query :type: dict[str, str] .. py:attribute:: postvars :type: dict[str, str] .. py:attribute:: headers :type: dict[str, str]