@mlw-packages/react-components 1.7.6 → 1.7.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.css +132 -97
- package/dist/index.d.mts +26 -21
- package/dist/index.d.ts +26 -21
- package/dist/index.js +664 -627
- package/dist/index.mjs +624 -587
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -501,7 +501,7 @@ __export(index_exports, {
|
|
|
501
501
|
AvatarFallbackBase: () => AvatarFallbackBase,
|
|
502
502
|
AvatarImageBase: () => AvatarImageBase,
|
|
503
503
|
BackButton: () => BackButton,
|
|
504
|
-
|
|
504
|
+
Badge: () => Badge,
|
|
505
505
|
BarChart: () => BarChart_default,
|
|
506
506
|
BreadcrumbBase: () => BreadcrumbBase,
|
|
507
507
|
BreadcrumbEllipsisBase: () => BreadcrumbEllipsisBase,
|
|
@@ -523,7 +523,7 @@ __export(index_exports, {
|
|
|
523
523
|
CarouselContentBase: () => CarouselContentBase,
|
|
524
524
|
CarouselItemBase: () => CarouselItemBase,
|
|
525
525
|
CarouselNextBase: () => CarouselNextBase,
|
|
526
|
-
|
|
526
|
+
CarouselPreviousBase: () => CarouselPreviousBase,
|
|
527
527
|
ChangeButton: () => ChangeButton,
|
|
528
528
|
Chart: () => Chart_default,
|
|
529
529
|
CheckButton: () => CheckButton,
|
|
@@ -2525,67 +2525,80 @@ var Highlights = ({
|
|
|
2525
2525
|
initial: "hidden",
|
|
2526
2526
|
animate: "visible",
|
|
2527
2527
|
exit: "exit",
|
|
2528
|
-
children:
|
|
2529
|
-
|
|
2530
|
-
|
|
2531
|
-
|
|
2532
|
-
|
|
2533
|
-
|
|
2534
|
-
|
|
2535
|
-
|
|
2536
|
-
|
|
2537
|
-
|
|
2538
|
-
|
|
2539
|
-
|
|
2540
|
-
|
|
2541
|
-
|
|
2542
|
-
|
|
2543
|
-
|
|
2544
|
-
|
|
2545
|
-
|
|
2546
|
-
|
|
2547
|
-
|
|
2548
|
-
|
|
2549
|
-
|
|
2550
|
-
|
|
2551
|
-
|
|
2552
|
-
|
|
2553
|
-
|
|
2554
|
-
|
|
2555
|
-
|
|
2556
|
-
|
|
2557
|
-
|
|
2558
|
-
|
|
2559
|
-
|
|
2560
|
-
|
|
2561
|
-
showFullLabel ? /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_framer_motion8.motion.span, { className: "truncate max-w-[10rem] pr-2", layout: true, children: label }) : showShortLabel ? /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
2562
|
-
import_framer_motion8.motion.span,
|
|
2563
|
-
{
|
|
2564
|
-
className: "truncate max-w-[6rem] text-xs pr-2",
|
|
2565
|
-
layout: true,
|
|
2566
|
-
children: label
|
|
2567
|
-
}
|
|
2568
|
-
) : null,
|
|
2569
|
-
/* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
2570
|
-
import_framer_motion8.motion.span,
|
|
2571
|
-
{
|
|
2572
|
-
"aria-hidden": true,
|
|
2573
|
-
initial: { opacity: 0, scale: 0.6 },
|
|
2574
|
-
animate: isHighlighted ? { opacity: 1, scale: 1 } : { opacity: 0, scale: 0.6 },
|
|
2575
|
-
transition: { type: "spring", stiffness: 450, damping: 28 },
|
|
2576
|
-
className: cn(
|
|
2577
|
-
"pointer-events-none absolute right-2 -translate-y-1/2 text-xs text-foreground flex items-center justify-center",
|
|
2578
|
-
isHighlighted ? "" : "opacity-0 pointer-events-none"
|
|
2579
|
-
),
|
|
2580
|
-
style: { width: 18, height: 18 },
|
|
2581
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_ssr3.CheckIcon, {})
|
|
2528
|
+
children: (() => {
|
|
2529
|
+
const MotionButtonBase = (0, import_framer_motion8.motion)(
|
|
2530
|
+
ButtonBase
|
|
2531
|
+
);
|
|
2532
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(
|
|
2533
|
+
MotionButtonBase,
|
|
2534
|
+
{
|
|
2535
|
+
variant: "ghost",
|
|
2536
|
+
onClick: () => toggleHighlight(k),
|
|
2537
|
+
title: isHighlighted ? `Desativar ${label}` : `Ativar ${label}`,
|
|
2538
|
+
className: pillClasses,
|
|
2539
|
+
style: { minWidth: showFullLabel ? void 0 : 36 },
|
|
2540
|
+
"aria-pressed": isHighlighted,
|
|
2541
|
+
whileHover: { scale: isHighlighted ? 1.04 : 1.03 },
|
|
2542
|
+
whileTap: { scale: 0.96 },
|
|
2543
|
+
animate: isHighlighted ? { scale: 1.02 } : { scale: 1 },
|
|
2544
|
+
children: [
|
|
2545
|
+
/* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
2546
|
+
import_framer_motion8.motion.span,
|
|
2547
|
+
{
|
|
2548
|
+
className: cn("w-3 h-3 rounded-sm flex-shrink-0 border"),
|
|
2549
|
+
style: {
|
|
2550
|
+
backgroundColor: color,
|
|
2551
|
+
borderColor: isHighlighted ? color : "transparent",
|
|
2552
|
+
boxShadow: isHighlighted ? `0 6px 20px ${color}33` : void 0
|
|
2553
|
+
},
|
|
2554
|
+
layout: true,
|
|
2555
|
+
initial: { scale: 0.8, opacity: 0.9 },
|
|
2556
|
+
animate: { scale: 1, opacity: 1 },
|
|
2557
|
+
transition: {
|
|
2558
|
+
type: "spring",
|
|
2559
|
+
stiffness: 400,
|
|
2560
|
+
damping: 30
|
|
2582
2561
|
}
|
|
2583
|
-
|
|
2584
|
-
|
|
2585
|
-
|
|
2586
|
-
|
|
2587
|
-
|
|
2588
|
-
|
|
2562
|
+
}
|
|
2563
|
+
),
|
|
2564
|
+
showFullLabel ? /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
2565
|
+
import_framer_motion8.motion.span,
|
|
2566
|
+
{
|
|
2567
|
+
className: "truncate max-w-[10rem] pr-2",
|
|
2568
|
+
layout: true,
|
|
2569
|
+
children: label
|
|
2570
|
+
}
|
|
2571
|
+
) : showShortLabel ? /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
2572
|
+
import_framer_motion8.motion.span,
|
|
2573
|
+
{
|
|
2574
|
+
className: "truncate max-w-[6rem] text-xs pr-2",
|
|
2575
|
+
layout: true,
|
|
2576
|
+
children: label
|
|
2577
|
+
}
|
|
2578
|
+
) : null,
|
|
2579
|
+
/* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
2580
|
+
import_framer_motion8.motion.span,
|
|
2581
|
+
{
|
|
2582
|
+
"aria-hidden": true,
|
|
2583
|
+
initial: { opacity: 0, scale: 0.6 },
|
|
2584
|
+
animate: isHighlighted ? { opacity: 1, scale: 1 } : { opacity: 0, scale: 0.6 },
|
|
2585
|
+
transition: {
|
|
2586
|
+
type: "spring",
|
|
2587
|
+
stiffness: 450,
|
|
2588
|
+
damping: 28
|
|
2589
|
+
},
|
|
2590
|
+
className: cn(
|
|
2591
|
+
"pointer-events-none absolute right-2 -translate-y-1/2 text-xs text-foreground flex items-center justify-center",
|
|
2592
|
+
isHighlighted ? "" : "opacity-0 pointer-events-none"
|
|
2593
|
+
),
|
|
2594
|
+
style: { width: 18, height: 18 },
|
|
2595
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_ssr3.CheckIcon, {})
|
|
2596
|
+
}
|
|
2597
|
+
)
|
|
2598
|
+
]
|
|
2599
|
+
}
|
|
2600
|
+
);
|
|
2601
|
+
})()
|
|
2589
2602
|
},
|
|
2590
2603
|
`pill-${k}`
|
|
2591
2604
|
);
|
|
@@ -5888,7 +5901,7 @@ var AvatarFallbackBase = React16.forwardRef(({ className, ...props }, ref) => /*
|
|
|
5888
5901
|
));
|
|
5889
5902
|
AvatarFallbackBase.displayName = AvatarPrimitive.Fallback.displayName;
|
|
5890
5903
|
|
|
5891
|
-
// src/components/ui/data/
|
|
5904
|
+
// src/components/ui/data/Badge.tsx
|
|
5892
5905
|
var import_react_slot3 = require("@radix-ui/react-slot");
|
|
5893
5906
|
var import_class_variance_authority2 = require("class-variance-authority");
|
|
5894
5907
|
var import_jsx_runtime32 = require("react/jsx-runtime");
|
|
@@ -5907,7 +5920,7 @@ var badgeVariants = (0, import_class_variance_authority2.cva)(
|
|
|
5907
5920
|
}
|
|
5908
5921
|
}
|
|
5909
5922
|
);
|
|
5910
|
-
function
|
|
5923
|
+
function Badge({
|
|
5911
5924
|
className,
|
|
5912
5925
|
color,
|
|
5913
5926
|
size = "md",
|
|
@@ -7383,64 +7396,78 @@ var CollapsibleContentBase = React25.forwardRef(({ className, children, ...props
|
|
|
7383
7396
|
),
|
|
7384
7397
|
"data-slot": "collapsible-content",
|
|
7385
7398
|
...props,
|
|
7386
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", {
|
|
7399
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { children })
|
|
7387
7400
|
}
|
|
7388
7401
|
);
|
|
7389
7402
|
});
|
|
7390
7403
|
CollapsibleContentBase.displayName = CollapsiblePrimitive.CollapsibleContent.displayName;
|
|
7391
7404
|
|
|
7392
|
-
// src/components/ui/form/DebounceInput.tsx
|
|
7393
|
-
var import_react30 = require("react");
|
|
7394
|
-
var import_react31 = require("@phosphor-icons/react");
|
|
7395
|
-
var import_jsx_runtime45 = require("react/jsx-runtime");
|
|
7396
|
-
|
|
7397
7405
|
// src/components/ui/form/HoverCardBase.tsx
|
|
7406
|
+
var React26 = __toESM(require("react"));
|
|
7398
7407
|
var HoverCardPrimitive = __toESM(require("@radix-ui/react-hover-card"));
|
|
7399
|
-
var
|
|
7408
|
+
var import_jsx_runtime45 = require("react/jsx-runtime");
|
|
7400
7409
|
function HoverCardBase(props) {
|
|
7401
|
-
return /* @__PURE__ */ (0,
|
|
7410
|
+
return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(HoverCardPrimitive.Root, { ...props });
|
|
7402
7411
|
}
|
|
7403
7412
|
function HoverCardTriggerBase(props) {
|
|
7404
|
-
return /* @__PURE__ */ (0,
|
|
7405
|
-
}
|
|
7406
|
-
function HoverCardContentBase({
|
|
7407
|
-
className,
|
|
7408
|
-
align = "center",
|
|
7409
|
-
sideOffset = 4,
|
|
7410
|
-
...props
|
|
7411
|
-
}) {
|
|
7412
|
-
return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(HoverCardPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
|
|
7413
|
-
HoverCardPrimitive.Content,
|
|
7414
|
-
{
|
|
7415
|
-
align,
|
|
7416
|
-
sideOffset,
|
|
7417
|
-
className: cn(
|
|
7418
|
-
"z-50 w-64 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none",
|
|
7419
|
-
"data-[state=open]:animate-in data-[state=closed]:animate-out",
|
|
7420
|
-
"data-[state=open]:fade-in-0 data-[state=closed]:fade-out-0",
|
|
7421
|
-
"data-[state=open]:zoom-in-95 data-[state=closed]:zoom-out-95",
|
|
7422
|
-
"data-[side=bottom]:slide-in-from-top-2",
|
|
7423
|
-
"data-[side=left]:slide-in-from-right-2",
|
|
7424
|
-
"data-[side=right]:slide-in-from-left-2",
|
|
7425
|
-
"data-[side=top]:slide-in-from-bottom-2",
|
|
7426
|
-
className
|
|
7427
|
-
),
|
|
7428
|
-
...props
|
|
7429
|
-
}
|
|
7430
|
-
) });
|
|
7413
|
+
return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(HoverCardPrimitive.Trigger, { ...props });
|
|
7431
7414
|
}
|
|
7415
|
+
var HoverCardContentBase = React26.forwardRef(
|
|
7416
|
+
({ className, align = "center", sideOffset = 6, children, ...props }, ref) => {
|
|
7417
|
+
return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(HoverCardPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
|
|
7418
|
+
HoverCardPrimitive.Content,
|
|
7419
|
+
{
|
|
7420
|
+
ref,
|
|
7421
|
+
align,
|
|
7422
|
+
sideOffset,
|
|
7423
|
+
className: cn(
|
|
7424
|
+
"z-50 w-64 max-w-[90vw] rounded-lg border bg-popover p-4 text-popover-foreground shadow-lg outline-none backdrop-blur-sm relative transform-gpu",
|
|
7425
|
+
"motion-safe:transition-all motion-safe:duration-200 motion-safe:ease-out",
|
|
7426
|
+
"motion-reduce:transition-none motion-reduce:transform-none",
|
|
7427
|
+
"data-[state=open]:scale-100 data-[state=closed]:scale-95",
|
|
7428
|
+
"data-[state=open]:shadow-2xl data-[state=closed]:shadow-lg",
|
|
7429
|
+
"data-[state=open]:animate-in data-[state=closed]:animate-out",
|
|
7430
|
+
"data-[state=open]:fade-in-0 data-[state=closed]:fade-out-0",
|
|
7431
|
+
"data-[state=open]:zoom-in-95 data-[state=closed]:zoom-out-95",
|
|
7432
|
+
"data-[side=bottom]:origin-top data-[side=top]:origin-bottom data-[side=left]:origin-right data-[side=right]:origin-left",
|
|
7433
|
+
"data-[side=bottom]:slide-in-from-top-2",
|
|
7434
|
+
"data-[side=left]:slide-in-from-right-2",
|
|
7435
|
+
"data-[side=right]:slide-in-from-left-2",
|
|
7436
|
+
"data-[side=top]:slide-in-from-bottom-2",
|
|
7437
|
+
className
|
|
7438
|
+
),
|
|
7439
|
+
...props,
|
|
7440
|
+
children: [
|
|
7441
|
+
/* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
|
|
7442
|
+
HoverCardPrimitive.Arrow,
|
|
7443
|
+
{
|
|
7444
|
+
className: cn(
|
|
7445
|
+
"fill-popover stroke-[rgba(0,0,0,0.06)] dark:stroke-[rgba(255,255,255,0.06)]",
|
|
7446
|
+
"motion-safe:transition-transform motion-safe:duration-200",
|
|
7447
|
+
// subtle arrow nudge depending on side
|
|
7448
|
+
"data-[side=top]:-translate-y-1 data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1"
|
|
7449
|
+
)
|
|
7450
|
+
}
|
|
7451
|
+
),
|
|
7452
|
+
/* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: "relative z-10", children })
|
|
7453
|
+
]
|
|
7454
|
+
}
|
|
7455
|
+
) });
|
|
7456
|
+
}
|
|
7457
|
+
);
|
|
7458
|
+
HoverCardContentBase.displayName = HoverCardPrimitive.Content.displayName;
|
|
7432
7459
|
|
|
7433
7460
|
// src/components/ui/form/Input-OTP-Base.tsx
|
|
7434
|
-
var
|
|
7461
|
+
var React27 = __toESM(require("react"));
|
|
7435
7462
|
var import_input_otp = require("input-otp");
|
|
7436
|
-
var
|
|
7437
|
-
var
|
|
7463
|
+
var import_react30 = require("@phosphor-icons/react");
|
|
7464
|
+
var import_jsx_runtime46 = require("react/jsx-runtime");
|
|
7438
7465
|
function InputOTPBase({
|
|
7439
7466
|
className,
|
|
7440
7467
|
containerClassName,
|
|
7441
7468
|
...props
|
|
7442
7469
|
}) {
|
|
7443
|
-
return /* @__PURE__ */ (0,
|
|
7470
|
+
return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
|
|
7444
7471
|
import_input_otp.OTPInput,
|
|
7445
7472
|
{
|
|
7446
7473
|
"data-slot": "input-otp",
|
|
@@ -7454,7 +7481,7 @@ function InputOTPBase({
|
|
|
7454
7481
|
);
|
|
7455
7482
|
}
|
|
7456
7483
|
function InputOTPGroupBase({ className, ...props }) {
|
|
7457
|
-
return /* @__PURE__ */ (0,
|
|
7484
|
+
return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
|
|
7458
7485
|
"div",
|
|
7459
7486
|
{
|
|
7460
7487
|
"data-slot": "input-otp-group",
|
|
@@ -7468,9 +7495,9 @@ function InputOTPSlotBase({
|
|
|
7468
7495
|
className,
|
|
7469
7496
|
...props
|
|
7470
7497
|
}) {
|
|
7471
|
-
const inputOTPContext =
|
|
7498
|
+
const inputOTPContext = React27.useContext(import_input_otp.OTPInputContext);
|
|
7472
7499
|
const { char, hasFakeCaret, isActive } = inputOTPContext?.slots[index] ?? {};
|
|
7473
|
-
return /* @__PURE__ */ (0,
|
|
7500
|
+
return /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(
|
|
7474
7501
|
"div",
|
|
7475
7502
|
{
|
|
7476
7503
|
"data-slot": "input-otp-slot",
|
|
@@ -7482,20 +7509,20 @@ function InputOTPSlotBase({
|
|
|
7482
7509
|
...props,
|
|
7483
7510
|
children: [
|
|
7484
7511
|
char,
|
|
7485
|
-
hasFakeCaret && /* @__PURE__ */ (0,
|
|
7512
|
+
hasFakeCaret && /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("div", { className: "pointer-events-none absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("div", { className: "animate-caret-blink bg-foreground h-4 w-px duration-1000" }) })
|
|
7486
7513
|
]
|
|
7487
7514
|
}
|
|
7488
7515
|
);
|
|
7489
7516
|
}
|
|
7490
7517
|
function InputOTPSeparatorBase({ ...props }) {
|
|
7491
|
-
return /* @__PURE__ */ (0,
|
|
7518
|
+
return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("div", { "data-slot": "input-otp-separator", role: "separator", ...props, children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_react30.MinusIcon, {}) });
|
|
7492
7519
|
}
|
|
7493
7520
|
|
|
7494
7521
|
// src/components/ui/form/SliderBase.tsx
|
|
7495
|
-
var
|
|
7522
|
+
var React28 = __toESM(require("react"));
|
|
7496
7523
|
var SliderPrimitive = __toESM(require("@radix-ui/react-slider"));
|
|
7497
|
-
var
|
|
7498
|
-
var SlideBase =
|
|
7524
|
+
var import_jsx_runtime47 = require("react/jsx-runtime");
|
|
7525
|
+
var SlideBase = React28.forwardRef(
|
|
7499
7526
|
({
|
|
7500
7527
|
className,
|
|
7501
7528
|
orientation = "horizontal",
|
|
@@ -7505,13 +7532,13 @@ var SlideBase = React27.forwardRef(
|
|
|
7505
7532
|
...props
|
|
7506
7533
|
}, ref) => {
|
|
7507
7534
|
const isVertical = orientation === "vertical";
|
|
7508
|
-
return /* @__PURE__ */ (0,
|
|
7535
|
+
return /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(
|
|
7509
7536
|
"div",
|
|
7510
7537
|
{
|
|
7511
7538
|
className: cn("flex flex-col gap-1", isVertical ? "h-full " : "w-full"),
|
|
7512
7539
|
children: [
|
|
7513
|
-
label && /* @__PURE__ */ (0,
|
|
7514
|
-
/* @__PURE__ */ (0,
|
|
7540
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(LabelBase_default, { className: "py-2", children: label }),
|
|
7541
|
+
/* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(
|
|
7515
7542
|
"div",
|
|
7516
7543
|
{
|
|
7517
7544
|
className: cn(
|
|
@@ -7519,8 +7546,8 @@ var SlideBase = React27.forwardRef(
|
|
|
7519
7546
|
isVertical ? "flex-col h-full" : "flex-row items-center w-full"
|
|
7520
7547
|
),
|
|
7521
7548
|
children: [
|
|
7522
|
-
leftIcon && /* @__PURE__ */ (0,
|
|
7523
|
-
/* @__PURE__ */ (0,
|
|
7549
|
+
leftIcon && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("div", { className: "flex items-center justify-center", children: leftIcon }),
|
|
7550
|
+
/* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(
|
|
7524
7551
|
SliderPrimitive.Root,
|
|
7525
7552
|
{
|
|
7526
7553
|
ref,
|
|
@@ -7532,14 +7559,14 @@ var SlideBase = React27.forwardRef(
|
|
|
7532
7559
|
),
|
|
7533
7560
|
...props,
|
|
7534
7561
|
children: [
|
|
7535
|
-
/* @__PURE__ */ (0,
|
|
7562
|
+
/* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
|
|
7536
7563
|
SliderPrimitive.Track,
|
|
7537
7564
|
{
|
|
7538
7565
|
className: cn(
|
|
7539
7566
|
"relative overflow-hidden bg-primary/20 rounded-full",
|
|
7540
7567
|
isVertical ? "w-1.5 h-full" : "h-1.5 w-full"
|
|
7541
7568
|
),
|
|
7542
|
-
children: /* @__PURE__ */ (0,
|
|
7569
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
|
|
7543
7570
|
SliderPrimitive.Range,
|
|
7544
7571
|
{
|
|
7545
7572
|
className: cn(
|
|
@@ -7550,7 +7577,7 @@ var SlideBase = React27.forwardRef(
|
|
|
7550
7577
|
)
|
|
7551
7578
|
}
|
|
7552
7579
|
),
|
|
7553
|
-
/* @__PURE__ */ (0,
|
|
7580
|
+
/* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
|
|
7554
7581
|
SliderPrimitive.Thumb,
|
|
7555
7582
|
{
|
|
7556
7583
|
className: cn(
|
|
@@ -7563,7 +7590,7 @@ var SlideBase = React27.forwardRef(
|
|
|
7563
7590
|
]
|
|
7564
7591
|
}
|
|
7565
7592
|
),
|
|
7566
|
-
rightIcon && /* @__PURE__ */ (0,
|
|
7593
|
+
rightIcon && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("div", { className: "flex items-center justify-center", children: rightIcon })
|
|
7567
7594
|
]
|
|
7568
7595
|
}
|
|
7569
7596
|
)
|
|
@@ -7575,10 +7602,10 @@ var SlideBase = React27.forwardRef(
|
|
|
7575
7602
|
SlideBase.displayName = "SlideBase";
|
|
7576
7603
|
|
|
7577
7604
|
// src/components/ui/form/SmallButtons.tsx
|
|
7578
|
-
var
|
|
7579
|
-
var
|
|
7580
|
-
var
|
|
7581
|
-
var EditButton =
|
|
7605
|
+
var React29 = __toESM(require("react"));
|
|
7606
|
+
var import_react31 = require("@phosphor-icons/react");
|
|
7607
|
+
var import_jsx_runtime48 = require("react/jsx-runtime");
|
|
7608
|
+
var EditButton = React29.forwardRef(
|
|
7582
7609
|
({
|
|
7583
7610
|
disabled,
|
|
7584
7611
|
onClick,
|
|
@@ -7589,7 +7616,7 @@ var EditButton = React28.forwardRef(
|
|
|
7589
7616
|
variant = "default",
|
|
7590
7617
|
size = "icon",
|
|
7591
7618
|
...props
|
|
7592
|
-
}, ref) => /* @__PURE__ */ (0,
|
|
7619
|
+
}, ref) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
7593
7620
|
ButtonBase,
|
|
7594
7621
|
{
|
|
7595
7622
|
ref,
|
|
@@ -7606,8 +7633,8 @@ var EditButton = React28.forwardRef(
|
|
|
7606
7633
|
className
|
|
7607
7634
|
),
|
|
7608
7635
|
...props,
|
|
7609
|
-
children: /* @__PURE__ */ (0,
|
|
7610
|
-
|
|
7636
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
7637
|
+
import_react31.PencilSimpleIcon,
|
|
7611
7638
|
{
|
|
7612
7639
|
size: iconSize,
|
|
7613
7640
|
color: iconColor,
|
|
@@ -7618,7 +7645,7 @@ var EditButton = React28.forwardRef(
|
|
|
7618
7645
|
)
|
|
7619
7646
|
);
|
|
7620
7647
|
EditButton.displayName = "EditButton";
|
|
7621
|
-
var ChangeButton =
|
|
7648
|
+
var ChangeButton = React29.forwardRef(
|
|
7622
7649
|
({
|
|
7623
7650
|
disabled,
|
|
7624
7651
|
onClick,
|
|
@@ -7629,7 +7656,7 @@ var ChangeButton = React28.forwardRef(
|
|
|
7629
7656
|
variant = "default",
|
|
7630
7657
|
size = "icon",
|
|
7631
7658
|
...props
|
|
7632
|
-
}, ref) => /* @__PURE__ */ (0,
|
|
7659
|
+
}, ref) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
7633
7660
|
ButtonBase,
|
|
7634
7661
|
{
|
|
7635
7662
|
ref,
|
|
@@ -7646,8 +7673,8 @@ var ChangeButton = React28.forwardRef(
|
|
|
7646
7673
|
className
|
|
7647
7674
|
),
|
|
7648
7675
|
...props,
|
|
7649
|
-
children: /* @__PURE__ */ (0,
|
|
7650
|
-
|
|
7676
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
7677
|
+
import_react31.ArrowsLeftRightIcon,
|
|
7651
7678
|
{
|
|
7652
7679
|
size: iconSize,
|
|
7653
7680
|
color: iconColor,
|
|
@@ -7658,7 +7685,7 @@ var ChangeButton = React28.forwardRef(
|
|
|
7658
7685
|
)
|
|
7659
7686
|
);
|
|
7660
7687
|
ChangeButton.displayName = "ChangeButton";
|
|
7661
|
-
var SaveButton =
|
|
7688
|
+
var SaveButton = React29.forwardRef(
|
|
7662
7689
|
({
|
|
7663
7690
|
disabled,
|
|
7664
7691
|
onClick,
|
|
@@ -7669,7 +7696,7 @@ var SaveButton = React28.forwardRef(
|
|
|
7669
7696
|
variant = "default",
|
|
7670
7697
|
size = "icon",
|
|
7671
7698
|
...props
|
|
7672
|
-
}, ref) => /* @__PURE__ */ (0,
|
|
7699
|
+
}, ref) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
7673
7700
|
ButtonBase,
|
|
7674
7701
|
{
|
|
7675
7702
|
ref,
|
|
@@ -7686,8 +7713,8 @@ var SaveButton = React28.forwardRef(
|
|
|
7686
7713
|
className
|
|
7687
7714
|
),
|
|
7688
7715
|
...props,
|
|
7689
|
-
children: /* @__PURE__ */ (0,
|
|
7690
|
-
|
|
7716
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
7717
|
+
import_react31.FloppyDiskIcon,
|
|
7691
7718
|
{
|
|
7692
7719
|
size: iconSize,
|
|
7693
7720
|
color: iconColor,
|
|
@@ -7698,7 +7725,7 @@ var SaveButton = React28.forwardRef(
|
|
|
7698
7725
|
)
|
|
7699
7726
|
);
|
|
7700
7727
|
SaveButton.displayName = "SaveButton";
|
|
7701
|
-
var AddButton =
|
|
7728
|
+
var AddButton = React29.forwardRef(
|
|
7702
7729
|
({
|
|
7703
7730
|
disabled,
|
|
7704
7731
|
onClick,
|
|
@@ -7709,7 +7736,7 @@ var AddButton = React28.forwardRef(
|
|
|
7709
7736
|
variant = "default",
|
|
7710
7737
|
size = "icon",
|
|
7711
7738
|
...props
|
|
7712
|
-
}, ref) => /* @__PURE__ */ (0,
|
|
7739
|
+
}, ref) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
7713
7740
|
ButtonBase,
|
|
7714
7741
|
{
|
|
7715
7742
|
ref,
|
|
@@ -7726,8 +7753,8 @@ var AddButton = React28.forwardRef(
|
|
|
7726
7753
|
className
|
|
7727
7754
|
),
|
|
7728
7755
|
...props,
|
|
7729
|
-
children: /* @__PURE__ */ (0,
|
|
7730
|
-
|
|
7756
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
7757
|
+
import_react31.PlusIcon,
|
|
7731
7758
|
{
|
|
7732
7759
|
size: iconSize,
|
|
7733
7760
|
color: iconColor,
|
|
@@ -7738,7 +7765,7 @@ var AddButton = React28.forwardRef(
|
|
|
7738
7765
|
)
|
|
7739
7766
|
);
|
|
7740
7767
|
AddButton.displayName = "AddButton";
|
|
7741
|
-
var CloseButton =
|
|
7768
|
+
var CloseButton = React29.forwardRef(
|
|
7742
7769
|
({
|
|
7743
7770
|
disabled,
|
|
7744
7771
|
onClick,
|
|
@@ -7749,7 +7776,7 @@ var CloseButton = React28.forwardRef(
|
|
|
7749
7776
|
variant = "ghost",
|
|
7750
7777
|
size = "icon",
|
|
7751
7778
|
...props
|
|
7752
|
-
}, ref) => /* @__PURE__ */ (0,
|
|
7779
|
+
}, ref) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
7753
7780
|
ButtonBase,
|
|
7754
7781
|
{
|
|
7755
7782
|
ref,
|
|
@@ -7766,8 +7793,8 @@ var CloseButton = React28.forwardRef(
|
|
|
7766
7793
|
className
|
|
7767
7794
|
),
|
|
7768
7795
|
...props,
|
|
7769
|
-
children: /* @__PURE__ */ (0,
|
|
7770
|
-
|
|
7796
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
7797
|
+
import_react31.XIcon,
|
|
7771
7798
|
{
|
|
7772
7799
|
size: iconSize,
|
|
7773
7800
|
color: iconColor,
|
|
@@ -7783,7 +7810,7 @@ var DownloadButton = ({
|
|
|
7783
7810
|
onClick,
|
|
7784
7811
|
testid = "button-download",
|
|
7785
7812
|
...props
|
|
7786
|
-
}) => /* @__PURE__ */ (0,
|
|
7813
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
7787
7814
|
ButtonBase,
|
|
7788
7815
|
{
|
|
7789
7816
|
variant: "outline",
|
|
@@ -7798,8 +7825,8 @@ var DownloadButton = ({
|
|
|
7798
7825
|
"disabled:hover:scale-100"
|
|
7799
7826
|
),
|
|
7800
7827
|
...props,
|
|
7801
|
-
children: /* @__PURE__ */ (0,
|
|
7802
|
-
|
|
7828
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
7829
|
+
import_react31.DownloadSimpleIcon,
|
|
7803
7830
|
{
|
|
7804
7831
|
size: 18,
|
|
7805
7832
|
className: "transition-transform duration-300 group-hover:translate-y-0.5"
|
|
@@ -7812,7 +7839,7 @@ var UploadButton = ({
|
|
|
7812
7839
|
onClick,
|
|
7813
7840
|
testid = "button-upload",
|
|
7814
7841
|
...props
|
|
7815
|
-
}) => /* @__PURE__ */ (0,
|
|
7842
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
7816
7843
|
ButtonBase,
|
|
7817
7844
|
{
|
|
7818
7845
|
variant: "outline",
|
|
@@ -7827,8 +7854,8 @@ var UploadButton = ({
|
|
|
7827
7854
|
"disabled:hover:scale-100"
|
|
7828
7855
|
),
|
|
7829
7856
|
...props,
|
|
7830
|
-
children: /* @__PURE__ */ (0,
|
|
7831
|
-
|
|
7857
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
7858
|
+
import_react31.UploadSimpleIcon,
|
|
7832
7859
|
{
|
|
7833
7860
|
size: 18,
|
|
7834
7861
|
className: "transition-transform duration-300 group-hover:-translate-y-0.5"
|
|
@@ -7841,7 +7868,7 @@ var CopyButton = ({
|
|
|
7841
7868
|
onClick,
|
|
7842
7869
|
testid = "button-copy",
|
|
7843
7870
|
...props
|
|
7844
|
-
}) => /* @__PURE__ */ (0,
|
|
7871
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
7845
7872
|
ButtonBase,
|
|
7846
7873
|
{
|
|
7847
7874
|
variant: "ghost",
|
|
@@ -7856,8 +7883,8 @@ var CopyButton = ({
|
|
|
7856
7883
|
"disabled:hover:scale-100"
|
|
7857
7884
|
),
|
|
7858
7885
|
...props,
|
|
7859
|
-
children: /* @__PURE__ */ (0,
|
|
7860
|
-
|
|
7886
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
7887
|
+
import_react31.CopyIcon,
|
|
7861
7888
|
{
|
|
7862
7889
|
size: 18,
|
|
7863
7890
|
className: "transition-transform duration-200 group-hover:scale-110"
|
|
@@ -7870,7 +7897,7 @@ var RefreshButton = ({
|
|
|
7870
7897
|
onClick,
|
|
7871
7898
|
testid = "button-refresh",
|
|
7872
7899
|
...props
|
|
7873
|
-
}) => /* @__PURE__ */ (0,
|
|
7900
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
7874
7901
|
ButtonBase,
|
|
7875
7902
|
{
|
|
7876
7903
|
variant: "ghost",
|
|
@@ -7885,8 +7912,8 @@ var RefreshButton = ({
|
|
|
7885
7912
|
"disabled:hover:scale-100"
|
|
7886
7913
|
),
|
|
7887
7914
|
...props,
|
|
7888
|
-
children: /* @__PURE__ */ (0,
|
|
7889
|
-
|
|
7915
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
7916
|
+
import_react31.ArrowClockwiseIcon,
|
|
7890
7917
|
{
|
|
7891
7918
|
size: 18,
|
|
7892
7919
|
className: "transition-transform duration-500 group-hover:rotate-180"
|
|
@@ -7899,7 +7926,7 @@ var SearchButton = ({
|
|
|
7899
7926
|
onClick,
|
|
7900
7927
|
testid = "button-search",
|
|
7901
7928
|
...props
|
|
7902
|
-
}) => /* @__PURE__ */ (0,
|
|
7929
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
7903
7930
|
ButtonBase,
|
|
7904
7931
|
{
|
|
7905
7932
|
variant: "outline",
|
|
@@ -7914,8 +7941,8 @@ var SearchButton = ({
|
|
|
7914
7941
|
"disabled:hover:scale-100"
|
|
7915
7942
|
),
|
|
7916
7943
|
...props,
|
|
7917
|
-
children: /* @__PURE__ */ (0,
|
|
7918
|
-
|
|
7944
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
7945
|
+
import_react31.MagnifyingGlassIcon,
|
|
7919
7946
|
{
|
|
7920
7947
|
size: 18,
|
|
7921
7948
|
className: "transition-transform duration-200 group-hover:scale-110 group-hover:-rotate-12"
|
|
@@ -7928,7 +7955,7 @@ var BackButton = ({
|
|
|
7928
7955
|
onClick,
|
|
7929
7956
|
testid = "button-back",
|
|
7930
7957
|
...props
|
|
7931
|
-
}) => /* @__PURE__ */ (0,
|
|
7958
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
7932
7959
|
ButtonBase,
|
|
7933
7960
|
{
|
|
7934
7961
|
variant: "ghost",
|
|
@@ -7943,8 +7970,8 @@ var BackButton = ({
|
|
|
7943
7970
|
"disabled:hover:scale-100"
|
|
7944
7971
|
),
|
|
7945
7972
|
...props,
|
|
7946
|
-
children: /* @__PURE__ */ (0,
|
|
7947
|
-
|
|
7973
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
7974
|
+
import_react31.ArrowLeftIcon,
|
|
7948
7975
|
{
|
|
7949
7976
|
size: 18,
|
|
7950
7977
|
className: "transition-transform duration-300 group-hover:-translate-x-1"
|
|
@@ -7957,7 +7984,7 @@ var SettingsButton = ({
|
|
|
7957
7984
|
onClick,
|
|
7958
7985
|
testid = "button-settings",
|
|
7959
7986
|
...props
|
|
7960
|
-
}) => /* @__PURE__ */ (0,
|
|
7987
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
7961
7988
|
ButtonBase,
|
|
7962
7989
|
{
|
|
7963
7990
|
variant: "ghost",
|
|
@@ -7972,8 +7999,8 @@ var SettingsButton = ({
|
|
|
7972
7999
|
"disabled:hover:scale-100"
|
|
7973
8000
|
),
|
|
7974
8001
|
...props,
|
|
7975
|
-
children: /* @__PURE__ */ (0,
|
|
7976
|
-
|
|
8002
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
8003
|
+
import_react31.GearIcon,
|
|
7977
8004
|
{
|
|
7978
8005
|
size: 18,
|
|
7979
8006
|
className: "transition-transform duration-500 group-hover:rotate-90"
|
|
@@ -7986,7 +8013,7 @@ var NotificationButton = ({
|
|
|
7986
8013
|
onClick,
|
|
7987
8014
|
testid = "button-notification",
|
|
7988
8015
|
...props
|
|
7989
|
-
}) => /* @__PURE__ */ (0,
|
|
8016
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
7990
8017
|
ButtonBase,
|
|
7991
8018
|
{
|
|
7992
8019
|
variant: "ghost",
|
|
@@ -8001,8 +8028,8 @@ var NotificationButton = ({
|
|
|
8001
8028
|
"disabled:hover:scale-100"
|
|
8002
8029
|
),
|
|
8003
8030
|
...props,
|
|
8004
|
-
children: /* @__PURE__ */ (0,
|
|
8005
|
-
|
|
8031
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
8032
|
+
import_react31.BellIcon,
|
|
8006
8033
|
{
|
|
8007
8034
|
size: 18,
|
|
8008
8035
|
className: "transition-transform duration-300 group-hover:scale-110 group-hover:-rotate-12"
|
|
@@ -8015,7 +8042,7 @@ var MoreButton = ({
|
|
|
8015
8042
|
onClick,
|
|
8016
8043
|
testid = "button-more",
|
|
8017
8044
|
...props
|
|
8018
|
-
}) => /* @__PURE__ */ (0,
|
|
8045
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
8019
8046
|
ButtonBase,
|
|
8020
8047
|
{
|
|
8021
8048
|
variant: "ghost",
|
|
@@ -8030,8 +8057,8 @@ var MoreButton = ({
|
|
|
8030
8057
|
"disabled:hover:scale-100"
|
|
8031
8058
|
),
|
|
8032
8059
|
...props,
|
|
8033
|
-
children: /* @__PURE__ */ (0,
|
|
8034
|
-
|
|
8060
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
8061
|
+
import_react31.DotsThreeIcon,
|
|
8035
8062
|
{
|
|
8036
8063
|
size: 18,
|
|
8037
8064
|
className: "transition-transform duration-200 group-hover:scale-110"
|
|
@@ -8044,7 +8071,7 @@ var CheckButton = ({
|
|
|
8044
8071
|
onClick,
|
|
8045
8072
|
testid = "button-check",
|
|
8046
8073
|
...props
|
|
8047
|
-
}) => /* @__PURE__ */ (0,
|
|
8074
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
8048
8075
|
ButtonBase,
|
|
8049
8076
|
{
|
|
8050
8077
|
variant: "default",
|
|
@@ -8059,8 +8086,8 @@ var CheckButton = ({
|
|
|
8059
8086
|
"disabled:hover:scale-100"
|
|
8060
8087
|
),
|
|
8061
8088
|
...props,
|
|
8062
|
-
children: /* @__PURE__ */ (0,
|
|
8063
|
-
|
|
8089
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
8090
|
+
import_react31.CheckIcon,
|
|
8064
8091
|
{
|
|
8065
8092
|
size: 18,
|
|
8066
8093
|
className: "transition-transform duration-200 group-hover:scale-110"
|
|
@@ -8079,7 +8106,7 @@ var FilterButton = ({
|
|
|
8079
8106
|
variant,
|
|
8080
8107
|
size = "icon",
|
|
8081
8108
|
...props
|
|
8082
|
-
}) => /* @__PURE__ */ (0,
|
|
8109
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
8083
8110
|
ButtonBase,
|
|
8084
8111
|
{
|
|
8085
8112
|
variant: variant || (active ? "default" : "outline"),
|
|
@@ -8095,8 +8122,8 @@ var FilterButton = ({
|
|
|
8095
8122
|
className
|
|
8096
8123
|
),
|
|
8097
8124
|
...props,
|
|
8098
|
-
children: /* @__PURE__ */ (0,
|
|
8099
|
-
|
|
8125
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
8126
|
+
import_react31.FunnelIcon,
|
|
8100
8127
|
{
|
|
8101
8128
|
size: iconSize,
|
|
8102
8129
|
color: iconColor,
|
|
@@ -8117,7 +8144,7 @@ var LikeButton = ({
|
|
|
8117
8144
|
variant = "ghost",
|
|
8118
8145
|
size = "icon",
|
|
8119
8146
|
...props
|
|
8120
|
-
}) => /* @__PURE__ */ (0,
|
|
8147
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
8121
8148
|
ButtonBase,
|
|
8122
8149
|
{
|
|
8123
8150
|
variant,
|
|
@@ -8134,8 +8161,8 @@ var LikeButton = ({
|
|
|
8134
8161
|
className
|
|
8135
8162
|
),
|
|
8136
8163
|
...props,
|
|
8137
|
-
children: /* @__PURE__ */ (0,
|
|
8138
|
-
|
|
8164
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
8165
|
+
import_react31.HeartIcon,
|
|
8139
8166
|
{
|
|
8140
8167
|
size: iconSize,
|
|
8141
8168
|
color: iconColor,
|
|
@@ -8156,7 +8183,7 @@ var FavoriteButton = ({
|
|
|
8156
8183
|
variant = "ghost",
|
|
8157
8184
|
size = "icon",
|
|
8158
8185
|
...props
|
|
8159
|
-
}) => /* @__PURE__ */ (0,
|
|
8186
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
8160
8187
|
ButtonBase,
|
|
8161
8188
|
{
|
|
8162
8189
|
variant,
|
|
@@ -8173,8 +8200,8 @@ var FavoriteButton = ({
|
|
|
8173
8200
|
className
|
|
8174
8201
|
),
|
|
8175
8202
|
...props,
|
|
8176
|
-
children: /* @__PURE__ */ (0,
|
|
8177
|
-
|
|
8203
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
8204
|
+
import_react31.StarIcon,
|
|
8178
8205
|
{
|
|
8179
8206
|
size: iconSize,
|
|
8180
8207
|
color: iconColor,
|
|
@@ -8195,7 +8222,7 @@ var VisibilityButton = ({
|
|
|
8195
8222
|
variant = "ghost",
|
|
8196
8223
|
size = "icon",
|
|
8197
8224
|
...props
|
|
8198
|
-
}) => /* @__PURE__ */ (0,
|
|
8225
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
8199
8226
|
ButtonBase,
|
|
8200
8227
|
{
|
|
8201
8228
|
variant,
|
|
@@ -8211,15 +8238,15 @@ var VisibilityButton = ({
|
|
|
8211
8238
|
className
|
|
8212
8239
|
),
|
|
8213
8240
|
...props,
|
|
8214
|
-
children: isVisible ? /* @__PURE__ */ (0,
|
|
8215
|
-
|
|
8241
|
+
children: isVisible ? /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
8242
|
+
import_react31.EyeIcon,
|
|
8216
8243
|
{
|
|
8217
8244
|
size: iconSize,
|
|
8218
8245
|
color: iconColor,
|
|
8219
8246
|
className: "transition-opacity duration-200"
|
|
8220
8247
|
}
|
|
8221
|
-
) : /* @__PURE__ */ (0,
|
|
8222
|
-
|
|
8248
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
8249
|
+
import_react31.EyeSlashIcon,
|
|
8223
8250
|
{
|
|
8224
8251
|
size: iconSize,
|
|
8225
8252
|
color: iconColor,
|
|
@@ -8228,8 +8255,8 @@ var VisibilityButton = ({
|
|
|
8228
8255
|
)
|
|
8229
8256
|
}
|
|
8230
8257
|
);
|
|
8231
|
-
var ViewButton = (props) => /* @__PURE__ */ (0,
|
|
8232
|
-
var HideButton = (props) => /* @__PURE__ */ (0,
|
|
8258
|
+
var ViewButton = (props) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(VisibilityButton, { isVisible: true, testid: "button-view", ...props });
|
|
8259
|
+
var HideButton = (props) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(VisibilityButton, { isVisible: false, testid: "button-hide", ...props });
|
|
8233
8260
|
var LockButton = ({
|
|
8234
8261
|
disabled,
|
|
8235
8262
|
onClick,
|
|
@@ -8241,7 +8268,7 @@ var LockButton = ({
|
|
|
8241
8268
|
variant = "ghost",
|
|
8242
8269
|
size = "icon",
|
|
8243
8270
|
...props
|
|
8244
|
-
}) => /* @__PURE__ */ (0,
|
|
8271
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
8245
8272
|
ButtonBase,
|
|
8246
8273
|
{
|
|
8247
8274
|
variant,
|
|
@@ -8258,15 +8285,15 @@ var LockButton = ({
|
|
|
8258
8285
|
className
|
|
8259
8286
|
),
|
|
8260
8287
|
...props,
|
|
8261
|
-
children: isLocked ? /* @__PURE__ */ (0,
|
|
8262
|
-
|
|
8288
|
+
children: isLocked ? /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
8289
|
+
import_react31.LockIcon,
|
|
8263
8290
|
{
|
|
8264
8291
|
size: iconSize,
|
|
8265
8292
|
color: iconColor,
|
|
8266
8293
|
className: "transition-all duration-200 group-hover:scale-110"
|
|
8267
8294
|
}
|
|
8268
|
-
) : /* @__PURE__ */ (0,
|
|
8269
|
-
|
|
8295
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
8296
|
+
import_react31.LockOpenIcon,
|
|
8270
8297
|
{
|
|
8271
8298
|
size: iconSize,
|
|
8272
8299
|
color: iconColor,
|
|
@@ -8275,14 +8302,14 @@ var LockButton = ({
|
|
|
8275
8302
|
)
|
|
8276
8303
|
}
|
|
8277
8304
|
);
|
|
8278
|
-
var UnlockButton = (props) => /* @__PURE__ */ (0,
|
|
8305
|
+
var UnlockButton = (props) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(LockButton, { isLocked: false, testid: "button-unlock", ...props });
|
|
8279
8306
|
|
|
8280
8307
|
// src/components/ui/form/SwitchBase.tsx
|
|
8281
|
-
var
|
|
8308
|
+
var React30 = __toESM(require("react"));
|
|
8282
8309
|
var SwitchPrimitives = __toESM(require("@radix-ui/react-switch"));
|
|
8283
|
-
var
|
|
8284
|
-
var SwitchBase =
|
|
8285
|
-
return /* @__PURE__ */ (0,
|
|
8310
|
+
var import_jsx_runtime49 = require("react/jsx-runtime");
|
|
8311
|
+
var SwitchBase = React30.forwardRef(({ className, testid: dataTestId = "switch-base", ...props }, ref) => {
|
|
8312
|
+
return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
|
|
8286
8313
|
SwitchPrimitives.Root,
|
|
8287
8314
|
{
|
|
8288
8315
|
...props,
|
|
@@ -8292,7 +8319,7 @@ var SwitchBase = React29.forwardRef(({ className, testid: dataTestId = "switch-b
|
|
|
8292
8319
|
className
|
|
8293
8320
|
),
|
|
8294
8321
|
"data-testid": dataTestId,
|
|
8295
|
-
children: /* @__PURE__ */ (0,
|
|
8322
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
|
|
8296
8323
|
SwitchPrimitives.Thumb,
|
|
8297
8324
|
{
|
|
8298
8325
|
className: cn(
|
|
@@ -8310,18 +8337,18 @@ var SwitchBase = React29.forwardRef(({ className, testid: dataTestId = "switch-b
|
|
|
8310
8337
|
SwitchBase.displayName = SwitchPrimitives.Root.displayName;
|
|
8311
8338
|
|
|
8312
8339
|
// src/components/ui/form/TextAreaBase.tsx
|
|
8313
|
-
var
|
|
8340
|
+
var React31 = __toESM(require("react"));
|
|
8314
8341
|
var import_framer_motion12 = require("framer-motion");
|
|
8315
|
-
var
|
|
8316
|
-
var
|
|
8317
|
-
var TextAreaBase =
|
|
8342
|
+
var import_react32 = require("@phosphor-icons/react");
|
|
8343
|
+
var import_jsx_runtime50 = require("react/jsx-runtime");
|
|
8344
|
+
var TextAreaBase = React31.forwardRef(
|
|
8318
8345
|
({ className, clearable = false, onClear, ...props }, ref) => {
|
|
8319
|
-
const [isFocused, setIsFocused] =
|
|
8320
|
-
const [hasContent, setHasContent] =
|
|
8346
|
+
const [isFocused, setIsFocused] = React31.useState(false);
|
|
8347
|
+
const [hasContent, setHasContent] = React31.useState(
|
|
8321
8348
|
!!props.value || !!props.defaultValue
|
|
8322
8349
|
);
|
|
8323
|
-
const [showConfirmTooltip, setShowConfirmTooltip] =
|
|
8324
|
-
const textareaRef =
|
|
8350
|
+
const [showConfirmTooltip, setShowConfirmTooltip] = React31.useState(false);
|
|
8351
|
+
const textareaRef = React31.useRef(null);
|
|
8325
8352
|
const handleFocus = (e) => {
|
|
8326
8353
|
setIsFocused(true);
|
|
8327
8354
|
props.onFocus?.(e);
|
|
@@ -8357,12 +8384,12 @@ var TextAreaBase = React30.forwardRef(
|
|
|
8357
8384
|
const handleCancelClear = () => {
|
|
8358
8385
|
setShowConfirmTooltip(false);
|
|
8359
8386
|
};
|
|
8360
|
-
|
|
8361
|
-
|
|
8387
|
+
React31.useImperativeHandle(ref, () => textareaRef.current);
|
|
8388
|
+
React31.useEffect(() => {
|
|
8362
8389
|
setHasContent(!!props.value || !!props.defaultValue);
|
|
8363
8390
|
}, [props.value, props.defaultValue]);
|
|
8364
|
-
return /* @__PURE__ */ (0,
|
|
8365
|
-
/* @__PURE__ */ (0,
|
|
8391
|
+
return /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "relative", children: [
|
|
8392
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
|
|
8366
8393
|
"textarea",
|
|
8367
8394
|
{
|
|
8368
8395
|
className: cn(
|
|
@@ -8385,13 +8412,13 @@ var TextAreaBase = React30.forwardRef(
|
|
|
8385
8412
|
...props
|
|
8386
8413
|
}
|
|
8387
8414
|
),
|
|
8388
|
-
clearable && hasContent && /* @__PURE__ */ (0,
|
|
8415
|
+
clearable && hasContent && /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(TooltipProviderBase, { children: /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(
|
|
8389
8416
|
TooltipBase,
|
|
8390
8417
|
{
|
|
8391
8418
|
open: showConfirmTooltip,
|
|
8392
8419
|
onOpenChange: setShowConfirmTooltip,
|
|
8393
8420
|
children: [
|
|
8394
|
-
/* @__PURE__ */ (0,
|
|
8421
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)(TooltipTriggerBase, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
|
|
8395
8422
|
import_framer_motion12.motion.button,
|
|
8396
8423
|
{
|
|
8397
8424
|
type: "button",
|
|
@@ -8409,18 +8436,18 @@ var TextAreaBase = React30.forwardRef(
|
|
|
8409
8436
|
),
|
|
8410
8437
|
disabled: props.disabled,
|
|
8411
8438
|
"aria-label": "Limpar texto",
|
|
8412
|
-
children: /* @__PURE__ */ (0,
|
|
8439
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_react32.TrashIcon, { size: 16, weight: "regular" })
|
|
8413
8440
|
}
|
|
8414
8441
|
) }),
|
|
8415
|
-
/* @__PURE__ */ (0,
|
|
8442
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(
|
|
8416
8443
|
TooltipContentBase,
|
|
8417
8444
|
{
|
|
8418
8445
|
side: "left",
|
|
8419
8446
|
className: "bg-background border border-border shadow-lg p-3 flex flex-col gap-2",
|
|
8420
8447
|
children: [
|
|
8421
|
-
/* @__PURE__ */ (0,
|
|
8422
|
-
/* @__PURE__ */ (0,
|
|
8423
|
-
/* @__PURE__ */ (0,
|
|
8448
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)("p", { className: "text-sm text-foreground font-medium mb-1", children: "Limpar todo o texto?" }),
|
|
8449
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "flex gap-2", children: [
|
|
8450
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
|
|
8424
8451
|
"button",
|
|
8425
8452
|
{
|
|
8426
8453
|
type: "button",
|
|
@@ -8434,7 +8461,7 @@ var TextAreaBase = React30.forwardRef(
|
|
|
8434
8461
|
children: "Confirmar"
|
|
8435
8462
|
}
|
|
8436
8463
|
),
|
|
8437
|
-
/* @__PURE__ */ (0,
|
|
8464
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
|
|
8438
8465
|
"button",
|
|
8439
8466
|
{
|
|
8440
8467
|
type: "button",
|
|
@@ -8455,17 +8482,17 @@ var TextAreaBase = React30.forwardRef(
|
|
|
8455
8482
|
]
|
|
8456
8483
|
}
|
|
8457
8484
|
) }),
|
|
8458
|
-
/* @__PURE__ */ (0,
|
|
8485
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
|
|
8459
8486
|
import_framer_motion12.motion.div,
|
|
8460
8487
|
{
|
|
8461
8488
|
className: "pointer-events-none absolute inset-0 rounded-lg",
|
|
8462
8489
|
initial: { opacity: 0 },
|
|
8463
8490
|
animate: { opacity: isFocused ? 1 : 0 },
|
|
8464
8491
|
transition: { duration: 0.3 },
|
|
8465
|
-
children: /* @__PURE__ */ (0,
|
|
8492
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "absolute inset-0 rounded-lg bg-gradient-to-r from-ring/20 via-ring/10 to-ring/20 blur-sm" })
|
|
8466
8493
|
}
|
|
8467
8494
|
),
|
|
8468
|
-
isFocused && hasContent && props.maxLength && /* @__PURE__ */ (0,
|
|
8495
|
+
isFocused && hasContent && props.maxLength && /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(
|
|
8469
8496
|
import_framer_motion12.motion.div,
|
|
8470
8497
|
{
|
|
8471
8498
|
initial: { opacity: 0, y: -10 },
|
|
@@ -8485,13 +8512,13 @@ var TextAreaBase = React30.forwardRef(
|
|
|
8485
8512
|
TextAreaBase.displayName = "TextAreaBase";
|
|
8486
8513
|
|
|
8487
8514
|
// src/components/ui/layout/CarouselBase.tsx
|
|
8488
|
-
var
|
|
8515
|
+
var React32 = __toESM(require("react"));
|
|
8489
8516
|
var import_embla_carousel_react = __toESM(require("embla-carousel-react"));
|
|
8490
|
-
var
|
|
8491
|
-
var
|
|
8492
|
-
var CarouselContext =
|
|
8517
|
+
var import_react33 = require("@phosphor-icons/react");
|
|
8518
|
+
var import_jsx_runtime51 = require("react/jsx-runtime");
|
|
8519
|
+
var CarouselContext = React32.createContext(null);
|
|
8493
8520
|
function useCarousel() {
|
|
8494
|
-
const context =
|
|
8521
|
+
const context = React32.useContext(CarouselContext);
|
|
8495
8522
|
if (!context) {
|
|
8496
8523
|
throw new Error("useCarousel must be used within a <CarouselBase />");
|
|
8497
8524
|
}
|
|
@@ -8513,20 +8540,20 @@ function CarouselBase({
|
|
|
8513
8540
|
},
|
|
8514
8541
|
plugins
|
|
8515
8542
|
);
|
|
8516
|
-
const [canScrollPrev, setCanScrollPrev] =
|
|
8517
|
-
const [canScrollNext, setCanScrollNext] =
|
|
8518
|
-
const onSelect =
|
|
8543
|
+
const [canScrollPrev, setCanScrollPrev] = React32.useState(false);
|
|
8544
|
+
const [canScrollNext, setCanScrollNext] = React32.useState(false);
|
|
8545
|
+
const onSelect = React32.useCallback((api2) => {
|
|
8519
8546
|
if (!api2) return;
|
|
8520
8547
|
setCanScrollPrev(api2.canScrollPrev());
|
|
8521
8548
|
setCanScrollNext(api2.canScrollNext());
|
|
8522
8549
|
}, []);
|
|
8523
|
-
const scrollPrev =
|
|
8550
|
+
const scrollPrev = React32.useCallback(() => {
|
|
8524
8551
|
api?.scrollPrev();
|
|
8525
8552
|
}, [api]);
|
|
8526
|
-
const scrollNext =
|
|
8553
|
+
const scrollNext = React32.useCallback(() => {
|
|
8527
8554
|
api?.scrollNext();
|
|
8528
8555
|
}, [api]);
|
|
8529
|
-
const handleKeyDown =
|
|
8556
|
+
const handleKeyDown = React32.useCallback(
|
|
8530
8557
|
(event) => {
|
|
8531
8558
|
if (event.key === "ArrowLeft") {
|
|
8532
8559
|
event.preventDefault();
|
|
@@ -8538,11 +8565,11 @@ function CarouselBase({
|
|
|
8538
8565
|
},
|
|
8539
8566
|
[scrollPrev, scrollNext]
|
|
8540
8567
|
);
|
|
8541
|
-
|
|
8568
|
+
React32.useEffect(() => {
|
|
8542
8569
|
if (!api || !setApi) return;
|
|
8543
8570
|
setApi(api);
|
|
8544
8571
|
}, [api, setApi]);
|
|
8545
|
-
|
|
8572
|
+
React32.useEffect(() => {
|
|
8546
8573
|
if (!api) return;
|
|
8547
8574
|
onSelect(api);
|
|
8548
8575
|
api.on("reInit", onSelect);
|
|
@@ -8551,7 +8578,7 @@ function CarouselBase({
|
|
|
8551
8578
|
api?.off("select", onSelect);
|
|
8552
8579
|
};
|
|
8553
8580
|
}, [api, onSelect]);
|
|
8554
|
-
return /* @__PURE__ */ (0,
|
|
8581
|
+
return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
|
|
8555
8582
|
CarouselContext.Provider,
|
|
8556
8583
|
{
|
|
8557
8584
|
value: {
|
|
@@ -8564,7 +8591,7 @@ function CarouselBase({
|
|
|
8564
8591
|
canScrollPrev,
|
|
8565
8592
|
canScrollNext
|
|
8566
8593
|
},
|
|
8567
|
-
children: /* @__PURE__ */ (0,
|
|
8594
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
|
|
8568
8595
|
"div",
|
|
8569
8596
|
{
|
|
8570
8597
|
onKeyDownCapture: handleKeyDown,
|
|
@@ -8584,13 +8611,13 @@ function CarouselContentBase({
|
|
|
8584
8611
|
...props
|
|
8585
8612
|
}) {
|
|
8586
8613
|
const { carouselRef, orientation } = useCarousel();
|
|
8587
|
-
return /* @__PURE__ */ (0,
|
|
8614
|
+
return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
|
|
8588
8615
|
"div",
|
|
8589
8616
|
{
|
|
8590
8617
|
ref: carouselRef,
|
|
8591
8618
|
className: "overflow-hidden",
|
|
8592
8619
|
"data-slot": "carousel-content",
|
|
8593
|
-
children: /* @__PURE__ */ (0,
|
|
8620
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
|
|
8594
8621
|
"div",
|
|
8595
8622
|
{
|
|
8596
8623
|
className: cn(
|
|
@@ -8609,7 +8636,7 @@ function CarouselItemBase({
|
|
|
8609
8636
|
...props
|
|
8610
8637
|
}) {
|
|
8611
8638
|
const { orientation } = useCarousel();
|
|
8612
|
-
return /* @__PURE__ */ (0,
|
|
8639
|
+
return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
|
|
8613
8640
|
"div",
|
|
8614
8641
|
{
|
|
8615
8642
|
role: "group",
|
|
@@ -8624,30 +8651,32 @@ function CarouselItemBase({
|
|
|
8624
8651
|
}
|
|
8625
8652
|
);
|
|
8626
8653
|
}
|
|
8627
|
-
function
|
|
8654
|
+
function CarouselPreviousBase({
|
|
8628
8655
|
className,
|
|
8629
8656
|
variant = "outline",
|
|
8630
8657
|
size = "icon",
|
|
8631
8658
|
...props
|
|
8632
8659
|
}) {
|
|
8633
8660
|
const { orientation, scrollPrev, canScrollPrev } = useCarousel();
|
|
8634
|
-
|
|
8661
|
+
const btnRef = React32.useRef(null);
|
|
8662
|
+
return /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(
|
|
8635
8663
|
ButtonBase,
|
|
8636
8664
|
{
|
|
8637
8665
|
"data-slot": "carousel-previous",
|
|
8638
8666
|
variant,
|
|
8639
8667
|
size,
|
|
8668
|
+
ref: btnRef,
|
|
8640
8669
|
className: cn(
|
|
8641
|
-
"absolute size-8 rounded-
|
|
8642
|
-
orientation === "horizontal" ? "top-
|
|
8670
|
+
"absolute size-8 rounded-l-3xl px-6",
|
|
8671
|
+
orientation === "horizontal" ? "top-2 right-1" : "bottom-64 left-1/3 rotate-90",
|
|
8643
8672
|
className
|
|
8644
8673
|
),
|
|
8645
8674
|
disabled: !canScrollPrev,
|
|
8646
8675
|
onClick: scrollPrev,
|
|
8647
8676
|
...props,
|
|
8648
8677
|
children: [
|
|
8649
|
-
/* @__PURE__ */ (0,
|
|
8650
|
-
/* @__PURE__ */ (0,
|
|
8678
|
+
/* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_react33.ArrowLeftIcon, {}),
|
|
8679
|
+
/* @__PURE__ */ (0, import_jsx_runtime51.jsx)("span", { className: "sr-only", children: "Previous slide" })
|
|
8651
8680
|
]
|
|
8652
8681
|
}
|
|
8653
8682
|
);
|
|
@@ -8659,37 +8688,39 @@ function CarouselNextBase({
|
|
|
8659
8688
|
...props
|
|
8660
8689
|
}) {
|
|
8661
8690
|
const { orientation, scrollNext, canScrollNext } = useCarousel();
|
|
8662
|
-
|
|
8691
|
+
const btnRef = React32.useRef(null);
|
|
8692
|
+
return /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(
|
|
8663
8693
|
ButtonBase,
|
|
8664
8694
|
{
|
|
8665
8695
|
"data-slot": "carousel-next",
|
|
8666
8696
|
variant,
|
|
8667
8697
|
size,
|
|
8698
|
+
ref: btnRef,
|
|
8668
8699
|
className: cn(
|
|
8669
|
-
"absolute size-8 rounded-
|
|
8670
|
-
orientation === "horizontal" ? "top-
|
|
8700
|
+
"absolute size-8 rounded-r-3xl px-6",
|
|
8701
|
+
orientation === "horizontal" ? "top-2" : "left-14 -translate-x-1/2 rotate-90",
|
|
8671
8702
|
className
|
|
8672
8703
|
),
|
|
8673
8704
|
disabled: !canScrollNext,
|
|
8674
8705
|
onClick: scrollNext,
|
|
8675
8706
|
...props,
|
|
8676
8707
|
children: [
|
|
8677
|
-
/* @__PURE__ */ (0,
|
|
8678
|
-
/* @__PURE__ */ (0,
|
|
8708
|
+
/* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_react33.ArrowRightIcon, {}),
|
|
8709
|
+
/* @__PURE__ */ (0, import_jsx_runtime51.jsx)("span", { className: "sr-only", children: "Next slide" })
|
|
8679
8710
|
]
|
|
8680
8711
|
}
|
|
8681
8712
|
);
|
|
8682
8713
|
}
|
|
8683
8714
|
|
|
8684
8715
|
// src/components/ui/layout/SeparatorBase.tsx
|
|
8685
|
-
var
|
|
8716
|
+
var React33 = __toESM(require("react"));
|
|
8686
8717
|
var SeparatorPrimitive = __toESM(require("@radix-ui/react-separator"));
|
|
8687
8718
|
var import_framer_motion13 = require("framer-motion");
|
|
8688
|
-
var
|
|
8689
|
-
var SeparatorBase =
|
|
8719
|
+
var import_jsx_runtime52 = require("react/jsx-runtime");
|
|
8720
|
+
var SeparatorBase = React33.forwardRef(
|
|
8690
8721
|
({ className, orientation = "horizontal", decorative = true, ...props }, ref) => {
|
|
8691
8722
|
const isHorizontal = orientation === "horizontal";
|
|
8692
|
-
return /* @__PURE__ */ (0,
|
|
8723
|
+
return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
|
|
8693
8724
|
SeparatorPrimitive.Root,
|
|
8694
8725
|
{
|
|
8695
8726
|
ref,
|
|
@@ -8697,7 +8728,7 @@ var SeparatorBase = React32.forwardRef(
|
|
|
8697
8728
|
orientation,
|
|
8698
8729
|
asChild: true,
|
|
8699
8730
|
...props,
|
|
8700
|
-
children: /* @__PURE__ */ (0,
|
|
8731
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
|
|
8701
8732
|
import_framer_motion13.motion.div,
|
|
8702
8733
|
{
|
|
8703
8734
|
className: cn(
|
|
@@ -8720,9 +8751,9 @@ var SeparatorBase = React32.forwardRef(
|
|
|
8720
8751
|
SeparatorBase.displayName = SeparatorPrimitive.Root.displayName;
|
|
8721
8752
|
|
|
8722
8753
|
// src/components/ui/layout/TableBase.tsx
|
|
8723
|
-
var
|
|
8724
|
-
var
|
|
8725
|
-
var TableBase =
|
|
8754
|
+
var React34 = __toESM(require("react"));
|
|
8755
|
+
var import_jsx_runtime53 = require("react/jsx-runtime");
|
|
8756
|
+
var TableBase = React34.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("div", { className: "relative w-full overflow-auto", children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
|
|
8726
8757
|
"table",
|
|
8727
8758
|
{
|
|
8728
8759
|
ref,
|
|
@@ -8731,9 +8762,9 @@ var TableBase = React33.forwardRef(({ className, ...props }, ref) => /* @__PURE_
|
|
|
8731
8762
|
}
|
|
8732
8763
|
) }));
|
|
8733
8764
|
TableBase.displayName = "TableBase";
|
|
8734
|
-
var TableHeaderBase =
|
|
8765
|
+
var TableHeaderBase = React34.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("thead", { ref, className: cn("[&_tr]:border-b", className), ...props }));
|
|
8735
8766
|
TableHeaderBase.displayName = "TableHeaderBase";
|
|
8736
|
-
var TableBodyBase =
|
|
8767
|
+
var TableBodyBase = React34.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
|
|
8737
8768
|
"tbody",
|
|
8738
8769
|
{
|
|
8739
8770
|
ref,
|
|
@@ -8742,7 +8773,7 @@ var TableBodyBase = React33.forwardRef(({ className, ...props }, ref) => /* @__P
|
|
|
8742
8773
|
}
|
|
8743
8774
|
));
|
|
8744
8775
|
TableBodyBase.displayName = "TableBodyBase";
|
|
8745
|
-
var TableFooterBase =
|
|
8776
|
+
var TableFooterBase = React34.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
|
|
8746
8777
|
"tfoot",
|
|
8747
8778
|
{
|
|
8748
8779
|
ref,
|
|
@@ -8754,7 +8785,7 @@ var TableFooterBase = React33.forwardRef(({ className, ...props }, ref) => /* @_
|
|
|
8754
8785
|
}
|
|
8755
8786
|
));
|
|
8756
8787
|
TableFooterBase.displayName = "TableFooterBase";
|
|
8757
|
-
var TableRowBase =
|
|
8788
|
+
var TableRowBase = React34.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
|
|
8758
8789
|
"tr",
|
|
8759
8790
|
{
|
|
8760
8791
|
ref,
|
|
@@ -8766,7 +8797,7 @@ var TableRowBase = React33.forwardRef(({ className, ...props }, ref) => /* @__PU
|
|
|
8766
8797
|
}
|
|
8767
8798
|
));
|
|
8768
8799
|
TableRowBase.displayName = "TableRowBase";
|
|
8769
|
-
var TableHeadBase =
|
|
8800
|
+
var TableHeadBase = React34.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
|
|
8770
8801
|
"th",
|
|
8771
8802
|
{
|
|
8772
8803
|
ref,
|
|
@@ -8778,7 +8809,7 @@ var TableHeadBase = React33.forwardRef(({ className, ...props }, ref) => /* @__P
|
|
|
8778
8809
|
}
|
|
8779
8810
|
));
|
|
8780
8811
|
TableHeadBase.displayName = "TableHeadBase";
|
|
8781
|
-
var TableCellBase =
|
|
8812
|
+
var TableCellBase = React34.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
|
|
8782
8813
|
"td",
|
|
8783
8814
|
{
|
|
8784
8815
|
ref,
|
|
@@ -8790,7 +8821,7 @@ var TableCellBase = React33.forwardRef(({ className, ...props }, ref) => /* @__P
|
|
|
8790
8821
|
}
|
|
8791
8822
|
));
|
|
8792
8823
|
TableCellBase.displayName = "TableCellBase";
|
|
8793
|
-
var TableCaptionBase =
|
|
8824
|
+
var TableCaptionBase = React34.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
|
|
8794
8825
|
"caption",
|
|
8795
8826
|
{
|
|
8796
8827
|
ref,
|
|
@@ -8801,11 +8832,11 @@ var TableCaptionBase = React33.forwardRef(({ className, ...props }, ref) => /* @
|
|
|
8801
8832
|
TableCaptionBase.displayName = "TableCaptionBase";
|
|
8802
8833
|
|
|
8803
8834
|
// src/components/ui/layout/TabsBase.tsx
|
|
8804
|
-
var
|
|
8835
|
+
var React35 = __toESM(require("react"));
|
|
8805
8836
|
var TabsPrimitive = __toESM(require("@radix-ui/react-tabs"));
|
|
8806
|
-
var
|
|
8837
|
+
var import_jsx_runtime54 = require("react/jsx-runtime");
|
|
8807
8838
|
var TabsBase = TabsPrimitive.Root;
|
|
8808
|
-
var TabsListBase =
|
|
8839
|
+
var TabsListBase = React35.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
|
|
8809
8840
|
TabsPrimitive.List,
|
|
8810
8841
|
{
|
|
8811
8842
|
ref,
|
|
@@ -8818,49 +8849,52 @@ var TabsListBase = React34.forwardRef(({ className, ...props }, ref) => /* @__PU
|
|
|
8818
8849
|
}
|
|
8819
8850
|
));
|
|
8820
8851
|
TabsListBase.displayName = TabsPrimitive.List.displayName;
|
|
8821
|
-
var TabsTriggerBase =
|
|
8822
|
-
|
|
8823
|
-
|
|
8824
|
-
|
|
8825
|
-
|
|
8826
|
-
|
|
8827
|
-
|
|
8828
|
-
|
|
8829
|
-
|
|
8830
|
-
|
|
8831
|
-
|
|
8832
|
-
|
|
8833
|
-
|
|
8834
|
-
|
|
8835
|
-
|
|
8836
|
-
className
|
|
8837
|
-
|
|
8838
|
-
|
|
8839
|
-
|
|
8840
|
-
)
|
|
8841
|
-
var TabsContentBase =
|
|
8842
|
-
|
|
8843
|
-
|
|
8844
|
-
|
|
8845
|
-
|
|
8846
|
-
|
|
8847
|
-
|
|
8848
|
-
|
|
8849
|
-
|
|
8850
|
-
|
|
8851
|
-
|
|
8852
|
-
|
|
8852
|
+
var TabsTriggerBase = React35.forwardRef(({ className, animation = "default", ...props }, ref) => {
|
|
8853
|
+
const base = cn(
|
|
8854
|
+
"relative inline-flex items-center justify-center whitespace-nowrap px-4 py-2 text-sm font-medium",
|
|
8855
|
+
"text-muted-foreground hover:text-foreground",
|
|
8856
|
+
"transition-colors duration-300 ease-in-out",
|
|
8857
|
+
"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
|
|
8858
|
+
"disabled:pointer-events-none disabled:opacity-50",
|
|
8859
|
+
"data-[state=active]:text-primary",
|
|
8860
|
+
className
|
|
8861
|
+
);
|
|
8862
|
+
const animationClasses = animation === "none" ? "" : animation === "scale" ? "transform transition-transform data-[state=active]:scale-105" : "after:absolute after:bottom-0 after:left-0 after:h-[2px] after:w-full after:scale-x-0 after:bg-primary after:origin-left after:transition-transform after:duration-500 after:ease-[cubic-bezier(0.34,1.56,0.64,1)] data-[state=active]:after:scale-x-100";
|
|
8863
|
+
return /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
|
|
8864
|
+
TabsPrimitive.Trigger,
|
|
8865
|
+
{
|
|
8866
|
+
ref,
|
|
8867
|
+
className: cn(base, animationClasses),
|
|
8868
|
+
...props
|
|
8869
|
+
}
|
|
8870
|
+
);
|
|
8871
|
+
});
|
|
8872
|
+
var TabsContentBase = React35.forwardRef(({ className, animation = "default", ...props }, ref) => {
|
|
8873
|
+
const animationClasses = animation === "none" ? "" : animation === "slide" ? "animate-in slide-in-from-left-2 duration-500 ease-in-out" : "animate-in fade-in-0 duration-500 ease-in-out";
|
|
8874
|
+
return /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
|
|
8875
|
+
TabsPrimitive.Content,
|
|
8876
|
+
{
|
|
8877
|
+
ref,
|
|
8878
|
+
className: cn(
|
|
8879
|
+
"mt-4 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
|
|
8880
|
+
animationClasses,
|
|
8881
|
+
className
|
|
8882
|
+
),
|
|
8883
|
+
...props
|
|
8884
|
+
}
|
|
8885
|
+
);
|
|
8886
|
+
});
|
|
8853
8887
|
TabsContentBase.displayName = TabsPrimitive.Content.displayName;
|
|
8854
8888
|
|
|
8855
8889
|
// src/components/ui/navigation/BreadcrumbBase.tsx
|
|
8856
8890
|
var import_react_slot4 = require("@radix-ui/react-slot");
|
|
8857
|
-
var
|
|
8858
|
-
var
|
|
8891
|
+
var import_react34 = require("@phosphor-icons/react");
|
|
8892
|
+
var import_jsx_runtime55 = require("react/jsx-runtime");
|
|
8859
8893
|
function BreadcrumbBase({ ...props }) {
|
|
8860
|
-
return /* @__PURE__ */ (0,
|
|
8894
|
+
return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("nav", { "aria-label": "breadcrumb", "data-slot": "breadcrumb", ...props });
|
|
8861
8895
|
}
|
|
8862
8896
|
function BreadcrumbListBase({ className, ...props }) {
|
|
8863
|
-
return /* @__PURE__ */ (0,
|
|
8897
|
+
return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
|
|
8864
8898
|
"ol",
|
|
8865
8899
|
{
|
|
8866
8900
|
"data-slot": "breadcrumb-list",
|
|
@@ -8873,7 +8907,7 @@ function BreadcrumbListBase({ className, ...props }) {
|
|
|
8873
8907
|
);
|
|
8874
8908
|
}
|
|
8875
8909
|
function BreadcrumbItemBase({ className, ...props }) {
|
|
8876
|
-
return /* @__PURE__ */ (0,
|
|
8910
|
+
return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
|
|
8877
8911
|
"li",
|
|
8878
8912
|
{
|
|
8879
8913
|
"data-slot": "breadcrumb-item",
|
|
@@ -8888,7 +8922,7 @@ function BreadcrumbLinkBase({
|
|
|
8888
8922
|
...props
|
|
8889
8923
|
}) {
|
|
8890
8924
|
const Comp = asChild ? import_react_slot4.Slot : "a";
|
|
8891
|
-
return /* @__PURE__ */ (0,
|
|
8925
|
+
return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
|
|
8892
8926
|
Comp,
|
|
8893
8927
|
{
|
|
8894
8928
|
"data-slot": "breadcrumb-link",
|
|
@@ -8898,7 +8932,7 @@ function BreadcrumbLinkBase({
|
|
|
8898
8932
|
);
|
|
8899
8933
|
}
|
|
8900
8934
|
function BreadcrumbPageBase({ className, ...props }) {
|
|
8901
|
-
return /* @__PURE__ */ (0,
|
|
8935
|
+
return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
|
|
8902
8936
|
"span",
|
|
8903
8937
|
{
|
|
8904
8938
|
"data-slot": "breadcrumb-page",
|
|
@@ -8915,7 +8949,7 @@ function BreadcrumbSeparatorBase({
|
|
|
8915
8949
|
className,
|
|
8916
8950
|
...props
|
|
8917
8951
|
}) {
|
|
8918
|
-
return /* @__PURE__ */ (0,
|
|
8952
|
+
return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
|
|
8919
8953
|
"li",
|
|
8920
8954
|
{
|
|
8921
8955
|
"data-slot": "breadcrumb-separator",
|
|
@@ -8923,7 +8957,7 @@ function BreadcrumbSeparatorBase({
|
|
|
8923
8957
|
"aria-hidden": "true",
|
|
8924
8958
|
className: cn("[&>svg]:size-3.5", className),
|
|
8925
8959
|
...props,
|
|
8926
|
-
children: children ?? /* @__PURE__ */ (0,
|
|
8960
|
+
children: children ?? /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_react34.CaretRightIcon, {})
|
|
8927
8961
|
}
|
|
8928
8962
|
);
|
|
8929
8963
|
}
|
|
@@ -8931,7 +8965,7 @@ function BreadcrumbEllipsisBase({
|
|
|
8931
8965
|
className,
|
|
8932
8966
|
...props
|
|
8933
8967
|
}) {
|
|
8934
|
-
return /* @__PURE__ */ (0,
|
|
8968
|
+
return /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)(
|
|
8935
8969
|
"span",
|
|
8936
8970
|
{
|
|
8937
8971
|
"data-slot": "breadcrumb-ellipsis",
|
|
@@ -8940,8 +8974,8 @@ function BreadcrumbEllipsisBase({
|
|
|
8940
8974
|
className: cn("flex size-9 items-center justify-center", className),
|
|
8941
8975
|
...props,
|
|
8942
8976
|
children: [
|
|
8943
|
-
/* @__PURE__ */ (0,
|
|
8944
|
-
/* @__PURE__ */ (0,
|
|
8977
|
+
/* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_react34.DotsThreeIcon, { className: "size-4" }),
|
|
8978
|
+
/* @__PURE__ */ (0, import_jsx_runtime55.jsx)("span", { className: "sr-only", children: "More" })
|
|
8945
8979
|
]
|
|
8946
8980
|
}
|
|
8947
8981
|
);
|
|
@@ -8949,15 +8983,15 @@ function BreadcrumbEllipsisBase({
|
|
|
8949
8983
|
|
|
8950
8984
|
// src/components/ui/navigation/NavigationMenuBase.tsx
|
|
8951
8985
|
var NavigationMenuPrimitive = __toESM(require("@radix-ui/react-navigation-menu"));
|
|
8952
|
-
var
|
|
8953
|
-
var
|
|
8986
|
+
var import_react35 = require("@phosphor-icons/react");
|
|
8987
|
+
var import_jsx_runtime56 = require("react/jsx-runtime");
|
|
8954
8988
|
function NavigationMenuBase({
|
|
8955
8989
|
className,
|
|
8956
8990
|
children,
|
|
8957
8991
|
viewport = true,
|
|
8958
8992
|
...props
|
|
8959
8993
|
}) {
|
|
8960
|
-
return /* @__PURE__ */ (0,
|
|
8994
|
+
return /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)(
|
|
8961
8995
|
NavigationMenuPrimitive.Root,
|
|
8962
8996
|
{
|
|
8963
8997
|
"data-slot": "navigation-menu",
|
|
@@ -8969,7 +9003,7 @@ function NavigationMenuBase({
|
|
|
8969
9003
|
...props,
|
|
8970
9004
|
children: [
|
|
8971
9005
|
children,
|
|
8972
|
-
viewport && /* @__PURE__ */ (0,
|
|
9006
|
+
viewport && /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(NavigationMenuViewportBase, {})
|
|
8973
9007
|
]
|
|
8974
9008
|
}
|
|
8975
9009
|
);
|
|
@@ -8978,7 +9012,7 @@ function NavigationMenuListBase({
|
|
|
8978
9012
|
className,
|
|
8979
9013
|
...props
|
|
8980
9014
|
}) {
|
|
8981
|
-
return /* @__PURE__ */ (0,
|
|
9015
|
+
return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
|
|
8982
9016
|
NavigationMenuPrimitive.List,
|
|
8983
9017
|
{
|
|
8984
9018
|
"data-slot": "navigation-menu-list",
|
|
@@ -8994,7 +9028,7 @@ function NavigationMenuItemBase({
|
|
|
8994
9028
|
className,
|
|
8995
9029
|
...props
|
|
8996
9030
|
}) {
|
|
8997
|
-
return /* @__PURE__ */ (0,
|
|
9031
|
+
return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
|
|
8998
9032
|
NavigationMenuPrimitive.Item,
|
|
8999
9033
|
{
|
|
9000
9034
|
"data-slot": "navigation-menu-item",
|
|
@@ -9008,7 +9042,7 @@ function NavigationMenuTriggerBase({
|
|
|
9008
9042
|
children,
|
|
9009
9043
|
...props
|
|
9010
9044
|
}) {
|
|
9011
|
-
return /* @__PURE__ */ (0,
|
|
9045
|
+
return /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)(
|
|
9012
9046
|
NavigationMenuPrimitive.Trigger,
|
|
9013
9047
|
{
|
|
9014
9048
|
"data-slot": "navigation-menu-trigger",
|
|
@@ -9016,8 +9050,8 @@ function NavigationMenuTriggerBase({
|
|
|
9016
9050
|
...props,
|
|
9017
9051
|
children: [
|
|
9018
9052
|
children,
|
|
9019
|
-
/* @__PURE__ */ (0,
|
|
9020
|
-
|
|
9053
|
+
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
|
|
9054
|
+
import_react35.CaretDownIcon,
|
|
9021
9055
|
{
|
|
9022
9056
|
className: "relative top-[1px] ml-1 size-3 transition duration-300 group-data-[state=open]:rotate-180",
|
|
9023
9057
|
"aria-hidden": "true"
|
|
@@ -9031,7 +9065,7 @@ function NavigationMenuContentBase({
|
|
|
9031
9065
|
className,
|
|
9032
9066
|
...props
|
|
9033
9067
|
}) {
|
|
9034
|
-
return /* @__PURE__ */ (0,
|
|
9068
|
+
return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
|
|
9035
9069
|
NavigationMenuPrimitive.Content,
|
|
9036
9070
|
{
|
|
9037
9071
|
"data-slot": "navigation-menu-content",
|
|
@@ -9048,7 +9082,7 @@ function NavigationMenuViewportBase({
|
|
|
9048
9082
|
className,
|
|
9049
9083
|
...props
|
|
9050
9084
|
}) {
|
|
9051
|
-
return /* @__PURE__ */ (0,
|
|
9085
|
+
return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: cn("absolute top-full left-0 isolate z-50 flex justify-center"), children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
|
|
9052
9086
|
NavigationMenuPrimitive.Viewport,
|
|
9053
9087
|
{
|
|
9054
9088
|
"data-slot": "navigation-menu-viewport",
|
|
@@ -9064,7 +9098,7 @@ function NavigationMenuLinkBase({
|
|
|
9064
9098
|
className,
|
|
9065
9099
|
...props
|
|
9066
9100
|
}) {
|
|
9067
|
-
return /* @__PURE__ */ (0,
|
|
9101
|
+
return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
|
|
9068
9102
|
NavigationMenuPrimitive.Link,
|
|
9069
9103
|
{
|
|
9070
9104
|
"data-slot": "navigation-menu-link",
|
|
@@ -9080,7 +9114,7 @@ function NavigationMenuIndicatorBase({
|
|
|
9080
9114
|
className,
|
|
9081
9115
|
...props
|
|
9082
9116
|
}) {
|
|
9083
|
-
return /* @__PURE__ */ (0,
|
|
9117
|
+
return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
|
|
9084
9118
|
NavigationMenuPrimitive.Indicator,
|
|
9085
9119
|
{
|
|
9086
9120
|
"data-slot": "navigation-menu-indicator",
|
|
@@ -9089,22 +9123,22 @@ function NavigationMenuIndicatorBase({
|
|
|
9089
9123
|
className
|
|
9090
9124
|
),
|
|
9091
9125
|
...props,
|
|
9092
|
-
children: /* @__PURE__ */ (0,
|
|
9126
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "bg-border relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm shadow-md" })
|
|
9093
9127
|
}
|
|
9094
9128
|
);
|
|
9095
9129
|
}
|
|
9096
9130
|
|
|
9097
9131
|
// src/components/ui/navigation/SidebarBase.tsx
|
|
9098
|
-
var
|
|
9132
|
+
var React38 = __toESM(require("react"));
|
|
9099
9133
|
var import_react_slot5 = require("@radix-ui/react-slot");
|
|
9100
9134
|
var import_class_variance_authority5 = require("class-variance-authority");
|
|
9101
9135
|
|
|
9102
9136
|
// src/hooks/use-mobile.tsx
|
|
9103
|
-
var
|
|
9137
|
+
var React36 = __toESM(require("react"));
|
|
9104
9138
|
var MOBILE_BREAKPOINT = 768;
|
|
9105
9139
|
function useIsMobile() {
|
|
9106
|
-
const [isMobile, setIsMobile] =
|
|
9107
|
-
|
|
9140
|
+
const [isMobile, setIsMobile] = React36.useState(void 0);
|
|
9141
|
+
React36.useEffect(() => {
|
|
9108
9142
|
const mql = window.matchMedia(`(max-width: ${MOBILE_BREAKPOINT - 1}px)`);
|
|
9109
9143
|
const onChange = () => {
|
|
9110
9144
|
setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);
|
|
@@ -9117,16 +9151,16 @@ function useIsMobile() {
|
|
|
9117
9151
|
}
|
|
9118
9152
|
|
|
9119
9153
|
// src/components/ui/overlays/SheetBase.tsx
|
|
9120
|
-
var
|
|
9154
|
+
var React37 = __toESM(require("react"));
|
|
9121
9155
|
var SheetPrimitive = __toESM(require("@radix-ui/react-dialog"));
|
|
9122
9156
|
var import_class_variance_authority4 = require("class-variance-authority");
|
|
9123
|
-
var
|
|
9124
|
-
var
|
|
9157
|
+
var import_react36 = require("@phosphor-icons/react");
|
|
9158
|
+
var import_jsx_runtime57 = require("react/jsx-runtime");
|
|
9125
9159
|
var SheetBase = SheetPrimitive.Root;
|
|
9126
9160
|
var SheetTriggerBase = SheetPrimitive.Trigger;
|
|
9127
9161
|
var SheetCloseBase = SheetPrimitive.Close;
|
|
9128
9162
|
var SheetPortalBase = SheetPrimitive.Portal;
|
|
9129
|
-
var SheetOverlayBase =
|
|
9163
|
+
var SheetOverlayBase = React37.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
|
|
9130
9164
|
SheetPrimitive.Overlay,
|
|
9131
9165
|
{
|
|
9132
9166
|
className: cn(
|
|
@@ -9154,18 +9188,18 @@ var sheetVariants = (0, import_class_variance_authority4.cva)(
|
|
|
9154
9188
|
}
|
|
9155
9189
|
}
|
|
9156
9190
|
);
|
|
9157
|
-
var SheetContentBase =
|
|
9158
|
-
/* @__PURE__ */ (0,
|
|
9159
|
-
/* @__PURE__ */ (0,
|
|
9191
|
+
var SheetContentBase = React37.forwardRef(({ side = "right", className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)(SheetPortalBase, { children: [
|
|
9192
|
+
/* @__PURE__ */ (0, import_jsx_runtime57.jsx)(SheetOverlayBase, {}),
|
|
9193
|
+
/* @__PURE__ */ (0, import_jsx_runtime57.jsxs)(
|
|
9160
9194
|
SheetPrimitive.Content,
|
|
9161
9195
|
{
|
|
9162
9196
|
ref,
|
|
9163
9197
|
className: cn(sheetVariants({ side }), className),
|
|
9164
9198
|
...props,
|
|
9165
9199
|
children: [
|
|
9166
|
-
/* @__PURE__ */ (0,
|
|
9167
|
-
/* @__PURE__ */ (0,
|
|
9168
|
-
/* @__PURE__ */ (0,
|
|
9200
|
+
/* @__PURE__ */ (0, import_jsx_runtime57.jsxs)(SheetPrimitive.Close, { className: "absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary", children: [
|
|
9201
|
+
/* @__PURE__ */ (0, import_jsx_runtime57.jsx)(import_react36.XIcon, { className: "h-4 w-4" }),
|
|
9202
|
+
/* @__PURE__ */ (0, import_jsx_runtime57.jsx)("span", { className: "sr-only", children: "Close" })
|
|
9169
9203
|
] }),
|
|
9170
9204
|
children
|
|
9171
9205
|
]
|
|
@@ -9176,7 +9210,7 @@ SheetContentBase.displayName = SheetPrimitive.Content.displayName;
|
|
|
9176
9210
|
var SheetHeaderBase = ({
|
|
9177
9211
|
className,
|
|
9178
9212
|
...props
|
|
9179
|
-
}) => /* @__PURE__ */ (0,
|
|
9213
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
|
|
9180
9214
|
"div",
|
|
9181
9215
|
{
|
|
9182
9216
|
className: cn(
|
|
@@ -9190,7 +9224,7 @@ SheetHeaderBase.displayName = "SheetHeaderBase";
|
|
|
9190
9224
|
var SheetFooterBase = ({
|
|
9191
9225
|
className,
|
|
9192
9226
|
...props
|
|
9193
|
-
}) => /* @__PURE__ */ (0,
|
|
9227
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
|
|
9194
9228
|
"div",
|
|
9195
9229
|
{
|
|
9196
9230
|
className: cn(
|
|
@@ -9201,7 +9235,7 @@ var SheetFooterBase = ({
|
|
|
9201
9235
|
}
|
|
9202
9236
|
);
|
|
9203
9237
|
SheetFooterBase.displayName = "SheetFooterBase";
|
|
9204
|
-
var SheetTitleBase =
|
|
9238
|
+
var SheetTitleBase = React37.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
|
|
9205
9239
|
SheetPrimitive.Title,
|
|
9206
9240
|
{
|
|
9207
9241
|
ref,
|
|
@@ -9210,7 +9244,7 @@ var SheetTitleBase = React36.forwardRef(({ className, ...props }, ref) => /* @__
|
|
|
9210
9244
|
}
|
|
9211
9245
|
));
|
|
9212
9246
|
SheetTitleBase.displayName = SheetPrimitive.Title.displayName;
|
|
9213
|
-
var SheetDescriptionBase =
|
|
9247
|
+
var SheetDescriptionBase = React37.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
|
|
9214
9248
|
SheetPrimitive.Description,
|
|
9215
9249
|
{
|
|
9216
9250
|
ref,
|
|
@@ -9221,17 +9255,17 @@ var SheetDescriptionBase = React36.forwardRef(({ className, ...props }, ref) =>
|
|
|
9221
9255
|
SheetDescriptionBase.displayName = SheetPrimitive.Description.displayName;
|
|
9222
9256
|
|
|
9223
9257
|
// src/components/ui/navigation/SidebarBase.tsx
|
|
9224
|
-
var
|
|
9225
|
-
var
|
|
9258
|
+
var import_react37 = require("@phosphor-icons/react");
|
|
9259
|
+
var import_jsx_runtime58 = require("react/jsx-runtime");
|
|
9226
9260
|
var SIDEBAR_COOKIE_NAME = "sidebar:state";
|
|
9227
9261
|
var SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7;
|
|
9228
9262
|
var SIDEBAR_WIDTH = "16rem";
|
|
9229
9263
|
var SIDEBAR_WIDTH_MOBILE = "18rem";
|
|
9230
9264
|
var SIDEBAR_WIDTH_ICON = "3rem";
|
|
9231
9265
|
var SIDEBAR_KEYBOARD_SHORTCUT = "b";
|
|
9232
|
-
var SidebarContext =
|
|
9266
|
+
var SidebarContext = React38.createContext(null);
|
|
9233
9267
|
function UseSideBarBase() {
|
|
9234
|
-
const context =
|
|
9268
|
+
const context = React38.useContext(SidebarContext);
|
|
9235
9269
|
if (!context) {
|
|
9236
9270
|
throw new Error(
|
|
9237
9271
|
"UseSideBarBase must be used within a SidebarProviderBase."
|
|
@@ -9239,7 +9273,7 @@ function UseSideBarBase() {
|
|
|
9239
9273
|
}
|
|
9240
9274
|
return context;
|
|
9241
9275
|
}
|
|
9242
|
-
var SidebarProviderBase =
|
|
9276
|
+
var SidebarProviderBase = React38.forwardRef(
|
|
9243
9277
|
({
|
|
9244
9278
|
defaultOpen = true,
|
|
9245
9279
|
open: openProp,
|
|
@@ -9250,10 +9284,10 @@ var SidebarProviderBase = React37.forwardRef(
|
|
|
9250
9284
|
...props
|
|
9251
9285
|
}, ref) => {
|
|
9252
9286
|
const isMobile = useIsMobile();
|
|
9253
|
-
const [openMobile, setOpenMobile] =
|
|
9254
|
-
const [_open, _setOpen] =
|
|
9287
|
+
const [openMobile, setOpenMobile] = React38.useState(false);
|
|
9288
|
+
const [_open, _setOpen] = React38.useState(defaultOpen);
|
|
9255
9289
|
const open = openProp ?? _open;
|
|
9256
|
-
const setOpen =
|
|
9290
|
+
const setOpen = React38.useCallback(
|
|
9257
9291
|
(value) => {
|
|
9258
9292
|
const openState = typeof value === "function" ? value(open) : value;
|
|
9259
9293
|
if (setOpenProp) {
|
|
@@ -9265,10 +9299,10 @@ var SidebarProviderBase = React37.forwardRef(
|
|
|
9265
9299
|
},
|
|
9266
9300
|
[setOpenProp, open]
|
|
9267
9301
|
);
|
|
9268
|
-
const toggleSidebar =
|
|
9302
|
+
const toggleSidebar = React38.useCallback(() => {
|
|
9269
9303
|
return isMobile ? setOpenMobile((open2) => !open2) : setOpen((open2) => !open2);
|
|
9270
9304
|
}, [isMobile, setOpen, setOpenMobile]);
|
|
9271
|
-
|
|
9305
|
+
React38.useEffect(() => {
|
|
9272
9306
|
const handleKeyDown = (event) => {
|
|
9273
9307
|
if (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {
|
|
9274
9308
|
event.preventDefault();
|
|
@@ -9279,7 +9313,7 @@ var SidebarProviderBase = React37.forwardRef(
|
|
|
9279
9313
|
return () => window.removeEventListener("keydown", handleKeyDown);
|
|
9280
9314
|
}, [toggleSidebar]);
|
|
9281
9315
|
const state = open ? "expanded" : "collapsed";
|
|
9282
|
-
const contextValue =
|
|
9316
|
+
const contextValue = React38.useMemo(
|
|
9283
9317
|
() => ({
|
|
9284
9318
|
state,
|
|
9285
9319
|
open,
|
|
@@ -9291,7 +9325,7 @@ var SidebarProviderBase = React37.forwardRef(
|
|
|
9291
9325
|
}),
|
|
9292
9326
|
[state, open, setOpen, isMobile, openMobile, setOpenMobile, toggleSidebar]
|
|
9293
9327
|
);
|
|
9294
|
-
return /* @__PURE__ */ (0,
|
|
9328
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(SidebarContext.Provider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(TooltipProviderBase, { delayDuration: 0, children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
9295
9329
|
"div",
|
|
9296
9330
|
{
|
|
9297
9331
|
style: {
|
|
@@ -9311,7 +9345,7 @@ var SidebarProviderBase = React37.forwardRef(
|
|
|
9311
9345
|
}
|
|
9312
9346
|
);
|
|
9313
9347
|
SidebarProviderBase.displayName = "SidebarProviderBase";
|
|
9314
|
-
var SidebarBase =
|
|
9348
|
+
var SidebarBase = React38.forwardRef(
|
|
9315
9349
|
({
|
|
9316
9350
|
side = "left",
|
|
9317
9351
|
variant = "sidebar",
|
|
@@ -9322,7 +9356,7 @@ var SidebarBase = React37.forwardRef(
|
|
|
9322
9356
|
}, ref) => {
|
|
9323
9357
|
const { isMobile, state, openMobile, setOpenMobile } = UseSideBarBase();
|
|
9324
9358
|
if (collapsible === "none") {
|
|
9325
|
-
return /* @__PURE__ */ (0,
|
|
9359
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
9326
9360
|
"div",
|
|
9327
9361
|
{
|
|
9328
9362
|
className: cn(
|
|
@@ -9336,7 +9370,7 @@ var SidebarBase = React37.forwardRef(
|
|
|
9336
9370
|
);
|
|
9337
9371
|
}
|
|
9338
9372
|
if (isMobile) {
|
|
9339
|
-
return /* @__PURE__ */ (0,
|
|
9373
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(SheetBase, { open: openMobile, onOpenChange: setOpenMobile, ...props, children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
9340
9374
|
SheetContentBase,
|
|
9341
9375
|
{
|
|
9342
9376
|
"data-sidebar": "sidebar",
|
|
@@ -9346,11 +9380,11 @@ var SidebarBase = React37.forwardRef(
|
|
|
9346
9380
|
"--sidebar-width": SIDEBAR_WIDTH_MOBILE
|
|
9347
9381
|
},
|
|
9348
9382
|
side,
|
|
9349
|
-
children: /* @__PURE__ */ (0,
|
|
9383
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("div", { className: "flex h-full w-full flex-col", children })
|
|
9350
9384
|
}
|
|
9351
9385
|
) });
|
|
9352
9386
|
}
|
|
9353
|
-
return /* @__PURE__ */ (0,
|
|
9387
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)(
|
|
9354
9388
|
"div",
|
|
9355
9389
|
{
|
|
9356
9390
|
ref,
|
|
@@ -9360,7 +9394,7 @@ var SidebarBase = React37.forwardRef(
|
|
|
9360
9394
|
"data-variant": variant,
|
|
9361
9395
|
"data-side": side,
|
|
9362
9396
|
children: [
|
|
9363
|
-
/* @__PURE__ */ (0,
|
|
9397
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
9364
9398
|
"div",
|
|
9365
9399
|
{
|
|
9366
9400
|
className: cn(
|
|
@@ -9371,7 +9405,7 @@ var SidebarBase = React37.forwardRef(
|
|
|
9371
9405
|
)
|
|
9372
9406
|
}
|
|
9373
9407
|
),
|
|
9374
|
-
/* @__PURE__ */ (0,
|
|
9408
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
9375
9409
|
"div",
|
|
9376
9410
|
{
|
|
9377
9411
|
className: cn(
|
|
@@ -9382,7 +9416,7 @@ var SidebarBase = React37.forwardRef(
|
|
|
9382
9416
|
className
|
|
9383
9417
|
),
|
|
9384
9418
|
...props,
|
|
9385
|
-
children: /* @__PURE__ */ (0,
|
|
9419
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
9386
9420
|
"div",
|
|
9387
9421
|
{
|
|
9388
9422
|
"data-sidebar": "sidebar",
|
|
@@ -9398,9 +9432,9 @@ var SidebarBase = React37.forwardRef(
|
|
|
9398
9432
|
}
|
|
9399
9433
|
);
|
|
9400
9434
|
SidebarBase.displayName = "SidebarBase";
|
|
9401
|
-
var SidebarTriggerBase =
|
|
9435
|
+
var SidebarTriggerBase = React38.forwardRef(({ className, onClick, ...props }, ref) => {
|
|
9402
9436
|
const { toggleSidebar } = UseSideBarBase();
|
|
9403
|
-
return /* @__PURE__ */ (0,
|
|
9437
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)(
|
|
9404
9438
|
ButtonBase,
|
|
9405
9439
|
{
|
|
9406
9440
|
ref,
|
|
@@ -9414,16 +9448,16 @@ var SidebarTriggerBase = React37.forwardRef(({ className, onClick, ...props }, r
|
|
|
9414
9448
|
},
|
|
9415
9449
|
...props,
|
|
9416
9450
|
children: [
|
|
9417
|
-
/* @__PURE__ */ (0,
|
|
9418
|
-
/* @__PURE__ */ (0,
|
|
9451
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)("span", { className: "sr-only", children: "Toggle SidebarBase" }),
|
|
9452
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_react37.SidebarSimpleIcon, {})
|
|
9419
9453
|
]
|
|
9420
9454
|
}
|
|
9421
9455
|
) });
|
|
9422
9456
|
});
|
|
9423
9457
|
SidebarTriggerBase.displayName = "SidebarTriggerBase";
|
|
9424
|
-
var SidebarRailBase =
|
|
9458
|
+
var SidebarRailBase = React38.forwardRef(({ className, ...props }, ref) => {
|
|
9425
9459
|
const { toggleSidebar } = UseSideBarBase();
|
|
9426
|
-
return /* @__PURE__ */ (0,
|
|
9460
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
9427
9461
|
"button",
|
|
9428
9462
|
{
|
|
9429
9463
|
ref,
|
|
@@ -9446,8 +9480,8 @@ var SidebarRailBase = React37.forwardRef(({ className, ...props }, ref) => {
|
|
|
9446
9480
|
);
|
|
9447
9481
|
});
|
|
9448
9482
|
SidebarRailBase.displayName = "SidebarRailBase";
|
|
9449
|
-
var SidebarInsetBase =
|
|
9450
|
-
return /* @__PURE__ */ (0,
|
|
9483
|
+
var SidebarInsetBase = React38.forwardRef(({ className, ...props }, ref) => {
|
|
9484
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
9451
9485
|
"main",
|
|
9452
9486
|
{
|
|
9453
9487
|
ref,
|
|
@@ -9461,8 +9495,8 @@ var SidebarInsetBase = React37.forwardRef(({ className, ...props }, ref) => {
|
|
|
9461
9495
|
);
|
|
9462
9496
|
});
|
|
9463
9497
|
SidebarInsetBase.displayName = "SidebarInsetBase";
|
|
9464
|
-
var SidebarInputBase =
|
|
9465
|
-
return /* @__PURE__ */ (0,
|
|
9498
|
+
var SidebarInputBase = React38.forwardRef(({ className, ...props }, ref) => {
|
|
9499
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
9466
9500
|
InputBase,
|
|
9467
9501
|
{
|
|
9468
9502
|
ref,
|
|
@@ -9476,8 +9510,8 @@ var SidebarInputBase = React37.forwardRef(({ className, ...props }, ref) => {
|
|
|
9476
9510
|
);
|
|
9477
9511
|
});
|
|
9478
9512
|
SidebarInputBase.displayName = "SidebarInputBase";
|
|
9479
|
-
var SidebarHeaderBase =
|
|
9480
|
-
return /* @__PURE__ */ (0,
|
|
9513
|
+
var SidebarHeaderBase = React38.forwardRef(({ className, ...props }, ref) => {
|
|
9514
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
9481
9515
|
"div",
|
|
9482
9516
|
{
|
|
9483
9517
|
ref,
|
|
@@ -9488,8 +9522,8 @@ var SidebarHeaderBase = React37.forwardRef(({ className, ...props }, ref) => {
|
|
|
9488
9522
|
);
|
|
9489
9523
|
});
|
|
9490
9524
|
SidebarHeaderBase.displayName = "SidebarHeaderBase";
|
|
9491
|
-
var SidebarFooterBase =
|
|
9492
|
-
return /* @__PURE__ */ (0,
|
|
9525
|
+
var SidebarFooterBase = React38.forwardRef(({ className, ...props }, ref) => {
|
|
9526
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
9493
9527
|
"div",
|
|
9494
9528
|
{
|
|
9495
9529
|
ref,
|
|
@@ -9500,8 +9534,8 @@ var SidebarFooterBase = React37.forwardRef(({ className, ...props }, ref) => {
|
|
|
9500
9534
|
);
|
|
9501
9535
|
});
|
|
9502
9536
|
SidebarFooterBase.displayName = "SidebarFooterBase";
|
|
9503
|
-
var SidebarSeparatorBase =
|
|
9504
|
-
return /* @__PURE__ */ (0,
|
|
9537
|
+
var SidebarSeparatorBase = React38.forwardRef(({ className, ...props }, ref) => {
|
|
9538
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
9505
9539
|
SeparatorBase,
|
|
9506
9540
|
{
|
|
9507
9541
|
ref,
|
|
@@ -9512,8 +9546,8 @@ var SidebarSeparatorBase = React37.forwardRef(({ className, ...props }, ref) =>
|
|
|
9512
9546
|
);
|
|
9513
9547
|
});
|
|
9514
9548
|
SidebarSeparatorBase.displayName = "SidebarSeparatorBase";
|
|
9515
|
-
var SidebarContentBase =
|
|
9516
|
-
return /* @__PURE__ */ (0,
|
|
9549
|
+
var SidebarContentBase = React38.forwardRef(({ className, ...props }, ref) => {
|
|
9550
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
9517
9551
|
"div",
|
|
9518
9552
|
{
|
|
9519
9553
|
ref,
|
|
@@ -9527,8 +9561,8 @@ var SidebarContentBase = React37.forwardRef(({ className, ...props }, ref) => {
|
|
|
9527
9561
|
);
|
|
9528
9562
|
});
|
|
9529
9563
|
SidebarContentBase.displayName = "SidebarContentBase";
|
|
9530
|
-
var SidebarGroupBase =
|
|
9531
|
-
return /* @__PURE__ */ (0,
|
|
9564
|
+
var SidebarGroupBase = React38.forwardRef(({ className, ...props }, ref) => {
|
|
9565
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
9532
9566
|
"div",
|
|
9533
9567
|
{
|
|
9534
9568
|
ref,
|
|
@@ -9539,9 +9573,9 @@ var SidebarGroupBase = React37.forwardRef(({ className, ...props }, ref) => {
|
|
|
9539
9573
|
);
|
|
9540
9574
|
});
|
|
9541
9575
|
SidebarGroupBase.displayName = "SidebarGroupBase";
|
|
9542
|
-
var SidebarGroupLabelBase =
|
|
9576
|
+
var SidebarGroupLabelBase = React38.forwardRef(({ className, asChild = false, ...props }, ref) => {
|
|
9543
9577
|
const Comp = asChild ? import_react_slot5.Slot : "div";
|
|
9544
|
-
return /* @__PURE__ */ (0,
|
|
9578
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
9545
9579
|
Comp,
|
|
9546
9580
|
{
|
|
9547
9581
|
ref,
|
|
@@ -9556,9 +9590,9 @@ var SidebarGroupLabelBase = React37.forwardRef(({ className, asChild = false, ..
|
|
|
9556
9590
|
);
|
|
9557
9591
|
});
|
|
9558
9592
|
SidebarGroupLabelBase.displayName = "SidebarGroupLabelBase";
|
|
9559
|
-
var SidebarGroupActionBase =
|
|
9593
|
+
var SidebarGroupActionBase = React38.forwardRef(({ className, asChild = false, ...props }, ref) => {
|
|
9560
9594
|
const Comp = asChild ? import_react_slot5.Slot : "button";
|
|
9561
|
-
return /* @__PURE__ */ (0,
|
|
9595
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
9562
9596
|
Comp,
|
|
9563
9597
|
{
|
|
9564
9598
|
ref,
|
|
@@ -9575,7 +9609,7 @@ var SidebarGroupActionBase = React37.forwardRef(({ className, asChild = false, .
|
|
|
9575
9609
|
);
|
|
9576
9610
|
});
|
|
9577
9611
|
SidebarGroupActionBase.displayName = "SidebarGroupActionBase";
|
|
9578
|
-
var SidebarGroupContentBase =
|
|
9612
|
+
var SidebarGroupContentBase = React38.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
9579
9613
|
"div",
|
|
9580
9614
|
{
|
|
9581
9615
|
ref,
|
|
@@ -9585,7 +9619,7 @@ var SidebarGroupContentBase = React37.forwardRef(({ className, ...props }, ref)
|
|
|
9585
9619
|
}
|
|
9586
9620
|
));
|
|
9587
9621
|
SidebarGroupContentBase.displayName = "SidebarGroupContentBase";
|
|
9588
|
-
var SidebarMenuBase =
|
|
9622
|
+
var SidebarMenuBase = React38.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
9589
9623
|
"ul",
|
|
9590
9624
|
{
|
|
9591
9625
|
ref,
|
|
@@ -9595,7 +9629,7 @@ var SidebarMenuBase = React37.forwardRef(({ className, ...props }, ref) => /* @_
|
|
|
9595
9629
|
}
|
|
9596
9630
|
));
|
|
9597
9631
|
SidebarMenuBase.displayName = "SidebarMenuBase";
|
|
9598
|
-
var SidebarMenuItemBase =
|
|
9632
|
+
var SidebarMenuItemBase = React38.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
9599
9633
|
"li",
|
|
9600
9634
|
{
|
|
9601
9635
|
ref,
|
|
@@ -9625,7 +9659,7 @@ var sidebarMenuButtonVariants = (0, import_class_variance_authority5.cva)(
|
|
|
9625
9659
|
}
|
|
9626
9660
|
}
|
|
9627
9661
|
);
|
|
9628
|
-
var SidebarMenuButtonBase =
|
|
9662
|
+
var SidebarMenuButtonBase = React38.forwardRef(
|
|
9629
9663
|
({
|
|
9630
9664
|
asChild = false,
|
|
9631
9665
|
isActive = false,
|
|
@@ -9637,7 +9671,7 @@ var SidebarMenuButtonBase = React37.forwardRef(
|
|
|
9637
9671
|
}, ref) => {
|
|
9638
9672
|
const Comp = asChild ? import_react_slot5.Slot : "button";
|
|
9639
9673
|
const { isMobile, state } = UseSideBarBase();
|
|
9640
|
-
const button = /* @__PURE__ */ (0,
|
|
9674
|
+
const button = /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
9641
9675
|
Comp,
|
|
9642
9676
|
{
|
|
9643
9677
|
ref,
|
|
@@ -9656,9 +9690,9 @@ var SidebarMenuButtonBase = React37.forwardRef(
|
|
|
9656
9690
|
children: tooltip
|
|
9657
9691
|
};
|
|
9658
9692
|
}
|
|
9659
|
-
return /* @__PURE__ */ (0,
|
|
9660
|
-
/* @__PURE__ */ (0,
|
|
9661
|
-
/* @__PURE__ */ (0,
|
|
9693
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)(TooltipBase, { children: [
|
|
9694
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)(TooltipTriggerBase, { asChild: true, children: button }),
|
|
9695
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
9662
9696
|
TooltipContentBase,
|
|
9663
9697
|
{
|
|
9664
9698
|
side: "right",
|
|
@@ -9671,9 +9705,9 @@ var SidebarMenuButtonBase = React37.forwardRef(
|
|
|
9671
9705
|
}
|
|
9672
9706
|
);
|
|
9673
9707
|
SidebarMenuButtonBase.displayName = "SidebarMenuButtonBase";
|
|
9674
|
-
var SidebarMenuActionBase =
|
|
9708
|
+
var SidebarMenuActionBase = React38.forwardRef(({ className, asChild = false, showOnHover = false, ...props }, ref) => {
|
|
9675
9709
|
const Comp = asChild ? import_react_slot5.Slot : "button";
|
|
9676
|
-
return /* @__PURE__ */ (0,
|
|
9710
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
9677
9711
|
Comp,
|
|
9678
9712
|
{
|
|
9679
9713
|
ref,
|
|
@@ -9694,7 +9728,7 @@ var SidebarMenuActionBase = React37.forwardRef(({ className, asChild = false, sh
|
|
|
9694
9728
|
);
|
|
9695
9729
|
});
|
|
9696
9730
|
SidebarMenuActionBase.displayName = "SidebarMenuActionBase";
|
|
9697
|
-
var SidebarMenuBadgeBase =
|
|
9731
|
+
var SidebarMenuBadgeBase = React38.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
9698
9732
|
"div",
|
|
9699
9733
|
{
|
|
9700
9734
|
ref,
|
|
@@ -9712,11 +9746,11 @@ var SidebarMenuBadgeBase = React37.forwardRef(({ className, ...props }, ref) =>
|
|
|
9712
9746
|
}
|
|
9713
9747
|
));
|
|
9714
9748
|
SidebarMenuBadgeBase.displayName = "SidebarMenuBadgeBase";
|
|
9715
|
-
var SidebarMenuSkeletonBase =
|
|
9716
|
-
const width =
|
|
9749
|
+
var SidebarMenuSkeletonBase = React38.forwardRef(({ className, showIcon = false, ...props }, ref) => {
|
|
9750
|
+
const width = React38.useMemo(() => {
|
|
9717
9751
|
return `${Math.floor(Math.random() * 40) + 50}%`;
|
|
9718
9752
|
}, []);
|
|
9719
|
-
return /* @__PURE__ */ (0,
|
|
9753
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)(
|
|
9720
9754
|
"div",
|
|
9721
9755
|
{
|
|
9722
9756
|
ref,
|
|
@@ -9724,14 +9758,14 @@ var SidebarMenuSkeletonBase = React37.forwardRef(({ className, showIcon = false,
|
|
|
9724
9758
|
className: cn("flex h-8 items-center gap-2 rounded-md px-2", className),
|
|
9725
9759
|
...props,
|
|
9726
9760
|
children: [
|
|
9727
|
-
showIcon && /* @__PURE__ */ (0,
|
|
9761
|
+
showIcon && /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
9728
9762
|
SkeletonBase,
|
|
9729
9763
|
{
|
|
9730
9764
|
className: "size-4 rounded-md",
|
|
9731
9765
|
"data-sidebar": "menu-skeleton-icon"
|
|
9732
9766
|
}
|
|
9733
9767
|
),
|
|
9734
|
-
/* @__PURE__ */ (0,
|
|
9768
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
9735
9769
|
SkeletonBase,
|
|
9736
9770
|
{
|
|
9737
9771
|
className: "h-4 max-w-[--skeleton-width] flex-1",
|
|
@@ -9746,7 +9780,7 @@ var SidebarMenuSkeletonBase = React37.forwardRef(({ className, showIcon = false,
|
|
|
9746
9780
|
);
|
|
9747
9781
|
});
|
|
9748
9782
|
SidebarMenuSkeletonBase.displayName = "SidebarMenuSkeletonBase";
|
|
9749
|
-
var SidebarMenuSubBase =
|
|
9783
|
+
var SidebarMenuSubBase = React38.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
9750
9784
|
"ul",
|
|
9751
9785
|
{
|
|
9752
9786
|
ref,
|
|
@@ -9760,11 +9794,11 @@ var SidebarMenuSubBase = React37.forwardRef(({ className, ...props }, ref) => /*
|
|
|
9760
9794
|
}
|
|
9761
9795
|
));
|
|
9762
9796
|
SidebarMenuSubBase.displayName = "SidebarMenuSubBase";
|
|
9763
|
-
var SidebarMenuSubItemBase =
|
|
9797
|
+
var SidebarMenuSubItemBase = React38.forwardRef(({ ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("li", { ref, ...props }));
|
|
9764
9798
|
SidebarMenuSubItemBase.displayName = "SidebarMenuSubItemBase";
|
|
9765
|
-
var SidebarMenuSubButtonBase =
|
|
9799
|
+
var SidebarMenuSubButtonBase = React38.forwardRef(({ asChild = false, size = "md", isActive, className, ...props }, ref) => {
|
|
9766
9800
|
const Comp = asChild ? import_react_slot5.Slot : "a";
|
|
9767
|
-
return /* @__PURE__ */ (0,
|
|
9801
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
9768
9802
|
Comp,
|
|
9769
9803
|
{
|
|
9770
9804
|
ref,
|
|
@@ -9787,32 +9821,32 @@ SidebarMenuSubButtonBase.displayName = "SidebarMenuSubButtonBase";
|
|
|
9787
9821
|
|
|
9788
9822
|
// src/components/ui/overlays/DrawerBase.tsx
|
|
9789
9823
|
var import_vaul = require("vaul");
|
|
9790
|
-
var
|
|
9824
|
+
var import_jsx_runtime59 = require("react/jsx-runtime");
|
|
9791
9825
|
function DrawerBase({
|
|
9792
9826
|
...props
|
|
9793
9827
|
}) {
|
|
9794
|
-
return /* @__PURE__ */ (0,
|
|
9828
|
+
return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_vaul.Drawer.Root, { "data-slot": "drawer", ...props });
|
|
9795
9829
|
}
|
|
9796
9830
|
function DrawerTriggerBase({
|
|
9797
9831
|
...props
|
|
9798
9832
|
}) {
|
|
9799
|
-
return /* @__PURE__ */ (0,
|
|
9833
|
+
return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_vaul.Drawer.Trigger, { "data-slot": "drawer-trigger", ...props });
|
|
9800
9834
|
}
|
|
9801
9835
|
function DrawerPortalBase({
|
|
9802
9836
|
...props
|
|
9803
9837
|
}) {
|
|
9804
|
-
return /* @__PURE__ */ (0,
|
|
9838
|
+
return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_vaul.Drawer.Portal, { "data-slot": "drawer-portal", ...props });
|
|
9805
9839
|
}
|
|
9806
9840
|
function DrawerCloseBase({
|
|
9807
9841
|
...props
|
|
9808
9842
|
}) {
|
|
9809
|
-
return /* @__PURE__ */ (0,
|
|
9843
|
+
return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_vaul.Drawer.Close, { "data-slot": "drawer-close", ...props });
|
|
9810
9844
|
}
|
|
9811
9845
|
function DrawerOverlayBase({
|
|
9812
9846
|
className,
|
|
9813
9847
|
...props
|
|
9814
9848
|
}) {
|
|
9815
|
-
return /* @__PURE__ */ (0,
|
|
9849
|
+
return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
|
|
9816
9850
|
import_vaul.Drawer.Overlay,
|
|
9817
9851
|
{
|
|
9818
9852
|
"data-slot": "drawer-overlay",
|
|
@@ -9829,9 +9863,9 @@ function DrawerContentBase({
|
|
|
9829
9863
|
children,
|
|
9830
9864
|
...props
|
|
9831
9865
|
}) {
|
|
9832
|
-
return /* @__PURE__ */ (0,
|
|
9833
|
-
/* @__PURE__ */ (0,
|
|
9834
|
-
/* @__PURE__ */ (0,
|
|
9866
|
+
return /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(DrawerPortalBase, { children: [
|
|
9867
|
+
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)(DrawerOverlayBase, {}),
|
|
9868
|
+
/* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(
|
|
9835
9869
|
import_vaul.Drawer.Content,
|
|
9836
9870
|
{
|
|
9837
9871
|
"data-slot": "drawer-content",
|
|
@@ -9845,7 +9879,7 @@ function DrawerContentBase({
|
|
|
9845
9879
|
),
|
|
9846
9880
|
...props,
|
|
9847
9881
|
children: [
|
|
9848
|
-
/* @__PURE__ */ (0,
|
|
9882
|
+
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)("div", { className: "bg-muted mx-auto mt-4 hidden h-2 w-[100px] shrink-0 rounded-full group-data-[vaul-drawer-direction=bottom]/drawer-content:block" }),
|
|
9849
9883
|
children
|
|
9850
9884
|
]
|
|
9851
9885
|
}
|
|
@@ -9856,7 +9890,7 @@ function DrawerHeaderBase({
|
|
|
9856
9890
|
className,
|
|
9857
9891
|
...props
|
|
9858
9892
|
}) {
|
|
9859
|
-
return /* @__PURE__ */ (0,
|
|
9893
|
+
return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
|
|
9860
9894
|
"div",
|
|
9861
9895
|
{
|
|
9862
9896
|
"data-slot": "drawer-header",
|
|
@@ -9872,7 +9906,7 @@ function DrawerFooterBase({
|
|
|
9872
9906
|
className,
|
|
9873
9907
|
...props
|
|
9874
9908
|
}) {
|
|
9875
|
-
return /* @__PURE__ */ (0,
|
|
9909
|
+
return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
|
|
9876
9910
|
"div",
|
|
9877
9911
|
{
|
|
9878
9912
|
"data-slot": "drawer-footer",
|
|
@@ -9885,7 +9919,7 @@ function DrawerTitleBase({
|
|
|
9885
9919
|
className,
|
|
9886
9920
|
...props
|
|
9887
9921
|
}) {
|
|
9888
|
-
return /* @__PURE__ */ (0,
|
|
9922
|
+
return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
|
|
9889
9923
|
import_vaul.Drawer.Title,
|
|
9890
9924
|
{
|
|
9891
9925
|
"data-slot": "drawer-title",
|
|
@@ -9898,7 +9932,7 @@ function DrawerDescriptionBase({
|
|
|
9898
9932
|
className,
|
|
9899
9933
|
...props
|
|
9900
9934
|
}) {
|
|
9901
|
-
return /* @__PURE__ */ (0,
|
|
9935
|
+
return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
|
|
9902
9936
|
import_vaul.Drawer.Description,
|
|
9903
9937
|
{
|
|
9904
9938
|
"data-slot": "drawer-description",
|
|
@@ -9909,11 +9943,11 @@ function DrawerDescriptionBase({
|
|
|
9909
9943
|
}
|
|
9910
9944
|
|
|
9911
9945
|
// src/hooks/use-universal-tooltip.tsx
|
|
9912
|
-
var
|
|
9913
|
-
var
|
|
9914
|
-
var UniversalTooltipContext = (0,
|
|
9946
|
+
var import_react38 = require("react");
|
|
9947
|
+
var import_jsx_runtime60 = require("react/jsx-runtime");
|
|
9948
|
+
var UniversalTooltipContext = (0, import_react38.createContext)(null);
|
|
9915
9949
|
var useUniversalTooltip = () => {
|
|
9916
|
-
const context = (0,
|
|
9950
|
+
const context = (0, import_react38.useContext)(UniversalTooltipContext);
|
|
9917
9951
|
if (!context) {
|
|
9918
9952
|
throw new Error("useUniversalTooltip deve ser usado dentro de UniversalTooltipProvider");
|
|
9919
9953
|
}
|
|
@@ -9921,7 +9955,7 @@ var useUniversalTooltip = () => {
|
|
|
9921
9955
|
};
|
|
9922
9956
|
var useTooltip = () => {
|
|
9923
9957
|
const { addTooltip, removeTooltip, startDrag } = useUniversalTooltip();
|
|
9924
|
-
const createTooltip = (0,
|
|
9958
|
+
const createTooltip = (0, import_react38.useCallback)((element, content, options) => {
|
|
9925
9959
|
const rect = element.getBoundingClientRect();
|
|
9926
9960
|
let position;
|
|
9927
9961
|
switch (options?.position || "auto") {
|
|
@@ -9951,7 +9985,7 @@ var useTooltip = () => {
|
|
|
9951
9985
|
metadata: options?.metadata
|
|
9952
9986
|
});
|
|
9953
9987
|
}, [addTooltip]);
|
|
9954
|
-
const handleElementMouseDown = (0,
|
|
9988
|
+
const handleElementMouseDown = (0, import_react38.useCallback)((tooltipId, event) => {
|
|
9955
9989
|
const rect = event.target.getBoundingClientRect();
|
|
9956
9990
|
const offset = {
|
|
9957
9991
|
x: event.clientX - rect.left,
|
|
@@ -9968,7 +10002,7 @@ var useTooltip = () => {
|
|
|
9968
10002
|
|
|
9969
10003
|
// src/components/ui/UniversalTooltipRenderer.tsx
|
|
9970
10004
|
var import_ssr6 = require("@phosphor-icons/react/dist/ssr");
|
|
9971
|
-
var
|
|
10005
|
+
var import_jsx_runtime61 = require("react/jsx-runtime");
|
|
9972
10006
|
var UniversalTooltipRenderer = ({
|
|
9973
10007
|
className,
|
|
9974
10008
|
showCloseButton = true,
|
|
@@ -9985,8 +10019,8 @@ var UniversalTooltipRenderer = ({
|
|
|
9985
10019
|
clearAllTooltips
|
|
9986
10020
|
} = useUniversalTooltip();
|
|
9987
10021
|
const { removeTooltip, handleElementMouseDown } = useTooltip();
|
|
9988
|
-
return /* @__PURE__ */ (0,
|
|
9989
|
-
showCloseAllButton && tooltips.length > 1 && /* @__PURE__ */ (0,
|
|
10022
|
+
return /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)("div", { className: cn("fixed inset-0 pointer-events-none z-50", className), children: [
|
|
10023
|
+
showCloseAllButton && tooltips.length > 1 && /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { className: "fixed top-6 left-1/2 transform -translate-x-1/2 z-50 pointer-events-auto animate-in fade-in slide-in-from-top-2 duration-300", children: /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)(
|
|
9990
10024
|
"button",
|
|
9991
10025
|
{
|
|
9992
10026
|
onClick: clearAllTooltips,
|
|
@@ -10008,8 +10042,8 @@ var UniversalTooltipRenderer = ({
|
|
|
10008
10042
|
const endX = isHorizontal ? Math.max(guide.sourceTooltip.left + guide.sourceTooltip.width / 2, guide.targetTooltip.left + guide.targetTooltip.width / 2) : guide.targetTooltip.left + guide.targetTooltip.width / 2;
|
|
10009
10043
|
const startY = isHorizontal ? guide.sourceTooltip.top + guide.sourceTooltip.height / 2 : Math.min(guide.sourceTooltip.top + guide.sourceTooltip.height / 2, guide.targetTooltip.top + guide.targetTooltip.height / 2);
|
|
10010
10044
|
const endY = isHorizontal ? guide.targetTooltip.top + guide.targetTooltip.height / 2 : Math.max(guide.sourceTooltip.top + guide.sourceTooltip.height / 2, guide.targetTooltip.top + guide.targetTooltip.height / 2);
|
|
10011
|
-
return /* @__PURE__ */ (0,
|
|
10012
|
-
/* @__PURE__ */ (0,
|
|
10045
|
+
return /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)("div", { className: "pointer-events-none", children: [
|
|
10046
|
+
/* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
|
|
10013
10047
|
"div",
|
|
10014
10048
|
{
|
|
10015
10049
|
className: cn("fixed z-30", guideClassName),
|
|
@@ -10028,7 +10062,7 @@ var UniversalTooltipRenderer = ({
|
|
|
10028
10062
|
}
|
|
10029
10063
|
}
|
|
10030
10064
|
),
|
|
10031
|
-
/* @__PURE__ */ (0,
|
|
10065
|
+
/* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
|
|
10032
10066
|
"div",
|
|
10033
10067
|
{
|
|
10034
10068
|
className: "fixed z-31",
|
|
@@ -10044,7 +10078,7 @@ var UniversalTooltipRenderer = ({
|
|
|
10044
10078
|
}
|
|
10045
10079
|
}
|
|
10046
10080
|
),
|
|
10047
|
-
/* @__PURE__ */ (0,
|
|
10081
|
+
/* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
|
|
10048
10082
|
"div",
|
|
10049
10083
|
{
|
|
10050
10084
|
className: "fixed z-31",
|
|
@@ -10062,7 +10096,7 @@ var UniversalTooltipRenderer = ({
|
|
|
10062
10096
|
)
|
|
10063
10097
|
] }, index);
|
|
10064
10098
|
}),
|
|
10065
|
-
tooltips.map((tooltip) => /* @__PURE__ */ (0,
|
|
10099
|
+
tooltips.map((tooltip) => /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)(
|
|
10066
10100
|
"div",
|
|
10067
10101
|
{
|
|
10068
10102
|
className: cn(
|
|
@@ -10076,12 +10110,12 @@ var UniversalTooltipRenderer = ({
|
|
|
10076
10110
|
},
|
|
10077
10111
|
onMouseDown: (e) => handleElementMouseDown(tooltip.id, e),
|
|
10078
10112
|
children: [
|
|
10079
|
-
/* @__PURE__ */ (0,
|
|
10080
|
-
/* @__PURE__ */ (0,
|
|
10081
|
-
/* @__PURE__ */ (0,
|
|
10082
|
-
/* @__PURE__ */ (0,
|
|
10113
|
+
/* @__PURE__ */ (0, import_jsx_runtime61.jsxs)("div", { className: "flex items-center justify-between p-3 border-b bg-muted/20 rounded-t-lg", children: [
|
|
10114
|
+
/* @__PURE__ */ (0, import_jsx_runtime61.jsxs)("div", { className: "flex items-center gap-2", children: [
|
|
10115
|
+
/* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { className: "w-2 h-2 bg-primary rounded-full" }),
|
|
10116
|
+
/* @__PURE__ */ (0, import_jsx_runtime61.jsx)("span", { className: "text-sm font-medium text-muted-foreground", children: "Tooltip" })
|
|
10083
10117
|
] }),
|
|
10084
|
-
showCloseButton && /* @__PURE__ */ (0,
|
|
10118
|
+
showCloseButton && /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
|
|
10085
10119
|
"button",
|
|
10086
10120
|
{
|
|
10087
10121
|
onClick: (e) => {
|
|
@@ -10092,11 +10126,11 @@ var UniversalTooltipRenderer = ({
|
|
|
10092
10126
|
"text-muted-foreground hover:text-foreground transition-colors p-1 hover:bg-muted rounded",
|
|
10093
10127
|
closeButtonClassName
|
|
10094
10128
|
),
|
|
10095
|
-
children: /* @__PURE__ */ (0,
|
|
10129
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_ssr6.XIcon, { size: 16 })
|
|
10096
10130
|
}
|
|
10097
10131
|
)
|
|
10098
10132
|
] }),
|
|
10099
|
-
/* @__PURE__ */ (0,
|
|
10133
|
+
/* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { className: "p-4", children: tooltip.content })
|
|
10100
10134
|
]
|
|
10101
10135
|
},
|
|
10102
10136
|
tooltip.id
|
|
@@ -10108,39 +10142,39 @@ var UniversalTooltipRenderer = ({
|
|
|
10108
10142
|
var import_date_fns = require("date-fns");
|
|
10109
10143
|
|
|
10110
10144
|
// src/components/picker/calendar.tsx
|
|
10111
|
-
var
|
|
10145
|
+
var React40 = __toESM(require("react"));
|
|
10112
10146
|
var import_react_day_picker2 = require("react-day-picker");
|
|
10113
|
-
var
|
|
10147
|
+
var import_react39 = require("@phosphor-icons/react");
|
|
10114
10148
|
var import_framer_motion14 = require("framer-motion");
|
|
10115
|
-
var
|
|
10149
|
+
var import_jsx_runtime62 = require("react/jsx-runtime");
|
|
10116
10150
|
function CalendarBase2({
|
|
10117
10151
|
className,
|
|
10118
10152
|
classNames,
|
|
10119
10153
|
showOutsideDays = true,
|
|
10120
10154
|
...props
|
|
10121
10155
|
}) {
|
|
10122
|
-
const [month, setMonth] =
|
|
10156
|
+
const [month, setMonth] = React40.useState(
|
|
10123
10157
|
props.month || props.defaultMonth || /* @__PURE__ */ new Date()
|
|
10124
10158
|
);
|
|
10125
|
-
const [direction, setDirection] =
|
|
10159
|
+
const [direction, setDirection] = React40.useState(1);
|
|
10126
10160
|
const handleMonthChange = (newMonth) => {
|
|
10127
10161
|
const isNext = newMonth > month ? 1 : -1;
|
|
10128
10162
|
setDirection(isNext);
|
|
10129
10163
|
setMonth(newMonth);
|
|
10130
10164
|
props.onMonthChange?.(newMonth);
|
|
10131
10165
|
};
|
|
10132
|
-
return /* @__PURE__ */ (0,
|
|
10166
|
+
return /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
|
|
10133
10167
|
"div",
|
|
10134
10168
|
{
|
|
10135
10169
|
className: cn(
|
|
10136
10170
|
"rounded-md border bg-background p-2 sm:p-3 md:p-4 overflow-hidden flex flex-col",
|
|
10137
10171
|
className
|
|
10138
10172
|
),
|
|
10139
|
-
children: /* @__PURE__ */ (0,
|
|
10173
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { className: "relative flex-1 flex flex-col min-h-0", children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_framer_motion14.AnimatePresence, { initial: false, mode: "wait", custom: direction, children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
|
|
10140
10174
|
"div",
|
|
10141
10175
|
{
|
|
10142
10176
|
className: "w-full h-full flex flex-col",
|
|
10143
|
-
children: /* @__PURE__ */ (0,
|
|
10177
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
|
|
10144
10178
|
import_react_day_picker2.DayPicker,
|
|
10145
10179
|
{
|
|
10146
10180
|
showOutsideDays,
|
|
@@ -10184,8 +10218,8 @@ function CalendarBase2({
|
|
|
10184
10218
|
...classNames
|
|
10185
10219
|
},
|
|
10186
10220
|
components: {
|
|
10187
|
-
IconLeft: () => /* @__PURE__ */ (0,
|
|
10188
|
-
IconRight: () => /* @__PURE__ */ (0,
|
|
10221
|
+
IconLeft: () => /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_react39.CaretLeftIcon, { className: "h-4 w-4" }),
|
|
10222
|
+
IconRight: () => /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_react39.CaretRightIcon, { className: "h-4 w-4" })
|
|
10189
10223
|
},
|
|
10190
10224
|
...props
|
|
10191
10225
|
}
|
|
@@ -10200,15 +10234,15 @@ CalendarBase2.displayName = "CalendarBase";
|
|
|
10200
10234
|
|
|
10201
10235
|
// src/components/picker/DateTimePicker.tsx
|
|
10202
10236
|
var import_locale = require("date-fns/locale");
|
|
10203
|
-
var
|
|
10237
|
+
var import_react42 = require("react");
|
|
10204
10238
|
|
|
10205
10239
|
// src/components/picker/TimePicker.tsx
|
|
10206
10240
|
var import_framer_motion15 = require("framer-motion");
|
|
10207
|
-
var
|
|
10241
|
+
var React42 = __toESM(require("react"));
|
|
10208
10242
|
|
|
10209
10243
|
// src/components/picker/TimePickerInput.tsx
|
|
10210
|
-
var
|
|
10211
|
-
var
|
|
10244
|
+
var import_react40 = require("@phosphor-icons/react");
|
|
10245
|
+
var import_react41 = __toESM(require("react"));
|
|
10212
10246
|
|
|
10213
10247
|
// src/components/picker/utils/time-picker-utils.ts
|
|
10214
10248
|
function isValidHour(value) {
|
|
@@ -10350,8 +10384,8 @@ function display12HourValue(hours) {
|
|
|
10350
10384
|
}
|
|
10351
10385
|
|
|
10352
10386
|
// src/components/picker/TimePickerInput.tsx
|
|
10353
|
-
var
|
|
10354
|
-
var TimePickerInput =
|
|
10387
|
+
var import_jsx_runtime63 = require("react/jsx-runtime");
|
|
10388
|
+
var TimePickerInput = import_react41.default.forwardRef(
|
|
10355
10389
|
({
|
|
10356
10390
|
className,
|
|
10357
10391
|
type = "tel",
|
|
@@ -10370,10 +10404,10 @@ var TimePickerInput = import_react43.default.forwardRef(
|
|
|
10370
10404
|
label,
|
|
10371
10405
|
...props
|
|
10372
10406
|
}, ref) => {
|
|
10373
|
-
const [flag, setFlag] =
|
|
10374
|
-
const [prevIntKey, setPrevIntKey] =
|
|
10375
|
-
const [isFocused, setIsFocused] =
|
|
10376
|
-
|
|
10407
|
+
const [flag, setFlag] = import_react41.default.useState(false);
|
|
10408
|
+
const [prevIntKey, setPrevIntKey] = import_react41.default.useState("0");
|
|
10409
|
+
const [isFocused, setIsFocused] = import_react41.default.useState(false);
|
|
10410
|
+
import_react41.default.useEffect(() => {
|
|
10377
10411
|
if (flag) {
|
|
10378
10412
|
const timer = setTimeout(() => {
|
|
10379
10413
|
setFlag(false);
|
|
@@ -10381,7 +10415,7 @@ var TimePickerInput = import_react43.default.forwardRef(
|
|
|
10381
10415
|
return () => clearTimeout(timer);
|
|
10382
10416
|
}
|
|
10383
10417
|
}, [flag]);
|
|
10384
|
-
const calculatedValue =
|
|
10418
|
+
const calculatedValue = import_react41.default.useMemo(() => {
|
|
10385
10419
|
return getDateByType(date, picker);
|
|
10386
10420
|
}, [date, picker]);
|
|
10387
10421
|
const calculateNewValue = (key) => {
|
|
@@ -10437,8 +10471,8 @@ var TimePickerInput = import_react43.default.forwardRef(
|
|
|
10437
10471
|
const baseLabel = getPickerLabel();
|
|
10438
10472
|
return `${baseLabel}, valor atual: ${calculatedValue}.`;
|
|
10439
10473
|
};
|
|
10440
|
-
return /* @__PURE__ */ (0,
|
|
10441
|
-
getPickerLabel() && /* @__PURE__ */ (0,
|
|
10474
|
+
return /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)("div", { className: "relative group flex flex-col items-center", children: [
|
|
10475
|
+
getPickerLabel() && /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
|
|
10442
10476
|
"label",
|
|
10443
10477
|
{
|
|
10444
10478
|
htmlFor: id || picker,
|
|
@@ -10446,7 +10480,7 @@ var TimePickerInput = import_react43.default.forwardRef(
|
|
|
10446
10480
|
children: getPickerLabel()
|
|
10447
10481
|
}
|
|
10448
10482
|
),
|
|
10449
|
-
/* @__PURE__ */ (0,
|
|
10483
|
+
/* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(
|
|
10450
10484
|
"div",
|
|
10451
10485
|
{
|
|
10452
10486
|
className: cn(
|
|
@@ -10454,7 +10488,7 @@ var TimePickerInput = import_react43.default.forwardRef(
|
|
|
10454
10488
|
"transition-all duration-200"
|
|
10455
10489
|
),
|
|
10456
10490
|
children: [
|
|
10457
|
-
showArrows && /* @__PURE__ */ (0,
|
|
10491
|
+
showArrows && /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
|
|
10458
10492
|
"button",
|
|
10459
10493
|
{
|
|
10460
10494
|
type: "button",
|
|
@@ -10470,11 +10504,11 @@ var TimePickerInput = import_react43.default.forwardRef(
|
|
|
10470
10504
|
),
|
|
10471
10505
|
tabIndex: -1,
|
|
10472
10506
|
"aria-label": `Incrementar ${getPickerLabel().toLowerCase()}`,
|
|
10473
|
-
children: /* @__PURE__ */ (0,
|
|
10507
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_react40.CaretUpIcon, { size: 14, className: "sm:w-4 sm:h-4" })
|
|
10474
10508
|
}
|
|
10475
10509
|
),
|
|
10476
|
-
/* @__PURE__ */ (0,
|
|
10477
|
-
/* @__PURE__ */ (0,
|
|
10510
|
+
/* @__PURE__ */ (0, import_jsx_runtime63.jsxs)("div", { className: "relative", children: [
|
|
10511
|
+
/* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
|
|
10478
10512
|
"input",
|
|
10479
10513
|
{
|
|
10480
10514
|
ref,
|
|
@@ -10519,9 +10553,9 @@ var TimePickerInput = import_react43.default.forwardRef(
|
|
|
10519
10553
|
...props
|
|
10520
10554
|
}
|
|
10521
10555
|
),
|
|
10522
|
-
isFocused && /* @__PURE__ */ (0,
|
|
10556
|
+
isFocused && /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("div", { className: "absolute inset-0 rounded-lg ring-2 ring-primary/20 pointer-events-none animate-pulse" })
|
|
10523
10557
|
] }),
|
|
10524
|
-
showArrows && /* @__PURE__ */ (0,
|
|
10558
|
+
showArrows && /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
|
|
10525
10559
|
"button",
|
|
10526
10560
|
{
|
|
10527
10561
|
type: "button",
|
|
@@ -10537,7 +10571,7 @@ var TimePickerInput = import_react43.default.forwardRef(
|
|
|
10537
10571
|
),
|
|
10538
10572
|
tabIndex: -1,
|
|
10539
10573
|
"aria-label": `Decrementar ${getPickerLabel().toLowerCase()}`,
|
|
10540
|
-
children: /* @__PURE__ */ (0,
|
|
10574
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_react40.CaretDownIcon, { size: 14, className: "sm:w-4 sm:h-4" })
|
|
10541
10575
|
}
|
|
10542
10576
|
)
|
|
10543
10577
|
]
|
|
@@ -10549,16 +10583,16 @@ var TimePickerInput = import_react43.default.forwardRef(
|
|
|
10549
10583
|
TimePickerInput.displayName = "TimePickerInput";
|
|
10550
10584
|
|
|
10551
10585
|
// src/components/picker/TimePicker.tsx
|
|
10552
|
-
var
|
|
10586
|
+
var import_jsx_runtime64 = require("react/jsx-runtime");
|
|
10553
10587
|
function TimePicker({
|
|
10554
10588
|
date,
|
|
10555
10589
|
setDate,
|
|
10556
10590
|
hideSeconds,
|
|
10557
10591
|
enableButton
|
|
10558
10592
|
}) {
|
|
10559
|
-
const minuteRef =
|
|
10560
|
-
const hourRef =
|
|
10561
|
-
const secondRef =
|
|
10593
|
+
const minuteRef = React42.useRef(null);
|
|
10594
|
+
const hourRef = React42.useRef(null);
|
|
10595
|
+
const secondRef = React42.useRef(null);
|
|
10562
10596
|
const containerVariants = {
|
|
10563
10597
|
hidden: { opacity: 0, y: 10 },
|
|
10564
10598
|
visible: {
|
|
@@ -10574,7 +10608,7 @@ function TimePicker({
|
|
|
10574
10608
|
hidden: { opacity: 0, y: 10 },
|
|
10575
10609
|
visible: { opacity: 1, y: 0 }
|
|
10576
10610
|
};
|
|
10577
|
-
return /* @__PURE__ */ (0,
|
|
10611
|
+
return /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(
|
|
10578
10612
|
import_framer_motion15.motion.div,
|
|
10579
10613
|
{
|
|
10580
10614
|
variants: containerVariants,
|
|
@@ -10582,12 +10616,12 @@ function TimePicker({
|
|
|
10582
10616
|
animate: "visible",
|
|
10583
10617
|
className: "flex items-end justify-center gap-2 sm:gap-3 p-2 sm:p-3 md:p-4 rounded-lg bg-muted/20 border border-border/50 w-full max-w-full overflow-hidden",
|
|
10584
10618
|
children: [
|
|
10585
|
-
/* @__PURE__ */ (0,
|
|
10619
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
10586
10620
|
import_framer_motion15.motion.div,
|
|
10587
10621
|
{
|
|
10588
10622
|
variants: itemVariants2,
|
|
10589
10623
|
className: "grid gap-1 sm:gap-2 text-center flex-shrink-0 min-w-0",
|
|
10590
|
-
children: /* @__PURE__ */ (0,
|
|
10624
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
10591
10625
|
TimePickerInput,
|
|
10592
10626
|
{
|
|
10593
10627
|
picker: "hours",
|
|
@@ -10600,12 +10634,12 @@ function TimePicker({
|
|
|
10600
10634
|
)
|
|
10601
10635
|
}
|
|
10602
10636
|
),
|
|
10603
|
-
/* @__PURE__ */ (0,
|
|
10637
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
10604
10638
|
import_framer_motion15.motion.div,
|
|
10605
10639
|
{
|
|
10606
10640
|
variants: itemVariants2,
|
|
10607
10641
|
className: "grid gap-1 sm:gap-2 text-center flex-shrink-0 min-w-0",
|
|
10608
|
-
children: /* @__PURE__ */ (0,
|
|
10642
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
10609
10643
|
TimePickerInput,
|
|
10610
10644
|
{
|
|
10611
10645
|
picker: "minutes",
|
|
@@ -10619,7 +10653,7 @@ function TimePicker({
|
|
|
10619
10653
|
)
|
|
10620
10654
|
}
|
|
10621
10655
|
),
|
|
10622
|
-
/* @__PURE__ */ (0,
|
|
10656
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_framer_motion15.AnimatePresence, { children: !hideSeconds && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_jsx_runtime64.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
10623
10657
|
import_framer_motion15.motion.div,
|
|
10624
10658
|
{
|
|
10625
10659
|
variants: itemVariants2,
|
|
@@ -10627,7 +10661,7 @@ function TimePicker({
|
|
|
10627
10661
|
animate: "visible",
|
|
10628
10662
|
exit: "hidden",
|
|
10629
10663
|
className: "grid gap-1 sm:gap-2 text-center flex-shrink-0 min-w-0",
|
|
10630
|
-
children: /* @__PURE__ */ (0,
|
|
10664
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
10631
10665
|
TimePickerInput,
|
|
10632
10666
|
{
|
|
10633
10667
|
picker: "seconds",
|
|
@@ -10646,8 +10680,8 @@ function TimePicker({
|
|
|
10646
10680
|
}
|
|
10647
10681
|
|
|
10648
10682
|
// src/components/picker/DateTimePicker.tsx
|
|
10649
|
-
var
|
|
10650
|
-
var
|
|
10683
|
+
var import_react43 = require("@phosphor-icons/react");
|
|
10684
|
+
var import_jsx_runtime65 = require("react/jsx-runtime");
|
|
10651
10685
|
function DateTimePicker({
|
|
10652
10686
|
label,
|
|
10653
10687
|
date,
|
|
@@ -10661,9 +10695,9 @@ function DateTimePicker({
|
|
|
10661
10695
|
className,
|
|
10662
10696
|
error
|
|
10663
10697
|
}) {
|
|
10664
|
-
const [internalDate, setInternalDate] = (0,
|
|
10665
|
-
const [open, setOpen] = (0,
|
|
10666
|
-
const [timePickerOpen, setTimePickerOpen] = (0,
|
|
10698
|
+
const [internalDate, setInternalDate] = (0, import_react42.useState)(date);
|
|
10699
|
+
const [open, setOpen] = (0, import_react42.useState)(false);
|
|
10700
|
+
const [timePickerOpen, setTimePickerOpen] = (0, import_react42.useState)(false);
|
|
10667
10701
|
const handleSelect = (newDay) => {
|
|
10668
10702
|
if (!newDay) return;
|
|
10669
10703
|
if (!internalDate) {
|
|
@@ -10689,26 +10723,24 @@ function DateTimePicker({
|
|
|
10689
10723
|
const timeFormat = getTimeFormat();
|
|
10690
10724
|
if (displayFormat === true) {
|
|
10691
10725
|
if (!timeFormat) return "dd/MM/yyyy";
|
|
10692
|
-
return `dd/MM/yyyy ${timeFormat}`;
|
|
10726
|
+
return `dd/MM/yyyy - ${timeFormat}`;
|
|
10693
10727
|
}
|
|
10694
10728
|
if (!timeFormat) return "dd MMMM yyyy";
|
|
10695
|
-
return `dd MMMM yyyy ${timeFormat}`;
|
|
10729
|
+
return `dd MMMM yyyy - ${timeFormat}`;
|
|
10696
10730
|
};
|
|
10697
|
-
(0,
|
|
10698
|
-
|
|
10699
|
-
setInternalDate(date);
|
|
10700
|
-
}
|
|
10731
|
+
(0, import_react42.useEffect)(() => {
|
|
10732
|
+
setInternalDate(date);
|
|
10701
10733
|
}, [date, open]);
|
|
10702
|
-
return /* @__PURE__ */ (0,
|
|
10703
|
-
label && /* @__PURE__ */ (0,
|
|
10704
|
-
/* @__PURE__ */ (0,
|
|
10705
|
-
/* @__PURE__ */ (0,
|
|
10734
|
+
return /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: cn("space-y-2 w-full sm:w-auto", className), children: [
|
|
10735
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(LabelBase_default, { children: label }),
|
|
10736
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(PopoverBase, { open, onOpenChange: setOpen, children: [
|
|
10737
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
|
|
10706
10738
|
PopoverTriggerBase,
|
|
10707
10739
|
{
|
|
10708
10740
|
disabled,
|
|
10709
10741
|
asChild: true,
|
|
10710
10742
|
className: cn(error && "border-red-500"),
|
|
10711
|
-
children: /* @__PURE__ */ (0,
|
|
10743
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(
|
|
10712
10744
|
ButtonBase,
|
|
10713
10745
|
{
|
|
10714
10746
|
variant: "outline",
|
|
@@ -10717,7 +10749,7 @@ function DateTimePicker({
|
|
|
10717
10749
|
!date && "text-muted-foreground"
|
|
10718
10750
|
),
|
|
10719
10751
|
children: [
|
|
10720
|
-
/* @__PURE__ */ (0,
|
|
10752
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
|
|
10721
10753
|
"span",
|
|
10722
10754
|
{
|
|
10723
10755
|
className: cn(
|
|
@@ -10727,14 +10759,14 @@ function DateTimePicker({
|
|
|
10727
10759
|
children: date ? (0, import_date_fns.format)(date, getDisplayFormat(), { locale: import_locale.ptBR }) : "Selecione uma data"
|
|
10728
10760
|
}
|
|
10729
10761
|
),
|
|
10730
|
-
/* @__PURE__ */ (0,
|
|
10762
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_react43.CalendarBlankIcon, { className: "flex-shrink-0 w-5 h-5 sm:w-6 sm:h-6" })
|
|
10731
10763
|
]
|
|
10732
10764
|
}
|
|
10733
10765
|
)
|
|
10734
10766
|
}
|
|
10735
10767
|
),
|
|
10736
|
-
/* @__PURE__ */ (0,
|
|
10737
|
-
/* @__PURE__ */ (0,
|
|
10768
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)(ErrorMessage_default, { error }),
|
|
10769
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
|
|
10738
10770
|
PopoverContentBase,
|
|
10739
10771
|
{
|
|
10740
10772
|
className: "w-full p-0",
|
|
@@ -10743,28 +10775,28 @@ function DateTimePicker({
|
|
|
10743
10775
|
side: "bottom",
|
|
10744
10776
|
avoidCollisions: true,
|
|
10745
10777
|
collisionPadding: 8,
|
|
10746
|
-
children: /* @__PURE__ */ (0,
|
|
10747
|
-
/* @__PURE__ */ (0,
|
|
10778
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex flex-col space-y-2 sm:space-y-3 p-2 sm:p-3 md:p-4 max-h-[calc(100vh-4rem)] overflow-y-auto", children: [
|
|
10779
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
|
|
10748
10780
|
CalendarBase2,
|
|
10749
10781
|
{
|
|
10750
10782
|
mode: "single",
|
|
10751
10783
|
locale: import_locale.ptBR,
|
|
10752
10784
|
selected: internalDate,
|
|
10753
|
-
onSelect: (d) => handleSelect(d),
|
|
10785
|
+
onSelect: (d) => handleSelect(d ?? void 0),
|
|
10754
10786
|
initialFocus: true,
|
|
10755
|
-
defaultMonth: fromDate ?? toDate ?? internalDate,
|
|
10787
|
+
defaultMonth: fromDate ?? toDate ?? internalDate ?? void 0,
|
|
10756
10788
|
fromDate,
|
|
10757
10789
|
toDate,
|
|
10758
10790
|
className: cn("w-full", hideTime && "border-0")
|
|
10759
10791
|
}
|
|
10760
10792
|
),
|
|
10761
|
-
!hideTime && /* @__PURE__ */ (0,
|
|
10793
|
+
!hideTime && /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("div", { className: "flex justify-center w-full px-2", children: /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(
|
|
10762
10794
|
PopoverBase,
|
|
10763
10795
|
{
|
|
10764
10796
|
open: timePickerOpen,
|
|
10765
10797
|
onOpenChange: setTimePickerOpen,
|
|
10766
10798
|
children: [
|
|
10767
|
-
/* @__PURE__ */ (0,
|
|
10799
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)(PopoverTriggerBase, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(
|
|
10768
10800
|
ButtonBase,
|
|
10769
10801
|
{
|
|
10770
10802
|
variant: "outline",
|
|
@@ -10780,14 +10812,14 @@ function DateTimePicker({
|
|
|
10780
10812
|
"min-h-[36px] sm:min-h-[40px]"
|
|
10781
10813
|
),
|
|
10782
10814
|
children: [
|
|
10783
|
-
/* @__PURE__ */ (0,
|
|
10784
|
-
/* @__PURE__ */ (0,
|
|
10815
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_react43.ClockIcon, { className: "text-primary flex-shrink-0 w-4 h-4 sm:w-5 sm:h-5" }),
|
|
10816
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "text-black truncate", children: internalDate ? (0, import_date_fns.format)(internalDate, getTimeFormat() || "HH:mm", {
|
|
10785
10817
|
locale: import_locale.ptBR
|
|
10786
10818
|
}) : "00:00" })
|
|
10787
10819
|
]
|
|
10788
10820
|
}
|
|
10789
10821
|
) }),
|
|
10790
|
-
/* @__PURE__ */ (0,
|
|
10822
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
|
|
10791
10823
|
PopoverContentBase,
|
|
10792
10824
|
{
|
|
10793
10825
|
className: "w-[calc(100vw-2rem)] max-w-sm p-3 sm:p-3 rounded-md",
|
|
@@ -10796,17 +10828,17 @@ function DateTimePicker({
|
|
|
10796
10828
|
sideOffset: 8,
|
|
10797
10829
|
avoidCollisions: true,
|
|
10798
10830
|
collisionPadding: 8,
|
|
10799
|
-
children: /* @__PURE__ */ (0,
|
|
10800
|
-
/* @__PURE__ */ (0,
|
|
10801
|
-
/* @__PURE__ */ (0,
|
|
10831
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex flex-col items-center space-y-2 sm:space-y-3", children: [
|
|
10832
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)("h4", { className: "text-sm sm:text-base font-medium text-center", children: "Alterar Hor\xE1rio" }),
|
|
10833
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
|
|
10802
10834
|
TimePicker,
|
|
10803
10835
|
{
|
|
10804
|
-
setDate: handleTimeChange,
|
|
10836
|
+
setDate: (d) => handleTimeChange(d ?? void 0),
|
|
10805
10837
|
date: internalDate,
|
|
10806
10838
|
hideSeconds
|
|
10807
10839
|
}
|
|
10808
10840
|
),
|
|
10809
|
-
/* @__PURE__ */ (0,
|
|
10841
|
+
/* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
|
|
10810
10842
|
ButtonBase,
|
|
10811
10843
|
{
|
|
10812
10844
|
size: "sm",
|
|
@@ -10830,14 +10862,14 @@ function DateTimePicker({
|
|
|
10830
10862
|
}
|
|
10831
10863
|
|
|
10832
10864
|
// src/components/picker/RangePicker.tsx
|
|
10833
|
-
var
|
|
10865
|
+
var React43 = __toESM(require("react"));
|
|
10834
10866
|
var import_react_day_picker3 = require("react-day-picker");
|
|
10835
10867
|
var import_pt_BR = __toESM(require("date-fns/locale/pt-BR"));
|
|
10836
10868
|
var import_date_fns2 = require("date-fns");
|
|
10837
|
-
var
|
|
10869
|
+
var import_react44 = require("@phosphor-icons/react");
|
|
10838
10870
|
var import_framer_motion16 = require("framer-motion");
|
|
10839
10871
|
var import_ssr7 = require("@phosphor-icons/react/dist/ssr");
|
|
10840
|
-
var
|
|
10872
|
+
var import_jsx_runtime66 = require("react/jsx-runtime");
|
|
10841
10873
|
var dateFnsLocale = import_pt_BR.default?.default ?? import_pt_BR.default;
|
|
10842
10874
|
function RangePicker({
|
|
10843
10875
|
value,
|
|
@@ -10847,10 +10879,10 @@ function RangePicker({
|
|
|
10847
10879
|
maxDate,
|
|
10848
10880
|
error
|
|
10849
10881
|
}) {
|
|
10850
|
-
const [open, setOpen] =
|
|
10851
|
-
const [range, setRange] =
|
|
10882
|
+
const [open, setOpen] = React43.useState(false);
|
|
10883
|
+
const [range, setRange] = React43.useState(value);
|
|
10852
10884
|
const controls = (0, import_framer_motion16.useAnimation)();
|
|
10853
|
-
|
|
10885
|
+
React43.useEffect(() => {
|
|
10854
10886
|
setRange(value);
|
|
10855
10887
|
}, [value]);
|
|
10856
10888
|
const handleSelect = (selected) => {
|
|
@@ -10861,20 +10893,20 @@ function RangePicker({
|
|
|
10861
10893
|
setRange(void 0);
|
|
10862
10894
|
onChange?.(void 0);
|
|
10863
10895
|
};
|
|
10864
|
-
return /* @__PURE__ */ (0,
|
|
10865
|
-
/* @__PURE__ */ (0,
|
|
10896
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(PopoverBase, { open, onOpenChange: setOpen, children: [
|
|
10897
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)(PopoverTriggerBase, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
|
|
10866
10898
|
import_framer_motion16.motion.div,
|
|
10867
10899
|
{
|
|
10868
10900
|
whileTap: { scale: 0.97 },
|
|
10869
10901
|
whileHover: { scale: open ? 1.03 : 1.01 },
|
|
10870
10902
|
transition: { type: "spring", stiffness: 300, damping: 20 },
|
|
10871
|
-
children: /* @__PURE__ */ (0,
|
|
10903
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(
|
|
10872
10904
|
ButtonBase,
|
|
10873
10905
|
{
|
|
10874
10906
|
variant: "outline",
|
|
10875
10907
|
className: "flex gap-2 transition-all duration-200 min-w-[250px] text-left justify-between items-center",
|
|
10876
10908
|
children: [
|
|
10877
|
-
/* @__PURE__ */ (0,
|
|
10909
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
|
|
10878
10910
|
import_framer_motion16.motion.span,
|
|
10879
10911
|
{
|
|
10880
10912
|
className: "text-sm font-medium",
|
|
@@ -10885,12 +10917,12 @@ function RangePicker({
|
|
|
10885
10917
|
})} - ${(0, import_date_fns2.format)(range.to, "P", { locale: dateFnsLocale })}` : label
|
|
10886
10918
|
}
|
|
10887
10919
|
),
|
|
10888
|
-
/* @__PURE__ */ (0,
|
|
10920
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
|
|
10889
10921
|
import_framer_motion16.motion.span,
|
|
10890
10922
|
{
|
|
10891
10923
|
animate: open ? { rotate: 8, scale: 1.15 } : { rotate: 0, scale: 1 },
|
|
10892
10924
|
transition: { type: "spring", stiffness: 300, damping: 18 },
|
|
10893
|
-
children: /* @__PURE__ */ (0,
|
|
10925
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_react44.CalendarBlankIcon, { className: "w-4 h-4 transition-transform group-hover:scale-110" })
|
|
10894
10926
|
}
|
|
10895
10927
|
)
|
|
10896
10928
|
]
|
|
@@ -10898,13 +10930,13 @@ function RangePicker({
|
|
|
10898
10930
|
)
|
|
10899
10931
|
}
|
|
10900
10932
|
) }),
|
|
10901
|
-
/* @__PURE__ */ (0,
|
|
10902
|
-
/* @__PURE__ */ (0,
|
|
10933
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)(ErrorMessage_default, { error }),
|
|
10934
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_framer_motion16.AnimatePresence, { children: open && /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
|
|
10903
10935
|
PopoverContentBase,
|
|
10904
10936
|
{
|
|
10905
10937
|
asChild: true,
|
|
10906
10938
|
className: "w-auto min-w-[250px] p-0 shadow-xl overflow-y-hidden",
|
|
10907
|
-
children: /* @__PURE__ */ (0,
|
|
10939
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(
|
|
10908
10940
|
import_framer_motion16.motion.div,
|
|
10909
10941
|
{
|
|
10910
10942
|
initial: { opacity: 0, y: 16 },
|
|
@@ -10912,7 +10944,7 @@ function RangePicker({
|
|
|
10912
10944
|
exit: { opacity: 0, y: 16 },
|
|
10913
10945
|
transition: { duration: 0.18, ease: "easeOut" },
|
|
10914
10946
|
children: [
|
|
10915
|
-
/* @__PURE__ */ (0,
|
|
10947
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { className: "p-4", children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
|
|
10916
10948
|
import_framer_motion16.motion.div,
|
|
10917
10949
|
{
|
|
10918
10950
|
initial: { opacity: 0, y: 8 },
|
|
@@ -10920,7 +10952,7 @@ function RangePicker({
|
|
|
10920
10952
|
exit: { opacity: 0, y: 8 },
|
|
10921
10953
|
transition: { duration: 0.18 },
|
|
10922
10954
|
className: "w-full",
|
|
10923
|
-
children: /* @__PURE__ */ (0,
|
|
10955
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
|
|
10924
10956
|
import_react_day_picker3.DayPicker,
|
|
10925
10957
|
{
|
|
10926
10958
|
mode: "range",
|
|
@@ -10967,20 +10999,20 @@ function RangePicker({
|
|
|
10967
10999
|
day_hidden: "invisible"
|
|
10968
11000
|
},
|
|
10969
11001
|
components: {
|
|
10970
|
-
IconLeft: () => /* @__PURE__ */ (0,
|
|
10971
|
-
IconRight: () => /* @__PURE__ */ (0,
|
|
11002
|
+
IconLeft: () => /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_react44.CaretLeftIcon, { className: "h-4 w-4" }),
|
|
11003
|
+
IconRight: () => /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_react44.CaretRightIcon, { className: "h-4 w-4" })
|
|
10972
11004
|
}
|
|
10973
11005
|
}
|
|
10974
11006
|
)
|
|
10975
11007
|
}
|
|
10976
11008
|
) }),
|
|
10977
|
-
/* @__PURE__ */ (0,
|
|
10978
|
-
/* @__PURE__ */ (0,
|
|
11009
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("div", { className: "flex justify-end gap-2 px-4 pb-4", children: [
|
|
11010
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { style: { display: "inline-block" }, children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
|
|
10979
11011
|
import_framer_motion16.motion.div,
|
|
10980
11012
|
{
|
|
10981
11013
|
whileHover: { scale: 1.03 },
|
|
10982
11014
|
whileTap: { scale: 0.95 },
|
|
10983
|
-
children: /* @__PURE__ */ (0,
|
|
11015
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
|
|
10984
11016
|
ButtonBase,
|
|
10985
11017
|
{
|
|
10986
11018
|
variant: "outline",
|
|
@@ -10990,17 +11022,17 @@ function RangePicker({
|
|
|
10990
11022
|
to: /* @__PURE__ */ new Date()
|
|
10991
11023
|
});
|
|
10992
11024
|
},
|
|
10993
|
-
children: /* @__PURE__ */ (0,
|
|
11025
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_ssr7.CalendarDotIcon, {})
|
|
10994
11026
|
}
|
|
10995
11027
|
)
|
|
10996
11028
|
}
|
|
10997
11029
|
) }),
|
|
10998
|
-
/* @__PURE__ */ (0,
|
|
11030
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { style: { display: "inline-block" }, children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
|
|
10999
11031
|
import_framer_motion16.motion.div,
|
|
11000
11032
|
{
|
|
11001
11033
|
whileHover: { scale: 1.03 },
|
|
11002
11034
|
whileTap: { scale: 0.95 },
|
|
11003
|
-
children: /* @__PURE__ */ (0,
|
|
11035
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
|
|
11004
11036
|
ButtonBase,
|
|
11005
11037
|
{
|
|
11006
11038
|
variant: "outline",
|
|
@@ -11012,12 +11044,12 @@ function RangePicker({
|
|
|
11012
11044
|
)
|
|
11013
11045
|
}
|
|
11014
11046
|
) }),
|
|
11015
|
-
/* @__PURE__ */ (0,
|
|
11047
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { style: { display: "inline-block", width: "100%" }, children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
|
|
11016
11048
|
import_framer_motion16.motion.div,
|
|
11017
11049
|
{
|
|
11018
11050
|
whileHover: { scale: 1.02 },
|
|
11019
11051
|
whileTap: { scale: 0.98 },
|
|
11020
|
-
children: /* @__PURE__ */ (0,
|
|
11052
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
|
|
11021
11053
|
ButtonBase,
|
|
11022
11054
|
{
|
|
11023
11055
|
className: "font-semibold w-full text-center",
|
|
@@ -11040,25 +11072,25 @@ RangePicker.displayName = "RangePicker";
|
|
|
11040
11072
|
|
|
11041
11073
|
// src/components/ui/navigation/ContextMenuBase.tsx
|
|
11042
11074
|
var ContextMenuPrimitive = __toESM(require("@radix-ui/react-context-menu"));
|
|
11043
|
-
var
|
|
11044
|
-
var
|
|
11075
|
+
var import_react45 = require("@phosphor-icons/react");
|
|
11076
|
+
var import_jsx_runtime67 = require("react/jsx-runtime");
|
|
11045
11077
|
function ContextMenuBase(props) {
|
|
11046
|
-
return /* @__PURE__ */ (0,
|
|
11078
|
+
return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(ContextMenuPrimitive.Root, { "data-slot": "context-menu", ...props });
|
|
11047
11079
|
}
|
|
11048
11080
|
function ContextMenuTriggerBase(props) {
|
|
11049
|
-
return /* @__PURE__ */ (0,
|
|
11081
|
+
return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(ContextMenuPrimitive.Trigger, { "data-slot": "context-menu-trigger", ...props });
|
|
11050
11082
|
}
|
|
11051
11083
|
function ContextMenuGroupBase(props) {
|
|
11052
|
-
return /* @__PURE__ */ (0,
|
|
11084
|
+
return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(ContextMenuPrimitive.Group, { "data-slot": "context-menu-group", ...props });
|
|
11053
11085
|
}
|
|
11054
11086
|
function ContextMenuPortalBase(props) {
|
|
11055
|
-
return /* @__PURE__ */ (0,
|
|
11087
|
+
return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(ContextMenuPrimitive.Portal, { "data-slot": "context-menu-portal", ...props });
|
|
11056
11088
|
}
|
|
11057
11089
|
function ContextMenuSubBase(props) {
|
|
11058
|
-
return /* @__PURE__ */ (0,
|
|
11090
|
+
return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(ContextMenuPrimitive.Sub, { "data-slot": "context-menu-sub", ...props });
|
|
11059
11091
|
}
|
|
11060
11092
|
function ContextMenuRadioGroupBase(props) {
|
|
11061
|
-
return /* @__PURE__ */ (0,
|
|
11093
|
+
return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(ContextMenuPrimitive.RadioGroup, { "data-slot": "context-menu-radio-group", ...props });
|
|
11062
11094
|
}
|
|
11063
11095
|
function ContextMenuSubTriggerBase({
|
|
11064
11096
|
className,
|
|
@@ -11066,7 +11098,7 @@ function ContextMenuSubTriggerBase({
|
|
|
11066
11098
|
children,
|
|
11067
11099
|
...props
|
|
11068
11100
|
}) {
|
|
11069
|
-
return /* @__PURE__ */ (0,
|
|
11101
|
+
return /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(
|
|
11070
11102
|
ContextMenuPrimitive.SubTrigger,
|
|
11071
11103
|
{
|
|
11072
11104
|
"data-slot": "context-menu-sub-trigger",
|
|
@@ -11082,7 +11114,7 @@ function ContextMenuSubTriggerBase({
|
|
|
11082
11114
|
...props,
|
|
11083
11115
|
children: [
|
|
11084
11116
|
children,
|
|
11085
|
-
/* @__PURE__ */ (0,
|
|
11117
|
+
/* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_react45.CaretRightIcon, { className: "ml-auto" })
|
|
11086
11118
|
]
|
|
11087
11119
|
}
|
|
11088
11120
|
);
|
|
@@ -11091,7 +11123,7 @@ function ContextMenuSubContentBase({
|
|
|
11091
11123
|
className,
|
|
11092
11124
|
...props
|
|
11093
11125
|
}) {
|
|
11094
|
-
return /* @__PURE__ */ (0,
|
|
11126
|
+
return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
|
|
11095
11127
|
ContextMenuPrimitive.SubContent,
|
|
11096
11128
|
{
|
|
11097
11129
|
"data-slot": "context-menu-sub-content",
|
|
@@ -11111,7 +11143,7 @@ function ContextMenuContentBase({
|
|
|
11111
11143
|
className,
|
|
11112
11144
|
...props
|
|
11113
11145
|
}) {
|
|
11114
|
-
return /* @__PURE__ */ (0,
|
|
11146
|
+
return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(ContextMenuPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
|
|
11115
11147
|
ContextMenuPrimitive.Content,
|
|
11116
11148
|
{
|
|
11117
11149
|
"data-slot": "context-menu-content",
|
|
@@ -11134,7 +11166,7 @@ function ContextMenuItemBase({
|
|
|
11134
11166
|
variant = "default",
|
|
11135
11167
|
...props
|
|
11136
11168
|
}) {
|
|
11137
|
-
return /* @__PURE__ */ (0,
|
|
11169
|
+
return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
|
|
11138
11170
|
ContextMenuPrimitive.Item,
|
|
11139
11171
|
{
|
|
11140
11172
|
"data-slot": "context-menu-item",
|
|
@@ -11162,7 +11194,7 @@ function ContextMenuCheckboxItemBase({
|
|
|
11162
11194
|
checked,
|
|
11163
11195
|
...props
|
|
11164
11196
|
}) {
|
|
11165
|
-
return /* @__PURE__ */ (0,
|
|
11197
|
+
return /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(
|
|
11166
11198
|
ContextMenuPrimitive.CheckboxItem,
|
|
11167
11199
|
{
|
|
11168
11200
|
"data-slot": "context-menu-checkbox-item",
|
|
@@ -11177,7 +11209,7 @@ function ContextMenuCheckboxItemBase({
|
|
|
11177
11209
|
checked,
|
|
11178
11210
|
...props,
|
|
11179
11211
|
children: [
|
|
11180
|
-
/* @__PURE__ */ (0,
|
|
11212
|
+
/* @__PURE__ */ (0, import_jsx_runtime67.jsx)("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(ContextMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_react45.CheckIcon, { className: "size-4" }) }) }),
|
|
11181
11213
|
children
|
|
11182
11214
|
]
|
|
11183
11215
|
}
|
|
@@ -11188,7 +11220,7 @@ function ContextMenuRadioItemBase({
|
|
|
11188
11220
|
children,
|
|
11189
11221
|
...props
|
|
11190
11222
|
}) {
|
|
11191
|
-
return /* @__PURE__ */ (0,
|
|
11223
|
+
return /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(
|
|
11192
11224
|
ContextMenuPrimitive.RadioItem,
|
|
11193
11225
|
{
|
|
11194
11226
|
"data-slot": "context-menu-radio-item",
|
|
@@ -11202,7 +11234,7 @@ function ContextMenuRadioItemBase({
|
|
|
11202
11234
|
),
|
|
11203
11235
|
...props,
|
|
11204
11236
|
children: [
|
|
11205
|
-
/* @__PURE__ */ (0,
|
|
11237
|
+
/* @__PURE__ */ (0, import_jsx_runtime67.jsx)("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(ContextMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_react45.CircleIcon, { className: "size-2 fill-current" }) }) }),
|
|
11206
11238
|
children
|
|
11207
11239
|
]
|
|
11208
11240
|
}
|
|
@@ -11213,7 +11245,7 @@ function ContextMenuLabelBase({
|
|
|
11213
11245
|
inset,
|
|
11214
11246
|
...props
|
|
11215
11247
|
}) {
|
|
11216
|
-
return /* @__PURE__ */ (0,
|
|
11248
|
+
return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
|
|
11217
11249
|
ContextMenuPrimitive.Label,
|
|
11218
11250
|
{
|
|
11219
11251
|
"data-slot": "context-menu-label",
|
|
@@ -11227,7 +11259,7 @@ function ContextMenuSeparatorBase({
|
|
|
11227
11259
|
className,
|
|
11228
11260
|
...props
|
|
11229
11261
|
}) {
|
|
11230
|
-
return /* @__PURE__ */ (0,
|
|
11262
|
+
return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
|
|
11231
11263
|
ContextMenuPrimitive.Separator,
|
|
11232
11264
|
{
|
|
11233
11265
|
"data-slot": "context-menu-separator",
|
|
@@ -11240,7 +11272,7 @@ function ContextMenuShortcutBase({
|
|
|
11240
11272
|
className,
|
|
11241
11273
|
...props
|
|
11242
11274
|
}) {
|
|
11243
|
-
return /* @__PURE__ */ (0,
|
|
11275
|
+
return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
|
|
11244
11276
|
"span",
|
|
11245
11277
|
{
|
|
11246
11278
|
"data-slot": "context-menu-shortcut",
|
|
@@ -11251,10 +11283,10 @@ function ContextMenuShortcutBase({
|
|
|
11251
11283
|
}
|
|
11252
11284
|
|
|
11253
11285
|
// src/components/ui/CodeBlock.tsx
|
|
11254
|
-
var
|
|
11255
|
-
var
|
|
11286
|
+
var import_react46 = require("@phosphor-icons/react");
|
|
11287
|
+
var import_react47 = __toESM(require("react"));
|
|
11256
11288
|
var import_react_syntax_highlighter = require("react-syntax-highlighter");
|
|
11257
|
-
var
|
|
11289
|
+
var import_jsx_runtime68 = require("react/jsx-runtime");
|
|
11258
11290
|
var CodeBlock = ({
|
|
11259
11291
|
language,
|
|
11260
11292
|
filename,
|
|
@@ -11264,11 +11296,11 @@ var CodeBlock = ({
|
|
|
11264
11296
|
breadcrumb = [],
|
|
11265
11297
|
showStats = true
|
|
11266
11298
|
}) => {
|
|
11267
|
-
const [copied, setCopied] =
|
|
11268
|
-
const [activeTab, setActiveTab] =
|
|
11269
|
-
const [isExpanded, setIsExpanded] =
|
|
11299
|
+
const [copied, setCopied] = import_react47.default.useState(false);
|
|
11300
|
+
const [activeTab, setActiveTab] = import_react47.default.useState(0);
|
|
11301
|
+
const [isExpanded, setIsExpanded] = import_react47.default.useState(false);
|
|
11270
11302
|
const tabsExist = tabs.length > 0;
|
|
11271
|
-
const cssVars =
|
|
11303
|
+
const cssVars = import_react47.default.useMemo(
|
|
11272
11304
|
() => ({
|
|
11273
11305
|
container: {
|
|
11274
11306
|
backgroundColor: "hsl(var(--card))",
|
|
@@ -11333,12 +11365,12 @@ var CodeBlock = ({
|
|
|
11333
11365
|
case "jsx":
|
|
11334
11366
|
case "typescript":
|
|
11335
11367
|
case "tsx":
|
|
11336
|
-
return /* @__PURE__ */ (0,
|
|
11368
|
+
return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_react46.CodeIcon, { size: "1em", className: "text-yellow-400" });
|
|
11337
11369
|
case "bash":
|
|
11338
11370
|
case "shell":
|
|
11339
|
-
return /* @__PURE__ */ (0,
|
|
11371
|
+
return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_react46.TerminalIcon, { size: "1em", className: "text-green-400" });
|
|
11340
11372
|
default:
|
|
11341
|
-
return /* @__PURE__ */ (0,
|
|
11373
|
+
return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_react46.FileArchiveIcon, { size: "1em", className: "text-blue-400" });
|
|
11342
11374
|
}
|
|
11343
11375
|
};
|
|
11344
11376
|
const getCodeStats = (source) => {
|
|
@@ -11348,24 +11380,24 @@ var CodeBlock = ({
|
|
|
11348
11380
|
return { lines, chars, words };
|
|
11349
11381
|
};
|
|
11350
11382
|
const stats = showStats ? getCodeStats(activeCodeSanitized) : null;
|
|
11351
|
-
return /* @__PURE__ */ (0,
|
|
11383
|
+
return /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
|
|
11352
11384
|
"div",
|
|
11353
11385
|
{
|
|
11354
11386
|
className: `relative w-full rounded-xl overflow-hidden shadow-sm border no-underline-code`,
|
|
11355
11387
|
style: cssVars.container,
|
|
11356
11388
|
children: [
|
|
11357
|
-
/* @__PURE__ */ (0,
|
|
11358
|
-
/* @__PURE__ */ (0,
|
|
11359
|
-
/* @__PURE__ */ (0,
|
|
11360
|
-
/* @__PURE__ */ (0,
|
|
11361
|
-
/* @__PURE__ */ (0,
|
|
11362
|
-
/* @__PURE__ */ (0,
|
|
11363
|
-
/* @__PURE__ */ (0,
|
|
11389
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsx)("style", { children: `.no-underline-code a { text-decoration: none !important; text-shadow: none !important; box-shadow: none !important; } .no-underline-code code a { text-decoration: none !important; }` }),
|
|
11390
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: `flex items-stretch min-h-[3rem]`, style: cssVars.header, children: [
|
|
11391
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex-1 flex items-center min-w-0 px-3", children: [
|
|
11392
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex gap-2 mr-3 shrink-0", children: [
|
|
11393
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "w-3 h-3 rounded-full bg-red-500" }),
|
|
11394
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "w-3 h-3 rounded-full bg-yellow-500" }),
|
|
11395
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "w-3 h-3 rounded-full bg-green-500" })
|
|
11364
11396
|
] }),
|
|
11365
|
-
breadcrumb.length > 0 && /* @__PURE__ */ (0,
|
|
11366
|
-
/* @__PURE__ */ (0,
|
|
11367
|
-
/* @__PURE__ */ (0,
|
|
11368
|
-
/* @__PURE__ */ (0,
|
|
11397
|
+
breadcrumb.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex items-center min-w-0", children: [
|
|
11398
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_react46.FolderIcon, { size: "1em", style: cssVars.icon }),
|
|
11399
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "flex items-center min-w-0 ml-2", children: breadcrumb.map((crumb, index) => /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(import_react47.default.Fragment, { children: [
|
|
11400
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
11369
11401
|
"span",
|
|
11370
11402
|
{
|
|
11371
11403
|
className: "text-xs truncate",
|
|
@@ -11373,8 +11405,8 @@ var CodeBlock = ({
|
|
|
11373
11405
|
children: crumb
|
|
11374
11406
|
}
|
|
11375
11407
|
),
|
|
11376
|
-
index < breadcrumb.length - 1 && /* @__PURE__ */ (0,
|
|
11377
|
-
|
|
11408
|
+
index < breadcrumb.length - 1 && /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
11409
|
+
import_react46.ArrowRightIcon,
|
|
11378
11410
|
{
|
|
11379
11411
|
size: "0.75em",
|
|
11380
11412
|
style: cssVars.icon,
|
|
@@ -11384,8 +11416,8 @@ var CodeBlock = ({
|
|
|
11384
11416
|
] }, index)) })
|
|
11385
11417
|
] })
|
|
11386
11418
|
] }),
|
|
11387
|
-
/* @__PURE__ */ (0,
|
|
11388
|
-
stats && /* @__PURE__ */ (0,
|
|
11419
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex items-center justify-end shrink-0 px-2", children: [
|
|
11420
|
+
stats && /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
|
|
11389
11421
|
"div",
|
|
11390
11422
|
{
|
|
11391
11423
|
className: `text-xs mx-2 truncate hidden md:block`,
|
|
@@ -11398,44 +11430,44 @@ var CodeBlock = ({
|
|
|
11398
11430
|
]
|
|
11399
11431
|
}
|
|
11400
11432
|
),
|
|
11401
|
-
/* @__PURE__ */ (0,
|
|
11402
|
-
/* @__PURE__ */ (0,
|
|
11433
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex", children: [
|
|
11434
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
11403
11435
|
"button",
|
|
11404
11436
|
{
|
|
11405
11437
|
onClick: () => setIsExpanded(!isExpanded),
|
|
11406
11438
|
className: `p-2 transition-colors hover:bg-gray-200 dark:hover:bg-slate-700`,
|
|
11407
11439
|
title: "Toggle fullscreen",
|
|
11408
|
-
children: /* @__PURE__ */ (0,
|
|
11440
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_react46.ArrowsOutIcon, { size: "1em", style: cssVars.icon })
|
|
11409
11441
|
}
|
|
11410
11442
|
),
|
|
11411
|
-
/* @__PURE__ */ (0,
|
|
11443
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
11412
11444
|
"button",
|
|
11413
11445
|
{
|
|
11414
11446
|
onClick: downloadCode,
|
|
11415
11447
|
className: `p-2 transition-colors hover:bg-gray-200 dark:hover:bg-slate-700`,
|
|
11416
11448
|
title: "Download code",
|
|
11417
|
-
children: /* @__PURE__ */ (0,
|
|
11449
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_react46.DownloadIcon, { size: "1em", style: cssVars.icon })
|
|
11418
11450
|
}
|
|
11419
11451
|
),
|
|
11420
|
-
/* @__PURE__ */ (0,
|
|
11452
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
11421
11453
|
"button",
|
|
11422
11454
|
{
|
|
11423
11455
|
onClick: copyToClipboard,
|
|
11424
11456
|
className: `p-2 transition-colors hover:bg-gray-200 dark:hover:bg-slate-700`,
|
|
11425
11457
|
title: "Copy code",
|
|
11426
|
-
children: copied ? /* @__PURE__ */ (0,
|
|
11427
|
-
|
|
11458
|
+
children: copied ? /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
11459
|
+
import_react46.CheckIcon,
|
|
11428
11460
|
{
|
|
11429
11461
|
size: "1em",
|
|
11430
11462
|
style: { color: "hsl(var(--primary))" }
|
|
11431
11463
|
}
|
|
11432
|
-
) : /* @__PURE__ */ (0,
|
|
11464
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_react46.CopyIcon, { size: "1em", style: cssVars.icon })
|
|
11433
11465
|
}
|
|
11434
11466
|
)
|
|
11435
11467
|
] })
|
|
11436
11468
|
] })
|
|
11437
11469
|
] }),
|
|
11438
|
-
tabsExist && /* @__PURE__ */ (0,
|
|
11470
|
+
tabsExist && /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
11439
11471
|
"div",
|
|
11440
11472
|
{
|
|
11441
11473
|
className: `flex border-b overflow-x-auto`,
|
|
@@ -11443,7 +11475,7 @@ var CodeBlock = ({
|
|
|
11443
11475
|
borderColor: "hsl(var(--border))",
|
|
11444
11476
|
backgroundColor: "hsl(var(--popover))"
|
|
11445
11477
|
},
|
|
11446
|
-
children: tabs.map((tab, index) => /* @__PURE__ */ (0,
|
|
11478
|
+
children: tabs.map((tab, index) => /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
|
|
11447
11479
|
"button",
|
|
11448
11480
|
{
|
|
11449
11481
|
onClick: () => setActiveTab(index),
|
|
@@ -11454,14 +11486,14 @@ var CodeBlock = ({
|
|
|
11454
11486
|
} : void 0,
|
|
11455
11487
|
children: [
|
|
11456
11488
|
getLanguageIcon(tab.language || language),
|
|
11457
|
-
/* @__PURE__ */ (0,
|
|
11489
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { className: "truncate max-w-[10rem]", children: tab.name })
|
|
11458
11490
|
]
|
|
11459
11491
|
},
|
|
11460
11492
|
index
|
|
11461
11493
|
))
|
|
11462
11494
|
}
|
|
11463
11495
|
),
|
|
11464
|
-
!tabsExist && filename && /* @__PURE__ */ (0,
|
|
11496
|
+
!tabsExist && filename && /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
11465
11497
|
"div",
|
|
11466
11498
|
{
|
|
11467
11499
|
className: "flex items-center px-3 py-2 border-b",
|
|
@@ -11469,9 +11501,9 @@ var CodeBlock = ({
|
|
|
11469
11501
|
borderColor: "hsl(var(--border))",
|
|
11470
11502
|
backgroundColor: "hsl(var(--popover))"
|
|
11471
11503
|
},
|
|
11472
|
-
children: /* @__PURE__ */ (0,
|
|
11504
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex items-center gap-2 min-w-0", children: [
|
|
11473
11505
|
getLanguageIcon(language),
|
|
11474
|
-
/* @__PURE__ */ (0,
|
|
11506
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
11475
11507
|
"span",
|
|
11476
11508
|
{
|
|
11477
11509
|
className: "text-sm font-medium truncate",
|
|
@@ -11482,11 +11514,11 @@ var CodeBlock = ({
|
|
|
11482
11514
|
] })
|
|
11483
11515
|
}
|
|
11484
11516
|
),
|
|
11485
|
-
/* @__PURE__ */ (0,
|
|
11517
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
11486
11518
|
"div",
|
|
11487
11519
|
{
|
|
11488
11520
|
className: `relative ${isExpanded ? "max-h-screen overflow-auto" : "max-h-96 overflow-auto"}`,
|
|
11489
|
-
children: /* @__PURE__ */ (0,
|
|
11521
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
11490
11522
|
import_react_syntax_highlighter.Prism,
|
|
11491
11523
|
{
|
|
11492
11524
|
language: activeLanguage,
|
|
@@ -11520,7 +11552,7 @@ var CodeBlock = ({
|
|
|
11520
11552
|
)
|
|
11521
11553
|
}
|
|
11522
11554
|
),
|
|
11523
|
-
showStats && stats && /* @__PURE__ */ (0,
|
|
11555
|
+
showStats && stats && /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
|
|
11524
11556
|
"div",
|
|
11525
11557
|
{
|
|
11526
11558
|
className: "px-3 py-2 border-t text-xs flex items-center justify-between min-h-[2.5rem]",
|
|
@@ -11530,20 +11562,20 @@ var CodeBlock = ({
|
|
|
11530
11562
|
color: "hsl(var(--muted-foreground))"
|
|
11531
11563
|
},
|
|
11532
11564
|
children: [
|
|
11533
|
-
/* @__PURE__ */ (0,
|
|
11534
|
-
/* @__PURE__ */ (0,
|
|
11535
|
-
/* @__PURE__ */ (0,
|
|
11565
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex items-center gap-3 min-w-0", children: [
|
|
11566
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { className: "truncate", children: activeLanguage.toUpperCase() }),
|
|
11567
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("span", { className: "truncate hidden sm:inline", children: [
|
|
11536
11568
|
stats.lines,
|
|
11537
11569
|
" lines"
|
|
11538
11570
|
] }),
|
|
11539
|
-
/* @__PURE__ */ (0,
|
|
11571
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("span", { className: "truncate hidden md:inline", children: [
|
|
11540
11572
|
stats.chars,
|
|
11541
11573
|
" chars"
|
|
11542
11574
|
] })
|
|
11543
11575
|
] }),
|
|
11544
|
-
/* @__PURE__ */ (0,
|
|
11545
|
-
/* @__PURE__ */ (0,
|
|
11546
|
-
/* @__PURE__ */ (0,
|
|
11576
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex items-center gap-1 shrink-0", children: [
|
|
11577
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_react46.GearIcon, { size: "0.75em", style: cssVars.icon }),
|
|
11578
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { children: "UTF-8" })
|
|
11547
11579
|
] })
|
|
11548
11580
|
]
|
|
11549
11581
|
}
|
|
@@ -11554,7 +11586,7 @@ var CodeBlock = ({
|
|
|
11554
11586
|
};
|
|
11555
11587
|
|
|
11556
11588
|
// src/components/ui/data/StatusIndicator.tsx
|
|
11557
|
-
var
|
|
11589
|
+
var import_jsx_runtime69 = require("react/jsx-runtime");
|
|
11558
11590
|
function StatusIndicator({
|
|
11559
11591
|
color = "green",
|
|
11560
11592
|
size = "sm",
|
|
@@ -11592,20 +11624,20 @@ function StatusIndicator({
|
|
|
11592
11624
|
"flex-shrink-0"
|
|
11593
11625
|
);
|
|
11594
11626
|
if (position === "inline") {
|
|
11595
|
-
return /* @__PURE__ */ (0,
|
|
11627
|
+
return /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(
|
|
11596
11628
|
"span",
|
|
11597
11629
|
{
|
|
11598
11630
|
className: cn("inline-flex items-center gap-2", className),
|
|
11599
11631
|
...props,
|
|
11600
11632
|
children: [
|
|
11601
|
-
show && /* @__PURE__ */ (0,
|
|
11602
|
-
children && /* @__PURE__ */ (0,
|
|
11633
|
+
show && /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("span", { className: dotClass, "aria-hidden": !show }),
|
|
11634
|
+
children && /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("span", { className: "truncate", children })
|
|
11603
11635
|
]
|
|
11604
11636
|
}
|
|
11605
11637
|
);
|
|
11606
11638
|
}
|
|
11607
|
-
return /* @__PURE__ */ (0,
|
|
11608
|
-
show && /* @__PURE__ */ (0,
|
|
11639
|
+
return /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: cn("relative inline-flex", className), ...props, children: [
|
|
11640
|
+
show && /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
|
|
11609
11641
|
"span",
|
|
11610
11642
|
{
|
|
11611
11643
|
"aria-hidden": !show,
|
|
@@ -11613,13 +11645,18 @@ function StatusIndicator({
|
|
|
11613
11645
|
"pointer-events-none z-10",
|
|
11614
11646
|
absolutePositionClasses[position]
|
|
11615
11647
|
),
|
|
11616
|
-
children: /* @__PURE__ */ (0,
|
|
11648
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("span", { className: dotClass })
|
|
11617
11649
|
}
|
|
11618
11650
|
),
|
|
11619
|
-
/* @__PURE__ */ (0,
|
|
11651
|
+
/* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "min-w-0", children })
|
|
11620
11652
|
] });
|
|
11621
11653
|
}
|
|
11622
11654
|
|
|
11655
|
+
// src/components/ui/form/DebouncedInput.tsx
|
|
11656
|
+
var import_react48 = require("react");
|
|
11657
|
+
var import_react49 = require("@phosphor-icons/react");
|
|
11658
|
+
var import_jsx_runtime70 = require("react/jsx-runtime");
|
|
11659
|
+
|
|
11623
11660
|
// src/hooks/use-drag.tsx
|
|
11624
11661
|
var import_react50 = require("react");
|
|
11625
11662
|
var useDrag = (options = {}) => {
|