mirror of
https://github.com/283375/arcaea-offline-pyside-ui.git
synced 2026-02-27 16:11:09 +00:00
wip: theme system
- Add theme id - WIP theme cache key - Force scheme (light/dark) for dynamic theme - でびるんちゃんかわいい
This commit is contained in:
72
ui/theme/types.py
Normal file
72
ui/theme/types.py
Normal file
@ -0,0 +1,72 @@
|
||||
from typing import TypedDict
|
||||
|
||||
from .shared import _TScheme
|
||||
|
||||
# region material3
|
||||
|
||||
|
||||
class TMaterial3ThemeDataExtendedColorItem(TypedDict):
|
||||
name: str
|
||||
color: str
|
||||
description: str
|
||||
harmonized: bool
|
||||
|
||||
|
||||
TMaterial3ThemeDataSchemes = TypedDict(
|
||||
"TMaterial3ThemeDataSchemes",
|
||||
{
|
||||
"light": dict[str, str],
|
||||
"light-medium-contrast": dict[str, str],
|
||||
"light-high-contrast": dict[str, str],
|
||||
"dark": dict[str, str],
|
||||
"dark-medium-contrast": dict[str, str],
|
||||
"dark-high-contrast": dict[str, str],
|
||||
},
|
||||
)
|
||||
|
||||
TMaterial3ThemeDataPalettes = TypedDict(
|
||||
"TMaterial3ThemeDataPalettes",
|
||||
{
|
||||
"primary": dict[str, str],
|
||||
"secondary": dict[str, str],
|
||||
"tertiary": dict[str, str],
|
||||
"neutral": dict[str, str],
|
||||
"neutral-variant": dict[str, str],
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
class TMaterial3ThemeData(TypedDict):
|
||||
id: str
|
||||
name: str
|
||||
description: str
|
||||
seed: str
|
||||
coreColors: dict[str, str]
|
||||
extendedColors: list[TMaterial3ThemeDataExtendedColorItem]
|
||||
schemes: TMaterial3ThemeDataSchemes
|
||||
palettes: TMaterial3ThemeDataPalettes
|
||||
|
||||
|
||||
# endregion
|
||||
|
||||
# region material3-dynamic
|
||||
|
||||
|
||||
class TMaterial3DynamicThemeDataColors(TypedDict):
|
||||
primary: str
|
||||
secondary: str | None
|
||||
tertiary: str | None
|
||||
|
||||
|
||||
class TMaterial3DynamicThemeDataOptions(TypedDict):
|
||||
forceScheme: _TScheme | None
|
||||
|
||||
|
||||
class TMaterial3DynamicThemeData(TypedDict):
|
||||
id: str
|
||||
name: str
|
||||
colors: TMaterial3DynamicThemeDataColors
|
||||
options: TMaterial3DynamicThemeDataOptions
|
||||
|
||||
|
||||
# endregion
|
||||
Reference in New Issue
Block a user