Module

contracts.rules_htmx

htmx selector/value checks.

Functions

check_hx_target_selectors 2 tuple[list[ContractIssue…
Validate #id hx-target selectors against known static ids.
def check_hx_target_selectors(template_sources: dict[str, str], all_ids: set[str]) -> tuple[list[ContractIssue], int]
Parameters
Name Type Description
template_sources dict[str, str]
all_ids set[str]
Returns
tuple[list[ContractIssue], int]
check_hx_indicator_selectors 2 list[ContractIssue]
Validate #id hx-indicator selectors.
def check_hx_indicator_selectors(template_sources: dict[str, str], all_ids: set[str]) -> list[ContractIssue]
Parameters
Name Type Description
template_sources dict[str, str]
all_ids set[str]
Returns
list[ContractIssue]
check_hx_boost 1 list[ContractIssue]
Validate hx-boost values are true/false.
def check_hx_boost(template_sources: dict[str, str]) -> list[ContractIssue]
Parameters
Name Type Description
template_sources dict[str, str]
Returns
list[ContractIssue]
_is_balanced_selector 1 bool
Best-effort balancing check for () and [] in selector values.
def _is_balanced_selector(value: str) -> bool
Parameters
Name Type Description
value str
Returns
bool
_selector_syntax_error 1 str | None
Return an error message when selector value is clearly invalid.
def _selector_syntax_error(value: str) -> str | None
Parameters
Name Type Description
value str
Returns
str | None
check_selector_syntax 1 list[ContractIssue]
Validate static selector-bearing HTMX attribute values.
def check_selector_syntax(template_sources: dict[str, str]) -> list[ContractIssue]
Parameters
Name Type Description
template_sources dict[str, str]
Returns
list[ContractIssue]