phaser-wind 0.2.0 → 0.3.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.
Files changed (113) hide show
  1. package/README.md +124 -135
  2. package/dist/core/color.d.ts +287 -0
  3. package/dist/core/color.d.ts.map +1 -0
  4. package/dist/core/color.js +386 -0
  5. package/dist/core/color.js.map +1 -0
  6. package/dist/core/color.spec.d.ts +2 -0
  7. package/dist/core/color.spec.d.ts.map +1 -0
  8. package/dist/core/color.spec.js +252 -0
  9. package/dist/core/color.spec.js.map +1 -0
  10. package/dist/core/font-size.d.ts +34 -0
  11. package/dist/core/font-size.d.ts.map +1 -0
  12. package/dist/core/font-size.js +68 -0
  13. package/dist/core/font-size.js.map +1 -0
  14. package/dist/core/font-size.spec.d.ts +2 -0
  15. package/dist/core/font-size.spec.d.ts.map +1 -0
  16. package/dist/core/font-size.spec.js +73 -0
  17. package/dist/core/font-size.spec.js.map +1 -0
  18. package/dist/{font/font-picker.d.ts → core/font.d.ts} +22 -21
  19. package/dist/core/font.d.ts.map +1 -0
  20. package/dist/{font/font-picker.js → core/font.js} +28 -62
  21. package/dist/core/font.js.map +1 -0
  22. package/dist/core/font.spec.d.ts +2 -0
  23. package/dist/core/font.spec.d.ts.map +1 -0
  24. package/dist/core/font.spec.js +84 -0
  25. package/dist/core/font.spec.js.map +1 -0
  26. package/dist/core/index.d.ts +8 -0
  27. package/dist/core/index.d.ts.map +1 -0
  28. package/dist/core/index.js +8 -0
  29. package/dist/core/index.js.map +1 -0
  30. package/dist/{color → core}/pallete.d.ts.map +1 -1
  31. package/dist/core/pallete.js.map +1 -0
  32. package/dist/core/radius.d.ts +34 -0
  33. package/dist/core/radius.d.ts.map +1 -0
  34. package/dist/core/radius.js +46 -0
  35. package/dist/core/radius.js.map +1 -0
  36. package/dist/core/radius.spec.d.ts +2 -0
  37. package/dist/core/radius.spec.d.ts.map +1 -0
  38. package/dist/core/radius.spec.js +61 -0
  39. package/dist/core/radius.spec.js.map +1 -0
  40. package/dist/core/shadow.d.ts +23 -0
  41. package/dist/core/shadow.d.ts.map +1 -0
  42. package/dist/core/shadow.js +23 -0
  43. package/dist/core/shadow.js.map +1 -0
  44. package/dist/core/spacing.d.ts +39 -0
  45. package/dist/core/spacing.d.ts.map +1 -0
  46. package/dist/core/spacing.js +82 -0
  47. package/dist/core/spacing.js.map +1 -0
  48. package/dist/core/spacing.spec.d.ts +2 -0
  49. package/dist/core/spacing.spec.d.ts.map +1 -0
  50. package/dist/core/spacing.spec.js +49 -0
  51. package/dist/core/spacing.spec.js.map +1 -0
  52. package/dist/font/index.d.ts +2 -2
  53. package/dist/font/index.d.ts.map +1 -1
  54. package/dist/font/index.js +2 -2
  55. package/dist/font/index.js.map +1 -1
  56. package/dist/index.d.ts +2 -1
  57. package/dist/index.d.ts.map +1 -1
  58. package/dist/index.js +2 -1
  59. package/dist/index.js.map +1 -1
  60. package/dist/theme/theme-config.d.ts +31 -95
  61. package/dist/theme/theme-config.d.ts.map +1 -1
  62. package/dist/theme/theme-config.js +12 -52
  63. package/dist/theme/theme-config.js.map +1 -1
  64. package/dist/theme/theme-manager.d.ts +18 -6
  65. package/dist/theme/theme-manager.d.ts.map +1 -1
  66. package/dist/theme/theme-manager.js +25 -6
  67. package/dist/theme/theme-manager.js.map +1 -1
  68. package/dist/utils/index.d.ts +2 -0
  69. package/dist/utils/index.d.ts.map +1 -0
  70. package/dist/utils/index.js +2 -0
  71. package/dist/utils/index.js.map +1 -0
  72. package/dist/utils/is-valid-color.d.ts +13 -0
  73. package/dist/utils/is-valid-color.d.ts.map +1 -0
  74. package/dist/utils/is-valid-color.js +32 -0
  75. package/dist/utils/is-valid-color.js.map +1 -0
  76. package/dist/utils/is-valid-color.spec.d.ts +2 -0
  77. package/dist/utils/is-valid-color.spec.d.ts.map +1 -0
  78. package/dist/utils/is-valid-color.spec.js +82 -0
  79. package/dist/utils/is-valid-color.spec.js.map +1 -0
  80. package/package.json +5 -3
  81. package/dist/color/color-picker.d.ts +0 -23
  82. package/dist/color/color-picker.d.ts.map +0 -1
  83. package/dist/color/color-picker.js +0 -118
  84. package/dist/color/color-picker.js.map +0 -1
  85. package/dist/color/color-picker.spec.d.ts +0 -2
  86. package/dist/color/color-picker.spec.d.ts.map +0 -1
  87. package/dist/color/color-picker.spec.js +0 -60
  88. package/dist/color/color-picker.spec.js.map +0 -1
  89. package/dist/color/index.d.ts +0 -3
  90. package/dist/color/index.d.ts.map +0 -1
  91. package/dist/color/index.js +0 -3
  92. package/dist/color/index.js.map +0 -1
  93. package/dist/color/pallete.js.map +0 -1
  94. package/dist/examples/nested-theme-example.d.ts +0 -28
  95. package/dist/examples/nested-theme-example.d.ts.map +0 -1
  96. package/dist/examples/nested-theme-example.js +0 -313
  97. package/dist/examples/nested-theme-example.js.map +0 -1
  98. package/dist/examples/usage-example.d.ts +0 -17
  99. package/dist/examples/usage-example.d.ts.map +0 -1
  100. package/dist/examples/usage-example.js +0 -158
  101. package/dist/examples/usage-example.js.map +0 -1
  102. package/dist/font/font-picker.d.ts.map +0 -1
  103. package/dist/font/font-picker.js.map +0 -1
  104. package/dist/font/font-size-picker.d.ts +0 -19
  105. package/dist/font/font-size-picker.d.ts.map +0 -1
  106. package/dist/font/font-size-picker.js +0 -24
  107. package/dist/font/font-size-picker.js.map +0 -1
  108. package/dist/font/font-size-picker.spec.d.ts +0 -2
  109. package/dist/font/font-size-picker.spec.d.ts.map +0 -1
  110. package/dist/font/font-size-picker.spec.js +0 -48
  111. package/dist/font/font-size-picker.spec.js.map +0 -1
  112. /package/dist/{color → core}/pallete.d.ts +0 -0
  113. /package/dist/{color → core}/pallete.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spacing.spec.d.ts","sourceRoot":"","sources":["../../src/core/spacing.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,49 @@
