@maxsteinwender/sort-ui 1.2.0 → 1.4.1
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 +4 -4
- package/dist/index.d.mts +118 -29
- package/dist/index.d.ts +118 -29
- package/dist/index.js +1102 -433
- package/dist/index.mjs +1091 -434
- package/dist/styles.css +1237 -303
- package/dist/tailwind-preset.js +4 -4
- package/dist/tailwind-preset.mjs +4 -4
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import * as
|
|
2
|
+
import * as React80 from 'react';
|
|
3
3
|
import * as AccordionPrimitive from '@radix-ui/react-accordion';
|
|
4
4
|
import { cva } from 'class-variance-authority';
|
|
5
5
|
import { clsx } from 'clsx';
|
|
6
6
|
import { twMerge } from 'tailwind-merge';
|
|
7
7
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
8
8
|
import * as AlertDialogPrimitive from '@radix-ui/react-alert-dialog';
|
|
9
|
-
import { Slot } from '@radix-ui/react-slot';
|
|
9
|
+
import { Slot, Slottable } from '@radix-ui/react-slot';
|
|
10
10
|
import * as AvatarPrimitive from '@radix-ui/react-avatar';
|
|
11
11
|
import { getDefaultClassNames, DayPicker } from 'react-day-picker';
|
|
12
12
|
import * as RechartsPrimitive from 'recharts';
|
|
@@ -118,7 +118,7 @@ var accordionItemVariants = cva(
|
|
|
118
118
|
}
|
|
119
119
|
}
|
|
120
120
|
);
|
|
121
|
-
var AccordionItem =
|
|
121
|
+
var AccordionItem = React80.forwardRef((_a, ref) => {
|
|
122
122
|
var _b = _a, { className, variant } = _b, props = __objRest(_b, ["className", "variant"]);
|
|
123
123
|
return /* @__PURE__ */ jsx(
|
|
124
124
|
AccordionPrimitive.Item,
|
|
@@ -129,7 +129,7 @@ var AccordionItem = React78.forwardRef((_a, ref) => {
|
|
|
129
129
|
);
|
|
130
130
|
});
|
|
131
131
|
AccordionItem.displayName = "AccordionItem";
|
|
132
|
-
var AccordionTrigger =
|
|
132
|
+
var AccordionTrigger = React80.forwardRef((_a, ref) => {
|
|
133
133
|
var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
|
|
134
134
|
return /* @__PURE__ */ jsx(AccordionPrimitive.Header, { className: "flex", children: /* @__PURE__ */ jsxs(
|
|
135
135
|
AccordionPrimitive.Trigger,
|
|
@@ -151,7 +151,7 @@ var AccordionTrigger = React78.forwardRef((_a, ref) => {
|
|
|
151
151
|
) });
|
|
152
152
|
});
|
|
153
153
|
AccordionTrigger.displayName = AccordionPrimitive.Trigger.displayName;
|
|
154
|
-
var AccordionContent =
|
|
154
|
+
var AccordionContent = React80.forwardRef((_a, ref) => {
|
|
155
155
|
var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
|
|
156
156
|
return /* @__PURE__ */ jsx(
|
|
157
157
|
AccordionPrimitive.Content,
|
|
@@ -196,7 +196,7 @@ var alertVariants = cva(
|
|
|
196
196
|
}
|
|
197
197
|
}
|
|
198
198
|
);
|
|
199
|
-
var Alert =
|
|
199
|
+
var Alert = React80.forwardRef((_a, ref) => {
|
|
200
200
|
var _b = _a, { className, variant } = _b, props = __objRest(_b, ["className", "variant"]);
|
|
201
201
|
return /* @__PURE__ */ jsx(
|
|
202
202
|
"div",
|
|
@@ -208,7 +208,7 @@ var Alert = React78.forwardRef((_a, ref) => {
|
|
|
208
208
|
);
|
|
209
209
|
});
|
|
210
210
|
Alert.displayName = "Alert";
|
|
211
|
-
var AlertTitle =
|
|
211
|
+
var AlertTitle = React80.forwardRef((_a, ref) => {
|
|
212
212
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
213
213
|
return /* @__PURE__ */ jsx(
|
|
214
214
|
"h5",
|
|
@@ -219,7 +219,7 @@ var AlertTitle = React78.forwardRef((_a, ref) => {
|
|
|
219
219
|
);
|
|
220
220
|
});
|
|
221
221
|
AlertTitle.displayName = "AlertTitle";
|
|
222
|
-
var AlertDescription =
|
|
222
|
+
var AlertDescription = React80.forwardRef((_a, ref) => {
|
|
223
223
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
224
224
|
return /* @__PURE__ */ jsx(
|
|
225
225
|
"div",
|
|
@@ -231,8 +231,8 @@ var AlertDescription = React78.forwardRef((_a, ref) => {
|
|
|
231
231
|
});
|
|
232
232
|
AlertDescription.displayName = "AlertDescription";
|
|
233
233
|
function useDevWarnIconOnlyAriaLabel(isIconOnly, ariaLabel, ariaLabelledBy, componentName) {
|
|
234
|
-
const warnedRef =
|
|
235
|
-
|
|
234
|
+
const warnedRef = React80.useRef(false);
|
|
235
|
+
React80.useEffect(() => {
|
|
236
236
|
if (process.env.NODE_ENV === "production") return;
|
|
237
237
|
if (warnedRef.current) return;
|
|
238
238
|
if (!isIconOnly) return;
|
|
@@ -250,8 +250,9 @@ var buttonVariants = cva(
|
|
|
250
250
|
{
|
|
251
251
|
variants: {
|
|
252
252
|
variant: {
|
|
253
|
-
// Primary — Sort UI: bg/state/primary, text/
|
|
254
|
-
|
|
253
|
+
// Primary — Sort UI: bg/state/primary, text/on-primary, icon/on-primary
|
|
254
|
+
// (on-primary is theme-aware: white everywhere except Neutral Violet Dark, where the button inverts to near-white and needs dark text)
|
|
255
|
+
default: "bg-sui-bg-state-primary text-sui-text-on-primary [text-shadow:var(--shadow-text)] [&_i]:text-icon-on-primary [&_i]:[text-shadow:none] [&_svg]:text-icon-on-primary [&_svg]:[text-shadow:none] shadow-button-default active:shadow-button-press [@media(hover:hover)]:hover:bg-sui-bg-state-primary-hover active:bg-sui-bg-state-primary-press disabled:bg-sui-bg-state-disabled disabled:[text-shadow:none]",
|
|
255
256
|
// Soft — Sort UI: bg/state/soft, text/subtle, icon/default-muted
|
|
256
257
|
secondary: "bg-sui-bg-state-soft text-sui-text-subtle [&_i]:text-icon-default-muted [&_svg]:text-icon-default-muted [@media(hover:hover)]:hover:bg-sui-bg-state-soft-hover active:bg-sui-bg-state-soft-press disabled:bg-sui-bg-state-disabled",
|
|
257
258
|
// Secondary — Sort UI: bg/state/secondary, border/darker, text/default, icon/default-muted
|
|
@@ -306,6 +307,10 @@ var buttonBadgeVariants = cva(
|
|
|
306
307
|
variants: {
|
|
307
308
|
color: {
|
|
308
309
|
inverse: "bg-[rgba(255,255,255,0.1)] border-[rgba(255,255,255,0.2)] text-sui-text-white-default group-disabled:bg-transparent group-disabled:border-transparent group-disabled:text-sui-text-hint",
|
|
310
|
+
// Same visual treatment as `inverse`, but theme-aware — used on the Primary
|
|
311
|
+
// (default) button only, since that's the one that inverts in Neutral Violet Dark.
|
|
312
|
+
// Destructive keeps `inverse` because its red background never inverts.
|
|
313
|
+
"on-primary": "bg-[var(--overlay-on-primary)] border-[var(--overlay-on-primary-border)] text-sui-text-on-primary group-disabled:bg-transparent group-disabled:border-transparent group-disabled:text-sui-text-hint",
|
|
309
314
|
neutral: "bg-transparent border-sui-border-default text-sui-text-muted group-disabled:text-sui-text-hint"
|
|
310
315
|
},
|
|
311
316
|
badgeSize: {
|
|
@@ -320,7 +325,7 @@ var buttonBadgeVariants = cva(
|
|
|
320
325
|
}
|
|
321
326
|
);
|
|
322
327
|
var badgeColorMap = {
|
|
323
|
-
default: "
|
|
328
|
+
default: "on-primary",
|
|
324
329
|
destructive: "inverse",
|
|
325
330
|
secondary: "neutral",
|
|
326
331
|
outline: "neutral",
|
|
@@ -346,7 +351,7 @@ var loadingBgMap = {
|
|
|
346
351
|
"ghost-muted": "bg-sui-bg-state-ghost-loading"
|
|
347
352
|
};
|
|
348
353
|
var loadingSpinnerColorMap = {
|
|
349
|
-
default: "text-icon-
|
|
354
|
+
default: "text-icon-on-primary",
|
|
350
355
|
destructive: "text-icon-white-default",
|
|
351
356
|
outline: "text-icon-default-muted",
|
|
352
357
|
secondary: "text-icon-default-muted",
|
|
@@ -354,7 +359,7 @@ var loadingSpinnerColorMap = {
|
|
|
354
359
|
"ghost-muted": "text-icon-default-muted"
|
|
355
360
|
};
|
|
356
361
|
var loadingTextColorMap = {
|
|
357
|
-
default: "text-sui-text-
|
|
362
|
+
default: "text-sui-text-on-primary",
|
|
358
363
|
destructive: "text-sui-text-white-default",
|
|
359
364
|
outline: "text-sui-text-muted",
|
|
360
365
|
secondary: "text-sui-text-muted",
|
|
@@ -362,7 +367,7 @@ var loadingTextColorMap = {
|
|
|
362
367
|
"ghost-muted": "text-sui-text-muted"
|
|
363
368
|
};
|
|
364
369
|
var loadingShadowVariants = /* @__PURE__ */ new Set(["default", "outline", "destructive"]);
|
|
365
|
-
var Button =
|
|
370
|
+
var Button = React80.forwardRef(
|
|
366
371
|
(_a, ref) => {
|
|
367
372
|
var _b = _a, { className, variant, size, shape, iconOnly, loading, leadIcon: _leadIcon, tailIcon: _tailIcon, badgeLeft: _badgeLeft, badgeRight: _badgeRight, asChild = false, children, showSeparator: _showSeparator } = _b, props = __objRest(_b, ["className", "variant", "size", "shape", "iconOnly", "loading", "leadIcon", "tailIcon", "badgeLeft", "badgeRight", "asChild", "children", "showSeparator"]);
|
|
368
373
|
const Comp = asChild ? Slot : "button";
|
|
@@ -433,7 +438,7 @@ Button.displayName = "Button";
|
|
|
433
438
|
var AlertDialog = AlertDialogPrimitive.Root;
|
|
434
439
|
var AlertDialogTrigger = AlertDialogPrimitive.Trigger;
|
|
435
440
|
var AlertDialogPortal = AlertDialogPrimitive.Portal;
|
|
436
|
-
var AlertDialogOverlay =
|
|
441
|
+
var AlertDialogOverlay = React80.forwardRef((_a, ref) => {
|
|
437
442
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
438
443
|
return /* @__PURE__ */ jsx(
|
|
439
444
|
AlertDialogPrimitive.Overlay,
|
|
@@ -448,7 +453,7 @@ var AlertDialogOverlay = React78.forwardRef((_a, ref) => {
|
|
|
448
453
|
);
|
|
449
454
|
});
|
|
450
455
|
AlertDialogOverlay.displayName = AlertDialogPrimitive.Overlay.displayName;
|
|
451
|
-
var AlertDialogContent =
|
|
456
|
+
var AlertDialogContent = React80.forwardRef((_a, ref) => {
|
|
452
457
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
453
458
|
return /* @__PURE__ */ jsxs(AlertDialogPortal, { children: [
|
|
454
459
|
/* @__PURE__ */ jsx(AlertDialogOverlay, {}),
|
|
@@ -499,7 +504,7 @@ var AlertDialogFooter = (_a) => {
|
|
|
499
504
|
);
|
|
500
505
|
};
|
|
501
506
|
AlertDialogFooter.displayName = "AlertDialogFooter";
|
|
502
|
-
var AlertDialogTitle =
|
|
507
|
+
var AlertDialogTitle = React80.forwardRef((_a, ref) => {
|
|
503
508
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
504
509
|
return /* @__PURE__ */ jsx(
|
|
505
510
|
AlertDialogPrimitive.Title,
|
|
@@ -510,7 +515,7 @@ var AlertDialogTitle = React78.forwardRef((_a, ref) => {
|
|
|
510
515
|
);
|
|
511
516
|
});
|
|
512
517
|
AlertDialogTitle.displayName = AlertDialogPrimitive.Title.displayName;
|
|
513
|
-
var AlertDialogDescription =
|
|
518
|
+
var AlertDialogDescription = React80.forwardRef((_a, ref) => {
|
|
514
519
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
515
520
|
return /* @__PURE__ */ jsx(
|
|
516
521
|
AlertDialogPrimitive.Description,
|
|
@@ -521,7 +526,7 @@ var AlertDialogDescription = React78.forwardRef((_a, ref) => {
|
|
|
521
526
|
);
|
|
522
527
|
});
|
|
523
528
|
AlertDialogDescription.displayName = AlertDialogPrimitive.Description.displayName;
|
|
524
|
-
var AlertDialogAction =
|
|
529
|
+
var AlertDialogAction = React80.forwardRef((_a, ref) => {
|
|
525
530
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
526
531
|
return /* @__PURE__ */ jsx(
|
|
527
532
|
AlertDialogPrimitive.Action,
|
|
@@ -532,7 +537,7 @@ var AlertDialogAction = React78.forwardRef((_a, ref) => {
|
|
|
532
537
|
);
|
|
533
538
|
});
|
|
534
539
|
AlertDialogAction.displayName = AlertDialogPrimitive.Action.displayName;
|
|
535
|
-
var AlertDialogCancel =
|
|
540
|
+
var AlertDialogCancel = React80.forwardRef((_a, ref) => {
|
|
536
541
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
537
542
|
return /* @__PURE__ */ jsx(
|
|
538
543
|
AlertDialogPrimitive.Cancel,
|
|
@@ -547,6 +552,228 @@ var AlertDialogCancel = React78.forwardRef((_a, ref) => {
|
|
|
547
552
|
);
|
|
548
553
|
});
|
|
549
554
|
AlertDialogCancel.displayName = AlertDialogPrimitive.Cancel.displayName;
|
|
555
|
+
var attachmentVariants = cva(
|
|
556
|
+
"relative flex overflow-hidden border rounded-lg bg-sui-bg-card shadow-card",
|
|
557
|
+
{
|
|
558
|
+
variants: {
|
|
559
|
+
size: {
|
|
560
|
+
default: "gap-3 p-3",
|
|
561
|
+
sm: "gap-2 p-2.5",
|
|
562
|
+
xs: "gap-1.5 p-2"
|
|
563
|
+
},
|
|
564
|
+
orientation: {
|
|
565
|
+
horizontal: "flex-row items-center",
|
|
566
|
+
vertical: "flex-col"
|
|
567
|
+
},
|
|
568
|
+
state: {
|
|
569
|
+
idle: "border-sui-border-default",
|
|
570
|
+
uploading: "border-sui-border-default",
|
|
571
|
+
processing: "border-sui-border-default",
|
|
572
|
+
error: "border-sui-border-destructive",
|
|
573
|
+
done: "border-sui-border-default"
|
|
574
|
+
}
|
|
575
|
+
},
|
|
576
|
+
defaultVariants: {
|
|
577
|
+
size: "default",
|
|
578
|
+
orientation: "horizontal",
|
|
579
|
+
state: "done"
|
|
580
|
+
}
|
|
581
|
+
}
|
|
582
|
+
);
|
|
583
|
+
var AttachmentContext = React80.createContext({
|
|
584
|
+
size: "default",
|
|
585
|
+
state: "done"
|
|
586
|
+
});
|
|
587
|
+
var Attachment = React80.forwardRef(
|
|
588
|
+
(_a, ref) => {
|
|
589
|
+
var _b = _a, {
|
|
590
|
+
className,
|
|
591
|
+
size = "default",
|
|
592
|
+
orientation = "horizontal",
|
|
593
|
+
state = "done"
|
|
594
|
+
} = _b, props = __objRest(_b, [
|
|
595
|
+
"className",
|
|
596
|
+
"size",
|
|
597
|
+
"orientation",
|
|
598
|
+
"state"
|
|
599
|
+
]);
|
|
600
|
+
const resolvedSize = size != null ? size : "default";
|
|
601
|
+
const resolvedState = state != null ? state : "done";
|
|
602
|
+
return /* @__PURE__ */ jsx(AttachmentContext.Provider, { value: { size: resolvedSize, state: resolvedState }, children: /* @__PURE__ */ jsx(
|
|
603
|
+
"div",
|
|
604
|
+
__spreadValues({
|
|
605
|
+
ref,
|
|
606
|
+
className: cn(attachmentVariants({ size, orientation, state }), className)
|
|
607
|
+
}, props)
|
|
608
|
+
) });
|
|
609
|
+
}
|
|
610
|
+
);
|
|
611
|
+
Attachment.displayName = "Attachment";
|
|
612
|
+
var mediaContainerSize = {
|
|
613
|
+
default: "size-10",
|
|
614
|
+
sm: "size-8",
|
|
615
|
+
xs: "size-6"
|
|
616
|
+
};
|
|
617
|
+
var mediaIconSize = {
|
|
618
|
+
default: "[&_i]:text-xl [&_svg]:size-5",
|
|
619
|
+
sm: "[&_i]:text-lg [&_svg]:size-4",
|
|
620
|
+
xs: "[&_i]:text-sm [&_svg]:size-3.5"
|
|
621
|
+
};
|
|
622
|
+
var AttachmentMedia = React80.forwardRef(
|
|
623
|
+
(_a, ref) => {
|
|
624
|
+
var _b = _a, { className, variant = "icon", children } = _b, props = __objRest(_b, ["className", "variant", "children"]);
|
|
625
|
+
const { size } = React80.useContext(AttachmentContext);
|
|
626
|
+
return /* @__PURE__ */ jsx(
|
|
627
|
+
"div",
|
|
628
|
+
__spreadProps(__spreadValues({
|
|
629
|
+
ref,
|
|
630
|
+
className: cn(
|
|
631
|
+
"relative flex shrink-0 items-center justify-center overflow-hidden rounded-sm",
|
|
632
|
+
mediaContainerSize[size],
|
|
633
|
+
variant === "icon" && [
|
|
634
|
+
"bg-sui-bg-subtle border-[0.5px] border-sui-border-darker",
|
|
635
|
+
"[&_i]:text-icon-default-muted [&_svg]:text-icon-default-muted",
|
|
636
|
+
mediaIconSize[size]
|
|
637
|
+
],
|
|
638
|
+
variant === "image" && "[&_img]:size-full [&_img]:object-cover",
|
|
639
|
+
className
|
|
640
|
+
)
|
|
641
|
+
}, props), {
|
|
642
|
+
children
|
|
643
|
+
})
|
|
644
|
+
);
|
|
645
|
+
}
|
|
646
|
+
);
|
|
647
|
+
AttachmentMedia.displayName = "AttachmentMedia";
|
|
648
|
+
var AttachmentContent = React80.forwardRef((_a, ref) => {
|
|
649
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
650
|
+
return /* @__PURE__ */ jsx(
|
|
651
|
+
"div",
|
|
652
|
+
__spreadValues({
|
|
653
|
+
ref,
|
|
654
|
+
className: cn("relative flex flex-1 flex-col gap-0.5 justify-center min-w-0", className)
|
|
655
|
+
}, props)
|
|
656
|
+
);
|
|
657
|
+
});
|
|
658
|
+
AttachmentContent.displayName = "AttachmentContent";
|
|
659
|
+
var titleTextSize = {
|
|
660
|
+
default: "text-sm",
|
|
661
|
+
sm: "text-sm",
|
|
662
|
+
xs: "text-xs"
|
|
663
|
+
};
|
|
664
|
+
var AttachmentTitle = React80.forwardRef((_a, ref) => {
|
|
665
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
666
|
+
const { size, state } = React80.useContext(AttachmentContext);
|
|
667
|
+
const isShimmering = state === "uploading" || state === "processing";
|
|
668
|
+
return /* @__PURE__ */ jsx(
|
|
669
|
+
"p",
|
|
670
|
+
__spreadValues({
|
|
671
|
+
ref,
|
|
672
|
+
className: cn(
|
|
673
|
+
"font-medium leading-5 text-sui-text-default truncate",
|
|
674
|
+
titleTextSize[size],
|
|
675
|
+
isShimmering && "animate-pulse",
|
|
676
|
+
className
|
|
677
|
+
)
|
|
678
|
+
}, props)
|
|
679
|
+
);
|
|
680
|
+
});
|
|
681
|
+
AttachmentTitle.displayName = "AttachmentTitle";
|
|
682
|
+
var stateIcon = {
|
|
683
|
+
uploading: "ri-loader-4-line animate-spin text-icon-informative",
|
|
684
|
+
processing: "ri-loader-4-line animate-spin text-icon-informative",
|
|
685
|
+
error: "ri-error-warning-line text-icon-destructive",
|
|
686
|
+
done: "ri-check-line text-icon-success"
|
|
687
|
+
};
|
|
688
|
+
var AttachmentDescription = React80.forwardRef((_a, ref) => {
|
|
689
|
+
var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
|
|
690
|
+
const { state } = React80.useContext(AttachmentContext);
|
|
691
|
+
const icon = stateIcon[state];
|
|
692
|
+
return /* @__PURE__ */ jsxs(
|
|
693
|
+
"div",
|
|
694
|
+
__spreadProps(__spreadValues({
|
|
695
|
+
ref,
|
|
696
|
+
className: cn(
|
|
697
|
+
"flex items-center gap-1 text-xs leading-4 whitespace-nowrap",
|
|
698
|
+
state === "error" ? "text-sui-text-destructive" : "text-sui-text-muted",
|
|
699
|
+
className
|
|
700
|
+
)
|
|
701
|
+
}, props), {
|
|
702
|
+
children: [
|
|
703
|
+
icon && /* @__PURE__ */ jsx("i", { className: cn(icon, "leading-none"), "aria-hidden": "true" }),
|
|
704
|
+
/* @__PURE__ */ jsx("span", { className: "truncate", children })
|
|
705
|
+
]
|
|
706
|
+
})
|
|
707
|
+
);
|
|
708
|
+
});
|
|
709
|
+
AttachmentDescription.displayName = "AttachmentDescription";
|
|
710
|
+
var AttachmentActions = React80.forwardRef((_a, ref) => {
|
|
711
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
712
|
+
return /* @__PURE__ */ jsx(
|
|
713
|
+
"div",
|
|
714
|
+
__spreadValues({
|
|
715
|
+
ref,
|
|
716
|
+
className: cn("relative flex items-center gap-1 shrink-0", className)
|
|
717
|
+
}, props)
|
|
718
|
+
);
|
|
719
|
+
});
|
|
720
|
+
AttachmentActions.displayName = "AttachmentActions";
|
|
721
|
+
var AttachmentAction = React80.forwardRef(
|
|
722
|
+
(_a, ref) => {
|
|
723
|
+
var _b = _a, { className, size = "2xs", onClick } = _b, props = __objRest(_b, ["className", "size", "onClick"]);
|
|
724
|
+
return /* @__PURE__ */ jsx(
|
|
725
|
+
Button,
|
|
726
|
+
__spreadValues({
|
|
727
|
+
ref,
|
|
728
|
+
type: "button",
|
|
729
|
+
variant: "ghost",
|
|
730
|
+
size,
|
|
731
|
+
iconOnly: true,
|
|
732
|
+
onClick: (event) => {
|
|
733
|
+
event.stopPropagation();
|
|
734
|
+
onClick == null ? void 0 : onClick(event);
|
|
735
|
+
},
|
|
736
|
+
className
|
|
737
|
+
}, props)
|
|
738
|
+
);
|
|
739
|
+
}
|
|
740
|
+
);
|
|
741
|
+
AttachmentAction.displayName = "AttachmentAction";
|
|
742
|
+
var AttachmentTrigger = React80.forwardRef(
|
|
743
|
+
(_a, ref) => {
|
|
744
|
+
var _b = _a, { className, asChild = false } = _b, props = __objRest(_b, ["className", "asChild"]);
|
|
745
|
+
const Comp = asChild ? Slot : "button";
|
|
746
|
+
return /* @__PURE__ */ jsx(
|
|
747
|
+
Comp,
|
|
748
|
+
__spreadValues({
|
|
749
|
+
ref,
|
|
750
|
+
type: asChild ? void 0 : "button",
|
|
751
|
+
className: cn(
|
|
752
|
+
"absolute inset-0 z-0 rounded-[inherit]",
|
|
753
|
+
"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-sui-border-highlight focus-visible:ring-offset-2 focus-visible:ring-offset-sui-bg-default",
|
|
754
|
+
className
|
|
755
|
+
)
|
|
756
|
+
}, props)
|
|
757
|
+
);
|
|
758
|
+
}
|
|
759
|
+
);
|
|
760
|
+
AttachmentTrigger.displayName = "AttachmentTrigger";
|
|
761
|
+
var AttachmentGroup = React80.forwardRef((_a, ref) => {
|
|
762
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
763
|
+
return /* @__PURE__ */ jsx(
|
|
764
|
+
"div",
|
|
765
|
+
__spreadValues({
|
|
766
|
+
ref,
|
|
767
|
+
className: cn(
|
|
768
|
+
"flex gap-2 overflow-x-auto snap-x snap-mandatory",
|
|
769
|
+
"scroll-fade-x [--scroll-fade-size:16px]",
|
|
770
|
+
"[&>*]:snap-start",
|
|
771
|
+
className
|
|
772
|
+
)
|
|
773
|
+
}, props)
|
|
774
|
+
);
|
|
775
|
+
});
|
|
776
|
+
AttachmentGroup.displayName = "AttachmentGroup";
|
|
550
777
|
var containerSize = {
|
|
551
778
|
"2xs": "size-sui-8",
|
|
552
779
|
"xs": "size-sui-10",
|
|
@@ -571,11 +798,11 @@ var awayIconSize = {
|
|
|
571
798
|
"lg": "14px",
|
|
572
799
|
"default": "16px"
|
|
573
800
|
};
|
|
574
|
-
var StatusBadge =
|
|
801
|
+
var StatusBadge = React80.forwardRef(
|
|
575
802
|
(_a, ref) => {
|
|
576
803
|
var _b = _a, { variant, size = "default", src, className } = _b, props = __objRest(_b, ["variant", "size", "src", "className"]);
|
|
577
|
-
const [imgError, setImgError] =
|
|
578
|
-
|
|
804
|
+
const [imgError, setImgError] = React80.useState(false);
|
|
805
|
+
React80.useEffect(() => {
|
|
579
806
|
setImgError(false);
|
|
580
807
|
}, [src]);
|
|
581
808
|
const sizeClass = containerSize[size];
|
|
@@ -788,12 +1015,12 @@ function extractInitials(value) {
|
|
|
788
1015
|
}
|
|
789
1016
|
return trimmed.slice(0, 2).toUpperCase();
|
|
790
1017
|
}
|
|
791
|
-
var AvatarContext =
|
|
1018
|
+
var AvatarContext = React80.createContext({
|
|
792
1019
|
size: "md",
|
|
793
1020
|
shape: "circular",
|
|
794
1021
|
color: "gray"
|
|
795
1022
|
});
|
|
796
|
-
var Avatar =
|
|
1023
|
+
var Avatar = React80.forwardRef((_a, ref) => {
|
|
797
1024
|
var _b = _a, {
|
|
798
1025
|
className,
|
|
799
1026
|
size = "md",
|
|
@@ -947,7 +1174,7 @@ var Avatar = React78.forwardRef((_a, ref) => {
|
|
|
947
1174
|
) });
|
|
948
1175
|
});
|
|
949
1176
|
Avatar.displayName = "Avatar";
|
|
950
|
-
var AvatarImage =
|
|
1177
|
+
var AvatarImage = React80.forwardRef((_a, ref) => {
|
|
951
1178
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
952
1179
|
return /* @__PURE__ */ jsx(
|
|
953
1180
|
AvatarPrimitive.Image,
|
|
@@ -958,10 +1185,10 @@ var AvatarImage = React78.forwardRef((_a, ref) => {
|
|
|
958
1185
|
);
|
|
959
1186
|
});
|
|
960
1187
|
AvatarImage.displayName = "AvatarImage";
|
|
961
|
-
var AvatarFallback =
|
|
1188
|
+
var AvatarFallback = React80.forwardRef((_a, ref) => {
|
|
962
1189
|
var _b = _a, { className, fallback, children } = _b, props = __objRest(_b, ["className", "fallback", "children"]);
|
|
963
1190
|
var _a2, _b2, _c;
|
|
964
|
-
const { size, shape, color } =
|
|
1191
|
+
const { size, shape, color } = React80.useContext(AvatarContext);
|
|
965
1192
|
const shapeClass = shape === "rounded" ? "rounded-sm" : "rounded-full";
|
|
966
1193
|
const fontClass = (_a2 = initialsFontSize[size]) != null ? _a2 : "text-sm";
|
|
967
1194
|
const iconClass = (_b2 = iconSize[size]) != null ? _b2 : "text-lg";
|
|
@@ -1011,7 +1238,7 @@ var avatarButtonVariants = cva(
|
|
|
1011
1238
|
}
|
|
1012
1239
|
}
|
|
1013
1240
|
);
|
|
1014
|
-
var AvatarButton =
|
|
1241
|
+
var AvatarButton = React80.forwardRef(
|
|
1015
1242
|
(_a, ref) => {
|
|
1016
1243
|
var _b = _a, {
|
|
1017
1244
|
className,
|
|
@@ -1105,7 +1332,7 @@ var paddingBySize = {
|
|
|
1105
1332
|
"2xl": "pr-sui-10",
|
|
1106
1333
|
"3xl": "pr-sui-12"
|
|
1107
1334
|
};
|
|
1108
|
-
var AvatarGroup =
|
|
1335
|
+
var AvatarGroup = React80.forwardRef(
|
|
1109
1336
|
(_a, ref) => {
|
|
1110
1337
|
var _b = _a, { className, size = "md", stacking = "last-on-top", items } = _b, props = __objRest(_b, ["className", "size", "stacking", "items"]);
|
|
1111
1338
|
const isFirstOnTop = stacking === "first-on-top";
|
|
@@ -1147,7 +1374,7 @@ var AvatarGroup = React78.forwardRef(
|
|
|
1147
1374
|
}
|
|
1148
1375
|
);
|
|
1149
1376
|
AvatarGroup.displayName = "AvatarGroup";
|
|
1150
|
-
var AvatarUpload =
|
|
1377
|
+
var AvatarUpload = React80.forwardRef(
|
|
1151
1378
|
({
|
|
1152
1379
|
src,
|
|
1153
1380
|
alt = "",
|
|
@@ -1240,7 +1467,7 @@ var controlButtonVariants = cva(
|
|
|
1240
1467
|
}
|
|
1241
1468
|
}
|
|
1242
1469
|
);
|
|
1243
|
-
var ControlButton =
|
|
1470
|
+
var ControlButton = React80.forwardRef(
|
|
1244
1471
|
(_a, ref) => {
|
|
1245
1472
|
var _b = _a, {
|
|
1246
1473
|
className,
|
|
@@ -1411,12 +1638,12 @@ function Badge(_a) {
|
|
|
1411
1638
|
})
|
|
1412
1639
|
);
|
|
1413
1640
|
}
|
|
1414
|
-
var Breadcrumb =
|
|
1641
|
+
var Breadcrumb = React80.forwardRef((_a, ref) => {
|
|
1415
1642
|
var props = __objRest(_a, []);
|
|
1416
1643
|
return /* @__PURE__ */ jsx("nav", __spreadValues({ ref, "aria-label": "breadcrumb" }, props));
|
|
1417
1644
|
});
|
|
1418
1645
|
Breadcrumb.displayName = "Breadcrumb";
|
|
1419
|
-
var BreadcrumbList =
|
|
1646
|
+
var BreadcrumbList = React80.forwardRef((_a, ref) => {
|
|
1420
1647
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
1421
1648
|
return /* @__PURE__ */ jsx(
|
|
1422
1649
|
"ol",
|
|
@@ -1430,7 +1657,7 @@ var BreadcrumbList = React78.forwardRef((_a, ref) => {
|
|
|
1430
1657
|
);
|
|
1431
1658
|
});
|
|
1432
1659
|
BreadcrumbList.displayName = "BreadcrumbList";
|
|
1433
|
-
var BreadcrumbItem =
|
|
1660
|
+
var BreadcrumbItem = React80.forwardRef((_a, ref) => {
|
|
1434
1661
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
1435
1662
|
return /* @__PURE__ */ jsx(
|
|
1436
1663
|
"li",
|
|
@@ -1441,7 +1668,7 @@ var BreadcrumbItem = React78.forwardRef((_a, ref) => {
|
|
|
1441
1668
|
);
|
|
1442
1669
|
});
|
|
1443
1670
|
BreadcrumbItem.displayName = "BreadcrumbItem";
|
|
1444
|
-
var BreadcrumbLink =
|
|
1671
|
+
var BreadcrumbLink = React80.forwardRef((_a, ref) => {
|
|
1445
1672
|
var _b = _a, { asChild, className } = _b, props = __objRest(_b, ["asChild", "className"]);
|
|
1446
1673
|
const Comp = asChild ? Slot : "a";
|
|
1447
1674
|
return /* @__PURE__ */ jsx(
|
|
@@ -1457,7 +1684,7 @@ var BreadcrumbLink = React78.forwardRef((_a, ref) => {
|
|
|
1457
1684
|
);
|
|
1458
1685
|
});
|
|
1459
1686
|
BreadcrumbLink.displayName = "BreadcrumbLink";
|
|
1460
|
-
var BreadcrumbPage =
|
|
1687
|
+
var BreadcrumbPage = React80.forwardRef((_a, ref) => {
|
|
1461
1688
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
1462
1689
|
return /* @__PURE__ */ jsx(
|
|
1463
1690
|
"span",
|
|
@@ -1529,7 +1756,7 @@ function BreadcrumbDivider({ variant }) {
|
|
|
1529
1756
|
variant === "dot" && /* @__PURE__ */ jsx("span", { className: "size-1 rounded-full bg-sui-text-muted" })
|
|
1530
1757
|
] });
|
|
1531
1758
|
}
|
|
1532
|
-
var SortBreadcrumb =
|
|
1759
|
+
var SortBreadcrumb = React80.forwardRef(
|
|
1533
1760
|
({ items, variant = "slash", className }, ref) => {
|
|
1534
1761
|
return /* @__PURE__ */ jsx("nav", { ref, "aria-label": "Breadcrumb", children: /* @__PURE__ */ jsx(
|
|
1535
1762
|
"ol",
|
|
@@ -1540,7 +1767,7 @@ var SortBreadcrumb = React78.forwardRef(
|
|
|
1540
1767
|
),
|
|
1541
1768
|
children: items.map((item, index) => {
|
|
1542
1769
|
const isLast = index === items.length - 1;
|
|
1543
|
-
return /* @__PURE__ */ jsxs(
|
|
1770
|
+
return /* @__PURE__ */ jsxs(React80.Fragment, { children: [
|
|
1544
1771
|
/* @__PURE__ */ jsx("li", { className: "inline-flex", children: /* @__PURE__ */ jsx(
|
|
1545
1772
|
SortBreadcrumbItem,
|
|
1546
1773
|
__spreadProps(__spreadValues({}, item), {
|
|
@@ -1632,7 +1859,7 @@ var verticalChildRadius = {
|
|
|
1632
1859
|
xs: "[&>button:first-child]:rounded-t-md [&>button:last-of-type]:rounded-b-md",
|
|
1633
1860
|
"2xs": "[&>button:first-child]:rounded-t-sm [&>button:last-of-type]:rounded-b-sm"
|
|
1634
1861
|
};
|
|
1635
|
-
var ButtonGroup =
|
|
1862
|
+
var ButtonGroup = React80.forwardRef(
|
|
1636
1863
|
(_a, ref) => {
|
|
1637
1864
|
var _b = _a, { size = "lg", orientation = "horizontal", className, children } = _b, props = __objRest(_b, ["size", "orientation", "className", "children"]);
|
|
1638
1865
|
const isVertical = orientation === "vertical";
|
|
@@ -1651,9 +1878,9 @@ var ButtonGroup = React78.forwardRef(
|
|
|
1651
1878
|
className
|
|
1652
1879
|
)
|
|
1653
1880
|
}, props), {
|
|
1654
|
-
children:
|
|
1655
|
-
if (
|
|
1656
|
-
return
|
|
1881
|
+
children: React80.Children.map(children, (child, index) => {
|
|
1882
|
+
if (React80.isValidElement(child)) {
|
|
1883
|
+
return React80.cloneElement(
|
|
1657
1884
|
child,
|
|
1658
1885
|
{
|
|
1659
1886
|
showSeparator: index > 0,
|
|
@@ -1723,7 +1950,7 @@ var badgeClasses = {
|
|
|
1723
1950
|
xs: "text-xs font-medium leading-4 py-sui-2",
|
|
1724
1951
|
"2xs": "text-xs font-medium leading-4 py-0"
|
|
1725
1952
|
};
|
|
1726
|
-
var ButtonGroupItem =
|
|
1953
|
+
var ButtonGroupItem = React80.forwardRef(
|
|
1727
1954
|
(_a, ref) => {
|
|
1728
1955
|
var _b = _a, {
|
|
1729
1956
|
label,
|
|
@@ -1811,7 +2038,7 @@ var filterButtonVariants = cva(
|
|
|
1811
2038
|
);
|
|
1812
2039
|
var getVisualStateClasses = (selected) => selected ? "bg-sui-bg-state-secondary border border-solid border-sui-border-darker text-sui-text-muted [&_i]:text-icon-default-muted [&_svg]:text-icon-default-muted shadow-default" : "bg-sui-bg-state-secondary border border-dashed border-sui-border-darker text-sui-text-muted [&_i]:text-icon-default-muted [&_svg]:text-icon-default-muted";
|
|
1813
2040
|
var SUB_BUTTON_FOCUS = "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-sui-border-highlight focus-visible:ring-offset-1 rounded-sm";
|
|
1814
|
-
var FilterButton =
|
|
2041
|
+
var FilterButton = React80.forwardRef(
|
|
1815
2042
|
(_a, ref) => {
|
|
1816
2043
|
var _b = _a, {
|
|
1817
2044
|
className,
|
|
@@ -2001,7 +2228,7 @@ var underlineOffsetMap = {
|
|
|
2001
2228
|
md: "after:bottom-0",
|
|
2002
2229
|
lg: "after:bottom-0"
|
|
2003
2230
|
};
|
|
2004
|
-
var LinkButton =
|
|
2231
|
+
var LinkButton = React80.forwardRef(
|
|
2005
2232
|
(_a, ref) => {
|
|
2006
2233
|
var _b = _a, { className, variant, size, asChild = false, leadIcon, tailIcon, disabled, children } = _b, props = __objRest(_b, ["className", "variant", "size", "asChild", "leadIcon", "tailIcon", "disabled", "children"]);
|
|
2007
2234
|
const Comp = asChild ? Slot : "button";
|
|
@@ -2015,6 +2242,19 @@ var LinkButton = React78.forwardRef(
|
|
|
2015
2242
|
);
|
|
2016
2243
|
const iconColor = disabled ? "text-icon-default-disabled" : variant === "informative" ? "text-icon-informative" : "text-icon-default-muted";
|
|
2017
2244
|
const underlineColor = disabled ? "var(--border-darker)" : variant === "informative" ? "var(--border-informative)" : "var(--border-darker)";
|
|
2245
|
+
const underlineClassName = cn(
|
|
2246
|
+
"relative",
|
|
2247
|
+
"after:content-[''] after:absolute after:inset-x-0 after:h-px",
|
|
2248
|
+
"after:bg-[repeating-linear-gradient(90deg,var(--link-ul)_0_2px,transparent_2px_4px)]",
|
|
2249
|
+
underlineOffsetMap[resolvedSize]
|
|
2250
|
+
);
|
|
2251
|
+
const underlineStyle = { "--link-ul": underlineColor };
|
|
2252
|
+
const asChildTarget = asChild && React80.isValidElement(children) ? children : null;
|
|
2253
|
+
const content = asChildTarget ? /* @__PURE__ */ jsx(Slottable, { children: React80.cloneElement(
|
|
2254
|
+
asChildTarget,
|
|
2255
|
+
void 0,
|
|
2256
|
+
/* @__PURE__ */ jsx("span", { className: underlineClassName, style: underlineStyle, children: asChildTarget.props.children })
|
|
2257
|
+
) }) : /* @__PURE__ */ jsx("span", { className: underlineClassName, style: underlineStyle, children });
|
|
2018
2258
|
return /* @__PURE__ */ jsxs(
|
|
2019
2259
|
Comp,
|
|
2020
2260
|
__spreadProps(__spreadValues({
|
|
@@ -2034,19 +2274,7 @@ var LinkButton = React78.forwardRef(
|
|
|
2034
2274
|
}, props), {
|
|
2035
2275
|
children: [
|
|
2036
2276
|
leadIcon && /* @__PURE__ */ jsx("span", { "aria-hidden": "true", className: cn("shrink-0 text-md leading-none [&_svg]:size-4", iconColor), children: leadIcon }),
|
|
2037
|
-
|
|
2038
|
-
"span",
|
|
2039
|
-
{
|
|
2040
|
-
className: cn(
|
|
2041
|
-
"relative",
|
|
2042
|
-
"after:content-[''] after:absolute after:inset-x-0 after:h-px",
|
|
2043
|
-
"after:bg-[repeating-linear-gradient(90deg,var(--link-ul)_0_2px,transparent_2px_4px)]",
|
|
2044
|
-
underlineOffsetMap[resolvedSize]
|
|
2045
|
-
),
|
|
2046
|
-
style: { "--link-ul": underlineColor },
|
|
2047
|
-
children
|
|
2048
|
-
}
|
|
2049
|
-
),
|
|
2277
|
+
content,
|
|
2050
2278
|
tailIcon && /* @__PURE__ */ jsx("span", { "aria-hidden": "true", className: cn("shrink-0 text-md leading-none [&_svg]:size-4", iconColor), children: tailIcon })
|
|
2051
2279
|
]
|
|
2052
2280
|
})
|
|
@@ -2084,7 +2312,7 @@ var brandMap = {
|
|
|
2084
2312
|
dropbox: { icon: "ri-dropbox-fill", label: "Dropbox", bg: "var(--social-brand-dropbox)" },
|
|
2085
2313
|
github: { icon: "ri-github-fill", label: "Github" }
|
|
2086
2314
|
};
|
|
2087
|
-
var SocialButton =
|
|
2315
|
+
var SocialButton = React80.forwardRef(
|
|
2088
2316
|
(_a, ref) => {
|
|
2089
2317
|
var _b = _a, { className, variant, shape, brand, iconOnly, asChild = false, children } = _b, props = __objRest(_b, ["className", "variant", "shape", "brand", "iconOnly", "asChild", "children"]);
|
|
2090
2318
|
const Comp = asChild ? Slot : "button";
|
|
@@ -2289,8 +2517,8 @@ function CalendarDayButton(_a) {
|
|
|
2289
2517
|
"modifiers"
|
|
2290
2518
|
]);
|
|
2291
2519
|
const defaultClassNames = getDefaultClassNames();
|
|
2292
|
-
const ref =
|
|
2293
|
-
|
|
2520
|
+
const ref = React80.useRef(null);
|
|
2521
|
+
React80.useEffect(() => {
|
|
2294
2522
|
var _a2;
|
|
2295
2523
|
if (modifiers.focused) (_a2 = ref.current) == null ? void 0 : _a2.focus();
|
|
2296
2524
|
}, [modifiers.focused]);
|
|
@@ -2362,7 +2590,7 @@ var cardVariants = cva(
|
|
|
2362
2590
|
}
|
|
2363
2591
|
}
|
|
2364
2592
|
);
|
|
2365
|
-
var Card =
|
|
2593
|
+
var Card = React80.forwardRef(
|
|
2366
2594
|
(_a, ref) => {
|
|
2367
2595
|
var _b = _a, { className, variant, interactive, asChild = false } = _b, props = __objRest(_b, ["className", "variant", "interactive", "asChild"]);
|
|
2368
2596
|
const Comp = asChild ? Slot : "div";
|
|
@@ -2385,7 +2613,7 @@ var Card = React78.forwardRef(
|
|
|
2385
2613
|
}
|
|
2386
2614
|
);
|
|
2387
2615
|
Card.displayName = "Card";
|
|
2388
|
-
var CardHeader =
|
|
2616
|
+
var CardHeader = React80.forwardRef((_a, ref) => {
|
|
2389
2617
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
2390
2618
|
return /* @__PURE__ */ jsx(
|
|
2391
2619
|
"div",
|
|
@@ -2396,7 +2624,7 @@ var CardHeader = React78.forwardRef((_a, ref) => {
|
|
|
2396
2624
|
);
|
|
2397
2625
|
});
|
|
2398
2626
|
CardHeader.displayName = "CardHeader";
|
|
2399
|
-
var CardTitle =
|
|
2627
|
+
var CardTitle = React80.forwardRef((_a, ref) => {
|
|
2400
2628
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
2401
2629
|
return /* @__PURE__ */ jsx(
|
|
2402
2630
|
"div",
|
|
@@ -2410,7 +2638,7 @@ var CardTitle = React78.forwardRef((_a, ref) => {
|
|
|
2410
2638
|
);
|
|
2411
2639
|
});
|
|
2412
2640
|
CardTitle.displayName = "CardTitle";
|
|
2413
|
-
var CardDescription =
|
|
2641
|
+
var CardDescription = React80.forwardRef((_a, ref) => {
|
|
2414
2642
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
2415
2643
|
return /* @__PURE__ */ jsx(
|
|
2416
2644
|
"div",
|
|
@@ -2421,12 +2649,12 @@ var CardDescription = React78.forwardRef((_a, ref) => {
|
|
|
2421
2649
|
);
|
|
2422
2650
|
});
|
|
2423
2651
|
CardDescription.displayName = "CardDescription";
|
|
2424
|
-
var CardContent =
|
|
2652
|
+
var CardContent = React80.forwardRef((_a, ref) => {
|
|
2425
2653
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
2426
2654
|
return /* @__PURE__ */ jsx("div", __spreadValues({ ref, className: cn("p-6 pt-0", className) }, props));
|
|
2427
2655
|
});
|
|
2428
2656
|
CardContent.displayName = "CardContent";
|
|
2429
|
-
var CardFooter =
|
|
2657
|
+
var CardFooter = React80.forwardRef((_a, ref) => {
|
|
2430
2658
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
2431
2659
|
return /* @__PURE__ */ jsx(
|
|
2432
2660
|
"div",
|
|
@@ -2437,7 +2665,7 @@ var CardFooter = React78.forwardRef((_a, ref) => {
|
|
|
2437
2665
|
);
|
|
2438
2666
|
});
|
|
2439
2667
|
CardFooter.displayName = "CardFooter";
|
|
2440
|
-
var CardCover =
|
|
2668
|
+
var CardCover = React80.forwardRef(
|
|
2441
2669
|
(_a, ref) => {
|
|
2442
2670
|
var _b = _a, { className, flush = false, aspectRatio = "3/2", style, children } = _b, props = __objRest(_b, ["className", "flush", "aspectRatio", "style", "children"]);
|
|
2443
2671
|
return /* @__PURE__ */ jsx(
|
|
@@ -2458,17 +2686,17 @@ var CardCover = React78.forwardRef(
|
|
|
2458
2686
|
);
|
|
2459
2687
|
CardCover.displayName = "CardCover";
|
|
2460
2688
|
var THEMES = { light: "", dark: ".dark" };
|
|
2461
|
-
var ChartContext =
|
|
2689
|
+
var ChartContext = React80.createContext(null);
|
|
2462
2690
|
function useChart() {
|
|
2463
|
-
const context =
|
|
2691
|
+
const context = React80.useContext(ChartContext);
|
|
2464
2692
|
if (!context) {
|
|
2465
2693
|
throw new Error("useChart must be used within a <ChartContainer />");
|
|
2466
2694
|
}
|
|
2467
2695
|
return context;
|
|
2468
2696
|
}
|
|
2469
|
-
var ChartContainer =
|
|
2697
|
+
var ChartContainer = React80.forwardRef((_a, ref) => {
|
|
2470
2698
|
var _b = _a, { id, className, children, config } = _b, props = __objRest(_b, ["id", "className", "children", "config"]);
|
|
2471
|
-
const uniqueId =
|
|
2699
|
+
const uniqueId = React80.useId();
|
|
2472
2700
|
const chartId = `chart-${id || uniqueId.replace(/:/g, "")}`;
|
|
2473
2701
|
return /* @__PURE__ */ jsx(ChartContext.Provider, { value: { config }, children: /* @__PURE__ */ jsxs(
|
|
2474
2702
|
"div",
|
|
@@ -2515,7 +2743,7 @@ ${colorConfig.map(([key, itemConfig]) => {
|
|
|
2515
2743
|
);
|
|
2516
2744
|
};
|
|
2517
2745
|
var ChartTooltip = RechartsPrimitive.Tooltip;
|
|
2518
|
-
var ChartTooltipContent =
|
|
2746
|
+
var ChartTooltipContent = React80.forwardRef(
|
|
2519
2747
|
({
|
|
2520
2748
|
active,
|
|
2521
2749
|
payload,
|
|
@@ -2532,7 +2760,7 @@ var ChartTooltipContent = React78.forwardRef(
|
|
|
2532
2760
|
labelKey
|
|
2533
2761
|
}, ref) => {
|
|
2534
2762
|
const { config } = useChart();
|
|
2535
|
-
const tooltipLabel =
|
|
2763
|
+
const tooltipLabel = React80.useMemo(() => {
|
|
2536
2764
|
var _a;
|
|
2537
2765
|
if (hideLabel || !(payload == null ? void 0 : payload.length)) {
|
|
2538
2766
|
return null;
|
|
@@ -2629,7 +2857,7 @@ var ChartTooltipContent = React78.forwardRef(
|
|
|
2629
2857
|
);
|
|
2630
2858
|
ChartTooltipContent.displayName = "ChartTooltip";
|
|
2631
2859
|
var ChartLegend = RechartsPrimitive.Legend;
|
|
2632
|
-
var ChartLegendContent =
|
|
2860
|
+
var ChartLegendContent = React80.forwardRef(
|
|
2633
2861
|
({ className, hideIcon = false, payload, verticalAlign = "bottom", nameKey }, ref) => {
|
|
2634
2862
|
const { config } = useChart();
|
|
2635
2863
|
if (!(payload == null ? void 0 : payload.length)) {
|
|
@@ -2748,7 +2976,7 @@ var checkboxVariants = cva(
|
|
|
2748
2976
|
}
|
|
2749
2977
|
}
|
|
2750
2978
|
);
|
|
2751
|
-
var Checkbox =
|
|
2979
|
+
var Checkbox = React80.forwardRef((_a, ref) => {
|
|
2752
2980
|
var _b = _a, { className, variant, checked, indeterminate } = _b, props = __objRest(_b, ["className", "variant", "checked", "indeterminate"]);
|
|
2753
2981
|
return /* @__PURE__ */ jsxs(
|
|
2754
2982
|
CheckboxPrimitive.Root,
|
|
@@ -2870,7 +3098,7 @@ var checkboxCardVariants = cva(
|
|
|
2870
3098
|
}
|
|
2871
3099
|
}
|
|
2872
3100
|
);
|
|
2873
|
-
var CheckboxCard =
|
|
3101
|
+
var CheckboxCard = React80.forwardRef(
|
|
2874
3102
|
({
|
|
2875
3103
|
title,
|
|
2876
3104
|
description,
|
|
@@ -2884,7 +3112,7 @@ var CheckboxCard = React78.forwardRef(
|
|
|
2884
3112
|
disabled = false,
|
|
2885
3113
|
className
|
|
2886
3114
|
}, ref) => {
|
|
2887
|
-
const generatedId =
|
|
3115
|
+
const generatedId = React80.useId();
|
|
2888
3116
|
const checkboxId = `checkbox-card-${generatedId}`;
|
|
2889
3117
|
const titleId = `checkbox-card-title-${generatedId}`;
|
|
2890
3118
|
const descriptionId = `checkbox-card-desc-${generatedId}`;
|
|
@@ -2906,7 +3134,7 @@ var CheckboxCard = React78.forwardRef(
|
|
|
2906
3134
|
selected || isDefault ? "bg-sui-bg-card" : "bg-sui-bg-state-soft",
|
|
2907
3135
|
// Border — always 1px border, use inset ring for selected highlight (no layout shift)
|
|
2908
3136
|
"border",
|
|
2909
|
-
selected ? "border-
|
|
3137
|
+
selected ? "border-informative ring-1 ring-inset ring-informative" : disabled ? isDefault ? "border-sui-border-default" : "border-transparent" : isDefault ? "border-sui-border-darker" : "border-transparent",
|
|
2910
3138
|
// Shadow (only for default or selected)
|
|
2911
3139
|
selected || isDefault ? disabled ? "" : "shadow-card-base" : "",
|
|
2912
3140
|
// Disabled
|
|
@@ -2980,10 +3208,10 @@ var CheckboxCard = React78.forwardRef(
|
|
|
2980
3208
|
}
|
|
2981
3209
|
);
|
|
2982
3210
|
CheckboxCard.displayName = "CheckboxCard";
|
|
2983
|
-
var CheckboxList =
|
|
3211
|
+
var CheckboxList = React80.forwardRef(
|
|
2984
3212
|
(_a, ref) => {
|
|
2985
3213
|
var _b = _a, { className, divider = true, children } = _b, props = __objRest(_b, ["className", "divider", "children"]);
|
|
2986
|
-
const items =
|
|
3214
|
+
const items = React80.Children.toArray(children);
|
|
2987
3215
|
return /* @__PURE__ */ jsx(
|
|
2988
3216
|
"div",
|
|
2989
3217
|
__spreadProps(__spreadValues({
|
|
@@ -3025,7 +3253,7 @@ var checkboxWithTextVariants = cva(
|
|
|
3025
3253
|
}
|
|
3026
3254
|
}
|
|
3027
3255
|
);
|
|
3028
|
-
var CheckboxWithText =
|
|
3256
|
+
var CheckboxWithText = React80.forwardRef(
|
|
3029
3257
|
({
|
|
3030
3258
|
label,
|
|
3031
3259
|
description,
|
|
@@ -3038,7 +3266,7 @@ var CheckboxWithText = React78.forwardRef(
|
|
|
3038
3266
|
className,
|
|
3039
3267
|
id
|
|
3040
3268
|
}, ref) => {
|
|
3041
|
-
const generatedId =
|
|
3269
|
+
const generatedId = React80.useId();
|
|
3042
3270
|
const checkboxId = id || generatedId;
|
|
3043
3271
|
return /* @__PURE__ */ jsxs(
|
|
3044
3272
|
"div",
|
|
@@ -3122,10 +3350,10 @@ var unselectedStyles = {
|
|
|
3122
3350
|
].join(" ")
|
|
3123
3351
|
};
|
|
3124
3352
|
var selectedStyles = {
|
|
3125
|
-
// default, soft, ghost → blue
|
|
3126
|
-
default: "bg-sui-bg-badge-blue border-sui-border-blue text-sui-
|
|
3127
|
-
soft: "bg-sui-bg-badge-blue text-sui-
|
|
3128
|
-
ghost: "bg-sui-bg-badge-blue text-sui-
|
|
3353
|
+
// default, soft, ghost → informative accent selected (shifts blue → orange in Neutral Violet; bg-badge-blue has no theme-adaptive equivalent yet)
|
|
3354
|
+
default: "bg-sui-bg-badge-blue border-sui-border-blue text-sui-text-informative [&_i]:text-sui-text-informative",
|
|
3355
|
+
soft: "bg-sui-bg-badge-blue text-sui-text-informative [&_i]:text-sui-text-informative",
|
|
3356
|
+
ghost: "bg-sui-bg-badge-blue text-sui-text-informative [&_i]:text-sui-text-informative",
|
|
3129
3357
|
// ghost-muted → soft bg + subtle text
|
|
3130
3358
|
"ghost-muted": "bg-sui-bg-state-soft text-sui-text-subtle [&_i]:text-icon-default-subtle"
|
|
3131
3359
|
};
|
|
@@ -3186,7 +3414,7 @@ var labelClasses2 = {
|
|
|
3186
3414
|
md: "text-sm font-medium leading-5",
|
|
3187
3415
|
sm: "text-xs font-medium leading-4"
|
|
3188
3416
|
};
|
|
3189
|
-
var Chip =
|
|
3417
|
+
var Chip = React80.forwardRef(
|
|
3190
3418
|
(_a, ref) => {
|
|
3191
3419
|
var _b = _a, {
|
|
3192
3420
|
label,
|
|
@@ -3215,7 +3443,7 @@ var Chip = React78.forwardRef(
|
|
|
3215
3443
|
"className",
|
|
3216
3444
|
"onClick"
|
|
3217
3445
|
]);
|
|
3218
|
-
const [internalSelected, setInternalSelected] =
|
|
3446
|
+
const [internalSelected, setInternalSelected] = React80.useState(false);
|
|
3219
3447
|
const isControlled = controlledSelected !== void 0;
|
|
3220
3448
|
const selected = isControlled ? controlledSelected : internalSelected;
|
|
3221
3449
|
const handleClick = (e) => {
|
|
@@ -3313,7 +3541,7 @@ var badgeStyles = [
|
|
|
3313
3541
|
"bg-sui-bg-state-soft border border-sui-border-darker rounded-xs",
|
|
3314
3542
|
"text-sui-text-subtle text-xs font-medium leading-4"
|
|
3315
3543
|
].join(" ");
|
|
3316
|
-
var TooltipContent =
|
|
3544
|
+
var TooltipContent = React80.forwardRef((_a, ref) => {
|
|
3317
3545
|
var _b = _a, { className, variant = "default", weight = "subtle", shortcut, sideOffset = 4, children } = _b, props = __objRest(_b, ["className", "variant", "weight", "shortcut", "sideOffset", "children"]);
|
|
3318
3546
|
return /* @__PURE__ */ jsxs(
|
|
3319
3547
|
TooltipPrimitive.Content,
|
|
@@ -3349,7 +3577,7 @@ var underlineTabsListVariants = cva(
|
|
|
3349
3577
|
}
|
|
3350
3578
|
}
|
|
3351
3579
|
);
|
|
3352
|
-
var UnderlineTabsList =
|
|
3580
|
+
var UnderlineTabsList = React80.forwardRef((_a, ref) => {
|
|
3353
3581
|
var _b = _a, { className, layout, size } = _b, props = __objRest(_b, ["className", "layout", "size"]);
|
|
3354
3582
|
return /* @__PURE__ */ jsx(
|
|
3355
3583
|
TabsPrimitive4.List,
|
|
@@ -3396,7 +3624,7 @@ var underlineTabItemVariants = cva(
|
|
|
3396
3624
|
}
|
|
3397
3625
|
}
|
|
3398
3626
|
);
|
|
3399
|
-
var UnderlineTabItem =
|
|
3627
|
+
var UnderlineTabItem = React80.forwardRef(
|
|
3400
3628
|
(_a, ref) => {
|
|
3401
3629
|
var _b = _a, {
|
|
3402
3630
|
className,
|
|
@@ -3434,7 +3662,7 @@ var UnderlineTabItem = React78.forwardRef(
|
|
|
3434
3662
|
);
|
|
3435
3663
|
UnderlineTabItem.displayName = "UnderlineTabItem";
|
|
3436
3664
|
var DEFAULT_LANGUAGES = ["React", "JavaScript", "TypeScript", "Next.js"];
|
|
3437
|
-
var CodeBlock =
|
|
3665
|
+
var CodeBlock = React80.forwardRef(
|
|
3438
3666
|
(_a, ref) => {
|
|
3439
3667
|
var _b = _a, {
|
|
3440
3668
|
className,
|
|
@@ -3464,10 +3692,10 @@ var CodeBlock = React78.forwardRef(
|
|
|
3464
3692
|
"showLineNumbers"
|
|
3465
3693
|
]);
|
|
3466
3694
|
var _a2, _b2, _c, _d, _e, _f;
|
|
3467
|
-
const [activeTab, setActiveTab] =
|
|
3468
|
-
const [copied, setCopied] =
|
|
3695
|
+
const [activeTab, setActiveTab] = React80.useState((_b2 = (_a2 = tabs == null ? void 0 : tabs[0]) == null ? void 0 : _a2.label) != null ? _b2 : "");
|
|
3696
|
+
const [copied, setCopied] = React80.useState(false);
|
|
3469
3697
|
const activeCode = variant === "advanced" ? (_f = (_e = (_c = tabs == null ? void 0 : tabs.find((t) => t.label === activeTab)) == null ? void 0 : _c.code) != null ? _e : (_d = tabs == null ? void 0 : tabs[0]) == null ? void 0 : _d.code) != null ? _f : "" : code;
|
|
3470
|
-
const handleCopy =
|
|
3698
|
+
const handleCopy = React80.useCallback(() => {
|
|
3471
3699
|
if (onCopy) {
|
|
3472
3700
|
onCopy();
|
|
3473
3701
|
} else {
|
|
@@ -3658,7 +3886,7 @@ var Dialog = DialogPrimitive.Root;
|
|
|
3658
3886
|
var DialogTrigger = DialogPrimitive.Trigger;
|
|
3659
3887
|
var DialogPortal = DialogPrimitive.Portal;
|
|
3660
3888
|
var DialogClose = DialogPrimitive.Close;
|
|
3661
|
-
var DialogOverlay =
|
|
3889
|
+
var DialogOverlay = React80.forwardRef((_a, ref) => {
|
|
3662
3890
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
3663
3891
|
return /* @__PURE__ */ jsx(
|
|
3664
3892
|
DialogPrimitive.Overlay,
|
|
@@ -3672,7 +3900,7 @@ var DialogOverlay = React78.forwardRef((_a, ref) => {
|
|
|
3672
3900
|
);
|
|
3673
3901
|
});
|
|
3674
3902
|
DialogOverlay.displayName = DialogPrimitive.Overlay.displayName;
|
|
3675
|
-
var DialogContent =
|
|
3903
|
+
var DialogContent = React80.forwardRef((_a, ref) => {
|
|
3676
3904
|
var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
|
|
3677
3905
|
return /* @__PURE__ */ jsxs(DialogPortal, { children: [
|
|
3678
3906
|
/* @__PURE__ */ jsx(DialogOverlay, {}),
|
|
@@ -3731,7 +3959,7 @@ var DialogFooter = (_a) => {
|
|
|
3731
3959
|
);
|
|
3732
3960
|
};
|
|
3733
3961
|
DialogFooter.displayName = "DialogFooter";
|
|
3734
|
-
var DialogTitle =
|
|
3962
|
+
var DialogTitle = React80.forwardRef((_a, ref) => {
|
|
3735
3963
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
3736
3964
|
return /* @__PURE__ */ jsx(
|
|
3737
3965
|
DialogPrimitive.Title,
|
|
@@ -3745,7 +3973,7 @@ var DialogTitle = React78.forwardRef((_a, ref) => {
|
|
|
3745
3973
|
);
|
|
3746
3974
|
});
|
|
3747
3975
|
DialogTitle.displayName = DialogPrimitive.Title.displayName;
|
|
3748
|
-
var DialogDescription =
|
|
3976
|
+
var DialogDescription = React80.forwardRef((_a, ref) => {
|
|
3749
3977
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
3750
3978
|
return /* @__PURE__ */ jsx(
|
|
3751
3979
|
DialogPrimitive.Description,
|
|
@@ -3756,7 +3984,7 @@ var DialogDescription = React78.forwardRef((_a, ref) => {
|
|
|
3756
3984
|
);
|
|
3757
3985
|
});
|
|
3758
3986
|
DialogDescription.displayName = DialogPrimitive.Description.displayName;
|
|
3759
|
-
var Command =
|
|
3987
|
+
var Command = React80.forwardRef((_a, ref) => {
|
|
3760
3988
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
3761
3989
|
return /* @__PURE__ */ jsx(
|
|
3762
3990
|
Command$1,
|
|
@@ -3774,7 +4002,7 @@ var CommandDialog = (_a) => {
|
|
|
3774
4002
|
var _b = _a, { children } = _b, props = __objRest(_b, ["children"]);
|
|
3775
4003
|
return /* @__PURE__ */ jsx(Dialog, __spreadProps(__spreadValues({}, props), { children: /* @__PURE__ */ jsx(DialogContent, { className: "overflow-hidden p-0 shadow-card max-w-[560px]", children: /* @__PURE__ */ jsx(Command, { className: "[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-sui-text-hint [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-2 [&_[cmdk-input-wrapper]_i]:h-4 [&_[cmdk-input-wrapper]_i]:w-4 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_i]:h-4 [&_[cmdk-item]_i]:w-4", children }) }) }));
|
|
3776
4004
|
};
|
|
3777
|
-
var CommandInput =
|
|
4005
|
+
var CommandInput = React80.forwardRef((_a, ref) => {
|
|
3778
4006
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
3779
4007
|
return /* @__PURE__ */ jsxs("div", { className: "flex items-center border-b border-sui-border-default px-3", "cmdk-input-wrapper": "", children: [
|
|
3780
4008
|
/* @__PURE__ */ jsx("i", { className: "ri-search-line mr-2 shrink-0 text-icon-default-muted" }),
|
|
@@ -3791,7 +4019,7 @@ var CommandInput = React78.forwardRef((_a, ref) => {
|
|
|
3791
4019
|
] });
|
|
3792
4020
|
});
|
|
3793
4021
|
CommandInput.displayName = Command$1.Input.displayName;
|
|
3794
|
-
var CommandList =
|
|
4022
|
+
var CommandList = React80.forwardRef((_a, ref) => {
|
|
3795
4023
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
3796
4024
|
return /* @__PURE__ */ jsx(
|
|
3797
4025
|
Command$1.List,
|
|
@@ -3802,7 +4030,7 @@ var CommandList = React78.forwardRef((_a, ref) => {
|
|
|
3802
4030
|
);
|
|
3803
4031
|
});
|
|
3804
4032
|
CommandList.displayName = Command$1.List.displayName;
|
|
3805
|
-
var CommandEmpty =
|
|
4033
|
+
var CommandEmpty = React80.forwardRef((props, ref) => /* @__PURE__ */ jsx(
|
|
3806
4034
|
Command$1.Empty,
|
|
3807
4035
|
__spreadValues({
|
|
3808
4036
|
ref,
|
|
@@ -3810,7 +4038,7 @@ var CommandEmpty = React78.forwardRef((props, ref) => /* @__PURE__ */ jsx(
|
|
|
3810
4038
|
}, props)
|
|
3811
4039
|
));
|
|
3812
4040
|
CommandEmpty.displayName = Command$1.Empty.displayName;
|
|
3813
|
-
var CommandGroup =
|
|
4041
|
+
var CommandGroup = React80.forwardRef((_a, ref) => {
|
|
3814
4042
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
3815
4043
|
return /* @__PURE__ */ jsx(
|
|
3816
4044
|
Command$1.Group,
|
|
@@ -3824,7 +4052,7 @@ var CommandGroup = React78.forwardRef((_a, ref) => {
|
|
|
3824
4052
|
);
|
|
3825
4053
|
});
|
|
3826
4054
|
CommandGroup.displayName = Command$1.Group.displayName;
|
|
3827
|
-
var CommandSeparator =
|
|
4055
|
+
var CommandSeparator = React80.forwardRef((_a, ref) => {
|
|
3828
4056
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
3829
4057
|
return /* @__PURE__ */ jsx(
|
|
3830
4058
|
Command$1.Separator,
|
|
@@ -3835,7 +4063,7 @@ var CommandSeparator = React78.forwardRef((_a, ref) => {
|
|
|
3835
4063
|
);
|
|
3836
4064
|
});
|
|
3837
4065
|
CommandSeparator.displayName = Command$1.Separator.displayName;
|
|
3838
|
-
var CommandItem =
|
|
4066
|
+
var CommandItem = React80.forwardRef((_a, ref) => {
|
|
3839
4067
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
3840
4068
|
return /* @__PURE__ */ jsx(
|
|
3841
4069
|
Command$1.Item,
|
|
@@ -3898,7 +4126,7 @@ var sliderHandleVariants = cva(
|
|
|
3898
4126
|
}
|
|
3899
4127
|
}
|
|
3900
4128
|
);
|
|
3901
|
-
var SliderHandle =
|
|
4129
|
+
var SliderHandle = React80.forwardRef(
|
|
3902
4130
|
(_a, ref) => {
|
|
3903
4131
|
var _b = _a, { className, state, value, showTooltip = false } = _b, props = __objRest(_b, ["className", "state", "value", "showTooltip"]);
|
|
3904
4132
|
const isDisabled = state === "disabled";
|
|
@@ -3961,7 +4189,7 @@ function buildHistogramPath(data, width, height) {
|
|
|
3961
4189
|
path += ` L ${width} ${height} Z`;
|
|
3962
4190
|
return path;
|
|
3963
4191
|
}
|
|
3964
|
-
var DataRangeSlider =
|
|
4192
|
+
var DataRangeSlider = React80.forwardRef(
|
|
3965
4193
|
(_a, ref) => {
|
|
3966
4194
|
var _b = _a, {
|
|
3967
4195
|
className,
|
|
@@ -3992,18 +4220,18 @@ var DataRangeSlider = React78.forwardRef(
|
|
|
3992
4220
|
"formatValue",
|
|
3993
4221
|
"onValueChange"
|
|
3994
4222
|
]);
|
|
3995
|
-
const trackRef =
|
|
3996
|
-
const [draggingHandle, setDraggingHandle] =
|
|
3997
|
-
const [focusedHandle, setFocusedHandle] =
|
|
3998
|
-
const clipId =
|
|
4223
|
+
const trackRef = React80.useRef(null);
|
|
4224
|
+
const [draggingHandle, setDraggingHandle] = React80.useState(null);
|
|
4225
|
+
const [focusedHandle, setFocusedHandle] = React80.useState(null);
|
|
4226
|
+
const clipId = React80.useId();
|
|
3999
4227
|
const [rangeMin, rangeMax] = value;
|
|
4000
4228
|
const pctMin = percent(rangeMin, min, max);
|
|
4001
4229
|
const pctMax = percent(rangeMax, min, max);
|
|
4002
|
-
const fmt =
|
|
4230
|
+
const fmt = React80.useCallback(
|
|
4003
4231
|
(v) => formatValue ? formatValue(v) : `${v}`,
|
|
4004
4232
|
[formatValue]
|
|
4005
4233
|
);
|
|
4006
|
-
const getValueFromPointer =
|
|
4234
|
+
const getValueFromPointer = React80.useCallback(
|
|
4007
4235
|
(clientX) => {
|
|
4008
4236
|
const track = trackRef.current;
|
|
4009
4237
|
if (!track) return 0;
|
|
@@ -4014,7 +4242,7 @@ var DataRangeSlider = React78.forwardRef(
|
|
|
4014
4242
|
},
|
|
4015
4243
|
[min, max, step]
|
|
4016
4244
|
);
|
|
4017
|
-
const closestHandle =
|
|
4245
|
+
const closestHandle = React80.useCallback(
|
|
4018
4246
|
(pointerValue) => {
|
|
4019
4247
|
const distMin = Math.abs(pointerValue - rangeMin);
|
|
4020
4248
|
const distMax = Math.abs(pointerValue - rangeMax);
|
|
@@ -4022,7 +4250,7 @@ var DataRangeSlider = React78.forwardRef(
|
|
|
4022
4250
|
},
|
|
4023
4251
|
[rangeMin, rangeMax]
|
|
4024
4252
|
);
|
|
4025
|
-
const updateValue =
|
|
4253
|
+
const updateValue = React80.useCallback(
|
|
4026
4254
|
(handle, newVal) => {
|
|
4027
4255
|
if (handle === 0) {
|
|
4028
4256
|
const clamped = clamp(newVal, min, rangeMax);
|
|
@@ -4034,7 +4262,7 @@ var DataRangeSlider = React78.forwardRef(
|
|
|
4034
4262
|
},
|
|
4035
4263
|
[min, max, rangeMin, rangeMax, onValueChange]
|
|
4036
4264
|
);
|
|
4037
|
-
const handlePointerDown =
|
|
4265
|
+
const handlePointerDown = React80.useCallback(
|
|
4038
4266
|
(e) => {
|
|
4039
4267
|
if (disabled) return;
|
|
4040
4268
|
e.preventDefault();
|
|
@@ -4046,7 +4274,7 @@ var DataRangeSlider = React78.forwardRef(
|
|
|
4046
4274
|
},
|
|
4047
4275
|
[disabled, getValueFromPointer, closestHandle, updateValue]
|
|
4048
4276
|
);
|
|
4049
|
-
const handlePointerMove =
|
|
4277
|
+
const handlePointerMove = React80.useCallback(
|
|
4050
4278
|
(e) => {
|
|
4051
4279
|
if (draggingHandle === null || disabled) return;
|
|
4052
4280
|
const newVal = getValueFromPointer(e.clientX);
|
|
@@ -4054,10 +4282,10 @@ var DataRangeSlider = React78.forwardRef(
|
|
|
4054
4282
|
},
|
|
4055
4283
|
[draggingHandle, disabled, getValueFromPointer, updateValue]
|
|
4056
4284
|
);
|
|
4057
|
-
const handlePointerUp =
|
|
4285
|
+
const handlePointerUp = React80.useCallback(() => {
|
|
4058
4286
|
setDraggingHandle(null);
|
|
4059
4287
|
}, []);
|
|
4060
|
-
const makeKeyHandler =
|
|
4288
|
+
const makeKeyHandler = React80.useCallback(
|
|
4061
4289
|
(handle) => (e) => {
|
|
4062
4290
|
if (disabled) return;
|
|
4063
4291
|
const currentVal = handle === 0 ? rangeMin : rangeMax;
|
|
@@ -4085,7 +4313,7 @@ var DataRangeSlider = React78.forwardRef(
|
|
|
4085
4313
|
},
|
|
4086
4314
|
[disabled, rangeMin, rangeMax, step, min, max, updateValue]
|
|
4087
4315
|
);
|
|
4088
|
-
const tickLabels =
|
|
4316
|
+
const tickLabels = React80.useMemo(() => {
|
|
4089
4317
|
if (pointLabels) return pointLabels;
|
|
4090
4318
|
const labels = [];
|
|
4091
4319
|
for (let i = 0; i < pointCount; i++) {
|
|
@@ -4096,7 +4324,7 @@ var DataRangeSlider = React78.forwardRef(
|
|
|
4096
4324
|
}, [pointLabels, pointCount, min, max, fmt]);
|
|
4097
4325
|
const chartWidth = 320;
|
|
4098
4326
|
const chartHeight = 32;
|
|
4099
|
-
const histogramPath =
|
|
4327
|
+
const histogramPath = React80.useMemo(
|
|
4100
4328
|
() => buildHistogramPath(data, chartWidth, chartHeight),
|
|
4101
4329
|
[data]
|
|
4102
4330
|
);
|
|
@@ -4160,7 +4388,7 @@ var DataRangeSlider = React78.forwardRef(
|
|
|
4160
4388
|
/* @__PURE__ */ jsx(
|
|
4161
4389
|
"div",
|
|
4162
4390
|
{
|
|
4163
|
-
className: "absolute top-1/2 h-1 -translate-y-1/2 bg-
|
|
4391
|
+
className: "absolute top-1/2 h-1 -translate-y-1/2 bg-informative",
|
|
4164
4392
|
style: { left: `${pctMin}%`, right: `${100 - pctMax}%` }
|
|
4165
4393
|
}
|
|
4166
4394
|
),
|
|
@@ -4243,7 +4471,7 @@ DataRangeSlider.displayName = "DataRangeSlider";
|
|
|
4243
4471
|
var labelVariants = cva(
|
|
4244
4472
|
"text-sm font-medium leading-5 text-sui-text-default"
|
|
4245
4473
|
);
|
|
4246
|
-
var Label =
|
|
4474
|
+
var Label = React80.forwardRef((_a, ref) => {
|
|
4247
4475
|
var _b = _a, { className, required, supportText, tailIcon, children } = _b, props = __objRest(_b, ["className", "required", "supportText", "tailIcon", "children"]);
|
|
4248
4476
|
const hasTail = !!(supportText || tailIcon);
|
|
4249
4477
|
return /* @__PURE__ */ jsxs(
|
|
@@ -4304,7 +4532,7 @@ var inputContainerVariants = cva(
|
|
|
4304
4532
|
}
|
|
4305
4533
|
}
|
|
4306
4534
|
);
|
|
4307
|
-
var InputField =
|
|
4535
|
+
var InputField = React80.forwardRef(
|
|
4308
4536
|
(_a, ref) => {
|
|
4309
4537
|
var _b = _a, {
|
|
4310
4538
|
className,
|
|
@@ -4367,15 +4595,15 @@ var InputField = React78.forwardRef(
|
|
|
4367
4595
|
"spellCheck",
|
|
4368
4596
|
"autoComplete"
|
|
4369
4597
|
]);
|
|
4370
|
-
const generatedId =
|
|
4598
|
+
const generatedId = React80.useId();
|
|
4371
4599
|
const inputId = id || generatedId;
|
|
4372
4600
|
const captionId = `${inputId}-caption`;
|
|
4373
4601
|
const hasError = !!error;
|
|
4374
4602
|
const helperText = hasError ? error : caption;
|
|
4375
4603
|
const hasInlineTags = !!(tags && tags.length > 0 && !hasError && !disabled);
|
|
4376
|
-
const innerRef =
|
|
4377
|
-
|
|
4378
|
-
const [internalHasValue, setInternalHasValue] =
|
|
4604
|
+
const innerRef = React80.useRef(null);
|
|
4605
|
+
React80.useImperativeHandle(ref, () => innerRef.current, []);
|
|
4606
|
+
const [internalHasValue, setInternalHasValue] = React80.useState(false);
|
|
4379
4607
|
const hasValue = clearable ? typeof value === "string" ? value.length > 0 : internalHasValue : false;
|
|
4380
4608
|
const handleChange = (e) => {
|
|
4381
4609
|
if (clearable && value === void 0) {
|
|
@@ -4587,8 +4815,7 @@ var InputField = React78.forwardRef(
|
|
|
4587
4815
|
),
|
|
4588
4816
|
children: tailAddon
|
|
4589
4817
|
}
|
|
4590
|
-
)
|
|
4591
|
-
/* @__PURE__ */ jsx("div", { className: "pointer-events-none absolute inset-0 rounded-[inherit] shadow-inset-bottom" })
|
|
4818
|
+
)
|
|
4592
4819
|
]
|
|
4593
4820
|
}
|
|
4594
4821
|
),
|
|
@@ -4607,7 +4834,7 @@ var InputField = React78.forwardRef(
|
|
|
4607
4834
|
}
|
|
4608
4835
|
);
|
|
4609
4836
|
InputField.displayName = "InputField";
|
|
4610
|
-
var DataRangeSliderInput =
|
|
4837
|
+
var DataRangeSliderInput = React80.forwardRef(
|
|
4611
4838
|
(_a, ref) => {
|
|
4612
4839
|
var _b = _a, {
|
|
4613
4840
|
className,
|
|
@@ -4727,7 +4954,7 @@ var DataRangeSliderInput = React78.forwardRef(
|
|
|
4727
4954
|
DataRangeSliderInput.displayName = "DataRangeSliderInput";
|
|
4728
4955
|
var Popover = PopoverPrimitive.Root;
|
|
4729
4956
|
var PopoverTrigger = PopoverPrimitive.Trigger;
|
|
4730
|
-
var PopoverContent =
|
|
4957
|
+
var PopoverContent = React80.forwardRef((_a, ref) => {
|
|
4731
4958
|
var _b = _a, { className, align = "center", sideOffset = 4 } = _b, props = __objRest(_b, ["className", "align", "sideOffset"]);
|
|
4732
4959
|
return /* @__PURE__ */ jsx(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx(
|
|
4733
4960
|
PopoverPrimitive.Content,
|
|
@@ -4750,7 +4977,7 @@ function DatePicker({
|
|
|
4750
4977
|
className,
|
|
4751
4978
|
disabled
|
|
4752
4979
|
}) {
|
|
4753
|
-
const [open, setOpen] =
|
|
4980
|
+
const [open, setOpen] = React80.useState(false);
|
|
4754
4981
|
return /* @__PURE__ */ jsxs(Popover, { open, onOpenChange: setOpen, children: [
|
|
4755
4982
|
/* @__PURE__ */ jsx(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxs(
|
|
4756
4983
|
Button,
|
|
@@ -4791,7 +5018,7 @@ function DateRangePicker({
|
|
|
4791
5018
|
className,
|
|
4792
5019
|
disabled
|
|
4793
5020
|
}) {
|
|
4794
|
-
const [open, setOpen] =
|
|
5021
|
+
const [open, setOpen] = React80.useState(false);
|
|
4795
5022
|
return /* @__PURE__ */ jsxs(Popover, { open, onOpenChange: setOpen, children: [
|
|
4796
5023
|
/* @__PURE__ */ jsx(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxs(
|
|
4797
5024
|
Button,
|
|
@@ -4842,7 +5069,7 @@ function DatePickerWithPresets({
|
|
|
4842
5069
|
className,
|
|
4843
5070
|
disabled
|
|
4844
5071
|
}) {
|
|
4845
|
-
const [open, setOpen] =
|
|
5072
|
+
const [open, setOpen] = React80.useState(false);
|
|
4846
5073
|
return /* @__PURE__ */ jsxs(Popover, { open, onOpenChange: setOpen, children: [
|
|
4847
5074
|
/* @__PURE__ */ jsx(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxs(
|
|
4848
5075
|
Button,
|
|
@@ -4963,7 +5190,7 @@ function RequirementItem({ label, met }) {
|
|
|
4963
5190
|
)
|
|
4964
5191
|
] });
|
|
4965
5192
|
}
|
|
4966
|
-
var InputCaption =
|
|
5193
|
+
var InputCaption = React80.forwardRef(
|
|
4967
5194
|
(_a, ref) => {
|
|
4968
5195
|
var _b = _a, {
|
|
4969
5196
|
variant = "default",
|
|
@@ -5054,9 +5281,9 @@ var InputCaption = React78.forwardRef(
|
|
|
5054
5281
|
className
|
|
5055
5282
|
)
|
|
5056
5283
|
}, props), {
|
|
5057
|
-
children:
|
|
5058
|
-
if (!
|
|
5059
|
-
return
|
|
5284
|
+
children: React80.Children.map(children, (child) => {
|
|
5285
|
+
if (!React80.isValidElement(child)) return child;
|
|
5286
|
+
return React80.cloneElement(child, {
|
|
5060
5287
|
className: cn(
|
|
5061
5288
|
"flex-1",
|
|
5062
5289
|
child.props.className
|
|
@@ -5332,38 +5559,38 @@ function DatePickerInput({
|
|
|
5332
5559
|
disabled = false,
|
|
5333
5560
|
className
|
|
5334
5561
|
}) {
|
|
5335
|
-
const [calendarOpen, setCalendarOpen] =
|
|
5562
|
+
const [calendarOpen, setCalendarOpen] = React80.useState(false);
|
|
5336
5563
|
const hasError = !!error;
|
|
5337
5564
|
const helperText = hasError ? error : caption;
|
|
5338
5565
|
const singleSegments = dateToSegments(date);
|
|
5339
|
-
const [singleDay, setSingleDay] =
|
|
5340
|
-
const [singleMonth, setSingleMonth] =
|
|
5341
|
-
const [singleYear, setSingleYear] =
|
|
5566
|
+
const [singleDay, setSingleDay] = React80.useState(singleSegments.day);
|
|
5567
|
+
const [singleMonth, setSingleMonth] = React80.useState(singleSegments.month);
|
|
5568
|
+
const [singleYear, setSingleYear] = React80.useState(singleSegments.year);
|
|
5342
5569
|
const startSegments = dateToSegments(dateRange == null ? void 0 : dateRange.from);
|
|
5343
5570
|
const endSegments = dateToSegments(dateRange == null ? void 0 : dateRange.to);
|
|
5344
|
-
const [startDay, setStartDay] =
|
|
5345
|
-
const [startMonth, setStartMonth] =
|
|
5346
|
-
const [startYear, setStartYear] =
|
|
5347
|
-
const [endDay, setEndDay] =
|
|
5348
|
-
const [endMonth, setEndMonth] =
|
|
5349
|
-
const [endYear, setEndYear] =
|
|
5350
|
-
const singleDayRef =
|
|
5351
|
-
const singleMonthRef =
|
|
5352
|
-
const singleYearRef =
|
|
5353
|
-
const startDayRef =
|
|
5354
|
-
const startMonthRef =
|
|
5355
|
-
const startYearRef =
|
|
5356
|
-
const endDayRef =
|
|
5357
|
-
const endMonthRef =
|
|
5358
|
-
const endYearRef =
|
|
5359
|
-
const calendarIconRef =
|
|
5360
|
-
|
|
5571
|
+
const [startDay, setStartDay] = React80.useState(startSegments.day);
|
|
5572
|
+
const [startMonth, setStartMonth] = React80.useState(startSegments.month);
|
|
5573
|
+
const [startYear, setStartYear] = React80.useState(startSegments.year);
|
|
5574
|
+
const [endDay, setEndDay] = React80.useState(endSegments.day);
|
|
5575
|
+
const [endMonth, setEndMonth] = React80.useState(endSegments.month);
|
|
5576
|
+
const [endYear, setEndYear] = React80.useState(endSegments.year);
|
|
5577
|
+
const singleDayRef = React80.useRef(null);
|
|
5578
|
+
const singleMonthRef = React80.useRef(null);
|
|
5579
|
+
const singleYearRef = React80.useRef(null);
|
|
5580
|
+
const startDayRef = React80.useRef(null);
|
|
5581
|
+
const startMonthRef = React80.useRef(null);
|
|
5582
|
+
const startYearRef = React80.useRef(null);
|
|
5583
|
+
const endDayRef = React80.useRef(null);
|
|
5584
|
+
const endMonthRef = React80.useRef(null);
|
|
5585
|
+
const endYearRef = React80.useRef(null);
|
|
5586
|
+
const calendarIconRef = React80.useRef(null);
|
|
5587
|
+
React80.useEffect(() => {
|
|
5361
5588
|
const s = dateToSegments(date);
|
|
5362
5589
|
setSingleDay(s.day);
|
|
5363
5590
|
setSingleMonth(s.month);
|
|
5364
5591
|
setSingleYear(s.year);
|
|
5365
5592
|
}, [date]);
|
|
5366
|
-
|
|
5593
|
+
React80.useEffect(() => {
|
|
5367
5594
|
const s = dateToSegments(dateRange == null ? void 0 : dateRange.from);
|
|
5368
5595
|
setStartDay(s.day);
|
|
5369
5596
|
setStartMonth(s.month);
|
|
@@ -5373,7 +5600,7 @@ function DatePickerInput({
|
|
|
5373
5600
|
setEndMonth(e.month);
|
|
5374
5601
|
setEndYear(e.year);
|
|
5375
5602
|
}, [dateRange]);
|
|
5376
|
-
const handleSingleSegmentChange =
|
|
5603
|
+
const handleSingleSegmentChange = React80.useCallback(
|
|
5377
5604
|
(day, month, year) => {
|
|
5378
5605
|
const d = segmentsToDate(day, month, year);
|
|
5379
5606
|
if (day.length === 2 && month.length === 2 && year.length === 4) {
|
|
@@ -5384,7 +5611,7 @@ function DatePickerInput({
|
|
|
5384
5611
|
},
|
|
5385
5612
|
[onDateChange]
|
|
5386
5613
|
);
|
|
5387
|
-
const handleRangeSegmentChange =
|
|
5614
|
+
const handleRangeSegmentChange = React80.useCallback(
|
|
5388
5615
|
(sd, sm, sy, ed, em, ey) => {
|
|
5389
5616
|
const from = segmentsToDate(sd, sm, sy);
|
|
5390
5617
|
const to = segmentsToDate(ed, em, ey);
|
|
@@ -5459,7 +5686,7 @@ function DatePickerInput({
|
|
|
5459
5686
|
setCalendarOpen(false);
|
|
5460
5687
|
}
|
|
5461
5688
|
};
|
|
5462
|
-
const inputId =
|
|
5689
|
+
const inputId = React80.useId();
|
|
5463
5690
|
return /* @__PURE__ */ jsxs("div", { className: cn("flex w-full flex-col gap-2", className), children: [
|
|
5464
5691
|
label && /* @__PURE__ */ jsx(Label, { htmlFor: inputId, children: label }),
|
|
5465
5692
|
/* @__PURE__ */ jsxs(Popover, { open: calendarOpen, onOpenChange: setCalendarOpen, children: [
|
|
@@ -5645,7 +5872,7 @@ var lineVariants = cva("h-px min-w-0 flex-1 border-t border-sui-border-default",
|
|
|
5645
5872
|
lineStyle: "solid"
|
|
5646
5873
|
}
|
|
5647
5874
|
});
|
|
5648
|
-
var Divider =
|
|
5875
|
+
var Divider = React80.forwardRef(
|
|
5649
5876
|
(_a, ref) => {
|
|
5650
5877
|
var _b = _a, {
|
|
5651
5878
|
className,
|
|
@@ -5720,7 +5947,7 @@ var Divider = React78.forwardRef(
|
|
|
5720
5947
|
}
|
|
5721
5948
|
);
|
|
5722
5949
|
Divider.displayName = "Divider";
|
|
5723
|
-
var MenuSearchInput =
|
|
5950
|
+
var MenuSearchInput = React80.forwardRef(
|
|
5724
5951
|
(_a, ref) => {
|
|
5725
5952
|
var _b = _a, {
|
|
5726
5953
|
className,
|
|
@@ -5742,15 +5969,15 @@ var MenuSearchInput = React78.forwardRef(
|
|
|
5742
5969
|
"id"
|
|
5743
5970
|
]);
|
|
5744
5971
|
var _a2, _b2;
|
|
5745
|
-
const internalRef =
|
|
5972
|
+
const internalRef = React80.useRef(null);
|
|
5746
5973
|
const inputRef = ref || internalRef;
|
|
5747
|
-
const [internalValue, setInternalValue] =
|
|
5974
|
+
const [internalValue, setInternalValue] = React80.useState(
|
|
5748
5975
|
defaultValue || ""
|
|
5749
5976
|
);
|
|
5750
5977
|
const isControlled = value !== void 0;
|
|
5751
5978
|
const currentValue = isControlled ? String(value) : internalValue;
|
|
5752
5979
|
const hasValue = currentValue.length > 0;
|
|
5753
|
-
const generatedId =
|
|
5980
|
+
const generatedId = React80.useId();
|
|
5754
5981
|
const inputId = id || generatedId;
|
|
5755
5982
|
const handleChange = (e) => {
|
|
5756
5983
|
var _a3;
|
|
@@ -5769,7 +5996,7 @@ var MenuSearchInput = React78.forwardRef(
|
|
|
5769
5996
|
(_a3 = inputRef.current) == null ? void 0 : _a3.focus();
|
|
5770
5997
|
}
|
|
5771
5998
|
};
|
|
5772
|
-
const [isFocused, setIsFocused] =
|
|
5999
|
+
const [isFocused, setIsFocused] = React80.useState(false);
|
|
5773
6000
|
const showShortcut = !!shortcutKey && !hasValue && !isFocused && !disabled;
|
|
5774
6001
|
const handleFocus = (e) => {
|
|
5775
6002
|
var _a3;
|
|
@@ -5883,7 +6110,7 @@ var DropdownMenuGroup = DropdownMenuPrimitive.Group;
|
|
|
5883
6110
|
var DropdownMenuPortal = DropdownMenuPrimitive.Portal;
|
|
5884
6111
|
var DropdownMenuSub = DropdownMenuPrimitive.Sub;
|
|
5885
6112
|
var DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup;
|
|
5886
|
-
var DropdownMenuSubTrigger =
|
|
6113
|
+
var DropdownMenuSubTrigger = React80.forwardRef((_a, ref) => {
|
|
5887
6114
|
var _b = _a, { className, inset, children } = _b, props = __objRest(_b, ["className", "inset", "children"]);
|
|
5888
6115
|
return /* @__PURE__ */ jsxs(
|
|
5889
6116
|
DropdownMenuPrimitive.SubTrigger,
|
|
@@ -5907,7 +6134,7 @@ var DropdownMenuSubTrigger = React78.forwardRef((_a, ref) => {
|
|
|
5907
6134
|
);
|
|
5908
6135
|
});
|
|
5909
6136
|
DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive.SubTrigger.displayName;
|
|
5910
|
-
var DropdownMenuSubContent =
|
|
6137
|
+
var DropdownMenuSubContent = React80.forwardRef((_a, ref) => {
|
|
5911
6138
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
5912
6139
|
return /* @__PURE__ */ jsx(
|
|
5913
6140
|
DropdownMenuPrimitive.SubContent,
|
|
@@ -5922,7 +6149,7 @@ var DropdownMenuSubContent = React78.forwardRef((_a, ref) => {
|
|
|
5922
6149
|
);
|
|
5923
6150
|
});
|
|
5924
6151
|
DropdownMenuSubContent.displayName = DropdownMenuPrimitive.SubContent.displayName;
|
|
5925
|
-
var DropdownMenuContent =
|
|
6152
|
+
var DropdownMenuContent = React80.forwardRef((_a, ref) => {
|
|
5926
6153
|
var _b = _a, { className, sideOffset = 4, search, searchValue, onSearchChange, onSearchClear, searchPlaceholder = "Search", children } = _b, props = __objRest(_b, ["className", "sideOffset", "search", "searchValue", "onSearchChange", "onSearchClear", "searchPlaceholder", "children"]);
|
|
5927
6154
|
return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx(
|
|
5928
6155
|
DropdownMenuPrimitive.Content,
|
|
@@ -5960,7 +6187,7 @@ var DropdownMenuContent = React78.forwardRef((_a, ref) => {
|
|
|
5960
6187
|
) });
|
|
5961
6188
|
});
|
|
5962
6189
|
DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;
|
|
5963
|
-
var DropdownMenuItem =
|
|
6190
|
+
var DropdownMenuItem = React80.forwardRef((_a, ref) => {
|
|
5964
6191
|
var _b = _a, { className, inset, variant = "default" } = _b, props = __objRest(_b, ["className", "inset", "variant"]);
|
|
5965
6192
|
return /* @__PURE__ */ jsx(
|
|
5966
6193
|
DropdownMenuPrimitive.Item,
|
|
@@ -5981,7 +6208,7 @@ var DropdownMenuItem = React78.forwardRef((_a, ref) => {
|
|
|
5981
6208
|
);
|
|
5982
6209
|
});
|
|
5983
6210
|
DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;
|
|
5984
|
-
var DropdownMenuCheckboxItem =
|
|
6211
|
+
var DropdownMenuCheckboxItem = React80.forwardRef((_a, ref) => {
|
|
5985
6212
|
var _b = _a, { className, children, checked } = _b, props = __objRest(_b, ["className", "children", "checked"]);
|
|
5986
6213
|
return /* @__PURE__ */ jsxs(
|
|
5987
6214
|
DropdownMenuPrimitive.CheckboxItem,
|
|
@@ -6003,7 +6230,7 @@ var DropdownMenuCheckboxItem = React78.forwardRef((_a, ref) => {
|
|
|
6003
6230
|
);
|
|
6004
6231
|
});
|
|
6005
6232
|
DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive.CheckboxItem.displayName;
|
|
6006
|
-
var DropdownMenuRadioItem =
|
|
6233
|
+
var DropdownMenuRadioItem = React80.forwardRef((_a, ref) => {
|
|
6007
6234
|
var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
|
|
6008
6235
|
return /* @__PURE__ */ jsxs(
|
|
6009
6236
|
DropdownMenuPrimitive.RadioItem,
|
|
@@ -6024,7 +6251,7 @@ var DropdownMenuRadioItem = React78.forwardRef((_a, ref) => {
|
|
|
6024
6251
|
);
|
|
6025
6252
|
});
|
|
6026
6253
|
DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;
|
|
6027
|
-
var DropdownMenuLabel =
|
|
6254
|
+
var DropdownMenuLabel = React80.forwardRef((_a, ref) => {
|
|
6028
6255
|
var _b = _a, { className, inset } = _b, props = __objRest(_b, ["className", "inset"]);
|
|
6029
6256
|
return /* @__PURE__ */ jsx(
|
|
6030
6257
|
DropdownMenuPrimitive.Label,
|
|
@@ -6039,7 +6266,7 @@ var DropdownMenuLabel = React78.forwardRef((_a, ref) => {
|
|
|
6039
6266
|
);
|
|
6040
6267
|
});
|
|
6041
6268
|
DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;
|
|
6042
|
-
var DropdownMenuSeparator =
|
|
6269
|
+
var DropdownMenuSeparator = React80.forwardRef((_a, ref) => {
|
|
6043
6270
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
6044
6271
|
return /* @__PURE__ */ jsx(
|
|
6045
6272
|
DropdownMenuPrimitive.Separator,
|
|
@@ -6068,7 +6295,7 @@ var DropdownMenuShortcut = (_a) => {
|
|
|
6068
6295
|
);
|
|
6069
6296
|
};
|
|
6070
6297
|
DropdownMenuShortcut.displayName = "DropdownMenuShortcut";
|
|
6071
|
-
var DropdownMenuCaption =
|
|
6298
|
+
var DropdownMenuCaption = React80.forwardRef((_a, ref) => {
|
|
6072
6299
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
6073
6300
|
return /* @__PURE__ */ jsx(
|
|
6074
6301
|
"p",
|
|
@@ -6083,7 +6310,7 @@ var DropdownMenuCaption = React78.forwardRef((_a, ref) => {
|
|
|
6083
6310
|
);
|
|
6084
6311
|
});
|
|
6085
6312
|
DropdownMenuCaption.displayName = "DropdownMenuCaption";
|
|
6086
|
-
var DropdownMenuUserbar =
|
|
6313
|
+
var DropdownMenuUserbar = React80.forwardRef((_a, ref) => {
|
|
6087
6314
|
var _b = _a, { className, name, email, avatar, badge } = _b, props = __objRest(_b, ["className", "name", "email", "avatar", "badge"]);
|
|
6088
6315
|
return /* @__PURE__ */ jsxs(
|
|
6089
6316
|
"div",
|
|
@@ -6108,7 +6335,7 @@ var DropdownMenuUserbar = React78.forwardRef((_a, ref) => {
|
|
|
6108
6335
|
);
|
|
6109
6336
|
});
|
|
6110
6337
|
DropdownMenuUserbar.displayName = "DropdownMenuUserbar";
|
|
6111
|
-
var DropdownMenuLargeItem =
|
|
6338
|
+
var DropdownMenuLargeItem = React80.forwardRef((_a, ref) => {
|
|
6112
6339
|
var _b = _a, { className, label, caption, icon, badge, tailIcon } = _b, props = __objRest(_b, ["className", "label", "caption", "icon", "badge", "tailIcon"]);
|
|
6113
6340
|
return /* @__PURE__ */ jsxs(
|
|
6114
6341
|
DropdownMenuPrimitive.Item,
|
|
@@ -6149,7 +6376,7 @@ var emptyStateVariants = cva(
|
|
|
6149
6376
|
}
|
|
6150
6377
|
}
|
|
6151
6378
|
);
|
|
6152
|
-
var EmptyState =
|
|
6379
|
+
var EmptyState = React80.forwardRef(
|
|
6153
6380
|
(_a, ref) => {
|
|
6154
6381
|
var _b = _a, {
|
|
6155
6382
|
className,
|
|
@@ -6215,7 +6442,7 @@ function EmptyStateText({
|
|
|
6215
6442
|
/* @__PURE__ */ jsx("p", { className: "text-xs leading-4 text-sui-text-muted w-full", children: description })
|
|
6216
6443
|
] });
|
|
6217
6444
|
}
|
|
6218
|
-
var FileUploadArea =
|
|
6445
|
+
var FileUploadArea = React80.forwardRef(
|
|
6219
6446
|
(_a, ref) => {
|
|
6220
6447
|
var _b = _a, {
|
|
6221
6448
|
className,
|
|
@@ -6240,8 +6467,8 @@ var FileUploadArea = React78.forwardRef(
|
|
|
6240
6467
|
"onDrop",
|
|
6241
6468
|
"onDragOver"
|
|
6242
6469
|
]);
|
|
6243
|
-
const [isDragOver, setIsDragOver] =
|
|
6244
|
-
const handleDragOver =
|
|
6470
|
+
const [isDragOver, setIsDragOver] = React80.useState(false);
|
|
6471
|
+
const handleDragOver = React80.useCallback(
|
|
6245
6472
|
(e) => {
|
|
6246
6473
|
if (disabled) return;
|
|
6247
6474
|
e.preventDefault();
|
|
@@ -6250,10 +6477,10 @@ var FileUploadArea = React78.forwardRef(
|
|
|
6250
6477
|
},
|
|
6251
6478
|
[disabled, onDragOver]
|
|
6252
6479
|
);
|
|
6253
|
-
const handleDragLeave =
|
|
6480
|
+
const handleDragLeave = React80.useCallback(() => {
|
|
6254
6481
|
setIsDragOver(false);
|
|
6255
6482
|
}, []);
|
|
6256
|
-
const handleDrop =
|
|
6483
|
+
const handleDrop = React80.useCallback(
|
|
6257
6484
|
(e) => {
|
|
6258
6485
|
if (disabled) return;
|
|
6259
6486
|
e.preventDefault();
|
|
@@ -6262,11 +6489,11 @@ var FileUploadArea = React78.forwardRef(
|
|
|
6262
6489
|
},
|
|
6263
6490
|
[disabled, onDrop]
|
|
6264
6491
|
);
|
|
6265
|
-
const handleClick =
|
|
6492
|
+
const handleClick = React80.useCallback(() => {
|
|
6266
6493
|
if (disabled) return;
|
|
6267
6494
|
onClick == null ? void 0 : onClick();
|
|
6268
6495
|
}, [disabled, onClick]);
|
|
6269
|
-
const handleKeyDown =
|
|
6496
|
+
const handleKeyDown = React80.useCallback(
|
|
6270
6497
|
(e) => {
|
|
6271
6498
|
if (disabled) return;
|
|
6272
6499
|
if (e.key === "Enter" || e.key === " ") {
|
|
@@ -6342,7 +6569,7 @@ var FileUploadArea = React78.forwardRef(
|
|
|
6342
6569
|
"span",
|
|
6343
6570
|
{
|
|
6344
6571
|
className: cn(
|
|
6345
|
-
disabled ? "text-sui-text-hint" : "text-
|
|
6572
|
+
disabled ? "text-sui-text-hint" : "text-sui-text-informative"
|
|
6346
6573
|
),
|
|
6347
6574
|
children: linkText
|
|
6348
6575
|
}
|
|
@@ -6382,7 +6609,7 @@ var progressBarVariants = cva(
|
|
|
6382
6609
|
}
|
|
6383
6610
|
);
|
|
6384
6611
|
var SEGMENT_COUNT = 10;
|
|
6385
|
-
var ProgressBar =
|
|
6612
|
+
var ProgressBar = React80.forwardRef(
|
|
6386
6613
|
(_a, ref) => {
|
|
6387
6614
|
var _b = _a, {
|
|
6388
6615
|
className,
|
|
@@ -6404,7 +6631,7 @@ var ProgressBar = React78.forwardRef(
|
|
|
6404
6631
|
const clampedValue = Math.min(100, Math.max(0, value != null ? value : 0));
|
|
6405
6632
|
const displayPercentage = `${Math.round(clampedValue)}%`;
|
|
6406
6633
|
const filledSegments = Math.round(clampedValue / 100 * SEGMENT_COUNT);
|
|
6407
|
-
const generatedId =
|
|
6634
|
+
const generatedId = React80.useId();
|
|
6408
6635
|
const labelId = `${generatedId}-label`;
|
|
6409
6636
|
return /* @__PURE__ */ jsxs(
|
|
6410
6637
|
"div",
|
|
@@ -6442,7 +6669,7 @@ var ProgressBar = React78.forwardRef(
|
|
|
6442
6669
|
{
|
|
6443
6670
|
className: cn(
|
|
6444
6671
|
"h-1 min-h-px min-w-px flex-[1_0_0] rounded-full",
|
|
6445
|
-
i < filledSegments ? "bg-
|
|
6672
|
+
i < filledSegments ? "bg-informative" : "bg-sui-bg-basic-gray-alpha-10"
|
|
6446
6673
|
)
|
|
6447
6674
|
},
|
|
6448
6675
|
i
|
|
@@ -6462,7 +6689,7 @@ var ProgressBar = React78.forwardRef(
|
|
|
6462
6689
|
children: /* @__PURE__ */ jsx(
|
|
6463
6690
|
ProgressPrimitive2.Indicator,
|
|
6464
6691
|
{
|
|
6465
|
-
className: "h-full rounded-full bg-
|
|
6692
|
+
className: "h-full rounded-full bg-informative transition-all duration-300 ease-out",
|
|
6466
6693
|
style: { width: `${clampedValue}%` }
|
|
6467
6694
|
}
|
|
6468
6695
|
)
|
|
@@ -6490,7 +6717,7 @@ var statusLabel = {
|
|
|
6490
6717
|
uploading: "Uploading...",
|
|
6491
6718
|
failed: "Error"
|
|
6492
6719
|
};
|
|
6493
|
-
var FileUploadCard =
|
|
6720
|
+
var FileUploadCard = React80.forwardRef(
|
|
6494
6721
|
(_a, ref) => {
|
|
6495
6722
|
var _b = _a, {
|
|
6496
6723
|
className,
|
|
@@ -6702,7 +6929,7 @@ var lineColorMap = {
|
|
|
6702
6929
|
warning: "bg-sui-bg-basic-orange-accent",
|
|
6703
6930
|
error: "bg-sui-bg-basic-red-accent"
|
|
6704
6931
|
};
|
|
6705
|
-
var InlineTips =
|
|
6932
|
+
var InlineTips = React80.forwardRef(
|
|
6706
6933
|
(_a, ref) => {
|
|
6707
6934
|
var _b = _a, {
|
|
6708
6935
|
className,
|
|
@@ -6833,7 +7060,7 @@ function validateFile(file, accept, maxSize) {
|
|
|
6833
7060
|
}
|
|
6834
7061
|
return null;
|
|
6835
7062
|
}
|
|
6836
|
-
var FileUpload =
|
|
7063
|
+
var FileUpload = React80.forwardRef(
|
|
6837
7064
|
({
|
|
6838
7065
|
files = [],
|
|
6839
7066
|
onFilesAdded,
|
|
@@ -6854,16 +7081,16 @@ var FileUpload = React78.forwardRef(
|
|
|
6854
7081
|
icon,
|
|
6855
7082
|
className
|
|
6856
7083
|
}, ref) => {
|
|
6857
|
-
const inputRef =
|
|
6858
|
-
const [errors, setErrors] =
|
|
6859
|
-
const [thumbnails, setThumbnails] =
|
|
7084
|
+
const inputRef = React80.useRef(null);
|
|
7085
|
+
const [errors, setErrors] = React80.useState([]);
|
|
7086
|
+
const [thumbnails, setThumbnails] = React80.useState(
|
|
6860
7087
|
{}
|
|
6861
7088
|
);
|
|
6862
|
-
const thumbnailsRef =
|
|
6863
|
-
|
|
7089
|
+
const thumbnailsRef = React80.useRef(thumbnails);
|
|
7090
|
+
React80.useEffect(() => {
|
|
6864
7091
|
thumbnailsRef.current = thumbnails;
|
|
6865
7092
|
}, [thumbnails]);
|
|
6866
|
-
|
|
7093
|
+
React80.useEffect(() => {
|
|
6867
7094
|
if (!autoPreview) return;
|
|
6868
7095
|
setThumbnails((prev) => {
|
|
6869
7096
|
let next = prev;
|
|
@@ -6894,7 +7121,7 @@ var FileUpload = React78.forwardRef(
|
|
|
6894
7121
|
return changed ? next : prev;
|
|
6895
7122
|
});
|
|
6896
7123
|
}, [files, autoPreview]);
|
|
6897
|
-
|
|
7124
|
+
React80.useEffect(() => {
|
|
6898
7125
|
return () => {
|
|
6899
7126
|
for (const url of Object.values(thumbnailsRef.current)) {
|
|
6900
7127
|
URL.revokeObjectURL(url);
|
|
@@ -6902,7 +7129,7 @@ var FileUpload = React78.forwardRef(
|
|
|
6902
7129
|
};
|
|
6903
7130
|
}, []);
|
|
6904
7131
|
const resolvedDescription = description != null ? description : generateDescription(accept, maxSize, maxFiles);
|
|
6905
|
-
const processFiles =
|
|
7132
|
+
const processFiles = React80.useCallback(
|
|
6906
7133
|
(fileList) => {
|
|
6907
7134
|
const newFiles = Array.from(fileList);
|
|
6908
7135
|
const validationErrors = [];
|
|
@@ -6930,11 +7157,11 @@ var FileUpload = React78.forwardRef(
|
|
|
6930
7157
|
},
|
|
6931
7158
|
[files.length, maxFiles, accept, maxSize, onFilesAdded]
|
|
6932
7159
|
);
|
|
6933
|
-
const handleClick =
|
|
7160
|
+
const handleClick = React80.useCallback(() => {
|
|
6934
7161
|
var _a;
|
|
6935
7162
|
(_a = inputRef.current) == null ? void 0 : _a.click();
|
|
6936
7163
|
}, []);
|
|
6937
|
-
const handleInputChange =
|
|
7164
|
+
const handleInputChange = React80.useCallback(
|
|
6938
7165
|
(e) => {
|
|
6939
7166
|
if (e.target.files && e.target.files.length > 0) {
|
|
6940
7167
|
processFiles(e.target.files);
|
|
@@ -6943,7 +7170,7 @@ var FileUpload = React78.forwardRef(
|
|
|
6943
7170
|
},
|
|
6944
7171
|
[processFiles]
|
|
6945
7172
|
);
|
|
6946
|
-
const handleDrop =
|
|
7173
|
+
const handleDrop = React80.useCallback(
|
|
6947
7174
|
(e) => {
|
|
6948
7175
|
if (e.dataTransfer.files && e.dataTransfer.files.length > 0) {
|
|
6949
7176
|
processFiles(e.dataTransfer.files);
|
|
@@ -6951,10 +7178,10 @@ var FileUpload = React78.forwardRef(
|
|
|
6951
7178
|
},
|
|
6952
7179
|
[processFiles]
|
|
6953
7180
|
);
|
|
6954
|
-
const dismissError =
|
|
7181
|
+
const dismissError = React80.useCallback((index) => {
|
|
6955
7182
|
setErrors((prev) => prev.filter((_, i) => i !== index));
|
|
6956
7183
|
}, []);
|
|
6957
|
-
const handlePaste =
|
|
7184
|
+
const handlePaste = React80.useCallback(
|
|
6958
7185
|
(e) => {
|
|
6959
7186
|
var _a;
|
|
6960
7187
|
if (disabled || !pasteEnabled) return;
|
|
@@ -6975,7 +7202,7 @@ var FileUpload = React78.forwardRef(
|
|
|
6975
7202
|
},
|
|
6976
7203
|
[disabled, pasteEnabled, processFiles]
|
|
6977
7204
|
);
|
|
6978
|
-
const handleCancel =
|
|
7205
|
+
const handleCancel = React80.useCallback(
|
|
6979
7206
|
(id) => {
|
|
6980
7207
|
const uploadFile = files.find((f) => f.id === id);
|
|
6981
7208
|
if (uploadFile == null ? void 0 : uploadFile.abortController) {
|
|
@@ -7092,7 +7319,7 @@ var ariaSortMap = {
|
|
|
7092
7319
|
desc: "descending",
|
|
7093
7320
|
none: "none"
|
|
7094
7321
|
};
|
|
7095
|
-
var GridTableHeaderItem =
|
|
7322
|
+
var GridTableHeaderItem = React80.forwardRef(
|
|
7096
7323
|
(_a, ref) => {
|
|
7097
7324
|
var _b = _a, {
|
|
7098
7325
|
className,
|
|
@@ -7194,7 +7421,7 @@ var gridTableRowVariants = cva(
|
|
|
7194
7421
|
}
|
|
7195
7422
|
}
|
|
7196
7423
|
);
|
|
7197
|
-
var GridTableRow =
|
|
7424
|
+
var GridTableRow = React80.forwardRef(
|
|
7198
7425
|
(_a, ref) => {
|
|
7199
7426
|
var _b = _a, { className, variant = "default", children } = _b, props = __objRest(_b, ["className", "variant", "children"]);
|
|
7200
7427
|
return /* @__PURE__ */ jsx(
|
|
@@ -7210,7 +7437,7 @@ var GridTableRow = React78.forwardRef(
|
|
|
7210
7437
|
}
|
|
7211
7438
|
);
|
|
7212
7439
|
GridTableRow.displayName = "GridTableRow";
|
|
7213
|
-
var GridTableCell =
|
|
7440
|
+
var GridTableCell = React80.forwardRef(
|
|
7214
7441
|
(_a, ref) => {
|
|
7215
7442
|
var _b = _a, { className, bordered = true, children } = _b, props = __objRest(_b, ["className", "bordered", "children"]);
|
|
7216
7443
|
return /* @__PURE__ */ jsx(
|
|
@@ -7254,7 +7481,7 @@ var gridTableSlotItemVariants = cva(
|
|
|
7254
7481
|
}
|
|
7255
7482
|
}
|
|
7256
7483
|
);
|
|
7257
|
-
var GridTableSlotItem =
|
|
7484
|
+
var GridTableSlotItem = React80.forwardRef(
|
|
7258
7485
|
(_a, ref) => {
|
|
7259
7486
|
var _b = _a, {
|
|
7260
7487
|
className,
|
|
@@ -7402,7 +7629,7 @@ var stepperNumberVariants = cva(
|
|
|
7402
7629
|
}
|
|
7403
7630
|
}
|
|
7404
7631
|
);
|
|
7405
|
-
var StepperNumber =
|
|
7632
|
+
var StepperNumber = React80.forwardRef(
|
|
7406
7633
|
(_a, ref) => {
|
|
7407
7634
|
var _b = _a, { className, size, color, number = "1" } = _b, props = __objRest(_b, ["className", "size", "color", "number"]);
|
|
7408
7635
|
return /* @__PURE__ */ jsxs(
|
|
@@ -7441,7 +7668,7 @@ var stepperIconVariants = cva(
|
|
|
7441
7668
|
}
|
|
7442
7669
|
}
|
|
7443
7670
|
);
|
|
7444
|
-
var StepperIcon =
|
|
7671
|
+
var StepperIcon = React80.forwardRef(
|
|
7445
7672
|
(_a, ref) => {
|
|
7446
7673
|
var _b = _a, { className, variant = "dot-large", icon } = _b, props = __objRest(_b, ["className", "variant", "icon"]);
|
|
7447
7674
|
return /* @__PURE__ */ jsxs(
|
|
@@ -7472,17 +7699,23 @@ var textBlockVariants = cva("flex w-full flex-col gap-1", {
|
|
|
7472
7699
|
align: "left"
|
|
7473
7700
|
}
|
|
7474
7701
|
});
|
|
7475
|
-
var horizontalStepperItemVariants = cva(
|
|
7476
|
-
|
|
7477
|
-
|
|
7478
|
-
|
|
7479
|
-
|
|
7702
|
+
var horizontalStepperItemVariants = cva(
|
|
7703
|
+
[
|
|
7704
|
+
"flex w-full flex-col gap-4",
|
|
7705
|
+
"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-sui-border-highlight focus-visible:ring-offset-2 focus-visible:ring-offset-sui-bg-default focus-visible:rounded-sm"
|
|
7706
|
+
].join(" "),
|
|
7707
|
+
{
|
|
7708
|
+
variants: {
|
|
7709
|
+
position: {
|
|
7710
|
+
top: "",
|
|
7711
|
+
bottom: ""
|
|
7712
|
+
}
|
|
7713
|
+
},
|
|
7714
|
+
defaultVariants: {
|
|
7715
|
+
position: "top"
|
|
7480
7716
|
}
|
|
7481
|
-
},
|
|
7482
|
-
defaultVariants: {
|
|
7483
|
-
position: "top"
|
|
7484
7717
|
}
|
|
7485
|
-
|
|
7718
|
+
);
|
|
7486
7719
|
function ConnectorLine({ success }) {
|
|
7487
7720
|
return /* @__PURE__ */ jsx(
|
|
7488
7721
|
"div",
|
|
@@ -7495,7 +7728,7 @@ function ConnectorLine({ success }) {
|
|
|
7495
7728
|
}
|
|
7496
7729
|
);
|
|
7497
7730
|
}
|
|
7498
|
-
var HorizontalStepperItem =
|
|
7731
|
+
var HorizontalStepperItem = React80.forwardRef(
|
|
7499
7732
|
(_a, ref) => {
|
|
7500
7733
|
var _b = _a, {
|
|
7501
7734
|
className,
|
|
@@ -7620,7 +7853,7 @@ var HorizontalStepperItem = React78.forwardRef(
|
|
|
7620
7853
|
}
|
|
7621
7854
|
);
|
|
7622
7855
|
HorizontalStepperItem.displayName = "HorizontalStepperItem";
|
|
7623
|
-
var HorizontalStepper =
|
|
7856
|
+
var HorizontalStepper = React80.forwardRef(
|
|
7624
7857
|
(_a, ref) => {
|
|
7625
7858
|
var _b = _a, {
|
|
7626
7859
|
className,
|
|
@@ -7695,7 +7928,7 @@ var HorizontalStepper = React78.forwardRef(
|
|
|
7695
7928
|
}
|
|
7696
7929
|
);
|
|
7697
7930
|
HorizontalStepper.displayName = "HorizontalStepper";
|
|
7698
|
-
var Input =
|
|
7931
|
+
var Input = React80.forwardRef(
|
|
7699
7932
|
(_a, ref) => {
|
|
7700
7933
|
var _b = _a, { className, type, spellCheck, autoComplete } = _b, props = __objRest(_b, ["className", "type", "spellCheck", "autoComplete"]);
|
|
7701
7934
|
return /* @__PURE__ */ jsx(
|
|
@@ -7788,7 +8021,7 @@ var inputButtonVariants = cva(
|
|
|
7788
8021
|
}
|
|
7789
8022
|
);
|
|
7790
8023
|
var iconOnlyHoverClasses = "[@media(hover:hover)]:hover:[&_i]:text-icon-default-subtle [@media(hover:hover)]:hover:[&_svg]:text-icon-default-subtle active:[&_i]:text-icon-default-subtle active:[&_svg]:text-icon-default-subtle";
|
|
7791
|
-
var InputButton =
|
|
8024
|
+
var InputButton = React80.forwardRef(
|
|
7792
8025
|
(_a, ref) => {
|
|
7793
8026
|
var _b = _a, {
|
|
7794
8027
|
className,
|
|
@@ -7920,7 +8153,7 @@ var InputButton = React78.forwardRef(
|
|
|
7920
8153
|
}
|
|
7921
8154
|
);
|
|
7922
8155
|
InputButton.displayName = "InputButton";
|
|
7923
|
-
var InputStepper =
|
|
8156
|
+
var InputStepper = React80.forwardRef(
|
|
7924
8157
|
({ onIncrement, onDecrement, disabled, className }, ref) => {
|
|
7925
8158
|
return /* @__PURE__ */ jsxs(
|
|
7926
8159
|
"div",
|
|
@@ -7977,7 +8210,7 @@ var InputStepper = React78.forwardRef(
|
|
|
7977
8210
|
}
|
|
7978
8211
|
);
|
|
7979
8212
|
InputStepper.displayName = "InputStepper";
|
|
7980
|
-
var NavigationMenu =
|
|
8213
|
+
var NavigationMenu = React80.forwardRef((_a, ref) => {
|
|
7981
8214
|
var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
|
|
7982
8215
|
return /* @__PURE__ */ jsxs(
|
|
7983
8216
|
NavigationMenuPrimitive.Root,
|
|
@@ -7996,7 +8229,7 @@ var NavigationMenu = React78.forwardRef((_a, ref) => {
|
|
|
7996
8229
|
);
|
|
7997
8230
|
});
|
|
7998
8231
|
NavigationMenu.displayName = NavigationMenuPrimitive.Root.displayName;
|
|
7999
|
-
var NavigationMenuList =
|
|
8232
|
+
var NavigationMenuList = React80.forwardRef((_a, ref) => {
|
|
8000
8233
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
8001
8234
|
return /* @__PURE__ */ jsx(
|
|
8002
8235
|
NavigationMenuPrimitive.List,
|
|
@@ -8014,7 +8247,7 @@ var NavigationMenuItem = NavigationMenuPrimitive.Item;
|
|
|
8014
8247
|
var navigationMenuTriggerStyle = cva(
|
|
8015
8248
|
"group inline-flex h-10 w-max items-center justify-center rounded-md bg-transparent px-4 py-2 text-sm font-medium text-sui-text-default transition-colors [@media(hover:hover)]:hover:bg-sui-bg-state-ghost-hover [@media(hover:hover)]:hover:text-sui-text-default focus:bg-sui-bg-state-ghost-hover focus:text-sui-text-default focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-sui-border-highlight focus-visible:ring-offset-2 focus-visible:ring-offset-sui-bg-default disabled:text-sui-text-hint disabled:pointer-events-none data-[state=open]:text-sui-text-default data-[state=open]:bg-sui-bg-state-ghost-hover"
|
|
8016
8249
|
);
|
|
8017
|
-
var NavigationMenuTrigger =
|
|
8250
|
+
var NavigationMenuTrigger = React80.forwardRef((_a, ref) => {
|
|
8018
8251
|
var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
|
|
8019
8252
|
return /* @__PURE__ */ jsxs(
|
|
8020
8253
|
NavigationMenuPrimitive.Trigger,
|
|
@@ -8037,7 +8270,7 @@ var NavigationMenuTrigger = React78.forwardRef((_a, ref) => {
|
|
|
8037
8270
|
);
|
|
8038
8271
|
});
|
|
8039
8272
|
NavigationMenuTrigger.displayName = NavigationMenuPrimitive.Trigger.displayName;
|
|
8040
|
-
var NavigationMenuContent =
|
|
8273
|
+
var NavigationMenuContent = React80.forwardRef((_a, ref) => {
|
|
8041
8274
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
8042
8275
|
return /* @__PURE__ */ jsx(
|
|
8043
8276
|
NavigationMenuPrimitive.Content,
|
|
@@ -8052,7 +8285,7 @@ var NavigationMenuContent = React78.forwardRef((_a, ref) => {
|
|
|
8052
8285
|
});
|
|
8053
8286
|
NavigationMenuContent.displayName = NavigationMenuPrimitive.Content.displayName;
|
|
8054
8287
|
var NavigationMenuLink = NavigationMenuPrimitive.Link;
|
|
8055
|
-
var NavigationMenuViewport =
|
|
8288
|
+
var NavigationMenuViewport = React80.forwardRef((_a, ref) => {
|
|
8056
8289
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
8057
8290
|
return /* @__PURE__ */ jsx("div", { className: cn("absolute left-0 top-full flex justify-center"), children: /* @__PURE__ */ jsx(
|
|
8058
8291
|
NavigationMenuPrimitive.Viewport,
|
|
@@ -8066,7 +8299,7 @@ var NavigationMenuViewport = React78.forwardRef((_a, ref) => {
|
|
|
8066
8299
|
) });
|
|
8067
8300
|
});
|
|
8068
8301
|
NavigationMenuViewport.displayName = NavigationMenuPrimitive.Viewport.displayName;
|
|
8069
|
-
var NavigationMenuIndicator =
|
|
8302
|
+
var NavigationMenuIndicator = React80.forwardRef((_a, ref) => {
|
|
8070
8303
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
8071
8304
|
return /* @__PURE__ */ jsx(
|
|
8072
8305
|
NavigationMenuPrimitive.Indicator,
|
|
@@ -8128,16 +8361,16 @@ var pageItemVariants = cva(
|
|
|
8128
8361
|
);
|
|
8129
8362
|
var activeDefaultClasses = [
|
|
8130
8363
|
"bg-sui-bg-state-ghost",
|
|
8131
|
-
//
|
|
8132
|
-
"text-sui-
|
|
8133
|
-
"border border-sui-
|
|
8134
|
-
"[@media(hover:hover)]:hover:bg-sui-bg-state-ghost [@media(hover:hover)]:hover:text-sui-
|
|
8364
|
+
// Semantic accent tokens — shift blue → orange in Neutral Violet, matching the theme's accent color
|
|
8365
|
+
"text-sui-text-informative",
|
|
8366
|
+
"border border-sui-border-informative",
|
|
8367
|
+
"[@media(hover:hover)]:hover:bg-sui-bg-state-ghost [@media(hover:hover)]:hover:text-sui-text-informative"
|
|
8135
8368
|
].join(" ");
|
|
8136
8369
|
var activeDotClasses = [
|
|
8137
|
-
"bg-
|
|
8138
|
-
"[@media(hover:hover)]:hover:bg-
|
|
8370
|
+
"bg-informative",
|
|
8371
|
+
"[@media(hover:hover)]:hover:bg-informative"
|
|
8139
8372
|
].join(" ");
|
|
8140
|
-
var PageItem =
|
|
8373
|
+
var PageItem = React80.forwardRef(
|
|
8141
8374
|
(_a, ref) => {
|
|
8142
8375
|
var _b = _a, { className, variant = "default", active = false, label = "0", disabled, asChild = false } = _b, props = __objRest(_b, ["className", "variant", "active", "label", "disabled", "asChild"]);
|
|
8143
8376
|
const Comp = asChild ? Slot : "button";
|
|
@@ -8172,7 +8405,7 @@ var Pagination = (_a) => {
|
|
|
8172
8405
|
);
|
|
8173
8406
|
};
|
|
8174
8407
|
Pagination.displayName = "Pagination";
|
|
8175
|
-
var PaginationContent =
|
|
8408
|
+
var PaginationContent = React80.forwardRef((_a, ref) => {
|
|
8176
8409
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
8177
8410
|
return /* @__PURE__ */ jsx(
|
|
8178
8411
|
"ul",
|
|
@@ -8183,7 +8416,7 @@ var PaginationContent = React78.forwardRef((_a, ref) => {
|
|
|
8183
8416
|
);
|
|
8184
8417
|
});
|
|
8185
8418
|
PaginationContent.displayName = "PaginationContent";
|
|
8186
|
-
var PaginationItem =
|
|
8419
|
+
var PaginationItem = React80.forwardRef((_a, ref) => {
|
|
8187
8420
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
8188
8421
|
return /* @__PURE__ */ jsx("li", __spreadValues({ ref, className: cn("", className) }, props));
|
|
8189
8422
|
});
|
|
@@ -8304,7 +8537,7 @@ function getPageRange(currentPage, totalPages, maxVisible) {
|
|
|
8304
8537
|
}
|
|
8305
8538
|
return pages;
|
|
8306
8539
|
}
|
|
8307
|
-
var Paginator =
|
|
8540
|
+
var Paginator = React80.forwardRef(
|
|
8308
8541
|
(_a, ref) => {
|
|
8309
8542
|
var _b = _a, {
|
|
8310
8543
|
className,
|
|
@@ -8484,7 +8717,236 @@ var Paginator = React78.forwardRef(
|
|
|
8484
8717
|
}
|
|
8485
8718
|
);
|
|
8486
8719
|
Paginator.displayName = "Paginator";
|
|
8487
|
-
var
|
|
8720
|
+
var CoverImage = ({
|
|
8721
|
+
src,
|
|
8722
|
+
className,
|
|
8723
|
+
imageClassName
|
|
8724
|
+
}) => /* @__PURE__ */ jsx("div", { className: cn("relative overflow-clip", className), children: src ? /* @__PURE__ */ jsx(
|
|
8725
|
+
"img",
|
|
8726
|
+
{
|
|
8727
|
+
src,
|
|
8728
|
+
alt: "",
|
|
8729
|
+
className: cn("absolute inset-0 size-full object-cover", imageClassName)
|
|
8730
|
+
}
|
|
8731
|
+
) : /* @__PURE__ */ jsx("div", { className: "absolute inset-0 bg-sui-bg-muted" }) });
|
|
8732
|
+
var TitleRow = ({ title, price }) => /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between font-medium text-md leading-6 text-sui-text-default", children: [
|
|
8733
|
+
/* @__PURE__ */ jsx("span", { children: title }),
|
|
8734
|
+
price && /* @__PURE__ */ jsx("span", { children: price })
|
|
8735
|
+
] });
|
|
8736
|
+
var DateRow = ({
|
|
8737
|
+
date,
|
|
8738
|
+
prefix = "Added"
|
|
8739
|
+
}) => date ? /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-1.5 text-sm font-normal leading-5 text-sui-text-muted", children: [
|
|
8740
|
+
/* @__PURE__ */ jsx("span", { children: prefix }),
|
|
8741
|
+
/* @__PURE__ */ jsx("span", { children: date })
|
|
8742
|
+
] }) : null;
|
|
8743
|
+
var TagList = ({ tags }) => /* @__PURE__ */ jsx("div", { className: "flex flex-wrap gap-2", children: tags.map((tag) => /* @__PURE__ */ jsx(Badge, { size: "sm", children: tag }, tag)) });
|
|
8744
|
+
var ProductCard = React80.forwardRef(
|
|
8745
|
+
(_a, ref) => {
|
|
8746
|
+
var _b = _a, {
|
|
8747
|
+
className,
|
|
8748
|
+
variant = "minimal",
|
|
8749
|
+
title = "Product name",
|
|
8750
|
+
price,
|
|
8751
|
+
image,
|
|
8752
|
+
date,
|
|
8753
|
+
description,
|
|
8754
|
+
tags,
|
|
8755
|
+
author,
|
|
8756
|
+
rating,
|
|
8757
|
+
ctaLabel = "Add to cart",
|
|
8758
|
+
onCta,
|
|
8759
|
+
thumbnail
|
|
8760
|
+
} = _b, props = __objRest(_b, [
|
|
8761
|
+
"className",
|
|
8762
|
+
"variant",
|
|
8763
|
+
"title",
|
|
8764
|
+
"price",
|
|
8765
|
+
"image",
|
|
8766
|
+
"date",
|
|
8767
|
+
"description",
|
|
8768
|
+
"tags",
|
|
8769
|
+
"author",
|
|
8770
|
+
"rating",
|
|
8771
|
+
"ctaLabel",
|
|
8772
|
+
"onCta",
|
|
8773
|
+
"thumbnail"
|
|
8774
|
+
]);
|
|
8775
|
+
if (variant === "minimal") {
|
|
8776
|
+
return /* @__PURE__ */ jsxs(
|
|
8777
|
+
"div",
|
|
8778
|
+
__spreadProps(__spreadValues({
|
|
8779
|
+
ref,
|
|
8780
|
+
className: cn("flex flex-col gap-3", className)
|
|
8781
|
+
}, props), {
|
|
8782
|
+
children: [
|
|
8783
|
+
/* @__PURE__ */ jsxs("div", { className: "relative aspect-[3/2] w-full overflow-clip rounded-lg border border-sui-border-darker shadow-card", children: [
|
|
8784
|
+
/* @__PURE__ */ jsx(CoverImage, { src: image, className: "absolute inset-0", imageClassName: "rounded-lg" }),
|
|
8785
|
+
rating && rating > 0 ? /* @__PURE__ */ jsxs("div", { className: "absolute right-[9px] top-[9px] flex items-center gap-0 overflow-clip rounded-md border border-sui-border-default bg-sui-bg-badge-default px-1 py-1 backdrop-blur-[2px]", children: [
|
|
8786
|
+
/* @__PURE__ */ jsx("i", { className: "ri-star-fill text-xs leading-none text-icon-default-muted", "aria-hidden": "true" }),
|
|
8787
|
+
/* @__PURE__ */ jsx("span", { className: "pl-0.5 pr-1 text-xs font-medium leading-4 text-sui-text-subtle", children: rating })
|
|
8788
|
+
] }) : null,
|
|
8789
|
+
/* @__PURE__ */ jsx("div", { className: "pointer-events-none absolute inset-0 rounded-[inherit] shadow-inset-bottom-strong" })
|
|
8790
|
+
] }),
|
|
8791
|
+
/* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-1", children: [
|
|
8792
|
+
/* @__PURE__ */ jsx(TitleRow, { title, price }),
|
|
8793
|
+
date && /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-1.5 text-sm font-normal leading-5 text-sui-text-muted", children: [
|
|
8794
|
+
/* @__PURE__ */ jsx("span", { children: "Added" }),
|
|
8795
|
+
/* @__PURE__ */ jsx("span", { children: date })
|
|
8796
|
+
] })
|
|
8797
|
+
] })
|
|
8798
|
+
]
|
|
8799
|
+
})
|
|
8800
|
+
);
|
|
8801
|
+
}
|
|
8802
|
+
if (variant === "featured") {
|
|
8803
|
+
return /* @__PURE__ */ jsxs(
|
|
8804
|
+
"div",
|
|
8805
|
+
__spreadProps(__spreadValues({
|
|
8806
|
+
ref,
|
|
8807
|
+
className: cn(
|
|
8808
|
+
"relative flex flex-col gap-3 rounded-xl border border-sui-border-darker bg-sui-bg-card p-4 shadow-card",
|
|
8809
|
+
className
|
|
8810
|
+
)
|
|
8811
|
+
}, props), {
|
|
8812
|
+
children: [
|
|
8813
|
+
/* @__PURE__ */ jsx("div", { className: "relative aspect-[3/2] w-full overflow-clip rounded-sm border border-sui-border-darker", children: /* @__PURE__ */ jsx(CoverImage, { src: image, className: "absolute inset-0" }) }),
|
|
8814
|
+
/* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-4", children: [
|
|
8815
|
+
/* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-1", children: [
|
|
8816
|
+
/* @__PURE__ */ jsx(TitleRow, { title, price }),
|
|
8817
|
+
/* @__PURE__ */ jsx(DateRow, { date })
|
|
8818
|
+
] }),
|
|
8819
|
+
/* @__PURE__ */ jsx(Divider, {}),
|
|
8820
|
+
tags && tags.length > 0 && /* @__PURE__ */ jsx(TagList, { tags }),
|
|
8821
|
+
/* @__PURE__ */ jsxs(Button, { size: "md", className: "w-full", onClick: onCta, children: [
|
|
8822
|
+
/* @__PURE__ */ jsx("i", { className: "ri-shopping-cart-2-line", "aria-hidden": "true" }),
|
|
8823
|
+
ctaLabel
|
|
8824
|
+
] })
|
|
8825
|
+
] }),
|
|
8826
|
+
/* @__PURE__ */ jsx("div", { className: "pointer-events-none absolute inset-0 rounded-[inherit] shadow-inset-bottom-strong" })
|
|
8827
|
+
]
|
|
8828
|
+
})
|
|
8829
|
+
);
|
|
8830
|
+
}
|
|
8831
|
+
if (variant === "detailed") {
|
|
8832
|
+
return /* @__PURE__ */ jsxs(
|
|
8833
|
+
"div",
|
|
8834
|
+
__spreadProps(__spreadValues({
|
|
8835
|
+
ref,
|
|
8836
|
+
className: cn(
|
|
8837
|
+
"relative flex flex-col overflow-clip rounded-xl border border-sui-border-darker bg-sui-bg-card shadow-card",
|
|
8838
|
+
className
|
|
8839
|
+
)
|
|
8840
|
+
}, props), {
|
|
8841
|
+
children: [
|
|
8842
|
+
/* @__PURE__ */ jsx("div", { className: "relative aspect-[5/3] w-full shrink-0 border-b border-sui-border-darker", children: /* @__PURE__ */ jsx(CoverImage, { src: image, className: "absolute inset-0" }) }),
|
|
8843
|
+
/* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-4 p-4", children: [
|
|
8844
|
+
/* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-1", children: [
|
|
8845
|
+
/* @__PURE__ */ jsx(TitleRow, { title, price }),
|
|
8846
|
+
/* @__PURE__ */ jsx(DateRow, { date })
|
|
8847
|
+
] }),
|
|
8848
|
+
/* @__PURE__ */ jsx(Divider, {}),
|
|
8849
|
+
description && /* @__PURE__ */ jsx("p", { className: "text-sm font-normal leading-5 text-sui-text-muted", children: description }),
|
|
8850
|
+
/* @__PURE__ */ jsx(Divider, {}),
|
|
8851
|
+
tags && tags.length > 0 && /* @__PURE__ */ jsx(TagList, { tags }),
|
|
8852
|
+
/* @__PURE__ */ jsxs(Button, { size: "md", className: "w-full", onClick: onCta, children: [
|
|
8853
|
+
/* @__PURE__ */ jsx("i", { className: "ri-shopping-cart-2-line", "aria-hidden": "true" }),
|
|
8854
|
+
ctaLabel
|
|
8855
|
+
] })
|
|
8856
|
+
] }),
|
|
8857
|
+
/* @__PURE__ */ jsx("div", { className: "pointer-events-none absolute inset-0 rounded-[inherit] shadow-inset-bottom-strong" })
|
|
8858
|
+
]
|
|
8859
|
+
})
|
|
8860
|
+
);
|
|
8861
|
+
}
|
|
8862
|
+
if (variant === "author") {
|
|
8863
|
+
return /* @__PURE__ */ jsxs(
|
|
8864
|
+
"div",
|
|
8865
|
+
__spreadProps(__spreadValues({
|
|
8866
|
+
ref,
|
|
8867
|
+
className: cn("flex flex-col gap-3", className)
|
|
8868
|
+
}, props), {
|
|
8869
|
+
children: [
|
|
8870
|
+
/* @__PURE__ */ jsxs("div", { className: "relative aspect-[3/2] w-full overflow-clip rounded-lg border border-sui-border-darker shadow-card", children: [
|
|
8871
|
+
/* @__PURE__ */ jsx(CoverImage, { src: image, className: "absolute inset-0" }),
|
|
8872
|
+
/* @__PURE__ */ jsx("div", { className: "pointer-events-none absolute inset-0 rounded-[inherit] shadow-inset-bottom-strong" })
|
|
8873
|
+
] }),
|
|
8874
|
+
/* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-1.5", children: [
|
|
8875
|
+
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between font-medium text-md leading-6 text-sui-text-default", children: [
|
|
8876
|
+
/* @__PURE__ */ jsx("span", { children: title }),
|
|
8877
|
+
price && /* @__PURE__ */ jsx("span", { children: price })
|
|
8878
|
+
] }),
|
|
8879
|
+
author && /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
8880
|
+
/* @__PURE__ */ jsxs(Avatar, { className: "size-6", children: [
|
|
8881
|
+
author.avatar && /* @__PURE__ */ jsx(AvatarImage, { src: author.avatar, alt: author.name }),
|
|
8882
|
+
/* @__PURE__ */ jsx(AvatarFallback, { className: "text-xs", children: author.name.slice(0, 2).toUpperCase() })
|
|
8883
|
+
] }),
|
|
8884
|
+
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-1 text-sm font-normal leading-5 text-sui-text-subtle", children: [
|
|
8885
|
+
/* @__PURE__ */ jsx("span", { children: author.name }),
|
|
8886
|
+
author.category && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
8887
|
+
/* @__PURE__ */ jsx("i", { className: "ri-arrow-right-s-line text-base leading-none text-icon-default-muted", "aria-hidden": "true" }),
|
|
8888
|
+
/* @__PURE__ */ jsx("span", { children: author.category })
|
|
8889
|
+
] })
|
|
8890
|
+
] })
|
|
8891
|
+
] })
|
|
8892
|
+
] })
|
|
8893
|
+
]
|
|
8894
|
+
})
|
|
8895
|
+
);
|
|
8896
|
+
}
|
|
8897
|
+
if (variant === "overlay") {
|
|
8898
|
+
return /* @__PURE__ */ jsx(
|
|
8899
|
+
"div",
|
|
8900
|
+
__spreadProps(__spreadValues({
|
|
8901
|
+
ref,
|
|
8902
|
+
className: cn("relative", className)
|
|
8903
|
+
}, props), {
|
|
8904
|
+
children: /* @__PURE__ */ jsxs("div", { className: "relative aspect-[3/2] w-full overflow-clip rounded-lg border border-sui-border-darker shadow-card", children: [
|
|
8905
|
+
/* @__PURE__ */ jsx(CoverImage, { src: image, className: "absolute inset-0" }),
|
|
8906
|
+
/* @__PURE__ */ jsxs("div", { className: "absolute inset-x-0 bottom-0 flex items-end justify-between bg-gradient-to-b from-transparent to-sui-bg-default pb-2.5 pt-8 px-2.5", children: [
|
|
8907
|
+
/* @__PURE__ */ jsx(Button, { variant: "outline", size: "sm", children: "Live preview" }),
|
|
8908
|
+
/* @__PURE__ */ jsxs(Button, { variant: "outline", size: "sm", children: [
|
|
8909
|
+
/* @__PURE__ */ jsx("i", { className: "ri-file-copy-line", "aria-hidden": "true" }),
|
|
8910
|
+
"Copy"
|
|
8911
|
+
] })
|
|
8912
|
+
] }),
|
|
8913
|
+
/* @__PURE__ */ jsx("div", { className: "pointer-events-none absolute inset-0 rounded-[inherit] shadow-inset-bottom-strong" })
|
|
8914
|
+
] })
|
|
8915
|
+
})
|
|
8916
|
+
);
|
|
8917
|
+
}
|
|
8918
|
+
return /* @__PURE__ */ jsx(TooltipProvider, { children: /* @__PURE__ */ jsxs(
|
|
8919
|
+
"div",
|
|
8920
|
+
__spreadProps(__spreadValues({
|
|
8921
|
+
ref,
|
|
8922
|
+
className: cn("flex items-center justify-between gap-3", className)
|
|
8923
|
+
}, props), {
|
|
8924
|
+
children: [
|
|
8925
|
+
/* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-1 items-center gap-3", children: [
|
|
8926
|
+
(thumbnail || image) && /* @__PURE__ */ jsx("div", { className: "relative size-6 shrink-0 overflow-clip rounded-sm", children: /* @__PURE__ */ jsx(
|
|
8927
|
+
"img",
|
|
8928
|
+
{
|
|
8929
|
+
src: thumbnail != null ? thumbnail : image,
|
|
8930
|
+
alt: "",
|
|
8931
|
+
className: "absolute inset-0 size-full object-cover"
|
|
8932
|
+
}
|
|
8933
|
+
) }),
|
|
8934
|
+
/* @__PURE__ */ jsx("span", { className: "truncate font-medium text-md leading-6 text-sui-text-default", children: title })
|
|
8935
|
+
] }),
|
|
8936
|
+
/* @__PURE__ */ jsxs("div", { className: "flex shrink-0 items-center gap-1", children: [
|
|
8937
|
+
/* @__PURE__ */ jsxs(Tooltip2, { children: [
|
|
8938
|
+
/* @__PURE__ */ jsx(TooltipTrigger, { asChild: true, children: /* @__PURE__ */ jsx(Button, { variant: "ghost", size: "2xs", className: "size-6 p-0", children: /* @__PURE__ */ jsx("i", { className: "ri-bookmark-line", "aria-hidden": "true" }) }) }),
|
|
8939
|
+
/* @__PURE__ */ jsx(TooltipContent, { children: "Save to library" })
|
|
8940
|
+
] }),
|
|
8941
|
+
/* @__PURE__ */ jsx(Button, { variant: "ghost", size: "2xs", className: "size-6 p-0", children: /* @__PURE__ */ jsx("i", { className: "ri-more-2-fill", "aria-hidden": "true" }) })
|
|
8942
|
+
] })
|
|
8943
|
+
]
|
|
8944
|
+
})
|
|
8945
|
+
) });
|
|
8946
|
+
}
|
|
8947
|
+
);
|
|
8948
|
+
ProductCard.displayName = "ProductCard";
|
|
8949
|
+
var Progress = React80.forwardRef((_a, ref) => {
|
|
8488
8950
|
var _b = _a, { className, value } = _b, props = __objRest(_b, ["className", "value"]);
|
|
8489
8951
|
return /* @__PURE__ */ jsx(
|
|
8490
8952
|
ProgressPrimitive2.Root,
|
|
@@ -8498,7 +8960,7 @@ var Progress = React78.forwardRef((_a, ref) => {
|
|
|
8498
8960
|
children: /* @__PURE__ */ jsx(
|
|
8499
8961
|
ProgressPrimitive2.Indicator,
|
|
8500
8962
|
{
|
|
8501
|
-
className: "h-full w-full flex-1 bg-
|
|
8963
|
+
className: "h-full w-full flex-1 bg-informative transition-all",
|
|
8502
8964
|
style: { transform: `translateX(-${100 - (value || 0)}%)` }
|
|
8503
8965
|
}
|
|
8504
8966
|
)
|
|
@@ -8524,17 +8986,17 @@ var radialProgressBarVariants = cva("relative inline-flex items-center justify-c
|
|
|
8524
8986
|
}
|
|
8525
8987
|
});
|
|
8526
8988
|
var textVariantMap = {
|
|
8527
|
-
default: "text-sui-text-
|
|
8989
|
+
default: "text-sui-text-informative",
|
|
8528
8990
|
success: "text-sui-text-success",
|
|
8529
8991
|
failed: "text-sui-text-destructive"
|
|
8530
8992
|
};
|
|
8531
8993
|
var trackStrokeVar = "var(--border-default)";
|
|
8532
8994
|
var arcStrokeVarMap = {
|
|
8533
|
-
default: "var(--
|
|
8995
|
+
default: "hsl(var(--informative))",
|
|
8534
8996
|
success: "var(--text-success)",
|
|
8535
8997
|
failed: "var(--text-destructive)"
|
|
8536
8998
|
};
|
|
8537
|
-
var RadialProgressBar =
|
|
8999
|
+
var RadialProgressBar = React80.forwardRef(
|
|
8538
9000
|
(_a, ref) => {
|
|
8539
9001
|
var _b = _a, {
|
|
8540
9002
|
className,
|
|
@@ -8654,7 +9116,7 @@ var RadialProgressBar = React78.forwardRef(
|
|
|
8654
9116
|
}
|
|
8655
9117
|
);
|
|
8656
9118
|
RadialProgressBar.displayName = "RadialProgressBar";
|
|
8657
|
-
var RadioGroup2 =
|
|
9119
|
+
var RadioGroup2 = React80.forwardRef((_a, ref) => {
|
|
8658
9120
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
8659
9121
|
return /* @__PURE__ */ jsx(
|
|
8660
9122
|
RadioGroupPrimitive.Root,
|
|
@@ -8714,7 +9176,7 @@ var radioButtonVariants = cva(
|
|
|
8714
9176
|
}
|
|
8715
9177
|
}
|
|
8716
9178
|
);
|
|
8717
|
-
var RadioButton =
|
|
9179
|
+
var RadioButton = React80.forwardRef((_a, ref) => {
|
|
8718
9180
|
var _b = _a, { className, variant } = _b, props = __objRest(_b, ["className", "variant"]);
|
|
8719
9181
|
return /* @__PURE__ */ jsxs(
|
|
8720
9182
|
RadioGroupPrimitive.Item,
|
|
@@ -8754,7 +9216,7 @@ var RadioButton = React78.forwardRef((_a, ref) => {
|
|
|
8754
9216
|
);
|
|
8755
9217
|
});
|
|
8756
9218
|
RadioButton.displayName = "RadioButton";
|
|
8757
|
-
var RadioCardGroup =
|
|
9219
|
+
var RadioCardGroup = React80.forwardRef((_a, ref) => {
|
|
8758
9220
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
8759
9221
|
return /* @__PURE__ */ jsx(
|
|
8760
9222
|
RadioGroupPrimitive.Root,
|
|
@@ -8783,7 +9245,7 @@ var radioButtonCardVariants = cva(
|
|
|
8783
9245
|
// Shadow
|
|
8784
9246
|
"shadow-card-base",
|
|
8785
9247
|
// Selected: highlight border + ring
|
|
8786
|
-
"data-[state=checked]:border-
|
|
9248
|
+
"data-[state=checked]:border-informative data-[state=checked]:ring-1 data-[state=checked]:ring-inset data-[state=checked]:ring-informative",
|
|
8787
9249
|
// Disabled
|
|
8788
9250
|
"disabled:border-sui-border-default disabled:shadow-none"
|
|
8789
9251
|
],
|
|
@@ -8791,7 +9253,7 @@ var radioButtonCardVariants = cva(
|
|
|
8791
9253
|
// Background — soft bg when unchecked, card bg when selected
|
|
8792
9254
|
"bg-sui-bg-state-soft border border-transparent",
|
|
8793
9255
|
// Selected: card bg + highlight border + ring
|
|
8794
|
-
"data-[state=checked]:bg-sui-bg-card data-[state=checked]:border-
|
|
9256
|
+
"data-[state=checked]:bg-sui-bg-card data-[state=checked]:border-informative data-[state=checked]:ring-1 data-[state=checked]:ring-inset data-[state=checked]:ring-informative",
|
|
8795
9257
|
"data-[state=checked]:shadow-card-base",
|
|
8796
9258
|
// Disabled
|
|
8797
9259
|
"disabled:border-transparent disabled:shadow-none"
|
|
@@ -8803,7 +9265,7 @@ var radioButtonCardVariants = cva(
|
|
|
8803
9265
|
}
|
|
8804
9266
|
}
|
|
8805
9267
|
);
|
|
8806
|
-
var RadioButtonCard =
|
|
9268
|
+
var RadioButtonCard = React80.forwardRef(
|
|
8807
9269
|
({
|
|
8808
9270
|
title,
|
|
8809
9271
|
description,
|
|
@@ -8817,7 +9279,7 @@ var RadioButtonCard = React78.forwardRef(
|
|
|
8817
9279
|
disabled = false,
|
|
8818
9280
|
className
|
|
8819
9281
|
}, ref) => {
|
|
8820
|
-
const generatedId =
|
|
9282
|
+
const generatedId = React80.useId();
|
|
8821
9283
|
const titleId = `radio-card-title-${generatedId}`;
|
|
8822
9284
|
const descriptionId = `radio-card-desc-${generatedId}`;
|
|
8823
9285
|
const isHorizontal = layout === "horizontal";
|
|
@@ -8925,9 +9387,9 @@ var RadioButtonCard = React78.forwardRef(
|
|
|
8925
9387
|
}
|
|
8926
9388
|
);
|
|
8927
9389
|
RadioButtonCard.displayName = "RadioButtonCard";
|
|
8928
|
-
var RadioButtonList =
|
|
9390
|
+
var RadioButtonList = React80.forwardRef(
|
|
8929
9391
|
({ className, divider = true, value, defaultValue, onValueChange, disabled, children }, ref) => {
|
|
8930
|
-
const items =
|
|
9392
|
+
const items = React80.Children.toArray(children);
|
|
8931
9393
|
return /* @__PURE__ */ jsx(
|
|
8932
9394
|
RadioGroup2,
|
|
8933
9395
|
{
|
|
@@ -8971,7 +9433,7 @@ var radioButtonWithTextVariants = cva(
|
|
|
8971
9433
|
}
|
|
8972
9434
|
}
|
|
8973
9435
|
);
|
|
8974
|
-
var RadioButtonWithText =
|
|
9436
|
+
var RadioButtonWithText = React80.forwardRef(
|
|
8975
9437
|
({
|
|
8976
9438
|
label,
|
|
8977
9439
|
description,
|
|
@@ -8982,7 +9444,7 @@ var RadioButtonWithText = React78.forwardRef(
|
|
|
8982
9444
|
className,
|
|
8983
9445
|
id
|
|
8984
9446
|
}, ref) => {
|
|
8985
|
-
const generatedId =
|
|
9447
|
+
const generatedId = React80.useId();
|
|
8986
9448
|
const radioId = id || generatedId;
|
|
8987
9449
|
return /* @__PURE__ */ jsxs(
|
|
8988
9450
|
"div",
|
|
@@ -9037,7 +9499,7 @@ var RadioButtonWithText = React78.forwardRef(
|
|
|
9037
9499
|
}
|
|
9038
9500
|
);
|
|
9039
9501
|
RadioButtonWithText.displayName = "RadioButtonWithText";
|
|
9040
|
-
var ScrollArea =
|
|
9502
|
+
var ScrollArea = React80.forwardRef((_a, ref) => {
|
|
9041
9503
|
var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
|
|
9042
9504
|
return /* @__PURE__ */ jsxs(
|
|
9043
9505
|
ScrollAreaPrimitive.Root,
|
|
@@ -9054,7 +9516,7 @@ var ScrollArea = React78.forwardRef((_a, ref) => {
|
|
|
9054
9516
|
);
|
|
9055
9517
|
});
|
|
9056
9518
|
ScrollArea.displayName = ScrollAreaPrimitive.Root.displayName;
|
|
9057
|
-
var ScrollBar =
|
|
9519
|
+
var ScrollBar = React80.forwardRef((_a, ref) => {
|
|
9058
9520
|
var _b = _a, { className, orientation = "vertical" } = _b, props = __objRest(_b, ["className", "orientation"]);
|
|
9059
9521
|
return /* @__PURE__ */ jsx(
|
|
9060
9522
|
ScrollAreaPrimitive.ScrollAreaScrollbar,
|
|
@@ -9076,7 +9538,7 @@ ScrollBar.displayName = ScrollAreaPrimitive.ScrollAreaScrollbar.displayName;
|
|
|
9076
9538
|
var Select = SelectPrimitive.Root;
|
|
9077
9539
|
var SelectGroup = SelectPrimitive.Group;
|
|
9078
9540
|
var SelectValue = SelectPrimitive.Value;
|
|
9079
|
-
var SelectTrigger =
|
|
9541
|
+
var SelectTrigger = React80.forwardRef((_a, ref) => {
|
|
9080
9542
|
var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
|
|
9081
9543
|
return /* @__PURE__ */ jsxs(
|
|
9082
9544
|
SelectPrimitive.Trigger,
|
|
@@ -9099,7 +9561,7 @@ var SelectTrigger = React78.forwardRef((_a, ref) => {
|
|
|
9099
9561
|
);
|
|
9100
9562
|
});
|
|
9101
9563
|
SelectTrigger.displayName = SelectPrimitive.Trigger.displayName;
|
|
9102
|
-
var SelectScrollUpButton =
|
|
9564
|
+
var SelectScrollUpButton = React80.forwardRef((_a, ref) => {
|
|
9103
9565
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
9104
9566
|
return /* @__PURE__ */ jsx(
|
|
9105
9567
|
SelectPrimitive.ScrollUpButton,
|
|
@@ -9115,7 +9577,7 @@ var SelectScrollUpButton = React78.forwardRef((_a, ref) => {
|
|
|
9115
9577
|
);
|
|
9116
9578
|
});
|
|
9117
9579
|
SelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName;
|
|
9118
|
-
var SelectScrollDownButton =
|
|
9580
|
+
var SelectScrollDownButton = React80.forwardRef((_a, ref) => {
|
|
9119
9581
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
9120
9582
|
return /* @__PURE__ */ jsx(
|
|
9121
9583
|
SelectPrimitive.ScrollDownButton,
|
|
@@ -9131,7 +9593,7 @@ var SelectScrollDownButton = React78.forwardRef((_a, ref) => {
|
|
|
9131
9593
|
);
|
|
9132
9594
|
});
|
|
9133
9595
|
SelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayName;
|
|
9134
|
-
var SelectContent =
|
|
9596
|
+
var SelectContent = React80.forwardRef((_a, ref) => {
|
|
9135
9597
|
var _b = _a, { className, children, position = "popper" } = _b, props = __objRest(_b, ["className", "children", "position"]);
|
|
9136
9598
|
return /* @__PURE__ */ jsx(SelectPrimitive.Portal, { children: /* @__PURE__ */ jsxs(
|
|
9137
9599
|
SelectPrimitive.Content,
|
|
@@ -9164,7 +9626,7 @@ var SelectContent = React78.forwardRef((_a, ref) => {
|
|
|
9164
9626
|
) });
|
|
9165
9627
|
});
|
|
9166
9628
|
SelectContent.displayName = SelectPrimitive.Content.displayName;
|
|
9167
|
-
var SelectLabel =
|
|
9629
|
+
var SelectLabel = React80.forwardRef((_a, ref) => {
|
|
9168
9630
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
9169
9631
|
return /* @__PURE__ */ jsx(
|
|
9170
9632
|
SelectPrimitive.Label,
|
|
@@ -9178,7 +9640,7 @@ var SelectLabel = React78.forwardRef((_a, ref) => {
|
|
|
9178
9640
|
);
|
|
9179
9641
|
});
|
|
9180
9642
|
SelectLabel.displayName = SelectPrimitive.Label.displayName;
|
|
9181
|
-
var SelectItem =
|
|
9643
|
+
var SelectItem = React80.forwardRef((_a, ref) => {
|
|
9182
9644
|
var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
|
|
9183
9645
|
return /* @__PURE__ */ jsxs(
|
|
9184
9646
|
SelectPrimitive.Item,
|
|
@@ -9203,7 +9665,7 @@ var SelectItem = React78.forwardRef((_a, ref) => {
|
|
|
9203
9665
|
);
|
|
9204
9666
|
});
|
|
9205
9667
|
SelectItem.displayName = SelectPrimitive.Item.displayName;
|
|
9206
|
-
var SelectSeparator =
|
|
9668
|
+
var SelectSeparator = React80.forwardRef((_a, ref) => {
|
|
9207
9669
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
9208
9670
|
return /* @__PURE__ */ jsx(
|
|
9209
9671
|
SelectPrimitive.Separator,
|
|
@@ -9214,7 +9676,7 @@ var SelectSeparator = React78.forwardRef((_a, ref) => {
|
|
|
9214
9676
|
);
|
|
9215
9677
|
});
|
|
9216
9678
|
SelectSeparator.displayName = SelectPrimitive.Separator.displayName;
|
|
9217
|
-
var SelectMenu =
|
|
9679
|
+
var SelectMenu = React80.forwardRef(
|
|
9218
9680
|
(_a, ref) => {
|
|
9219
9681
|
var _b = _a, {
|
|
9220
9682
|
className,
|
|
@@ -9245,19 +9707,19 @@ var SelectMenu = React78.forwardRef(
|
|
|
9245
9707
|
]);
|
|
9246
9708
|
var _a2;
|
|
9247
9709
|
const indicator = selectType === "checkbox" ? "checkbox" : selectType === "radio" ? "radio" : selectType === "default" ? "checkmark" : "none";
|
|
9248
|
-
const hasChildren =
|
|
9249
|
-
const generatedId =
|
|
9710
|
+
const hasChildren = React80.Children.count(children) > 0;
|
|
9711
|
+
const generatedId = React80.useId();
|
|
9250
9712
|
const listId = `${generatedId}-list`;
|
|
9251
|
-
const listRef =
|
|
9252
|
-
const [activeIndex, setActiveIndex] =
|
|
9713
|
+
const listRef = React80.useRef(null);
|
|
9714
|
+
const [activeIndex, setActiveIndex] = React80.useState(-1);
|
|
9253
9715
|
const activeItemId = activeIndex >= 0 ? `${listId}-item-${activeIndex}` : void 0;
|
|
9254
|
-
const getItems =
|
|
9716
|
+
const getItems = React80.useCallback(() => {
|
|
9255
9717
|
if (!listRef.current) return [];
|
|
9256
9718
|
return Array.from(
|
|
9257
9719
|
listRef.current.querySelectorAll('[role="option"]')
|
|
9258
9720
|
);
|
|
9259
9721
|
}, []);
|
|
9260
|
-
const handleKeyDown =
|
|
9722
|
+
const handleKeyDown = React80.useCallback(
|
|
9261
9723
|
(e) => {
|
|
9262
9724
|
var _a3;
|
|
9263
9725
|
const items = getItems();
|
|
@@ -9340,8 +9802,8 @@ var SelectMenu = React78.forwardRef(
|
|
|
9340
9802
|
"focus-visible:outline-none"
|
|
9341
9803
|
),
|
|
9342
9804
|
style: listMaxHeight ? { maxHeight: listMaxHeight } : void 0,
|
|
9343
|
-
children: hasChildren ? /* @__PURE__ */ jsx("div", { className: "flex flex-col px-1", role: "presentation", children:
|
|
9344
|
-
if (
|
|
9805
|
+
children: hasChildren ? /* @__PURE__ */ jsx("div", { className: "flex flex-col px-1", role: "presentation", children: React80.Children.map(children, (child, index) => {
|
|
9806
|
+
if (React80.isValidElement(child) && child.type.displayName === "SelectMenuItem") {
|
|
9345
9807
|
const itemProps = child.props;
|
|
9346
9808
|
const overrides = {};
|
|
9347
9809
|
if (indicator !== "none" && itemProps.indicator === void 0) {
|
|
@@ -9358,7 +9820,7 @@ var SelectMenu = React78.forwardRef(
|
|
|
9358
9820
|
overrides["data-active"] = "true";
|
|
9359
9821
|
}
|
|
9360
9822
|
if (Object.keys(overrides).length > 0) {
|
|
9361
|
-
return
|
|
9823
|
+
return React80.cloneElement(
|
|
9362
9824
|
child,
|
|
9363
9825
|
overrides
|
|
9364
9826
|
);
|
|
@@ -9383,7 +9845,7 @@ var SelectMenu = React78.forwardRef(
|
|
|
9383
9845
|
}
|
|
9384
9846
|
);
|
|
9385
9847
|
SelectMenu.displayName = "SelectMenu";
|
|
9386
|
-
var SelectMenuFooterButton =
|
|
9848
|
+
var SelectMenuFooterButton = React80.forwardRef((_a, ref) => {
|
|
9387
9849
|
var _b = _a, { className, icon = "ri-add-line", children = "Add new", disabled } = _b, props = __objRest(_b, ["className", "icon", "children", "disabled"]);
|
|
9388
9850
|
return /* @__PURE__ */ jsxs(
|
|
9389
9851
|
"button",
|
|
@@ -9426,7 +9888,7 @@ var SelectMenuFooterButton = React78.forwardRef((_a, ref) => {
|
|
|
9426
9888
|
);
|
|
9427
9889
|
});
|
|
9428
9890
|
SelectMenuFooterButton.displayName = "SelectMenuFooterButton";
|
|
9429
|
-
var SelectInput =
|
|
9891
|
+
var SelectInput = React80.forwardRef(
|
|
9430
9892
|
({
|
|
9431
9893
|
label,
|
|
9432
9894
|
required,
|
|
@@ -9458,10 +9920,10 @@ var SelectInput = React78.forwardRef(
|
|
|
9458
9920
|
footer,
|
|
9459
9921
|
className
|
|
9460
9922
|
}, ref) => {
|
|
9461
|
-
const [internalOpen, setInternalOpen] =
|
|
9923
|
+
const [internalOpen, setInternalOpen] = React80.useState(false);
|
|
9462
9924
|
const isControlled = controlledOpen !== void 0;
|
|
9463
9925
|
const isOpen = isControlled ? controlledOpen : internalOpen;
|
|
9464
|
-
const handleOpenChange =
|
|
9926
|
+
const handleOpenChange = React80.useCallback(
|
|
9465
9927
|
(next) => {
|
|
9466
9928
|
if (disabled) return;
|
|
9467
9929
|
if (!isControlled) setInternalOpen(next);
|
|
@@ -9469,7 +9931,7 @@ var SelectInput = React78.forwardRef(
|
|
|
9469
9931
|
},
|
|
9470
9932
|
[disabled, isControlled, onOpenChange]
|
|
9471
9933
|
);
|
|
9472
|
-
const generatedId =
|
|
9934
|
+
const generatedId = React80.useId();
|
|
9473
9935
|
const hasError = !!error;
|
|
9474
9936
|
const helperText = hasError ? error : caption;
|
|
9475
9937
|
const hasTags = tags && tags.length > 0;
|
|
@@ -9548,7 +10010,7 @@ var SelectInput = React78.forwardRef(
|
|
|
9548
10010
|
children: leadIcon
|
|
9549
10011
|
}
|
|
9550
10012
|
) : null,
|
|
9551
|
-
hasTags ? /* @__PURE__ */ jsx("span", { className: "flex min-w-0 flex-1 items-center gap-1 overflow-hidden", children: tags.map((tag, i) => /* @__PURE__ */ jsxs(
|
|
10013
|
+
hasTags ? /* @__PURE__ */ jsx("span", { className: "flex min-w-0 flex-1 items-center gap-1 overflow-hidden", children: tags.map((tag, i) => /* @__PURE__ */ jsxs(React80.Fragment, { children: [
|
|
9552
10014
|
i > 0 && /* @__PURE__ */ jsx(
|
|
9553
10015
|
"span",
|
|
9554
10016
|
{
|
|
@@ -9665,7 +10127,7 @@ var SelectInput = React78.forwardRef(
|
|
|
9665
10127
|
}
|
|
9666
10128
|
);
|
|
9667
10129
|
SelectInput.displayName = "SelectInput";
|
|
9668
|
-
var SelectMenuItem =
|
|
10130
|
+
var SelectMenuItem = React80.forwardRef(
|
|
9669
10131
|
(_a, ref) => {
|
|
9670
10132
|
var _b = _a, {
|
|
9671
10133
|
className,
|
|
@@ -9829,7 +10291,7 @@ var SelectMenuItem = React78.forwardRef(
|
|
|
9829
10291
|
}
|
|
9830
10292
|
);
|
|
9831
10293
|
SelectMenuItem.displayName = "SelectMenuItem";
|
|
9832
|
-
var SelectMenuLabel =
|
|
10294
|
+
var SelectMenuLabel = React80.forwardRef(
|
|
9833
10295
|
(_a, ref) => {
|
|
9834
10296
|
var _b = _a, { className, caption, children } = _b, props = __objRest(_b, ["className", "caption", "children"]);
|
|
9835
10297
|
return /* @__PURE__ */ jsxs(
|
|
@@ -9851,7 +10313,7 @@ var SelectMenuLabel = React78.forwardRef(
|
|
|
9851
10313
|
}
|
|
9852
10314
|
);
|
|
9853
10315
|
SelectMenuLabel.displayName = "SelectMenuLabel";
|
|
9854
|
-
var SelectMenuDescription =
|
|
10316
|
+
var SelectMenuDescription = React80.forwardRef((_a, ref) => {
|
|
9855
10317
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
9856
10318
|
return /* @__PURE__ */ jsx(
|
|
9857
10319
|
"p",
|
|
@@ -9865,7 +10327,7 @@ var SelectMenuDescription = React78.forwardRef((_a, ref) => {
|
|
|
9865
10327
|
);
|
|
9866
10328
|
});
|
|
9867
10329
|
SelectMenuDescription.displayName = "SelectMenuDescription";
|
|
9868
|
-
var SelectMenuSeparator =
|
|
10330
|
+
var SelectMenuSeparator = React80.forwardRef((_a, ref) => {
|
|
9869
10331
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
9870
10332
|
return /* @__PURE__ */ jsx(
|
|
9871
10333
|
"div",
|
|
@@ -9877,7 +10339,7 @@ var SelectMenuSeparator = React78.forwardRef((_a, ref) => {
|
|
|
9877
10339
|
);
|
|
9878
10340
|
});
|
|
9879
10341
|
SelectMenuSeparator.displayName = "SelectMenuSeparator";
|
|
9880
|
-
var SelectMenuLargeItem =
|
|
10342
|
+
var SelectMenuLargeItem = React80.forwardRef(
|
|
9881
10343
|
(_a, ref) => {
|
|
9882
10344
|
var _b = _a, {
|
|
9883
10345
|
className,
|
|
@@ -9973,7 +10435,7 @@ var SelectMenuLargeItem = React78.forwardRef(
|
|
|
9973
10435
|
}
|
|
9974
10436
|
);
|
|
9975
10437
|
SelectMenuLargeItem.displayName = "SelectMenuLargeItem";
|
|
9976
|
-
var Separator3 =
|
|
10438
|
+
var Separator3 = React80.forwardRef(
|
|
9977
10439
|
(_a, ref) => {
|
|
9978
10440
|
var _b = _a, { className, orientation = "horizontal", decorative = true } = _b, props = __objRest(_b, ["className", "orientation", "decorative"]);
|
|
9979
10441
|
return /* @__PURE__ */ jsx(
|
|
@@ -9996,7 +10458,7 @@ var Sheet = DialogPrimitive.Root;
|
|
|
9996
10458
|
var SheetTrigger = DialogPrimitive.Trigger;
|
|
9997
10459
|
var SheetClose = DialogPrimitive.Close;
|
|
9998
10460
|
var SheetPortal = DialogPrimitive.Portal;
|
|
9999
|
-
var SheetOverlay =
|
|
10461
|
+
var SheetOverlay = React80.forwardRef((_a, ref) => {
|
|
10000
10462
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
10001
10463
|
return /* @__PURE__ */ jsx(
|
|
10002
10464
|
DialogPrimitive.Overlay,
|
|
@@ -10027,7 +10489,7 @@ var sheetVariants = cva(
|
|
|
10027
10489
|
}
|
|
10028
10490
|
}
|
|
10029
10491
|
);
|
|
10030
|
-
var SheetContent =
|
|
10492
|
+
var SheetContent = React80.forwardRef((_a, ref) => {
|
|
10031
10493
|
var _b = _a, { side = "right", className, children } = _b, props = __objRest(_b, ["side", "className", "children"]);
|
|
10032
10494
|
return /* @__PURE__ */ jsxs(SheetPortal, { children: [
|
|
10033
10495
|
/* @__PURE__ */ jsx(SheetOverlay, {}),
|
|
@@ -10083,7 +10545,7 @@ var SheetFooter = (_a) => {
|
|
|
10083
10545
|
);
|
|
10084
10546
|
};
|
|
10085
10547
|
SheetFooter.displayName = "SheetFooter";
|
|
10086
|
-
var SheetTitle =
|
|
10548
|
+
var SheetTitle = React80.forwardRef((_a, ref) => {
|
|
10087
10549
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
10088
10550
|
return /* @__PURE__ */ jsx(
|
|
10089
10551
|
DialogPrimitive.Title,
|
|
@@ -10094,7 +10556,7 @@ var SheetTitle = React78.forwardRef((_a, ref) => {
|
|
|
10094
10556
|
);
|
|
10095
10557
|
});
|
|
10096
10558
|
SheetTitle.displayName = DialogPrimitive.Title.displayName;
|
|
10097
|
-
var SheetDescription =
|
|
10559
|
+
var SheetDescription = React80.forwardRef((_a, ref) => {
|
|
10098
10560
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
10099
10561
|
return /* @__PURE__ */ jsx(
|
|
10100
10562
|
DialogPrimitive.Description,
|
|
@@ -10107,8 +10569,8 @@ var SheetDescription = React78.forwardRef((_a, ref) => {
|
|
|
10107
10569
|
SheetDescription.displayName = DialogPrimitive.Description.displayName;
|
|
10108
10570
|
var MOBILE_BREAKPOINT = 768;
|
|
10109
10571
|
function useIsMobile() {
|
|
10110
|
-
const [isMobile, setIsMobile] =
|
|
10111
|
-
|
|
10572
|
+
const [isMobile, setIsMobile] = React80.useState(void 0);
|
|
10573
|
+
React80.useEffect(() => {
|
|
10112
10574
|
const mql = window.matchMedia(`(max-width: ${MOBILE_BREAKPOINT - 1}px)`);
|
|
10113
10575
|
const onChange = () => {
|
|
10114
10576
|
setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);
|
|
@@ -10138,15 +10600,15 @@ var SIDEBAR_WIDTH = "16rem";
|
|
|
10138
10600
|
var SIDEBAR_WIDTH_MOBILE = "18rem";
|
|
10139
10601
|
var SIDEBAR_WIDTH_ICON = "3rem";
|
|
10140
10602
|
var SIDEBAR_KEYBOARD_SHORTCUT = "b";
|
|
10141
|
-
var SidebarContext =
|
|
10603
|
+
var SidebarContext = React80.createContext(null);
|
|
10142
10604
|
function useSidebar() {
|
|
10143
|
-
const context =
|
|
10605
|
+
const context = React80.useContext(SidebarContext);
|
|
10144
10606
|
if (!context) {
|
|
10145
10607
|
throw new Error("useSidebar must be used within a SidebarProvider.");
|
|
10146
10608
|
}
|
|
10147
10609
|
return context;
|
|
10148
10610
|
}
|
|
10149
|
-
var SidebarProvider =
|
|
10611
|
+
var SidebarProvider = React80.forwardRef(
|
|
10150
10612
|
(_a, ref) => {
|
|
10151
10613
|
var _b = _a, {
|
|
10152
10614
|
defaultOpen = true,
|
|
@@ -10164,10 +10626,10 @@ var SidebarProvider = React78.forwardRef(
|
|
|
10164
10626
|
"children"
|
|
10165
10627
|
]);
|
|
10166
10628
|
const isMobile = useIsMobile();
|
|
10167
|
-
const [openMobile, setOpenMobile] =
|
|
10168
|
-
const [_open, _setOpen] =
|
|
10629
|
+
const [openMobile, setOpenMobile] = React80.useState(false);
|
|
10630
|
+
const [_open, _setOpen] = React80.useState(defaultOpen);
|
|
10169
10631
|
const open = openProp != null ? openProp : _open;
|
|
10170
|
-
const setOpen =
|
|
10632
|
+
const setOpen = React80.useCallback(
|
|
10171
10633
|
(value) => {
|
|
10172
10634
|
const openState = typeof value === "function" ? value(open) : value;
|
|
10173
10635
|
if (setOpenProp) {
|
|
@@ -10179,10 +10641,10 @@ var SidebarProvider = React78.forwardRef(
|
|
|
10179
10641
|
},
|
|
10180
10642
|
[setOpenProp, open]
|
|
10181
10643
|
);
|
|
10182
|
-
const toggleSidebar =
|
|
10644
|
+
const toggleSidebar = React80.useCallback(() => {
|
|
10183
10645
|
return isMobile ? setOpenMobile((open2) => !open2) : setOpen((open2) => !open2);
|
|
10184
10646
|
}, [isMobile, setOpen, setOpenMobile]);
|
|
10185
|
-
|
|
10647
|
+
React80.useEffect(() => {
|
|
10186
10648
|
const handleKeyDown = (event) => {
|
|
10187
10649
|
if (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {
|
|
10188
10650
|
event.preventDefault();
|
|
@@ -10193,7 +10655,7 @@ var SidebarProvider = React78.forwardRef(
|
|
|
10193
10655
|
return () => window.removeEventListener("keydown", handleKeyDown);
|
|
10194
10656
|
}, [toggleSidebar]);
|
|
10195
10657
|
const state = open ? "expanded" : "collapsed";
|
|
10196
|
-
const contextValue =
|
|
10658
|
+
const contextValue = React80.useMemo(
|
|
10197
10659
|
() => ({
|
|
10198
10660
|
state,
|
|
10199
10661
|
open,
|
|
@@ -10224,7 +10686,7 @@ var SidebarProvider = React78.forwardRef(
|
|
|
10224
10686
|
}
|
|
10225
10687
|
);
|
|
10226
10688
|
SidebarProvider.displayName = "SidebarProvider";
|
|
10227
|
-
var Sidebar =
|
|
10689
|
+
var Sidebar = React80.forwardRef(
|
|
10228
10690
|
(_a, ref) => {
|
|
10229
10691
|
var _b = _a, {
|
|
10230
10692
|
side = "left",
|
|
@@ -10323,7 +10785,7 @@ var Sidebar = React78.forwardRef(
|
|
|
10323
10785
|
}
|
|
10324
10786
|
);
|
|
10325
10787
|
Sidebar.displayName = "Sidebar";
|
|
10326
|
-
var SidebarTrigger =
|
|
10788
|
+
var SidebarTrigger = React80.forwardRef((_a, ref) => {
|
|
10327
10789
|
var _b = _a, { className, onClick } = _b, props = __objRest(_b, ["className", "onClick"]);
|
|
10328
10790
|
const { toggleSidebar } = useSidebar();
|
|
10329
10791
|
return /* @__PURE__ */ jsxs(
|
|
@@ -10348,7 +10810,7 @@ var SidebarTrigger = React78.forwardRef((_a, ref) => {
|
|
|
10348
10810
|
);
|
|
10349
10811
|
});
|
|
10350
10812
|
SidebarTrigger.displayName = "SidebarTrigger";
|
|
10351
|
-
var SidebarRail =
|
|
10813
|
+
var SidebarRail = React80.forwardRef((_a, ref) => {
|
|
10352
10814
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
10353
10815
|
const { toggleSidebar } = useSidebar();
|
|
10354
10816
|
return /* @__PURE__ */ jsx(
|
|
@@ -10373,7 +10835,7 @@ var SidebarRail = React78.forwardRef((_a, ref) => {
|
|
|
10373
10835
|
);
|
|
10374
10836
|
});
|
|
10375
10837
|
SidebarRail.displayName = "SidebarRail";
|
|
10376
|
-
var SidebarInset =
|
|
10838
|
+
var SidebarInset = React80.forwardRef((_a, ref) => {
|
|
10377
10839
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
10378
10840
|
return /* @__PURE__ */ jsx(
|
|
10379
10841
|
"main",
|
|
@@ -10388,7 +10850,7 @@ var SidebarInset = React78.forwardRef((_a, ref) => {
|
|
|
10388
10850
|
);
|
|
10389
10851
|
});
|
|
10390
10852
|
SidebarInset.displayName = "SidebarInset";
|
|
10391
|
-
var SidebarInput =
|
|
10853
|
+
var SidebarInput = React80.forwardRef((_a, ref) => {
|
|
10392
10854
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
10393
10855
|
return /* @__PURE__ */ jsx(
|
|
10394
10856
|
Input,
|
|
@@ -10403,7 +10865,7 @@ var SidebarInput = React78.forwardRef((_a, ref) => {
|
|
|
10403
10865
|
);
|
|
10404
10866
|
});
|
|
10405
10867
|
SidebarInput.displayName = "SidebarInput";
|
|
10406
|
-
var SidebarHeader =
|
|
10868
|
+
var SidebarHeader = React80.forwardRef((_a, ref) => {
|
|
10407
10869
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
10408
10870
|
return /* @__PURE__ */ jsx(
|
|
10409
10871
|
"div",
|
|
@@ -10415,7 +10877,7 @@ var SidebarHeader = React78.forwardRef((_a, ref) => {
|
|
|
10415
10877
|
);
|
|
10416
10878
|
});
|
|
10417
10879
|
SidebarHeader.displayName = "SidebarHeader";
|
|
10418
|
-
var SidebarFooter =
|
|
10880
|
+
var SidebarFooter = React80.forwardRef((_a, ref) => {
|
|
10419
10881
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
10420
10882
|
return /* @__PURE__ */ jsx(
|
|
10421
10883
|
"div",
|
|
@@ -10427,7 +10889,7 @@ var SidebarFooter = React78.forwardRef((_a, ref) => {
|
|
|
10427
10889
|
);
|
|
10428
10890
|
});
|
|
10429
10891
|
SidebarFooter.displayName = "SidebarFooter";
|
|
10430
|
-
var SidebarSeparator =
|
|
10892
|
+
var SidebarSeparator = React80.forwardRef((_a, ref) => {
|
|
10431
10893
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
10432
10894
|
return /* @__PURE__ */ jsx(
|
|
10433
10895
|
Separator3,
|
|
@@ -10439,7 +10901,7 @@ var SidebarSeparator = React78.forwardRef((_a, ref) => {
|
|
|
10439
10901
|
);
|
|
10440
10902
|
});
|
|
10441
10903
|
SidebarSeparator.displayName = "SidebarSeparator";
|
|
10442
|
-
var SidebarContent =
|
|
10904
|
+
var SidebarContent = React80.forwardRef((_a, ref) => {
|
|
10443
10905
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
10444
10906
|
return /* @__PURE__ */ jsx(
|
|
10445
10907
|
"div",
|
|
@@ -10454,7 +10916,7 @@ var SidebarContent = React78.forwardRef((_a, ref) => {
|
|
|
10454
10916
|
);
|
|
10455
10917
|
});
|
|
10456
10918
|
SidebarContent.displayName = "SidebarContent";
|
|
10457
|
-
var SidebarGroup =
|
|
10919
|
+
var SidebarGroup = React80.forwardRef((_a, ref) => {
|
|
10458
10920
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
10459
10921
|
return /* @__PURE__ */ jsx(
|
|
10460
10922
|
"div",
|
|
@@ -10466,7 +10928,7 @@ var SidebarGroup = React78.forwardRef((_a, ref) => {
|
|
|
10466
10928
|
);
|
|
10467
10929
|
});
|
|
10468
10930
|
SidebarGroup.displayName = "SidebarGroup";
|
|
10469
|
-
var SidebarGroupLabel =
|
|
10931
|
+
var SidebarGroupLabel = React80.forwardRef((_a, ref) => {
|
|
10470
10932
|
var _b = _a, { className, asChild = false } = _b, props = __objRest(_b, ["className", "asChild"]);
|
|
10471
10933
|
const Comp = asChild ? Slot : "div";
|
|
10472
10934
|
return /* @__PURE__ */ jsx(
|
|
@@ -10483,7 +10945,7 @@ var SidebarGroupLabel = React78.forwardRef((_a, ref) => {
|
|
|
10483
10945
|
);
|
|
10484
10946
|
});
|
|
10485
10947
|
SidebarGroupLabel.displayName = "SidebarGroupLabel";
|
|
10486
|
-
var SidebarGroupAction =
|
|
10948
|
+
var SidebarGroupAction = React80.forwardRef((_a, ref) => {
|
|
10487
10949
|
var _b = _a, { className, asChild = false } = _b, props = __objRest(_b, ["className", "asChild"]);
|
|
10488
10950
|
const Comp = asChild ? Slot : "button";
|
|
10489
10951
|
return /* @__PURE__ */ jsx(
|
|
@@ -10502,7 +10964,7 @@ var SidebarGroupAction = React78.forwardRef((_a, ref) => {
|
|
|
10502
10964
|
);
|
|
10503
10965
|
});
|
|
10504
10966
|
SidebarGroupAction.displayName = "SidebarGroupAction";
|
|
10505
|
-
var SidebarGroupContent =
|
|
10967
|
+
var SidebarGroupContent = React80.forwardRef((_a, ref) => {
|
|
10506
10968
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
10507
10969
|
return /* @__PURE__ */ jsx(
|
|
10508
10970
|
"div",
|
|
@@ -10514,7 +10976,7 @@ var SidebarGroupContent = React78.forwardRef((_a, ref) => {
|
|
|
10514
10976
|
);
|
|
10515
10977
|
});
|
|
10516
10978
|
SidebarGroupContent.displayName = "SidebarGroupContent";
|
|
10517
|
-
var SidebarMenu =
|
|
10979
|
+
var SidebarMenu = React80.forwardRef((_a, ref) => {
|
|
10518
10980
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
10519
10981
|
return /* @__PURE__ */ jsx(
|
|
10520
10982
|
"ul",
|
|
@@ -10526,7 +10988,7 @@ var SidebarMenu = React78.forwardRef((_a, ref) => {
|
|
|
10526
10988
|
);
|
|
10527
10989
|
});
|
|
10528
10990
|
SidebarMenu.displayName = "SidebarMenu";
|
|
10529
|
-
var SidebarMenuItem =
|
|
10991
|
+
var SidebarMenuItem = React80.forwardRef((_a, ref) => {
|
|
10530
10992
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
10531
10993
|
return /* @__PURE__ */ jsx(
|
|
10532
10994
|
"li",
|
|
@@ -10558,7 +11020,7 @@ var sidebarMenuButtonVariants = cva(
|
|
|
10558
11020
|
}
|
|
10559
11021
|
}
|
|
10560
11022
|
);
|
|
10561
|
-
var SidebarMenuButton =
|
|
11023
|
+
var SidebarMenuButton = React80.forwardRef(
|
|
10562
11024
|
(_a, ref) => {
|
|
10563
11025
|
var _b = _a, {
|
|
10564
11026
|
asChild = false,
|
|
@@ -10609,7 +11071,7 @@ var SidebarMenuButton = React78.forwardRef(
|
|
|
10609
11071
|
}
|
|
10610
11072
|
);
|
|
10611
11073
|
SidebarMenuButton.displayName = "SidebarMenuButton";
|
|
10612
|
-
var SidebarMenuAction =
|
|
11074
|
+
var SidebarMenuAction = React80.forwardRef((_a, ref) => {
|
|
10613
11075
|
var _b = _a, { className, asChild = false, showOnHover = false } = _b, props = __objRest(_b, ["className", "asChild", "showOnHover"]);
|
|
10614
11076
|
const Comp = asChild ? Slot : "button";
|
|
10615
11077
|
return /* @__PURE__ */ jsx(
|
|
@@ -10632,7 +11094,7 @@ var SidebarMenuAction = React78.forwardRef((_a, ref) => {
|
|
|
10632
11094
|
);
|
|
10633
11095
|
});
|
|
10634
11096
|
SidebarMenuAction.displayName = "SidebarMenuAction";
|
|
10635
|
-
var SidebarMenuBadge =
|
|
11097
|
+
var SidebarMenuBadge = React80.forwardRef((_a, ref) => {
|
|
10636
11098
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
10637
11099
|
return /* @__PURE__ */ jsx(
|
|
10638
11100
|
"div",
|
|
@@ -10652,10 +11114,10 @@ var SidebarMenuBadge = React78.forwardRef((_a, ref) => {
|
|
|
10652
11114
|
);
|
|
10653
11115
|
});
|
|
10654
11116
|
SidebarMenuBadge.displayName = "SidebarMenuBadge";
|
|
10655
|
-
var SidebarMenuSkeleton =
|
|
11117
|
+
var SidebarMenuSkeleton = React80.forwardRef((_a, ref) => {
|
|
10656
11118
|
var _b = _a, { className, showIcon = false } = _b, props = __objRest(_b, ["className", "showIcon"]);
|
|
10657
|
-
const id =
|
|
10658
|
-
const width =
|
|
11119
|
+
const id = React80.useId();
|
|
11120
|
+
const width = React80.useMemo(() => {
|
|
10659
11121
|
const hash = id.split("").reduce((a, c) => a + c.charCodeAt(0), 0);
|
|
10660
11122
|
return `${hash % 40 + 50}%`;
|
|
10661
11123
|
}, [id]);
|
|
@@ -10689,7 +11151,7 @@ var SidebarMenuSkeleton = React78.forwardRef((_a, ref) => {
|
|
|
10689
11151
|
);
|
|
10690
11152
|
});
|
|
10691
11153
|
SidebarMenuSkeleton.displayName = "SidebarMenuSkeleton";
|
|
10692
|
-
var SidebarMenuSub =
|
|
11154
|
+
var SidebarMenuSub = React80.forwardRef((_a, ref) => {
|
|
10693
11155
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
10694
11156
|
return /* @__PURE__ */ jsx(
|
|
10695
11157
|
"ul",
|
|
@@ -10705,12 +11167,12 @@ var SidebarMenuSub = React78.forwardRef((_a, ref) => {
|
|
|
10705
11167
|
);
|
|
10706
11168
|
});
|
|
10707
11169
|
SidebarMenuSub.displayName = "SidebarMenuSub";
|
|
10708
|
-
var SidebarMenuSubItem =
|
|
11170
|
+
var SidebarMenuSubItem = React80.forwardRef((_a, ref) => {
|
|
10709
11171
|
var props = __objRest(_a, []);
|
|
10710
11172
|
return /* @__PURE__ */ jsx("li", __spreadValues({ ref }, props));
|
|
10711
11173
|
});
|
|
10712
11174
|
SidebarMenuSubItem.displayName = "SidebarMenuSubItem";
|
|
10713
|
-
var SidebarMenuSubButton =
|
|
11175
|
+
var SidebarMenuSubButton = React80.forwardRef((_a, ref) => {
|
|
10714
11176
|
var _b = _a, { asChild = false, size = "md", isActive, className } = _b, props = __objRest(_b, ["asChild", "size", "isActive", "className"]);
|
|
10715
11177
|
const Comp = asChild ? Slot : "a";
|
|
10716
11178
|
return /* @__PURE__ */ jsx(
|
|
@@ -10750,7 +11212,7 @@ var sidebarCardVariants = cva(
|
|
|
10750
11212
|
}
|
|
10751
11213
|
}
|
|
10752
11214
|
);
|
|
10753
|
-
var SidebarCard =
|
|
11215
|
+
var SidebarCard = React80.forwardRef(
|
|
10754
11216
|
(_a, ref) => {
|
|
10755
11217
|
var _b = _a, { className, variant, children } = _b, props = __objRest(_b, ["className", "variant", "children"]);
|
|
10756
11218
|
return /* @__PURE__ */ jsx(
|
|
@@ -10789,7 +11251,7 @@ var sidebarMenuItemVariants = cva("", {
|
|
|
10789
11251
|
variant: "default"
|
|
10790
11252
|
}
|
|
10791
11253
|
});
|
|
10792
|
-
var SidebarMenuItem2 =
|
|
11254
|
+
var SidebarMenuItem2 = React80.forwardRef(
|
|
10793
11255
|
(_a, ref) => {
|
|
10794
11256
|
var _b = _a, {
|
|
10795
11257
|
className,
|
|
@@ -10974,6 +11436,198 @@ var SidebarMenuItem2 = React78.forwardRef(
|
|
|
10974
11436
|
}
|
|
10975
11437
|
);
|
|
10976
11438
|
SidebarMenuItem2.displayName = "SidebarMenuItem";
|
|
11439
|
+
var DefaultLogo = () => /* @__PURE__ */ jsx("div", { className: "flex size-8 items-center justify-center rounded-lg bg-sui-bg-state-primary", children: /* @__PURE__ */ jsx("i", { className: "ri-layout-grid-fill text-md leading-none text-icon-on-primary", "aria-hidden": "true" }) });
|
|
11440
|
+
var CardFooter2 = ({
|
|
11441
|
+
text,
|
|
11442
|
+
linkText,
|
|
11443
|
+
onClick,
|
|
11444
|
+
centered
|
|
11445
|
+
}) => /* @__PURE__ */ jsxs("div", { className: cn("flex gap-1 text-sm leading-5", centered && "justify-center"), children: [
|
|
11446
|
+
/* @__PURE__ */ jsx("span", { className: "font-normal text-sui-text-muted", children: text }),
|
|
11447
|
+
/* @__PURE__ */ jsx(
|
|
11448
|
+
"button",
|
|
11449
|
+
{
|
|
11450
|
+
type: "button",
|
|
11451
|
+
onClick,
|
|
11452
|
+
className: "font-medium text-sui-text-informative [@media(hover:hover)]:hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-sui-border-highlight focus-visible:ring-offset-2 focus-visible:ring-offset-sui-bg-default rounded-sm",
|
|
11453
|
+
children: linkText
|
|
11454
|
+
}
|
|
11455
|
+
)
|
|
11456
|
+
] });
|
|
11457
|
+
var SignInCard = React80.forwardRef(
|
|
11458
|
+
(_a, ref) => {
|
|
11459
|
+
var _b = _a, {
|
|
11460
|
+
className,
|
|
11461
|
+
variant = "simple",
|
|
11462
|
+
title = "Sign in to Sort UI",
|
|
11463
|
+
subtitle = "Welcome back! Please enter your details.",
|
|
11464
|
+
logo,
|
|
11465
|
+
showRememberMe = true,
|
|
11466
|
+
showResetPassword = true,
|
|
11467
|
+
showSso = true,
|
|
11468
|
+
socialProviders = ["apple", "google", "twitter"],
|
|
11469
|
+
ctaLabel,
|
|
11470
|
+
footerText = "New to Sort UI?",
|
|
11471
|
+
footerLinkText = "Sign up",
|
|
11472
|
+
onFooterClick
|
|
11473
|
+
} = _b, props = __objRest(_b, [
|
|
11474
|
+
"className",
|
|
11475
|
+
"variant",
|
|
11476
|
+
"title",
|
|
11477
|
+
"subtitle",
|
|
11478
|
+
"logo",
|
|
11479
|
+
"showRememberMe",
|
|
11480
|
+
"showResetPassword",
|
|
11481
|
+
"showSso",
|
|
11482
|
+
"socialProviders",
|
|
11483
|
+
"ctaLabel",
|
|
11484
|
+
"footerText",
|
|
11485
|
+
"footerLinkText",
|
|
11486
|
+
"onFooterClick"
|
|
11487
|
+
]);
|
|
11488
|
+
const logoNode = logo != null ? logo : /* @__PURE__ */ jsx(DefaultLogo, {});
|
|
11489
|
+
const isCentered = variant === "centered" || variant === "social";
|
|
11490
|
+
const Header2 = /* @__PURE__ */ jsxs("div", { className: cn("flex flex-col gap-3", isCentered && "items-center"), children: [
|
|
11491
|
+
logoNode,
|
|
11492
|
+
/* @__PURE__ */ jsxs("div", { className: cn("flex flex-col gap-1", isCentered && "items-center text-center"), children: [
|
|
11493
|
+
/* @__PURE__ */ jsx("p", { className: "text-md font-semibold leading-6 text-sui-text-default", children: title }),
|
|
11494
|
+
/* @__PURE__ */ jsx("p", { className: "text-sm font-normal leading-5 text-sui-text-muted", children: subtitle })
|
|
11495
|
+
] })
|
|
11496
|
+
] });
|
|
11497
|
+
const FormFields = /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-5", children: [
|
|
11498
|
+
/* @__PURE__ */ jsx(
|
|
11499
|
+
InputField,
|
|
11500
|
+
{
|
|
11501
|
+
label: "Email address or username",
|
|
11502
|
+
placeholder: "",
|
|
11503
|
+
inputStyle: "shadow",
|
|
11504
|
+
type: "email",
|
|
11505
|
+
autoComplete: "email"
|
|
11506
|
+
}
|
|
11507
|
+
),
|
|
11508
|
+
/* @__PURE__ */ jsx(
|
|
11509
|
+
InputField,
|
|
11510
|
+
{
|
|
11511
|
+
label: "Password",
|
|
11512
|
+
placeholder: "",
|
|
11513
|
+
inputStyle: "shadow",
|
|
11514
|
+
type: "password",
|
|
11515
|
+
autoComplete: "current-password",
|
|
11516
|
+
labelSupportText: showResetPassword ? "Reset password" : void 0,
|
|
11517
|
+
tailIcon: showResetPassword ? void 0 : void 0
|
|
11518
|
+
}
|
|
11519
|
+
),
|
|
11520
|
+
showRememberMe && /* @__PURE__ */ jsx(CheckboxWithText, { label: "Remember me" })
|
|
11521
|
+
] });
|
|
11522
|
+
if (variant === "simple") {
|
|
11523
|
+
return /* @__PURE__ */ jsxs(
|
|
11524
|
+
"div",
|
|
11525
|
+
__spreadProps(__spreadValues({
|
|
11526
|
+
ref,
|
|
11527
|
+
className: cn(
|
|
11528
|
+
"flex w-[400px] flex-col gap-6 overflow-clip rounded-xl bg-sui-bg-card",
|
|
11529
|
+
"pt-9 pb-6 px-9",
|
|
11530
|
+
"shadow-modal-sm",
|
|
11531
|
+
className
|
|
11532
|
+
)
|
|
11533
|
+
}, props), {
|
|
11534
|
+
children: [
|
|
11535
|
+
Header2,
|
|
11536
|
+
FormFields,
|
|
11537
|
+
/* @__PURE__ */ jsx(Button, { className: "w-full", size: "md", children: ctaLabel != null ? ctaLabel : "Sign In" }),
|
|
11538
|
+
/* @__PURE__ */ jsx(Divider, {}),
|
|
11539
|
+
/* @__PURE__ */ jsx(CardFooter2, { text: footerText, linkText: footerLinkText, onClick: onFooterClick })
|
|
11540
|
+
]
|
|
11541
|
+
})
|
|
11542
|
+
);
|
|
11543
|
+
}
|
|
11544
|
+
if (variant === "centered") {
|
|
11545
|
+
return /* @__PURE__ */ jsxs(
|
|
11546
|
+
"div",
|
|
11547
|
+
__spreadProps(__spreadValues({
|
|
11548
|
+
ref,
|
|
11549
|
+
className: cn(
|
|
11550
|
+
"flex w-[400px] flex-col gap-6 overflow-clip rounded-xl bg-sui-bg-card",
|
|
11551
|
+
"pt-9 pb-6 px-9",
|
|
11552
|
+
"shadow-modal-sm",
|
|
11553
|
+
className
|
|
11554
|
+
)
|
|
11555
|
+
}, props), {
|
|
11556
|
+
children: [
|
|
11557
|
+
Header2,
|
|
11558
|
+
FormFields,
|
|
11559
|
+
/* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-2", children: [
|
|
11560
|
+
/* @__PURE__ */ jsx(Button, { className: "w-full", size: "md", children: ctaLabel != null ? ctaLabel : "Sign In" }),
|
|
11561
|
+
showSso && /* @__PURE__ */ jsxs(Button, { variant: "secondary", className: "w-full", size: "md", children: [
|
|
11562
|
+
/* @__PURE__ */ jsx("i", { className: "ri-key-2-line", "aria-hidden": "true" }),
|
|
11563
|
+
"Single sign-on (SSO)"
|
|
11564
|
+
] })
|
|
11565
|
+
] }),
|
|
11566
|
+
/* @__PURE__ */ jsx(Divider, {}),
|
|
11567
|
+
/* @__PURE__ */ jsx(CardFooter2, { text: footerText, linkText: footerLinkText, onClick: onFooterClick, centered: true })
|
|
11568
|
+
]
|
|
11569
|
+
})
|
|
11570
|
+
);
|
|
11571
|
+
}
|
|
11572
|
+
if (variant === "social") {
|
|
11573
|
+
return /* @__PURE__ */ jsxs(
|
|
11574
|
+
"div",
|
|
11575
|
+
__spreadProps(__spreadValues({
|
|
11576
|
+
ref,
|
|
11577
|
+
className: cn(
|
|
11578
|
+
"flex w-[400px] flex-col overflow-clip rounded-xl bg-sui-bg-card-subtle",
|
|
11579
|
+
"shadow-modal-sm",
|
|
11580
|
+
className
|
|
11581
|
+
)
|
|
11582
|
+
}, props), {
|
|
11583
|
+
children: [
|
|
11584
|
+
/* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-6 border-b border-sui-border-default bg-sui-bg-card p-9", children: [
|
|
11585
|
+
Header2,
|
|
11586
|
+
/* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-6", children: [
|
|
11587
|
+
socialProviders.length > 0 && /* @__PURE__ */ jsx("div", { className: "flex flex-col gap-2", children: socialProviders.map((brand) => /* @__PURE__ */ jsx(SocialButton, { brand, variant: "secondary", className: "w-full" }, brand)) }),
|
|
11588
|
+
/* @__PURE__ */ jsx(Divider, { type: "text-center", label: "or" }),
|
|
11589
|
+
/* @__PURE__ */ jsx(Button, { className: "w-full", size: "md", children: ctaLabel != null ? ctaLabel : "Sign in with email" })
|
|
11590
|
+
] })
|
|
11591
|
+
] }),
|
|
11592
|
+
/* @__PURE__ */ jsx("div", { className: "flex px-9 py-6 justify-center", children: /* @__PURE__ */ jsx(CardFooter2, { text: footerText, linkText: footerLinkText, onClick: onFooterClick, centered: true }) })
|
|
11593
|
+
]
|
|
11594
|
+
})
|
|
11595
|
+
);
|
|
11596
|
+
}
|
|
11597
|
+
return /* @__PURE__ */ jsxs(
|
|
11598
|
+
"div",
|
|
11599
|
+
__spreadProps(__spreadValues({
|
|
11600
|
+
ref,
|
|
11601
|
+
className: cn(
|
|
11602
|
+
"flex w-[400px] flex-col overflow-clip rounded-xl bg-sui-bg-card-subtle",
|
|
11603
|
+
"shadow-modal-sm",
|
|
11604
|
+
className
|
|
11605
|
+
)
|
|
11606
|
+
}, props), {
|
|
11607
|
+
children: [
|
|
11608
|
+
/* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-3 border-b border-sui-border-default bg-sui-bg-card p-9", children: [
|
|
11609
|
+
Header2,
|
|
11610
|
+
/* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-2 pt-3", children: [
|
|
11611
|
+
/* @__PURE__ */ jsx(
|
|
11612
|
+
InputField,
|
|
11613
|
+
{
|
|
11614
|
+
label: "Email address",
|
|
11615
|
+
placeholder: "",
|
|
11616
|
+
inputStyle: "shadow",
|
|
11617
|
+
type: "email",
|
|
11618
|
+
autoComplete: "email"
|
|
11619
|
+
}
|
|
11620
|
+
),
|
|
11621
|
+
/* @__PURE__ */ jsx(Button, { className: "w-full", size: "md", children: ctaLabel != null ? ctaLabel : "Continue" })
|
|
11622
|
+
] })
|
|
11623
|
+
] }),
|
|
11624
|
+
/* @__PURE__ */ jsx("div", { className: "flex px-9 py-6", children: /* @__PURE__ */ jsx(CardFooter2, { text: footerText, linkText: footerLinkText, onClick: onFooterClick }) })
|
|
11625
|
+
]
|
|
11626
|
+
})
|
|
11627
|
+
);
|
|
11628
|
+
}
|
|
11629
|
+
);
|
|
11630
|
+
SignInCard.displayName = "SignInCard";
|
|
10977
11631
|
function clamp2(value, min, max) {
|
|
10978
11632
|
return Math.min(Math.max(value, min), max);
|
|
10979
11633
|
}
|
|
@@ -10985,7 +11639,7 @@ function percent2(value, min, max) {
|
|
|
10985
11639
|
if (max === min) return 0;
|
|
10986
11640
|
return (value - min) / (max - min) * 100;
|
|
10987
11641
|
}
|
|
10988
|
-
var Slider =
|
|
11642
|
+
var Slider = React80.forwardRef(
|
|
10989
11643
|
(_a, ref) => {
|
|
10990
11644
|
var _b = _a, {
|
|
10991
11645
|
className,
|
|
@@ -11018,12 +11672,12 @@ var Slider = React78.forwardRef(
|
|
|
11018
11672
|
"formatValue",
|
|
11019
11673
|
"onValueChange"
|
|
11020
11674
|
]);
|
|
11021
|
-
const trackRef =
|
|
11022
|
-
const [isDragging, setIsDragging] =
|
|
11023
|
-
const [isFocused, setIsFocused] =
|
|
11675
|
+
const trackRef = React80.useRef(null);
|
|
11676
|
+
const [isDragging, setIsDragging] = React80.useState(false);
|
|
11677
|
+
const [isFocused, setIsFocused] = React80.useState(false);
|
|
11024
11678
|
const pct = percent2(value, min, max);
|
|
11025
11679
|
const displayValue = formatValue ? formatValue(value) : `${value}`;
|
|
11026
|
-
const getValueFromPointer =
|
|
11680
|
+
const getValueFromPointer = React80.useCallback(
|
|
11027
11681
|
(clientX) => {
|
|
11028
11682
|
const track = trackRef.current;
|
|
11029
11683
|
if (!track) return 0;
|
|
@@ -11034,7 +11688,7 @@ var Slider = React78.forwardRef(
|
|
|
11034
11688
|
},
|
|
11035
11689
|
[min, max, step]
|
|
11036
11690
|
);
|
|
11037
|
-
const handlePointerDown =
|
|
11691
|
+
const handlePointerDown = React80.useCallback(
|
|
11038
11692
|
(e) => {
|
|
11039
11693
|
if (disabled) return;
|
|
11040
11694
|
e.preventDefault();
|
|
@@ -11045,7 +11699,7 @@ var Slider = React78.forwardRef(
|
|
|
11045
11699
|
},
|
|
11046
11700
|
[disabled, getValueFromPointer, onValueChange, value]
|
|
11047
11701
|
);
|
|
11048
|
-
const handlePointerMove =
|
|
11702
|
+
const handlePointerMove = React80.useCallback(
|
|
11049
11703
|
(e) => {
|
|
11050
11704
|
if (!isDragging || disabled) return;
|
|
11051
11705
|
const newValue = getValueFromPointer(e.clientX);
|
|
@@ -11053,10 +11707,10 @@ var Slider = React78.forwardRef(
|
|
|
11053
11707
|
},
|
|
11054
11708
|
[isDragging, disabled, getValueFromPointer, onValueChange, value]
|
|
11055
11709
|
);
|
|
11056
|
-
const handlePointerUp =
|
|
11710
|
+
const handlePointerUp = React80.useCallback(() => {
|
|
11057
11711
|
setIsDragging(false);
|
|
11058
11712
|
}, []);
|
|
11059
|
-
const handleKeyDown =
|
|
11713
|
+
const handleKeyDown = React80.useCallback(
|
|
11060
11714
|
(e) => {
|
|
11061
11715
|
if (disabled) return;
|
|
11062
11716
|
let newValue = value;
|
|
@@ -11083,7 +11737,7 @@ var Slider = React78.forwardRef(
|
|
|
11083
11737
|
},
|
|
11084
11738
|
[disabled, value, step, min, max, onValueChange]
|
|
11085
11739
|
);
|
|
11086
|
-
const tickLabels =
|
|
11740
|
+
const tickLabels = React80.useMemo(() => {
|
|
11087
11741
|
if (pointLabels) return pointLabels;
|
|
11088
11742
|
const count2 = pointCount;
|
|
11089
11743
|
const labels = [];
|
|
@@ -11122,7 +11776,7 @@ var Slider = React78.forwardRef(
|
|
|
11122
11776
|
/* @__PURE__ */ jsx(
|
|
11123
11777
|
"div",
|
|
11124
11778
|
{
|
|
11125
|
-
className: "absolute left-0 top-1/2 h-1 -translate-y-1/2 bg-
|
|
11779
|
+
className: "absolute left-0 top-1/2 h-1 -translate-y-1/2 bg-informative",
|
|
11126
11780
|
style: { width: `${pct}%` }
|
|
11127
11781
|
}
|
|
11128
11782
|
),
|
|
@@ -11177,7 +11831,7 @@ Slider.displayName = "Slider";
|
|
|
11177
11831
|
function clamp3(value, min, max) {
|
|
11178
11832
|
return Math.min(Math.max(value, min), max);
|
|
11179
11833
|
}
|
|
11180
|
-
var SliderInput =
|
|
11834
|
+
var SliderInput = React80.forwardRef(
|
|
11181
11835
|
(_a, ref) => {
|
|
11182
11836
|
var _b = _a, {
|
|
11183
11837
|
className,
|
|
@@ -11200,8 +11854,8 @@ var SliderInput = React78.forwardRef(
|
|
|
11200
11854
|
"formatValue",
|
|
11201
11855
|
"onValueChange"
|
|
11202
11856
|
]);
|
|
11203
|
-
const [internalValue, setInternalValue] =
|
|
11204
|
-
|
|
11857
|
+
const [internalValue, setInternalValue] = React80.useState(value);
|
|
11858
|
+
React80.useEffect(() => {
|
|
11205
11859
|
setInternalValue(value);
|
|
11206
11860
|
}, [value]);
|
|
11207
11861
|
const commit = (newVal) => {
|
|
@@ -11308,7 +11962,7 @@ function percent3(value, min, max) {
|
|
|
11308
11962
|
if (max === min) return 0;
|
|
11309
11963
|
return (value - min) / (max - min) * 100;
|
|
11310
11964
|
}
|
|
11311
|
-
var SliderRange =
|
|
11965
|
+
var SliderRange = React80.forwardRef(
|
|
11312
11966
|
(_a, ref) => {
|
|
11313
11967
|
var _b = _a, {
|
|
11314
11968
|
className,
|
|
@@ -11341,15 +11995,15 @@ var SliderRange = React78.forwardRef(
|
|
|
11341
11995
|
"formatValue",
|
|
11342
11996
|
"onValueChange"
|
|
11343
11997
|
]);
|
|
11344
|
-
const trackRef =
|
|
11345
|
-
const [draggingHandle, setDraggingHandle] =
|
|
11346
|
-
const [focusedHandle, setFocusedHandle] =
|
|
11998
|
+
const trackRef = React80.useRef(null);
|
|
11999
|
+
const [draggingHandle, setDraggingHandle] = React80.useState(null);
|
|
12000
|
+
const [focusedHandle, setFocusedHandle] = React80.useState(null);
|
|
11347
12001
|
const [rangeMin, rangeMax] = value;
|
|
11348
12002
|
const pctMin = percent3(rangeMin, min, max);
|
|
11349
12003
|
const pctMax = percent3(rangeMax, min, max);
|
|
11350
12004
|
const fmt = (v) => formatValue ? formatValue(v) : `${v}`;
|
|
11351
12005
|
const displayValue = `${fmt(rangeMin)} \u2013 ${fmt(rangeMax)}`;
|
|
11352
|
-
const getValueFromPointer =
|
|
12006
|
+
const getValueFromPointer = React80.useCallback(
|
|
11353
12007
|
(clientX) => {
|
|
11354
12008
|
const track = trackRef.current;
|
|
11355
12009
|
if (!track) return 0;
|
|
@@ -11360,7 +12014,7 @@ var SliderRange = React78.forwardRef(
|
|
|
11360
12014
|
},
|
|
11361
12015
|
[min, max, step]
|
|
11362
12016
|
);
|
|
11363
|
-
const closestHandle =
|
|
12017
|
+
const closestHandle = React80.useCallback(
|
|
11364
12018
|
(pointerValue) => {
|
|
11365
12019
|
const distMin = Math.abs(pointerValue - rangeMin);
|
|
11366
12020
|
const distMax = Math.abs(pointerValue - rangeMax);
|
|
@@ -11368,7 +12022,7 @@ var SliderRange = React78.forwardRef(
|
|
|
11368
12022
|
},
|
|
11369
12023
|
[rangeMin, rangeMax]
|
|
11370
12024
|
);
|
|
11371
|
-
const updateValue =
|
|
12025
|
+
const updateValue = React80.useCallback(
|
|
11372
12026
|
(handle, newVal) => {
|
|
11373
12027
|
if (handle === 0) {
|
|
11374
12028
|
const clamped = clamp4(newVal, min, rangeMax);
|
|
@@ -11380,7 +12034,7 @@ var SliderRange = React78.forwardRef(
|
|
|
11380
12034
|
},
|
|
11381
12035
|
[min, max, rangeMin, rangeMax, onValueChange]
|
|
11382
12036
|
);
|
|
11383
|
-
const handlePointerDown =
|
|
12037
|
+
const handlePointerDown = React80.useCallback(
|
|
11384
12038
|
(e) => {
|
|
11385
12039
|
if (disabled) return;
|
|
11386
12040
|
e.preventDefault();
|
|
@@ -11392,7 +12046,7 @@ var SliderRange = React78.forwardRef(
|
|
|
11392
12046
|
},
|
|
11393
12047
|
[disabled, getValueFromPointer, closestHandle, updateValue]
|
|
11394
12048
|
);
|
|
11395
|
-
const handlePointerMove =
|
|
12049
|
+
const handlePointerMove = React80.useCallback(
|
|
11396
12050
|
(e) => {
|
|
11397
12051
|
if (draggingHandle === null || disabled) return;
|
|
11398
12052
|
const newVal = getValueFromPointer(e.clientX);
|
|
@@ -11400,10 +12054,10 @@ var SliderRange = React78.forwardRef(
|
|
|
11400
12054
|
},
|
|
11401
12055
|
[draggingHandle, disabled, getValueFromPointer, updateValue]
|
|
11402
12056
|
);
|
|
11403
|
-
const handlePointerUp =
|
|
12057
|
+
const handlePointerUp = React80.useCallback(() => {
|
|
11404
12058
|
setDraggingHandle(null);
|
|
11405
12059
|
}, []);
|
|
11406
|
-
const makeKeyHandler =
|
|
12060
|
+
const makeKeyHandler = React80.useCallback(
|
|
11407
12061
|
(handle) => (e) => {
|
|
11408
12062
|
if (disabled) return;
|
|
11409
12063
|
const currentVal = handle === 0 ? rangeMin : rangeMax;
|
|
@@ -11431,7 +12085,7 @@ var SliderRange = React78.forwardRef(
|
|
|
11431
12085
|
},
|
|
11432
12086
|
[disabled, rangeMin, rangeMax, step, min, max, updateValue]
|
|
11433
12087
|
);
|
|
11434
|
-
const tickLabels =
|
|
12088
|
+
const tickLabels = React80.useMemo(() => {
|
|
11435
12089
|
if (pointLabels) return pointLabels;
|
|
11436
12090
|
const labels = [];
|
|
11437
12091
|
for (let i = 0; i < pointCount; i++) {
|
|
@@ -11469,7 +12123,7 @@ var SliderRange = React78.forwardRef(
|
|
|
11469
12123
|
/* @__PURE__ */ jsx(
|
|
11470
12124
|
"div",
|
|
11471
12125
|
{
|
|
11472
|
-
className: "absolute top-1/2 h-1 -translate-y-1/2 bg-
|
|
12126
|
+
className: "absolute top-1/2 h-1 -translate-y-1/2 bg-informative",
|
|
11473
12127
|
style: { left: `${pctMin}%`, right: `${100 - pctMax}%` }
|
|
11474
12128
|
}
|
|
11475
12129
|
),
|
|
@@ -11548,7 +12202,7 @@ var SliderRange = React78.forwardRef(
|
|
|
11548
12202
|
}
|
|
11549
12203
|
);
|
|
11550
12204
|
SliderRange.displayName = "SliderRange";
|
|
11551
|
-
var SliderRangeInput =
|
|
12205
|
+
var SliderRangeInput = React80.forwardRef(
|
|
11552
12206
|
(_a, ref) => {
|
|
11553
12207
|
var _b = _a, {
|
|
11554
12208
|
className,
|
|
@@ -11682,7 +12336,7 @@ var Toaster = (_a) => {
|
|
|
11682
12336
|
classNames: {
|
|
11683
12337
|
toast: "group toast group-[.toaster]:bg-sui-bg-default group-[.toaster]:text-sui-text-default group-[.toaster]:border-sui-border-default group-[.toaster]:shadow-modal-sm",
|
|
11684
12338
|
description: "group-[.toast]:text-sui-text-muted",
|
|
11685
|
-
actionButton: "group-[.toast]:bg-sui-bg-state-primary group-[.toast]:text-sui-text-
|
|
12339
|
+
actionButton: "group-[.toast]:bg-sui-bg-state-primary group-[.toast]:text-sui-text-on-primary",
|
|
11686
12340
|
cancelButton: "group-[.toast]:bg-sui-bg-subtle group-[.toast]:text-sui-text-muted"
|
|
11687
12341
|
}
|
|
11688
12342
|
}
|
|
@@ -11690,7 +12344,7 @@ var Toaster = (_a) => {
|
|
|
11690
12344
|
);
|
|
11691
12345
|
};
|
|
11692
12346
|
var ToastProvider = ToastPrimitives.Provider;
|
|
11693
|
-
var ToastViewport =
|
|
12347
|
+
var ToastViewport = React80.forwardRef((_a, ref) => {
|
|
11694
12348
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
11695
12349
|
return /* @__PURE__ */ jsx(
|
|
11696
12350
|
ToastPrimitives.Viewport,
|
|
@@ -11718,7 +12372,7 @@ var toastVariants = cva(
|
|
|
11718
12372
|
}
|
|
11719
12373
|
}
|
|
11720
12374
|
);
|
|
11721
|
-
var Toast =
|
|
12375
|
+
var Toast = React80.forwardRef((_a, ref) => {
|
|
11722
12376
|
var _b = _a, { className, variant } = _b, props = __objRest(_b, ["className", "variant"]);
|
|
11723
12377
|
return /* @__PURE__ */ jsx(
|
|
11724
12378
|
ToastPrimitives.Root,
|
|
@@ -11729,7 +12383,7 @@ var Toast = React78.forwardRef((_a, ref) => {
|
|
|
11729
12383
|
);
|
|
11730
12384
|
});
|
|
11731
12385
|
Toast.displayName = ToastPrimitives.Root.displayName;
|
|
11732
|
-
var ToastAction =
|
|
12386
|
+
var ToastAction = React80.forwardRef((_a, ref) => {
|
|
11733
12387
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
11734
12388
|
return /* @__PURE__ */ jsx(
|
|
11735
12389
|
ToastPrimitives.Action,
|
|
@@ -11743,7 +12397,7 @@ var ToastAction = React78.forwardRef((_a, ref) => {
|
|
|
11743
12397
|
);
|
|
11744
12398
|
});
|
|
11745
12399
|
ToastAction.displayName = ToastPrimitives.Action.displayName;
|
|
11746
|
-
var ToastClose =
|
|
12400
|
+
var ToastClose = React80.forwardRef((_a, ref) => {
|
|
11747
12401
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
11748
12402
|
return /* @__PURE__ */ jsx(
|
|
11749
12403
|
ToastPrimitives.Close,
|
|
@@ -11760,7 +12414,7 @@ var ToastClose = React78.forwardRef((_a, ref) => {
|
|
|
11760
12414
|
);
|
|
11761
12415
|
});
|
|
11762
12416
|
ToastClose.displayName = ToastPrimitives.Close.displayName;
|
|
11763
|
-
var ToastTitle =
|
|
12417
|
+
var ToastTitle = React80.forwardRef((_a, ref) => {
|
|
11764
12418
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
11765
12419
|
return /* @__PURE__ */ jsx(
|
|
11766
12420
|
ToastPrimitives.Title,
|
|
@@ -11771,7 +12425,7 @@ var ToastTitle = React78.forwardRef((_a, ref) => {
|
|
|
11771
12425
|
);
|
|
11772
12426
|
});
|
|
11773
12427
|
ToastTitle.displayName = ToastPrimitives.Title.displayName;
|
|
11774
|
-
var ToastDescription =
|
|
12428
|
+
var ToastDescription = React80.forwardRef((_a, ref) => {
|
|
11775
12429
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
11776
12430
|
return /* @__PURE__ */ jsx(
|
|
11777
12431
|
ToastPrimitives.Description,
|
|
@@ -11876,8 +12530,8 @@ function toast(_a) {
|
|
|
11876
12530
|
};
|
|
11877
12531
|
}
|
|
11878
12532
|
function useToast() {
|
|
11879
|
-
const [state, setState] =
|
|
11880
|
-
|
|
12533
|
+
const [state, setState] = React80.useState(memoryState);
|
|
12534
|
+
React80.useEffect(() => {
|
|
11881
12535
|
listeners.push(setState);
|
|
11882
12536
|
return () => {
|
|
11883
12537
|
const index = listeners.indexOf(setState);
|
|
@@ -11908,7 +12562,7 @@ function Toaster2() {
|
|
|
11908
12562
|
/* @__PURE__ */ jsx(ToastViewport, {})
|
|
11909
12563
|
] });
|
|
11910
12564
|
}
|
|
11911
|
-
var Switch =
|
|
12565
|
+
var Switch = React80.forwardRef((_a, ref) => {
|
|
11912
12566
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
11913
12567
|
return /* @__PURE__ */ jsx(
|
|
11914
12568
|
SwitchPrimitives.Root,
|
|
@@ -11960,10 +12614,10 @@ var Switch = React78.forwardRef((_a, ref) => {
|
|
|
11960
12614
|
);
|
|
11961
12615
|
});
|
|
11962
12616
|
Switch.displayName = "Switch";
|
|
11963
|
-
var SwitchList =
|
|
12617
|
+
var SwitchList = React80.forwardRef(
|
|
11964
12618
|
(_a, ref) => {
|
|
11965
12619
|
var _b = _a, { className, divider = true, children } = _b, props = __objRest(_b, ["className", "divider", "children"]);
|
|
11966
|
-
const items =
|
|
12620
|
+
const items = React80.Children.toArray(children);
|
|
11967
12621
|
return /* @__PURE__ */ jsx(
|
|
11968
12622
|
"div",
|
|
11969
12623
|
__spreadProps(__spreadValues({
|
|
@@ -11991,7 +12645,7 @@ var SwitchList = React78.forwardRef(
|
|
|
11991
12645
|
}
|
|
11992
12646
|
);
|
|
11993
12647
|
SwitchList.displayName = "SwitchList";
|
|
11994
|
-
var SwitchWithText =
|
|
12648
|
+
var SwitchWithText = React80.forwardRef(
|
|
11995
12649
|
(_a, ref) => {
|
|
11996
12650
|
var _b = _a, {
|
|
11997
12651
|
className,
|
|
@@ -12008,7 +12662,7 @@ var SwitchWithText = React78.forwardRef(
|
|
|
12008
12662
|
"disabled",
|
|
12009
12663
|
"id"
|
|
12010
12664
|
]);
|
|
12011
|
-
const generatedId =
|
|
12665
|
+
const generatedId = React80.useId();
|
|
12012
12666
|
const switchId = id || generatedId;
|
|
12013
12667
|
return /* @__PURE__ */ jsxs(
|
|
12014
12668
|
"div",
|
|
@@ -12065,7 +12719,7 @@ var SwitchWithText = React78.forwardRef(
|
|
|
12065
12719
|
}
|
|
12066
12720
|
);
|
|
12067
12721
|
SwitchWithText.displayName = "SwitchWithText";
|
|
12068
|
-
var Table =
|
|
12722
|
+
var Table = React80.forwardRef((_a, ref) => {
|
|
12069
12723
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
12070
12724
|
return /* @__PURE__ */ jsx("div", { className: "relative w-full overflow-auto", children: /* @__PURE__ */ jsx(
|
|
12071
12725
|
"table",
|
|
@@ -12076,12 +12730,12 @@ var Table = React78.forwardRef((_a, ref) => {
|
|
|
12076
12730
|
) });
|
|
12077
12731
|
});
|
|
12078
12732
|
Table.displayName = "Table";
|
|
12079
|
-
var TableHeader =
|
|
12733
|
+
var TableHeader = React80.forwardRef((_a, ref) => {
|
|
12080
12734
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
12081
12735
|
return /* @__PURE__ */ jsx("thead", __spreadValues({ ref, className: cn("[&_tr]:border-b [&_tr]:border-sui-border-default", className) }, props));
|
|
12082
12736
|
});
|
|
12083
12737
|
TableHeader.displayName = "TableHeader";
|
|
12084
|
-
var TableBody =
|
|
12738
|
+
var TableBody = React80.forwardRef((_a, ref) => {
|
|
12085
12739
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
12086
12740
|
return /* @__PURE__ */ jsx(
|
|
12087
12741
|
"tbody",
|
|
@@ -12092,7 +12746,7 @@ var TableBody = React78.forwardRef((_a, ref) => {
|
|
|
12092
12746
|
);
|
|
12093
12747
|
});
|
|
12094
12748
|
TableBody.displayName = "TableBody";
|
|
12095
|
-
var TableFooter =
|
|
12749
|
+
var TableFooter = React80.forwardRef((_a, ref) => {
|
|
12096
12750
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
12097
12751
|
return /* @__PURE__ */ jsx(
|
|
12098
12752
|
"tfoot",
|
|
@@ -12106,7 +12760,7 @@ var TableFooter = React78.forwardRef((_a, ref) => {
|
|
|
12106
12760
|
);
|
|
12107
12761
|
});
|
|
12108
12762
|
TableFooter.displayName = "TableFooter";
|
|
12109
|
-
var TableRow =
|
|
12763
|
+
var TableRow = React80.forwardRef((_a, ref) => {
|
|
12110
12764
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
12111
12765
|
return /* @__PURE__ */ jsx(
|
|
12112
12766
|
"tr",
|
|
@@ -12120,7 +12774,7 @@ var TableRow = React78.forwardRef((_a, ref) => {
|
|
|
12120
12774
|
);
|
|
12121
12775
|
});
|
|
12122
12776
|
TableRow.displayName = "TableRow";
|
|
12123
|
-
var TableHead =
|
|
12777
|
+
var TableHead = React80.forwardRef((_a, ref) => {
|
|
12124
12778
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
12125
12779
|
return /* @__PURE__ */ jsx(
|
|
12126
12780
|
"th",
|
|
@@ -12134,7 +12788,7 @@ var TableHead = React78.forwardRef((_a, ref) => {
|
|
|
12134
12788
|
);
|
|
12135
12789
|
});
|
|
12136
12790
|
TableHead.displayName = "TableHead";
|
|
12137
|
-
var TableCell =
|
|
12791
|
+
var TableCell = React80.forwardRef((_a, ref) => {
|
|
12138
12792
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
12139
12793
|
return /* @__PURE__ */ jsx(
|
|
12140
12794
|
"td",
|
|
@@ -12145,7 +12799,7 @@ var TableCell = React78.forwardRef((_a, ref) => {
|
|
|
12145
12799
|
);
|
|
12146
12800
|
});
|
|
12147
12801
|
TableCell.displayName = "TableCell";
|
|
12148
|
-
var TableCaption =
|
|
12802
|
+
var TableCaption = React80.forwardRef((_a, ref) => {
|
|
12149
12803
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
12150
12804
|
return /* @__PURE__ */ jsx(
|
|
12151
12805
|
"caption",
|
|
@@ -12181,7 +12835,7 @@ var ariaSortMap2 = {
|
|
|
12181
12835
|
desc: "descending",
|
|
12182
12836
|
none: "none"
|
|
12183
12837
|
};
|
|
12184
|
-
var TableHeaderItem =
|
|
12838
|
+
var TableHeaderItem = React80.forwardRef(
|
|
12185
12839
|
(_a, ref) => {
|
|
12186
12840
|
var _b = _a, {
|
|
12187
12841
|
className,
|
|
@@ -12297,7 +12951,7 @@ var tableItemVariants = cva("flex items-center px-2", {
|
|
|
12297
12951
|
size: "lg"
|
|
12298
12952
|
}
|
|
12299
12953
|
});
|
|
12300
|
-
var TableItem =
|
|
12954
|
+
var TableItem = React80.forwardRef(
|
|
12301
12955
|
(_a, ref) => {
|
|
12302
12956
|
var _b = _a, {
|
|
12303
12957
|
className,
|
|
@@ -12381,7 +13035,7 @@ var TableItem = React78.forwardRef(
|
|
|
12381
13035
|
}
|
|
12382
13036
|
);
|
|
12383
13037
|
TableItem.displayName = "TableItem";
|
|
12384
|
-
var TablePagination =
|
|
13038
|
+
var TablePagination = React80.forwardRef(
|
|
12385
13039
|
(_a, ref) => {
|
|
12386
13040
|
var _b = _a, {
|
|
12387
13041
|
className,
|
|
@@ -12468,7 +13122,7 @@ var tableRowSortVariants = cva(
|
|
|
12468
13122
|
}
|
|
12469
13123
|
}
|
|
12470
13124
|
);
|
|
12471
|
-
var TableRowSort =
|
|
13125
|
+
var TableRowSort = React80.forwardRef(
|
|
12472
13126
|
(_a, ref) => {
|
|
12473
13127
|
var _b = _a, { className, variant = "default", striped, sticky, children } = _b, props = __objRest(_b, ["className", "variant", "striped", "sticky", "children"]);
|
|
12474
13128
|
return /* @__PURE__ */ jsx(
|
|
@@ -12491,7 +13145,7 @@ var TableRowSort = React78.forwardRef(
|
|
|
12491
13145
|
TableRowSort.displayName = "TableRowSort";
|
|
12492
13146
|
var textWidths = ["w-20", "w-28", "w-24", "w-32", "w-16", "w-26", "w-22", "w-30"];
|
|
12493
13147
|
var skeletonBg = "bg-sui-bg-basic-gray-alpha-4";
|
|
12494
|
-
var TableSkeletonRow =
|
|
13148
|
+
var TableSkeletonRow = React80.forwardRef(
|
|
12495
13149
|
(_a, ref) => {
|
|
12496
13150
|
var _b = _a, { className, columns, rowCount = 5, size = "sm" } = _b, props = __objRest(_b, ["className", "columns", "rowCount", "size"]);
|
|
12497
13151
|
return /* @__PURE__ */ jsx("div", __spreadProps(__spreadValues({ ref, className, "aria-hidden": "true" }, props), { children: Array.from({ length: rowCount }, (_, rowIdx) => /* @__PURE__ */ jsx(TableRowSort, { variant: "default", children: columns.map((col, colIdx) => {
|
|
@@ -12541,12 +13195,12 @@ var tabListVariants = cva(
|
|
|
12541
13195
|
}
|
|
12542
13196
|
}
|
|
12543
13197
|
);
|
|
12544
|
-
var TabList =
|
|
13198
|
+
var TabList = React80.forwardRef((_a, ref) => {
|
|
12545
13199
|
var _b = _a, { className, variant = "pill", shape = "pill", layout, children } = _b, props = __objRest(_b, ["className", "variant", "shape", "layout", "children"]);
|
|
12546
13200
|
const childShape = variant === "segmented" && shape === "rounded" ? "rounded" : shape;
|
|
12547
13201
|
const childRadiusOverride = variant === "segmented" && shape === "rounded" ? "rounded-sm" : void 0;
|
|
12548
|
-
const enhancedChildren =
|
|
12549
|
-
if (!
|
|
13202
|
+
const enhancedChildren = React80.Children.map(children, (child) => {
|
|
13203
|
+
if (!React80.isValidElement(child)) return child;
|
|
12550
13204
|
const extraProps = {
|
|
12551
13205
|
shape: childShape
|
|
12552
13206
|
};
|
|
@@ -12554,7 +13208,7 @@ var TabList = React78.forwardRef((_a, ref) => {
|
|
|
12554
13208
|
const existingClassName = child.props.className;
|
|
12555
13209
|
extraProps.className = cn(existingClassName, childRadiusOverride);
|
|
12556
13210
|
}
|
|
12557
|
-
return
|
|
13211
|
+
return React80.cloneElement(child, extraProps);
|
|
12558
13212
|
});
|
|
12559
13213
|
return /* @__PURE__ */ jsx(
|
|
12560
13214
|
TabsPrimitive4.List,
|
|
@@ -12616,7 +13270,7 @@ var tabItemVariants = cva(
|
|
|
12616
13270
|
}
|
|
12617
13271
|
}
|
|
12618
13272
|
);
|
|
12619
|
-
var TabItem =
|
|
13273
|
+
var TabItem = React80.forwardRef((_a, ref) => {
|
|
12620
13274
|
var _b = _a, { className, shape, size } = _b, props = __objRest(_b, ["className", "shape", "size"]);
|
|
12621
13275
|
return /* @__PURE__ */ jsx(
|
|
12622
13276
|
TabsPrimitive4.Trigger,
|
|
@@ -12628,35 +13282,35 @@ var TabItem = React78.forwardRef((_a, ref) => {
|
|
|
12628
13282
|
});
|
|
12629
13283
|
TabItem.displayName = "TabItem";
|
|
12630
13284
|
var Tabs = TabsPrimitive4.Root;
|
|
12631
|
-
var TabsList =
|
|
13285
|
+
var TabsList = React80.forwardRef((_a, ref) => {
|
|
12632
13286
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
12633
13287
|
return /* @__PURE__ */ jsx(
|
|
12634
13288
|
TabsPrimitive4.List,
|
|
12635
13289
|
__spreadValues({
|
|
12636
13290
|
ref,
|
|
12637
13291
|
className: cn(
|
|
12638
|
-
"inline-flex h-10 items-center justify-center rounded-md bg-sui-bg-
|
|
13292
|
+
"inline-flex h-10 items-center justify-center rounded-md bg-sui-bg-state-soft p-1 text-sui-text-muted",
|
|
12639
13293
|
className
|
|
12640
13294
|
)
|
|
12641
13295
|
}, props)
|
|
12642
13296
|
);
|
|
12643
13297
|
});
|
|
12644
13298
|
TabsList.displayName = TabsPrimitive4.List.displayName;
|
|
12645
|
-
var TabsTrigger =
|
|
13299
|
+
var TabsTrigger = React80.forwardRef((_a, ref) => {
|
|
12646
13300
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
12647
13301
|
return /* @__PURE__ */ jsx(
|
|
12648
13302
|
TabsPrimitive4.Trigger,
|
|
12649
13303
|
__spreadValues({
|
|
12650
13304
|
ref,
|
|
12651
13305
|
className: cn(
|
|
12652
|
-
"inline-flex items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-sm font-medium ring-offset-sui-bg-default transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-sui-border-highlight focus-visible:ring-offset-2 disabled:text-sui-text-hint disabled:pointer-events-none data-[state=active]:bg-sui-bg-default data-[state=active]:text-sui-text-default data-[state=active]:shadow-
|
|
13306
|
+
"inline-flex items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-sm font-medium ring-offset-sui-bg-default transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-sui-border-highlight focus-visible:ring-offset-2 disabled:text-sui-text-hint disabled:pointer-events-none [@media(hover:hover)]:hover:bg-sui-bg-state-ghost-hover [@media(hover:hover)]:hover:text-sui-text-default data-[state=active]:bg-sui-bg-default data-[state=active]:text-sui-text-default data-[state=active]:shadow-default",
|
|
12653
13307
|
className
|
|
12654
13308
|
)
|
|
12655
13309
|
}, props)
|
|
12656
13310
|
);
|
|
12657
13311
|
});
|
|
12658
13312
|
TabsTrigger.displayName = TabsPrimitive4.Trigger.displayName;
|
|
12659
|
-
var TabsContent =
|
|
13313
|
+
var TabsContent = React80.forwardRef((_a, ref) => {
|
|
12660
13314
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
12661
13315
|
return /* @__PURE__ */ jsx(
|
|
12662
13316
|
TabsPrimitive4.Content,
|
|
@@ -12700,7 +13354,7 @@ var textAreaContainerVariants = cva(
|
|
|
12700
13354
|
}
|
|
12701
13355
|
}
|
|
12702
13356
|
);
|
|
12703
|
-
var TextAreaField =
|
|
13357
|
+
var TextAreaField = React80.forwardRef(
|
|
12704
13358
|
(_a, ref) => {
|
|
12705
13359
|
var _b = _a, {
|
|
12706
13360
|
className,
|
|
@@ -12749,7 +13403,7 @@ var TextAreaField = React78.forwardRef(
|
|
|
12749
13403
|
"spellCheck",
|
|
12750
13404
|
"autoComplete"
|
|
12751
13405
|
]);
|
|
12752
|
-
const generatedId =
|
|
13406
|
+
const generatedId = React80.useId();
|
|
12753
13407
|
const textAreaId = id || generatedId;
|
|
12754
13408
|
const captionId = `${textAreaId}-caption`;
|
|
12755
13409
|
const charCountId = `${textAreaId}-charcount`;
|
|
@@ -12757,8 +13411,8 @@ var TextAreaField = React78.forwardRef(
|
|
|
12757
13411
|
const helperText = hasError ? error : caption;
|
|
12758
13412
|
const hasActionBar = !!(leadActions || tailActions);
|
|
12759
13413
|
const showCount = !!(showCharCount && maxLength);
|
|
12760
|
-
const innerRef =
|
|
12761
|
-
|
|
13414
|
+
const innerRef = React80.useRef(null);
|
|
13415
|
+
React80.useImperativeHandle(ref, () => innerRef.current, []);
|
|
12762
13416
|
const focusTextareaOnDecorationClick = (e) => {
|
|
12763
13417
|
var _a2;
|
|
12764
13418
|
if (disabled) return;
|
|
@@ -12775,12 +13429,12 @@ var TextAreaField = React78.forwardRef(
|
|
|
12775
13429
|
helperText ? captionId : null,
|
|
12776
13430
|
showCount ? charCountId : null
|
|
12777
13431
|
].filter(Boolean).join(" ") || void 0;
|
|
12778
|
-
const [charCount, setCharCount] =
|
|
13432
|
+
const [charCount, setCharCount] = React80.useState(() => {
|
|
12779
13433
|
if (value !== void 0) return String(value).length;
|
|
12780
13434
|
if (defaultValue !== void 0) return String(defaultValue).length;
|
|
12781
13435
|
return 0;
|
|
12782
13436
|
});
|
|
12783
|
-
|
|
13437
|
+
React80.useEffect(() => {
|
|
12784
13438
|
if (value !== void 0) {
|
|
12785
13439
|
setCharCount(String(value).length);
|
|
12786
13440
|
}
|
|
@@ -12966,7 +13620,7 @@ var TextAreaField = React78.forwardRef(
|
|
|
12966
13620
|
}
|
|
12967
13621
|
);
|
|
12968
13622
|
TextAreaField.displayName = "TextAreaField";
|
|
12969
|
-
var Textarea =
|
|
13623
|
+
var Textarea = React80.forwardRef((_a, ref) => {
|
|
12970
13624
|
var _b = _a, { className, spellCheck } = _b, props = __objRest(_b, ["className", "spellCheck"]);
|
|
12971
13625
|
return /* @__PURE__ */ jsx(
|
|
12972
13626
|
"textarea",
|
|
@@ -13019,7 +13673,7 @@ var toggleVariants = cva(
|
|
|
13019
13673
|
}
|
|
13020
13674
|
}
|
|
13021
13675
|
);
|
|
13022
|
-
var Toggle =
|
|
13676
|
+
var Toggle = React80.forwardRef((_a, ref) => {
|
|
13023
13677
|
var _b = _a, { className, variant, size } = _b, props = __objRest(_b, ["className", "variant", "size"]);
|
|
13024
13678
|
return /* @__PURE__ */ jsx(
|
|
13025
13679
|
TogglePrimitive.Root,
|
|
@@ -13031,7 +13685,7 @@ var Toggle = React78.forwardRef((_a, ref) => {
|
|
|
13031
13685
|
});
|
|
13032
13686
|
Toggle.displayName = TogglePrimitive.Root.displayName;
|
|
13033
13687
|
function useMergedRef(...refs) {
|
|
13034
|
-
return
|
|
13688
|
+
return React80.useCallback((node) => {
|
|
13035
13689
|
refs.forEach((ref) => {
|
|
13036
13690
|
if (typeof ref === "function") ref(node);
|
|
13037
13691
|
else if (ref && "current" in ref)
|
|
@@ -13060,13 +13714,13 @@ var chipSizeMap = {
|
|
|
13060
13714
|
xs: "sm",
|
|
13061
13715
|
"2xs": "sm"
|
|
13062
13716
|
};
|
|
13063
|
-
var ToggleGroupContext =
|
|
13717
|
+
var ToggleGroupContext = React80.createContext(null);
|
|
13064
13718
|
function useToggleGroup() {
|
|
13065
|
-
const ctx =
|
|
13719
|
+
const ctx = React80.useContext(ToggleGroupContext);
|
|
13066
13720
|
if (!ctx) throw new Error("ToggleGroupItem must be used within a ToggleGroup");
|
|
13067
13721
|
return ctx;
|
|
13068
13722
|
}
|
|
13069
|
-
var ToggleGroup =
|
|
13723
|
+
var ToggleGroup = React80.forwardRef(
|
|
13070
13724
|
(props, ref) => {
|
|
13071
13725
|
const {
|
|
13072
13726
|
type,
|
|
@@ -13081,16 +13735,16 @@ var ToggleGroup = React78.forwardRef(
|
|
|
13081
13735
|
const controlledValue = "value" in props ? props.value : void 0;
|
|
13082
13736
|
const defaultValue = "defaultValue" in props ? props.defaultValue : void 0;
|
|
13083
13737
|
const onValueChange = "onValueChange" in props ? props.onValueChange : void 0;
|
|
13084
|
-
const [internalValue, setInternalValue] =
|
|
13738
|
+
const [internalValue, setInternalValue] = React80.useState(
|
|
13085
13739
|
defaultValue
|
|
13086
13740
|
);
|
|
13087
13741
|
const isControlled = controlledValue !== void 0;
|
|
13088
13742
|
const value = isControlled ? controlledValue : internalValue;
|
|
13089
|
-
const [rovingFocusValue, setRovingFocusValue] =
|
|
13090
|
-
const itemRefs =
|
|
13091
|
-
const itemValues =
|
|
13092
|
-
const [, notifyRegistration] =
|
|
13093
|
-
const isActive =
|
|
13743
|
+
const [rovingFocusValue, setRovingFocusValue] = React80.useState(null);
|
|
13744
|
+
const itemRefs = React80.useRef(/* @__PURE__ */ new Map());
|
|
13745
|
+
const itemValues = React80.useRef([]);
|
|
13746
|
+
const [, notifyRegistration] = React80.useReducer((x) => x + 1, 0);
|
|
13747
|
+
const isActive = React80.useCallback(
|
|
13094
13748
|
(itemValue) => {
|
|
13095
13749
|
if (type === "single") return value === itemValue;
|
|
13096
13750
|
if (type === "multiple" && Array.isArray(value)) return value.includes(itemValue);
|
|
@@ -13098,7 +13752,7 @@ var ToggleGroup = React78.forwardRef(
|
|
|
13098
13752
|
},
|
|
13099
13753
|
[type, value]
|
|
13100
13754
|
);
|
|
13101
|
-
const toggle =
|
|
13755
|
+
const toggle = React80.useCallback(
|
|
13102
13756
|
(itemValue) => {
|
|
13103
13757
|
if (type === "single") {
|
|
13104
13758
|
const newValue = value === itemValue ? void 0 : itemValue;
|
|
@@ -13142,7 +13796,7 @@ var ToggleGroup = React78.forwardRef(
|
|
|
13142
13796
|
}
|
|
13143
13797
|
);
|
|
13144
13798
|
ToggleGroup.displayName = "ToggleGroup";
|
|
13145
|
-
var ToggleGroupItem =
|
|
13799
|
+
var ToggleGroupItem = React80.forwardRef(
|
|
13146
13800
|
(_a, ref) => {
|
|
13147
13801
|
var _b = _a, {
|
|
13148
13802
|
value: itemValue,
|
|
@@ -13177,9 +13831,9 @@ var ToggleGroupItem = React78.forwardRef(
|
|
|
13177
13831
|
const disabled = ctx.disabled || itemDisabled;
|
|
13178
13832
|
const resolvedSize = bgSize != null ? bgSize : "lg";
|
|
13179
13833
|
const chipSize = chipSizeMap[resolvedSize];
|
|
13180
|
-
const internalRef =
|
|
13834
|
+
const internalRef = React80.useRef(null);
|
|
13181
13835
|
const mergedRef = useMergedRef(ref, internalRef);
|
|
13182
|
-
|
|
13836
|
+
React80.useEffect(() => {
|
|
13183
13837
|
const el = internalRef.current;
|
|
13184
13838
|
if (!el) return;
|
|
13185
13839
|
ctx.itemRefs.current.set(itemValue, el);
|
|
@@ -13315,8 +13969,8 @@ var ToggleGroupItem = React78.forwardRef(
|
|
|
13315
13969
|
"bg-sui-bg-state-ghost text-sui-text-muted [&_svg]:text-icon-default-muted",
|
|
13316
13970
|
"[@media(hover:hover)]:hover:bg-sui-bg-state-ghost-hover [@media(hover:hover)]:hover:text-sui-text-subtle [@media(hover:hover)]:hover:[&_svg]:text-icon-default-subtle",
|
|
13317
13971
|
"active:bg-sui-bg-state-ghost-press",
|
|
13318
|
-
// Selected state
|
|
13319
|
-
active && "bg-sui-bg-badge-blue text-sui-
|
|
13972
|
+
// Selected state — bg-badge-blue has no theme-adaptive equivalent yet (stays a light-blue tint in Neutral Violet); text/icon use the semantic informative token so they shift blue → orange
|
|
13973
|
+
active && "bg-sui-bg-badge-blue text-sui-text-informative [&_svg]:text-sui-text-informative",
|
|
13320
13974
|
// Disabled
|
|
13321
13975
|
disabled && "opacity-50 cursor-not-allowed pointer-events-none",
|
|
13322
13976
|
// Size
|
|
@@ -13396,7 +14050,7 @@ var containedInnerVariants = cva(
|
|
|
13396
14050
|
"group-hover:bg-sui-bg-state-secondary-hover group-active:bg-sui-bg-state-secondary-press"
|
|
13397
14051
|
]
|
|
13398
14052
|
);
|
|
13399
|
-
var Userbar =
|
|
14053
|
+
var Userbar = React80.forwardRef(
|
|
13400
14054
|
(_a, ref) => {
|
|
13401
14055
|
var _b = _a, {
|
|
13402
14056
|
className,
|
|
@@ -13505,7 +14159,7 @@ var Userbar = React78.forwardRef(
|
|
|
13505
14159
|
}
|
|
13506
14160
|
);
|
|
13507
14161
|
Userbar.displayName = "Userbar";
|
|
13508
|
-
var VerticalStepperItem =
|
|
14162
|
+
var VerticalStepperItem = React80.forwardRef(
|
|
13509
14163
|
(_a, ref) => {
|
|
13510
14164
|
var _b = _a, {
|
|
13511
14165
|
className,
|
|
@@ -13641,7 +14295,7 @@ var VerticalStepperItem = React78.forwardRef(
|
|
|
13641
14295
|
}
|
|
13642
14296
|
);
|
|
13643
14297
|
VerticalStepperItem.displayName = "VerticalStepperItem";
|
|
13644
|
-
var VerticalStepper =
|
|
14298
|
+
var VerticalStepper = React80.forwardRef(
|
|
13645
14299
|
(_a, ref) => {
|
|
13646
14300
|
var _b = _a, {
|
|
13647
14301
|
className,
|
|
@@ -13683,7 +14337,10 @@ var VerticalStepper = React78.forwardRef(
|
|
|
13683
14337
|
"li",
|
|
13684
14338
|
{
|
|
13685
14339
|
"aria-current": state === "current" ? "step" : void 0,
|
|
13686
|
-
className:
|
|
14340
|
+
className: cn(
|
|
14341
|
+
onStepClick && "cursor-pointer",
|
|
14342
|
+
onStepClick && "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-sui-border-highlight focus-visible:ring-offset-2 focus-visible:ring-offset-sui-bg-default focus-visible:rounded-sm"
|
|
14343
|
+
),
|
|
13687
14344
|
onClick: onStepClick ? () => onStepClick(index) : void 0,
|
|
13688
14345
|
onKeyDown: onStepClick ? (e) => {
|
|
13689
14346
|
if (e.key === "Enter" || e.key === " ") {
|
|
@@ -13722,4 +14379,4 @@ var VerticalStepper = React78.forwardRef(
|
|
|
13722
14379
|
);
|
|
13723
14380
|
VerticalStepper.displayName = "VerticalStepper";
|
|
13724
14381
|
|
|
13725
|
-
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, Avatar, AvatarButton, AvatarFallback, AvatarGroup, AvatarImage, AvatarUpload, Badge, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Button, ButtonGroup, ButtonGroupItem, Calendar, CalendarDayButton, Card, CardContent, CardCover, CardDescription, CardFooter, CardHeader, CardTitle, ChartContainer, ChartLegend, ChartLegendContent, ChartStyle, ChartTooltip, ChartTooltipContent, Checkbox, CheckboxCard, CheckboxList, CheckboxWithText, Chip, CodeBlock, Collapsible, CollapsibleContent2 as CollapsibleContent, CollapsibleTrigger2 as CollapsibleTrigger, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, ControlButton, DataRangeSlider, DataRangeSliderInput, DatePicker, DatePickerInput, DatePickerWithPresets, DateRangePicker, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, Divider, DropdownMenu, DropdownMenuCaption, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuLargeItem, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, DropdownMenuUserbar, EmptyState, FileUpload, FileUploadArea, FileUploadCard, FilterButton, GridTableCell, GridTableHeaderItem, GridTableRow, GridTableSlotItem, HorizontalStepper, HorizontalStepperItem, InlineTips, Input, InputButton, InputCaption, InputField, InputStepper, Label, LinkButton, MenuSearchInput, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, NavigationMenuViewport, PageItem, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, Paginator, Popover, PopoverContent, PopoverTrigger, Progress, ProgressBar, RadialProgressBar, RadioButton, RadioButtonCard, RadioButtonList, RadioButtonWithText, RadioCardGroup, RadioGroup2 as RadioGroup, ScrollArea, ScrollBar, Select, SelectContent, SelectGroup, SelectInput, SelectItem, SelectLabel, SelectMenu, SelectMenuDescription, SelectMenuFooterButton, SelectMenuItem, SelectMenuLabel, SelectMenuLargeItem, SelectMenuSeparator, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator3 as Separator, Toaster2 as ShadcnToaster, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, Sidebar, SidebarCard, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem2 as SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Skeleton, Slider, SliderHandle, SliderInput, SliderRange, SliderRangeInput, SocialButton, SortBreadcrumb, SortBreadcrumbItem, StatusBadge, StepperIcon, StepperNumber, Switch, SwitchList, SwitchWithText, TabItem, TabList, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableHeaderItem, TableItem, TablePagination, TableRow, TableRowSort, TableSkeletonRow, Tabs, TabsContent, TabsList, TabsTrigger, TextAreaField, Textarea, Toast, ToastAction, ToastClose, ToastDescription, ToastProvider, ToastTitle, ToastViewport, Toaster, Toggle, ToggleGroup, ToggleGroupItem, Tooltip2 as Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, UnderlineTabItem, UnderlineTabsList, Userbar, VerticalStepper, VerticalStepperItem, accordionItemVariants, avatarButtonVariants, avatarVariants, buttonGroupItemVariants, buttonVariants, cardVariants, checkboxCardVariants, checkboxVariants, checkboxWithTextVariants, chipVariants, controlButtonVariants, datePickerInputContainerVariants, dividerVariants2 as dividerVariants, emptyStateVariants, extractInitials, fileUploadCardVariants, filterButtonVariants, formatBytes, gridTableHeaderItemVariants, gridTableRowVariants, gridTableSlotItemVariants, horizontalStepperItemVariants, inlineTipsVariants, inputButtonVariants, inputContainerVariants, lineVariants, linkButtonVariants, navigationMenuTriggerStyle, pageItemVariants, progressBarVariants, radialProgressBarVariants, radioButtonCardVariants, radioButtonVariants, radioButtonWithTextVariants, sidebarCardVariants, sidebarMenuItemVariants, sliderHandleVariants, socialButtonVariants, stepperIconVariants, stepperNumberVariants, tabItemVariants, tabListVariants, tableHeaderItemVariants, tableItemVariants, tableRowSortVariants, textAreaContainerVariants, toggleVariants, tooltipContentVariants, underlineTabItemVariants, underlineTabsListVariants, useSidebar, userbarVariants, validateFile };
|
|
14382
|
+
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, Attachment, AttachmentAction, AttachmentActions, AttachmentContent, AttachmentDescription, AttachmentGroup, AttachmentMedia, AttachmentTitle, AttachmentTrigger, Avatar, AvatarButton, AvatarFallback, AvatarGroup, AvatarImage, AvatarUpload, Badge, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Button, ButtonGroup, ButtonGroupItem, Calendar, CalendarDayButton, Card, CardContent, CardCover, CardDescription, CardFooter, CardHeader, CardTitle, ChartContainer, ChartLegend, ChartLegendContent, ChartStyle, ChartTooltip, ChartTooltipContent, Checkbox, CheckboxCard, CheckboxList, CheckboxWithText, Chip, CodeBlock, Collapsible, CollapsibleContent2 as CollapsibleContent, CollapsibleTrigger2 as CollapsibleTrigger, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, ControlButton, DataRangeSlider, DataRangeSliderInput, DatePicker, DatePickerInput, DatePickerWithPresets, DateRangePicker, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, Divider, DropdownMenu, DropdownMenuCaption, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuLargeItem, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, DropdownMenuUserbar, EmptyState, FileUpload, FileUploadArea, FileUploadCard, FilterButton, GridTableCell, GridTableHeaderItem, GridTableRow, GridTableSlotItem, HorizontalStepper, HorizontalStepperItem, InlineTips, Input, InputButton, InputCaption, InputField, InputStepper, Label, LinkButton, MenuSearchInput, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, NavigationMenuViewport, PageItem, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, Paginator, Popover, PopoverContent, PopoverTrigger, ProductCard, Progress, ProgressBar, RadialProgressBar, RadioButton, RadioButtonCard, RadioButtonList, RadioButtonWithText, RadioCardGroup, RadioGroup2 as RadioGroup, ScrollArea, ScrollBar, Select, SelectContent, SelectGroup, SelectInput, SelectItem, SelectLabel, SelectMenu, SelectMenuDescription, SelectMenuFooterButton, SelectMenuItem, SelectMenuLabel, SelectMenuLargeItem, SelectMenuSeparator, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator3 as Separator, Toaster2 as ShadcnToaster, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, Sidebar, SidebarCard, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem2 as SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, SignInCard, Skeleton, Slider, SliderHandle, SliderInput, SliderRange, SliderRangeInput, SocialButton, SortBreadcrumb, SortBreadcrumbItem, StatusBadge, StepperIcon, StepperNumber, Switch, SwitchList, SwitchWithText, TabItem, TabList, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableHeaderItem, TableItem, TablePagination, TableRow, TableRowSort, TableSkeletonRow, Tabs, TabsContent, TabsList, TabsTrigger, TextAreaField, Textarea, Toast, ToastAction, ToastClose, ToastDescription, ToastProvider, ToastTitle, ToastViewport, Toaster, Toggle, ToggleGroup, ToggleGroupItem, Tooltip2 as Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, UnderlineTabItem, UnderlineTabsList, Userbar, VerticalStepper, VerticalStepperItem, accordionItemVariants, attachmentVariants, avatarButtonVariants, avatarVariants, buttonGroupItemVariants, buttonVariants, cardVariants, checkboxCardVariants, checkboxVariants, checkboxWithTextVariants, chipVariants, controlButtonVariants, datePickerInputContainerVariants, dividerVariants2 as dividerVariants, emptyStateVariants, extractInitials, fileUploadCardVariants, filterButtonVariants, formatBytes, gridTableHeaderItemVariants, gridTableRowVariants, gridTableSlotItemVariants, horizontalStepperItemVariants, inlineTipsVariants, inputButtonVariants, inputContainerVariants, lineVariants, linkButtonVariants, navigationMenuTriggerStyle, pageItemVariants, progressBarVariants, radialProgressBarVariants, radioButtonCardVariants, radioButtonVariants, radioButtonWithTextVariants, sidebarCardVariants, sidebarMenuItemVariants, sliderHandleVariants, socialButtonVariants, stepperIconVariants, stepperNumberVariants, tabItemVariants, tabListVariants, tableHeaderItemVariants, tableItemVariants, tableRowSortVariants, textAreaContainerVariants, toggleVariants, tooltipContentVariants, underlineTabItemVariants, underlineTabsListVariants, useSidebar, userbarVariants, validateFile };
|