@hanzogui/theme-builder 2.0.0-rc.41-hanzoai.5

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 (124) hide show
  1. package/LICENSE +21 -0
  2. package/dist/cjs/ThemeBuilder.cjs +248 -0
  3. package/dist/cjs/ThemeBuilder.native.js +338 -0
  4. package/dist/cjs/ThemeBuilder.native.js.map +1 -0
  5. package/dist/cjs/createStudioThemes.cjs +42 -0
  6. package/dist/cjs/createStudioThemes.native.js +45 -0
  7. package/dist/cjs/createStudioThemes.native.js.map +1 -0
  8. package/dist/cjs/createThemes.cjs +395 -0
  9. package/dist/cjs/createThemes.native.js +405 -0
  10. package/dist/cjs/createThemes.native.js.map +1 -0
  11. package/dist/cjs/defaultComponentThemes.cjs +86 -0
  12. package/dist/cjs/defaultComponentThemes.native.js +89 -0
  13. package/dist/cjs/defaultComponentThemes.native.js.map +1 -0
  14. package/dist/cjs/defaultTemplates.cjs +154 -0
  15. package/dist/cjs/defaultTemplates.native.js +162 -0
  16. package/dist/cjs/defaultTemplates.native.js.map +1 -0
  17. package/dist/cjs/defaultTemplatesStronger.cjs +152 -0
  18. package/dist/cjs/defaultTemplatesStronger.native.js +160 -0
  19. package/dist/cjs/defaultTemplatesStronger.native.js.map +1 -0
  20. package/dist/cjs/defaultTemplatesStrongest.cjs +152 -0
  21. package/dist/cjs/defaultTemplatesStrongest.native.js +160 -0
  22. package/dist/cjs/defaultTemplatesStrongest.native.js.map +1 -0
  23. package/dist/cjs/getThemeSuitePalettes.cjs +92 -0
  24. package/dist/cjs/getThemeSuitePalettes.native.js +117 -0
  25. package/dist/cjs/getThemeSuitePalettes.native.js.map +1 -0
  26. package/dist/cjs/helpers.cjs +36 -0
  27. package/dist/cjs/helpers.native.js +41 -0
  28. package/dist/cjs/helpers.native.js.map +1 -0
  29. package/dist/cjs/index.cjs +45 -0
  30. package/dist/cjs/index.native.js +48 -0
  31. package/dist/cjs/index.native.js.map +1 -0
  32. package/dist/cjs/masks.cjs +117 -0
  33. package/dist/cjs/masks.native.js +120 -0
  34. package/dist/cjs/masks.native.js.map +1 -0
  35. package/dist/cjs/types.cjs +18 -0
  36. package/dist/cjs/types.native.js +21 -0
  37. package/dist/cjs/types.native.js.map +1 -0
  38. package/dist/esm/ThemeBuilder.mjs +222 -0
  39. package/dist/esm/ThemeBuilder.mjs.map +1 -0
  40. package/dist/esm/ThemeBuilder.native.js +309 -0
  41. package/dist/esm/ThemeBuilder.native.js.map +1 -0
  42. package/dist/esm/createStudioThemes.mjs +17 -0
  43. package/dist/esm/createStudioThemes.mjs.map +1 -0
  44. package/dist/esm/createStudioThemes.native.js +17 -0
  45. package/dist/esm/createStudioThemes.native.js.map +1 -0
  46. package/dist/esm/createThemes.mjs +364 -0
  47. package/dist/esm/createThemes.mjs.map +1 -0
  48. package/dist/esm/createThemes.native.js +371 -0
  49. package/dist/esm/createThemes.native.js.map +1 -0
  50. package/dist/esm/defaultComponentThemes.mjs +61 -0
  51. package/dist/esm/defaultComponentThemes.mjs.map +1 -0
  52. package/dist/esm/defaultComponentThemes.native.js +61 -0
  53. package/dist/esm/defaultComponentThemes.native.js.map +1 -0
  54. package/dist/esm/defaultTemplates.mjs +129 -0
  55. package/dist/esm/defaultTemplates.mjs.map +1 -0
  56. package/dist/esm/defaultTemplates.native.js +134 -0
  57. package/dist/esm/defaultTemplates.native.js.map +1 -0
  58. package/dist/esm/defaultTemplatesStronger.mjs +127 -0
  59. package/dist/esm/defaultTemplatesStronger.mjs.map +1 -0
  60. package/dist/esm/defaultTemplatesStronger.native.js +132 -0
  61. package/dist/esm/defaultTemplatesStronger.native.js.map +1 -0
  62. package/dist/esm/defaultTemplatesStrongest.mjs +127 -0
  63. package/dist/esm/defaultTemplatesStrongest.mjs.map +1 -0
  64. package/dist/esm/defaultTemplatesStrongest.native.js +132 -0
  65. package/dist/esm/defaultTemplatesStrongest.native.js.map +1 -0
  66. package/dist/esm/getThemeSuitePalettes.mjs +66 -0
  67. package/dist/esm/getThemeSuitePalettes.mjs.map +1 -0
  68. package/dist/esm/getThemeSuitePalettes.native.js +88 -0
  69. package/dist/esm/getThemeSuitePalettes.native.js.map +1 -0
  70. package/dist/esm/helpers.mjs +9 -0
  71. package/dist/esm/helpers.mjs.map +1 -0
  72. package/dist/esm/helpers.native.js +11 -0
  73. package/dist/esm/helpers.native.js.map +1 -0
  74. package/dist/esm/index.js +10 -0
  75. package/dist/esm/index.js.map +1 -0
  76. package/dist/esm/index.mjs +10 -0
  77. package/dist/esm/index.mjs.map +1 -0
  78. package/dist/esm/index.native.js +10 -0
  79. package/dist/esm/index.native.js.map +1 -0
  80. package/dist/esm/masks.mjs +92 -0
  81. package/dist/esm/masks.mjs.map +1 -0
  82. package/dist/esm/masks.native.js +92 -0
  83. package/dist/esm/masks.native.js.map +1 -0
  84. package/dist/esm/types.mjs +2 -0
  85. package/dist/esm/types.mjs.map +1 -0
  86. package/dist/esm/types.native.js +2 -0
  87. package/dist/esm/types.native.js.map +1 -0
  88. package/package.json +48 -0
  89. package/src/ThemeBuilder.ts +514 -0
  90. package/src/createStudioThemes.ts +28 -0
  91. package/src/createThemes.ts +794 -0
  92. package/src/defaultComponentThemes.ts +26 -0
  93. package/src/defaultTemplates.ts +157 -0
  94. package/src/defaultTemplatesStronger.ts +152 -0
  95. package/src/defaultTemplatesStrongest.ts +152 -0
  96. package/src/getThemeSuitePalettes.ts +101 -0
  97. package/src/helpers.ts +44 -0
  98. package/src/index.ts +22 -0
  99. package/src/masks.tsx +83 -0
  100. package/src/types.ts +97 -0
  101. package/types/ThemeBuilder.d.ts +80 -0
  102. package/types/ThemeBuilder.d.ts.map +1 -0
  103. package/types/createStudioThemes.d.ts +8 -0
  104. package/types/createStudioThemes.d.ts.map +1 -0
  105. package/types/createThemes.d.ts +141 -0
  106. package/types/createThemes.d.ts.map +1 -0
  107. package/types/defaultComponentThemes.d.ts +63 -0
  108. package/types/defaultComponentThemes.d.ts.map +1 -0
  109. package/types/defaultTemplates.d.ts +42 -0
  110. package/types/defaultTemplates.d.ts.map +1 -0
  111. package/types/defaultTemplatesStronger.d.ts +42 -0
  112. package/types/defaultTemplatesStronger.d.ts.map +1 -0
  113. package/types/defaultTemplatesStrongest.d.ts +42 -0
  114. package/types/defaultTemplatesStrongest.d.ts.map +1 -0
  115. package/types/getThemeSuitePalettes.d.ts +7 -0
  116. package/types/getThemeSuitePalettes.d.ts.map +1 -0
  117. package/types/helpers.d.ts +24 -0
  118. package/types/helpers.d.ts.map +1 -0
  119. package/types/index.d.ts +11 -0
  120. package/types/index.d.ts.map +1 -0
  121. package/types/masks.d.ts +18 -0
  122. package/types/masks.d.ts.map +1 -0
  123. package/types/types.d.ts +76 -0
  124. package/types/types.d.ts.map +1 -0
