@sanity/ui 2.3.6 → 2.4.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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getTheme_v2.mjs","sources":["../../src/theme/defaults/config.ts","../../src/theme/versioning/themeColor_v0_v2.ts","../../src/theme/versioning/getTheme_v2.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"],"names":["cache"],"mappings":"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"}
@@ -0,0 +1,320 @@
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$1 = /* @__PURE__ */ new WeakMap();
80
+ function themeColor_v0_v2(color_v0) {
81
+ var _a, _b, _c;
82
+ const cached_v2 = cache$1.get(color_v0);
83
+ if (cached_v2) return cached_v2;
84
+ const base = stateThemeColor_v0_v2(color_v0, color_v0.card.enabled), color_v2 = {
85
+ _blend: color_v0._blend || (color_v0.dark ? "screen" : "multiply"),
86
+ _dark: color_v0.dark,
87
+ accent: base.accent,
88
+ avatar: base.avatar,
89
+ backdrop: color_v0.base.shadow.ambient,
90
+ badge: base.badge,
91
+ bg: color_v0.base.bg,
92
+ border: color_v0.base.border,
93
+ button: {
94
+ default: stateTonesThemeColor_v0_v2(color_v0, color_v0.button.default),
95
+ ghost: stateTonesThemeColor_v0_v2(color_v0, color_v0.button.ghost),
96
+ bleed: stateTonesThemeColor_v0_v2(color_v0, color_v0.button.bleed)
97
+ },
98
+ code: base.code,
99
+ fg: color_v0.base.fg,
100
+ focusRing: color_v0.base.focusRing,
101
+ icon: base.muted.fg,
102
+ input: {
103
+ default: inputStatesThemeColor_v0_v2(color_v0.input.default),
104
+ invalid: inputStatesThemeColor_v0_v2(color_v0.input.invalid)
105
+ },
106
+ kbd: base.kbd,
107
+ link: base.link,
108
+ muted: {
109
+ ...base.muted,
110
+ bg: ((_a = color_v0.selectable) == null ? void 0 : _a.default.enabled.bg2) || color_v0.base.bg
111
+ },
112
+ selectable: stateTonesThemeColor_v0_v2(color_v0, color_v0.selectable || color_v0.muted),
113
+ shadow: color_v0.base.shadow,
114
+ skeleton: {
115
+ from: ((_b = color_v0.skeleton) == null ? void 0 : _b.from) || color_v0.base.border,
116
+ to: ((_c = color_v0.skeleton) == null ? void 0 : _c.to) || color_v0.base.border
117
+ },
118
+ syntax: color_v0.syntax
119
+ };
120
+ return cache$1.set(color_v0, color_v2), color_v2;
121
+ }
122
+ function stateTonesThemeColor_v0_v2(v0, t) {
123
+ return {
124
+ default: {
125
+ enabled: stateThemeColor_v0_v2(v0, t.default.enabled),
126
+ hovered: stateThemeColor_v0_v2(v0, t.default.hovered),
127
+ pressed: stateThemeColor_v0_v2(v0, t.default.pressed),
128
+ selected: stateThemeColor_v0_v2(v0, t.default.selected),
129
+ disabled: stateThemeColor_v0_v2(v0, t.default.disabled)
130
+ },
131
+ primary: {
132
+ enabled: stateThemeColor_v0_v2(v0, t.primary.enabled),
133
+ hovered: stateThemeColor_v0_v2(v0, t.primary.hovered),
134
+ pressed: stateThemeColor_v0_v2(v0, t.primary.pressed),
135
+ selected: stateThemeColor_v0_v2(v0, t.primary.selected),
136
+ disabled: stateThemeColor_v0_v2(v0, t.primary.disabled)
137
+ },
138
+ positive: {
139
+ enabled: stateThemeColor_v0_v2(v0, t.positive.enabled),
140
+ hovered: stateThemeColor_v0_v2(v0, t.positive.hovered),
141
+ pressed: stateThemeColor_v0_v2(v0, t.positive.pressed),
142
+ selected: stateThemeColor_v0_v2(v0, t.positive.selected),
143
+ disabled: stateThemeColor_v0_v2(v0, t.positive.disabled)
144
+ },
145
+ caution: {
146
+ enabled: stateThemeColor_v0_v2(v0, t.caution.enabled),
147
+ hovered: stateThemeColor_v0_v2(v0, t.caution.hovered),
148
+ pressed: stateThemeColor_v0_v2(v0, t.caution.pressed),
149
+ selected: stateThemeColor_v0_v2(v0, t.caution.selected),
150
+ disabled: stateThemeColor_v0_v2(v0, t.caution.disabled)
151
+ },
152
+ critical: {
153
+ enabled: stateThemeColor_v0_v2(v0, t.critical.enabled),
154
+ hovered: stateThemeColor_v0_v2(v0, t.critical.hovered),
155
+ pressed: stateThemeColor_v0_v2(v0, t.critical.pressed),
156
+ selected: stateThemeColor_v0_v2(v0, t.critical.selected),
157
+ disabled: stateThemeColor_v0_v2(v0, t.critical.disabled)
158
+ }
159
+ };
160
+ }
161
+ function stateThemeColor_v0_v2(v0, state) {
162
+ var _a, _b;
163
+ return {
164
+ ...state,
165
+ avatar: {
166
+ gray: {
167
+ bg: v0.spot.gray,
168
+ fg: v0.base.bg
169
+ },
170
+ blue: {
171
+ bg: v0.spot.blue,
172
+ fg: v0.base.bg
173
+ },
174
+ purple: {
175
+ bg: v0.spot.purple,
176
+ fg: v0.base.bg
177
+ },
178
+ magenta: {
179
+ bg: v0.spot.magenta,
180
+ fg: v0.base.bg
181
+ },
182
+ red: {
183
+ bg: v0.spot.red,
184
+ fg: v0.base.bg
185
+ },
186
+ orange: {
187
+ bg: v0.spot.orange,
188
+ fg: v0.base.bg
189
+ },
190
+ yellow: {
191
+ bg: v0.spot.yellow,
192
+ fg: v0.base.bg
193
+ },
194
+ green: {
195
+ bg: v0.spot.green,
196
+ fg: v0.base.bg
197
+ },
198
+ cyan: {
199
+ bg: v0.spot.cyan,
200
+ fg: v0.base.bg
201
+ }
202
+ },
203
+ badge: {
204
+ default: {
205
+ bg: v0.muted.default.enabled.bg,
206
+ fg: v0.muted.default.enabled.fg,
207
+ dot: v0.muted.default.enabled.muted.fg,
208
+ icon: v0.muted.default.enabled.muted.fg
209
+ },
210
+ primary: {
211
+ bg: v0.muted.primary.enabled.bg,
212
+ fg: v0.muted.primary.enabled.fg,
213
+ dot: v0.muted.primary.enabled.muted.fg,
214
+ icon: v0.muted.primary.enabled.muted.fg
215
+ },
216
+ positive: {
217
+ bg: v0.muted.positive.enabled.bg,
218
+ fg: v0.muted.positive.enabled.fg,
219
+ dot: v0.muted.positive.enabled.muted.fg,
220
+ icon: v0.muted.positive.enabled.muted.fg
221
+ },
222
+ caution: {
223
+ bg: v0.muted.caution.enabled.bg,
224
+ fg: v0.muted.caution.enabled.fg,
225
+ dot: v0.muted.caution.enabled.muted.fg,
226
+ icon: v0.muted.caution.enabled.muted.fg
227
+ },
228
+ critical: {
229
+ bg: v0.muted.critical.enabled.bg,
230
+ fg: v0.muted.critical.enabled.fg,
231
+ dot: v0.muted.critical.enabled.muted.fg,
232
+ icon: v0.muted.critical.enabled.muted.fg
233
+ }
234
+ },
235
+ kbd: {
236
+ bg: v0.muted.default.enabled.bg,
237
+ fg: v0.muted.default.enabled.fg,
238
+ border: v0.muted.default.enabled.border
239
+ },
240
+ muted: {
241
+ ...v0.muted.default.enabled.muted,
242
+ bg: state.bg2 || state.bg
243
+ },
244
+ skeleton: {
245
+ from: ((_a = state.skeleton) == null ? void 0 : _a.from) || state.border,
246
+ to: ((_b = state.skeleton) == null ? void 0 : _b.to) || state.border
247
+ }
248
+ };
249
+ }
250
+ function inputStatesThemeColor_v0_v2(states) {
251
+ return {
252
+ enabled: inputStateThemeColor_v0_v2(states.enabled),
253
+ disabled: inputStateThemeColor_v0_v2(states.disabled),
254
+ readOnly: inputStateThemeColor_v0_v2(states.readOnly),
255
+ hovered: inputStateThemeColor_v0_v2(states.hovered)
256
+ };
257
+ }
258
+ function inputStateThemeColor_v0_v2(state) {
259
+ return {
260
+ bg: state.bg,
261
+ border: state.border,
262
+ fg: state.fg,
263
+ muted: {
264
+ bg: state.bg2
265
+ },
266
+ placeholder: state.placeholder
267
+ };
268
+ }
269
+ const cache = /* @__PURE__ */ new WeakMap();
270
+ function getTheme_v2(theme) {
271
+ var _a, _b;
272
+ if ((_a = theme.sanity.v2) != null && _a._resolved) return theme.sanity.v2;
273
+ const cached_v2 = cache.get(theme);
274
+ if (cached_v2) return cached_v2;
275
+ const v2 = {
276
+ _version: 2,
277
+ _resolved: !0,
278
+ avatar: {
279
+ ...defaultThemeConfig.avatar,
280
+ ...theme.sanity.avatar
281
+ },
282
+ button: {
283
+ ...defaultThemeConfig.button,
284
+ ...theme.sanity.button
285
+ },
286
+ card: defaultThemeConfig.card,
287
+ color: themeColor_v0_v2(theme.sanity.color),
288
+ container: theme.sanity.container,
289
+ font: theme.sanity.fonts,
290
+ input: {
291
+ ...defaultThemeConfig.input,
292
+ ...theme.sanity.input,
293
+ checkbox: {
294
+ ...defaultThemeConfig.input.checkbox,
295
+ ...theme.sanity.input.checkbox
296
+ },
297
+ radio: {
298
+ ...defaultThemeConfig.input.radio,
299
+ ...theme.sanity.input.radio
300
+ },
301
+ switch: {
302
+ ...defaultThemeConfig.input.switch,
303
+ ...theme.sanity.input.switch
304
+ }
305
+ },
306
+ layer: (_b = theme.sanity.layer) != null ? _b : defaultThemeConfig.layer,
307
+ media: theme.sanity.media,
308
+ radius: theme.sanity.radius,
309
+ shadow: theme.sanity.shadows,
310
+ space: theme.sanity.space,
311
+ style: theme.sanity.styles
312
+ };
313
+ return cache.set(theme, v2), v2;
314
+ }
315
+ export {
316
+ defaultThemeConfig,
317
+ getTheme_v2,
318
+ themeColor_v0_v2
319
+ };
320
+ //# sourceMappingURL=getTheme_v2.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getTheme_v2.esm.js","sources":["../../src/theme/defaults/config.ts","../../src/theme/versioning/themeColor_v0_v2.ts","../../src/theme/versioning/getTheme_v2.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"],"names":["cache"],"mappings":"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"}
package/dist/index.d.mts CHANGED
@@ -2447,6 +2447,7 @@ export declare interface ToastProps {
2447
2447
  radius?: number | number[]
2448
2448
  title?: React.ReactNode
2449
2449
  status?: 'error' | 'warning' | 'success' | 'info'
2450
+ duration?: number
2450
2451
  }
