@rebasepro/ui 0.19.1 → 0.19.2-canary.g09316f6
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/components/Chip.d.ts +10 -1
- package/dist/components/FilterChip.d.ts +2 -3
- package/dist/components/VirtualTable/VirtualTableProps.d.ts +11 -2
- package/dist/hooks/index.d.ts +1 -0
- package/dist/hooks/useIsDarkMode.d.ts +13 -0
- package/dist/index.css +4 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.es.js +248 -141
- package/dist/index.es.js.map +1 -1
- package/dist/src/index.css +4 -1
- package/dist/src/theme.css +115 -0
- package/dist/styles.d.ts +56 -19
- package/dist/theme.css +115 -0
- package/dist/util/chip_colors.d.ts +22 -0
- package/package.json +1 -1
package/dist/index.es.js
CHANGED
|
@@ -60,7 +60,7 @@ var controlPaddingMixin = {
|
|
|
60
60
|
"2xl": "px-10"
|
|
61
61
|
};
|
|
62
62
|
var focusedDisabled = "focus-visible:ring-0 focus-visible:ring-offset-0";
|
|
63
|
-
var focusedInvisibleMixin = "focus:bg-
|
|
63
|
+
var focusedInvisibleMixin = "focus:bg-surface-field-hover";
|
|
64
64
|
/**
|
|
65
65
|
* The focus ring — the single most-seen interaction state in the product, and
|
|
66
66
|
* until now the least tended.
|
|
@@ -82,35 +82,57 @@ var focusedClasses = "z-30 outline-none ring-2 ring-primary/60 ring-offset-0 rin
|
|
|
82
82
|
/**
|
|
83
83
|
* Field surfaces.
|
|
84
84
|
*
|
|
85
|
-
*
|
|
86
|
-
*
|
|
87
|
-
*
|
|
88
|
-
*
|
|
85
|
+
* A field is the one surface that goes the other way: it is INSET into
|
|
86
|
+
* whatever holds it, so `surface-field` is an alpha fill rather than a solid,
|
|
87
|
+
* and it composes over a card, the sheet or a dialog alike. It also carries
|
|
88
|
+
* the hairline: a field is an object (DESIGN.md rule 2), and without the line
|
|
89
|
+
* a 4% fill on a card reads as a soft slab rather than a control — measured on
|
|
90
|
+
* the product form, eight of them in a row looked like a wall. The reference
|
|
91
|
+
* draws every input with its 1px edge, on both themes.
|
|
89
92
|
*
|
|
90
|
-
*
|
|
93
|
+
* The 1px inset top highlight that used to sit here was the recessed-edge
|
|
94
|
+
* device from before the field had a border; with a real hairline above it
|
|
95
|
+
* the two stacked into a doubled top edge. The border does its work now.
|
|
96
|
+
*
|
|
97
|
+
* Exactly one element carries this mixin per field — the box, never the
|
|
98
|
+
* input inside it — so the alpha fill and its hover composite once.
|
|
91
99
|
*/
|
|
92
|
-
var fieldBackgroundMixin = "bg-surface-
|
|
93
|
-
var fieldBackgroundInvisibleMixin = "bg-
|
|
94
|
-
var fieldBackgroundDisabledMixin = "bg-surface-
|
|
100
|
+
var fieldBackgroundMixin = "bg-surface-field border border-hairline";
|
|
101
|
+
var fieldBackgroundInvisibleMixin = "bg-transparent";
|
|
102
|
+
var fieldBackgroundDisabledMixin = "bg-surface-field/60";
|
|
95
103
|
/**
|
|
96
104
|
* `transition-colors` here, because every other interactive surface in the kit
|
|
97
105
|
* has it and fields did not — `cardClickableMixin` eases, a TextField snapped.
|
|
98
106
|
* On a form of eight fields that difference is the whole feel of the screen.
|
|
99
107
|
*/
|
|
100
|
-
var fieldBackgroundHoverMixin = "transition-colors duration-150 hover:bg-surface-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
108
|
+
var fieldBackgroundHoverMixin = "transition-colors duration-150 hover:bg-surface-field-hover";
|
|
109
|
+
/**
|
|
110
|
+
* The hairline. One value per theme (`--hairline` in theme.css), and where it
|
|
111
|
+
* goes matters more than what it is: a line marks an OBJECT — a card on the
|
|
112
|
+
* sheet, a field, a floating surface. It does not mark a region: a tile inside
|
|
113
|
+
* a card, a row, a segmented track, a button, a chip are fills, and the
|
|
114
|
+
* lightness step between them is the whole separation. One exception, and it
|
|
115
|
+
* is the sheet's own edge against the frame: that step is about 3 L* on both
|
|
116
|
+
* themes and did not read on a real screen, so the Scaffold draws this line
|
|
117
|
+
* there. Measured before this existed, the panel drew the same line on every
|
|
118
|
+
* card and every tile as well, and with only two surface values available the
|
|
119
|
+
* line was doing the work a step should have done.
|
|
120
|
+
*/
|
|
121
|
+
var defaultBorderMixin = "border-hairline";
|
|
122
|
+
var paperMixin = "bg-surface-card rounded-lg border border-hairline-strong";
|
|
123
|
+
var cardMixin = "bg-surface-card rounded-xl border border-hairline";
|
|
104
124
|
/**
|
|
105
125
|
* An inset well: code, a query, a log tail, a connection string.
|
|
106
126
|
*
|
|
107
127
|
* It must read as *recessed into* the surface holding it, which means darker
|
|
108
|
-
* than that surface in dark mode
|
|
109
|
-
*
|
|
110
|
-
*
|
|
111
|
-
*
|
|
128
|
+
* than that surface in dark mode. Cards now sit at `surface-card` (#181818),
|
|
129
|
+
* so #0a0a0a is already fourteen units below and reads as a well; #000 was
|
|
130
|
+
* tuned for the old #0a card and is now harsher than it needs to be. That value
|
|
131
|
+
* is the `surface-well` role (theme.css), the one surface that goes DOWN the
|
|
132
|
+
* ladder on purpose. Pair with `font-mono`; this mixin carries the surface
|
|
133
|
+
* only.
|
|
112
134
|
*/
|
|
113
|
-
var codeSurfaceMixin = "bg-surface-
|
|
135
|
+
var codeSurfaceMixin = "bg-surface-well rounded-md";
|
|
114
136
|
/**
|
|
115
137
|
* The accent, used as TEXT.
|
|
116
138
|
*
|
|
@@ -129,8 +151,23 @@ var codeSurfaceMixin = "bg-surface-100 dark:bg-surface-950 rounded-md";
|
|
|
129
151
|
* the other way and #0070F4 is already correct.
|
|
130
152
|
*/
|
|
131
153
|
var accentTextMixin = "text-primary dark:text-primary-light";
|
|
132
|
-
|
|
154
|
+
/**
|
|
155
|
+
* Hover on a SOLID surface goes one step lighter, and it stays neutral. The
|
|
156
|
+
* previous `hover:bg-primary/5` tinted every clickable card blue, which spent
|
|
157
|
+
* the brand colour on a state that carries no meaning; on the dark ladder it
|
|
158
|
+
* also read as a hue shift rather than a lift.
|
|
159
|
+
*/
|
|
160
|
+
var cardClickableMixin = "hover:bg-surface-card-hover cursor-pointer transition-colors duration-150";
|
|
133
161
|
var cardSelectedMixin = "bg-primary-bg/30 dark:bg-primary-bg/10 ring-1 ring-primary/75";
|
|
162
|
+
/**
|
|
163
|
+
* Hover on a TRANSPARENT ground — a nav item, a menu item, a list row, a tree
|
|
164
|
+
* row. `surface-hover` is an alpha fill, so it lifts whatever it lands on by
|
|
165
|
+
* the same amount, and `surface-active` is the same idea one step further for
|
|
166
|
+
* the selected row when no hue is wanted. Do not use these on a solid card:
|
|
167
|
+
* an alpha fill REPLACES a solid background rather than tinting it.
|
|
168
|
+
*/
|
|
169
|
+
var surfaceHoverMixin = "hover:bg-surface-hover transition-colors duration-150";
|
|
170
|
+
var surfaceActiveMixin = "bg-surface-active";
|
|
134
171
|
//#endregion
|
|
135
172
|
//#region src/util/cls.ts
|
|
136
173
|
function cls(...classes) {
|
|
@@ -174,7 +211,7 @@ function hashString(str) {
|
|
|
174
211
|
var CONTRAST_TARGET = 4.6;
|
|
175
212
|
/** Page backgrounds the outlined variant sits on: `bg-white` and `surface-950`. */
|
|
176
213
|
var PAGE_LIGHT = "#ffffff";
|
|
177
|
-
var PAGE_DARK = "#
|
|
214
|
+
var PAGE_DARK = "#181818";
|
|
178
215
|
function toRgb(hex) {
|
|
179
216
|
let h = hex.replace("#", "");
|
|
180
217
|
if (h.length === 3) h = h.split("").map((c) => c + c).join("");
|
|
@@ -187,6 +224,34 @@ function toRgb(hex) {
|
|
|
187
224
|
function toHex(rgb) {
|
|
188
225
|
return "#" + rgb.map((v) => Math.round(Math.max(0, Math.min(255, v))).toString(16).padStart(2, "0")).join("");
|
|
189
226
|
}
|
|
227
|
+
function toRgba(hex, alpha) {
|
|
228
|
+
const [r, g, b] = toRgb(hex);
|
|
229
|
+
return `rgba(${r}, ${g}, ${b}, ${alpha})`;
|
|
230
|
+
}
|
|
231
|
+
/**
|
|
232
|
+
* What a translucent colour reads as over an opaque one: a per-channel sRGB
|
|
233
|
+
* mix, which is how the browser composites it. The tint ink is pushed against
|
|
234
|
+
* this, never against the page alone — a 16% wash of the hue moves the
|
|
235
|
+
* background a long way toward the ink, and an ink that only cleared AA on
|
|
236
|
+
* the bare page lands near 3.5:1 on its own tint.
|
|
237
|
+
*/
|
|
238
|
+
function compositeOver(fgHex, alpha, bgHex) {
|
|
239
|
+
const fg = toRgb(fgHex);
|
|
240
|
+
const bg = toRgb(bgHex);
|
|
241
|
+
return toHex(fg.map((c, i) => alpha * c + (1 - alpha) * bg[i]));
|
|
242
|
+
}
|
|
243
|
+
/**
|
|
244
|
+
* Tint alpha by tone, light then dark. The tones keep meaning something in the
|
|
245
|
+
* tinted variant — a `Darker` chip is a heavier wash, not a different hue —
|
|
246
|
+
* and dark mode runs four points higher because the same alpha of a bright
|
|
247
|
+
* hue reads fainter over near-black than over white.
|
|
248
|
+
*/
|
|
249
|
+
var TINT_ALPHA = {
|
|
250
|
+
Lighter: [.1, .14],
|
|
251
|
+
Light: [.14, .18],
|
|
252
|
+
Dark: [.18, .22],
|
|
253
|
+
Darker: [.22, .26]
|
|
254
|
+
};
|
|
190
255
|
function relativeLuminance(hex) {
|
|
191
256
|
const [r, g, b] = toRgb(hex).map((v) => {
|
|
192
257
|
const c = v / 255;
|
|
@@ -365,12 +430,20 @@ function tone(stops, chipTone) {
|
|
|
365
430
|
outlineText: push(stops.text, "#000000", PAGE_LIGHT),
|
|
366
431
|
darkOutlineText: push(stops.onDeep ?? stops.pale, "#ffffff", PAGE_DARK)
|
|
367
432
|
};
|
|
433
|
+
const [alphaLight, alphaDark] = TINT_ALPHA[chipTone];
|
|
434
|
+
const tint = {
|
|
435
|
+
tintColor: toRgba(stops.solid, alphaLight),
|
|
436
|
+
tintText: push(stops.deep, "#000000", compositeOver(stops.solid, alphaLight, PAGE_LIGHT)),
|
|
437
|
+
darkTintColor: toRgba(stops.solid, alphaDark),
|
|
438
|
+
darkTintText: push(stops.mid, "#ffffff", compositeOver(stops.solid, alphaDark, PAGE_DARK))
|
|
439
|
+
};
|
|
368
440
|
const filled = (light, dark) => ({
|
|
369
441
|
color: light,
|
|
370
442
|
text: inkOn(stops, light),
|
|
371
443
|
darkColor: dark,
|
|
372
444
|
darkText: inkOn(stops, dark),
|
|
373
|
-
...outline
|
|
445
|
+
...outline,
|
|
446
|
+
...tint
|
|
374
447
|
});
|
|
375
448
|
switch (chipTone) {
|
|
376
449
|
case "Light": return filled(stops.mid, stops.solid);
|
|
@@ -567,6 +640,40 @@ function useDebounceValue(value, delay = 300) {
|
|
|
567
640
|
return debouncedValue;
|
|
568
641
|
}
|
|
569
642
|
//#endregion
|
|
643
|
+
//#region src/hooks/useIsDarkMode.ts
|
|
644
|
+
/**
|
|
645
|
+
* Whether the document is in dark mode right now, and re-rendered when that
|
|
646
|
+
* changes.
|
|
647
|
+
*
|
|
648
|
+
* The theme is a class on `<html>` (`dark`, set by the panel's mode
|
|
649
|
+
* controller) or a `data-theme` attribute (the marketing site). Components
|
|
650
|
+
* that pick colours in JS rather than through CSS variables — `Chip` derives
|
|
651
|
+
* its ink per theme — used to read the class once at render and never again,
|
|
652
|
+
* so a theme switch left every chip on screen wearing the other theme's ink
|
|
653
|
+
* until something else happened to re-render it. Subscribing through a
|
|
654
|
+
* `MutationObserver` on the root's attributes makes the read live.
|
|
655
|
+
*/
|
|
656
|
+
function useIsDarkMode() {
|
|
657
|
+
return useSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);
|
|
658
|
+
}
|
|
659
|
+
function getSnapshot() {
|
|
660
|
+
if (typeof document === "undefined") return false;
|
|
661
|
+
const root = document.documentElement;
|
|
662
|
+
return root.classList.contains("dark") || root.getAttribute("data-theme") === "dark";
|
|
663
|
+
}
|
|
664
|
+
function getServerSnapshot() {
|
|
665
|
+
return false;
|
|
666
|
+
}
|
|
667
|
+
function subscribe(onChange) {
|
|
668
|
+
if (typeof document === "undefined" || typeof MutationObserver === "undefined") return () => void 0;
|
|
669
|
+
const observer = new MutationObserver(onChange);
|
|
670
|
+
observer.observe(document.documentElement, {
|
|
671
|
+
attributes: true,
|
|
672
|
+
attributeFilter: ["class", "data-theme"]
|
|
673
|
+
});
|
|
674
|
+
return () => observer.disconnect();
|
|
675
|
+
}
|
|
676
|
+
//#endregion
|
|
570
677
|
//#region src/components/Collapse.tsx
|
|
571
678
|
var Collapse = React.memo(({ children, className, in: isOpen = false, duration = 220 }) => {
|
|
572
679
|
useInjectStyles(`Collapse-${duration}`, `
|
|
@@ -639,14 +746,14 @@ function Autocomplete({ children, open, setOpen, className }) {
|
|
|
639
746
|
className: cls("absolute top-full left-0 right-0 overflow-visible", open ? "shadow-2xs" : "", "my-2", "z-20", "w-full"),
|
|
640
747
|
children: /* @__PURE__ */ jsx("div", {
|
|
641
748
|
ref: autocompleteRef,
|
|
642
|
-
className: cls(open ? paperMixin : "", "bg-surface-
|
|
749
|
+
className: cls(open ? paperMixin : "", "bg-surface-card", className),
|
|
643
750
|
children
|
|
644
751
|
})
|
|
645
752
|
});
|
|
646
753
|
}
|
|
647
754
|
var AutocompleteItem = React.memo(function AutocompleteItem({ children, onClick, className }) {
|
|
648
755
|
return /* @__PURE__ */ jsx("div", {
|
|
649
|
-
className: cls("flex w-full items-center h-[48px] cursor-pointer transition-colors duration-150 hover:bg-surface-
|
|
756
|
+
className: cls("flex w-full items-center h-[48px] cursor-pointer transition-colors duration-150 hover:bg-surface-hover", className),
|
|
650
757
|
onClick,
|
|
651
758
|
children
|
|
652
759
|
});
|
|
@@ -2822,7 +2929,7 @@ var getColorClasses = (severity) => {
|
|
|
2822
2929
|
case "warning": return "bg-amber-500/8 dark:bg-amber-500/12 text-amber-800 dark:text-amber-200 border border-amber-500/20 dark:border-amber-500/25";
|
|
2823
2930
|
case "info": return "bg-blue-500/8 dark:bg-blue-500/12 text-blue-800 dark:text-blue-200 border border-blue-500/20 dark:border-blue-500/25";
|
|
2824
2931
|
case "success": return "bg-emerald-500/8 dark:bg-emerald-500/12 text-emerald-800 dark:text-emerald-200 border border-emerald-500/20 dark:border-emerald-500/25";
|
|
2825
|
-
default: return "bg-surface-
|
|
2932
|
+
default: return "bg-surface-field text-text-primary dark:text-text-primary-dark border border-hairline";
|
|
2826
2933
|
}
|
|
2827
2934
|
};
|
|
2828
2935
|
var getIconColor = (severity) => {
|
|
@@ -2891,14 +2998,14 @@ var AvatarInner = ({ src, alt, children, className, style, outerClassName, hover
|
|
|
2891
2998
|
ref,
|
|
2892
2999
|
style,
|
|
2893
3000
|
...props,
|
|
2894
|
-
className: cls("rounded-full flex items-center justify-center overflow-hidden", "p-1 w-12 h-12 min-w-12 min-h-12", hover && "transition-colors duration-150 hover:bg-surface-
|
|
3001
|
+
className: cls("rounded-full flex items-center justify-center overflow-hidden", "p-1 w-12 h-12 min-w-12 min-h-12", hover && "transition-colors duration-150 hover:bg-surface-raised-hover focus:outline-none focus-visible:ring-2 focus-visible:ring-primary/50", outerClassName),
|
|
2895
3002
|
children: src && !isImageError ? /* @__PURE__ */ jsx("img", {
|
|
2896
|
-
className: cls("bg-surface-
|
|
3003
|
+
className: cls("bg-surface-raised", "w-full h-full object-cover rounded-full", className),
|
|
2897
3004
|
src,
|
|
2898
3005
|
alt,
|
|
2899
3006
|
onError: handleImageError
|
|
2900
3007
|
}) : /* @__PURE__ */ jsx("span", {
|
|
2901
|
-
className: cls("bg-surface-
|
|
3008
|
+
className: cls("bg-surface-raised", "flex items-center justify-center", "w-full h-full py-1.5 text-lg font-medium text-surface-accent-900 dark:text-text-primary-dark rounded-full", className),
|
|
2902
3009
|
children
|
|
2903
3010
|
})
|
|
2904
3011
|
});
|
|
@@ -2967,9 +3074,9 @@ var BooleanSwitch = React.forwardRef(function BooleanSwitch({ value, allowIndete
|
|
|
2967
3074
|
else onValueChange?.(null);
|
|
2968
3075
|
else onValueChange?.(!value);
|
|
2969
3076
|
},
|
|
2970
|
-
className: cls(SWITCH_GEOMETRY[size].track, "outline-none outline-hidden rounded-full relative shadow-sm",
|
|
3077
|
+
className: cls(SWITCH_GEOMETRY[size].track, "outline-none outline-hidden rounded-full relative shadow-sm", disabled ? value ? "bg-primary/40 ring-1 ring-transparent" : "bg-surface-field ring-1 ring-hairline" : value ? "bg-primary ring-1 ring-primary" : "bg-surface-active ring-1 ring-hairline-strong", className),
|
|
2971
3078
|
...props,
|
|
2972
|
-
children: [allowIndeterminate && (value === null || value === void 0) && /* @__PURE__ */ jsx("div", { className: cls("block rounded-full transition-transform duration-100 ease-out transform will-change-auto shadow-sm",
|
|
3079
|
+
children: [allowIndeterminate && (value === null || value === void 0) && /* @__PURE__ */ jsx("div", { className: cls("block rounded-full transition-transform duration-100 ease-out transform will-change-auto shadow-sm", "bg-surface-400", SWITCH_GEOMETRY[size].bar, SWITCH_GEOMETRY[size].barX) }, "knob"), !(allowIndeterminate && (value === null || value === void 0)) && /* @__PURE__ */ jsx("div", { className: cls("block rounded-full transition-transform duration-100 ease-out transform will-change-auto shadow-sm", disabled ? "bg-surface-300 dark:bg-surface-600" : value ? "bg-white shadow" : "bg-surface-500 dark:bg-surface-400", SWITCH_GEOMETRY[size].knob, value ? SWITCH_GEOMETRY[size].on : SWITCH_GEOMETRY[size].off) }, "knob")]
|
|
2973
3080
|
});
|
|
2974
3081
|
});
|
|
2975
3082
|
//#endregion
|
|
@@ -2998,7 +3105,7 @@ var BooleanSwitchWithLabel = function BooleanSwitchWithLabel({ value, position =
|
|
|
2998
3105
|
"aria-disabled": disabled || void 0,
|
|
2999
3106
|
"aria-labelledby": label ? switchLabelId : void 0,
|
|
3000
3107
|
tabIndex: -1,
|
|
3001
|
-
className: cls(!invisible && "bg-surface-
|
|
3108
|
+
className: cls(!invisible && "bg-surface-field border border-hairline", !invisible && (disabled ? "bg-surface-field/60" : "transition-colors duration-150 hover:bg-surface-field-hover"), disabled ? "cursor-default" : "cursor-pointer", "rounded-lg max-w-full justify-between box-border relative inline-flex items-center", !invisible && focus && !disabled ? focusedClasses : "", error ? "text-red-500 dark:text-red-600" : focus && !disabled ? "text-primary" : !disabled ? "text-text-primary dark:text-text-primary-dark" : "text-text-secondary dark:text-text-secondary-dark", controlHeightMixin[size], size === "small" || size === "smallest" ? "pl-2" : "pl-4", size === "small" || size === "smallest" ? "pr-4" : "pr-6", position === "end" ? "flex-row-reverse" : "flex-row", fullWidth ? "w-full" : "", className),
|
|
3002
3109
|
onClick: disabled ? void 0 : (e) => {
|
|
3003
3110
|
if (props.allowIndeterminate) {
|
|
3004
3111
|
const onChange = onValueChange;
|
|
@@ -3031,22 +3138,22 @@ var ButtonInner = React.memo(React.forwardRef(({ children, className, variant =
|
|
|
3031
3138
|
"border border-primary bg-primary focus:ring-primary text-white hover:text-white hover:brightness-105": variant === "filled" && color === "primary" && !disabled,
|
|
3032
3139
|
"border border-secondary bg-secondary focus:ring-secondary text-white hover:text-white hover:brightness-105": variant === "filled" && color === "secondary" && !disabled,
|
|
3033
3140
|
"border border-red-600 bg-red-600 hover:bg-red-700 focus:ring-red-600 text-white hover:text-white": variant === "filled" && color === "error" && !disabled,
|
|
3034
|
-
"border border-
|
|
3035
|
-
"border border-transparent bg-surface-
|
|
3036
|
-
"border border-transparent text-primary hover:text-primary hover:bg-surface-
|
|
3037
|
-
"border border-transparent text-secondary hover:text-secondary hover:bg-surface-
|
|
3141
|
+
"border border-hairline-strong bg-surface-raised hover:bg-surface-raised-hover text-text-primary hover:text-text-primary dark:text-text-primary-dark hover:dark:text-text-primary-dark": variant === "filled" && color === "text" && !disabled,
|
|
3142
|
+
"border border-transparent bg-surface-raised hover:bg-surface-raised-hover text-text-primary hover:text-text-primary dark:text-text-primary-dark hover:dark:text-text-primary-dark": variant === "filled" && color === "neutral" && !disabled,
|
|
3143
|
+
"border border-transparent text-primary hover:text-primary hover:bg-surface-hover": variant === "text" && color === "primary" && !disabled,
|
|
3144
|
+
"border border-transparent text-secondary hover:text-secondary hover:bg-surface-hover": variant === "text" && color === "secondary" && !disabled,
|
|
3038
3145
|
"border border-transparent text-red-600 hover:text-red-600 hover:bg-red-600 hover:bg-opacity-10 hover:bg-red-600/10": variant === "text" && color === "error" && !disabled,
|
|
3039
|
-
"border border-transparent text-text-primary hover:text-text-primary dark:text-text-primary-dark hover:dark:text-text-primary-dark hover:bg-surface-
|
|
3040
|
-
"border border-transparent text-text-primary hover:text-text-primary
|
|
3146
|
+
"border border-transparent text-text-primary hover:text-text-primary dark:text-text-primary-dark hover:dark:text-text-primary-dark hover:bg-surface-hover": variant === "text" && color === "text" && !disabled,
|
|
3147
|
+
"border border-transparent text-text-primary hover:text-text-primary dark:text-text-primary-dark dark:hover:text-text-primary-dark hover:bg-surface-hover": variant === "text" && color === "neutral" && !disabled,
|
|
3041
3148
|
"border border-primary text-primary hover:text-primary hover:bg-primary-bg hover:bg-primary/10": variant === "outlined" && color === "primary" && !disabled,
|
|
3042
3149
|
"border border-secondary text-secondary hover:text-secondary hover:bg-secondary-bg": variant === "outlined" && color === "secondary" && !disabled,
|
|
3043
3150
|
"border border-red-500 text-red-600 hover:text-white hover:bg-red-600": variant === "outlined" && color === "error" && !disabled,
|
|
3044
|
-
"border border-
|
|
3045
|
-
"border border-
|
|
3151
|
+
"border border-hairline-strong text-text-primary hover:text-text-primary dark:text-text-primary-dark hover:bg-surface-hover": variant === "outlined" && color === "text" && !disabled,
|
|
3152
|
+
"border border-hairline-strong text-text-primary dark:text-text-primary-dark hover:bg-surface-hover": variant === "outlined" && color === "neutral" && !disabled,
|
|
3046
3153
|
"text-text-disabled dark:text-text-disabled-dark": disabled,
|
|
3047
3154
|
"border border-transparent opacity-50": variant === "text" && disabled,
|
|
3048
|
-
"border border-
|
|
3049
|
-
"border border-transparent bg-surface-
|
|
3155
|
+
"border border-hairline-strong opacity-50": variant === "outlined" && disabled,
|
|
3156
|
+
"border border-transparent bg-surface-raised": variant === "filled" && disabled
|
|
3050
3157
|
});
|
|
3051
3158
|
const sizeClasses = cls("py-0", controlHeightMixin[size], controlPaddingMixin[size]);
|
|
3052
3159
|
const iconColorClass = (color === "neutral" || color === "text") && !disabled ? "[&>svg]:text-surface-accent-500 dark:[&>svg]:text-surface-accent-300" : "";
|
|
@@ -3082,7 +3189,7 @@ var Card = React.forwardRef(({ children, className, onClick, style, ...props },
|
|
|
3082
3189
|
role: onClick ? "button" : void 0,
|
|
3083
3190
|
tabIndex: onClick ? 0 : void 0,
|
|
3084
3191
|
onClick,
|
|
3085
|
-
className: cls(cardMixin, onClick && "hover:bg-
|
|
3192
|
+
className: cls(cardMixin, onClick && "hover:bg-surface-card-hover cursor-pointer transition-colors duration-150", className),
|
|
3086
3193
|
style,
|
|
3087
3194
|
...props,
|
|
3088
3195
|
children
|
|
@@ -3142,7 +3249,7 @@ function CircularProgress({ size = "medium", className }) {
|
|
|
3142
3249
|
else if (size === "medium") borderClasses = "border-[3px]";
|
|
3143
3250
|
else borderClasses = "border-4";
|
|
3144
3251
|
return /* @__PURE__ */ jsx("div", {
|
|
3145
|
-
className: cls(sizeClasses, borderClasses, "inline-block shrink-0 rounded-full border-solid align-[-0.125em]", "animate-[spin_0.7s_linear_infinite] motion-reduce:animate-[spin_1.5s_linear_infinite]", "border-
|
|
3252
|
+
className: cls(sizeClasses, borderClasses, "inline-block shrink-0 rounded-full border-solid align-[-0.125em]", "animate-[spin_0.7s_linear_infinite] motion-reduce:animate-[spin_1.5s_linear_infinite]", "border-hairline-strong border-t-primary dark:border-t-primary", className),
|
|
3146
3253
|
role: "status",
|
|
3147
3254
|
children: /* @__PURE__ */ jsx("span", {
|
|
3148
3255
|
className: "absolute! -m-px! h-px! w-px! overflow-hidden! whitespace-nowrap! border-0! p-0! [clip:rect(0,0,0,0)]!",
|
|
@@ -3438,12 +3545,12 @@ var ErrorBoundary = class extends React.Component {
|
|
|
3438
3545
|
const title = isPermission ? "Access denied" : isStaleChunk ? "New version available" : "Something went wrong";
|
|
3439
3546
|
const description = isPermission ? "You don't have permission to access this resource. Please check your account permissions or contact your administrator." : isStaleChunk ? CHUNK_ERROR_DESCRIPTION : "An unexpected error occurred. You can try reloading the page or going back.";
|
|
3440
3547
|
return /* @__PURE__ */ jsx("div", {
|
|
3441
|
-
className: cls("flex items-center justify-center min-h-[400px] h-full w-full", "bg-surface-
|
|
3548
|
+
className: cls("flex items-center justify-center min-h-[400px] h-full w-full", "bg-surface-sheet"),
|
|
3442
3549
|
children: /* @__PURE__ */ jsxs("div", {
|
|
3443
3550
|
className: "flex flex-col items-center max-w-md px-6 py-10 text-center",
|
|
3444
3551
|
children: [
|
|
3445
3552
|
/* @__PURE__ */ jsx("div", {
|
|
3446
|
-
className: cls("flex items-center justify-center w-14 h-14 rounded-xl mb-6", isPermission ? "bg-amber-100 dark:bg-amber-900/30" : isStaleChunk ? "bg-surface-
|
|
3553
|
+
className: cls("flex items-center justify-center w-14 h-14 rounded-xl mb-6", isPermission ? "bg-amber-100 dark:bg-amber-900/30" : isStaleChunk ? "bg-surface-raised" : "bg-red-100 dark:bg-red-900/30"),
|
|
3447
3554
|
children: /* @__PURE__ */ jsx(Icon, {
|
|
3448
3555
|
size: 28,
|
|
3449
3556
|
className: isPermission ? "text-amber-600 dark:text-amber-400" : isStaleChunk ? "text-text-secondary dark:text-text-secondary-dark" : "text-red-500 dark:text-red-400"
|
|
@@ -3482,7 +3589,7 @@ var ErrorBoundary = class extends React.Component {
|
|
|
3482
3589
|
className: cls("flex items-center gap-1 mx-auto text-xs", "text-text-disabled dark:text-text-disabled-dark", "hover:text-text-secondary dark:hover:text-text-secondary-dark", "transition-colors cursor-pointer bg-transparent border-none p-0"),
|
|
3483
3590
|
children: ["Technical details", showDetails ? /* @__PURE__ */ jsx(ChevronUpIcon$1, { size: 14 }) : /* @__PURE__ */ jsx(ChevronDownIcon$1, { size: 14 })]
|
|
3484
3591
|
}), showDetails && /* @__PURE__ */ jsx("div", {
|
|
3485
|
-
className: cls("mt-3 p-3 rounded-lg text-left text-xs", "bg-surface-
|
|
3592
|
+
className: cls("mt-3 p-3 rounded-lg text-left text-xs", "bg-surface-field", "text-text-secondary dark:text-text-secondary-dark", "font-mono break-all"),
|
|
3486
3593
|
children: error.message
|
|
3487
3594
|
})]
|
|
3488
3595
|
})
|
|
@@ -3527,9 +3634,9 @@ var Checkbox = React.memo(({ id, checked, indeterminate = false, padding = true,
|
|
|
3527
3634
|
className: "rounded-full focus:outline-none focus-visible:ring-2 focus-visible:ring-primary/50",
|
|
3528
3635
|
onCheckedChange: disabled ? void 0 : onCheckedChange,
|
|
3529
3636
|
children: /* @__PURE__ */ jsx("div", {
|
|
3530
|
-
className: cls(padding ? paddingClasses[size] : "", padding || onCheckedChange ? outerSizeClasses[size] : "", "inline-flex items-center justify-center text-sm font-medium focus:outline-none transition-colors ease-in-out duration-150", onCheckedChange ? "rounded-full hover:bg-surface-
|
|
3637
|
+
className: cls(padding ? paddingClasses[size] : "", padding || onCheckedChange ? outerSizeClasses[size] : "", "inline-flex items-center justify-center text-sm font-medium focus:outline-none transition-colors ease-in-out duration-150", onCheckedChange ? "rounded-full hover:bg-surface-hover" : "", onCheckedChange ? "cursor-pointer" : "cursor-default"),
|
|
3531
3638
|
children: /* @__PURE__ */ jsx("div", {
|
|
3532
|
-
className: cls("border-2 shrink-0 relative transition-colors ease-in-out duration-150", sizeClasses$2[size], disabled ?
|
|
3639
|
+
className: cls("border-2 shrink-0 relative transition-colors ease-in-out duration-150", sizeClasses$2[size], disabled ? "bg-surface-300 dark:bg-surface-600" : indeterminate || isChecked ? colorClasses$2[color] : "bg-surface-card", indeterminate || isChecked ? "text-surface-accent-100 dark:text-surface-accent-900" : "", disabled ? "border-transparent" : indeterminate || isChecked ? "border-transparent" : "border-surface-accent-800 dark:border-surface-accent-500"),
|
|
3533
3640
|
children: /* @__PURE__ */ jsx(CheckboxPrimitive.Indicator, {
|
|
3534
3641
|
asChild: true,
|
|
3535
3642
|
children: indeterminate ? /* @__PURE__ */ jsx(MinusIcon$1, {
|
|
@@ -3554,13 +3661,6 @@ var sizeClassNames = {
|
|
|
3554
3661
|
large: "px-3 py-1.5 text-sm"
|
|
3555
3662
|
};
|
|
3556
3663
|
/**
|
|
3557
|
-
* Detect if the app is currently in dark mode by checking the
|
|
3558
|
-
* Tailwind `dark` class on the document root.
|
|
3559
|
-
*/
|
|
3560
|
-
function isDarkMode() {
|
|
3561
|
-
return typeof document !== "undefined" && document.documentElement.classList.contains("dark");
|
|
3562
|
-
}
|
|
3563
|
-
/**
|
|
3564
3664
|
* Helper to generate rgba from hex or standard colors.
|
|
3565
3665
|
*/
|
|
3566
3666
|
function getRgba(hex, alpha) {
|
|
@@ -3572,9 +3672,9 @@ function getRgba(hex, alpha) {
|
|
|
3572
3672
|
/**
|
|
3573
3673
|
* @group Preview components
|
|
3574
3674
|
*/
|
|
3575
|
-
function Chip({ children, colorScheme, error, outlined, onClick, icon, size = "medium", className, style }) {
|
|
3675
|
+
function Chip({ children, colorScheme, error, outlined, variant = "tinted", onClick, icon, size = "medium", className, style }) {
|
|
3576
3676
|
const usedColorScheme = typeof colorScheme === "string" ? getColorSchemeForKey(colorScheme) : colorScheme;
|
|
3577
|
-
const dark =
|
|
3677
|
+
const dark = useIsDarkMode();
|
|
3578
3678
|
const hasScheme = error || usedColorScheme;
|
|
3579
3679
|
let textColor = "";
|
|
3580
3680
|
let bgColor = "";
|
|
@@ -3592,10 +3692,17 @@ function Chip({ children, colorScheme, error, outlined, onClick, icon, size = "m
|
|
|
3592
3692
|
} else if (error) {
|
|
3593
3693
|
bgColor = dark ? "rgba(220, 38, 38, 0.15)" : "rgba(239, 68, 68, 0.1)";
|
|
3594
3694
|
border = `1px solid ${dark ? "rgba(220, 38, 38, 0.3)" : "rgba(239, 68, 68, 0.2)"}`;
|
|
3595
|
-
} else if (usedColorScheme)
|
|
3695
|
+
} else if (usedColorScheme) {
|
|
3696
|
+
const tintColor = dark ? usedColorScheme.darkTintColor : usedColorScheme.tintColor;
|
|
3697
|
+
const tintText = dark ? usedColorScheme.darkTintText : usedColorScheme.tintText;
|
|
3698
|
+
if (variant === "tinted" && tintColor && tintText) {
|
|
3699
|
+
bgColor = tintColor;
|
|
3700
|
+
textColor = tintText;
|
|
3701
|
+
} else bgColor = dark && usedColorScheme.darkColor ? usedColorScheme.darkColor : usedColorScheme.color;
|
|
3702
|
+
}
|
|
3596
3703
|
}
|
|
3597
3704
|
return /* @__PURE__ */ jsxs("div", {
|
|
3598
|
-
className: cls("rounded-
|
|
3705
|
+
className: cls("rounded-md max-w-full w-max h-fit font-medium inline-flex gap-1", "text-ellipsis", "items-center", "transition-colors duration-150", !hasScheme && "bg-surface-raised text-text-secondary dark:text-text-secondary-dark", !hasScheme && outlined && "bg-transparent border border-hairline-strong", onClick ? "cursor-pointer hover:bg-surface-raised-hover" : "", sizeClassNames[size], className),
|
|
3599
3706
|
onClick,
|
|
3600
3707
|
style: {
|
|
3601
3708
|
...hasScheme ? {
|
|
@@ -3638,7 +3745,7 @@ var Tooltip = ({ open, defaultOpen, side = "bottom", delayDuration = 200, sideOf
|
|
|
3638
3745
|
children: [trigger, /* @__PURE__ */ jsx(TooltipPrimitive.Portal, {
|
|
3639
3746
|
container: finalContainer,
|
|
3640
3747
|
children: /* @__PURE__ */ jsx(TooltipPrimitive.Content, {
|
|
3641
|
-
className: cls("TooltipContent", "max-w-lg leading-relaxed", "z-50 rounded-md px-3 py-2 text-xs leading-none bg-surface-
|
|
3748
|
+
className: cls("TooltipContent", "max-w-lg leading-relaxed", "z-50 rounded-md px-3 py-2 text-xs leading-none bg-surface-800/95 dark:bg-surface-raised-hover font-medium text-white shadow-2xl select-none duration-400 ease-in transform opacity-100", tooltipClassName),
|
|
3642
3749
|
style: tooltipStyle,
|
|
3643
3750
|
sideOffset: sideOffset === void 0 ? 4 : sideOffset,
|
|
3644
3751
|
align,
|
|
@@ -3758,7 +3865,7 @@ function ColorPicker({ value, onChange, size = "medium", allowClear = true, disa
|
|
|
3758
3865
|
type: "button",
|
|
3759
3866
|
disabled,
|
|
3760
3867
|
onClick: () => onChange(void 0),
|
|
3761
|
-
className: cls("flex items-center gap-2 px-2 py-1 rounded-lg text-sm transition-colors duration-150", "hover:bg-surface-
|
|
3868
|
+
className: cls("flex items-center gap-2 px-2 py-1 rounded-lg text-sm transition-colors duration-150", "hover:bg-surface-hover focus:outline-none focus-visible:ring-2 focus-visible:ring-primary", disabled && "opacity-50 cursor-not-allowed", !value && "bg-surface-raised font-medium"),
|
|
3762
3869
|
children: [/* @__PURE__ */ jsx("div", {
|
|
3763
3870
|
className: cls(swatchSize, "rounded-full border-2 border-dashed border-surface-accent-400 dark:border-surface-accent-600", "flex items-center justify-center"),
|
|
3764
3871
|
children: !value && /* @__PURE__ */ jsx(CheckIcon$1, { size: checkSize })
|
|
@@ -3796,7 +3903,7 @@ function ColorPicker({ value, onChange, size = "medium", allowClear = true, disa
|
|
|
3796
3903
|
}
|
|
3797
3904
|
//#endregion
|
|
3798
3905
|
//#region src/components/IconButton.tsx
|
|
3799
|
-
var buttonClasses = "hover:
|
|
3906
|
+
var buttonClasses = "hover:scale-[1.04] active:scale-95 transition-transform";
|
|
3800
3907
|
var baseClasses = "inline-flex items-center justify-center text-sm font-medium focus:outline-none focus-visible:ring-2 focus-visible:ring-primary/50 transition-colors ease-in-out duration-150 [&>svg]:shrink-0";
|
|
3801
3908
|
var colorClasses$1 = "text-surface-accent-500 visited:text-surface-accent-500 dark:text-surface-accent-300 dark:visited:text-surface-accent-300";
|
|
3802
3909
|
var sizeClasses$1 = {
|
|
@@ -3817,7 +3924,7 @@ var defaultIconSize = {
|
|
|
3817
3924
|
large: 24
|
|
3818
3925
|
};
|
|
3819
3926
|
var IconButtonInner = ({ children, className, size = "medium", variant = "ghost", shape = "circular", disabled, toggled, component, ...props }, ref) => {
|
|
3820
|
-
const bgClasses = variant === "ghost" ? "bg-transparent
|
|
3927
|
+
const bgClasses = variant === "ghost" ? "bg-transparent hover:bg-surface-hover" : "bg-surface-raised hover:bg-surface-raised-hover";
|
|
3821
3928
|
const Component = component || "button";
|
|
3822
3929
|
const isNativeButton = Component === "button";
|
|
3823
3930
|
const sizedChildren = React.Children.map(children, (child) => {
|
|
@@ -3960,7 +4067,7 @@ var DateTimeField = ({ value, label, onChange, disabled, clearable, mode = "date
|
|
|
3960
4067
|
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
3961
4068
|
/* @__PURE__ */ jsx("style", { children: inputStyles }),
|
|
3962
4069
|
/* @__PURE__ */ jsxs("div", {
|
|
3963
|
-
className: cls("rounded-lg relative max-w-full", !invisible && "bg-surface-
|
|
4070
|
+
className: cls("rounded-lg relative max-w-full", !invisible && "bg-surface-field border border-hairline", disabled ? fieldBackgroundDisabledMixin : invisible ? "" : fieldBackgroundHoverMixin, {
|
|
3964
4071
|
"min-h-[28px]": size === "smallest",
|
|
3965
4072
|
"min-h-[32px]": size === "small",
|
|
3966
4073
|
"min-h-[40px]": size === "medium",
|
|
@@ -3989,7 +4096,7 @@ var DateTimeField = ({ value, label, onChange, disabled, clearable, mode = "date
|
|
|
3989
4096
|
onFocus: handleFocus,
|
|
3990
4097
|
onBlur: handleBlur,
|
|
3991
4098
|
disabled,
|
|
3992
|
-
className: cls("w-full outline-hidden bg-transparent leading-normal text-
|
|
4099
|
+
className: cls("w-full outline-hidden bg-transparent leading-normal text-sm px-3", clearable ? "pr-14" : "pr-12", "rounded-lg", {
|
|
3993
4100
|
"min-h-[28px]": size === "smallest",
|
|
3994
4101
|
"min-h-[32px]": size === "small",
|
|
3995
4102
|
"min-h-[40px]": size === "medium",
|
|
@@ -4121,7 +4228,7 @@ var Dialog = ({ open, onOpenChange, children, className, containerClassName, ful
|
|
|
4121
4228
|
//#region src/components/DialogActions.tsx
|
|
4122
4229
|
function DialogActions({ children, position = "sticky", translucent = true, className }) {
|
|
4123
4230
|
return /* @__PURE__ */ jsx("div", {
|
|
4124
|
-
className: cls(defaultBorderMixin, "pt-2 pb-4 px-4 border-t flex flex-row items-center justify-end shrink-0 bottom-0 right-0 left-0 text-right z-2 gap-2", position, "bg-
|
|
4231
|
+
className: cls(defaultBorderMixin, "pt-2 pb-4 px-4 border-t flex flex-row items-center justify-end shrink-0 bottom-0 right-0 left-0 text-right z-2 gap-2", position, "bg-surface-card/60", translucent ? "backdrop-blur-sm" : "", className),
|
|
4125
4232
|
children
|
|
4126
4233
|
});
|
|
4127
4234
|
}
|
|
@@ -4196,7 +4303,7 @@ function ExpandablePanel({ title, children, invisible = false, expanded, onExpan
|
|
|
4196
4303
|
if (expanded !== void 0) setOpen(expanded);
|
|
4197
4304
|
}, [expanded]);
|
|
4198
4305
|
return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsxs(Collapsible.Root, {
|
|
4199
|
-
className: cls(!invisible && "border-
|
|
4306
|
+
className: cls(!invisible && "border-hairline border", "rounded-lg", "w-full", className),
|
|
4200
4307
|
open,
|
|
4201
4308
|
onOpenChange: (updatedOpen) => {
|
|
4202
4309
|
onExpandedChange?.(updatedOpen);
|
|
@@ -4205,7 +4312,7 @@ function ExpandablePanel({ title, children, invisible = false, expanded, onExpan
|
|
|
4205
4312
|
children: [/* @__PURE__ */ jsx(Collapsible.Trigger, {
|
|
4206
4313
|
asChild: true,
|
|
4207
4314
|
children: /* @__PURE__ */ jsxs("div", {
|
|
4208
|
-
className: cls("rounded-t-lg flex items-center justify-between w-full min-h-[52px]", "hover:bg-surface-
|
|
4315
|
+
className: cls("rounded-t-lg flex items-center justify-between w-full min-h-[52px]", "hover:bg-surface-hover active:bg-surface-active", invisible ? "border-b px-2" : "p-4", open ? "py-6" : "py-4", "transition-all duration-200", invisible && "border-hairline", asField && "bg-surface-field border border-hairline", titleClassName, "cursor-pointer"),
|
|
4209
4316
|
role: "button",
|
|
4210
4317
|
tabIndex: 0,
|
|
4211
4318
|
"aria-expanded": open,
|
|
@@ -4278,9 +4385,8 @@ var sizeClasses = {
|
|
|
4278
4385
|
/**
|
|
4279
4386
|
* A toggle chip used for filter presets and similar multi-select controls.
|
|
4280
4387
|
*
|
|
4281
|
-
*
|
|
4282
|
-
*
|
|
4283
|
-
* parent `overflow-hidden` containers.
|
|
4388
|
+
* Reads as a text tab: no fill at rest, the alpha highlight when active. It
|
|
4389
|
+
* shares no grammar with the tinted enum {@link Chip}, which carries a hue.
|
|
4284
4390
|
*
|
|
4285
4391
|
* @group Interactive components
|
|
4286
4392
|
*/
|
|
@@ -4290,7 +4396,7 @@ var FilterChip = React.forwardRef(function FilterChip({ children, active = false
|
|
|
4290
4396
|
type: "button",
|
|
4291
4397
|
onClick,
|
|
4292
4398
|
disabled,
|
|
4293
|
-
className: cls("inline-flex items-center gap-1 rounded-
|
|
4399
|
+
className: cls("inline-flex items-center gap-1 rounded-md", "font-medium whitespace-nowrap select-none shrink-0", "transition-colors duration-150", "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50", sizeClasses[size], !disabled && "cursor-pointer", active ? "bg-surface-active text-text-primary dark:text-text-primary-dark" : cls("bg-transparent text-text-secondary dark:text-text-secondary-dark", !disabled && "hover:bg-surface-hover"), disabled && "opacity-50 cursor-not-allowed", className),
|
|
4294
4400
|
...rest,
|
|
4295
4401
|
children: [icon, children]
|
|
4296
4402
|
});
|
|
@@ -4312,7 +4418,7 @@ function InfoLabel({ children, mode = "info" }) {
|
|
|
4312
4418
|
var Label = React$1.forwardRef(({ className, border, onClick, ...props }, ref) => /* @__PURE__ */ jsx(LabelPrimitive.Root, {
|
|
4313
4419
|
ref,
|
|
4314
4420
|
onClick,
|
|
4315
|
-
className: cls("text-sm font-medium peer-disabled:cursor-not-allowed", border && "border border-
|
|
4421
|
+
className: cls("text-sm font-medium peer-disabled:cursor-not-allowed", border && "border border-hairline-strong rounded-md px-3 py-1.5", onClick && "hover:cursor-pointer hover:bg-surface-hover", defaultBorderMixin, className),
|
|
4316
4422
|
...props
|
|
4317
4423
|
}));
|
|
4318
4424
|
Label.displayName = LabelPrimitive.Root.displayName;
|
|
@@ -4394,7 +4500,7 @@ var Menu = React.forwardRef(({ children, trigger, open, defaultOpen, side, align
|
|
|
4394
4500
|
});
|
|
4395
4501
|
Menu.displayName = "Menu";
|
|
4396
4502
|
var MenuItem = React.memo(({ children, dense = false, disabled = false, onClick, className }) => {
|
|
4397
|
-
const classNames = cls(onClick && !disabled && "cursor-pointer", disabled && "opacity-50 cursor-not-allowed", "rounded-md text-sm font-medium text-surface-accent-700 dark:text-surface-accent-300 flex items-center gap-4 transition-colors duration-150", !disabled && "hover:bg-surface-
|
|
4503
|
+
const classNames = cls(onClick && !disabled && "cursor-pointer", disabled && "opacity-50 cursor-not-allowed", "rounded-md text-sm font-medium text-surface-accent-700 dark:text-surface-accent-300 flex items-center gap-4 transition-colors duration-150", !disabled && "hover:bg-surface-hover", dense ? "px-4 py-1.5" : "px-4 py-2", className);
|
|
4398
4504
|
return /* @__PURE__ */ jsx(DropdownMenu.Item, {
|
|
4399
4505
|
className: classNames,
|
|
4400
4506
|
disabled,
|
|
@@ -4411,7 +4517,7 @@ function Menubar({ children, onSelect, value, defaultValue, onValueChange, class
|
|
|
4411
4517
|
value,
|
|
4412
4518
|
defaultValue,
|
|
4413
4519
|
onValueChange,
|
|
4414
|
-
className: cls("z-10 flex bg-
|
|
4520
|
+
className: cls("z-10 flex bg-surface-card p-[3px] rounded-lg shadow-sm", className),
|
|
4415
4521
|
children
|
|
4416
4522
|
});
|
|
4417
4523
|
}
|
|
@@ -4424,7 +4530,7 @@ function MenubarMenu({ children, value }) {
|
|
|
4424
4530
|
function MenubarTrigger({ children, onSelect, className }) {
|
|
4425
4531
|
return /* @__PURE__ */ jsx(MenubarPrimitive.Trigger, {
|
|
4426
4532
|
onSelect,
|
|
4427
|
-
className: cls("py-2 px-3 outline-none select-none font-medium leading-none rounded-md text-text-primary dark:text-text-primary-dark text-sm transition-colors duration-150 flex items-center justify-between gap-[2px] data-[highlighted]:bg-surface-
|
|
4533
|
+
className: cls("py-2 px-3 outline-none select-none font-medium leading-none rounded-md text-text-primary dark:text-text-primary-dark text-sm transition-colors duration-150 flex items-center justify-between gap-[2px] data-[highlighted]:bg-surface-hover data-[state=open]:bg-surface-active hover:bg-surface-hover", className),
|
|
4428
4534
|
children
|
|
4429
4535
|
});
|
|
4430
4536
|
}
|
|
@@ -4439,7 +4545,7 @@ function MenubarPortal({ children, portalContainer }) {
|
|
|
4439
4545
|
function MenubarContent({ children, className, align, sideOffset, alignOffset, onSelect, ...rest }) {
|
|
4440
4546
|
return /* @__PURE__ */ jsx(MenubarPrimitive.Content, {
|
|
4441
4547
|
onSelect,
|
|
4442
|
-
className: cls("z-50 min-w-[220px] bg-
|
|
4548
|
+
className: cls("z-50 min-w-[220px] bg-surface-card rounded-md p-[6px] shadow-[0px_10px_38px_-10px_rgba(22,_23,_24,_0.35),_0px_10px_20px_-15px_rgba(22,_23,_24,_0.2)] [animation-duration:_400ms] [animation-timing-function:_cubic-bezier(0.16,_1,_0.3,_1)] will-change-[transform,opacity]", className),
|
|
4443
4549
|
align: align ?? "start",
|
|
4444
4550
|
sideOffset: sideOffset ?? 5,
|
|
4445
4551
|
alignOffset: alignOffset ?? -3,
|
|
@@ -4450,7 +4556,7 @@ function MenubarContent({ children, className, align, sideOffset, alignOffset, o
|
|
|
4450
4556
|
function MenubarItem({ children, leftPadding, className, disabled, onSelect, ...rest }) {
|
|
4451
4557
|
return /* @__PURE__ */ jsx(MenubarPrimitive.Item, {
|
|
4452
4558
|
onSelect,
|
|
4453
|
-
className: cls("group text-sm leading-none rounded-md flex items-center h-[32px] px-[10px] py-[2px] relative select-none transition-colors duration-150 outline-none data-[state=open]:bg-surface-
|
|
4559
|
+
className: cls("group text-sm leading-none rounded-md flex items-center h-[32px] px-[10px] py-[2px] relative select-none transition-colors duration-150 outline-none data-[state=open]:bg-surface-active data-[state=open]:text-text-primary data-[state=open]:dark:text-text-primary-dark data-[highlighted]:bg-surface-hover data-[disabled]:text-text-disabled data-[disabled]:dark:text-text-disabled-dark data-[disabled]:pointer-events-none", leftPadding ? "pl-5" : "", disabled ? "pointer-events-none text-text-secondary dark:text-text-secondary-dark" : "text-text-primary dark:text-text-primary-dark", className),
|
|
4454
4560
|
disabled,
|
|
4455
4561
|
...rest,
|
|
4456
4562
|
children
|
|
@@ -4458,7 +4564,7 @@ function MenubarItem({ children, leftPadding, className, disabled, onSelect, ...
|
|
|
4458
4564
|
}
|
|
4459
4565
|
function MenubarSeparator({ children, className, ...rest }) {
|
|
4460
4566
|
return /* @__PURE__ */ jsx(MenubarPrimitive.Separator, {
|
|
4461
|
-
className: cls("h-[1px] bg-
|
|
4567
|
+
className: cls("h-[1px] bg-hairline m-[5px]", className),
|
|
4462
4568
|
...rest,
|
|
4463
4569
|
children
|
|
4464
4570
|
});
|
|
@@ -4472,7 +4578,7 @@ function MenubarSub({ children, ...rest }) {
|
|
|
4472
4578
|
function MenubarSubTrigger({ children, className, onSelect, ...rest }) {
|
|
4473
4579
|
return /* @__PURE__ */ jsx(MenubarPrimitive.SubTrigger, {
|
|
4474
4580
|
onSelect,
|
|
4475
|
-
className: cls("group text-sm leading-none text-text-primary dark:text-text-primary-dark rounded-md flex items-center h-[32px] px-[10px] py-[2px] relative select-none transition-colors duration-150 outline-none data-[state=open]:bg-surface-
|
|
4581
|
+
className: cls("group text-sm leading-none text-text-primary dark:text-text-primary-dark rounded-md flex items-center h-[32px] px-[10px] py-[2px] relative select-none transition-colors duration-150 outline-none data-[state=open]:bg-surface-active data-[state=open]:text-text-primary data-[state=open]:dark:text-text-primary-dark data-[highlighted]:bg-surface-hover data-[disabled]:text-text-disabled data-[disabled]:dark:text-text-disabled-dark data-[disabled]:pointer-events-none", className),
|
|
4476
4582
|
...rest,
|
|
4477
4583
|
children
|
|
4478
4584
|
});
|
|
@@ -4481,7 +4587,7 @@ function MenubarSubContent({ children, alignOffset, className, onSelect, ...rest
|
|
|
4481
4587
|
return /* @__PURE__ */ jsx(MenubarPrimitive.SubContent, {
|
|
4482
4588
|
onSelect,
|
|
4483
4589
|
alignOffset: alignOffset ?? -5,
|
|
4484
|
-
className: cls("min-w-[220px] bg-
|
|
4590
|
+
className: cls("min-w-[220px] bg-surface-card rounded-md p-[6px] shadow-[0px_10px_38px_-10px_rgba(22,_23,_24,_0.35),_0px_10px_20px_-15px_rgba(22,_23,_24,_0.2)] [animation-duration:_400ms] [animation-timing-function:_cubic-bezier(0.16,_1,_0.3,_1)] will-change-[transform,opacity]", className),
|
|
4485
4591
|
...rest,
|
|
4486
4592
|
children
|
|
4487
4593
|
});
|
|
@@ -4489,7 +4595,7 @@ function MenubarSubContent({ children, alignOffset, className, onSelect, ...rest
|
|
|
4489
4595
|
function MenubarCheckboxItem({ children, checked, onCheckedChange, className, onSelect, ...rest }) {
|
|
4490
4596
|
return /* @__PURE__ */ jsx(MenubarPrimitive.CheckboxItem, {
|
|
4491
4597
|
onSelect,
|
|
4492
|
-
className: cls("text-sm leading-none text-text-primary dark:text-text-primary-dark rounded-md flex items-center h-[32px] px-[10px] py-[2px] relative select-none transition-colors duration-150 pl-5 outline-none data-[highlighted]:bg-surface-
|
|
4598
|
+
className: cls("text-sm leading-none text-text-primary dark:text-text-primary-dark rounded-md flex items-center h-[32px] px-[10px] py-[2px] relative select-none transition-colors duration-150 pl-5 outline-none data-[highlighted]:bg-surface-hover data-[disabled]:text-text-disabled data-[disabled]:dark:text-text-disabled-dark data-[disabled]:pointer-events-none", className),
|
|
4493
4599
|
checked,
|
|
4494
4600
|
onCheckedChange,
|
|
4495
4601
|
...rest,
|
|
@@ -4516,7 +4622,7 @@ function MenubarRadioGroup({ children, className, value, onValueChange, onSelect
|
|
|
4516
4622
|
function MenubarRadioItem({ children, className, value, onSelect, ...rest }) {
|
|
4517
4623
|
return /* @__PURE__ */ jsx(MenubarPrimitive.RadioItem, {
|
|
4518
4624
|
onSelect,
|
|
4519
|
-
className: cls("text-sm leading-none text-text-primary dark:text-text-primary-dark rounded-md flex items-center h-[32px] px-[10px] py-[2px] relative select-none transition-colors duration-150 pl-5 outline-none data-[highlighted]:bg-surface-
|
|
4625
|
+
className: cls("text-sm leading-none text-text-primary dark:text-text-primary-dark rounded-md flex items-center h-[32px] px-[10px] py-[2px] relative select-none transition-colors duration-150 pl-5 outline-none data-[highlighted]:bg-surface-hover data-[disabled]:text-text-disabled data-[disabled]:dark:text-text-disabled-dark data-[disabled]:pointer-events-none", className),
|
|
4520
4626
|
value,
|
|
4521
4627
|
...rest,
|
|
4522
4628
|
children: children ?? /* @__PURE__ */ jsx(CheckIcon$1, { size: iconSize.small })
|
|
@@ -4541,10 +4647,10 @@ function Separator({ orientation, decorative, className }) {
|
|
|
4541
4647
|
if (orientation === "horizontal") return /* @__PURE__ */ jsx(SeparatorPrimitive.Root, {
|
|
4542
4648
|
decorative,
|
|
4543
4649
|
orientation: "horizontal",
|
|
4544
|
-
className: cls("
|
|
4650
|
+
className: cls("bg-hairline data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px my-4", className)
|
|
4545
4651
|
});
|
|
4546
4652
|
else return /* @__PURE__ */ jsx(SeparatorPrimitive.Root, {
|
|
4547
|
-
className: cls("
|
|
4653
|
+
className: cls("bg-hairline data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px mx-4", className),
|
|
4548
4654
|
decorative,
|
|
4549
4655
|
orientation: "vertical"
|
|
4550
4656
|
});
|
|
@@ -4673,7 +4779,7 @@ var MultiSelect = React$1.forwardRef(({ value, size = "large", label, error, onV
|
|
|
4673
4779
|
}, {
|
|
4674
4780
|
"px-2": size === "small" || size === "smallest",
|
|
4675
4781
|
"px-4": size === "medium" || size === "large"
|
|
4676
|
-
}, "select-none rounded-lg text-sm", "focus:ring-0 focus-visible:ring-0 outline-none focus:outline-none focus-visible:outline-none", invisible ? fieldBackgroundInvisibleMixin : fieldBackgroundMixin, disabled ? fieldBackgroundDisabledMixin : fieldBackgroundHoverMixin, "relative flex items-center", className, inputClassName),
|
|
4782
|
+
}, "select-none rounded-lg text-sm", "focus:ring-0 focus-visible:ring-0 outline-none focus:outline-none focus-visible:outline-none", invisible ? fieldBackgroundInvisibleMixin : fieldBackgroundMixin, disabled ? fieldBackgroundDisabledMixin : invisible ? "" : fieldBackgroundHoverMixin, "relative flex items-center", className, inputClassName),
|
|
4677
4783
|
children: selectedValues.length > 0 ? /* @__PURE__ */ jsxs("div", {
|
|
4678
4784
|
className: "flex justify-between items-center w-full",
|
|
4679
4785
|
children: [/* @__PURE__ */ jsxs("div", {
|
|
@@ -4728,7 +4834,7 @@ var MultiSelect = React$1.forwardRef(({ value, size = "large", label, error, onV
|
|
|
4728
4834
|
container: finalContainer,
|
|
4729
4835
|
children: /* @__PURE__ */ jsx(PopoverPrimitive.Content, {
|
|
4730
4836
|
"data-multi-select-content": true,
|
|
4731
|
-
className: cls("z-50 overflow-hidden border bg-
|
|
4837
|
+
className: cls("z-50 overflow-hidden border bg-surface-card rounded-lg w-[400px]", defaultBorderMixin),
|
|
4732
4838
|
align: "start",
|
|
4733
4839
|
sideOffset: 8,
|
|
4734
4840
|
onEscapeKeyDown: () => onPopoverOpenChange(false),
|
|
@@ -4754,7 +4860,7 @@ var MultiSelect = React$1.forwardRef(({ value, size = "large", label, error, onV
|
|
|
4754
4860
|
children: "No results found."
|
|
4755
4861
|
}), /* @__PURE__ */ jsxs(Command.Group, { children: [includeSelectAll && /* @__PURE__ */ jsxs(Command.Item, {
|
|
4756
4862
|
onSelect: toggleAll,
|
|
4757
|
-
className: cls("flex flex-row items-center gap-1.5", "cursor-pointer", "m-1", "ring-offset-transparent", "p-1 rounded-md aria-[selected=true]:outline-none aria-[selected=true]:ring-2 aria-[selected=true]:ring-primary aria-[selected=true]:ring-opacity-75 aria-[selected=true]:ring-primary/75 aria-[selected=true]:ring-offset-2", "aria-[selected=true]:bg-surface-
|
|
4863
|
+
className: cls("flex flex-row items-center gap-1.5", "cursor-pointer", "m-1", "ring-offset-transparent", "p-1 rounded-md aria-[selected=true]:outline-none aria-[selected=true]:ring-2 aria-[selected=true]:ring-primary aria-[selected=true]:ring-opacity-75 aria-[selected=true]:ring-primary/75 aria-[selected=true]:ring-offset-2", "aria-[selected=true]:bg-surface-active", "cursor-pointer p-2 rounded-md aria-[selected=true]:bg-surface-active"),
|
|
4758
4864
|
children: [/* @__PURE__ */ jsx(InnerCheckBox, { checked: selectedValues.length === allValues.length }), /* @__PURE__ */ jsx("span", {
|
|
4759
4865
|
className: "text-sm text-text-secondary dark:text-text-secondary-dark",
|
|
4760
4866
|
children: "(Select All)"
|
|
@@ -4780,7 +4886,7 @@ var MultiSelectItem = React$1.memo(function MultiSelectItem({ children, value, c
|
|
|
4780
4886
|
onSelect: (_) => {
|
|
4781
4887
|
onItemClick(value);
|
|
4782
4888
|
},
|
|
4783
|
-
className: cls("flex flex-row items-center gap-1.5", isSelected ? "bg-surface-
|
|
4889
|
+
className: cls("flex flex-row items-center gap-1.5", isSelected ? "bg-surface-active" : "", "cursor-pointer", "m-1", "ring-offset-transparent", "p-1 rounded-md aria-[selected=true]:outline-none aria-[selected=true]:ring-2 aria-[selected=true]:ring-primary aria-[selected=true]:ring-opacity-75 aria-[selected=true]:ring-primary/75 aria-[selected=true]:ring-offset-2", "aria-[selected=true]:bg-surface-active", "cursor-pointer p-2 rounded-md aria-[selected=true]:bg-surface-active", "text-surface-accent-700 dark:text-surface-accent-300", className),
|
|
4784
4890
|
children: [/* @__PURE__ */ jsx(InnerCheckBox, { checked: isSelected }), children]
|
|
4785
4891
|
});
|
|
4786
4892
|
});
|
|
@@ -4788,7 +4894,7 @@ var InnerCheckBox = React$1.memo(function InnerCheckBox({ checked }) {
|
|
|
4788
4894
|
return /* @__PURE__ */ jsx("div", {
|
|
4789
4895
|
className: cls("p-2", "w-8 h-8", "inline-flex items-center justify-center text-sm font-medium focus:outline-none transition-colors ease-in-out duration-150"),
|
|
4790
4896
|
children: /* @__PURE__ */ jsx("div", {
|
|
4791
|
-
className: cls("border-2 relative transition-colors ease-in-out duration-150", "w-4 h-4 rounded-sm flex items-center justify-center", checked ? "bg-primary" : "bg-
|
|
4897
|
+
className: cls("border-2 relative transition-colors ease-in-out duration-150", "w-4 h-4 rounded-sm flex items-center justify-center", checked ? "bg-primary" : "bg-surface-card", checked ? "text-surface-accent-100 dark:text-surface-accent-900" : "", checked ? "border-transparent" : "border-surface-accent-800 dark:border-surface-accent-200"),
|
|
4792
4898
|
children: checked && /* @__PURE__ */ jsx(CheckIcon$1, {
|
|
4793
4899
|
size: iconSize.smallest,
|
|
4794
4900
|
className: "absolute"
|
|
@@ -4910,7 +5016,7 @@ function ResizablePanels({ firstPanel, secondPanel, showFirstPanel = true, showS
|
|
|
4910
5016
|
children: firstPanel
|
|
4911
5017
|
}),
|
|
4912
5018
|
!stacked && showFirstPanel && showSecondPanel && /* @__PURE__ */ jsx("div", {
|
|
4913
|
-
className: cls("relative z-10 flex flex-shrink-0 items-center justify-center
|
|
5019
|
+
className: cls("relative z-10 flex flex-shrink-0 items-center justify-center border-transparent", isHorizontal ? "border-l w-px h-full cursor-col-resize" : "border-t h-px w-full cursor-row-resize"),
|
|
4914
5020
|
onMouseDown: handleResizeStart,
|
|
4915
5021
|
children: /* @__PURE__ */ jsx("div", {
|
|
4916
5022
|
className: cls("absolute flex items-center justify-center group", isHorizontal ? "w-4 h-full cursor-col-resize top-0" : "h-4 w-full cursor-row-resize left-0"),
|
|
@@ -4955,7 +5061,7 @@ function SearchBar({ onClick, onTextSearch, placeholder = "Search", expandable =
|
|
|
4955
5061
|
role: "search",
|
|
4956
5062
|
"aria-label": "Search",
|
|
4957
5063
|
onClick,
|
|
4958
|
-
className: cls("relative transition-all", heightClass, "bg-surface-
|
|
5064
|
+
className: cls("relative transition-all", heightClass, "bg-surface-field border", defaultBorderMixin, "focus-within:ring-1 focus-within:ring-primary/60 focus-within:border-primary focus-within:shadow-[0_0_0_3px_rgba(0,112,244,0.1)]", "rounded-full overflow-hidden", className),
|
|
4959
5065
|
children: [
|
|
4960
5066
|
/* @__PURE__ */ jsx("div", {
|
|
4961
5067
|
className: cls("absolute p-0 h-full pointer-events-none flex items-center justify-center top-0", iconPaddingClass),
|
|
@@ -5049,7 +5155,7 @@ var Select = forwardRef(({ inputRef, open, name, fullWidth = false, id, onOpenCh
|
|
|
5049
5155
|
children: label
|
|
5050
5156
|
}) : label,
|
|
5051
5157
|
/* @__PURE__ */ jsxs("div", {
|
|
5052
|
-
className: cls("select-none rounded-lg text-sm", invisible ? fieldBackgroundInvisibleMixin : fieldBackgroundMixin, disabled ? fieldBackgroundDisabledMixin : fieldBackgroundHoverMixin, "relative flex items-center", className, {
|
|
5158
|
+
className: cls("select-none rounded-lg text-sm", invisible ? fieldBackgroundInvisibleMixin : fieldBackgroundMixin, disabled ? fieldBackgroundDisabledMixin : invisible ? "" : fieldBackgroundHoverMixin, "relative flex items-center", className, {
|
|
5053
5159
|
"min-h-[28px]": size === "smallest",
|
|
5054
5160
|
"min-h-[32px]": size === "small",
|
|
5055
5161
|
"min-h-[40px]": size === "medium",
|
|
@@ -5116,7 +5222,7 @@ var Select = forwardRef(({ inputRef, open, name, fullWidth = false, id, onOpenCh
|
|
|
5116
5222
|
container: finalContainer,
|
|
5117
5223
|
children: /* @__PURE__ */ jsx(SelectPrimitive.Content, {
|
|
5118
5224
|
position,
|
|
5119
|
-
className: cls(focusedDisabled, "z-50 relative overflow-hidden border bg-
|
|
5225
|
+
className: cls(focusedDisabled, "z-50 relative overflow-hidden border bg-surface-card p-2 rounded-lg shadow-lg animate-in fade-in-0 zoom-in-95 duration-150", defaultBorderMixin),
|
|
5120
5226
|
children: /* @__PURE__ */ jsx(SelectPrimitive.Viewport, {
|
|
5121
5227
|
className: cls("p-1", viewportClassName),
|
|
5122
5228
|
style: { maxHeight: "var(--radix-select-content-available-height)" },
|
|
@@ -5133,7 +5239,7 @@ var SelectItem = React.memo(function SelectItem({ value, children, disabled, cla
|
|
|
5133
5239
|
return /* @__PURE__ */ jsxs(SelectPrimitive.Item, {
|
|
5134
5240
|
value: stringValue,
|
|
5135
5241
|
disabled,
|
|
5136
|
-
className: cls("w-full", "relative flex items-center p-2 rounded-md text-sm text-surface-accent-700 dark:text-surface-accent-300", "focus:z-10", "data-[state=checked]:bg-surface-
|
|
5242
|
+
className: cls("w-full", "relative flex items-center p-2 rounded-md text-sm text-surface-accent-700 dark:text-surface-accent-300", "focus:z-10", "data-[state=checked]:bg-surface-active focus:bg-surface-hover", "data-[state=checked]:focus:bg-surface-active", disabled ? "opacity-50 cursor-not-allowed" : "cursor-pointer", "[&>*]:w-full", "overflow-visible", className),
|
|
5137
5243
|
children: [/* @__PURE__ */ jsx(SelectPrimitive.ItemText, { children }), /* @__PURE__ */ jsx("div", {
|
|
5138
5244
|
className: "absolute left-1 data-[state=checked]:block hidden",
|
|
5139
5245
|
children: /* @__PURE__ */ jsx(CheckIcon$1, { size: iconSize.smallest })
|
|
@@ -5155,12 +5261,12 @@ function SliderThumb(props) {
|
|
|
5155
5261
|
asChild: true,
|
|
5156
5262
|
children: /* @__PURE__ */ jsx(SliderPrimitive.Thumb, { className: cls({
|
|
5157
5263
|
"border-primary bg-primary outline-none": !props.props.disabled,
|
|
5158
|
-
"border-surface-
|
|
5264
|
+
"border-surface-raised-hover bg-surface-raised-hover": props.props.disabled
|
|
5159
5265
|
}, props.classes, "focus-visible:ring-4 focus-visible:ring-primary focus-visible:ring-opacity-50 focus-visible:ring-primary/50", "hover:ring-4 hover:ring-primary hover:ring-opacity-25 hover:ring-primary/25", "block rounded-full transition-colors focus-visible:outline-none disabled:pointer-events-none disabled:opacity-50") })
|
|
5160
5266
|
}), /* @__PURE__ */ jsx(TooltipPrimitive.Content, {
|
|
5161
5267
|
side: "top",
|
|
5162
5268
|
sideOffset: 5,
|
|
5163
|
-
className: cls("TooltipContent", "max-w-lg leading-relaxed", "z-50 rounded-md px-3 py-2 text-xs leading-none bg-surface-
|
|
5269
|
+
className: cls("TooltipContent", "max-w-lg leading-relaxed", "z-50 rounded-md px-3 py-2 text-xs leading-none bg-surface-800/95 dark:bg-surface-raised-hover font-medium text-white shadow-2xl select-none duration-400 ease-in transform opacity-100"),
|
|
5164
5270
|
children: props.props.value?.[props.index]
|
|
5165
5271
|
})]
|
|
5166
5272
|
});
|
|
@@ -5178,10 +5284,10 @@ var Slider = React$1.forwardRef(({ className, size = "regular", ...props }, ref)
|
|
|
5178
5284
|
...props,
|
|
5179
5285
|
children: [/* @__PURE__ */ jsx(SliderPrimitive.Track, {
|
|
5180
5286
|
style: { height: size === "small" ? 4 : 8 },
|
|
5181
|
-
className: "relative w-full grow overflow-hidden rounded-full bg-surface-
|
|
5287
|
+
className: "relative w-full grow overflow-hidden rounded-full bg-surface-active",
|
|
5182
5288
|
children: /* @__PURE__ */ jsx(SliderPrimitive.Range, { className: cls("absolute h-full", {
|
|
5183
5289
|
"bg-primary": !props.disabled,
|
|
5184
|
-
"bg-surface-
|
|
5290
|
+
"bg-surface-raised-hover": props.disabled
|
|
5185
5291
|
}) })
|
|
5186
5292
|
}), (props.value ?? [0]).map((_, index) => /* @__PURE__ */ jsx(SliderThumb, {
|
|
5187
5293
|
index,
|
|
@@ -5225,7 +5331,7 @@ var Sheet = ({ children, side = "right", title, modal = true, includeBackgroundO
|
|
|
5225
5331
|
children: /* @__PURE__ */ jsxs(DialogPrimitive.Portal, {
|
|
5226
5332
|
container: finalContainer,
|
|
5227
5333
|
children: [includeBackgroundOverlay && /* @__PURE__ */ jsx(DialogPrimitive.Overlay, {
|
|
5228
|
-
className: cls("outline-none", "fixed inset-0 bg-
|
|
5334
|
+
className: cls("outline-none", "fixed inset-0 bg-surface-scrim", "backdrop-blur-sm transition-all duration-100 data-[state=closed]:animate-out data-[state=closed]:fade-out data-[state=open]:fade-in", overlayZIndex, overlayClassName),
|
|
5229
5335
|
style: overlayStyle
|
|
5230
5336
|
}), /* @__PURE__ */ jsxs(DialogPrimitive.Content, {
|
|
5231
5337
|
...props,
|
|
@@ -5233,7 +5339,7 @@ var Sheet = ({ children, side = "right", title, modal = true, includeBackgroundO
|
|
|
5233
5339
|
onOpenAutoFocus: (event) => event.preventDefault(),
|
|
5234
5340
|
onPointerDownOutside,
|
|
5235
5341
|
onInteractOutside,
|
|
5236
|
-
className: cls("outline-none", borderClass[side], defaultBorderMixin, "text-surface-accent-900 dark:text-white", "fixed transform z-50 transition-[transform,opacity] ease-in-out", !displayed ? "duration-150" : "duration-100", "outline-none focus:outline-none focus-visible:outline-none focus-visible:ring-0 focus:ring-0", transparent ? "" : "shadow-md bg-
|
|
5342
|
+
className: cls("outline-none", borderClass[side], defaultBorderMixin, "text-surface-accent-900 dark:text-white", "fixed transform z-50 transition-[transform,opacity] ease-in-out", !displayed ? "duration-150" : "duration-100", "outline-none focus:outline-none focus-visible:outline-none focus-visible:ring-0 focus:ring-0", transparent ? "" : "shadow-md bg-surface-card", side === "top" || side === "bottom" ? "w-full" : "h-full", side === "left" || side === "top" ? "left-0 top-0" : "right-0 bottom-0", displayed && open ? "opacity-100" : "opacity-50", !displayed || !open ? transformValue[side] : "", className),
|
|
5237
5343
|
style,
|
|
5238
5344
|
children: [/* @__PURE__ */ jsx(DialogPrimitive.Title, {
|
|
5239
5345
|
className: "sr-only outline-none focus:outline-none focus-visible:outline-none focus-visible:ring-0 focus:ring-0",
|
|
@@ -5454,7 +5560,7 @@ var TextField = forwardRef(({ value, onChange, label, type = "text", multiline =
|
|
|
5454
5560
|
onFocus: () => setFocused(true),
|
|
5455
5561
|
onBlur: () => setFocused(false),
|
|
5456
5562
|
style: inputStyle,
|
|
5457
|
-
className: cls(invisible ? focusedInvisibleMixin : "", "rounded-lg resize-none w-full outline-none text-
|
|
5563
|
+
className: cls(invisible ? focusedInvisibleMixin : "", "rounded-lg resize-none w-full outline-none text-sm bg-transparent min-h-[64px] px-3", label ? "pt-8 pb-2" : "py-2", disabled && "outline-none opacity-50 text-surface-accent-600 dark:text-surface-accent-500", inputClassName)
|
|
5458
5564
|
}) : /* @__PURE__ */ jsx("input", {
|
|
5459
5565
|
...inputProps,
|
|
5460
5566
|
ref: inputRef,
|
|
@@ -5464,7 +5570,7 @@ var TextField = forwardRef(({ value, onChange, label, type = "text", multiline =
|
|
|
5464
5570
|
"aria-disabled": disabled || void 0,
|
|
5465
5571
|
disabled,
|
|
5466
5572
|
style: inputStyle,
|
|
5467
|
-
className: cls("w-full outline-none bg-transparent leading-normal px-3", "rounded-lg", "focused:text-text-primary focused:dark:text-text-primary-dark", invisible ? focusedInvisibleMixin : "",
|
|
5573
|
+
className: cls("w-full outline-none bg-transparent leading-normal px-3 text-sm", "rounded-lg", "focused:text-text-primary focused:dark:text-text-primary-dark", invisible ? focusedInvisibleMixin : "", {
|
|
5468
5574
|
"min-h-[28px]": size === "smallest",
|
|
5469
5575
|
"min-h-[32px]": size === "small",
|
|
5470
5576
|
"min-h-[40px]": size === "medium",
|
|
@@ -5485,7 +5591,7 @@ var TextField = forwardRef(({ value, onChange, label, type = "text", multiline =
|
|
|
5485
5591
|
});
|
|
5486
5592
|
return /* @__PURE__ */ jsxs("div", {
|
|
5487
5593
|
ref,
|
|
5488
|
-
className: cls("rounded-lg relative max-w-full", invisible ? fieldBackgroundInvisibleMixin : fieldBackgroundMixin, disabled ? fieldBackgroundDisabledMixin : fieldBackgroundHoverMixin, error ? "border border-red-500 dark:border-red-600" : "", {
|
|
5594
|
+
className: cls("rounded-lg relative max-w-full", invisible ? fieldBackgroundInvisibleMixin : fieldBackgroundMixin, disabled ? fieldBackgroundDisabledMixin : invisible ? "" : fieldBackgroundHoverMixin, error ? "border border-red-500 dark:border-red-600" : "", {
|
|
5489
5595
|
"min-h-[28px]": size === "smallest",
|
|
5490
5596
|
"min-h-[32px]": size === "small",
|
|
5491
5597
|
"min-h-[40px]": size === "medium",
|
|
@@ -5567,7 +5673,7 @@ function Tabs({ value, onValueChange, className, innerClassName, variant = "stan
|
|
|
5567
5673
|
disabled: !showLeftScroll,
|
|
5568
5674
|
"aria-label": "Scroll tabs left",
|
|
5569
5675
|
onClick: () => scroll("left"),
|
|
5570
|
-
className: cls("absolute left-0 top-1/2 -translate-y-1/2 z-10 flex items-center justify-center rounded-md transition-all h-8 w-6", "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-surface-400", !showLeftScroll ? "pointer-events-none opacity-0" : "text-surface-600 dark:text-surface-400 hover:bg-surface-
|
|
5676
|
+
className: cls("absolute left-0 top-1/2 -translate-y-1/2 z-10 flex items-center justify-center rounded-md transition-all h-8 w-6", "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-surface-400", !showLeftScroll ? "pointer-events-none opacity-0" : "text-surface-600 dark:text-surface-400 hover:bg-surface-hover", "bg-surface-card border shadow-sm", "border-hairline"),
|
|
5571
5677
|
children: /* @__PURE__ */ jsx(ChevronLeftIcon$1, { size: iconSize.smallest })
|
|
5572
5678
|
}),
|
|
5573
5679
|
/* @__PURE__ */ jsx("div", {
|
|
@@ -5579,7 +5685,7 @@ function Tabs({ value, onValueChange, className, innerClassName, variant = "stan
|
|
|
5579
5685
|
msOverflowStyle: "none"
|
|
5580
5686
|
},
|
|
5581
5687
|
children: /* @__PURE__ */ jsx(TabsPrimitive.List, {
|
|
5582
|
-
className: cls(variant === "standard" && "inline-flex h-9 items-center justify-start rounded-md bg-surface-
|
|
5688
|
+
className: cls(variant === "standard" && "inline-flex h-9 items-center justify-start rounded-md bg-surface-field p-1 text-surface-600 dark:text-surface-400 gap-2", variant === "boxy" && "flex items-end h-full", variant === "pill" && "flex items-center gap-0.5", innerClassName),
|
|
5583
5689
|
children
|
|
5584
5690
|
})
|
|
5585
5691
|
}),
|
|
@@ -5588,7 +5694,7 @@ function Tabs({ value, onValueChange, className, innerClassName, variant = "stan
|
|
|
5588
5694
|
disabled: !showRightScroll,
|
|
5589
5695
|
"aria-label": "Scroll tabs right",
|
|
5590
5696
|
onClick: () => scroll("right"),
|
|
5591
|
-
className: cls("absolute right-0 top-1/2 -translate-y-1/2 z-10 flex items-center justify-center rounded-md transition-all h-8 w-6", "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-surface-400", !showRightScroll ? "pointer-events-none opacity-0" : "text-surface-600 dark:text-surface-400 hover:bg-surface-
|
|
5697
|
+
className: cls("absolute right-0 top-1/2 -translate-y-1/2 z-10 flex items-center justify-center rounded-md transition-all h-8 w-6", "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-surface-400", !showRightScroll ? "pointer-events-none opacity-0" : "text-surface-600 dark:text-surface-400 hover:bg-surface-hover", "bg-surface-card border shadow-sm", "border-hairline"),
|
|
5592
5698
|
children: /* @__PURE__ */ jsx(ChevronRightIcon$1, { size: iconSize.smallest })
|
|
5593
5699
|
})
|
|
5594
5700
|
]
|
|
@@ -5600,7 +5706,7 @@ function Tab({ value, className, innerClassName, children, disabled }) {
|
|
|
5600
5706
|
return /* @__PURE__ */ jsx(TabsPrimitive.Trigger, {
|
|
5601
5707
|
value,
|
|
5602
5708
|
disabled,
|
|
5603
|
-
className: cls("inline-flex items-center justify-center whitespace-nowrap text-sm font-medium ring-offset-white transition-all", "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-surface-400 focus-visible:ring-offset-2", "disabled:pointer-events-none disabled:opacity-50", variant === "standard" && "rounded-md px-3 py-1 data-[state=active]:bg-
|
|
5709
|
+
className: cls("inline-flex items-center justify-center whitespace-nowrap text-sm font-medium ring-offset-white transition-all", "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-surface-400 focus-visible:ring-offset-2", "disabled:pointer-events-none disabled:opacity-50", variant === "standard" && "rounded-md px-3 py-1 data-[state=active]:bg-surface-lifted data-[state=active]:text-surface-900 data-[state=active]:shadow-sm dark:data-[state=active]:text-surface-50", variant === "boxy" && cls("flex-shrink-0 flex items-center gap-1.5 px-3.5 h-9 cursor-pointer text-xs font-medium transition-colors group relative box-border", "rounded-t-lg -mb-px border border-transparent border-b-0", "data-[state=active]:bg-surface-card data-[state=active]:border-hairline", "data-[state=active]:text-text-primary dark:data-[state=active]:text-text-primary-dark", "text-text-secondary dark:text-text-secondary-dark hover:bg-surface-hover"), variant === "pill" && cls("px-2 py-0.5 rounded-md text-[10px] font-medium transition-colors", "data-[state=active]:bg-primary/10 data-[state=active]:text-primary dark:data-[state=active]:bg-primary/20 dark:data-[state=active]:text-primary", "text-text-disabled dark:text-text-disabled-dark hover:text-text-secondary dark:hover:text-text-secondary-dark"), className, variant === "standard" && innerClassName),
|
|
5604
5710
|
children
|
|
5605
5711
|
});
|
|
5606
5712
|
}
|
|
@@ -5613,21 +5719,21 @@ var Table = React.memo(({ children, className, style, ...rest }) => /* @__PURE__
|
|
|
5613
5719
|
children
|
|
5614
5720
|
}));
|
|
5615
5721
|
var TableBody = React.memo(({ children, className, ...rest }) => /* @__PURE__ */ jsx("tbody", {
|
|
5616
|
-
className: cls("bg-
|
|
5722
|
+
className: cls("bg-surface-card text-sm divide-y divide-hairline", className),
|
|
5617
5723
|
...rest,
|
|
5618
5724
|
children
|
|
5619
5725
|
}));
|
|
5620
5726
|
var TableHeader = React.memo(({ children, className, ...rest }) => /* @__PURE__ */ jsx("thead", {
|
|
5621
5727
|
...rest,
|
|
5622
5728
|
children: /* @__PURE__ */ jsx("tr", {
|
|
5623
|
-
className: cls(defaultBorderMixin, "text-sm font-medium text-surface-700 dark:text-surface-accent-300", "bg-surface-
|
|
5729
|
+
className: cls(defaultBorderMixin, "text-sm font-medium text-surface-700 dark:text-surface-accent-300", "bg-surface-sheet border-b", className),
|
|
5624
5730
|
children
|
|
5625
5731
|
})
|
|
5626
5732
|
}));
|
|
5627
5733
|
var TableRow = React.memo(({ children, className, onClick, style, ...rest }) => /* @__PURE__ */ jsx("tr", {
|
|
5628
5734
|
onClick,
|
|
5629
5735
|
style,
|
|
5630
|
-
className: cls("bg-
|
|
5736
|
+
className: cls("bg-surface-card", onClick ? "transition-colors duration-150 hover:bg-surface-card-hover cursor-pointer" : "", className),
|
|
5631
5737
|
...rest,
|
|
5632
5738
|
children
|
|
5633
5739
|
}));
|
|
@@ -5771,7 +5877,7 @@ var getColor = (color) => {
|
|
|
5771
5877
|
case "secondary": return "bg-secondary";
|
|
5772
5878
|
case "warning": return "bg-orange-500";
|
|
5773
5879
|
case "error": return "bg-red-500";
|
|
5774
|
-
default: return "bg-surface-
|
|
5880
|
+
default: return "bg-surface-raised-hover";
|
|
5775
5881
|
}
|
|
5776
5882
|
};
|
|
5777
5883
|
var Badge = React.forwardRef(({ color = "primary", invisible = false, children }, ref) => {
|
|
@@ -5874,7 +5980,7 @@ function Skeleton({ width, height, className }) {
|
|
|
5874
5980
|
width: width === void 0 ? void 0 : `${width}px`,
|
|
5875
5981
|
height: height === void 0 ? void 0 : `${height}px`
|
|
5876
5982
|
},
|
|
5877
|
-
className: cls("block relative overflow-hidden", "bg-surface-
|
|
5983
|
+
className: cls("block relative overflow-hidden", "bg-surface-raised rounded-md", "max-w-full max-h-full", width === void 0 ? "w-full" : void 0, height === void 0 ? "h-3" : void 0, className),
|
|
5878
5984
|
children: /* @__PURE__ */ jsx("span", {
|
|
5879
5985
|
className: "absolute inset-0 bg-gradient-to-r from-transparent via-white/50 dark:via-white/8 to-transparent",
|
|
5880
5986
|
style: { animation: "shimmer 1.8s ease-in-out infinite" }
|
|
@@ -5891,7 +5997,7 @@ function ToggleButtonGroup({ value, onValueChange, options, className }) {
|
|
|
5891
5997
|
return /* @__PURE__ */ jsx("div", {
|
|
5892
5998
|
role: "group",
|
|
5893
5999
|
"aria-label": "Toggle options",
|
|
5894
|
-
className: cls("inline-flex flex-row bg-surface-
|
|
6000
|
+
className: cls("inline-flex flex-row bg-surface-field rounded-lg p-1 gap-1", className),
|
|
5895
6001
|
children: options.map((option) => /* @__PURE__ */ jsxs("button", {
|
|
5896
6002
|
type: "button",
|
|
5897
6003
|
onClick: (e) => {
|
|
@@ -5901,9 +6007,9 @@ function ToggleButtonGroup({ value, onValueChange, options, className }) {
|
|
|
5901
6007
|
disabled: option.disabled,
|
|
5902
6008
|
"aria-pressed": value === option.value,
|
|
5903
6009
|
"aria-disabled": option.disabled || void 0,
|
|
5904
|
-
className: cls("flex flex-row items-center justify-center gap-2
|
|
6010
|
+
className: cls("flex flex-row items-center justify-center gap-2 h-6 px-3.5 rounded-md transition-colors duration-150 focus:outline-none focus-visible:ring-2 focus-visible:ring-primary/50", value === option.value ? "bg-surface-lifted text-text-primary dark:text-text-primary-dark shadow-sm" : "text-text-secondary dark:text-text-secondary-dark hover:bg-surface-hover", option.disabled && "opacity-50 cursor-not-allowed"),
|
|
5905
6011
|
children: [option.icon, /* @__PURE__ */ jsx("span", {
|
|
5906
|
-
className: "text-
|
|
6012
|
+
className: "text-xs font-medium",
|
|
5907
6013
|
children: option.label
|
|
5908
6014
|
})]
|
|
5909
6015
|
}, option.value))
|
|
@@ -5937,7 +6043,7 @@ var VirtualTableHeader = React.memo(function VirtualTableHeader({ resizeHandleRe
|
|
|
5937
6043
|
}, [column, onFilterUpdate]);
|
|
5938
6044
|
const hovered = !(isResizingIndex !== columnIndex && isResizingIndex > 0) && (onHover || isResizingIndex === columnIndex);
|
|
5939
6045
|
return /* @__PURE__ */ jsx(ErrorBoundary, { children: /* @__PURE__ */ jsxs("div", {
|
|
5940
|
-
className: cls("flex py-0 px-3 h-full text-xs uppercase font-semibold relative select-none items-center", isDragging ? "bg-primary-bg dark:bg-primary-bg-dark" : "bg-surface-
|
|
6046
|
+
className: cls("flex py-0 px-3 h-full text-xs uppercase font-semibold relative select-none items-center", isDragging ? "bg-primary-bg dark:bg-primary-bg-dark" : "bg-surface-sheet", "text-text-secondary hover:text-text-primary dark:text-text-secondary-dark dark:hover:text-text-primary-dark", !isDragging && "hover:bg-surface-hover", column.frozen ? "sticky left-0 z-10" : "relative z-0", isDraggable && "cursor-grab"),
|
|
5941
6047
|
style: {
|
|
5942
6048
|
left: column.frozen ? 0 : void 0,
|
|
5943
6049
|
minWidth: column.width,
|
|
@@ -5975,7 +6081,7 @@ var VirtualTableHeader = React.memo(function VirtualTableHeader({ resizeHandleRe
|
|
|
5975
6081
|
invisible: !sort,
|
|
5976
6082
|
children: /* @__PURE__ */ jsxs(IconButton, {
|
|
5977
6083
|
size: "small",
|
|
5978
|
-
className: onHover || openFilter ? "bg-
|
|
6084
|
+
className: onHover || openFilter ? "bg-surface-card" : void 0,
|
|
5979
6085
|
title: sortActionTitle(sort, sortPosition),
|
|
5980
6086
|
"aria-label": sortActionTitle(sort, sortPosition),
|
|
5981
6087
|
onClick: (event) => {
|
|
@@ -6013,7 +6119,7 @@ var VirtualTableHeader = React.memo(function VirtualTableHeader({ resizeHandleRe
|
|
|
6013
6119
|
className: hidden ? "hidden" : void 0,
|
|
6014
6120
|
modal: true,
|
|
6015
6121
|
trigger: /* @__PURE__ */ jsx(IconButton, {
|
|
6016
|
-
className: onHover || openFilter ? "bg-
|
|
6122
|
+
className: onHover || openFilter ? "bg-surface-card" : void 0,
|
|
6017
6123
|
size: "small",
|
|
6018
6124
|
onClick: handleSettingsClick,
|
|
6019
6125
|
children: /* @__PURE__ */ jsx(FilterIcon$1, {
|
|
@@ -6036,7 +6142,7 @@ var VirtualTableHeader = React.memo(function VirtualTableHeader({ resizeHandleRe
|
|
|
6036
6142
|
column.resizable && /* @__PURE__ */ jsx("div", {
|
|
6037
6143
|
ref: resizeHandleRef,
|
|
6038
6144
|
"data-no-dnd": "true",
|
|
6039
|
-
className: cls("absolute h-full w-[6px] top-0 right-0 cursor-col-resize", hovered && "bg-
|
|
6145
|
+
className: cls("absolute h-full w-[6px] top-0 right-0 cursor-col-resize", hovered && "bg-hairline-strong"),
|
|
6040
6146
|
onPointerDown: (e) => {
|
|
6041
6147
|
e.stopPropagation();
|
|
6042
6148
|
if (onClickResizeColumn) onClickResizeColumn(columnIndex, column);
|
|
@@ -6154,7 +6260,7 @@ var SortableColumnHeader = ({ column, columnIndex, columnRefs, isResizing, onFil
|
|
|
6154
6260
|
})
|
|
6155
6261
|
});
|
|
6156
6262
|
};
|
|
6157
|
-
var VirtualTableHeaderRow = ({ columns, sortIndex, onColumnSort, onFilterUpdate, filter, onColumnResize, onColumnResizeEnd, createFilterField, AddColumnComponent, onColumnsOrderChange, data, cellRenderer: CellRenderer, rowHeight = 54, draggingColumnId, headerHeight =
|
|
6263
|
+
var VirtualTableHeaderRow = ({ columns, sortIndex, onColumnSort, onFilterUpdate, filter, onColumnResize, onColumnResizeEnd, createFilterField, AddColumnComponent, onColumnsOrderChange, data, cellRenderer: CellRenderer, rowHeight = 54, draggingColumnId, headerHeight = 40 }) => {
|
|
6158
6264
|
const columnRefs = useMemo(() => columns.map(() => createRef()), [columns.length]);
|
|
6159
6265
|
const [isResizing, setIsResizing] = useState(-1);
|
|
6160
6266
|
const adjustWidthColumn = useCallback((index, width, end) => {
|
|
@@ -6234,7 +6340,7 @@ var VirtualTableHeaderRow = ({ columns, sortIndex, onColumnSort, onFilterUpdate,
|
|
|
6234
6340
|
setCursorDocument(true);
|
|
6235
6341
|
}, [setCursorDocument]);
|
|
6236
6342
|
return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsxs("div", {
|
|
6237
|
-
className: cls(defaultBorderMixin, "z-20 sticky min-w-full flex w-fit flex-row top-0 left-0 border-b bg-surface-
|
|
6343
|
+
className: cls(defaultBorderMixin, "z-20 sticky min-w-full flex w-fit flex-row top-0 left-0 border-b bg-surface-sheet"),
|
|
6238
6344
|
style: { height: headerHeight },
|
|
6239
6345
|
children: [columns.map((column, columnIndex) => {
|
|
6240
6346
|
const columnFilter = column && filter && filter[column.key] ? filter[column.key] : void 0;
|
|
@@ -6274,8 +6380,8 @@ var VirtualTableRow = React.memo(function VirtualTableRow({ rowData, rowIndex, c
|
|
|
6274
6380
|
rowIndex
|
|
6275
6381
|
]);
|
|
6276
6382
|
return /* @__PURE__ */ jsx("div", {
|
|
6277
|
-
className: cls("flex min-w-full text-sm border-b border-
|
|
6278
|
-
"hover:!bg-
|
|
6383
|
+
className: cls("group flex min-w-full text-sm border-b border-hairline bg-surface-card", rowClassName ? rowClassName(rowData) : "", {
|
|
6384
|
+
"hover:!bg-surface-card-hover": hoverRow,
|
|
6279
6385
|
"cursor-pointer ": onRowClick
|
|
6280
6386
|
}),
|
|
6281
6387
|
onClick,
|
|
@@ -6370,7 +6476,7 @@ var innerElementType = forwardRef(({ children, ...rest }, ref) => {
|
|
|
6370
6476
|
* implementation always had. Runtime behaviour is unchanged — this is the same
|
|
6371
6477
|
* memoized component under a type that describes it.
|
|
6372
6478
|
*/
|
|
6373
|
-
var VirtualTable = React.memo(function VirtualTable({ data, onResetPagination, onEndReached, endOffset = 600, rowHeight = 54, headerHeight =
|
|
6479
|
+
var VirtualTable = React.memo(function VirtualTable({ data, onResetPagination, onEndReached, endOffset = 600, rowHeight = 54, headerHeight = 40, columns: columnsProp, onRowClick, onColumnResize, onColumnResizeEnd, filter: filterInput, checkFilterCombination, onFilterUpdate, sortBy, error, emptyComponent, onSortByUpdate, onScroll: onScrollProp, loading, cellRenderer, hoverRow, createFilterField, rowClassName, style, className, endAdornment, AddColumnComponent, initialScroll = 0, onColumnsOrderChange, extraData }) {
|
|
6374
6480
|
const sortIndex = useMemo(() => {
|
|
6375
6481
|
const index = /* @__PURE__ */ new Map();
|
|
6376
6482
|
(sortBy ?? []).forEach(([key, direction], position) => {
|
|
@@ -6615,7 +6721,7 @@ var SortableCellWrapper = ({ columnKey, width, isDragging, isDraggable, frozen,
|
|
|
6615
6721
|
maxWidth: width,
|
|
6616
6722
|
width
|
|
6617
6723
|
},
|
|
6618
|
-
className: cls("flex-shrink-0", frozen && "sticky left-0 z-10 bg-
|
|
6724
|
+
className: cls("flex-shrink-0", frozen && "sticky left-0 z-10 bg-surface-card"),
|
|
6619
6725
|
...attrsWithoutTabIndex,
|
|
6620
6726
|
children
|
|
6621
6727
|
});
|
|
@@ -6631,7 +6737,7 @@ function MemoizedList({ outerRef, width, height, itemCount, onScroll, itemSize,
|
|
|
6631
6737
|
onScroll,
|
|
6632
6738
|
itemSize,
|
|
6633
6739
|
children: useCallback(({ index, style }) => {
|
|
6634
|
-
return /* @__PURE__ */ jsx(VirtualListContext.Consumer, { children: ({ onRowClick, data, columns, rowHeight = 54, headerHeight =
|
|
6740
|
+
return /* @__PURE__ */ jsx(VirtualListContext.Consumer, { children: ({ onRowClick, data, columns, rowHeight = 54, headerHeight = 40, cellRenderer, hoverRow, rowClassName, endAdornment, draggingColumnId, onColumnsOrderChange, extraData }) => {
|
|
6635
6741
|
if (endAdornment && index === (data ?? []).length) return /* @__PURE__ */ jsx("div", {
|
|
6636
6742
|
style: {
|
|
6637
6743
|
...style,
|
|
@@ -6677,7 +6783,7 @@ function MemoizedList({ outerRef, width, height, itemCount, onScroll, itemSize,
|
|
|
6677
6783
|
extraData
|
|
6678
6784
|
})
|
|
6679
6785
|
}, `cell_wrapper_${column.key}`) : /* @__PURE__ */ jsx("div", {
|
|
6680
|
-
className: cls("flex-shrink-0 relative", column.frozen && "sticky left-0 z-10 bg-
|
|
6786
|
+
className: cls("flex-shrink-0 relative", column.frozen && "sticky left-0 z-10 bg-surface-card"),
|
|
6681
6787
|
style: {
|
|
6682
6788
|
minWidth: column.width,
|
|
6683
6789
|
maxWidth: column.width,
|
|
@@ -6896,12 +7002,13 @@ function VirtualTableSwitch(props) {
|
|
|
6896
7002
|
//#endregion
|
|
6897
7003
|
//#region src/components/VirtualTable/fields/VirtualTableDateField.tsx
|
|
6898
7004
|
function VirtualTableDateField(props) {
|
|
6899
|
-
const { disabled, error, mode, timezone, internalValue, updateValue, small = false, locale } = props;
|
|
7005
|
+
const { name, disabled, error, mode, timezone, internalValue, updateValue, small = false, locale } = props;
|
|
6900
7006
|
return /* @__PURE__ */ jsx(DateTimeField, {
|
|
6901
7007
|
value: internalValue ?? void 0,
|
|
6902
7008
|
onChange: (dateValue) => updateValue(dateValue ?? null),
|
|
6903
7009
|
disabled,
|
|
6904
7010
|
error: Boolean(error),
|
|
7011
|
+
"aria-label": name,
|
|
6905
7012
|
invisible: true,
|
|
6906
7013
|
size: small ? "small" : "medium",
|
|
6907
7014
|
inputClassName: cls("w-full h-full", focusedDisabled),
|
|
@@ -7085,10 +7192,9 @@ function ListView({ data, dataLoading = false, noMoreToLoad = false, dataLoading
|
|
|
7085
7192
|
}
|
|
7086
7193
|
return String(item);
|
|
7087
7194
|
}, []);
|
|
7088
|
-
const borderMixinClass = "border-surface-200 dark:border-surface-800";
|
|
7089
7195
|
return /* @__PURE__ */ jsx("div", {
|
|
7090
7196
|
ref: containerRef,
|
|
7091
|
-
className: cls("w-full", selectedEntityId === void 0 && `rounded-lg overflow-hidden border
|
|
7197
|
+
className: cls("w-full", selectedEntityId === void 0 && `rounded-lg overflow-hidden border border-hairline`),
|
|
7092
7198
|
children: dataLoadingError && data.length === 0 ? /* @__PURE__ */ jsx("div", {
|
|
7093
7199
|
className: "flex items-center justify-center p-8",
|
|
7094
7200
|
children: /* @__PURE__ */ jsxs(Typography, {
|
|
@@ -7107,6 +7213,7 @@ function ListView({ data, dataLoading = false, noMoreToLoad = false, dataLoading
|
|
|
7107
7213
|
})
|
|
7108
7214
|
}) : /* @__PURE__ */ jsxs(Fragment, { children: [header, /* @__PURE__ */ jsxs("div", {
|
|
7109
7215
|
ref: rowsRef,
|
|
7216
|
+
className: "my-1.5",
|
|
7110
7217
|
style: {
|
|
7111
7218
|
height: totalHeight + footerHeight,
|
|
7112
7219
|
position: "relative"
|
|
@@ -7143,7 +7250,7 @@ function ListView({ data, dataLoading = false, noMoreToLoad = false, dataLoading
|
|
|
7143
7250
|
height: estimatedRowHeight,
|
|
7144
7251
|
overflow: "hidden"
|
|
7145
7252
|
},
|
|
7146
|
-
className:
|
|
7253
|
+
className: "py-0.5",
|
|
7147
7254
|
selected,
|
|
7148
7255
|
highlighted,
|
|
7149
7256
|
isLast,
|
|
@@ -7163,7 +7270,7 @@ function ListView({ data, dataLoading = false, noMoreToLoad = false, dataLoading
|
|
|
7163
7270
|
children: /* @__PURE__ */ jsx(CircularProgress, { size: "small" })
|
|
7164
7271
|
}),
|
|
7165
7272
|
!dataLoading && noMoreToLoad && data.length > 0 && /* @__PURE__ */ jsx("div", {
|
|
7166
|
-
className: "flex items-center justify-center py-2
|
|
7273
|
+
className: "flex items-center justify-center py-2",
|
|
7167
7274
|
style: {
|
|
7168
7275
|
position: "absolute",
|
|
7169
7276
|
top: totalHeight,
|
|
@@ -7400,7 +7507,7 @@ function BoardSortableList({ columnId, items, ItemComponent, isDragging, isDragO
|
|
|
7400
7507
|
}, [hasMore, onLoadMore]);
|
|
7401
7508
|
return /* @__PURE__ */ jsx("div", {
|
|
7402
7509
|
ref: setNodeRef,
|
|
7403
|
-
className: useMemo(() => cls("flex flex-col p-2 transition-opacity duration-100 transition-bg ease-linear w-full overflow-y-auto flex-1 min-h-0 rounded-md", isDragging && isDragOverColumn ? "bg-surface-
|
|
7510
|
+
className: useMemo(() => cls("flex flex-col p-2 transition-opacity duration-100 transition-bg ease-linear w-full overflow-y-auto flex-1 min-h-0 rounded-md", isDragging && isDragOverColumn ? "bg-surface-active" : isDragging ? "bg-surface-field hover:bg-surface-hover" : "bg-surface-field"), [isDragging, isDragOverColumn]),
|
|
7404
7511
|
style: { minHeight: 80 },
|
|
7405
7512
|
children: /* @__PURE__ */ jsx(SortableContext, {
|
|
7406
7513
|
items: items.map((i) => i.id),
|
|
@@ -7492,8 +7599,8 @@ var BoardColumn = memo(function BoardColumn({ id, title, items, ItemComponent, i
|
|
|
7492
7599
|
isColumnBeingDragged
|
|
7493
7600
|
]);
|
|
7494
7601
|
const dragListeners = allowReorder ? listeners : {};
|
|
7495
|
-
const columnClassName = useMemo(() => cls("border h-full w-80 min-w-80 mx-2 flex flex-col rounded-md border-
|
|
7496
|
-
const headerClassName = useMemo(() => cls("flex items-center justify-between px-2 rounded-t-md transition-colors duration-200 ease-in-out", isColumnBeingDragged ? "bg-surface-
|
|
7602
|
+
const columnClassName = useMemo(() => cls("border h-full w-80 min-w-80 mx-2 flex flex-col rounded-md border-hairline", isColumnBeingDragged ? "ring-2 ring-primary" : ""), [isColumnBeingDragged]);
|
|
7603
|
+
const headerClassName = useMemo(() => cls("flex items-center justify-between px-2 rounded-t-md transition-colors duration-200 ease-in-out", isColumnBeingDragged ? "bg-surface-active" : "bg-surface-field hover:bg-surface-field-hover", allowReorder ? "cursor-grab" : ""), [isColumnBeingDragged, allowReorder]);
|
|
7497
7604
|
const itemIds = useMemo(() => items.map((i) => i.id), [items]);
|
|
7498
7605
|
return /* @__PURE__ */ jsxs("div", {
|
|
7499
7606
|
ref: setNodeRef,
|
|
@@ -7851,7 +7958,7 @@ function CollectionViewToolbar({ viewMode, onViewModeChange, enabledViews = [
|
|
|
7851
7958
|
const showKanbanSelector = kanbanPropertyOptions && kanbanPropertyOptions.length > 0 && viewMode === "kanban" && onKanbanPropertyChange;
|
|
7852
7959
|
const showPopover = showViewToggle || showSizeSelector || showKanbanSelector;
|
|
7853
7960
|
return /* @__PURE__ */ jsxs("div", {
|
|
7854
|
-
className: cls("flex items-center gap-2 px-2 flex-shrink-0", "border-b border-
|
|
7961
|
+
className: cls("flex items-center gap-2 px-2 flex-shrink-0", "border-b border-hairline", compact ? "py-0.5 gap-1" : "py-1"),
|
|
7855
7962
|
children: [
|
|
7856
7963
|
actionsStart,
|
|
7857
7964
|
onSearchChange && /* @__PURE__ */ jsx(SearchBar, {
|
|
@@ -8081,7 +8188,7 @@ function renderString(property, value) {
|
|
|
8081
8188
|
if (fallback instanceof HTMLElement) fallback.style.display = "flex";
|
|
8082
8189
|
}
|
|
8083
8190
|
}) : null, /* @__PURE__ */ jsx("div", {
|
|
8084
|
-
className: cls("w-full h-full items-center justify-center rounded", "bg-surface-
|
|
8191
|
+
className: cls("w-full h-full items-center justify-center rounded", "bg-surface-raised text-text-secondary dark:text-text-secondary-dark", strValue ? "hidden" : "flex"),
|
|
8085
8192
|
children: /* @__PURE__ */ jsx(ImageIcon$1, { size: iconSize.small })
|
|
8086
8193
|
})]
|
|
8087
8194
|
});
|
|
@@ -8512,7 +8619,7 @@ function CollectionCardView({ dataController, properties, propertiesOrder, idPro
|
|
|
8512
8619
|
src: imageValue,
|
|
8513
8620
|
alt: "",
|
|
8514
8621
|
className: "w-full h-32 object-cover rounded-t-lg"
|
|
8515
|
-
}) : /* @__PURE__ */ jsx("div", { className: cls("h-24 rounded-t-lg", "bg-surface-
|
|
8622
|
+
}) : /* @__PURE__ */ jsx("div", { className: cls("h-24 rounded-t-lg", "bg-surface-field border border-hairline") })),
|
|
8516
8623
|
selectionEnabled && /* @__PURE__ */ jsx("div", {
|
|
8517
8624
|
className: "absolute top-2 right-2",
|
|
8518
8625
|
onClick: (e) => e.stopPropagation(),
|
|
@@ -8656,7 +8763,7 @@ function CollectionListView({ dataController, properties, propertiesOrder, idPro
|
|
|
8656
8763
|
const titleValue = getValueInPath(item, titlePropertyKey);
|
|
8657
8764
|
return /* @__PURE__ */ jsxs("div", {
|
|
8658
8765
|
style,
|
|
8659
|
-
className: cls("flex items-center gap-3 px-4 cursor-pointer", "hover:bg-surface-
|
|
8766
|
+
className: cls("flex items-center gap-3 px-4 cursor-pointer", "hover:bg-surface-hover", "transition-colors duration-100", selected && "bg-primary-50 dark:bg-primary-900/20", highlighted && "bg-surface-raised", rowClassName),
|
|
8660
8767
|
onClick,
|
|
8661
8768
|
children: [selectionEnabled && /* @__PURE__ */ jsx("div", {
|
|
8662
8769
|
className: "flex-shrink-0",
|
|
@@ -9031,7 +9138,7 @@ function CollectionView({ dataController, properties, propertiesOrder, displayed
|
|
|
9031
9138
|
}
|
|
9032
9139
|
}
|
|
9033
9140
|
return /* @__PURE__ */ jsxs("div", {
|
|
9034
|
-
className: cls("overflow-hidden h-full w-full rounded-md flex flex-col", "
|
|
9141
|
+
className: cls("overflow-hidden h-full w-full rounded-md flex flex-col", "bg-surface-sheet", className),
|
|
9035
9142
|
children: [
|
|
9036
9143
|
dataController.error && dataController.data.length > 0 && /* @__PURE__ */ jsx("div", {
|
|
9037
9144
|
className: "flex items-center gap-4 px-4 py-2 bg-red-50 dark:bg-red-900/20 border-b border-red-200 dark:border-red-800 flex-shrink-0",
|
|
@@ -9069,6 +9176,6 @@ function CollectionView({ dataController, properties, propertiesOrder, displayed
|
|
|
9069
9176
|
});
|
|
9070
9177
|
}
|
|
9071
9178
|
//#endregion
|
|
9072
|
-
export { Alert, AlertCircleIcon, AlertTriangleIcon, AlignLeftIcon, AppWindow, ArrowDownIcon, ArrowDownToLineIcon, ArrowLeftIcon, ArrowRightFromLineIcon, ArrowRightIcon, ArrowRightLeftIcon, ArrowRightToLineIcon, ArrowUpDownIcon, ArrowUpIcon, ArrowUpToLineIcon, Autocomplete, AutocompleteItem, Avatar, Badge, BoldIcon, BookOpenIcon, BooleanSwitch, BooleanSwitchWithLabel, Button, CHIP_COLORS, CHIP_HUES, CHIP_SEED_KEYS, CONTROL_HEIGHT, CalendarIcon, Card, CardView, CenteredView, CheckCircle2Icon, CheckCircleIcon, CheckIcon, CheckSquareIcon, Checkbox, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, ChevronsLeftIcon, ChevronsRightIcon, ChevronsUpDownIcon, Chip, CircleDotIcon, CircleIcon, CircleUserIcon, CircularProgress, CircularProgressCenter, CodeIcon, Collapse, CollectionView, ColorPicker, ColumnsIcon, Container, CopyIcon, DatabaseIcon, DateTimeField, DebouncedTextField, Dialog, DialogActions, DialogContent, DialogTitle, DollarSignIcon, DownloadIcon, ErrorBoundary, ExpandablePanel, ExternalLinkIcon, EyeIcon, EyeOffIcon, FileIcon, FileSearchIcon, FileTextIcon, FileUpload, FilterChip, FilterIcon, FilterXIcon, FlagIcon, FolderIcon, FolderKanbanIcon, FolderPlusIcon, FolderUpIcon, FunctionSquareIcon, GitBranchIcon, GitHubIcon, GlobeIcon, HandleIcon, HashIcon, Heading1Icon, Heading2Icon, Heading3Icon, HelpCircleIcon, HistoryIcon, HomeIcon, IconButton, ImageIcon, ImageOffIcon, InfoIcon, InfoLabel, InputLabel, ItalicIcon, KanbanIcon, KanbanView, KeyIcon, KeyRoundIcon, Label, LanguagesIcon, LayoutGridIcon, Link2Icon, LinkIcon, ListIcon, ListOrderedIcon, ListPlusIcon, ListTodoIcon, ListView, LoaderIcon, LoadingButton, LockIcon, LogOutIcon, LucideIconByName, MailIcon, Markdown, Maximize2Icon, Menu, MenuIcon, MenuItem, Menubar, MenubarCheckboxItem, MenubarContent, MenubarItem, MenubarItemIndicator, MenubarMenu, MenubarPortal, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarSubTriggerIndicator, MenubarTrigger, MessageCircleIcon, MinusCircleIcon, MinusIcon, MoonIcon, MoreVerticalIcon, MultiSelect, MultiSelectContext, MultiSelectItem, Music2Icon, PanelLeftCloseIcon, PanelLeftIcon, PanelLeftOpenIcon, Paper, PauseIcon, PenLineIcon, PencilIcon, PhoneIcon, PinIcon, PlayIcon, PlusIcon, Popover, PopoverPrimitive, Portal, PortalContainerProvider, QuoteIcon, RadioGroup, RadioGroupItem, RefreshCcwIcon, RefreshCwIcon, RepeatIcon, ResizablePanels, Rows3Icon, SaveIcon, SearchBar, SearchIcon, Select, SelectGroup, SelectItem, SendIcon, Separator, SettingsIcon, Sheet, ShieldIcon, ShoppingCartIcon, Skeleton, Slider, SlidersHorizontalIcon, Slot, SquareIcon, StarIcon, StickyNoteIcon, StrikethroughIcon, SunIcon, SunMoonIcon, Tab, Table, TableBody, TableCell, TableHeader, TableIcon, TableRow, Tabs, TagIcon, TerminalIcon, TextField, TextIcon, TextareaAutosize, ToggleButtonGroup, Tooltip, Trash2Icon, TrendingUpIcon, TypeIcon, Typography, UnderlineIcon, UndoIcon, Unlink2Icon, UploadCloudIcon, UploadIcon, UserCheckIcon, UserIcon, UserPlus, UsersIcon, VideoIcon, VirtualTable, VirtualTableDateField, VirtualTableInput, VirtualTableNumberInput, VirtualTableSelect, VirtualTableSelectionProvider, VirtualTableSwitch, VoteIcon, Wand2Icon, WrenchIcon, XCircleIcon, XIcon, accentTextMixin, cardClickableMixin, cardMixin, cardSelectedMixin, cls, codeSurfaceMixin, colorClassesMapping, controlHeightMixin, controlPaddingMixin, coolIconKeys, createVirtualTableSelectionStore, debounce, defaultBorderMixin, fieldBackgroundDisabledMixin, fieldBackgroundHoverMixin, fieldBackgroundInvisibleMixin, fieldBackgroundMixin, focusedClasses, focusedDisabled, focusedInvisibleMixin, getColorSchemeForKey, getColorSchemeForSeed, getLoadedLucideIcons, iconKeys, iconSize, isChunkLoadError, lazyChunk, loadChunk, loadLucideIcons, lucideIcons, paperMixin, resolveLucideIcon, useAutoComplete, useDebounceCallback, useDebounceValue, useDebouncedCallback, useInjectStyles, useLucideIcons, useOutsideAlerter, usePortalContainer, useVirtualTableCellSelected, useVirtualTableSelection };
|
|
9179
|
+
export { Alert, AlertCircleIcon, AlertTriangleIcon, AlignLeftIcon, AppWindow, ArrowDownIcon, ArrowDownToLineIcon, ArrowLeftIcon, ArrowRightFromLineIcon, ArrowRightIcon, ArrowRightLeftIcon, ArrowRightToLineIcon, ArrowUpDownIcon, ArrowUpIcon, ArrowUpToLineIcon, Autocomplete, AutocompleteItem, Avatar, Badge, BoldIcon, BookOpenIcon, BooleanSwitch, BooleanSwitchWithLabel, Button, CHIP_COLORS, CHIP_HUES, CHIP_SEED_KEYS, CONTROL_HEIGHT, CalendarIcon, Card, CardView, CenteredView, CheckCircle2Icon, CheckCircleIcon, CheckIcon, CheckSquareIcon, Checkbox, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, ChevronsLeftIcon, ChevronsRightIcon, ChevronsUpDownIcon, Chip, CircleDotIcon, CircleIcon, CircleUserIcon, CircularProgress, CircularProgressCenter, CodeIcon, Collapse, CollectionView, ColorPicker, ColumnsIcon, Container, CopyIcon, DatabaseIcon, DateTimeField, DebouncedTextField, Dialog, DialogActions, DialogContent, DialogTitle, DollarSignIcon, DownloadIcon, ErrorBoundary, ExpandablePanel, ExternalLinkIcon, EyeIcon, EyeOffIcon, FileIcon, FileSearchIcon, FileTextIcon, FileUpload, FilterChip, FilterIcon, FilterXIcon, FlagIcon, FolderIcon, FolderKanbanIcon, FolderPlusIcon, FolderUpIcon, FunctionSquareIcon, GitBranchIcon, GitHubIcon, GlobeIcon, HandleIcon, HashIcon, Heading1Icon, Heading2Icon, Heading3Icon, HelpCircleIcon, HistoryIcon, HomeIcon, IconButton, ImageIcon, ImageOffIcon, InfoIcon, InfoLabel, InputLabel, ItalicIcon, KanbanIcon, KanbanView, KeyIcon, KeyRoundIcon, Label, LanguagesIcon, LayoutGridIcon, Link2Icon, LinkIcon, ListIcon, ListOrderedIcon, ListPlusIcon, ListTodoIcon, ListView, LoaderIcon, LoadingButton, LockIcon, LogOutIcon, LucideIconByName, MailIcon, Markdown, Maximize2Icon, Menu, MenuIcon, MenuItem, Menubar, MenubarCheckboxItem, MenubarContent, MenubarItem, MenubarItemIndicator, MenubarMenu, MenubarPortal, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarSubTriggerIndicator, MenubarTrigger, MessageCircleIcon, MinusCircleIcon, MinusIcon, MoonIcon, MoreVerticalIcon, MultiSelect, MultiSelectContext, MultiSelectItem, Music2Icon, PanelLeftCloseIcon, PanelLeftIcon, PanelLeftOpenIcon, Paper, PauseIcon, PenLineIcon, PencilIcon, PhoneIcon, PinIcon, PlayIcon, PlusIcon, Popover, PopoverPrimitive, Portal, PortalContainerProvider, QuoteIcon, RadioGroup, RadioGroupItem, RefreshCcwIcon, RefreshCwIcon, RepeatIcon, ResizablePanels, Rows3Icon, SaveIcon, SearchBar, SearchIcon, Select, SelectGroup, SelectItem, SendIcon, Separator, SettingsIcon, Sheet, ShieldIcon, ShoppingCartIcon, Skeleton, Slider, SlidersHorizontalIcon, Slot, SquareIcon, StarIcon, StickyNoteIcon, StrikethroughIcon, SunIcon, SunMoonIcon, Tab, Table, TableBody, TableCell, TableHeader, TableIcon, TableRow, Tabs, TagIcon, TerminalIcon, TextField, TextIcon, TextareaAutosize, ToggleButtonGroup, Tooltip, Trash2Icon, TrendingUpIcon, TypeIcon, Typography, UnderlineIcon, UndoIcon, Unlink2Icon, UploadCloudIcon, UploadIcon, UserCheckIcon, UserIcon, UserPlus, UsersIcon, VideoIcon, VirtualTable, VirtualTableDateField, VirtualTableInput, VirtualTableNumberInput, VirtualTableSelect, VirtualTableSelectionProvider, VirtualTableSwitch, VoteIcon, Wand2Icon, WrenchIcon, XCircleIcon, XIcon, accentTextMixin, cardClickableMixin, cardMixin, cardSelectedMixin, cls, codeSurfaceMixin, colorClassesMapping, controlHeightMixin, controlPaddingMixin, coolIconKeys, createVirtualTableSelectionStore, debounce, defaultBorderMixin, fieldBackgroundDisabledMixin, fieldBackgroundHoverMixin, fieldBackgroundInvisibleMixin, fieldBackgroundMixin, focusedClasses, focusedDisabled, focusedInvisibleMixin, getColorSchemeForKey, getColorSchemeForSeed, getLoadedLucideIcons, iconKeys, iconSize, isChunkLoadError, lazyChunk, loadChunk, loadLucideIcons, lucideIcons, paperMixin, resolveLucideIcon, surfaceActiveMixin, surfaceHoverMixin, useAutoComplete, useDebounceCallback, useDebounceValue, useDebouncedCallback, useInjectStyles, useIsDarkMode, useLucideIcons, useOutsideAlerter, usePortalContainer, useVirtualTableCellSelected, useVirtualTableSelection };
|
|
9073
9180
|
|
|
9074
9181
|
//# sourceMappingURL=index.es.js.map
|