@sanity/ui 3.4.5 → 3.5.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 (45) hide show
  1. package/dist/_chunks/{theme.cjs → getScopedTheme.cjs} +3534 -3597
  2. package/dist/_chunks/getScopedTheme.cjs.map +1 -0
  3. package/dist/_chunks/{theme.js → getScopedTheme.js} +3477 -3525
  4. package/dist/_chunks/getScopedTheme.js.map +1 -0
  5. package/dist/_chunks/{tabList.cjs → portalProvider.cjs} +1561 -1554
  6. package/dist/_chunks/portalProvider.cjs.map +1 -0
  7. package/dist/_chunks/{useTheme.d.ts → portalProvider.d.cts} +307 -647
  8. package/dist/_chunks/portalProvider.d.cts.map +1 -0
  9. package/dist/_chunks/{useTheme.d.cts → portalProvider.d.ts} +307 -647
  10. package/dist/_chunks/portalProvider.d.ts.map +1 -0
  11. package/dist/_chunks/{tabList.js → portalProvider.js} +1359 -1352
  12. package/dist/_chunks/portalProvider.js.map +1 -0
  13. package/dist/_chunks/{theme.d.ts → rgba.d.cts} +178 -453
  14. package/dist/_chunks/rgba.d.cts.map +1 -0
  15. package/dist/_chunks/{theme.d.cts → rgba.d.ts} +178 -453
  16. package/dist/_chunks/rgba.d.ts.map +1 -0
  17. package/dist/_visual-editing.cjs +3 -2
  18. package/dist/_visual-editing.d.cts +1 -1
  19. package/dist/_visual-editing.d.ts +1 -1
  20. package/dist/_visual-editing.js +2 -1
  21. package/dist/index.cjs +2802 -2798
  22. package/dist/index.cjs.map +1 -1
  23. package/dist/index.d.cts +549 -203
  24. package/dist/index.d.cts.map +1 -1
  25. package/dist/index.d.ts +549 -203
  26. package/dist/index.d.ts.map +1 -1
  27. package/dist/index.js +2781 -2777
  28. package/dist/index.js.map +1 -1
  29. package/dist/theme.cjs +53 -2
  30. package/dist/theme.cjs.map +1 -0
  31. package/dist/theme.d.cts +278 -2
  32. package/dist/theme.d.cts.map +1 -0
  33. package/dist/theme.d.ts +278 -2
  34. package/dist/theme.d.ts.map +1 -0
  35. package/dist/theme.js +52 -1
  36. package/dist/theme.js.map +1 -0
  37. package/package.json +1 -1
  38. package/dist/_chunks/tabList.cjs.map +0 -1
  39. package/dist/_chunks/tabList.js.map +0 -1
  40. package/dist/_chunks/theme.cjs.map +0 -1
  41. package/dist/_chunks/theme.d.cts.map +0 -1
  42. package/dist/_chunks/theme.d.ts.map +0 -1
  43. package/dist/_chunks/theme.js.map +0 -1
  44. package/dist/_chunks/useTheme.d.cts.map +0 -1
  45. package/dist/_chunks/useTheme.d.ts.map +0 -1
