@sixbell-telco/sdk
Version:
A collection of reusable components designed for use in Sixbell Telco Angular projects
69 lines (68 loc) • 2.28 kB
TypeScript
/**
* Theme Constants and Injection Tokens
* Centralized configuration values and DI tokens following Single Responsibility Principle
*/
import { RuntimeThemeConfig } from './models/theme';
/**
* Default base theme - always available unless explicitly excluded
* This is the foundational theme that comes with the SDK
*/
export declare const DEFAULT_BASE_THEME: "sixbell_telco";
/**
* List of default themes available out of the box
*/
export declare const DEFAULT_THEMES: readonly ["sixbell_telco"];
/**
* Type-safe default theme codes for IDE IntelliSense
*/
export declare const DEFAULT_THEME_CODES: readonly ["sixbell_telco"];
/**
* Type representing valid default theme codes
*/
export type DefaultThemeCode = (typeof DEFAULT_THEME_CODES)[number];
/**
* LocalStorage key for persisting selected theme
*/
export declare const THEME_STORAGE_THEME_KEY: "selectedTheme";
/**
* LocalStorage key for persisting selected scheme
*/
export declare const THEME_STORAGE_SCHEME_KEY: "selectedScheme";
/**
* Namespace for storage keys to prevent collisions with other apps
*/
export declare const THEME_STORAGE_NAMESPACE: "theme:";
/**
* HTML attribute name for setting the active theme on document body
*/
export declare const THEME_ATTRIBUTE_NAME: "data-theme";
/**
* Separator used when combining theme name and scheme into a theme identifier
* @example "sixbell_telco__light" (theme__scheme format)
*/
export declare const THEME_SCHEME_SEPARATOR: "__";
/**
* Default theme scheme preference
*/
export declare const DEFAULT_SCHEME: "system";
/**
* Schema version for runtime theme configuration payloads.
* Bump this when the JSON structure changes in a breaking way.
*/
export declare const THEME_SCHEMA_VERSION: "2";
/**
* All valid scheme values
*/
export declare const VALID_SCHEMES: readonly ["system", "light", "dark"];
/**
* Minimal runtime configuration used as a resilient fallback when remote loading fails
*/
export declare const FALLBACK_RUNTIME_THEME_CONFIG: RuntimeThemeConfig;
/**
* CSS class name applied to document when dark theme is detected
*/
export declare const DARK_THEME_CLASS: "dark";
/**
* Media query for detecting system dark mode preference
*/
export declare const DARK_MODE_MEDIA_QUERY: "(prefers-color-scheme: dark)";