runtime + host: the theme engine (theme documents, choice catalog, page runtime, fonts; native theme state)
The site-independent theme engine moves from wayBetter for X into the framework: - runtime/themeSpec.ts: theme document types, the schema's defaults (BASE_*), sanitizing, import, overrides, ensureContrast, font roles/stacks, font choices, backgrounds. - runtime/themeChoice.ts: ThemeChoice and createThemeCatalog(builtins) (normalize, base, resolve, palette, all), choiceForId, serializeChoice. - runtime/themeRuntime.ts: installThemeRuntime(win, site) (live CSS over the site's rules, --wb-* vars, site color mode, first-frame snapshot), collectRules, resolvedFonts. - runtime/fonts.ts: bundled fonts and owner-downloaded Google Fonts from bytes. - themeApi exports hexToRgb, mix and MONO_FAMILIES (one copy: themeTokens and themeSpec use them). - host theme.rs: ThemeChoice/ThemeScopes over a site's ThemeSite (envelope checks against theme.schema.json, which theme a tab shows, page color, delivery script). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
0c107b27ff
commit
01f2ec0417
9 changed files with 1542 additions and 14 deletions
|
|
@ -19,6 +19,8 @@
|
|||
//! - [`i18n`]: the strings native UI and site tabs get in the owner's language (validated data), OS locale.
|
||||
//! - [`backup`]: the settings backup envelope, secret scrubbing and the plugin/account sections.
|
||||
//! - [`sync`]: encrypted settings sync through a folder the owner syncs (Argon2id + XChaCha20-Poly1305).
|
||||
//! - [`theme`]: the owner's theme choice and account/pane themes (envelope checks, which theme a tab
|
||||
//! shows, its page color and delivery script) over a site's built-in themes.
|
||||
//! - [`workspaces`]: saved tab/pane/deck layouts, bounded and well-formed (never evaluated).
|
||||
//! - [`devmode`]: developer mode's debounced watcher of plugins, custom CSS and a theme file.
|
||||
//! - [`alerts`]: local keyword alerts (keywords, snippets, per-item/per-keyword rate limits).
|
||||
|
|
@ -57,6 +59,7 @@ pub mod store;
|
|||
pub mod sync;
|
||||
pub mod tabs;
|
||||
pub mod testkit;
|
||||
pub mod theme;
|
||||
pub mod update;
|
||||
pub mod workspaces;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue