@sanity/ui 2.0.13-alpha.2 → 2.0.13

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 (115) hide show
  1. package/dist/index.d.mts +2 -2
  2. package/dist/index.d.ts +2 -2
  3. package/dist/index.esm.js +74 -74
  4. package/dist/index.esm.js.map +1 -1
  5. package/dist/index.js +202 -202
  6. package/dist/index.js.map +1 -1
  7. package/dist/index.mjs +74 -74
  8. package/dist/index.mjs.map +1 -1
  9. package/dist/theme.d.mts +1 -1
  10. package/dist/theme.d.ts +1 -1
  11. package/dist/theme.esm.js +587 -51
  12. package/dist/theme.esm.js.map +1 -1
  13. package/dist/theme.js +560 -22
  14. package/dist/theme.js.map +1 -1
  15. package/dist/theme.mjs +587 -51
  16. package/dist/theme.mjs.map +1 -1
  17. package/package.json +27 -28
  18. package/src/core/components/autocomplete/autocomplete.styles.tsx +1 -1
  19. package/src/core/components/breadcrumbs/breadcrumbs.styles.ts +1 -1
  20. package/src/core/components/dialog/__workshop__/panes.tsx +1 -1
  21. package/src/core/components/dialog/dialog.tsx +1 -1
  22. package/src/core/components/dialog/styles.ts +3 -3
  23. package/src/core/components/hotkeys/hotkeys.tsx +1 -1
  24. package/src/core/components/menu/menu.tsx +1 -1
  25. package/src/core/components/menu/menuDivider.ts +1 -1
  26. package/src/core/components/skeleton/skeleton.tsx +1 -1
  27. package/src/core/components/skeleton/textSkeleton.tsx +3 -3
  28. package/src/core/components/tab/tab.tsx +1 -1
  29. package/src/core/components/tab/tabList.tsx +1 -1
  30. package/src/core/components/toast/toast.tsx +1 -1
  31. package/src/core/components/toast/toastProvider.tsx +1 -1
  32. package/src/core/components/tree/style.ts +3 -2
  33. package/src/core/components/tree/treeItem.tsx +1 -1
  34. package/src/core/hooks/useMediaIndex/useMediaIndex.test.tsx +1 -1
  35. package/src/core/primitives/_selectable/selectable.tsx +1 -1
  36. package/src/core/primitives/_selectable/style.ts +2 -1
  37. package/src/core/primitives/avatar/avatar.tsx +1 -1
  38. package/src/core/primitives/avatar/avatarCounter.tsx +4 -3
  39. package/src/core/primitives/avatar/avatarStack.tsx +3 -2
  40. package/src/core/primitives/avatar/styles.ts +3 -3
  41. package/src/core/primitives/badge/badge.tsx +1 -1
  42. package/src/core/primitives/box/box.tsx +1 -1
  43. package/src/core/primitives/button/__workshop__/sanityUploadButton.tsx +1 -1
  44. package/src/core/primitives/button/__workshop__/styled1.tsx +1 -1
  45. package/src/core/primitives/button/__workshop__/styled2.tsx +1 -1
  46. package/src/core/primitives/button/button.tsx +1 -1
  47. package/src/core/primitives/button/styles.ts +3 -3
  48. package/src/core/primitives/card/__workshop__/selected.tsx +3 -3
  49. package/src/core/primitives/card/__workshop__/styled.tsx +1 -1
  50. package/src/core/primitives/card/card.tsx +1 -1
  51. package/src/core/primitives/card/styles.ts +3 -2
  52. package/src/core/primitives/checkbox/checkbox.tsx +1 -1
  53. package/src/core/primitives/checkbox/styles.ts +2 -1
  54. package/src/core/primitives/code/code.tsx +1 -1
  55. package/src/core/primitives/code/styles.ts +4 -1
  56. package/src/core/primitives/container/container.tsx +1 -1
  57. package/src/core/primitives/container/styles.ts +2 -2
  58. package/src/core/primitives/flex/__workshop__/example.tsx +1 -1
  59. package/src/core/primitives/flex/flex.tsx +1 -1
  60. package/src/core/primitives/grid/grid.tsx +1 -1
  61. package/src/core/primitives/heading/heading.tsx +1 -1
  62. package/src/core/primitives/heading/styles.ts +2 -1
  63. package/src/core/primitives/inline/inline.tsx +1 -1
  64. package/src/core/primitives/inline/styles.ts +2 -2
  65. package/src/core/primitives/kbd/kbd.tsx +1 -1
  66. package/src/core/primitives/label/label.tsx +1 -1
  67. package/src/core/primitives/label/styles.ts +2 -1
  68. package/src/core/primitives/popover/popoverCard.tsx +1 -1
  69. package/src/core/primitives/radio/radio.tsx +1 -1
  70. package/src/core/primitives/radio/styles.ts +2 -1
  71. package/src/core/primitives/select/select.tsx +1 -1
  72. package/src/core/primitives/select/styles.ts +5 -5
  73. package/src/core/primitives/spinner/spinner.tsx +1 -1
  74. package/src/core/primitives/stack/stack.tsx +1 -1
  75. package/src/core/primitives/stack/styles.ts +2 -2
  76. package/src/core/primitives/switch/styles.ts +4 -3
  77. package/src/core/primitives/switch/switch.tsx +1 -1
  78. package/src/core/primitives/text/__workshop__/colored.tsx +3 -3
  79. package/src/core/primitives/text/styles.ts +2 -1
  80. package/src/core/primitives/text/text.tsx +1 -1
  81. package/src/core/primitives/textArea/textArea.tsx +1 -1
  82. package/src/core/primitives/textInput/textInput.tsx +1 -1
  83. package/src/core/primitives/tooltip/tooltip.tsx +1 -1
  84. package/src/core/primitives/tooltip/tooltipCard.tsx +1 -1
  85. package/src/core/styles/border/borderStyle.ts +6 -6
  86. package/src/core/styles/box/boxStyle.ts +5 -5
  87. package/src/core/styles/flex/flexItemStyle.ts +2 -2
  88. package/src/core/styles/flex/flexStyle.ts +6 -6
  89. package/src/core/styles/font/responsiveFont.ts +2 -2
  90. package/src/core/styles/font/textAlignStyle.ts +2 -2
  91. package/src/core/styles/grid/gridItemStyle.ts +7 -7
  92. package/src/core/styles/grid/gridStyle.ts +9 -9
  93. package/src/core/styles/helpers.ts +2 -2
  94. package/src/core/styles/input/responsiveInputPaddingStyle.ts +2 -2
  95. package/src/core/styles/input/textInputStyle.ts +4 -4
  96. package/src/core/styles/margin/marginsStyle.test.ts +1 -1
  97. package/src/core/styles/padding/paddingStyle.test.ts +1 -1
  98. package/src/core/styles/radius/radiusStyle.ts +2 -2
  99. package/src/core/styles/shadow/shadowStyle.ts +2 -2
  100. package/src/core/theme/__workshop__/build/Root.tsx +2 -1
  101. package/src/core/theme/theme.test.tsx +1 -1
  102. package/src/core/theme/themeProvider.tsx +7 -6
  103. package/src/core/theme/useTheme.ts +1 -2
  104. package/src/core/utils/arrow/arrow.tsx +1 -1
  105. package/src/core/utils/elementQuery/__workshop__/customMedia.tsx +1 -1
  106. package/src/core/utils/layer/layer.tsx +1 -1
  107. package/src/core/utils/srOnly/srOnly.tsx +1 -1
  108. package/src/core/utils/virtualList/virtualList.tsx +1 -1
  109. package/src/theme/system/theme.ts +1 -1
  110. package/dist/_chunks-cjs/getScopedTheme.js +0 -547
  111. package/dist/_chunks-cjs/getScopedTheme.js.map +0 -1
  112. package/dist/_chunks-es/getScopedTheme.mjs +0 -548
  113. package/dist/_chunks-es/getScopedTheme.mjs.map +0 -1
  114. package/dist/_legacy/getScopedTheme.esm.js +0 -548
  115. package/dist/_legacy/getScopedTheme.esm.js.map +0 -1