@@ -0,0 +1,371 @@
1
+ import { parseToHsla } from "color2k";
2
+ import { defaultComponentThemes } from "./defaultComponentThemes.native.js";
3
+ import { defaultTemplates } from "./defaultTemplates.native.js";
4
+ import { getThemeSuitePalettes, PALETTE_BACKGROUND_OFFSET } from "./getThemeSuitePalettes.native.js";
5
+ import { createThemeBuilder } from "./ThemeBuilder.native.js";
6
+ function createThemes(props) {
7
+ var {
8
+ accent,
9
+ childrenThemes,
10
+ grandChildrenThemes,
11
+ templates = defaultTemplates,
12
+ componentThemes,
13
+ getTheme
14
+ } = props;
15
+ var builder = createSimpleThemeBuilder({
16
+ extra: props.base.extra,
17
+ accentExtra: accent === null || accent === void 0 ? void 0 : accent.extra,
18
+ componentThemes,
19
+ palettes: createPalettes(getThemesPalettes(props)),
20
+ templates,
21
+ accentTheme: !!accent,
22
+ childrenThemes: normalizeSubThemes(childrenThemes),
23
+ grandChildrenThemes: grandChildrenThemes ? normalizeSubThemes(grandChildrenThemes) : void 0,
24
+ getTheme
25
+ });
26
+ lastBuilder = builder.themeBuilder;
27
+ return builder.themes;
28
+ }
29
+ var lastBuilder = null;
30
+ var getLastBuilder = function () {
31
+ return lastBuilder;
32
+ };
33
+ function createV4Themes(props) {
34
+ var {
35
+ accent,
36
+ childrenThemes,
37
+ grandChildrenThemes,
38
+ templates = defaultTemplates,
39
+ componentThemes,
40
+ getTheme
41
+ } = props;
42
+ var builder = createV4ThemeBuilder({
43
+ extra: props.base.extra,
44
+ accentExtra: accent === null || accent === void 0 ? void 0 : accent.extra,
45
+ componentThemes,
46
+ palettes: createPalettes(getThemesPalettes(props)),
47
+ templates,
48
+ accentTheme: !!accent,
49
+ childrenThemes: normalizeSubThemes(childrenThemes),
50
+ grandChildrenThemes: grandChildrenThemes ? normalizeSubThemes(grandChildrenThemes) : void 0,
51
+ getTheme
52
+ });
53
+ lastBuilder = builder.themeBuilder;
54
+ return builder.themes;
55
+ }
56
+ function normalizeSubThemes(defs) {
57
+ return Object.fromEntries(Object.entries(defs || {}).map(function (param) {
58
+ var [name, value] = param;
59
+ var hasPalette = value.palette !== void 0;
60
+ return [name, {
61
+ // Only add palette if the definition has one, otherwise theme is template-only
62
+ ...(hasPalette ? {
63
+ palette: name
64
+ } : {}),
65
+ template: value.template || "base"
66
+ }];
67
+ }));
68
+ }
69
+ var defaultPalettes = createPalettes(getThemesPalettes({
70
+ base: {
71
+ palette: ["#fff", "#000"]
72
+ },
73
+ accent: {
74
+ palette: ["#ff0000", "#ff9999"]
75
+ }
76
+ }));
77
+ function createSimpleThemeBuilder(props) {
78
+ var {
79
+ getTheme,
80
+ extra,
81
+ accentExtra,
82
+ childrenThemes = null,
83
+ grandChildrenThemes = null,
84
+ templates = defaultTemplates,
85
+ palettes = defaultPalettes,
86
+ accentTheme,
87
+ componentThemes = templates === defaultTemplates ? defaultComponentThemes : void 0
88
+ } = props;
89
+ var themeBuilder = createThemeBuilder().addPalettes(palettes).addTemplates(templates).addThemes({
90
+ light: {
91
+ template: "base",
92
+ palette: "light",
93
+ nonInheritedValues: {
94
+ ...(extra === null || extra === void 0 ? void 0 : extra.light),
95
+ ...(accentTheme && palettes.light_accent && {
96
+ accent1: palettes.light_accent[PALETTE_BACKGROUND_OFFSET + 0],
97
+ accent2: palettes.light_accent[PALETTE_BACKGROUND_OFFSET + 1],
98
+ accent3: palettes.light_accent[PALETTE_BACKGROUND_OFFSET + 2],
99
+ accent4: palettes.light_accent[PALETTE_BACKGROUND_OFFSET + 3],
100
+ accent5: palettes.light_accent[PALETTE_BACKGROUND_OFFSET + 4],
101
+ accent6: palettes.light_accent[PALETTE_BACKGROUND_OFFSET + 5],
102
+ accent7: palettes.light_accent[PALETTE_BACKGROUND_OFFSET + 6],
103
+ accent8: palettes.light_accent[PALETTE_BACKGROUND_OFFSET + 7],
104
+ accent9: palettes.light_accent[PALETTE_BACKGROUND_OFFSET + 8],
105
+ accent10: palettes.light_accent[PALETTE_BACKGROUND_OFFSET + 9],
106
+ accent11: palettes.light_accent[PALETTE_BACKGROUND_OFFSET + 10],
107
+ accent12: palettes.light_accent[PALETTE_BACKGROUND_OFFSET + 11]
108
+ })
109
+ }
110
+ },
111
+ dark: {
112
+ template: "base",
113
+ palette: "dark",
114
+ nonInheritedValues: {
115
+ ...(extra === null || extra === void 0 ? void 0 : extra.dark),
116
+ ...(accentTheme && palettes.dark_accent && {
117
+ accent1: palettes.dark_accent[PALETTE_BACKGROUND_OFFSET + 0],
118
+ accent2: palettes.dark_accent[PALETTE_BACKGROUND_OFFSET + 1],
119
+ accent3: palettes.dark_accent[PALETTE_BACKGROUND_OFFSET + 2],
120
+ accent4: palettes.dark_accent[PALETTE_BACKGROUND_OFFSET + 3],
121
+ accent5: palettes.dark_accent[PALETTE_BACKGROUND_OFFSET + 4],
122
+ accent6: palettes.dark_accent[PALETTE_BACKGROUND_OFFSET + 5],
123
+ accent7: palettes.dark_accent[PALETTE_BACKGROUND_OFFSET + 6],
124
+ accent8: palettes.dark_accent[PALETTE_BACKGROUND_OFFSET + 7],
125
+ accent9: palettes.dark_accent[PALETTE_BACKGROUND_OFFSET + 8],
126
+ accent10: palettes.dark_accent[PALETTE_BACKGROUND_OFFSET + 9],
127
+ accent11: palettes.dark_accent[PALETTE_BACKGROUND_OFFSET + 10],
128
+ accent12: palettes.dark_accent[PALETTE_BACKGROUND_OFFSET + 11]
129
+ })
130
+ }
131
+ }
132
+ });
133
+ if (palettes.light_accent) {
134
+ themeBuilder = themeBuilder.addChildThemes({
135
+ accent: [{
136
+ parent: "light",
137
+ template: "base",
138
+ palette: "light_accent",
139
+ nonInheritedValues: accentExtra === null || accentExtra === void 0 ? void 0 : accentExtra.light
140
+ }, {
141
+ parent: "dark",
142
+ template: "base",
143
+ palette: "dark_accent",
144
+ nonInheritedValues: accentExtra === null || accentExtra === void 0 ? void 0 : accentExtra.dark
145
+ }]
146
+ });
147
+ }
148
+ if (childrenThemes) {
149
+ themeBuilder = themeBuilder.addChildThemes(childrenThemes, {
150
+ avoidNestingWithin: ["accent"]
151
+ });
152
+ }
153
+ if (grandChildrenThemes) {
154
+ themeBuilder = themeBuilder.addChildThemes(grandChildrenThemes, {
155
+ avoidNestingWithin: ["accent"]
156
+ });
157
+ }
158
+ if (componentThemes) {
159
+ themeBuilder = themeBuilder.addComponentThemes(getComponentThemes(componentThemes), {
160
+ avoidNestingWithin: Object.keys(grandChildrenThemes || {})
161
+ });
162
+ }
163
+ if (getTheme) {
164
+ themeBuilder = themeBuilder.getTheme(getTheme);
165
+ }
166
+ return {
167
+ themeBuilder,
168
+ themes: themeBuilder.build()
169
+ };
170
+ }
171
+ function getSchemePalette(colors) {
172
+ return {
173
+ light: colors,
174
+ dark: [...colors].reverse()
175
+ };
176
+ }
177
+ function getAnchors(palette) {
178
+ var maxIndex = 11;
179
+ var numItems = palette.light.length;
180
+ var anchors = palette.light.map(function (lcolor, index) {
181
+ var dcolor = palette.dark[index];
182
+ var [lhue, lsat, llum, lalpha] = parseToHsla(lcolor);
183
+ var [dhue, dsat, dlum, dalpha] = parseToHsla(dcolor);
184
+ return {
185
+ index: spreadIndex(maxIndex, numItems, index),
186
+ hue: {
187
+ light: lhue,
188
+ dark: dhue
189
+ },
190
+ sat: {
191
+ light: lsat,
192
+ dark: dsat
193
+ },
194
+ lum: {
195
+ light: llum,
196
+ dark: dlum
197
+ },
198
+ alpha: {
199
+ light: lalpha,
200
+ dark: dalpha
201
+ }
202
+ };
203
+ });
204
+ return anchors;
205
+ }
206
+ function spreadIndex(maxIndex, numItems, index) {
207
+ return Math.round(index / (numItems - 1) * maxIndex);
208
+ }
209
+ function coerceSimplePaletteToSchemePalette(def) {
210
+ return Array.isArray(def) ? getSchemePalette(def) : def;
211
+ }
212
+ function getThemesPalettes(props) {
213
+ var base = coerceSimplePaletteToSchemePalette(props.base.palette);
214
+ var accent = props.accent ? coerceSimplePaletteToSchemePalette(props.accent.palette) : null;
215
+ var baseAnchors = getAnchors(base);
216
+ function getSubThemesPalettes(defs) {
217
+ var isGrandChildren = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false;
218
+ return Object.fromEntries(Object.entries(defs).map(function (param) {
219
+ var [key, value] = param;
220
+ if (isGrandChildren && key === "accent" && !value.palette) {
221
+ return null;
222
+ }
223
+ return [key, {
224
+ name: key,
225
+ anchors: value.palette ? getAnchors(coerceSimplePaletteToSchemePalette(value.palette)) : baseAnchors
226
+ }];
227
+ }).filter(Boolean));
228
+ }
229
+ return {
230
+ base: {
231
+ name: "base",
232
+ anchors: baseAnchors
233
+ },
234
+ ...(accent && {
235
+ accent: {
236
+ name: "accent",
237
+ anchors: getAnchors(accent)
238
+ }
239
+ }),
240
+ ...(props.childrenThemes && getSubThemesPalettes(props.childrenThemes, false)),
241
+ ...(props.grandChildrenThemes && getSubThemesPalettes(props.grandChildrenThemes, true))
242
+ };
243
+ }
244
+ var getComponentThemes = function (components) {
245
+ return Object.fromEntries(Object.entries(components).map(function (param) {
246
+ var [componentName, {
247
+ template
248
+ }] = param;
249
+ return [componentName, {
250
+ parent: "",
251
+ template: template || "base"
252
+ }];
253
+ }));
254
+ };
255
+ function createPalettes(palettes) {
256
+ var accentPalettes = palettes.accent ? getThemeSuitePalettes(palettes.accent) : null;
257
+ var basePalettes = getThemeSuitePalettes(palettes.base);
258
+ var next = Object.fromEntries(Object.entries(palettes).flatMap(function (param) {
259
+ var [name, palette] = param;
260
+ var _$palettes = getThemeSuitePalettes(palette);
261
+ var isAccent = name.startsWith("accent");
262
+ var oppositePalettes = isAccent ? basePalettes : accentPalettes || basePalettes;
263
+ if (!oppositePalettes) {
264
+ return [];
265
+ }
266
+ var oppositeLight = oppositePalettes.light;
267
+ var oppositeDark = oppositePalettes.dark;
268
+ var bgOffset = 7;
269
+ var out = [[name === "base" ? "light" : `light_${name}`, [oppositeLight[bgOffset], ..._$palettes.light, oppositeLight[oppositeLight.length - bgOffset - 1]]], [name === "base" ? "dark" : `dark_${name}`, [oppositeDark[oppositeDark.length - bgOffset - 1], ..._$palettes.dark, oppositeDark[bgOffset]]]];
270
+ return out;
271
+ }));
272
+ return next;
273
+ }
274
+ function createV4ThemeBuilder(props) {
275
+ var {
276
+ getTheme,
277
+ extra,
278
+ accentExtra,
279
+ childrenThemes = null,
280
+ grandChildrenThemes = null,
281
+ templates = defaultTemplates,
282
+ palettes = defaultPalettes,
283
+ accentTheme,
284
+ componentThemes = templates === defaultTemplates ? defaultComponentThemes : void 0
285
+ } = props;
286
+ var themeBuilder = createThemeBuilder().addPalettes(palettes).addTemplates(templates).addThemes({
287
+ light: {
288
+ template: "base",
289
+ palette: "light",
290
+ nonInheritedValues: {
291
+ ...(extra === null || extra === void 0 ? void 0 : extra.light),
292
+ ...(accentTheme && palettes.light_accent && {
293
+ accent1: palettes.light_accent[PALETTE_BACKGROUND_OFFSET + 0],
294
+ accent2: palettes.light_accent[PALETTE_BACKGROUND_OFFSET + 1],
295
+ accent3: palettes.light_accent[PALETTE_BACKGROUND_OFFSET + 2],
296
+ accent4: palettes.light_accent[PALETTE_BACKGROUND_OFFSET + 3],
297
+ accent5: palettes.light_accent[PALETTE_BACKGROUND_OFFSET + 4],
298
+ accent6: palettes.light_accent[PALETTE_BACKGROUND_OFFSET + 5],
299
+ accent7: palettes.light_accent[PALETTE_BACKGROUND_OFFSET + 6],
300
+ accent8: palettes.light_accent[PALETTE_BACKGROUND_OFFSET + 7],
301
+ accent9: palettes.light_accent[PALETTE_BACKGROUND_OFFSET + 8],
302
+ accent10: palettes.light_accent[PALETTE_BACKGROUND_OFFSET + 9],
303
+ accent11: palettes.light_accent[PALETTE_BACKGROUND_OFFSET + 10],
304
+ accent12: palettes.light_accent[PALETTE_BACKGROUND_OFFSET + 11]
305
+ })
306
+ }
307
+ },
308
+ dark: {
309
+ template: "base",
310
+ palette: "dark",
311
+ nonInheritedValues: {
312
+ ...(extra === null || extra === void 0 ? void 0 : extra.dark),
313
+ ...(accentTheme && palettes.dark_accent && {
314
+ accent1: palettes.dark_accent[PALETTE_BACKGROUND_OFFSET + 0],
315
+ accent2: palettes.dark_accent[PALETTE_BACKGROUND_OFFSET + 1],
316
+ accent3: palettes.dark_accent[PALETTE_BACKGROUND_OFFSET + 2],
317
+ accent4: palettes.dark_accent[PALETTE_BACKGROUND_OFFSET + 3],
318
+ accent5: palettes.dark_accent[PALETTE_BACKGROUND_OFFSET + 4],
319
+ accent6: palettes.dark_accent[PALETTE_BACKGROUND_OFFSET + 5],
320
+ accent7: palettes.dark_accent[PALETTE_BACKGROUND_OFFSET + 6],
321
+ accent8: palettes.dark_accent[PALETTE_BACKGROUND_OFFSET + 7],
322
+ accent9: palettes.dark_accent[PALETTE_BACKGROUND_OFFSET + 8],
323
+ accent10: palettes.dark_accent[PALETTE_BACKGROUND_OFFSET + 9],
324
+ accent11: palettes.dark_accent[PALETTE_BACKGROUND_OFFSET + 10],
325
+ accent12: palettes.dark_accent[PALETTE_BACKGROUND_OFFSET + 11]
326
+ })
327
+ }
328
+ }
329
+ });
330
+ if (childrenThemes) {
331
+ themeBuilder = themeBuilder.addChildThemes(childrenThemes, {
332
+ avoidNestingWithin: ["accent"]
333
+ });
334
+ }
335
+ if (grandChildrenThemes) {
336
+ themeBuilder = themeBuilder.addChildThemes(grandChildrenThemes, {
337
+ avoidNestingWithin: ["accent"]
338
+ });
339
+ }
340
+ if (palettes.light_accent) {
341
+ themeBuilder = themeBuilder.addChildThemes({
342
+ accent: [{
343
+ parent: "light",
344
+ template: "base",
345
+ palette: "light_accent",
346
+ nonInheritedValues: accentExtra === null || accentExtra === void 0 ? void 0 : accentExtra.light
347
+ }, {
348
+ parent: "dark",
349
+ template: "base",
350
+ palette: "dark_accent",
351
+ nonInheritedValues: accentExtra === null || accentExtra === void 0 ? void 0 : accentExtra.dark
352
+ }]
353
+ }, {
354
+ avoidNestingWithin: Object.keys(childrenThemes || {})
355
+ });
356
+ }
357
+ if (componentThemes) {
358
+ themeBuilder = themeBuilder.addComponentThemes(getComponentThemes(componentThemes), {
359
+ avoidNestingWithin: Object.keys(grandChildrenThemes || {})
360
+ });
361
+ }
362
+ if (getTheme) {
363
+ themeBuilder = themeBuilder.getTheme(getTheme);
364
+ }
365
+ return {
366
+ themeBuilder,
367
+ themes: themeBuilder.build()
368
+ };
369
+ }
370
+ export { createPalettes, createSimpleThemeBuilder, createThemes, createV4ThemeBuilder, createV4Themes, getComponentThemes, getLastBuilder };
371
+ //# sourceMappingURL=createThemes.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["parseToHsla","defaultComponentThemes","defaultTemplates","getThemeSuitePalettes","PALETTE_BACKGROUND_OFFSET","createThemeBuilder","createThemes","props","accent","childrenThemes","grandChildrenThemes","templates","componentThemes","getTheme","builder","createSimpleThemeBuilder","extra","base","accentExtra","palettes","createPalettes","getThemesPalettes","accentTheme","normalizeSubThemes","lastBuilder","themeBuilder","themes","getLastBuilder","createV4Themes","createV4ThemeBuilder","defs","Object","fromEntries","entries","map","param","name","value","hasPalette","palette","template","defaultPalettes","addPalettes","addTemplates","addThemes","light","nonInheritedValues","light_accent","accent1","accent2","accent3","accent4","accent5","accent6","accent7","accent8","accent9","accent10","accent11","accent12","dark","dark_accent","addChildThemes","parent","avoidNestingWithin","addComponentThemes","getComponentThemes","keys","build","getSchemePalette","colors","reverse","getAnchors","maxIndex","numItems","length","anchors","lcolor","index","dcolor","lhue","lsat","llum","lalpha","dhue","dsat","dlum","dalpha","spreadIndex","hue","sat","lum","alpha","Math","round","coerceSimplePaletteToSchemePalette","def","Array","isArray","baseAnchors","getSubThemesPalettes","isGrandChildren","arguments","key","filter","Boolean","components","componentName","accentPalettes","basePalettes","next","flatMap","_$palettes","isAccent","startsWith","oppositePalettes","oppositeLight","oppositeDark","bgOffset","out"],"sources":["../../src/createThemes.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,WAAA,QAAmB;AAE5B,SAASC,sBAAA,QAA8B;AACvC,SAASC,gBAAA,QAAwB;AACjC,SAASC,qBAAA,EAAuBC,yBAAA,QAAiC;AACjE,SAASC,kBAAA,QAA6C;AAsI/C,SAASC,aASdC,KAAA,EASA;EACA;IAAMC,MAAA;IAAAC,cAAA;IAAAC,mBAAA;IAAAC,SAAA,GAAAT,gBAAA;IAAAU,eAAA;IAAAC;EAAA,IAAAN,KAAA;EAAA,IACJO,OAAA,GAAAC,wBAAA;IACAC,KAAA,EAAAT,KAAA,CAAAU,IAAA,CAAAD,KAAA;IACAE,WAAA,EAAAV,MAAA,aAAAA,MAAA,uBAAAA,MAAA,CAAAQ,KAAA;IACAJ,eAAY;IACZO,QAAA,EAAAC,cAAA,CAAAC,iBAAA,CAAAd,KAAA;IACAI,SAAA;IACFW,WAAI,IAAAd,MAAA;IAEJC,cAAgB,EAAAc,kBAAA,CAAAd,cAWd;IACAC,mBAAkB,EAAAA,mBAAA,GAAAa,kBAAA,CAAAb,mBAAA;IAClBG;EAAqB,EACrB;EAAAW,WACA,GAAUV,OAAA,CAAAW,YAAe;EAA+B,OACxDX,OAAA,CAAAY,MAAA;AAAA;AACe,IACfF,WAAA,OAAgB;AAAiC,IACjDG,cAAA,YAAAA,CAAA,EAAsB;EAElB,OAGJH,WAAA;AAAA;AAGF,SAAAI,cAAcA,CAAQrB,KAAA;EAEtB;IAAAC,MAAO;IAAAC,cAAQ;IAAAC,mBAAA;IAAAC,SAAA,GAAAT,gBAAA;IAAAU,eAAA;IAAAC;EAAA,IAAAN,KAAA;EACjB,IAAAO,OAAA,GAAAe,oBAAA;IAEIb,KAAA,EAAAT,KAAA,CAAAU,IAAmC,CAAAD,KAAA;IAEhCE,WAAM,EAAAV,MAAiB,SAAM,IAAAA,MAAA,uBAAAA,MAAA,CAAAQ,KAAA;IAM7BJ,eAAS;IAmBdO,QAAM,EAAAC,cAAA,CAAAC,iBAAA,CAAAd,KAAA;IACJI,SAAA;IACAW,WAAA,IAAAd,MAAA;IACAC,cAAA,EAAAc,kBAAA,CAAAd,cAAA;IACAC,mBAAY,EAAAA,mBAAA,GAAAa,kBAAA,CAAAb,mBAAA;IACZG;EAAA,EACA;EACFW,WAAI,GAAAV,OAAA,CAAAW,YAAA;EAEJ,OAAMX,OAAA,CAAAY,MAAU;AAWd;AACkB,SAClBH,kBAAqBA,CAAAO,IAAA;EAAA,OACrBC,MAAA,CAAAC,WAAA,CAAAD,MAAA,CAAAE,OAAA,CAAAH,IAAA,QAAAI,GAAA,WAAAC,KAAA;IACA,KAAAC,IAAA,EAAUC,KAAA,IAAAF,KAAe;IACzB,IAAAG,UAAA,GAAAD,KAAA,CAAAE,OAAA;IACA,QACAH,IAAA,EACA;MAKA;MACD,IAAAE,UAAA;QAEDC,OAAc,EAAAH;MAEd,CAAO;MACTI,QAAA,EAAAH,KAAA,CAAAG,QAAA;IAEA,EACE;EAAc,EACZ;AACE;AAEA,IAAAC,eAAO,GAAArB,cAAA,CAAAC,iBAAA;EAAAJ,IAAA,EACL;IAAAsB,OACA,iBAEE;EAC4B;EAC9B/B,MACF;IACF+B,OAAC,GACH,WACF;EAGE;AAAkB;AACV,SACJxB,wBAAwBA,CAAAR,KAAA;EAAA,IAC1B;IAAAM,QAAA;IAAAG,KAAA;IAAAE,WAAA;IAAAT,cAAA;IAAAC,mBAAA;IAAAC,SAAA,GAAAT,gBAAA;IAAAiB,QAAA,GAAAsB,eAAA;IAAAnB,WAAA;IAAAV,eAAA,GAAAD,SAAA,KAAAT,gBAAA,GAAAD,sBAAA;EAAA,IAAAM,KAAA;EAAA,IACAkB,YAAQ,GAAApB,kBAAA,GAAAqC,WAAA,CAAAvB,QAAA,EAAAwB,YAAA,CAAAhC,SAAA,EAAAiC,SAAA;IAAAC,KACN;MACFL,QAAA;MACDD,OAAA;MACHO,kBAAA;QAOO,IAAS9B,KAAA,aAAAA,KAwCd,UAcA,aAAAA,KAAA,CAAA6B,KAAA;QACM,IAAAvB,WAAA,IAAAH,QAAA,CAAA4B,YAAA;UACJC,OAAA,EAAA7B,QAAA,CAAA4B,YAAA,CAAA3C,yBAAA;UACA6C,OAAA,EAAA9B,QAAA,CAAA4B,YAAA,CAAA3C,yBAAA;UACA8C,OAAA,EAAA/B,QAAA,CAAA4B,YAAA,CAAA3C,yBAAA;UACA+C,OAAA,EAAAhC,QAAiB,CAAA4B,YAAA,CAAA3C,yBAAA;UACjBgD,OAAA,EAAAjC,QAAsB,CAAA4B,YAAA,CAAA3C,yBAAA;UACtBiD,OAAY,EAAAlC,QAAA,CAAA4B,YAAA,CAAA3C,yBAAA;UACZkD,OAAW,EAAAnC,QAAA,CAAA4B,YAAA,CAAA3C,yBAAA;UACXmD,OAAA,EAAApC,QAAA,CAAA4B,YAAA,CAAA3C,yBAAA;UACAoD,OAAA,EAAArC,QAAkB,CAAA4B,YAAe,CAAA3C,yBAC5B;UAEHqD,QAAA,EAAAtC,QAAA,CAAA4B,YAAA,CAAA3C,yBAAA;UAGAsD,QAAA,EAAAvC,QAAe,CAAA4B,YAAmB,CACnC3C,yBACA;UAECuD,QAAO,EAAAxC,QAAA,CAAA4B,YAAA,CAAA3C,yBAAA;QACL;MACA;IAAS;IACWwD,IAClB;MAAUpB,QACN;MACuBD,OACvB,QAAS;MAAmDO,kBACnD;QAAmD,IAC5D9B,KAAA,KAAS,QAASA,KAAA,UAAa,aAAAA,KAAA,CAAA4C,IAAA;QAA6B,IAC5DtC,WAAS,IAAAH,QAAS,CAAA0C,WAAa;UAC/Bb,OAAA,EAAS7B,QAAA,CAAS0C,WAAA,CAAAzD,yBAAa,IAA4B,CAAC;UAC5D6C,OAAA,EAAS9B,QAAA,CAAS0C,WAAA,CAAAzD,yBAAa,IAA4B,CAAC;UAC5D8C,OAAA,EAAS/B,QAAA,CAAS0C,WAAA,CAAAzD,yBAAa,IAA4B,CAAC;UAC5D+C,OAAA,EAAShC,QAAA,CAAS0C,WAAA,CAAAzD,yBAAa,IAA4B,CAAC;UAC5DgD,OAAA,EAASjC,QAAA,CAAS0C,WAAA,CAAAzD,yBAAa,IAA4B,CAAC;UAC5DiD,OAAA,EAAAlC,QAAU,CAAA0C,WAAS,CAAAzD,yBAAa,KAA4B;UAC5DkD,OAAA,EAAAnC,QAAU,CAAA0C,WAAS,CAAAzD,yBAAa,KAA4B;UAC5DmD,OAAA,EAAApC,QAAU,CAAA0C,WAAS,CAAAzD,yBAAa,KAA4B;UAC9DoD,OAAA,EAAArC,QAAA,CAAA0C,WAAA,CAAAzD,yBAAA;UACJqD,QAAA,EAAAtC,QAAA,CAAA0C,WAAA,CAAAzD,yBAAA;UACFsD,QAAA,EAAAvC,QAAA,CAAA0C,WAAA,CAAAzD,yBAAA;UACMuD,QAAA,EAAAxC,QAAA,CAAA0C,WAAA,CAAAzD,yBAAA;QACJ;MACA;IAAS;EACW;EACR,IAAAe,QACN,CAAA4B,YACF;IAAwBtB,YACtB,GAASA,YAAS,CAAAqC,cAAY;MAA6BtD,MAC3D,GAA2D;QAE3DuD,MAAA,SAAS;QACTvB,QAAA,EAAS;QACTD,OAAA,EAAS,cAAS;QAClBO,kBAAkB,EAAA5B,WAAY,aAAAA,WAAA,KAA6B,kBAAAA,WAAA,CAAA2B;MAAA,GACA;QAE3DkB,MAAA,QAAU;QACVvB,QAAA,EAAU;QACVD,OAAA,eAAmB;QACrBO,kBAAA,EAAA5B,WAAA,aAAAA,WAAA,uBAAAA,WAAA,CAAA0C;MACJ;IAEH;EAGH;EACE,IAAAnD,cAAe;IAA4BgB,YACjC,GAAAA,YAAA,CAAAqC,cAAA,CAAArD,cAAA;MAAAuD,kBACN,WACE;IACU;EACD;EACwB,IAAAtD,mBACnC;IAAAe,YACA,GAAAA,YAAA,CAAAqC,cAAA,CAAApD,mBAAA;MAAAsD,kBACU,WACR;IACS;EACwB;EACnC,IACFpD,eAAA;IACFa,YAAC,GAAAA,YAAA,CAAAwC,kBAAA,CAAAC,kBAAA,CAAAtD,eAAA;MACHoD,kBAAA,EAAAjC,MAAA,CAAAoC,IAAA,CAAAzD,mBAAA;IAGA,EAAI;EACF;EAA2D,IACzDG,QAAA;IACFY,YAAC,GAAAA,YAAA,CAAAZ,QAAA,CAAAA,QAAA;EACH;EAEA,OAAI;IACFY,YAAA;IAAgEC,MAC9D,EAAAD,YAAA,CAAA2C,KAAqB;EAAQ;AAC9B;AAGH,SAAIC,gBAAiBA,CAAAC,MAAA;EACnB;IAAoFzB,KAClF,EAAAyB,MAAA;IACFV,IAAC,GACH,GAAAU,MAAA,CAEA,CAAIC,OAAA;EACF;AAAoD;AAGtD,SAAOC,WAAAjC,OAAA;EAAA,IACLkC,QAAA;EAAA,IACAC,QAAQ,GAAAnC,OAAA,CAAaM,KAAA,CAAM8B,MAAA;EAC7B,IAAAC,OAAA,GAAArC,OAAA,CAAAM,KAAA,CAAAX,GAAA,WAAA2C,MAAA,EAAAC,KAAA;IACF,IAAAC,MAAA,GAAAxC,OAAA,CAAAqB,IAAA,CAAAkB,KAAA;IAEA,KAASE,IAAA,EAAAC,IAAA,EAAAC,IAAA,EAAiBC,MAAA,CAAsC,GAAAnF,WAAA,CAAA6E,MAAA;IAC9D,KAAOO,IAAA,EAAAC,IAAA,EAAAC,IAAA,EAAAC,MAAA,IAAAvF,WAAA,CAAA+E,MAAA;IACL,OAAO;MACPD,KAAO,EAAAU,WAAW,CAAAf,QAAQ,EAAAC,QAAA,EAAAI,KAAA;MAC5BW,GAAA;QACF5C,KAAA,EAAAmC,IAAA;QAEApB,IAAS,EAAAwB;MACP;MACAM,GAAM;QAEA7C,KAAA,EAAAoC,IAAU;QACdrB,IAAM,EAAAyB;MACN;MACAM,GAAA,EAAO;QAEP9C,KAAO,EAAAqC,IAAA;QACLtB,IAAA,EAAO0B;MACP;MACAM,KAAK,EAAE;QACP/C,KAAO,EAAAsC,MAAO;QACdvB,IAAA,EAAO2B;MACT;IACD;EAED;EACF,OAAAX,OAAA;AAEA;AACE,SAAOY,WAAYA,CAAAf,QAAS,EAAAC,QAAA,EAAWI,KAAM;EAC/C,OAAAe,IAAA,CAAAC,KAAA,CAAAhB,KAAA,IAAAJ,QAAA,QAAAD,QAAA;AAEA;AACE,SAAOsB,kCAAqBA,CAAAC,GAAiB;EAC/C,OAAAC,KAAA,CAAAC,OAAA,CAAAF,GAAA,IAAA3B,gBAAA,CAAA2B,GAAA,IAAAA,GAAA;AAEA;AACE,SAAM3E,iBAAOA,CAAAd,KAAA;EACb,IAAAU,IAAM,GAAA8E,kCACF,CAAAxF,KAAA,CAAAU,IAAA,CAAAsB,OAAA,CAAmC;EAGvC,IAAA/B,MAAM,GAAAD,KAAA,CAAAC,MAAc,GAAAuF,kCAAe,CAAAxF,KAAA,CAAAC,MAAA,CAAA+B,OAAA;EAEnC,IAAA4D,WAAS,GAAA3B,UAAA,CAAAvD,IAAqB;EAC5B,SAAOmF,oBAAOA,CAAAtE,IAAA;IAAA,IACZuE,eAAe,GAAIC,SACV,CAAA3B,MAAK,GAAK,KAAM2B,SAAA,iBAAAA,SAAA;IAGrB,OAAAvE,MAAI,CAAAC,WAAA,CAAAD,MAAmB,CAAAE,OAAQ,CAAAH,IAAA,EAAYI,GAAC,WAAMC,KAAS;MACzD,KAAAoE,GAAA,EAAAlE,KAAO,IAAAF,KAAA;MAAA,IACTkE,eAAA,IAAAE,GAAA,kBAAAlE,KAAA,CAAAE,OAAA;QAEA,OAAO;MAAA;MACL,OACA,CAAAgE,GAAA,EACQ;QAIRnE,IAAA,EAAAmE,GAAA;QACF3B,OAAA,EAAAvC,KAAA,CAAAE,OAAA,GAAAiC,UAAA,CAAAuB,kCAAA,CAAA1D,KAAA,CAAAE,OAAA,KAAA4D;MACD,CACA,CACL;IACF,GAAAK,MAAA,CAAAC,OAAA;EAEA;EAAO,OACL;IAAMxF,IACJ;MACAmB,IAAA,QAAS;MACXwC,OAAA,EAAAuB;IACA;IAAc,IACZ3F,MAAA,IAAQ;MAAAA,MACN,EAAM;QACN4B,IAAA,UAAS;QACXwC,OAAA,EAAAJ,UAAA,CAAAhE,MAAA;MACF;IACA;IACA,IAAID,KAAA,CAAME,cAAA,IAAA2F,oBACR,CAAA7F,KAAqB,CAAAE,cAAM;IAC/B,IAAAF,KAAA,CAAAG,mBAAA,IAAA0F,oBAAA,CAAA7F,KAAA,CAAAG,mBAAA;EACF;AAEO;AACL,IAAAwD,kBAAc,YAAAA,CAAAwC,UAAA;EAAA,OACZ3E,MAAO,CAAAC,WAAQ,CAAAD,MAAY,CAAIE,OAAE,CAAAyE,UAAe,CAAE,CAAAxE,GAAA,WAAUC,KAAM;IAChE,KAAAwE,aAAO;MAAAnE;IAAA,KAAAL,KAAA;IAAA,OACL,CAAAwE,aACA;MACU5C,MACR;MACFvB,QAAA,EAAAA,QAAA;IACF,EACD;EACH;AACF;AAEO,SAASpB,eAAeD,QAAA,EAAmD;EAChF,IAAAyF,cAAM,GAAAzF,QAAiB,CAAAX,MAAS,GAAAL,qBAAS,CAAAgB,QAAsB,CAAAX,MAAS,IAAM,IAAI;EAClF,IAAAqG,YAAM,GAAA1G,qBAAe,CAAAgB,QAAsB,CAAAF,IAAS;EAEpD,IAAA6F,IAAM,GAAA/E,MAAO,CAAAC,WAAO,CAAAD,MAAA,CAAAE,OAAA,CAAAd,QAAA,EAAA4F,OAAA,WAAA5E,KAAA;IAClB,KAAAC,IAAO,EAAAG,OAAQ,IAAAJ,KAAU;IACvB,IAAA6E,UAAM,GAAA7G,qBAAW,CAAAoC,OAAsB;IACvC,IAAA0E,QAAM,GAAA7E,IAAW,CAAA8E,UAAK,SAAW;IACjC,IAAAC,gBAAM,GAAAF,QAAmB,GAAAJ,YAAW,GAAAD,cAAe,IAAAC,YAAkB;IAErE,KAAAM,gBAAK;MACH,SAAO;IAAC;IAGV,IAAAC,aAAM,GAAAD,gBAAgB,CAAAtE,KAAkB;IACxC,IAAAwE,YAAM,GAAAF,gBAAe,CAAAvD,IAAkB;IAEvC,IAAA0D,QAAM;IAEN,IAAAC,GAAA,GAAM,CAAM,CACVnF,IACE,WAAS,UAAS,YAAUA,IAAS,EAAI,GACzCgF,aACE,CAAAE,QAAc,GAAQ,GACtBN,UAAG,CAAAnE,KAAS,EAAAuE,aACZ,CAAAA,aAAc,CAAAzC,MAAc,GAAA2C,QAAS,KAAW,CAAC,CACnD,EACF,CACAlF,IACE,WAAS,SAAS,WAASA,IAAQ,EAAI,GACvCiF,YACE,CAAAA,YAAa,CAAA1C,MAAa,GAAA2C,QAAS,KAAW,EAAC,GAC/CN,UAAG,CAAApD,IAAS,EAAAyD,YACZ,CAAAC,QAAa,EAAQ,CACvB,CACF;IAGF,OAAAC,GAAO;EAAA,EACT,CAAC;EACH,OAAAT,IAAA;AAEA;AACF,SAAAjF,qBAAAtB,KAAA;EAUO;IAAAM,QAAS;IAAAG,KAAA;IAAAE,WAwCd;IAcAT,cAAA;IAAAC,mBAAA;IAAAC,SAAA,GAAAT,gBAAA;IAAAiB,QAAA,GAAAsB,eAAA;IAAAnB,WAAA;IAAAV,eAAA,GAAAD,SAAA,KAAAT,gBAAA,GAAAD,sBAAA;EAAA,IAAAM,KAAA;EACA,IAAAkB,YAAM,GAAApB,kBAAA,GAAAqC,WAAA,CAAAvB,QAAA,EAAAwB,YAAA,CAAAhC,SAAA,EAAAiC,SAAA;IACJC,KAAA;MACAL,QAAA;MACAD,OAAA;MACAO,kBAAiB;QACjB,IAAA9B,KAAA,aAAsBA,KAAA,uBAAAA,KAAA,CAAA6B,KAAA;QACtB,IAAAvB,WAAY,IAAAH,QAAA,CAAA4B,YAAA;UACZC,OAAW,EAAA7B,QAAA,CAAA4B,YAAA,CAAA3C,yBAAA;UACX6C,OAAA,EAAA9B,QAAA,CAAA4B,YAAA,CAAA3C,yBAAA;UACA8C,OAAA,EAAA/B,QAAkB,CAAA4B,YAAe,CAAA3C,yBAC5B;UAEH+C,OAAA,EAAAhC,QAAA,CAAA4B,YAAA,CAAA3C,yBAAA;UAGAgD,OAAA,EAAAjC,QAAe,CAAA4B,YAAmB,CAAA3C,yBAEnC;UAECiD,OAAO,EAAAlC,QAAA,CAAA4B,YAAA,CAAA3C,yBAAA;UACLkD,OAAU,EAAAnC,QAAA,CAAA4B,YAAA,CAAA3C,yBAAA;UACVmD,OAAS,EAAApC,QAAA,CAAA4B,YAAA,CAAA3C,yBAAA;UACToD,OAAA,EAAArC,QAAoB,CAAA4B,YAAA,CAAA3C,yBAAA;UAClBqD,QAAU,EAAAtC,QAAA,CAAA4B,YAAA,CAAA3C,yBAAA;UACVsD,QAAI,EAAAvC,QACF,CAAA4B,YAAS,CAAA3C,yBAAgB;UACvBuD,QAAA,EAASxC,QAAS,CAAA4B,YAAa,CAAA3C,yBAAA,GAA6B;QAAA;MACA;IACA;IACAwD,IAAA,EAC5D;MAA4DpB,QAC5D,QAAS;MAAmDD,OAC5D,QAAS;MAAmDO,kBACnD;QAAmD,IAC5D9B,KAAA,KAAS,QAASA,KAAA,UAAa,aAAAA,KAAA,CAAA4C,IAAA;QAA6B,IAC5DtC,WAAU,IAAAH,QAAS,CAAA0C,WAAa;UAChCb,OAAA,EAAA7B,QAAU,CAAA0C,WAAS,CAAAzD,yBAAa,KAA4B;UAC5D6C,OAAA,EAAA9B,QAAU,CAAA0C,WAAS,CAAAzD,yBAAa,KAA4B;UAC9D8C,OAAA,EAAA/B,QAAA,CAAA0C,WAAA,CAAAzD,yBAAA;UACJ+C,OAAA,EAAAhC,QAAA,CAAA0C,WAAA,CAAAzD,yBAAA;UACFgD,OAAA,EAAAjC,QAAA,CAAA0C,WAAA,CAAAzD,yBAAA;UACMiD,OAAA,EAAAlC,QAAA,CAAA0C,WAAA,CAAAzD,yBAAA;UACJkD,OAAU,EAAAnC,QAAA,CAAA0C,WAAA,CAAAzD,yBAAA;UACVmD,OAAS,EAAApC,QAAA,CAAA0C,WAAA,CAAAzD,yBAAA;UACToD,OAAA,EAAArC,QAAoB,CAAA0C,WAAA,CAAAzD,yBAAA;UAClBqD,QAAU,EAAAtC,QAAA,CAAA0C,WAAA,CAAAzD,yBAAA;UACVsD,QAAI,EAAAvC,QACF,CAAA0C,WAAS,CAAAzD,yBAAe;UACtBuD,QAAA,EAASxC,QAAS,CAAA0C,WAAY,CAAAzD,yBAAA,GAA6B;QAAA;MACA;IACA;EACA;EACA,IAAAK,cAClD;IAAkDgB,YAC3D,GAASA,YAAS,CAAAqC,cAAY,CAAArD,cAAA;MAA6BuD,kBAClD,GAAkD,QAC3D;IAC4D;EACC;EACA,IAAAtD,mBAC/D;IAAAe,YACJ,GAAAA,YAAA,CAAAqC,cAAA,CAAApD,mBAAA;MACFsD,kBAAA,GACD;IAID;EAA2D;EAC5B,IAC9B7C,QAAA,CAAA4B,YAAA;IACHtB,YAAA,GAAAA,YAAA,CAAAqC,cAAA;MAEItD,MAAA,GACF;QACEuD,MAAA;QACDvB,QAAA;QACHD,OAAA;QAGIO,kBAAS,EAAc5B,WAAA,aAAAA,WAAA,uBAAAA,WAAA,CAAA2B;MACzB,GACE;QACEkB,MAAQ;QACNvB,QAAA;QAAAD,OACE,eAAQ;QAAAO,kBACE,EAAA5B,WAAA,aAAAA,WAAA,uBAAAA,WAAA,CAAA0C;MAAA;IAEuB;MACnCI,kBACA,EAAAjC,MAAA,CAAAoC,IAAA,CAAA1D,cAAA;IAAA;EACU;EACE,IAAAG,eACD;IAAAa,YACT,GAAAA,YAAA,CAAoBwC,kBAAa,CAAAC,kBAAA,CAAAtD,eAAA;MAAAoD,kBACnC,EAAAjC,MAAA,CAAAoC,IAAA,CAAAzD,mBAAA;IAAA;EACF;EACF,IACAG,QAAA;IAAAY,YACE,GAAAA,YAAoB,CAAAZ,QAAY,CAAAA,QAAA;EAAoB;EACtD,OACF;IACFY,YAAA;IAEAC,MAAI,EAAAD,YAAiB,CAAA2C,KAAA;EACnB;AAAoF;AACzB,SAE7DhD,cAAA,EAEAL,wBAAc,EACZT,YAAA,EACFuB,oBAAA,EAEAD,cAAO,EAAAsC,kBACL,EAAAvC,cACQ","ignoreList":[]}
@@ -0,0 +1,61 @@
1
+ const defaultComponentThemes = {
2
+ ListItem: {
3
+ template: "surface1"
4
+ },
5
+ SelectItem: {
6
+ template: "surface1"
7
+ },
8
+ SelectTrigger: {
9
+ template: "surface1"
10
+ },
11
+ Card: {
12
+ template: "surface1"
13
+ },
14
+ Button: {
15
+ template: "surface3"
16
+ },
17
+ Checkbox: {
18
+ template: "surface2"
19
+ },
20
+ Switch: {
21
+ template: "surface2"
22
+ },
23
+ SwitchThumb: {
24
+ template: "inverse"
25
+ },
26
+ TooltipContent: {
27
+ template: "surface2"
28
+ },
29
+ Progress: {
30
+ template: "surface1"
31
+ },
32
+ RadioGroupItem: {
33
+ template: "surface2"
34
+ },
35
+ TooltipArrow: {
36
+ template: "surface1"
37
+ },
38
+ SliderTrackActive: {
39
+ template: "surface2"
40
+ },
41
+ SliderTrack: {
42
+ template: "inverse"
43
+ },
44
+ SliderThumb: {
45
+ template: "inverse"
46
+ },
47
+ Tooltip: {
48
+ template: "inverse"
49
+ },
50
+ ProgressIndicator: {
51
+ template: "inverse"
52
+ },
53
+ Input: {
54
+ template: "surface1"
55
+ },
56
+ TextArea: {
57
+ template: "surface1"
58
+ }
59
+ };
60
+ export { defaultComponentThemes };
61
+ //# sourceMappingURL=defaultComponentThemes.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["defaultComponentThemes","ListItem","template","SelectItem","SelectTrigger","Card","Button","Checkbox","Switch","SwitchThumb","TooltipContent","Progress","RadioGroupItem","TooltipArrow","SliderTrackActive","SliderTrack","SliderThumb","Tooltip","ProgressIndicator","Input","TextArea"],"sources":["../../src/defaultComponentThemes.ts"],"sourcesContent":[null],"mappings":"AAKO,MAAMA,sBAAA,GAAyB;EACpCC,QAAA,EAAU;IAAEC,QAAA,EAAU;EAAW;EACjCC,UAAA,EAAY;IAAED,QAAA,EAAU;EAAW;EACnCE,aAAA,EAAe;IAAEF,QAAA,EAAU;EAAW;EACtCG,IAAA,EAAM;IAAEH,QAAA,EAAU;EAAW;EAC7BI,MAAA,EAAQ;IAAEJ,QAAA,EAAU;EAAW;EAC/BK,QAAA,EAAU;IAAEL,QAAA,EAAU;EAAW;EACjCM,MAAA,EAAQ;IAAEN,QAAA,EAAU;EAAW;EAC/BO,WAAA,EAAa;IAAEP,QAAA,EAAU;EAAU;EACnCQ,cAAA,EAAgB;IAAER,QAAA,EAAU;EAAW;EACvCS,QAAA,EAAU;IAAET,QAAA,EAAU;EAAW;EACjCU,cAAA,EAAgB;IAAEV,QAAA,EAAU;EAAW;EACvCW,YAAA,EAAc;IAAEX,QAAA,EAAU;EAAW;EACrCY,iBAAA,EAAmB;IAAEZ,QAAA,EAAU;EAAW;EAC1Ca,WAAA,EAAa;IAAEb,QAAA,EAAU;EAAU;EACnCc,WAAA,EAAa;IAAEd,QAAA,EAAU;EAAU;EACnCe,OAAA,EAAS;IAAEf,QAAA,EAAU;EAAU;EAC/BgB,iBAAA,EAAmB;IAAEhB,QAAA,EAAU;EAAU;EACzCiB,KAAA,EAAO;IAAEjB,QAAA,EAAU;EAAW;EAC9BkB,QAAA,EAAU;IAAElB,QAAA,EAAU;EAAW;AACnC","ignoreList":[]}
@@ -0,0 +1,61 @@
1
+ var defaultComponentThemes = {
2
+ ListItem: {
3
+ template: "surface1"
4
+ },
5
+ SelectItem: {
6
+ template: "surface1"
7
+ },
8
+ SelectTrigger: {
9
+ template: "surface1"
10
+ },
11
+ Card: {
12
+ template: "surface1"
13
+ },
14
+ Button: {
15
+ template: "surface3"
16
+ },
17
+ Checkbox: {
18
+ template: "surface2"
19
+ },
20
+ Switch: {
21
+ template: "surface2"
22
+ },
23
+ SwitchThumb: {
24
+ template: "inverse"
25
+ },
26
+ TooltipContent: {
27
+ template: "surface2"
28
+ },
29
+ Progress: {
30
+ template: "surface1"
31
+ },
32
+ RadioGroupItem: {
33
+ template: "surface2"
34
+ },
35
+ TooltipArrow: {
36
+ template: "surface1"
37
+ },
38
+ SliderTrackActive: {
39
+ template: "surface2"
40
+ },
41
+ SliderTrack: {
42
+ template: "inverse"
43
+ },
44
+ SliderThumb: {
45
+ template: "inverse"
46
+ },
47
+ Tooltip: {
48
+ template: "inverse"
49
+ },
50
+ ProgressIndicator: {
51
+ template: "inverse"
52
+ },
53
+ Input: {
54
+ template: "surface1"
55
+ },
56
+ TextArea: {
57
+ template: "surface1"
58
+ }
59
+ };
60
+ export { defaultComponentThemes };
61
+ //# sourceMappingURL=defaultComponentThemes.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["defaultComponentThemes","ListItem","template","SelectItem","SelectTrigger","Card","Button","Checkbox","Switch"],"sources":["../../src/defaultComponentThemes.ts"],"sourcesContent":[null],"mappings":"AAKO,IAAAA,sBAAM;EACXC,QAAA,EAAU;IACVC,QAAA,EAAY;EACZ;EACAC,UAAQ;IACRD,QAAU;EACV;EACAE,aAAU;IACVF,QAAA;EACA;EACAG,IAAA;IACAH,QAAA;EACA;EACAI,MAAA;IACAJ,QAAA;EACA;EACAK,QAAA,EAAS;IACTL,QAAA;EACA;EACAM,MAAA;IACFN,QAAA","ignoreList":[]}
@@ -0,0 +1,129 @@
1
+ import { objectFromEntries, objectKeys } from "./helpers.mjs";
2
+ const getTemplates = () => {
3
+ const lightTemplates = getBaseTemplates("light");
4
+ const darkTemplates = getBaseTemplates("dark");
5
+ const templates = {
6
+ ...objectFromEntries(objectKeys(lightTemplates).map(name => [`light_${name}`, lightTemplates[name]])),
7
+ ...objectFromEntries(objectKeys(darkTemplates).map(name => [`dark_${name}`, darkTemplates[name]]))
8
+ };
9
+ return templates;
10
+ };
11
+ const getBaseTemplates = scheme => {
12
+ const isLight = scheme === "light";
13
+ const bgIndex = 6;
14
+ const lighten = isLight ? -1 : 1;
15
+ const darken = -lighten;
16
+ const increaseContrast = 1;
17
+ const borderColor = bgIndex + 3;
18
+ const baseColors = {
19
+ color: -bgIndex,
20
+ colorHover: -bgIndex - 1,
21
+ colorPress: -bgIndex,
22
+ colorFocus: -bgIndex - 1,
23
+ placeholderColor: -bgIndex - 3,
24
+ outlineColor: -2
25
+ };
26
+ const base = {
27
+ accentBackground: 0,
28
+ accentColor: -0,
29
+ background0: 1,
30
+ background02: 2,
31
+ background04: 3,
32
+ background06: 4,
33
+ background08: 5,
34
+ color1: bgIndex,
35
+ color2: bgIndex + 1,
36
+ color3: bgIndex + 2,
37
+ color4: bgIndex + 3,
38
+ color5: bgIndex + 4,
39
+ color6: bgIndex + 5,
40
+ color7: bgIndex + 6,
41
+ color8: bgIndex + 7,
42
+ color9: bgIndex + 8,
43
+ color10: bgIndex + 9,
44
+ color11: bgIndex + 10,
45
+ color12: bgIndex + 11,
46
+ color0: -1,
47
+ color02: -2,
48
+ color04: -3,
49
+ color06: -4,
50
+ color08: -5,
51
+ // the background, color, etc keys here work like generics - they make it so you
52
+ // can publish components for others to use without mandating a specific color scale
53
+ // the @hanzogui/button Button component looks for `$background`, so you set the
54
+ // dark_red_Button theme to have a stronger background than the dark_red theme.
55
+ background: bgIndex,
56
+ backgroundHover: bgIndex + increaseContrast * 2,
57
+ backgroundPress: bgIndex + increaseContrast * 3,
58
+ backgroundFocus: bgIndex + increaseContrast * 2,
59
+ borderColor,
60
+ borderColorHover: borderColor + lighten,
61
+ borderColorPress: borderColor + darken,
62
+ borderColorFocus: borderColor,
63
+ ...baseColors,
64
+ colorTransparent: -1
65
+ };
66
+ const surface1 = {
67
+ ...baseColors,
68
+ background: base.background + 1,
69
+ backgroundHover: base.backgroundHover + 1,
70
+ backgroundPress: base.backgroundPress + 1,
71
+ backgroundFocus: base.backgroundFocus + 1,
72
+ backgroundActive: base.background + 1,
73
+ borderColor: base.borderColor + 1,
74
+ borderColorHover: base.borderColorHover + 1,
75
+ borderColorFocus: base.borderColorFocus + 1,
76
+ borderColorPress: base.borderColorPress + 1
77
+ };
78
+ const surface2 = {
79
+ ...baseColors,
80
+ background: base.background + 2,
81
+ backgroundHover: base.backgroundHover + 2,
82
+ backgroundPress: base.backgroundPress + 2,
83
+ backgroundFocus: base.backgroundFocus + 2,
84
+ backgroundActive: base.background + 2,
85
+ borderColor: base.borderColor + 2,
86
+ borderColorHover: base.borderColorHover + 2,
87
+ borderColorFocus: base.borderColorFocus + 2,
88
+ borderColorPress: base.borderColorPress + 2
89
+ };
90
+ const surface3 = {
91
+ ...baseColors,
92
+ background: base.background + 3,
93
+ backgroundHover: base.backgroundHover + 3,
94
+ backgroundPress: base.backgroundPress + 3,
95
+ backgroundFocus: base.backgroundFocus + 3,
96
+ backgroundActive: base.background + 3,
97
+ borderColor: base.borderColor + 3,
98
+ borderColorHover: base.borderColorHover + 3,
99
+ borderColorFocus: base.borderColorFocus + 3,
100
+ borderColorPress: base.borderColorPress + 3
101
+ };
102
+ const alt1 = {
103
+ color: base.color - 1,
104
+ colorHover: base.colorHover - 1,
105
+ colorPress: base.colorPress - 1,
106
+ colorFocus: base.colorFocus - 1
107
+ };
108
+ const alt2 = {
109
+ color: base.color - 2,
110
+ colorHover: base.colorHover - 2,
111
+ colorPress: base.colorPress - 2,
112
+ colorFocus: base.colorFocus - 2
113
+ };
114
+ const inverse = Object.fromEntries(Object.entries(base).map(([key, index]) => {
115
+ return [key, -index];
116
+ }));
117
+ return {
118
+ base,
119
+ surface1,
120
+ surface2,
121
+ surface3,
122
+ alt1,
123
+ alt2,
124
+ inverse
125
+ };
126
+ };
127
+ const defaultTemplates = getTemplates();
128
+ export { defaultTemplates };
129
+ //# sourceMappingURL=defaultTemplates.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["objectFromEntries","objectKeys","getTemplates","lightTemplates","getBaseTemplates","darkTemplates","templates","map","name","scheme","isLight","bgIndex","lighten","darken","increaseContrast","borderColor","baseColors","color","colorHover","colorPress","colorFocus","placeholderColor","outlineColor","base","accentBackground","accentColor","background0","background02","background04","background06","background08","color1","color2","color3","color4","color5","color6","color7","color8","color9","color10","color11","color12","color0","color02","color04","color06","color08","background","backgroundHover","backgroundPress","backgroundFocus","borderColorHover","borderColorPress","borderColorFocus","colorTransparent","surface1","backgroundActive","surface2","surface3","alt1","alt2","inverse","Object","fromEntries","entries","key","index","defaultTemplates"],"sources":["../../src/defaultTemplates.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}