Coverage for src/lexigram/admin/models/provider_models.py: 100%
22 statements
« prev ^ index » next coverage.py v7.15.4, created at 2026-08-21 14:56 +0800
« prev ^ index » next coverage.py v7.15.4, created at 2026-08-21 14:56 +0800
1from __future__ import annotations
3from dataclasses import dataclass, field
4from typing import TYPE_CHECKING, Any
6if TYPE_CHECKING:
7 from starlette.routing import Route
10@dataclass
11class Command:
12 """A command palette command."""
14 label: str
15 href: str
16 icon: str = ""
17 shortcut: str = ""
20@dataclass
21class AdminProviderState:
22 """Internal state for AdminProvider."""
24 mounted: bool = False
25 started: bool = False
26 modules_initialized: bool = False
27 resources: dict[str, Any] = field(default_factory=dict)
28 deferred_resources: dict[str, type] = field(default_factory=dict)
29 discovered_resource_packages: list[str] = field(default_factory=list)
30 discovered_controller_packages: list[str] = field(default_factory=list)
31 routes: list[Route] = field(default_factory=list)
32 middleware: list[Any] = field(default_factory=list)
33 commands: list[Command] = field(default_factory=list)
34 controllers: list[Any] = field(default_factory=list)