2451
2452
 
2452
2453
  /**
package/dist/index.d.ts CHANGED
@@ -2447,6 +2447,7 @@ export declare interface ToastProps {
2447
2447
  radius?: number | number[]
2448
2448
  title?: React.ReactNode
2449
2449
  status?: 'error' | 'warning' | 'success' | 'info'
2450
+ duration?: number
2450
2451
  }
2451
2452
 
2452
2453
  /**
package/dist/index.esm.js CHANGED
@@ -8,6 +8,7 @@ import Refractor from "react-refractor";
8
8
  import { detectOverflow, flip, offset, shift, arrow, hide, useFloating, autoUpdate } from "@floating-ui/react-dom";
9
9
  import { motion, AnimatePresence } from "framer-motion";
10
10
  import { createPortal } from "react-dom";
11
+ import { getTheme_v2 as getTheme_v2$1 } from "./_legacy/getTheme_v2.esm.js";
11
12
  const createColorTheme = createColorTheme$1, hexToRgb = hexToRgb$1, hslToRgb = hslToRgb$1, multiply = multiply$1, parseColor = parseColor$1, rgbToHex = rgbToHex$1, rgbToHsl = rgbToHsl$1, rgba = rgba$1, screen = screen$1, studioTheme = buildTheme(), EMPTY_ARRAY = [], EMPTY_RECORD = {}, POPOVER_MOTION_CONTENT_OPACITY_PROPERTY = "--motion-content-opacity", POPOVER_MOTION_PROPS = {
12
13
  initial: {
13
14
  opacity: 0.5,
@@ -6142,7 +6143,49 @@ const CustomInline = styled(Inline)`
6142
6143
  children: props.children
6143
6144
  }
6144
6145
  );
6145
- }), STATUS_CARD_TONE = {
6146
+ }), TextBox = styled(Flex)`
6147
+ overflow-x: auto;
6148
+ `, loadingAnimation = keyframes`
6149
+ 0% {
6150
+ width: 0;
6151
+ }
6152
+ 100% {
6153
+ width: 100%;
6154
+ }
6155
+ `, LOADING_BAR_HEIGHT = 2;
6156
+ function rootStyles(props) {
6157
+ const { color } = getTheme_v2$1(props.theme), loadingBarColor = color.button.default[props.tone].enabled.bg;
6158
+ return props.$duration ? css`
6159
+ pointer-events: all;
6160
+ width: 100%;
6161
+ position: relative;
6162
+ overflow: hidden;
6163
+ overflow: clip;
6164
+ padding-bottom: ${LOADING_BAR_HEIGHT}px;
6165
+ &::before {
6166
+ content: '';
6167
+ position: absolute;
6168
+ bottom: 0px;
6169
+ height: ${LOADING_BAR_HEIGHT}px;
6170
+ background: ${loadingBarColor};
6171
+ animation-name: ${loadingAnimation};
6172
+ animation-duration: ${props.$duration}ms;
6173
+ animation-fill-mode: both;
6174
+ }
6175
+
6176
+ & > * {
6177
+ opacity: var(${POPOVER_MOTION_CONTENT_OPACITY_PROPERTY}, 1);
6178
+ will-change: opacity;
6179
+ }
6180
+ ` : css`
6181
+ pointer-events: all;
6182
+ & > * {
6183
+ opacity: var(${POPOVER_MOTION_CONTENT_OPACITY_PROPERTY}, 1);
6184
+ will-change: opacity;
6185
+ }
6186
+ `;
6187
+ }
6188
+ const STATUS_CARD_TONE = {
6146
6189
  error: "critical",
6147
6190
  warning: "caution",
6148
6191
  success: "positive",
@@ -6157,17 +6200,11 @@ const CustomInline = styled(Inline)`
6157
6200
  warning: "alert",
6158
6201
  success: "alert",
6159
6202
  info: "alert"
6160
- }, Root$2 = styled(Card)`
6161
- pointer-events: all;
6162
- & > * {
6163
- opacity: var(${POPOVER_MOTION_CONTENT_OPACITY_PROPERTY}, 1);
6164
- will-change: opacity;
6165
- }
6166
- `, TextBox = styled(Flex)`
6167
- overflow-x: auto;
6168
- `;
6203
+ }, Root$2 = styled(Card)(
6204
+ rootStyles
6205
+ );
6169
6206
  function Toast(props) {
6170
- const { closable, description, onClose, radius = 3, title, status, ...restProps } = props, cardTone = status ? STATUS_CARD_TONE[status] : "default", buttonTone = status ? BUTTON_TONE[status] : "default", role = status ? ROLES[status] : "status";
6207
+ const { closable, description, duration, onClose, radius = 3, title, status, ...restProps } = props, cardTone = status ? STATUS_CARD_TONE[status] : "default", buttonTone = status ? BUTTON_TONE[status] : "default", role = status ? ROLES[status] : "status";
6171
6208
  return /* @__PURE__ */ jsx(
6172
6209
  Root$2,
6173
6210
  {
@@ -6178,6 +6215,7 @@ function Toast(props) {
6178
6215
  radius,
6179
6216
  shadow: 2,
6180
6217
  tone: cardTone,
6218
+ $duration: duration,
6181
6219
  children: /* @__PURE__ */ jsxs(Flex, { align: "flex-start", children: [
6182
6220
  /* @__PURE__ */ jsx(TextBox, { flex: 1, padding: 3, children: /* @__PURE__ */ jsxs(Stack, { space: 3, children: [
6183
6221
  title && /* @__PURE__ */ jsx(Text, { size: 1, weight: "medium", children: title }),
@@ -6293,7 +6331,8 @@ function ToastProvider(props) {
6293
6331
  description: params.description,
6294
6332
  onClose: dismiss,
6295
6333
  status: params.status,
6296
- title: params.title
6334
+ title: params.title,
6335
+ duration: params.duration
6297
6336
  }
6298
6337
  )
6299
6338
  },