@tamagui/themes 1.89.0-1706483140977 → 1.89.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 (58) hide show
  1. package/dist/cjs/generated-v3.js +1545 -1
  2. package/dist/cjs/generated-v3.js.map +1 -1
  3. package/dist/cjs/generated-v3.native.js +1545 -1
  4. package/dist/cjs/generated-v3.native.js.map +1 -1
  5. package/dist/cjs/v3-themes.js +373 -285
  6. package/dist/cjs/v3-themes.js.map +2 -2
  7. package/dist/cjs/v3-themes.native.js +384 -288
  8. package/dist/cjs/v3-themes.native.js.map +2 -2
  9. package/dist/esm/componentThemeDefinitions.native.js +22 -44
  10. package/dist/esm/componentThemeDefinitions.native.js.map +1 -1
  11. package/dist/esm/generated-new.native.js +2 -1430
  12. package/dist/esm/generated-new.native.js.map +1 -1
  13. package/dist/esm/generated-v2.native.js +2 -1408
  14. package/dist/esm/generated-v2.native.js.map +1 -1
  15. package/dist/esm/generated-v3.js +1545 -1
  16. package/dist/esm/generated-v3.js.map +1 -1
  17. package/dist/esm/generated-v3.native.js +1547 -1607
  18. package/dist/esm/generated-v3.native.js.map +1 -1
  19. package/dist/esm/helpers.native.js +2 -25
  20. package/dist/esm/helpers.native.js.map +1 -1
  21. package/dist/esm/index.native.js +8 -33
  22. package/dist/esm/index.native.js.map +1 -1
  23. package/dist/esm/masks.native.js +34 -47
  24. package/dist/esm/masks.native.js.map +1 -1
  25. package/dist/esm/palettes.native.js +10 -30
  26. package/dist/esm/palettes.native.js.map +1 -1
  27. package/dist/esm/shadows.native.js +2 -23
  28. package/dist/esm/shadows.native.js.map +1 -1
  29. package/dist/esm/templates.native.js +4 -26
  30. package/dist/esm/templates.native.js.map +1 -1
  31. package/dist/esm/themes-new.native.js +17 -32
  32. package/dist/esm/themes-new.native.js.map +1 -1
  33. package/dist/esm/themes-old.native.js +25 -38
  34. package/dist/esm/themes-old.native.js.map +1 -1
  35. package/dist/esm/themes.native.js +3 -32
  36. package/dist/esm/themes.native.js.map +1 -1
  37. package/dist/esm/tokens.native.js +38 -49
  38. package/dist/esm/tokens.native.js.map +1 -1
  39. package/dist/esm/v2-themes.native.js +43 -48
  40. package/dist/esm/v2-themes.native.js.map +2 -2
  41. package/dist/esm/v2.native.js +12 -49
  42. package/dist/esm/v2.native.js.map +2 -2
  43. package/dist/esm/v3-themes.js +373 -287
  44. package/dist/esm/v3-themes.js.map +2 -2
  45. package/dist/esm/v3-themes.mjs +309 -258
  46. package/dist/esm/v3-themes.native.js +411 -330
  47. package/dist/esm/v3-themes.native.js.map +2 -2
  48. package/dist/esm/v3.native.js +12 -49
  49. package/dist/esm/v3.native.js.map +2 -2
  50. package/package.json +20 -7
  51. package/src/generated-v3.ts +3847 -0
  52. package/src/v3-themes.ts +703 -0
  53. package/src/v3.tsx +14 -0
  54. package/types/generated-v3.d.ts +1717 -0
  55. package/types/generated-v3.d.ts.map +1 -1
  56. package/types/v3-themes.d.ts +59730 -0
  57. package/types/v3-themes.d.ts.map +1 -1
  58. package/types/v3.d.ts +12 -0
@@ -1,8 +1,6 @@
1
- import { createThemeBuilder } from "@tamagui/theme-builder";
2
1
  import { blue, blueDark, gray, grayDark, green, greenDark, orange, orangeDark, pink, pinkDark, purple, purpleDark, red, redDark, yellow, yellowDark } from "@tamagui/colors";
2
+ import { createThemeBuilder } from "@tamagui/theme-builder";
3
3
  import { createTokens } from "@tamagui/web";
