vibe.handlers.number

Handler for Number Data Types.

Implements the DataTypeHandler interface for number inputs. Handles widget rendering, form data processing, and runtime validation specific to these types.

NumberHandler

Handler for number input.

__init__

__init__(definition: dict[str, Any]) -> None

Initialize with optional min/max validation constraints.

render_widget

render_widget(name: str, current_value: int | float | str | None, error_message: str | None = None) -> str

Render the input widget HTML for number fields.

get_additional_widget_context

get_additional_widget_context(name: str, current_value: int | float | str | None, error_message: str | None = None) -> dict[str, Any]

Provide min/max context for rendering constraints and hints.

process_form_data

process_form_data(name: str, form_data: MultiDictLike) -> int | float | str | None

Coerce posted string into int/float when valid; preserve invalid for errors.

validate_input

validate_input(value: int | float | str | None, check_required: bool = True) -> str | None

Validate number presence and min/max constraints; return i18n error or None.