1
+ /* eslint-disable no-magic-numbers */
2
+ /* eslint-disable max-lines */
3
+ /* eslint-disable max-lines-per-function */
4
+ /* eslint-disable sonarjs/no-duplicate-string */
5
+ import { afterAll, beforeEach, describe, expect, it } from 'vitest';
6
+ import { ThemeManager } from '../theme/theme-manager';
7
+ import { Spacing } from './spacing';
8
+ describe('Spacing', () => {
9
+ beforeEach(() => {
10
+ ThemeManager.clear();
11
+ });
12
+ afterAll(() => {
13
+ ThemeManager.clear();
14
+ });
15
+ describe('px', () => {
16
+ it('should return pixel values', () => {
17
+ expect(Spacing.px('2')).toBe(8);
18
+ expect(Spacing.px('4')).toBe(16);
19
+ expect(Spacing.px('8')).toBe(32);
20
+ });
21
+ });
22
+ describe('rem', () => {
23
+ it('should convert pixel values to rem', () => {
24
+ expect(Spacing.rem('16')).toBe(4);
25
+ expect(Spacing.rem('8')).toBe(2);
26
+ expect(Spacing.rem('4')).toBe(1);
27
+ });
28
+ });
29
+ describe('css', () => {
30
+ it('should return pixel values as CSS strings', () => {
31
+ expect(Spacing.css('2')).toBe('8px');
32
+ expect(Spacing.css('4')).toBe('16px');
33
+ expect(Spacing.css('8')).toBe('32px');
34
+ });
35
+ it('should handle theme values', () => {
36
+ expect(Spacing.css('custom')).toBe('0px');
37
+ expect(Spacing.css('11')).toBe('44px');
38
+ ThemeManager.setThemeObject({
39
+ spacing: {
40
+ custom: 42,
41
+ '11': 100,
42
+ },
43
+ });
44
+ expect(Spacing.css('custom')).toBe('42px');
45
+ expect(Spacing.css('11')).toBe('100px');
46
+ });
47
+ });
48
+ });
49
+ //# sourceMappingURL=spacing.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spacing.spec.js","sourceRoot":"","sources":["../../src/core/spacing.spec.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,8BAA8B;AAC9B,2CAA2C;AAC3C,gDAAgD;AAChD,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAEpE,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;IACvB,UAAU,CAAC,GAAG,EAAE;QACd,YAAY,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,GAAG,EAAE;QACZ,YAAY,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE;QAClB,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;YACpC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAChC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACjC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE;QACnB,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;YAC5C,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACjC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE;QACnB,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;YACnD,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACtC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;YACpC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC1C,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAEvC,YAAY,CAAC,cAAc,CAAC;gBAC1B,OAAO,EAAE;oBACP,MAAM,EAAE,EAAE;oBACV,IAAI,EAAE,GAAG;iBACV;aACF,CAAC,CAAC;YACH,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC3C,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,3 +1,3 @@
1
- export * from './font-picker';
2
- export * from './font-size-picker';
1
+ export * from '../core/font';
2
+ export * from '../core/font-size';
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/font/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/font/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC"}
@@ -1,3 +1,3 @@
1
- export * from './font-picker';
2
- export * from './font-size-picker';
1
+ export * from '../core/font';
2
+ export * from '../core/font-size';
3
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/font/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/font/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,5 @@
1
- export * from './color';
1
+ export * from './core';
2
2
  export * from './font';