4
- import { masks } from "./masks.mjs";
5
- import { masks as masks2 } from "./masks.mjs";
6
4
  const colorTokens = {
7
5
  light: {
8
6
  blue,
@@ -25,21 +23,77 @@ const colorTokens = {
25
23
  yellow: yellowDark
26
24
  }
27
25
  },
26
+ lightShadowColor = "rgba(0,0,0,0.04)",
27
+ lightShadowColorStrong = "rgba(0,0,0,0.085)",
28
+ darkShadowColor = "rgba(0,0,0,0.2)",
29
+ darkShadowColorStrong = "rgba(0,0,0,0.3)",
30
+ darkColors = {
31
+ ...colorTokens.dark.blue,
32
+ ...colorTokens.dark.gray,
33
+ ...colorTokens.dark.green,
34
+ ...colorTokens.dark.orange,
35
+ ...colorTokens.dark.pink,
36
+ ...colorTokens.dark.purple,
37
+ ...colorTokens.dark.red,
38
+ ...colorTokens.dark.yellow
39
+ },
40
+ lightColors = {
41
+ ...colorTokens.light.blue,
42
+ ...colorTokens.light.gray,
43
+ ...colorTokens.light.green,
44
+ ...colorTokens.light.orange,
45
+ ...colorTokens.light.pink,
46
+ ...colorTokens.light.purple,
47
+ ...colorTokens.light.red,
48
+ ...colorTokens.light.yellow
49
+ },
50
+ color = {
51
+ white0: "rgba(255,255,255,0)",
52
+ white075: "rgba(255,255,255,0.75)",
53
+ white05: "rgba(255,255,255,0.5)",
54
+ white025: "rgba(255,255,255,0.25)",
55
+ black0: "rgba(10,10,10,0)",
56
+ black075: "rgba(10,10,10,0.75)",
57
+ black05: "rgba(10,10,10,0.5)",
58
+ black025: "rgba(10,10,10,0.25)",
59
+ white1: "#fff",
60
+ white2: "#f8f8f8",
61
+ white3: "hsl(0, 0%, 96.3%)",
62
+ white4: "hsl(0, 0%, 94.1%)",
63
+ white5: "hsl(0, 0%, 92.0%)",
64
+ white6: "hsl(0, 0%, 90.0%)",
65
+ white7: "hsl(0, 0%, 88.5%)",
66
+ white8: "hsl(0, 0%, 81.0%)",
67
+ white9: "hsl(0, 0%, 56.1%)",
68
+ white10: "hsl(0, 0%, 50.3%)",
69
+ white11: "hsl(0, 0%, 42.5%)",
70
+ white12: "hsl(0, 0%, 9.0%)",
71
+ black1: "#050505",
72
+ black2: "#151515",
73
+ black3: "#191919",
74
+ black4: "#232323",
75
+ black5: "#282828",
76
+ black6: "#323232",
77
+ black7: "#424242",
78
+ black8: "#494949",
79
+ black9: "#545454",
80
+ black10: "#626262",
81
+ black11: "#a5a5a5",
82
+ black12: "#fff",
83
+ ...postfixObjKeys(lightColors, "Light"),
84
+ ...postfixObjKeys(darkColors, "Dark")
85
+ },
28
86
  palettes = (() => {
29
- const lightTransparent = "rgba(255,255,255,0)",
30
- darkTransparent = "rgba(10,10,10,0)",
31
- transparent = (hsl, opacity = 0) => hsl.replace("%)", `%, ${opacity})`).replace("hsl(", "hsla("),
32
- getColorPalette = (colors, color2 = colors[0]) => {
87
+ const transparent = (hsl, opacity = 0) => hsl.replace("%)", `%, ${opacity})`).replace("hsl(", "hsla("),
88
+ getColorPalette = colors => {
33
89
  const colorPalette = Object.values(colors),
34
- [head, tail] = [colorPalette.slice(0, 6), colorPalette.slice(colorPalette.length - 5)];
35
- return [transparent(colorPalette[0]), ...head, ...tail, color2, transparent(colorPalette[colorPalette.length - 1])];
90
+ colorI = colorPalette.length - 4;
91
+ return [transparent(colorPalette[0], 0), transparent(colorPalette[0], 0.25), transparent(colorPalette[0], 0.5), transparent(colorPalette[0], 0.75), ...colorPalette, transparent(colorPalette[colorI], 0.75), transparent(colorPalette[colorI], 0.5), transparent(colorPalette[colorI], 0.25), transparent(colorPalette[colorI], 0)];
36
92
  },
37
- lightColor = "hsl(0, 0%, 9.0%)",
38
- lightPalette = [lightTransparent, "#fff", "#f8f8f8", "hsl(0, 0%, 96.3%)", "hsl(0, 0%, 94.1%)", "hsl(0, 0%, 92.0%)", "hsl(0, 0%, 90.0%)", "hsl(0, 0%, 88.5%)", "hsl(0, 0%, 81.0%)", "hsl(0, 0%, 56.1%)", "hsl(0, 0%, 50.3%)", "hsl(0, 0%, 42.5%)", lightColor, darkTransparent],
39
- darkColor = "#fff",
40
- darkPalette = [darkTransparent, "#050505", "#151515", "#191919", "#232323", "#282828", "#323232", "#424242", "#494949", "#545454", "#626262", "#a5a5a5", darkColor, lightTransparent],
41
- lightPalettes = objectFromEntries(objectKeys(colorTokens.light).map(key => [`light_${key}`, getColorPalette(colorTokens.light[key], lightColor)])),
42
- darkPalettes = objectFromEntries(objectKeys(colorTokens.dark).map(key => [`dark_${key}`, getColorPalette(colorTokens.dark[key], darkColor)])),
93
+ lightPalette = [color.white0, color.white075, color.white05, color.white025, color.white1, color.white2, color.white3, color.white4, color.white5, color.white6, color.white7, color.white8, color.white9, color.white10, color.white11, color.white12, color.black075, color.black05, color.black025, color.black0],
94
+ darkPalette = [color.black0, color.black075, color.black05, color.black025, color.black1, color.black2, color.black3, color.black4, color.black5, color.black6, color.black7, color.black8, color.black9, color.black10, color.black11, color.black12, color.white075, color.white05, color.white025, color.white0],
95
+ lightPalettes = objectFromEntries(objectKeys(colorTokens.light).map(key => [`light_${key}`, getColorPalette(colorTokens.light[key])])),
96
+ darkPalettes = objectFromEntries(objectKeys(colorTokens.dark).map(key => [`dark_${key}`, getColorPalette(colorTokens.dark[key])])),
43
97
  colorPalettes = {
44
98
  ...lightPalettes,
45
99
  ...darkPalettes
@@ -50,230 +104,137 @@ const colorTokens = {
50
104
  ...colorPalettes
51
105
  };
52
106
  })(),
53
- templateColorsSpecific = {
54
- color1: 1,
55
- color2: 2,
56
- color3: 3,
57
- color4: 4,
58
- color5: 5,
59
- color6: 6,
60
- color7: 7,
61
- color8: 8,
62
- color9: 9,
63
- color10: 10,
64
- color11: 11,
65
- color12: 12
66
- },
67
107
  templates = (() => {
68
108
  const base = {
69
- ...templateColorsSpecific,
109
+ background0: 0,
110
+ background025: 1,
111
+ background05: 2,
112
+ background075: 3,
113
+ color1: 4,
114
+ color2: 5,
115
+ color3: 6,
116
+ color4: 7,
117
+ color5: 8,
118
+ color6: 9,
119
+ color7: 10,
120
+ color8: 11,
121
+ color9: 12,
122
+ color10: 13,
123
+ color11: 14,
124
+ color12: 15,
125
+ color0: -0,
126
+ color025: -1,
127
+ color05: -2,
128
+ color075: -3,
70
129
  // the background, color, etc keys here work like generics - they make it so you
71
130
  // can publish components for others to use without mandating a specific color scale
72
131
  // the @tamagui/button Button component looks for `$background`, so you set the
73
132
  // dark_red_Button theme to have a stronger background than the dark_red theme.
74
- background: 2,
75
- backgroundHover: 3,
76
- backgroundPress: 4,
77
- backgroundFocus: 5,
78
- backgroundStrong: 1,
79
- backgroundTransparent: 0,
80
- color: -1,
81
- colorHover: -2,
82
- colorPress: -1,
83
- colorFocus: -2,
133
+ background: 4,
134
+ backgroundHover: 5,
135
+ backgroundPress: 6,
136
+ backgroundFocus: 4,
137
+ borderColor: 7,
138
+ borderColorHover: 8,
139
+ borderColorFocus: 5,
140
+ borderColorPress: 7,
141
+ color: -4,
142
+ colorHover: -5,
143
+ colorPress: -4,
144
+ colorFocus: -5,
84
145
  colorTransparent: -0,
85
- borderColor: 5,
86
- borderColorHover: 6,
87
- borderColorFocus: 4,
88
- borderColorPress: 5,
89
- placeholderColor: -4,
90
- // in the future this should be partially transparent
91
- outlineColor: 5
146
+ placeholderColor: -7,
147
+ outlineColor: -1
92
148
  },
93
- surface1 = {
149
+ surface12 = {
94
150
  background: base.background + 1,
95
151
  backgroundHover: base.backgroundHover + 1,
96
152
  backgroundPress: base.backgroundPress + 1,
97
153
  backgroundFocus: base.backgroundFocus + 1,
98
- backgroundStrong: base.backgroundStrong + 1,
99
154
  borderColor: base.borderColor + 1,
100
155
  borderColorHover: base.borderColorHover + 1,
101
156
  borderColorFocus: base.borderColorFocus + 1,
102
- borderColorPress: base.borderColorPress + 1,
103
- outlineColor: base.outlineColor + 1
157
+ borderColorPress: base.borderColorPress + 1
104
158
  },
105
- surface2 = {
159
+ surface22 = {
106
160
  background: base.background + 2,
107
161
  backgroundHover: base.backgroundHover + 2,
108
162
  backgroundPress: base.backgroundPress + 2,
109
163
  backgroundFocus: base.backgroundFocus + 2,
110
- backgroundStrong: base.backgroundStrong + 2,
111
164
  borderColor: base.borderColor + 2,
112
165
  borderColorHover: base.borderColorHover + 2,
113
166
  borderColorFocus: base.borderColorFocus + 2,
114
- borderColorPress: base.borderColorPress + 2,
115
- outlineColor: base.outlineColor + 2
167
+ borderColorPress: base.borderColorPress + 2
116
168
  },
117
- surface3 = {
169
+ surface32 = {
118
170
  background: base.background + 3,
119
171
  backgroundHover: base.backgroundHover + 3,
120
172
  backgroundPress: base.backgroundPress + 3,
121
173
  backgroundFocus: base.backgroundFocus + 3,
122
- backgroundStrong: base.backgroundStrong + 3,
123
174
  borderColor: base.borderColor + 3,
124
175
  borderColorHover: base.borderColorHover + 3,
125
176
  borderColorFocus: base.borderColorFocus + 3,
126
- borderColorPress: base.borderColorPress + 3,
127
- outlineColor: base.outlineColor + 3
128
- };
129
- return {
130
- base,
131
- surface1,
132
- surface2,
133
- surface3
134
- };
135
- })(),
136
- maskOptions = (() => {
137
- const shadows2 = {
138
- shadowColor: 0,
139
- shadowColorHover: 0,
140
- shadowColorPress: 0,
141
- shadowColorFocus: 0
177
+ borderColorPress: base.borderColorPress + 3
142
178
  },
143
- colors = {
144
- ...shadows2,
145
- color: 0,
146
- colorHover: 0,
147
- colorFocus: 0,
148
- colorPress: 0
179
+ surfaceActive = {
180
+ background: base.background + 5,
181
+ backgroundHover: base.background + 5,
182
+ backgroundPress: base.backgroundPress + 5,
183
+ backgroundFocus: base.backgroundFocus + 5,
184
+ borderColor: base.borderColor + 5,
185
+ borderColorHover: base.borderColor + 5,
186
+ borderColorFocus: base.borderColorFocus + 5,
187
+ borderColorPress: base.borderColorPress + 5
149
188
  },
150
- baseMaskOptions = {
151
- override: shadows2,
152
- skip: shadows2,
153
- // avoids the transparent ends
154
- max: palettes.light.length - 2,
155
- min: 1
189
+ inverseSurface12 = {
190
+ color: surface12.background,
191
+ colorHover: surface12.backgroundHover,
192
+ colorPress: surface12.backgroundPress,
193
+ colorFocus: surface12.backgroundFocus,
194
+ background: base.color,
195
+ backgroundHover: base.colorHover,
196
+ backgroundPress: base.colorPress,
197
+ backgroundFocus: base.colorFocus,
198
+ borderColor: base.color - 2,
199
+ borderColorHover: base.color - 3,
200
+ borderColorFocus: base.color - 4,
201
+ borderColorPress: base.color - 5
156
202
  },
157
- skipShadowsAndSpecificColors = {
158
- ...shadows2,
159
- ...templateColorsSpecific
160
- };
161
- return {
162
- component: {
163
- ...baseMaskOptions,
164
- override: colors,
165
- skip: skipShadowsAndSpecificColors
203
+ inverseActive = {
204
+ ...inverseSurface12,
205
+ background: base.color - 2,
206
+ backgroundHover: base.colorHover - 2,
207
+ backgroundPress: base.colorPress - 2,
208
+ backgroundFocus: base.colorFocus - 2,
209
+ borderColor: base.color - 2 - 2,
210
+ borderColorHover: base.color - 3 - 2,
211
+ borderColorFocus: base.color - 4 - 2,
212
+ borderColorPress: base.color - 5 - 2
166
213
  },
167
- alt: {
168
- ...baseMaskOptions
214
+ alt1 = {
215
+ color: base.color - 1,
216
+ colorHover: base.colorHover - 1,
217
+ colorPress: base.colorPress - 1,
218
+ colorFocus: base.colorFocus - 1
169
219
  },
170
- button: {
171
- ...baseMaskOptions,
172
- override: {
173
- ...colors,
174
- borderColor: "transparent",
175
- borderColorHover: "transparent"
176
- },
177
- skip: skipShadowsAndSpecificColors
178
- }
220
+ alt2 = {
221
+ color: base.color - 2,
222
+ colorHover: base.colorHover - 2,
223
+ colorPress: base.colorPress - 2,
224
+ colorFocus: base.colorFocus - 2
225
+ };
226
+ return {
227
+ base,
228
+ alt1,
229
+ alt2,
230
+ surface1: surface12,
231
+ surface2: surface22,
232
+ surface3: surface32,
233
+ inverseSurface1: inverseSurface12,
234
+ inverseActive,
235
+ surfaceActive
179
236
  };
180
237
  })(),
181
- lightShadowColor = "rgba(0,0,0,0.04)",
182
- lightShadowColorStrong = "rgba(0,0,0,0.085)",
183
- darkShadowColor = "rgba(0,0,0,0.2)",
184
- darkShadowColorStrong = "rgba(0,0,0,0.3)",
185
- size = {
186
- $0: 0,
187
- "$0.25": 2,
188
- "$0.5": 4,
189
- "$0.75": 8,
190
- $1: 20,
191
- "$1.5": 24,
192
- $2: 28,
193
- "$2.5": 32,
194
- $3: 36,
195
- "$3.5": 40,
196
- $4: 44,
197
- $true: 44,
198
- "$4.5": 48,
199
- $5: 52,
200
- $6: 64,
201
- $7: 74,
202
- $8: 84,
203
- $9: 94,
204
- $10: 104,
205
- $11: 124,
206
- $12: 144,
207
- $13: 164,
208
- $14: 184,
209
- $15: 204,
210
- $16: 224,
211
- $17: 224,
212
- $18: 244,
213
- $19: 264,
214
- $20: 284
215
- },
216
- spaces = Object.entries(size).map(([k, v]) => [k, sizeToSpace(v)]),
217
- spacesNegative = spaces.slice(1).map(([k, v]) => [`-${k.slice(1)}`, -v]),
218
- space = {
219
- ...Object.fromEntries(spaces),
220
- ...Object.fromEntries(spacesNegative)
221
- },
222
- zIndex = {
223
- 0: 0,
224
- 1: 100,
225
- 2: 200,
226
- 3: 300,
227
- 4: 400,
228
- 5: 500
229
- },
230
- darkColors = {
231
- ...colorTokens.dark.blue,
232
- ...colorTokens.dark.gray,
233
- ...colorTokens.dark.green,
234
- ...colorTokens.dark.orange,
235
- ...colorTokens.dark.pink,
236
- ...colorTokens.dark.purple,
237
- ...colorTokens.dark.red,
238
- ...colorTokens.dark.yellow
239
- },
240
- lightColors = {
241
- ...colorTokens.light.blue,
242
- ...colorTokens.light.gray,
243
- ...colorTokens.light.green,
244
- ...colorTokens.light.orange,
245
- ...colorTokens.light.pink,
246
- ...colorTokens.light.purple,
247
- ...colorTokens.light.red,
248
- ...colorTokens.light.yellow
249
- },
250
- color = {
251
- ...postfixObjKeys(lightColors, "Light"),
252
- ...postfixObjKeys(darkColors, "Dark")
253
- },
254
- radius = {
255
- 0: 0,
256
- 1: 3,
257
- 2: 5,
258
- 3: 7,
259
- 4: 9,
260
- true: 9,
261
- 5: 10,
262
- 6: 16,
263
- 7: 19,
264
- 8: 22,
265
- 9: 26,
266
- 10: 34,
267
- 11: 42,
268
- 12: 50
269
- },
270
- tokens = createTokens({
271
- color,
272
- radius,
273
- zIndex,
274
- space,
275
- size
276
- }),
277
238
  shadows = {
278
239
  light: {
279
240
  shadowColor: lightShadowColorStrong,
@@ -288,10 +249,6 @@ const colorTokens = {
288
249
  shadowColorFocus: darkShadowColor
289
250
  }
290
251
  },
291
- colorThemeDefinition = colorName => ({
292
- palette: colorName,
293
- template: "base"
294
- }),
295
252
  nonInherited = {
296
253
  light: {
297
254
  ...lightColors,
@@ -313,7 +270,35 @@ const colorTokens = {
313
270
  background: "rgba(0,0,0,0.9)"
314
271
  }
315
272
  }],
316
- themeBuilder = createThemeBuilder().addPalettes(palettes).addTemplates(templates).addMasks(masks).addThemes({
273
+ inverseSurface1 = [{
274
+ parent: "active",
275
+ template: "inverseActive"
276
+ }, {
277
+ parent: "",
278
+ template: "inverseSurface1"
279
+ }],
280
+ surface1 = [{
281
+ parent: "active",
282
+ template: "surfaceActive"
283
+ }, {
284
+ parent: "",
285
+ template: "surface1"
286
+ }],
287
+ surface2 = [{
288
+ parent: "active",
289
+ template: "surfaceActive"
290
+ }, {
291
+ parent: "",
292
+ template: "surface2"
293
+ }],
294
+ surface3 = [{
295
+ parent: "active",
296
+ template: "surfaceActive"
297
+ }, {
298
+ parent: "",
299
+ template: "surface3"
300
+ }],
301
+ themeBuilder = createThemeBuilder().addPalettes(palettes).addTemplates(templates).addThemes({
317
302
  light: {
318
303
  template: "base",
319
304
  palette: "light",
@@ -325,20 +310,44 @@ const colorTokens = {
325
310
  nonInheritedValues: nonInherited.dark
326
311
  }
327
312
  }).addChildThemes({
328
- orange: colorThemeDefinition("orange"),
329
- yellow: colorThemeDefinition("yellow"),
330
- green: colorThemeDefinition("green"),
331
- blue: colorThemeDefinition("blue"),
332
- purple: colorThemeDefinition("purple"),
333
- pink: colorThemeDefinition("pink"),
334
- red: colorThemeDefinition("red"),
335
- gray: colorThemeDefinition("gray")
313
+ orange: {
314
+ palette: "orange",
315
+ template: "base"
316
+ },
317
+ yellow: {
318
+ palette: "yellow",
319
+ template: "base"
320
+ },
321
+ green: {
322
+ palette: "green",
323
+ template: "base"
324
+ },
325
+ blue: {
326
+ palette: "blue",
327
+ template: "base"
328
+ },
329
+ purple: {
330
+ palette: "purple",
331
+ template: "base"
332
+ },
333
+ pink: {
334
+ palette: "pink",
335
+ template: "base"
336
+ },
337
+ red: {
338
+ palette: "red",
339
+ template: "base"
340
+ },
341
+ gray: {
342
+ palette: "gray",
343
+ template: "base"
344
+ }
336
345
  }).addChildThemes({
337
346
  alt1: {
338
- template: "surface1"
347
+ template: "alt1"
339
348
  },
340
349
  alt2: {
341
- template: "surface2"
350
+ template: "alt2"
342
351
  },
343
352
  active: {
344
353
  template: "surface3"
@@ -347,34 +356,19 @@ const colorTokens = {
347
356
  ListItem: {
348
357
  template: "surface1"
349
358
  },
350
- Card: {
351
- template: "surface1"
352
- },
353
- Button: {
354
- template: "surface2"
355
- },
356
- Checkbox: {
357
- template: "surface2"
358
- },
359
- Switch: {
360
- template: "surface2"
361
- },
362
- SwitchThumb: {
363
- mask: "inverse",
364
- ...maskOptions.component
365
- },
366
- TooltipContent: {
367
- template: "surface2"
368
- },
359
+ Card: surface1,
360
+ Button: surface3,
361
+ Checkbox: surface2,
362
+ Switch: surface2,
363
+ SwitchThumb: inverseSurface1,
364
+ TooltipContent: surface2,
369
365
  DrawerFrame: {
370
366
  template: "surface1"
371
367
  },
372
368
  Progress: {
373
369
  template: "surface1"
374
370
  },
375
- RadioGroupItem: {
376
- template: "surface2"
377
- },
371
+ RadioGroupItem: surface2,
378
372
  TooltipArrow: {
379
373
  template: "surface1"
380
374
  },
@@ -384,30 +378,87 @@ const colorTokens = {
384
378
  SliderTrack: {
385
379
  template: "surface1"
386
380
  },
387
- SliderThumb: {
388
- mask: "inverse",
389
- ...maskOptions.component
390
- },
391
- Tooltip: {
392
- mask: "inverse",
393
- ...maskOptions.component
394
- },
395
- ProgressIndicator: {
396
- mask: "inverse",
397
- ...maskOptions.component
398
- },
381
+ SliderThumb: inverseSurface1,
382
+ Tooltip: inverseSurface1,
383
+ ProgressIndicator: inverseSurface1,
399
384
  SheetOverlay: overlayThemeDefinitions,
400
385
  DialogOverlay: overlayThemeDefinitions,
401
386
  ModalOverlay: overlayThemeDefinitions,
402
- Input: {
403
- template: "surface2"
404
- },
405
- TextArea: {
406
- template: "surface2"
407
- }
387
+ Input: surface1,
388
+ TextArea: surface1
389
+ }, {
390
+ avoidNestingWithin: ["alt1", "alt2"]
408
391
  }),
409
392
  themesIn = themeBuilder.build(),
410
- themes = themesIn;
393
+ themes = themesIn,
394
+ size = {
395
+ $0: 0,
396
+ "$0.25": 2,
397
+ "$0.5": 4,
398
+ "$0.75": 8,
399
+ $1: 20,
400
+ "$1.5": 24,
401
+ $2: 28,
402
+ "$2.5": 32,
403
+ $3: 36,
404
+ "$3.5": 40,
405
+ $4: 44,
406
+ $true: 44,
407
+ "$4.5": 48,
408
+ $5: 52,
409
+ $6: 64,
410
+ $7: 74,
411
+ $8: 84,
412
+ $9: 94,
413
+ $10: 104,
414
+ $11: 124,
415
+ $12: 144,
416
+ $13: 164,
417
+ $14: 184,
418
+ $15: 204,
419
+ $16: 224,
420
+ $17: 224,
421
+ $18: 244,
422
+ $19: 264,
423
+ $20: 284
424
+ },
425
+ spaces = Object.entries(size).map(([k, v]) => [k, sizeToSpace(v)]),
426
+ spacesNegative = spaces.slice(1).map(([k, v]) => [`-${k.slice(1)}`, -v]),
427
+ space = {
428
+ ...Object.fromEntries(spaces),
429
+ ...Object.fromEntries(spacesNegative)
430
+ },
431
+ zIndex = {
432
+ 0: 0,
433
+ 1: 100,
434
+ 2: 200,
435
+ 3: 300,
436
+ 4: 400,
437
+ 5: 500
438
+ },
439
+ radius = {
440
+ 0: 0,
441
+ 1: 3,
442
+ 2: 5,
443
+ 3: 7,
444
+ 4: 9,
445
+ true: 9,
446
+ 5: 10,
447
+ 6: 16,
448
+ 7: 19,
449
+ 8: 22,
450
+ 9: 26,
451
+ 10: 34,
452
+ 11: 42,
453
+ 12: 50
454
+ },
455
+ tokens = createTokens({
456
+ color,
457
+ radius,
458
+ zIndex,
459
+ space,
460
+ size
461
+ });
411
462
  function postfixObjKeys(obj, postfix) {
412
463
  return Object.fromEntries(Object.entries(obj).map(([k, v]) => [`${k}${postfix}`, v]));
413
464
  }
@@ -420,4 +471,4 @@ function objectFromEntries(arr) {
420
471
  function objectKeys(obj) {
421
472
  return Object.keys(obj);
422
473
  }
423
- export { maskOptions, masks2 as masks, palettes, templates, themes, tokens };
474
+ export { palettes, templates, themes, tokens };