@tenerife.music/ui 1.0.0 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ThemeProvider-CaUX_Jam.cjs +2 -0
- package/dist/ThemeProvider-ltuW-773.js +1227 -0
- package/dist/animation/index.d.ts +9 -0
- package/dist/animation/index.d.ts.map +1 -0
- package/dist/animation/presets.d.ts +304 -0
- package/dist/animation/presets.d.ts.map +1 -0
- package/dist/animation/tas.d.ts +80 -0
- package/dist/animation/tas.d.ts.map +1 -0
- package/dist/animation/types.d.ts +106 -0
- package/dist/animation/types.d.ts.map +1 -0
- package/dist/animation/utils.d.ts +7 -0
- package/dist/animation/utils.d.ts.map +1 -0
- package/dist/components/SectionBuilder.d.ts +37 -0
- package/dist/components/SectionBuilder.d.ts.map +1 -0
- package/dist/components/SectionBuilder.presets.d.ts +229 -0
- package/dist/components/SectionBuilder.presets.d.ts.map +1 -0
- package/dist/components/SectionBuilder.types.d.ts +327 -0
- package/dist/components/SectionBuilder.types.d.ts.map +1 -0
- package/dist/components/auth/ProfileCard.d.ts.map +1 -1
- package/dist/components/cards/EventCard.d.ts +32 -31
- package/dist/components/cards/EventCard.d.ts.map +1 -1
- package/dist/components/cards/VenueCard.d.ts +32 -33
- package/dist/components/cards/VenueCard.d.ts.map +1 -1
- package/dist/components/data/List.d.ts.map +1 -1
- package/dist/components/data/Table.d.ts.map +1 -1
- package/dist/components/data/Timeline.d.ts.map +1 -1
- package/dist/components/feedback/Alert.d.ts +1 -1
- package/dist/components/feedback/Alert.d.ts.map +1 -1
- package/dist/components/feedback/Progress.d.ts.map +1 -1
- package/dist/components/filters/FilterSelect.d.ts.map +1 -1
- package/dist/components/image/Image.d.ts.map +1 -1
- package/dist/components/layout/Box.d.ts +82 -0
- package/dist/components/layout/Box.d.ts.map +1 -0
- package/dist/components/layout/Container.d.ts.map +1 -1
- package/dist/components/layout/Flex.d.ts +27 -6
- package/dist/components/layout/Flex.d.ts.map +1 -1
- package/dist/components/layout/Grid.d.ts +42 -3
- package/dist/components/layout/Grid.d.ts.map +1 -1
- package/dist/components/layout/Navbar.d.ts +2 -2
- package/dist/components/layout/Navbar.d.ts.map +1 -1
- package/dist/components/layout/Section.d.ts.map +1 -1
- package/dist/components/layout/Stack.d.ts +21 -4
- package/dist/components/layout/Stack.d.ts.map +1 -1
- package/dist/components/layout/index.d.ts +15 -0
- package/dist/components/layout/index.d.ts.map +1 -0
- package/dist/components/layout/layout.types.d.ts +92 -0
- package/dist/components/layout/layout.types.d.ts.map +1 -0
- package/dist/components/menus/DropdownMenu.d.ts.map +1 -1
- package/dist/components/menus/NavigationMenu.d.ts.map +1 -1
- package/dist/components/menus/Tabs.d.ts.map +1 -1
- package/dist/components/modals/ConfirmDialog.d.ts +2 -2
- package/dist/components/modals/ConfirmDialog.d.ts.map +1 -1
- package/dist/components/modals/Modal.d.ts.map +1 -1
- package/dist/components/modals/SimpleModal.d.ts +3 -1
- package/dist/components/modals/SimpleModal.d.ts.map +1 -1
- package/dist/components/navigation/Breadcrumbs.d.ts +1 -0
- package/dist/components/navigation/Breadcrumbs.d.ts.map +1 -1
- package/dist/components/navigation/Pagination.d.ts +1 -0
- package/dist/components/navigation/Pagination.d.ts.map +1 -1
- package/dist/components/overlays/OverlayPortal.d.ts.map +1 -1
- package/dist/components/overlays/Popover.d.ts +4 -4
- package/dist/components/overlays/Popover.d.ts.map +1 -1
- package/dist/components/overlays/Tooltip.d.ts +2 -2
- package/dist/components/overlays/Tooltip.d.ts.map +1 -1
- package/dist/components/primitives/Badge.d.ts +1 -1
- package/dist/components/primitives/Badge.d.ts.map +1 -1
- package/dist/components/primitives/Card.d.ts.map +1 -1
- package/dist/components/primitives/Divider.d.ts.map +1 -1
- package/dist/components/primitives/Label.d.ts.map +1 -1
- package/dist/components/primitives/Link.d.ts +4 -2
- package/dist/components/primitives/Link.d.ts.map +1 -1
- package/dist/components/primitives/ThemeSwitch.d.ts +2 -2
- package/dist/components/primitives/ThemeSwitch.d.ts.map +1 -1
- package/dist/components/primitives/Typography.d.ts +2 -2
- package/dist/components/primitives/Typography.d.ts.map +1 -1
- package/dist/components/search/SearchBar.d.ts.map +1 -1
- package/dist/components/sections/ArticlesSection.d.ts +14 -4
- package/dist/components/sections/ArticlesSection.d.ts.map +1 -1
- package/dist/components/sections/CTASection.d.ts +38 -0
- package/dist/components/sections/CTASection.d.ts.map +1 -0
- package/dist/components/sections/FeatureSection.d.ts +34 -0
- package/dist/components/sections/FeatureSection.d.ts.map +1 -0
- package/dist/components/sections/HeroSection.d.ts +28 -0
- package/dist/components/sections/HeroSection.d.ts.map +1 -0
- package/dist/components/sections/TrendingSection.d.ts +15 -3
- package/dist/components/sections/TrendingSection.d.ts.map +1 -1
- package/dist/components/toasts/Toast.d.ts +1 -1
- package/dist/components/toasts/Toast.d.ts.map +1 -1
- package/dist/components/toasts/ToastProvider.d.ts.map +1 -1
- package/dist/components/ui/button.d.ts +4 -2
- package/dist/components/ui/button.d.ts.map +1 -1
- package/dist/components/ui/card.d.ts.map +1 -1
- package/dist/components/ui/dialog.d.ts.map +1 -1
- package/dist/components/ui/input.d.ts.map +1 -1
- package/dist/components/ui/label.d.ts.map +1 -1
- package/dist/components/ui/tooltip.d.ts.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +27 -18
- package/dist/index.d.ts.map +1 -1
- package/dist/index.mjs +3897 -2372
- package/dist/lib/a11y.d.ts +16 -0
- package/dist/lib/a11y.d.ts.map +1 -0
- package/dist/lib/responsive-props.d.ts +64 -0
- package/dist/lib/responsive-props.d.ts.map +1 -0
- package/dist/motion-4SRNkZlz.cjs +2 -0
- package/dist/motion-CuHacXY1.js +722 -0
- package/dist/test/animation-utils.d.ts +60 -0
- package/dist/test/animation-utils.d.ts.map +1 -0
- package/dist/theme/ThemeProvider.d.ts +19 -8
- package/dist/theme/ThemeProvider.d.ts.map +1 -1
- package/dist/theme/applyMode.d.ts +11 -2
- package/dist/theme/applyMode.d.ts.map +1 -1
- package/dist/theme/index.cjs +1 -1
- package/dist/theme/index.d.ts +3 -0
- package/dist/theme/index.d.ts.map +1 -1
- package/dist/theme/index.mjs +236 -101
- package/dist/theme/loader.d.ts +64 -0
- package/dist/theme/loader.d.ts.map +1 -0
- package/dist/theme/registry.d.ts +71 -0
- package/dist/theme/registry.d.ts.map +1 -0
- package/dist/theme/schema.d.ts +125 -0
- package/dist/theme/schema.d.ts.map +1 -0
- package/dist/themes/brand_engine.d.ts +102 -0
- package/dist/themes/brand_engine.d.ts.map +1 -0
- package/dist/themes/index.d.ts +3 -0
- package/dist/themes/index.d.ts.map +1 -1
- package/dist/themes/minimal.d.ts +7 -0
- package/dist/themes/minimal.d.ts.map +1 -0
- package/dist/themes/neon.d.ts +7 -0
- package/dist/themes/neon.d.ts.map +1 -0
- package/dist/themes/types.d.ts +220 -5
- package/dist/themes/types.d.ts.map +1 -1
- package/dist/tokens/css-variables.d.ts +21 -0
- package/dist/tokens/css-variables.d.ts.map +1 -1
- package/dist/tokens/index.cjs +3 -3
- package/dist/tokens/index.mjs +295 -551
- package/dist/tokens/motion.d.ts +77 -0
- package/dist/tokens/motion.d.ts.map +1 -1
- package/package.json +20 -7
- package/dist/applyMode-Bh7sEqT6.js +0 -144
- package/dist/applyMode-DCenL-Bg.cjs +0 -2
- package/dist/colors-BGRiFoSZ.cjs +0 -2
- package/dist/colors-ClemXPPi.js +0 -377
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { ThemeSchema } from './schema';
|
|
2
|
+
/**
|
|
3
|
+
* Theme loader options
|
|
4
|
+
*/
|
|
5
|
+
export interface ThemeLoaderOptions {
|
|
6
|
+
/**
|
|
7
|
+
* Fallback theme ID if loading fails
|
|
8
|
+
*/
|
|
9
|
+
fallbackThemeId?: string;
|
|
10
|
+
/**
|
|
11
|
+
* Whether to validate theme schema
|
|
12
|
+
*/
|
|
13
|
+
validate?: boolean;
|
|
14
|
+
/**
|
|
15
|
+
* Whether to throw errors or return fallback
|
|
16
|
+
*/
|
|
17
|
+
throwOnError?: boolean;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Theme loader result
|
|
21
|
+
*/
|
|
22
|
+
export interface ThemeLoaderResult {
|
|
23
|
+
/**
|
|
24
|
+
* Loaded theme
|
|
25
|
+
*/
|
|
26
|
+
theme: ThemeSchema;
|
|
27
|
+
/**
|
|
28
|
+
* Whether fallback was used
|
|
29
|
+
*/
|
|
30
|
+
usedFallback: boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Validation warnings (if validation enabled)
|
|
33
|
+
*/
|
|
34
|
+
warnings: string[];
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Load theme with error handling
|
|
38
|
+
*
|
|
39
|
+
* @param themeId - Theme ID to load
|
|
40
|
+
* @param options - Loader options
|
|
41
|
+
* @returns Theme loader result
|
|
42
|
+
*/
|
|
43
|
+
export declare function loadThemeSafe(themeId: string, options?: ThemeLoaderOptions): Promise<ThemeLoaderResult>;
|
|
44
|
+
/**
|
|
45
|
+
* Preload multiple themes
|
|
46
|
+
* Useful for prefetching themes that might be needed
|
|
47
|
+
*
|
|
48
|
+
* @param themeIds - Array of theme IDs to preload
|
|
49
|
+
*/
|
|
50
|
+
export declare function preloadThemes(themeIds: string[]): Promise<void>;
|
|
51
|
+
/**
|
|
52
|
+
* Get all available theme IDs
|
|
53
|
+
*
|
|
54
|
+
* @returns Array of theme IDs
|
|
55
|
+
*/
|
|
56
|
+
export declare function getAvailableThemeIds(): string[];
|
|
57
|
+
/**
|
|
58
|
+
* Check if theme can be loaded
|
|
59
|
+
*
|
|
60
|
+
* @param themeId - Theme ID to check
|
|
61
|
+
* @returns Whether theme can be loaded
|
|
62
|
+
*/
|
|
63
|
+
export declare function canLoadTheme(themeId: string): Promise<boolean>;
|
|
64
|
+
//# sourceMappingURL=loader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/theme/loader.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,KAAK,WAAW,EAAuB,MAAM,UAAU,CAAC;AAEjE;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,KAAK,EAAE,WAAW,CAAC;IAEnB;;OAEG;IACH,YAAY,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAWD;;;;;;GAMG;AACH,wBAAsB,aAAa,CACjC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,iBAAiB,CAAC,CAsE5B;AAED;;;;;GAKG;AACH,wBAAsB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAQrE;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,EAAE,CAE/C;AAED;;;;;GAKG;AACH,wBAAsB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAWpE"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { ThemeMetadata, ThemeSchema } from './schema';
|
|
2
|
+
/**
|
|
3
|
+
* Theme registry entry
|
|
4
|
+
*/
|
|
5
|
+
export interface ThemeRegistryEntry {
|
|
6
|
+
/**
|
|
7
|
+
* Theme metadata
|
|
8
|
+
*/
|
|
9
|
+
metadata: ThemeMetadata;
|
|
10
|
+
/**
|
|
11
|
+
* Dynamic import function for theme
|
|
12
|
+
*/
|
|
13
|
+
loader: () => Promise<{
|
|
14
|
+
default: ThemeSchema;
|
|
15
|
+
}>;
|
|
16
|
+
/**
|
|
17
|
+
* Whether theme is enabled
|
|
18
|
+
*/
|
|
19
|
+
enabled?: boolean;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Theme registry
|
|
23
|
+
* Maps theme IDs to their registry entries
|
|
24
|
+
*/
|
|
25
|
+
export declare const themeRegistry: Map<string, ThemeRegistryEntry>;
|
|
26
|
+
/**
|
|
27
|
+
* Register a theme in the registry
|
|
28
|
+
*
|
|
29
|
+
* @param entry - Theme registry entry
|
|
30
|
+
*/
|
|
31
|
+
export declare function registerTheme(entry: ThemeRegistryEntry): void;
|
|
32
|
+
/**
|
|
33
|
+
* Get theme metadata by ID
|
|
34
|
+
*
|
|
35
|
+
* @param id - Theme ID
|
|
36
|
+
* @returns Theme metadata or undefined
|
|
37
|
+
*/
|
|
38
|
+
export declare function getThemeMetadata(id: string): ThemeMetadata | undefined;
|
|
39
|
+
/**
|
|
40
|
+
* Get all registered themes
|
|
41
|
+
*
|
|
42
|
+
* @returns Array of theme metadata
|
|
43
|
+
*/
|
|
44
|
+
export declare function getAllThemes(): ThemeMetadata[];
|
|
45
|
+
/**
|
|
46
|
+
* Get themes by category
|
|
47
|
+
*
|
|
48
|
+
* @param category - Theme category
|
|
49
|
+
* @returns Array of theme metadata
|
|
50
|
+
*/
|
|
51
|
+
export declare function getThemesByCategory(category: "default" | "brand" | "seasonal" | "custom"): ThemeMetadata[];
|
|
52
|
+
/**
|
|
53
|
+
* Check if theme exists
|
|
54
|
+
*
|
|
55
|
+
* @param id - Theme ID
|
|
56
|
+
* @returns Whether theme exists
|
|
57
|
+
*/
|
|
58
|
+
export declare function themeExists(id: string): boolean;
|
|
59
|
+
/**
|
|
60
|
+
* Load theme by ID
|
|
61
|
+
*
|
|
62
|
+
* @param id - Theme ID
|
|
63
|
+
* @returns Theme schema
|
|
64
|
+
*/
|
|
65
|
+
export declare function loadTheme(id: string): Promise<ThemeSchema>;
|
|
66
|
+
/**
|
|
67
|
+
* Initialize default themes
|
|
68
|
+
* Registers built-in themes (default, dark, brand)
|
|
69
|
+
*/
|
|
70
|
+
export declare function initializeDefaultThemes(): void;
|
|
71
|
+
//# sourceMappingURL=registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/theme/registry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE3D;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,QAAQ,EAAE,aAAa,CAAC;IAExB;;OAEG;IACH,MAAM,EAAE,MAAM,OAAO,CAAC;QAAE,OAAO,EAAE,WAAW,CAAA;KAAE,CAAC,CAAC;IAEhD;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAa,CAAC;AAExE;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI,CAE7D;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAEtE;AAED;;;;GAIG;AACH,wBAAgB,YAAY,IAAI,aAAa,EAAE,CAI9C;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,SAAS,GAAG,OAAO,GAAG,UAAU,GAAG,QAAQ,GACpD,aAAa,EAAE,CAEjB;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAE/C;AAED;;;;;GAKG;AACH,wBAAsB,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAkBhE;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,IAAI,IAAI,CAgD9C"}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import { BaseColorTokens, ColorScale, SemanticColors, SurfaceColors, TextColors } from '../tokens/colors';
|
|
2
|
+
/**
|
|
3
|
+
* Theme metadata
|
|
4
|
+
*/
|
|
5
|
+
export interface ThemeMetadata {
|
|
6
|
+
/**
|
|
7
|
+
* Unique theme identifier (kebab-case)
|
|
8
|
+
* Example: "ocean-blue", "sunset-orange"
|
|
9
|
+
*/
|
|
10
|
+
id: string;
|
|
11
|
+
/**
|
|
12
|
+
* Human-readable theme name
|
|
13
|
+
* Example: "Ocean Blue", "Sunset Orange"
|
|
14
|
+
*/
|
|
15
|
+
name: string;
|
|
16
|
+
/**
|
|
17
|
+
* Theme description
|
|
18
|
+
*/
|
|
19
|
+
description?: string;
|
|
20
|
+
/**
|
|
21
|
+
* Theme category
|
|
22
|
+
* - "default": Standard themes
|
|
23
|
+
* - "brand": Brand-specific themes
|
|
24
|
+
* - "seasonal": Seasonal/holiday themes
|
|
25
|
+
* - "custom": User-created themes
|
|
26
|
+
*/
|
|
27
|
+
category?: "default" | "brand" | "seasonal" | "custom";
|
|
28
|
+
/**
|
|
29
|
+
* Theme author (optional)
|
|
30
|
+
*/
|
|
31
|
+
author?: string;
|
|
32
|
+
/**
|
|
33
|
+
* Theme version (semver)
|
|
34
|
+
*/
|
|
35
|
+
version?: string;
|
|
36
|
+
/**
|
|
37
|
+
* Preview image URL (optional)
|
|
38
|
+
*/
|
|
39
|
+
previewImage?: string;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Complete theme schema
|
|
43
|
+
* Extends ThemeOverride with metadata and validation
|
|
44
|
+
*/
|
|
45
|
+
export interface ThemeSchema extends ThemeMetadata {
|
|
46
|
+
/**
|
|
47
|
+
* Override primary color scale
|
|
48
|
+
* Partial override - only specified values override base tokens
|
|
49
|
+
*/
|
|
50
|
+
primaryColors?: Partial<ColorScale>;
|
|
51
|
+
/**
|
|
52
|
+
* Override accent color scale
|
|
53
|
+
*/
|
|
54
|
+
accentColors?: Partial<ColorScale>;
|
|
55
|
+
/**
|
|
56
|
+
* Override secondary color scale
|
|
57
|
+
*/
|
|
58
|
+
secondaryColors?: Partial<ColorScale>;
|
|
59
|
+
/**
|
|
60
|
+
* Override base colors (for day mode)
|
|
61
|
+
*/
|
|
62
|
+
baseColorsDay?: Partial<BaseColorTokens>;
|
|
63
|
+
/**
|
|
64
|
+
* Override base colors (for night mode)
|
|
65
|
+
*/
|
|
66
|
+
baseColorsNight?: Partial<BaseColorTokens>;
|
|
67
|
+
/**
|
|
68
|
+
* Override surface colors (for day mode)
|
|
69
|
+
*/
|
|
70
|
+
surfaceColorsDay?: Partial<SurfaceColors>;
|
|
71
|
+
/**
|
|
72
|
+
* Override surface colors (for night mode)
|
|
73
|
+
*/
|
|
74
|
+
surfaceColorsNight?: Partial<SurfaceColors>;
|
|
75
|
+
/**
|
|
76
|
+
* Override semantic colors (for day mode)
|
|
77
|
+
*/
|
|
78
|
+
semanticColorsDay?: Partial<SemanticColors>;
|
|
79
|
+
/**
|
|
80
|
+
* Override semantic colors (for night mode)
|
|
81
|
+
*/
|
|
82
|
+
semanticColorsNight?: Partial<SemanticColors>;
|
|
83
|
+
/**
|
|
84
|
+
* Override text colors (for day mode)
|
|
85
|
+
*/
|
|
86
|
+
textColorsDay?: Partial<TextColors>;
|
|
87
|
+
/**
|
|
88
|
+
* Override text colors (for night mode)
|
|
89
|
+
*/
|
|
90
|
+
textColorsNight?: Partial<TextColors>;
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Theme validation result
|
|
94
|
+
*/
|
|
95
|
+
export interface ThemeValidationResult {
|
|
96
|
+
/**
|
|
97
|
+
* Whether theme is valid
|
|
98
|
+
*/
|
|
99
|
+
valid: boolean;
|
|
100
|
+
/**
|
|
101
|
+
* Validation errors
|
|
102
|
+
*/
|
|
103
|
+
errors: string[];
|
|
104
|
+
/**
|
|
105
|
+
* Validation warnings
|
|
106
|
+
*/
|
|
107
|
+
warnings: string[];
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Validate theme schema
|
|
111
|
+
*
|
|
112
|
+
* @param theme - Theme to validate
|
|
113
|
+
* @returns Validation result
|
|
114
|
+
*/
|
|
115
|
+
export declare function validateThemeSchema(theme: unknown): ThemeValidationResult;
|
|
116
|
+
/**
|
|
117
|
+
* Type guard to check if object is ThemeSchema
|
|
118
|
+
*/
|
|
119
|
+
export declare function isThemeSchema(obj: unknown): obj is ThemeSchema;
|
|
120
|
+
/**
|
|
121
|
+
* Create a minimal valid theme schema
|
|
122
|
+
* Useful for CLI scaffolding
|
|
123
|
+
*/
|
|
124
|
+
export declare function createMinimalThemeSchema(id: string, name: string): ThemeSchema;
|
|
125
|
+
//# sourceMappingURL=schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/theme/schema.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,UAAU,EACV,cAAc,EACd,aAAa,EACb,UAAU,EACX,MAAM,iBAAiB,CAAC;AAEzB;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;;OAGG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,UAAU,GAAG,QAAQ,CAAC;IAEvD;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;GAGG;AACH,MAAM,WAAW,WAAY,SAAQ,aAAa;IAChD;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IAEpC;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IAEnC;;OAEG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IAEtC;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;IAEzC;;OAEG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;IAE3C;;OAEG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAE1C;;OAEG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAE5C;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IAE5C;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IAE9C;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IAEpC;;OAEG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,KAAK,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,MAAM,EAAE,MAAM,EAAE,CAAC;IAEjB;;OAEG;IACH,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAOD;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,qBAAqB,CA6FzE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,WAAW,CAG9D;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,WAAW,CAQ9E"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { Mode } from '../tokens/colors';
|
|
2
|
+
import { BrandPackage, BrandTheme, BrandValidationResult } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* Validate brand package structure
|
|
5
|
+
*
|
|
6
|
+
* @param brand - Brand package to validate
|
|
7
|
+
* @returns Validation result
|
|
8
|
+
*/
|
|
9
|
+
export declare function validateBrand(brand: unknown): BrandValidationResult;
|
|
10
|
+
/**
|
|
11
|
+
* Register a brand package
|
|
12
|
+
*
|
|
13
|
+
* @param brand - Brand package to register
|
|
14
|
+
* @param options - Registration options
|
|
15
|
+
*/
|
|
16
|
+
export declare function registerBrand(brand: BrandPackage, options?: {
|
|
17
|
+
enabled?: boolean;
|
|
18
|
+
loader?: () => Promise<{
|
|
19
|
+
default: BrandPackage;
|
|
20
|
+
}>;
|
|
21
|
+
}): void;
|
|
22
|
+
/**
|
|
23
|
+
* Get brand by ID
|
|
24
|
+
*
|
|
25
|
+
* @param brandId - Brand identifier
|
|
26
|
+
* @returns Brand package or undefined
|
|
27
|
+
*/
|
|
28
|
+
export declare function getBrand(brandId: string): BrandPackage | undefined;
|
|
29
|
+
/**
|
|
30
|
+
* Check if brand exists and is enabled
|
|
31
|
+
*
|
|
32
|
+
* @param brandId - Brand identifier
|
|
33
|
+
* @returns Whether brand exists and is enabled
|
|
34
|
+
*/
|
|
35
|
+
export declare function brandExists(brandId: string): boolean;
|
|
36
|
+
/**
|
|
37
|
+
* Load brand package
|
|
38
|
+
* Supports lazy loading via loader function
|
|
39
|
+
*
|
|
40
|
+
* @param brandId - Brand identifier
|
|
41
|
+
* @returns Brand package
|
|
42
|
+
*/
|
|
43
|
+
export declare function loadBrand(brandId: string): Promise<BrandPackage>;
|
|
44
|
+
/**
|
|
45
|
+
* Get all registered brand IDs
|
|
46
|
+
*
|
|
47
|
+
* @returns Array of brand IDs
|
|
48
|
+
*/
|
|
49
|
+
export declare function getAllBrandIds(): string[];
|
|
50
|
+
/**
|
|
51
|
+
* Get all registered brands
|
|
52
|
+
*
|
|
53
|
+
* @returns Array of brand packages
|
|
54
|
+
*/
|
|
55
|
+
export declare function getAllBrands(): BrandPackage[];
|
|
56
|
+
/**
|
|
57
|
+
* Get active brand
|
|
58
|
+
*
|
|
59
|
+
* @returns Active brand package or null
|
|
60
|
+
*/
|
|
61
|
+
export declare function getActiveBrand(): BrandPackage | null;
|
|
62
|
+
/**
|
|
63
|
+
* Get active brand namespace
|
|
64
|
+
*
|
|
65
|
+
* @returns Active brand namespace or null
|
|
66
|
+
*/
|
|
67
|
+
export declare function getActiveBrandNamespace(): string | null;
|
|
68
|
+
/**
|
|
69
|
+
* Set active brand
|
|
70
|
+
* This function is called by the theme system when a brand is applied
|
|
71
|
+
*
|
|
72
|
+
* @param brand - Brand package to set as active
|
|
73
|
+
*/
|
|
74
|
+
export declare function setActiveBrand(brand: BrandPackage | null): void;
|
|
75
|
+
/**
|
|
76
|
+
* Clear active brand
|
|
77
|
+
*/
|
|
78
|
+
export declare function clearActiveBrand(): void;
|
|
79
|
+
/**
|
|
80
|
+
* Get brand theme for a specific mode
|
|
81
|
+
*
|
|
82
|
+
* @param brand - Brand package
|
|
83
|
+
* @param mode - Theme mode (day or night)
|
|
84
|
+
* @returns Brand theme or undefined
|
|
85
|
+
*/
|
|
86
|
+
export declare function getBrandTheme(brand: BrandPackage, mode: Mode): BrandTheme | undefined;
|
|
87
|
+
/**
|
|
88
|
+
* Apply brand overrides to document
|
|
89
|
+
* This function applies CSS variables with brand namespace isolation
|
|
90
|
+
*
|
|
91
|
+
* @param brand - Brand package to apply
|
|
92
|
+
* @param mode - Theme mode (day or night)
|
|
93
|
+
*/
|
|
94
|
+
export declare function applyBrandOverrides(brand: BrandPackage, mode: Mode): void;
|
|
95
|
+
/**
|
|
96
|
+
* Remove brand overrides from document
|
|
97
|
+
* Cleans up all brand-specific CSS variables
|
|
98
|
+
*
|
|
99
|
+
* @param namespace - Brand namespace to remove
|
|
100
|
+
*/
|
|
101
|
+
export declare function removeBrandOverrides(namespace: string): void;
|
|
102
|
+
//# sourceMappingURL=brand_engine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"brand_engine.d.ts","sourceRoot":"","sources":["../../src/themes/brand_engine.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AA2C/E;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,qBAAqB,CAyGnE;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,YAAY,EACnB,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,OAAO,CAAC;QAAE,OAAO,EAAE,YAAY,CAAA;KAAE,CAAC,CAAA;CAAE,GACjF,IAAI,CAiCN;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAMlE;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAGpD;AAED;;;;;;GAMG;AACH,wBAAsB,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAwCtE;AAED;;;;GAIG;AACH,wBAAgB,cAAc,IAAI,MAAM,EAAE,CAIzC;AAED;;;;GAIG;AACH,wBAAgB,YAAY,IAAI,YAAY,EAAE,CAI7C;AAED;;;;GAIG;AACH,wBAAgB,cAAc,IAAI,YAAY,GAAG,IAAI,CAEpD;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,GAAG,IAAI,CAEvD;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,GAAG,IAAI,CAG/D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAGvC;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,GAAG,UAAU,GAAG,SAAS,CAErF;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,GAAG,IAAI,CAsMzE;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CA8B5D"}
|
package/dist/themes/index.d.ts
CHANGED
|
@@ -7,6 +7,9 @@ export { brandTheme } from './brand';
|
|
|
7
7
|
export { darkTheme } from './dark';
|
|
8
8
|
export { defaultTheme } from './default';
|
|
9
9
|
export * from './types';
|
|
10
|
+
export { minimalBrand } from './minimal';
|
|
11
|
+
export { neonBrand } from './neon';
|
|
12
|
+
export * from './brand_engine';
|
|
10
13
|
/**
|
|
11
14
|
* All available themes
|
|
12
15
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/themes/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,cAAc,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/themes/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAGnC,cAAc,gBAAgB,CAAC;AAE/B;;GAEG;AACH,eAAO,MAAM,MAAM;;;;CAIT,CAAC;AAEX;;GAEG;AACH,wBAAsB,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,GAAG,OAAO,4CAMhE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"minimal.d.ts","sourceRoot":"","sources":["../../src/themes/minimal.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAE,YAgS1B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"neon.d.ts","sourceRoot":"","sources":["../../src/themes/neon.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C;;;GAGG;AACH,eAAO,MAAM,SAAS,EAAE,YAwSvB,CAAC"}
|
package/dist/themes/types.d.ts
CHANGED
|
@@ -1,4 +1,114 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ColorScale, ColorTokens, SemanticColors, SurfaceColors, TextColors } from '../tokens/colors';
|
|
2
|
+
import { BorderRadius, componentRadius } from '../tokens/radius';
|
|
3
|
+
import { accentColoredShadows, elevationShadows, focusRings, glowEffects, primaryColoredShadows } from '../tokens/shadows';
|
|
4
|
+
import { SemanticSpacing } from '../tokens/spacing';
|
|
5
|
+
import { FontFamily, FontSize, FontWeight, LetterSpacing, LineHeight, TextStyle } from '../tokens/typography';
|
|
6
|
+
/**
|
|
7
|
+
* Typography override configuration
|
|
8
|
+
*/
|
|
9
|
+
export interface TypographyOverrides {
|
|
10
|
+
/**
|
|
11
|
+
* Override font families
|
|
12
|
+
*/
|
|
13
|
+
fontFamily?: Partial<Record<FontFamily, string[]>>;
|
|
14
|
+
/**
|
|
15
|
+
* Override font sizes
|
|
16
|
+
*/
|
|
17
|
+
fontSize?: Partial<Record<FontSize, string | [string, {
|
|
18
|
+
lineHeight: string;
|
|
19
|
+
letterSpacing: string;
|
|
20
|
+
}]>>;
|
|
21
|
+
/**
|
|
22
|
+
* Override font weights
|
|
23
|
+
*/
|
|
24
|
+
fontWeight?: Partial<Record<FontWeight, string>>;
|
|
25
|
+
/**
|
|
26
|
+
* Override line heights
|
|
27
|
+
*/
|
|
28
|
+
lineHeight?: Partial<Record<LineHeight, string>>;
|
|
29
|
+
/**
|
|
30
|
+
* Override letter spacing
|
|
31
|
+
*/
|
|
32
|
+
letterSpacing?: Partial<Record<LetterSpacing, string>>;
|
|
33
|
+
/**
|
|
34
|
+
* Override text styles
|
|
35
|
+
*/
|
|
36
|
+
textStyles?: Partial<Record<TextStyle, {
|
|
37
|
+
fontFamily?: string;
|
|
38
|
+
fontSize?: string;
|
|
39
|
+
fontWeight?: string;
|
|
40
|
+
lineHeight?: string;
|
|
41
|
+
letterSpacing?: string;
|
|
42
|
+
}>>;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Spacing override configuration
|
|
46
|
+
*/
|
|
47
|
+
export interface SpacingOverrides {
|
|
48
|
+
/**
|
|
49
|
+
* Override semantic spacing tokens
|
|
50
|
+
*/
|
|
51
|
+
semanticSpacing?: Partial<Record<SemanticSpacing, string>>;
|
|
52
|
+
/**
|
|
53
|
+
* Override layout spacing tokens
|
|
54
|
+
*/
|
|
55
|
+
layoutSpacing?: Partial<{
|
|
56
|
+
section?: Partial<Record<string, string>>;
|
|
57
|
+
container?: Partial<Record<string, string>>;
|
|
58
|
+
grid?: Partial<Record<string, string>>;
|
|
59
|
+
stack?: Partial<Record<string, string>>;
|
|
60
|
+
component?: Partial<Record<string, string>>;
|
|
61
|
+
}>;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Shadow override configuration
|
|
65
|
+
*/
|
|
66
|
+
export interface ShadowOverrides {
|
|
67
|
+
/**
|
|
68
|
+
* Override elevation shadows
|
|
69
|
+
*/
|
|
70
|
+
elevationShadows?: Partial<Record<keyof typeof elevationShadows, string>>;
|
|
71
|
+
/**
|
|
72
|
+
* Override primary colored shadows
|
|
73
|
+
*/
|
|
74
|
+
primaryColoredShadows?: Partial<Record<keyof typeof primaryColoredShadows, string>>;
|
|
75
|
+
/**
|
|
76
|
+
* Override accent colored shadows
|
|
77
|
+
*/
|
|
78
|
+
accentColoredShadows?: Partial<Record<keyof typeof accentColoredShadows, string>>;
|
|
79
|
+
/**
|
|
80
|
+
* Override glow effects
|
|
81
|
+
*/
|
|
82
|
+
glowEffects?: Partial<Record<keyof typeof glowEffects, string>>;
|
|
83
|
+
/**
|
|
84
|
+
* Override focus rings
|
|
85
|
+
*/
|
|
86
|
+
focusRings?: Partial<Record<keyof typeof focusRings, string>>;
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Radius override configuration
|
|
90
|
+
*/
|
|
91
|
+
export interface RadiusOverrides {
|
|
92
|
+
/**
|
|
93
|
+
* Override border radius scale
|
|
94
|
+
*/
|
|
95
|
+
borderRadius?: Partial<Record<BorderRadius, string>>;
|
|
96
|
+
/**
|
|
97
|
+
* Override component-specific radius
|
|
98
|
+
*/
|
|
99
|
+
componentRadius?: Partial<{
|
|
100
|
+
button?: Partial<Record<keyof typeof componentRadius.button, string>>;
|
|
101
|
+
card?: Partial<Record<keyof typeof componentRadius.card, string>>;
|
|
102
|
+
input?: Partial<Record<keyof typeof componentRadius.input, string>>;
|
|
103
|
+
badge?: Partial<Record<keyof typeof componentRadius.badge, string>>;
|
|
104
|
+
avatar?: Partial<Record<keyof typeof componentRadius.avatar, string>>;
|
|
105
|
+
modal?: Partial<Record<keyof typeof componentRadius.modal, string>>;
|
|
106
|
+
tooltip?: Partial<Record<keyof typeof componentRadius.tooltip, string>>;
|
|
107
|
+
toast?: Partial<Record<keyof typeof componentRadius.toast, string>>;
|
|
108
|
+
chip?: Partial<Record<keyof typeof componentRadius.chip, string>>;
|
|
109
|
+
image?: Partial<Record<keyof typeof componentRadius.image, string>>;
|
|
110
|
+
}>;
|
|
111
|
+
}
|
|
2
112
|
/**
|
|
3
113
|
* Theme override configuration
|
|
4
114
|
* Allows partial overrides of token subsets
|
|
@@ -25,13 +135,15 @@ export interface ThemeOverride {
|
|
|
25
135
|
*/
|
|
26
136
|
secondaryColors?: Partial<ColorScale>;
|
|
27
137
|
/**
|
|
28
|
-
* Override base
|
|
138
|
+
* Override base and related color tokens (for day mode)
|
|
139
|
+
* Uses ColorTokens to allow primary/accent overrides in addition to base colors.
|
|
29
140
|
*/
|
|
30
|
-
baseColorsDay?: Partial<
|
|
141
|
+
baseColorsDay?: Partial<ColorTokens>;
|
|
31
142
|
/**
|
|
32
|
-
* Override base
|
|
143
|
+
* Override base and related color tokens (for night mode)
|
|
144
|
+
* Uses ColorTokens to allow primary/accent overrides in addition to base colors.
|
|
33
145
|
*/
|
|
34
|
-
baseColorsNight?: Partial<
|
|
146
|
+
baseColorsNight?: Partial<ColorTokens>;
|
|
35
147
|
/**
|
|
36
148
|
* Override surface colors (for day mode)
|
|
37
149
|
*/
|
|
@@ -57,6 +169,109 @@ export interface ThemeOverride {
|
|
|
57
169
|
*/
|
|
58
170
|
textColorsNight?: Partial<TextColors>;
|
|
59
171
|
}
|
|
172
|
+
/**
|
|
173
|
+
* Brand override configuration
|
|
174
|
+
* Extends ThemeOverride with additional token overrides
|
|
175
|
+
*/
|
|
176
|
+
export interface BrandOverride extends ThemeOverride {
|
|
177
|
+
/**
|
|
178
|
+
* Override typography tokens
|
|
179
|
+
*/
|
|
180
|
+
typography?: Partial<TypographyOverrides>;
|
|
181
|
+
/**
|
|
182
|
+
* Override spacing tokens
|
|
183
|
+
*/
|
|
184
|
+
spacing?: Partial<SpacingOverrides>;
|
|
185
|
+
/**
|
|
186
|
+
* Override shadow tokens
|
|
187
|
+
*/
|
|
188
|
+
shadows?: Partial<ShadowOverrides>;
|
|
189
|
+
/**
|
|
190
|
+
* Override radius tokens
|
|
191
|
+
*/
|
|
192
|
+
radius?: Partial<RadiusOverrides>;
|
|
193
|
+
}
|
|
194
|
+
/**
|
|
195
|
+
* Brand theme configuration
|
|
196
|
+
* Represents a single theme variant within a brand package
|
|
197
|
+
*/
|
|
198
|
+
export interface BrandTheme {
|
|
199
|
+
/**
|
|
200
|
+
* Theme identifier (e.g., "neon-day", "neon-night")
|
|
201
|
+
*/
|
|
202
|
+
id: string;
|
|
203
|
+
/**
|
|
204
|
+
* Theme name (e.g., "Neon Day", "Neon Night")
|
|
205
|
+
*/
|
|
206
|
+
name: string;
|
|
207
|
+
/**
|
|
208
|
+
* Theme description
|
|
209
|
+
*/
|
|
210
|
+
description?: string;
|
|
211
|
+
/**
|
|
212
|
+
* Theme mode (day or night)
|
|
213
|
+
*/
|
|
214
|
+
mode: "day" | "night";
|
|
215
|
+
/**
|
|
216
|
+
* Theme overrides
|
|
217
|
+
*/
|
|
218
|
+
overrides: BrandOverride;
|
|
219
|
+
}
|
|
220
|
+
/**
|
|
221
|
+
* Brand package configuration
|
|
222
|
+
* Represents a complete brand package with multiple theme variants
|
|
223
|
+
*/
|
|
224
|
+
export interface BrandPackage {
|
|
225
|
+
/**
|
|
226
|
+
* Brand identifier (e.g., "neon", "minimal")
|
|
227
|
+
*/
|
|
228
|
+
id: string;
|
|
229
|
+
/**
|
|
230
|
+
* Brand name (e.g., "Neon", "Minimal")
|
|
231
|
+
*/
|
|
232
|
+
name: string;
|
|
233
|
+
/**
|
|
234
|
+
* Brand description
|
|
235
|
+
*/
|
|
236
|
+
description?: string;
|
|
237
|
+
/**
|
|
238
|
+
* Brand namespace for CSS variable isolation (e.g., "neon", "minimal")
|
|
239
|
+
*/
|
|
240
|
+
namespace: string;
|
|
241
|
+
/**
|
|
242
|
+
* Brand version (semver)
|
|
243
|
+
*/
|
|
244
|
+
version?: string;
|
|
245
|
+
/**
|
|
246
|
+
* Brand author (optional)
|
|
247
|
+
*/
|
|
248
|
+
author?: string;
|
|
249
|
+
/**
|
|
250
|
+
* Preview image URL (optional)
|
|
251
|
+
*/
|
|
252
|
+
previewImage?: string;
|
|
253
|
+
/**
|
|
254
|
+
* Theme variants within this brand
|
|
255
|
+
*/
|
|
256
|
+
themes: BrandTheme[];
|
|
257
|
+
}
|
|
258
|
+
/**
|
|
259
|
+
* Brand validation result
|
|
260
|
+
*/
|
|
261
|
+
export interface BrandValidationResult {
|
|
262
|
+
/**
|
|
263
|
+
* Whether brand is valid
|
|
264
|
+
*/
|
|
265
|
+
valid: boolean;
|
|
266
|
+
/**
|
|
267
|
+
* Validation errors
|
|
268
|
+
*/
|
|
269
|
+
errors: string[];
|
|
270
|
+
/**
|
|
271
|
+
* Validation warnings
|
|
272
|
+
*/
|
|
273
|
+
warnings: string[];
|
|
274
|
+
}
|
|
60
275
|
/**
|
|
61
276
|
* Theme name type
|
|
62
277
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/themes/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/themes/types.ts"],"names":[],"mappings":"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"}
|