3
3
  export * from './theme';
4
+ export * from './utils';
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -1,4 +1,5 @@
1
- export * from './color';
1
+ export * from './core';
2
2
  export * from './font';
3
3
  export * from './theme';
4
+ export * from './utils';
4
5
  //# sourceMappingURL=index.js.map
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;AACvB,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
@@ -1,5 +1,6 @@
1
- import type { ColorToken } from '../color/color-picker';
2
- import type { FontSizeKey } from '../font/font-size-picker';
1
+ import type { ColorToken } from '../core/color';
2
+ import { type FontSizeKey, type FontSizeMap } from '../core/font-size';
3
+ import { type RadiusMap } from '../core/radius';
3
4
  /**
4
5
  * Font configuration structure
5
6
  */
@@ -42,115 +43,50 @@ export type EffectConfig = {
42
43
  alpha?: number;
43
44
  };
44
45
  };
46
+ /**
47
+ * Theme override type - allows partial configuration for theming
48
+ */
49
+ export type ThemeOverride = {
50
+ fonts?: Partial<FontConfig>;
51
+ fontSizes?: Partial<FontSizeMap> & {
52
+ [key: string]: number;
53
+ };
54
+ colors?: Partial<ColorConfig>;
55
+ spacing?: Partial<SpacingConfig>;
56
+ typography?: Partial<TypographyConfig>;
57
+ effects?: Partial<EffectConfig>;
58
+ radius?: Partial<RadiusMap> & {
59
+ [key: string]: number;
60
+ };
61
+ custom?: {
62
+ [key: string]: unknown;
63
+ };
64
+ };
45
65
  /**
46
66
  * Base theme configuration structure
47
67
  * Supports nested objects for organized design tokens
48
68
  */
