@keboola/design 3.0.0 → 3.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -4
- package/dist/index.cjs +1065 -803
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +379 -389
- package/dist/index.d.ts +379 -389
- package/dist/index.js +1046 -785
- package/dist/index.js.map +1 -1
- package/dist/markdown-editor.cjs +200 -143
- package/dist/markdown-editor.cjs.map +1 -1
- package/dist/markdown-editor.js +199 -143
- package/dist/markdown-editor.js.map +1 -1
- package/dist/mermaid.cjs +75 -44
- package/dist/mermaid.cjs.map +1 -1
- package/dist/mermaid.js +75 -45
- package/dist/mermaid.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/testing.cjs +11 -28
- package/dist/testing.cjs.map +1 -1
- package/dist/testing.js +11 -28
- package/dist/testing.js.map +1 -1
- package/package.json +13 -3
- package/src/styles.css +19 -18
package/dist/index.cjs
CHANGED
|
@@ -7,6 +7,7 @@ var clsx = require('clsx');
|
|
|
7
7
|
var tailwindMerge = require('tailwind-merge');
|
|
8
8
|
var reactTooltip = require('@radix-ui/react-tooltip');
|
|
9
9
|
var classVarianceAuthority = require('class-variance-authority');
|
|
10
|
+
var brandRegistry = require('@keboola/brand-registry');
|
|
10
11
|
var jsxRuntime = require('react/jsx-runtime');
|
|
11
12
|
var DropdownMenuPrimitive3 = require('@radix-ui/react-dropdown-menu');
|
|
12
13
|
var ScrollAreaPrimitive2 = require('@radix-ui/react-scroll-area');
|
|
@@ -34,7 +35,6 @@ var BoringAvatar = require('boring-avatars');
|
|
|
34
35
|
var reactProgress = require('@radix-ui/react-progress');
|
|
35
36
|
var reactCollapsible = require('@radix-ui/react-collapsible');
|
|
36
37
|
var sonner = require('sonner');
|
|
37
|
-
var brandRegistry = require('@keboola/brand-registry');
|
|
38
38
|
var ResizablePrimitive = require('react-resizable-panels');
|
|
39
39
|
var RadixAvatar = require('@radix-ui/react-avatar');
|
|
40
40
|
var RadixTabs = require('@radix-ui/react-tabs');
|
|
@@ -45,6 +45,7 @@ var colors3 = require('@keboola/tailwind-config/colors');
|
|
|
45
45
|
var state = require('@codemirror/state');
|
|
46
46
|
var nodeDiff3 = require('node-diff3');
|
|
47
47
|
var reactForm = require('@tanstack/react-form');
|
|
48
|
+
var DOMPurify = require('dompurify');
|
|
48
49
|
var autocomplete = require('@codemirror/autocomplete');
|
|
49
50
|
var langJson = require('@codemirror/lang-json');
|
|
50
51
|
var lint = require('@codemirror/lint');
|
|
@@ -96,6 +97,7 @@ var RadixAvatar__namespace = /*#__PURE__*/_interopNamespace(RadixAvatar);
|
|
|
96
97
|
var RadixTabs__namespace = /*#__PURE__*/_interopNamespace(RadixTabs);
|
|
97
98
|
var CodeMirror__default = /*#__PURE__*/_interopDefault(CodeMirror);
|
|
98
99
|
var colors3__default = /*#__PURE__*/_interopDefault(colors3);
|
|
100
|
+
var DOMPurify__default = /*#__PURE__*/_interopDefault(DOMPurify);
|
|
99
101
|
|
|
100
102
|
var __defProp = Object.defineProperty;
|
|
101
103
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
@@ -169,17 +171,49 @@ var keyCodes = {
|
|
|
169
171
|
ESCAPE: "Escape",
|
|
170
172
|
SPACE: " "
|
|
171
173
|
};
|
|
174
|
+
var ThemeContext = react.createContext(null);
|
|
175
|
+
|
|
176
|
+
// src/components/internal/useIsLegacyBrand.ts
|
|
177
|
+
var useIsLegacyBrand = () => {
|
|
178
|
+
const context = react.use(ThemeContext);
|
|
179
|
+
return context === null || context.brand.id === brandRegistry.keboolaLegacy.id;
|
|
180
|
+
};
|
|
172
181
|
var tooltipVariants = classVarianceAuthority.cva(
|
|
173
182
|
[
|
|
174
183
|
"tailwindcss-preflight",
|
|
175
184
|
"tw-inline-block",
|
|
176
|
-
"tw-rounded",
|
|
177
|
-
"tw-bg-neutral-800",
|
|
178
|
-
"tw-text-white",
|
|
179
185
|
"tw-break-anywhere",
|
|
180
186
|
"tw-max-h-96",
|
|
181
187
|
"tw-overflow-y-auto",
|
|
182
|
-
"tw-z-[1060]"
|
|
188
|
+
"tw-z-[1060]",
|
|
189
|
+
// legacy (dark) chrome — default
|
|
190
|
+
"tw-rounded",
|
|
191
|
+
"tw-bg-neutral-800",
|
|
192
|
+
"tw-text-white",
|
|
193
|
+
// argo chrome overrides — semantic floating-panel tokens
|
|
194
|
+
"data-[argo=true]:tw-rounded-2xl",
|
|
195
|
+
"data-[argo=true]:tw-border",
|
|
196
|
+
"data-[argo=true]:tw-border-solid",
|
|
197
|
+
"data-[argo=true]:tw-border-border",
|
|
198
|
+
"data-[argo=true]:tw-bg-popover",
|
|
199
|
+
"data-[argo=true]:tw-text-popover-foreground",
|
|
200
|
+
"data-[argo=true]:tw-shadow-md",
|
|
201
|
+
// argo open animation
|
|
202
|
+
"data-[argo=true]:data-[state=delayed-open]:tw-animate-in",
|
|
203
|
+
"data-[argo=true]:data-[state=instant-open]:tw-animate-in",
|
|
204
|
+
"data-[argo=true]:data-[state=delayed-open]:tw-fade-in-0",
|
|
205
|
+
"data-[argo=true]:data-[state=instant-open]:tw-fade-in-0",
|
|
206
|
+
"data-[argo=true]:data-[state=delayed-open]:tw-zoom-in-95",
|
|
207
|
+
"data-[argo=true]:data-[state=instant-open]:tw-zoom-in-95",
|
|
208
|
+
// argo closed animation
|
|
209
|
+
"data-[argo=true]:data-[state=closed]:tw-animate-out",
|
|
210
|
+
"data-[argo=true]:data-[state=closed]:tw-fade-out-0",
|
|
211
|
+
"data-[argo=true]:data-[state=closed]:tw-zoom-out-95",
|
|
212
|
+
// argo position animation
|
|
213
|
+
"data-[argo=true]:data-[side=bottom]:tw-slide-in-from-top-2",
|
|
214
|
+
"data-[argo=true]:data-[side=left]:tw-slide-in-from-right-2",
|
|
215
|
+
"data-[argo=true]:data-[side=right]:tw-slide-in-from-left-2",
|
|
216
|
+
"data-[argo=true]:data-[side=top]:tw-slide-in-from-bottom-2"
|
|
183
217
|
],
|
|
184
218
|
{
|
|
185
219
|
defaultVariants: {
|
|
@@ -212,6 +246,7 @@ var tooltipVariants = classVarianceAuthority.cva(
|
|
|
212
246
|
var TooltipContent = ({
|
|
213
247
|
className,
|
|
214
248
|
variant,
|
|
249
|
+
argo,
|
|
215
250
|
keepOpenOnPointerDownOutside = false,
|
|
216
251
|
children,
|
|
217
252
|
onPointerDownOutside,
|
|
@@ -221,6 +256,8 @@ var TooltipContent = ({
|
|
|
221
256
|
placement = "right",
|
|
222
257
|
...rest
|
|
223
258
|
}) => {
|
|
259
|
+
const isLegacy = useIsLegacyBrand();
|
|
260
|
+
const renderArgo = !isLegacy || argo === true;
|
|
224
261
|
const handlePointerDownOutside = (event) => {
|
|
225
262
|
if (keepOpenOnPointerDownOutside) event.preventDefault();
|
|
226
263
|
onPointerDownOutside?.(event);
|
|
@@ -229,7 +266,8 @@ var TooltipContent = ({
|
|
|
229
266
|
reactTooltip.Content,
|
|
230
267
|
{
|
|
231
268
|
...rest,
|
|
232
|
-
"data-tooltip-content": true,
|
|
269
|
+
"data-tooltip-content": renderArgo ? void 0 : true,
|
|
270
|
+
"data-argo": renderArgo,
|
|
233
271
|
sideOffset,
|
|
234
272
|
collisionPadding,
|
|
235
273
|
onPointerDownOutside: handlePointerDownOutside,
|
|
@@ -289,6 +327,7 @@ var Tooltip = ({
|
|
|
289
327
|
className,
|
|
290
328
|
keepOpenOnTriggerClick = false,
|
|
291
329
|
variant,
|
|
330
|
+
argo,
|
|
292
331
|
placement = "right",
|
|
293
332
|
forceHide = false,
|
|
294
333
|
forceShow = false,
|
|
@@ -327,6 +366,7 @@ var Tooltip = ({
|
|
|
327
366
|
{
|
|
328
367
|
className,
|
|
329
368
|
variant: resolvedVariant,
|
|
369
|
+
argo,
|
|
330
370
|
placement,
|
|
331
371
|
keepOpenOnPointerDownOutside: keepOpenOnTriggerClick,
|
|
332
372
|
children: tooltip
|
|
@@ -386,26 +426,6 @@ var getIsMac = () => {
|
|
|
386
426
|
return false;
|
|
387
427
|
};
|
|
388
428
|
var isMac = getIsMac();
|
|
389
|
-
|
|
390
|
-
// src/utils/legacyIcon.tsx
|
|
391
|
-
var isFAIconValue = (value) => typeof value === "string" || Array.isArray(value) && value.length === 2 && typeof value[0] === "string" && typeof value[1] === "string";
|
|
392
|
-
var registeredRenderer = null;
|
|
393
|
-
var setLegacyIconRenderer = (renderer) => {
|
|
394
|
-
registeredRenderer = renderer;
|
|
395
|
-
};
|
|
396
|
-
var warnedOnce = false;
|
|
397
|
-
var renderLegacyIcon = (value) => {
|
|
398
|
-
if (!isFAIconValue(value)) return value;
|
|
399
|
-
if (registeredRenderer) return registeredRenderer(value);
|
|
400
|
-
if (!warnedOnce) {
|
|
401
|
-
warnedOnce = true;
|
|
402
|
-
console.warn(
|
|
403
|
-
"[@keboola/design] renderLegacyIcon received a legacy FontAwesome icon value but no renderer is registered. Call setLegacyIconRenderer at app boot. Returning null.",
|
|
404
|
-
value
|
|
405
|
-
);
|
|
406
|
-
}
|
|
407
|
-
return null;
|
|
408
|
-
};
|
|
409
429
|
var sha256 = async (text) => {
|
|
410
430
|
const msgUint8 = new TextEncoder().encode(text);
|
|
411
431
|
const hashBuffer = await crypto.subtle.digest("SHA-256", msgUint8);
|
|
@@ -415,10 +435,7 @@ var sha256 = async (text) => {
|
|
|
415
435
|
var useSHA256 = (text) => {
|
|
416
436
|
const [hash, setHash] = react.useState("");
|
|
417
437
|
react.useEffect(() => {
|
|
418
|
-
if (!text)
|
|
419
|
-
setHash("");
|
|
420
|
-
return;
|
|
421
|
-
}
|
|
438
|
+
if (!text) return;
|
|
422
439
|
let cancelled = false;
|
|
423
440
|
sha256(text).then((h) => {
|
|
424
441
|
if (!cancelled) setHash(h);
|
|
@@ -427,7 +444,7 @@ var useSHA256 = (text) => {
|
|
|
427
444
|
cancelled = true;
|
|
428
445
|
};
|
|
429
446
|
}, [text]);
|
|
430
|
-
return hash;
|
|
447
|
+
return text ? hash : "";
|
|
431
448
|
};
|
|
432
449
|
var Keboola = react.forwardRef(
|
|
433
450
|
({ size = 24, color = "currentColor", className, children, ...rest }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -636,6 +653,8 @@ var argoVariants = classVarianceAuthority.cva(
|
|
|
636
653
|
"tw-bg-clip-padding",
|
|
637
654
|
// anchor support
|
|
638
655
|
"!tw-no-underline",
|
|
656
|
+
"aria-disabled:tw-cursor-not-allowed",
|
|
657
|
+
"aria-disabled:tw-opacity-50",
|
|
639
658
|
// icon
|
|
640
659
|
"tw-shrink-0",
|
|
641
660
|
"[&_svg]:tw-pointer-events-none",
|
|
@@ -738,14 +757,11 @@ var Button = ({
|
|
|
738
757
|
block = false,
|
|
739
758
|
...buttonProps
|
|
740
759
|
}) => {
|
|
760
|
+
const isLegacy = useIsLegacyBrand();
|
|
761
|
+
const renderArgo = !isLegacy || argo;
|
|
741
762
|
const Comp = asChild ? reactSlot.Root : "button";
|
|
742
763
|
const isIconOnly = String(size).startsWith("icon");
|
|
743
|
-
const classNames =
|
|
744
|
-
size,
|
|
745
|
-
variant,
|
|
746
|
-
block,
|
|
747
|
-
className
|
|
748
|
-
});
|
|
764
|
+
const classNames = renderArgo ? argoVariants({ variant, size, block, className }) : variants({ size, variant, block, className });
|
|
749
765
|
const handleClick = (event) => {
|
|
750
766
|
const isAnchor = event.currentTarget.tagName === "A";
|
|
751
767
|
if (isAnchor && disabled) {
|
|
@@ -796,11 +812,7 @@ var buttonInlineVariants = classVarianceAuthority.cva(
|
|
|
796
812
|
},
|
|
797
813
|
variants: {
|
|
798
814
|
color: {
|
|
799
|
-
link: [
|
|
800
|
-
"tw-text-secondary-500",
|
|
801
|
-
"hover:tw-text-secondary-600",
|
|
802
|
-
"[&_svg]:tw-text-secondary-500"
|
|
803
|
-
],
|
|
815
|
+
link: ["tw-text-primary", "hover:tw-text-primary/90", "[&_svg]:tw-text-primary"],
|
|
804
816
|
dark: ["tw-text-neutral-800 [&_svg]:tw-text-neutral-400"],
|
|
805
817
|
danger: ["tw-text-error-500 [&_svg]:tw-text-error-500"],
|
|
806
818
|
muted: ["tw-text-muted-foreground [&_svg]:tw-text-muted-foreground"],
|
|
@@ -1039,17 +1051,16 @@ var itemVariants = cn(
|
|
|
1039
1051
|
"group-data-[variant=default]/dropdown-menu-content:hover:tw-bg-neutral-100",
|
|
1040
1052
|
"group-data-[variant=default]/dropdown-menu-content:hover:tw-text-neutral-900",
|
|
1041
1053
|
"group-data-[variant=argo]/dropdown-menu-content:tw-rounded-md",
|
|
1042
|
-
"group-data-[variant=argo]/dropdown-menu-content:tw-text-
|
|
1043
|
-
"group-data-[variant=argo]/dropdown-menu-content:focus:tw-text-
|
|
1044
|
-
"group-data-[variant=argo]/dropdown-menu-content:focus:tw-bg-
|
|
1045
|
-
"group-data-[variant=argo]/dropdown-menu-content:hover:tw-text-
|
|
1046
|
-
"group-data-[variant=argo]/dropdown-menu-content:hover:tw-bg-
|
|
1054
|
+
"group-data-[variant=argo]/dropdown-menu-content:tw-text-popover-foreground",
|
|
1055
|
+
"group-data-[variant=argo]/dropdown-menu-content:focus:tw-text-accent-foreground",
|
|
1056
|
+
"group-data-[variant=argo]/dropdown-menu-content:focus:tw-bg-accent",
|
|
1057
|
+
"group-data-[variant=argo]/dropdown-menu-content:hover:tw-text-accent-foreground",
|
|
1058
|
+
"group-data-[variant=argo]/dropdown-menu-content:hover:tw-bg-accent"
|
|
1047
1059
|
);
|
|
1048
1060
|
var contentVariants = cn(
|
|
1049
1061
|
"tailwindcss-preflight",
|
|
1050
1062
|
"tw-group/dropdown-menu-content",
|
|
1051
1063
|
"tw-z-[1040]",
|
|
1052
|
-
"tw-bg-white",
|
|
1053
1064
|
// positioning
|
|
1054
1065
|
"tw-flex",
|
|
1055
1066
|
"tw-flex-col",
|
|
@@ -1060,8 +1071,16 @@ var contentVariants = cn(
|
|
|
1060
1071
|
// border
|
|
1061
1072
|
"tw-border",
|
|
1062
1073
|
"tw-shadow-md",
|
|
1074
|
+
// Legacy surface — fixed white panel.
|
|
1063
1075
|
"data-[variant=default]:tw-rounded-md",
|
|
1076
|
+
"data-[variant=default]:tw-bg-white",
|
|
1077
|
+
"data-[variant=default]:tw-border-neutral-100",
|
|
1078
|
+
"data-[variant=default]:tw-text-neutral-800",
|
|
1079
|
+
// Argo surface — semantic popover tokens (brand + dark aware).
|
|
1064
1080
|
"data-[variant=argo]:tw-rounded-2xl",
|
|
1081
|
+
"data-[variant=argo]:tw-bg-popover",
|
|
1082
|
+
"data-[variant=argo]:tw-text-popover-foreground",
|
|
1083
|
+
"data-[variant=argo]:tw-border-border",
|
|
1065
1084
|
// animations
|
|
1066
1085
|
"data-[state=open]:tw-animate-in",
|
|
1067
1086
|
"data-[state=open]:tw-fade-in-0",
|
|
@@ -1112,7 +1131,6 @@ var ScrollBar = ({ className, orientation = "vertical", ...props }) => /* @__PUR
|
|
|
1112
1131
|
orientation,
|
|
1113
1132
|
className: cn(
|
|
1114
1133
|
"tw-flex tw-touch-none tw-select-none tw-transition-color",
|
|
1115
|
-
'[data-state="hidden"]:tw-bg-pink-500',
|
|
1116
1134
|
{
|
|
1117
1135
|
"tw-h-full tw-w-2.5 tw-p-px": orientation === "vertical",
|
|
1118
1136
|
"tw-h-2.5 tw-flex-col tw-p-px": orientation === "horizontal"
|
|
@@ -1127,8 +1145,8 @@ var ScrollBar = ({ className, orientation = "vertical", ...props }) => /* @__PUR
|
|
|
1127
1145
|
"tw-relative",
|
|
1128
1146
|
"tw-flex-1",
|
|
1129
1147
|
"tw-rounded-full",
|
|
1130
|
-
"tw-bg-
|
|
1131
|
-
"hover:tw-bg-
|
|
1148
|
+
"tw-bg-border",
|
|
1149
|
+
"hover:tw-bg-muted-foreground"
|
|
1132
1150
|
)
|
|
1133
1151
|
}
|
|
1134
1152
|
)
|
|
@@ -1223,7 +1241,7 @@ var DropdownMenuItem = ({
|
|
|
1223
1241
|
...props
|
|
1224
1242
|
}) => {
|
|
1225
1243
|
const Comp = asChild ? reactSlot.Root : "div";
|
|
1226
|
-
const adornment = isLoading ? /* @__PURE__ */ jsxRuntime.jsx(icons_exports.Loader2, { className: "tw-animate-spin" }) :
|
|
1244
|
+
const adornment = isLoading ? /* @__PURE__ */ jsxRuntime.jsx(icons_exports.Loader2, { className: "tw-animate-spin" }) : icon;
|
|
1227
1245
|
const handleOnSelect = (event) => {
|
|
1228
1246
|
if (asModalTrigger) event.preventDefault();
|
|
1229
1247
|
onSelect?.(event);
|
|
@@ -1349,7 +1367,7 @@ var DropdownMenuRadioItem = ({
|
|
|
1349
1367
|
...props,
|
|
1350
1368
|
children: [
|
|
1351
1369
|
isAtStart && indicatorEle,
|
|
1352
|
-
icon && /* @__PURE__ */ jsxRuntime.jsx(ItemIcon, { className: iconClassName, children:
|
|
1370
|
+
icon && /* @__PURE__ */ jsxRuntime.jsx(ItemIcon, { className: iconClassName, children: icon }),
|
|
1353
1371
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "tw-flex tw-min-w-0 tw-flex-1 tw-items-center tw-gap-2", children }),
|
|
1354
1372
|
!isAtStart && indicatorEle
|
|
1355
1373
|
]
|
|
@@ -1414,10 +1432,12 @@ var DropdownMenuTrigger = ({
|
|
|
1414
1432
|
var DropdownMenu = ({
|
|
1415
1433
|
// change a default value to false, for modal property, as it is not used in most cases
|
|
1416
1434
|
modal = false,
|
|
1417
|
-
variant
|
|
1435
|
+
variant,
|
|
1418
1436
|
...props
|
|
1419
1437
|
}) => {
|
|
1420
|
-
const
|
|
1438
|
+
const isLegacy = useIsLegacyBrand();
|
|
1439
|
+
const effectiveVariant = !isLegacy || variant === "argo" ? "argo" : "default";
|
|
1440
|
+
const contextValue = react.useMemo(() => ({ variant: effectiveVariant }), [effectiveVariant]);
|
|
1421
1441
|
return /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuContext, { value: contextValue, children: /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive3.Root, { ...props, modal }) });
|
|
1422
1442
|
};
|
|
1423
1443
|
DropdownMenu.Trigger = DropdownMenuTrigger;
|
|
@@ -1450,33 +1470,37 @@ var SplitButtonBase = ({
|
|
|
1450
1470
|
icon,
|
|
1451
1471
|
children,
|
|
1452
1472
|
...rest
|
|
1453
|
-
}) =>
|
|
1454
|
-
|
|
1455
|
-
|
|
1456
|
-
|
|
1457
|
-
|
|
1458
|
-
|
|
1459
|
-
|
|
1460
|
-
|
|
1461
|
-
|
|
1462
|
-
|
|
1463
|
-
|
|
1464
|
-
|
|
1465
|
-
|
|
1466
|
-
|
|
1467
|
-
|
|
1468
|
-
|
|
1469
|
-
|
|
1470
|
-
|
|
1471
|
-
|
|
1472
|
-
|
|
1473
|
-
|
|
1474
|
-
|
|
1475
|
-
|
|
1476
|
-
|
|
1477
|
-
|
|
1478
|
-
|
|
1479
|
-
]
|
|
1473
|
+
}) => {
|
|
1474
|
+
const isLegacy = useIsLegacyBrand();
|
|
1475
|
+
const renderArgo = !isLegacy || argo;
|
|
1476
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(ButtonGroup, { space: "compact", children: [
|
|
1477
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Button, { ...rest, ref, disabled, variant, size, argo, children: [
|
|
1478
|
+
!rest.isLoading && icon,
|
|
1479
|
+
children
|
|
1480
|
+
] }),
|
|
1481
|
+
actions && /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1482
|
+
DropdownMenu,
|
|
1483
|
+
{
|
|
1484
|
+
open: isActionsOpen,
|
|
1485
|
+
onOpenChange: onActionsOpenChange,
|
|
1486
|
+
variant: renderArgo ? "argo" : "default",
|
|
1487
|
+
children: [
|
|
1488
|
+
/* @__PURE__ */ jsxRuntime.jsx(DropdownMenu.Trigger, { asChild: true, disabled, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1489
|
+
Button,
|
|
1490
|
+
{
|
|
1491
|
+
argo,
|
|
1492
|
+
size: iconSizeMap[size],
|
|
1493
|
+
variant,
|
|
1494
|
+
"aria-label": "Additional actions",
|
|
1495
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(icons_exports.ChevronDown, { className: "tw-size-5" })
|
|
1496
|
+
}
|
|
1497
|
+
) }),
|
|
1498
|
+
/* @__PURE__ */ jsxRuntime.jsx(DropdownMenu.Content, { align: "end", children: actions })
|
|
1499
|
+
]
|
|
1500
|
+
}
|
|
1501
|
+
)
|
|
1502
|
+
] });
|
|
1503
|
+
};
|
|
1480
1504
|
var SplitButton = Object.assign(SplitButtonBase, {
|
|
1481
1505
|
Action: DropdownMenu.Item,
|
|
1482
1506
|
Actions: DropdownMenu.Group
|
|
@@ -1500,7 +1524,7 @@ var MultiActionButton = ({
|
|
|
1500
1524
|
variant: "invisible",
|
|
1501
1525
|
size: "icon",
|
|
1502
1526
|
"data-testid": dataTestId,
|
|
1503
|
-
children: !isLoading &&
|
|
1527
|
+
children: !isLoading && icon
|
|
1504
1528
|
}
|
|
1505
1529
|
) });
|
|
1506
1530
|
var MultiActionButtonGroup = ({ children, className }) => /* @__PURE__ */ jsxRuntime.jsx(ButtonGroup, { className: cn("tw-text-nowrap", className), children });
|
|
@@ -1609,6 +1633,33 @@ var toggleVariants = classVarianceAuthority.cva(
|
|
|
1609
1633
|
// hover on pressed state
|
|
1610
1634
|
"not-disabled:hover:aria-pressed:tw-bg-secondary-200",
|
|
1611
1635
|
"[&_svg]:not-disabled:hover:aria-pressed:tw-text-secondary-600"
|
|
1636
|
+
],
|
|
1637
|
+
argo: [
|
|
1638
|
+
// chrome — semantic tokens, opt-in via variant="argo"
|
|
1639
|
+
"tw-border-border",
|
|
1640
|
+
"tw-rounded-lg",
|
|
1641
|
+
"tw-text-foreground",
|
|
1642
|
+
// typography — override base uppercase / tw-text-xs / tracking from outer class list
|
|
1643
|
+
// so argo matches `Button argo` (sentence case, sm text)
|
|
1644
|
+
"tw-normal-case",
|
|
1645
|
+
"tw-tracking-normal",
|
|
1646
|
+
"tw-text-sm",
|
|
1647
|
+
// default state - transparent background
|
|
1648
|
+
"tw-bg-transparent",
|
|
1649
|
+
"[&_svg]:tw-text-muted-foreground",
|
|
1650
|
+
// hover state (off only — explicit so pressed doesn't double-up) — muted bg
|
|
1651
|
+
// is visibly subtler than the accent pressed bg, so hover and active read distinct.
|
|
1652
|
+
"not-disabled:hover:tw-border-border",
|
|
1653
|
+
"data-[state=off]:not-disabled:hover:tw-bg-muted",
|
|
1654
|
+
"data-[state=off]:not-disabled:hover:[&_svg]:tw-text-primary",
|
|
1655
|
+
// pressed state — stronger accent bg; hover-on keeps the same colour to avoid flicker
|
|
1656
|
+
"data-[state=on]:tw-bg-accent",
|
|
1657
|
+
"data-[state=on]:[&_svg]:tw-text-primary",
|
|
1658
|
+
// focus-visible ring (overrides base outline + shadow)
|
|
1659
|
+
"!tw-outline-none",
|
|
1660
|
+
"focus-visible:!tw-shadow-none",
|
|
1661
|
+
"focus-visible:tw-ring-2",
|
|
1662
|
+
"focus-visible:tw-ring-primary/50"
|
|
1612
1663
|
]
|
|
1613
1664
|
},
|
|
1614
1665
|
size: {
|
|
@@ -1624,7 +1675,27 @@ var toggleVariants = classVarianceAuthority.cva(
|
|
|
1624
1675
|
compoundVariants: [
|
|
1625
1676
|
{ iconOnly: true, size: "small", className: "tw-size-8" },
|
|
1626
1677
|
{ iconOnly: true, size: "medium", className: "tw-size-10" },
|
|
1627
|
-
{ iconOnly: true, size: "large", className: "tw-size-12" }
|
|
1678
|
+
{ iconOnly: true, size: "large", className: "tw-size-12" },
|
|
1679
|
+
// argo sizes match `Button argo` (small 32px / medium 36px / large 40px)
|
|
1680
|
+
// and `InputGroup argo` heights so argo Toggle aligns vertically next to them.
|
|
1681
|
+
{
|
|
1682
|
+
variant: "argo",
|
|
1683
|
+
size: "small",
|
|
1684
|
+
className: "tw-max-h-8 tw-min-h-8 tw-px-3 tw-py-2"
|
|
1685
|
+
},
|
|
1686
|
+
{
|
|
1687
|
+
variant: "argo",
|
|
1688
|
+
size: "medium",
|
|
1689
|
+
className: "tw-max-h-9 tw-min-h-9 tw-px-4 tw-py-2"
|
|
1690
|
+
},
|
|
1691
|
+
{
|
|
1692
|
+
variant: "argo",
|
|
1693
|
+
size: "large",
|
|
1694
|
+
className: "tw-max-h-10 tw-min-h-10 tw-px-6 tw-py-2.5"
|
|
1695
|
+
},
|
|
1696
|
+
{ variant: "argo", iconOnly: true, size: "small", className: "tw-size-8" },
|
|
1697
|
+
{ variant: "argo", iconOnly: true, size: "medium", className: "tw-size-9" },
|
|
1698
|
+
{ variant: "argo", iconOnly: true, size: "large", className: "tw-size-10" }
|
|
1628
1699
|
],
|
|
1629
1700
|
defaultVariants: {
|
|
1630
1701
|
variant: "ai",
|
|
@@ -1655,7 +1726,7 @@ var Toggle = ({
|
|
|
1655
1726
|
disabled,
|
|
1656
1727
|
children: [
|
|
1657
1728
|
badge && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "tw-absolute tw-right-0 tw-top-0 -tw-translate-y-1/2 tw-translate-x-1/4", children: badge }),
|
|
1658
|
-
icon && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "tw-inline-flex tw-size-4 tw-shrink-0 tw-items-center tw-justify-center tw-align-middle [&_svg:not([class*='tw-size-'])]:tw-size-4", children:
|
|
1729
|
+
icon && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "tw-inline-flex tw-size-4 tw-shrink-0 tw-items-center tw-justify-center tw-align-middle [&_svg:not([class*='tw-size-'])]:tw-size-4", children: icon }),
|
|
1659
1730
|
isAiVariant ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "tw-bg-gradient-to-br tw-from-secondary-700 tw-to-purple-700 tw-bg-clip-text tw-text-transparent", children }) : children
|
|
1660
1731
|
]
|
|
1661
1732
|
}
|
|
@@ -1869,7 +1940,7 @@ var Link = ({
|
|
|
1869
1940
|
rel,
|
|
1870
1941
|
onClick: handleOnClick,
|
|
1871
1942
|
className: cn(
|
|
1872
|
-
"tw-text-
|
|
1943
|
+
"tw-text-primary tw-underline hover:tw-text-primary/90 hover:tw-no-underline",
|
|
1873
1944
|
className
|
|
1874
1945
|
),
|
|
1875
1946
|
children
|
|
@@ -1896,6 +1967,8 @@ var ModalBody = ({ className, ...props }) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
|
1896
1967
|
...props
|
|
1897
1968
|
}
|
|
1898
1969
|
);
|
|
1970
|
+
var ModalArgoContext = react.createContext(false);
|
|
1971
|
+
var useModalArgo = () => react.use(ModalArgoContext);
|
|
1899
1972
|
var ModalOverlay = ({
|
|
1900
1973
|
ref,
|
|
1901
1974
|
className,
|
|
@@ -1932,8 +2005,11 @@ var ModalContent = ({
|
|
|
1932
2005
|
className,
|
|
1933
2006
|
children,
|
|
1934
2007
|
onEscapeKeyDown,
|
|
2008
|
+
argo,
|
|
1935
2009
|
...props
|
|
1936
2010
|
}) => {
|
|
2011
|
+
const isLegacy = useIsLegacyBrand();
|
|
2012
|
+
const renderArgo = !isLegacy || argo === true;
|
|
1937
2013
|
const handleEscapeKeyDown = (event) => {
|
|
1938
2014
|
event.stopPropagation();
|
|
1939
2015
|
onEscapeKeyDown?.(event);
|
|
@@ -1942,6 +2018,7 @@ var ModalContent = ({
|
|
|
1942
2018
|
DialogPrimitive.Content,
|
|
1943
2019
|
{
|
|
1944
2020
|
"aria-describedby": void 0,
|
|
2021
|
+
"data-argo": renderArgo,
|
|
1945
2022
|
className: cn(
|
|
1946
2023
|
// reset
|
|
1947
2024
|
"tailwindcss-preflight",
|
|
@@ -1960,7 +2037,7 @@ var ModalContent = ({
|
|
|
1960
2037
|
"tw-flex-col",
|
|
1961
2038
|
"tw-gap-4",
|
|
1962
2039
|
"tw-rounded-lg",
|
|
1963
|
-
"tw-bg-
|
|
2040
|
+
"tw-bg-surface",
|
|
1964
2041
|
"tw-px-7",
|
|
1965
2042
|
// 4 px less padding to prevent input focus rings/outlines from being clipped by overflow
|
|
1966
2043
|
"tw-py-8",
|
|
@@ -1985,7 +2062,7 @@ var ModalContent = ({
|
|
|
1985
2062
|
),
|
|
1986
2063
|
onEscapeKeyDown: handleEscapeKeyDown,
|
|
1987
2064
|
...props,
|
|
1988
|
-
children
|
|
2065
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(ModalArgoContext, { value: renderArgo, children })
|
|
1989
2066
|
}
|
|
1990
2067
|
) }) });
|
|
1991
2068
|
};
|
|
@@ -2000,34 +2077,37 @@ var ModalFooter = ({ className, ...props }) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
|
2000
2077
|
...props
|
|
2001
2078
|
}
|
|
2002
2079
|
);
|
|
2003
|
-
var ModalCloseIcon = ({ className, ...rest }) =>
|
|
2004
|
-
|
|
2005
|
-
|
|
2006
|
-
|
|
2007
|
-
|
|
2008
|
-
|
|
2009
|
-
|
|
2010
|
-
|
|
2011
|
-
|
|
2012
|
-
|
|
2013
|
-
|
|
2014
|
-
|
|
2015
|
-
|
|
2016
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2017
|
-
icons_exports.X,
|
|
2018
|
-
{
|
|
2019
|
-
className: cn(
|
|
2020
|
-
"tw-size-4",
|
|
2021
|
-
"tw-text-neutral-400",
|
|
2022
|
-
"group-focus/modal-close-icon:tw-text-neutral-500",
|
|
2023
|
-
"group-hover/modal-close-icon:tw-text-neutral-500"
|
|
2024
|
-
)
|
|
2025
|
-
}
|
|
2080
|
+
var ModalCloseIcon = ({ className, ...rest }) => {
|
|
2081
|
+
const argo = useModalArgo();
|
|
2082
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2083
|
+
DialogPrimitive.Close,
|
|
2084
|
+
{
|
|
2085
|
+
...rest,
|
|
2086
|
+
className: cn(
|
|
2087
|
+
"tw-group/modal-close-icon",
|
|
2088
|
+
"tw-flex",
|
|
2089
|
+
"tw-items-center",
|
|
2090
|
+
"tw-justify-center",
|
|
2091
|
+
"focus:tw-outline-none",
|
|
2092
|
+
className
|
|
2026
2093
|
),
|
|
2027
|
-
|
|
2028
|
-
|
|
2029
|
-
|
|
2030
|
-
|
|
2094
|
+
children: [
|
|
2095
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2096
|
+
icons_exports.X,
|
|
2097
|
+
{
|
|
2098
|
+
className: cn(
|
|
2099
|
+
"tw-size-4",
|
|
2100
|
+
argo ? "tw-text-muted-foreground" : "tw-text-neutral-400",
|
|
2101
|
+
argo ? "group-focus/modal-close-icon:tw-text-foreground" : "group-focus/modal-close-icon:tw-text-neutral-500",
|
|
2102
|
+
argo ? "group-hover/modal-close-icon:tw-text-foreground" : "group-hover/modal-close-icon:tw-text-neutral-500"
|
|
2103
|
+
)
|
|
2104
|
+
}
|
|
2105
|
+
),
|
|
2106
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "tw-sr-only", children: "Close" })
|
|
2107
|
+
]
|
|
2108
|
+
}
|
|
2109
|
+
);
|
|
2110
|
+
};
|
|
2031
2111
|
var ModalDescription = ({ className, ...props }) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2032
2112
|
DialogPrimitive__namespace.Description,
|
|
2033
2113
|
{
|
|
@@ -2050,37 +2130,40 @@ var ModalHeader = ({
|
|
|
2050
2130
|
hideCloseIcon = false,
|
|
2051
2131
|
children,
|
|
2052
2132
|
...props
|
|
2053
|
-
}) =>
|
|
2054
|
-
|
|
2055
|
-
|
|
2056
|
-
|
|
2057
|
-
|
|
2058
|
-
|
|
2059
|
-
|
|
2060
|
-
|
|
2061
|
-
|
|
2062
|
-
|
|
2063
|
-
|
|
2064
|
-
|
|
2065
|
-
|
|
2066
|
-
|
|
2067
|
-
|
|
2068
|
-
|
|
2069
|
-
|
|
2070
|
-
|
|
2071
|
-
|
|
2072
|
-
|
|
2073
|
-
|
|
2074
|
-
|
|
2075
|
-
|
|
2076
|
-
|
|
2133
|
+
}) => {
|
|
2134
|
+
const argo = useModalArgo();
|
|
2135
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2136
|
+
"div",
|
|
2137
|
+
{
|
|
2138
|
+
className: cn(
|
|
2139
|
+
"tw-flex",
|
|
2140
|
+
"tw-flex-col",
|
|
2141
|
+
"tw-gap-3",
|
|
2142
|
+
"tw-pb-5",
|
|
2143
|
+
// Show border separator only if body is visible
|
|
2144
|
+
"[&:has(~[data-slot=modal-body])]:tw-border-b",
|
|
2145
|
+
// Tabs render their own bottom border — drop header border + padding to avoid the double-line look
|
|
2146
|
+
"[&:has(~[data-slot=modal-body]_[data-slot=tabs-root])]:!tw-border-b-0",
|
|
2147
|
+
"[&:has(~[data-slot=modal-body]_[data-slot=tabs-root])]:!tw-pb-0",
|
|
2148
|
+
argo ? "tw-border-border" : "tw-border-neutral-150",
|
|
2149
|
+
"tw-px-1",
|
|
2150
|
+
// 4 px to complement ModalContent and still keep input focus outline visible
|
|
2151
|
+
className
|
|
2152
|
+
),
|
|
2153
|
+
...props,
|
|
2154
|
+
children: [
|
|
2155
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "tw-flex tw-flex-col", children: [
|
|
2156
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "tw-flex tw-justify-end tw-gap-2", children: [
|
|
2157
|
+
title && /* @__PURE__ */ jsxRuntime.jsx(ModalTitle, { children: title }),
|
|
2158
|
+
!hideCloseIcon && /* @__PURE__ */ jsxRuntime.jsx(ModalCloseIcon, {})
|
|
2159
|
+
] }),
|
|
2160
|
+
description && /* @__PURE__ */ jsxRuntime.jsx(ModalDescription, { children: description })
|
|
2077
2161
|
] }),
|
|
2078
|
-
|
|
2079
|
-
]
|
|
2080
|
-
|
|
2081
|
-
|
|
2082
|
-
|
|
2083
|
-
);
|
|
2162
|
+
children
|
|
2163
|
+
]
|
|
2164
|
+
}
|
|
2165
|
+
);
|
|
2166
|
+
};
|
|
2084
2167
|
var NAMED_COLORS = /* @__PURE__ */ new Set(["orange", "blue", "red", "green", "gray", "violet"]);
|
|
2085
2168
|
var ModalIcon = (props) => {
|
|
2086
2169
|
const [hasImageError, setHasImageError] = react.useState(false);
|
|
@@ -2131,7 +2214,7 @@ var ModalIcon = (props) => {
|
|
|
2131
2214
|
'[&_svg:not([class*="tw-size-"])]:tw-size-6',
|
|
2132
2215
|
"[&_svg]:tw-aspect-square"
|
|
2133
2216
|
),
|
|
2134
|
-
children:
|
|
2217
|
+
children: props.icon
|
|
2135
2218
|
}
|
|
2136
2219
|
)
|
|
2137
2220
|
}
|
|
@@ -2284,10 +2367,13 @@ var FullScreenModalRoot = ({
|
|
|
2284
2367
|
className,
|
|
2285
2368
|
lockBodyScroll = true,
|
|
2286
2369
|
onEscapeKeyDown,
|
|
2287
|
-
|
|
2370
|
+
onKeyDown,
|
|
2371
|
+
argo,
|
|
2288
2372
|
...props
|
|
2289
2373
|
}) => {
|
|
2290
2374
|
const modalRef = react.useRef(null);
|
|
2375
|
+
const isLegacy = useIsLegacyBrand();
|
|
2376
|
+
const renderArgo = !isLegacy || argo === true;
|
|
2291
2377
|
react.useEffect(() => {
|
|
2292
2378
|
const modalElement = modalRef.current;
|
|
2293
2379
|
if (lockBodyScroll) {
|
|
@@ -2303,6 +2389,7 @@ var FullScreenModalRoot = ({
|
|
|
2303
2389
|
};
|
|
2304
2390
|
}, [lockBodyScroll]);
|
|
2305
2391
|
const handleKeyDown2 = (event) => {
|
|
2392
|
+
onKeyDown?.(event);
|
|
2306
2393
|
if (event.key === "Escape" && !event.defaultPrevented) {
|
|
2307
2394
|
onEscapeKeyDown?.(event);
|
|
2308
2395
|
}
|
|
@@ -2311,12 +2398,13 @@ var FullScreenModalRoot = ({
|
|
|
2311
2398
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2312
2399
|
"div",
|
|
2313
2400
|
{
|
|
2401
|
+
...props,
|
|
2314
2402
|
ref: modalRef,
|
|
2315
2403
|
role: "dialog",
|
|
2316
2404
|
"aria-modal": "true",
|
|
2317
2405
|
tabIndex: -1,
|
|
2318
2406
|
"data-fullscreen-modal": true,
|
|
2319
|
-
"data-argo":
|
|
2407
|
+
"data-argo": renderArgo,
|
|
2320
2408
|
onKeyDown: handleKeyDown2,
|
|
2321
2409
|
className: cn(
|
|
2322
2410
|
"tailwindcss-preflight",
|
|
@@ -2330,7 +2418,6 @@ var FullScreenModalRoot = ({
|
|
|
2330
2418
|
"focus-visible:tw-outline-none",
|
|
2331
2419
|
className
|
|
2332
2420
|
),
|
|
2333
|
-
...props,
|
|
2334
2421
|
children
|
|
2335
2422
|
}
|
|
2336
2423
|
),
|
|
@@ -2364,8 +2451,14 @@ var sheetContentVariants = classVarianceAuthority.cva(
|
|
|
2364
2451
|
"tw-z-[1051]",
|
|
2365
2452
|
"tw-flex",
|
|
2366
2453
|
"tw-flex-col",
|
|
2367
|
-
"tw-bg-
|
|
2454
|
+
"tw-bg-surface",
|
|
2368
2455
|
"tw-shadow-lg",
|
|
2456
|
+
// argo chrome overrides
|
|
2457
|
+
"data-[argo=true]:tw-border",
|
|
2458
|
+
"data-[argo=true]:tw-border-border",
|
|
2459
|
+
"data-[argo=true]:focus-visible:tw-outline-none",
|
|
2460
|
+
"data-[argo=true]:focus-visible:tw-ring-2",
|
|
2461
|
+
"data-[argo=true]:focus-visible:tw-ring-primary/50",
|
|
2369
2462
|
"tw-ease-in-out",
|
|
2370
2463
|
// opening animation
|
|
2371
2464
|
"data-[state=open]:tw-duration-200",
|
|
@@ -2388,14 +2481,16 @@ var sheetContentVariants = classVarianceAuthority.cva(
|
|
|
2388
2481
|
"tw-top-0",
|
|
2389
2482
|
"tw-h-auto",
|
|
2390
2483
|
"data-[state=closed]:tw-slide-out-to-top",
|
|
2391
|
-
"data-[state=open]:tw-slide-in-from-top"
|
|
2484
|
+
"data-[state=open]:tw-slide-in-from-top",
|
|
2485
|
+
"data-[argo=true]:tw-rounded-b-lg"
|
|
2392
2486
|
],
|
|
2393
2487
|
right: [
|
|
2394
2488
|
"tw-inset-y-0",
|
|
2395
2489
|
"tw-right-0",
|
|
2396
2490
|
"tw-h-full",
|
|
2397
2491
|
"data-[state=closed]:tw-slide-out-to-right",
|
|
2398
|
-
"data-[state=open]:tw-slide-in-from-right"
|
|
2492
|
+
"data-[state=open]:tw-slide-in-from-right",
|
|
2493
|
+
"data-[argo=true]:tw-rounded-l-lg"
|
|
2399
2494
|
],
|
|
2400
2495
|
bottom: [
|
|
2401
2496
|
"tw-inset-x-0",
|
|
@@ -2403,15 +2498,17 @@ var sheetContentVariants = classVarianceAuthority.cva(
|
|
|
2403
2498
|
"tw-h-auto",
|
|
2404
2499
|
"data-[state=closed]:tw-slide-out-to-bottom",
|
|
2405
2500
|
"data-[state=open]:tw-slide-in-from-bottom",
|
|
2406
|
-
"tw-drop-shadow-2xl"
|
|
2501
|
+
"tw-drop-shadow-2xl",
|
|
2407
2502
|
// standard tailwindcss shadow is invisible for a bottom sheet because of positioning
|
|
2503
|
+
"data-[argo=true]:tw-rounded-t-lg"
|
|
2408
2504
|
],
|
|
2409
2505
|
left: [
|
|
2410
2506
|
"tw-inset-y-0",
|
|
2411
2507
|
"tw-left-0",
|
|
2412
2508
|
"tw-h-full",
|
|
2413
2509
|
"data-[state=closed]:tw-slide-out-to-left",
|
|
2414
|
-
"data-[state=open]:tw-slide-in-from-left"
|
|
2510
|
+
"data-[state=open]:tw-slide-in-from-left",
|
|
2511
|
+
"data-[argo=true]:tw-rounded-r-lg"
|
|
2415
2512
|
]
|
|
2416
2513
|
}
|
|
2417
2514
|
}
|
|
@@ -2427,8 +2524,11 @@ var SheetContent = ({
|
|
|
2427
2524
|
onPointerDownOutside,
|
|
2428
2525
|
onInteractOutside,
|
|
2429
2526
|
container,
|
|
2527
|
+
argo,
|
|
2430
2528
|
...props
|
|
2431
2529
|
}) => {
|
|
2530
|
+
const isLegacy = useIsLegacyBrand();
|
|
2531
|
+
const renderArgo = !isLegacy || argo === true;
|
|
2432
2532
|
const handleOnPointerDownOutside = (event) => {
|
|
2433
2533
|
if (keepOpenOnPointerDownOutside) event.preventDefault();
|
|
2434
2534
|
onPointerDownOutside?.(event);
|
|
@@ -2448,6 +2548,7 @@ var SheetContent = ({
|
|
|
2448
2548
|
onPointerDownOutside: handleOnPointerDownOutside,
|
|
2449
2549
|
onInteractOutside: handleOnInteractOutside,
|
|
2450
2550
|
"data-side": side,
|
|
2551
|
+
"data-argo": renderArgo,
|
|
2451
2552
|
children
|
|
2452
2553
|
}
|
|
2453
2554
|
)
|
|
@@ -2475,7 +2576,7 @@ var SheetHeader = ({
|
|
|
2475
2576
|
] });
|
|
2476
2577
|
};
|
|
2477
2578
|
var SheetTitle = ({ className, visuallyHidden = false, ...props }) => /* @__PURE__ */ jsxRuntime.jsx(DialogPrimitive.Title, { className: cn({ "tw-sr-only": visuallyHidden }, className), ...props });
|
|
2478
|
-
var Sheet = (
|
|
2579
|
+
var Sheet = (props) => /* @__PURE__ */ jsxRuntime.jsx(DialogPrimitive.Root, { ...props });
|
|
2479
2580
|
Sheet.Close = DialogPrimitive.Close;
|
|
2480
2581
|
Sheet.Trigger = DialogPrimitive.Trigger;
|
|
2481
2582
|
Sheet.Content = SheetContent;
|
|
@@ -2501,11 +2602,7 @@ var variants3 = classVarianceAuthority.cva(
|
|
|
2501
2602
|
"tw-box-border",
|
|
2502
2603
|
"tw-border",
|
|
2503
2604
|
"tw-border-solid",
|
|
2504
|
-
"tw-border-neutral-100",
|
|
2505
2605
|
"tw-shadow-lg",
|
|
2506
|
-
// colors
|
|
2507
|
-
"tw-bg-white",
|
|
2508
|
-
"tw-text-neutral-800",
|
|
2509
2606
|
// open animation
|
|
2510
2607
|
"data-[state=open]:tw-animate-in",
|
|
2511
2608
|
"data-[state=open]:tw-fade-in-0",
|
|
@@ -2530,8 +2627,10 @@ var variants3 = classVarianceAuthority.cva(
|
|
|
2530
2627
|
},
|
|
2531
2628
|
variants: {
|
|
2532
2629
|
variant: {
|
|
2533
|
-
|
|
2534
|
-
|
|
2630
|
+
// Legacy surface — fixed white panel.
|
|
2631
|
+
default: ["tw-rounded-md", "tw-border-neutral-100", "tw-bg-white", "tw-text-neutral-800"],
|
|
2632
|
+
// Argo surface — semantic popover tokens (brand + dark aware).
|
|
2633
|
+
argo: ["tw-rounded-2xl", "tw-border-border", "tw-bg-popover", "tw-text-popover-foreground"]
|
|
2535
2634
|
},
|
|
2536
2635
|
matchTriggerWidth: {
|
|
2537
2636
|
true: ["tw-w-[var(--radix-popover-trigger-width)]"],
|
|
@@ -2550,21 +2649,25 @@ var PopoverContent = ({
|
|
|
2550
2649
|
variant,
|
|
2551
2650
|
onEscapeKeyDown,
|
|
2552
2651
|
...props
|
|
2553
|
-
}) =>
|
|
2554
|
-
|
|
2555
|
-
|
|
2556
|
-
|
|
2557
|
-
|
|
2558
|
-
|
|
2559
|
-
|
|
2560
|
-
|
|
2561
|
-
|
|
2562
|
-
|
|
2563
|
-
|
|
2564
|
-
|
|
2565
|
-
|
|
2566
|
-
|
|
2567
|
-
|
|
2652
|
+
}) => {
|
|
2653
|
+
const isLegacy = useIsLegacyBrand();
|
|
2654
|
+
const effectiveVariant = !isLegacy || variant === "argo" ? "argo" : "default";
|
|
2655
|
+
return /* @__PURE__ */ jsxRuntime.jsx(reactPopover.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
2656
|
+
reactPopover.Content,
|
|
2657
|
+
{
|
|
2658
|
+
ref,
|
|
2659
|
+
align: matchTriggerWidth ? "start" : align,
|
|
2660
|
+
sideOffset,
|
|
2661
|
+
className: cn(variants3({ className, matchTriggerWidth, variant: effectiveVariant })),
|
|
2662
|
+
onEscapeKeyDown: (event) => {
|
|
2663
|
+
event.stopPropagation();
|
|
2664
|
+
onEscapeKeyDown?.(event);
|
|
2665
|
+
},
|
|
2666
|
+
...props,
|
|
2667
|
+
children
|
|
2668
|
+
}
|
|
2669
|
+
) });
|
|
2670
|
+
};
|
|
2568
2671
|
var Popover = (props) => /* @__PURE__ */ jsxRuntime.jsx(reactPopover.Root, { ...props });
|
|
2569
2672
|
Popover.Content = PopoverContent;
|
|
2570
2673
|
Popover.Trigger = reactPopover.Trigger;
|
|
@@ -2633,15 +2736,7 @@ var PopconfirmContent = ({ className, onInteractOutside, ...props }) => {
|
|
|
2633
2736
|
{
|
|
2634
2737
|
...props,
|
|
2635
2738
|
onInteractOutside: handleOnInteractOutside,
|
|
2636
|
-
className: cn(
|
|
2637
|
-
"tw-flex",
|
|
2638
|
-
"tw-flex-col",
|
|
2639
|
-
"tw-gap-2",
|
|
2640
|
-
"tw-gap-3",
|
|
2641
|
-
"tw-px-4 ",
|
|
2642
|
-
"tw-py-3",
|
|
2643
|
-
className
|
|
2644
|
-
)
|
|
2739
|
+
className: cn("tw-flex", "tw-flex-col", "tw-gap-3", "tw-px-4", "tw-py-3", className)
|
|
2645
2740
|
}
|
|
2646
2741
|
);
|
|
2647
2742
|
};
|
|
@@ -2713,53 +2808,61 @@ var HoverCardContent = ({
|
|
|
2713
2808
|
className,
|
|
2714
2809
|
align = "center",
|
|
2715
2810
|
sideOffset = 4,
|
|
2811
|
+
argo,
|
|
2716
2812
|
children,
|
|
2717
2813
|
...props
|
|
2718
|
-
}) =>
|
|
2719
|
-
|
|
2720
|
-
|
|
2721
|
-
|
|
2722
|
-
|
|
2723
|
-
|
|
2724
|
-
|
|
2725
|
-
|
|
2726
|
-
|
|
2727
|
-
"
|
|
2728
|
-
"
|
|
2729
|
-
|
|
2730
|
-
|
|
2731
|
-
|
|
2732
|
-
|
|
2733
|
-
|
|
2734
|
-
|
|
2735
|
-
|
|
2736
|
-
|
|
2737
|
-
|
|
2738
|
-
|
|
2739
|
-
|
|
2740
|
-
|
|
2741
|
-
|
|
2742
|
-
|
|
2743
|
-
|
|
2744
|
-
|
|
2745
|
-
|
|
2746
|
-
|
|
2747
|
-
|
|
2748
|
-
|
|
2749
|
-
|
|
2750
|
-
|
|
2751
|
-
|
|
2752
|
-
|
|
2753
|
-
|
|
2754
|
-
|
|
2755
|
-
|
|
2756
|
-
|
|
2757
|
-
|
|
2758
|
-
|
|
2759
|
-
|
|
2760
|
-
|
|
2761
|
-
|
|
2762
|
-
|
|
2814
|
+
}) => {
|
|
2815
|
+
const isLegacy = useIsLegacyBrand();
|
|
2816
|
+
const renderArgo = !isLegacy || argo === true;
|
|
2817
|
+
return /* @__PURE__ */ jsxRuntime.jsx(reactHoverCard.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
2818
|
+
reactHoverCard.Content,
|
|
2819
|
+
{
|
|
2820
|
+
ref,
|
|
2821
|
+
align,
|
|
2822
|
+
sideOffset,
|
|
2823
|
+
"data-slot": "hover-card-content",
|
|
2824
|
+
"data-argo": renderArgo,
|
|
2825
|
+
className: cn(
|
|
2826
|
+
"tailwindcss-preflight",
|
|
2827
|
+
"tw-group/hover-card-content",
|
|
2828
|
+
"tw-z-50",
|
|
2829
|
+
// border
|
|
2830
|
+
"tw-box-border",
|
|
2831
|
+
"tw-border",
|
|
2832
|
+
"tw-rounded-2xl",
|
|
2833
|
+
// sizing
|
|
2834
|
+
"tw-min-w-32",
|
|
2835
|
+
"tw-origin-[--radix-hover-card-content-transform-origin]",
|
|
2836
|
+
"tw-max-h-[var(--radix-hover-card-content-available-height)]",
|
|
2837
|
+
// padding + shared shadow
|
|
2838
|
+
"tw-p-4",
|
|
2839
|
+
"tw-shadow-md",
|
|
2840
|
+
// legacy chrome — default
|
|
2841
|
+
"tw-border-neutral-150 tw-bg-white",
|
|
2842
|
+
// argo chrome overrides — semantic floating-panel tokens
|
|
2843
|
+
"data-[argo=true]:tw-border-solid data-[argo=true]:tw-border-border data-[argo=true]:tw-bg-popover data-[argo=true]:tw-text-popover-foreground",
|
|
2844
|
+
// directional animations
|
|
2845
|
+
"data-[side=bottom]:tw-slide-in-from-top-2",
|
|
2846
|
+
"data-[side=left]:tw-slide-in-from-right-2",
|
|
2847
|
+
"data-[side=right]:tw-slide-in-from-left-2",
|
|
2848
|
+
"data-[side=top]:tw-slide-in-from-bottom-2",
|
|
2849
|
+
// animations
|
|
2850
|
+
"data-[state=open]:tw-animate-in",
|
|
2851
|
+
"data-[state=open]:tw-fade-in-0",
|
|
2852
|
+
"data-[state=open]:tw-zoom-in-95",
|
|
2853
|
+
"data-[state=closed]:tw-animate-out",
|
|
2854
|
+
"data-[state=closed]:tw-fade-out-0",
|
|
2855
|
+
"data-[state=closed]:tw-zoom-out-95",
|
|
2856
|
+
// Default size for nested Lucide icons; callers can override on the icon.
|
|
2857
|
+
"[&_svg.lucide:not([class*='tw-size-'])]:tw-size-4",
|
|
2858
|
+
"[&_svg]:tw-shrink-0",
|
|
2859
|
+
className
|
|
2860
|
+
),
|
|
2861
|
+
...props,
|
|
2862
|
+
children
|
|
2863
|
+
}
|
|
2864
|
+
) });
|
|
2865
|
+
};
|
|
2763
2866
|
var HoverCard = ({ openDelay = 200, closeDelay = 200, ...rest }) => /* @__PURE__ */ jsxRuntime.jsx(reactHoverCard.Root, { ...rest, openDelay, closeDelay });
|
|
2764
2867
|
HoverCard.Content = HoverCardContent;
|
|
2765
2868
|
HoverCard.Trigger = reactHoverCard.Trigger;
|
|
@@ -2788,10 +2891,10 @@ var CommandGroup = ({ className, ...props }) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
|
2788
2891
|
"[&_[cmdk-group-heading]]:tw-py-0.5",
|
|
2789
2892
|
"[&_[cmdk-group-heading]]:tw-uppercase",
|
|
2790
2893
|
"[&_[cmdk-group-heading]]:tw-text-[11px]",
|
|
2791
|
-
"[&_[cmdk-group-heading]]:tw-text-
|
|
2894
|
+
"[&_[cmdk-group-heading]]:tw-text-muted-foreground",
|
|
2792
2895
|
"[&_[cmdk-group-heading]]:tw-tracking-[1px]",
|
|
2793
2896
|
"[&_[cmdk-group-heading]]:tw-border-b",
|
|
2794
|
-
"[&_[cmdk-group-heading]]:tw-border-
|
|
2897
|
+
"[&_[cmdk-group-heading]]:tw-border-border",
|
|
2795
2898
|
"[&_[cmdk-group-heading]]:tw-my-2",
|
|
2796
2899
|
className
|
|
2797
2900
|
),
|
|
@@ -2799,13 +2902,13 @@ var CommandGroup = ({ className, ...props }) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
|
2799
2902
|
}
|
|
2800
2903
|
);
|
|
2801
2904
|
var dayPickerClassNames = {
|
|
2802
|
-
selected: `tw-bg-
|
|
2905
|
+
selected: `tw-bg-primary tw-border-primary tw-font-medium hover:tw-bg-primary/90 hover:tw-border-primary/90 tw-text-primary-foreground tw-rounded`
|
|
2803
2906
|
};
|
|
2804
2907
|
var rangePickerClassNames = {
|
|
2805
|
-
range_start: `tw-bg-
|
|
2806
|
-
range_end: `tw-bg-
|
|
2908
|
+
range_start: `tw-bg-primary tw-rounded-r-none tw-font-medium tw-border-primary hover:tw-bg-primary/90 hover:tw-border-primary/90 tw-text-primary-foreground`,
|
|
2909
|
+
range_end: `tw-bg-primary tw-rounded-l-none tw-font-medium tw-border-primary hover:tw-bg-primary/90 hover:tw-border-primary/90 tw-text-primary-foreground`,
|
|
2807
2910
|
selected: `tw-font-medium tw-rounded`,
|
|
2808
|
-
range_middle: `tw-bg-
|
|
2911
|
+
range_middle: `tw-bg-accent tw-border-accent tw-text-accent-foreground tw-rounded-none tw-font-medium`
|
|
2809
2912
|
};
|
|
2810
2913
|
var Calendar = ({ className, classNames, ...props }) => {
|
|
2811
2914
|
const defaultClassNames = reactDayPicker.getDefaultClassNames();
|
|
@@ -2816,10 +2919,10 @@ var Calendar = ({ className, classNames, ...props }) => {
|
|
|
2816
2919
|
captionLayout: "dropdown",
|
|
2817
2920
|
className: cn(className, "tw-p-3"),
|
|
2818
2921
|
classNames: {
|
|
2819
|
-
chevron: `${defaultClassNames.chevron} tw-fill-
|
|
2820
|
-
day: `${defaultClassNames.day} hover:tw-bg-
|
|
2922
|
+
chevron: `${defaultClassNames.chevron} tw-fill-foreground`,
|
|
2923
|
+
day: `${defaultClassNames.day} hover:tw-bg-accent tw-rounded`,
|
|
2821
2924
|
day_button: `${defaultClassNames.day_button} tw-rounded`,
|
|
2822
|
-
today: `tw-bg-
|
|
2925
|
+
today: `tw-bg-accent tw-text-accent-foreground tw-font-medium`,
|
|
2823
2926
|
...dayPickerClassNames,
|
|
2824
2927
|
...rangePickerClassNames,
|
|
2825
2928
|
selected: `${props.mode === "range" ? rangePickerClassNames.selected : dayPickerClassNames.selected}`,
|
|
@@ -2833,27 +2936,31 @@ Calendar.displayName = "Calendar";
|
|
|
2833
2936
|
var DatePicker = ({
|
|
2834
2937
|
align = "end",
|
|
2835
2938
|
alignOffset = -18,
|
|
2836
|
-
argo
|
|
2939
|
+
argo,
|
|
2837
2940
|
children,
|
|
2838
2941
|
defaultOpen,
|
|
2839
2942
|
onOpenChange,
|
|
2840
2943
|
open,
|
|
2841
2944
|
sideOffset = 12,
|
|
2842
2945
|
...calendarProps
|
|
2843
|
-
}) =>
|
|
2844
|
-
|
|
2845
|
-
|
|
2846
|
-
|
|
2847
|
-
{
|
|
2848
|
-
|
|
2849
|
-
|
|
2850
|
-
|
|
2851
|
-
|
|
2852
|
-
|
|
2853
|
-
|
|
2854
|
-
|
|
2855
|
-
|
|
2856
|
-
|
|
2946
|
+
}) => {
|
|
2947
|
+
const isLegacy = useIsLegacyBrand();
|
|
2948
|
+
const renderArgo = !isLegacy || argo === true;
|
|
2949
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Popover, { defaultOpen, open, onOpenChange, children: [
|
|
2950
|
+
/* @__PURE__ */ jsxRuntime.jsx(Popover.Trigger, { asChild: true, children }),
|
|
2951
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2952
|
+
Popover.Content,
|
|
2953
|
+
{
|
|
2954
|
+
align,
|
|
2955
|
+
alignOffset,
|
|
2956
|
+
className: "tw-w-auto tw-p-0",
|
|
2957
|
+
sideOffset,
|
|
2958
|
+
variant: renderArgo ? "argo" : "default",
|
|
2959
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(Calendar, { ...calendarProps })
|
|
2960
|
+
}
|
|
2961
|
+
)
|
|
2962
|
+
] });
|
|
2963
|
+
};
|
|
2857
2964
|
DatePicker.displayName = "DatePicker";
|
|
2858
2965
|
var addonVariants = classVarianceAuthority.cva(
|
|
2859
2966
|
[
|
|
@@ -3137,7 +3244,8 @@ var inputGroupVariants = classVarianceAuthority.cva(
|
|
|
3137
3244
|
"has-[:is(input,textarea):disabled]:tw-opacity-40"
|
|
3138
3245
|
],
|
|
3139
3246
|
argo: [
|
|
3140
|
-
|
|
3247
|
+
// muted filled input surface — gray, distinct from white containers; not the app-background token
|
|
3248
|
+
"tw-bg-muted",
|
|
3141
3249
|
"tw-border-input",
|
|
3142
3250
|
"tw-rounded-lg",
|
|
3143
3251
|
"tw-text-foreground",
|
|
@@ -3191,15 +3299,28 @@ var InputGroupRoot = ({
|
|
|
3191
3299
|
focusVariant,
|
|
3192
3300
|
className,
|
|
3193
3301
|
...props
|
|
3194
|
-
}) =>
|
|
3195
|
-
|
|
3196
|
-
|
|
3197
|
-
|
|
3198
|
-
|
|
3199
|
-
|
|
3200
|
-
|
|
3201
|
-
|
|
3202
|
-
|
|
3302
|
+
}) => {
|
|
3303
|
+
const isLegacy = useIsLegacyBrand();
|
|
3304
|
+
const effectiveVariant = !isLegacy || variant === "argo" ? "argo" : variant;
|
|
3305
|
+
const effectiveSizing = effectiveVariant === "argo" ? "medium" : sizing;
|
|
3306
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
3307
|
+
"div",
|
|
3308
|
+
{
|
|
3309
|
+
...props,
|
|
3310
|
+
ref,
|
|
3311
|
+
className: cn(
|
|
3312
|
+
inputGroupVariants({
|
|
3313
|
+
state,
|
|
3314
|
+
variant: effectiveVariant,
|
|
3315
|
+
sizing: effectiveSizing,
|
|
3316
|
+
focusVariant,
|
|
3317
|
+
className
|
|
3318
|
+
})
|
|
3319
|
+
),
|
|
3320
|
+
children
|
|
3321
|
+
}
|
|
3322
|
+
);
|
|
3323
|
+
};
|
|
3203
3324
|
var InputGroup = InputGroupRoot;
|
|
3204
3325
|
InputGroup.Input = InputGroupInput;
|
|
3205
3326
|
InputGroup.Addon = InputGroupAddon;
|
|
@@ -3312,7 +3433,7 @@ var Input = ({
|
|
|
3312
3433
|
"div",
|
|
3313
3434
|
{
|
|
3314
3435
|
className: cn({
|
|
3315
|
-
"tw-whitespace-nowrap tw-bg-
|
|
3436
|
+
"tw-whitespace-nowrap tw-bg-muted tw-px-4 -tw-mr-4 tw-py-2.5": rightSuffixVariant === "addon"
|
|
3316
3437
|
}),
|
|
3317
3438
|
children: rightSuffix
|
|
3318
3439
|
}
|
|
@@ -3376,6 +3497,7 @@ var DateInput = ({
|
|
|
3376
3497
|
readOnly,
|
|
3377
3498
|
startMonth,
|
|
3378
3499
|
value,
|
|
3500
|
+
variant,
|
|
3379
3501
|
...props
|
|
3380
3502
|
}) => {
|
|
3381
3503
|
const [inputValue, setInputValue] = react.useState("");
|
|
@@ -3445,6 +3567,7 @@ var DateInput = ({
|
|
|
3445
3567
|
readOnly,
|
|
3446
3568
|
ref,
|
|
3447
3569
|
value: displayValue,
|
|
3570
|
+
variant,
|
|
3448
3571
|
rightSuffix: !disabled && !readOnly ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
3449
3572
|
DatePicker,
|
|
3450
3573
|
{
|
|
@@ -3601,6 +3724,7 @@ var TextInput = ({
|
|
|
3601
3724
|
value,
|
|
3602
3725
|
defaultValue,
|
|
3603
3726
|
type = "text",
|
|
3727
|
+
variant,
|
|
3604
3728
|
onValueChange,
|
|
3605
3729
|
onChange,
|
|
3606
3730
|
onValueBlur,
|
|
@@ -3623,6 +3747,7 @@ var TextInput = ({
|
|
|
3623
3747
|
onChange: handleChange,
|
|
3624
3748
|
onBlur: handleBlur,
|
|
3625
3749
|
type,
|
|
3750
|
+
variant,
|
|
3626
3751
|
value: sanitizeTextInputValue(value),
|
|
3627
3752
|
defaultValue: sanitizeTextInputValue(defaultValue)
|
|
3628
3753
|
}
|
|
@@ -3648,12 +3773,12 @@ var TimePickerButton = ({
|
|
|
3648
3773
|
"tw-rounded",
|
|
3649
3774
|
"tw-transition-colors",
|
|
3650
3775
|
"tw-select-none",
|
|
3651
|
-
"hover:tw-bg-
|
|
3776
|
+
"hover:tw-bg-accent",
|
|
3652
3777
|
"focus-visible:tw-outline",
|
|
3653
3778
|
"focus-visible:tw-outline-2",
|
|
3654
|
-
"focus-visible:tw-outline-
|
|
3655
|
-
"aria-selected:tw-bg-
|
|
3656
|
-
"aria-selected:tw-text-
|
|
3779
|
+
"focus-visible:tw-outline-primary",
|
|
3780
|
+
"aria-selected:tw-bg-primary",
|
|
3781
|
+
"aria-selected:tw-text-primary-foreground",
|
|
3657
3782
|
className
|
|
3658
3783
|
),
|
|
3659
3784
|
children
|
|
@@ -3684,7 +3809,7 @@ var MINUTES = Array.from({ length: 60 }, (_, i) => i);
|
|
|
3684
3809
|
var TimePicker = ({
|
|
3685
3810
|
align = "end",
|
|
3686
3811
|
alignOffset = -18,
|
|
3687
|
-
argo
|
|
3812
|
+
argo,
|
|
3688
3813
|
children,
|
|
3689
3814
|
defaultOpen,
|
|
3690
3815
|
defaultSelected,
|
|
@@ -3694,6 +3819,8 @@ var TimePicker = ({
|
|
|
3694
3819
|
selected,
|
|
3695
3820
|
sideOffset = 12
|
|
3696
3821
|
}) => {
|
|
3822
|
+
const isLegacy = useIsLegacyBrand();
|
|
3823
|
+
const renderArgo = !isLegacy || argo;
|
|
3697
3824
|
const [internalSelected, setInternalSelected] = react.useState(defaultSelected ?? null);
|
|
3698
3825
|
const isControlled = selected !== void 0;
|
|
3699
3826
|
const currentValue = isControlled ? selected : internalSelected;
|
|
@@ -3723,7 +3850,7 @@ var TimePicker = ({
|
|
|
3723
3850
|
alignOffset,
|
|
3724
3851
|
sideOffset,
|
|
3725
3852
|
className: "tw-flex tw-flex-row",
|
|
3726
|
-
variant:
|
|
3853
|
+
variant: renderArgo ? "argo" : "default",
|
|
3727
3854
|
children: [
|
|
3728
3855
|
/* @__PURE__ */ jsxRuntime.jsx(ScrollArea, { type: "always", ref: scrollToSelected, viewPortClassName: "tw-h-60 tw-px-3", children: HOURS.map((value) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
3729
3856
|
TimePickerButton,
|
|
@@ -3759,6 +3886,7 @@ var TimeInput = ({
|
|
|
3759
3886
|
placeholder = "Select time",
|
|
3760
3887
|
readOnly,
|
|
3761
3888
|
value,
|
|
3889
|
+
variant,
|
|
3762
3890
|
className,
|
|
3763
3891
|
...props
|
|
3764
3892
|
}) => {
|
|
@@ -3804,6 +3932,7 @@ var TimeInput = ({
|
|
|
3804
3932
|
placeholder,
|
|
3805
3933
|
className: cn("[&_input::-webkit-calendar-picker-indicator]:tw-hidden", className),
|
|
3806
3934
|
value: currentValue,
|
|
3935
|
+
variant,
|
|
3807
3936
|
onChange: handleChange,
|
|
3808
3937
|
onBlur: handleBlur,
|
|
3809
3938
|
onClear: currentValue ? handleClear : void 0,
|
|
@@ -3962,7 +4091,7 @@ var CommandItem = ({
|
|
|
3962
4091
|
),
|
|
3963
4092
|
children: [
|
|
3964
4093
|
/* @__PURE__ */ jsxRuntime.jsx(CheckIndicator, { variant }),
|
|
3965
|
-
icon && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "tw-inline-flex tw-size-4 tw-shrink-0 tw-items-center tw-justify-center tw-text-
|
|
4094
|
+
icon && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "tw-inline-flex tw-size-4 tw-shrink-0 tw-items-center tw-justify-center tw-text-muted-foreground [&_svg:not([class*='tw-size-'])]:tw-size-4", children: icon }),
|
|
3966
4095
|
children
|
|
3967
4096
|
]
|
|
3968
4097
|
}
|
|
@@ -4012,14 +4141,18 @@ var CommandSeparator = ({ className, ...props }) => /* @__PURE__ */ jsxRuntime.j
|
|
|
4012
4141
|
...props
|
|
4013
4142
|
}
|
|
4014
4143
|
);
|
|
4015
|
-
var Command = ({ className, variant
|
|
4016
|
-
|
|
4017
|
-
|
|
4018
|
-
|
|
4019
|
-
|
|
4020
|
-
|
|
4021
|
-
|
|
4022
|
-
)
|
|
4144
|
+
var Command = ({ className, variant, ...rest }) => {
|
|
4145
|
+
const isLegacy = useIsLegacyBrand();
|
|
4146
|
+
const effectiveVariant = !isLegacy || variant === "argo" ? "argo" : "default";
|
|
4147
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
4148
|
+
cmdk.Command,
|
|
4149
|
+
{
|
|
4150
|
+
"data-variant": effectiveVariant,
|
|
4151
|
+
className: cn("tw-group/command", "tailwindcss-preflight", className),
|
|
4152
|
+
...rest
|
|
4153
|
+
}
|
|
4154
|
+
);
|
|
4155
|
+
};
|
|
4023
4156
|
Command.Content = CommandContent;
|
|
4024
4157
|
Command.Separator = CommandSeparator;
|
|
4025
4158
|
Command.List = CommandList;
|
|
@@ -4064,7 +4197,7 @@ var DateRangePicker = ({
|
|
|
4064
4197
|
}
|
|
4065
4198
|
) }),
|
|
4066
4199
|
/* @__PURE__ */ jsxRuntime.jsx(Popover.Content, { variant: "argo", align: "start", className: "tw-w-auto tw-p-0", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "tw-flex", children: [
|
|
4067
|
-
presets && presets.length > 0 ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "tw-flex tw-flex-col tw-gap-1 tw-border-r tw-border-solid tw-border-
|
|
4200
|
+
presets && presets.length > 0 ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "tw-flex tw-flex-col tw-gap-1 tw-border-r tw-border-solid tw-border-border tw-p-2", children: presets.map((preset) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
4068
4201
|
Button,
|
|
4069
4202
|
{
|
|
4070
4203
|
argo: true,
|
|
@@ -4095,7 +4228,7 @@ var DateRangePicker = ({
|
|
|
4095
4228
|
] }) })
|
|
4096
4229
|
] });
|
|
4097
4230
|
DateRangePicker.displayName = "DateRangePicker";
|
|
4098
|
-
var Optional = ({ className }) => /* @__PURE__ */ jsxRuntime.jsx("span", { className: cn("tw-text-
|
|
4231
|
+
var Optional = ({ className }) => /* @__PURE__ */ jsxRuntime.jsx("span", { className: cn("tw-text-muted-foreground", className), children: "(optional)" });
|
|
4099
4232
|
var Label2 = ({ className, children, id, htmlFor, ...rest }) => {
|
|
4100
4233
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
4101
4234
|
RLabel__namespace.Root,
|
|
@@ -4104,7 +4237,7 @@ var Label2 = ({ className, children, id, htmlFor, ...rest }) => {
|
|
|
4104
4237
|
id: id?.toString(),
|
|
4105
4238
|
htmlFor: htmlFor?.toString(),
|
|
4106
4239
|
className: cn(
|
|
4107
|
-
"tw-m-0 tw-text-
|
|
4240
|
+
"tw-m-0 tw-text-foreground tw-font-normal peer-disabled:tw-opacity-50",
|
|
4108
4241
|
className
|
|
4109
4242
|
),
|
|
4110
4243
|
children
|
|
@@ -4375,7 +4508,8 @@ var Switch = ({
|
|
|
4375
4508
|
}) => {
|
|
4376
4509
|
const fallbackId = react.useId();
|
|
4377
4510
|
const id = idProp?.toString() ?? fallbackId;
|
|
4378
|
-
const
|
|
4511
|
+
const isLegacy = useIsLegacyBrand();
|
|
4512
|
+
const switchVariant = !isLegacy || argo ? "argo" : "default";
|
|
4379
4513
|
const switchElement = /* @__PURE__ */ jsxRuntime.jsx(
|
|
4380
4514
|
reactSwitch.Root,
|
|
4381
4515
|
{
|
|
@@ -4395,110 +4529,163 @@ var Switch = ({
|
|
|
4395
4529
|
};
|
|
4396
4530
|
var RadioGroupContext = react.createContext({
|
|
4397
4531
|
variant: "radio",
|
|
4398
|
-
orientation: "horizontal"
|
|
4532
|
+
orientation: "horizontal",
|
|
4533
|
+
groupArgo: false
|
|
4399
4534
|
});
|
|
4400
4535
|
var RadioGroupProvider = RadioGroupContext;
|
|
4401
4536
|
var useRadioGroupContext = () => react.use(RadioGroupContext);
|
|
4402
|
-
var
|
|
4403
|
-
|
|
4537
|
+
var radioVariants = classVarianceAuthority.cva(
|
|
4538
|
+
[
|
|
4539
|
+
// reset
|
|
4540
|
+
"tw-bg-transparent",
|
|
4541
|
+
"tw-p-0",
|
|
4542
|
+
"tw-peer",
|
|
4543
|
+
"tw-cursor-pointer",
|
|
4544
|
+
"tw-whitespace-nowrap",
|
|
4545
|
+
"tw-shrink-0",
|
|
4546
|
+
// position
|
|
4547
|
+
"tw-flex",
|
|
4548
|
+
"tw-items-center",
|
|
4549
|
+
"tw-justify-center",
|
|
4550
|
+
"disabled:tw-cursor-not-allowed",
|
|
4551
|
+
"tw-size-4",
|
|
4552
|
+
// border
|
|
4553
|
+
"tw-rounded-full",
|
|
4554
|
+
"tw-border",
|
|
4555
|
+
"tw-border-solid"
|
|
4556
|
+
],
|
|
4404
4557
|
{
|
|
4405
|
-
|
|
4406
|
-
|
|
4407
|
-
|
|
4408
|
-
|
|
4409
|
-
|
|
4410
|
-
|
|
4411
|
-
|
|
4412
|
-
|
|
4413
|
-
|
|
4414
|
-
|
|
4415
|
-
|
|
4416
|
-
|
|
4417
|
-
|
|
4418
|
-
|
|
4419
|
-
|
|
4420
|
-
|
|
4421
|
-
|
|
4422
|
-
|
|
4423
|
-
|
|
4424
|
-
|
|
4425
|
-
|
|
4426
|
-
|
|
4427
|
-
|
|
4428
|
-
|
|
4429
|
-
|
|
4430
|
-
|
|
4431
|
-
|
|
4432
|
-
|
|
4433
|
-
|
|
4434
|
-
|
|
4435
|
-
|
|
4436
|
-
|
|
4437
|
-
|
|
4438
|
-
|
|
4439
|
-
|
|
4558
|
+
defaultVariants: {
|
|
4559
|
+
variant: "default"
|
|
4560
|
+
},
|
|
4561
|
+
variants: {
|
|
4562
|
+
variant: {
|
|
4563
|
+
default: [
|
|
4564
|
+
"disabled:tw-opacity-40",
|
|
4565
|
+
"data-[state=checked]:tw-border-primary",
|
|
4566
|
+
"data-[state=unchecked]:tw-border-neutral-200",
|
|
4567
|
+
"data-[state=unchecked]:hover:tw-border-primary",
|
|
4568
|
+
"data-[state=unchecked]:disabled:hover:tw-border-neutral-200",
|
|
4569
|
+
"focus-visible:tw-ring-2",
|
|
4570
|
+
"focus-visible:tw-ring-secondary-200"
|
|
4571
|
+
],
|
|
4572
|
+
argo: [
|
|
4573
|
+
"disabled:tw-opacity-50",
|
|
4574
|
+
"tw-border-input",
|
|
4575
|
+
"tw-transition-colors",
|
|
4576
|
+
"data-[state=checked]:tw-bg-primary",
|
|
4577
|
+
"data-[state=checked]:tw-border-primary",
|
|
4578
|
+
"data-[state=unchecked]:not-disabled:hover:tw-bg-accent",
|
|
4579
|
+
"data-[state=checked]:not-disabled:hover:tw-bg-primary",
|
|
4580
|
+
"focus-visible:tw-outline-none",
|
|
4581
|
+
"focus-visible:tw-border-primary",
|
|
4582
|
+
"focus-visible:tw-ring-2",
|
|
4583
|
+
"focus-visible:tw-ring-primary/50"
|
|
4584
|
+
]
|
|
4585
|
+
}
|
|
4586
|
+
}
|
|
4587
|
+
}
|
|
4588
|
+
);
|
|
4589
|
+
var radioIndicatorVariants = classVarianceAuthority.cva(["tw-size-2.5", "tw-fill-current"], {
|
|
4590
|
+
defaultVariants: {
|
|
4591
|
+
variant: "default"
|
|
4592
|
+
},
|
|
4593
|
+
variants: {
|
|
4594
|
+
variant: {
|
|
4595
|
+
default: ["tw-text-primary"],
|
|
4596
|
+
argo: ["tw-text-primary-foreground"]
|
|
4597
|
+
}
|
|
4598
|
+
}
|
|
4599
|
+
});
|
|
4600
|
+
var radioItemButtonVariants = classVarianceAuthority.cva(
|
|
4601
|
+
[
|
|
4602
|
+
// reset
|
|
4603
|
+
"tw-bg-transparent",
|
|
4604
|
+
"tw-p-0",
|
|
4605
|
+
"tw-peer",
|
|
4606
|
+
"tw-cursor-pointer",
|
|
4607
|
+
"tw-whitespace-nowrap",
|
|
4608
|
+
// position
|
|
4609
|
+
"tw-flex",
|
|
4610
|
+
"tw-items-center",
|
|
4611
|
+
"tw-justify-center",
|
|
4612
|
+
"disabled:tw-cursor-not-allowed",
|
|
4613
|
+
// layouts
|
|
4614
|
+
"tw-w-full",
|
|
4615
|
+
"tw-px-2",
|
|
4616
|
+
"tw-py-1.5",
|
|
4617
|
+
// fonts
|
|
4618
|
+
"tw-uppercase",
|
|
4619
|
+
"tw-font-semibold",
|
|
4620
|
+
"tw-font-sans",
|
|
4621
|
+
"tw-text-[11px]",
|
|
4622
|
+
"tw-whitespace-nowrap",
|
|
4623
|
+
"tw-tracking-widest",
|
|
4624
|
+
"tw-leading-[18px]",
|
|
4625
|
+
// border
|
|
4626
|
+
"tw-border",
|
|
4627
|
+
"tw-border-solid",
|
|
4628
|
+
"tw-rounded"
|
|
4629
|
+
],
|
|
4630
|
+
{
|
|
4631
|
+
defaultVariants: {
|
|
4632
|
+
variant: "default"
|
|
4633
|
+
},
|
|
4634
|
+
variants: {
|
|
4635
|
+
variant: {
|
|
4636
|
+
default: [
|
|
4637
|
+
"disabled:tw-opacity-40",
|
|
4638
|
+
"tw-text-secondary-600",
|
|
4639
|
+
"tw-border-secondary-500",
|
|
4640
|
+
"data-[state=unchecked]:hover:tw-bg-secondary-500",
|
|
4641
|
+
"data-[state=unchecked]:hover:tw-text-white",
|
|
4642
|
+
"data-[state=unchecked]:disabled:hover:tw-bg-white",
|
|
4643
|
+
"data-[state=unchecked]:disabled:hover:tw-text-secondary-500",
|
|
4644
|
+
"data-[state=checked]:disabled:tw-cursor-not-allowed",
|
|
4645
|
+
"data-[state=unchecked]:tw-bg-white",
|
|
4646
|
+
"data-[state=checked]:tw-bg-secondary-500",
|
|
4647
|
+
"data-[state=checked]:tw-text-white",
|
|
4648
|
+
"data-[state=checked]:tw-cursor-default",
|
|
4649
|
+
"focus-visible:tw-outline",
|
|
4650
|
+
"focus-visible:tw-outline-secondary-500",
|
|
4651
|
+
"focus-visible:tw-ring-4",
|
|
4652
|
+
"focus-visible:tw-ring-secondary-200"
|
|
4653
|
+
],
|
|
4654
|
+
argo: [
|
|
4655
|
+
"disabled:tw-opacity-50",
|
|
4656
|
+
"tw-text-foreground",
|
|
4657
|
+
"tw-border-input",
|
|
4658
|
+
"tw-transition-colors",
|
|
4659
|
+
// muted filled control surface — gray, distinct from white containers; not the app-background token
|
|
4660
|
+
"data-[state=unchecked]:tw-bg-muted",
|
|
4661
|
+
"data-[state=unchecked]:not-disabled:hover:tw-bg-accent",
|
|
4662
|
+
"data-[state=unchecked]:not-disabled:hover:tw-text-accent-foreground",
|
|
4663
|
+
"data-[state=checked]:tw-bg-primary",
|
|
4664
|
+
"data-[state=checked]:tw-border-primary",
|
|
4665
|
+
"data-[state=checked]:tw-text-primary-foreground",
|
|
4666
|
+
"data-[state=checked]:not-disabled:tw-cursor-default",
|
|
4667
|
+
"focus-visible:tw-outline-none",
|
|
4668
|
+
"focus-visible:tw-border-primary",
|
|
4669
|
+
"focus-visible:tw-ring-2",
|
|
4670
|
+
"focus-visible:tw-ring-primary/50"
|
|
4671
|
+
]
|
|
4672
|
+
}
|
|
4673
|
+
}
|
|
4440
4674
|
}
|
|
4441
4675
|
);
|
|
4676
|
+
var Radio = ({ className, styleVariant = "default", ...props }) => /* @__PURE__ */ jsxRuntime.jsx(RRadioGroup.Item, { ...props, className: cn(radioVariants({ variant: styleVariant }), className), children: /* @__PURE__ */ jsxRuntime.jsx(RRadioGroup.Indicator, { className: cn("tw-flex", "tw-items-center", "tw-justify-center"), children: /* @__PURE__ */ jsxRuntime.jsx(icons_exports.Circle, { className: radioIndicatorVariants({ variant: styleVariant }) }) }) });
|
|
4442
4677
|
var RadioGroupItemButton = ({
|
|
4443
4678
|
ref,
|
|
4444
4679
|
className,
|
|
4445
4680
|
children,
|
|
4681
|
+
styleVariant = "default",
|
|
4446
4682
|
...props
|
|
4447
4683
|
}) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
4448
4684
|
RRadioGroup.Item,
|
|
4449
4685
|
{
|
|
4450
4686
|
ref,
|
|
4451
4687
|
...props,
|
|
4452
|
-
className: cn(
|
|
4453
|
-
// reset
|
|
4454
|
-
"tw-bg-transparent",
|
|
4455
|
-
"tw-p-0",
|
|
4456
|
-
"tw-peer",
|
|
4457
|
-
"tw-cursor-pointer",
|
|
4458
|
-
"tw-whitespace-nowrap",
|
|
4459
|
-
// position
|
|
4460
|
-
"tw-flex",
|
|
4461
|
-
"tw-items-center",
|
|
4462
|
-
"tw-justify-center",
|
|
4463
|
-
// disabled
|
|
4464
|
-
"disabled:tw-opacity-40",
|
|
4465
|
-
"disabled:tw-cursor-not-allowed",
|
|
4466
|
-
// layouts
|
|
4467
|
-
"tw-w-full",
|
|
4468
|
-
"tw-px-2",
|
|
4469
|
-
"tw-py-1.5",
|
|
4470
|
-
// fonts
|
|
4471
|
-
"tw-text-secondary-600",
|
|
4472
|
-
"tw-uppercase",
|
|
4473
|
-
"tw-font-semibold",
|
|
4474
|
-
"tw-font-sans",
|
|
4475
|
-
"tw-text-[11px]",
|
|
4476
|
-
"tw-whitespace-nowrap",
|
|
4477
|
-
"tw-tracking-widest",
|
|
4478
|
-
"tw-leading-[18px]",
|
|
4479
|
-
// border
|
|
4480
|
-
"tw-border",
|
|
4481
|
-
"tw-border-solid",
|
|
4482
|
-
"tw-border-secondary-500",
|
|
4483
|
-
"tw-rounded",
|
|
4484
|
-
// hover
|
|
4485
|
-
"data-[state=unchecked]:hover:tw-bg-secondary-500",
|
|
4486
|
-
"data-[state=unchecked]:hover:tw-text-white",
|
|
4487
|
-
// disabled
|
|
4488
|
-
"data-[state=unchecked]:disabled:hover:tw-bg-white",
|
|
4489
|
-
"data-[state=unchecked]:disabled:hover:tw-text-secondary-500",
|
|
4490
|
-
"data-[state=checked]:disabled:tw-cursor-not-allowed",
|
|
4491
|
-
// states
|
|
4492
|
-
"data-[state=unchecked]:tw-bg-white",
|
|
4493
|
-
"data-[state=checked]:tw-bg-secondary-500",
|
|
4494
|
-
"data-[state=checked]:tw-text-white",
|
|
4495
|
-
"data-[state=checked]:tw-cursor-default",
|
|
4496
|
-
"focus-visible:tw-outline",
|
|
4497
|
-
"focus-visible:tw-outline-secondary-500",
|
|
4498
|
-
"focus-visible:tw-ring-4",
|
|
4499
|
-
"focus-visible:tw-ring-secondary-200",
|
|
4500
|
-
className
|
|
4501
|
-
),
|
|
4688
|
+
className: cn(radioItemButtonVariants({ variant: styleVariant }), className),
|
|
4502
4689
|
children
|
|
4503
4690
|
}
|
|
4504
4691
|
);
|
|
@@ -4508,19 +4695,22 @@ var RadioGroupItem = ({
|
|
|
4508
4695
|
tooltipVariant,
|
|
4509
4696
|
tooltipPlacement,
|
|
4510
4697
|
description,
|
|
4698
|
+
argo,
|
|
4511
4699
|
...props
|
|
4512
4700
|
}) => {
|
|
4513
|
-
const { variant } = useRadioGroupContext();
|
|
4701
|
+
const { variant, groupArgo } = useRadioGroupContext();
|
|
4702
|
+
const isLegacy = useIsLegacyBrand();
|
|
4703
|
+
const styleVariant = argo === true || groupArgo || !isLegacy ? "argo" : "default";
|
|
4514
4704
|
const id = react.useId();
|
|
4515
4705
|
const item = (() => {
|
|
4516
4706
|
if (variant === "button")
|
|
4517
|
-
return /* @__PURE__ */ jsxRuntime.jsx(RadioGroupItemButton, { ...props, children });
|
|
4707
|
+
return /* @__PURE__ */ jsxRuntime.jsx(RadioGroupItemButton, { styleVariant, ...props, children });
|
|
4518
4708
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
4519
4709
|
FieldBox,
|
|
4520
4710
|
{
|
|
4521
4711
|
variant: variant === "radio-block" ? "boxed" : "default",
|
|
4522
4712
|
htmlFor: id,
|
|
4523
|
-
control: /* @__PURE__ */ jsxRuntime.jsx(Radio, { ...props, id }),
|
|
4713
|
+
control: /* @__PURE__ */ jsxRuntime.jsx(Radio, { styleVariant, ...props, id }),
|
|
4524
4714
|
className: variant === "radio-block" ? "tw-flex-1" : void 0,
|
|
4525
4715
|
children: [
|
|
4526
4716
|
/* @__PURE__ */ jsxRuntime.jsx(FieldBox.Title, { children }),
|
|
@@ -4655,12 +4845,15 @@ var RadioGroup2 = ({
|
|
|
4655
4845
|
className,
|
|
4656
4846
|
disabled = false,
|
|
4657
4847
|
orientation = "horizontal",
|
|
4848
|
+
argo,
|
|
4658
4849
|
onValueChange,
|
|
4659
4850
|
children,
|
|
4660
4851
|
value,
|
|
4661
4852
|
defaultValue,
|
|
4662
4853
|
...props
|
|
4663
4854
|
}) => {
|
|
4855
|
+
const isLegacy = useIsLegacyBrand();
|
|
4856
|
+
const groupArgo = !isLegacy || argo === true;
|
|
4664
4857
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
4665
4858
|
RRadioGroup__namespace.Root,
|
|
4666
4859
|
{
|
|
@@ -4671,7 +4864,7 @@ var RadioGroup2 = ({
|
|
|
4671
4864
|
disabled,
|
|
4672
4865
|
value: value ?? void 0,
|
|
4673
4866
|
defaultValue: defaultValue ?? void 0,
|
|
4674
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(RadioGroupProvider, { value: { variant, orientation }, children })
|
|
4867
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(RadioGroupProvider, { value: { variant, orientation, groupArgo }, children })
|
|
4675
4868
|
}
|
|
4676
4869
|
);
|
|
4677
4870
|
};
|
|
@@ -5119,67 +5312,72 @@ var SelectContent = ({
|
|
|
5119
5312
|
container,
|
|
5120
5313
|
position = "popper",
|
|
5121
5314
|
sideOffset = 4,
|
|
5122
|
-
variant
|
|
5315
|
+
variant,
|
|
5123
5316
|
...props
|
|
5124
|
-
}) =>
|
|
5125
|
-
|
|
5126
|
-
|
|
5127
|
-
|
|
5128
|
-
|
|
5129
|
-
|
|
5130
|
-
|
|
5131
|
-
|
|
5132
|
-
|
|
5133
|
-
|
|
5134
|
-
"
|
|
5135
|
-
|
|
5136
|
-
|
|
5137
|
-
|
|
5138
|
-
|
|
5139
|
-
|
|
5140
|
-
|
|
5141
|
-
|
|
5142
|
-
|
|
5143
|
-
|
|
5144
|
-
|
|
5145
|
-
|
|
5146
|
-
|
|
5147
|
-
|
|
5148
|
-
|
|
5149
|
-
|
|
5150
|
-
|
|
5151
|
-
|
|
5152
|
-
|
|
5153
|
-
|
|
5154
|
-
|
|
5155
|
-
|
|
5156
|
-
|
|
5157
|
-
|
|
5158
|
-
|
|
5159
|
-
|
|
5160
|
-
|
|
5161
|
-
|
|
5162
|
-
|
|
5163
|
-
|
|
5164
|
-
|
|
5165
|
-
|
|
5166
|
-
|
|
5167
|
-
|
|
5168
|
-
|
|
5169
|
-
|
|
5170
|
-
|
|
5171
|
-
SelectPrimitive__namespace.Viewport,
|
|
5172
|
-
{
|
|
5173
|
-
className: cn({
|
|
5174
|
-
"tw-h-[var(--radix-select-trigger-height)] tw-w-full tw-min-w-[var(--radix-select-trigger-width)]": position === "popper"
|
|
5175
|
-
}),
|
|
5176
|
-
children
|
|
5177
|
-
}
|
|
5317
|
+
}) => {
|
|
5318
|
+
const isLegacy = useIsLegacyBrand();
|
|
5319
|
+
const effectiveVariant = !isLegacy || variant === "argo" ? "argo" : "default";
|
|
5320
|
+
return /* @__PURE__ */ jsxRuntime.jsx(SelectPrimitive__namespace.Portal, { container, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
5321
|
+
SelectPrimitive__namespace.Content,
|
|
5322
|
+
{
|
|
5323
|
+
...props,
|
|
5324
|
+
ref,
|
|
5325
|
+
position,
|
|
5326
|
+
sideOffset,
|
|
5327
|
+
"data-variant": effectiveVariant,
|
|
5328
|
+
className: cn(
|
|
5329
|
+
"tailwindcss-preflight",
|
|
5330
|
+
"tw-group/select-content",
|
|
5331
|
+
// Floating tier above Modal (1051): Tooltip 1060 / Combobox·Popover·Select 1055 / Modal 1051 / DropdownMenu.SubContent 1041 / FullScreenModal 1039
|
|
5332
|
+
"tw-z-[1055]",
|
|
5333
|
+
// layout
|
|
5334
|
+
"tw-flex tw-flex-col",
|
|
5335
|
+
"tw-p-1",
|
|
5336
|
+
"data-[variant=default]:tw-p-0",
|
|
5337
|
+
"tw-overflow-hidden",
|
|
5338
|
+
"tw-origin-[--radix-select-content-transform-origin]",
|
|
5339
|
+
// sizing
|
|
5340
|
+
"tw-max-h-[var(--radix-select-content-available-height)]",
|
|
5341
|
+
"tw-min-w-[var(--radix-select-trigger-width)]",
|
|
5342
|
+
// appearance
|
|
5343
|
+
"tw-bg-popover",
|
|
5344
|
+
"tw-text-popover-foreground",
|
|
5345
|
+
"tw-shadow-md",
|
|
5346
|
+
"tw-ring-1",
|
|
5347
|
+
"tw-ring-foreground/10",
|
|
5348
|
+
"tw-rounded-lg",
|
|
5349
|
+
"data-[variant=default]:tw-rounded",
|
|
5350
|
+
// open animation
|
|
5351
|
+
"data-[state=open]:tw-animate-in",
|
|
5352
|
+
"data-[state=open]:tw-fade-in-0",
|
|
5353
|
+
"data-[state=open]:tw-zoom-in-95",
|
|
5354
|
+
// closed animation
|
|
5355
|
+
"data-[state=closed]:tw-animate-out",
|
|
5356
|
+
"data-[state=closed]:tw-fade-out-0",
|
|
5357
|
+
"data-[state=closed]:tw-zoom-out-95",
|
|
5358
|
+
// position animations
|
|
5359
|
+
"data-[side=bottom]:tw-slide-in-from-top-2",
|
|
5360
|
+
"data-[side=left]:tw-slide-in-from-right-2",
|
|
5361
|
+
"data-[side=right]:tw-slide-in-from-left-2",
|
|
5362
|
+
"data-[side=top]:tw-slide-in-from-bottom-2",
|
|
5363
|
+
className
|
|
5178
5364
|
),
|
|
5179
|
-
|
|
5180
|
-
|
|
5181
|
-
|
|
5182
|
-
|
|
5365
|
+
children: [
|
|
5366
|
+
/* @__PURE__ */ jsxRuntime.jsx(SelectPrimitive__namespace.ScrollUpButton, { className: scrollButtonStyles, children: /* @__PURE__ */ jsxRuntime.jsx(icons_exports.ChevronUp, {}) }),
|
|
5367
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5368
|
+
SelectPrimitive__namespace.Viewport,
|
|
5369
|
+
{
|
|
5370
|
+
className: cn({
|
|
5371
|
+
"tw-h-[var(--radix-select-trigger-height)] tw-w-full tw-min-w-[var(--radix-select-trigger-width)]": position === "popper"
|
|
5372
|
+
}),
|
|
5373
|
+
children
|
|
5374
|
+
}
|
|
5375
|
+
),
|
|
5376
|
+
/* @__PURE__ */ jsxRuntime.jsx(SelectPrimitive__namespace.ScrollDownButton, { className: scrollButtonStyles, children: /* @__PURE__ */ jsxRuntime.jsx(icons_exports.ChevronDown, {}) })
|
|
5377
|
+
]
|
|
5378
|
+
}
|
|
5379
|
+
) });
|
|
5380
|
+
};
|
|
5183
5381
|
var SelectGroup = ({ className, ...props }) => /* @__PURE__ */ jsxRuntime.jsx(SelectPrimitive__namespace.Group, { ...props, className: cn("tw-flex tw-flex-col tw-gap-0.5", className) });
|
|
5184
5382
|
var SelectItem = ({
|
|
5185
5383
|
ref,
|
|
@@ -5228,7 +5426,7 @@ var SelectItem = ({
|
|
|
5228
5426
|
className
|
|
5229
5427
|
),
|
|
5230
5428
|
children: [
|
|
5231
|
-
|
|
5429
|
+
icon,
|
|
5232
5430
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "tw-flex-1 tw-truncate", children: /* @__PURE__ */ jsxRuntime.jsx(SelectPrimitive__namespace.ItemText, { children }) }),
|
|
5233
5431
|
/* @__PURE__ */ jsxRuntime.jsx(SelectPrimitive__namespace.ItemIndicator, { className: "tw-pointer-events-none", children: /* @__PURE__ */ jsxRuntime.jsx(icons_exports.Check, { className: "tw-size-4" }) })
|
|
5234
5432
|
]
|
|
@@ -5245,7 +5443,7 @@ var SelectLabel = ({ className, ...props }) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
|
5245
5443
|
"tw-text-xs",
|
|
5246
5444
|
"tw-font-medium",
|
|
5247
5445
|
"tw-leading-none",
|
|
5248
|
-
"tw-text-
|
|
5446
|
+
"tw-text-muted-foreground",
|
|
5249
5447
|
// Default variant — uppercase tracked label, matches Combobox default
|
|
5250
5448
|
"group-data-[variant=default]/select-content:tw-uppercase",
|
|
5251
5449
|
"group-data-[variant=default]/select-content:tw-font-semibold",
|
|
@@ -5263,7 +5461,7 @@ var SelectSeparator = ({ className, ...props }) => /* @__PURE__ */ jsxRuntime.js
|
|
|
5263
5461
|
SelectPrimitive__namespace.Separator,
|
|
5264
5462
|
{
|
|
5265
5463
|
...props,
|
|
5266
|
-
className: cn("tw-mx-2 tw-my-1 tw-h-px tw-bg-
|
|
5464
|
+
className: cn("tw-mx-2 tw-my-1 tw-h-px tw-bg-border", className)
|
|
5267
5465
|
}
|
|
5268
5466
|
);
|
|
5269
5467
|
var variants4 = classVarianceAuthority.cva(
|
|
@@ -5350,7 +5548,8 @@ var variants4 = classVarianceAuthority.cva(
|
|
|
5350
5548
|
"aria-disabled:tw-opacity-40"
|
|
5351
5549
|
],
|
|
5352
5550
|
argo: [
|
|
5353
|
-
|
|
5551
|
+
// muted filled input surface — gray, distinct from white containers; not the app-background token
|
|
5552
|
+
"tw-bg-muted",
|
|
5354
5553
|
"tw-border-input",
|
|
5355
5554
|
"tw-rounded-lg",
|
|
5356
5555
|
"tw-text-foreground",
|
|
@@ -5397,18 +5596,22 @@ var SelectTrigger = ({
|
|
|
5397
5596
|
sizing,
|
|
5398
5597
|
placeholder,
|
|
5399
5598
|
...props
|
|
5400
|
-
}) =>
|
|
5401
|
-
|
|
5402
|
-
|
|
5403
|
-
|
|
5404
|
-
|
|
5405
|
-
|
|
5406
|
-
|
|
5407
|
-
|
|
5408
|
-
|
|
5409
|
-
|
|
5410
|
-
|
|
5411
|
-
)
|
|
5599
|
+
}) => {
|
|
5600
|
+
const isLegacy = useIsLegacyBrand();
|
|
5601
|
+
const effectiveVariant = !isLegacy || variant === "argo" ? "argo" : variant;
|
|
5602
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
5603
|
+
SelectPrimitive__namespace.Trigger,
|
|
5604
|
+
{
|
|
5605
|
+
ref,
|
|
5606
|
+
className: cn(variants4({ variant: effectiveVariant, state, sizing }), className),
|
|
5607
|
+
...props,
|
|
5608
|
+
children: [
|
|
5609
|
+
/* @__PURE__ */ jsxRuntime.jsx(SelectPrimitive__namespace.Value, { placeholder }),
|
|
5610
|
+
/* @__PURE__ */ jsxRuntime.jsx(SelectPrimitive__namespace.Icon, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(icons_exports.ChevronDown, { className: "tw-size-5 tw-text-muted-foreground" }) })
|
|
5611
|
+
]
|
|
5612
|
+
}
|
|
5613
|
+
);
|
|
5614
|
+
};
|
|
5412
5615
|
var isGroup = (itemOrGroup) => "items" in itemOrGroup;
|
|
5413
5616
|
var Select = ({
|
|
5414
5617
|
// root
|
|
@@ -5569,7 +5772,8 @@ function Checkbox({
|
|
|
5569
5772
|
}) {
|
|
5570
5773
|
const fallbackId = react.useId();
|
|
5571
5774
|
const id = idProp?.toString() ?? fallbackId;
|
|
5572
|
-
const
|
|
5775
|
+
const isLegacy = useIsLegacyBrand();
|
|
5776
|
+
const styleVariant = !isLegacy || argo ? "argo" : "default";
|
|
5573
5777
|
const checkboxElement = /* @__PURE__ */ jsxRuntime.jsx(reactCheckbox.Root, { id, ...rest, className: cn(rootVariants2({ variant: styleVariant, className })), children: /* @__PURE__ */ jsxRuntime.jsxs(reactCheckbox.Indicator, { className: cn(indicatorVariants({ variant: styleVariant })), children: [
|
|
5574
5778
|
/* @__PURE__ */ jsxRuntime.jsx(icons_exports.Check, { className: "tw-hidden tw-size-3 tw-stroke-[4px] group-data-[state=checked]:tw-block" }),
|
|
5575
5779
|
/* @__PURE__ */ jsxRuntime.jsx(icons_exports.Minus, { className: "tw-hidden tw-size-3 tw-stroke-[4px] group-data-[state=indeterminate]:tw-block" })
|
|
@@ -5901,66 +6105,70 @@ var ComboboxContent = ({
|
|
|
5901
6105
|
container,
|
|
5902
6106
|
className,
|
|
5903
6107
|
children,
|
|
5904
|
-
variant
|
|
6108
|
+
variant,
|
|
5905
6109
|
...popupProps
|
|
5906
|
-
}) =>
|
|
5907
|
-
|
|
5908
|
-
|
|
5909
|
-
|
|
5910
|
-
|
|
5911
|
-
|
|
5912
|
-
|
|
5913
|
-
|
|
5914
|
-
|
|
5915
|
-
|
|
5916
|
-
|
|
5917
|
-
|
|
5918
|
-
|
|
5919
|
-
|
|
5920
|
-
|
|
5921
|
-
|
|
5922
|
-
"
|
|
5923
|
-
"
|
|
5924
|
-
|
|
5925
|
-
|
|
5926
|
-
|
|
5927
|
-
|
|
5928
|
-
|
|
5929
|
-
|
|
5930
|
-
|
|
5931
|
-
|
|
5932
|
-
|
|
5933
|
-
|
|
5934
|
-
|
|
5935
|
-
|
|
5936
|
-
|
|
5937
|
-
|
|
5938
|
-
|
|
5939
|
-
|
|
5940
|
-
|
|
5941
|
-
|
|
5942
|
-
|
|
5943
|
-
|
|
5944
|
-
|
|
5945
|
-
|
|
5946
|
-
|
|
5947
|
-
|
|
5948
|
-
|
|
5949
|
-
|
|
5950
|
-
|
|
5951
|
-
|
|
5952
|
-
|
|
5953
|
-
|
|
5954
|
-
|
|
5955
|
-
|
|
5956
|
-
|
|
5957
|
-
|
|
5958
|
-
|
|
5959
|
-
|
|
5960
|
-
|
|
5961
|
-
|
|
5962
|
-
|
|
5963
|
-
|
|
6110
|
+
}) => {
|
|
6111
|
+
const isLegacy = useIsLegacyBrand();
|
|
6112
|
+
const effectiveVariant = !isLegacy || variant === "argo" ? "argo" : "default";
|
|
6113
|
+
return /* @__PURE__ */ jsxRuntime.jsx(combobox.Combobox.Portal, { container, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
6114
|
+
combobox.Combobox.Positioner,
|
|
6115
|
+
{
|
|
6116
|
+
align,
|
|
6117
|
+
side,
|
|
6118
|
+
sideOffset,
|
|
6119
|
+
alignOffset,
|
|
6120
|
+
anchor,
|
|
6121
|
+
className: "tailwindcss-preflight tw-isolate tw-z-[1055]",
|
|
6122
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
6123
|
+
combobox.Combobox.Popup,
|
|
6124
|
+
{
|
|
6125
|
+
ref,
|
|
6126
|
+
"data-chips": !!anchor,
|
|
6127
|
+
"data-variant": effectiveVariant,
|
|
6128
|
+
className: cn(
|
|
6129
|
+
"!tw-pointer-events-auto",
|
|
6130
|
+
"tw-group/combobox-content",
|
|
6131
|
+
"tw-relative",
|
|
6132
|
+
"tw-flex tw-flex-col tw-overflow-hidden",
|
|
6133
|
+
// sizing
|
|
6134
|
+
"tw-max-h-[var(--available-height)]",
|
|
6135
|
+
"tw-w-[var(--anchor-width)]",
|
|
6136
|
+
"tw-max-w-[var(--available-width)]",
|
|
6137
|
+
"tw-origin-[var(--transform-origin)]",
|
|
6138
|
+
"data-[chips=true]:tw-min-w-[var(--anchor-width)]",
|
|
6139
|
+
// appearance
|
|
6140
|
+
"tw-rounded-lg",
|
|
6141
|
+
"data-[variant=default]:tw-rounded",
|
|
6142
|
+
"tw-bg-popover",
|
|
6143
|
+
"tw-text-popover-foreground",
|
|
6144
|
+
"tw-shadow-md",
|
|
6145
|
+
"tw-ring-1",
|
|
6146
|
+
"tw-ring-foreground/10",
|
|
6147
|
+
"tw-duration-100",
|
|
6148
|
+
// open animation
|
|
6149
|
+
"data-open:animate-in",
|
|
6150
|
+
"data-open:fade-in-0",
|
|
6151
|
+
"data-open:zoom-in-95",
|
|
6152
|
+
// closed animation
|
|
6153
|
+
"data-closed:animate-out",
|
|
6154
|
+
"data-closed:fade-out-0",
|
|
6155
|
+
"data-closed:zoom-out-95",
|
|
6156
|
+
// position animations
|
|
6157
|
+
"data-[side=bottom]:tw-slide-in-from-top-2",
|
|
6158
|
+
"data-[side=top]:tw-slide-in-from-bottom-2",
|
|
6159
|
+
"data-[side=left]:tw-slide-in-from-right-2",
|
|
6160
|
+
"data-[side=right]:tw-slide-in-from-left-2",
|
|
6161
|
+
"data-[side=inline-start]:tw-slide-in-from-right-2",
|
|
6162
|
+
"data-[side=inline-end]:tw-slide-in-from-left-2",
|
|
6163
|
+
className
|
|
6164
|
+
),
|
|
6165
|
+
...popupProps,
|
|
6166
|
+
children
|
|
6167
|
+
}
|
|
6168
|
+
)
|
|
6169
|
+
}
|
|
6170
|
+
) });
|
|
6171
|
+
};
|
|
5964
6172
|
var ComboboxEmpty = ({
|
|
5965
6173
|
ref,
|
|
5966
6174
|
className,
|
|
@@ -6159,7 +6367,7 @@ var ComboboxSeparator = ({
|
|
|
6159
6367
|
combobox.Combobox.Separator,
|
|
6160
6368
|
{
|
|
6161
6369
|
ref,
|
|
6162
|
-
className: cn("tw-mx-2 tw-my-1 tw-h-px tw-bg-
|
|
6370
|
+
className: cn("tw-mx-2 tw-my-1 tw-h-px tw-bg-border", className),
|
|
6163
6371
|
...props
|
|
6164
6372
|
}
|
|
6165
6373
|
);
|
|
@@ -6193,7 +6401,7 @@ var ComboboxGroupLabel = ({
|
|
|
6193
6401
|
"tw-text-xs",
|
|
6194
6402
|
"tw-font-medium",
|
|
6195
6403
|
"tw-leading-none",
|
|
6196
|
-
"tw-text-
|
|
6404
|
+
"tw-text-muted-foreground",
|
|
6197
6405
|
"group-data-[variant=default]/combobox-content:tw-uppercase",
|
|
6198
6406
|
"group-data-[variant=default]/combobox-content:tw-font-semibold",
|
|
6199
6407
|
"group-data-[variant=default]/combobox-content:tw-tracking-wider",
|
|
@@ -6437,10 +6645,12 @@ var MultiCombobox = ({
|
|
|
6437
6645
|
itemToChipColor,
|
|
6438
6646
|
maxVisible = 3
|
|
6439
6647
|
}) => {
|
|
6648
|
+
const isLegacy = useIsLegacyBrand();
|
|
6440
6649
|
const itemsProp = _itemsProp ?? [];
|
|
6441
6650
|
const valueProp = _valueProp ?? [];
|
|
6442
|
-
const
|
|
6443
|
-
const
|
|
6651
|
+
const renderArgo = !isLegacy || variant === "argo";
|
|
6652
|
+
const contentVariant = renderArgo ? "argo" : "default";
|
|
6653
|
+
const chipVariant = renderArgo ? "pill" : "default";
|
|
6444
6654
|
const allFlatItems = itemsProp.flatMap((item) => isGroupItem(item) ? item.items : item);
|
|
6445
6655
|
const isAllSelected = allFlatItems.length === (valueProp?.length ?? 0);
|
|
6446
6656
|
const defaultFilter3 = combobox.Combobox.useFilter({
|
|
@@ -6555,7 +6765,7 @@ var Textarea = ({
|
|
|
6555
6765
|
containerClassName,
|
|
6556
6766
|
// group props
|
|
6557
6767
|
state = "default",
|
|
6558
|
-
variant
|
|
6768
|
+
variant,
|
|
6559
6769
|
sizing,
|
|
6560
6770
|
focusVariant,
|
|
6561
6771
|
...rest
|
|
@@ -7068,7 +7278,8 @@ var slotVariants = classVarianceAuthority.cva(
|
|
|
7068
7278
|
"tw-justify-center",
|
|
7069
7279
|
"tw-border",
|
|
7070
7280
|
"tw-border-input",
|
|
7071
|
-
|
|
7281
|
+
// muted filled input surface — gray, distinct from white containers; not the app-background token
|
|
7282
|
+
"tw-bg-muted",
|
|
7072
7283
|
"tw-text-foreground",
|
|
7073
7284
|
"tw-font-medium",
|
|
7074
7285
|
"tw-tabular-nums",
|
|
@@ -7763,8 +7974,8 @@ var helpVariants = classVarianceAuthority.cva(["tw-m-0", "tw-text-xs"], {
|
|
|
7763
7974
|
},
|
|
7764
7975
|
variants: {
|
|
7765
7976
|
state: {
|
|
7766
|
-
default: ["tw-text-
|
|
7767
|
-
error: ["tw-text-
|
|
7977
|
+
default: ["tw-text-muted-foreground"],
|
|
7978
|
+
error: ["tw-text-destructive"],
|
|
7768
7979
|
warning: ["tw-text-warning-500"]
|
|
7769
7980
|
}
|
|
7770
7981
|
}
|
|
@@ -7881,6 +8092,8 @@ var AnswerSummary = ({
|
|
|
7881
8092
|
const [isExpanded, setIsExpanded] = react.useState(false);
|
|
7882
8093
|
const toggle = () => setIsExpanded((prev) => !prev);
|
|
7883
8094
|
const count = items.length;
|
|
8095
|
+
const [firstItem] = items;
|
|
8096
|
+
const label = count === 1 && firstItem ? firstItem.question : `${count} questions`;
|
|
7884
8097
|
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "tw-mt-4 tw-flex tw-flex-col tw-gap-4", "aria-label": SECTION_LABELS[variant], children: [
|
|
7885
8098
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
7886
8099
|
CollapsibleStepHeader,
|
|
@@ -7888,7 +8101,7 @@ var AnswerSummary = ({
|
|
|
7888
8101
|
isExpanded,
|
|
7889
8102
|
onToggle: toggle,
|
|
7890
8103
|
variant,
|
|
7891
|
-
label
|
|
8104
|
+
label
|
|
7892
8105
|
}
|
|
7893
8106
|
),
|
|
7894
8107
|
isExpanded && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "tw-flex tw-flex-col tw-gap-4 tw-pl-5", children: items.map(({ question, answer }, index) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "tw-flex tw-flex-col tw-gap-1", children: [
|
|
@@ -8392,6 +8605,7 @@ var PromptInputSubmit = ({
|
|
|
8392
8605
|
getTooltipText() && /* @__PURE__ */ jsxRuntime.jsx(Tooltip.Content, { placement: "top", variant: "action", children: getTooltipText() })
|
|
8393
8606
|
] });
|
|
8394
8607
|
};
|
|
8608
|
+
var CMDK_HIJACKED_KEYS = /* @__PURE__ */ new Set(["ArrowUp", "ArrowDown", "Home", "End", "Enter"]);
|
|
8395
8609
|
var promptInputVariants = classVarianceAuthority.cva(
|
|
8396
8610
|
[
|
|
8397
8611
|
"tailwindcss-preflight",
|
|
@@ -8463,15 +8677,11 @@ var PromptInput = ({
|
|
|
8463
8677
|
const textareaId = react.useId();
|
|
8464
8678
|
const textareaRef = react.useRef(null);
|
|
8465
8679
|
const [dismissedValue, setDismissedValue] = react.useState(null);
|
|
8680
|
+
if (dismissedValue !== null && value !== dismissedValue) setDismissedValue(null);
|
|
8466
8681
|
const hasCommands = !!commands && commands.length > 0;
|
|
8467
8682
|
const valueLooksLikeSlashCommand = value.startsWith("/") && !/\s/.test(value);
|
|
8468
8683
|
const commandsOpen = hasCommands && valueLooksLikeSlashCommand && value !== dismissedValue;
|
|
8469
8684
|
const slashFilter = commandsOpen ? value.slice(1) : "";
|
|
8470
|
-
react.useEffect(() => {
|
|
8471
|
-
if (dismissedValue !== null && value !== dismissedValue) {
|
|
8472
|
-
setDismissedValue(null);
|
|
8473
|
-
}
|
|
8474
|
-
}, [value, dismissedValue]);
|
|
8475
8685
|
const handleSubmit = () => {
|
|
8476
8686
|
if (isDisabled) return;
|
|
8477
8687
|
if (status === "streaming") onAbort?.();
|
|
@@ -8499,6 +8709,8 @@ var PromptInput = ({
|
|
|
8499
8709
|
if (event.key === "ArrowUp" || event.key === "ArrowDown" || event.key === "Enter") {
|
|
8500
8710
|
return;
|
|
8501
8711
|
}
|
|
8712
|
+
} else if (hasCommands && CMDK_HIJACKED_KEYS.has(event.key)) {
|
|
8713
|
+
event.stopPropagation();
|
|
8502
8714
|
}
|
|
8503
8715
|
if (event.key === "Enter" && !event.shiftKey && !event.ctrlKey && !event.metaKey) {
|
|
8504
8716
|
event.preventDefault();
|
|
@@ -9106,44 +9318,48 @@ var AlertRoot = ({
|
|
|
9106
9318
|
variant,
|
|
9107
9319
|
argo = false,
|
|
9108
9320
|
...rest
|
|
9109
|
-
}) =>
|
|
9110
|
-
|
|
9111
|
-
|
|
9112
|
-
|
|
9113
|
-
|
|
9114
|
-
|
|
9115
|
-
|
|
9116
|
-
|
|
9117
|
-
"
|
|
9118
|
-
|
|
9119
|
-
|
|
9120
|
-
|
|
9121
|
-
|
|
9122
|
-
|
|
9123
|
-
|
|
9124
|
-
|
|
9125
|
-
|
|
9126
|
-
|
|
9127
|
-
|
|
9128
|
-
|
|
9129
|
-
|
|
9130
|
-
|
|
9131
|
-
|
|
9132
|
-
|
|
9133
|
-
|
|
9134
|
-
|
|
9135
|
-
|
|
9136
|
-
|
|
9137
|
-
|
|
9138
|
-
|
|
9139
|
-
|
|
9140
|
-
|
|
9141
|
-
|
|
9142
|
-
|
|
9143
|
-
|
|
9144
|
-
|
|
9145
|
-
|
|
9146
|
-
)
|
|
9321
|
+
}) => {
|
|
9322
|
+
const isLegacy = useIsLegacyBrand();
|
|
9323
|
+
const renderArgo = !isLegacy || argo;
|
|
9324
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
9325
|
+
"div",
|
|
9326
|
+
{
|
|
9327
|
+
...rest,
|
|
9328
|
+
ref,
|
|
9329
|
+
"data-variant": variant,
|
|
9330
|
+
"data-argo": renderArgo,
|
|
9331
|
+
className: cn(
|
|
9332
|
+
"tw-group/alert",
|
|
9333
|
+
// layout
|
|
9334
|
+
"tw-grid",
|
|
9335
|
+
"tw-grid-cols-[0_1fr_auto]",
|
|
9336
|
+
"has-[[data-slot=alert-icon]]:tw-grid-cols-[auto_1fr_auto]",
|
|
9337
|
+
"has-[[data-slot=alert-icon]]:tw-gap-x-2",
|
|
9338
|
+
// fonts
|
|
9339
|
+
"tw-text-sm",
|
|
9340
|
+
"tw-text-neutral-800",
|
|
9341
|
+
"tw-text-left",
|
|
9342
|
+
"tw-p-4",
|
|
9343
|
+
// border
|
|
9344
|
+
"tw-rounded",
|
|
9345
|
+
"data-[argo=true]:tw-rounded-lg",
|
|
9346
|
+
"tw-border",
|
|
9347
|
+
"tw-border-solid",
|
|
9348
|
+
// border variants
|
|
9349
|
+
"data-[variant=info]:tw-bg-secondary-100",
|
|
9350
|
+
"data-[variant=info]:tw-border-secondary-200",
|
|
9351
|
+
"data-[variant=warning]:tw-bg-warning-100",
|
|
9352
|
+
"data-[variant=warning]:tw-border-warning-300",
|
|
9353
|
+
"data-[variant=error]:tw-bg-error-100",
|
|
9354
|
+
"data-[variant=error]:tw-border-error-200",
|
|
9355
|
+
"data-[variant=success]:tw-bg-primary-100",
|
|
9356
|
+
"data-[variant=success]:tw-border-primary-200",
|
|
9357
|
+
className
|
|
9358
|
+
),
|
|
9359
|
+
children
|
|
9360
|
+
}
|
|
9361
|
+
);
|
|
9362
|
+
};
|
|
9147
9363
|
var AlertTitle = ({
|
|
9148
9364
|
ref,
|
|
9149
9365
|
className,
|
|
@@ -9295,6 +9511,7 @@ var ToastDismiss = ({
|
|
|
9295
9511
|
"[&_svg]:tw-m-1",
|
|
9296
9512
|
"tw-text-white",
|
|
9297
9513
|
"group-data-[variant=default]/toast:[&_svg]:tw-text-popover-foreground",
|
|
9514
|
+
"group-data-[variant=default]/toast:group-data-[argo=true]/toast:[&_svg]:tw-text-foreground",
|
|
9298
9515
|
className
|
|
9299
9516
|
),
|
|
9300
9517
|
type: "button",
|
|
@@ -9319,6 +9536,7 @@ var ToastDuration = ({
|
|
|
9319
9536
|
className: cn(
|
|
9320
9537
|
"tw-bg-white/30",
|
|
9321
9538
|
"group-data-[variant=default]/toast:tw-bg-popover-foreground/20",
|
|
9539
|
+
"group-data-[variant=default]/toast:group-data-[argo=true]/toast:tw-bg-foreground/20",
|
|
9322
9540
|
"tw-rounded-bl-lg",
|
|
9323
9541
|
"tw-mx-px",
|
|
9324
9542
|
// positioning
|
|
@@ -9356,6 +9574,7 @@ var ToastTitle = ({
|
|
|
9356
9574
|
"tw-self-center",
|
|
9357
9575
|
"tw-text-white",
|
|
9358
9576
|
"group-data-[variant=default]/toast:tw-text-popover-foreground",
|
|
9577
|
+
"group-data-[variant=default]/toast:group-data-[argo=true]/toast:tw-text-foreground",
|
|
9359
9578
|
"tw-break-words",
|
|
9360
9579
|
"tw-font-medium",
|
|
9361
9580
|
className
|
|
@@ -9415,11 +9634,14 @@ var ToastRoot = ({
|
|
|
9415
9634
|
duration = Infinity,
|
|
9416
9635
|
variant = "info",
|
|
9417
9636
|
loading = false,
|
|
9418
|
-
icon: iconProp
|
|
9637
|
+
icon: iconProp,
|
|
9638
|
+
argo
|
|
9419
9639
|
}) => {
|
|
9640
|
+
const isLegacy = useIsLegacyBrand();
|
|
9641
|
+
const renderArgo = !isLegacy || argo;
|
|
9420
9642
|
const icon = (() => {
|
|
9421
9643
|
if (loading) return /* @__PURE__ */ jsxRuntime.jsx(icons_exports.Loader2, { className: "tw-animate-spin" });
|
|
9422
|
-
if (iconProp) return
|
|
9644
|
+
if (iconProp) return iconProp;
|
|
9423
9645
|
if (variant === "default" || variant === null) return null;
|
|
9424
9646
|
return DEFAULT_VARIANT_ICON[variant];
|
|
9425
9647
|
})();
|
|
@@ -9427,35 +9649,44 @@ var ToastRoot = ({
|
|
|
9427
9649
|
sonner.toast.dismiss(id);
|
|
9428
9650
|
action?.onClick(event);
|
|
9429
9651
|
};
|
|
9430
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
9431
|
-
|
|
9432
|
-
|
|
9433
|
-
|
|
9434
|
-
|
|
9435
|
-
|
|
9436
|
-
|
|
9437
|
-
|
|
9438
|
-
|
|
9439
|
-
|
|
9440
|
-
|
|
9441
|
-
|
|
9442
|
-
|
|
9443
|
-
|
|
9444
|
-
|
|
9445
|
-
|
|
9446
|
-
|
|
9447
|
-
|
|
9448
|
-
|
|
9652
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
9653
|
+
"div",
|
|
9654
|
+
{
|
|
9655
|
+
"data-variant": variant,
|
|
9656
|
+
"data-argo": renderArgo,
|
|
9657
|
+
className: cn(
|
|
9658
|
+
variants6({ variant }),
|
|
9659
|
+
"data-[variant=default]:data-[argo=true]:tw-bg-background"
|
|
9660
|
+
),
|
|
9661
|
+
children: [
|
|
9662
|
+
icon && /* @__PURE__ */ jsxRuntime.jsx(
|
|
9663
|
+
"span",
|
|
9664
|
+
{
|
|
9665
|
+
"data-slot": "toast-icon",
|
|
9666
|
+
className: cn(
|
|
9667
|
+
"tw-inline-flex",
|
|
9668
|
+
"tw-items-center",
|
|
9669
|
+
"tw-justify-center",
|
|
9670
|
+
"tw-self-center",
|
|
9671
|
+
"tw-aspect-square",
|
|
9672
|
+
"tw-size-5",
|
|
9673
|
+
"tw-shrink-0",
|
|
9674
|
+
'[&_svg:not([class*="tw-size-"])]:tw-size-5',
|
|
9675
|
+
"tw-text-white",
|
|
9676
|
+
"group-data-[variant=default]/toast:tw-text-popover-foreground",
|
|
9677
|
+
"group-data-[variant=default]/toast:group-data-[argo=true]/toast:tw-text-foreground"
|
|
9678
|
+
),
|
|
9679
|
+
children: icon
|
|
9680
|
+
}
|
|
9449
9681
|
),
|
|
9450
|
-
children:
|
|
9451
|
-
|
|
9452
|
-
|
|
9453
|
-
|
|
9454
|
-
|
|
9455
|
-
|
|
9456
|
-
|
|
9457
|
-
|
|
9458
|
-
] });
|
|
9682
|
+
/* @__PURE__ */ jsxRuntime.jsx(ToastTitle, { children: title }),
|
|
9683
|
+
description && /* @__PURE__ */ jsxRuntime.jsx(ToastDescription, { children: description }),
|
|
9684
|
+
action && /* @__PURE__ */ jsxRuntime.jsx(ToastAction, { style: action?.actionButtonStyle, onClick: handleActionClick, children: action.label }),
|
|
9685
|
+
/* @__PURE__ */ jsxRuntime.jsx(ToastDismiss, { onClick: () => sonner.toast.dismiss(id) }),
|
|
9686
|
+
duration !== Infinity && /* @__PURE__ */ jsxRuntime.jsx(ToastDuration, { duration })
|
|
9687
|
+
]
|
|
9688
|
+
}
|
|
9689
|
+
);
|
|
9459
9690
|
};
|
|
9460
9691
|
var toast = ({
|
|
9461
9692
|
onAutoClose,
|
|
@@ -9552,20 +9783,20 @@ var Toaster = ({ gap = 12, visibleToasts = 5, ...props }) => (
|
|
|
9552
9783
|
) })
|
|
9553
9784
|
);
|
|
9554
9785
|
var EmptySearchContent = ({ children = "No results found." }) => {
|
|
9555
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "tw-px-0 tw-py-[30px] tw-text-center tw-text-sm tw-text-
|
|
9786
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "tw-px-0 tw-py-[30px] tw-text-center tw-text-sm tw-text-muted-foreground", children });
|
|
9556
9787
|
};
|
|
9557
9788
|
var CardContent = ({ children, ...rest }) => /* @__PURE__ */ jsxRuntime.jsx("div", { ...rest, children });
|
|
9558
9789
|
var CardHeader = ({ children, ...rest }) => /* @__PURE__ */ jsxRuntime.jsx("div", { ...rest, children });
|
|
9559
9790
|
var cardClassnames = classVarianceAuthority.cva(
|
|
9560
|
-
["tw-
|
|
9791
|
+
["tw-flex", "tw-flex-col", "tw-rounded-lg", "tw-gap-4", "tw-bg-surface"],
|
|
9561
9792
|
{
|
|
9562
9793
|
defaultVariants: {
|
|
9563
9794
|
padding: "small"
|
|
9564
9795
|
},
|
|
9565
9796
|
variants: {
|
|
9566
9797
|
bordered: {
|
|
9567
|
-
true: "tw-border tw-border-solid tw-border-neutral-200",
|
|
9568
|
-
false: "tw-shadow-[0_2px_6px_0_rgba(100,135,153,0.13)]"
|
|
9798
|
+
true: "tw-border tw-border-solid tw-border-neutral-200 data-[argo=true]:tw-border-border",
|
|
9799
|
+
false: "tw-shadow-[0_2px_6px_0_rgba(100,135,153,0.13)] data-[argo=true]:tw-shadow-sm"
|
|
9569
9800
|
},
|
|
9570
9801
|
padding: {
|
|
9571
9802
|
none: "tw-p-0",
|
|
@@ -9581,7 +9812,7 @@ var cardTitleClassnames = cn(
|
|
|
9581
9812
|
"tw-leading-6",
|
|
9582
9813
|
"tw-font-medium",
|
|
9583
9814
|
"tw-text-base",
|
|
9584
|
-
"tw-
|
|
9815
|
+
"tw-text-foreground"
|
|
9585
9816
|
);
|
|
9586
9817
|
var CardTitle = ({ children, className, ...rest }) => /* @__PURE__ */ jsxRuntime.jsx("h3", { className: cn(cardTitleClassnames, className), ...rest, children });
|
|
9587
9818
|
var Card = ({
|
|
@@ -9589,8 +9820,21 @@ var Card = ({
|
|
|
9589
9820
|
className,
|
|
9590
9821
|
bordered = false,
|
|
9591
9822
|
padding = "small",
|
|
9823
|
+
argo = false,
|
|
9592
9824
|
...rest
|
|
9593
|
-
}) =>
|
|
9825
|
+
}) => {
|
|
9826
|
+
const isLegacy = useIsLegacyBrand();
|
|
9827
|
+
const renderArgo = !isLegacy || argo;
|
|
9828
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
9829
|
+
"div",
|
|
9830
|
+
{
|
|
9831
|
+
...rest,
|
|
9832
|
+
"data-argo": renderArgo,
|
|
9833
|
+
className: cardClassnames({ className, bordered, padding }),
|
|
9834
|
+
children
|
|
9835
|
+
}
|
|
9836
|
+
);
|
|
9837
|
+
};
|
|
9594
9838
|
Card.Header = CardHeader;
|
|
9595
9839
|
Card.Content = CardContent;
|
|
9596
9840
|
Card.Title = CardTitle;
|
|
@@ -9777,7 +10021,7 @@ var ANIMATION_CLASS_NAME = cn(
|
|
|
9777
10021
|
"tw-relative",
|
|
9778
10022
|
"tw-overflow-hidden",
|
|
9779
10023
|
"tw-pointer-events-none",
|
|
9780
|
-
"tw-bg-
|
|
10024
|
+
"tw-bg-muted",
|
|
9781
10025
|
// before
|
|
9782
10026
|
'before:tw-content-[""]',
|
|
9783
10027
|
"before:tw-opacity-100",
|
|
@@ -9845,7 +10089,7 @@ var SkeletonList = ({
|
|
|
9845
10089
|
}
|
|
9846
10090
|
)
|
|
9847
10091
|
] });
|
|
9848
|
-
var DOT_CLASS_NAME = cn("tw-h-1.5", "tw-w-1.5", "tw-rounded-full", "tw-bg-
|
|
10092
|
+
var DOT_CLASS_NAME = cn("tw-h-1.5", "tw-w-1.5", "tw-rounded-full", "tw-bg-muted-foreground");
|
|
9849
10093
|
var DotsLoader = ({ className }) => {
|
|
9850
10094
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
9851
10095
|
"div",
|
|
@@ -9909,11 +10153,13 @@ var Collapse = ({
|
|
|
9909
10153
|
);
|
|
9910
10154
|
};
|
|
9911
10155
|
var headerVariants = classVarianceAuthority.cva(
|
|
9912
|
-
"tw-flex tw-flex-1 tw-items-center tw-gap-2 tw-rounded tw-px-4 tw-py-2.5 tw-text-sm tw-text-
|
|
10156
|
+
"tw-flex tw-flex-1 tw-items-center tw-gap-2 tw-rounded tw-px-4 tw-py-2.5 tw-text-sm tw-text-muted-foreground",
|
|
9913
10157
|
{
|
|
9914
10158
|
variants: {
|
|
9915
10159
|
variant: {
|
|
9916
|
-
default: "tw-bg-
|
|
10160
|
+
default: "tw-bg-muted",
|
|
10161
|
+
// White surface kept literal until a `card` token exists (UT-4396);
|
|
10162
|
+
// `background` is the page base, not an elevated panel surface.
|
|
9917
10163
|
white: "tw-bg-white"
|
|
9918
10164
|
},
|
|
9919
10165
|
isDisabled: {
|
|
@@ -9929,7 +10175,7 @@ var headerVariants = classVarianceAuthority.cva(
|
|
|
9929
10175
|
{
|
|
9930
10176
|
isDisabled: false,
|
|
9931
10177
|
hasEnforcedState: false,
|
|
9932
|
-
class: "tw-cursor-pointer hover:tw-text-
|
|
10178
|
+
class: "tw-cursor-pointer hover:tw-text-primary"
|
|
9933
10179
|
}
|
|
9934
10180
|
],
|
|
9935
10181
|
defaultVariants: {
|
|
@@ -9979,7 +10225,7 @@ var CollapsiblePanel = ({
|
|
|
9979
10225
|
{
|
|
9980
10226
|
open,
|
|
9981
10227
|
className: cn(
|
|
9982
|
-
"tw-rounded !tw-border !tw-border-solid !tw-border-
|
|
10228
|
+
"tw-rounded !tw-border !tw-border-solid !tw-border-border tw-bg-white",
|
|
9983
10229
|
className
|
|
9984
10230
|
),
|
|
9985
10231
|
header: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -9993,7 +10239,7 @@ var CollapsiblePanel = ({
|
|
|
9993
10239
|
onKeyUp: handleKeyUp
|
|
9994
10240
|
},
|
|
9995
10241
|
children: [
|
|
9996
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "tw-flex tw-flex-1 tw-items-center tw-gap-2 tw-py-px tw-text-sm tw-font-medium tw-text-
|
|
10242
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "tw-flex tw-flex-1 tw-items-center tw-gap-2 tw-py-px tw-text-sm tw-font-medium tw-text-foreground", children: header }),
|
|
9997
10243
|
!isDisabled && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "tw-ml-auto tw-shrink-0", children: /* @__PURE__ */ jsxRuntime.jsx(icons_exports.ChevronDown, { className: cn("tw-size-5 group-data-[state=open]:tw-rotate-180") }) })
|
|
9998
10244
|
]
|
|
9999
10245
|
}
|
|
@@ -10027,8 +10273,8 @@ var PanelWithDetails = ({
|
|
|
10027
10273
|
role: "button",
|
|
10028
10274
|
tabIndex: 0,
|
|
10029
10275
|
className: cn(
|
|
10030
|
-
"tw-flex tw-cursor-pointer tw-items-center tw-rounded-sm tw-bg-
|
|
10031
|
-
"hover:tw-text-
|
|
10276
|
+
"tw-flex tw-cursor-pointer tw-items-center tw-rounded-sm tw-bg-muted tw-px-4 tw-py-3 tw-text-sm tw-text-muted-foreground",
|
|
10277
|
+
"hover:tw-text-primary"
|
|
10032
10278
|
),
|
|
10033
10279
|
onClick: () => setIsOpen(!isOpen),
|
|
10034
10280
|
onKeyUp: handleKeyUp,
|
|
@@ -10063,35 +10309,18 @@ var AIGradientsSvg = () => /* @__PURE__ */ jsxRuntime.jsx("svg", { width: "0", h
|
|
|
10063
10309
|
] }) });
|
|
10064
10310
|
|
|
10065
10311
|
// src/components/ThemeProvider/brandToCssVars.ts
|
|
10066
|
-
var hexToRgbTriplet = (hex) => {
|
|
10067
|
-
const match = /^#([0-9a-f]{3}|[0-9a-f]{6})$/i.exec(hex.trim());
|
|
10068
|
-
if (!match) return null;
|
|
10069
|
-
let body = match[1];
|
|
10070
|
-
if (body.length === 3) {
|
|
10071
|
-
body = body.split("").map((c) => c + c).join("");
|
|
10072
|
-
}
|
|
10073
|
-
const r2 = parseInt(body.slice(0, 2), 16);
|
|
10074
|
-
const g = parseInt(body.slice(2, 4), 16);
|
|
10075
|
-
const b = parseInt(body.slice(4, 6), 16);
|
|
10076
|
-
return `${r2} ${g} ${b}`;
|
|
10077
|
-
};
|
|
10078
10312
|
var brandToCssVars = (brand) => {
|
|
10079
|
-
const vars = {
|
|
10080
|
-
|
|
10081
|
-
|
|
10082
|
-
|
|
10083
|
-
|
|
10084
|
-
|
|
10085
|
-
|
|
10086
|
-
|
|
10087
|
-
|
|
10088
|
-
|
|
10089
|
-
|
|
10090
|
-
];
|
|
10091
|
-
for (const [name, hex] of colorMap) {
|
|
10092
|
-
const triplet = hexToRgbTriplet(hex);
|
|
10093
|
-
if (triplet !== null) vars[name] = triplet;
|
|
10094
|
-
}
|
|
10313
|
+
const vars = {
|
|
10314
|
+
"--color-background": brand.colors.background,
|
|
10315
|
+
"--color-foreground": brand.colors.foreground,
|
|
10316
|
+
"--color-muted": brand.colors.muted,
|
|
10317
|
+
"--color-muted-foreground": brand.colors.mutedForeground,
|
|
10318
|
+
"--color-border": brand.colors.border,
|
|
10319
|
+
"--color-primary": brand.colors.primary,
|
|
10320
|
+
"--color-primary-foreground": brand.colors.primaryForeground,
|
|
10321
|
+
"--color-destructive": brand.colors.destructive,
|
|
10322
|
+
"--color-destructive-foreground": brand.colors.destructiveForeground
|
|
10323
|
+
};
|
|
10095
10324
|
if (brand.radii) {
|
|
10096
10325
|
vars["--radius-sm"] = brand.radii.sm;
|
|
10097
10326
|
vars["--radius-md"] = brand.radii.md;
|
|
@@ -10099,7 +10328,6 @@ var brandToCssVars = (brand) => {
|
|
|
10099
10328
|
}
|
|
10100
10329
|
return vars;
|
|
10101
10330
|
};
|
|
10102
|
-
var ThemeContext = react.createContext(null);
|
|
10103
10331
|
var ThemeProvider = ({ brand = brandRegistry.keboola, setBrand, children }) => {
|
|
10104
10332
|
react.useEffect(() => {
|
|
10105
10333
|
if (typeof document === "undefined") return;
|
|
@@ -10327,7 +10555,7 @@ var Root25 = ({
|
|
|
10327
10555
|
{
|
|
10328
10556
|
ref,
|
|
10329
10557
|
className: cn(
|
|
10330
|
-
"tw-flex tw-flex-col tw-gap-4 tw-w-full tw-mx-auto
|
|
10558
|
+
"tw-flex tw-flex-col tw-gap-4 tw-w-full tw-mx-auto",
|
|
10331
10559
|
maxWidthClass[maxWidth],
|
|
10332
10560
|
className
|
|
10333
10561
|
),
|
|
@@ -10619,14 +10847,14 @@ var PageToolbar = Object.assign(Root26, {
|
|
|
10619
10847
|
});
|
|
10620
10848
|
var resizableHandleVariants = classVarianceAuthority.cva([
|
|
10621
10849
|
// base styles
|
|
10622
|
-
"tw-bg-
|
|
10850
|
+
"tw-bg-border",
|
|
10623
10851
|
"tw-relative",
|
|
10624
10852
|
"tw-flex",
|
|
10625
10853
|
"tw-w-px",
|
|
10626
10854
|
"tw-items-center",
|
|
10627
10855
|
"tw-justify-center",
|
|
10628
10856
|
// focus styles
|
|
10629
|
-
"focus-visible:tw-ring-
|
|
10857
|
+
"focus-visible:tw-ring-primary",
|
|
10630
10858
|
"focus-visible:tw-ring-1",
|
|
10631
10859
|
"focus-visible:tw-ring-offset-1",
|
|
10632
10860
|
"focus-visible:tw-outline-hidden",
|
|
@@ -10795,8 +11023,8 @@ var SidebarContent = ({
|
|
|
10795
11023
|
"group-last/sidebar-content:after:tw-hidden",
|
|
10796
11024
|
"!tw-box-border",
|
|
10797
11025
|
{
|
|
10798
|
-
'before:tw-absolute before:tw-top-0 before:tw-left-0 before:tw-right-0 before:tw-h-px before:tw-bg-
|
|
10799
|
-
'after:tw-absolute after:tw-bottom-0 after:tw-left-0 after:tw-right-0 after:tw-h-px after:tw-bg-
|
|
11026
|
+
'before:tw-absolute before:tw-top-0 before:tw-left-0 before:tw-right-0 before:tw-h-px before:tw-bg-sidebar-border before:tw-z-10 before:tw-content-[""]': isBottom || isMiddle,
|
|
11027
|
+
'after:tw-absolute after:tw-bottom-0 after:tw-left-0 after:tw-right-0 after:tw-h-px after:tw-bg-sidebar-border after:tw-z-10 after:tw-content-[""]': isTop || isMiddle
|
|
10800
11028
|
}
|
|
10801
11029
|
),
|
|
10802
11030
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -10982,12 +11210,8 @@ var SidebarProvider = ({
|
|
|
10982
11210
|
const [isRightDragging, setIsRightDragging] = react.useState(false);
|
|
10983
11211
|
const [leftDragWidth, setLeftDragWidth] = react.useState(null);
|
|
10984
11212
|
const [rightDragWidth, setRightDragWidth] = react.useState(null);
|
|
10985
|
-
|
|
10986
|
-
|
|
10987
|
-
}, [leftWidth, leftDragWidth]);
|
|
10988
|
-
react.useEffect(() => {
|
|
10989
|
-
if (rightDragWidth !== null && rightWidth === rightDragWidth) setRightDragWidth(null);
|
|
10990
|
-
}, [rightWidth, rightDragWidth]);
|
|
11213
|
+
if (leftDragWidth !== null && leftWidth === leftDragWidth) setLeftDragWidth(null);
|
|
11214
|
+
if (rightDragWidth !== null && rightWidth === rightDragWidth) setRightDragWidth(null);
|
|
10991
11215
|
const leftState = useSidebarState({
|
|
10992
11216
|
defaultMode: defaultLeftMode,
|
|
10993
11217
|
mode: leftMode,
|
|
@@ -11218,7 +11442,7 @@ var SidebarGroupLabel = ({
|
|
|
11218
11442
|
"group-data-[state=collapsed]/sidebar:tw-opacity-0",
|
|
11219
11443
|
"tw-items-center",
|
|
11220
11444
|
"tw-flex-1",
|
|
11221
|
-
"tw-text-
|
|
11445
|
+
"tw-text-muted-foreground",
|
|
11222
11446
|
"tw-whitespace-nowrap",
|
|
11223
11447
|
// transition
|
|
11224
11448
|
"tw-transition-opacity",
|
|
@@ -11368,7 +11592,7 @@ var SidebarMenuButton = ({
|
|
|
11368
11592
|
),
|
|
11369
11593
|
tabIndex: 0,
|
|
11370
11594
|
children: [
|
|
11371
|
-
icon && /* @__PURE__ */ jsxRuntime.jsx(SidebarMenuIcon, { children:
|
|
11595
|
+
icon && /* @__PURE__ */ jsxRuntime.jsx(SidebarMenuIcon, { children: icon }),
|
|
11372
11596
|
/* @__PURE__ */ jsxRuntime.jsx(reactSlot.Slottable, { children })
|
|
11373
11597
|
]
|
|
11374
11598
|
}
|
|
@@ -11567,7 +11791,7 @@ var SidebarMenuCard = ({ children, className, icon, title, ...rest }) => {
|
|
|
11567
11791
|
),
|
|
11568
11792
|
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "tw-flex tw-flex-col tw-gap-2", children: [
|
|
11569
11793
|
/* @__PURE__ */ jsxRuntime.jsxs(Title3, { children: [
|
|
11570
|
-
/* @__PURE__ */ jsxRuntime.jsx(SidebarMenuIcon, { className: "tw-p-px", children:
|
|
11794
|
+
/* @__PURE__ */ jsxRuntime.jsx(SidebarMenuIcon, { className: "tw-p-px", children: icon }),
|
|
11571
11795
|
title
|
|
11572
11796
|
] }),
|
|
11573
11797
|
/* @__PURE__ */ jsxRuntime.jsx(Content10, { className, children })
|
|
@@ -12332,7 +12556,7 @@ var NavbarMenuButton = ({
|
|
|
12332
12556
|
const Comp = asChild ? reactSlot.Root : "button";
|
|
12333
12557
|
const isSearchVariant = variant === "search";
|
|
12334
12558
|
const isEmphasizedVariant = variant === "emphasized";
|
|
12335
|
-
const adornment = isSearchVariant ? /* @__PURE__ */ jsxRuntime.jsx(icons_exports.Search, {}) :
|
|
12559
|
+
const adornment = isSearchVariant ? /* @__PURE__ */ jsxRuntime.jsx(icons_exports.Search, {}) : icon;
|
|
12336
12560
|
const adornmentVariant = (() => {
|
|
12337
12561
|
if (isSearchVariant || variant === "icon") return "icon-button";
|
|
12338
12562
|
if (isEmphasizedVariant) return "icon-accent-emphasized";
|
|
@@ -12537,15 +12761,22 @@ Breadcrumb.Link = BreadcrumbLink;
|
|
|
12537
12761
|
Breadcrumb.Page = BreadcrumbPage;
|
|
12538
12762
|
Breadcrumb.Separator = BreadcrumbSeparator;
|
|
12539
12763
|
Breadcrumb.Ellipsis = BreadcrumbEllipsis;
|
|
12540
|
-
|
|
12541
|
-
|
|
12542
|
-
|
|
12543
|
-
|
|
12544
|
-
|
|
12545
|
-
|
|
12546
|
-
|
|
12547
|
-
|
|
12548
|
-
}
|
|
12764
|
+
|
|
12765
|
+
// src/components/Tabs/styles.ts
|
|
12766
|
+
var tabsListWrapperClass = "tw-shrink-0 tw-border-0 tw-border-b tw-border-solid tw-border-border";
|
|
12767
|
+
var tabsListClass = "tw-flex tw-gap-8 tw-shrink-0 tw-w-max";
|
|
12768
|
+
var tabsTriggerGroupClass = "tw-group/tab-trigger-group tw-flex tw-shrink-0 tw-items-center";
|
|
12769
|
+
var tabsTriggerClass = "tw-flex tw-justify-center tw-items-center tw-gap-1.5 tw-bg-transparent tw-shrink-0 tw-border-0 tw-border-b-[3px] tw-border-solid tw-border-transparent tw-pt-2.5 tw-pb-5 tw-px-0 tw-m-0 tw-font-medium tw-leading-5 tw-text-muted-foreground tw-text-base data-[state=active]:tw-text-primary data-[state=active]:tw-border-primary data-[disabled]:tw-text-muted-foreground data-[disabled]:tw-opacity-50 data-[disabled]:tw-cursor-not-allowed group-hover/tab-trigger-group:enabled:tw-text-primary group-hover/tab-trigger-group:enabled:tw-border-primary group-hover/tab-trigger-group:enabled:tw-cursor-pointer";
|
|
12770
|
+
var tabsTriggerCompactClass = "tw-text-sm tw-pb-4";
|
|
12771
|
+
var TabsList = ({ className, children, ...rest }) => /* @__PURE__ */ jsxRuntime.jsx(ScrollArea, { orientation: "horizontal", className: tabsListWrapperClass, children: /* @__PURE__ */ jsxRuntime.jsx(RadixTabs__namespace.List, { ...rest, "data-slot": "tabs-list", className: cn(tabsListClass, className), children }) });
|
|
12772
|
+
var TabsTrigger = ({ className, compact = false, ...rest }) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
12773
|
+
RadixTabs__namespace.Trigger,
|
|
12774
|
+
{
|
|
12775
|
+
"data-slot": "tabs-trigger",
|
|
12776
|
+
...rest,
|
|
12777
|
+
className: cn(tabsTriggerClass, compact && tabsTriggerCompactClass, className)
|
|
12778
|
+
}
|
|
12779
|
+
);
|
|
12549
12780
|
var Tabs2 = ({
|
|
12550
12781
|
triggers,
|
|
12551
12782
|
compact = false,
|
|
@@ -12555,66 +12786,56 @@ var Tabs2 = ({
|
|
|
12555
12786
|
rootClassName,
|
|
12556
12787
|
listClassName,
|
|
12557
12788
|
triggerClassName,
|
|
12789
|
+
triggerGroupClassName,
|
|
12558
12790
|
...rest
|
|
12559
|
-
}) =>
|
|
12560
|
-
|
|
12561
|
-
|
|
12562
|
-
|
|
12563
|
-
|
|
12564
|
-
|
|
12565
|
-
|
|
12566
|
-
|
|
12567
|
-
|
|
12568
|
-
...
|
|
12569
|
-
|
|
12570
|
-
|
|
12571
|
-
|
|
12572
|
-
|
|
12573
|
-
|
|
12574
|
-
|
|
12575
|
-
|
|
12576
|
-
|
|
12577
|
-
|
|
12578
|
-
|
|
12579
|
-
|
|
12580
|
-
|
|
12581
|
-
|
|
12582
|
-
RadixTabs__namespace.Trigger,
|
|
12583
|
-
{
|
|
12584
|
-
asChild: true,
|
|
12585
|
-
value,
|
|
12586
|
-
className: triggerClasses,
|
|
12587
|
-
...rest2,
|
|
12588
|
-
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
12589
|
-
title,
|
|
12590
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
12591
|
-
Button,
|
|
12592
|
-
{
|
|
12593
|
-
variant: "inline",
|
|
12594
|
-
size: "icon-3xs",
|
|
12595
|
-
disabled: rest2.disabled,
|
|
12596
|
-
onClick: () => onClose(value),
|
|
12597
|
-
onMouseDown: (e) => e.preventDefault(),
|
|
12598
|
-
className: "!tw-size-8 tw-opacity-0 tw-duration-200 group-hover/tab-trigger:tw-opacity-100",
|
|
12599
|
-
"aria-label": "Close tab",
|
|
12600
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(icons_exports.X, { className: "tw-size-4" })
|
|
12601
|
-
}
|
|
12602
|
-
)
|
|
12603
|
-
] })
|
|
12604
|
-
},
|
|
12605
|
-
value
|
|
12606
|
-
);
|
|
12791
|
+
}) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
12792
|
+
RadixTabs__namespace.Root,
|
|
12793
|
+
{
|
|
12794
|
+
...rest,
|
|
12795
|
+
"data-slot": "tabs-root",
|
|
12796
|
+
className: cn("tw-flex tw-flex-col tw-gap-6", rootClassName),
|
|
12797
|
+
defaultValue: defaultValue ?? triggers[0]?.value,
|
|
12798
|
+
onValueChange,
|
|
12799
|
+
children: [
|
|
12800
|
+
/* @__PURE__ */ jsxRuntime.jsx(TabsList, { className: listClassName, children: triggers.map(({ value, title, onClose, className: callerClassName, ...triggerRest }) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
12801
|
+
"div",
|
|
12802
|
+
{
|
|
12803
|
+
className: cn(tabsTriggerGroupClass, triggerGroupClassName),
|
|
12804
|
+
"data-slot": "tabs-trigger-group",
|
|
12805
|
+
children: [
|
|
12806
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
12807
|
+
TabsTrigger,
|
|
12808
|
+
{
|
|
12809
|
+
value,
|
|
12810
|
+
compact,
|
|
12811
|
+
...triggerRest,
|
|
12812
|
+
className: cn(triggerClassName, callerClassName),
|
|
12813
|
+
children: title
|
|
12607
12814
|
}
|
|
12608
|
-
|
|
12609
|
-
|
|
12610
|
-
|
|
12611
|
-
|
|
12612
|
-
|
|
12613
|
-
|
|
12614
|
-
|
|
12615
|
-
|
|
12616
|
-
|
|
12617
|
-
|
|
12815
|
+
),
|
|
12816
|
+
onClose && /* @__PURE__ */ jsxRuntime.jsx(
|
|
12817
|
+
Button,
|
|
12818
|
+
{
|
|
12819
|
+
type: "button",
|
|
12820
|
+
variant: "inline",
|
|
12821
|
+
size: "icon-3xs",
|
|
12822
|
+
disabled: triggerRest.disabled,
|
|
12823
|
+
onClick: () => onClose(value),
|
|
12824
|
+
onMouseDown: (e) => e.preventDefault(),
|
|
12825
|
+
className: "!tw-size-8 tw-opacity-0 tw-duration-200 focus-visible:tw-opacity-100 group-hover/tab-trigger-group:tw-opacity-100 group-focus-within/tab-trigger-group:tw-opacity-100",
|
|
12826
|
+
"aria-label": typeof title === "string" ? `Close ${title}` : "Close tab",
|
|
12827
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(icons_exports.X, { className: "tw-size-4" })
|
|
12828
|
+
}
|
|
12829
|
+
)
|
|
12830
|
+
]
|
|
12831
|
+
},
|
|
12832
|
+
value
|
|
12833
|
+
)) }),
|
|
12834
|
+
children
|
|
12835
|
+
]
|
|
12836
|
+
}
|
|
12837
|
+
);
|
|
12838
|
+
var TabsContent = (props) => /* @__PURE__ */ jsxRuntime.jsx(RadixTabs__namespace.Content, { "data-slot": "tabs-content", tabIndex: -1, ...props });
|
|
12618
12839
|
var StepperContext = react.createContext({
|
|
12619
12840
|
orientation: "horizontal"
|
|
12620
12841
|
});
|
|
@@ -12869,7 +13090,7 @@ var TableBody = ({
|
|
|
12869
13090
|
{
|
|
12870
13091
|
className: cn(
|
|
12871
13092
|
{
|
|
12872
|
-
"[&_tr]:tw-border-0 [&_tr]:tw-border-b-
|
|
13093
|
+
"[&_tr]:tw-border-0 [&_tr]:tw-border-b-border [&_tr]:tw-border-b [&_tr]:tw-border-solid [&_tr:last-child]:tw-border-0": withBorderSeparator
|
|
12873
13094
|
},
|
|
12874
13095
|
className
|
|
12875
13096
|
),
|
|
@@ -12913,7 +13134,7 @@ var TableHeader = ({
|
|
|
12913
13134
|
"thead",
|
|
12914
13135
|
{
|
|
12915
13136
|
className: cn(
|
|
12916
|
-
"tw-sticky tw-top-0 tw-z-10 [&_tr]:tw-bg-
|
|
13137
|
+
"tw-sticky tw-top-0 tw-z-10 [&_tr]:tw-bg-muted [&_tr]:tw-border-b [&_tr]:tw-border-border",
|
|
12917
13138
|
{ "tw-shadow-table": withShadow },
|
|
12918
13139
|
className
|
|
12919
13140
|
),
|
|
@@ -12925,7 +13146,7 @@ var TableRow = ({
|
|
|
12925
13146
|
ref,
|
|
12926
13147
|
className,
|
|
12927
13148
|
...props
|
|
12928
|
-
}) => /* @__PURE__ */ jsxRuntime.jsx("tr", { ref, className: cn("hover:tw-bg-
|
|
13149
|
+
}) => /* @__PURE__ */ jsxRuntime.jsx("tr", { ref, className: cn("hover:tw-bg-muted/50", className), ...props });
|
|
12929
13150
|
var Table = ({
|
|
12930
13151
|
borderCollapsed = true,
|
|
12931
13152
|
bordered = false,
|
|
@@ -12938,7 +13159,7 @@ var Table = ({
|
|
|
12938
13159
|
{
|
|
12939
13160
|
className: cn(
|
|
12940
13161
|
"tw-relative tw-w-full",
|
|
12941
|
-
bordered && "tw-overflow-auto tw-rounded-[10px] tw-border tw-border-solid tw-border-
|
|
13162
|
+
bordered && "tw-overflow-auto tw-rounded-[10px] tw-border tw-border-solid tw-border-border",
|
|
12942
13163
|
containerClassName
|
|
12943
13164
|
),
|
|
12944
13165
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -13005,10 +13226,10 @@ var connectorWrapper = classVarianceAuthority.cva(
|
|
|
13005
13226
|
"before:tw-h-full",
|
|
13006
13227
|
"before:group-last/timeline-item:tw-h-[--connector-line-height]",
|
|
13007
13228
|
// Solid line
|
|
13008
|
-
"before:group-data-[variant=solid]/timeline:tw-bg-
|
|
13229
|
+
"before:group-data-[variant=solid]/timeline:tw-bg-border",
|
|
13009
13230
|
// Dashed line using gradient
|
|
13010
13231
|
"before:group-data-[variant=dashed]/timeline:tw-bg-gradient-to-b",
|
|
13011
|
-
"before:group-data-[variant=dashed]/timeline:tw-from-
|
|
13232
|
+
"before:group-data-[variant=dashed]/timeline:tw-from-border",
|
|
13012
13233
|
"before:group-data-[variant=dashed]/timeline:tw-from-50%",
|
|
13013
13234
|
"before:group-data-[variant=dashed]/timeline:tw-to-transparent",
|
|
13014
13235
|
"before:group-data-[variant=dashed]/timeline:tw-to-50%",
|
|
@@ -13042,17 +13263,17 @@ var connector = classVarianceAuthority.cva(
|
|
|
13042
13263
|
variant: {
|
|
13043
13264
|
none: [],
|
|
13044
13265
|
label: [
|
|
13045
|
-
"tw-bg-
|
|
13046
|
-
"tw-text-
|
|
13266
|
+
"tw-bg-muted",
|
|
13267
|
+
"tw-text-muted-foreground",
|
|
13047
13268
|
"tw-rounded",
|
|
13048
13269
|
"tw-p-1.5",
|
|
13049
13270
|
"tw-text-nowrap",
|
|
13050
13271
|
"tw-text-xs"
|
|
13051
13272
|
],
|
|
13052
13273
|
icon: [
|
|
13053
|
-
"tw-bg-
|
|
13274
|
+
"tw-bg-background",
|
|
13054
13275
|
'[&_svg:not([class*="tw-size-"])]:tw-size-4',
|
|
13055
|
-
"[&_svg]:tw-text-
|
|
13276
|
+
"[&_svg]:tw-text-muted-foreground"
|
|
13056
13277
|
],
|
|
13057
13278
|
line: [
|
|
13058
13279
|
"tw-min-w-8",
|
|
@@ -13073,7 +13294,7 @@ var connector = classVarianceAuthority.cva(
|
|
|
13073
13294
|
// l-shape
|
|
13074
13295
|
"before:tw-border-l",
|
|
13075
13296
|
"before:tw-border-b",
|
|
13076
|
-
"before:tw-border-
|
|
13297
|
+
"before:tw-border-border",
|
|
13077
13298
|
"before:tw-rounded-bl",
|
|
13078
13299
|
// Solid or dashed
|
|
13079
13300
|
"before:group-data-[variant=dashed]/timeline:tw-border-dashed",
|
|
@@ -13393,7 +13614,7 @@ var variants11 = classVarianceAuthority.cva(
|
|
|
13393
13614
|
{
|
|
13394
13615
|
variant: "gutter",
|
|
13395
13616
|
diff: "default",
|
|
13396
|
-
className: ["tw-bg-
|
|
13617
|
+
className: ["tw-bg-muted", "tw-text-muted-foreground"]
|
|
13397
13618
|
},
|
|
13398
13619
|
{
|
|
13399
13620
|
variant: "gutter",
|
|
@@ -13408,7 +13629,7 @@ var variants11 = classVarianceAuthority.cva(
|
|
|
13408
13629
|
{
|
|
13409
13630
|
variant: "code",
|
|
13410
13631
|
diff: "default",
|
|
13411
|
-
className: ["tw-bg-
|
|
13632
|
+
className: ["tw-bg-background", "tw-text-foreground"]
|
|
13412
13633
|
},
|
|
13413
13634
|
{
|
|
13414
13635
|
variant: "code",
|
|
@@ -13432,7 +13653,7 @@ var DiffViewTh = ({ variant = "default", children, className, ...props }) => /*
|
|
|
13432
13653
|
{
|
|
13433
13654
|
...props,
|
|
13434
13655
|
className: cn(
|
|
13435
|
-
"tw-bg-
|
|
13656
|
+
"tw-bg-background",
|
|
13436
13657
|
"tw-py-3",
|
|
13437
13658
|
"tw-border-b",
|
|
13438
13659
|
{ "tw-w-14": variant === "gutter" },
|
|
@@ -13653,13 +13874,13 @@ var DiffView = ({
|
|
|
13653
13874
|
{
|
|
13654
13875
|
className: cn(
|
|
13655
13876
|
"tailwindcss-preflight",
|
|
13656
|
-
"tw-bg-
|
|
13877
|
+
"tw-bg-muted",
|
|
13657
13878
|
"tw-border",
|
|
13658
13879
|
"tw-rounded-2xl",
|
|
13659
13880
|
"tw-overflow-auto",
|
|
13660
13881
|
className
|
|
13661
13882
|
),
|
|
13662
|
-
children: /* @__PURE__ */ jsxRuntime.jsxs("table", { className: "tw-w-full tw-table-fixed tw-bg-
|
|
13883
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs("table", { className: "tw-w-full tw-table-fixed tw-bg-background", children: [
|
|
13663
13884
|
/* @__PURE__ */ jsxRuntime.jsx("thead", { className: "tw-sticky tw-top-0 tw-z-10 tw-shadow-sm", children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
|
|
13664
13885
|
/* @__PURE__ */ jsxRuntime.jsx(DiffViewTh, { variant: "gutter", children: leftTitleGutter }),
|
|
13665
13886
|
/* @__PURE__ */ jsxRuntime.jsx(DiffViewTh, { children: leftTitle }),
|
|
@@ -13676,8 +13897,8 @@ var DiffView = ({
|
|
|
13676
13897
|
className: cn(
|
|
13677
13898
|
"tw-w-full",
|
|
13678
13899
|
"tw-text-center",
|
|
13679
|
-
"tw-bg-
|
|
13680
|
-
"hover:tw-bg-
|
|
13900
|
+
"tw-bg-muted",
|
|
13901
|
+
"hover:tw-bg-accent",
|
|
13681
13902
|
"tw-underline",
|
|
13682
13903
|
"tw-p-2"
|
|
13683
13904
|
),
|
|
@@ -13857,6 +14078,8 @@ var createDiffHighlightExtension = () => {
|
|
|
13857
14078
|
var updateHighlightedLines = (view, lines, classification) => {
|
|
13858
14079
|
view.dispatch({ effects: setHighlightedLines.of({ lines, classification }) });
|
|
13859
14080
|
};
|
|
14081
|
+
var EMPTY_LINES = /* @__PURE__ */ new Set();
|
|
14082
|
+
var EMPTY_CLASSIFICATION = /* @__PURE__ */ new Map();
|
|
13860
14083
|
var MergePane = ({
|
|
13861
14084
|
value,
|
|
13862
14085
|
highlightedLines,
|
|
@@ -13866,7 +14089,8 @@ var MergePane = ({
|
|
|
13866
14089
|
header,
|
|
13867
14090
|
headerClassName,
|
|
13868
14091
|
className,
|
|
13869
|
-
onScrollDOMReady
|
|
14092
|
+
onScrollDOMReady,
|
|
14093
|
+
deleted = false
|
|
13870
14094
|
}) => {
|
|
13871
14095
|
const editorRef = react.useRef(null);
|
|
13872
14096
|
const extensions = react.useMemo(
|
|
@@ -13875,11 +14099,11 @@ var MergePane = ({
|
|
|
13875
14099
|
view.EditorView.theme({
|
|
13876
14100
|
"&.cm-editor": {
|
|
13877
14101
|
height: "100%",
|
|
13878
|
-
backgroundColor: colors3__default.default.neutral[50],
|
|
14102
|
+
backgroundColor: deleted ? colors3__default.default.error[100] : colors3__default.default.neutral[50],
|
|
13879
14103
|
outline: "none"
|
|
13880
14104
|
},
|
|
13881
14105
|
".cm-gutters": {
|
|
13882
|
-
backgroundColor: colors3__default.default.neutral[100]
|
|
14106
|
+
backgroundColor: deleted ? colors3__default.default.error[200] : colors3__default.default.neutral[100]
|
|
13883
14107
|
},
|
|
13884
14108
|
"*": { lineHeight: `${LINE_HEIGHT_PX}px` },
|
|
13885
14109
|
".cm-lineNumbers .cm-gutterElement": { padding: "0 0 0 25px" }
|
|
@@ -13892,20 +14116,27 @@ var MergePane = ({
|
|
|
13892
14116
|
}
|
|
13893
14117
|
})
|
|
13894
14118
|
],
|
|
13895
|
-
[]
|
|
14119
|
+
[deleted]
|
|
13896
14120
|
);
|
|
13897
14121
|
react.useEffect(() => {
|
|
13898
14122
|
const view = editorRef.current?.view;
|
|
13899
|
-
if (view)
|
|
13900
|
-
|
|
13901
|
-
|
|
13902
|
-
|
|
14123
|
+
if (!view) return;
|
|
14124
|
+
updateHighlightedLines(
|
|
14125
|
+
view,
|
|
14126
|
+
deleted ? EMPTY_LINES : highlightedLines,
|
|
14127
|
+
deleted ? EMPTY_CLASSIFICATION : lineClassification
|
|
14128
|
+
);
|
|
14129
|
+
}, [highlightedLines, lineClassification, deleted]);
|
|
13903
14130
|
const handleCreateEditor = react.useCallback(
|
|
13904
14131
|
(view) => {
|
|
13905
|
-
updateHighlightedLines(
|
|
14132
|
+
updateHighlightedLines(
|
|
14133
|
+
view,
|
|
14134
|
+
deleted ? EMPTY_LINES : highlightedLines,
|
|
14135
|
+
deleted ? EMPTY_CLASSIFICATION : lineClassification
|
|
14136
|
+
);
|
|
13906
14137
|
onScrollDOMReady?.(view.scrollDOM);
|
|
13907
14138
|
},
|
|
13908
|
-
[highlightedLines, lineClassification, onScrollDOMReady]
|
|
14139
|
+
[highlightedLines, lineClassification, onScrollDOMReady, deleted]
|
|
13909
14140
|
);
|
|
13910
14141
|
react.useEffect(() => {
|
|
13911
14142
|
return () => onScrollDOMReady?.(null);
|
|
@@ -13918,22 +14149,42 @@ var MergePane = ({
|
|
|
13918
14149
|
observer.observe(wrapper);
|
|
13919
14150
|
return () => observer.disconnect();
|
|
13920
14151
|
}, []);
|
|
13921
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
13922
|
-
|
|
13923
|
-
|
|
13924
|
-
|
|
13925
|
-
|
|
13926
|
-
|
|
13927
|
-
|
|
13928
|
-
|
|
13929
|
-
|
|
13930
|
-
|
|
13931
|
-
|
|
13932
|
-
|
|
13933
|
-
|
|
13934
|
-
|
|
13935
|
-
|
|
13936
|
-
|
|
14152
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
14153
|
+
"div",
|
|
14154
|
+
{
|
|
14155
|
+
className: cn(
|
|
14156
|
+
"tw-flex tw-min-w-0 tw-flex-1 tw-flex-col tw-overflow-hidden",
|
|
14157
|
+
className,
|
|
14158
|
+
deleted && "tw-border-error-300"
|
|
14159
|
+
),
|
|
14160
|
+
children: [
|
|
14161
|
+
header && /* @__PURE__ */ jsxRuntime.jsx(
|
|
14162
|
+
"div",
|
|
14163
|
+
{
|
|
14164
|
+
className: cn(
|
|
14165
|
+
"tw-px-4 tw-py-3",
|
|
14166
|
+
deleted ? "tw-border-b tw-border-error-200 tw-bg-error-100" : "tw-bg-background",
|
|
14167
|
+
headerClassName
|
|
14168
|
+
),
|
|
14169
|
+
children: header
|
|
14170
|
+
}
|
|
14171
|
+
),
|
|
14172
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "tw-flex tw-h-0 tw-flex-1 tw-flex-col [&_>div]:tw-h-full", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
14173
|
+
CodeMirror__default.default,
|
|
14174
|
+
{
|
|
14175
|
+
ref: editorRef,
|
|
14176
|
+
height: "100%",
|
|
14177
|
+
value,
|
|
14178
|
+
onChange,
|
|
14179
|
+
extensions,
|
|
14180
|
+
readOnly,
|
|
14181
|
+
onCreateEditor: handleCreateEditor,
|
|
14182
|
+
basicSetup: { lineNumbers: true, drawSelection: false }
|
|
14183
|
+
}
|
|
14184
|
+
) })
|
|
14185
|
+
]
|
|
14186
|
+
}
|
|
14187
|
+
);
|
|
13937
14188
|
};
|
|
13938
14189
|
var useScrollSync = () => {
|
|
13939
14190
|
const scrollersRef = react.useRef([]);
|
|
@@ -13994,6 +14245,8 @@ var useScrollSync = () => {
|
|
|
13994
14245
|
}, []);
|
|
13995
14246
|
return { registerScroller, registerFollower };
|
|
13996
14247
|
};
|
|
14248
|
+
var EMPTY_LINES2 = /* @__PURE__ */ new Set();
|
|
14249
|
+
var EMPTY_CLASSIFICATION2 = /* @__PURE__ */ new Map();
|
|
13997
14250
|
var MergeEditor = ({
|
|
13998
14251
|
mergeValue,
|
|
13999
14252
|
handleMergeChange,
|
|
@@ -14017,14 +14270,17 @@ var MergeEditor = ({
|
|
|
14017
14270
|
middleClassName,
|
|
14018
14271
|
rightHeader,
|
|
14019
14272
|
className,
|
|
14020
|
-
argo
|
|
14273
|
+
argo,
|
|
14274
|
+
leftDeleted = false,
|
|
14275
|
+
rightDeleted = false
|
|
14021
14276
|
}) => {
|
|
14022
14277
|
const { registerScroller, registerFollower } = useScrollSync();
|
|
14278
|
+
const anySideDeleted = leftDeleted || rightDeleted;
|
|
14023
14279
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
14024
14280
|
"div",
|
|
14025
14281
|
{
|
|
14026
14282
|
className: cn(
|
|
14027
|
-
"tw-flex tw-h-full tw-min-h-0 tw-overflow-hidden tw-bg-
|
|
14283
|
+
"tw-flex tw-h-full tw-min-h-0 tw-overflow-hidden tw-bg-background tw-gap-3",
|
|
14028
14284
|
className
|
|
14029
14285
|
),
|
|
14030
14286
|
children: [
|
|
@@ -14036,14 +14292,15 @@ var MergeEditor = ({
|
|
|
14036
14292
|
lineClassification: leftClassification,
|
|
14037
14293
|
readOnly: true,
|
|
14038
14294
|
header: leftHeader,
|
|
14039
|
-
className: "tw-rounded-r-lg tw-border tw-border-
|
|
14040
|
-
onScrollDOMReady: registerScroller(0)
|
|
14295
|
+
className: "tw-rounded-r-lg tw-border tw-border-border",
|
|
14296
|
+
onScrollDOMReady: registerScroller(0),
|
|
14297
|
+
deleted: leftDeleted
|
|
14041
14298
|
}
|
|
14042
14299
|
),
|
|
14043
14300
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
14044
14301
|
AcceptControls,
|
|
14045
14302
|
{
|
|
14046
|
-
conflicts: leftConflicts,
|
|
14303
|
+
conflicts: leftDeleted ? [] : leftConflicts,
|
|
14047
14304
|
side: "left",
|
|
14048
14305
|
onAccept: acceptLeft,
|
|
14049
14306
|
onDismiss: dismissLeft,
|
|
@@ -14055,19 +14312,19 @@ var MergeEditor = ({
|
|
|
14055
14312
|
MergePane,
|
|
14056
14313
|
{
|
|
14057
14314
|
value: mergeValue,
|
|
14058
|
-
highlightedLines: mergeHighlightedLines,
|
|
14059
|
-
lineClassification: mergeClassification,
|
|
14315
|
+
highlightedLines: anySideDeleted ? EMPTY_LINES2 : mergeHighlightedLines,
|
|
14316
|
+
lineClassification: anySideDeleted ? EMPTY_CLASSIFICATION2 : mergeClassification,
|
|
14060
14317
|
onChange: handleMergeChange,
|
|
14061
14318
|
header: middleHeader,
|
|
14062
14319
|
headerClassName: middleHeaderClassName,
|
|
14063
|
-
className: cn("tw-border tw-border-
|
|
14320
|
+
className: cn("tw-border tw-border-border tw-rounded-lg", middleClassName),
|
|
14064
14321
|
onScrollDOMReady: registerScroller(1)
|
|
14065
14322
|
}
|
|
14066
14323
|
),
|
|
14067
14324
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
14068
14325
|
AcceptControls,
|
|
14069
14326
|
{
|
|
14070
|
-
conflicts: rightConflicts,
|
|
14327
|
+
conflicts: rightDeleted ? [] : rightConflicts,
|
|
14071
14328
|
side: "right",
|
|
14072
14329
|
onAccept: acceptRight,
|
|
14073
14330
|
onDismiss: dismissRight,
|
|
@@ -14083,8 +14340,9 @@ var MergeEditor = ({
|
|
|
14083
14340
|
lineClassification: rightClassification,
|
|
14084
14341
|
readOnly: true,
|
|
14085
14342
|
header: rightHeader,
|
|
14086
|
-
className: "tw-rounded-l-lg tw-border tw-border-
|
|
14087
|
-
onScrollDOMReady: registerScroller(2)
|
|
14343
|
+
className: "tw-rounded-l-lg tw-border tw-border-border",
|
|
14344
|
+
onScrollDOMReady: registerScroller(2),
|
|
14345
|
+
deleted: rightDeleted
|
|
14088
14346
|
}
|
|
14089
14347
|
)
|
|
14090
14348
|
]
|
|
@@ -14092,13 +14350,13 @@ var MergeEditor = ({
|
|
|
14092
14350
|
);
|
|
14093
14351
|
};
|
|
14094
14352
|
var PaneHeader = ({ label, sublabel }) => /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
14095
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "tw-m-0 tw-text-sm tw-font-medium tw-text-
|
|
14096
|
-
sublabel && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "tw-m-0 tw-text-xs tw-text-
|
|
14353
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "tw-m-0 tw-text-sm tw-font-medium tw-text-foreground", children: label }),
|
|
14354
|
+
sublabel && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "tw-m-0 tw-text-xs tw-text-muted-foreground", children: sublabel })
|
|
14097
14355
|
] });
|
|
14098
14356
|
var ConflictStatusIndicator = ({ remainingConflicts, remainingSafeChanges }) => {
|
|
14099
14357
|
const hasConflicts = remainingConflicts > 0;
|
|
14100
14358
|
const allDone = !hasConflicts && remainingSafeChanges === 0;
|
|
14101
|
-
const colorClass = hasConflicts ? "tw-text-warning-500" : allDone ? "tw-text-primary-500" : "tw-text-
|
|
14359
|
+
const colorClass = hasConflicts ? "tw-text-warning-500" : allDone ? "tw-text-primary-500" : "tw-text-muted-foreground";
|
|
14102
14360
|
const parts = [];
|
|
14103
14361
|
if (hasConflicts) {
|
|
14104
14362
|
parts.push(`${remainingConflicts} conflict${remainingConflicts !== 1 ? "s" : ""}`);
|
|
@@ -14918,6 +15176,10 @@ var MIN_SCALE = 0.5;
|
|
|
14918
15176
|
var MAX_SCALE = 3;
|
|
14919
15177
|
var ZOOM_STEP = 0.1;
|
|
14920
15178
|
var ZoomableSvg = ({ html, copyText, className }) => {
|
|
15179
|
+
const safeHtml = react.useMemo(
|
|
15180
|
+
() => DOMPurify__default.default.sanitize(html, { USE_PROFILES: { svg: true, svgFilters: true } }),
|
|
15181
|
+
[html]
|
|
15182
|
+
);
|
|
14921
15183
|
const containerRef = react.useRef(null);
|
|
14922
15184
|
const [scale, setScale] = react.useState(1);
|
|
14923
15185
|
const [translate, setTranslate] = react.useState({ x: 0, y: 0 });
|
|
@@ -15013,7 +15275,7 @@ var ZoomableSvg = ({ html, copyText, className }) => {
|
|
|
15013
15275
|
isFullscreen && "tw-h-full [&>svg]:tw-h-full"
|
|
15014
15276
|
),
|
|
15015
15277
|
style: { transform: `translate(${translate.x}px, ${translate.y}px) scale(${scale})` },
|
|
15016
|
-
dangerouslySetInnerHTML: { __html:
|
|
15278
|
+
dangerouslySetInnerHTML: { __html: safeHtml }
|
|
15017
15279
|
}
|
|
15018
15280
|
)
|
|
15019
15281
|
}
|
|
@@ -15066,7 +15328,7 @@ var ZoomableSvg = ({ html, copyText, className }) => {
|
|
|
15066
15328
|
"div",
|
|
15067
15329
|
{
|
|
15068
15330
|
role: "presentation",
|
|
15069
|
-
className: "tw-fixed tw-inset-0 tw-z-[1060] tw-bg-
|
|
15331
|
+
className: "tw-fixed tw-inset-0 tw-z-[1060] tw-bg-muted tw-p-4",
|
|
15070
15332
|
onClick: stopPropagation2,
|
|
15071
15333
|
children: diagramContent
|
|
15072
15334
|
}
|
|
@@ -15076,7 +15338,7 @@ var ZoomableSvg = ({ html, copyText, className }) => {
|
|
|
15076
15338
|
"div",
|
|
15077
15339
|
{
|
|
15078
15340
|
className: cn(
|
|
15079
|
-
"tw-overflow-hidden tw-rounded-md tw-border tw-border-
|
|
15341
|
+
"tw-overflow-hidden tw-rounded-md tw-border tw-border-border tw-bg-muted",
|
|
15080
15342
|
className
|
|
15081
15343
|
),
|
|
15082
15344
|
children: diagramContent
|
|
@@ -15085,7 +15347,7 @@ var ZoomableSvg = ({ html, copyText, className }) => {
|
|
|
15085
15347
|
};
|
|
15086
15348
|
var ButtonToolbar = ({ value, children }) => {
|
|
15087
15349
|
if (!value && !children) return null;
|
|
15088
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "tw-pointer-events-auto tw-ml-auto tw-mr-4 tw-flex tw-w-fit tw-gap-1 tw-overflow-visible tw-rounded-lg tw-border tw-border-solid tw-border-
|
|
15350
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "tw-pointer-events-auto tw-ml-auto tw-mr-4 tw-flex tw-w-fit tw-gap-1 tw-overflow-visible tw-rounded-lg tw-border tw-border-solid tw-border-border !tw-bg-background tw-p-[3px] tw-shadow", children: [
|
|
15089
15351
|
!!value && /* @__PURE__ */ jsxRuntime.jsx(ClipboardButton, { size: "icon-sm", variant: "invisible", text: value }),
|
|
15090
15352
|
children
|
|
15091
15353
|
] });
|
|
@@ -15239,7 +15501,7 @@ var CodeEditor = ({
|
|
|
15239
15501
|
"div",
|
|
15240
15502
|
{
|
|
15241
15503
|
className: cn(
|
|
15242
|
-
"tw-relative tw-flex tw-min-h-0 tw-flex-col [&_.cm-mergeViewEditor]:tw-overflow-visible [&_.cm-mergeViewEditors]:tw-h-full [&_.cm-mergeView]:tw-h-full [&_>div]:tw-h-full [&_>div]:tw-overflow-auto [&_>div]:tw-bg-
|
|
15504
|
+
"tw-relative tw-flex tw-min-h-0 tw-flex-col [&_.cm-mergeViewEditor]:tw-overflow-visible [&_.cm-mergeViewEditors]:tw-h-full [&_.cm-mergeView]:tw-h-full [&_>div]:tw-h-full [&_>div]:tw-overflow-auto [&_>div]:tw-bg-background",
|
|
15243
15505
|
{ "tw-mt-5": !!renderAdditionalButtons },
|
|
15244
15506
|
className
|
|
15245
15507
|
),
|
|
@@ -15833,26 +16095,6 @@ Object.defineProperty(exports, "Slot", {
|
|
|
15833
16095
|
enumerable: true,
|
|
15834
16096
|
get: function () { return reactSlot.Slot; }
|
|
15835
16097
|
});
|
|
15836
|
-
Object.defineProperty(exports, "defaultFilter", {
|
|
15837
|
-
enumerable: true,
|
|
15838
|
-
get: function () { return cmdk.defaultFilter; }
|
|
15839
|
-
});
|
|
15840
|
-
Object.defineProperty(exports, "useCommandState", {
|
|
15841
|
-
enumerable: true,
|
|
15842
|
-
get: function () { return cmdk.useCommandState; }
|
|
15843
|
-
});
|
|
15844
|
-
Object.defineProperty(exports, "REGEXP_ONLY_CHARS", {
|
|
15845
|
-
enumerable: true,
|
|
15846
|
-
get: function () { return inputOtp.REGEXP_ONLY_CHARS; }
|
|
15847
|
-
});
|
|
15848
|
-
Object.defineProperty(exports, "REGEXP_ONLY_DIGITS", {
|
|
15849
|
-
enumerable: true,
|
|
15850
|
-
get: function () { return inputOtp.REGEXP_ONLY_DIGITS; }
|
|
15851
|
-
});
|
|
15852
|
-
Object.defineProperty(exports, "REGEXP_ONLY_DIGITS_AND_CHARS", {
|
|
15853
|
-
enumerable: true,
|
|
15854
|
-
get: function () { return inputOtp.REGEXP_ONLY_DIGITS_AND_CHARS; }
|
|
15855
|
-
});
|
|
15856
16098
|
Object.defineProperty(exports, "brandSchema", {
|
|
15857
16099
|
enumerable: true,
|
|
15858
16100
|
get: function () { return brandRegistry.brandSchema; }
|
|
@@ -15877,6 +16119,26 @@ Object.defineProperty(exports, "keboolaLegacy", {
|
|
|
15877
16119
|
enumerable: true,
|
|
15878
16120
|
get: function () { return brandRegistry.keboolaLegacy; }
|
|
15879
16121
|
});
|
|
16122
|
+
Object.defineProperty(exports, "defaultFilter", {
|
|
16123
|
+
enumerable: true,
|
|
16124
|
+
get: function () { return cmdk.defaultFilter; }
|
|
16125
|
+
});
|
|
16126
|
+
Object.defineProperty(exports, "useCommandState", {
|
|
16127
|
+
enumerable: true,
|
|
16128
|
+
get: function () { return cmdk.useCommandState; }
|
|
16129
|
+
});
|
|
16130
|
+
Object.defineProperty(exports, "REGEXP_ONLY_CHARS", {
|
|
16131
|
+
enumerable: true,
|
|
16132
|
+
get: function () { return inputOtp.REGEXP_ONLY_CHARS; }
|
|
16133
|
+
});
|
|
16134
|
+
Object.defineProperty(exports, "REGEXP_ONLY_DIGITS", {
|
|
16135
|
+
enumerable: true,
|
|
16136
|
+
get: function () { return inputOtp.REGEXP_ONLY_DIGITS; }
|
|
16137
|
+
});
|
|
16138
|
+
Object.defineProperty(exports, "REGEXP_ONLY_DIGITS_AND_CHARS", {
|
|
16139
|
+
enumerable: true,
|
|
16140
|
+
get: function () { return inputOtp.REGEXP_ONLY_DIGITS_AND_CHARS; }
|
|
16141
|
+
});
|
|
15880
16142
|
exports.Alert = Alert;
|
|
15881
16143
|
exports.AnswerSummary = AnswerSummary;
|
|
15882
16144
|
exports.AppShell = AppShell;
|
|
@@ -16007,13 +16269,13 @@ exports.kbdVariants = kbdVariants;
|
|
|
16007
16269
|
exports.keys = keys;
|
|
16008
16270
|
exports.mergeRefs = mergeRefs;
|
|
16009
16271
|
exports.resolveStorybookBrand = resolveStorybookBrand;
|
|
16010
|
-
exports.setLegacyIconRenderer = setLegacyIconRenderer;
|
|
16011
16272
|
exports.setServerFieldErrors = setServerFieldErrors;
|
|
16012
16273
|
exports.themeToolbarBrands = themeToolbarBrands;
|
|
16013
16274
|
exports.toast = toast;
|
|
16014
16275
|
exports.useAppForm = useAppForm;
|
|
16015
16276
|
exports.useAutosizeInput = useAutosizeInput;
|
|
16016
16277
|
exports.useInputOtpContext = useInputOtpContext;
|
|
16278
|
+
exports.useIsLegacyBrand = useIsLegacyBrand;
|
|
16017
16279
|
exports.useMergeDiff = useMergeDiff;
|
|
16018
16280
|
exports.useNotification = useNotification;
|
|
16019
16281
|
exports.useScrollbarPosition = useScrollbarPosition;
|