Coverage for src/lexigram/admin/dashboard/widget_types.py: 100%
10 statements
« prev ^ index » next coverage.py v7.15.4, created at 2026-08-21 14:26 +0800
« prev ^ index » next coverage.py v7.15.4, created at 2026-08-21 14:26 +0800
1from __future__ import annotations
3from dataclasses import dataclass
6@dataclass
7class ConfigField:
8 """Schema field for a configurable widget parameter."""
10 name: str
11 type: str # "select" | "number" | "text" | "boolean"
12 label: str
13 options: list[tuple[str | int, str]] | None = (
14 None # (value, display_label) for select
15 )
16 default: str | int | bool | float | None = None
17 description: str = ""