49
69
  export type BaseThemeConfig = {
50
70
  fonts?: FontConfig;
71
+ fontSizes?: FontSizeMap & {
72
+ [key: string]: number;
73
+ };
51
74
  colors?: ColorConfig;
52
75
  spacing?: SpacingConfig;
53
76
  typography?: TypographyConfig;
54
77
  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
- };
78
+ radius?: RadiusMap & {
79
+ [key: string]: number;
127
80
  };
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
- };
81
+ custom?: {
82
+ [key: string]: unknown;
147
83
  };
148
84
  };
149
85
  /**
150
86
  * Example theme configurations with structured design tokens
151
87
  */
152
- export declare const defaultLightTheme: DefaultThemeStructure;
153
- export declare const defaultDarkTheme: DefaultThemeStructure;
88
+ export declare const defaultLightTheme: BaseThemeConfig;
89
+ export declare const defaultDarkTheme: BaseThemeConfig;
154
90
  /**
155
91
  * Type helper to create strongly-typed custom themes
156
92
  */
@@ -1 +1 @@
1
- {"version":3,"file":"theme-config.d.ts","sourceRoot":"","sources":["../../src/theme/theme-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"theme-config.d.ts","sourceRoot":"","sources":["../../src/theme/theme-config.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,6 @@
1
+ import { fontSizeMap, } from '../core/font-size';
2
+ import { radiusMap } from '../core/radius';
3
+ import { spacingMap } from '../core/spacing';
1
4
  /**
2
5
  * Example theme configurations with structured design tokens
3
6
  */
@@ -8,11 +11,11 @@ export const defaultLightTheme = {
8
11
  monospace: 'Fira Code, Consolas, monospace',
9
12
  display: 'Poppins, Inter, sans-serif',
10
13
  },
14
+ fontSizes: { ...fontSizeMap },
11
15
  colors: {
12
16
  // Primary colors
13
17
  primary: 'blue-600',
14
18
  secondary: 'gray-600',
15
- accent: 'purple-500',
16
19
  // Semantic colors
17
20
  success: 'green-500',
18
21
  warning: 'yellow-500',
@@ -20,36 +23,13 @@ export const defaultLightTheme = {
20
23
  info: 'blue-400',
21
24
  // Background colors
22
25
  background: 'white',
23
- 'background-secondary': 'gray-50',
24
- 'background-panel': 'gray-100',
25
- 'background-modal': 'white',
26
26
  // Text colors
27
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
28
  // UI elements
40
29
  shadow: 'black',
41
30
  overlay: 'black',
42
31
  },
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
- },
32
+ spacing: { ...spacingMap },
53
33
  typography: {
54
34
  heading: {
55
35
  fontSize: '2xl',
@@ -64,7 +44,7 @@ export const defaultLightTheme = {
64
44
  lineHeight: 1.1,
65
45
  },
66
46
  body: {
67
- fontSize: 'md',
47
+ fontSize: 'base',
68
48
  fontFamily: 'fonts.primary',
69
49
  fontWeight: 400,
70
50
  lineHeight: 1.5,
@@ -96,6 +76,7 @@ export const defaultLightTheme = {
96
76
  alpha: 0.1,
97
77
  },
98
78
  },
79
+ custom: {},
99
80
  };
100
81
  export const defaultDarkTheme = {
101
82
  fonts: {
@@ -104,11 +85,12 @@ export const defaultDarkTheme = {
104
85
  monospace: 'Fira Code, Consolas, monospace',
105
86
  display: 'Poppins, Inter, sans-serif',
106
87
  },
88
+ fontSizes: { ...fontSizeMap },
89
+ radius: { ...radiusMap },
107
90
  colors: {
108
91
  // Primary colors
109
92
  primary: 'blue-400',
110
93
  secondary: 'gray-400',
111
- accent: 'purple-400',
112
94
  // Semantic colors
113
95
  success: 'green-400',
114
96
  warning: 'yellow-400',
@@ -116,36 +98,13 @@ export const defaultDarkTheme = {
116
98
  info: 'blue-300',
117
99
  // Background colors
118
100
  background: 'gray-900',
119
- 'background-secondary': 'gray-800',
120
- 'background-panel': 'gray-700',
121
- 'background-modal': 'gray-800',
122
101
  // Text colors
123
102
  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
103
  // UI elements
136
104
  shadow: 'black',
137
105
  overlay: 'black',
138
106
  },
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
- },
107
+ spacing: { ...spacingMap },
149
108
  typography: {
150
109
  heading: {
151
110
  fontSize: '2xl',
@@ -160,7 +119,7 @@ export const defaultDarkTheme = {
160
119
  lineHeight: 1.1,
161
120
  },
162
121
  body: {
163
- fontSize: 'md',
122
+ fontSize: 'base',
164
123
  fontFamily: 'fonts.primary',
165
124
  fontWeight: 400,
166
125
  lineHeight: 1.5,
@@ -192,5 +151,6 @@ export const defaultDarkTheme = {
192
151
  alpha: 0.2,
193
152
  },
194
153
  },
154
+ custom: {},
195
155
  };
196
156
  //# sourceMappingURL=theme-config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"theme-config.js","sourceRoot":"","sources":["../../src/theme/theme-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"theme-config.js","sourceRoot":"","sources":["../../src/theme/theme-config.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { type BaseThemeConfig, type DefaultThemeStructure } from './theme-config';
1
+ import { type BaseThemeConfig, type ThemeOverride } from './theme-config';
2
2
  /**
3
3
  * Global theme manager for Phaser Wind
4
4
  * Handles theme registration, switching, and token resolution with nested object support
@@ -10,7 +10,7 @@ declare class ThemeManagerClass {
10
10
  /**
11
11
  * Initialize the theme manager with a default theme
12
12
  */
13
- init<T extends BaseThemeConfig>(theme: T): void;
13
+ init<T extends BaseThemeConfig>(theme: T, type?: 'light' | 'dark'): void;
14
14
  /**
15
15
  * Register a named theme
16
16
  */
@@ -20,9 +20,18 @@ declare class ThemeManagerClass {
20
20
  */
21
21
  setTheme(name: string): void;
22
22
  /**
23
- * Set theme directly with object
23
+ * Set theme directly with object by merging with current theme
24
+ * This method will merge the provided theme object with the current theme:
25
+ * - Existing properties will be replaced with new values
26
+ * - New properties will be added
27
+ * - Properties not specified in the new theme will be preserved
28
+ *
29
+ * Example:
30
+ * Current theme: { colors: { primary: 'blue', secondary: 'gray' } }
31
+ * New theme: { colors: { primary: 'red', accent: 'yellow' } }
32
+ * Result: { colors: { primary: 'red', secondary: 'gray', accent: 'yellow' } }
24
33
  */
25
- setThemeObject<T extends BaseThemeConfig>(theme: T): void;
34
+ setThemeObject(theme: ThemeOverride): void;
26
35
  /**
27
36
  * Get the current theme
28
37
  */
@@ -80,6 +89,10 @@ declare class ThemeManagerClass {
80
89
  * Reset to default theme
81
90
  */
82
91
  reset(): void;
92
+ /**
93
+ * Clear all registered themes and reset to default
94
+ */
95
+ clear(): void;
83
96
  private notifyListeners;
84
97
  /**
85
98
  * Helper method to get nested values using dot notation
@@ -90,7 +103,6 @@ declare class ThemeManagerClass {
90
103
  private getNestedValue;
91
104
  }
92
105
  export declare const ThemeManager: ThemeManagerClass;
93
- export declare const createTheme: <T extends BaseThemeConfig>(theme: T) => T;
94
- export type ThemeConfig<T extends BaseThemeConfig = DefaultThemeStructure> = T;
106
+ export declare const createTheme: <T extends ThemeOverride>(theme: T) => T;
95
107
  export {};
96
108
  //# sourceMappingURL=theme-manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"theme-manager.d.ts","sourceRoot":"","sources":["../../src/theme/theme-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC3B,MAAM,gBAAgB,CAAC;AAExB;;;GAGG;AACH,cAAM,iBAAiB;IACrB,OAAO,CAAC,YAAY,CAAsC;IAC1D,OAAO,CAAC,gBAAgB,CAA2C;IACnE,OAAO,CAAC,SAAS,CAA+C;IAEhE;;OAEG;IACH,IAAI,CAAC,CAAC,SAAS,eAAe,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAK/C;;OAEG;IACH,aAAa,CAAC,CAAC,SAAS,eAAe,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAItE;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAc5B;;OAEG;IACH,cAAc,CAAC,CAAC,SAAS,eAAe,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAKzD;;OAEG;IACH,eAAe,IAAI,eAAe;IAIlC;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI/B;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI/B;;OAEG;IACH,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAK9C;;OAEG;IACH,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAK7C;;OAEG;IACH,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAKhD;;OAEG;IACH,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIxC;;OAEG;IACH,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIpC;;;OAGG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAcpC;;OAEG;IACH,aAAa,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,GAAG,MAAM,IAAI;IAYrE;;OAEG;IACH,mBAAmB,IAAI,MAAM,EAAE;IAI/B;;OAEG;IACH,kBAAkB,CAAC,CAAC,SAAS,eAAe,EAC1C,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,GACpB,eAAe;IAIlB;;OAEG;IACH,KAAK,IAAI,IAAI;IAQb,OAAO,CAAC,eAAe;IAIvB;;;;;OAKG;IACH,OAAO,CAAC,cAAc;CAOvB;AAGD,eAAO,MAAM,YAAY,mBAA0B,CAAC;AAGpD,eAAO,MAAM,WAAW,GAAI,CAAC,SAAS,eAAe,EAAE,OAAO,CAAC,KAAG,CAAU,CAAC;AAG7E,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,eAAe,GAAG,qBAAqB,IAAI,CAAC,CAAC"}
1
+ {"version":3,"file":"theme-manager.d.ts","sourceRoot":"","sources":["../../src/theme/theme-manager.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,aAAa,EAGnB,MAAM,gBAAgB,CAAC;AAExB;;;GAGG;AACH,cAAM,iBAAiB;IACrB,OAAO,CAAC,YAAY,CAAsC;IAC1D,OAAO,CAAC,gBAAgB,CAA2C;IACnE,OAAO,CAAC,SAAS,CAA+C;IAEhE;;OAEG;IACH,IAAI,CAAC,CAAC,SAAS,eAAe,EAC5B,KAAK,EAAE,CAAC,EACR,IAAI,GAAE,OAAO,GAAG,MAAgB,GAC/B,IAAI;IASP;;OAEG;IACH,aAAa,CAAC,CAAC,SAAS,eAAe,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAItE;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAc5B;;;;;;;;;;;OAWG;IACH,cAAc,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;IAK1C;;OAEG;IACH,eAAe,IAAI,eAAe;IAIlC;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI/B;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI/B;;OAEG;IACH,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAK9C;;OAEG;IACH,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAK7C;;OAEG;IACH,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAKhD;;OAEG;IACH,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIxC;;OAEG;IACH,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIpC;;;OAGG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAcpC;;OAEG;IACH,aAAa,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,GAAG,MAAM,IAAI;IAYrE;;OAEG;IACH,mBAAmB,IAAI,MAAM,EAAE;IAI/B;;OAEG;IACH,kBAAkB,CAAC,CAAC,SAAS,eAAe,EAC1C,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,GACpB,eAAe;IAIlB;;OAEG;IACH,KAAK,IAAI,IAAI;IAQb;;OAEG;IACH,KAAK,IAAI,IAAI;IAOb,OAAO,CAAC,eAAe;IAIvB;;;;;OAKG;IACH,OAAO,CAAC,cAAc;CAOvB;AAGD,eAAO,MAAM,YAAY,mBAA0B,CAAC;AAGpD,eAAO,MAAM,WAAW,GAAI,CAAC,SAAS,aAAa,EAAE,OAAO,CAAC,KAAG,CAC3B,CAAC"}
@@ -1,4 +1,5 @@
1
- import { defaultLightTheme, } from './theme-config';
1
+ import merge from 'lodash/merge';
2
+ import { defaultDarkTheme, defaultLightTheme, } from './theme-config';
2
3
  /**
3
4
  * Global theme manager for Phaser Wind
4
5
  * Handles theme registration, switching, and token resolution with nested object support
@@ -10,8 +11,8 @@ class ThemeManagerClass {
10
11
  /**
11
12
  * Initialize the theme manager with a default theme
12
13
  */
13
- init(theme) {
14
- this.currentTheme = theme;
14
+ init(theme, type = 'light') {
15
+ this.currentTheme = merge({}, type === 'light' ? defaultLightTheme : defaultDarkTheme, theme);
15
16
  this.registerTheme('default', theme);
16
17
  }
17
18
  /**
@@ -34,10 +35,19 @@ class ThemeManagerClass {
34
35
  this.notifyListeners();
35
36
  }
36
37
  /**
37
- * Set theme directly with object
38
+ * Set theme directly with object by merging with current theme
39
+ * This method will merge the provided theme object with the current theme:
40
+ * - Existing properties will be replaced with new values
41
+ * - New properties will be added
42
+ * - Properties not specified in the new theme will be preserved
43
+ *
44
+ * Example:
45
+ * Current theme: { colors: { primary: 'blue', secondary: 'gray' } }
46
+ * New theme: { colors: { primary: 'red', accent: 'yellow' } }
47
+ * Result: { colors: { primary: 'red', secondary: 'gray', accent: 'yellow' } }
38
48
  */
39
49
  setThemeObject(theme) {
40
- this.currentTheme = theme;
50
+ this.currentTheme = merge({}, this.currentTheme, theme);
41
51
  this.notifyListeners();
42
52
  }
43
53
  /**
@@ -147,6 +157,15 @@ class ThemeManagerClass {
147
157
  this.notifyListeners();
148
158
  }
149
159
  }
160
+ /**
161
+ * Clear all registered themes and reset to default
162
+ */
163
+ clear() {
164
+ this.registeredThemes.clear();
165
+ this.currentTheme = defaultLightTheme;
166
+ this.registerTheme('default', defaultLightTheme);
167
+ this.listeners = [];
168
+ }
150
169
  notifyListeners() {
151
170
  this.listeners.forEach(listener => listener(this.currentTheme));
152
171
  }
@@ -167,5 +186,5 @@ class ThemeManagerClass {
167
186
  // Export singleton instance
168
187
  export const ThemeManager = new ThemeManagerClass();
169
188
  // Type helper for creating themes with proper typing
170
- export const createTheme = (theme) => theme;
189
+ export const createTheme = (theme) => merge({}, defaultLightTheme, theme);
171
190
  //# sourceMappingURL=theme-manager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"theme-manager.js","sourceRoot":"","sources":["../../src/theme/theme-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"theme-manager.js","sourceRoot":"","sources":["../../src/theme/theme-manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from './is-valid-color';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './is-valid-color';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Checks if a string is a valid CSS color value
3
+ * @param color - The color string to validate
4
+ * @returns True if the color string is valid, false otherwise
5
+ *
6
+ * Supports the following formats:
7
+ * - Hex colors (#RRGGBB or #RGB)
8
+ * - RGB colors (rgb(r, g, b))
9
+ * - RGBA colors (rgba(r, g, b, a))
10
+ * - OKLCH colors (oklch(l c h [/ a]))
11
+ */
12
+ export declare const isValidColor: (color: string) => boolean;
13
+ //# sourceMappingURL=is-valid-color.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"is-valid-color.d.ts","sourceRoot":"","sources":["../../src/utils/is-valid-color.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AACH,eAAO,MAAM,YAAY,GAAI,OAAO,MAAM,KAAG,OAmC5C,CAAC"}