@mlw-packages/react-components 1.9.9 → 1.9.11
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 +12 -0
- package/dist/index.d.mts +26 -23
- package/dist/index.d.ts +26 -23
- package/dist/index.js +1040 -499
- package/dist/index.mjs +728 -188
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
require('./index.css');
|
|
4
|
-
var
|
|
4
|
+
var React32 = require('react');
|
|
5
5
|
var reactSlot = require('@radix-ui/react-slot');
|
|
6
6
|
var classVarianceAuthority = require('class-variance-authority');
|
|
7
7
|
var clsx = require('clsx');
|
|
@@ -64,7 +64,7 @@ function _interopNamespace(e) {
|
|
|
64
64
|
return Object.freeze(n);
|
|
65
65
|
}
|
|
66
66
|
|
|
67
|
-
var
|
|
67
|
+
var React32__namespace = /*#__PURE__*/_interopNamespace(React32);
|
|
68
68
|
var AlertDialogPrimitive__namespace = /*#__PURE__*/_interopNamespace(AlertDialogPrimitive);
|
|
69
69
|
var DialogPrimitive__namespace = /*#__PURE__*/_interopNamespace(DialogPrimitive);
|
|
70
70
|
var ProgressPrimitive__namespace = /*#__PURE__*/_interopNamespace(ProgressPrimitive);
|
|
@@ -562,7 +562,7 @@ function cn(...inputs) {
|
|
|
562
562
|
var AlertDialogBase = AlertDialogPrimitive__namespace.Root;
|
|
563
563
|
var AlertDialogTriggerBase = AlertDialogPrimitive__namespace.Trigger;
|
|
564
564
|
var AlertDialogPortalBase = AlertDialogPrimitive__namespace.Portal;
|
|
565
|
-
var AlertDialogOverlayBase =
|
|
565
|
+
var AlertDialogOverlayBase = React32__namespace.forwardRef(({ className, testid = "alertdialog-overlay", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
566
566
|
AlertDialogPrimitive__namespace.Overlay,
|
|
567
567
|
{
|
|
568
568
|
className: cn(
|
|
@@ -575,7 +575,7 @@ var AlertDialogOverlayBase = React33__namespace.forwardRef(({ className, testid
|
|
|
575
575
|
}
|
|
576
576
|
));
|
|
577
577
|
AlertDialogOverlayBase.displayName = AlertDialogPrimitive__namespace.Overlay.displayName;
|
|
578
|
-
var AlertDialogContentBase =
|
|
578
|
+
var AlertDialogContentBase = React32__namespace.forwardRef(({ className, testid = "alertdialog-content", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(AlertDialogPortalBase, { children: [
|
|
579
579
|
/* @__PURE__ */ jsxRuntime.jsx(AlertDialogOverlayBase, {}),
|
|
580
580
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
581
581
|
AlertDialogPrimitive__namespace.Content,
|
|
@@ -619,7 +619,7 @@ var AlertDialogFooterBase = ({
|
|
|
619
619
|
}
|
|
620
620
|
);
|
|
621
621
|
AlertDialogFooterBase.displayName = "AlertDialogFooterBase";
|
|
622
|
-
var AlertDialogTitleBase =
|
|
622
|
+
var AlertDialogTitleBase = React32__namespace.forwardRef(({ className, testid = "alertdialog-title", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
623
623
|
AlertDialogPrimitive__namespace.Title,
|
|
624
624
|
{
|
|
625
625
|
ref,
|
|
@@ -629,7 +629,7 @@ var AlertDialogTitleBase = React33__namespace.forwardRef(({ className, testid =
|
|
|
629
629
|
}
|
|
630
630
|
));
|
|
631
631
|
AlertDialogTitleBase.displayName = AlertDialogPrimitive__namespace.Title.displayName;
|
|
632
|
-
var AlertDialogDescriptionBase =
|
|
632
|
+
var AlertDialogDescriptionBase = React32__namespace.forwardRef(({ className, testid = "alertdialog-description", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
633
633
|
AlertDialogPrimitive__namespace.Description,
|
|
634
634
|
{
|
|
635
635
|
ref,
|
|
@@ -639,7 +639,7 @@ var AlertDialogDescriptionBase = React33__namespace.forwardRef(({ className, tes
|
|
|
639
639
|
}
|
|
640
640
|
));
|
|
641
641
|
AlertDialogDescriptionBase.displayName = AlertDialogPrimitive__namespace.Description.displayName;
|
|
642
|
-
var AlertDialogActionBase =
|
|
642
|
+
var AlertDialogActionBase = React32__namespace.forwardRef(({ className, testid = "alertdialog-action", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
643
643
|
AlertDialogPrimitive__namespace.Action,
|
|
644
644
|
{
|
|
645
645
|
ref,
|
|
@@ -649,7 +649,7 @@ var AlertDialogActionBase = React33__namespace.forwardRef(({ className, testid =
|
|
|
649
649
|
}
|
|
650
650
|
));
|
|
651
651
|
AlertDialogActionBase.displayName = AlertDialogPrimitive__namespace.Action.displayName;
|
|
652
|
-
var AlertDialogCancelBase =
|
|
652
|
+
var AlertDialogCancelBase = React32__namespace.forwardRef(({ className, testid = "alertdialog-cancel", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
653
653
|
AlertDialogPrimitive__namespace.Cancel,
|
|
654
654
|
{
|
|
655
655
|
ref,
|
|
@@ -663,7 +663,7 @@ var DialogBase = DialogPrimitive__namespace.Root;
|
|
|
663
663
|
var DialogTriggerBase = DialogPrimitive__namespace.Trigger;
|
|
664
664
|
var DialogPortalBase = DialogPrimitive__namespace.Portal;
|
|
665
665
|
var DialogCloseBase = DialogPrimitive__namespace.Close;
|
|
666
|
-
var DialogOverlayBase =
|
|
666
|
+
var DialogOverlayBase = React32__namespace.forwardRef(({ className, testid: dataTestId = "dialog-overlay", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
667
667
|
DialogPrimitive__namespace.Overlay,
|
|
668
668
|
{
|
|
669
669
|
ref,
|
|
@@ -676,7 +676,7 @@ var DialogOverlayBase = React33__namespace.forwardRef(({ className, testid: data
|
|
|
676
676
|
}
|
|
677
677
|
));
|
|
678
678
|
DialogOverlayBase.displayName = DialogPrimitive__namespace.Overlay.displayName;
|
|
679
|
-
var DialogContentBase =
|
|
679
|
+
var DialogContentBase = React32__namespace.forwardRef(
|
|
680
680
|
({ className, children, testid: dataTestId = "dialog-content", ...props }, ref) => {
|
|
681
681
|
const userOnWheel = props.onWheel;
|
|
682
682
|
return /* @__PURE__ */ jsxRuntime.jsxs(DialogPortalBase, { children: [
|
|
@@ -705,7 +705,7 @@ var DialogContentBase = React33__namespace.forwardRef(
|
|
|
705
705
|
}
|
|
706
706
|
);
|
|
707
707
|
DialogContentBase.displayName = DialogPrimitive__namespace.Content.displayName;
|
|
708
|
-
var DialogHeaderBase =
|
|
708
|
+
var DialogHeaderBase = React32__namespace.forwardRef(({ className, testid: dataTestId = "dialog-header", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
709
709
|
"div",
|
|
710
710
|
{
|
|
711
711
|
ref,
|
|
@@ -718,7 +718,7 @@ var DialogHeaderBase = React33__namespace.forwardRef(({ className, testid: dataT
|
|
|
718
718
|
}
|
|
719
719
|
));
|
|
720
720
|
DialogHeaderBase.displayName = "DialogHeader";
|
|
721
|
-
var DialogFooterBase =
|
|
721
|
+
var DialogFooterBase = React32__namespace.forwardRef(({ className, testid: dataTestId = "dialog-footer", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
722
722
|
"div",
|
|
723
723
|
{
|
|
724
724
|
ref,
|
|
@@ -731,7 +731,7 @@ var DialogFooterBase = React33__namespace.forwardRef(({ className, testid: dataT
|
|
|
731
731
|
}
|
|
732
732
|
));
|
|
733
733
|
DialogFooterBase.displayName = "DialogFooter";
|
|
734
|
-
var DialogTitleBase =
|
|
734
|
+
var DialogTitleBase = React32__namespace.forwardRef(({ className, testid: dataTestId = "dialog-title", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
735
735
|
DialogPrimitive__namespace.Title,
|
|
736
736
|
{
|
|
737
737
|
ref,
|
|
@@ -744,7 +744,7 @@ var DialogTitleBase = React33__namespace.forwardRef(({ className, testid: dataTe
|
|
|
744
744
|
}
|
|
745
745
|
));
|
|
746
746
|
DialogTitleBase.displayName = DialogPrimitive__namespace.Title.displayName;
|
|
747
|
-
var DialogDescriptionBase =
|
|
747
|
+
var DialogDescriptionBase = React32__namespace.forwardRef(({ className, testid: dataTestId = "dialog-description", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
748
748
|
DialogPrimitive__namespace.Description,
|
|
749
749
|
{
|
|
750
750
|
ref,
|
|
@@ -802,9 +802,9 @@ var dotVariants = classVarianceAuthority.cva(
|
|
|
802
802
|
}
|
|
803
803
|
}
|
|
804
804
|
);
|
|
805
|
-
var LoadingBase =
|
|
805
|
+
var LoadingBase = React32__namespace.forwardRef(
|
|
806
806
|
({ className, size, message, overlay = false, variant = "spinner", ...props }, ref) => {
|
|
807
|
-
|
|
807
|
+
React32__namespace.useEffect(() => {
|
|
808
808
|
const style = document.createElement("style");
|
|
809
809
|
style.textContent = `
|
|
810
810
|
@keyframes dotBounce {
|
|
@@ -920,7 +920,7 @@ var LoadingBase = React33__namespace.forwardRef(
|
|
|
920
920
|
}
|
|
921
921
|
);
|
|
922
922
|
LoadingBase.displayName = "LoadingBase";
|
|
923
|
-
var LabelBase =
|
|
923
|
+
var LabelBase = React32__namespace.forwardRef(
|
|
924
924
|
({ className, asChild = false, testid = "label-base", ...props }, ref) => {
|
|
925
925
|
const Comp = asChild ? reactSlot.Slot : "label";
|
|
926
926
|
return /* @__PURE__ */ jsxRuntime.jsx(reactLabel.Label, { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -939,7 +939,7 @@ var LabelBase = React33__namespace.forwardRef(
|
|
|
939
939
|
);
|
|
940
940
|
LabelBase.displayName = "LabelBase";
|
|
941
941
|
var LabelBase_default = LabelBase;
|
|
942
|
-
var ProgressBase =
|
|
942
|
+
var ProgressBase = React32__namespace.forwardRef(
|
|
943
943
|
({
|
|
944
944
|
className,
|
|
945
945
|
value: rawValue,
|
|
@@ -1121,7 +1121,7 @@ var ProgressPanelsBase = ({
|
|
|
1121
1121
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex w-full gap-1 rounded-lg overflow-hidden", children: steps.map((step, idx) => {
|
|
1122
1122
|
const isActive = idx === currentStep;
|
|
1123
1123
|
const isLast = idx === steps.length - 1;
|
|
1124
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1124
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(React32__namespace.Fragment, { children: [
|
|
1125
1125
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1126
1126
|
"div",
|
|
1127
1127
|
{
|
|
@@ -1313,10 +1313,10 @@ var toast = {
|
|
|
1313
1313
|
};
|
|
1314
1314
|
var MOBILE_BREAKPOINT = 768;
|
|
1315
1315
|
function useIsMobile() {
|
|
1316
|
-
const [isMobile, setIsMobile] =
|
|
1316
|
+
const [isMobile, setIsMobile] = React32__namespace.useState(
|
|
1317
1317
|
void 0
|
|
1318
1318
|
);
|
|
1319
|
-
|
|
1319
|
+
React32__namespace.useEffect(() => {
|
|
1320
1320
|
const checkIsMobile = () => {
|
|
1321
1321
|
const isTouch = window.matchMedia("(pointer: coarse)").matches || navigator.maxTouchPoints > 0;
|
|
1322
1322
|
const isSmallScreen = window.innerWidth < MOBILE_BREAKPOINT;
|
|
@@ -1341,12 +1341,12 @@ var isTouchDevice = () => {
|
|
|
1341
1341
|
return "ontouchstart" in window || navigator.maxTouchPoints > 0 || navigator.msMaxTouchPoints !== void 0;
|
|
1342
1342
|
};
|
|
1343
1343
|
var useDrag = (options = {}) => {
|
|
1344
|
-
const [isDragging, setIsDragging] =
|
|
1345
|
-
const [positions, setPositions] =
|
|
1346
|
-
const dragStartPos =
|
|
1347
|
-
const dragId =
|
|
1348
|
-
const isTouch =
|
|
1349
|
-
const handleDragStart =
|
|
1344
|
+
const [isDragging, setIsDragging] = React32.useState(null);
|
|
1345
|
+
const [positions, setPositions] = React32.useState({});
|
|
1346
|
+
const dragStartPos = React32.useRef(null);
|
|
1347
|
+
const dragId = React32.useRef(null);
|
|
1348
|
+
const isTouch = React32.useRef(isTouchDevice());
|
|
1349
|
+
const handleDragStart = React32.useCallback(
|
|
1350
1350
|
(id, e) => {
|
|
1351
1351
|
const isTouchEvent = "touches" in e;
|
|
1352
1352
|
const clientX = isTouchEvent ? e.touches[0].clientX : e.clientX;
|
|
@@ -1365,7 +1365,7 @@ var useDrag = (options = {}) => {
|
|
|
1365
1365
|
},
|
|
1366
1366
|
[positions, options]
|
|
1367
1367
|
);
|
|
1368
|
-
const handleMouseMove =
|
|
1368
|
+
const handleMouseMove = React32.useCallback(
|
|
1369
1369
|
(e) => {
|
|
1370
1370
|
if (!isDragging || !dragStartPos.current || !dragId.current) return;
|
|
1371
1371
|
const isTouchEvent = "touches" in e;
|
|
@@ -1396,7 +1396,7 @@ var useDrag = (options = {}) => {
|
|
|
1396
1396
|
},
|
|
1397
1397
|
[isDragging, options]
|
|
1398
1398
|
);
|
|
1399
|
-
const handleMouseUp =
|
|
1399
|
+
const handleMouseUp = React32.useCallback(() => {
|
|
1400
1400
|
if (dragId.current) {
|
|
1401
1401
|
options.onDragEnd?.(dragId.current);
|
|
1402
1402
|
}
|
|
@@ -1404,7 +1404,7 @@ var useDrag = (options = {}) => {
|
|
|
1404
1404
|
dragStartPos.current = null;
|
|
1405
1405
|
dragId.current = null;
|
|
1406
1406
|
}, [options]);
|
|
1407
|
-
|
|
1407
|
+
React32.useEffect(() => {
|
|
1408
1408
|
if (isDragging) {
|
|
1409
1409
|
const isTouchDev = isTouch.current;
|
|
1410
1410
|
if (isTouchDev) {
|
|
@@ -1429,19 +1429,19 @@ var useDrag = (options = {}) => {
|
|
|
1429
1429
|
};
|
|
1430
1430
|
}
|
|
1431
1431
|
}, [isDragging, handleMouseMove, handleMouseUp]);
|
|
1432
|
-
const setPosition =
|
|
1432
|
+
const setPosition = React32.useCallback((id, position) => {
|
|
1433
1433
|
setPositions((prev) => ({
|
|
1434
1434
|
...prev,
|
|
1435
1435
|
[id]: position
|
|
1436
1436
|
}));
|
|
1437
1437
|
}, []);
|
|
1438
|
-
const getPosition =
|
|
1438
|
+
const getPosition = React32.useCallback(
|
|
1439
1439
|
(id) => {
|
|
1440
1440
|
return positions[id] || { top: 0, left: 0 };
|
|
1441
1441
|
},
|
|
1442
1442
|
[positions]
|
|
1443
1443
|
);
|
|
1444
|
-
const isElementDragging =
|
|
1444
|
+
const isElementDragging = React32.useCallback(
|
|
1445
1445
|
(id) => {
|
|
1446
1446
|
return isDragging === id;
|
|
1447
1447
|
},
|
|
@@ -1459,11 +1459,11 @@ var TOOLTIP_DELAY_DURATION = 600;
|
|
|
1459
1459
|
var TOOLTIP_SIDE_OFFSET = 8;
|
|
1460
1460
|
var TOOLTIP_MOBILE_DELAY = Infinity;
|
|
1461
1461
|
var TooltipProviderBase = TooltipPrimitive__namespace.Provider;
|
|
1462
|
-
var TooltipClickContext =
|
|
1462
|
+
var TooltipClickContext = React32__namespace.createContext({});
|
|
1463
1463
|
var TooltipBase = ({ children, delayDuration = TOOLTIP_DELAY_DURATION, ...props }) => {
|
|
1464
|
-
const [open, setOpen] =
|
|
1464
|
+
const [open, setOpen] = React32__namespace.useState(false);
|
|
1465
1465
|
const isMobile = useIsMobile();
|
|
1466
|
-
|
|
1466
|
+
React32__namespace.useEffect(() => {
|
|
1467
1467
|
if (!open || !isMobile) return;
|
|
1468
1468
|
const handleClickOutside = (e) => {
|
|
1469
1469
|
const target = e.target;
|
|
@@ -1476,7 +1476,7 @@ var TooltipBase = ({ children, delayDuration = TOOLTIP_DELAY_DURATION, ...props
|
|
|
1476
1476
|
document.addEventListener("pointerdown", handleClickOutside);
|
|
1477
1477
|
return () => document.removeEventListener("pointerdown", handleClickOutside);
|
|
1478
1478
|
}, [open, isMobile]);
|
|
1479
|
-
const contextValue =
|
|
1479
|
+
const contextValue = React32__namespace.useMemo(() => ({ setOpen, isMobile }), [isMobile]);
|
|
1480
1480
|
return /* @__PURE__ */ jsxRuntime.jsx(TooltipClickContext.Provider, { value: contextValue, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1481
1481
|
TooltipPrimitive__namespace.Root,
|
|
1482
1482
|
{
|
|
@@ -1489,9 +1489,9 @@ var TooltipBase = ({ children, delayDuration = TOOLTIP_DELAY_DURATION, ...props
|
|
|
1489
1489
|
) });
|
|
1490
1490
|
};
|
|
1491
1491
|
TooltipBase.displayName = "TooltipBase";
|
|
1492
|
-
var TooltipTriggerBase =
|
|
1493
|
-
const { setOpen, isMobile } =
|
|
1494
|
-
const handlePointerDown =
|
|
1492
|
+
var TooltipTriggerBase = React32__namespace.forwardRef(({ children, onPointerDown, onClick: propOnClick, ...props }, ref) => {
|
|
1493
|
+
const { setOpen, isMobile } = React32__namespace.useContext(TooltipClickContext);
|
|
1494
|
+
const handlePointerDown = React32__namespace.useCallback(
|
|
1495
1495
|
(e) => {
|
|
1496
1496
|
if (onPointerDown) {
|
|
1497
1497
|
onPointerDown(e);
|
|
@@ -1499,7 +1499,7 @@ var TooltipTriggerBase = React33__namespace.forwardRef(({ children, onPointerDow
|
|
|
1499
1499
|
},
|
|
1500
1500
|
[onPointerDown]
|
|
1501
1501
|
);
|
|
1502
|
-
const onClick =
|
|
1502
|
+
const onClick = React32__namespace.useCallback(
|
|
1503
1503
|
(e) => {
|
|
1504
1504
|
if (propOnClick) {
|
|
1505
1505
|
propOnClick(e);
|
|
@@ -1514,7 +1514,7 @@ var TooltipTriggerBase = React33__namespace.forwardRef(({ children, onPointerDow
|
|
|
1514
1514
|
},
|
|
1515
1515
|
[onPointerDown, isMobile, setOpen, propOnClick]
|
|
1516
1516
|
);
|
|
1517
|
-
const preventDefaultOnMobile =
|
|
1517
|
+
const preventDefaultOnMobile = React32__namespace.useCallback(
|
|
1518
1518
|
(e) => {
|
|
1519
1519
|
if (isMobile) {
|
|
1520
1520
|
e.preventDefault();
|
|
@@ -1540,7 +1540,7 @@ var TooltipTriggerBase = React33__namespace.forwardRef(({ children, onPointerDow
|
|
|
1540
1540
|
);
|
|
1541
1541
|
});
|
|
1542
1542
|
TooltipTriggerBase.displayName = "TooltipTriggerBase";
|
|
1543
|
-
var TooltipContentBase =
|
|
1543
|
+
var TooltipContentBase = React32__namespace.forwardRef(
|
|
1544
1544
|
({ className, sideOffset = TOOLTIP_SIDE_OFFSET, onPointerDown, ...props }, ref) => {
|
|
1545
1545
|
return /* @__PURE__ */ jsxRuntime.jsx(TooltipPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1546
1546
|
TooltipPrimitive__namespace.Content,
|
|
@@ -1581,7 +1581,7 @@ var DestructiveDialog = ({
|
|
|
1581
1581
|
triggerContent,
|
|
1582
1582
|
className
|
|
1583
1583
|
}) => {
|
|
1584
|
-
const triggerEl =
|
|
1584
|
+
const triggerEl = React32__namespace.isValidElement(children) ? /* @__PURE__ */ jsxRuntime.jsx(AlertDialogTriggerBase, { asChild: true, children }) : /* @__PURE__ */ jsxRuntime.jsx(AlertDialogTriggerBase, { children: /* @__PURE__ */ jsxRuntime.jsx(ButtonBase, { variant: "destructive", children: triggerContent ?? "Excluir" }) });
|
|
1585
1585
|
return /* @__PURE__ */ jsxRuntime.jsxs(AlertDialogBase, { children: [
|
|
1586
1586
|
triggerEl,
|
|
1587
1587
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -1628,7 +1628,7 @@ var ModalBase = DialogPrimitive__namespace.Root;
|
|
|
1628
1628
|
var ModalTriggerBase = DialogPrimitive__namespace.Trigger;
|
|
1629
1629
|
var ModalPortalBase = DialogPrimitive__namespace.Portal;
|
|
1630
1630
|
var ModalCloseBase = DialogPrimitive__namespace.Close;
|
|
1631
|
-
var ModalOverlayBase =
|
|
1631
|
+
var ModalOverlayBase = React32__namespace.forwardRef(({ className, testid: dataTestId = "modal-overlay", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1632
1632
|
DialogPrimitive__namespace.Overlay,
|
|
1633
1633
|
{
|
|
1634
1634
|
ref,
|
|
@@ -1641,7 +1641,7 @@ var ModalOverlayBase = React33__namespace.forwardRef(({ className, testid: dataT
|
|
|
1641
1641
|
}
|
|
1642
1642
|
));
|
|
1643
1643
|
ModalOverlayBase.displayName = DialogPrimitive__namespace.Overlay.displayName;
|
|
1644
|
-
var ModalContentBase =
|
|
1644
|
+
var ModalContentBase = React32__namespace.forwardRef(
|
|
1645
1645
|
({
|
|
1646
1646
|
className,
|
|
1647
1647
|
children,
|
|
@@ -1705,7 +1705,7 @@ var ModalContentBase = React33__namespace.forwardRef(
|
|
|
1705
1705
|
}
|
|
1706
1706
|
);
|
|
1707
1707
|
ModalContentBase.displayName = DialogPrimitive__namespace.Content.displayName;
|
|
1708
|
-
var ModalHeaderBase =
|
|
1708
|
+
var ModalHeaderBase = React32__namespace.forwardRef(({ className, testid: dataTestId = "modal-header", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1709
1709
|
"div",
|
|
1710
1710
|
{
|
|
1711
1711
|
ref,
|
|
@@ -1718,7 +1718,7 @@ var ModalHeaderBase = React33__namespace.forwardRef(({ className, testid: dataTe
|
|
|
1718
1718
|
}
|
|
1719
1719
|
));
|
|
1720
1720
|
ModalHeaderBase.displayName = "ModalHeader";
|
|
1721
|
-
var ModalFooterBase =
|
|
1721
|
+
var ModalFooterBase = React32__namespace.forwardRef(({ className, testid: dataTestId = "modal-footer", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1722
1722
|
"div",
|
|
1723
1723
|
{
|
|
1724
1724
|
ref,
|
|
@@ -1731,7 +1731,7 @@ var ModalFooterBase = React33__namespace.forwardRef(({ className, testid: dataTe
|
|
|
1731
1731
|
}
|
|
1732
1732
|
));
|
|
1733
1733
|
ModalFooterBase.displayName = "ModalFooter";
|
|
1734
|
-
var ModalTitleBase =
|
|
1734
|
+
var ModalTitleBase = React32__namespace.forwardRef(({ className, testid: dataTestId = "modal-title", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1735
1735
|
DialogPrimitive__namespace.Title,
|
|
1736
1736
|
{
|
|
1737
1737
|
ref,
|
|
@@ -1744,7 +1744,7 @@ var ModalTitleBase = React33__namespace.forwardRef(({ className, testid: dataTes
|
|
|
1744
1744
|
}
|
|
1745
1745
|
));
|
|
1746
1746
|
ModalTitleBase.displayName = DialogPrimitive__namespace.Title.displayName;
|
|
1747
|
-
var ModalDescriptionBase =
|
|
1747
|
+
var ModalDescriptionBase = React32__namespace.forwardRef(({ className, testid: dataTestId = "modal-description", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1748
1748
|
DialogPrimitive__namespace.Description,
|
|
1749
1749
|
{
|
|
1750
1750
|
ref,
|
|
@@ -1781,7 +1781,7 @@ var buttonVariantsBase = classVarianceAuthority.cva(
|
|
|
1781
1781
|
}
|
|
1782
1782
|
}
|
|
1783
1783
|
);
|
|
1784
|
-
var ButtonBase =
|
|
1784
|
+
var ButtonBase = React32__namespace.default.forwardRef(
|
|
1785
1785
|
({
|
|
1786
1786
|
className,
|
|
1787
1787
|
variant,
|
|
@@ -1833,7 +1833,7 @@ var ButtonBase = React33__namespace.default.forwardRef(
|
|
|
1833
1833
|
}
|
|
1834
1834
|
);
|
|
1835
1835
|
ButtonBase.displayName = "Button";
|
|
1836
|
-
var ButtonGroupBase =
|
|
1836
|
+
var ButtonGroupBase = React32__namespace.default.forwardRef(
|
|
1837
1837
|
({ className, children, orientation = "horizontal", ...props }, ref) => {
|
|
1838
1838
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1839
1839
|
"div",
|
|
@@ -1846,17 +1846,17 @@ var ButtonGroupBase = React33__namespace.default.forwardRef(
|
|
|
1846
1846
|
className
|
|
1847
1847
|
),
|
|
1848
1848
|
...props,
|
|
1849
|
-
children:
|
|
1850
|
-
if (!
|
|
1849
|
+
children: React32__namespace.default.Children.map(children, (child, index) => {
|
|
1850
|
+
if (!React32__namespace.default.isValidElement(child)) return child;
|
|
1851
1851
|
const typedChild = child;
|
|
1852
|
-
return
|
|
1852
|
+
return React32__namespace.default.cloneElement(typedChild, {
|
|
1853
1853
|
className: cn(
|
|
1854
1854
|
typedChild.props.className,
|
|
1855
1855
|
"rounded-none",
|
|
1856
1856
|
index === 0 && orientation === "horizontal" && "rounded-l-md",
|
|
1857
1857
|
index === 0 && orientation === "vertical" && "rounded-t-md",
|
|
1858
|
-
index ===
|
|
1859
|
-
index ===
|
|
1858
|
+
index === React32__namespace.default.Children.count(children) - 1 && orientation === "horizontal" && "rounded-r-md",
|
|
1859
|
+
index === React32__namespace.default.Children.count(children) - 1 && orientation === "vertical" && "rounded-b-md"
|
|
1860
1860
|
)
|
|
1861
1861
|
});
|
|
1862
1862
|
})
|
|
@@ -1870,7 +1870,7 @@ var ErrorMessage = ({ error }) => {
|
|
|
1870
1870
|
return /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-destructive", children: error });
|
|
1871
1871
|
};
|
|
1872
1872
|
var ErrorMessage_default = ErrorMessage;
|
|
1873
|
-
var InputBase =
|
|
1873
|
+
var InputBase = React32__namespace.forwardRef(
|
|
1874
1874
|
({
|
|
1875
1875
|
className,
|
|
1876
1876
|
type = "text",
|
|
@@ -1920,7 +1920,7 @@ var InputBase = React33__namespace.forwardRef(
|
|
|
1920
1920
|
}
|
|
1921
1921
|
);
|
|
1922
1922
|
InputBase.displayName = "Input";
|
|
1923
|
-
var DebouncedInput =
|
|
1923
|
+
var DebouncedInput = React32.forwardRef(
|
|
1924
1924
|
({
|
|
1925
1925
|
value: initialValue,
|
|
1926
1926
|
onChange,
|
|
@@ -1934,12 +1934,12 @@ var DebouncedInput = React33.forwardRef(
|
|
|
1934
1934
|
error,
|
|
1935
1935
|
...props
|
|
1936
1936
|
}, ref) => {
|
|
1937
|
-
const [value, setValue] =
|
|
1938
|
-
const [isDebouncing, setIsDebouncing] =
|
|
1939
|
-
|
|
1937
|
+
const [value, setValue] = React32.useState(initialValue);
|
|
1938
|
+
const [isDebouncing, setIsDebouncing] = React32.useState(false);
|
|
1939
|
+
React32.useEffect(() => {
|
|
1940
1940
|
setValue(initialValue);
|
|
1941
1941
|
}, [initialValue]);
|
|
1942
|
-
|
|
1942
|
+
React32.useEffect(() => {
|
|
1943
1943
|
if (value === initialValue) {
|
|
1944
1944
|
setIsDebouncing(false);
|
|
1945
1945
|
return;
|
|
@@ -1979,7 +1979,7 @@ var DebouncedInput = React33.forwardRef(
|
|
|
1979
1979
|
);
|
|
1980
1980
|
DebouncedInput.displayName = "DebouncedInput";
|
|
1981
1981
|
var DebouncedInput_default = DebouncedInput;
|
|
1982
|
-
var CommandBase =
|
|
1982
|
+
var CommandBase = React32__namespace.forwardRef(({ className, testid: dataTestId = "command-base", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1983
1983
|
cmdk.Command,
|
|
1984
1984
|
{
|
|
1985
1985
|
ref,
|
|
@@ -2012,7 +2012,7 @@ var CommandDialogBase = ({ children, open, ...props }) => {
|
|
|
2012
2012
|
"command-dialog"
|
|
2013
2013
|
) }) }) });
|
|
2014
2014
|
};
|
|
2015
|
-
var CommandInputBase =
|
|
2015
|
+
var CommandInputBase = React32__namespace.forwardRef(({ className, testid: dataTestId = "command-input", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2016
2016
|
"div",
|
|
2017
2017
|
{
|
|
2018
2018
|
className: "flex items-center border-b px-3 border-border",
|
|
@@ -2035,7 +2035,7 @@ var CommandInputBase = React33__namespace.forwardRef(({ className, testid: dataT
|
|
|
2035
2035
|
}
|
|
2036
2036
|
));
|
|
2037
2037
|
CommandInputBase.displayName = cmdk.Command.Input.displayName;
|
|
2038
|
-
var CommandDebouncedInputBase =
|
|
2038
|
+
var CommandDebouncedInputBase = React32__namespace.forwardRef(
|
|
2039
2039
|
({
|
|
2040
2040
|
className,
|
|
2041
2041
|
testid: dataTestId = "command-input",
|
|
@@ -2076,10 +2076,10 @@ var CommandDebouncedInputBase = React33__namespace.forwardRef(
|
|
|
2076
2076
|
)
|
|
2077
2077
|
);
|
|
2078
2078
|
CommandDebouncedInputBase.displayName = "CommandDebouncedInputBase";
|
|
2079
|
-
var CommandListBase =
|
|
2079
|
+
var CommandListBase = React32__namespace.forwardRef(
|
|
2080
2080
|
({ className, testid: dataTestId = "command-list", onEndReached, ...props }, ref) => {
|
|
2081
|
-
const listRef =
|
|
2082
|
-
|
|
2081
|
+
const listRef = React32__namespace.useRef(null);
|
|
2082
|
+
React32__namespace.useEffect(() => {
|
|
2083
2083
|
const element = listRef.current;
|
|
2084
2084
|
if (!element) return;
|
|
2085
2085
|
const handleWheel = (e) => {
|
|
@@ -2142,7 +2142,7 @@ var CommandListBase = React33__namespace.forwardRef(
|
|
|
2142
2142
|
element.removeEventListener("touchstart", handleTouchStart);
|
|
2143
2143
|
};
|
|
2144
2144
|
}, [onEndReached]);
|
|
2145
|
-
const combinedRef =
|
|
2145
|
+
const combinedRef = React32__namespace.useCallback(
|
|
2146
2146
|
(node) => {
|
|
2147
2147
|
listRef.current = node;
|
|
2148
2148
|
if (typeof ref === "function") {
|
|
@@ -2178,7 +2178,7 @@ var CommandListBase = React33__namespace.forwardRef(
|
|
|
2178
2178
|
}
|
|
2179
2179
|
);
|
|
2180
2180
|
CommandListBase.displayName = cmdk.Command.List.displayName;
|
|
2181
|
-
var CommandEmptyBase =
|
|
2181
|
+
var CommandEmptyBase = React32__namespace.forwardRef(({ testid: dataTestId = "command-empty", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2182
2182
|
cmdk.Command.Empty,
|
|
2183
2183
|
{
|
|
2184
2184
|
ref,
|
|
@@ -2188,7 +2188,7 @@ var CommandEmptyBase = React33__namespace.forwardRef(({ testid: dataTestId = "co
|
|
|
2188
2188
|
}
|
|
2189
2189
|
));
|
|
2190
2190
|
CommandEmptyBase.displayName = cmdk.Command.Empty.displayName;
|
|
2191
|
-
var CommandGroupBase =
|
|
2191
|
+
var CommandGroupBase = React32__namespace.forwardRef(({ className, testid: dataTestId = "command-group", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2192
2192
|
cmdk.Command.Group,
|
|
2193
2193
|
{
|
|
2194
2194
|
ref,
|
|
@@ -2201,7 +2201,7 @@ var CommandGroupBase = React33__namespace.forwardRef(({ className, testid: dataT
|
|
|
2201
2201
|
}
|
|
2202
2202
|
));
|
|
2203
2203
|
CommandGroupBase.displayName = cmdk.Command.Group.displayName;
|
|
2204
|
-
var CommandSeparatorBase =
|
|
2204
|
+
var CommandSeparatorBase = React32__namespace.forwardRef(({ className, testid: dataTestId = "command-separator", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2205
2205
|
cmdk.Command.Separator,
|
|
2206
2206
|
{
|
|
2207
2207
|
ref,
|
|
@@ -2211,7 +2211,7 @@ var CommandSeparatorBase = React33__namespace.forwardRef(({ className, testid: d
|
|
|
2211
2211
|
}
|
|
2212
2212
|
));
|
|
2213
2213
|
CommandSeparatorBase.displayName = cmdk.Command.Separator.displayName;
|
|
2214
|
-
var CommandItemBase =
|
|
2214
|
+
var CommandItemBase = React32__namespace.forwardRef(({ className, testid: dataTestId = "command-item", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2215
2215
|
cmdk.Command.Item,
|
|
2216
2216
|
{
|
|
2217
2217
|
ref,
|
|
@@ -2243,7 +2243,7 @@ CommandShortcutBase.displayName = "CommandShortcut";
|
|
|
2243
2243
|
var PopoverBase = PopoverPrimitive__namespace.Root;
|
|
2244
2244
|
var PopoverTriggerBase = PopoverPrimitive__namespace.Trigger;
|
|
2245
2245
|
var PopoverAnchorBase = PopoverPrimitive__namespace.Anchor;
|
|
2246
|
-
var PopoverContentBase =
|
|
2246
|
+
var PopoverContentBase = React32__namespace.forwardRef(
|
|
2247
2247
|
({
|
|
2248
2248
|
className,
|
|
2249
2249
|
align = "center",
|
|
@@ -2327,7 +2327,7 @@ function ComboboxBase({
|
|
|
2327
2327
|
hasSelected = false,
|
|
2328
2328
|
hideClear = false
|
|
2329
2329
|
}) {
|
|
2330
|
-
const [open, setOpen] =
|
|
2330
|
+
const [open, setOpen] = React32.useState(false);
|
|
2331
2331
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2332
2332
|
"div",
|
|
2333
2333
|
{
|
|
@@ -2490,7 +2490,7 @@ function Combobox({
|
|
|
2490
2490
|
hideClear = false
|
|
2491
2491
|
}) {
|
|
2492
2492
|
const selectedItem = items.find((item) => item.value === selected);
|
|
2493
|
-
const renderSelected =
|
|
2493
|
+
const renderSelected = React32.useMemo(() => {
|
|
2494
2494
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
2495
2495
|
"span",
|
|
2496
2496
|
{
|
|
@@ -2504,17 +2504,17 @@ function Combobox({
|
|
|
2504
2504
|
}
|
|
2505
2505
|
);
|
|
2506
2506
|
}, [placeholder, selectedItem, testIds?.selected, disabled]);
|
|
2507
|
-
const checkIsSelected =
|
|
2507
|
+
const checkIsSelected = React32.useCallback(
|
|
2508
2508
|
(value) => selected == null ? false : selected == value,
|
|
2509
2509
|
[selected]
|
|
2510
2510
|
);
|
|
2511
|
-
const handleSelection =
|
|
2511
|
+
const handleSelection = React32.useCallback(
|
|
2512
2512
|
(value) => {
|
|
2513
2513
|
onChange(value === selected ? null : value);
|
|
2514
2514
|
},
|
|
2515
2515
|
[selected, onChange]
|
|
2516
2516
|
);
|
|
2517
|
-
const handleClear =
|
|
2517
|
+
const handleClear = React32.useCallback(() => {
|
|
2518
2518
|
onChange(null);
|
|
2519
2519
|
}, [onChange]);
|
|
2520
2520
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("flex flex-col w-full min-w-[150px]", className), children: [
|
|
@@ -2588,7 +2588,7 @@ function Badge({
|
|
|
2588
2588
|
}
|
|
2589
2589
|
);
|
|
2590
2590
|
}
|
|
2591
|
-
var MultiSelectContext =
|
|
2591
|
+
var MultiSelectContext = React32.createContext(null);
|
|
2592
2592
|
function MultiSelectBase({
|
|
2593
2593
|
children,
|
|
2594
2594
|
values,
|
|
@@ -2599,12 +2599,12 @@ function MultiSelectBase({
|
|
|
2599
2599
|
error,
|
|
2600
2600
|
initialItems
|
|
2601
2601
|
}) {
|
|
2602
|
-
const [open, setOpen] =
|
|
2603
|
-
const [internalValues, setInternalValues] =
|
|
2602
|
+
const [open, setOpen] = React32.useState(false);
|
|
2603
|
+
const [internalValues, setInternalValues] = React32.useState(
|
|
2604
2604
|
new Set(values ?? defaultValues)
|
|
2605
2605
|
);
|
|
2606
2606
|
const selectedValues = values ? new Set(values) : internalValues;
|
|
2607
|
-
const [items, setItems] =
|
|
2607
|
+
const [items, setItems] = React32.useState(() => {
|
|
2608
2608
|
if (!initialItems) return /* @__PURE__ */ new Map();
|
|
2609
2609
|
if (initialItems instanceof Map) return new Map(initialItems);
|
|
2610
2610
|
return new Map(initialItems.map((it) => [it.value, it.label]));
|
|
@@ -2623,7 +2623,7 @@ function MultiSelectBase({
|
|
|
2623
2623
|
setInternalValues(getNewSet);
|
|
2624
2624
|
onValuesChange?.([...getNewSet(selectedValues)]);
|
|
2625
2625
|
}
|
|
2626
|
-
const onItemAdded =
|
|
2626
|
+
const onItemAdded = React32.useCallback((value, label) => {
|
|
2627
2627
|
setItems((prev) => {
|
|
2628
2628
|
if (prev.get(value) === label) return prev;
|
|
2629
2629
|
return new Map(prev).set(value, label);
|
|
@@ -2698,13 +2698,13 @@ function MultiSelectValueBase({
|
|
|
2698
2698
|
...props
|
|
2699
2699
|
}) {
|
|
2700
2700
|
const { selectedValues, toggleValue, items, open } = useMultiSelectContext();
|
|
2701
|
-
const [overflowAmount, setOverflowAmount] =
|
|
2702
|
-
const valueRef =
|
|
2703
|
-
const overflowRef =
|
|
2704
|
-
const mutationObserverRef =
|
|
2705
|
-
const resizeObserverRef =
|
|
2701
|
+
const [overflowAmount, setOverflowAmount] = React32.useState(0);
|
|
2702
|
+
const valueRef = React32.useRef(null);
|
|
2703
|
+
const overflowRef = React32.useRef(null);
|
|
2704
|
+
const mutationObserverRef = React32.useRef(null);
|
|
2705
|
+
const resizeObserverRef = React32.useRef(null);
|
|
2706
2706
|
const shouldWrap = overflowBehavior === "wrap" || overflowBehavior === "wrap-when-open" && open;
|
|
2707
|
-
const checkOverflow =
|
|
2707
|
+
const checkOverflow = React32.useCallback(() => {
|
|
2708
2708
|
if (valueRef.current == null) return;
|
|
2709
2709
|
const containerElement = valueRef.current;
|
|
2710
2710
|
const overflowElement = overflowRef.current;
|
|
@@ -2725,7 +2725,7 @@ function MultiSelectValueBase({
|
|
|
2725
2725
|
}
|
|
2726
2726
|
setOverflowAmount(amount);
|
|
2727
2727
|
}, []);
|
|
2728
|
-
const handleResize =
|
|
2728
|
+
const handleResize = React32.useCallback(
|
|
2729
2729
|
(node) => {
|
|
2730
2730
|
if (node == null) {
|
|
2731
2731
|
valueRef.current = null;
|
|
@@ -2876,7 +2876,7 @@ function MultiSelectItemBase({
|
|
|
2876
2876
|
}) {
|
|
2877
2877
|
const { toggleValue, selectedValues, onItemAdded } = useMultiSelectContext();
|
|
2878
2878
|
const isSelected = selectedValues.has(value);
|
|
2879
|
-
|
|
2879
|
+
React32.useEffect(() => {
|
|
2880
2880
|
onItemAdded(value, badgeLabel ?? children);
|
|
2881
2881
|
}, [value, children, onItemAdded, badgeLabel]);
|
|
2882
2882
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -2909,7 +2909,7 @@ function MultiSelectSeparatorBase(props) {
|
|
|
2909
2909
|
return /* @__PURE__ */ jsxRuntime.jsx(CommandSeparatorBase, { ...props });
|
|
2910
2910
|
}
|
|
2911
2911
|
function useMultiSelectContext() {
|
|
2912
|
-
const context =
|
|
2912
|
+
const context = React32.useContext(MultiSelectContext);
|
|
2913
2913
|
if (context == null) {
|
|
2914
2914
|
throw new Error(
|
|
2915
2915
|
"useMultiSelectContext must be used within a MultiSelectContext "
|
|
@@ -3016,7 +3016,7 @@ __toESM(require_colors2());
|
|
|
3016
3016
|
var SelectBase = SelectPrimitive__namespace.Root;
|
|
3017
3017
|
var SelectGroupBase = SelectPrimitive__namespace.Group;
|
|
3018
3018
|
var SelectValueBase = SelectPrimitive__namespace.Value;
|
|
3019
|
-
var SelectTriggerBase =
|
|
3019
|
+
var SelectTriggerBase = React32__namespace.forwardRef(({ className, children, error, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("w-full", error && "mb-0"), children: [
|
|
3020
3020
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3021
3021
|
SelectPrimitive__namespace.Trigger,
|
|
3022
3022
|
{
|
|
@@ -3033,7 +3033,7 @@ var SelectTriggerBase = React33__namespace.forwardRef(({ className, children, er
|
|
|
3033
3033
|
error ? /* @__PURE__ */ jsxRuntime.jsx(ErrorMessage_default, { error }) : null
|
|
3034
3034
|
] }));
|
|
3035
3035
|
SelectTriggerBase.displayName = SelectPrimitive__namespace.Trigger.displayName;
|
|
3036
|
-
var SelectScrollUpButtonBase =
|
|
3036
|
+
var SelectScrollUpButtonBase = React32__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
3037
3037
|
SelectPrimitive__namespace.ScrollUpButton,
|
|
3038
3038
|
{
|
|
3039
3039
|
ref,
|
|
@@ -3046,7 +3046,7 @@ var SelectScrollUpButtonBase = React33__namespace.forwardRef(({ className, ...pr
|
|
|
3046
3046
|
}
|
|
3047
3047
|
));
|
|
3048
3048
|
SelectScrollUpButtonBase.displayName = SelectPrimitive__namespace.ScrollUpButton.displayName;
|
|
3049
|
-
var SelectScrollDownButtonBase =
|
|
3049
|
+
var SelectScrollDownButtonBase = React32__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
3050
3050
|
SelectPrimitive__namespace.ScrollDownButton,
|
|
3051
3051
|
{
|
|
3052
3052
|
ref,
|
|
@@ -3059,7 +3059,7 @@ var SelectScrollDownButtonBase = React33__namespace.forwardRef(({ className, ...
|
|
|
3059
3059
|
}
|
|
3060
3060
|
));
|
|
3061
3061
|
SelectScrollDownButtonBase.displayName = SelectPrimitive__namespace.ScrollDownButton.displayName;
|
|
3062
|
-
var SelectContentBase =
|
|
3062
|
+
var SelectContentBase = React32__namespace.forwardRef(
|
|
3063
3063
|
({
|
|
3064
3064
|
className,
|
|
3065
3065
|
children,
|
|
@@ -3110,7 +3110,7 @@ var SelectContentBase = React33__namespace.forwardRef(
|
|
|
3110
3110
|
) }) })
|
|
3111
3111
|
);
|
|
3112
3112
|
SelectContentBase.displayName = SelectPrimitive__namespace.Content.displayName;
|
|
3113
|
-
var SelectLabelBase =
|
|
3113
|
+
var SelectLabelBase = React32__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
3114
3114
|
SelectPrimitive__namespace.Label,
|
|
3115
3115
|
{
|
|
3116
3116
|
ref,
|
|
@@ -3119,7 +3119,7 @@ var SelectLabelBase = React33__namespace.forwardRef(({ className, ...props }, re
|
|
|
3119
3119
|
}
|
|
3120
3120
|
));
|
|
3121
3121
|
SelectLabelBase.displayName = SelectPrimitive__namespace.Label.displayName;
|
|
3122
|
-
var SelectItemBase =
|
|
3122
|
+
var SelectItemBase = React32__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
3123
3123
|
SelectPrimitive__namespace.Item,
|
|
3124
3124
|
{
|
|
3125
3125
|
ref,
|
|
@@ -3152,7 +3152,7 @@ var SelectItemBase = React33__namespace.forwardRef(({ className, children, ...pr
|
|
|
3152
3152
|
}
|
|
3153
3153
|
));
|
|
3154
3154
|
SelectItemBase.displayName = SelectPrimitive__namespace.Item.displayName;
|
|
3155
|
-
var SelectSeparatorBase =
|
|
3155
|
+
var SelectSeparatorBase = React32__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
3156
3156
|
SelectPrimitive__namespace.Separator,
|
|
3157
3157
|
{
|
|
3158
3158
|
ref,
|
|
@@ -3161,7 +3161,7 @@ var SelectSeparatorBase = React33__namespace.forwardRef(({ className, ...props }
|
|
|
3161
3161
|
}
|
|
3162
3162
|
));
|
|
3163
3163
|
SelectSeparatorBase.displayName = SelectPrimitive__namespace.Separator.displayName;
|
|
3164
|
-
var SelectEmpty =
|
|
3164
|
+
var SelectEmpty = React32__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
3165
3165
|
"div",
|
|
3166
3166
|
{
|
|
3167
3167
|
ref,
|
|
@@ -3181,7 +3181,7 @@ var DropDownMenuGroupBase = DropdownMenuPrimitive__namespace.Group;
|
|
|
3181
3181
|
var DropDownMenuPortalBase = DropdownMenuPrimitive__namespace.Portal;
|
|
3182
3182
|
var DropDownMenuSubBase = DropdownMenuPrimitive__namespace.Sub;
|
|
3183
3183
|
var DropDownMenuRadioGroupBase = DropdownMenuPrimitive__namespace.RadioGroup;
|
|
3184
|
-
var DropDownMenuSubTriggerBase =
|
|
3184
|
+
var DropDownMenuSubTriggerBase = React32__namespace.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.SubTrigger, { ref, ...props, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3185
3185
|
framerMotion.motion.span,
|
|
3186
3186
|
{
|
|
3187
3187
|
className: cn(
|
|
@@ -3198,7 +3198,7 @@ var DropDownMenuSubTriggerBase = React33__namespace.forwardRef(({ className, ins
|
|
|
3198
3198
|
}
|
|
3199
3199
|
) }));
|
|
3200
3200
|
DropDownMenuSubTriggerBase.displayName = DropdownMenuPrimitive__namespace.SubTrigger.displayName;
|
|
3201
|
-
var DropDownMenuSubContentBase =
|
|
3201
|
+
var DropDownMenuSubContentBase = React32__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
3202
3202
|
DropdownMenuPrimitive__namespace.SubContent,
|
|
3203
3203
|
{
|
|
3204
3204
|
ref,
|
|
@@ -3209,7 +3209,7 @@ var DropDownMenuSubContentBase = React33__namespace.forwardRef(({ className, ...
|
|
|
3209
3209
|
...props
|
|
3210
3210
|
}
|
|
3211
3211
|
));
|
|
3212
|
-
var DropDownMenuContentBase =
|
|
3212
|
+
var DropDownMenuContentBase = React32__namespace.forwardRef(
|
|
3213
3213
|
({
|
|
3214
3214
|
className,
|
|
3215
3215
|
sideOffset = 4,
|
|
@@ -3242,7 +3242,7 @@ var DropDownMenuContentBase = React33__namespace.forwardRef(
|
|
|
3242
3242
|
) })
|
|
3243
3243
|
);
|
|
3244
3244
|
DropDownMenuContentBase.displayName = DropdownMenuPrimitive__namespace.Content.displayName;
|
|
3245
|
-
var DropDownMenuItemBase =
|
|
3245
|
+
var DropDownMenuItemBase = React32__namespace.forwardRef(({ className, inset, rightIcon, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3246
3246
|
DropdownMenuPrimitive__namespace.Item,
|
|
3247
3247
|
{
|
|
3248
3248
|
ref,
|
|
@@ -3259,7 +3259,7 @@ var DropDownMenuItemBase = React33__namespace.forwardRef(({ className, inset, ri
|
|
|
3259
3259
|
}
|
|
3260
3260
|
));
|
|
3261
3261
|
DropDownMenuItemBase.displayName = DropdownMenuPrimitive__namespace.Item.displayName;
|
|
3262
|
-
var DropDownMenuCheckboxItemBase =
|
|
3262
|
+
var DropDownMenuCheckboxItemBase = React32__namespace.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3263
3263
|
DropdownMenuPrimitive__namespace.CheckboxItem,
|
|
3264
3264
|
{
|
|
3265
3265
|
ref,
|
|
@@ -3276,7 +3276,7 @@ var DropDownMenuCheckboxItemBase = React33__namespace.forwardRef(({ className, c
|
|
|
3276
3276
|
}
|
|
3277
3277
|
));
|
|
3278
3278
|
DropDownMenuCheckboxItemBase.displayName = DropdownMenuPrimitive__namespace.CheckboxItem.displayName;
|
|
3279
|
-
var DropDownMenuRadioItemBase =
|
|
3279
|
+
var DropDownMenuRadioItemBase = React32__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3280
3280
|
DropdownMenuPrimitive__namespace.RadioItem,
|
|
3281
3281
|
{
|
|
3282
3282
|
ref,
|
|
@@ -3292,7 +3292,7 @@ var DropDownMenuRadioItemBase = React33__namespace.forwardRef(({ className, chil
|
|
|
3292
3292
|
}
|
|
3293
3293
|
));
|
|
3294
3294
|
DropDownMenuRadioItemBase.displayName = DropdownMenuPrimitive__namespace.RadioItem.displayName;
|
|
3295
|
-
var DropDownMenuLabelBase =
|
|
3295
|
+
var DropDownMenuLabelBase = React32__namespace.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
3296
3296
|
DropdownMenuPrimitive__namespace.Label,
|
|
3297
3297
|
{
|
|
3298
3298
|
ref,
|
|
@@ -3305,7 +3305,7 @@ var DropDownMenuLabelBase = React33__namespace.forwardRef(({ className, inset, .
|
|
|
3305
3305
|
}
|
|
3306
3306
|
));
|
|
3307
3307
|
DropDownMenuLabelBase.displayName = DropdownMenuPrimitive__namespace.Label.displayName;
|
|
3308
|
-
var DropDownMenuSeparatorBase =
|
|
3308
|
+
var DropDownMenuSeparatorBase = React32__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
3309
3309
|
DropdownMenuPrimitive__namespace.Separator,
|
|
3310
3310
|
{
|
|
3311
3311
|
ref,
|
|
@@ -3331,15 +3331,15 @@ var initialState = {
|
|
|
3331
3331
|
theme: "system",
|
|
3332
3332
|
setTheme: () => null
|
|
3333
3333
|
};
|
|
3334
|
-
var ThemeProviderContext =
|
|
3334
|
+
var ThemeProviderContext = React32.createContext(initialState);
|
|
3335
3335
|
function ThemeProviderBase({
|
|
3336
3336
|
children,
|
|
3337
3337
|
defaultTheme = "system",
|
|
3338
3338
|
storageKey = "app-ui-theme",
|
|
3339
3339
|
...props
|
|
3340
3340
|
}) {
|
|
3341
|
-
const [theme, setThemeState] =
|
|
3342
|
-
|
|
3341
|
+
const [theme, setThemeState] = React32.useState(defaultTheme);
|
|
3342
|
+
React32.useEffect(() => {
|
|
3343
3343
|
const root = window.document.documentElement;
|
|
3344
3344
|
root.classList.remove(
|
|
3345
3345
|
"light",
|
|
@@ -3365,7 +3365,7 @@ function ThemeProviderBase({
|
|
|
3365
3365
|
document.body.style.color = "";
|
|
3366
3366
|
}
|
|
3367
3367
|
}, [theme]);
|
|
3368
|
-
|
|
3368
|
+
React32.useEffect(() => {
|
|
3369
3369
|
const stored = localStorage.getItem(storageKey);
|
|
3370
3370
|
if (stored) setThemeState(stored);
|
|
3371
3371
|
}, [storageKey]);
|
|
@@ -3379,7 +3379,7 @@ function ThemeProviderBase({
|
|
|
3379
3379
|
return /* @__PURE__ */ jsxRuntime.jsx(ThemeProviderContext.Provider, { ...props, value, children });
|
|
3380
3380
|
}
|
|
3381
3381
|
var useTheme = () => {
|
|
3382
|
-
const context =
|
|
3382
|
+
const context = React32.useContext(ThemeProviderContext);
|
|
3383
3383
|
if (context === void 0)
|
|
3384
3384
|
throw new Error("useTheme must be used within a ThemeProvider");
|
|
3385
3385
|
return context;
|
|
@@ -3427,10 +3427,10 @@ function ModeToggleBase({
|
|
|
3427
3427
|
className,
|
|
3428
3428
|
variant = "ghost"
|
|
3429
3429
|
}) {
|
|
3430
|
-
const [mounted, setMounted] =
|
|
3430
|
+
const [mounted, setMounted] = React32.useState(false);
|
|
3431
3431
|
const { setTheme, theme: currentTheme } = useTheme();
|
|
3432
|
-
const buttonRef =
|
|
3433
|
-
|
|
3432
|
+
const buttonRef = React32.useRef(null);
|
|
3433
|
+
React32.useEffect(() => {
|
|
3434
3434
|
setMounted(true);
|
|
3435
3435
|
}, []);
|
|
3436
3436
|
const isDark = mounted && (currentTheme?.includes("dark") || currentTheme === "system" && typeof window !== "undefined" && window.matchMedia("(prefers-color-scheme: dark)").matches);
|
|
@@ -3529,7 +3529,7 @@ function ModeToggleBase({
|
|
|
3529
3529
|
)
|
|
3530
3530
|
] });
|
|
3531
3531
|
}
|
|
3532
|
-
var AvatarBase =
|
|
3532
|
+
var AvatarBase = React32__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
3533
3533
|
AvatarPrimitive__namespace.Root,
|
|
3534
3534
|
{
|
|
3535
3535
|
ref,
|
|
@@ -3541,7 +3541,7 @@ var AvatarBase = React33__namespace.forwardRef(({ className, ...props }, ref) =>
|
|
|
3541
3541
|
}
|
|
3542
3542
|
));
|
|
3543
3543
|
AvatarBase.displayName = AvatarPrimitive__namespace.Root.displayName;
|
|
3544
|
-
var AvatarImageBase =
|
|
3544
|
+
var AvatarImageBase = React32__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
3545
3545
|
AvatarPrimitive__namespace.Image,
|
|
3546
3546
|
{
|
|
3547
3547
|
ref,
|
|
@@ -3550,7 +3550,7 @@ var AvatarImageBase = React33__namespace.forwardRef(({ className, ...props }, re
|
|
|
3550
3550
|
}
|
|
3551
3551
|
));
|
|
3552
3552
|
AvatarImageBase.displayName = AvatarPrimitive__namespace.Image.displayName;
|
|
3553
|
-
var AvatarFallbackBase =
|
|
3553
|
+
var AvatarFallbackBase = React32__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
3554
3554
|
AvatarPrimitive__namespace.Fallback,
|
|
3555
3555
|
{
|
|
3556
3556
|
ref,
|
|
@@ -3616,7 +3616,7 @@ function CalendarBase({
|
|
|
3616
3616
|
);
|
|
3617
3617
|
}
|
|
3618
3618
|
CalendarBase.displayName = "Calendar";
|
|
3619
|
-
var CardBase =
|
|
3619
|
+
var CardBase = React32__namespace.forwardRef(({ className, testid: dataTestId = "card-base", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
3620
3620
|
"div",
|
|
3621
3621
|
{
|
|
3622
3622
|
ref,
|
|
@@ -3629,7 +3629,7 @@ var CardBase = React33__namespace.forwardRef(({ className, testid: dataTestId =
|
|
|
3629
3629
|
}
|
|
3630
3630
|
));
|
|
3631
3631
|
CardBase.displayName = "Card";
|
|
3632
|
-
var CardHeaderBase =
|
|
3632
|
+
var CardHeaderBase = React32__namespace.forwardRef(({ className, testid: dataTestId = "card-header", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
3633
3633
|
"div",
|
|
3634
3634
|
{
|
|
3635
3635
|
ref,
|
|
@@ -3639,7 +3639,7 @@ var CardHeaderBase = React33__namespace.forwardRef(({ className, testid: dataTes
|
|
|
3639
3639
|
}
|
|
3640
3640
|
));
|
|
3641
3641
|
CardHeaderBase.displayName = "CardHeader";
|
|
3642
|
-
var CardTitleBase =
|
|
3642
|
+
var CardTitleBase = React32__namespace.forwardRef(({ className, testid: dataTestId = "card-title", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
3643
3643
|
"div",
|
|
3644
3644
|
{
|
|
3645
3645
|
ref,
|
|
@@ -3649,7 +3649,7 @@ var CardTitleBase = React33__namespace.forwardRef(({ className, testid: dataTest
|
|
|
3649
3649
|
}
|
|
3650
3650
|
));
|
|
3651
3651
|
CardTitleBase.displayName = "CardTitle";
|
|
3652
|
-
var CardDescriptionBase =
|
|
3652
|
+
var CardDescriptionBase = React32__namespace.forwardRef(({ className, testid: dataTestId = "card-description", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
3653
3653
|
"div",
|
|
3654
3654
|
{
|
|
3655
3655
|
ref,
|
|
@@ -3659,7 +3659,7 @@ var CardDescriptionBase = React33__namespace.forwardRef(({ className, testid: da
|
|
|
3659
3659
|
}
|
|
3660
3660
|
));
|
|
3661
3661
|
CardDescriptionBase.displayName = "CardDescription";
|
|
3662
|
-
var CardContentBase =
|
|
3662
|
+
var CardContentBase = React32__namespace.forwardRef(({ className, testid: dataTestId = "card-content", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
3663
3663
|
"div",
|
|
3664
3664
|
{
|
|
3665
3665
|
ref,
|
|
@@ -3669,7 +3669,7 @@ var CardContentBase = React33__namespace.forwardRef(({ className, testid: dataTe
|
|
|
3669
3669
|
}
|
|
3670
3670
|
));
|
|
3671
3671
|
CardContentBase.displayName = "CardContent";
|
|
3672
|
-
var CardFooterBase =
|
|
3672
|
+
var CardFooterBase = React32__namespace.forwardRef(({ className, testid: dataTestId = "card-footer", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
3673
3673
|
"div",
|
|
3674
3674
|
{
|
|
3675
3675
|
ref,
|
|
@@ -3742,7 +3742,7 @@ var createImagePreview = (file) => {
|
|
|
3742
3742
|
reader.readAsDataURL(file);
|
|
3743
3743
|
});
|
|
3744
3744
|
};
|
|
3745
|
-
var FileUploader =
|
|
3745
|
+
var FileUploader = React32__namespace.forwardRef(
|
|
3746
3746
|
({
|
|
3747
3747
|
className,
|
|
3748
3748
|
accept,
|
|
@@ -3758,15 +3758,15 @@ var FileUploader = React33__namespace.forwardRef(
|
|
|
3758
3758
|
animate: animate2 = true,
|
|
3759
3759
|
...props
|
|
3760
3760
|
}, ref) => {
|
|
3761
|
-
const [isDragging, setIsDragging] =
|
|
3762
|
-
const [files, setFiles] =
|
|
3763
|
-
const inputRef =
|
|
3764
|
-
const dragCounterRef =
|
|
3761
|
+
const [isDragging, setIsDragging] = React32__namespace.useState(false);
|
|
3762
|
+
const [files, setFiles] = React32__namespace.useState(value);
|
|
3763
|
+
const inputRef = React32__namespace.useRef(null);
|
|
3764
|
+
const dragCounterRef = React32__namespace.useRef(0);
|
|
3765
3765
|
const multiple = maxFiles > 1;
|
|
3766
|
-
|
|
3766
|
+
React32__namespace.useEffect(() => {
|
|
3767
3767
|
setFiles(value);
|
|
3768
3768
|
}, [value]);
|
|
3769
|
-
|
|
3769
|
+
React32__namespace.useEffect(() => {
|
|
3770
3770
|
return () => {
|
|
3771
3771
|
files.forEach((file) => {
|
|
3772
3772
|
if (file.preview) {
|
|
@@ -4114,12 +4114,12 @@ var FileUploader = React33__namespace.forwardRef(
|
|
|
4114
4114
|
}
|
|
4115
4115
|
);
|
|
4116
4116
|
FileUploader.displayName = "FileUploader";
|
|
4117
|
-
var CheckboxBase =
|
|
4117
|
+
var CheckboxBase = React32__namespace.forwardRef(({ className, testid: dataTestId = "checkbox-base", checked: checkedProp, defaultChecked, onCheckedChange, ...props }, ref) => {
|
|
4118
4118
|
const isControlled = checkedProp !== void 0;
|
|
4119
|
-
const [checkedState, setCheckedState] =
|
|
4119
|
+
const [checkedState, setCheckedState] = React32__namespace.useState(
|
|
4120
4120
|
isControlled ? checkedProp : defaultChecked ?? false
|
|
4121
4121
|
);
|
|
4122
|
-
|
|
4122
|
+
React32__namespace.useEffect(() => {
|
|
4123
4123
|
if (isControlled) setCheckedState(checkedProp);
|
|
4124
4124
|
}, [checkedProp, isControlled]);
|
|
4125
4125
|
const handleCheckedChange = (next) => {
|
|
@@ -4159,11 +4159,11 @@ var CheckboxBase = React33__namespace.forwardRef(({ className, testid: dataTestI
|
|
|
4159
4159
|
);
|
|
4160
4160
|
});
|
|
4161
4161
|
CheckboxBase.displayName = CheckboxPrimitive__namespace.Root.displayName;
|
|
4162
|
-
var CollapsibleBase =
|
|
4162
|
+
var CollapsibleBase = React32__namespace.forwardRef(({ ...props }, ref) => {
|
|
4163
4163
|
return /* @__PURE__ */ jsxRuntime.jsx(CollapsiblePrimitive__namespace.Root, { ref, "data-slot": "collapsible", ...props });
|
|
4164
4164
|
});
|
|
4165
4165
|
CollapsibleBase.displayName = CollapsiblePrimitive__namespace.Root.displayName;
|
|
4166
|
-
var CollapsibleTriggerBase =
|
|
4166
|
+
var CollapsibleTriggerBase = React32__namespace.forwardRef(({ className, children, leftIcon, showCaret = true, ...props }, ref) => {
|
|
4167
4167
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
4168
4168
|
CollapsiblePrimitive__namespace.CollapsibleTrigger,
|
|
4169
4169
|
{
|
|
@@ -4185,7 +4185,7 @@ var CollapsibleTriggerBase = React33__namespace.forwardRef(({ className, childre
|
|
|
4185
4185
|
);
|
|
4186
4186
|
});
|
|
4187
4187
|
CollapsibleTriggerBase.displayName = CollapsiblePrimitive__namespace.CollapsibleTrigger.displayName;
|
|
4188
|
-
var CollapsibleContentBase =
|
|
4188
|
+
var CollapsibleContentBase = React32__namespace.forwardRef(({ className, children, ...props }, ref) => {
|
|
4189
4189
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
4190
4190
|
CollapsiblePrimitive__namespace.CollapsibleContent,
|
|
4191
4191
|
{
|
|
@@ -4207,7 +4207,7 @@ function HoverCardBase(props) {
|
|
|
4207
4207
|
function HoverCardTriggerBase(props) {
|
|
4208
4208
|
return /* @__PURE__ */ jsxRuntime.jsx(HoverCardPrimitive__namespace.Trigger, { ...props });
|
|
4209
4209
|
}
|
|
4210
|
-
var HoverCardContentBase =
|
|
4210
|
+
var HoverCardContentBase = React32__namespace.forwardRef(
|
|
4211
4211
|
({ className, align = "center", sideOffset = 6, children, ...props }, ref) => {
|
|
4212
4212
|
return /* @__PURE__ */ jsxRuntime.jsx(HoverCardPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
4213
4213
|
HoverCardPrimitive__namespace.Content,
|
|
@@ -4284,7 +4284,7 @@ function InputOTPSlotBase({
|
|
|
4284
4284
|
className,
|
|
4285
4285
|
...props
|
|
4286
4286
|
}) {
|
|
4287
|
-
const inputOTPContext =
|
|
4287
|
+
const inputOTPContext = React32__namespace.useContext(inputOtp.OTPInputContext);
|
|
4288
4288
|
const { char, hasFakeCaret, isActive } = inputOTPContext?.slots[index] ?? {};
|
|
4289
4289
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
4290
4290
|
"div",
|
|
@@ -4306,7 +4306,7 @@ function InputOTPSlotBase({
|
|
|
4306
4306
|
function InputOTPSeparatorBase({ ...props }) {
|
|
4307
4307
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { "data-slot": "input-otp-separator", role: "separator", ...props, children: /* @__PURE__ */ jsxRuntime.jsx(react.MinusIcon, {}) });
|
|
4308
4308
|
}
|
|
4309
|
-
var SlideBase =
|
|
4309
|
+
var SlideBase = React32__namespace.forwardRef(
|
|
4310
4310
|
({
|
|
4311
4311
|
className,
|
|
4312
4312
|
orientation = "horizontal",
|
|
@@ -4384,7 +4384,7 @@ var SlideBase = React33__namespace.forwardRef(
|
|
|
4384
4384
|
}
|
|
4385
4385
|
);
|
|
4386
4386
|
SlideBase.displayName = "SlideBase";
|
|
4387
|
-
var EditButton =
|
|
4387
|
+
var EditButton = React32__namespace.forwardRef(
|
|
4388
4388
|
({
|
|
4389
4389
|
disabled,
|
|
4390
4390
|
onClick,
|
|
@@ -4424,7 +4424,7 @@ var EditButton = React33__namespace.forwardRef(
|
|
|
4424
4424
|
)
|
|
4425
4425
|
);
|
|
4426
4426
|
EditButton.displayName = "EditButton";
|
|
4427
|
-
var ChangeButton =
|
|
4427
|
+
var ChangeButton = React32__namespace.forwardRef(
|
|
4428
4428
|
({
|
|
4429
4429
|
disabled,
|
|
4430
4430
|
onClick,
|
|
@@ -4464,7 +4464,7 @@ var ChangeButton = React33__namespace.forwardRef(
|
|
|
4464
4464
|
)
|
|
4465
4465
|
);
|
|
4466
4466
|
ChangeButton.displayName = "ChangeButton";
|
|
4467
|
-
var SaveButton =
|
|
4467
|
+
var SaveButton = React32__namespace.forwardRef(
|
|
4468
4468
|
({
|
|
4469
4469
|
disabled,
|
|
4470
4470
|
onClick,
|
|
@@ -4504,7 +4504,7 @@ var SaveButton = React33__namespace.forwardRef(
|
|
|
4504
4504
|
)
|
|
4505
4505
|
);
|
|
4506
4506
|
SaveButton.displayName = "SaveButton";
|
|
4507
|
-
var AddButton =
|
|
4507
|
+
var AddButton = React32__namespace.forwardRef(
|
|
4508
4508
|
({
|
|
4509
4509
|
disabled,
|
|
4510
4510
|
onClick,
|
|
@@ -4544,7 +4544,7 @@ var AddButton = React33__namespace.forwardRef(
|
|
|
4544
4544
|
)
|
|
4545
4545
|
);
|
|
4546
4546
|
AddButton.displayName = "AddButton";
|
|
4547
|
-
var CloseButton =
|
|
4547
|
+
var CloseButton = React32__namespace.forwardRef(
|
|
4548
4548
|
({
|
|
4549
4549
|
disabled,
|
|
4550
4550
|
onClick,
|
|
@@ -5082,7 +5082,7 @@ var LockButton = ({
|
|
|
5082
5082
|
}
|
|
5083
5083
|
);
|
|
5084
5084
|
var UnlockButton = (props) => /* @__PURE__ */ jsxRuntime.jsx(LockButton, { isLocked: false, testid: "button-unlock", ...props });
|
|
5085
|
-
var SwitchBase =
|
|
5085
|
+
var SwitchBase = React32__namespace.forwardRef(({ className, testid: dataTestId = "switch-base", ...props }, ref) => {
|
|
5086
5086
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
5087
5087
|
SwitchPrimitives__namespace.Root,
|
|
5088
5088
|
{
|
|
@@ -5109,14 +5109,14 @@ var SwitchBase = React33__namespace.forwardRef(({ className, testid: dataTestId
|
|
|
5109
5109
|
);
|
|
5110
5110
|
});
|
|
5111
5111
|
SwitchBase.displayName = SwitchPrimitives__namespace.Root.displayName;
|
|
5112
|
-
var TextAreaBase =
|
|
5112
|
+
var TextAreaBase = React32__namespace.forwardRef(
|
|
5113
5113
|
({ className, hideClear = false, onClear, ...props }, ref) => {
|
|
5114
|
-
const [isFocused, setIsFocused] =
|
|
5115
|
-
const [hasContent, setHasContent] =
|
|
5114
|
+
const [isFocused, setIsFocused] = React32__namespace.useState(false);
|
|
5115
|
+
const [hasContent, setHasContent] = React32__namespace.useState(
|
|
5116
5116
|
!!props.value || !!props.defaultValue
|
|
5117
5117
|
);
|
|
5118
|
-
const [showConfirmTooltip, setShowConfirmTooltip] =
|
|
5119
|
-
const textareaRef =
|
|
5118
|
+
const [showConfirmTooltip, setShowConfirmTooltip] = React32__namespace.useState(false);
|
|
5119
|
+
const textareaRef = React32__namespace.useRef(null);
|
|
5120
5120
|
const handleFocus = (e) => {
|
|
5121
5121
|
setIsFocused(true);
|
|
5122
5122
|
props.onFocus?.(e);
|
|
@@ -5152,8 +5152,8 @@ var TextAreaBase = React33__namespace.forwardRef(
|
|
|
5152
5152
|
const handleCancelClear = () => {
|
|
5153
5153
|
setShowConfirmTooltip(false);
|
|
5154
5154
|
};
|
|
5155
|
-
|
|
5156
|
-
|
|
5155
|
+
React32__namespace.useImperativeHandle(ref, () => textareaRef.current);
|
|
5156
|
+
React32__namespace.useEffect(() => {
|
|
5157
5157
|
setHasContent(!!props.value || !!props.defaultValue);
|
|
5158
5158
|
}, [props.value, props.defaultValue]);
|
|
5159
5159
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative", children: [
|
|
@@ -5278,7 +5278,7 @@ var TextAreaBase = React33__namespace.forwardRef(
|
|
|
5278
5278
|
}
|
|
5279
5279
|
);
|
|
5280
5280
|
TextAreaBase.displayName = "TextAreaBase";
|
|
5281
|
-
var ScrollAreaBase =
|
|
5281
|
+
var ScrollAreaBase = React32__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
5282
5282
|
ScrollAreaPrimitive__namespace.Root,
|
|
5283
5283
|
{
|
|
5284
5284
|
ref,
|
|
@@ -5292,7 +5292,7 @@ var ScrollAreaBase = React33__namespace.forwardRef(({ className, children, ...pr
|
|
|
5292
5292
|
}
|
|
5293
5293
|
));
|
|
5294
5294
|
ScrollAreaBase.displayName = ScrollAreaPrimitive__namespace.Root.displayName;
|
|
5295
|
-
var ScrollBarBase =
|
|
5295
|
+
var ScrollBarBase = React32__namespace.forwardRef(({ className, orientation = "vertical", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
5296
5296
|
ScrollAreaPrimitive__namespace.ScrollAreaScrollbar,
|
|
5297
5297
|
{
|
|
5298
5298
|
ref,
|
|
@@ -5308,7 +5308,7 @@ var ScrollBarBase = React33__namespace.forwardRef(({ className, orientation = "v
|
|
|
5308
5308
|
}
|
|
5309
5309
|
));
|
|
5310
5310
|
ScrollBarBase.displayName = ScrollAreaPrimitive__namespace.ScrollAreaScrollbar.displayName;
|
|
5311
|
-
var SeparatorBase =
|
|
5311
|
+
var SeparatorBase = React32__namespace.forwardRef(
|
|
5312
5312
|
({ className, orientation = "horizontal", decorative = true, ...props }, ref) => {
|
|
5313
5313
|
const isHorizontal = orientation === "horizontal";
|
|
5314
5314
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -5340,7 +5340,7 @@ var SeparatorBase = React33__namespace.forwardRef(
|
|
|
5340
5340
|
}
|
|
5341
5341
|
);
|
|
5342
5342
|
SeparatorBase.displayName = SeparatorPrimitive__namespace.Root.displayName;
|
|
5343
|
-
var TableBase =
|
|
5343
|
+
var TableBase = React32__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: "relative w-full overflow-auto", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
5344
5344
|
"table",
|
|
5345
5345
|
{
|
|
5346
5346
|
ref,
|
|
@@ -5349,9 +5349,9 @@ var TableBase = React33__namespace.forwardRef(({ className, ...props }, ref) =>
|
|
|
5349
5349
|
}
|
|
5350
5350
|
) }));
|
|
5351
5351
|
TableBase.displayName = "TableBase";
|
|
5352
|
-
var TableHeaderBase =
|
|
5352
|
+
var TableHeaderBase = React32__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("thead", { ref, className: cn("[&_tr]:border-b", className), ...props }));
|
|
5353
5353
|
TableHeaderBase.displayName = "TableHeaderBase";
|
|
5354
|
-
var TableBodyBase =
|
|
5354
|
+
var TableBodyBase = React32__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
5355
5355
|
"tbody",
|
|
5356
5356
|
{
|
|
5357
5357
|
ref,
|
|
@@ -5360,7 +5360,7 @@ var TableBodyBase = React33__namespace.forwardRef(({ className, ...props }, ref)
|
|
|
5360
5360
|
}
|
|
5361
5361
|
));
|
|
5362
5362
|
TableBodyBase.displayName = "TableBodyBase";
|
|
5363
|
-
var TableFooterBase =
|
|
5363
|
+
var TableFooterBase = React32__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
5364
5364
|
"tfoot",
|
|
5365
5365
|
{
|
|
5366
5366
|
ref,
|
|
@@ -5372,7 +5372,7 @@ var TableFooterBase = React33__namespace.forwardRef(({ className, ...props }, re
|
|
|
5372
5372
|
}
|
|
5373
5373
|
));
|
|
5374
5374
|
TableFooterBase.displayName = "TableFooterBase";
|
|
5375
|
-
var TableRowBase =
|
|
5375
|
+
var TableRowBase = React32__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
5376
5376
|
"tr",
|
|
5377
5377
|
{
|
|
5378
5378
|
ref,
|
|
@@ -5384,7 +5384,7 @@ var TableRowBase = React33__namespace.forwardRef(({ className, ...props }, ref)
|
|
|
5384
5384
|
}
|
|
5385
5385
|
));
|
|
5386
5386
|
TableRowBase.displayName = "TableRowBase";
|
|
5387
|
-
var TableHeadBase =
|
|
5387
|
+
var TableHeadBase = React32__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
5388
5388
|
"th",
|
|
5389
5389
|
{
|
|
5390
5390
|
ref,
|
|
@@ -5396,7 +5396,7 @@ var TableHeadBase = React33__namespace.forwardRef(({ className, ...props }, ref)
|
|
|
5396
5396
|
}
|
|
5397
5397
|
));
|
|
5398
5398
|
TableHeadBase.displayName = "TableHeadBase";
|
|
5399
|
-
var TableCellBase =
|
|
5399
|
+
var TableCellBase = React32__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
5400
5400
|
"td",
|
|
5401
5401
|
{
|
|
5402
5402
|
ref,
|
|
@@ -5408,7 +5408,7 @@ var TableCellBase = React33__namespace.forwardRef(({ className, ...props }, ref)
|
|
|
5408
5408
|
}
|
|
5409
5409
|
));
|
|
5410
5410
|
TableCellBase.displayName = "TableCellBase";
|
|
5411
|
-
var TableCaptionBase =
|
|
5411
|
+
var TableCaptionBase = React32__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
5412
5412
|
"caption",
|
|
5413
5413
|
{
|
|
5414
5414
|
ref,
|
|
@@ -5417,7 +5417,7 @@ var TableCaptionBase = React33__namespace.forwardRef(({ className, ...props }, r
|
|
|
5417
5417
|
}
|
|
5418
5418
|
));
|
|
5419
5419
|
TableCaptionBase.displayName = "TableCaptionBase";
|
|
5420
|
-
var TabsBase =
|
|
5420
|
+
var TabsBase = React32__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
5421
5421
|
TabsPrimitive__namespace.Root,
|
|
5422
5422
|
{
|
|
5423
5423
|
ref,
|
|
@@ -5426,7 +5426,7 @@ var TabsBase = React33__namespace.forwardRef(({ className, ...props }, ref) => /
|
|
|
5426
5426
|
}
|
|
5427
5427
|
));
|
|
5428
5428
|
TabsBase.displayName = TabsPrimitive__namespace.Root.displayName;
|
|
5429
|
-
var TabsListBase =
|
|
5429
|
+
var TabsListBase = React32__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
5430
5430
|
TabsPrimitive__namespace.List,
|
|
5431
5431
|
{
|
|
5432
5432
|
ref,
|
|
@@ -5446,7 +5446,7 @@ var TabsListBase = React33__namespace.forwardRef(({ className, ...props }, ref)
|
|
|
5446
5446
|
}
|
|
5447
5447
|
));
|
|
5448
5448
|
TabsListBase.displayName = TabsPrimitive__namespace.List.displayName;
|
|
5449
|
-
var TabsTriggerBase =
|
|
5449
|
+
var TabsTriggerBase = React32__namespace.forwardRef(({ className, animation = "default", ...props }, ref) => {
|
|
5450
5450
|
const base = cn(
|
|
5451
5451
|
"relative inline-flex items-center justify-center whitespace-nowrap px-4 py-2 text-sm font-medium",
|
|
5452
5452
|
"text-muted-foreground hover:text-foreground",
|
|
@@ -5466,7 +5466,7 @@ var TabsTriggerBase = React33__namespace.forwardRef(({ className, animation = "d
|
|
|
5466
5466
|
}
|
|
5467
5467
|
);
|
|
5468
5468
|
});
|
|
5469
|
-
var TabsContentBase =
|
|
5469
|
+
var TabsContentBase = React32__namespace.forwardRef(({ className, animation = "default", ...props }, ref) => {
|
|
5470
5470
|
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";
|
|
5471
5471
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
5472
5472
|
TabsPrimitive__namespace.Content,
|
|
@@ -5718,7 +5718,7 @@ var SheetBase = DialogPrimitive__namespace.Root;
|
|
|
5718
5718
|
var SheetTriggerBase = DialogPrimitive__namespace.Trigger;
|
|
5719
5719
|
var SheetCloseBase = DialogPrimitive__namespace.Close;
|
|
5720
5720
|
var SheetPortalBase = DialogPrimitive__namespace.Portal;
|
|
5721
|
-
var SheetOverlayBase =
|
|
5721
|
+
var SheetOverlayBase = React32__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
5722
5722
|
DialogPrimitive__namespace.Overlay,
|
|
5723
5723
|
{
|
|
5724
5724
|
className: cn(
|
|
@@ -5746,7 +5746,7 @@ var sheetVariants = classVarianceAuthority.cva(
|
|
|
5746
5746
|
}
|
|
5747
5747
|
}
|
|
5748
5748
|
);
|
|
5749
|
-
var SheetContentBase =
|
|
5749
|
+
var SheetContentBase = React32__namespace.forwardRef(({ side = "right", className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(SheetPortalBase, { children: [
|
|
5750
5750
|
/* @__PURE__ */ jsxRuntime.jsx(SheetOverlayBase, {}),
|
|
5751
5751
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
5752
5752
|
DialogPrimitive__namespace.Content,
|
|
@@ -5793,7 +5793,7 @@ var SheetFooterBase = ({
|
|
|
5793
5793
|
}
|
|
5794
5794
|
);
|
|
5795
5795
|
SheetFooterBase.displayName = "SheetFooterBase";
|
|
5796
|
-
var SheetTitleBase =
|
|
5796
|
+
var SheetTitleBase = React32__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
5797
5797
|
DialogPrimitive__namespace.Title,
|
|
5798
5798
|
{
|
|
5799
5799
|
ref,
|
|
@@ -5802,7 +5802,7 @@ var SheetTitleBase = React33__namespace.forwardRef(({ className, ...props }, ref
|
|
|
5802
5802
|
}
|
|
5803
5803
|
));
|
|
5804
5804
|
SheetTitleBase.displayName = DialogPrimitive__namespace.Title.displayName;
|
|
5805
|
-
var SheetDescriptionBase =
|
|
5805
|
+
var SheetDescriptionBase = React32__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
5806
5806
|
DialogPrimitive__namespace.Description,
|
|
5807
5807
|
{
|
|
5808
5808
|
ref,
|
|
@@ -5817,9 +5817,9 @@ var SIDEBAR_WIDTH = "16rem";
|
|
|
5817
5817
|
var SIDEBAR_WIDTH_MOBILE = "18rem";
|
|
5818
5818
|
var SIDEBAR_WIDTH_ICON = "3rem";
|
|
5819
5819
|
var SIDEBAR_KEYBOARD_SHORTCUT = "b";
|
|
5820
|
-
var SidebarContext =
|
|
5820
|
+
var SidebarContext = React32__namespace.createContext(null);
|
|
5821
5821
|
function UseSideBarBase() {
|
|
5822
|
-
const context =
|
|
5822
|
+
const context = React32__namespace.useContext(SidebarContext);
|
|
5823
5823
|
if (!context) {
|
|
5824
5824
|
throw new Error(
|
|
5825
5825
|
"UseSideBarBase must be used within a SidebarProviderBase."
|
|
@@ -5827,7 +5827,7 @@ function UseSideBarBase() {
|
|
|
5827
5827
|
}
|
|
5828
5828
|
return context;
|
|
5829
5829
|
}
|
|
5830
|
-
var SidebarProviderBase =
|
|
5830
|
+
var SidebarProviderBase = React32__namespace.forwardRef(
|
|
5831
5831
|
({
|
|
5832
5832
|
defaultOpen = true,
|
|
5833
5833
|
open: openProp,
|
|
@@ -5838,10 +5838,10 @@ var SidebarProviderBase = React33__namespace.forwardRef(
|
|
|
5838
5838
|
...props
|
|
5839
5839
|
}, ref) => {
|
|
5840
5840
|
const isMobile = useIsMobile();
|
|
5841
|
-
const [openMobile, setOpenMobile] =
|
|
5842
|
-
const [_open, _setOpen] =
|
|
5841
|
+
const [openMobile, setOpenMobile] = React32__namespace.useState(false);
|
|
5842
|
+
const [_open, _setOpen] = React32__namespace.useState(defaultOpen);
|
|
5843
5843
|
const open = openProp ?? _open;
|
|
5844
|
-
const setOpen =
|
|
5844
|
+
const setOpen = React32__namespace.useCallback(
|
|
5845
5845
|
(value) => {
|
|
5846
5846
|
const openState = typeof value === "function" ? value(open) : value;
|
|
5847
5847
|
if (setOpenProp) {
|
|
@@ -5853,10 +5853,10 @@ var SidebarProviderBase = React33__namespace.forwardRef(
|
|
|
5853
5853
|
},
|
|
5854
5854
|
[setOpenProp, open]
|
|
5855
5855
|
);
|
|
5856
|
-
const toggleSidebar =
|
|
5856
|
+
const toggleSidebar = React32__namespace.useCallback(() => {
|
|
5857
5857
|
return isMobile ? setOpenMobile((open2) => !open2) : setOpen((open2) => !open2);
|
|
5858
5858
|
}, [isMobile, setOpen, setOpenMobile]);
|
|
5859
|
-
|
|
5859
|
+
React32__namespace.useEffect(() => {
|
|
5860
5860
|
const handleKeyDown = (event) => {
|
|
5861
5861
|
if (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {
|
|
5862
5862
|
event.preventDefault();
|
|
@@ -5867,7 +5867,7 @@ var SidebarProviderBase = React33__namespace.forwardRef(
|
|
|
5867
5867
|
return () => window.removeEventListener("keydown", handleKeyDown);
|
|
5868
5868
|
}, [toggleSidebar]);
|
|
5869
5869
|
const state = open ? "expanded" : "collapsed";
|
|
5870
|
-
const contextValue =
|
|
5870
|
+
const contextValue = React32__namespace.useMemo(
|
|
5871
5871
|
() => ({
|
|
5872
5872
|
state,
|
|
5873
5873
|
open,
|
|
@@ -5899,7 +5899,7 @@ var SidebarProviderBase = React33__namespace.forwardRef(
|
|
|
5899
5899
|
}
|
|
5900
5900
|
);
|
|
5901
5901
|
SidebarProviderBase.displayName = "SidebarProviderBase";
|
|
5902
|
-
var SidebarBase =
|
|
5902
|
+
var SidebarBase = React32__namespace.forwardRef(
|
|
5903
5903
|
({
|
|
5904
5904
|
side = "left",
|
|
5905
5905
|
variant = "sidebar",
|
|
@@ -5986,7 +5986,7 @@ var SidebarBase = React33__namespace.forwardRef(
|
|
|
5986
5986
|
}
|
|
5987
5987
|
);
|
|
5988
5988
|
SidebarBase.displayName = "SidebarBase";
|
|
5989
|
-
var SidebarTriggerBase =
|
|
5989
|
+
var SidebarTriggerBase = React32__namespace.forwardRef(({ className, onClick, ...props }, ref) => {
|
|
5990
5990
|
const { toggleSidebar } = UseSideBarBase();
|
|
5991
5991
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
5992
5992
|
ButtonBase,
|
|
@@ -6009,7 +6009,7 @@ var SidebarTriggerBase = React33__namespace.forwardRef(({ className, onClick, ..
|
|
|
6009
6009
|
) });
|
|
6010
6010
|
});
|
|
6011
6011
|
SidebarTriggerBase.displayName = "SidebarTriggerBase";
|
|
6012
|
-
var SidebarRailBase =
|
|
6012
|
+
var SidebarRailBase = React32__namespace.forwardRef(({ className, ...props }, ref) => {
|
|
6013
6013
|
const { toggleSidebar } = UseSideBarBase();
|
|
6014
6014
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
6015
6015
|
"button",
|
|
@@ -6034,7 +6034,7 @@ var SidebarRailBase = React33__namespace.forwardRef(({ className, ...props }, re
|
|
|
6034
6034
|
);
|
|
6035
6035
|
});
|
|
6036
6036
|
SidebarRailBase.displayName = "SidebarRailBase";
|
|
6037
|
-
var SidebarInsetBase =
|
|
6037
|
+
var SidebarInsetBase = React32__namespace.forwardRef(({ className, ...props }, ref) => {
|
|
6038
6038
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
6039
6039
|
"main",
|
|
6040
6040
|
{
|
|
@@ -6049,7 +6049,7 @@ var SidebarInsetBase = React33__namespace.forwardRef(({ className, ...props }, r
|
|
|
6049
6049
|
);
|
|
6050
6050
|
});
|
|
6051
6051
|
SidebarInsetBase.displayName = "SidebarInsetBase";
|
|
6052
|
-
var SidebarInputBase =
|
|
6052
|
+
var SidebarInputBase = React32__namespace.forwardRef(({ className, ...props }, ref) => {
|
|
6053
6053
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
6054
6054
|
InputBase,
|
|
6055
6055
|
{
|
|
@@ -6064,7 +6064,7 @@ var SidebarInputBase = React33__namespace.forwardRef(({ className, ...props }, r
|
|
|
6064
6064
|
);
|
|
6065
6065
|
});
|
|
6066
6066
|
SidebarInputBase.displayName = "SidebarInputBase";
|
|
6067
|
-
var SidebarHeaderBase =
|
|
6067
|
+
var SidebarHeaderBase = React32__namespace.forwardRef(({ className, ...props }, ref) => {
|
|
6068
6068
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
6069
6069
|
"div",
|
|
6070
6070
|
{
|
|
@@ -6076,7 +6076,7 @@ var SidebarHeaderBase = React33__namespace.forwardRef(({ className, ...props },
|
|
|
6076
6076
|
);
|
|
6077
6077
|
});
|
|
6078
6078
|
SidebarHeaderBase.displayName = "SidebarHeaderBase";
|
|
6079
|
-
var SidebarFooterBase =
|
|
6079
|
+
var SidebarFooterBase = React32__namespace.forwardRef(({ className, ...props }, ref) => {
|
|
6080
6080
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
6081
6081
|
"div",
|
|
6082
6082
|
{
|
|
@@ -6088,7 +6088,7 @@ var SidebarFooterBase = React33__namespace.forwardRef(({ className, ...props },
|
|
|
6088
6088
|
);
|
|
6089
6089
|
});
|
|
6090
6090
|
SidebarFooterBase.displayName = "SidebarFooterBase";
|
|
6091
|
-
var SidebarSeparatorBase =
|
|
6091
|
+
var SidebarSeparatorBase = React32__namespace.forwardRef(({ className, ...props }, ref) => {
|
|
6092
6092
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
6093
6093
|
SeparatorBase,
|
|
6094
6094
|
{
|
|
@@ -6100,7 +6100,7 @@ var SidebarSeparatorBase = React33__namespace.forwardRef(({ className, ...props
|
|
|
6100
6100
|
);
|
|
6101
6101
|
});
|
|
6102
6102
|
SidebarSeparatorBase.displayName = "SidebarSeparatorBase";
|
|
6103
|
-
var SidebarContentBase =
|
|
6103
|
+
var SidebarContentBase = React32__namespace.forwardRef(({ className, ...props }, ref) => {
|
|
6104
6104
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
6105
6105
|
"div",
|
|
6106
6106
|
{
|
|
@@ -6115,7 +6115,7 @@ var SidebarContentBase = React33__namespace.forwardRef(({ className, ...props },
|
|
|
6115
6115
|
);
|
|
6116
6116
|
});
|
|
6117
6117
|
SidebarContentBase.displayName = "SidebarContentBase";
|
|
6118
|
-
var SidebarGroupBase =
|
|
6118
|
+
var SidebarGroupBase = React32__namespace.forwardRef(({ className, ...props }, ref) => {
|
|
6119
6119
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
6120
6120
|
"div",
|
|
6121
6121
|
{
|
|
@@ -6127,7 +6127,7 @@ var SidebarGroupBase = React33__namespace.forwardRef(({ className, ...props }, r
|
|
|
6127
6127
|
);
|
|
6128
6128
|
});
|
|
6129
6129
|
SidebarGroupBase.displayName = "SidebarGroupBase";
|
|
6130
|
-
var SidebarGroupLabelBase =
|
|
6130
|
+
var SidebarGroupLabelBase = React32__namespace.forwardRef(({ className, asChild = false, ...props }, ref) => {
|
|
6131
6131
|
const Comp = asChild ? reactSlot.Slot : "div";
|
|
6132
6132
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
6133
6133
|
Comp,
|
|
@@ -6144,7 +6144,7 @@ var SidebarGroupLabelBase = React33__namespace.forwardRef(({ className, asChild
|
|
|
6144
6144
|
);
|
|
6145
6145
|
});
|
|
6146
6146
|
SidebarGroupLabelBase.displayName = "SidebarGroupLabelBase";
|
|
6147
|
-
var SidebarGroupActionBase =
|
|
6147
|
+
var SidebarGroupActionBase = React32__namespace.forwardRef(({ className, asChild = false, ...props }, ref) => {
|
|
6148
6148
|
const Comp = asChild ? reactSlot.Slot : "button";
|
|
6149
6149
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
6150
6150
|
Comp,
|
|
@@ -6163,7 +6163,7 @@ var SidebarGroupActionBase = React33__namespace.forwardRef(({ className, asChild
|
|
|
6163
6163
|
);
|
|
6164
6164
|
});
|
|
6165
6165
|
SidebarGroupActionBase.displayName = "SidebarGroupActionBase";
|
|
6166
|
-
var SidebarGroupContentBase =
|
|
6166
|
+
var SidebarGroupContentBase = React32__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
6167
6167
|
"div",
|
|
6168
6168
|
{
|
|
6169
6169
|
ref,
|
|
@@ -6173,7 +6173,7 @@ var SidebarGroupContentBase = React33__namespace.forwardRef(({ className, ...pro
|
|
|
6173
6173
|
}
|
|
6174
6174
|
));
|
|
6175
6175
|
SidebarGroupContentBase.displayName = "SidebarGroupContentBase";
|
|
6176
|
-
var SidebarMenuBase =
|
|
6176
|
+
var SidebarMenuBase = React32__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
6177
6177
|
"ul",
|
|
6178
6178
|
{
|
|
6179
6179
|
ref,
|
|
@@ -6183,7 +6183,7 @@ var SidebarMenuBase = React33__namespace.forwardRef(({ className, ...props }, re
|
|
|
6183
6183
|
}
|
|
6184
6184
|
));
|
|
6185
6185
|
SidebarMenuBase.displayName = "SidebarMenuBase";
|
|
6186
|
-
var SidebarMenuItemBase =
|
|
6186
|
+
var SidebarMenuItemBase = React32__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
6187
6187
|
"li",
|
|
6188
6188
|
{
|
|
6189
6189
|
ref,
|
|
@@ -6213,7 +6213,7 @@ var sidebarMenuButtonVariants = classVarianceAuthority.cva(
|
|
|
6213
6213
|
}
|
|
6214
6214
|
}
|
|
6215
6215
|
);
|
|
6216
|
-
var SidebarMenuButtonBase =
|
|
6216
|
+
var SidebarMenuButtonBase = React32__namespace.forwardRef(
|
|
6217
6217
|
({
|
|
6218
6218
|
asChild = false,
|
|
6219
6219
|
isActive = false,
|
|
@@ -6259,7 +6259,7 @@ var SidebarMenuButtonBase = React33__namespace.forwardRef(
|
|
|
6259
6259
|
}
|
|
6260
6260
|
);
|
|
6261
6261
|
SidebarMenuButtonBase.displayName = "SidebarMenuButtonBase";
|
|
6262
|
-
var SidebarMenuActionBase =
|
|
6262
|
+
var SidebarMenuActionBase = React32__namespace.forwardRef(({ className, asChild = false, showOnHover = false, ...props }, ref) => {
|
|
6263
6263
|
const Comp = asChild ? reactSlot.Slot : "button";
|
|
6264
6264
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
6265
6265
|
Comp,
|
|
@@ -6282,7 +6282,7 @@ var SidebarMenuActionBase = React33__namespace.forwardRef(({ className, asChild
|
|
|
6282
6282
|
);
|
|
6283
6283
|
});
|
|
6284
6284
|
SidebarMenuActionBase.displayName = "SidebarMenuActionBase";
|
|
6285
|
-
var SidebarMenuBadgeBase =
|
|
6285
|
+
var SidebarMenuBadgeBase = React32__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
6286
6286
|
"div",
|
|
6287
6287
|
{
|
|
6288
6288
|
ref,
|
|
@@ -6300,8 +6300,8 @@ var SidebarMenuBadgeBase = React33__namespace.forwardRef(({ className, ...props
|
|
|
6300
6300
|
}
|
|
6301
6301
|
));
|
|
6302
6302
|
SidebarMenuBadgeBase.displayName = "SidebarMenuBadgeBase";
|
|
6303
|
-
var SidebarMenuSkeletonBase =
|
|
6304
|
-
const width =
|
|
6303
|
+
var SidebarMenuSkeletonBase = React32__namespace.forwardRef(({ className, showIcon = false, ...props }, ref) => {
|
|
6304
|
+
const width = React32__namespace.useMemo(() => {
|
|
6305
6305
|
return `${Math.floor(Math.random() * 40) + 50}%`;
|
|
6306
6306
|
}, []);
|
|
6307
6307
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -6334,7 +6334,7 @@ var SidebarMenuSkeletonBase = React33__namespace.forwardRef(({ className, showIc
|
|
|
6334
6334
|
);
|
|
6335
6335
|
});
|
|
6336
6336
|
SidebarMenuSkeletonBase.displayName = "SidebarMenuSkeletonBase";
|
|
6337
|
-
var SidebarMenuSubBase =
|
|
6337
|
+
var SidebarMenuSubBase = React32__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
6338
6338
|
"ul",
|
|
6339
6339
|
{
|
|
6340
6340
|
ref,
|
|
@@ -6348,9 +6348,9 @@ var SidebarMenuSubBase = React33__namespace.forwardRef(({ className, ...props },
|
|
|
6348
6348
|
}
|
|
6349
6349
|
));
|
|
6350
6350
|
SidebarMenuSubBase.displayName = "SidebarMenuSubBase";
|
|
6351
|
-
var SidebarMenuSubItemBase =
|
|
6351
|
+
var SidebarMenuSubItemBase = React32__namespace.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("li", { ref, ...props }));
|
|
6352
6352
|
SidebarMenuSubItemBase.displayName = "SidebarMenuSubItemBase";
|
|
6353
|
-
var SidebarMenuSubButtonBase =
|
|
6353
|
+
var SidebarMenuSubButtonBase = React32__namespace.forwardRef(({ asChild = false, size = "md", isActive, className, ...props }, ref) => {
|
|
6354
6354
|
const Comp = asChild ? reactSlot.Slot : "a";
|
|
6355
6355
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
6356
6356
|
Comp,
|
|
@@ -6491,9 +6491,9 @@ function DrawerDescriptionBase({
|
|
|
6491
6491
|
}
|
|
6492
6492
|
);
|
|
6493
6493
|
}
|
|
6494
|
-
var UniversalTooltipContext =
|
|
6494
|
+
var UniversalTooltipContext = React32.createContext(null);
|
|
6495
6495
|
var useUniversalTooltip = () => {
|
|
6496
|
-
const context =
|
|
6496
|
+
const context = React32.useContext(UniversalTooltipContext);
|
|
6497
6497
|
if (!context) {
|
|
6498
6498
|
throw new Error("useUniversalTooltip deve ser usado dentro de UniversalTooltipProvider");
|
|
6499
6499
|
}
|
|
@@ -6501,7 +6501,7 @@ var useUniversalTooltip = () => {
|
|
|
6501
6501
|
};
|
|
6502
6502
|
var useTooltip = () => {
|
|
6503
6503
|
const { addTooltip, removeTooltip, startDrag } = useUniversalTooltip();
|
|
6504
|
-
const createTooltip =
|
|
6504
|
+
const createTooltip = React32.useCallback((element, content, options) => {
|
|
6505
6505
|
const rect = element.getBoundingClientRect();
|
|
6506
6506
|
let position;
|
|
6507
6507
|
switch (options?.position || "auto") {
|
|
@@ -6531,7 +6531,7 @@ var useTooltip = () => {
|
|
|
6531
6531
|
metadata: options?.metadata
|
|
6532
6532
|
});
|
|
6533
6533
|
}, [addTooltip]);
|
|
6534
|
-
const handleElementMouseDown =
|
|
6534
|
+
const handleElementMouseDown = React32.useCallback((tooltipId, event) => {
|
|
6535
6535
|
const rect = event.target.getBoundingClientRect();
|
|
6536
6536
|
const offset = {
|
|
6537
6537
|
x: event.clientX - rect.left,
|
|
@@ -6895,11 +6895,11 @@ var CodeBlock = ({
|
|
|
6895
6895
|
breadcrumb = [],
|
|
6896
6896
|
showStats = true
|
|
6897
6897
|
}) => {
|
|
6898
|
-
const [copied, setCopied] =
|
|
6899
|
-
const [activeTab, setActiveTab] =
|
|
6900
|
-
const [isExpanded, setIsExpanded] =
|
|
6898
|
+
const [copied, setCopied] = React32__namespace.default.useState(false);
|
|
6899
|
+
const [activeTab, setActiveTab] = React32__namespace.default.useState(0);
|
|
6900
|
+
const [isExpanded, setIsExpanded] = React32__namespace.default.useState(false);
|
|
6901
6901
|
const tabsExist = tabs.length > 0;
|
|
6902
|
-
const cssVars =
|
|
6902
|
+
const cssVars = React32__namespace.default.useMemo(
|
|
6903
6903
|
() => ({
|
|
6904
6904
|
container: {
|
|
6905
6905
|
backgroundColor: "hsl(var(--card))",
|
|
@@ -6995,7 +6995,7 @@ var CodeBlock = ({
|
|
|
6995
6995
|
] }),
|
|
6996
6996
|
breadcrumb.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center min-w-0", children: [
|
|
6997
6997
|
/* @__PURE__ */ jsxRuntime.jsx(react.FolderIcon, { size: "1em", style: cssVars.icon }),
|
|
6998
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center min-w-0 ml-2", children: breadcrumb.map((crumb, index) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
6998
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center min-w-0 ml-2", children: breadcrumb.map((crumb, index) => /* @__PURE__ */ jsxRuntime.jsxs(React32__namespace.default.Fragment, { children: [
|
|
6999
6999
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
7000
7000
|
"span",
|
|
7001
7001
|
{
|
|
@@ -7248,7 +7248,7 @@ function StatusIndicator({
|
|
|
7248
7248
|
] });
|
|
7249
7249
|
}
|
|
7250
7250
|
function useCheckboxTree(initialTree) {
|
|
7251
|
-
const initialCheckedNodes =
|
|
7251
|
+
const initialCheckedNodes = React32.useMemo(() => {
|
|
7252
7252
|
const checkedSet = /* @__PURE__ */ new Set();
|
|
7253
7253
|
const initializeCheckedNodes = (node) => {
|
|
7254
7254
|
if (node.defaultChecked) {
|
|
@@ -7259,8 +7259,8 @@ function useCheckboxTree(initialTree) {
|
|
|
7259
7259
|
initializeCheckedNodes(initialTree);
|
|
7260
7260
|
return checkedSet;
|
|
7261
7261
|
}, [initialTree]);
|
|
7262
|
-
const [checkedNodes, setCheckedNodes] =
|
|
7263
|
-
const isChecked =
|
|
7262
|
+
const [checkedNodes, setCheckedNodes] = React32.useState(initialCheckedNodes);
|
|
7263
|
+
const isChecked = React32.useCallback(
|
|
7264
7264
|
(node) => {
|
|
7265
7265
|
if (!node.children) {
|
|
7266
7266
|
return checkedNodes.has(node.id);
|
|
@@ -7278,7 +7278,7 @@ function useCheckboxTree(initialTree) {
|
|
|
7278
7278
|
},
|
|
7279
7279
|
[checkedNodes]
|
|
7280
7280
|
);
|
|
7281
|
-
const handleCheck =
|
|
7281
|
+
const handleCheck = React32.useCallback(
|
|
7282
7282
|
(node) => {
|
|
7283
7283
|
const newCheckedNodes = new Set(checkedNodes);
|
|
7284
7284
|
const toggleNode = (n, check) => {
|
|
@@ -7308,9 +7308,9 @@ function CheckboxTree({ tree, renderNode }) {
|
|
|
7308
7308
|
onCheckedChange,
|
|
7309
7309
|
children
|
|
7310
7310
|
}) => {
|
|
7311
|
-
const [open, setOpen] =
|
|
7312
|
-
const checkboxRef =
|
|
7313
|
-
|
|
7311
|
+
const [open, setOpen] = React32.useState(() => !!node.children && status !== false);
|
|
7312
|
+
const checkboxRef = React32.useRef(null);
|
|
7313
|
+
React32.useEffect(() => {
|
|
7314
7314
|
if (checkboxRef.current) {
|
|
7315
7315
|
checkboxRef.current.indeterminate = status === "indeterminate";
|
|
7316
7316
|
}
|
|
@@ -7633,18 +7633,18 @@ function useScrollColumn({
|
|
|
7633
7633
|
max,
|
|
7634
7634
|
step = 1
|
|
7635
7635
|
}) {
|
|
7636
|
-
const containerRef =
|
|
7636
|
+
const containerRef = React32.useRef(null);
|
|
7637
7637
|
const items = getItems(max, step);
|
|
7638
|
-
const scrollTimeoutRef =
|
|
7639
|
-
const isScrollingRef =
|
|
7640
|
-
const [isDragging, setIsDragging] =
|
|
7641
|
-
const startYRef =
|
|
7642
|
-
const startScrollRef =
|
|
7638
|
+
const scrollTimeoutRef = React32.useRef(null);
|
|
7639
|
+
const isScrollingRef = React32.useRef(false);
|
|
7640
|
+
const [isDragging, setIsDragging] = React32.useState(false);
|
|
7641
|
+
const startYRef = React32.useRef(0);
|
|
7642
|
+
const startScrollRef = React32.useRef(0);
|
|
7643
7643
|
const itemHeight = ITEM_HEIGHT;
|
|
7644
7644
|
const centerIndex = CENTER_INDEX;
|
|
7645
7645
|
const visibleItems = VISIBLE_ITEMS;
|
|
7646
7646
|
const containerHeight = visibleItems * itemHeight;
|
|
7647
|
-
|
|
7647
|
+
React32.useEffect(() => {
|
|
7648
7648
|
if (containerRef.current && !isScrollingRef.current) {
|
|
7649
7649
|
const index = Math.round(value / step);
|
|
7650
7650
|
const clampedIndex = Math.max(0, Math.min(items.length - 1, index));
|
|
@@ -7652,7 +7652,7 @@ function useScrollColumn({
|
|
|
7652
7652
|
containerRef.current.scrollTop = scrollPosition;
|
|
7653
7653
|
}
|
|
7654
7654
|
}, [value, itemHeight, step, items.length]);
|
|
7655
|
-
|
|
7655
|
+
React32.useEffect(() => {
|
|
7656
7656
|
return () => {
|
|
7657
7657
|
if (scrollTimeoutRef.current) clearTimeout(scrollTimeoutRef.current);
|
|
7658
7658
|
};
|
|
@@ -7818,9 +7818,9 @@ function TimeScrollPicker({
|
|
|
7818
7818
|
] }) });
|
|
7819
7819
|
}
|
|
7820
7820
|
function useAutoCenter(open) {
|
|
7821
|
-
const ref =
|
|
7822
|
-
const [center, setCenter] =
|
|
7823
|
-
|
|
7821
|
+
const ref = React32.useRef(null);
|
|
7822
|
+
const [center, setCenter] = React32.useState(false);
|
|
7823
|
+
React32.useEffect(() => {
|
|
7824
7824
|
if (!open) {
|
|
7825
7825
|
setCenter(false);
|
|
7826
7826
|
return;
|
|
@@ -7860,9 +7860,9 @@ function DateTimePicker({
|
|
|
7860
7860
|
error,
|
|
7861
7861
|
hideClear = true
|
|
7862
7862
|
}) {
|
|
7863
|
-
const [internalDate, setInternalDate] =
|
|
7864
|
-
const [open, setOpen] =
|
|
7865
|
-
const [activeTab, setActiveTab] =
|
|
7863
|
+
const [internalDate, setInternalDate] = React32.useState(date);
|
|
7864
|
+
const [open, setOpen] = React32.useState(false);
|
|
7865
|
+
const [activeTab, setActiveTab] = React32.useState("calendar");
|
|
7866
7866
|
const isMobile = useIsMobile();
|
|
7867
7867
|
const handleSelect = (newDay) => {
|
|
7868
7868
|
if (!newDay) return;
|
|
@@ -7899,7 +7899,7 @@ function DateTimePicker({
|
|
|
7899
7899
|
if (!timeFormat) return "dd MMMM yyyy";
|
|
7900
7900
|
return `dd MMMM yyyy - ${timeFormat}`;
|
|
7901
7901
|
};
|
|
7902
|
-
|
|
7902
|
+
React32.useEffect(() => {
|
|
7903
7903
|
setInternalDate(date);
|
|
7904
7904
|
if (open) {
|
|
7905
7905
|
setActiveTab("calendar");
|
|
@@ -8142,9 +8142,9 @@ function RangePicker({
|
|
|
8142
8142
|
disabled,
|
|
8143
8143
|
className
|
|
8144
8144
|
}) {
|
|
8145
|
-
const [open, setOpen] =
|
|
8146
|
-
const [range, setRange] =
|
|
8147
|
-
|
|
8145
|
+
const [open, setOpen] = React32__namespace.useState(false);
|
|
8146
|
+
const [range, setRange] = React32__namespace.useState(value);
|
|
8147
|
+
React32__namespace.useEffect(() => {
|
|
8148
8148
|
setRange(value);
|
|
8149
8149
|
}, [value]);
|
|
8150
8150
|
const handleSelect = (selected) => {
|
|
@@ -8378,7 +8378,7 @@ function RangePicker({
|
|
|
8378
8378
|
] });
|
|
8379
8379
|
}
|
|
8380
8380
|
RangePicker.displayName = "RangePicker";
|
|
8381
|
-
var TimePickerInput =
|
|
8381
|
+
var TimePickerInput = React32__namespace.default.forwardRef(
|
|
8382
8382
|
({
|
|
8383
8383
|
className,
|
|
8384
8384
|
type = "tel",
|
|
@@ -8397,10 +8397,10 @@ var TimePickerInput = React33__namespace.default.forwardRef(
|
|
|
8397
8397
|
label,
|
|
8398
8398
|
...props
|
|
8399
8399
|
}, ref) => {
|
|
8400
|
-
const [flag, setFlag] =
|
|
8401
|
-
const [prevIntKey, setPrevIntKey] =
|
|
8402
|
-
const [isFocused, setIsFocused] =
|
|
8403
|
-
|
|
8400
|
+
const [flag, setFlag] = React32__namespace.default.useState(false);
|
|
8401
|
+
const [prevIntKey, setPrevIntKey] = React32__namespace.default.useState("0");
|
|
8402
|
+
const [isFocused, setIsFocused] = React32__namespace.default.useState(false);
|
|
8403
|
+
React32__namespace.default.useEffect(() => {
|
|
8404
8404
|
if (flag) {
|
|
8405
8405
|
const timer = setTimeout(() => {
|
|
8406
8406
|
setFlag(false);
|
|
@@ -8408,7 +8408,7 @@ var TimePickerInput = React33__namespace.default.forwardRef(
|
|
|
8408
8408
|
return () => clearTimeout(timer);
|
|
8409
8409
|
}
|
|
8410
8410
|
}, [flag]);
|
|
8411
|
-
const calculatedValue =
|
|
8411
|
+
const calculatedValue = React32__namespace.default.useMemo(() => {
|
|
8412
8412
|
const safeDate = date ?? new Date((/* @__PURE__ */ new Date()).setHours(0, 0, 0, 0));
|
|
8413
8413
|
return getDateByType(safeDate, picker);
|
|
8414
8414
|
}, [date, picker]);
|
|
@@ -8587,9 +8587,9 @@ function TimePicker({
|
|
|
8587
8587
|
hideSeconds,
|
|
8588
8588
|
enableButton
|
|
8589
8589
|
}) {
|
|
8590
|
-
const minuteRef =
|
|
8591
|
-
const hourRef =
|
|
8592
|
-
const secondRef =
|
|
8590
|
+
const minuteRef = React32__namespace.useRef(null);
|
|
8591
|
+
const hourRef = React32__namespace.useRef(null);
|
|
8592
|
+
const secondRef = React32__namespace.useRef(null);
|
|
8593
8593
|
const containerVariants = {
|
|
8594
8594
|
hidden: { opacity: 0, y: 10 },
|
|
8595
8595
|
visible: {
|
|
@@ -8689,15 +8689,15 @@ function Agenda({
|
|
|
8689
8689
|
return false;
|
|
8690
8690
|
}
|
|
8691
8691
|
};
|
|
8692
|
-
const datedEvents =
|
|
8692
|
+
const datedEvents = React32.useMemo(
|
|
8693
8693
|
() => events.filter((e) => isValidDate5(e.start) || isValidDate5(e.end)),
|
|
8694
8694
|
[events]
|
|
8695
8695
|
);
|
|
8696
|
-
const undatedEvents =
|
|
8696
|
+
const undatedEvents = React32.useMemo(
|
|
8697
8697
|
() => events.filter((e) => !(isValidDate5(e.start) || isValidDate5(e.end))),
|
|
8698
8698
|
[events]
|
|
8699
8699
|
);
|
|
8700
|
-
const days =
|
|
8700
|
+
const days = React32.useMemo(() => {
|
|
8701
8701
|
const start = dateFns.startOfMonth(new Date(currentDate));
|
|
8702
8702
|
const end = dateFns.endOfMonth(new Date(currentDate));
|
|
8703
8703
|
return dateFns.eachDayOfInterval({ start, end });
|
|
@@ -8768,7 +8768,7 @@ function Agenda({
|
|
|
8768
8768
|
)
|
|
8769
8769
|
] }) });
|
|
8770
8770
|
}
|
|
8771
|
-
var CalendarDndContext =
|
|
8771
|
+
var CalendarDndContext = React32.createContext({
|
|
8772
8772
|
activeEvent: null,
|
|
8773
8773
|
activeId: null,
|
|
8774
8774
|
activeView: null,
|
|
@@ -8778,24 +8778,24 @@ var CalendarDndContext = React33.createContext({
|
|
|
8778
8778
|
isMultiDay: false,
|
|
8779
8779
|
multiDayWidth: null
|
|
8780
8780
|
});
|
|
8781
|
-
var useCalendarDndAgenda = () =>
|
|
8781
|
+
var useCalendarDndAgenda = () => React32.useContext(CalendarDndContext);
|
|
8782
8782
|
function CalendarDndProviderAgenda({
|
|
8783
8783
|
children,
|
|
8784
8784
|
onEventUpdate
|
|
8785
8785
|
}) {
|
|
8786
|
-
const [activeEvent, setActiveEvent] =
|
|
8786
|
+
const [activeEvent, setActiveEvent] = React32.useState(
|
|
8787
8787
|
null
|
|
8788
8788
|
);
|
|
8789
|
-
const [activeId, setActiveId] =
|
|
8790
|
-
const [activeView, setActiveView] =
|
|
8789
|
+
const [activeId, setActiveId] = React32.useState(null);
|
|
8790
|
+
const [activeView, setActiveView] = React32.useState(
|
|
8791
8791
|
null
|
|
8792
8792
|
);
|
|
8793
|
-
const [currentTime, setCurrentTime] =
|
|
8794
|
-
const [eventHeight, setEventHeight] =
|
|
8795
|
-
const [isMultiDay, setIsMultiDay] =
|
|
8796
|
-
const [multiDayWidth, setMultiDayWidth] =
|
|
8797
|
-
const [dragHandlePosition, setDragHandlePosition] =
|
|
8798
|
-
const eventDimensions =
|
|
8793
|
+
const [currentTime, setCurrentTime] = React32.useState(null);
|
|
8794
|
+
const [eventHeight, setEventHeight] = React32.useState(null);
|
|
8795
|
+
const [isMultiDay, setIsMultiDay] = React32.useState(false);
|
|
8796
|
+
const [multiDayWidth, setMultiDayWidth] = React32.useState(null);
|
|
8797
|
+
const [dragHandlePosition, setDragHandlePosition] = React32.useState(null);
|
|
8798
|
+
const eventDimensions = React32.useRef({ height: 0 });
|
|
8799
8799
|
const sensors = core.useSensors(
|
|
8800
8800
|
core.useSensor(core.MouseSensor, {
|
|
8801
8801
|
// Require the mouse to move by 5px before activating
|
|
@@ -8817,7 +8817,7 @@ function CalendarDndProviderAgenda({
|
|
|
8817
8817
|
}
|
|
8818
8818
|
})
|
|
8819
8819
|
);
|
|
8820
|
-
const dndContextId =
|
|
8820
|
+
const dndContextId = React32.useId();
|
|
8821
8821
|
const handleDragStart = (event) => {
|
|
8822
8822
|
const { active } = event;
|
|
8823
8823
|
if (!active.data.current) {
|
|
@@ -9136,9 +9136,9 @@ function addHoursToDateAgenda(date, hours) {
|
|
|
9136
9136
|
return addMinutesToDateAgenda(date, Math.round(hours * 60));
|
|
9137
9137
|
}
|
|
9138
9138
|
function useCurrentTimeIndicatorAgenda(currentDate, view) {
|
|
9139
|
-
const [currentTimePosition, setCurrentTimePosition] =
|
|
9140
|
-
const [currentTimeVisible, setCurrentTimeVisible] =
|
|
9141
|
-
|
|
9139
|
+
const [currentTimePosition, setCurrentTimePosition] = React32.useState(0);
|
|
9140
|
+
const [currentTimeVisible, setCurrentTimeVisible] = React32.useState(false);
|
|
9141
|
+
React32.useEffect(() => {
|
|
9142
9142
|
const calculateTimePosition = () => {
|
|
9143
9143
|
const now = /* @__PURE__ */ new Date();
|
|
9144
9144
|
const hours = now.getHours();
|
|
@@ -9248,13 +9248,13 @@ function EventItemAgenda({
|
|
|
9248
9248
|
const endDate = getEventEndDate(event);
|
|
9249
9249
|
const hasValidTime = !!startDate || !!endDate;
|
|
9250
9250
|
const colorClasses = hasValidTime ? getEventColorClassesAgenda(eventColor) : "bg-gray-200/50 hover:bg-gray-200/40 text-gray-900/80 dark:bg-gray-700/25 dark:text-gray-200/90 shadow-none";
|
|
9251
|
-
const displayStart =
|
|
9251
|
+
const displayStart = React32.useMemo(() => {
|
|
9252
9252
|
if (!hasValidTime) return void 0;
|
|
9253
9253
|
if (startDate) return currentTime || startDate;
|
|
9254
9254
|
if (endDate) return currentTime || endDate;
|
|
9255
9255
|
return void 0;
|
|
9256
9256
|
}, [currentTime, startDate, endDate, hasValidTime]);
|
|
9257
|
-
const displayEnd =
|
|
9257
|
+
const displayEnd = React32.useMemo(() => {
|
|
9258
9258
|
if (!hasValidTime) return void 0;
|
|
9259
9259
|
if (endDate) {
|
|
9260
9260
|
return currentTime ? new Date(
|
|
@@ -9266,7 +9266,7 @@ function EventItemAgenda({
|
|
|
9266
9266
|
}
|
|
9267
9267
|
return void 0;
|
|
9268
9268
|
}, [currentTime, startDate, endDate, hasValidTime]);
|
|
9269
|
-
const durationMinutes =
|
|
9269
|
+
const durationMinutes = React32.useMemo(() => {
|
|
9270
9270
|
if (!hasValidTime || !displayStart || !displayEnd) return 0;
|
|
9271
9271
|
return dateFns.differenceInMinutes(displayEnd, displayStart);
|
|
9272
9272
|
}, [displayStart, displayEnd, hasValidTime]);
|
|
@@ -9507,14 +9507,14 @@ function DayViewAgenda({
|
|
|
9507
9507
|
onEventSelect,
|
|
9508
9508
|
showUndatedEvents
|
|
9509
9509
|
}) {
|
|
9510
|
-
const hours =
|
|
9510
|
+
const hours = React32.useMemo(() => {
|
|
9511
9511
|
const dayStart = dateFns.startOfDay(currentDate);
|
|
9512
9512
|
return dateFns.eachHourOfInterval({
|
|
9513
9513
|
end: dateFns.addHours(dayStart, EndHourAgenda - 1),
|
|
9514
9514
|
start: dateFns.addHours(dayStart, StartHourAgenda)
|
|
9515
9515
|
});
|
|
9516
9516
|
}, [currentDate]);
|
|
9517
|
-
const dayEvents =
|
|
9517
|
+
const dayEvents = React32.useMemo(() => {
|
|
9518
9518
|
return events.filter((event) => {
|
|
9519
9519
|
if (event.start == null) return false;
|
|
9520
9520
|
const eventStart = getEventStartDate(event) ?? /* @__PURE__ */ new Date();
|
|
@@ -9524,17 +9524,17 @@ function DayViewAgenda({
|
|
|
9524
9524
|
(a, b) => new Date(a.start).getTime() - new Date(b.start).getTime()
|
|
9525
9525
|
);
|
|
9526
9526
|
}, [currentDate, events]);
|
|
9527
|
-
const allDayEvents =
|
|
9527
|
+
const allDayEvents = React32.useMemo(() => {
|
|
9528
9528
|
return dayEvents.filter((event) => {
|
|
9529
9529
|
return event.allDay || isMultiDayEventAgenda(event);
|
|
9530
9530
|
});
|
|
9531
9531
|
}, [dayEvents]);
|
|
9532
|
-
const timeEvents =
|
|
9532
|
+
const timeEvents = React32.useMemo(() => {
|
|
9533
9533
|
return dayEvents.filter((event) => {
|
|
9534
9534
|
return !event.allDay && !isMultiDayEventAgenda(event);
|
|
9535
9535
|
});
|
|
9536
9536
|
}, [dayEvents]);
|
|
9537
|
-
const positionedEvents =
|
|
9537
|
+
const positionedEvents = React32.useMemo(() => {
|
|
9538
9538
|
const result = [];
|
|
9539
9539
|
const dayStart = dateFns.startOfDay(currentDate);
|
|
9540
9540
|
const sortedEvents = [...timeEvents].sort((a, b) => {
|
|
@@ -9744,14 +9744,14 @@ function Select({
|
|
|
9744
9744
|
hideClear = false,
|
|
9745
9745
|
empty
|
|
9746
9746
|
}) {
|
|
9747
|
-
const [page, setPage] =
|
|
9748
|
-
const [animating, setAnimating] =
|
|
9749
|
-
const [open, setOpen] =
|
|
9747
|
+
const [page, setPage] = React32.useState(1);
|
|
9748
|
+
const [animating, setAnimating] = React32.useState(false);
|
|
9749
|
+
const [open, setOpen] = React32.useState(false);
|
|
9750
9750
|
const groupCount = groupItems ? Object.keys(groupItems).length : 0;
|
|
9751
|
-
|
|
9751
|
+
React32.useEffect(() => {
|
|
9752
9752
|
setPage(1);
|
|
9753
9753
|
}, [items?.length, groupCount, pagination]);
|
|
9754
|
-
const paged =
|
|
9754
|
+
const paged = React32.useMemo(() => {
|
|
9755
9755
|
if (!pagination || pagination <= 0) return null;
|
|
9756
9756
|
if (groupItems) {
|
|
9757
9757
|
const flattened = Object.keys(groupItems).flatMap(
|
|
@@ -9778,7 +9778,7 @@ function Select({
|
|
|
9778
9778
|
}, [items, groupItems, page, pagination]);
|
|
9779
9779
|
const goPrev = () => setPage((p) => Math.max(1, p - 1));
|
|
9780
9780
|
const goNext = () => setPage((p) => paged ? Math.min(paged.totalPages, p + 1) : p + 1);
|
|
9781
|
-
|
|
9781
|
+
React32.useEffect(() => {
|
|
9782
9782
|
if (!pagination) return;
|
|
9783
9783
|
setAnimating(true);
|
|
9784
9784
|
const id = setTimeout(() => setAnimating(false), 220);
|
|
@@ -9962,11 +9962,11 @@ function EventAgenda({
|
|
|
9962
9962
|
initialDate,
|
|
9963
9963
|
onClick
|
|
9964
9964
|
}) {
|
|
9965
|
-
const [currentDate, setCurrentDate] =
|
|
9965
|
+
const [currentDate, setCurrentDate] = React32.useState(
|
|
9966
9966
|
initialDate && new Date(initialDate) || /* @__PURE__ */ new Date()
|
|
9967
9967
|
);
|
|
9968
|
-
const [view, setView] =
|
|
9969
|
-
const [selectedEvent, setSelectedEvent] =
|
|
9968
|
+
const [view, setView] = React32.useState(initialView);
|
|
9969
|
+
const [selectedEvent, setSelectedEvent] = React32.useState(null);
|
|
9970
9970
|
const goPrevious = () => {
|
|
9971
9971
|
if (view === "month") setCurrentDate((d) => dateFns.subMonths(d, 1));
|
|
9972
9972
|
else if (view === "week") setCurrentDate((d) => dateFns.subWeeks(d, 1));
|
|
@@ -9990,7 +9990,7 @@ function EventAgenda({
|
|
|
9990
9990
|
);
|
|
9991
9991
|
return;
|
|
9992
9992
|
}
|
|
9993
|
-
if (
|
|
9993
|
+
if (React32__namespace.default.isValidElement(onClick)) {
|
|
9994
9994
|
setSelectedEvent(event);
|
|
9995
9995
|
return;
|
|
9996
9996
|
}
|
|
@@ -10022,7 +10022,7 @@ function EventAgenda({
|
|
|
10022
10022
|
const entry = labels[v] || { full: v, short: v };
|
|
10023
10023
|
return condensed ? entry.short : entry.full;
|
|
10024
10024
|
};
|
|
10025
|
-
const viewTitle =
|
|
10025
|
+
const viewTitle = React32.useMemo(() => {
|
|
10026
10026
|
const capitalize = (s) => s ? s.charAt(0).toUpperCase() + s.slice(1) : s;
|
|
10027
10027
|
if (view === "month")
|
|
10028
10028
|
return capitalize(dateFns.format(currentDate, "MMMM yyyy", { locale: locale.ptBR }));
|
|
@@ -10142,7 +10142,7 @@ function EventAgenda({
|
|
|
10142
10142
|
}
|
|
10143
10143
|
)
|
|
10144
10144
|
] }),
|
|
10145
|
-
selectedEvent &&
|
|
10145
|
+
selectedEvent && React32__namespace.default.isValidElement(onClick) ? React32__namespace.default.cloneElement(onClick, {
|
|
10146
10146
|
event: selectedEvent,
|
|
10147
10147
|
onClose: () => setSelectedEvent(null)
|
|
10148
10148
|
}) : null
|
|
@@ -10165,7 +10165,7 @@ function UndatedEvents({
|
|
|
10165
10165
|
title = "Data de Atendimento n\xE3o Prevista",
|
|
10166
10166
|
show = true
|
|
10167
10167
|
}) {
|
|
10168
|
-
const undatedEvents =
|
|
10168
|
+
const undatedEvents = React32.useMemo(
|
|
10169
10169
|
() => events.filter((e) => !(isValidDate2(e.start) || isValidDate2(e.end))),
|
|
10170
10170
|
[events]
|
|
10171
10171
|
);
|
|
@@ -10189,10 +10189,10 @@ function useEventVisibilityAgenda({
|
|
|
10189
10189
|
eventHeight,
|
|
10190
10190
|
eventGap
|
|
10191
10191
|
}) {
|
|
10192
|
-
const contentRef =
|
|
10193
|
-
const observerRef =
|
|
10194
|
-
const [contentHeight, setContentHeight] =
|
|
10195
|
-
|
|
10192
|
+
const contentRef = React32.useRef(null);
|
|
10193
|
+
const observerRef = React32.useRef(null);
|
|
10194
|
+
const [contentHeight, setContentHeight] = React32.useState(null);
|
|
10195
|
+
React32.useLayoutEffect(() => {
|
|
10196
10196
|
if (!contentRef.current) return;
|
|
10197
10197
|
const updateHeight = () => {
|
|
10198
10198
|
if (contentRef.current) {
|
|
@@ -10212,7 +10212,7 @@ function useEventVisibilityAgenda({
|
|
|
10212
10212
|
}
|
|
10213
10213
|
};
|
|
10214
10214
|
}, []);
|
|
10215
|
-
const getVisibleEventCount =
|
|
10215
|
+
const getVisibleEventCount = React32.useMemo(() => {
|
|
10216
10216
|
return (totalEvents) => {
|
|
10217
10217
|
if (!contentHeight) return totalEvents;
|
|
10218
10218
|
const maxEvents = Math.floor(contentHeight / (eventHeight + eventGap));
|
|
@@ -10234,21 +10234,21 @@ function MonthViewAgenda({
|
|
|
10234
10234
|
onEventSelect,
|
|
10235
10235
|
showUndatedEvents
|
|
10236
10236
|
}) {
|
|
10237
|
-
const days =
|
|
10237
|
+
const days = React32.useMemo(() => {
|
|
10238
10238
|
const monthStart = dateFns.startOfMonth(currentDate);
|
|
10239
10239
|
const monthEnd = dateFns.endOfMonth(monthStart);
|
|
10240
10240
|
const calendarStart = dateFns.startOfWeek(monthStart, { weekStartsOn: 0 });
|
|
10241
10241
|
const calendarEnd = dateFns.endOfWeek(monthEnd, { weekStartsOn: 0 });
|
|
10242
10242
|
return dateFns.eachDayOfInterval({ end: calendarEnd, start: calendarStart });
|
|
10243
10243
|
}, [currentDate]);
|
|
10244
|
-
const weekdays =
|
|
10244
|
+
const weekdays = React32.useMemo(() => {
|
|
10245
10245
|
return Array.from({ length: 7 }).map((_, i) => {
|
|
10246
10246
|
const date = dateFns.addDays(dateFns.startOfWeek(/* @__PURE__ */ new Date(), { weekStartsOn: 0 }), i);
|
|
10247
10247
|
const short = dateFns.format(date, "EEE", { locale: locale.ptBR });
|
|
10248
10248
|
return short.charAt(0).toUpperCase() + short.slice(1);
|
|
10249
10249
|
});
|
|
10250
10250
|
}, []);
|
|
10251
|
-
const weeks =
|
|
10251
|
+
const weeks = React32.useMemo(() => {
|
|
10252
10252
|
const result = [];
|
|
10253
10253
|
let week = [];
|
|
10254
10254
|
for (let i = 0; i < days.length; i++) {
|
|
@@ -10264,12 +10264,12 @@ function MonthViewAgenda({
|
|
|
10264
10264
|
e.stopPropagation();
|
|
10265
10265
|
onEventSelect(event, e);
|
|
10266
10266
|
};
|
|
10267
|
-
const [isMounted, setIsMounted] =
|
|
10267
|
+
const [isMounted, setIsMounted] = React32.useState(false);
|
|
10268
10268
|
const { contentRef, getVisibleEventCount } = useEventVisibilityAgenda({
|
|
10269
10269
|
eventGap: EventGapAgenda,
|
|
10270
10270
|
eventHeight: EventHeightAgenda
|
|
10271
10271
|
});
|
|
10272
|
-
|
|
10272
|
+
React32.useEffect(() => {
|
|
10273
10273
|
setIsMounted(true);
|
|
10274
10274
|
}, []);
|
|
10275
10275
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "contents", "data-slot": "month-view", children: [
|
|
@@ -10503,8 +10503,8 @@ function DraggableEvent({
|
|
|
10503
10503
|
draggable = true
|
|
10504
10504
|
}) {
|
|
10505
10505
|
const { activeId } = useCalendarDndAgenda();
|
|
10506
|
-
const elementRef =
|
|
10507
|
-
const [dragHandlePosition, setDragHandlePosition] =
|
|
10506
|
+
const elementRef = React32.useRef(null);
|
|
10507
|
+
const [dragHandlePosition, setDragHandlePosition] = React32.useState(null);
|
|
10508
10508
|
const eventStart = getEventStartDate(event) ?? /* @__PURE__ */ new Date();
|
|
10509
10509
|
const eventEnd = getEventEndDate(event) ?? getEventStartDate(event) ?? /* @__PURE__ */ new Date();
|
|
10510
10510
|
const isMultiDayEvent2 = isMultiDay || event.allDay || dateFns.differenceInDays(eventEnd, eventStart) >= 1;
|
|
@@ -10598,23 +10598,23 @@ function WeekViewAgenda({
|
|
|
10598
10598
|
onEventCreate,
|
|
10599
10599
|
showUndatedEvents
|
|
10600
10600
|
}) {
|
|
10601
|
-
const days =
|
|
10601
|
+
const days = React32.useMemo(() => {
|
|
10602
10602
|
const weekStart2 = dateFns.startOfWeek(currentDate, { weekStartsOn: 0 });
|
|
10603
10603
|
const weekEnd = dateFns.endOfWeek(currentDate, { weekStartsOn: 0 });
|
|
10604
10604
|
return dateFns.eachDayOfInterval({ end: weekEnd, start: weekStart2 });
|
|
10605
10605
|
}, [currentDate]);
|
|
10606
|
-
const weekStart =
|
|
10606
|
+
const weekStart = React32.useMemo(
|
|
10607
10607
|
() => dateFns.startOfWeek(currentDate, { weekStartsOn: 0 }),
|
|
10608
10608
|
[currentDate]
|
|
10609
10609
|
);
|
|
10610
|
-
const hours =
|
|
10610
|
+
const hours = React32.useMemo(() => {
|
|
10611
10611
|
const dayStart = dateFns.startOfDay(currentDate);
|
|
10612
10612
|
return dateFns.eachHourOfInterval({
|
|
10613
10613
|
end: dateFns.addHours(dayStart, EndHour - 1),
|
|
10614
10614
|
start: dateFns.addHours(dayStart, StartHour)
|
|
10615
10615
|
});
|
|
10616
10616
|
}, [currentDate]);
|
|
10617
|
-
const allDayEvents =
|
|
10617
|
+
const allDayEvents = React32.useMemo(() => {
|
|
10618
10618
|
const isValidStart = (ev) => {
|
|
10619
10619
|
try {
|
|
10620
10620
|
if (ev.start == null) return false;
|
|
@@ -10639,7 +10639,7 @@ function WeekViewAgenda({
|
|
|
10639
10639
|
});
|
|
10640
10640
|
});
|
|
10641
10641
|
}, [events, days]);
|
|
10642
|
-
const processedDayEvents =
|
|
10642
|
+
const processedDayEvents = React32.useMemo(() => {
|
|
10643
10643
|
const result = days.map((day) => {
|
|
10644
10644
|
const dayEvents = events.filter((event) => {
|
|
10645
10645
|
if (event.allDay || isMultiDayEventAgenda(event)) return false;
|
|
@@ -10904,15 +10904,15 @@ function AgendaView({
|
|
|
10904
10904
|
return false;
|
|
10905
10905
|
}
|
|
10906
10906
|
};
|
|
10907
|
-
const datedEvents =
|
|
10907
|
+
const datedEvents = React32.useMemo(
|
|
10908
10908
|
() => events.filter((e) => isValidDate5(e.start) || isValidDate5(e.end)),
|
|
10909
10909
|
[events]
|
|
10910
10910
|
);
|
|
10911
|
-
const undatedEvents =
|
|
10911
|
+
const undatedEvents = React32.useMemo(
|
|
10912
10912
|
() => events.filter((e) => !(isValidDate5(e.start) || isValidDate5(e.end))),
|
|
10913
10913
|
[events]
|
|
10914
10914
|
);
|
|
10915
|
-
const days =
|
|
10915
|
+
const days = React32.useMemo(() => {
|
|
10916
10916
|
return Array.from(
|
|
10917
10917
|
{ length: AgendaDaysToShow },
|
|
10918
10918
|
(_, i) => dateFns.addDays(new Date(currentDate), i)
|
|
@@ -10981,7 +10981,7 @@ function AgendaView({
|
|
|
10981
10981
|
] })
|
|
10982
10982
|
] }) });
|
|
10983
10983
|
}
|
|
10984
|
-
var CalendarDndContext2 =
|
|
10984
|
+
var CalendarDndContext2 = React32.createContext({
|
|
10985
10985
|
activeEvent: null,
|
|
10986
10986
|
activeId: null,
|
|
10987
10987
|
activeView: null,
|
|
@@ -10991,22 +10991,22 @@ var CalendarDndContext2 = React33.createContext({
|
|
|
10991
10991
|
isMultiDay: false,
|
|
10992
10992
|
multiDayWidth: null
|
|
10993
10993
|
});
|
|
10994
|
-
var useCalendarDnd = () =>
|
|
10994
|
+
var useCalendarDnd = () => React32.useContext(CalendarDndContext2);
|
|
10995
10995
|
function CalendarDndProvider({
|
|
10996
10996
|
children,
|
|
10997
10997
|
onEventUpdate
|
|
10998
10998
|
}) {
|
|
10999
|
-
const [activeEvent, setActiveEvent] =
|
|
11000
|
-
const [activeId, setActiveId] =
|
|
11001
|
-
const [activeView, setActiveView] =
|
|
10999
|
+
const [activeEvent, setActiveEvent] = React32.useState(null);
|
|
11000
|
+
const [activeId, setActiveId] = React32.useState(null);
|
|
11001
|
+
const [activeView, setActiveView] = React32.useState(
|
|
11002
11002
|
null
|
|
11003
11003
|
);
|
|
11004
|
-
const [currentTime, setCurrentTime] =
|
|
11005
|
-
const [eventHeight, setEventHeight] =
|
|
11006
|
-
const [isMultiDay, setIsMultiDay] =
|
|
11007
|
-
const [multiDayWidth, setMultiDayWidth] =
|
|
11008
|
-
const [dragHandlePosition, setDragHandlePosition] =
|
|
11009
|
-
const eventDimensions =
|
|
11004
|
+
const [currentTime, setCurrentTime] = React32.useState(null);
|
|
11005
|
+
const [eventHeight, setEventHeight] = React32.useState(null);
|
|
11006
|
+
const [isMultiDay, setIsMultiDay] = React32.useState(false);
|
|
11007
|
+
const [multiDayWidth, setMultiDayWidth] = React32.useState(null);
|
|
11008
|
+
const [dragHandlePosition, setDragHandlePosition] = React32.useState(null);
|
|
11009
|
+
const eventDimensions = React32.useRef({ height: 0 });
|
|
11010
11010
|
const sensors = core.useSensors(
|
|
11011
11011
|
core.useSensor(core.MouseSensor, {
|
|
11012
11012
|
// Require the mouse to move by 5px before activating
|
|
@@ -11028,7 +11028,7 @@ function CalendarDndProvider({
|
|
|
11028
11028
|
}
|
|
11029
11029
|
})
|
|
11030
11030
|
);
|
|
11031
|
-
const dndContextId =
|
|
11031
|
+
const dndContextId = React32.useId();
|
|
11032
11032
|
const handleDragStart = (event) => {
|
|
11033
11033
|
const { active } = event;
|
|
11034
11034
|
if (!active.data.current) {
|
|
@@ -11213,14 +11213,14 @@ function DayView({
|
|
|
11213
11213
|
onEventSelect,
|
|
11214
11214
|
onEventCreate
|
|
11215
11215
|
}) {
|
|
11216
|
-
const hours =
|
|
11216
|
+
const hours = React32.useMemo(() => {
|
|
11217
11217
|
const dayStart = dateFns.startOfDay(currentDate);
|
|
11218
11218
|
return dateFns.eachHourOfInterval({
|
|
11219
11219
|
end: dateFns.addHours(dayStart, EndHour - 1),
|
|
11220
11220
|
start: dateFns.addHours(dayStart, StartHour)
|
|
11221
11221
|
});
|
|
11222
11222
|
}, [currentDate]);
|
|
11223
|
-
const dayEvents =
|
|
11223
|
+
const dayEvents = React32.useMemo(() => {
|
|
11224
11224
|
return events.filter((event) => {
|
|
11225
11225
|
const eventStart = new Date(event.start);
|
|
11226
11226
|
const eventEnd = new Date(event.end);
|
|
@@ -11229,17 +11229,17 @@ function DayView({
|
|
|
11229
11229
|
(a, b) => new Date(a.start).getTime() - new Date(b.start).getTime()
|
|
11230
11230
|
);
|
|
11231
11231
|
}, [currentDate, events]);
|
|
11232
|
-
const allDayEvents =
|
|
11232
|
+
const allDayEvents = React32.useMemo(() => {
|
|
11233
11233
|
return dayEvents.filter((event) => {
|
|
11234
11234
|
return event.allDay || isMultiDayEvent(event);
|
|
11235
11235
|
});
|
|
11236
11236
|
}, [dayEvents]);
|
|
11237
|
-
const timeEvents =
|
|
11237
|
+
const timeEvents = React32.useMemo(() => {
|
|
11238
11238
|
return dayEvents.filter((event) => {
|
|
11239
11239
|
return !event.allDay && !isMultiDayEvent(event);
|
|
11240
11240
|
});
|
|
11241
11241
|
}, [dayEvents]);
|
|
11242
|
-
const positionedEvents =
|
|
11242
|
+
const positionedEvents = React32.useMemo(() => {
|
|
11243
11243
|
const result = [];
|
|
11244
11244
|
const dayStart = dateFns.startOfDay(currentDate);
|
|
11245
11245
|
const sortedEvents = [...timeEvents].sort((a, b) => {
|
|
@@ -11428,8 +11428,8 @@ function DraggableEvent2({
|
|
|
11428
11428
|
"aria-hidden": ariaHidden
|
|
11429
11429
|
}) {
|
|
11430
11430
|
const { activeId } = useCalendarDnd();
|
|
11431
|
-
const elementRef =
|
|
11432
|
-
const [dragHandlePosition, setDragHandlePosition] =
|
|
11431
|
+
const elementRef = React32.useRef(null);
|
|
11432
|
+
const [dragHandlePosition, setDragHandlePosition] = React32.useState(null);
|
|
11433
11433
|
const eventStart = new Date(event.start);
|
|
11434
11434
|
const eventEnd = new Date(event.end);
|
|
11435
11435
|
const isMultiDayEvent2 = isMultiDay || event.allDay || dateFns.differenceInDays(eventEnd, eventStart) >= 1;
|
|
@@ -11554,11 +11554,11 @@ function EventCalendar({
|
|
|
11554
11554
|
className,
|
|
11555
11555
|
initialView = "month"
|
|
11556
11556
|
}) {
|
|
11557
|
-
const [currentDate, setCurrentDate] =
|
|
11558
|
-
const [view, setView] =
|
|
11559
|
-
const [isFading, setIsFading] =
|
|
11557
|
+
const [currentDate, setCurrentDate] = React32.useState(/* @__PURE__ */ new Date());
|
|
11558
|
+
const [view, setView] = React32.useState(initialView);
|
|
11559
|
+
const [isFading, setIsFading] = React32.useState(false);
|
|
11560
11560
|
const FADE_DURATION = 220;
|
|
11561
|
-
const changeView =
|
|
11561
|
+
const changeView = React32.useCallback(
|
|
11562
11562
|
(next) => {
|
|
11563
11563
|
if (next === view) return;
|
|
11564
11564
|
setIsFading(true);
|
|
@@ -11569,12 +11569,12 @@ function EventCalendar({
|
|
|
11569
11569
|
},
|
|
11570
11570
|
[view]
|
|
11571
11571
|
);
|
|
11572
|
-
const [isPaging, setIsPaging] =
|
|
11573
|
-
const [pageDirection, setPageDirection] =
|
|
11572
|
+
const [isPaging, setIsPaging] = React32.useState(false);
|
|
11573
|
+
const [pageDirection, setPageDirection] = React32.useState(
|
|
11574
11574
|
null
|
|
11575
11575
|
);
|
|
11576
11576
|
const PAGE_DURATION = 200;
|
|
11577
|
-
const pageTransition =
|
|
11577
|
+
const pageTransition = React32.useCallback(
|
|
11578
11578
|
(applyDateChange, direction) => {
|
|
11579
11579
|
setIsPaging(true);
|
|
11580
11580
|
setPageDirection(direction);
|
|
@@ -11588,11 +11588,11 @@ function EventCalendar({
|
|
|
11588
11588
|
},
|
|
11589
11589
|
[]
|
|
11590
11590
|
);
|
|
11591
|
-
const [isEventDialogOpen, setIsEventDialogOpen] =
|
|
11592
|
-
const [selectedEvent, setSelectedEvent] =
|
|
11591
|
+
const [isEventDialogOpen, setIsEventDialogOpen] = React32.useState(false);
|
|
11592
|
+
const [selectedEvent, setSelectedEvent] = React32.useState(
|
|
11593
11593
|
null
|
|
11594
11594
|
);
|
|
11595
|
-
|
|
11595
|
+
React32.useEffect(() => {
|
|
11596
11596
|
const handleKeyDown = (e) => {
|
|
11597
11597
|
if (isEventDialogOpen || e.target instanceof HTMLInputElement || e.target instanceof HTMLTextAreaElement || e.target instanceof HTMLElement && e.target.isContentEditable) {
|
|
11598
11598
|
return;
|
|
@@ -11734,7 +11734,7 @@ function EventCalendar({
|
|
|
11734
11734
|
position: "bottom-left"
|
|
11735
11735
|
});
|
|
11736
11736
|
};
|
|
11737
|
-
const viewTitle =
|
|
11737
|
+
const viewTitle = React32.useMemo(() => {
|
|
11738
11738
|
const capitalize = (s) => s && s.length > 0 ? s.charAt(0).toUpperCase() + s.slice(1) : s;
|
|
11739
11739
|
if (view === "month") {
|
|
11740
11740
|
return capitalize(dateFns.format(currentDate, "MMMM yyyy", { locale: locale.ptBR }));
|
|
@@ -11993,21 +11993,21 @@ function EventDialog({
|
|
|
11993
11993
|
onSave,
|
|
11994
11994
|
onDelete
|
|
11995
11995
|
}) {
|
|
11996
|
-
const [title, setTitle] =
|
|
11997
|
-
const [description, setDescription] =
|
|
11998
|
-
const [startDate, setStartDate] =
|
|
11999
|
-
const [endDate, setEndDate] =
|
|
12000
|
-
const [startTime, setStartTime] =
|
|
12001
|
-
const [endTime, setEndTime] =
|
|
12002
|
-
const [allDay, setAllDay] =
|
|
12003
|
-
const [location, setLocation] =
|
|
12004
|
-
const [color, setColor] =
|
|
12005
|
-
const [error, setError] =
|
|
12006
|
-
const [startDateOpen, setStartDateOpen] =
|
|
12007
|
-
const [endDateOpen, setEndDateOpen] =
|
|
12008
|
-
|
|
11996
|
+
const [title, setTitle] = React32.useState("");
|
|
11997
|
+
const [description, setDescription] = React32.useState("");
|
|
11998
|
+
const [startDate, setStartDate] = React32.useState(/* @__PURE__ */ new Date());
|
|
11999
|
+
const [endDate, setEndDate] = React32.useState(/* @__PURE__ */ new Date());
|
|
12000
|
+
const [startTime, setStartTime] = React32.useState(`${DefaultStartHour}:00`);
|
|
12001
|
+
const [endTime, setEndTime] = React32.useState(`${DefaultEndHour}:00`);
|
|
12002
|
+
const [allDay, setAllDay] = React32.useState(false);
|
|
12003
|
+
const [location, setLocation] = React32.useState("");
|
|
12004
|
+
const [color, setColor] = React32.useState("sky");
|
|
12005
|
+
const [error, setError] = React32.useState(null);
|
|
12006
|
+
const [startDateOpen, setStartDateOpen] = React32.useState(false);
|
|
12007
|
+
const [endDateOpen, setEndDateOpen] = React32.useState(false);
|
|
12008
|
+
React32.useEffect(() => {
|
|
12009
12009
|
}, [event]);
|
|
12010
|
-
const resetForm =
|
|
12010
|
+
const resetForm = React32.useCallback(() => {
|
|
12011
12011
|
setTitle("");
|
|
12012
12012
|
setDescription("");
|
|
12013
12013
|
setStartDate(/* @__PURE__ */ new Date());
|
|
@@ -12019,12 +12019,12 @@ function EventDialog({
|
|
|
12019
12019
|
setColor("sky");
|
|
12020
12020
|
setError(null);
|
|
12021
12021
|
}, []);
|
|
12022
|
-
const formatTimeForInput =
|
|
12022
|
+
const formatTimeForInput = React32.useCallback((date) => {
|
|
12023
12023
|
const hours = date.getHours().toString().padStart(2, "0");
|
|
12024
12024
|
const minutes = Math.floor(date.getMinutes() / 15) * 15;
|
|
12025
12025
|
return `${hours}:${minutes.toString().padStart(2, "0")}`;
|
|
12026
12026
|
}, []);
|
|
12027
|
-
|
|
12027
|
+
React32.useEffect(() => {
|
|
12028
12028
|
if (event) {
|
|
12029
12029
|
setTitle(event.title || "");
|
|
12030
12030
|
setDescription(event.description || "");
|
|
@@ -12042,7 +12042,7 @@ function EventDialog({
|
|
|
12042
12042
|
resetForm();
|
|
12043
12043
|
}
|
|
12044
12044
|
}, [event, formatTimeForInput, resetForm]);
|
|
12045
|
-
const timeOptions =
|
|
12045
|
+
const timeOptions = React32.useMemo(() => {
|
|
12046
12046
|
const options = [];
|
|
12047
12047
|
for (let hour = StartHour; hour <= EndHour; hour++) {
|
|
12048
12048
|
for (let minute = 0; minute < 60; minute += 15) {
|
|
@@ -12521,7 +12521,7 @@ function EventItem({
|
|
|
12521
12521
|
const eventColor = event.color;
|
|
12522
12522
|
const hasValidTime = isValidDate3(event.start) && isValidDate3(event.end) || isValidDate3(event.attend_date);
|
|
12523
12523
|
const colorClasses = hasValidTime ? getEventColorClasses(eventColor) : "bg-gray-200/50 hover:bg-gray-200/40 text-gray-900/80 dark:bg-gray-700/25 dark:text-gray-200/90 shadow-none";
|
|
12524
|
-
const displayStart =
|
|
12524
|
+
const displayStart = React32.useMemo(() => {
|
|
12525
12525
|
if (!hasValidTime) return void 0;
|
|
12526
12526
|
if (isValidDate3(event.start))
|
|
12527
12527
|
return currentTime || new Date(event.start);
|
|
@@ -12529,7 +12529,7 @@ function EventItem({
|
|
|
12529
12529
|
return currentTime || new Date(event.attend_date);
|
|
12530
12530
|
return void 0;
|
|
12531
12531
|
}, [currentTime, event.start, event.attend_date, hasValidTime]);
|
|
12532
|
-
const displayEnd =
|
|
12532
|
+
const displayEnd = React32.useMemo(() => {
|
|
12533
12533
|
if (!hasValidTime) return void 0;
|
|
12534
12534
|
if (isValidDate3(event.end)) {
|
|
12535
12535
|
return currentTime ? new Date(
|
|
@@ -12542,7 +12542,7 @@ function EventItem({
|
|
|
12542
12542
|
}
|
|
12543
12543
|
return void 0;
|
|
12544
12544
|
}, [currentTime, event.start, event.end, event.attend_date, hasValidTime]);
|
|
12545
|
-
const durationMinutes =
|
|
12545
|
+
const durationMinutes = React32.useMemo(() => {
|
|
12546
12546
|
if (!hasValidTime || !displayStart || !displayEnd) return 0;
|
|
12547
12547
|
return dateFns.differenceInMinutes(displayEnd, displayStart);
|
|
12548
12548
|
}, [displayStart, displayEnd, hasValidTime]);
|
|
@@ -12748,8 +12748,8 @@ function EventsPopup({
|
|
|
12748
12748
|
onClose,
|
|
12749
12749
|
onEventSelect
|
|
12750
12750
|
}) {
|
|
12751
|
-
const popupRef =
|
|
12752
|
-
|
|
12751
|
+
const popupRef = React32.useRef(null);
|
|
12752
|
+
React32.useEffect(() => {
|
|
12753
12753
|
const handleClickOutside = (event) => {
|
|
12754
12754
|
if (popupRef.current && !popupRef.current.contains(event.target)) {
|
|
12755
12755
|
onClose();
|
|
@@ -12760,7 +12760,7 @@ function EventsPopup({
|
|
|
12760
12760
|
document.removeEventListener("mousedown", handleClickOutside);
|
|
12761
12761
|
};
|
|
12762
12762
|
}, [onClose]);
|
|
12763
|
-
|
|
12763
|
+
React32.useEffect(() => {
|
|
12764
12764
|
const handleEscKey = (event) => {
|
|
12765
12765
|
if (event.key === "Escape") {
|
|
12766
12766
|
onClose();
|
|
@@ -12775,7 +12775,7 @@ function EventsPopup({
|
|
|
12775
12775
|
if (onEventSelect) onEventSelect(event);
|
|
12776
12776
|
onClose();
|
|
12777
12777
|
};
|
|
12778
|
-
const adjustedPosition =
|
|
12778
|
+
const adjustedPosition = React32.useMemo(() => {
|
|
12779
12779
|
const positionCopy = { ...position };
|
|
12780
12780
|
if (popupRef.current) {
|
|
12781
12781
|
const rect = popupRef.current.getBoundingClientRect();
|
|
@@ -12853,9 +12853,9 @@ function EventsPopup({
|
|
|
12853
12853
|
);
|
|
12854
12854
|
}
|
|
12855
12855
|
function useCurrentTimeIndicator(currentDate, view) {
|
|
12856
|
-
const [currentTimePosition, setCurrentTimePosition] =
|
|
12857
|
-
const [currentTimeVisible, setCurrentTimeVisible] =
|
|
12858
|
-
|
|
12856
|
+
const [currentTimePosition, setCurrentTimePosition] = React32.useState(0);
|
|
12857
|
+
const [currentTimeVisible, setCurrentTimeVisible] = React32.useState(false);
|
|
12858
|
+
React32.useEffect(() => {
|
|
12859
12859
|
const calculateTimePosition = () => {
|
|
12860
12860
|
const now = /* @__PURE__ */ new Date();
|
|
12861
12861
|
const hours = now.getHours();
|
|
@@ -12888,10 +12888,10 @@ function useEventVisibility({
|
|
|
12888
12888
|
eventHeight,
|
|
12889
12889
|
eventGap
|
|
12890
12890
|
}) {
|
|
12891
|
-
const contentRef =
|
|
12892
|
-
const observerRef =
|
|
12893
|
-
const [contentHeight, setContentHeight] =
|
|
12894
|
-
|
|
12891
|
+
const contentRef = React32.useRef(null);
|
|
12892
|
+
const observerRef = React32.useRef(null);
|
|
12893
|
+
const [contentHeight, setContentHeight] = React32.useState(null);
|
|
12894
|
+
React32.useLayoutEffect(() => {
|
|
12895
12895
|
if (!contentRef.current) return;
|
|
12896
12896
|
const updateHeight = () => {
|
|
12897
12897
|
if (contentRef.current) {
|
|
@@ -12911,7 +12911,7 @@ function useEventVisibility({
|
|
|
12911
12911
|
}
|
|
12912
12912
|
};
|
|
12913
12913
|
}, []);
|
|
12914
|
-
const getVisibleEventCount =
|
|
12914
|
+
const getVisibleEventCount = React32.useMemo(() => {
|
|
12915
12915
|
return (totalEvents) => {
|
|
12916
12916
|
if (!contentHeight) return totalEvents;
|
|
12917
12917
|
const maxEvents = Math.floor(contentHeight / (eventHeight + eventGap));
|
|
@@ -12933,21 +12933,21 @@ function MonthView({
|
|
|
12933
12933
|
onEventSelect,
|
|
12934
12934
|
onEventCreate
|
|
12935
12935
|
}) {
|
|
12936
|
-
const days =
|
|
12936
|
+
const days = React32.useMemo(() => {
|
|
12937
12937
|
const monthStart = dateFns.startOfMonth(currentDate);
|
|
12938
12938
|
const monthEnd = dateFns.endOfMonth(monthStart);
|
|
12939
12939
|
const calendarStart = dateFns.startOfWeek(monthStart, { weekStartsOn: 0 });
|
|
12940
12940
|
const calendarEnd = dateFns.endOfWeek(monthEnd, { weekStartsOn: 0 });
|
|
12941
12941
|
return dateFns.eachDayOfInterval({ end: calendarEnd, start: calendarStart });
|
|
12942
12942
|
}, [currentDate]);
|
|
12943
|
-
const weekdays =
|
|
12943
|
+
const weekdays = React32.useMemo(() => {
|
|
12944
12944
|
return Array.from({ length: 7 }).map((_, i) => {
|
|
12945
12945
|
const date = dateFns.addDays(dateFns.startOfWeek(/* @__PURE__ */ new Date(), { weekStartsOn: 0 }), i);
|
|
12946
12946
|
const short = dateFns.format(date, "EEE", { locale: locale.ptBR });
|
|
12947
12947
|
return short.charAt(0).toUpperCase() + short.slice(1);
|
|
12948
12948
|
});
|
|
12949
12949
|
}, []);
|
|
12950
|
-
const weeks =
|
|
12950
|
+
const weeks = React32.useMemo(() => {
|
|
12951
12951
|
const result = [];
|
|
12952
12952
|
let week = [];
|
|
12953
12953
|
for (let i = 0; i < days.length; i++) {
|
|
@@ -12963,12 +12963,12 @@ function MonthView({
|
|
|
12963
12963
|
e.stopPropagation();
|
|
12964
12964
|
onEventSelect(event);
|
|
12965
12965
|
};
|
|
12966
|
-
const [isMounted, setIsMounted] =
|
|
12966
|
+
const [isMounted, setIsMounted] = React32.useState(false);
|
|
12967
12967
|
const { contentRef, getVisibleEventCount } = useEventVisibility({
|
|
12968
12968
|
eventGap: EventGap,
|
|
12969
12969
|
eventHeight: EventHeight
|
|
12970
12970
|
});
|
|
12971
|
-
|
|
12971
|
+
React32.useEffect(() => {
|
|
12972
12972
|
setIsMounted(true);
|
|
12973
12973
|
}, []);
|
|
12974
12974
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "contents", "data-slot": "month-view", children: [
|
|
@@ -13242,23 +13242,23 @@ function WeekView({
|
|
|
13242
13242
|
onEventSelect,
|
|
13243
13243
|
onEventCreate
|
|
13244
13244
|
}) {
|
|
13245
|
-
const days =
|
|
13245
|
+
const days = React32.useMemo(() => {
|
|
13246
13246
|
const weekStart2 = dateFns.startOfWeek(currentDate, { weekStartsOn: 0 });
|
|
13247
13247
|
const weekEnd = dateFns.endOfWeek(currentDate, { weekStartsOn: 0 });
|
|
13248
13248
|
return dateFns.eachDayOfInterval({ end: weekEnd, start: weekStart2 });
|
|
13249
13249
|
}, [currentDate]);
|
|
13250
|
-
const weekStart =
|
|
13250
|
+
const weekStart = React32.useMemo(
|
|
13251
13251
|
() => dateFns.startOfWeek(currentDate, { weekStartsOn: 0 }),
|
|
13252
13252
|
[currentDate]
|
|
13253
13253
|
);
|
|
13254
|
-
const hours =
|
|
13254
|
+
const hours = React32.useMemo(() => {
|
|
13255
13255
|
const dayStart = dateFns.startOfDay(currentDate);
|
|
13256
13256
|
return dateFns.eachHourOfInterval({
|
|
13257
13257
|
end: dateFns.addHours(dayStart, EndHour - 1),
|
|
13258
13258
|
start: dateFns.addHours(dayStart, StartHour)
|
|
13259
13259
|
});
|
|
13260
13260
|
}, [currentDate]);
|
|
13261
|
-
const allDayEvents =
|
|
13261
|
+
const allDayEvents = React32.useMemo(() => {
|
|
13262
13262
|
return events.filter((event) => {
|
|
13263
13263
|
return event.allDay || isMultiDayEvent(event);
|
|
13264
13264
|
}).filter((event) => {
|
|
@@ -13269,7 +13269,7 @@ function WeekView({
|
|
|
13269
13269
|
);
|
|
13270
13270
|
});
|
|
13271
13271
|
}, [events, days]);
|
|
13272
|
-
const processedDayEvents =
|
|
13272
|
+
const processedDayEvents = React32.useMemo(() => {
|
|
13273
13273
|
const result = days.map((day) => {
|
|
13274
13274
|
const dayEvents = events.filter((event) => {
|
|
13275
13275
|
if (event.allDay || isMultiDayEvent(event)) return false;
|
|
@@ -13558,8 +13558,8 @@ function AvatarCombobox({
|
|
|
13558
13558
|
className,
|
|
13559
13559
|
colors: colors2
|
|
13560
13560
|
}) {
|
|
13561
|
-
const [open, setOpen] =
|
|
13562
|
-
const id =
|
|
13561
|
+
const [open, setOpen] = React32.useState(false);
|
|
13562
|
+
const id = React32.useId();
|
|
13563
13563
|
const allItems = items || (groupItems ? Object.values(groupItems).flat() : []);
|
|
13564
13564
|
const selectedItem = allItems.find((item) => item.value === selected);
|
|
13565
13565
|
const renderItem = (item) => {
|
|
@@ -13697,13 +13697,13 @@ function MultiSelect({
|
|
|
13697
13697
|
clickToRemove = true,
|
|
13698
13698
|
overflowBehavior = "wrap-when-open"
|
|
13699
13699
|
}) {
|
|
13700
|
-
const [page, setPage] =
|
|
13701
|
-
const [animating, setAnimating] =
|
|
13700
|
+
const [page, setPage] = React32.useState(1);
|
|
13701
|
+
const [animating, setAnimating] = React32.useState(false);
|
|
13702
13702
|
const groupCount = groupItems ? Object.keys(groupItems).length : 0;
|
|
13703
|
-
|
|
13703
|
+
React32.useEffect(() => {
|
|
13704
13704
|
setPage(1);
|
|
13705
13705
|
}, [items?.length, groupCount, pagination]);
|
|
13706
|
-
const paged =
|
|
13706
|
+
const paged = React32.useMemo(() => {
|
|
13707
13707
|
if (!pagination || pagination <= 0) return null;
|
|
13708
13708
|
if (groupItems) {
|
|
13709
13709
|
const flattened = Object.keys(groupItems).flatMap(
|
|
@@ -13734,13 +13734,13 @@ function MultiSelect({
|
|
|
13734
13734
|
}, [items, groupItems, page, pagination]);
|
|
13735
13735
|
const goPrev = () => setPage((p) => Math.max(1, p - 1));
|
|
13736
13736
|
const goNext = () => setPage((p) => paged ? Math.min(paged.totalPages, p + 1) : p + 1);
|
|
13737
|
-
|
|
13737
|
+
React32.useEffect(() => {
|
|
13738
13738
|
if (!pagination) return;
|
|
13739
13739
|
setAnimating(true);
|
|
13740
13740
|
const id = setTimeout(() => setAnimating(false), 220);
|
|
13741
13741
|
return () => clearTimeout(id);
|
|
13742
13742
|
}, [page, pagination]);
|
|
13743
|
-
const initialItems =
|
|
13743
|
+
const initialItems = React32.useMemo(() => {
|
|
13744
13744
|
if (groupItems) {
|
|
13745
13745
|
return Object.values(groupItems).flat();
|
|
13746
13746
|
}
|
|
@@ -13789,7 +13789,7 @@ function MultiSelect({
|
|
|
13789
13789
|
"div",
|
|
13790
13790
|
{
|
|
13791
13791
|
className: `transition-all duration-200 ${animating ? "opacity-0 -translate-y-1" : "opacity-100 translate-y-0"}`,
|
|
13792
|
-
children: paged && "grouped" in paged ? Object.keys(paged.grouped).map((key, index) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
13792
|
+
children: paged && "grouped" in paged ? Object.keys(paged.grouped).map((key, index) => /* @__PURE__ */ jsxRuntime.jsxs(React32__namespace.default.Fragment, { children: [
|
|
13793
13793
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
13794
13794
|
MultiSelectGroupBase,
|
|
13795
13795
|
{
|
|
@@ -13856,7 +13856,7 @@ function MultiSelect({
|
|
|
13856
13856
|
)
|
|
13857
13857
|
] })
|
|
13858
13858
|
] })
|
|
13859
|
-
] }) : /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: groupItems ? /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: Object.keys(groupItems).map((key, index) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
13859
|
+
] }) : /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: groupItems ? /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: Object.keys(groupItems).map((key, index) => /* @__PURE__ */ jsxRuntime.jsxs(React32__namespace.default.Fragment, { children: [
|
|
13860
13860
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
13861
13861
|
MultiSelectGroupBase,
|
|
13862
13862
|
{
|
|
@@ -14241,11 +14241,11 @@ function PeriodsDropdown({
|
|
|
14241
14241
|
activePeriods
|
|
14242
14242
|
}) {
|
|
14243
14243
|
const periods = processedData.map((d) => String(d.name));
|
|
14244
|
-
const [open, setOpen] =
|
|
14245
|
-
const wrapperRef =
|
|
14246
|
-
const firstItemRef =
|
|
14247
|
-
const listRef =
|
|
14248
|
-
|
|
14244
|
+
const [open, setOpen] = React32.useState(false);
|
|
14245
|
+
const wrapperRef = React32.useRef(null);
|
|
14246
|
+
const firstItemRef = React32.useRef(null);
|
|
14247
|
+
const listRef = React32.useRef(null);
|
|
14248
|
+
React32.useEffect(() => {
|
|
14249
14249
|
const handleClickOutside = (e) => {
|
|
14250
14250
|
if (!wrapperRef.current) return;
|
|
14251
14251
|
if (!wrapperRef.current.contains(e.target)) setOpen(false);
|
|
@@ -14260,7 +14260,7 @@ function PeriodsDropdown({
|
|
|
14260
14260
|
document.removeEventListener("keydown", handleEscape);
|
|
14261
14261
|
};
|
|
14262
14262
|
}, []);
|
|
14263
|
-
|
|
14263
|
+
React32.useEffect(() => {
|
|
14264
14264
|
if (open && firstItemRef.current) {
|
|
14265
14265
|
firstItemRef.current.focus();
|
|
14266
14266
|
}
|
|
@@ -14664,12 +14664,12 @@ var DraggableTooltipComponent = ({
|
|
|
14664
14664
|
valueFormatter,
|
|
14665
14665
|
categoryFormatter
|
|
14666
14666
|
}) => {
|
|
14667
|
-
const visibleKeys =
|
|
14667
|
+
const visibleKeys = React32.useMemo(
|
|
14668
14668
|
() => showOnlyHighlighted && highlightedSeries && highlightedSeries.size > 0 ? dataKeys.filter((k) => highlightedSeries.has(k)) : dataKeys,
|
|
14669
14669
|
[showOnlyHighlighted, highlightedSeries, dataKeys]
|
|
14670
14670
|
);
|
|
14671
|
-
const TotalDisplay =
|
|
14672
|
-
const total =
|
|
14671
|
+
const TotalDisplay = React32__namespace.default.memo(({ data: data2, visibleKeys: visibleKeys2, valueFormatter: localformatter }) => {
|
|
14672
|
+
const total = React32.useMemo(() => {
|
|
14673
14673
|
const numeric = visibleKeys2.map((k) => data2[k]).filter((v) => typeof v === "number");
|
|
14674
14674
|
return numeric.reduce((s, v) => s + (v || 0), 0);
|
|
14675
14675
|
}, [data2, visibleKeys2]);
|
|
@@ -14691,14 +14691,14 @@ var DraggableTooltipComponent = ({
|
|
|
14691
14691
|
)
|
|
14692
14692
|
] });
|
|
14693
14693
|
});
|
|
14694
|
-
const [localPos, setLocalPos] =
|
|
14695
|
-
const [dragging, setDragging] =
|
|
14696
|
-
const offsetRef =
|
|
14697
|
-
const lastMouse =
|
|
14698
|
-
const [alignmentGuides, setAlignmentGuides] =
|
|
14699
|
-
const [globalTooltipCountLocal, setGlobalTooltipCountLocal] =
|
|
14700
|
-
|
|
14701
|
-
const getAllTooltips =
|
|
14694
|
+
const [localPos, setLocalPos] = React32.useState(position);
|
|
14695
|
+
const [dragging, setDragging] = React32.useState(false);
|
|
14696
|
+
const offsetRef = React32.useRef({ x: 0, y: 0 });
|
|
14697
|
+
const lastMouse = React32.useRef({ x: 0, y: 0 });
|
|
14698
|
+
const [alignmentGuides, setAlignmentGuides] = React32.useState([]);
|
|
14699
|
+
const [globalTooltipCountLocal, setGlobalTooltipCountLocal] = React32.useState(0);
|
|
14700
|
+
React32.useEffect(() => setLocalPos(position), [position]);
|
|
14701
|
+
const getAllTooltips = React32.useCallback(() => {
|
|
14702
14702
|
const response = [];
|
|
14703
14703
|
const ev = new CustomEvent("requestGlobalTooltips", {
|
|
14704
14704
|
detail: { requesterId: id, response }
|
|
@@ -14706,7 +14706,7 @@ var DraggableTooltipComponent = ({
|
|
|
14706
14706
|
window.dispatchEvent(ev);
|
|
14707
14707
|
return response;
|
|
14708
14708
|
}, [id]);
|
|
14709
|
-
const updateAlignmentGuides =
|
|
14709
|
+
const updateAlignmentGuides = React32.useCallback(
|
|
14710
14710
|
(currentPosition) => {
|
|
14711
14711
|
const allTooltips = getAllTooltips();
|
|
14712
14712
|
const otherTooltips = allTooltips.filter((t) => t.id !== id);
|
|
@@ -14755,7 +14755,7 @@ var DraggableTooltipComponent = ({
|
|
|
14755
14755
|
},
|
|
14756
14756
|
[getAllTooltips, id]
|
|
14757
14757
|
);
|
|
14758
|
-
const snapToGuides =
|
|
14758
|
+
const snapToGuides = React32.useCallback(
|
|
14759
14759
|
(position2) => {
|
|
14760
14760
|
const snappedPosition = { ...position2 };
|
|
14761
14761
|
let hasSnapped = false;
|
|
@@ -14802,7 +14802,7 @@ var DraggableTooltipComponent = ({
|
|
|
14802
14802
|
},
|
|
14803
14803
|
[alignmentGuides]
|
|
14804
14804
|
);
|
|
14805
|
-
|
|
14805
|
+
React32.useEffect(() => {
|
|
14806
14806
|
let rafId = null;
|
|
14807
14807
|
const handleMouseMove = (e) => {
|
|
14808
14808
|
if (!dragging) return;
|
|
@@ -14876,7 +14876,7 @@ var DraggableTooltipComponent = ({
|
|
|
14876
14876
|
document.body.style.userSelect = "";
|
|
14877
14877
|
};
|
|
14878
14878
|
}, [dragging, snapToGuides, updateAlignmentGuides, id, onPositionChange]);
|
|
14879
|
-
|
|
14879
|
+
React32.useEffect(() => {
|
|
14880
14880
|
const handleCloseAll = () => onClose(id);
|
|
14881
14881
|
const handleRequestTooltipCount = () => {
|
|
14882
14882
|
window.dispatchEvent(
|
|
@@ -14907,7 +14907,7 @@ var DraggableTooltipComponent = ({
|
|
|
14907
14907
|
});
|
|
14908
14908
|
};
|
|
14909
14909
|
}, [id, localPos, onClose]);
|
|
14910
|
-
|
|
14910
|
+
React32.useEffect(() => {
|
|
14911
14911
|
if (dragging) return;
|
|
14912
14912
|
let total = 0;
|
|
14913
14913
|
const timeoutId = setTimeout(() => {
|
|
@@ -14925,7 +14925,7 @@ var DraggableTooltipComponent = ({
|
|
|
14925
14925
|
}, 0);
|
|
14926
14926
|
return () => clearTimeout(timeoutId);
|
|
14927
14927
|
}, [localPos, dragging]);
|
|
14928
|
-
|
|
14928
|
+
React32.useEffect(() => {
|
|
14929
14929
|
const recount = () => {
|
|
14930
14930
|
if (dragging) return;
|
|
14931
14931
|
let total = 0;
|
|
@@ -14943,7 +14943,7 @@ var DraggableTooltipComponent = ({
|
|
|
14943
14943
|
window.addEventListener("recountTooltips", recount);
|
|
14944
14944
|
return () => window.removeEventListener("recountTooltips", recount);
|
|
14945
14945
|
}, [dragging]);
|
|
14946
|
-
const handleMouseDownLocal =
|
|
14946
|
+
const handleMouseDownLocal = React32.useCallback(
|
|
14947
14947
|
(e) => {
|
|
14948
14948
|
e.preventDefault();
|
|
14949
14949
|
e.stopPropagation();
|
|
@@ -14954,7 +14954,7 @@ var DraggableTooltipComponent = ({
|
|
|
14954
14954
|
},
|
|
14955
14955
|
[id, onMouseDown]
|
|
14956
14956
|
);
|
|
14957
|
-
const handleTouchStartLocal =
|
|
14957
|
+
const handleTouchStartLocal = React32.useCallback(
|
|
14958
14958
|
(e) => {
|
|
14959
14959
|
e.preventDefault();
|
|
14960
14960
|
e.stopPropagation();
|
|
@@ -14970,7 +14970,7 @@ var DraggableTooltipComponent = ({
|
|
|
14970
14970
|
},
|
|
14971
14971
|
[id, onMouseDown]
|
|
14972
14972
|
);
|
|
14973
|
-
const handleCloseClick =
|
|
14973
|
+
const handleCloseClick = React32.useCallback(
|
|
14974
14974
|
(e) => {
|
|
14975
14975
|
e.stopPropagation();
|
|
14976
14976
|
onClose(id);
|
|
@@ -15116,7 +15116,7 @@ var DraggableTooltipComponent = ({
|
|
|
15116
15116
|
] }) }),
|
|
15117
15117
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "p-3 pt-2 space-y-2", children: [
|
|
15118
15118
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs font-medium text-muted-foreground uppercase tracking-wide mb-2", children: dataLabel }),
|
|
15119
|
-
|
|
15119
|
+
React32.useMemo(
|
|
15120
15120
|
() => visibleKeys.map((key) => {
|
|
15121
15121
|
const value = data[key];
|
|
15122
15122
|
if (value === void 0) return null;
|
|
@@ -15234,7 +15234,7 @@ var DraggableTooltipComponent = ({
|
|
|
15234
15234
|
)
|
|
15235
15235
|
] });
|
|
15236
15236
|
};
|
|
15237
|
-
var DraggableTooltip =
|
|
15237
|
+
var DraggableTooltip = React32__namespace.default.memo(DraggableTooltipComponent);
|
|
15238
15238
|
DraggableTooltip.displayName = "DraggableTooltip";
|
|
15239
15239
|
var DraggableTooltip_default = DraggableTooltip;
|
|
15240
15240
|
var RechartTooltipWithTotal = ({
|
|
@@ -15513,13 +15513,13 @@ var SystemTooltip = ({
|
|
|
15513
15513
|
onClose,
|
|
15514
15514
|
onPositionChange
|
|
15515
15515
|
}) => {
|
|
15516
|
-
const [localPos, setLocalPos] =
|
|
15517
|
-
const [dragging, setDragging] =
|
|
15518
|
-
const [expandedId, setExpandedId] =
|
|
15519
|
-
const offsetRef =
|
|
15520
|
-
const lastMouse =
|
|
15521
|
-
|
|
15522
|
-
|
|
15516
|
+
const [localPos, setLocalPos] = React32.useState(position);
|
|
15517
|
+
const [dragging, setDragging] = React32.useState(false);
|
|
15518
|
+
const [expandedId, setExpandedId] = React32.useState(null);
|
|
15519
|
+
const offsetRef = React32.useRef({ x: 0, y: 0 });
|
|
15520
|
+
const lastMouse = React32.useRef({ x: 0, y: 0 });
|
|
15521
|
+
React32.useEffect(() => setLocalPos(position), [position]);
|
|
15522
|
+
React32.useEffect(() => {
|
|
15523
15523
|
let rafId = null;
|
|
15524
15524
|
const handleMouseMove = (e) => {
|
|
15525
15525
|
if (!dragging) return;
|
|
@@ -15558,7 +15558,7 @@ var SystemTooltip = ({
|
|
|
15558
15558
|
document.body.style.userSelect = "";
|
|
15559
15559
|
};
|
|
15560
15560
|
}, [dragging, id, onPositionChange]);
|
|
15561
|
-
const handleMouseDownLocal =
|
|
15561
|
+
const handleMouseDownLocal = React32.useCallback(
|
|
15562
15562
|
(e) => {
|
|
15563
15563
|
e.preventDefault();
|
|
15564
15564
|
e.stopPropagation();
|
|
@@ -15570,7 +15570,7 @@ var SystemTooltip = ({
|
|
|
15570
15570
|
},
|
|
15571
15571
|
[id, onMouseDown]
|
|
15572
15572
|
);
|
|
15573
|
-
const handleTouchStartLocal =
|
|
15573
|
+
const handleTouchStartLocal = React32.useCallback(
|
|
15574
15574
|
(e) => {
|
|
15575
15575
|
e.stopPropagation();
|
|
15576
15576
|
const touch = e.touches[0];
|
|
@@ -15586,11 +15586,11 @@ var SystemTooltip = ({
|
|
|
15586
15586
|
},
|
|
15587
15587
|
[id, onMouseDown]
|
|
15588
15588
|
);
|
|
15589
|
-
const entries =
|
|
15589
|
+
const entries = React32.useMemo(
|
|
15590
15590
|
() => data.connections.filter((c) => c.type === "entrada"),
|
|
15591
15591
|
[data.connections]
|
|
15592
15592
|
);
|
|
15593
|
-
const exits =
|
|
15593
|
+
const exits = React32.useMemo(
|
|
15594
15594
|
() => data.connections.filter((c) => c.type === "saida"),
|
|
15595
15595
|
[data.connections]
|
|
15596
15596
|
);
|
|
@@ -16662,11 +16662,11 @@ var NoData = ({
|
|
|
16662
16662
|
};
|
|
16663
16663
|
var NoData_default = NoData;
|
|
16664
16664
|
var useChartHighlights = () => {
|
|
16665
|
-
const [highlightedSeries, setHighlightedSeries] =
|
|
16665
|
+
const [highlightedSeries, setHighlightedSeries] = React32.useState(
|
|
16666
16666
|
/* @__PURE__ */ new Set()
|
|
16667
16667
|
);
|
|
16668
|
-
const [showOnlyHighlighted, setShowOnlyHighlighted] =
|
|
16669
|
-
const toggleHighlight =
|
|
16668
|
+
const [showOnlyHighlighted, setShowOnlyHighlighted] = React32.useState(false);
|
|
16669
|
+
const toggleHighlight = React32.useCallback((key) => {
|
|
16670
16670
|
setHighlightedSeries((prev) => {
|
|
16671
16671
|
const next = new Set(prev);
|
|
16672
16672
|
if (next.has(key)) {
|
|
@@ -16677,17 +16677,17 @@ var useChartHighlights = () => {
|
|
|
16677
16677
|
return next;
|
|
16678
16678
|
});
|
|
16679
16679
|
}, []);
|
|
16680
|
-
const clearHighlights =
|
|
16680
|
+
const clearHighlights = React32.useCallback(() => {
|
|
16681
16681
|
setHighlightedSeries(/* @__PURE__ */ new Set());
|
|
16682
16682
|
setShowOnlyHighlighted(false);
|
|
16683
16683
|
}, []);
|
|
16684
|
-
const isHighlighted =
|
|
16684
|
+
const isHighlighted = React32.useCallback(
|
|
16685
16685
|
(key) => {
|
|
16686
16686
|
return highlightedSeries.has(key);
|
|
16687
16687
|
},
|
|
16688
16688
|
[highlightedSeries]
|
|
16689
16689
|
);
|
|
16690
|
-
const getSeriesStyle =
|
|
16690
|
+
const getSeriesStyle = React32.useCallback(
|
|
16691
16691
|
(key) => {
|
|
16692
16692
|
const hasHighlights = highlightedSeries.size > 0;
|
|
16693
16693
|
const isSeriesHighlighted = highlightedSeries.has(key);
|
|
@@ -16732,9 +16732,9 @@ var useChartHighlights = () => {
|
|
|
16732
16732
|
};
|
|
16733
16733
|
};
|
|
16734
16734
|
var useChartDimensions = () => {
|
|
16735
|
-
const wrapperRef =
|
|
16736
|
-
const [measuredWidth, setMeasuredWidth] =
|
|
16737
|
-
|
|
16735
|
+
const wrapperRef = React32.useRef(null);
|
|
16736
|
+
const [measuredWidth, setMeasuredWidth] = React32.useState(null);
|
|
16737
|
+
React32.useLayoutEffect(() => {
|
|
16738
16738
|
const el = wrapperRef.current;
|
|
16739
16739
|
if (!el) return;
|
|
16740
16740
|
const ro = new ResizeObserver((entries) => {
|
|
@@ -16750,11 +16750,11 @@ var useChartDimensions = () => {
|
|
|
16750
16750
|
return { wrapperRef, measuredWidth };
|
|
16751
16751
|
};
|
|
16752
16752
|
var useChartTooltips = (maxTooltips = 5) => {
|
|
16753
|
-
const [activeTooltips, setActiveTooltips] =
|
|
16754
|
-
|
|
16753
|
+
const [activeTooltips, setActiveTooltips] = React32.useState([]);
|
|
16754
|
+
React32.useEffect(() => {
|
|
16755
16755
|
window.dispatchEvent(new Event("recountTooltips"));
|
|
16756
16756
|
}, [activeTooltips.length]);
|
|
16757
|
-
const toggleTooltip =
|
|
16757
|
+
const toggleTooltip = React32.useCallback(
|
|
16758
16758
|
(tooltipId, data, basePosition) => {
|
|
16759
16759
|
const existingIndex = activeTooltips.findIndex((t) => t.id === tooltipId);
|
|
16760
16760
|
if (existingIndex !== -1) {
|
|
@@ -16783,7 +16783,7 @@ var useChartTooltips = (maxTooltips = 5) => {
|
|
|
16783
16783
|
},
|
|
16784
16784
|
[activeTooltips, maxTooltips]
|
|
16785
16785
|
);
|
|
16786
|
-
const onTooltipPositionChange =
|
|
16786
|
+
const onTooltipPositionChange = React32.useCallback(
|
|
16787
16787
|
(id, position) => {
|
|
16788
16788
|
setActiveTooltips(
|
|
16789
16789
|
(prev) => prev.map((t) => t.id === id ? { ...t, position } : t)
|
|
@@ -16791,10 +16791,10 @@ var useChartTooltips = (maxTooltips = 5) => {
|
|
|
16791
16791
|
},
|
|
16792
16792
|
[]
|
|
16793
16793
|
);
|
|
16794
|
-
const closeTooltip =
|
|
16794
|
+
const closeTooltip = React32.useCallback((id) => {
|
|
16795
16795
|
setActiveTooltips((prev) => prev.filter((t) => t.id !== id));
|
|
16796
16796
|
}, []);
|
|
16797
|
-
const closeAllTooltips =
|
|
16797
|
+
const closeAllTooltips = React32.useCallback(() => {
|
|
16798
16798
|
setActiveTooltips([]);
|
|
16799
16799
|
}, []);
|
|
16800
16800
|
return {
|
|
@@ -16812,7 +16812,7 @@ var useChartClick = ({
|
|
|
16812
16812
|
toggleTooltip,
|
|
16813
16813
|
setActiveTooltips
|
|
16814
16814
|
}) => {
|
|
16815
|
-
const handleChartClick =
|
|
16815
|
+
const handleChartClick = React32.useCallback(
|
|
16816
16816
|
(e) => {
|
|
16817
16817
|
if (!enableDraggableTooltips) return;
|
|
16818
16818
|
const ev = e;
|
|
@@ -16830,7 +16830,7 @@ var useChartClick = ({
|
|
|
16830
16830
|
},
|
|
16831
16831
|
[enableDraggableTooltips, xAxisDataKey, toggleTooltip, setActiveTooltips]
|
|
16832
16832
|
);
|
|
16833
|
-
const handleBarClick =
|
|
16833
|
+
const handleBarClick = React32.useCallback(
|
|
16834
16834
|
(data, index, event) => {
|
|
16835
16835
|
if (!enableDraggableTooltips) return;
|
|
16836
16836
|
event.stopPropagation();
|
|
@@ -16844,7 +16844,7 @@ var useChartClick = ({
|
|
|
16844
16844
|
},
|
|
16845
16845
|
[enableDraggableTooltips, xAxisDataKey, toggleTooltip]
|
|
16846
16846
|
);
|
|
16847
|
-
const handleSeriesClick =
|
|
16847
|
+
const handleSeriesClick = React32.useCallback(
|
|
16848
16848
|
(...args) => {
|
|
16849
16849
|
if (args.length >= 3) {
|
|
16850
16850
|
const [data, index, event] = args;
|
|
@@ -16867,16 +16867,16 @@ function useTimeSeriesRange({
|
|
|
16867
16867
|
defaultEndIndex,
|
|
16868
16868
|
onRangeChange
|
|
16869
16869
|
}) {
|
|
16870
|
-
const [startIndex, setStartIndex] =
|
|
16871
|
-
const [endIndex, setEndIndex] =
|
|
16870
|
+
const [startIndex, setStartIndex] = React32.useState(defaultStartIndex);
|
|
16871
|
+
const [endIndex, setEndIndex] = React32.useState(
|
|
16872
16872
|
defaultEndIndex ?? Math.max(0, dataLength - 1)
|
|
16873
16873
|
);
|
|
16874
|
-
const [isDragging, setIsDragging] =
|
|
16875
|
-
const [dragStartX, setDragStartX] =
|
|
16876
|
-
const [initialStartIndex, setInitialStartIndex] =
|
|
16877
|
-
const [initialEndIndex, setInitialEndIndex] =
|
|
16878
|
-
const brushRef =
|
|
16879
|
-
|
|
16874
|
+
const [isDragging, setIsDragging] = React32.useState(null);
|
|
16875
|
+
const [dragStartX, setDragStartX] = React32.useState(0);
|
|
16876
|
+
const [initialStartIndex, setInitialStartIndex] = React32.useState(0);
|
|
16877
|
+
const [initialEndIndex, setInitialEndIndex] = React32.useState(0);
|
|
16878
|
+
const brushRef = React32.useRef(null);
|
|
16879
|
+
React32.useEffect(() => {
|
|
16880
16880
|
if (dataLength > 0) {
|
|
16881
16881
|
setStartIndex((prev) => Math.min(prev, dataLength - 1));
|
|
16882
16882
|
setEndIndex((prev) => {
|
|
@@ -16887,7 +16887,7 @@ function useTimeSeriesRange({
|
|
|
16887
16887
|
});
|
|
16888
16888
|
}
|
|
16889
16889
|
}, [dataLength, defaultEndIndex]);
|
|
16890
|
-
const handleRangeChange =
|
|
16890
|
+
const handleRangeChange = React32.useCallback(
|
|
16891
16891
|
(newStart, newEnd) => {
|
|
16892
16892
|
const clampedStart = Math.max(0, Math.min(newStart, dataLength - 1));
|
|
16893
16893
|
const clampedEnd = Math.max(
|
|
@@ -16902,7 +16902,7 @@ function useTimeSeriesRange({
|
|
|
16902
16902
|
},
|
|
16903
16903
|
[dataLength, onRangeChange]
|
|
16904
16904
|
);
|
|
16905
|
-
const handleMouseDown =
|
|
16905
|
+
const handleMouseDown = React32.useCallback(
|
|
16906
16906
|
(e, type) => {
|
|
16907
16907
|
e.preventDefault();
|
|
16908
16908
|
const isTouchEvent = "touches" in e;
|
|
@@ -16914,7 +16914,7 @@ function useTimeSeriesRange({
|
|
|
16914
16914
|
},
|
|
16915
16915
|
[startIndex, endIndex]
|
|
16916
16916
|
);
|
|
16917
|
-
const handleMouseMove =
|
|
16917
|
+
const handleMouseMove = React32.useCallback(
|
|
16918
16918
|
(e) => {
|
|
16919
16919
|
if (!isDragging || !brushRef.current) return;
|
|
16920
16920
|
const isTouchEvent = "touches" in e;
|
|
@@ -16959,10 +16959,10 @@ function useTimeSeriesRange({
|
|
|
16959
16959
|
handleRangeChange
|
|
16960
16960
|
]
|
|
16961
16961
|
);
|
|
16962
|
-
const handleMouseUp =
|
|
16962
|
+
const handleMouseUp = React32.useCallback(() => {
|
|
16963
16963
|
setIsDragging(null);
|
|
16964
16964
|
}, []);
|
|
16965
|
-
|
|
16965
|
+
React32.useEffect(() => {
|
|
16966
16966
|
if (isDragging) {
|
|
16967
16967
|
document.addEventListener("mousemove", handleMouseMove);
|
|
16968
16968
|
document.addEventListener("mouseup", handleMouseUp);
|
|
@@ -16990,7 +16990,7 @@ var useChartMinMax = ({
|
|
|
16990
16990
|
xAxisDataKey,
|
|
16991
16991
|
categoryFormatter
|
|
16992
16992
|
}) => {
|
|
16993
|
-
return
|
|
16993
|
+
return React32.useMemo(() => {
|
|
16994
16994
|
if (!processedData || processedData.length === 0 || !orderBy) {
|
|
16995
16995
|
return {
|
|
16996
16996
|
maxPeriodLabel: "",
|
|
@@ -17027,7 +17027,7 @@ function useProcessedData({
|
|
|
17027
17027
|
startIndex,
|
|
17028
17028
|
endIndex
|
|
17029
17029
|
}) {
|
|
17030
|
-
return
|
|
17030
|
+
return React32.useMemo(() => {
|
|
17031
17031
|
const mapped = data.map((item) => ({
|
|
17032
17032
|
...item,
|
|
17033
17033
|
name: String(item[xAxisKey] || "N/A")
|
|
@@ -17039,7 +17039,7 @@ function useProcessedData({
|
|
|
17039
17039
|
}, [data, xAxisKey, timeSeriesConfig, startIndex, endIndex]);
|
|
17040
17040
|
}
|
|
17041
17041
|
function useBiaxial(biaxial, yAxisLabel) {
|
|
17042
|
-
return
|
|
17042
|
+
return React32.useMemo(() => {
|
|
17043
17043
|
if (!biaxial) return null;
|
|
17044
17044
|
if (typeof biaxial === "string") return { key: [biaxial] };
|
|
17045
17045
|
if (Array.isArray(biaxial)) return { key: biaxial };
|
|
@@ -17068,7 +17068,7 @@ function useChartLayout({
|
|
|
17068
17068
|
}) {
|
|
17069
17069
|
const finalChartRightMargin = chartMargin?.right ?? (rightKeysLength > 0 ? AXIS_LABEL_MARGIN : 30);
|
|
17070
17070
|
const finalChartLeftMargin = chartMargin?.left ?? (yAxisLabel ? AXIS_LABEL_MARGIN : 0);
|
|
17071
|
-
const yAxisTickWidth =
|
|
17071
|
+
const yAxisTickWidth = React32.useMemo(() => {
|
|
17072
17072
|
const yAxisLabelStr = yAxisLabel === null || yAxisLabel === void 0 ? void 0 : String(yAxisLabel);
|
|
17073
17073
|
return computeYAxisTickWidth(
|
|
17074
17074
|
chartMargin?.left,
|
|
@@ -17101,7 +17101,7 @@ function useChartLayout({
|
|
|
17101
17101
|
};
|
|
17102
17102
|
}
|
|
17103
17103
|
function useSeriesOpacity(highlightedSeries) {
|
|
17104
|
-
return
|
|
17104
|
+
return React32.useCallback(
|
|
17105
17105
|
(key) => {
|
|
17106
17106
|
return highlightedSeries.size > 0 ? highlightedSeries.has(key) ? 1 : 0.25 : 1;
|
|
17107
17107
|
},
|
|
@@ -17240,7 +17240,7 @@ function useOpenTooltipForPeriod({
|
|
|
17240
17240
|
maxTooltips,
|
|
17241
17241
|
effectiveChartWidth
|
|
17242
17242
|
}) {
|
|
17243
|
-
return
|
|
17243
|
+
return React32.useCallback(
|
|
17244
17244
|
(periodName) => {
|
|
17245
17245
|
fnOpenTooltipForPeriod(
|
|
17246
17246
|
enableDraggableTooltips,
|
|
@@ -17312,7 +17312,7 @@ var Chart = ({
|
|
|
17312
17312
|
const wrapperStyle = usesFullHeight ? void 0 : {
|
|
17313
17313
|
height: typeof responsiveHeight === "number" ? `${responsiveHeight}px` : responsiveHeight
|
|
17314
17314
|
};
|
|
17315
|
-
const { xAxisConfig, mapperConfig } =
|
|
17315
|
+
const { xAxisConfig, mapperConfig } = React32.useMemo(() => {
|
|
17316
17316
|
return fnSmartConfig({ xAxis, data, labelMap });
|
|
17317
17317
|
}, [data, xAxis, labelMap]);
|
|
17318
17318
|
const {
|
|
@@ -17329,12 +17329,12 @@ var Chart = ({
|
|
|
17329
17329
|
onTooltipPositionChange,
|
|
17330
17330
|
setActiveTooltips
|
|
17331
17331
|
} = useChartTooltips(maxTooltips);
|
|
17332
|
-
|
|
17332
|
+
React32.useEffect(() => {
|
|
17333
17333
|
if (highlightedSeries.size === 0 && showOnlyHighlighted) {
|
|
17334
17334
|
setShowOnlyHighlighted(false);
|
|
17335
17335
|
}
|
|
17336
17336
|
}, [highlightedSeries, showOnlyHighlighted, setShowOnlyHighlighted]);
|
|
17337
|
-
const timeSeriesConfig =
|
|
17337
|
+
const timeSeriesConfig = React32.useMemo(() => {
|
|
17338
17338
|
if (typeof timeSeries === "boolean") {
|
|
17339
17339
|
return timeSeries ? {} : void 0;
|
|
17340
17340
|
}
|
|
@@ -17355,48 +17355,48 @@ var Chart = ({
|
|
|
17355
17355
|
});
|
|
17356
17356
|
const seriesOrder = filtersOrder(mapperConfig, series);
|
|
17357
17357
|
const allKeys = seriesOrder.map((s) => s.key).filter(Boolean);
|
|
17358
|
-
const finalColors =
|
|
17358
|
+
const finalColors = React32.useMemo(
|
|
17359
17359
|
() => generateColorMap(allKeys, colors2, mapperConfig),
|
|
17360
17360
|
[allKeys, colors2, mapperConfig]
|
|
17361
17361
|
);
|
|
17362
17362
|
const biaxialConfigNormalized = useBiaxial(biaxial, yAxisLabel);
|
|
17363
|
-
const rightKeys =
|
|
17363
|
+
const rightKeys = React32.useMemo(
|
|
17364
17364
|
() => biaxialConfigNormalized?.key ?? [],
|
|
17365
17365
|
[biaxialConfigNormalized]
|
|
17366
17366
|
);
|
|
17367
|
-
const leftKeys =
|
|
17367
|
+
const leftKeys = React32.useMemo(
|
|
17368
17368
|
() => allKeys.filter((k) => !rightKeys.includes(k)),
|
|
17369
17369
|
[allKeys, rightKeys]
|
|
17370
17370
|
);
|
|
17371
|
-
const activePeriods =
|
|
17371
|
+
const activePeriods = React32.useMemo(
|
|
17372
17372
|
() => activeTooltips.map((t) => adaptDataForTooltip(t.data, xAxisConfig.dataKey).name),
|
|
17373
17373
|
[activeTooltips, xAxisConfig.dataKey]
|
|
17374
17374
|
);
|
|
17375
|
-
const maxLeftDataValue =
|
|
17375
|
+
const maxLeftDataValue = React32.useMemo(() => {
|
|
17376
17376
|
const numericKeys = leftKeys.length > 0 ? leftKeys : allKeys;
|
|
17377
17377
|
return getMaxDataValue(processedData, numericKeys);
|
|
17378
17378
|
}, [processedData, leftKeys, allKeys]);
|
|
17379
|
-
const minLeftDataValue =
|
|
17379
|
+
const minLeftDataValue = React32.useMemo(() => {
|
|
17380
17380
|
const numericKeys = leftKeys.length > 0 ? leftKeys : allKeys;
|
|
17381
17381
|
return getMinDataValue(processedData, numericKeys);
|
|
17382
17382
|
}, [processedData, leftKeys, allKeys]);
|
|
17383
|
-
const maxRightDataValue =
|
|
17383
|
+
const maxRightDataValue = React32.useMemo(() => {
|
|
17384
17384
|
if (rightKeys.length === 0) return 0;
|
|
17385
17385
|
return getMaxDataValue(processedData, rightKeys);
|
|
17386
17386
|
}, [processedData, rightKeys]);
|
|
17387
|
-
const minRightDataValue =
|
|
17387
|
+
const minRightDataValue = React32.useMemo(() => {
|
|
17388
17388
|
if (rightKeys.length === 0) return 0;
|
|
17389
17389
|
return getMinDataValue(processedData, rightKeys);
|
|
17390
17390
|
}, [processedData, rightKeys]);
|
|
17391
|
-
const niceMaxLeft =
|
|
17391
|
+
const niceMaxLeft = React32.useMemo(
|
|
17392
17392
|
() => computeNiceMax(maxLeftDataValue),
|
|
17393
17393
|
[maxLeftDataValue]
|
|
17394
17394
|
);
|
|
17395
|
-
const niceMaxRight =
|
|
17395
|
+
const niceMaxRight = React32.useMemo(
|
|
17396
17396
|
() => computeNiceMax(maxRightDataValue),
|
|
17397
17397
|
[maxRightDataValue]
|
|
17398
17398
|
);
|
|
17399
|
-
const computedWidth =
|
|
17399
|
+
const computedWidth = React32.useMemo(
|
|
17400
17400
|
() => computeChartWidth(
|
|
17401
17401
|
width,
|
|
17402
17402
|
processedData.length,
|
|
@@ -17415,11 +17415,11 @@ var Chart = ({
|
|
|
17415
17415
|
}
|
|
17416
17416
|
);
|
|
17417
17417
|
const getSeriesOpacity = useSeriesOpacity(highlightedSeries);
|
|
17418
|
-
const finalValueFormatter =
|
|
17418
|
+
const finalValueFormatter = React32.useMemo(
|
|
17419
17419
|
() => createValueFormatter(valueFormatter, formatBR),
|
|
17420
17420
|
[valueFormatter, formatBR]
|
|
17421
17421
|
);
|
|
17422
|
-
const yTickFormatter =
|
|
17422
|
+
const yTickFormatter = React32.useMemo(
|
|
17423
17423
|
() => createYTickFormatter(finalValueFormatter),
|
|
17424
17424
|
[finalValueFormatter]
|
|
17425
17425
|
);
|
|
@@ -17938,7 +17938,7 @@ var HorizontalChart = ({
|
|
|
17938
17938
|
customLegend,
|
|
17939
17939
|
orderBy
|
|
17940
17940
|
}) => {
|
|
17941
|
-
const { xAxisConfig, mapperConfig } =
|
|
17941
|
+
const { xAxisConfig, mapperConfig } = React32.useMemo(() => {
|
|
17942
17942
|
return fnSmartConfig({ xAxis, data, labelMap });
|
|
17943
17943
|
}, [data, xAxis, labelMap]);
|
|
17944
17944
|
const {
|
|
@@ -17955,12 +17955,12 @@ var HorizontalChart = ({
|
|
|
17955
17955
|
onTooltipPositionChange,
|
|
17956
17956
|
setActiveTooltips
|
|
17957
17957
|
} = useChartTooltips(maxTooltips);
|
|
17958
|
-
|
|
17958
|
+
React32.useEffect(() => {
|
|
17959
17959
|
if (highlightedSeries.size === 0 && showOnlyHighlighted) {
|
|
17960
17960
|
setShowOnlyHighlighted(false);
|
|
17961
17961
|
}
|
|
17962
17962
|
}, [highlightedSeries, showOnlyHighlighted, setShowOnlyHighlighted]);
|
|
17963
|
-
const processedData =
|
|
17963
|
+
const processedData = React32.useMemo(() => {
|
|
17964
17964
|
const mapped = data.map((item) => ({
|
|
17965
17965
|
...item,
|
|
17966
17966
|
name: String(item[xAxisConfig.dataKey] || "N/A")
|
|
@@ -17976,38 +17976,38 @@ var HorizontalChart = ({
|
|
|
17976
17976
|
}, [data, xAxisConfig.dataKey, orderBy]);
|
|
17977
17977
|
const seriesOrder = filtersOrder(mapperConfig, series);
|
|
17978
17978
|
const allKeys = seriesOrder.map((s) => s.key).filter(Boolean);
|
|
17979
|
-
const finalColors =
|
|
17979
|
+
const finalColors = React32.useMemo(
|
|
17980
17980
|
() => generateColorMap(allKeys, colors2, mapperConfig),
|
|
17981
17981
|
[allKeys, colors2, mapperConfig]
|
|
17982
17982
|
);
|
|
17983
|
-
const activePeriods =
|
|
17983
|
+
const activePeriods = React32.useMemo(
|
|
17984
17984
|
() => activeTooltips.map((t) => adaptDataForTooltip(t.data, xAxisConfig.dataKey).name),
|
|
17985
17985
|
[activeTooltips, xAxisConfig.dataKey]
|
|
17986
17986
|
);
|
|
17987
|
-
const maxDataValue =
|
|
17987
|
+
const maxDataValue = React32.useMemo(() => {
|
|
17988
17988
|
return getMaxDataValue(processedData, allKeys);
|
|
17989
17989
|
}, [processedData, allKeys]);
|
|
17990
|
-
const minDataValue =
|
|
17990
|
+
const minDataValue = React32.useMemo(() => {
|
|
17991
17991
|
return getMinDataValue(processedData, allKeys);
|
|
17992
17992
|
}, [processedData, allKeys]);
|
|
17993
|
-
const niceMax =
|
|
17993
|
+
const niceMax = React32.useMemo(() => computeNiceMax(maxDataValue), [maxDataValue]);
|
|
17994
17994
|
const { handleChartClick, handleBarClick } = useChartClick({
|
|
17995
17995
|
enableDraggableTooltips,
|
|
17996
17996
|
xAxisDataKey: xAxisConfig.dataKey,
|
|
17997
17997
|
toggleTooltip,
|
|
17998
17998
|
setActiveTooltips
|
|
17999
17999
|
});
|
|
18000
|
-
const getSeriesOpacity =
|
|
18000
|
+
const getSeriesOpacity = React32.useCallback(
|
|
18001
18001
|
(key) => {
|
|
18002
18002
|
return highlightedSeries.size > 0 ? highlightedSeries.has(key) ? 1 : 0.25 : 1;
|
|
18003
18003
|
},
|
|
18004
18004
|
[highlightedSeries]
|
|
18005
18005
|
);
|
|
18006
|
-
const finalValueFormatter =
|
|
18006
|
+
const finalValueFormatter = React32.useMemo(
|
|
18007
18007
|
() => createValueFormatter(valueFormatter, formatBR),
|
|
18008
18008
|
[valueFormatter, formatBR]
|
|
18009
18009
|
);
|
|
18010
|
-
const yTickFormatter =
|
|
18010
|
+
const yTickFormatter = React32.useMemo(
|
|
18011
18011
|
() => createYTickFormatter(finalValueFormatter),
|
|
18012
18012
|
[finalValueFormatter]
|
|
18013
18013
|
);
|
|
@@ -18017,7 +18017,7 @@ var HorizontalChart = ({
|
|
|
18017
18017
|
const HORIZONTAL_PADDING_CLASS = "px-6";
|
|
18018
18018
|
const effectiveChartWidth = typeof width === "number" ? width : measuredWidth ? Math.max(0, measuredWidth - 32) : 800;
|
|
18019
18019
|
const chartInnerWidth = effectiveChartWidth - finalChartLeftMargin - finalChartRightMargin;
|
|
18020
|
-
const openTooltipForPeriod =
|
|
18020
|
+
const openTooltipForPeriod = React32.useCallback(
|
|
18021
18021
|
(periodName) => {
|
|
18022
18022
|
fnOpenTooltipForPeriod(
|
|
18023
18023
|
enableDraggableTooltips,
|
|
@@ -18443,8 +18443,8 @@ function NumericInput({
|
|
|
18443
18443
|
hideConfirm = false,
|
|
18444
18444
|
numericKeyboard
|
|
18445
18445
|
}) {
|
|
18446
|
-
const original =
|
|
18447
|
-
const [internalValue, setInternalValue] =
|
|
18446
|
+
const original = React32.useMemo(() => value, [value]);
|
|
18447
|
+
const [internalValue, setInternalValue] = React32.useState(original);
|
|
18448
18448
|
const hasChanged = internalValue !== original;
|
|
18449
18449
|
const handleSave = () => {
|
|
18450
18450
|
if (!hasChanged || isLoading || disabled) return;
|
|
@@ -18528,8 +18528,8 @@ function Leaderboard({
|
|
|
18528
18528
|
isLoading = false,
|
|
18529
18529
|
legend
|
|
18530
18530
|
}) {
|
|
18531
|
-
const [order, setOrder] =
|
|
18532
|
-
const [searchTerm, setSearchTerm] =
|
|
18531
|
+
const [order, setOrder] = React32.useState(initialOrder);
|
|
18532
|
+
const [searchTerm, setSearchTerm] = React32.useState("");
|
|
18533
18533
|
const mockData = [
|
|
18534
18534
|
{ name: "Ana", value: 92 },
|
|
18535
18535
|
{ name: "Bruno", value: 81 },
|
|
@@ -18647,6 +18647,546 @@ function Leaderboard({
|
|
|
18647
18647
|
}
|
|
18648
18648
|
);
|
|
18649
18649
|
}
|
|
18650
|
+
var Lens = ({
|
|
18651
|
+
children,
|
|
18652
|
+
initialZoom = 1.5,
|
|
18653
|
+
maxZoom = 4,
|
|
18654
|
+
lensSize = 150,
|
|
18655
|
+
isStatic = false,
|
|
18656
|
+
position = { x: 200, y: 150 },
|
|
18657
|
+
hovering,
|
|
18658
|
+
setHovering
|
|
18659
|
+
}) => {
|
|
18660
|
+
const containerRef = React32.useRef(null);
|
|
18661
|
+
const [localIsHovering, setLocalIsHovering] = React32.useState(false);
|
|
18662
|
+
const isHovering = hovering !== void 0 ? hovering : localIsHovering;
|
|
18663
|
+
const setIsHovering = setHovering || setLocalIsHovering;
|
|
18664
|
+
const [mousePosition, setMousePosition] = React32.useState({ x: 100, y: 100 });
|
|
18665
|
+
const [zoomFactor, setZoomFactor] = React32.useState(initialZoom);
|
|
18666
|
+
const [isActivated, setIsActivated] = React32.useState(false);
|
|
18667
|
+
const handleMouseMove = (e) => {
|
|
18668
|
+
const rect = e.currentTarget.getBoundingClientRect();
|
|
18669
|
+
const x = e.clientX - rect.left;
|
|
18670
|
+
const y = e.clientY - rect.top;
|
|
18671
|
+
setMousePosition({ x, y });
|
|
18672
|
+
};
|
|
18673
|
+
const handleWheel = (e) => {
|
|
18674
|
+
if (!isActivated) return;
|
|
18675
|
+
const delta = -e.deltaY * 5e-3;
|
|
18676
|
+
setZoomFactor((prev) => Math.min(Math.max(1.1, prev + delta), maxZoom));
|
|
18677
|
+
};
|
|
18678
|
+
const resetZoom = () => {
|
|
18679
|
+
setZoomFactor(initialZoom);
|
|
18680
|
+
setIsActivated(false);
|
|
18681
|
+
};
|
|
18682
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
18683
|
+
"div",
|
|
18684
|
+
{
|
|
18685
|
+
ref: containerRef,
|
|
18686
|
+
className: cn(
|
|
18687
|
+
"relative overflow-hidden rounded-lg z-20 h-full",
|
|
18688
|
+
isActivated ? "cursor-none" : "cursor-pointer"
|
|
18689
|
+
),
|
|
18690
|
+
onClick: () => setIsActivated(!isActivated),
|
|
18691
|
+
onMouseEnter: () => {
|
|
18692
|
+
setIsHovering(true);
|
|
18693
|
+
},
|
|
18694
|
+
onMouseLeave: () => {
|
|
18695
|
+
setIsHovering(false);
|
|
18696
|
+
resetZoom();
|
|
18697
|
+
},
|
|
18698
|
+
onMouseMove: handleMouseMove,
|
|
18699
|
+
onWheel: handleWheel,
|
|
18700
|
+
children: [
|
|
18701
|
+
children,
|
|
18702
|
+
isStatic ? /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
18703
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
18704
|
+
framerMotion.motion.div,
|
|
18705
|
+
{
|
|
18706
|
+
initial: { opacity: 0, scale: 0.58 },
|
|
18707
|
+
animate: { opacity: 1, scale: 1 },
|
|
18708
|
+
exit: { opacity: 0, scale: 0.8 },
|
|
18709
|
+
transition: { duration: 0.3, ease: "easeOut" },
|
|
18710
|
+
className: "absolute inset-0 overflow-hidden",
|
|
18711
|
+
style: {
|
|
18712
|
+
maskImage: `radial-gradient(circle ${lensSize / 2}px at ${position.x}px ${position.y}px, black 100%, transparent 100%)`,
|
|
18713
|
+
WebkitMaskImage: `radial-gradient(circle ${lensSize / 2}px at ${position.x}px ${position.y}px, black 100%, transparent 100%)`,
|
|
18714
|
+
transformOrigin: `${position.x}px ${position.y}px`
|
|
18715
|
+
},
|
|
18716
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
18717
|
+
"div",
|
|
18718
|
+
{
|
|
18719
|
+
className: "absolute inset-0",
|
|
18720
|
+
style: {
|
|
18721
|
+
transform: `scale(${zoomFactor})`,
|
|
18722
|
+
transformOrigin: `${position.x}px ${position.y}px`
|
|
18723
|
+
},
|
|
18724
|
+
children
|
|
18725
|
+
}
|
|
18726
|
+
)
|
|
18727
|
+
}
|
|
18728
|
+
),
|
|
18729
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
18730
|
+
"div",
|
|
18731
|
+
{
|
|
18732
|
+
className: "absolute pointer-events-none",
|
|
18733
|
+
style: {
|
|
18734
|
+
left: position.x - lensSize / 2,
|
|
18735
|
+
top: position.y - lensSize / 2,
|
|
18736
|
+
width: lensSize,
|
|
18737
|
+
height: lensSize,
|
|
18738
|
+
borderRadius: "50%",
|
|
18739
|
+
boxShadow: "0 8px 32px rgba(0, 0, 0, 0.4), 0 4px 16px rgba(0, 0, 0, 0.2)",
|
|
18740
|
+
background: "radial-gradient(circle at center, transparent 60%, rgba(255, 255, 255, 0.1) 70%, rgba(255, 255, 255, 0.2) 80%, transparent 100%)"
|
|
18741
|
+
}
|
|
18742
|
+
}
|
|
18743
|
+
)
|
|
18744
|
+
] }) : /* @__PURE__ */ jsxRuntime.jsx(framerMotion.AnimatePresence, { children: isHovering && isActivated && /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
18745
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
18746
|
+
framerMotion.motion.div,
|
|
18747
|
+
{
|
|
18748
|
+
initial: { opacity: 0, scale: 0.58 },
|
|
18749
|
+
animate: { opacity: 1, scale: 1 },
|
|
18750
|
+
exit: { opacity: 0, scale: 0.8 },
|
|
18751
|
+
transition: { duration: 0.3, ease: "easeOut" },
|
|
18752
|
+
className: "absolute inset-0 overflow-hidden",
|
|
18753
|
+
style: {
|
|
18754
|
+
maskImage: `radial-gradient(circle ${lensSize / 2}px at ${mousePosition.x}px ${mousePosition.y}px, black 100%, transparent 100%)`,
|
|
18755
|
+
WebkitMaskImage: `radial-gradient(circle ${lensSize / 2}px at ${mousePosition.x}px ${mousePosition.y}px, black 100%, transparent 100%)`,
|
|
18756
|
+
transformOrigin: `${mousePosition.x}px ${mousePosition.y}px`,
|
|
18757
|
+
zIndex: 50
|
|
18758
|
+
},
|
|
18759
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
18760
|
+
"div",
|
|
18761
|
+
{
|
|
18762
|
+
className: "absolute inset-0",
|
|
18763
|
+
style: {
|
|
18764
|
+
transform: `scale(${zoomFactor})`,
|
|
18765
|
+
transformOrigin: `${mousePosition.x}px ${mousePosition.y}px`
|
|
18766
|
+
},
|
|
18767
|
+
children
|
|
18768
|
+
}
|
|
18769
|
+
)
|
|
18770
|
+
}
|
|
18771
|
+
),
|
|
18772
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
18773
|
+
framerMotion.motion.div,
|
|
18774
|
+
{
|
|
18775
|
+
initial: { opacity: 0, scale: 0.58 },
|
|
18776
|
+
animate: { opacity: 1, scale: 1 },
|
|
18777
|
+
exit: { opacity: 0, scale: 0.8 },
|
|
18778
|
+
transition: { duration: 0.3, ease: "easeOut" },
|
|
18779
|
+
className: "absolute pointer-events-none z-[60]",
|
|
18780
|
+
style: {
|
|
18781
|
+
left: mousePosition.x - lensSize / 2,
|
|
18782
|
+
top: mousePosition.y - lensSize / 2,
|
|
18783
|
+
width: lensSize,
|
|
18784
|
+
height: lensSize,
|
|
18785
|
+
borderRadius: "50%",
|
|
18786
|
+
boxShadow: "0 8px 32px rgba(0, 0, 0, 0.4), 0 4px 16px rgba(0, 0, 0, 0.2)",
|
|
18787
|
+
background: "radial-gradient(circle at center, transparent 60%, rgba(255, 255, 255, 0.1) 70%, rgba(255, 255, 255, 0.2) 80%, transparent 100%)"
|
|
18788
|
+
}
|
|
18789
|
+
}
|
|
18790
|
+
)
|
|
18791
|
+
] }) })
|
|
18792
|
+
]
|
|
18793
|
+
}
|
|
18794
|
+
);
|
|
18795
|
+
};
|
|
18796
|
+
var ZoomImage = React32__namespace.forwardRef(
|
|
18797
|
+
({
|
|
18798
|
+
className,
|
|
18799
|
+
src,
|
|
18800
|
+
alt,
|
|
18801
|
+
maxZoom = 2,
|
|
18802
|
+
transitionDuration = 0.3,
|
|
18803
|
+
borderRadius = 12,
|
|
18804
|
+
imageClassName,
|
|
18805
|
+
...props
|
|
18806
|
+
}, ref) => {
|
|
18807
|
+
const mouseX = framerMotion.useMotionValue(50);
|
|
18808
|
+
const mouseY = framerMotion.useMotionValue(50);
|
|
18809
|
+
const zoomLevel = framerMotion.useMotionValue(1);
|
|
18810
|
+
const springConfig = { damping: 20, stiffness: 150, mass: 0.5 };
|
|
18811
|
+
const smoothMouseX = framerMotion.useSpring(mouseX, springConfig);
|
|
18812
|
+
const smoothMouseY = framerMotion.useSpring(mouseY, springConfig);
|
|
18813
|
+
const smoothZoomLevel = framerMotion.useSpring(zoomLevel, springConfig);
|
|
18814
|
+
const transformOrigin = framerMotion.useTransform(
|
|
18815
|
+
[smoothMouseX, smoothMouseY],
|
|
18816
|
+
([latestX, latestY]) => `${latestX}% ${latestY}%`
|
|
18817
|
+
);
|
|
18818
|
+
const touchStartDist = React32__namespace.useRef(0);
|
|
18819
|
+
const touchStartZoom = React32__namespace.useRef(1);
|
|
18820
|
+
const isPinching = React32__namespace.useRef(false);
|
|
18821
|
+
const handleMouseMove = (e) => {
|
|
18822
|
+
if (isPinching.current) return;
|
|
18823
|
+
const { left, top, width, height } = e.currentTarget.getBoundingClientRect();
|
|
18824
|
+
const x = (e.clientX - left) / width * 100;
|
|
18825
|
+
const y = (e.clientY - top) / height * 100;
|
|
18826
|
+
mouseX.set(x);
|
|
18827
|
+
mouseY.set(y);
|
|
18828
|
+
};
|
|
18829
|
+
const handleWheel = (e) => {
|
|
18830
|
+
const delta = -e.deltaY * 5e-3;
|
|
18831
|
+
const newZoom = Math.min(Math.max(1, zoomLevel.get() + delta), maxZoom);
|
|
18832
|
+
zoomLevel.set(newZoom);
|
|
18833
|
+
};
|
|
18834
|
+
const handleMouseLeave = () => {
|
|
18835
|
+
if (!isPinching.current) {
|
|
18836
|
+
mouseX.set(50);
|
|
18837
|
+
mouseY.set(50);
|
|
18838
|
+
zoomLevel.set(1);
|
|
18839
|
+
}
|
|
18840
|
+
};
|
|
18841
|
+
const getDistance = (touches) => {
|
|
18842
|
+
const dx = touches[0].clientX - touches[1].clientX;
|
|
18843
|
+
const dy = touches[0].clientY - touches[1].clientY;
|
|
18844
|
+
return Math.sqrt(dx * dx + dy * dy);
|
|
18845
|
+
};
|
|
18846
|
+
const getCenter = (touches, rect) => {
|
|
18847
|
+
const x = (touches[0].clientX + touches[1].clientX) / 2;
|
|
18848
|
+
const y = (touches[0].clientY + touches[1].clientY) / 2;
|
|
18849
|
+
return {
|
|
18850
|
+
x: (x - rect.left) / rect.width * 100,
|
|
18851
|
+
y: (y - rect.top) / rect.height * 100
|
|
18852
|
+
};
|
|
18853
|
+
};
|
|
18854
|
+
const handleTouchStart = (e) => {
|
|
18855
|
+
if (e.touches.length === 2) {
|
|
18856
|
+
isPinching.current = true;
|
|
18857
|
+
touchStartDist.current = getDistance(e.touches);
|
|
18858
|
+
touchStartZoom.current = zoomLevel.get();
|
|
18859
|
+
const rect = e.currentTarget.getBoundingClientRect();
|
|
18860
|
+
const center = getCenter(e.touches, rect);
|
|
18861
|
+
mouseX.set(center.x);
|
|
18862
|
+
mouseY.set(center.y);
|
|
18863
|
+
}
|
|
18864
|
+
};
|
|
18865
|
+
const handleTouchMove = (e) => {
|
|
18866
|
+
if (e.touches.length === 2 && isPinching.current) {
|
|
18867
|
+
e.preventDefault();
|
|
18868
|
+
const dist = getDistance(e.touches);
|
|
18869
|
+
const rect = e.currentTarget.getBoundingClientRect();
|
|
18870
|
+
const scaleChange = dist / touchStartDist.current;
|
|
18871
|
+
const newZoom = Math.min(
|
|
18872
|
+
Math.max(1, touchStartZoom.current * scaleChange),
|
|
18873
|
+
maxZoom
|
|
18874
|
+
);
|
|
18875
|
+
zoomLevel.set(newZoom);
|
|
18876
|
+
const center = getCenter(e.touches, rect);
|
|
18877
|
+
mouseX.set(center.x);
|
|
18878
|
+
mouseY.set(center.y);
|
|
18879
|
+
}
|
|
18880
|
+
};
|
|
18881
|
+
const handleTouchEnd = (e) => {
|
|
18882
|
+
if (e.touches.length < 2) {
|
|
18883
|
+
if (isPinching.current) {
|
|
18884
|
+
isPinching.current = false;
|
|
18885
|
+
}
|
|
18886
|
+
}
|
|
18887
|
+
};
|
|
18888
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
18889
|
+
framerMotion.motion.div,
|
|
18890
|
+
{
|
|
18891
|
+
ref,
|
|
18892
|
+
className: cn(
|
|
18893
|
+
"relative w-full h-full overflow-hidden touch-none",
|
|
18894
|
+
className
|
|
18895
|
+
),
|
|
18896
|
+
style: { borderRadius: `${borderRadius}px` },
|
|
18897
|
+
onMouseMove: handleMouseMove,
|
|
18898
|
+
onMouseLeave: handleMouseLeave,
|
|
18899
|
+
onWheel: handleWheel,
|
|
18900
|
+
onTouchStart: handleTouchStart,
|
|
18901
|
+
onTouchMove: handleTouchMove,
|
|
18902
|
+
onTouchEnd: handleTouchEnd,
|
|
18903
|
+
...props,
|
|
18904
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
18905
|
+
framerMotion.motion.img,
|
|
18906
|
+
{
|
|
18907
|
+
src,
|
|
18908
|
+
alt,
|
|
18909
|
+
className: cn("w-full h-full object-cover", imageClassName),
|
|
18910
|
+
style: {
|
|
18911
|
+
borderRadius: `${borderRadius}px`,
|
|
18912
|
+
transformOrigin,
|
|
18913
|
+
scale: smoothZoomLevel
|
|
18914
|
+
},
|
|
18915
|
+
transition: {
|
|
18916
|
+
type: "spring",
|
|
18917
|
+
duration: transitionDuration,
|
|
18918
|
+
bounce: 0
|
|
18919
|
+
}
|
|
18920
|
+
}
|
|
18921
|
+
)
|
|
18922
|
+
}
|
|
18923
|
+
);
|
|
18924
|
+
}
|
|
18925
|
+
);
|
|
18926
|
+
ZoomImage.displayName = "ZoomImage";
|
|
18927
|
+
function CarouselBase({
|
|
18928
|
+
items,
|
|
18929
|
+
className,
|
|
18930
|
+
containerClassName,
|
|
18931
|
+
imageClassName,
|
|
18932
|
+
width,
|
|
18933
|
+
height,
|
|
18934
|
+
showControls = true,
|
|
18935
|
+
showIndicators = true,
|
|
18936
|
+
autoPlay = false,
|
|
18937
|
+
autoPlayInterval = 3e3,
|
|
18938
|
+
springConfig = {
|
|
18939
|
+
stiffness: 300,
|
|
18940
|
+
damping: 30
|
|
18941
|
+
},
|
|
18942
|
+
zoomEffect = null,
|
|
18943
|
+
download = false
|
|
18944
|
+
}) {
|
|
18945
|
+
const isMobile = useIsMobile();
|
|
18946
|
+
const [index, setIndex] = React32.useState(0);
|
|
18947
|
+
const containerRef = React32.useRef(null);
|
|
18948
|
+
const x = framerMotion.useMotionValue(0);
|
|
18949
|
+
const [isDownloading, setIsDownloading] = React32.useState(false);
|
|
18950
|
+
const [downloadSuccess, setDownloadSuccess] = React32.useState(false);
|
|
18951
|
+
React32.useEffect(() => {
|
|
18952
|
+
if (containerRef.current) {
|
|
18953
|
+
const containerWidth = containerRef.current.offsetWidth || 1;
|
|
18954
|
+
const targetX = -index * containerWidth;
|
|
18955
|
+
framerMotion.animate(x, targetX, {
|
|
18956
|
+
type: "spring",
|
|
18957
|
+
stiffness: springConfig.stiffness,
|
|
18958
|
+
damping: springConfig.damping
|
|
18959
|
+
});
|
|
18960
|
+
}
|
|
18961
|
+
}, [index, x, springConfig.stiffness, springConfig.damping]);
|
|
18962
|
+
React32.useEffect(() => {
|
|
18963
|
+
if (!autoPlay || items.length <= 1) return;
|
|
18964
|
+
const interval = setInterval(() => {
|
|
18965
|
+
setIndex((i) => (i + 1) % items.length);
|
|
18966
|
+
}, autoPlayInterval);
|
|
18967
|
+
return () => clearInterval(interval);
|
|
18968
|
+
}, [autoPlay, autoPlayInterval, items.length]);
|
|
18969
|
+
const handleDownload = async () => {
|
|
18970
|
+
if (isDownloading) return;
|
|
18971
|
+
setIsDownloading(true);
|
|
18972
|
+
setDownloadSuccess(false);
|
|
18973
|
+
const currentItem = items[index];
|
|
18974
|
+
try {
|
|
18975
|
+
const response = await fetch(currentItem.url);
|
|
18976
|
+
const blob = await response.blob();
|
|
18977
|
+
const url = window.URL.createObjectURL(blob);
|
|
18978
|
+
const link = document.createElement("a");
|
|
18979
|
+
link.href = url;
|
|
18980
|
+
link.download = currentItem.title || "image";
|
|
18981
|
+
document.body.appendChild(link);
|
|
18982
|
+
link.click();
|
|
18983
|
+
document.body.removeChild(link);
|
|
18984
|
+
window.URL.revokeObjectURL(url);
|
|
18985
|
+
setIsDownloading(false);
|
|
18986
|
+
setDownloadSuccess(true);
|
|
18987
|
+
setTimeout(() => setDownloadSuccess(false), 2e3);
|
|
18988
|
+
} catch (error) {
|
|
18989
|
+
console.error("Error downloading image:", error);
|
|
18990
|
+
setIsDownloading(false);
|
|
18991
|
+
}
|
|
18992
|
+
};
|
|
18993
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
18994
|
+
"div",
|
|
18995
|
+
{
|
|
18996
|
+
className: cn("w-full lg:p-10 sm:p-4 p-2", className),
|
|
18997
|
+
style: { width, height },
|
|
18998
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-col gap-3 h-full", children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
18999
|
+
"div",
|
|
19000
|
+
{
|
|
19001
|
+
className: cn(
|
|
19002
|
+
"relative overflow-hidden rounded-lg h-full",
|
|
19003
|
+
containerClassName
|
|
19004
|
+
),
|
|
19005
|
+
ref: containerRef,
|
|
19006
|
+
children: [
|
|
19007
|
+
/* @__PURE__ */ jsxRuntime.jsx(framerMotion.motion.div, { className: "flex h-full", style: { x }, children: items.map((item) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: "shrink-0 w-full h-full", children: isMobile || zoomEffect === "scale" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
19008
|
+
ZoomImage,
|
|
19009
|
+
{
|
|
19010
|
+
src: item.url,
|
|
19011
|
+
alt: item.title,
|
|
19012
|
+
className: cn("w-full h-full select-none"),
|
|
19013
|
+
imageClassName,
|
|
19014
|
+
borderRadius: 8,
|
|
19015
|
+
maxZoom: 3
|
|
19016
|
+
}
|
|
19017
|
+
) : zoomEffect === "lens" ? /* @__PURE__ */ jsxRuntime.jsx(Lens, { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
19018
|
+
"img",
|
|
19019
|
+
{
|
|
19020
|
+
src: item.url,
|
|
19021
|
+
alt: item.title,
|
|
19022
|
+
className: cn(
|
|
19023
|
+
"w-full h-full object-cover rounded-lg select-none pointer-events-none",
|
|
19024
|
+
imageClassName
|
|
19025
|
+
),
|
|
19026
|
+
draggable: false
|
|
19027
|
+
}
|
|
19028
|
+
) }) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
19029
|
+
"img",
|
|
19030
|
+
{
|
|
19031
|
+
src: item.url,
|
|
19032
|
+
alt: item.title,
|
|
19033
|
+
className: cn(
|
|
19034
|
+
"w-full h-full object-cover rounded-lg select-none pointer-events-none",
|
|
19035
|
+
imageClassName
|
|
19036
|
+
),
|
|
19037
|
+
draggable: false
|
|
19038
|
+
}
|
|
19039
|
+
) }, item.id)) }),
|
|
19040
|
+
download && /* @__PURE__ */ jsxRuntime.jsx(
|
|
19041
|
+
framerMotion.motion.button,
|
|
19042
|
+
{
|
|
19043
|
+
onClick: handleDownload,
|
|
19044
|
+
className: cn(
|
|
19045
|
+
"absolute top-4 right-4 z-30 p-2 rounded-full text-white transition-colors border border-white/10",
|
|
19046
|
+
downloadSuccess ? "bg-green-500 hover:bg-green-600" : "bg-black/50 hover:bg-black/70"
|
|
19047
|
+
),
|
|
19048
|
+
title: "Download image",
|
|
19049
|
+
initial: false,
|
|
19050
|
+
animate: {
|
|
19051
|
+
scale: isDownloading ? 0.9 : 1,
|
|
19052
|
+
backgroundColor: downloadSuccess ? "rgb(34, 197, 94)" : "rgba(0, 0, 0, 0.5)"
|
|
19053
|
+
},
|
|
19054
|
+
whileHover: { scale: 1.05 },
|
|
19055
|
+
whileTap: { scale: 0.95 },
|
|
19056
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(framerMotion.AnimatePresence, { mode: "wait", initial: false, children: isDownloading ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
19057
|
+
framerMotion.motion.svg,
|
|
19058
|
+
{
|
|
19059
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
19060
|
+
width: "20",
|
|
19061
|
+
height: "20",
|
|
19062
|
+
viewBox: "0 0 24 24",
|
|
19063
|
+
fill: "none",
|
|
19064
|
+
stroke: "currentColor",
|
|
19065
|
+
strokeWidth: "2",
|
|
19066
|
+
strokeLinecap: "round",
|
|
19067
|
+
strokeLinejoin: "round",
|
|
19068
|
+
animate: { rotate: 360 },
|
|
19069
|
+
transition: {
|
|
19070
|
+
repeat: Infinity,
|
|
19071
|
+
ease: "linear",
|
|
19072
|
+
duration: 1
|
|
19073
|
+
},
|
|
19074
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M21 12a9 9 0 1 1-6.219-8.56" })
|
|
19075
|
+
},
|
|
19076
|
+
"loading"
|
|
19077
|
+
) : downloadSuccess ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
19078
|
+
framerMotion.motion.svg,
|
|
19079
|
+
{
|
|
19080
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
19081
|
+
width: "20",
|
|
19082
|
+
height: "20",
|
|
19083
|
+
viewBox: "0 0 24 24",
|
|
19084
|
+
fill: "none",
|
|
19085
|
+
stroke: "currentColor",
|
|
19086
|
+
strokeWidth: "2",
|
|
19087
|
+
strokeLinecap: "round",
|
|
19088
|
+
strokeLinejoin: "round",
|
|
19089
|
+
initial: { scale: 0.5, opacity: 0 },
|
|
19090
|
+
animate: { scale: 1, opacity: 1 },
|
|
19091
|
+
exit: { scale: 0.5, opacity: 0 },
|
|
19092
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("polyline", { points: "20 6 9 17 4 12" })
|
|
19093
|
+
},
|
|
19094
|
+
"success"
|
|
19095
|
+
) : /* @__PURE__ */ jsxRuntime.jsxs(
|
|
19096
|
+
framerMotion.motion.svg,
|
|
19097
|
+
{
|
|
19098
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
19099
|
+
width: "20",
|
|
19100
|
+
height: "20",
|
|
19101
|
+
viewBox: "0 0 24 24",
|
|
19102
|
+
fill: "none",
|
|
19103
|
+
stroke: "currentColor",
|
|
19104
|
+
strokeWidth: "2",
|
|
19105
|
+
strokeLinecap: "round",
|
|
19106
|
+
strokeLinejoin: "round",
|
|
19107
|
+
initial: { scale: 0.5, opacity: 0 },
|
|
19108
|
+
animate: { scale: 1, opacity: 1 },
|
|
19109
|
+
exit: { scale: 0.5, opacity: 0 },
|
|
19110
|
+
children: [
|
|
19111
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" }),
|
|
19112
|
+
/* @__PURE__ */ jsxRuntime.jsx("polyline", { points: "7 10 12 15 17 10" }),
|
|
19113
|
+
/* @__PURE__ */ jsxRuntime.jsx("line", { x1: "12", x2: "12", y1: "15", y2: "3" })
|
|
19114
|
+
]
|
|
19115
|
+
},
|
|
19116
|
+
"download"
|
|
19117
|
+
) })
|
|
19118
|
+
}
|
|
19119
|
+
),
|
|
19120
|
+
showControls && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
19121
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
19122
|
+
framerMotion.motion.button,
|
|
19123
|
+
{
|
|
19124
|
+
disabled: index === 0,
|
|
19125
|
+
onClick: () => setIndex((i) => Math.max(0, i - 1)),
|
|
19126
|
+
className: `absolute left-4 top-1/2 -translate-y-1/2 w-10 h-10 rounded-full flex items-center justify-center shadow-lg transition-transform z-30
|
|
19127
|
+
${index === 0 ? "opacity-40 cursor-not-allowed" : "bg-secondary hover:scale-110 hover:opacity-100 opacity-70"}`,
|
|
19128
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
19129
|
+
"svg",
|
|
19130
|
+
{
|
|
19131
|
+
className: "w-6 h-6",
|
|
19132
|
+
fill: "none",
|
|
19133
|
+
stroke: "currentColor",
|
|
19134
|
+
viewBox: "0 0 24 24",
|
|
19135
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
19136
|
+
"path",
|
|
19137
|
+
{
|
|
19138
|
+
strokeLinecap: "round",
|
|
19139
|
+
strokeLinejoin: "round",
|
|
19140
|
+
strokeWidth: 2,
|
|
19141
|
+
d: "M15 19l-7-7 7-7"
|
|
19142
|
+
}
|
|
19143
|
+
)
|
|
19144
|
+
}
|
|
19145
|
+
)
|
|
19146
|
+
}
|
|
19147
|
+
),
|
|
19148
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
19149
|
+
framerMotion.motion.button,
|
|
19150
|
+
{
|
|
19151
|
+
disabled: index === items.length - 1,
|
|
19152
|
+
onClick: () => setIndex((i) => Math.min(items.length - 1, i + 1)),
|
|
19153
|
+
className: `absolute right-4 top-1/2 -translate-y-1/2 w-10 h-10 rounded-full flex items-center justify-center shadow-lg transition-transform z-30
|
|
19154
|
+
${index === items.length - 1 ? "opacity-40 cursor-not-allowed" : "bg-secondary hover:scale-110 hover:opacity-100 opacity-70"}`,
|
|
19155
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
19156
|
+
"svg",
|
|
19157
|
+
{
|
|
19158
|
+
className: "w-6 h-6",
|
|
19159
|
+
fill: "none",
|
|
19160
|
+
stroke: "currentColor",
|
|
19161
|
+
viewBox: "0 0 24 24",
|
|
19162
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
19163
|
+
"path",
|
|
19164
|
+
{
|
|
19165
|
+
strokeLinecap: "round",
|
|
19166
|
+
strokeLinejoin: "round",
|
|
19167
|
+
strokeWidth: 2,
|
|
19168
|
+
d: "M9 5l7 7-7 7"
|
|
19169
|
+
}
|
|
19170
|
+
)
|
|
19171
|
+
}
|
|
19172
|
+
)
|
|
19173
|
+
}
|
|
19174
|
+
)
|
|
19175
|
+
] }),
|
|
19176
|
+
showIndicators && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute bottom-4 left-1/2 -translate-x-1/2 flex gap-2", children: items.map((_, i) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
19177
|
+
"button",
|
|
19178
|
+
{
|
|
19179
|
+
onClick: () => setIndex(i),
|
|
19180
|
+
className: `h-2 rounded-full transition-all ${i === index ? "w-8 bg-white" : "w-2 bg-white/50"}`
|
|
19181
|
+
},
|
|
19182
|
+
i
|
|
19183
|
+
)) })
|
|
19184
|
+
]
|
|
19185
|
+
}
|
|
19186
|
+
) })
|
|
19187
|
+
}
|
|
19188
|
+
);
|
|
19189
|
+
}
|
|
18650
19190
|
|
|
18651
19191
|
exports.AddButton = AddButton;
|
|
18652
19192
|
exports.Agenda = Agenda;
|
|
@@ -18690,6 +19230,7 @@ exports.CardDescriptionBase = CardDescriptionBase;
|
|
|
18690
19230
|
exports.CardFooterBase = CardFooterBase;
|
|
18691
19231
|
exports.CardHeaderBase = CardHeaderBase;
|
|
18692
19232
|
exports.CardTitleBase = CardTitleBase;
|
|
19233
|
+
exports.CarouselBase = CarouselBase;
|
|
18693
19234
|
exports.ChangeButton = ChangeButton;
|
|
18694
19235
|
exports.Chart = Chart_default;
|
|
18695
19236
|
exports.ChartControls = ChartControls;
|