httk.serve.web.widgets.table

The built-in, cursor-paginated httk.serve.table widget.

Attributes

Exceptions

TableProtocolError

An expected bad table declaration, continuation, or provider result.

TableContinuationError

A continuation token did not meet the endpoint protocol.

TableContinuationExpired

A valid continuation token has passed its expiry.

TableProviderError

A site-local provider could not safely supply the requested page.

TableRevisionMismatch

A provider changed a revision-pinned result while paging.

Classes

TableTokenSigner

Authenticate the canonical, bounded continuation envelope.

TableRuntime

Engine-local table dispatcher, renderer, and continuation authority.

TableWidget

Built-in adapter supplied with httk.serve.web.widgets.WidgetContext.

Module Contents

httk.serve.web.widgets.table.TABLE_ENDPOINT = '/_httk/serve/table/page'[source]
httk.serve.web.widgets.table.TABLE_ASSET_ROOT = '/_httk/serve/assets'[source]
httk.serve.web.widgets.table.DEFAULT_PAGE_SIZE = 50[source]
httk.serve.web.widgets.table.MAX_PAGE_SIZE = 500[source]
httk.serve.web.widgets.table.MAX_CURSOR_CHARS = 16384[source]
httk.serve.web.widgets.table.MAX_TOKEN_BYTES = 48000[source]
httk.serve.web.widgets.table.MAX_TOKEN_PAYLOAD_BYTES = 32768[source]
httk.serve.web.widgets.table.MAX_TABLE_HTML_BYTES = 512000[source]
httk.serve.web.widgets.table.MAX_TABLE_RESPONSE_BYTES = 600000[source]
httk.serve.web.widgets.table.TOKEN_VERSION = 1[source]
httk.serve.web.widgets.table.DEFAULT_TOKEN_TTL_SECONDS = 900[source]
exception httk.serve.web.widgets.table.TableProtocolError[source]

Bases: ValueError

An expected bad table declaration, continuation, or provider result.

exception httk.serve.web.widgets.table.TableContinuationError[source]

Bases: TableProtocolError

A continuation token did not meet the endpoint protocol.

exception httk.serve.web.widgets.table.TableContinuationExpired[source]

Bases: TableContinuationError

A valid continuation token has passed its expiry.

exception httk.serve.web.widgets.table.TableProviderError[source]

Bases: TableProtocolError

A site-local provider could not safely supply the requested page.

exception httk.serve.web.widgets.table.TableRevisionMismatch[source]

Bases: TableProviderError

A provider changed a revision-pinned result while paging.

class httk.serve.web.widgets.table.TableTokenSigner(secret: str | bytes | None = None)[source]

Authenticate the canonical, bounded continuation envelope.

sign(payload: collections.abc.Mapping[str, object]) str[source]
verify(token: object) dict[str, object][source]
class httk.serve.web.widgets.table.TableRuntime(*, engine: httk.serve.web.engine.site_engine.SiteEngine, token_secret: str | bytes | None = None, token_ttl_seconds: int = DEFAULT_TOKEN_TTL_SECONDS)[source]

Engine-local table dispatcher, renderer, and continuation authority.

engine[source]
signer[source]
token_ttl_seconds = 900[source]
render(context: httk.serve.web.widgets.core.WidgetContext, **props: object) httk.serve.web.widgets.core.WidgetRenderResult[source]
continuation(payload: object) dict[str, object][source]
class httk.serve.web.widgets.table.TableWidget[source]

Built-in adapter supplied with httk.serve.web.widgets.WidgetContext.

name = 'httk.serve.table'[source]
source = 'httk.serve.web.widgets.table'[source]
render(context: httk.serve.web.widgets.core.WidgetContext, **props: object) httk.serve.web.widgets.core.WidgetRenderResult[source]