@@ -1,548 +0,0 @@
1
- const defaultThemeConfig = {
2
- _version: 2,
3
- avatar: {
4
- sizes: [
5
- { distance: -4, size: 19 },
6
- { distance: -4, size: 25 },
7
- { distance: -8, size: 33 },
8
- { distance: -12, size: 49 }
9
- ],
10
- focusRing: { offset: 1, width: 1 }
11
- },
12
- button: {
13
- textWeight: "medium",
14
- border: { width: 1 },
15
- focusRing: { offset: -1, width: 1 }
16
- },
17
- card: {
18
- border: { width: 1 },
19
- focusRing: { offset: -1, width: 1 },
20
- shadow: { outline: 0.5 }
21
- },
22
- container: [320, 640, 960, 1280, 1600, 1920],
23
- media: [360, 600, 900, 1200, 1800, 2400],
24
- layer: {
25
- dialog: { zOffset: 600 },
26
- popover: { zOffset: 400 },
27
- tooltip: { zOffset: 200 }
28
- },
29
- radius: [0, 1, 3, 6, 9, 12, 21],
30
- shadow: [
31
- null,
32
- { umbra: [0, 0, 0, 0], penumbra: [0, 0, 0, 0], ambient: [0, 0, 0, 0] },
33
- { umbra: [0, 3, 5, -2], penumbra: [0, 6, 10, 0], ambient: [0, 1, 18, 1] },
34
- { umbra: [0, 7, 8, -4], penumbra: [0, 12, 17, 2], ambient: [0, 5, 22, 4] },
35
- { umbra: [0, 9, 11, -5], penumbra: [0, 18, 28, 2], ambient: [0, 7, 34, 6] },
36
- { umbra: [0, 11, 15, -7], penumbra: [0, 24, 38, 3], ambient: [0, 9, 46, 8] }
37
- ],
38
- space: [0, 4, 8, 12, 20, 32, 52, 84, 136, 220],
39
- input: {
40
- border: {
41
- width: 1
42
- },
43
- checkbox: {
44
- size: 17,
45
- focusRing: { offset: -1, width: 1 }
46
- },
47
- radio: {
48
- size: 17,
49
- markSize: 9,
50
- focusRing: { offset: -1, width: 1 }
51
- },
52
- switch: {
53
- width: 25,
54
- height: 17,
55
- padding: 5,
56
- transitionDurationMs: 150,
57
- transitionTimingFunction: "ease-out",
58
- focusRing: { offset: 1, width: 1 }
59
- },
60
- select: {
61
- focusRing: { offset: -1, width: 1 }
62
- },
63
- text: {
64
- focusRing: { offset: -1, width: 1 }
65
- }
66
- },
67
- style: {
68
- button: {
69
- root: {
70
- transition: "background-color 100ms,border-color 100ms,color 100ms"
71
- }
72
- }
73
- // card: {
74
- // root: {
75
- // transition: 'background-color 100ms,border-color 100ms,color 100ms',
76
- // },
77
- // },
78
- }
79
- }, cache$4 = /* @__PURE__ */ new WeakMap();
80
- function themeColor_v0_v2(color_v0) {
81
- var _a, _b, _c;
82
- const cached_v2 = cache$4.get(color_v0);
83
- if (cached_v2)
84
- return cached_v2;
85
- const base = stateThemeColor_v0_v2(color_v0, color_v0.card.enabled), color_v2 = {
86
- _blend: color_v0._blend || (color_v0.dark ? "screen" : "multiply"),
87
- _dark: color_v0.dark,
88
- accent: base.accent,
89
- avatar: base.avatar,
90
- backdrop: color_v0.base.shadow.ambient,
91
- badge: base.badge,
92
- bg: color_v0.base.bg,
93
- border: color_v0.base.border,
94
- button: {
95
- default: stateTonesThemeColor_v0_v2(color_v0, color_v0.button.default),
96
- ghost: stateTonesThemeColor_v0_v2(color_v0, color_v0.button.ghost),
97
- bleed: stateTonesThemeColor_v0_v2(color_v0, color_v0.button.bleed)
98
- },
99
- code: base.code,
100
- fg: color_v0.base.fg,
101
- focusRing: color_v0.base.focusRing,
102
- icon: base.muted.fg,
103
- input: {
104
- default: inputStatesThemeColor_v0_v2(color_v0.input.default),
105
- invalid: inputStatesThemeColor_v0_v2(color_v0.input.invalid)
106
- },
107
- kbd: base.kbd,
108
- link: base.link,
109
- muted: {
110
- ...base.muted,
111
- bg: ((_a = color_v0.selectable) == null ? void 0 : _a.default.enabled.bg2) || color_v0.base.bg
112
- },
113
- selectable: stateTonesThemeColor_v0_v2(color_v0, color_v0.selectable || color_v0.muted),
114
- shadow: color_v0.base.shadow,
115
- skeleton: {
116
- from: ((_b = color_v0.skeleton) == null ? void 0 : _b.from) || color_v0.base.border,
117
- to: ((_c = color_v0.skeleton) == null ? void 0 : _c.to) || color_v0.base.border
118
- },
119
- syntax: color_v0.syntax
120
- };
121
- return cache$4.set(color_v0, color_v2), color_v2;
122
- }
123
- function stateTonesThemeColor_v0_v2(v0, t) {
124
- return {
125
- default: {
126
- enabled: stateThemeColor_v0_v2(v0, t.default.enabled),
127
- hovered: stateThemeColor_v0_v2(v0, t.default.hovered),
128
- pressed: stateThemeColor_v0_v2(v0, t.default.pressed),
129
- selected: stateThemeColor_v0_v2(v0, t.default.selected),
130
- disabled: stateThemeColor_v0_v2(v0, t.default.disabled)
131
- },
132
- primary: {
133
- enabled: stateThemeColor_v0_v2(v0, t.primary.enabled),
134
- hovered: stateThemeColor_v0_v2(v0, t.primary.hovered),
135
- pressed: stateThemeColor_v0_v2(v0, t.primary.pressed),
136
- selected: stateThemeColor_v0_v2(v0, t.primary.selected),
137
- disabled: stateThemeColor_v0_v2(v0, t.primary.disabled)
138
- },
139
- positive: {
140
- enabled: stateThemeColor_v0_v2(v0, t.positive.enabled),
141
- hovered: stateThemeColor_v0_v2(v0, t.positive.hovered),
142
- pressed: stateThemeColor_v0_v2(v0, t.positive.pressed),
143
- selected: stateThemeColor_v0_v2(v0, t.positive.selected),
144
- disabled: stateThemeColor_v0_v2(v0, t.positive.disabled)
145
- },
146
- caution: {
147
- enabled: stateThemeColor_v0_v2(v0, t.caution.enabled),
148
- hovered: stateThemeColor_v0_v2(v0, t.caution.hovered),
149
- pressed: stateThemeColor_v0_v2(v0, t.caution.pressed),
150
- selected: stateThemeColor_v0_v2(v0, t.caution.selected),
151
- disabled: stateThemeColor_v0_v2(v0, t.caution.disabled)
152
- },
153
- critical: {
154
- enabled: stateThemeColor_v0_v2(v0, t.critical.enabled),
155
- hovered: stateThemeColor_v0_v2(v0, t.critical.hovered),
156
- pressed: stateThemeColor_v0_v2(v0, t.critical.pressed),
157
- selected: stateThemeColor_v0_v2(v0, t.critical.selected),
158
- disabled: stateThemeColor_v0_v2(v0, t.critical.disabled)
159
- }
160
- };
161
- }
162
- function stateThemeColor_v0_v2(v0, state) {
163
- var _a, _b;
164
- return {
165
- ...state,
166
- avatar: {
167
- gray: {
168
- bg: v0.spot.gray,
169
- fg: v0.base.bg
170
- },
171
- blue: {
172
- bg: v0.spot.blue,
173
- fg: v0.base.bg
174
- },
175
- purple: {
176
- bg: v0.spot.purple,
177
- fg: v0.base.bg
178
- },
179
- magenta: {
180
- bg: v0.spot.magenta,
181
- fg: v0.base.bg
182
- },
183
- red: {
184
- bg: v0.spot.red,
185
- fg: v0.base.bg
186
- },
187
- orange: {
188
- bg: v0.spot.orange,
189
- fg: v0.base.bg
190
- },
191
- yellow: {
192
- bg: v0.spot.yellow,
193
- fg: v0.base.bg
194
- },
195
- green: {
196
- bg: v0.spot.green,
197
- fg: v0.base.bg
198
- },
199
- cyan: {
200
- bg: v0.spot.cyan,
201
- fg: v0.base.bg
202
- }
203
- },
204
- badge: {
205
- default: {
206
- bg: v0.muted.default.enabled.bg,
207
- fg: v0.muted.default.enabled.fg,
208
- dot: v0.muted.default.enabled.muted.fg,
209
- icon: v0.muted.default.enabled.muted.fg
210
- },
211
- primary: {
212
- bg: v0.muted.primary.enabled.bg,
213
- fg: v0.muted.primary.enabled.fg,
214
- dot: v0.muted.primary.enabled.muted.fg,
215
- icon: v0.muted.primary.enabled.muted.fg
216
- },
217
- positive: {
218
- bg: v0.muted.positive.enabled.bg,
219
- fg: v0.muted.positive.enabled.fg,
220
- dot: v0.muted.positive.enabled.muted.fg,
221
- icon: v0.muted.positive.enabled.muted.fg
222
- },
223
- caution: {
224
- bg: v0.muted.caution.enabled.bg,
225
- fg: v0.muted.caution.enabled.fg,
226
- dot: v0.muted.caution.enabled.muted.fg,
227
- icon: v0.muted.caution.enabled.muted.fg
228
- },
229
- critical: {
230
- bg: v0.muted.critical.enabled.bg,
231
- fg: v0.muted.critical.enabled.fg,
232
- dot: v0.muted.critical.enabled.muted.fg,
233
- icon: v0.muted.critical.enabled.muted.fg
234
- }
235
- },
236
- kbd: {
237
- bg: v0.muted.default.enabled.bg,
238
- fg: v0.muted.default.enabled.fg,
239
- border: v0.muted.default.enabled.border
240
- },
241
- muted: {
242
- ...v0.muted.default.enabled.muted,
243
- bg: state.bg2 || state.bg
244
- },
245
- skeleton: {
246
- from: ((_a = state.skeleton) == null ? void 0 : _a.from) || state.border,
247
- to: ((_b = state.skeleton) == null ? void 0 : _b.to) || state.border
248
- }
249
- };
250
- }
251
- function inputStatesThemeColor_v0_v2(states) {
252
- return {
253
- enabled: inputStateThemeColor_v0_v2(states.enabled),
254
- disabled: inputStateThemeColor_v0_v2(states.disabled),
255
- readOnly: inputStateThemeColor_v0_v2(states.readOnly),
256
- hovered: inputStateThemeColor_v0_v2(states.hovered)
257
- };
258
- }
259
- function inputStateThemeColor_v0_v2(state) {
260
- return {
261
- bg: state.bg,
262
- border: state.border,
263
- fg: state.fg,
264
- muted: {
265
- bg: state.bg2
266
- },
267
- placeholder: state.placeholder
268
- };
269
- }
270
- const cache$3 = /* @__PURE__ */ new WeakMap();
271
- function getTheme_v2(theme) {
272
- var _a, _b;
273
- if ((_a = theme.sanity.v2) != null && _a._resolved)
274
- return theme.sanity.v2;
275
- const cached_v2 = cache$3.get(theme);
276
- if (cached_v2)
277
- return cached_v2;
278
- const v2 = {
279
- _version: 2,
280
- _resolved: !0,
281
- avatar: {
282
- ...defaultThemeConfig.avatar,
283
- ...theme.sanity.avatar
284
- },
285
- button: {
286
- ...defaultThemeConfig.button,
287
- ...theme.sanity.button
288
- },
289
- card: defaultThemeConfig.card,
290
- color: themeColor_v0_v2(theme.sanity.color),
291
- container: theme.sanity.container,
292
- font: theme.sanity.fonts,
293
- input: {
294
- ...defaultThemeConfig.input,
295
- ...theme.sanity.input,
296
- checkbox: {
297
- ...defaultThemeConfig.input.checkbox,
298
- ...theme.sanity.input.checkbox
299
- },
300
- radio: {
301
- ...defaultThemeConfig.input.radio,
302
- ...theme.sanity.input.radio
303
- },
304
- switch: {
305
- ...defaultThemeConfig.input.switch,
306
- ...theme.sanity.input.switch
307
- }
308
- },
309
- layer: (_b = theme.sanity.layer) != null ? _b : defaultThemeConfig.layer,
310
- media: theme.sanity.media,
311
- radius: theme.sanity.radius,
312
- shadow: theme.sanity.shadows,
313
- space: theme.sanity.space,
314
- style: theme.sanity.styles
315
- };
316
- return cache$3.set(theme, v2), v2;
317
- }
318
- function is_v2(themeProp) {
319
- return themeProp._version === 2;
320
- }
321
- const cache$2 = /* @__PURE__ */ new WeakMap();
322
- function v0_v2(v0) {
323
- if (v0.v2)
324
- return v0.v2;
325
- const cached_v2 = cache$2.get(v0);
326
- if (cached_v2)
327
- return cached_v2;
328
- const {
329
- avatar,
330
- button,
331
- color,
332
- container,
333
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
334
- focusRing: _unused_focusRing,
335
- fonts: font,
336
- input,
337
- layer,
338
- media,
339
- radius,
340
- shadows: shadow,
341
- space,
342
- styles: style
343
- } = v0, v2 = {
344
- _version: 2,
345
- avatar: {
346
- ...defaultThemeConfig.avatar,
347
- ...avatar
348
- },
349
- button: {
350
- ...defaultThemeConfig.button,
351
- ...button
352
- },
353
- card: defaultThemeConfig.card,
354
- color: {
355
- light: {
356
- transparent: themeColor_v0_v2(color.light.transparent),
357
- default: themeColor_v0_v2(color.light.default),
358
- primary: themeColor_v0_v2(color.light.primary),
359
- positive: themeColor_v0_v2(color.light.positive),
360
- caution: themeColor_v0_v2(color.light.caution),
361
- critical: themeColor_v0_v2(color.light.critical)
362
- },
363
- dark: {
364
- transparent: themeColor_v0_v2(color.dark.transparent),
365
- default: themeColor_v0_v2(color.dark.default),
366
- primary: themeColor_v0_v2(color.dark.primary),
367
- positive: themeColor_v0_v2(color.dark.positive),
368
- caution: themeColor_v0_v2(color.dark.caution),
369
- critical: themeColor_v0_v2(color.dark.critical)
370
- }
371
- },
372
- container,
373
- font,
374
- input: {
375
- ...defaultThemeConfig.input,
376
- ...input,
377
- checkbox: {
378
- ...defaultThemeConfig.input.checkbox,
379
- ...input.checkbox
380
- },
381
- radio: {
382
- ...defaultThemeConfig.input.radio,
383
- ...input.radio
384
- },
385
- switch: {
386
- ...defaultThemeConfig.input.switch,
387
- ...input.switch
388
- }
389
- },
390
- layer: layer != null ? layer : defaultThemeConfig.layer,
391
- media,
392
- radius,
393
- shadow,
394
- space,
395
- style
396
- };
397
- return cache$2.set(v0, v2), v2;
398
- }
399
- const cache$1 = /* @__PURE__ */ new WeakMap();
400
- function v2_v0(v2) {
401
- const cachedTheme = cache$1.get(v2);
402
- if (cachedTheme)
403
- return cachedTheme;
404
- const {
405
- avatar,
406
- button,
407
- color,
408
- container,
409
- font: fonts,
410
- input,
411
- media,
412
- radius,
413
- shadow: shadows,
414
- space,
415
- style: styles
416
- } = v2;
417
- return {
418
- _version: 0,
419
- avatar,
420
- button,
421
- container,
422
- color: {
423
- light: {
424
- transparent: themeColor_v2_v0(color.light.transparent),
425
- default: themeColor_v2_v0(color.light.default),
426
- primary: themeColor_v2_v0(color.light.primary),
427
- positive: themeColor_v2_v0(color.light.positive),
428
- caution: themeColor_v2_v0(color.light.caution),
429
- critical: themeColor_v2_v0(color.light.critical)
430
- },
431
- dark: {
432
- transparent: themeColor_v2_v0(color.dark.transparent),
433
- default: themeColor_v2_v0(color.dark.default),
434
- primary: themeColor_v2_v0(color.dark.primary),
435
- positive: themeColor_v2_v0(color.dark.positive),
436
- caution: themeColor_v2_v0(color.dark.caution),
437
- critical: themeColor_v2_v0(color.dark.critical)
438
- }
439
- },
440
- focusRing: input.text.focusRing,
441
- fonts,
442
- input,
443
- media,
444
- radius,
445
- shadows,
446
- space,
447
- styles,
448
- v2
449
- };
450
- }
451
- function themeColor_v2_v0(color_v2) {
452
- return {
453
- base: {
454
- bg: color_v2.bg,
455
- fg: color_v2.fg,
456
- border: color_v2.border,
457
- focusRing: color_v2.focusRing,
458
- shadow: color_v2.shadow
459
- },
460
- button: color_v2.button,
461
- card: color_v2.selectable.default,
462
- dark: color_v2._dark,
463
- input: {
464
- default: inputStatesThemeColor_v2_v0(color_v2.input.default),
465
- invalid: inputStatesThemeColor_v2_v0(color_v2.input.invalid)
466
- },
467
- muted: {
468
- ...color_v2.button.ghost,
469
- transparent: color_v2.button.ghost.default
470
- },
471
- solid: {
472
- ...color_v2.button.default,
473
- transparent: color_v2.button.default.default
474
- },
475
- selectable: color_v2.selectable,
476
- spot: {
477
- gray: color_v2.avatar.gray.bg,
478
- blue: color_v2.avatar.blue.bg,
479
- purple: color_v2.avatar.purple.bg,
480
- magenta: color_v2.avatar.magenta.bg,
481
- red: color_v2.avatar.red.bg,
482
- orange: color_v2.avatar.orange.bg,
483
- yellow: color_v2.avatar.yellow.bg,
484
- green: color_v2.avatar.green.bg,
485
- cyan: color_v2.avatar.cyan.bg
486
- },
487
- syntax: color_v2.syntax
488
- };
489
- }
490
- function inputStatesThemeColor_v2_v0(t) {
491
- return {
492
- enabled: inputStateThemeColor_v2_v0(t.enabled),
493
- disabled: inputStateThemeColor_v2_v0(t.disabled),
494
- readOnly: inputStateThemeColor_v2_v0(t.readOnly),
495
- hovered: inputStateThemeColor_v2_v0(t.hovered)
496
- };
497
- }
498
- function inputStateThemeColor_v2_v0(t) {
499
- return {
500
- bg: t.bg,
501
- bg2: t.muted.bg,
502
- border: t.border,
503
- fg: t.fg,
504
- placeholder: t.placeholder
505
- };
506
- }
507
- const cache = /* @__PURE__ */ new Map();
508
- function getScopedTheme(themeProp, scheme, tone) {
509
- const cachedTheme = _getCachedTheme(themeProp, scheme, tone);
510
- if (cachedTheme)
511
- return cachedTheme;
512
- const v0 = is_v2(themeProp) ? v2_v0(themeProp) : themeProp, v2 = is_v2(themeProp) ? themeProp : v0_v2(themeProp), colorScheme_v0 = v0.color[scheme] || v0.color.light, color_v0 = colorScheme_v0[tone] || colorScheme_v0.default, layer_v0 = v0.layer || defaultThemeConfig.layer, colorScheme_v2 = v2.color[scheme] || v2.color.light, color_v2 = colorScheme_v2[tone] || colorScheme_v2.default, layer_v2 = v2.layer || defaultThemeConfig.layer, theme = {
513
- sanity: {
514
- ...v0,
515
- color: color_v0,
516
- layer: layer_v0,
517
- v2: {
518
- ...v2,
519
- _resolved: !0,
520
- color: color_v2,
521
- layer: layer_v2
522
- }
523
- }
524
- };
525
- return _setCachedTheme(themeProp, scheme, tone, theme), theme;
526
- }
527
- function _getCachedTheme(rootTheme, scheme, tone) {
528
- const schemeCache = cache.get(scheme);
529
- if (!schemeCache)
530
- return;
531
- const toneCache = schemeCache.get(tone);
532
- if (toneCache)
533
- return toneCache.get(rootTheme);
534
- }
535
- function _setCachedTheme(rootTheme, scheme, tone, theme) {
536
- cache.has(scheme) || cache.set(scheme, /* @__PURE__ */ new Map());
537
- const schemeCache = cache.get(scheme);
538
- schemeCache.has(tone) || schemeCache.set(tone, /* @__PURE__ */ new WeakMap()), schemeCache.get(tone).set(rootTheme, theme);
539
- }
540
- export {
541
- getTheme_v2 as a,
542
- v0_v2 as b,
543
- defaultThemeConfig as d,
544
- getScopedTheme as g,
545
- is_v2 as i,
546
- v2_v0 as v
547
- };
548
- //# sourceMappingURL=getScopedTheme.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getScopedTheme.mjs","sources":["../../src/theme/defaults/config.ts","../../src/theme/versioning/themeColor_v0_v2.ts","../../src/theme/versioning/getTheme_v2.ts","../../src/theme/versioning/is_v2.ts","../../src/theme/versioning/v0_v2.ts","../../src/theme/versioning/v2_v0.ts","../../src/theme/getScopedTheme.ts"],"sourcesContent":["import {RootTheme_v2} from '../system'\n\nconst BORDER_WIDTH = 1\nconst OUTLINE_WIDTH = 0.5\n\nexport const defaultThemeConfig: Omit<RootTheme_v2, 'color' | 'font'> = {\n _version: 2,\n avatar: {\n sizes: [\n {distance: -4, size: 19},\n {distance: -4, size: 25},\n {distance: -8, size: 33},\n {distance: -12, size: 49},\n ],\n focusRing: {offset: 1, width: 1},\n },\n button: {\n textWeight: 'medium',\n border: {width: BORDER_WIDTH},\n focusRing: {offset: -1, width: 1},\n },\n card: {\n border: {width: BORDER_WIDTH},\n focusRing: {offset: -1, width: 1},\n shadow: {outline: OUTLINE_WIDTH},\n },\n container: [320, 640, 960, 1280, 1600, 1920],\n media: [360, 600, 900, 1200, 1800, 2400],\n layer: {\n dialog: {zOffset: 600},\n popover: {zOffset: 400},\n tooltip: {zOffset: 200},\n },\n radius: [0, 1, 3, 6, 9, 12, 21],\n shadow: [\n null,\n {umbra: [0, 0, 0, 0], penumbra: [0, 0, 0, 0], ambient: [0, 0, 0, 0]},\n {umbra: [0, 3, 5, -2], penumbra: [0, 6, 10, 0], ambient: [0, 1, 18, 1]},\n {umbra: [0, 7, 8, -4], penumbra: [0, 12, 17, 2], ambient: [0, 5, 22, 4]},\n {umbra: [0, 9, 11, -5], penumbra: [0, 18, 28, 2], ambient: [0, 7, 34, 6]},\n {umbra: [0, 11, 15, -7], penumbra: [0, 24, 38, 3], ambient: [0, 9, 46, 8]},\n ],\n space: [0, 4, 8, 12, 20, 32, 52, 84, 136, 220],\n input: {\n border: {\n width: BORDER_WIDTH,\n },\n checkbox: {\n size: 17,\n focusRing: {offset: -1, width: 1},\n },\n radio: {\n size: 17,\n markSize: 9,\n focusRing: {offset: -1, width: 1},\n },\n switch: {\n width: 25,\n height: 17,\n padding: 5,\n transitionDurationMs: 150,\n transitionTimingFunction: 'ease-out',\n focusRing: {offset: 1, width: 1},\n },\n select: {\n focusRing: {offset: -1, width: 1},\n },\n text: {\n focusRing: {offset: -1, width: 1},\n },\n },\n style: {\n button: {\n root: {\n transition: 'background-color 100ms,border-color 100ms,color 100ms',\n },\n },\n // card: {\n // root: {\n // transition: 'background-color 100ms,border-color 100ms,color 100ms',\n // },\n // },\n },\n}\n","import {\n ThemeColor,\n ThemeColorGenericState,\n ThemeColorMuted,\n ThemeColorSelectable_v2,\n ThemeColorState_v2,\n ThemeColorCard_v2,\n ThemeColorInputStates,\n ThemeColorInputMode_v2,\n ThemeColorInputState,\n ThemeColorInputState_v2,\n} from '../system'\n\nconst cache = new WeakMap<ThemeColor, ThemeColorCard_v2>()\n\n/** @internal */\nexport function themeColor_v0_v2(color_v0: ThemeColor): ThemeColorCard_v2 {\n const cached_v2 = cache.get(color_v0)\n\n if (cached_v2) return cached_v2\n\n const base = stateThemeColor_v0_v2(color_v0, color_v0.card.enabled)\n\n const color_v2: ThemeColorCard_v2 = {\n _blend: color_v0._blend || (color_v0.dark ? 'screen' : 'multiply'),\n _dark: color_v0.dark,\n accent: base.accent,\n avatar: base.avatar,\n backdrop: color_v0.base.shadow.ambient,\n badge: base.badge,\n bg: color_v0.base.bg,\n border: color_v0.base.border,\n button: {\n default: stateTonesThemeColor_v0_v2(color_v0, color_v0.button.default),\n ghost: stateTonesThemeColor_v0_v2(color_v0, color_v0.button.ghost),\n bleed: stateTonesThemeColor_v0_v2(color_v0, color_v0.button.bleed),\n },\n code: base.code,\n fg: color_v0.base.fg,\n focusRing: color_v0.base.focusRing,\n icon: base.muted.fg,\n input: {\n default: inputStatesThemeColor_v0_v2(color_v0.input.default),\n invalid: inputStatesThemeColor_v0_v2(color_v0.input.invalid),\n },\n kbd: base.kbd,\n link: base.link,\n muted: {\n ...base.muted,\n bg: color_v0.selectable?.default.enabled.bg2 || color_v0.base.bg,\n },\n selectable: stateTonesThemeColor_v0_v2(color_v0, color_v0.selectable || color_v0.muted),\n shadow: color_v0.base.shadow,\n skeleton: {\n from: color_v0.skeleton?.from || color_v0.base.border,\n to: color_v0.skeleton?.to || color_v0.base.border,\n },\n syntax: color_v0.syntax,\n }\n\n cache.set(color_v0, color_v2)\n\n return color_v2\n}\n\nfunction stateTonesThemeColor_v0_v2(\n v0: ThemeColor,\n t: Omit<ThemeColorMuted, 'transparent'>,\n): ThemeColorSelectable_v2 {\n return {\n default: {\n enabled: stateThemeColor_v0_v2(v0, t.default.enabled),\n hovered: stateThemeColor_v0_v2(v0, t.default.hovered),\n pressed: stateThemeColor_v0_v2(v0, t.default.pressed),\n selected: stateThemeColor_v0_v2(v0, t.default.selected),\n disabled: stateThemeColor_v0_v2(v0, t.default.disabled),\n },\n primary: {\n enabled: stateThemeColor_v0_v2(v0, t.primary.enabled),\n hovered: stateThemeColor_v0_v2(v0, t.primary.hovered),\n pressed: stateThemeColor_v0_v2(v0, t.primary.pressed),\n selected: stateThemeColor_v0_v2(v0, t.primary.selected),\n disabled: stateThemeColor_v0_v2(v0, t.primary.disabled),\n },\n positive: {\n enabled: stateThemeColor_v0_v2(v0, t.positive.enabled),\n hovered: stateThemeColor_v0_v2(v0, t.positive.hovered),\n pressed: stateThemeColor_v0_v2(v0, t.positive.pressed),\n selected: stateThemeColor_v0_v2(v0, t.positive.selected),\n disabled: stateThemeColor_v0_v2(v0, t.positive.disabled),\n },\n caution: {\n enabled: stateThemeColor_v0_v2(v0, t.caution.enabled),\n hovered: stateThemeColor_v0_v2(v0, t.caution.hovered),\n pressed: stateThemeColor_v0_v2(v0, t.caution.pressed),\n selected: stateThemeColor_v0_v2(v0, t.caution.selected),\n disabled: stateThemeColor_v0_v2(v0, t.caution.disabled),\n },\n critical: {\n enabled: stateThemeColor_v0_v2(v0, t.critical.enabled),\n hovered: stateThemeColor_v0_v2(v0, t.critical.hovered),\n pressed: stateThemeColor_v0_v2(v0, t.critical.pressed),\n selected: stateThemeColor_v0_v2(v0, t.critical.selected),\n disabled: stateThemeColor_v0_v2(v0, t.critical.disabled),\n },\n }\n}\n\nfunction stateThemeColor_v0_v2(v0: ThemeColor, state: ThemeColorGenericState): ThemeColorState_v2 {\n return {\n ...state,\n avatar: {\n gray: {\n bg: v0.spot.gray,\n fg: v0.base.bg,\n },\n blue: {\n bg: v0.spot.blue,\n fg: v0.base.bg,\n },\n purple: {\n bg: v0.spot.purple,\n fg: v0.base.bg,\n },\n magenta: {\n bg: v0.spot.magenta,\n fg: v0.base.bg,\n },\n red: {\n bg: v0.spot.red,\n fg: v0.base.bg,\n },\n orange: {\n bg: v0.spot.orange,\n fg: v0.base.bg,\n },\n yellow: {\n bg: v0.spot.yellow,\n fg: v0.base.bg,\n },\n green: {\n bg: v0.spot.green,\n fg: v0.base.bg,\n },\n cyan: {\n bg: v0.spot.cyan,\n fg: v0.base.bg,\n },\n },\n badge: {\n default: {\n bg: v0.muted.default.enabled.bg,\n fg: v0.muted.default.enabled.fg,\n dot: v0.muted.default.enabled.muted.fg,\n icon: v0.muted.default.enabled.muted.fg,\n },\n primary: {\n bg: v0.muted.primary.enabled.bg,\n fg: v0.muted.primary.enabled.fg,\n dot: v0.muted.primary.enabled.muted.fg,\n icon: v0.muted.primary.enabled.muted.fg,\n },\n positive: {\n bg: v0.muted.positive.enabled.bg,\n fg: v0.muted.positive.enabled.fg,\n dot: v0.muted.positive.enabled.muted.fg,\n icon: v0.muted.positive.enabled.muted.fg,\n },\n caution: {\n bg: v0.muted.caution.enabled.bg,\n fg: v0.muted.caution.enabled.fg,\n dot: v0.muted.caution.enabled.muted.fg,\n icon: v0.muted.caution.enabled.muted.fg,\n },\n critical: {\n bg: v0.muted.critical.enabled.bg,\n fg: v0.muted.critical.enabled.fg,\n dot: v0.muted.critical.enabled.muted.fg,\n icon: v0.muted.critical.enabled.muted.fg,\n },\n },\n kbd: {\n bg: v0.muted.default.enabled.bg,\n fg: v0.muted.default.enabled.fg,\n border: v0.muted.default.enabled.border,\n },\n muted: {\n ...v0.muted.default.enabled.muted,\n bg: state.bg2 || state.bg,\n },\n skeleton: {\n from: state.skeleton?.from || state.border,\n to: state.skeleton?.to || state.border,\n },\n }\n}\n\nfunction inputStatesThemeColor_v0_v2(states: ThemeColorInputStates): ThemeColorInputMode_v2 {\n return {\n enabled: inputStateThemeColor_v0_v2(states.enabled),\n disabled: inputStateThemeColor_v0_v2(states.disabled),\n readOnly: inputStateThemeColor_v0_v2(states.readOnly),\n hovered: inputStateThemeColor_v0_v2(states.hovered),\n }\n}\n\nfunction inputStateThemeColor_v0_v2(state: ThemeColorInputState): ThemeColorInputState_v2 {\n return {\n bg: state.bg,\n border: state.border,\n fg: state.fg,\n muted: {\n bg: state.bg2,\n },\n placeholder: state.placeholder,\n }\n}\n","import {defaultThemeConfig} from '../defaults/config'\nimport {Theme, Theme_v2} from '../system'\nimport {themeColor_v0_v2} from './themeColor_v0_v2'\n\nconst cache = new WeakMap<Theme, Theme_v2>()\n\n/** @public */\nexport function getTheme_v2(theme: Theme): Theme_v2 {\n if (theme.sanity.v2?._resolved) return theme.sanity.v2\n\n const cached_v2 = cache.get(theme)\n\n if (cached_v2) return cached_v2\n\n const v2: Theme_v2 = {\n _version: 2,\n _resolved: true,\n avatar: {\n ...defaultThemeConfig.avatar,\n ...theme.sanity.avatar,\n },\n button: {\n ...defaultThemeConfig.button,\n ...theme.sanity.button,\n },\n card: defaultThemeConfig.card,\n color: themeColor_v0_v2(theme.sanity.color),\n container: theme.sanity.container,\n font: theme.sanity.fonts,\n input: {\n ...defaultThemeConfig.input,\n ...theme.sanity.input,\n checkbox: {\n ...defaultThemeConfig.input.checkbox,\n ...theme.sanity.input.checkbox,\n },\n radio: {\n ...defaultThemeConfig.input.radio,\n ...theme.sanity.input.radio,\n },\n switch: {\n ...defaultThemeConfig.input.switch,\n ...theme.sanity.input.switch,\n },\n },\n layer: theme.sanity.layer ?? defaultThemeConfig.layer,\n media: theme.sanity.media,\n radius: theme.sanity.radius,\n shadow: theme.sanity.shadows,\n space: theme.sanity.space,\n style: theme.sanity.styles,\n }\n\n cache.set(theme, v2)\n\n return v2\n}\n","import {RootTheme, RootTheme_v2} from '../system'\n\n/** @internal */\nexport function is_v2(themeProp: RootTheme | RootTheme_v2): themeProp is RootTheme_v2 {\n return themeProp._version === 2\n}\n","import {defaultThemeConfig} from '../defaults/config'\nimport {RootTheme, RootTheme_v2} from '../system'\nimport {themeColor_v0_v2} from './themeColor_v0_v2'\n\nconst cache = new WeakMap<RootTheme, RootTheme_v2>()\n\n/** @internal */\nexport function v0_v2(v0: RootTheme): RootTheme_v2 {\n if (v0.v2) return v0.v2\n\n const cached_v2 = cache.get(v0)\n\n if (cached_v2) return cached_v2\n\n const {\n avatar,\n button,\n color,\n container,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n focusRing: _unused_focusRing,\n fonts: font,\n input,\n layer,\n media,\n radius,\n shadows: shadow,\n space,\n styles: style,\n } = v0\n\n const v2: RootTheme_v2 = {\n _version: 2,\n avatar: {\n ...defaultThemeConfig.avatar,\n ...avatar,\n },\n button: {\n ...defaultThemeConfig.button,\n ...button,\n },\n card: defaultThemeConfig.card,\n color: {\n light: {\n transparent: themeColor_v0_v2(color.light.transparent),\n default: themeColor_v0_v2(color.light.default),\n primary: themeColor_v0_v2(color.light.primary),\n positive: themeColor_v0_v2(color.light.positive),\n caution: themeColor_v0_v2(color.light.caution),\n critical: themeColor_v0_v2(color.light.critical),\n },\n dark: {\n transparent: themeColor_v0_v2(color.dark.transparent),\n default: themeColor_v0_v2(color.dark.default),\n primary: themeColor_v0_v2(color.dark.primary),\n positive: themeColor_v0_v2(color.dark.positive),\n caution: themeColor_v0_v2(color.dark.caution),\n critical: themeColor_v0_v2(color.dark.critical),\n },\n },\n container,\n font,\n input: {\n ...defaultThemeConfig.input,\n ...input,\n checkbox: {\n ...defaultThemeConfig.input.checkbox,\n ...input.checkbox,\n },\n radio: {\n ...defaultThemeConfig.input.radio,\n ...input.radio,\n },\n switch: {\n ...defaultThemeConfig.input.switch,\n ...input.switch,\n },\n },\n layer: layer ?? defaultThemeConfig.layer,\n media,\n radius,\n shadow,\n space,\n style,\n }\n\n cache.set(v0, v2)\n\n return v2\n}\n","import {\n RootTheme,\n RootTheme_v2,\n ThemeColor,\n ThemeColorCard_v2,\n ThemeColorInputMode_v2,\n ThemeColorInputState,\n ThemeColorInputState_v2,\n ThemeColorInputStates,\n} from '../system'\n\nconst cache = new WeakMap<RootTheme_v2, RootTheme>()\n\n/** @internal */\nexport function v2_v0(v2: RootTheme_v2): RootTheme {\n const cachedTheme = cache.get(v2)\n\n if (cachedTheme) return cachedTheme\n\n const {\n avatar,\n button,\n color,\n container,\n font: fonts,\n input,\n media,\n radius,\n shadow: shadows,\n space,\n style: styles,\n } = v2\n\n return {\n _version: 0,\n avatar,\n button,\n container,\n color: {\n light: {\n transparent: themeColor_v2_v0(color.light.transparent),\n default: themeColor_v2_v0(color.light.default),\n primary: themeColor_v2_v0(color.light.primary),\n positive: themeColor_v2_v0(color.light.positive),\n caution: themeColor_v2_v0(color.light.caution),\n critical: themeColor_v2_v0(color.light.critical),\n },\n dark: {\n transparent: themeColor_v2_v0(color.dark.transparent),\n default: themeColor_v2_v0(color.dark.default),\n primary: themeColor_v2_v0(color.dark.primary),\n positive: themeColor_v2_v0(color.dark.positive),\n caution: themeColor_v2_v0(color.dark.caution),\n critical: themeColor_v2_v0(color.dark.critical),\n },\n },\n focusRing: input.text.focusRing,\n fonts,\n input,\n media,\n radius,\n shadows,\n space,\n styles,\n\n v2,\n }\n}\n\nfunction themeColor_v2_v0(color_v2: ThemeColorCard_v2): ThemeColor {\n return {\n base: {\n bg: color_v2.bg,\n fg: color_v2.fg,\n border: color_v2.border,\n focusRing: color_v2.focusRing,\n shadow: color_v2.shadow,\n },\n button: color_v2.button,\n card: color_v2.selectable.default,\n dark: color_v2._dark,\n input: {\n default: inputStatesThemeColor_v2_v0(color_v2.input.default),\n invalid: inputStatesThemeColor_v2_v0(color_v2.input.invalid),\n },\n muted: {\n ...color_v2.button.ghost,\n transparent: color_v2.button.ghost.default,\n },\n solid: {\n ...color_v2.button.default,\n transparent: color_v2.button.default.default,\n },\n selectable: color_v2.selectable,\n spot: {\n gray: color_v2.avatar.gray.bg,\n blue: color_v2.avatar.blue.bg,\n purple: color_v2.avatar.purple.bg,\n magenta: color_v2.avatar.magenta.bg,\n red: color_v2.avatar.red.bg,\n orange: color_v2.avatar.orange.bg,\n yellow: color_v2.avatar.yellow.bg,\n green: color_v2.avatar.green.bg,\n cyan: color_v2.avatar.cyan.bg,\n },\n syntax: color_v2.syntax,\n }\n}\n\nfunction inputStatesThemeColor_v2_v0(t: ThemeColorInputMode_v2): ThemeColorInputStates {\n return {\n enabled: inputStateThemeColor_v2_v0(t.enabled),\n disabled: inputStateThemeColor_v2_v0(t.disabled),\n readOnly: inputStateThemeColor_v2_v0(t.readOnly),\n hovered: inputStateThemeColor_v2_v0(t.hovered),\n }\n}\n\nfunction inputStateThemeColor_v2_v0(t: ThemeColorInputState_v2): ThemeColorInputState {\n return {\n bg: t.bg,\n bg2: t.muted.bg,\n border: t.border,\n fg: t.fg,\n placeholder: t.placeholder,\n }\n}\n","import {defaultThemeConfig} from './defaults/config'\nimport {RootTheme, RootTheme_v2, Theme, ThemeColorCardToneKey, ThemeColorSchemeKey} from './system'\nimport {is_v2, v0_v2, v2_v0} from './versioning'\n\n// cache[scheme][tone][rootTheme] = theme\nconst cache = new Map<\n ThemeColorSchemeKey,\n Map<ThemeColorCardToneKey, WeakMap<RootTheme | RootTheme_v2, Theme>>\n>()\n\n/** @internal */\nexport function getScopedTheme(\n themeProp: RootTheme | RootTheme_v2,\n scheme: ThemeColorSchemeKey,\n tone: ThemeColorCardToneKey,\n): Theme {\n const cachedTheme = _getCachedTheme(themeProp, scheme, tone)\n\n if (cachedTheme) return cachedTheme\n\n const v0 = is_v2(themeProp) ? v2_v0(themeProp) : themeProp\n const v2 = is_v2(themeProp) ? themeProp : v0_v2(themeProp)\n\n const colorScheme_v0 = v0.color[scheme] || v0.color.light\n const color_v0 = colorScheme_v0[tone] || colorScheme_v0.default\n const layer_v0 = v0.layer || defaultThemeConfig.layer\n\n const colorScheme_v2 = v2.color[scheme] || v2.color.light\n const color_v2 = colorScheme_v2[tone] || colorScheme_v2.default\n const layer_v2 = v2.layer || defaultThemeConfig.layer\n\n const theme: Theme = {\n sanity: {\n ...v0,\n color: color_v0,\n layer: layer_v0,\n v2: {\n ...v2,\n _resolved: true,\n color: color_v2,\n layer: layer_v2,\n },\n },\n }\n\n _setCachedTheme(themeProp, scheme, tone, theme)\n\n return theme\n}\n\nfunction _getCachedTheme(\n rootTheme: RootTheme | RootTheme_v2,\n scheme: ThemeColorSchemeKey,\n tone: ThemeColorCardToneKey,\n) {\n const schemeCache = cache.get(scheme)\n\n if (!schemeCache) return undefined\n\n const toneCache = schemeCache.get(tone)\n\n if (!toneCache) return undefined\n\n return toneCache.get(rootTheme)\n}\n\nfunction _setCachedTheme(\n rootTheme: RootTheme | RootTheme_v2,\n scheme: ThemeColorSchemeKey,\n tone: ThemeColorCardToneKey,\n theme: Theme,\n) {\n if (!cache.has(scheme)) cache.set(scheme, new Map())\n\n const schemeCache = cache.get(scheme)!\n\n if (!schemeCache.has(tone)) schemeCache.set(tone, new WeakMap())\n\n const toneCache = schemeCache.get(tone)!\n\n toneCache.set(rootTheme, theme)\n}\n"],"names":["cache"],"mappings":"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"}