phaser-wind 0.1.0 → 0.2.0
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/README.md +243 -10
- package/dist/color/color-picker.d.ts +12 -2
- package/dist/color/color-picker.d.ts.map +1 -1
- package/dist/color/color-picker.js +59 -2
- package/dist/color/color-picker.js.map +1 -1
- package/dist/color/color-picker.spec.js +19 -0
- package/dist/color/color-picker.spec.js.map +1 -1
- package/dist/examples/nested-theme-example.d.ts +28 -0
- package/dist/examples/nested-theme-example.d.ts.map +1 -0
- package/dist/examples/nested-theme-example.js +313 -0
- package/dist/examples/nested-theme-example.js.map +1 -0
- package/dist/examples/usage-example.d.ts +17 -0
- package/dist/examples/usage-example.d.ts.map +1 -0
- package/dist/examples/usage-example.js +158 -0
- package/dist/examples/usage-example.js.map +1 -0
- package/dist/font/font-picker.d.ts +93 -0
- package/dist/font/font-picker.d.ts.map +1 -0
- package/dist/font/font-picker.js +212 -0
- package/dist/font/font-picker.js.map +1 -0
- package/dist/font/index.d.ts +1 -0
- package/dist/font/index.d.ts.map +1 -1
- package/dist/font/index.js +1 -0
- package/dist/font/index.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/theme/index.d.ts +3 -0
- package/dist/theme/index.d.ts.map +1 -0
- package/dist/theme/index.js +3 -0
- package/dist/theme/index.js.map +1 -0
- package/dist/theme/theme-config.d.ts +162 -0
- package/dist/theme/theme-config.d.ts.map +1 -0
- package/dist/theme/theme-config.js +196 -0
- package/dist/theme/theme-config.js.map +1 -0
- package/dist/theme/theme-manager.d.ts +96 -0
- package/dist/theme/theme-manager.d.ts.map +1 -0
- package/dist/theme/theme-manager.js +171 -0
- package/dist/theme/theme-manager.js.map +1 -0
- package/dist/theme/type.d.ts +1 -0
- package/dist/theme/type.d.ts.map +1 -0
- package/dist/theme/type.js +2 -0
- package/dist/theme/type.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
/* eslint-disable no-magic-numbers */
|
|
2
|
+
import { ThemeManager } from '../theme/theme-manager';
|
|
3
|
+
/**
|
|
4
|
+
* Font picker for accessing theme fonts and font families
|
|
5
|
+
*/
|
|
6
|
+
export class FontPicker {
|
|
7
|
+
/**
|
|
8
|
+
* Get font family from theme
|
|
9
|
+
* @param key - Font key (e.g., 'primary', 'display') or full path (e.g., 'fonts.primary')
|
|
10
|
+
* @returns Font family string
|
|
11
|
+
*/
|
|
12
|
+
static family(key) {
|
|
13
|
+
// Check if it's a theme token (with or without fonts. prefix)
|
|
14
|
+
const fontPath = key.includes('.') ? key : `fonts.${key}`;
|
|
15
|
+
if (ThemeManager.hasToken(fontPath)) {
|
|
16
|
+
const themeValue = ThemeManager.getToken(fontPath);
|
|
17
|
+
if (themeValue && typeof themeValue === 'string') {
|
|
18
|
+
return themeValue;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
// Fallback: check if it's a direct theme token (backwards compatibility)
|
|
22
|
+
if (ThemeManager.hasToken(key)) {
|
|
23
|
+
const themeValue = ThemeManager.getToken(key);
|
|
24
|
+
if (themeValue && typeof themeValue === 'string') {
|
|
25
|
+
return themeValue;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
// Fallback to the key itself if not found in theme
|
|
29
|
+
return key;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Get all available font tokens from current theme
|
|
33
|
+
* @returns Array of font token keys
|
|
34
|
+
*/
|
|
35
|
+
static getAvailableFonts() {
|
|
36
|
+
const theme = ThemeManager.getCurrentTheme();
|
|
37
|
+
if (theme.fonts && typeof theme.fonts === 'object') {
|
|
38
|
+
return Object.keys(theme.fonts);
|
|
39
|
+
}
|
|
40
|
+
return [];
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Spacing picker for accessing theme spacing values
|
|
45
|
+
*/
|
|
46
|
+
export class SpacingPicker {
|
|
47
|
+
/**
|
|
48
|
+
* Get spacing value in pixels from theme
|
|
49
|
+
* @param key - Spacing key (e.g., 'sm', 'lg') or full path (e.g., 'spacing.md')
|
|
50
|
+
* @returns Spacing value in pixels
|
|
51
|
+
*/
|
|
52
|
+
static px(key) {
|
|
53
|
+
// Check if it's a theme token (with or without spacing. prefix)
|
|
54
|
+
const spacingPath = key.includes('.') ? key : `spacing.${key}`;
|
|
55
|
+
if (ThemeManager.hasToken(spacingPath)) {
|
|
56
|
+
const themeValue = ThemeManager.getToken(spacingPath);
|
|
57
|
+
if (themeValue && typeof themeValue === 'number') {
|
|
58
|
+
return themeValue;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
// Fallback: check if it's a direct theme token (backwards compatibility)
|
|
62
|
+
if (ThemeManager.hasToken(key)) {
|
|
63
|
+
const themeValue = ThemeManager.getToken(key);
|
|
64
|
+
if (themeValue && typeof themeValue === 'number') {
|
|
65
|
+
return themeValue;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
// Default fallback values
|
|
69
|
+
const defaultSpacing = {
|
|
70
|
+
xs: 4,
|
|
71
|
+
sm: 8,
|
|
72
|
+
md: 16,
|
|
73
|
+
lg: 24,
|
|
74
|
+
xl: 32,
|
|
75
|
+
'2xl': 48,
|
|
76
|
+
'3xl': 64,
|
|
77
|
+
'4xl': 96,
|
|
78
|
+
};
|
|
79
|
+
return defaultSpacing[key] ?? 16; // Default to 16px
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Get all available spacing tokens from current theme
|
|
83
|
+
* @returns Array of spacing token keys
|
|
84
|
+
*/
|
|
85
|
+
static getAvailableSpacing() {
|
|
86
|
+
const theme = ThemeManager.getCurrentTheme();
|
|
87
|
+
if (theme.spacing && typeof theme.spacing === 'object') {
|
|
88
|
+
return Object.keys(theme.spacing);
|
|
89
|
+
}
|
|
90
|
+
return [];
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Typography picker for accessing complete typography styles from theme
|
|
95
|
+
*/
|
|
96
|
+
export class TypographyPicker {
|
|
97
|
+
/**
|
|
98
|
+
* Get complete typography style from theme
|
|
99
|
+
* @param key - Typography key (e.g., 'heading', 'body') or full path
|
|
100
|
+
* @returns Typography style object
|
|
101
|
+
*/
|
|
102
|
+
static style(key) {
|
|
103
|
+
// Check if it's a theme token (with or without typography. prefix)
|
|
104
|
+
const typographyPath = key.includes('.') ? key : `typography.${key}`;
|
|
105
|
+
if (ThemeManager.hasToken(typographyPath)) {
|
|
106
|
+
const themeValue = ThemeManager.getToken(typographyPath);
|
|
107
|
+
if (themeValue && typeof themeValue === 'object') {
|
|
108
|
+
// Resolve any theme references in the typography object
|
|
109
|
+
const resolved = this.resolveTypographyReferences(themeValue);
|
|
110
|
+
return resolved;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
// Fallback: check if it's a direct theme token
|
|
114
|
+
if (ThemeManager.hasToken(key)) {
|
|
115
|
+
const themeValue = ThemeManager.getToken(key);
|
|
116
|
+
if (themeValue && typeof themeValue === 'object') {
|
|
117
|
+
const resolved = this.resolveTypographyReferences(themeValue);
|
|
118
|
+
return resolved;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
// Return empty object if not found
|
|
122
|
+
return {};
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Get Phaser-compatible text style from typography token
|
|
126
|
+
* @param key - Typography key
|
|
127
|
+
* @returns Object compatible with Phaser text styles
|
|
128
|
+
*/
|
|
129
|
+
static phaserStyle(key) {
|
|
130
|
+
const style = this.style(key);
|
|
131
|
+
const result = {
|
|
132
|
+
fontStyle: style.fontWeight && Number(style.fontWeight) >= 600 ? 'bold' : 'normal',
|
|
133
|
+
};
|
|
134
|
+
if (style.fontSize) {
|
|
135
|
+
result.fontSize = style.fontSize;
|
|
136
|
+
}
|
|
137
|
+
if (style.fontFamily) {
|
|
138
|
+
result.fontFamily = style.fontFamily;
|
|
139
|
+
}
|
|
140
|
+
return result;
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Get all available typography tokens from current theme
|
|
144
|
+
* @returns Array of typography token keys
|
|
145
|
+
*/
|
|
146
|
+
static getAvailableTypography() {
|
|
147
|
+
const theme = ThemeManager.getCurrentTheme();
|
|
148
|
+
if (theme.typography && typeof theme.typography === 'object') {
|
|
149
|
+
return Object.keys(theme.typography);
|
|
150
|
+
}
|
|
151
|
+
return [];
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Resolve theme references in typography objects
|
|
155
|
+
* @param typographyObject - Typography style object
|
|
156
|
+
* @returns Resolved typography object
|
|
157
|
+
*/
|
|
158
|
+
static resolveTypographyReferences(typographyObject) {
|
|
159
|
+
const resolved = { ...typographyObject };
|
|
160
|
+
// Resolve fontSize if it's a theme reference
|
|
161
|
+
if (resolved['fontSize'] && typeof resolved['fontSize'] === 'string') {
|
|
162
|
+
if (resolved['fontSize'].includes('.')) {
|
|
163
|
+
resolved['fontSize'] = ThemeManager.resolveToken(resolved['fontSize']);
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
// Resolve fontFamily if it's a theme reference
|
|
167
|
+
if (resolved['fontFamily'] && typeof resolved['fontFamily'] === 'string') {
|
|
168
|
+
if (resolved['fontFamily'].includes('.')) {
|
|
169
|
+
resolved['fontFamily'] = ThemeManager.resolveToken(resolved['fontFamily']);
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
return resolved;
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Effect picker for accessing theme effects like shadows
|
|
177
|
+
*/
|
|
178
|
+
export class EffectPicker {
|
|
179
|
+
/**
|
|
180
|
+
* Get effect configuration from theme
|
|
181
|
+
* @param key - Effect key (e.g., 'shadow-md') or full path
|
|
182
|
+
* @returns Effect configuration object
|
|
183
|
+
*/
|
|
184
|
+
static config(key) {
|
|
185
|
+
// Check if it's a theme token (with or without effects. prefix)
|
|
186
|
+
const effectPath = key.includes('.') ? key : `effects.${key}`;
|
|
187
|
+
if (ThemeManager.hasToken(effectPath)) {
|
|
188
|
+
const themeValue = ThemeManager.getToken(effectPath);
|
|
189
|
+
if (themeValue && typeof themeValue === 'object') {
|
|
190
|
+
// Resolve color references
|
|
191
|
+
const resolved = { ...themeValue };
|
|
192
|
+
if ('color' in resolved && typeof resolved.color === 'string') {
|
|
193
|
+
resolved.color = ThemeManager.resolveToken(resolved.color);
|
|
194
|
+
}
|
|
195
|
+
return resolved;
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
return {};
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* Get all available effect tokens from current theme
|
|
202
|
+
* @returns Array of effect token keys
|
|
203
|
+
*/
|
|
204
|
+
static getAvailableEffects() {
|
|
205
|
+
const theme = ThemeManager.getCurrentTheme();
|
|
206
|
+
if (theme.effects && typeof theme.effects === 'object') {
|
|
207
|
+
return Object.keys(theme.effects);
|
|
208
|
+
}
|
|
209
|
+
return [];
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
//# sourceMappingURL=font-picker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"font-picker.js","sourceRoot":"","sources":["../../src/font/font-picker.ts"],"names":[],"mappings":"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"}
|
package/dist/font/index.d.ts
CHANGED
package/dist/font/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/font/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/font/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC"}
|
package/dist/font/index.js
CHANGED
package/dist/font/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/font/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/font/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC"}
|
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/theme/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/theme/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
import type { ColorToken } from '../color/color-picker';
|
|
2
|
+
import type { FontSizeKey } from '../font/font-size-picker';
|
|
3
|
+
/**
|
|
4
|
+
* Font configuration structure
|
|
5
|
+
*/
|
|
6
|
+
export type FontConfig = {
|
|
7
|
+
[key: string]: string;
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* Color configuration structure
|
|
11
|
+
*/
|
|
12
|
+
export type ColorConfig = {
|
|
13
|
+
[key: string]: ColorToken | string;
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* Spacing configuration structure (following Tailwind spacing scale)
|
|
17
|
+
*/
|
|
18
|
+
export type SpacingConfig = {
|
|
19
|
+
[key: string]: number;
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Typography configuration structure
|
|
23
|
+
*/
|
|
24
|
+
export type TypographyConfig = {
|
|
25
|
+
[key: string]: {
|
|
26
|
+
fontSize: FontSizeKey | string;
|
|
27
|
+
fontFamily?: string;
|
|
28
|
+
fontWeight?: number | string;
|
|
29
|
+
lineHeight?: number | string;
|
|
30
|
+
letterSpacing?: number | string;
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
/**
|
|
34
|
+
* Shadow/Effect configuration structure
|
|
35
|
+
*/
|
|
36
|
+
export type EffectConfig = {
|
|
37
|
+
[key: string]: {
|
|
38
|
+
blur?: number;
|
|
39
|
+
offsetX?: number;
|
|
40
|
+
offsetY?: number;
|
|
41
|
+
color?: ColorToken | string;
|
|
42
|
+
alpha?: number;
|
|
43
|
+
};
|
|
44
|
+
};
|
|
45
|
+
/**
|
|
46
|
+
* Base theme configuration structure
|
|
47
|
+
* Supports nested objects for organized design tokens
|
|
48
|
+
*/
|
|
49
|
+
export type BaseThemeConfig = {
|
|
50
|
+
fonts?: FontConfig;
|
|
51
|
+
colors?: ColorConfig;
|
|
52
|
+
spacing?: SpacingConfig;
|
|
53
|
+
typography?: TypographyConfig;
|
|
54
|
+
effects?: EffectConfig;
|
|
55
|
+
[key: string]: unknown;
|
|
56
|
+
};
|
|
57
|
+
/**
|
|
58
|
+
* Default theme structure following design system best practices
|
|
59
|
+
*/
|
|
60
|
+
export type DefaultThemeStructure = {
|
|
61
|
+
fonts: {
|
|
62
|
+
primary: string;
|
|
63
|
+
secondary: string;
|
|
64
|
+
monospace: string;
|
|
65
|
+
display: string;
|
|
66
|
+
};
|
|
67
|
+
colors: {
|
|
68
|
+
primary: ColorToken;
|
|
69
|
+
secondary: ColorToken;
|
|
70
|
+
accent: ColorToken;
|
|
71
|
+
success: ColorToken;
|
|
72
|
+
warning: ColorToken;
|
|
73
|
+
error: ColorToken;
|
|
74
|
+
info: ColorToken;
|
|
75
|
+
background: ColorToken;
|
|
76
|
+
'background-secondary': ColorToken;
|
|
77
|
+
'background-panel': ColorToken;
|
|
78
|
+
'background-modal': ColorToken;
|
|
79
|
+
text: ColorToken;
|
|
80
|
+
'text-secondary': ColorToken;
|
|
81
|
+
'text-muted': ColorToken;
|
|
82
|
+
'text-inverse': ColorToken;
|
|
83
|
+
border: ColorToken;
|
|
84
|
+
'border-light': ColorToken;
|
|
85
|
+
'border-focus': ColorToken;
|
|
86
|
+
'button-primary': ColorToken;
|
|
87
|
+
'button-secondary': ColorToken;
|
|
88
|
+
'button-danger': ColorToken;
|
|
89
|
+
shadow: ColorToken;
|
|
90
|
+
overlay: ColorToken;
|
|
91
|
+
};
|
|
92
|
+
spacing: {
|
|
93
|
+
xs: number;
|
|
94
|
+
sm: number;
|
|
95
|
+
md: number;
|
|
96
|
+
lg: number;
|
|
97
|
+
xl: number;
|
|
98
|
+
'2xl': number;
|
|
99
|
+
'3xl': number;
|
|
100
|
+
'4xl': number;
|
|
101
|
+
};
|
|
102
|
+
typography: {
|
|
103
|
+
heading: {
|
|
104
|
+
fontSize: FontSizeKey;
|
|
105
|
+
fontFamily: string;
|
|
106
|
+
fontWeight: number;
|
|
107
|
+
lineHeight: number;
|
|
108
|
+
};
|
|
109
|
+
'heading-large': {
|
|
110
|
+
fontSize: FontSizeKey;
|
|
111
|
+
fontFamily: string;
|
|
112
|
+
fontWeight: number;
|
|
113
|
+
lineHeight: number;
|
|
114
|
+
};
|
|
115
|
+
body: {
|
|
116
|
+
fontSize: FontSizeKey;
|
|
117
|
+
fontFamily: string;
|
|
118
|
+
fontWeight: number;
|
|
119
|
+
lineHeight: number;
|
|
120
|
+
};
|
|
121
|
+
caption: {
|
|
122
|
+
fontSize: FontSizeKey;
|
|
123
|
+
fontFamily: string;
|
|
124
|
+
fontWeight: number;
|
|
125
|
+
lineHeight: number;
|
|
126
|
+
};
|
|
127
|
+
};
|
|
128
|
+
effects: {
|
|
129
|
+
'shadow-sm': {
|
|
130
|
+
blur: number;
|
|
131
|
+
offsetY: number;
|
|
132
|
+
color: string;
|
|
133
|
+
alpha: number;
|
|
134
|
+
};
|
|
135
|
+
'shadow-md': {
|
|
136
|
+
blur: number;
|
|
137
|
+
offsetY: number;
|
|
138
|
+
color: string;
|
|
139
|
+
alpha: number;
|
|
140
|
+
};
|
|
141
|
+
'shadow-lg': {
|
|
142
|
+
blur: number;
|
|
143
|
+
offsetY: number;
|
|
144
|
+
color: string;
|
|
145
|
+
alpha: number;
|
|
146
|
+
};
|
|
147
|
+
};
|
|
148
|
+
};
|
|
149
|
+
/**
|
|
150
|
+
* Example theme configurations with structured design tokens
|
|
151
|
+
*/
|
|
152
|
+
export declare const defaultLightTheme: DefaultThemeStructure;
|
|
153
|
+
export declare const defaultDarkTheme: DefaultThemeStructure;
|
|
154
|
+
/**
|
|
155
|
+
* Type helper to create strongly-typed custom themes
|
|
156
|
+
*/
|
|
157
|
+
export type CreateTheme<T extends BaseThemeConfig> = T;
|
|
158
|
+
/**
|
|
159
|
+
* Type helper to extract theme token keys
|
|
160
|
+
*/
|
|
161
|
+
export type ThemeTokenKeys<T extends BaseThemeConfig> = keyof T;
|
|
162
|
+
//# sourceMappingURL=theme-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"theme-config.d.ts","sourceRoot":"","sources":["../../src/theme/theme-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Example theme configurations with structured design tokens
|
|
3
|
+
*/
|
|
4
|
+
export const defaultLightTheme = {
|
|
5
|
+
fonts: {
|
|
6
|
+
primary: 'Inter, system-ui, sans-serif',
|
|
7
|
+
secondary: 'Roboto, Arial, sans-serif',
|
|
8
|
+
monospace: 'Fira Code, Consolas, monospace',
|
|
9
|
+
display: 'Poppins, Inter, sans-serif',
|
|
10
|
+
},
|
|
11
|
+
colors: {
|
|
12
|
+
// Primary colors
|
|
13
|
+
primary: 'blue-600',
|
|
14
|
+
secondary: 'gray-600',
|
|
15
|
+
accent: 'purple-500',
|
|
16
|
+
// Semantic colors
|
|
17
|
+
success: 'green-500',
|
|
18
|
+
warning: 'yellow-500',
|
|
19
|
+
error: 'red-500',
|
|
20
|
+
info: 'blue-400',
|
|
21
|
+
// Background colors
|
|
22
|
+
background: 'white',
|
|
23
|
+
'background-secondary': 'gray-50',
|
|
24
|
+
'background-panel': 'gray-100',
|
|
25
|
+
'background-modal': 'white',
|
|
26
|
+
// Text colors
|
|
27
|
+
text: 'gray-900',
|
|
28
|
+
'text-secondary': 'gray-700',
|
|
29
|
+
'text-muted': 'gray-500',
|
|
30
|
+
'text-inverse': 'white',
|
|
31
|
+
// Border colors
|
|
32
|
+
border: 'gray-300',
|
|
33
|
+
'border-light': 'gray-200',
|
|
34
|
+
'border-focus': 'blue-500',
|
|
35
|
+
// Button variants
|
|
36
|
+
'button-primary': 'blue-600',
|
|
37
|
+
'button-secondary': 'gray-600',
|
|
38
|
+
'button-danger': 'red-600',
|
|
39
|
+
// UI elements
|
|
40
|
+
shadow: 'black',
|
|
41
|
+
overlay: 'black',
|
|
42
|
+
},
|
|
43
|
+
spacing: {
|
|
44
|
+
xs: 4,
|
|
45
|
+
sm: 8,
|
|
46
|
+
md: 16,
|
|
47
|
+
lg: 24,
|
|
48
|
+
xl: 32,
|
|
49
|
+
'2xl': 48,
|
|
50
|
+
'3xl': 64,
|
|
51
|
+
'4xl': 96,
|
|
52
|
+
},
|
|
53
|
+
typography: {
|
|
54
|
+
heading: {
|
|
55
|
+
fontSize: '2xl',
|
|
56
|
+
fontFamily: 'fonts.display',
|
|
57
|
+
fontWeight: 600,
|
|
58
|
+
lineHeight: 1.2,
|
|
59
|
+
},
|
|
60
|
+
'heading-large': {
|
|
61
|
+
fontSize: '4xl',
|
|
62
|
+
fontFamily: 'fonts.display',
|
|
63
|
+
fontWeight: 700,
|
|
64
|
+
lineHeight: 1.1,
|
|
65
|
+
},
|
|
66
|
+
body: {
|
|
67
|
+
fontSize: 'md',
|
|
68
|
+
fontFamily: 'fonts.primary',
|
|
69
|
+
fontWeight: 400,
|
|
70
|
+
lineHeight: 1.5,
|
|
71
|
+
},
|
|
72
|
+
caption: {
|
|
73
|
+
fontSize: 'sm',
|
|
74
|
+
fontFamily: 'fonts.primary',
|
|
75
|
+
fontWeight: 400,
|
|
76
|
+
lineHeight: 1.4,
|
|
77
|
+
},
|
|
78
|
+
},
|
|
79
|
+
effects: {
|
|
80
|
+
'shadow-sm': {
|
|
81
|
+
blur: 2,
|
|
82
|
+
offsetY: 1,
|
|
83
|
+
color: 'colors.shadow',
|
|
84
|
+
alpha: 0.05,
|
|
85
|
+
},
|
|
86
|
+
'shadow-md': {
|
|
87
|
+
blur: 4,
|
|
88
|
+
offsetY: 2,
|
|
89
|
+
color: 'colors.shadow',
|
|
90
|
+
alpha: 0.1,
|
|
91
|
+
},
|
|
92
|
+
'shadow-lg': {
|
|
93
|
+
blur: 8,
|
|
94
|
+
offsetY: 4,
|
|
95
|
+
color: 'colors.shadow',
|
|
96
|
+
alpha: 0.1,
|
|
97
|
+
},
|
|
98
|
+
},
|
|
99
|
+
};
|
|
100
|
+
export const defaultDarkTheme = {
|
|
101
|
+
fonts: {
|
|
102
|
+
primary: 'Inter, system-ui, sans-serif',
|
|
103
|
+
secondary: 'Roboto, Arial, sans-serif',
|
|
104
|
+
monospace: 'Fira Code, Consolas, monospace',
|
|
105
|
+
display: 'Poppins, Inter, sans-serif',
|
|
106
|
+
},
|
|
107
|
+
colors: {
|
|
108
|
+
// Primary colors
|
|
109
|
+
primary: 'blue-400',
|
|
110
|
+
secondary: 'gray-400',
|
|
111
|
+
accent: 'purple-400',
|
|
112
|
+
// Semantic colors
|
|
113
|
+
success: 'green-400',
|
|
114
|
+
warning: 'yellow-400',
|
|
115
|
+
error: 'red-400',
|
|
116
|
+
info: 'blue-300',
|
|
117
|
+
// Background colors
|
|
118
|
+
background: 'gray-900',
|
|
119
|
+
'background-secondary': 'gray-800',
|
|
120
|
+
'background-panel': 'gray-700',
|
|
121
|
+
'background-modal': 'gray-800',
|
|
122
|
+
// Text colors
|
|
123
|
+
text: 'white',
|
|
124
|
+
'text-secondary': 'gray-300',
|
|
125
|
+
'text-muted': 'gray-400',
|
|
126
|
+
'text-inverse': 'gray-900',
|
|
127
|
+
// Border colors
|
|
128
|
+
border: 'gray-600',
|
|
129
|
+
'border-light': 'gray-700',
|
|
130
|
+
'border-focus': 'blue-400',
|
|
131
|
+
// Button variants
|
|
132
|
+
'button-primary': 'blue-500',
|
|
133
|
+
'button-secondary': 'gray-500',
|
|
134
|
+
'button-danger': 'red-500',
|
|
135
|
+
// UI elements
|
|
136
|
+
shadow: 'black',
|
|
137
|
+
overlay: 'black',
|
|
138
|
+
},
|
|
139
|
+
spacing: {
|
|
140
|
+
xs: 4,
|
|
141
|
+
sm: 8,
|
|
142
|
+
md: 16,
|
|
143
|
+
lg: 24,
|
|
144
|
+
xl: 32,
|
|
145
|
+
'2xl': 48,
|
|
146
|
+
'3xl': 64,
|
|
147
|
+
'4xl': 96,
|
|
148
|
+
},
|
|
149
|
+
typography: {
|
|
150
|
+
heading: {
|
|
151
|
+
fontSize: '2xl',
|
|
152
|
+
fontFamily: 'fonts.display',
|
|
153
|
+
fontWeight: 600,
|
|
154
|
+
lineHeight: 1.2,
|
|
155
|
+
},
|
|
156
|
+
'heading-large': {
|
|
157
|
+
fontSize: '4xl',
|
|
158
|
+
fontFamily: 'fonts.display',
|
|
159
|
+
fontWeight: 700,
|
|
160
|
+
lineHeight: 1.1,
|
|
161
|
+
},
|
|
162
|
+
body: {
|
|
163
|
+
fontSize: 'md',
|
|
164
|
+
fontFamily: 'fonts.primary',
|
|
165
|
+
fontWeight: 400,
|
|
166
|
+
lineHeight: 1.5,
|
|
167
|
+
},
|
|
168
|
+
caption: {
|
|
169
|
+
fontSize: 'sm',
|
|
170
|
+
fontFamily: 'fonts.primary',
|
|
171
|
+
fontWeight: 400,
|
|
172
|
+
lineHeight: 1.4,
|
|
173
|
+
},
|
|
174
|
+
},
|
|
175
|
+
effects: {
|
|
176
|
+
'shadow-sm': {
|
|
177
|
+
blur: 2,
|
|
178
|
+
offsetY: 1,
|
|
179
|
+
color: 'colors.shadow',
|
|
180
|
+
alpha: 0.1,
|
|
181
|
+
},
|
|
182
|
+
'shadow-md': {
|
|
183
|
+
blur: 4,
|
|
184
|
+
offsetY: 2,
|
|
185
|
+
color: 'colors.shadow',
|
|
186
|
+
alpha: 0.15,
|
|
187
|
+
},
|
|
188
|
+
'shadow-lg': {
|
|
189
|
+
blur: 8,
|
|
190
|
+
offsetY: 4,
|
|
191
|
+
color: 'colors.shadow',
|
|
192
|
+
alpha: 0.2,
|
|
193
|
+
},
|
|
194
|
+
},
|
|
195
|
+
};
|
|
196
|
+
//# sourceMappingURL=theme-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"theme-config.js","sourceRoot":"","sources":["../../src/theme/theme-config.ts"],"names":[],"mappings":"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"}
|