package/dist/theme.d.ts CHANGED
@@ -1,2 +1,278 @@
1
- import { $ as COLOR_CONFIG_BLEND_KEYS, $n as THEME_COLOR_STATE_TONES, $t as ThemeColorGenericState, A as TokenHueValueNode, An as ThemeColorAvatarHue_v2, At as ThemeColorScheme, B as ThemeColorInputTokens, Bn as ThemeColorInputModeKey, Bt as ThemeColorMutedTone, C as ThemeConfig, Cn as ThemeColorButtonMode_v2, Ct as BaseTheme, D as TokenBlendModeValueNode, Dn as ThemeColorKBD, Dt as Theme_v2, E as TokenBaseKeyNode, En as ThemeColorState_v2, Et as Theme, F as ThemeColorBadgeTokens, Fn as isColorTintKey, Ft as ThemeColorSolidTone, G as isColorConfigBaseTone, Gn as THEME_COLOR_AVATAR_COLORS, Gt as ThemeColorCardState, H as ThemeColorStatesTokens, Hn as ThemeColorSchemeKey, Ht as ThemeColorInputState, I as ThemeColorBadgeToneTokens, In as ThemeColorAvatarColorKey, It as ThemeColorSelectable, J as isColorConfigStateTone, Jn as THEME_COLOR_CARD_TONES, Jt as ThemeColorButtonStates, K as isColorConfigBlendKey, Kn as THEME_COLOR_BLEND_MODES, Kt as ThemeColorButton, L as ThemeColorBaseTokens, Ln as ThemeColorBlendModeKey, Lt as ThemeColorSelectableState, M as TokenValueNode, Mn as isColorBlendModeValue, Mt as ThemeColorSpot, N as ThemeColorAvatarHueTokens, Nn as isColorButtonMode, Nt as ThemeColorSpotKey, O as TokenButtonKeyNode, On as ThemeColorBadgeTone_v2, Ot as ThemeInput, P as ThemeColorAvatarTokens, Pn as isColorHueKey, Pt as ThemeColorSolid, Q as COLOR_CONFIG_AVATAR_COLORS, Qn as THEME_COLOR_STATES, Qt as ThemeColorToneKey, R as ThemeColorButtonTokens, Rn as ThemeColorButtonModeKey, Rt as ThemeColorSelectableStates, S as ThemeColorPalette, Sn as ThemeColorInput_v2, St as createColorTheme, T as parseTokenKey, Tn as ThemeColorButton_v2, Tt as RootTheme_v2, U as ThemeColorTokens, Un as ThemeColorStateKey, Ut as ThemeColorInputStates, V as ThemeColorStateTokens, Vn as ThemeColorInputStateKey, Vt as ThemeColorInput, W as isColorConfigBaseKey, Wn as ThemeColorStateToneKey, Wt as ThemeColorCard, X as isColorTokenValue, Xn as THEME_COLOR_INPUT_STATES, Xt as ThemeColorBase, Y as isColorOpacityValue, Yn as THEME_COLOR_INPUT_MODES, Yt as ThemeColorButtonTones, Z as isColorValue, Zn as THEME_COLOR_SCHEMES, Zt as ThemeColorName, _ as mix, _n as ThemeColorShadow, _t as ColorConfigStateTone, a as getTheme_v2, an as ThemeInput_v2, at as COLOR_CONFIG_STATE_KEYS, b as RGBA, bn as ThemeColorInputMode_v2, bt as PartialThemeColorBuilderOpts, c as parseColor, cn as ThemeFontSize, ct as ColorConfigAvatarColor, d as rgbToHex, dn as ThemeFonts, dt as ColorConfigCardTone, en as ThemeAvatar, er as ThemeAvatar_v2, et as COLOR_CONFIG_CARD_KEYS, f as rgbToHsl, fn as CSSObject, ft as ColorConfigInputMode, g as multiply, gn as ThemeColorSyntax, gt as ColorConfigStateKey, h as screen, hn as ThemeColorSchemes_v2, ht as ColorConfigState, i as is_v0, in as ThemeLayer, it as COLOR_CONFIG_STATES, j as TokenKeyNode, jn as ThemeColorAvatar_v2, jt as ThemeColorSchemes, k as TokenColorValueNode, kn as ThemeColorBadge_v2, kt as ThemeColor, l as hexToRgb, ln as ThemeFontWeight, lt as ColorConfigBlendKey, m as getContrastRatio, mn as ThemeColorScheme_v2, mt as ColorConfigOpacityValue, n as v0_v2, nn as ThemeBoxShadow, nt as COLOR_CONFIG_INPUT_MODES, o as getScopedTheme, on as ThemeFont, ot as COLOR_CONFIG_STATE_TONES, p as rgbaToRGBA, pn as ThemeColorCard_v2, pt as ColorConfigInputState, q as isColorConfigStateKey, qn as THEME_COLOR_BUTTON_MODES, qt as ThemeColorButtonState, r as is_v2, rn as ThemeShadow, rt as COLOR_CONFIG_INPUT_STATES, s as rgba, sn as ThemeFontKey, st as ColorBlendModeTokenValue, t as v2_v0, tn as ThemeStyles, tr as ThemeFocusRing, tt as COLOR_CONFIG_CARD_TONES, u as hslToRgb, un as ThemeFontWeightKey, ut as ColorConfigCardKey, v as HSL, vn as ThemeColorSelectableTone_v2, vt as ColorConfigValue, w as parseTokenValue, wn as ThemeColorButtonTone_v2, wt as RootTheme, x as buildTheme, xn as ThemeColorInputState_v2, xt as ThemeColorBuilderOpts, y as RGB, yn as ThemeColorSelectable_v2, yt as ThemeColorTokenValue, z as ThemeColorInputStateTokens, zn as ThemeColorCardToneKey, zt as ThemeColorMuted } from "./_chunks/theme.js";
2
- export { BaseTheme, COLOR_CONFIG_AVATAR_COLORS, COLOR_CONFIG_BLEND_KEYS, COLOR_CONFIG_CARD_KEYS, COLOR_CONFIG_CARD_TONES, COLOR_CONFIG_INPUT_MODES, COLOR_CONFIG_INPUT_STATES, COLOR_CONFIG_STATES, COLOR_CONFIG_STATE_KEYS, COLOR_CONFIG_STATE_TONES, CSSObject, ColorBlendModeTokenValue, ColorConfigAvatarColor, ColorConfigBlendKey, ColorConfigCardKey, ColorConfigCardTone, ColorConfigInputMode, ColorConfigInputState, ColorConfigOpacityValue, ColorConfigState, ColorConfigStateKey, ColorConfigStateTone, ColorConfigValue, HSL, PartialThemeColorBuilderOpts, RGB, RGBA, RootTheme, RootTheme_v2, THEME_COLOR_AVATAR_COLORS, THEME_COLOR_BLEND_MODES, THEME_COLOR_BUTTON_MODES, THEME_COLOR_CARD_TONES, THEME_COLOR_INPUT_MODES, THEME_COLOR_INPUT_STATES, THEME_COLOR_SCHEMES, THEME_COLOR_STATES, THEME_COLOR_STATE_TONES, Theme, ThemeAvatar, ThemeAvatar_v2, ThemeBoxShadow, ThemeColor, ThemeColorAvatarColorKey, ThemeColorAvatarHueTokens, ThemeColorAvatarHue_v2, ThemeColorAvatarTokens, ThemeColorAvatar_v2, ThemeColorBadgeTokens, ThemeColorBadgeToneTokens, ThemeColorBadgeTone_v2, ThemeColorBadge_v2, ThemeColorBase, ThemeColorBaseTokens, ThemeColorBlendModeKey, ThemeColorBuilderOpts, ThemeColorButton, ThemeColorButtonModeKey, ThemeColorButtonMode_v2, ThemeColorButtonState, ThemeColorButtonStates, ThemeColorButtonTokens, ThemeColorButtonTone_v2, ThemeColorButtonTones, ThemeColorButton_v2, ThemeColorCard, ThemeColorCardState, ThemeColorCardToneKey, ThemeColorCard_v2, ThemeColorGenericState, ThemeColorInput, ThemeColorInputModeKey, ThemeColorInputMode_v2, ThemeColorInputState, ThemeColorInputStateKey, ThemeColorInputStateTokens, ThemeColorInputState_v2, ThemeColorInputStates, ThemeColorInputTokens, ThemeColorInput_v2, ThemeColorKBD, ThemeColorMuted, ThemeColorMutedTone, ThemeColorName, ThemeColorPalette, ThemeColorScheme, ThemeColorSchemeKey, ThemeColorScheme_v2, ThemeColorSchemes, ThemeColorSchemes_v2, ThemeColorSelectable, ThemeColorSelectableState, ThemeColorSelectableStates, ThemeColorSelectableTone_v2, ThemeColorSelectable_v2, ThemeColorShadow, ThemeColorSolid, ThemeColorSolidTone, ThemeColorSpot, ThemeColorSpotKey, ThemeColorStateKey, ThemeColorStateTokens, ThemeColorStateToneKey, ThemeColorState_v2, ThemeColorStatesTokens, ThemeColorSyntax, ThemeColorTokenValue, ThemeColorTokens, ThemeColorToneKey, ThemeConfig, ThemeFocusRing, ThemeFont, ThemeFontKey, ThemeFontSize, ThemeFontWeight, ThemeFontWeightKey, ThemeFonts, ThemeInput, ThemeInput_v2, ThemeLayer, ThemeShadow, ThemeStyles, Theme_v2, TokenBaseKeyNode, TokenBlendModeValueNode, TokenButtonKeyNode, TokenColorValueNode, TokenHueValueNode, TokenKeyNode, TokenValueNode, buildTheme, createColorTheme, getContrastRatio, getScopedTheme, getTheme_v2, hexToRgb, hslToRgb, isColorBlendModeValue, isColorButtonMode, isColorConfigBaseKey, isColorConfigBaseTone, isColorConfigBlendKey, isColorConfigStateKey, isColorConfigStateTone, isColorHueKey, isColorOpacityValue, isColorTintKey, isColorTokenValue, isColorValue, is_v0, is_v2, mix, multiply, parseColor, parseTokenKey, parseTokenValue, rgbToHex, rgbToHsl, rgba, rgbaToRGBA, screen, v0_v2, v2_v0 };
1
+ import { $ as ThemeColorInputState_v2, A as ThemeColorMutedTone, At as ThemeColorSchemeKey, B as ThemeColorBase, Bt as THEME_COLOR_STATES, C as ThemeColorSpotKey, Ct as ThemeColorSyntax, D as ThemeColorSelectableState, Dt as ThemeColorCardToneKey, E as ThemeColorSelectable, Et as ThemeColorButtonModeKey, F as ThemeColorCardState, Ft as THEME_COLOR_BUTTON_MODES, G as ThemeInput_v2, H as ThemeColorToneKey, Ht as HSL, I as ThemeColorButton, It as THEME_COLOR_CARD_TONES, J as ThemeColorSchemes_v2, K as ThemeColorCard_v2, L as ThemeColorButtonState, Lt as THEME_COLOR_INPUT_MODES, M as ThemeColorInputState, Mt as ThemeColorStateToneKey, N as ThemeColorInputStates, Nt as THEME_COLOR_AVATAR_COLORS, O as ThemeColorSelectableStates, Ot as ThemeColorInputModeKey, P as ThemeColorCard, Pt as THEME_COLOR_BLEND_MODES, Q as ThemeColorInputMode_v2, R as ThemeColorButtonStates, Rt as THEME_COLOR_INPUT_STATES, S as ThemeColorSpot, St as ThemeFonts, T as ThemeColorSolidTone, Tt as ThemeColorBlendModeKey, U as ThemeColorGenericState, Ut as RGB, V as ThemeColorName, Vt as THEME_COLOR_STATE_TONES, W as ThemeAvatar, Wt as RGBA, X as ThemeColorSelectableTone_v2, Y as ThemeColorShadow, Z as ThemeColorSelectable_v2, _ as Theme_v2, _t as ThemeFont, a as rgbToHex, at as ThemeColorKBD, b as ThemeColorScheme, bt as ThemeFontWeight, c as screen, ct as ThemeColorAvatarHue_v2, d as ThemeColorBuilderOpts, dt as ThemeFocusRing, et as ThemeColorInput_v2, f as createColorTheme, ft as ThemeStyles, g as Theme, gt as ThemeLayer, h as RootTheme_v2, ht as ThemeShadow, i as hslToRgb, it as ThemeColorState_v2, j as ThemeColorInput, jt as ThemeColorStateKey, k as ThemeColorMuted, kt as ThemeColorInputStateKey, l as multiply, lt as ThemeColorAvatar_v2, m as RootTheme, mt as ThemeBoxShadow, n as parseColor, nt as ThemeColorButtonTone_v2, o as rgbToHsl, ot as ThemeColorBadgeTone_v2, p as BaseTheme, pt as CSSObject, q as ThemeColorScheme_v2, r as hexToRgb, rt as ThemeColorButton_v2, s as rgbaToRGBA, st as ThemeColorBadge_v2, t as rgba, tt as ThemeColorButtonMode_v2, u as PartialThemeColorBuilderOpts, ut as ThemeAvatar_v2, v as ThemeInput, vt as ThemeFontKey, w as ThemeColorSolid, wt as ThemeColorAvatarColorKey, x as ThemeColorSchemes, xt as ThemeFontWeightKey, y as ThemeColor, yt as ThemeFontSize, z as ThemeColorButtonTones, zt as THEME_COLOR_SCHEMES } from "./_chunks/rgba.js";
2
+ import { ColorHueKey, ColorTint, ColorTintKey } from "@sanity/color";
3
+ /** @public */
4
+ declare const COLOR_CONFIG_STATE_KEYS: readonly ['_hue', 'bg', 'fg', 'border', 'focusRing', 'muted/fg', 'accent/fg', 'link/fg', 'code/bg', 'code/fg', 'skeleton/from', 'skeleton/to', 'status/dot', 'status/icon'];
5
+ /** @public */
6
+ type ColorConfigStateKey = (typeof COLOR_CONFIG_STATE_KEYS)[number];
7
+ /** @public */
8
+ declare const COLOR_CONFIG_CARD_KEYS: readonly ["_hue", "bg", "fg", "border", "focusRing", "muted/fg", "accent/fg", "link/fg", "code/bg", "code/fg", "skeleton/from", "skeleton/to", "status/dot", "status/icon", "_hue", "bg", "fg", "border", "focusRing", "shadow/outline", "shadow/umbra", "shadow/penumbra", "shadow/ambient"];
9
+ /** @public */
10
+ type ColorConfigCardKey = (typeof COLOR_CONFIG_CARD_KEYS)[number];
11
+ /** @public */
12
+ declare const COLOR_CONFIG_BLEND_KEYS: readonly ['_blend'];
13
+ /** @public */
14
+ type ColorConfigBlendKey = (typeof COLOR_CONFIG_BLEND_KEYS)[number];
15
+ /** @public */
16
+ type ColorConfigOpacityValue = `0` | `0.${number}` | `1`;
17
+ /** @public */
18
+ type ColorConfigValue = `black` | `white` | `black/${ColorConfigOpacityValue}` | `white/${ColorConfigOpacityValue}` | `${ColorHueKey}` | `${ColorHueKey} ${number}%` | `${ColorHueKey}/${ColorTintKey}` | `${ColorHueKey}/${ColorTintKey} ${number}%` | `${ColorHueKey}/${ColorTintKey}/${ColorConfigOpacityValue}` | `${ColorTintKey}` | `${ColorTintKey} ${number}%` | `${ColorTintKey}/${ColorConfigOpacityValue}`;
19
+ /** @public */
20
+ type ThemeColorTokenValue = [ColorConfigValue, ColorConfigValue];
21
+ /** @public */
22
+ type ColorBlendModeTokenValue = [ThemeColorBlendModeKey, ThemeColorBlendModeKey];
23
+ /** @public */
24
+ declare const COLOR_CONFIG_AVATAR_COLORS: readonly ["*", ...ColorHueKey[]];
25
+ /** @public */
26
+ type ColorConfigAvatarColor = (typeof COLOR_CONFIG_AVATAR_COLORS)[number];
27
+ /** @public */
28
+ declare const COLOR_CONFIG_CARD_TONES: readonly ["*", "transparent", "default", "neutral", "primary", "suggest", "positive", "caution", "critical"];
29
+ /** @public */
30
+ type ColorConfigCardTone = (typeof COLOR_CONFIG_CARD_TONES)[number];
31
+ /** @public */
32
+ declare const COLOR_CONFIG_STATE_TONES: readonly ["*", "default", "neutral", "primary", "suggest", "positive", "caution", "critical"];
33
+ /** @public */
34
+ type ColorConfigStateTone = (typeof COLOR_CONFIG_STATE_TONES)[number];
35
+ /** @public */
36
+ declare const COLOR_CONFIG_STATES: readonly ["*", "enabled", "hovered", "pressed", "selected", "disabled"];
37
+ /** @public */
38
+ type ColorConfigState = (typeof COLOR_CONFIG_STATES)[number];
39
+ /** @public */
40
+ declare const COLOR_CONFIG_INPUT_MODES: readonly ["*", "default", "invalid"];
41
+ /** @public */
42
+ type ColorConfigInputMode = (typeof COLOR_CONFIG_INPUT_MODES)[number];
43
+ /** @public */
44
+ declare const COLOR_CONFIG_INPUT_STATES: readonly ["*", "enabled", "hovered", "readOnly", "disabled"];
45
+ /** @public */
46
+ type ColorConfigInputState = (typeof COLOR_CONFIG_INPUT_STATES)[number];
47
+ /** @public */
48
+ interface ThemeColorAvatarHueTokens {
49
+ _blend?: ColorBlendModeTokenValue;
50
+ _hue?: ColorHueKey;
51
+ bg?: ThemeColorTokenValue;
52
+ fg?: ThemeColorTokenValue;
53
+ }
54
+ /** @public */
55
+ interface ThemeColorAvatarTokens {
56
+ '*'?: ThemeColorAvatarHueTokens;
57
+ 'gray'?: ThemeColorAvatarHueTokens;
58
+ 'blue'?: ThemeColorAvatarHueTokens;
59
+ 'purple'?: ThemeColorAvatarHueTokens;
60
+ 'magenta'?: ThemeColorAvatarHueTokens;
61
+ 'red'?: ThemeColorAvatarHueTokens;
62
+ 'orange'?: ThemeColorAvatarHueTokens;
63
+ 'yellow'?: ThemeColorAvatarHueTokens;
64
+ 'green'?: ThemeColorAvatarHueTokens;
65
+ 'cyan'?: ThemeColorAvatarHueTokens;
66
+ }
67
+ /** @public */
68
+ interface ThemeColorBaseTokens extends ThemeColorStateTokens {
69
+ focusRing?: ThemeColorTokenValue;
70
+ backdrop?: ThemeColorTokenValue;
71
+ shadow?: {
72
+ outline?: ThemeColorTokenValue;
73
+ umbra?: ThemeColorTokenValue;
74
+ penumbra?: ThemeColorTokenValue;
75
+ ambient?: ThemeColorTokenValue;
76
+ };
77
+ }
78
+ /** @public */
79
+ interface ThemeColorBadgeToneTokens {
80
+ _blend?: ColorBlendModeTokenValue;
81
+ _hue?: ColorHueKey;
82
+ bg?: ThemeColorTokenValue;
83
+ dot?: ThemeColorTokenValue;
84
+ fg?: ThemeColorTokenValue;
85
+ icon?: ThemeColorTokenValue;
86
+ }
87
+ /** @public */
88
+ type ThemeColorBadgeTokens = Partial<Record<'*' | ThemeColorStateToneKey, ThemeColorBadgeToneTokens>>;
89
+ /** @public */
90
+ interface ThemeColorStateTokens {
91
+ _blend?: ColorBlendModeTokenValue;
92
+ _hue?: ColorHueKey;
93
+ accent?: {
94
+ fg?: ThemeColorTokenValue;
95
+ };
96
+ avatar?: ThemeColorAvatarTokens;
97
+ badge?: ThemeColorBadgeTokens;
98
+ bg?: ThemeColorTokenValue;
99
+ border?: ThemeColorTokenValue;
100
+ code?: {
101
+ bg?: ThemeColorTokenValue;
102
+ fg?: ThemeColorTokenValue;
103
+ };
104
+ fg?: ThemeColorTokenValue;
105
+ icon?: ThemeColorTokenValue;
106
+ kbd?: {
107
+ bg?: ThemeColorTokenValue;
108
+ fg?: ThemeColorTokenValue;
109
+ border?: ThemeColorTokenValue;
110
+ };
111
+ link?: {
112
+ fg?: ThemeColorTokenValue;
113
+ };
114
+ muted?: {
115
+ bg?: ThemeColorTokenValue;
116
+ fg?: ThemeColorTokenValue;
117
+ };
118
+ skeleton?: {
119
+ from?: ThemeColorTokenValue;
120
+ to?: ThemeColorTokenValue;
121
+ };
122
+ }
123
+ /** @public */
124
+ type ThemeColorStatesTokens = Partial<Record<ColorConfigState, ThemeColorStateTokens>>;
125
+ /** @public */
126
+ interface ThemeColorButtonTokens extends Partial<Record<ColorConfigStateTone, ThemeColorStatesTokens>> {
127
+ _hue?: ColorHueKey;
128
+ }
129
+ /** @public */
130
+ interface ThemeColorInputStateTokens {
131
+ _blend?: ColorBlendModeTokenValue;
132
+ _hue?: ColorHueKey;
133
+ bg?: ThemeColorTokenValue;
134
+ border?: ThemeColorTokenValue;
135
+ fg?: ThemeColorTokenValue;
136
+ muted?: {
137
+ bg?: ThemeColorTokenValue;
138
+ };
139
+ placeholder?: ThemeColorTokenValue;
140
+ }
141
+ /** @public */
142
+ interface ThemeColorInputTokens extends Partial<Record<ColorConfigInputState, ThemeColorInputStateTokens>> {
143
+ _hue?: ColorHueKey;
144
+ }
145
+ /** @public */
146
+ interface ThemeColorTokens {
147
+ base?: Partial<Record<ColorConfigCardTone, ThemeColorBaseTokens>>;
148
+ button?: Partial<Record<ThemeColorButtonModeKey, ThemeColorButtonTokens>>;
149
+ input?: Partial<Record<ColorConfigInputMode, ThemeColorInputTokens>>;
150
+ selectable?: Partial<Record<ColorConfigStateTone, {
151
+ _hue?: ColorHueKey;
152
+ } & ThemeColorStatesTokens>>;
153
+ syntax?: Partial<Record<keyof ThemeColorSyntax, ThemeColorTokenValue>>;
154
+ }
155
+ /** @public */
156
+ type ThemeColorPalette = {
157
+ black: string | ColorTint;
158
+ white: string | ColorTint;
159
+ } & Record<ColorHueKey, Record<ColorTintKey, string | ColorTint>>;
160
+ /** @public */
161
+ interface ThemeConfig {
162
+ avatar?: ThemeAvatar_v2;
163
+ button?: {
164
+ border: {
165
+ width: number;
166
+ };
167
+ focusRing: ThemeFocusRing;
168
+ textWeight: ThemeFontWeightKey;
169
+ };
170
+ card?: {
171
+ border: {
172
+ width: number;
173
+ };
174
+ focusRing: ThemeFocusRing;
175
+ shadow: {
176
+ outline: number;
177
+ };
178
+ };
179
+ color?: ThemeColorTokens;
180
+ container?: number[];
181
+ font?: ThemeFonts;
182
+ input?: ThemeInput_v2;
183
+ layer?: ThemeLayer;
184
+ media?: number[];
185
+ palette?: ThemeColorPalette;
186
+ radius?: number[];
187
+ shadow?: Array<ThemeShadow | null>;
188
+ space?: number[];
189
+ /** @internal */
190
+ style?: ThemeStyles;
191
+ }
192
+ /** @internal */
193
+ declare function buildTheme(config?: ThemeConfig): RootTheme;
194
+ /**
195
+ * Apply the \`mix\` blend mode
196
+ * @internal
197
+ */
198
+ declare function mix(b: RGB | RGBA, s: RGB | RGBA, weight: number): RGB;
199
+ /** @internal */
200
+ declare function getContrastRatio(bg: string, fg: string): number;
201
+ /** @internal */
202
+ declare function isColorConfigBaseTone(str: string): str is ColorConfigCardTone;
203
+ /** @internal */
204
+ declare function isColorConfigBaseKey(str: string): str is ColorConfigCardKey;
205
+ /** @internal */
206
+ declare function isColorConfigStateKey(str: string): str is ColorConfigStateKey;
207
+ /** @internal */
208
+ declare function isColorConfigStateTone(str: string): str is ColorConfigStateTone;
209
+ /** @internal */
210
+ declare function isColorConfigBlendKey(str: string): str is ColorConfigBlendKey;
211
+ /** @internal */
212
+ declare function isColorTokenValue(str: string): str is ColorConfigValue;
213
+ /** @internal */
214
+ declare function isColorValue(str: string): str is 'black' | 'white';
215
+ /** @internal */
216
+ declare function isColorOpacityValue(str: string): str is ColorConfigOpacityValue;
217
+ /** @internal */
218
+ interface TokenBaseKeyNode {
219
+ type: 'base';
220
+ tone: ColorConfigCardTone;
221
+ key: ColorConfigCardKey | ColorConfigBlendKey;
222
+ }
223
+ /** @internal */
224
+ interface TokenButtonKeyNode {
225
+ type: 'button';
226
+ tone: ColorConfigStateTone;
227
+ mode: ThemeColorButtonModeKey;
228
+ key: ColorConfigStateKey | ColorConfigBlendKey;
229
+ }
230
+ /** @internal */
231
+ type TokenKeyNode = TokenBaseKeyNode | TokenButtonKeyNode;
232
+ /** @internal */
233
+ interface TokenColorValueNode {
234
+ type: 'color';
235
+ key?: 'black' | 'white';
236
+ hue?: ColorHueKey;
237
+ mix?: number;
238
+ opacity?: number;
239
+ tint?: ColorTintKey;
240
+ }
241
+ /** @internal */
242
+ interface TokenHueValueNode {
243
+ type: 'hue';
244
+ value?: ColorHueKey;
245
+ }
246
+ /** @internal */
247
+ interface TokenBlendModeValueNode {
248
+ type: 'blendMode';
249
+ value?: ThemeColorBlendModeKey;
250
+ }
251
+ /** @internal */
252
+ type TokenValueNode = TokenColorValueNode | TokenHueValueNode | TokenBlendModeValueNode;
253
+ /** @internal */
254
+ declare function parseTokenKey(str: string): TokenKeyNode | undefined;
255
+ /** @internal */
256
+ declare function parseTokenValue(str: string): TokenValueNode | undefined;
257
+ /** @internal */
258
+ declare function getScopedTheme(themeProp: RootTheme | RootTheme_v2, scheme: ThemeColorSchemeKey, tone: ThemeColorCardToneKey): Theme;
259
+ /** @internal */
260
+ declare function isColorBlendModeValue(str: string): str is ThemeColorBlendModeKey;
261
+ /** @internal */
262
+ declare function isColorHueKey(str: string): str is ColorHueKey;
263
+ /** @internal */
264
+ declare function isColorTintKey(str: string): str is ColorTintKey;
265
+ /** @internal */
266
+ declare function isColorButtonMode(str: string): str is ThemeColorButtonModeKey;
267
+ /** @public */
268
+ declare function getTheme_v2(theme: Theme): Theme_v2;
269
+ /** @internal */
270
+ declare function is_v0(themeProp: RootTheme | RootTheme_v2): themeProp is RootTheme;
271
+ /** @internal */
272
+ declare function is_v2(themeProp: RootTheme | RootTheme_v2): themeProp is RootTheme_v2;
273
+ /** @internal */
274
+ declare function v0_v2(v0: RootTheme): RootTheme_v2;
275
+ /** @internal */
276
+ declare function v2_v0(v2: RootTheme_v2): RootTheme;
277
+ export { type BaseTheme, COLOR_CONFIG_AVATAR_COLORS, COLOR_CONFIG_BLEND_KEYS, COLOR_CONFIG_CARD_KEYS, COLOR_CONFIG_CARD_TONES, COLOR_CONFIG_INPUT_MODES, COLOR_CONFIG_INPUT_STATES, COLOR_CONFIG_STATES, COLOR_CONFIG_STATE_KEYS, COLOR_CONFIG_STATE_TONES, type CSSObject, type ColorBlendModeTokenValue, type ColorConfigAvatarColor, type ColorConfigBlendKey, type ColorConfigCardKey, type ColorConfigCardTone, type ColorConfigInputMode, type ColorConfigInputState, type ColorConfigOpacityValue, type ColorConfigState, type ColorConfigStateKey, type ColorConfigStateTone, type ColorConfigValue, type HSL, type PartialThemeColorBuilderOpts, type RGB, type RGBA, type RootTheme, type RootTheme_v2, THEME_COLOR_AVATAR_COLORS, THEME_COLOR_BLEND_MODES, THEME_COLOR_BUTTON_MODES, THEME_COLOR_CARD_TONES, THEME_COLOR_INPUT_MODES, THEME_COLOR_INPUT_STATES, THEME_COLOR_SCHEMES, THEME_COLOR_STATES, THEME_COLOR_STATE_TONES, type Theme, type ThemeAvatar, type ThemeAvatar_v2, type ThemeBoxShadow, type ThemeColor, type ThemeColorAvatarColorKey, type ThemeColorAvatarHueTokens, type ThemeColorAvatarHue_v2, type ThemeColorAvatarTokens, type ThemeColorAvatar_v2, type ThemeColorBadgeTokens, type ThemeColorBadgeToneTokens, type ThemeColorBadgeTone_v2, type ThemeColorBadge_v2, type ThemeColorBase, type ThemeColorBaseTokens, type ThemeColorBlendModeKey, type ThemeColorBuilderOpts, type ThemeColorButton, type ThemeColorButtonModeKey, type ThemeColorButtonMode_v2, type ThemeColorButtonState, type ThemeColorButtonStates, type ThemeColorButtonTokens, type ThemeColorButtonTone_v2, type ThemeColorButtonTones, type ThemeColorButton_v2, type ThemeColorCard, type ThemeColorCardState, type ThemeColorCardToneKey, type ThemeColorCard_v2, type ThemeColorGenericState, type ThemeColorInput, type ThemeColorInputModeKey, type ThemeColorInputMode_v2, type ThemeColorInputState, type ThemeColorInputStateKey, type ThemeColorInputStateTokens, type ThemeColorInputState_v2, type ThemeColorInputStates, type ThemeColorInputTokens, type ThemeColorInput_v2, type ThemeColorKBD, type ThemeColorMuted, type ThemeColorMutedTone, type ThemeColorName, type ThemeColorPalette, type ThemeColorScheme, type ThemeColorSchemeKey, type ThemeColorScheme_v2, type ThemeColorSchemes, type ThemeColorSchemes_v2, type ThemeColorSelectable, type ThemeColorSelectableState, type ThemeColorSelectableStates, type ThemeColorSelectableTone_v2, type ThemeColorSelectable_v2, type ThemeColorShadow, type ThemeColorSolid, type ThemeColorSolidTone, type ThemeColorSpot, type ThemeColorSpotKey, type ThemeColorStateKey, type ThemeColorStateTokens, type ThemeColorStateToneKey, type ThemeColorState_v2, type ThemeColorStatesTokens, type ThemeColorSyntax, type ThemeColorTokenValue, type ThemeColorTokens, type ThemeColorToneKey, type ThemeConfig, type ThemeFocusRing, type ThemeFont, type ThemeFontKey, type ThemeFontSize, type ThemeFontWeight, type ThemeFontWeightKey, type ThemeFonts, type ThemeInput, type ThemeInput_v2, type ThemeLayer, type ThemeShadow, type ThemeStyles, type Theme_v2, type TokenBaseKeyNode, type TokenBlendModeValueNode, type TokenButtonKeyNode, type TokenColorValueNode, type TokenHueValueNode, type TokenKeyNode, type TokenValueNode, buildTheme, createColorTheme, getContrastRatio, getScopedTheme, getTheme_v2, hexToRgb, hslToRgb, isColorBlendModeValue, isColorButtonMode, isColorConfigBaseKey, isColorConfigBaseTone, isColorConfigBlendKey, isColorConfigStateKey, isColorConfigStateTone, isColorHueKey, isColorOpacityValue, isColorTintKey, isColorTokenValue, isColorValue, is_v0, is_v2, mix, multiply, parseColor, parseTokenKey, parseTokenValue, rgbToHex, rgbToHsl, rgba, rgbaToRGBA, screen, v0_v2, v2_v0 };
278
+ //# sourceMappingURL=theme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme.d.ts","names":[],"sources":["../src/theme/config/system.ts","../src/theme/config/tokens/color/types.ts","../src/theme/config/types.ts","../src/theme/build/buildTheme.ts","../src/theme/build/lib/color-fns/blend/mix.ts","../src/theme/build/lib/color-fns/contrastRatio.ts","../src/theme/config/helpers.ts","../src/theme/config/tokens/types.ts","../src/theme/config/tokens/parseTokenKey.ts","../src/theme/config/tokens/parseTokenValue.ts","../src/theme/getScopedTheme.ts","../src/theme/system/color/_helpers.ts","../src/theme/versioning/getTheme_v2.ts","../src/theme/versioning/is_v0.ts","../src/theme/versioning/is_v2.ts","../src/theme/versioning/v0_v2.ts","../src/theme/versioning/v2_v0.ts"],"mappings":"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"}
package/dist/theme.js CHANGED
@@ -1,2 +1,53 @@
1
- import { A as COLOR_CONFIG_STATES, B as THEME_COLOR_CARD_TONES, C as parseTokenKey, D as COLOR_CONFIG_CARD_TONES, E as COLOR_CONFIG_CARD_KEYS, F as isColorHueKey, G as THEME_COLOR_STATE_TONES, H as THEME_COLOR_INPUT_STATES, I as isColorTintKey, J as is_v2, K as v2_v0, L as THEME_COLOR_AVATAR_COLORS, M as COLOR_CONFIG_STATE_TONES, N as isColorBlendModeValue, O as COLOR_CONFIG_INPUT_MODES, P as isColorButtonMode, R as THEME_COLOR_BLEND_MODES, S as parseTokenValue, T as COLOR_CONFIG_BLEND_KEYS, U as THEME_COLOR_SCHEMES, V as THEME_COLOR_INPUT_MODES, W as THEME_COLOR_STATES, X as getTheme_v2, Y as is_v0, Z as createColorTheme, _ as isColorConfigStateKey, a as parseColor, b as isColorTokenValue, c as rgbToHex, d as screen, f as multiply, g as isColorConfigBlendKey, h as isColorConfigBaseTone, i as getContrastRatio, j as COLOR_CONFIG_STATE_KEYS, k as COLOR_CONFIG_INPUT_STATES, l as rgbToHsl, m as isColorConfigBaseKey, n as buildTheme, o as hexToRgb, p as mix, q as v0_v2, r as rgba, s as hslToRgb, t as getScopedTheme, u as rgbaToRGBA, v as isColorConfigStateTone, w as COLOR_CONFIG_AVATAR_COLORS, x as isColorValue, y as isColorOpacityValue, z as THEME_COLOR_BUTTON_MODES } from "./_chunks/theme.js";
1
+ import { A as COLOR_CONFIG_INPUT_MODES, B as THEME_COLOR_BLEND_MODES, C as isColorOpacityValue, D as COLOR_CONFIG_BLEND_KEYS, E as COLOR_CONFIG_AVATAR_COLORS, F as isColorBlendModeValue, G as THEME_COLOR_SCHEMES, H as THEME_COLOR_CARD_TONES, I as isColorButtonMode, J as v2_v0, K as THEME_COLOR_STATES, L as isColorHueKey, M as COLOR_CONFIG_STATES, N as COLOR_CONFIG_STATE_KEYS, O as COLOR_CONFIG_CARD_KEYS, P as COLOR_CONFIG_STATE_TONES, R as isColorTintKey, S as isColorConfigStateTone, T as isColorValue, U as THEME_COLOR_INPUT_MODES, V as THEME_COLOR_BUTTON_MODES, W as THEME_COLOR_INPUT_STATES, _ as parseTokenValue, a as createColorTheme, b as isColorConfigBlendKey, c as multiply, d as hexToRgb, f as hslToRgb, g as mix, h as rgbaToRGBA, i as getTheme_v2, j as COLOR_CONFIG_INPUT_STATES, k as COLOR_CONFIG_CARD_TONES, l as rgba, m as rgbToHsl, n as v0_v2, o as buildTheme, p as rgbToHex, q as THEME_COLOR_STATE_TONES, r as is_v2, s as screen, t as getScopedTheme, u as parseColor, v as isColorConfigBaseKey, w as isColorTokenValue, x as isColorConfigStateKey, y as isColorConfigBaseTone, z as THEME_COLOR_AVATAR_COLORS } from "./_chunks/getScopedTheme.js";
2
+ /** @internal */
3
+ function getContrastRatio(bg, fg) {
4
+ let rgb1 = parseColor(bg), rgb2 = parseColor(fg), c1 = rgb_lrgb(rgb1), c2 = rgb_lrgb(rgb2), l1 = lrgb_luminance(c1), l2 = lrgb_luminance(c2);
5
+ return (Math.max(l1, l2) + .05) / (Math.min(l1, l2) + .05);
6
+ }
7
+ function rgb_lrgb({ r, g, b }) {
8
+ return [
9
+ rgb_lrgb1(r / 255),
10
+ rgb_lrgb1(g / 255),
11
+ rgb_lrgb1(b / 255)
12
+ ];
13
+ }
14
+ function rgb_lrgb1(v) {
15
+ return v <= .04045 ? v / 12.92 : ((v + .055) / 1.055) ** 2.4;
16
+ }
17
+ function lrgb_luminance([r, g, b]) {
18
+ return .2126 * r + .7152 * g + .0722 * b;
19
+ }
20
+ /** @internal */
21
+ function parseTokenKey(str) {
22
+ let segments = str.split("/"), segment0 = segments.shift() || "";
23
+ if (isColorConfigBaseTone(segment0)) {
24
+ let key = segments.join("/");
25
+ if (isColorConfigBaseKey(key) || isColorConfigBlendKey(key)) return {
26
+ type: "base",
27
+ tone: segment0,
28
+ key
29
+ };
30
+ }
31
+ if (segment0 === "button") {
32
+ let segment1 = segments.shift() || "";
33
+ if (isColorConfigStateTone(segment1)) {
34
+ let segment2 = segments.shift() || "";
35
+ if (isColorButtonMode(segment2)) {
36
+ let key = segments.join("/");
37
+ if (isColorConfigStateKey(key) || isColorConfigBlendKey(key)) return {
38
+ type: "button",
39
+ tone: segment1,
40
+ mode: segment2,
41
+ key
42
+ };
43
+ }
44
+ }
45
+ }
46
+ }
47
+ /** @internal */
48
+ function is_v0(themeProp) {
49
+ return themeProp._version === 0;
50
+ }
2
51
  export { COLOR_CONFIG_AVATAR_COLORS, COLOR_CONFIG_BLEND_KEYS, COLOR_CONFIG_CARD_KEYS, COLOR_CONFIG_CARD_TONES, COLOR_CONFIG_INPUT_MODES, COLOR_CONFIG_INPUT_STATES, COLOR_CONFIG_STATES, COLOR_CONFIG_STATE_KEYS, COLOR_CONFIG_STATE_TONES, THEME_COLOR_AVATAR_COLORS, THEME_COLOR_BLEND_MODES, THEME_COLOR_BUTTON_MODES, THEME_COLOR_CARD_TONES, THEME_COLOR_INPUT_MODES, THEME_COLOR_INPUT_STATES, THEME_COLOR_SCHEMES, THEME_COLOR_STATES, THEME_COLOR_STATE_TONES, buildTheme, createColorTheme, getContrastRatio, getScopedTheme, getTheme_v2, hexToRgb, hslToRgb, isColorBlendModeValue, isColorButtonMode, isColorConfigBaseKey, isColorConfigBaseTone, isColorConfigBlendKey, isColorConfigStateKey, isColorConfigStateTone, isColorHueKey, isColorOpacityValue, isColorTintKey, isColorTokenValue, isColorValue, is_v0, is_v2, mix, multiply, parseColor, parseTokenKey, parseTokenValue, rgbToHex, rgbToHsl, rgba, rgbaToRGBA, screen, v0_v2, v2_v0 };
