@dxos/ui-theme 0.8.4-main.d05539e30a → 0.8.4-main.d9fc60f731
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.
- package/dist/lib/browser/index.mjs +88 -859
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/node-esm/index.mjs +88 -859
- package/dist/lib/node-esm/index.mjs.map +4 -4
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/plugin/node-cjs/main.css +168 -83
- package/dist/plugin/node-cjs/main.css.map +3 -3
- package/dist/plugin/node-cjs/meta.json +1 -1
- package/dist/plugin/node-esm/main.css +168 -83
- package/dist/plugin/node-esm/main.css.map +3 -3
- package/dist/plugin/node-esm/meta.json +1 -1
- package/dist/types/src/Theme.stories.d.ts.map +1 -1
- package/dist/types/src/defs.d.ts.map +1 -1
- package/dist/types/src/fragments/density.d.ts +2 -2
- package/dist/types/src/fragments/density.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +0 -1
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/util/hash-styles.d.ts +12 -2
- package/dist/types/src/util/hash-styles.d.ts.map +1 -1
- package/dist/types/src/util/mx.d.ts +0 -56
- package/dist/types/src/util/mx.d.ts.map +1 -1
- package/dist/types/src/util/valence.d.ts +8 -2
- package/dist/types/src/util/valence.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +6 -6
- package/src/Theme.stories.tsx +93 -26
- package/src/css/DESIGN_SYSTEM.md +80 -52
- package/src/css/base/base.css +2 -2
- package/src/css/components/button.css +62 -12
- package/src/css/components/card.css +14 -0
- package/src/css/components/checkbox.css +3 -3
- package/src/css/components/link.css +1 -1
- package/src/css/components/panel.css +23 -23
- package/src/css/components/{selected.css → state.css} +33 -10
- package/src/css/components/surface.css +33 -11
- package/src/css/components/tag.css +24 -25
- package/src/css/integrations/codemirror.css +1 -1
- package/src/css/integrations/tldraw.css +1 -1
- package/src/css/theme/palette.css +34 -0
- package/src/css/theme/semantic.css +88 -47
- package/src/css/theme/spacing.css +27 -10
- package/src/css/theme/styles.css +172 -119
- package/src/defs.ts +2 -0
- package/src/fragments/density.ts +34 -7
- package/src/index.ts +1 -1
- package/src/main.css +22 -6
- package/src/util/hash-styles.ts +54 -42
- package/src/util/mx.ts +1 -126
- package/src/util/valence.ts +15 -5
- package/dist/types/src/theme/components/avatar.d.ts +0 -21
- package/dist/types/src/theme/components/avatar.d.ts.map +0 -1
- package/dist/types/src/theme/components/breadcrumb.d.ts +0 -9
- package/dist/types/src/theme/components/breadcrumb.d.ts.map +0 -1
- package/dist/types/src/theme/components/button.d.ts +0 -15
- package/dist/types/src/theme/components/button.d.ts.map +0 -1
- package/dist/types/src/theme/components/card.d.ts +0 -12
- package/dist/types/src/theme/components/card.d.ts.map +0 -1
- package/dist/types/src/theme/components/dialog.d.ts +0 -17
- package/dist/types/src/theme/components/dialog.d.ts.map +0 -1
- package/dist/types/src/theme/components/focus.d.ts +0 -6
- package/dist/types/src/theme/components/focus.d.ts.map +0 -1
- package/dist/types/src/theme/components/icon-button.d.ts +0 -9
- package/dist/types/src/theme/components/icon-button.d.ts.map +0 -1
- package/dist/types/src/theme/components/icon.d.ts +0 -10
- package/dist/types/src/theme/components/icon.d.ts.map +0 -1
- package/dist/types/src/theme/components/index.d.ts +0 -27
- package/dist/types/src/theme/components/index.d.ts.map +0 -1
- package/dist/types/src/theme/components/input.d.ts +0 -115
- package/dist/types/src/theme/components/input.d.ts.map +0 -1
- package/dist/types/src/theme/components/link.d.ts +0 -7
- package/dist/types/src/theme/components/link.d.ts.map +0 -1
- package/dist/types/src/theme/components/list.d.ts +0 -14
- package/dist/types/src/theme/components/list.d.ts.map +0 -1
- package/dist/types/src/theme/components/main.d.ts +0 -28
- package/dist/types/src/theme/components/main.d.ts.map +0 -1
- package/dist/types/src/theme/components/menu.d.ts +0 -13
- package/dist/types/src/theme/components/menu.d.ts.map +0 -1
- package/dist/types/src/theme/components/message.d.ts +0 -12
- package/dist/types/src/theme/components/message.d.ts.map +0 -1
- package/dist/types/src/theme/components/popover.d.ts +0 -11
- package/dist/types/src/theme/components/popover.d.ts.map +0 -1
- package/dist/types/src/theme/components/scroll-area.d.ts +0 -32
- package/dist/types/src/theme/components/scroll-area.d.ts.map +0 -1
- package/dist/types/src/theme/components/select.d.ts +0 -13
- package/dist/types/src/theme/components/select.d.ts.map +0 -1
- package/dist/types/src/theme/components/separator.d.ts +0 -8
- package/dist/types/src/theme/components/separator.d.ts.map +0 -1
- package/dist/types/src/theme/components/skeleton.d.ts +0 -7
- package/dist/types/src/theme/components/skeleton.d.ts.map +0 -1
- package/dist/types/src/theme/components/splitter.d.ts +0 -4
- package/dist/types/src/theme/components/splitter.d.ts.map +0 -1
- package/dist/types/src/theme/components/status.d.ts +0 -9
- package/dist/types/src/theme/components/status.d.ts.map +0 -1
- package/dist/types/src/theme/components/tag.d.ts +0 -7
- package/dist/types/src/theme/components/tag.d.ts.map +0 -1
- package/dist/types/src/theme/components/toast.d.ts +0 -12
- package/dist/types/src/theme/components/toast.d.ts.map +0 -1
- package/dist/types/src/theme/components/toolbar.d.ts +0 -11
- package/dist/types/src/theme/components/toolbar.d.ts.map +0 -1
- package/dist/types/src/theme/components/tooltip.d.ts +0 -8
- package/dist/types/src/theme/components/tooltip.d.ts.map +0 -1
- package/dist/types/src/theme/components/treegrid.d.ts +0 -10
- package/dist/types/src/theme/components/treegrid.d.ts.map +0 -1
- package/dist/types/src/theme/index.d.ts +0 -4
- package/dist/types/src/theme/index.d.ts.map +0 -1
- package/dist/types/src/theme/primitives/column.d.ts +0 -29
- package/dist/types/src/theme/primitives/column.d.ts.map +0 -1
- package/dist/types/src/theme/primitives/index.d.ts +0 -3
- package/dist/types/src/theme/primitives/index.d.ts.map +0 -1
- package/dist/types/src/theme/primitives/panel.d.ts +0 -13
- package/dist/types/src/theme/primitives/panel.d.ts.map +0 -1
- package/dist/types/src/theme/theme.d.ts +0 -5
- package/dist/types/src/theme/theme.d.ts.map +0 -1
- package/src/theme/components/avatar.ts +0 -95
- package/src/theme/components/breadcrumb.ts +0 -29
- package/src/theme/components/button.ts +0 -48
- package/src/theme/components/card.ts +0 -102
- package/src/theme/components/dialog.ts +0 -61
- package/src/theme/components/focus.ts +0 -33
- package/src/theme/components/icon-button.ts +0 -21
- package/src/theme/components/icon.ts +0 -28
- package/src/theme/components/index.ts +0 -30
- package/src/theme/components/input.ts +0 -171
- package/src/theme/components/link.ts +0 -25
- package/src/theme/components/list.ts +0 -46
- package/src/theme/components/main.ts +0 -34
- package/src/theme/components/menu.ts +0 -50
- package/src/theme/components/message.ts +0 -40
- package/src/theme/components/popover.ts +0 -41
- package/src/theme/components/scroll-area.ts +0 -115
- package/src/theme/components/select.ts +0 -52
- package/src/theme/components/separator.ts +0 -24
- package/src/theme/components/skeleton.ts +0 -23
- package/src/theme/components/splitter.ts +0 -20
- package/src/theme/components/status.ts +0 -32
- package/src/theme/components/tag.ts +0 -23
- package/src/theme/components/toast.ts +0 -53
- package/src/theme/components/toolbar.ts +0 -35
- package/src/theme/components/tooltip.ts +0 -27
- package/src/theme/components/treegrid.ts +0 -37
- package/src/theme/index.ts +0 -7
- package/src/theme/primitives/column.ts +0 -71
- package/src/theme/primitives/index.ts +0 -6
- package/src/theme/primitives/panel.ts +0 -43
- package/src/theme/theme.ts +0 -87
- /package/src/css/components/{selected.md → state.md} +0 -0
|
@@ -46,12 +46,40 @@ var cardMinBlockSize = 18;
|
|
|
46
46
|
var cardMaxBlockSize = 30;
|
|
47
47
|
|
|
48
48
|
// src/fragments/density.ts
|
|
49
|
-
var
|
|
50
|
-
var
|
|
51
|
-
var
|
|
52
|
-
var
|
|
53
|
-
var
|
|
54
|
-
var
|
|
49
|
+
var lgBlockSize = "min-h-[2.5rem]";
|
|
50
|
+
var mdBlockSize = "min-h-[2.5rem] pointer-fine:min-h-[2rem]";
|
|
51
|
+
var smBlockSize = "min-h-[1.75rem]";
|
|
52
|
+
var xsBlockSize = "min-h-[1.5rem]";
|
|
53
|
+
var lgDimensions = `${lgBlockSize} px-3`;
|
|
54
|
+
var mdDimensions = `${mdBlockSize} px-2`;
|
|
55
|
+
var smDimensions = `${smBlockSize} px-1.5`;
|
|
56
|
+
var xsDimensions = `${xsBlockSize} px-1`;
|
|
57
|
+
var densityDimensions = (density = "md") => {
|
|
58
|
+
switch (density) {
|
|
59
|
+
case "lg":
|
|
60
|
+
return lgDimensions;
|
|
61
|
+
case "sm":
|
|
62
|
+
return smDimensions;
|
|
63
|
+
case "xs":
|
|
64
|
+
return xsDimensions;
|
|
65
|
+
case "md":
|
|
66
|
+
default:
|
|
67
|
+
return mdDimensions;
|
|
68
|
+
}
|
|
69
|
+
};
|
|
70
|
+
var densityBlockSize = (density = "md") => {
|
|
71
|
+
switch (density) {
|
|
72
|
+
case "lg":
|
|
73
|
+
return lgBlockSize;
|
|
74
|
+
case "sm":
|
|
75
|
+
return smBlockSize;
|
|
76
|
+
case "xs":
|
|
77
|
+
return xsBlockSize;
|
|
78
|
+
case "md":
|
|
79
|
+
default:
|
|
80
|
+
return mdBlockSize;
|
|
81
|
+
}
|
|
82
|
+
};
|
|
55
83
|
|
|
56
84
|
// src/fragments/disabled.ts
|
|
57
85
|
var staticDisabled = "opacity-40 cursor-not-allowed shadow-none";
|
|
@@ -106,146 +134,146 @@ var surfaceZIndex = ({ level, elevation }) => {
|
|
|
106
134
|
// src/util/hash-styles.ts
|
|
107
135
|
var neutral = {
|
|
108
136
|
hue: "neutral",
|
|
109
|
-
|
|
137
|
+
bg: "bg-neutral-bg",
|
|
110
138
|
surface: "bg-neutral-surface",
|
|
111
|
-
|
|
139
|
+
fg: "text-neutral-fg",
|
|
112
140
|
text: "text-neutral-text",
|
|
113
141
|
border: "border-neutral-border"
|
|
114
142
|
};
|
|
115
143
|
var styles = [
|
|
116
144
|
{
|
|
117
145
|
hue: "red",
|
|
118
|
-
|
|
146
|
+
bg: "bg-red-bg",
|
|
119
147
|
surface: "bg-red-surface",
|
|
120
|
-
|
|
148
|
+
fg: "text-red-fg",
|
|
121
149
|
text: "text-red-text",
|
|
122
150
|
border: "border-red-border"
|
|
123
151
|
},
|
|
124
152
|
{
|
|
125
153
|
hue: "orange",
|
|
126
|
-
|
|
154
|
+
bg: "bg-orange-bg",
|
|
127
155
|
surface: "bg-orange-surface",
|
|
128
|
-
|
|
156
|
+
fg: "text-orange-fg",
|
|
129
157
|
text: "text-orange-text",
|
|
130
158
|
border: "border-orange-border"
|
|
131
159
|
},
|
|
132
160
|
{
|
|
133
161
|
hue: "amber",
|
|
134
|
-
|
|
162
|
+
bg: "bg-amber-bg",
|
|
135
163
|
surface: "bg-amber-surface",
|
|
136
|
-
|
|
164
|
+
fg: "text-amber-fg",
|
|
137
165
|
text: "text-amber-text",
|
|
138
166
|
border: "border-amber-border"
|
|
139
167
|
},
|
|
140
168
|
{
|
|
141
169
|
hue: "yellow",
|
|
142
|
-
|
|
170
|
+
bg: "bg-yellow-bg",
|
|
143
171
|
surface: "bg-yellow-surface",
|
|
144
|
-
|
|
172
|
+
fg: "text-yellow-fg",
|
|
145
173
|
text: "text-yellow-text",
|
|
146
174
|
border: "border-yellow-border"
|
|
147
175
|
},
|
|
148
176
|
{
|
|
149
177
|
hue: "lime",
|
|
150
|
-
|
|
178
|
+
bg: "bg-lime-bg",
|
|
151
179
|
surface: "bg-lime-surface",
|
|
152
|
-
|
|
180
|
+
fg: "text-lime-fg",
|
|
153
181
|
text: "text-lime-text",
|
|
154
182
|
border: "border-lime-border"
|
|
155
183
|
},
|
|
156
184
|
{
|
|
157
185
|
hue: "green",
|
|
158
|
-
|
|
186
|
+
bg: "bg-green-bg",
|
|
159
187
|
surface: "bg-green-surface",
|
|
160
|
-
|
|
188
|
+
fg: "text-green-fg",
|
|
161
189
|
text: "text-green-text",
|
|
162
190
|
border: "border-green-border"
|
|
163
191
|
},
|
|
164
192
|
{
|
|
165
193
|
hue: "emerald",
|
|
166
|
-
|
|
194
|
+
bg: "bg-emerald-bg",
|
|
167
195
|
surface: "bg-emerald-surface",
|
|
168
|
-
|
|
196
|
+
fg: "text-emerald-fg",
|
|
169
197
|
text: "text-emerald-text",
|
|
170
198
|
border: "border-emerald-border"
|
|
171
199
|
},
|
|
172
200
|
{
|
|
173
201
|
hue: "teal",
|
|
174
|
-
|
|
202
|
+
bg: "bg-teal-bg",
|
|
175
203
|
surface: "bg-teal-surface",
|
|
176
|
-
|
|
204
|
+
fg: "text-teal-fg",
|
|
177
205
|
text: "text-teal-text",
|
|
178
206
|
border: "border-teal-border"
|
|
179
207
|
},
|
|
180
208
|
{
|
|
181
209
|
hue: "cyan",
|
|
182
|
-
|
|
210
|
+
bg: "bg-cyan-bg",
|
|
183
211
|
surface: "bg-cyan-surface",
|
|
184
|
-
|
|
212
|
+
fg: "text-cyan-fg",
|
|
185
213
|
text: "text-cyan-text",
|
|
186
214
|
border: "border-cyan-border"
|
|
187
215
|
},
|
|
188
216
|
{
|
|
189
217
|
hue: "sky",
|
|
190
|
-
|
|
218
|
+
bg: "bg-sky-bg",
|
|
191
219
|
surface: "bg-sky-surface",
|
|
192
|
-
|
|
220
|
+
fg: "text-sky-fg",
|
|
193
221
|
text: "text-sky-text",
|
|
194
222
|
border: "border-sky-border"
|
|
195
223
|
},
|
|
196
224
|
{
|
|
197
225
|
hue: "blue",
|
|
198
|
-
|
|
226
|
+
bg: "bg-blue-bg",
|
|
199
227
|
surface: "bg-blue-surface",
|
|
200
|
-
|
|
228
|
+
fg: "text-blue-fg",
|
|
201
229
|
text: "text-blue-text",
|
|
202
230
|
border: "border-blue-border"
|
|
203
231
|
},
|
|
204
232
|
{
|
|
205
233
|
hue: "indigo",
|
|
206
|
-
|
|
234
|
+
bg: "bg-indigo-bg",
|
|
207
235
|
surface: "bg-indigo-surface",
|
|
208
|
-
|
|
236
|
+
fg: "text-indigo-fg",
|
|
209
237
|
text: "text-indigo-text",
|
|
210
238
|
border: "border-indigo-border"
|
|
211
239
|
},
|
|
212
240
|
{
|
|
213
241
|
hue: "violet",
|
|
214
|
-
|
|
242
|
+
bg: "bg-violet-bg",
|
|
215
243
|
surface: "bg-violet-surface",
|
|
216
|
-
|
|
244
|
+
fg: "text-violet-fg",
|
|
217
245
|
text: "text-violet-text",
|
|
218
246
|
border: "border-violet-border"
|
|
219
247
|
},
|
|
220
248
|
{
|
|
221
249
|
hue: "purple",
|
|
222
|
-
|
|
250
|
+
bg: "bg-purple-bg",
|
|
223
251
|
surface: "bg-purple-surface",
|
|
224
|
-
|
|
252
|
+
fg: "text-purple-fg",
|
|
225
253
|
text: "text-purple-text",
|
|
226
254
|
border: "border-purple-border"
|
|
227
255
|
},
|
|
228
256
|
{
|
|
229
257
|
hue: "fuchsia",
|
|
230
|
-
|
|
258
|
+
bg: "bg-fuchsia-bg",
|
|
231
259
|
surface: "bg-fuchsia-surface",
|
|
232
|
-
|
|
260
|
+
fg: "text-fuchsia-fg",
|
|
233
261
|
text: "text-fuchsia-text",
|
|
234
262
|
border: "border-fuchsia-border"
|
|
235
263
|
},
|
|
236
264
|
{
|
|
237
265
|
hue: "pink",
|
|
238
|
-
|
|
266
|
+
bg: "bg-pink-bg",
|
|
239
267
|
surface: "bg-pink-surface",
|
|
240
|
-
|
|
268
|
+
fg: "text-pink-fg",
|
|
241
269
|
text: "text-pink-text",
|
|
242
270
|
border: "border-pink-border"
|
|
243
271
|
},
|
|
244
272
|
{
|
|
245
273
|
hue: "rose",
|
|
246
|
-
|
|
274
|
+
bg: "bg-rose-bg",
|
|
247
275
|
surface: "bg-rose-surface",
|
|
248
|
-
|
|
276
|
+
fg: "text-rose-fg",
|
|
249
277
|
text: "text-rose-text",
|
|
250
278
|
border: "border-rose-border"
|
|
251
279
|
}
|
|
@@ -254,6 +282,11 @@ var palette = {
|
|
|
254
282
|
neutral,
|
|
255
283
|
hues: styles
|
|
256
284
|
};
|
|
285
|
+
var validHues = /* @__PURE__ */ new Set([
|
|
286
|
+
neutral.hue,
|
|
287
|
+
...styles.map((s) => s.hue)
|
|
288
|
+
]);
|
|
289
|
+
var toHue = (hue) => hue && validHues.has(hue) ? hue : "neutral";
|
|
257
290
|
var getStyles = (hue) => {
|
|
258
291
|
return styles.find((color) => color.hue === hue) || neutral;
|
|
259
292
|
};
|
|
@@ -266,10 +299,7 @@ var getHashHue = (id) => {
|
|
|
266
299
|
var getHash = (id) => id.split("").reduce((acc, char) => acc + char.charCodeAt(0), 0);
|
|
267
300
|
|
|
268
301
|
// src/util/mx.ts
|
|
269
|
-
import { Children, createElement, forwardRef, isValidElement } from "react";
|
|
270
302
|
import { extendTailwindMerge, validators } from "tailwind-merge";
|
|
271
|
-
import { log } from "@dxos/log";
|
|
272
|
-
var __dxlog_file = "/__w/dxos/dxos/packages/ui/ui-theme/src/util/mx.ts";
|
|
273
303
|
var mx = extendTailwindMerge({
|
|
274
304
|
extend: {
|
|
275
305
|
classGroups: {
|
|
@@ -292,8 +322,9 @@ var mx = extendTailwindMerge({
|
|
|
292
322
|
validators.isArbitraryNumber
|
|
293
323
|
],
|
|
294
324
|
density: [
|
|
295
|
-
"dx-density-
|
|
296
|
-
"dx-density-
|
|
325
|
+
"dx-density-sm",
|
|
326
|
+
"dx-density-md",
|
|
327
|
+
"dx-density-lg"
|
|
297
328
|
],
|
|
298
329
|
"dx-focus-ring": [
|
|
299
330
|
"dx-focus-ring",
|
|
@@ -314,55 +345,6 @@ var mx = extendTailwindMerge({
|
|
|
314
345
|
}
|
|
315
346
|
}
|
|
316
347
|
});
|
|
317
|
-
var composableProps = ({ className, classNames, role, style, ...props }, { classNames: defaultClassNames, ...defaults } = {}) => ({
|
|
318
|
-
// Default props.
|
|
319
|
-
...defaults,
|
|
320
|
-
// Spread supplied props.
|
|
321
|
-
...props,
|
|
322
|
-
// Prefer explicit role, then defaults role, then 'none'.
|
|
323
|
-
role: role ?? defaults.role ?? "none",
|
|
324
|
-
// Merge styles.
|
|
325
|
-
style: {
|
|
326
|
-
...defaults.style,
|
|
327
|
-
...style
|
|
328
|
-
},
|
|
329
|
-
// Compose classnames.
|
|
330
|
-
className: mx(defaultClassNames, className, classNames)
|
|
331
|
-
});
|
|
332
|
-
var COMPOSABLE = /* @__PURE__ */ Symbol.for("dxos.composable");
|
|
333
|
-
function slottable(render) {
|
|
334
|
-
const wrapped = (props, forwardedRef) => {
|
|
335
|
-
let warn = false;
|
|
336
|
-
if (props.asChild) {
|
|
337
|
-
try {
|
|
338
|
-
const child = Children.only(props.children);
|
|
339
|
-
if (isValidElement(child) && typeof child.type !== "string" && !child.type[COMPOSABLE]) {
|
|
340
|
-
warn = true;
|
|
341
|
-
log.warn("slot child is not composable; create it with composable() or slottable()", {
|
|
342
|
-
child: child.type.displayName ?? child.type.name
|
|
343
|
-
}, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 100, S: this });
|
|
344
|
-
}
|
|
345
|
-
} catch {
|
|
346
|
-
}
|
|
347
|
-
}
|
|
348
|
-
const result = render(props, forwardedRef);
|
|
349
|
-
if (warn) {
|
|
350
|
-
return createElement("div", {
|
|
351
|
-
role: "none",
|
|
352
|
-
className: "dx-slot-warning"
|
|
353
|
-
}, result);
|
|
354
|
-
}
|
|
355
|
-
return result;
|
|
356
|
-
};
|
|
357
|
-
const component = forwardRef(wrapped);
|
|
358
|
-
component[COMPOSABLE] = true;
|
|
359
|
-
return component;
|
|
360
|
-
}
|
|
361
|
-
function composable(render) {
|
|
362
|
-
const component = forwardRef(render);
|
|
363
|
-
component[COMPOSABLE] = true;
|
|
364
|
-
return component;
|
|
365
|
-
}
|
|
366
348
|
|
|
367
349
|
// src/util/size.ts
|
|
368
350
|
var sizeMap = {
|
|
@@ -553,710 +535,42 @@ var textValence = (valence) => {
|
|
|
553
535
|
return "font-medium text-warning-text";
|
|
554
536
|
case "error":
|
|
555
537
|
return "font-medium text-error-text";
|
|
538
|
+
default:
|
|
539
|
+
return "font-medium";
|
|
556
540
|
}
|
|
557
541
|
};
|
|
558
542
|
var messageValence = (valence) => {
|
|
559
543
|
switch (valence) {
|
|
560
544
|
case "success":
|
|
561
|
-
return "font-medium
|
|
545
|
+
return "font-medium border-success-text text-success-fg bg-success-surface";
|
|
562
546
|
case "info":
|
|
563
|
-
return "font-medium
|
|
547
|
+
return "font-medium border-info-text text-info-fg bg-info-surface";
|
|
564
548
|
case "warning":
|
|
565
|
-
return "font-medium
|
|
549
|
+
return "font-medium border-warning-text text-warning-fg bg-warning-surface";
|
|
566
550
|
case "error":
|
|
567
|
-
return "font-medium
|
|
551
|
+
return "font-medium border-error-text text-error-fg bg-error-surface";
|
|
568
552
|
default:
|
|
569
|
-
return "font-medium
|
|
570
|
-
}
|
|
571
|
-
};
|
|
572
|
-
|
|
573
|
-
// src/theme/components/avatar.ts
|
|
574
|
-
var avatarRoot = ({ size = 10, inGroup }, ...etc) => mx("relative inline-flex shrink-0", getSize(size), inGroup && (size === "px" || size <= 3 ? "-mr-1" : "-mr-2"), ...etc);
|
|
575
|
-
var avatarLabel = ({ srOnly }, ...etc) => mx(srOnly && "sr-only", ...etc);
|
|
576
|
-
var avatarDescription = ({ srOnly }, ...etc) => mx("text-description", srOnly && "sr-only", ...etc);
|
|
577
|
-
var avatarFrame = ({ variant }, ...etc) => mx("h-full w-full bg-(--surface-bg)", variant === "circle" ? "rounded-full" : "rounded-sm", ...etc);
|
|
578
|
-
var avatarStatusIcon = ({ status, size = 3 }, ...etc) => mx("absolute bottom-0 end-0", getSize(size), status === "inactive" ? "text-amber-400 dark:text-amber-300" : status === "active" ? "text-emerald-400 dark:text-emerald-300" : "text-neutral-400 dark:text-neutral-300", ...etc);
|
|
579
|
-
var avatarRing = ({ status, variant, animation }, ...etc) => mx("absolute inset-0 border-2", variant === "circle" ? "rounded-full" : "rounded-sm", status === "current" ? "border-primary-400 dark:border-primary-500" : status === "active" ? "border-emerald-400 dark:border-emerald-400" : status === "error" ? "border-rose-400 dark:border-rose-500" : status === "warning" ? "border-amber-400 dark:border-amber-500" : status === "inactive" ? "border-separator" : status === "internal" ? "border-fuchsia-600" : "border-[color:var(--surface-bg)]", animation === "pulse" ? "animate-halo-pulse" : "", ...etc);
|
|
580
|
-
var avatarFallbackText = (_props, ...etc) => mx("fill-white", ...etc);
|
|
581
|
-
var avatarGroup = (_props, ...etc) => mx("inline-flex items-center", ...etc);
|
|
582
|
-
var avatarGroupLabel = ({ size, srOnly }, ...etc) => mx(srOnly ? "sr-only" : "rounded-full truncate text-sm leading-none py-1 px-2 relative z-[1] flex items-center justify-center", size && getHeight(size), ...etc);
|
|
583
|
-
var avatarGroupDescription = ({ srOnly }, ...etc) => mx(srOnly ? "sr-only" : "text-description", ...etc);
|
|
584
|
-
var avatarTheme = {
|
|
585
|
-
root: avatarRoot,
|
|
586
|
-
label: avatarLabel,
|
|
587
|
-
description: avatarDescription,
|
|
588
|
-
statusIcon: avatarStatusIcon,
|
|
589
|
-
frame: avatarFrame,
|
|
590
|
-
ring: avatarRing,
|
|
591
|
-
fallbackText: avatarFallbackText,
|
|
592
|
-
group: avatarGroup,
|
|
593
|
-
groupLabel: avatarGroupLabel,
|
|
594
|
-
groupDescription: avatarGroupDescription
|
|
595
|
-
};
|
|
596
|
-
|
|
597
|
-
// src/theme/components/breadcrumb.ts
|
|
598
|
-
var breadcrumbRoot = (_props, ...etc) => mx("shrink-0 flex items-center", ...etc);
|
|
599
|
-
var breadcrumbList = (_props, ...etc) => mx("contents", ...etc);
|
|
600
|
-
var breadcrumbListItem = (_props, ...etc) => mx("contents", ...etc);
|
|
601
|
-
var breadcrumbCurrent = (_props, ...etc) => mx(...etc);
|
|
602
|
-
var breadcrumbSeparator = (_props, ...etc) => mx("opacity-50", ...etc);
|
|
603
|
-
var breadcrumbTheme = {
|
|
604
|
-
root: breadcrumbRoot,
|
|
605
|
-
list: breadcrumbList,
|
|
606
|
-
listItem: breadcrumbListItem,
|
|
607
|
-
current: breadcrumbCurrent,
|
|
608
|
-
separator: breadcrumbSeparator
|
|
609
|
-
};
|
|
610
|
-
|
|
611
|
-
// src/theme/components/card.ts
|
|
612
|
-
var cardRoot = ({ border, fullWidth }, ...etc) => mx("dx-card dx-card-min-width dx-card-max-width min-h-(--dx-rail-item) group/card relative overflow-hidden", border && "bg-card-surface border border-separator dark:border-subdued-separator rounded-xs dx-focus-ring-group-y-indicator", fullWidth && "max-w-none!", ...etc);
|
|
613
|
-
var cardToolbar = (_, ...etc) => mx("dx-card__toolbar dx-density-fine bg-transparent p-0! gap-0! col-span-3 grid! grid-cols-subgrid! [contain:none]", ...etc);
|
|
614
|
-
var cardTitle = (_props, ...etc) => mx("dx-card__title grow truncate", ...etc);
|
|
615
|
-
var cardContent = (_props, ...etc) => mx("dx-card__content contents pb-1 last:pb-0", ...etc);
|
|
616
|
-
var cardHeading = ({ variant = "default" }, ...etc) => mx("dx-card__heading", variant === "default" && "py-1", variant === "subtitle" && "py-2 text-xs text-description font-medium uppercase", ...etc);
|
|
617
|
-
var cardText = ({ variant = "default", truncate: _truncate }, ...etc) => mx("dx-card__text items-center overflow-hidden", variant === "default" && "py-1", variant === "description" && "py-1.5 text-description", ...etc);
|
|
618
|
-
var cardTextSpan = ({ variant = "default", truncate }, ...etc) => mx(variant === "description" && "text-sm text-description line-clamp-3", truncate && "truncate", ...etc);
|
|
619
|
-
var cardPoster = (_props, ...etc) => mx("dx-card__poster col-span-3 max-h-[200px]", ...etc);
|
|
620
|
-
var cardPosterIcon = (_props, ...etc) => mx("dx-card__poster-icon col-span-3 grid place-items-center bg-input-surface text-subdued max-h-[200px]", ...etc);
|
|
621
|
-
var cardAction = (_props, ...etc) => mx("dx-card__acztion col-span-3 !grid grid-cols-subgrid p-0! w-full text-start overflow-hidden", ...etc);
|
|
622
|
-
var cardActionLabel = (_props, ...etc) => mx("dx-card__action-label min-w-0 flex-1 truncate", ...etc);
|
|
623
|
-
var cardLink = (_props, ...etc) => mx("dx-card__link col-span-3 !grid grid-cols-subgrid group p-0! dx-button dx-focus-ring min-h-1!", ...etc);
|
|
624
|
-
var cardLinkLabel = (_props, ...etc) => mx("dx-card__link-label min-w-0 flex-1 truncate", ...etc);
|
|
625
|
-
var cardRow = (_, ...etc) => mx("dx-card__row col-span-3 grid grid-cols-subgrid", ...etc);
|
|
626
|
-
var cardIconBlock = ({ padding }, ...etc) => mx("dx-card__icon-block grid h-[var(--dx-rail-item)] w-[var(--dx-rail-item)] place-items-center", padding && "[&>*]:p-1", ...etc);
|
|
627
|
-
var cardTheme = {
|
|
628
|
-
root: cardRoot,
|
|
629
|
-
toolbar: cardToolbar,
|
|
630
|
-
title: cardTitle,
|
|
631
|
-
content: cardContent,
|
|
632
|
-
row: cardRow,
|
|
633
|
-
heading: cardHeading,
|
|
634
|
-
text: cardText,
|
|
635
|
-
"text-span": cardTextSpan,
|
|
636
|
-
poster: cardPoster,
|
|
637
|
-
"poster-icon": cardPosterIcon,
|
|
638
|
-
action: cardAction,
|
|
639
|
-
"action-label": cardActionLabel,
|
|
640
|
-
link: cardLink,
|
|
641
|
-
"link-label": cardLinkLabel,
|
|
642
|
-
"icon-block": cardIconBlock
|
|
643
|
-
};
|
|
644
|
-
|
|
645
|
-
// src/theme/components/button.ts
|
|
646
|
-
var primaryButtonColors = "text-accent-foreground bg-accent-surface hover:bg-accent-surface-hover aria-pressed:bg-primary-500 dark:aria-pressed:bg-primary-500 data-[state=open]:bg-primary-500 dark:data-[state=open]:bg-primary-500 aria-checked:bg-primary-500 dark:aria-checked:bg-primary-500 aria-checked:text-primary-100";
|
|
647
|
-
var staticDefaultButtonColors = "bg-input-surface text-input-foreground";
|
|
648
|
-
var defaultButtonColors = mx(staticDefaultButtonColors, "data-[state=open]:bg-input-surface aria-pressed:text-accent-text aria-pressed:bg-base-surface aria-checked:text-accent-text aria-checked:bg-base-surface");
|
|
649
|
-
var ghostButtonColors = mx(ghostHover, "hover:text-inherit data-[state=open]:bg-input-surface aria-pressed:text-accent-text aria-pressed:bg-base-surface aria-checked:text-accent-text aria-checked:bg-base-surface");
|
|
650
|
-
var buttonRoot = (_props, ...etc) => {
|
|
651
|
-
return mx("dx-button dx-focus-ring group [&_span]:truncate", ...etc);
|
|
652
|
-
};
|
|
653
|
-
var buttonGroup = (_props, ...etc) => {
|
|
654
|
-
return mx("inline-flex rounded-xs [&>:first-child]:rounded-w-sm [&>:last-child]:rounded-ie-sm [&>button]:relative", ...etc);
|
|
655
|
-
};
|
|
656
|
-
var buttonTheme = {
|
|
657
|
-
root: buttonRoot,
|
|
658
|
-
group: buttonGroup
|
|
659
|
-
};
|
|
660
|
-
|
|
661
|
-
// src/theme/primitives/column.ts
|
|
662
|
-
var withColumn = {
|
|
663
|
-
/** Centers element in the Column grid via --dx-col. No-op outside Column or inside ScrollArea. */
|
|
664
|
-
center: () => "[grid-column:var(--dx-col,auto)]",
|
|
665
|
-
/** Propagates the Column grid to children via subgrid. No-op outside Column.
|
|
666
|
-
* Direct children default to center column unless they are a dx-container (ScrollArea). */
|
|
667
|
-
propagate: () => "[.dx-column-root_&]:col-span-full [.dx-column-root_&]:grid [.dx-column-root_&]:grid-cols-subgrid [.dx-column-root_&]:[&>*:not(.dx-container)]:[grid-column:var(--dx-col,auto)]",
|
|
668
|
-
/** Resets --dx-col after consuming --gutter. Applied by ScrollArea.Viewport. */
|
|
669
|
-
consumed: () => "[--dx-col:auto]"
|
|
670
|
-
};
|
|
671
|
-
var columnRoot = (_, ...etc) => {
|
|
672
|
-
return mx("dx-column-root grid", ...etc);
|
|
673
|
-
};
|
|
674
|
-
var columnRow = (_, ...etc) => {
|
|
675
|
-
return mx("col-span-3 grid grid-cols-subgrid", ...etc);
|
|
676
|
-
};
|
|
677
|
-
var columnBleed = (_, ...etc) => {
|
|
678
|
-
return mx("col-span-full grid grid-cols-subgrid min-h-0", ...etc);
|
|
679
|
-
};
|
|
680
|
-
var columnCenter = (_, ...etc) => {
|
|
681
|
-
return mx(withColumn.center(), "min-h-0", ...etc);
|
|
682
|
-
};
|
|
683
|
-
var columnTheme = {
|
|
684
|
-
root: columnRoot,
|
|
685
|
-
row: columnRow,
|
|
686
|
-
bleed: columnBleed,
|
|
687
|
-
center: columnCenter
|
|
688
|
-
};
|
|
689
|
-
|
|
690
|
-
// src/theme/components/dialog.ts
|
|
691
|
-
var sizeMap2 = {
|
|
692
|
-
sm: "md:max-w-[24rem]",
|
|
693
|
-
md: "md:max-w-[32rem]!",
|
|
694
|
-
lg: "md:max-w-[40rem]!",
|
|
695
|
-
xl: "md:max-w-[60rem]!"
|
|
696
|
-
};
|
|
697
|
-
var dialogOverlay = (_props, ...etc) => mx("dx-dialog__overlay", ...etc);
|
|
698
|
-
var dialogContent = ({ inOverlayLayout, size = "md" }, ...etc) => {
|
|
699
|
-
return mx("@container", "dx-dialog__content dx-focus-ring dx-modal-surface dx-density-coarse py-4", !inOverlayLayout && "fixed z-50 top-[50%] left-[50%] -translate-x-[50%] -translate-y-[50%]", sizeMap2[size], ...etc);
|
|
700
|
-
};
|
|
701
|
-
var dialogHeader = (_props, ...etc) => mx("dx-dialog__header flex pb-4 items-center justify-between", withColumn.center(), ...etc);
|
|
702
|
-
var dialogBody = (_props, ...etc) => mx("dx-dialog__body dx-expander", withColumn.propagate(), ...etc);
|
|
703
|
-
var dialogActionBar = (_props, ...etc) => mx("dx-dialog__actionbar flex items-center pt-4 gap-2 dx-density-coarse", withColumn.center(), ...etc);
|
|
704
|
-
var dialogTitle = ({ srOnly }, ...etc) => mx("dx-dialog__title", srOnly && "sr-only", ...etc);
|
|
705
|
-
var dialogDescription = ({ srOnly }, ...etc) => mx("dx-dialog__description", "text-description", srOnly && "sr-only", ...etc);
|
|
706
|
-
var dialogTheme = {
|
|
707
|
-
overlay: dialogOverlay,
|
|
708
|
-
content: dialogContent,
|
|
709
|
-
header: dialogHeader,
|
|
710
|
-
body: dialogBody,
|
|
711
|
-
actionbar: dialogActionBar,
|
|
712
|
-
title: dialogTitle,
|
|
713
|
-
description: dialogDescription
|
|
714
|
-
};
|
|
715
|
-
|
|
716
|
-
// src/theme/components/focus.ts
|
|
717
|
-
var focusRing = ({ border }, ...etc) => mx("dx-ring-pseudo outline-hidden", "focus:after:ring-focus-ring-subtle", "data-[focus-state=active]:after:ring-focus-ring-subtle", "data-[focus-state=error]:after:ring-rose-500", border && "border border-separator", ...etc);
|
|
718
|
-
var focusTheme = {
|
|
719
|
-
group: focusRing,
|
|
720
|
-
item: focusRing
|
|
721
|
-
};
|
|
722
|
-
|
|
723
|
-
// src/theme/components/icon.ts
|
|
724
|
-
var iconRoot = ({ size }, etc) => {
|
|
725
|
-
return mx("shrink-0 text-[var(--icons-color,currentColor)]", size ? getSize(size) : "[width:var(--icon-size,var(--dx-default-icons-size))] [height:var(--icon-size,var(--dx-default-icons-size))]", etc);
|
|
726
|
-
};
|
|
727
|
-
var iconTheme = {
|
|
728
|
-
root: iconRoot
|
|
729
|
-
};
|
|
730
|
-
|
|
731
|
-
// src/theme/components/icon-button.ts
|
|
732
|
-
var iconButtonRoot = ({ iconOnly, square }, ...etc) => {
|
|
733
|
-
return mx("px-1.5", !iconOnly && "gap-1.5", square && "aspect-square", ...etc);
|
|
734
|
-
};
|
|
735
|
-
var iconButtonTheme = {
|
|
736
|
-
root: iconButtonRoot
|
|
737
|
-
};
|
|
738
|
-
|
|
739
|
-
// src/theme/components/input.ts
|
|
740
|
-
var inputTextLabel = "py-1 text-sm text-description";
|
|
741
|
-
var textInputSurfaceFocus = "transition-colors bg-input-surface focus:bg-focus-surface border border-separator focus:border-separator";
|
|
742
|
-
var textInputSurfaceHover = "hover:bg-focus-surface";
|
|
743
|
-
var booleanInputSurface = "shadow-inner transition-colors bg-un-accent aria-checked:bg-accent-surface aria-[checked=mixed]:bg-accent-surface";
|
|
744
|
-
var booleanInputSurfaceHover = "hover:bg-un-accent-hover hover:aria-checked:bg-accent-surface-hover hover:aria-[checked=mixed]:bg-accent-surface-hover";
|
|
745
|
-
var inputValence = (valence) => {
|
|
746
|
-
switch (valence) {
|
|
747
|
-
case "success":
|
|
748
|
-
return "shadow-emerald-500/50 dark:shadow-emerald-600/50";
|
|
749
|
-
case "info":
|
|
750
|
-
return "shadow-cyan-500/50 dark:shadow-cyan-600/50";
|
|
751
|
-
case "warning":
|
|
752
|
-
return "shadow-amber-500/50 dark:shadow-amber-600/50";
|
|
753
|
-
case "error":
|
|
754
|
-
return "shadow-rose-500/50 dark:shadow-rose-600/50";
|
|
755
|
-
}
|
|
756
|
-
};
|
|
757
|
-
var sharedSubduedInputStyles = (props) => [
|
|
758
|
-
'[[data-drag-autoscroll="active"]_&]:pointer-events-none',
|
|
759
|
-
"py-0 w-full bg-transparent text-current placeholder-placeholder",
|
|
760
|
-
"dx-focus-subdued",
|
|
761
|
-
densityDimensions(props.density),
|
|
762
|
-
props.disabled && staticDisabled
|
|
763
|
-
];
|
|
764
|
-
var sharedDefaultInputStyles = (props) => [
|
|
765
|
-
'[[data-drag-autoscroll="active"]_&]:pointer-events-none',
|
|
766
|
-
"py-0 w-full text-base-foreground rounded-xs placeholder-placeholder",
|
|
767
|
-
textInputSurfaceFocus,
|
|
768
|
-
densityDimensions(props.density),
|
|
769
|
-
props.disabled ? staticDisabled : textInputSurfaceHover
|
|
770
|
-
];
|
|
771
|
-
var sharedStaticInputStyles = (props) => [
|
|
772
|
-
'[[data-drag-autoscroll="active"]_&]:pointer-events-none',
|
|
773
|
-
"py-0 w-full text-base-foreground rounded-xs placeholder-placeholder",
|
|
774
|
-
textInputSurfaceFocus,
|
|
775
|
-
textInputSurfaceHover,
|
|
776
|
-
props.focused && "bg-attention-surface",
|
|
777
|
-
inputValence(props.validationValence),
|
|
778
|
-
props.disabled && staticDisabled,
|
|
779
|
-
props.focused && "dx-focus-static"
|
|
780
|
-
];
|
|
781
|
-
var inputInput = (props, ...etc) => props.variant === "subdued" ? mx(...sharedSubduedInputStyles(props), ...etc) : props.variant === "static" ? mx(...sharedStaticInputStyles(props), ...etc) : mx(...sharedDefaultInputStyles(props), !props.disabled && "dx-focus-ring", inputValence(props.validationValence), ...etc);
|
|
782
|
-
var inputTextArea = (props, ...etc) => inputInput(props, ...etc);
|
|
783
|
-
var inputCheckbox = ({ size = 5 }, ...etc) => mx("dx-checkbox dx-focus-ring", getSize(size), ...etc);
|
|
784
|
-
var inputCheckboxIndicator = ({ size = 5, checked }, ...etc) => mx(getSize(snapSize(sizeValue(size) * 0.65, 4)), !checked && "invisible", ...etc);
|
|
785
|
-
var inputSwitch = ({ size = 5, disabled }, ...etc) => mx(
|
|
786
|
-
getHeight(size),
|
|
787
|
-
getWidth(snapSize(sizeValue(size) * 1.75, 9)),
|
|
788
|
-
booleanInputSurface,
|
|
789
|
-
!disabled && booleanInputSurfaceHover,
|
|
790
|
-
// TODO(burdon): Added m-1 margin to make 40px width to align with 40px icon button.
|
|
791
|
-
"cursor-pointer shrink-0 rounded-full px-1 mx-1 relative",
|
|
792
|
-
"dx-focus-ring",
|
|
793
|
-
...etc
|
|
794
|
-
);
|
|
795
|
-
var inputSwitchThumb = ({ size = 5 }, ...etc) => mx(getSize(size === "px" ? "px" : size - 2), "block bg-white rounded-full transition-transform duration-100 will-change-transform data-[state=checked]:translate-x-[100%]", ...etc);
|
|
796
|
-
var inputWithSegmentsInput = (props, ...etc) => mx("font-mono selection:bg-transparent mx-auto", props.density === "fine" ? "text-base pointer-fine:text-sm" : "text-lg", props.disabled && "cursor-not-allowed", ...etc);
|
|
797
|
-
var inputSegment = (props, ...etc) => mx("flex items-center justify-center font-mono", props.density === "fine" ? "size-10 pointer-fine:size-8 rounded-xs" : "size-12 rounded-xs", "bg-input-surface text-base-foreground transition-colors border border-separator", "data-[focused]:bg-attention-surface data-[focused]:border-focus-ring-subtle", "data-[focused]:ring-2 data-[focused]:ring-offset-0 data-[focused]:ring-focus-ring-subtle", inputValence(props.validationValence), props.disabled && staticDisabled, ...etc);
|
|
798
|
-
var inputLabel = (props, ...etc) => mx("block", inputTextLabel, props.srOnly && "sr-only", ...etc);
|
|
799
|
-
var inputDescription = (props, ...etc) => mx("text-description", props.srOnly && "sr-only", ...etc);
|
|
800
|
-
var inputDescriptionAndValidation = (props, ...etc) => mx("leading-none my-1.5", props.srOnly && "sr-only", ...etc);
|
|
801
|
-
var inputValidation = (props, ...etc) => mx(inputTextLabel, props.srOnly ? "sr-only" : textValence(props.validationValence), ...etc);
|
|
802
|
-
var inputTheme = {
|
|
803
|
-
input: inputInput,
|
|
804
|
-
textArea: inputTextArea,
|
|
805
|
-
inputWithSegments: inputWithSegmentsInput,
|
|
806
|
-
segment: inputSegment,
|
|
807
|
-
checkbox: inputCheckbox,
|
|
808
|
-
checkboxIndicator: inputCheckboxIndicator,
|
|
809
|
-
label: inputLabel,
|
|
810
|
-
description: inputDescription,
|
|
811
|
-
switch: inputSwitch,
|
|
812
|
-
switchThumb: inputSwitchThumb,
|
|
813
|
-
validation: inputValidation,
|
|
814
|
-
descriptionAndValidation: inputDescriptionAndValidation
|
|
815
|
-
};
|
|
816
|
-
|
|
817
|
-
// src/theme/components/link.ts
|
|
818
|
-
var linkRoot = ({ variant }, ...etc) => mx("underline decoration-1 underline-offset-2 transition-color rounded-xs", variant === "neutral" ? "text-inherit hover:opacity-90 visited:text-inherit visited:hover:opacity-90" : "text-accent-text hover:text-accent-text-hover visited:text-accent-text visited:hover:text-accent-text-hover", "dx-focus-ring", ...etc);
|
|
819
|
-
var linkTheme = {
|
|
820
|
-
root: linkRoot
|
|
821
|
-
};
|
|
822
|
-
|
|
823
|
-
// src/theme/components/list.ts
|
|
824
|
-
var listRoot = (_, ...etc) => mx(...etc);
|
|
825
|
-
var listItem = ({ collapsible }, ...etc) => mx(!collapsible && "flex", ...etc);
|
|
826
|
-
var listItemEndcap = ({ density }, ...etc) => mx(density === "fine" ? getSize(8) : getSize(10), "shrink-0 flex items-center justify-center", ...etc);
|
|
827
|
-
var listItemHeading = ({ density }, ...etc) => mx(densityBlockSize(density), "flex items-center overflow-hidden [&>span]:truncate", ...etc);
|
|
828
|
-
var listItemDragHandleIcon = (_props, ...etc) => mx(getSize(5), "mt-2.5", ...etc);
|
|
829
|
-
var listItemOpenTrigger = ({ density }, ...etc) => mx("w-5 rounded-sm flex justify-center items-center", densityBlockSize(density), ghostHover, "dx-focus-ring", ...etc);
|
|
830
|
-
var listItemOpenTriggerIcon = (_props, ...etc) => {
|
|
831
|
-
return mx(getSize(5), ...etc);
|
|
832
|
-
};
|
|
833
|
-
var listTheme = {
|
|
834
|
-
root: listRoot,
|
|
835
|
-
item: {
|
|
836
|
-
root: listItem,
|
|
837
|
-
endcap: listItemEndcap,
|
|
838
|
-
heading: listItemHeading,
|
|
839
|
-
dragHandleIcon: listItemDragHandleIcon,
|
|
840
|
-
openTrigger: listItemOpenTrigger,
|
|
841
|
-
openTriggerIcon: listItemOpenTriggerIcon
|
|
553
|
+
return "font-medium border-neutral-text text-neutral-fg bg-neutral-surface";
|
|
842
554
|
}
|
|
843
555
|
};
|
|
844
|
-
|
|
845
|
-
// src/theme/components/main.ts
|
|
846
|
-
var topbarBlockPaddingStart = "py-(--dx-topbar-size) dx-sticky-top-from-topbar-bottom";
|
|
847
|
-
var bottombarBlockPaddingEnd = "pb-(--dx-statusbar-size) dx-sticky-bottom-from-statusbar-bottom";
|
|
848
|
-
var mainPadding = "dx-main-content-padding";
|
|
849
|
-
var mainPaddingTransitions = "dx-main-content-padding-transitions";
|
|
850
|
-
var mainIntrinsicSize = "dx-main-intrinsic-size";
|
|
851
|
-
var mainContent = ({ bounce }, ...etc) => mx(mainPadding, mainPaddingTransitions, bounce && "dx-main-bounce-layout", "dx-focus-ring-main", ...etc);
|
|
852
|
-
var mainSidebar = (_, ...etc) => mx("dx-main-sidebar", "dx-focus-ring-inset-over-all", ...etc);
|
|
853
|
-
var mainOverlay = (_, ...etc) => mx("dx-main-overlay", ...etc);
|
|
854
|
-
var mainTheme = {
|
|
855
|
-
content: mainContent,
|
|
856
|
-
sidebar: mainSidebar,
|
|
857
|
-
overlay: mainOverlay
|
|
858
|
-
};
|
|
859
|
-
|
|
860
|
-
// src/theme/components/menu.ts
|
|
861
|
-
var menuContent = ({ elevation }, ...etc) => mx("dx-modal-surface w-48 rounded-sm md:w-56 border border-separator", surfaceZIndex({
|
|
862
|
-
elevation,
|
|
863
|
-
level: "menu"
|
|
864
|
-
}), surfaceShadow({
|
|
865
|
-
elevation: "positioned"
|
|
866
|
-
}), ...etc);
|
|
867
|
-
var menuViewport = (_props, ...etc) => mx("rounded-sm p-1 max-h-[var(--radix-dropdown-menu-content-available-height)] overflow-y-auto", ...etc);
|
|
868
|
-
var menuItem = (_props, ...etc) => mx("flex cursor-pointer select-none items-center gap-2 rounded-xs px-2 py-2 text-sm", "hover:bg-hover-surface data-[highlighted]:bg-hover-surface", "dx-focus-subdued", dataDisabled, ...etc);
|
|
869
|
-
var menuSeparator = (_props, ...etc) => mx("my-1 mx-2 h-px bg-separator", ...etc);
|
|
870
|
-
var menuGroupLabel = (_props, ...etc) => mx("text-description", "select-none px-2 py-2", ...etc);
|
|
871
|
-
var menuArrow = (_props, ...etc) => mx("fill-separator", ...etc);
|
|
872
|
-
var menuTheme = {
|
|
873
|
-
content: menuContent,
|
|
874
|
-
viewport: menuViewport,
|
|
875
|
-
item: menuItem,
|
|
876
|
-
separator: menuSeparator,
|
|
877
|
-
groupLabel: menuGroupLabel,
|
|
878
|
-
arrow: menuArrow
|
|
879
|
-
};
|
|
880
|
-
|
|
881
|
-
// src/theme/components/message.ts
|
|
882
|
-
var messageRoot = ({ valence }, etc) => {
|
|
883
|
-
return mx("grid grid-cols-[2rem_1fr_2rem] p-1 rounded-sm", messageValence(valence), etc);
|
|
884
|
-
};
|
|
885
|
-
var messageHeader = (_, etc) => {
|
|
886
|
-
return mx("col-span-full grid grid-cols-subgrid items-center", etc);
|
|
887
|
-
};
|
|
888
|
-
var messageTitle = (_, etc) => {
|
|
889
|
-
return mx("col-start-2 truncate", etc);
|
|
890
|
-
};
|
|
891
|
-
var messageIcon = (_, etc) => {
|
|
892
|
-
return mx("col-start-1 grid place-items-center", etc);
|
|
893
|
-
};
|
|
894
|
-
var messageContent = (_, etc) => {
|
|
895
|
-
return mx("col-start-2 grid grid-cols-subgrid inline first:font-medium", etc);
|
|
896
|
-
};
|
|
897
|
-
var messageTheme = {
|
|
898
|
-
root: messageRoot,
|
|
899
|
-
header: messageHeader,
|
|
900
|
-
icon: messageIcon,
|
|
901
|
-
title: messageTitle,
|
|
902
|
-
content: messageContent
|
|
903
|
-
};
|
|
904
|
-
|
|
905
|
-
// src/theme/components/popover.ts
|
|
906
|
-
var popoverContent = ({ elevation }, ...etc) => mx("dx-modal-surface border border-separator rounded-sm", surfaceShadow({
|
|
907
|
-
elevation: "positioned"
|
|
908
|
-
}), surfaceZIndex({
|
|
909
|
-
elevation,
|
|
910
|
-
level: "menu"
|
|
911
|
-
}), "dx-focus-ring", ...etc);
|
|
912
|
-
var popoverViewport = ({ constrainBlock, constrainInline }, ...etc) => mx("grid grid-rows-[1fr] min-h-0 min-w-popover-min-width", (constrainBlock || constrainInline) && "overflow-hidden", constrainBlock && "max-h-(--radix-popover-content-available-height)", constrainBlock && "max-h-[min(var(--radix-popover-content-available-height),calc(100dvh-var(--spacing-screen-border)*2))]", constrainInline && "max-w-(--radix-popover-content-available-width)", ...etc);
|
|
913
|
-
var popoverArrow = (_props, ...etc) => mx("fill-separator", ...etc);
|
|
914
|
-
var popoverTheme = {
|
|
915
|
-
content: popoverContent,
|
|
916
|
-
viewport: popoverViewport,
|
|
917
|
-
arrow: popoverArrow
|
|
918
|
-
};
|
|
919
|
-
|
|
920
|
-
// src/theme/components/scroll-area.ts
|
|
921
|
-
var scrollbar = {
|
|
922
|
-
thin: {
|
|
923
|
-
size: 4,
|
|
924
|
-
padding: 4
|
|
925
|
-
},
|
|
926
|
-
coarse: {
|
|
927
|
-
size: 8,
|
|
928
|
-
padding: 8
|
|
929
|
-
}
|
|
930
|
-
};
|
|
931
|
-
var scrollAreaRoot = ({ orientation }, ...etc) => mx(
|
|
932
|
-
// Expand
|
|
933
|
-
"dx-container",
|
|
934
|
-
orientation === "vertical" && "group/scroll-v flex flex-col",
|
|
935
|
-
orientation === "horizontal" && "group/scroll-h flex",
|
|
936
|
-
orientation === "all" && "group/scroll-all",
|
|
937
|
-
// Apply col-span-full only when inside a Column.Root grid (detected via dx-column-root marker).
|
|
938
|
-
"[.dx-column-root_&]:col-span-full",
|
|
939
|
-
...etc
|
|
940
|
-
);
|
|
941
|
-
var scrollAreaViewport = ({ orientation, centered, padding, snap, autoHide }, ...etc) => {
|
|
942
|
-
return mx(
|
|
943
|
-
"flex-1 min-h-0 w-full",
|
|
944
|
-
// Reset --dx-col so nested components don't try to grid-position themselves.
|
|
945
|
-
// ScrollArea has already consumed --gutter for padding.
|
|
946
|
-
withColumn.consumed(),
|
|
947
|
-
orientation === "vertical" && "overflow-y-scroll",
|
|
948
|
-
orientation === "horizontal" && "flex overflow-x-scroll overscroll-x-contain",
|
|
949
|
-
orientation === "all" && "overflow-scroll",
|
|
950
|
-
"[&::-webkit-scrollbar-corner]:bg-transparent",
|
|
951
|
-
"[&::-webkit-scrollbar-track]:bg-transparent",
|
|
952
|
-
"[&::-webkit-scrollbar-thumb]:rounded-none",
|
|
953
|
-
"[&::-webkit-scrollbar]:w-[var(--scroll-width)] [&::-webkit-scrollbar]:h-[var(--scroll-width)]",
|
|
954
|
-
// If contained within Column.Root grid the gutter is set by that component (--gutter CSS variable).
|
|
955
|
-
// If centered, left padding compensates for scrollbar width so content is visually centered.
|
|
956
|
-
(orientation === "vertical" || orientation === "all") && (padding ? [
|
|
957
|
-
centered ? "pl-[var(--gutter,calc(var(--scroll-width)+var(--scroll-padding)))]" : "pl-[var(--gutter,0)]",
|
|
958
|
-
"pr-[calc(var(--gutter,calc(var(--scroll-width)+var(--scroll-padding)))-var(--scroll-width))]"
|
|
959
|
-
] : centered && "pl-[var(--scroll-width)]"),
|
|
960
|
-
(orientation === "horizontal" || orientation === "all") && (padding ? [
|
|
961
|
-
centered && "pt-[calc(var(--scroll-width)+var(--scroll-padding))]",
|
|
962
|
-
"pb-[var(--scroll-padding)]"
|
|
963
|
-
] : centered && "pt-[var(--scroll-width)]"),
|
|
964
|
-
snap && [
|
|
965
|
-
orientation === "vertical" && "snap-y snap-mandatory",
|
|
966
|
-
orientation === "horizontal" && "snap-x snap-mandatory",
|
|
967
|
-
orientation === "all" && "snap-both snap-mandatory"
|
|
968
|
-
],
|
|
969
|
-
autoHide ? [
|
|
970
|
-
orientation === "vertical" && "group-hover/scroll-v:[&::-webkit-scrollbar-thumb]:bg-scrollbar-thumb",
|
|
971
|
-
orientation === "horizontal" && "group-hover/scroll-h:[&::-webkit-scrollbar-thumb]:bg-scrollbar-thumb",
|
|
972
|
-
orientation === "all" && "group-hover/scroll-all:[&::-webkit-scrollbar-thumb]:bg-scrollbar-thumb"
|
|
973
|
-
] : [
|
|
974
|
-
orientation === "vertical" && "[&::-webkit-scrollbar-thumb]:bg-scrollbar-thumb",
|
|
975
|
-
orientation === "horizontal" && "[&::-webkit-scrollbar-thumb]:bg-scrollbar-thumb",
|
|
976
|
-
orientation === "all" && "[&::-webkit-scrollbar-thumb]:bg-scrollbar-thumb"
|
|
977
|
-
],
|
|
978
|
-
...etc
|
|
979
|
-
);
|
|
980
|
-
};
|
|
981
|
-
var scrollAreaTheme = {
|
|
982
|
-
root: scrollAreaRoot,
|
|
983
|
-
viewport: scrollAreaViewport
|
|
984
|
-
};
|
|
985
|
-
|
|
986
|
-
// src/theme/components/select.ts
|
|
987
|
-
var selectContent = ({ elevation }, ...etc) => {
|
|
988
|
-
return mx("dx-modal-surface rounded-sm border border-separator", "min-w-(--radix-select-trigger-width) max-h-(--radix-select-content-available-height)", surfaceShadow({
|
|
989
|
-
elevation: "positioned"
|
|
990
|
-
}), surfaceZIndex({
|
|
991
|
-
elevation,
|
|
992
|
-
level: "menu"
|
|
993
|
-
}), ...etc);
|
|
994
|
-
};
|
|
995
|
-
var selectViewport = (_props, ...etc) => mx(...etc);
|
|
996
|
-
var selectItem = (_props, ...etc) => mx("flex items-center min-h-[2rem] px-3 py-1 gap-2", "text-base-foreground leading-none select-none outline-hidden", "[&>svg]:invisible [&[data-state=checked]>svg]:visible", "dx-highlighted", ...etc);
|
|
997
|
-
var selectItemIndicator = (_props, ...etc) => mx("items-center", ...etc);
|
|
998
|
-
var selectArrow = (_props, ...etc) => mx("fill-separator", ...etc);
|
|
999
|
-
var selectSeparator = (_props, ...etc) => mx("self-stretch border-b my-1 border-separator", ...etc);
|
|
1000
|
-
var selectScrollButton = (_props, ...etc) => mx("dx-modal-surface flex items-center justify-center cursor-default h-6 w-full", ...etc);
|
|
1001
|
-
var selectTheme = {
|
|
1002
|
-
content: selectContent,
|
|
1003
|
-
viewport: selectViewport,
|
|
1004
|
-
item: selectItem,
|
|
1005
|
-
itemIndicator: selectItemIndicator,
|
|
1006
|
-
arrow: selectArrow,
|
|
1007
|
-
separator: selectSeparator,
|
|
1008
|
-
scrollButton: selectScrollButton
|
|
1009
|
-
};
|
|
1010
|
-
|
|
1011
|
-
// src/theme/components/splitter.ts
|
|
1012
|
-
var splitterRoot = (_props, ...etc) => mx("relative h-full overflow-hidden", ...etc);
|
|
1013
|
-
var splitterPanel = (_props, ...etc) => mx("absolute inset-x-0 flex flex-col overflow-hidden", ...etc);
|
|
1014
|
-
var splitterTheme = {
|
|
1015
|
-
root: splitterRoot,
|
|
1016
|
-
panel: splitterPanel
|
|
1017
|
-
};
|
|
1018
|
-
|
|
1019
|
-
// src/theme/components/separator.ts
|
|
1020
|
-
var separatorRoot = ({ orientation, subdued }, ...etc) => mx("self-stretch", orientation === "vertical" ? "border-e mx-1" : "border-b my-1", subdued ? "border-subdued-separator" : "border-separator", ...etc);
|
|
1021
|
-
var separatorTheme = {
|
|
1022
|
-
root: separatorRoot
|
|
1023
|
-
};
|
|
1024
|
-
|
|
1025
|
-
// src/theme/components/skeleton.ts
|
|
1026
|
-
var skeletonRoot = ({ variant = "default" }, ...etc) => mx("animate-pulse bg-neutral-300 dark:bg-neutral-700 rounded-md", variant === "circle" && "rounded-full", variant === "text" && "rounded-sm", ...etc);
|
|
1027
|
-
var skeletonTheme = {
|
|
1028
|
-
root: skeletonRoot
|
|
1029
|
-
};
|
|
1030
|
-
|
|
1031
|
-
// src/theme/components/status.ts
|
|
1032
|
-
var statusRoot = ({ variant = "default" }, ...etc) => mx("h-1 relative rounded-full overflow-hidden", variant === "main-bottom" ? "w-full block" : "inline-20 inline-block bg-base-surface", ...etc);
|
|
1033
|
-
var statusBar = ({ variant = "default", indeterminate }, ...etc) => mx("absolute inset-y-0 block rounded-full", variant === "main-bottom" ? "bg-composer-300" : "bg-un-accent", indeterminate ? "animate-progress-indeterminate" : "start-0", ...etc);
|
|
1034
|
-
var statusTheme = {
|
|
1035
|
-
root: statusRoot,
|
|
1036
|
-
bar: statusBar
|
|
1037
|
-
};
|
|
1038
|
-
|
|
1039
|
-
// src/theme/components/tag.ts
|
|
1040
|
-
var tagRoot = (_, ...etc) => mx("dx-tag", ...etc);
|
|
1041
|
-
var tagTheme = {
|
|
1042
|
-
root: tagRoot
|
|
1043
|
-
};
|
|
1044
|
-
|
|
1045
|
-
// src/theme/components/toast.ts
|
|
1046
|
-
var toastViewport = (_props, ...etc) => mx(
|
|
1047
|
-
// TODO(burdon): block-end should take into account status bar.
|
|
1048
|
-
"z-40 fixed bottom-[calc(env(safe-area-inset-bottom)+1rem)] inset-start-[calc(env(safe-area-inset-left)+1rem)] inset-end-[calc(env(safe-area-inset-right)+1rem)] w-auto md:end-[calc(env(safe-area-inset-right)+1rem)] md:left-auto md:w-full md:max-w-sm",
|
|
1049
|
-
"rounded-md flex flex-col gap-2",
|
|
1050
|
-
...etc
|
|
1051
|
-
);
|
|
1052
|
-
var toastRoot = (_props, ...etc) => mx("dx-modal-surface rounded-md flex p-2 gap-2", surfaceShadow({
|
|
1053
|
-
elevation: "toast"
|
|
1054
|
-
}), "radix-state-open:animate-toast-slide-in-bottom md:radix-state-open:animate-toast-slide-in-right", "radix-state-closed:animate-toast-hide", "radix-swipe-end:animate-toast-swipe-out", "translate-x-radix-toast-swipe-move-x", "radix-swipe-cancel:translate-x-0 radix-swipe-cancel:duration-200 radix-swipe-cancel:ease-[ease]", "dx-focus-ring", ...etc);
|
|
1055
|
-
var toastBody = (_props, ...etc) => mx("grow flex flex-col gap-1 justify-center pl-2", ...etc);
|
|
1056
|
-
var toastActions = (_props, ...etc) => mx("shrink-0 flex flex-col gap-1 justify-center", ...etc);
|
|
1057
|
-
var toastTitle = ({ srOnly }, ...etc) => mx("shrink-0 font-medium", srOnly && "sr-only", ...etc);
|
|
1058
|
-
var toastDescription = ({ srOnly }, ...etc) => mx("text-description", "shrink-0", srOnly && "sr-only", ...etc);
|
|
1059
|
-
var toastTheme = {
|
|
1060
|
-
viewport: toastViewport,
|
|
1061
|
-
root: toastRoot,
|
|
1062
|
-
body: toastBody,
|
|
1063
|
-
title: toastTitle,
|
|
1064
|
-
description: toastDescription,
|
|
1065
|
-
actions: toastActions
|
|
1066
|
-
};
|
|
1067
|
-
|
|
1068
|
-
// src/theme/components/toolbar.ts
|
|
1069
|
-
var toolbarLayout = "w-full shrink-0 flex flex-nowrap p-1 gap-1 items-center overflow-x-auto scrollbar-none dx-contain-layout";
|
|
1070
|
-
var toolbarRoot = ({ density, disabled, layoutManaged }, ...etc) => {
|
|
1071
|
-
return mx("bg-toolbar-surface dx-toolbar", density === "coarse" && "h-(--dx-rail-size) px-3!", disabled && "*:opacity-20", !layoutManaged && toolbarLayout, ...etc);
|
|
1072
|
-
};
|
|
1073
|
-
var toolbarText = (_, ...etc) => {
|
|
1074
|
-
return mx("px-2 grow truncate items-center", ...etc);
|
|
1075
|
-
};
|
|
1076
|
-
var toolbarTheme = {
|
|
1077
|
-
root: toolbarRoot,
|
|
1078
|
-
text: toolbarText
|
|
1079
|
-
};
|
|
1080
|
-
|
|
1081
|
-
// src/theme/components/tooltip.ts
|
|
1082
|
-
var tooltipContent = ({ elevation }, ...etc) => mx("inline-flex items-center p-1 max-w-64 text-sm bg-inverse-surface text-inverse-foreground rounded-sm", surfaceShadow({
|
|
1083
|
-
elevation: "positioned"
|
|
1084
|
-
}), surfaceZIndex({
|
|
1085
|
-
elevation,
|
|
1086
|
-
level: "tooltip"
|
|
1087
|
-
}), ...etc);
|
|
1088
|
-
var tooltipArrow = (_props, ...etc) => mx("fill-inverse-surface", ...etc);
|
|
1089
|
-
var tooltipTheme = {
|
|
1090
|
-
content: tooltipContent,
|
|
1091
|
-
arrow: tooltipArrow
|
|
1092
|
-
};
|
|
1093
|
-
|
|
1094
|
-
// src/theme/components/treegrid.ts
|
|
1095
|
-
var levelStyles = /* @__PURE__ */ new Map([
|
|
1096
|
-
[
|
|
1097
|
-
1,
|
|
1098
|
-
"[&>.indent:first-of-type]:pl-0 font-medium"
|
|
1099
|
-
],
|
|
1100
|
-
[
|
|
1101
|
-
2,
|
|
1102
|
-
"[&>.indent:first-of-type]:pl-0"
|
|
1103
|
-
],
|
|
1104
|
-
[
|
|
1105
|
-
3,
|
|
1106
|
-
"[&>.indent:first-of-type]:pl-1"
|
|
1107
|
-
],
|
|
1108
|
-
[
|
|
1109
|
-
4,
|
|
1110
|
-
"[&>.indent:first-of-type]:pl-2"
|
|
1111
|
-
],
|
|
1112
|
-
[
|
|
1113
|
-
5,
|
|
1114
|
-
"[&>.indent:first-of-type]:pl-3"
|
|
1115
|
-
],
|
|
1116
|
-
[
|
|
1117
|
-
6,
|
|
1118
|
-
"[&>.indent:first-of-type]:pl-4"
|
|
1119
|
-
],
|
|
1120
|
-
[
|
|
1121
|
-
7,
|
|
1122
|
-
"[&>.indent:first-of-type]:pl-5"
|
|
1123
|
-
],
|
|
1124
|
-
[
|
|
1125
|
-
8,
|
|
1126
|
-
"[&>.indent:first-of-type]:pl-6"
|
|
1127
|
-
]
|
|
1128
|
-
]);
|
|
1129
|
-
var treegridRoot = (_, ...etc) => mx("grid", ...etc);
|
|
1130
|
-
var treegridRow = ({ level = 1 }, ...etc) => mx(levelStyles.get(Math.min(Math.max(Math.round(level), 1), 8)), ...etc);
|
|
1131
|
-
var treegridCell = ({ indent }, ...etc) => mx(indent && "indent", ...etc);
|
|
1132
|
-
var treegridTheme = {
|
|
1133
|
-
root: treegridRoot,
|
|
1134
|
-
row: treegridRow,
|
|
1135
|
-
cell: treegridCell
|
|
1136
|
-
};
|
|
1137
|
-
|
|
1138
|
-
// src/theme/primitives/panel.ts
|
|
1139
|
-
var sizes = {
|
|
1140
|
-
lg: "h-(--dx-topbar-size)",
|
|
1141
|
-
md: "h-(--dx-toolbar-size)",
|
|
1142
|
-
sm: "h-(--dx-statusbar-size)"
|
|
1143
|
-
};
|
|
1144
|
-
var panelRoot = (_, ...etc) => mx(
|
|
1145
|
-
// prettier-ignore
|
|
1146
|
-
"dx-container grid grid-cols-[100%] overflow-hidden",
|
|
1147
|
-
// Add uncategorized children to content slot.
|
|
1148
|
-
"[&>*:not([data-slot])]:[grid-area:content]",
|
|
1149
|
-
...etc
|
|
1150
|
-
);
|
|
1151
|
-
var panelToolbar = ({ size = "md" }, ...etc) => mx("[grid-area:toolbar]", "shrink-0", sizes[size], ...etc);
|
|
1152
|
-
var panelContent = (_, ...etc) => mx("[grid-area:content] min-h-0", ...etc);
|
|
1153
|
-
var panelStatusbar = ({ size = "md" }, ...etc) => mx("[grid-area:statusbar]", "shrink-0", sizes[size], ...etc);
|
|
1154
|
-
var panelTheme = {
|
|
1155
|
-
root: panelRoot,
|
|
1156
|
-
toolbar: panelToolbar,
|
|
1157
|
-
content: panelContent,
|
|
1158
|
-
statusbar: panelStatusbar
|
|
1159
|
-
};
|
|
1160
|
-
|
|
1161
|
-
// src/theme/theme.ts
|
|
1162
|
-
import { getDeep } from "@dxos/util";
|
|
1163
|
-
var defaultTheme = {
|
|
1164
|
-
themeName: () => "default",
|
|
1165
|
-
//
|
|
1166
|
-
// Primitives
|
|
1167
|
-
//
|
|
1168
|
-
column: columnTheme,
|
|
1169
|
-
panel: panelTheme,
|
|
1170
|
-
//
|
|
1171
|
-
// Components
|
|
1172
|
-
//
|
|
1173
|
-
avatar: avatarTheme,
|
|
1174
|
-
breadcrumb: breadcrumbTheme,
|
|
1175
|
-
button: buttonTheme,
|
|
1176
|
-
card: cardTheme,
|
|
1177
|
-
dialog: dialogTheme,
|
|
1178
|
-
focus: focusTheme,
|
|
1179
|
-
icon: iconTheme,
|
|
1180
|
-
iconButton: iconButtonTheme,
|
|
1181
|
-
input: inputTheme,
|
|
1182
|
-
link: linkTheme,
|
|
1183
|
-
list: listTheme,
|
|
1184
|
-
main: mainTheme,
|
|
1185
|
-
message: messageTheme,
|
|
1186
|
-
menu: menuTheme,
|
|
1187
|
-
popover: popoverTheme,
|
|
1188
|
-
scrollArea: scrollAreaTheme,
|
|
1189
|
-
select: selectTheme,
|
|
1190
|
-
separator: separatorTheme,
|
|
1191
|
-
skeleton: skeletonTheme,
|
|
1192
|
-
splitter: splitterTheme,
|
|
1193
|
-
status: statusTheme,
|
|
1194
|
-
tag: tagTheme,
|
|
1195
|
-
toast: toastTheme,
|
|
1196
|
-
toolbar: toolbarTheme,
|
|
1197
|
-
tooltip: tooltipTheme,
|
|
1198
|
-
treegrid: treegridTheme
|
|
1199
|
-
};
|
|
1200
|
-
var bindTheme = (theme) => {
|
|
1201
|
-
return (path, styleProps, ...etc) => {
|
|
1202
|
-
const result = getDeep(theme, path.split("."));
|
|
1203
|
-
return typeof result === "function" ? result(styleProps ?? {}, ...etc) : void 0;
|
|
1204
|
-
};
|
|
1205
|
-
};
|
|
1206
|
-
var defaultTx = bindTheme(defaultTheme);
|
|
556
|
+
var buttonValence = (_valence) => "text-(--dx-valence-text) bg-(--dx-valence-bg) hover:bg-(--dx-valence-bg-hover)";
|
|
1207
557
|
export {
|
|
1208
|
-
|
|
1209
|
-
avatarFallbackText,
|
|
1210
|
-
avatarFrame,
|
|
1211
|
-
avatarGroup,
|
|
1212
|
-
avatarGroupDescription,
|
|
1213
|
-
avatarGroupLabel,
|
|
1214
|
-
avatarLabel,
|
|
1215
|
-
avatarRing,
|
|
1216
|
-
avatarRoot,
|
|
1217
|
-
avatarStatusIcon,
|
|
1218
|
-
avatarTheme,
|
|
1219
|
-
bindTheme,
|
|
1220
|
-
bottombarBlockPaddingEnd,
|
|
1221
|
-
breadcrumbCurrent,
|
|
1222
|
-
breadcrumbList,
|
|
1223
|
-
breadcrumbListItem,
|
|
1224
|
-
breadcrumbRoot,
|
|
1225
|
-
breadcrumbSeparator,
|
|
1226
|
-
breadcrumbTheme,
|
|
1227
|
-
buttonTheme,
|
|
558
|
+
buttonValence,
|
|
1228
559
|
cardDefaultInlineSize,
|
|
1229
560
|
cardMaxBlockSize,
|
|
1230
561
|
cardMaxInlineSize,
|
|
1231
562
|
cardMinBlockSize,
|
|
1232
563
|
cardMinInlineSize,
|
|
1233
|
-
cardTheme,
|
|
1234
|
-
columnTheme,
|
|
1235
|
-
composable,
|
|
1236
|
-
composableProps,
|
|
1237
564
|
dataDisabled,
|
|
1238
|
-
defaultButtonColors,
|
|
1239
|
-
defaultTheme,
|
|
1240
|
-
defaultTx,
|
|
1241
565
|
densityBlockSize,
|
|
1242
566
|
densityDimensions,
|
|
1243
567
|
descriptionMessage,
|
|
1244
|
-
dialogActionBar,
|
|
1245
|
-
dialogBody,
|
|
1246
|
-
dialogContent,
|
|
1247
|
-
dialogDescription,
|
|
1248
|
-
dialogHeader,
|
|
1249
|
-
dialogOverlay,
|
|
1250
|
-
dialogTheme,
|
|
1251
|
-
dialogTitle,
|
|
1252
|
-
focusTheme,
|
|
1253
568
|
getHashHue,
|
|
1254
569
|
getHashStyles,
|
|
1255
570
|
getHeight,
|
|
1256
571
|
getSize,
|
|
1257
572
|
getStyles,
|
|
1258
573
|
getWidth,
|
|
1259
|
-
ghostButtonColors,
|
|
1260
574
|
ghostFocusWithin,
|
|
1261
575
|
ghostHover,
|
|
1262
576
|
groupHoverControlItemWithTransition,
|
|
@@ -1267,104 +581,19 @@ export {
|
|
|
1267
581
|
hoverableOpenControlItem,
|
|
1268
582
|
hueShades,
|
|
1269
583
|
hues,
|
|
1270
|
-
iconButtonRoot,
|
|
1271
|
-
iconButtonTheme,
|
|
1272
|
-
iconRoot,
|
|
1273
584
|
iconSize,
|
|
1274
|
-
iconTheme,
|
|
1275
|
-
inputTextLabel,
|
|
1276
|
-
inputTheme,
|
|
1277
|
-
linkRoot,
|
|
1278
|
-
linkTheme,
|
|
1279
|
-
listItem,
|
|
1280
|
-
listItemDragHandleIcon,
|
|
1281
|
-
listItemEndcap,
|
|
1282
|
-
listItemHeading,
|
|
1283
|
-
listItemOpenTrigger,
|
|
1284
|
-
listItemOpenTriggerIcon,
|
|
1285
|
-
listRoot,
|
|
1286
|
-
listTheme,
|
|
1287
|
-
mainContent,
|
|
1288
|
-
mainIntrinsicSize,
|
|
1289
|
-
mainOverlay,
|
|
1290
|
-
mainPadding,
|
|
1291
|
-
mainPaddingTransitions,
|
|
1292
|
-
mainSidebar,
|
|
1293
|
-
mainTheme,
|
|
1294
|
-
menuArrow,
|
|
1295
|
-
menuContent,
|
|
1296
|
-
menuGroupLabel,
|
|
1297
|
-
menuItem,
|
|
1298
|
-
menuSeparator,
|
|
1299
|
-
menuTheme,
|
|
1300
|
-
menuViewport,
|
|
1301
|
-
messageContent,
|
|
1302
|
-
messageHeader,
|
|
1303
|
-
messageIcon,
|
|
1304
|
-
messageRoot,
|
|
1305
|
-
messageTheme,
|
|
1306
|
-
messageTitle,
|
|
1307
585
|
messageValence,
|
|
1308
586
|
mx,
|
|
1309
587
|
osTranslations,
|
|
1310
588
|
palette,
|
|
1311
|
-
panelTheme,
|
|
1312
|
-
popoverArrow,
|
|
1313
|
-
popoverContent,
|
|
1314
|
-
popoverTheme,
|
|
1315
|
-
popoverViewport,
|
|
1316
|
-
primaryButtonColors,
|
|
1317
589
|
roles,
|
|
1318
|
-
scrollAreaRoot,
|
|
1319
|
-
scrollAreaTheme,
|
|
1320
|
-
scrollAreaViewport,
|
|
1321
|
-
scrollbar,
|
|
1322
|
-
selectArrow,
|
|
1323
|
-
selectContent,
|
|
1324
|
-
selectItem,
|
|
1325
|
-
selectItemIndicator,
|
|
1326
|
-
selectScrollButton,
|
|
1327
|
-
selectSeparator,
|
|
1328
|
-
selectTheme,
|
|
1329
|
-
selectViewport,
|
|
1330
|
-
separatorRoot,
|
|
1331
|
-
separatorTheme,
|
|
1332
590
|
sizeToRem,
|
|
1333
591
|
sizeValue,
|
|
1334
|
-
skeletonRoot,
|
|
1335
|
-
skeletonTheme,
|
|
1336
|
-
slottable,
|
|
1337
592
|
snapSize,
|
|
1338
|
-
splitterTheme,
|
|
1339
|
-
staticDefaultButtonColors,
|
|
1340
593
|
staticDisabled,
|
|
1341
|
-
statusBar,
|
|
1342
|
-
statusRoot,
|
|
1343
|
-
statusTheme,
|
|
1344
594
|
surfaceShadow,
|
|
1345
595
|
surfaceZIndex,
|
|
1346
|
-
tagRoot,
|
|
1347
|
-
tagTheme,
|
|
1348
596
|
textValence,
|
|
1349
|
-
|
|
1350
|
-
toastBody,
|
|
1351
|
-
toastDescription,
|
|
1352
|
-
toastRoot,
|
|
1353
|
-
toastTheme,
|
|
1354
|
-
toastTitle,
|
|
1355
|
-
toastViewport,
|
|
1356
|
-
toolbarLayout,
|
|
1357
|
-
toolbarRoot,
|
|
1358
|
-
toolbarText,
|
|
1359
|
-
toolbarTheme,
|
|
1360
|
-
tooltipArrow,
|
|
1361
|
-
tooltipContent,
|
|
1362
|
-
tooltipTheme,
|
|
1363
|
-
topbarBlockPaddingStart,
|
|
1364
|
-
treegridCell,
|
|
1365
|
-
treegridRoot,
|
|
1366
|
-
treegridRow,
|
|
1367
|
-
treegridTheme,
|
|
1368
|
-
withColumn
|
|
597
|
+
toHue
|
|
1369
598
|
};
|
|
1370
599
|
//# sourceMappingURL=index.mjs.map
|