52
+
53
+ //# sourceMappingURL=theme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme.js","names":["parseColor","RGB","RGBA","getContrastRatio","bg","fg","rgb1","rgb2","c1","rgb_lrgb","c2","l1","lrgb_luminance","l2","Math","max","min","r","g","b","rgb_lrgb1","v","isColorButtonMode","isColorConfigBaseKey","isColorConfigBaseTone","isColorConfigBlendKey","isColorConfigStateKey","isColorConfigStateTone","TokenKeyNode","parseTokenKey","str","segments","split","segment0","shift","key","join","type","tone","segment1","segment2","mode","undefined"],"sources":["../src/theme/build/lib/color-fns/contrastRatio.ts","../src/theme/config/tokens/parseTokenKey.ts","../src/theme/versioning/is_v0.ts"],"sourcesContent":["import {parseColor} from './parse'\nimport {RGB, RGBA} from './types'\n\n/** @internal */\nexport function getContrastRatio(bg: string, fg: string): number {\n const rgb1 = parseColor(bg) // bg: RGB | RGBA, fg: RGB | RGBA\n const rgb2 = parseColor(fg)\n\n // convert the two colors from sRGB to linear-light RGB\n const c1 = rgb_lrgb(rgb1)\n const c2 = rgb_lrgb(rgb2)\n\n // compute the relative luminances\n const l1 = lrgb_luminance(c1)\n const l2 = lrgb_luminance(c2)\n\n // compute the contrast ratio\n return (Math.max(l1, l2) + 0.05) / (Math.min(l1, l2) + 0.05)\n}\n\nfunction rgb_lrgb({r, g, b}: RGB | RGBA): [number, number, number] {\n return [rgb_lrgb1(r / 255), rgb_lrgb1(g / 255), rgb_lrgb1(b / 255)]\n}\n\nfunction rgb_lrgb1(v: number) {\n return v <= 0.04045 ? v / 12.92 : ((v + 0.055) / 1.055) ** 2.4\n}\n\nfunction lrgb_luminance([r, g, b]: [number, number, number]) {\n return 0.2126 * r + 0.7152 * g + 0.0722 * b\n}\n","import {isColorButtonMode} from '../../system/color/_helpers'\nimport {\n isColorConfigBaseKey,\n isColorConfigBaseTone,\n isColorConfigBlendKey,\n isColorConfigStateKey,\n isColorConfigStateTone,\n} from '../helpers'\nimport {TokenKeyNode} from './types'\n\n/** @internal */\nexport function parseTokenKey(str: string): TokenKeyNode | undefined {\n const segments = str.split('/')\n const segment0 = segments.shift() || ''\n\n if (isColorConfigBaseTone(segment0)) {\n const key = segments.join('/')\n\n if (isColorConfigBaseKey(key)) {\n return {\n type: 'base',\n tone: segment0,\n key,\n }\n }\n\n if (isColorConfigBlendKey(key)) {\n return {\n type: 'base',\n tone: segment0,\n key,\n }\n }\n }\n\n if (segment0 === 'button') {\n const segment1 = segments.shift() || ''\n\n if (isColorConfigStateTone(segment1)) {\n const segment2 = segments.shift() || ''\n\n if (isColorButtonMode(segment2)) {\n const key = segments.join('/')\n\n if (isColorConfigStateKey(key)) {\n return {\n type: 'button',\n tone: segment1,\n mode: segment2,\n key,\n }\n }\n\n if (isColorConfigBlendKey(key)) {\n return {\n type: 'button',\n tone: segment1,\n mode: segment2,\n key,\n }\n }\n }\n }\n }\n\n return undefined\n}\n","import {RootTheme, RootTheme_v2} from '../system/theme'\n\n/** @internal */\nexport function is_v0(themeProp: RootTheme | RootTheme_v2): themeProp is RootTheme {\n return themeProp._version === 0\n}\n"],"mappings":";;AAIA,SAAgBG,iBAAiBC,IAAYC,IAAoB;CAC/D,IAAMC,OAAON,WAAWI,EAAE,GACpBG,OAAOP,WAAWK,EAAE,GAGpBG,KAAKC,SAASH,IAAI,GAClBI,KAAKD,SAASF,IAAI,GAGlBI,KAAKC,eAAeJ,EAAE,GACtBK,KAAKD,eAAeF,EAAE;CAG5B,QAAQI,KAAKC,IAAIJ,IAAIE,EAAE,IAAI,QAASC,KAAKE,IAAIL,IAAIE,EAAE,IAAI;AACzD;AAEA,SAASJ,SAAS,EAACQ,GAAGC,GAAGC,KAA0C;CACjE,OAAO;EAACC,UAAUH,IAAI,GAAG;EAAGG,UAAUF,IAAI,GAAG;EAAGE,UAAUD,IAAI,GAAG;CAAC;AACpE;AAEA,SAASC,UAAUC,GAAW;CAC5B,OAAOA,KAAK,SAAUA,IAAI,UAAUA,IAAI,QAAS,UAAU;AAC7D;AAEA,SAAST,eAAe,CAACK,GAAGC,GAAGC,IAA8B;CAC3D,OAAO,QAASF,IAAI,QAASC,IAAI,QAASC;AAC5C;;ACnBA,SAAgBU,cAAcC,KAAuC;CACnE,IAAMC,WAAWD,IAAIE,MAAM,GAAG,GACxBC,WAAWF,SAASG,MAAM,KAAK;CAErC,IAAIV,sBAAsBS,QAAQ,GAAG;EACnC,IAAME,MAAMJ,SAASK,KAAK,GAAG;EAU7B,IARIb,qBAAqBY,GAAG,KAQxBV,sBAAsBU,GAAG,GAC3B,OAAO;GACLE,MAAM;GACNC,MAAML;GACNE;EACF;CAEJ;CAEA,IAAIF,aAAa,UAAU;EACzB,IAAMM,WAAWR,SAASG,MAAM,KAAK;EAErC,IAAIP,uBAAuBY,QAAQ,GAAG;GACpC,IAAMC,WAAWT,SAASG,MAAM,KAAK;GAErC,IAAIZ,kBAAkBkB,QAAQ,GAAG;IAC/B,IAAML,MAAMJ,SAASK,KAAK,GAAG;IAW7B,IATIV,sBAAsBS,GAAG,KASzBV,sBAAsBU,GAAG,GAC3B,OAAO;KACLE,MAAM;KACNC,MAAMC;KACNE,MAAMD;KACNL;IACF;GAEJ;EACF;CACF;AAGF;;AC/DA,SAAgB,MAAM,WAA6D;CACjF,OAAO,UAAU,aAAa;AAChC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sanity/ui",
3
- "version": "3.4.5",
3
+ "version": "3.5.0",
4
4
  "keywords": [
5
5
  "components",
6
6
  "design-system",