@hyphen/hyphen-components 9.0.0 → 9.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/css/index.css +17 -0
- package/dist/css/index.css.map +1 -1
- package/dist/css/utilities.css +1 -1
- package/dist/css/utilities.css.map +1 -1
- package/dist/hyphen-components.cjs.development.js +363 -143
- package/dist/hyphen-components.cjs.development.js.map +1 -1
- package/dist/hyphen-components.cjs.production.min.js +2 -2
- package/dist/hyphen-components.cjs.production.min.js.map +1 -1
- package/dist/hyphen-components.esm.js +354 -134
- package/dist/hyphen-components.esm.js.map +1 -1
- package/dist/index.d.ts +14 -1
- package/package.json +4 -3
- package/src/components/Sidebar/Sidebar.mdx +18 -0
- package/src/components/Sidebar/Sidebar.module.scss +18 -0
- package/src/components/Sidebar/Sidebar.react17.test.tsx +35 -0
- package/src/components/Sidebar/Sidebar.resize.test.tsx +391 -0
- package/src/components/Sidebar/Sidebar.stories.tsx +36 -0
- package/src/components/Sidebar/Sidebar.test.tsx +46 -0
- package/src/components/Sidebar/Sidebar.tsx +242 -150
- package/src/components/Sidebar/useSidebarResize.ts +222 -0
|
@@ -4392,7 +4392,8 @@ var ResponsiveProvider = ({
|
|
|
4392
4392
|
};
|
|
4393
4393
|
|
|
4394
4394
|
// src/components/Sidebar/Sidebar.tsx
|
|
4395
|
-
var
|
|
4395
|
+
var import_react63 = __toESM(require("react"));
|
|
4396
|
+
var import_react_id = require("@radix-ui/react-id");
|
|
4396
4397
|
var import_react_slot3 = require("@radix-ui/react-slot");
|
|
4397
4398
|
var import_classnames34 = __toESM(require("classnames"));
|
|
4398
4399
|
|
|
@@ -4417,10 +4418,187 @@ function useIsMobile() {
|
|
|
4417
4418
|
}
|
|
4418
4419
|
|
|
4419
4420
|
// src/components/Sidebar/Sidebar.module.scss
|
|
4420
|
-
var Sidebar_module_default = { "rail": "rail__OwBtB", "group-data-": "group-data-__af4bi" };
|
|
4421
|
+
var Sidebar_module_default = { "rail": "rail__OwBtB", "group-data-": "group-data-__af4bi", "resizeDescription": "resizeDescription__Ou7UB" };
|
|
4422
|
+
|
|
4423
|
+
// src/components/Sidebar/useSidebarResize.ts
|
|
4424
|
+
var import_react62 = __toESM(require("react"));
|
|
4425
|
+
function useSidebarResize({
|
|
4426
|
+
resizable = false,
|
|
4427
|
+
defaultWidth,
|
|
4428
|
+
minWidth = 256,
|
|
4429
|
+
maxWidth = 960,
|
|
4430
|
+
widthStorageKey,
|
|
4431
|
+
side,
|
|
4432
|
+
isMobile,
|
|
4433
|
+
expanded,
|
|
4434
|
+
rootRef
|
|
4435
|
+
}) {
|
|
4436
|
+
const initialWidth = defaultWidth ?? (side === "left" ? 256 : 384);
|
|
4437
|
+
const [preferredWidth, setPreferredWidth] = (0, import_react62.useState)(initialWidth);
|
|
4438
|
+
const [containerWidth, setContainerWidth] = (0, import_react62.useState)(Infinity);
|
|
4439
|
+
const [dragging, setDragging] = (0, import_react62.useState)(false);
|
|
4440
|
+
const gesture = (0, import_react62.useRef)(null);
|
|
4441
|
+
const suppressClick = (0, import_react62.useRef)(false);
|
|
4442
|
+
const currentWidth = (0, import_react62.useRef)(preferredWidth);
|
|
4443
|
+
const enabled = resizable && !isMobile && expanded;
|
|
4444
|
+
const maximum = Math.max(0, Math.min(maxWidth, containerWidth * (2 / 3)));
|
|
4445
|
+
const minimum = Math.min(Math.max(0, minWidth), maximum);
|
|
4446
|
+
const clamp = (value) => Math.max(minimum, Math.min(maximum, value));
|
|
4447
|
+
const width = clamp(preferredWidth);
|
|
4448
|
+
const [settledWidth, setSettledWidth] = (0, import_react62.useState)(width);
|
|
4449
|
+
useIsomorphicLayoutEffect(() => {
|
|
4450
|
+
if (!resizable) return;
|
|
4451
|
+
let savedWidth = initialWidth;
|
|
4452
|
+
try {
|
|
4453
|
+
const saved = widthStorageKey && localStorage.getItem(widthStorageKey);
|
|
4454
|
+
if (saved && Number.isFinite(Number(saved)) && Number(saved) > 0) {
|
|
4455
|
+
savedWidth = Number(saved);
|
|
4456
|
+
}
|
|
4457
|
+
} catch {
|
|
4458
|
+
}
|
|
4459
|
+
setPreferredWidth(savedWidth);
|
|
4460
|
+
}, [resizable, initialWidth, widthStorageKey]);
|
|
4461
|
+
useIsomorphicLayoutEffect(() => {
|
|
4462
|
+
if (!resizable || isMobile) return;
|
|
4463
|
+
const container = rootRef.current?.closest("[data-sidebar-provider]");
|
|
4464
|
+
if (!container) return;
|
|
4465
|
+
const measure = () => setContainerWidth(container.getBoundingClientRect().width);
|
|
4466
|
+
measure();
|
|
4467
|
+
if (typeof ResizeObserver === "undefined") {
|
|
4468
|
+
window.addEventListener("resize", measure);
|
|
4469
|
+
return () => window.removeEventListener("resize", measure);
|
|
4470
|
+
}
|
|
4471
|
+
const observer = new ResizeObserver(measure);
|
|
4472
|
+
observer.observe(container);
|
|
4473
|
+
return () => observer.disconnect();
|
|
4474
|
+
}, [resizable, isMobile, rootRef]);
|
|
4475
|
+
useIsomorphicLayoutEffect(() => {
|
|
4476
|
+
if (dragging || width === settledWidth) return;
|
|
4477
|
+
rootRef.current?.getBoundingClientRect();
|
|
4478
|
+
setSettledWidth(width);
|
|
4479
|
+
}, [dragging, width, settledWidth, rootRef]);
|
|
4480
|
+
(0, import_react62.useEffect)(() => {
|
|
4481
|
+
if (!enabled) {
|
|
4482
|
+
gesture.current = null;
|
|
4483
|
+
setDragging(false);
|
|
4484
|
+
}
|
|
4485
|
+
}, [enabled]);
|
|
4486
|
+
(0, import_react62.useEffect)(() => {
|
|
4487
|
+
if (!dragging) return;
|
|
4488
|
+
const { cursor, userSelect } = document.body.style;
|
|
4489
|
+
document.body.style.cursor = "col-resize";
|
|
4490
|
+
document.body.style.userSelect = "none";
|
|
4491
|
+
return () => {
|
|
4492
|
+
document.body.style.cursor = cursor;
|
|
4493
|
+
document.body.style.userSelect = userSelect;
|
|
4494
|
+
};
|
|
4495
|
+
}, [dragging]);
|
|
4496
|
+
const update = (next) => {
|
|
4497
|
+
currentWidth.current = clamp(next);
|
|
4498
|
+
setPreferredWidth(currentWidth.current);
|
|
4499
|
+
};
|
|
4500
|
+
const persist = () => {
|
|
4501
|
+
if (!widthStorageKey) return;
|
|
4502
|
+
try {
|
|
4503
|
+
localStorage.setItem(widthStorageKey, String(currentWidth.current));
|
|
4504
|
+
} catch {
|
|
4505
|
+
}
|
|
4506
|
+
};
|
|
4507
|
+
const finish = () => {
|
|
4508
|
+
if (!gesture.current) return;
|
|
4509
|
+
if (gesture.current.moved) persist();
|
|
4510
|
+
gesture.current = null;
|
|
4511
|
+
setDragging(false);
|
|
4512
|
+
};
|
|
4513
|
+
const cancel = () => {
|
|
4514
|
+
if (!gesture.current) return;
|
|
4515
|
+
setPreferredWidth(gesture.current.preferred);
|
|
4516
|
+
gesture.current = null;
|
|
4517
|
+
setDragging(false);
|
|
4518
|
+
};
|
|
4519
|
+
const railProps = {
|
|
4520
|
+
onPointerDown: (event) => {
|
|
4521
|
+
suppressClick.current = false;
|
|
4522
|
+
if (!enabled || event.button !== 0 || gesture.current) return;
|
|
4523
|
+
gesture.current = {
|
|
4524
|
+
id: event.pointerId,
|
|
4525
|
+
x: event.clientX,
|
|
4526
|
+
width,
|
|
4527
|
+
preferred: preferredWidth,
|
|
4528
|
+
moved: false
|
|
4529
|
+
};
|
|
4530
|
+
event.currentTarget.setPointerCapture(event.pointerId);
|
|
4531
|
+
},
|
|
4532
|
+
onPointerMove: (event) => {
|
|
4533
|
+
const start = gesture.current;
|
|
4534
|
+
if (!start || start.id !== event.pointerId) return;
|
|
4535
|
+
const delta = event.clientX - start.x;
|
|
4536
|
+
if (!start.moved && Math.abs(delta) < 4) return;
|
|
4537
|
+
start.moved = true;
|
|
4538
|
+
suppressClick.current = true;
|
|
4539
|
+
setDragging(true);
|
|
4540
|
+
update(start.width + (side === "left" ? delta : -delta));
|
|
4541
|
+
},
|
|
4542
|
+
onPointerUp: (event) => {
|
|
4543
|
+
const start = gesture.current;
|
|
4544
|
+
if (!start || start.id !== event.pointerId) return;
|
|
4545
|
+
if (start.moved) {
|
|
4546
|
+
update(
|
|
4547
|
+
start.width + (side === "left" ? 1 : -1) * (event.clientX - start.x)
|
|
4548
|
+
);
|
|
4549
|
+
}
|
|
4550
|
+
finish();
|
|
4551
|
+
event.currentTarget.releasePointerCapture(event.pointerId);
|
|
4552
|
+
},
|
|
4553
|
+
onPointerCancel: cancel,
|
|
4554
|
+
// Capture can end before pointerup reaches the rail. Keep the last move
|
|
4555
|
+
// instead of treating release as a cancelled drag and restoring its start.
|
|
4556
|
+
onLostPointerCapture: (event) => {
|
|
4557
|
+
if (gesture.current?.id === event.pointerId) finish();
|
|
4558
|
+
},
|
|
4559
|
+
onClickCapture: (event) => {
|
|
4560
|
+
if (suppressClick.current && event.detail !== 0) {
|
|
4561
|
+
event.preventDefault();
|
|
4562
|
+
event.stopPropagation();
|
|
4563
|
+
suppressClick.current = false;
|
|
4564
|
+
}
|
|
4565
|
+
},
|
|
4566
|
+
onKeyDown: (event) => {
|
|
4567
|
+
const modified = event.altKey || event.ctrlKey || event.metaKey || event.shiftKey;
|
|
4568
|
+
if (!enabled || modified) return;
|
|
4569
|
+
let next;
|
|
4570
|
+
switch (event.key) {
|
|
4571
|
+
case "ArrowLeft":
|
|
4572
|
+
next = width + (side === "left" ? -10 : 10);
|
|
4573
|
+
break;
|
|
4574
|
+
case "ArrowRight":
|
|
4575
|
+
next = width + (side === "left" ? 10 : -10);
|
|
4576
|
+
break;
|
|
4577
|
+
case "Home":
|
|
4578
|
+
next = minimum;
|
|
4579
|
+
break;
|
|
4580
|
+
case "End":
|
|
4581
|
+
next = maximum;
|
|
4582
|
+
break;
|
|
4583
|
+
default:
|
|
4584
|
+
return;
|
|
4585
|
+
}
|
|
4586
|
+
event.preventDefault();
|
|
4587
|
+
update(next);
|
|
4588
|
+
persist();
|
|
4589
|
+
}
|
|
4590
|
+
};
|
|
4591
|
+
return {
|
|
4592
|
+
width,
|
|
4593
|
+
animate: !dragging && width === settledWidth,
|
|
4594
|
+
enabled,
|
|
4595
|
+
railProps
|
|
4596
|
+
};
|
|
4597
|
+
}
|
|
4598
|
+
var SidebarResizeContext = import_react62.default.createContext(null);
|
|
4421
4599
|
|
|
4422
4600
|
// src/components/Tooltip/Tooltip.tsx
|
|
4423
|
-
var
|
|
4601
|
+
var React58 = __toESM(require("react"));
|
|
4424
4602
|
var TooltipPrimitive = __toESM(require("@radix-ui/react-tooltip"));
|
|
4425
4603
|
|
|
4426
4604
|
// src/components/Tooltip/Tooltip.module.scss
|
|
@@ -4432,7 +4610,7 @@ var TooltipProvider = TooltipPrimitive.Provider;
|
|
|
4432
4610
|
var Tooltip = TooltipPrimitive.Root;
|
|
4433
4611
|
var TooltipTrigger = TooltipPrimitive.Trigger;
|
|
4434
4612
|
var TooltipPortal = TooltipPrimitive.Portal;
|
|
4435
|
-
var TooltipContent =
|
|
4613
|
+
var TooltipContent = React58.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ React58.createElement(
|
|
4436
4614
|
TooltipPrimitive.Content,
|
|
4437
4615
|
{
|
|
4438
4616
|
ref,
|
|
@@ -4453,14 +4631,14 @@ var SIDEBAR_RIGHT_WIDTH = "24rem";
|
|
|
4453
4631
|
var SIDEBAR_WIDTH_ICON = "44px";
|
|
4454
4632
|
var SIDEBAR_KEYBOARD_SHORTCUT_LEFT = "[";
|
|
4455
4633
|
var SIDEBAR_KEYBOARD_SHORTCUT_RIGHT = "]";
|
|
4456
|
-
var SidebarIsMobileContext =
|
|
4457
|
-
var SidebarLeftContext =
|
|
4634
|
+
var SidebarIsMobileContext = import_react63.default.createContext(null);
|
|
4635
|
+
var SidebarLeftContext = import_react63.default.createContext(
|
|
4458
4636
|
null
|
|
4459
4637
|
);
|
|
4460
|
-
var SidebarRightContext =
|
|
4638
|
+
var SidebarRightContext = import_react63.default.createContext(
|
|
4461
4639
|
null
|
|
4462
4640
|
);
|
|
4463
|
-
var SidebarSideContext =
|
|
4641
|
+
var SidebarSideContext = import_react63.default.createContext("left");
|
|
4464
4642
|
var resolveSideValue = (value, side, fallback) => {
|
|
4465
4643
|
if (typeof value === "boolean") {
|
|
4466
4644
|
return value;
|
|
@@ -4513,21 +4691,21 @@ var useSidebarSideState = ({
|
|
|
4513
4691
|
);
|
|
4514
4692
|
const controlledOpen = resolveControlledOpen(openProp, side);
|
|
4515
4693
|
const isControlled = typeof controlledOpen === "boolean";
|
|
4516
|
-
const [uncontrolledOpen, setUncontrolledOpen] = (0,
|
|
4694
|
+
const [uncontrolledOpen, setUncontrolledOpen] = (0, import_react63.useState)(
|
|
4517
4695
|
controlledOpen ?? initialDefaultOpen
|
|
4518
4696
|
);
|
|
4519
|
-
const [openMobile, setOpenMobile] = (0,
|
|
4697
|
+
const [openMobile, setOpenMobile] = (0, import_react63.useState)(
|
|
4520
4698
|
() => isMobile ? false : controlledOpen ?? initialDefaultOpen
|
|
4521
4699
|
);
|
|
4522
4700
|
const open = controlledOpen ?? uncontrolledOpen;
|
|
4523
|
-
(0,
|
|
4701
|
+
(0, import_react63.useEffect)(() => {
|
|
4524
4702
|
if (isMobile) {
|
|
4525
4703
|
setOpenMobile(false);
|
|
4526
4704
|
} else {
|
|
4527
4705
|
setUncontrolledOpen(controlledOpen ?? initialDefaultOpen);
|
|
4528
4706
|
}
|
|
4529
4707
|
}, [isMobile, controlledOpen, initialDefaultOpen]);
|
|
4530
|
-
const setOpen = (0,
|
|
4708
|
+
const setOpen = (0, import_react63.useCallback)(
|
|
4531
4709
|
(value) => {
|
|
4532
4710
|
const newOpenState = typeof value === "function" ? value(open) : value;
|
|
4533
4711
|
if (newOpenState === open) {
|
|
@@ -4542,7 +4720,7 @@ var useSidebarSideState = ({
|
|
|
4542
4720
|
},
|
|
4543
4721
|
[open, isControlled, onOpenChange, side, storageKey]
|
|
4544
4722
|
);
|
|
4545
|
-
const toggleSidebar = (0,
|
|
4723
|
+
const toggleSidebar = (0, import_react63.useCallback)(() => {
|
|
4546
4724
|
lastToggledSideRef.current = side;
|
|
4547
4725
|
if (isMobile) {
|
|
4548
4726
|
setOpenMobile((value) => !value);
|
|
@@ -4551,7 +4729,7 @@ var useSidebarSideState = ({
|
|
|
4551
4729
|
}
|
|
4552
4730
|
}, [isMobile, setOpen, side, setOpenMobile, lastToggledSideRef]);
|
|
4553
4731
|
const state = open ? "expanded" : "collapsed";
|
|
4554
|
-
return (0,
|
|
4732
|
+
return (0, import_react63.useMemo)(
|
|
4555
4733
|
() => ({
|
|
4556
4734
|
state,
|
|
4557
4735
|
open,
|
|
@@ -4564,13 +4742,13 @@ var useSidebarSideState = ({
|
|
|
4564
4742
|
);
|
|
4565
4743
|
};
|
|
4566
4744
|
function useSidebar(sideOverride) {
|
|
4567
|
-
const isMobile =
|
|
4745
|
+
const isMobile = import_react63.default.useContext(SidebarIsMobileContext);
|
|
4568
4746
|
if (typeof isMobile !== "boolean") {
|
|
4569
4747
|
throw new Error("useSidebar must be used within a SidebarProvider.");
|
|
4570
4748
|
}
|
|
4571
|
-
const contextSide =
|
|
4749
|
+
const contextSide = import_react63.default.useContext(SidebarSideContext);
|
|
4572
4750
|
const side = sideOverride ?? contextSide;
|
|
4573
|
-
const sideContext =
|
|
4751
|
+
const sideContext = import_react63.default.useContext(
|
|
4574
4752
|
side === "left" ? SidebarLeftContext : SidebarRightContext
|
|
4575
4753
|
);
|
|
4576
4754
|
if (!sideContext) {
|
|
@@ -4582,7 +4760,7 @@ function useSidebar(sideOverride) {
|
|
|
4582
4760
|
side
|
|
4583
4761
|
};
|
|
4584
4762
|
}
|
|
4585
|
-
var SidebarProvider = (0,
|
|
4763
|
+
var SidebarProvider = (0, import_react63.forwardRef)(
|
|
4586
4764
|
({
|
|
4587
4765
|
defaultOpen = true,
|
|
4588
4766
|
open: openProp,
|
|
@@ -4594,9 +4772,9 @@ var SidebarProvider = (0, import_react62.forwardRef)(
|
|
|
4594
4772
|
...props
|
|
4595
4773
|
}, ref) => {
|
|
4596
4774
|
const isMobile = useIsMobile();
|
|
4597
|
-
const lastToggledSideRef =
|
|
4598
|
-
const leftToggleRef =
|
|
4599
|
-
const rightToggleRef =
|
|
4775
|
+
const lastToggledSideRef = import_react63.default.useRef("left");
|
|
4776
|
+
const leftToggleRef = import_react63.default.useRef(null);
|
|
4777
|
+
const rightToggleRef = import_react63.default.useRef(null);
|
|
4600
4778
|
const leftState = useSidebarSideState({
|
|
4601
4779
|
side: "left",
|
|
4602
4780
|
isMobile,
|
|
@@ -4615,18 +4793,21 @@ var SidebarProvider = (0, import_react62.forwardRef)(
|
|
|
4615
4793
|
storageKey,
|
|
4616
4794
|
lastToggledSideRef
|
|
4617
4795
|
});
|
|
4618
|
-
(0,
|
|
4796
|
+
(0, import_react63.useEffect)(() => {
|
|
4619
4797
|
leftToggleRef.current = leftState.toggleSidebar;
|
|
4620
4798
|
}, [leftState.toggleSidebar]);
|
|
4621
|
-
(0,
|
|
4799
|
+
(0, import_react63.useEffect)(() => {
|
|
4622
4800
|
rightToggleRef.current = rightState.toggleSidebar;
|
|
4623
4801
|
}, [rightState.toggleSidebar]);
|
|
4624
|
-
(0,
|
|
4802
|
+
(0, import_react63.useEffect)(() => {
|
|
4625
4803
|
const handleKeyDown = (event) => {
|
|
4626
4804
|
const target = event.target;
|
|
4627
4805
|
if (target && (target.tagName === "INPUT" || target.tagName === "TEXTAREA" || target.tagName === "SELECT" || target.isContentEditable)) {
|
|
4628
4806
|
return;
|
|
4629
4807
|
}
|
|
4808
|
+
if (event.metaKey || event.ctrlKey && !event.getModifierState("AltGraph")) {
|
|
4809
|
+
return;
|
|
4810
|
+
}
|
|
4630
4811
|
const shortcutSide = event.key === SIDEBAR_KEYBOARD_SHORTCUT_LEFT ? "left" : event.key === SIDEBAR_KEYBOARD_SHORTCUT_RIGHT ? "right" : null;
|
|
4631
4812
|
if (!shortcutSide) {
|
|
4632
4813
|
return;
|
|
@@ -4638,7 +4819,7 @@ var SidebarProvider = (0, import_react62.forwardRef)(
|
|
|
4638
4819
|
window.addEventListener("keydown", handleKeyDown);
|
|
4639
4820
|
return () => window.removeEventListener("keydown", handleKeyDown);
|
|
4640
4821
|
}, []);
|
|
4641
|
-
return /* @__PURE__ */
|
|
4822
|
+
return /* @__PURE__ */ import_react63.default.createElement(SidebarIsMobileContext.Provider, { value: isMobile }, /* @__PURE__ */ import_react63.default.createElement(SidebarLeftContext.Provider, { value: leftState }, /* @__PURE__ */ import_react63.default.createElement(SidebarRightContext.Provider, { value: rightState }, /* @__PURE__ */ import_react63.default.createElement(TooltipProvider, { delayDuration: 0 }, /* @__PURE__ */ import_react63.default.createElement(
|
|
4642
4823
|
"div",
|
|
4643
4824
|
{
|
|
4644
4825
|
style: {
|
|
@@ -4652,6 +4833,7 @@ var SidebarProvider = (0, import_react62.forwardRef)(
|
|
|
4652
4833
|
className
|
|
4653
4834
|
),
|
|
4654
4835
|
ref,
|
|
4836
|
+
"data-sidebar-provider": "",
|
|
4655
4837
|
...props
|
|
4656
4838
|
},
|
|
4657
4839
|
children
|
|
@@ -4659,23 +4841,54 @@ var SidebarProvider = (0, import_react62.forwardRef)(
|
|
|
4659
4841
|
}
|
|
4660
4842
|
);
|
|
4661
4843
|
SidebarProvider.displayName = "SidebarProvider";
|
|
4662
|
-
var Sidebar =
|
|
4663
|
-
({
|
|
4844
|
+
var Sidebar = import_react63.default.forwardRef(
|
|
4845
|
+
({
|
|
4846
|
+
side = "left",
|
|
4847
|
+
collapsible = "offcanvas",
|
|
4848
|
+
className,
|
|
4849
|
+
children,
|
|
4850
|
+
resizable,
|
|
4851
|
+
defaultWidth,
|
|
4852
|
+
minWidth,
|
|
4853
|
+
maxWidth,
|
|
4854
|
+
widthStorageKey,
|
|
4855
|
+
...props
|
|
4856
|
+
}, ref) => {
|
|
4664
4857
|
const { isMobile, state, openMobile, setOpenMobile } = useSidebar(side);
|
|
4665
|
-
const
|
|
4858
|
+
const rootRef = import_react63.default.useRef(null);
|
|
4859
|
+
const setRootRef = import_react63.default.useCallback(
|
|
4860
|
+
(node) => {
|
|
4861
|
+
rootRef.current = node;
|
|
4862
|
+
if (typeof ref === "function") ref(node);
|
|
4863
|
+
else if (ref) ref.current = node;
|
|
4864
|
+
},
|
|
4865
|
+
[ref]
|
|
4866
|
+
);
|
|
4867
|
+
const resize = useSidebarResize({
|
|
4868
|
+
resizable,
|
|
4869
|
+
defaultWidth,
|
|
4870
|
+
minWidth,
|
|
4871
|
+
maxWidth,
|
|
4872
|
+
widthStorageKey,
|
|
4873
|
+
side,
|
|
4874
|
+
isMobile,
|
|
4875
|
+
expanded: state === "expanded" || collapsible === "none",
|
|
4876
|
+
rootRef
|
|
4877
|
+
});
|
|
4878
|
+
const sidebarWidth = resizable ? `${resize.width}px` : side === "right" ? SIDEBAR_RIGHT_WIDTH : SIDEBAR_WIDTH;
|
|
4666
4879
|
if (isMobile) {
|
|
4667
|
-
return /* @__PURE__ */
|
|
4880
|
+
return /* @__PURE__ */ import_react63.default.createElement(SidebarSideContext.Provider, { value: side }, /* @__PURE__ */ import_react63.default.createElement(SidebarResizeContext.Provider, { value: resize }, /* @__PURE__ */ import_react63.default.createElement(
|
|
4668
4881
|
Drawer,
|
|
4669
4882
|
{
|
|
4670
4883
|
isOpen: openMobile,
|
|
4671
4884
|
onDismiss: () => setOpenMobile(false),
|
|
4672
4885
|
placement: side
|
|
4673
4886
|
},
|
|
4674
|
-
/* @__PURE__ */
|
|
4675
|
-
));
|
|
4887
|
+
/* @__PURE__ */ import_react63.default.createElement(Box, { "data-sidebar": "sidebar", "data-mobile": "true", height: "100" }, children)
|
|
4888
|
+
)));
|
|
4676
4889
|
}
|
|
4677
4890
|
if (collapsible === "none") {
|
|
4678
|
-
return /* @__PURE__ */
|
|
4891
|
+
return /* @__PURE__ */ import_react63.default.createElement(SidebarSideContext.Provider, { value: side }, /* @__PURE__ */ import_react63.default.createElement(SidebarResizeContext.Provider, { value: resize }, /* @__PURE__ */ import_react63.default.createElement(
|
|
4679
4892
|
"div",
|
|
4680
4893
|
{
|
|
4681
4894
|
className: (0, import_classnames34.default)(
|
|
@@ -4684,18 +4897,19 @@ var Sidebar = import_react62.default.forwardRef(
|
|
|
4684
4897
|
),
|
|
4685
4898
|
style: {
|
|
4686
4899
|
"--sidebar-width": sidebarWidth,
|
|
4687
|
-
width: "var(--sidebar-width)"
|
|
4900
|
+
width: "var(--sidebar-width)",
|
|
4901
|
+
...resizable ? { position: "relative", flexShrink: 0 } : {}
|
|
4688
4902
|
},
|
|
4689
|
-
ref,
|
|
4903
|
+
ref: setRootRef,
|
|
4690
4904
|
...props
|
|
4691
4905
|
},
|
|
4692
4906
|
children
|
|
4693
|
-
));
|
|
4907
|
+
)));
|
|
4694
4908
|
}
|
|
4695
|
-
return /* @__PURE__ */
|
|
4909
|
+
return /* @__PURE__ */ import_react63.default.createElement(SidebarSideContext.Provider, { value: side }, /* @__PURE__ */ import_react63.default.createElement(SidebarResizeContext.Provider, { value: resize }, /* @__PURE__ */ import_react63.default.createElement(
|
|
4696
4910
|
Box,
|
|
4697
4911
|
{
|
|
4698
|
-
ref,
|
|
4912
|
+
ref: setRootRef,
|
|
4699
4913
|
background: "primary",
|
|
4700
4914
|
display: { base: "none", desktop: "block" },
|
|
4701
4915
|
color: "base",
|
|
@@ -4709,13 +4923,13 @@ var Sidebar = import_react62.default.forwardRef(
|
|
|
4709
4923
|
"data-side": side,
|
|
4710
4924
|
className: "group"
|
|
4711
4925
|
},
|
|
4712
|
-
/* @__PURE__ */
|
|
4926
|
+
/* @__PURE__ */ import_react63.default.createElement(
|
|
4713
4927
|
"div",
|
|
4714
4928
|
{
|
|
4715
4929
|
style: {
|
|
4716
4930
|
animationTimingFunction: "var(--sidebar-transition-timing, linear)",
|
|
4717
4931
|
transitionTimingFunction: "var(--sidebar-transition-timing, linear)",
|
|
4718
|
-
transitionDuration: "var(--sidebar-transition-duration, 200ms)",
|
|
4932
|
+
transitionDuration: resize.animate ? "var(--sidebar-transition-duration, 200ms)" : "0ms",
|
|
4719
4933
|
animationDuration: "var(--sidebar-transition-duration, 200ms)",
|
|
4720
4934
|
transitionProperty: "width",
|
|
4721
4935
|
width: getSidebarWidth(state, collapsible),
|
|
@@ -4724,7 +4938,7 @@ var Sidebar = import_react62.default.forwardRef(
|
|
|
4724
4938
|
className: (0, import_classnames34.default)("position-relative", className)
|
|
4725
4939
|
}
|
|
4726
4940
|
),
|
|
4727
|
-
/* @__PURE__ */
|
|
4941
|
+
/* @__PURE__ */ import_react63.default.createElement(
|
|
4728
4942
|
"div",
|
|
4729
4943
|
{
|
|
4730
4944
|
className: (0, import_classnames34.default)(
|
|
@@ -4738,7 +4952,7 @@ var Sidebar = import_react62.default.forwardRef(
|
|
|
4738
4952
|
zIndex: "var(--size-z-index-drawer)",
|
|
4739
4953
|
animationTimingFunction: "var(--sidebar-transition-timing, linear)",
|
|
4740
4954
|
transitionTimingFunction: "var(--sidebar-transition-timing, linear)",
|
|
4741
|
-
transitionDuration: "var(--sidebar-transition-duration, 200ms)",
|
|
4955
|
+
transitionDuration: resize.animate ? "var(--sidebar-transition-duration, 200ms)" : "0ms",
|
|
4742
4956
|
animationDuration: "var(--sidebar-transition-duration, 200ms)",
|
|
4743
4957
|
transitionProperty: "left, right, width",
|
|
4744
4958
|
width: state === "collapsed" && collapsible === "icon" ? "var(--sidebar-width-icon)" : "var(--sidebar-width)",
|
|
@@ -4746,7 +4960,7 @@ var Sidebar = import_react62.default.forwardRef(
|
|
|
4746
4960
|
},
|
|
4747
4961
|
...props
|
|
4748
4962
|
},
|
|
4749
|
-
/* @__PURE__ */
|
|
4963
|
+
/* @__PURE__ */ import_react63.default.createElement(
|
|
4750
4964
|
"div",
|
|
4751
4965
|
{
|
|
4752
4966
|
"data-sidebar": "sidebar",
|
|
@@ -4760,13 +4974,13 @@ var Sidebar = import_react62.default.forwardRef(
|
|
|
4760
4974
|
children
|
|
4761
4975
|
)
|
|
4762
4976
|
)
|
|
4763
|
-
));
|
|
4977
|
+
)));
|
|
4764
4978
|
}
|
|
4765
4979
|
);
|
|
4766
4980
|
Sidebar.displayName = "Sidebar";
|
|
4767
|
-
var SidebarTrigger =
|
|
4981
|
+
var SidebarTrigger = import_react63.default.forwardRef(({ className, onClick, side, iconName = "dock-left", ...props }, ref) => {
|
|
4768
4982
|
const { toggleSidebar, side: contextSide } = useSidebar(side);
|
|
4769
|
-
return /* @__PURE__ */
|
|
4983
|
+
return /* @__PURE__ */ import_react63.default.createElement(
|
|
4770
4984
|
Button,
|
|
4771
4985
|
{
|
|
4772
4986
|
ref,
|
|
@@ -4791,8 +5005,8 @@ var SidebarTrigger = import_react62.default.forwardRef(({ className, onClick, si
|
|
|
4791
5005
|
);
|
|
4792
5006
|
});
|
|
4793
5007
|
SidebarTrigger.displayName = "SidebarTrigger";
|
|
4794
|
-
var SidebarInset =
|
|
4795
|
-
return /* @__PURE__ */
|
|
5008
|
+
var SidebarInset = import_react63.default.forwardRef(({ className, ...props }, ref) => {
|
|
5009
|
+
return /* @__PURE__ */ import_react63.default.createElement(
|
|
4796
5010
|
"main",
|
|
4797
5011
|
{
|
|
4798
5012
|
ref,
|
|
@@ -4805,10 +5019,10 @@ var SidebarInset = import_react62.default.forwardRef(({ className, ...props }, r
|
|
|
4805
5019
|
);
|
|
4806
5020
|
});
|
|
4807
5021
|
SidebarInset.displayName = "SidebarInset";
|
|
4808
|
-
var SidebarHeader =
|
|
5022
|
+
var SidebarHeader = import_react63.default.forwardRef(({ className, ...props }, ref) => {
|
|
4809
5023
|
const { state } = useSidebar();
|
|
4810
5024
|
const isCollapsed = state === "collapsed";
|
|
4811
|
-
return /* @__PURE__ */
|
|
5025
|
+
return /* @__PURE__ */ import_react63.default.createElement(
|
|
4812
5026
|
"div",
|
|
4813
5027
|
{
|
|
4814
5028
|
ref,
|
|
@@ -4823,8 +5037,8 @@ var SidebarHeader = import_react62.default.forwardRef(({ className, ...props },
|
|
|
4823
5037
|
);
|
|
4824
5038
|
});
|
|
4825
5039
|
SidebarHeader.displayName = "SidebarHeader";
|
|
4826
|
-
var SidebarFooter =
|
|
4827
|
-
return /* @__PURE__ */
|
|
5040
|
+
var SidebarFooter = import_react63.default.forwardRef(({ className, ...props }, ref) => {
|
|
5041
|
+
return /* @__PURE__ */ import_react63.default.createElement(
|
|
4828
5042
|
"div",
|
|
4829
5043
|
{
|
|
4830
5044
|
ref,
|
|
@@ -4838,8 +5052,8 @@ var SidebarFooter = import_react62.default.forwardRef(({ className, ...props },
|
|
|
4838
5052
|
);
|
|
4839
5053
|
});
|
|
4840
5054
|
SidebarFooter.displayName = "SidebarFooter";
|
|
4841
|
-
var SidebarContent =
|
|
4842
|
-
return /* @__PURE__ */
|
|
5055
|
+
var SidebarContent = import_react63.default.forwardRef(({ className, ...props }, ref) => {
|
|
5056
|
+
return /* @__PURE__ */ import_react63.default.createElement(
|
|
4843
5057
|
"div",
|
|
4844
5058
|
{
|
|
4845
5059
|
ref,
|
|
@@ -4854,7 +5068,7 @@ var SidebarContent = import_react62.default.forwardRef(({ className, ...props },
|
|
|
4854
5068
|
);
|
|
4855
5069
|
});
|
|
4856
5070
|
SidebarContent.displayName = "SidebarContent";
|
|
4857
|
-
var SidebarMenu =
|
|
5071
|
+
var SidebarMenu = import_react63.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ import_react63.default.createElement(
|
|
4858
5072
|
"ul",
|
|
4859
5073
|
{
|
|
4860
5074
|
ref,
|
|
@@ -4870,7 +5084,7 @@ var SidebarMenu = import_react62.default.forwardRef(({ className, ...props }, re
|
|
|
4870
5084
|
}
|
|
4871
5085
|
));
|
|
4872
5086
|
SidebarMenu.displayName = "SidebarMenu";
|
|
4873
|
-
var SidebarMenuItem =
|
|
5087
|
+
var SidebarMenuItem = import_react63.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ import_react63.default.createElement(
|
|
4874
5088
|
"li",
|
|
4875
5089
|
{
|
|
4876
5090
|
ref,
|
|
@@ -4881,11 +5095,11 @@ var SidebarMenuItem = import_react62.default.forwardRef(({ className, ...props }
|
|
|
4881
5095
|
}
|
|
4882
5096
|
));
|
|
4883
5097
|
SidebarMenuItem.displayName = "SidebarMenuItem";
|
|
4884
|
-
var SidebarMenuButton =
|
|
5098
|
+
var SidebarMenuButton = import_react63.default.forwardRef(
|
|
4885
5099
|
({ asChild = false, isActive = false, tooltip, className, ...props }, ref) => {
|
|
4886
5100
|
const Comp = asChild ? import_react_slot3.Slot : "button";
|
|
4887
5101
|
const { isMobile, state, side } = useSidebar();
|
|
4888
|
-
const button = /* @__PURE__ */
|
|
5102
|
+
const button = /* @__PURE__ */ import_react63.default.createElement(
|
|
4889
5103
|
Comp,
|
|
4890
5104
|
{
|
|
4891
5105
|
ref,
|
|
@@ -4911,7 +5125,7 @@ var SidebarMenuButton = import_react62.default.forwardRef(
|
|
|
4911
5125
|
children: tooltip
|
|
4912
5126
|
};
|
|
4913
5127
|
}
|
|
4914
|
-
return /* @__PURE__ */
|
|
5128
|
+
return /* @__PURE__ */ import_react63.default.createElement(Tooltip, null, /* @__PURE__ */ import_react63.default.createElement(TooltipTrigger, { asChild: true }, button), /* @__PURE__ */ import_react63.default.createElement(
|
|
4915
5129
|
TooltipContent,
|
|
4916
5130
|
{
|
|
4917
5131
|
side: side === "right" ? "left" : "right",
|
|
@@ -4923,8 +5137,8 @@ var SidebarMenuButton = import_react62.default.forwardRef(
|
|
|
4923
5137
|
}
|
|
4924
5138
|
);
|
|
4925
5139
|
SidebarMenuButton.displayName = "SidebarMenuButton";
|
|
4926
|
-
var SidebarGroup =
|
|
4927
|
-
return /* @__PURE__ */
|
|
5140
|
+
var SidebarGroup = import_react63.default.forwardRef(({ className, ...props }, ref) => {
|
|
5141
|
+
return /* @__PURE__ */ import_react63.default.createElement(
|
|
4928
5142
|
"div",
|
|
4929
5143
|
{
|
|
4930
5144
|
ref,
|
|
@@ -4938,8 +5152,8 @@ var SidebarGroup = import_react62.default.forwardRef(({ className, ...props }, r
|
|
|
4938
5152
|
);
|
|
4939
5153
|
});
|
|
4940
5154
|
SidebarGroup.displayName = "SidebarGroup";
|
|
4941
|
-
var SidebarGroupLabel =
|
|
4942
|
-
return /* @__PURE__ */
|
|
5155
|
+
var SidebarGroupLabel = import_react63.default.forwardRef(({ className, ...props }, ref) => {
|
|
5156
|
+
return /* @__PURE__ */ import_react63.default.createElement(
|
|
4943
5157
|
"div",
|
|
4944
5158
|
{
|
|
4945
5159
|
ref,
|
|
@@ -4953,7 +5167,7 @@ var SidebarGroupLabel = import_react62.default.forwardRef(({ className, ...props
|
|
|
4953
5167
|
);
|
|
4954
5168
|
});
|
|
4955
5169
|
SidebarGroupLabel.displayName = "SidebarGroupLabel";
|
|
4956
|
-
var SidebarMenuSub =
|
|
5170
|
+
var SidebarMenuSub = import_react63.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ import_react63.default.createElement(
|
|
4957
5171
|
"ul",
|
|
4958
5172
|
{
|
|
4959
5173
|
ref,
|
|
@@ -4969,11 +5183,11 @@ var SidebarMenuSub = import_react62.default.forwardRef(({ className, ...props },
|
|
|
4969
5183
|
}
|
|
4970
5184
|
));
|
|
4971
5185
|
SidebarMenuSub.displayName = "SidebarMenuSub";
|
|
4972
|
-
var SidebarMenuSubItem =
|
|
5186
|
+
var SidebarMenuSubItem = import_react63.default.forwardRef(({ ...props }, ref) => /* @__PURE__ */ import_react63.default.createElement("li", { ref, ...props }));
|
|
4973
5187
|
SidebarMenuSubItem.displayName = "SidebarMenuSubItem";
|
|
4974
|
-
var SidebarMenuSubButton =
|
|
5188
|
+
var SidebarMenuSubButton = import_react63.default.forwardRef(({ asChild = false, isActive, className, ...props }, ref) => {
|
|
4975
5189
|
const Comp = asChild ? import_react_slot3.Slot : "a";
|
|
4976
|
-
return /* @__PURE__ */
|
|
5190
|
+
return /* @__PURE__ */ import_react63.default.createElement(
|
|
4977
5191
|
Comp,
|
|
4978
5192
|
{
|
|
4979
5193
|
ref,
|
|
@@ -4992,9 +5206,9 @@ var SidebarMenuSubButton = import_react62.default.forwardRef(({ asChild = false,
|
|
|
4992
5206
|
);
|
|
4993
5207
|
});
|
|
4994
5208
|
SidebarMenuSubButton.displayName = "SidebarMenuSubButton";
|
|
4995
|
-
var SidebarMenuAction =
|
|
5209
|
+
var SidebarMenuAction = import_react63.default.forwardRef(({ className, asChild = false, ...props }, ref) => {
|
|
4996
5210
|
const Comp = asChild ? import_react_slot3.Slot : "button";
|
|
4997
|
-
return /* @__PURE__ */
|
|
5211
|
+
return /* @__PURE__ */ import_react63.default.createElement(
|
|
4998
5212
|
Comp,
|
|
4999
5213
|
{
|
|
5000
5214
|
ref,
|
|
@@ -5012,25 +5226,30 @@ var SidebarMenuAction = import_react62.default.forwardRef(({ className, asChild
|
|
|
5012
5226
|
);
|
|
5013
5227
|
});
|
|
5014
5228
|
SidebarMenuAction.displayName = "SidebarMenuAction";
|
|
5015
|
-
var SidebarRail =
|
|
5229
|
+
var SidebarRail = import_react63.default.forwardRef(({ className, ...props }, ref) => {
|
|
5016
5230
|
const { open, toggleSidebar, side } = useSidebar();
|
|
5231
|
+
const resize = import_react63.default.useContext(SidebarResizeContext);
|
|
5232
|
+
const descriptionId = (0, import_react_id.useId)();
|
|
5017
5233
|
const shortcutLabel = side === "left" ? SIDEBAR_KEYBOARD_SHORTCUT_LEFT : SIDEBAR_KEYBOARD_SHORTCUT_RIGHT;
|
|
5018
5234
|
const caretIcon = open ? side === "right" ? "caret-sm-right" : "caret-sm-left" : side === "right" ? "caret-sm-left" : "caret-sm-right";
|
|
5019
|
-
return /* @__PURE__ */
|
|
5235
|
+
return /* @__PURE__ */ import_react63.default.createElement(import_react63.default.Fragment, null, /* @__PURE__ */ import_react63.default.createElement(
|
|
5020
5236
|
"button",
|
|
5021
5237
|
{
|
|
5022
5238
|
ref,
|
|
5023
5239
|
"data-sidebar": "rail",
|
|
5024
|
-
"
|
|
5025
|
-
|
|
5240
|
+
"data-resizable": resize?.enabled || void 0,
|
|
5241
|
+
"aria-label": resize?.enabled ? `Resize or toggle ${side} sidebar` : "Toggle Sidebar",
|
|
5242
|
+
"aria-describedby": resize?.enabled ? descriptionId : void 0,
|
|
5243
|
+
tabIndex: resize?.enabled ? 0 : -1,
|
|
5244
|
+
...resize?.enabled ? resize.railProps : {},
|
|
5026
5245
|
onClick: toggleSidebar,
|
|
5027
|
-
title: `Toggle Sidebar ${shortcutLabel}`,
|
|
5246
|
+
title: resize?.enabled ? `Drag to resize; click to toggle (${shortcutLabel})` : `Toggle Sidebar ${shortcutLabel}`,
|
|
5028
5247
|
className: (0, import_classnames34.default)(
|
|
5029
5248
|
Sidebar_module_default.rail,
|
|
5030
5249
|
"hover-show-child background-color-transparent display-flex p-top-5xl p-left-xl p-right-0 justify-content-center position-absolute",
|
|
5031
5250
|
{
|
|
5032
|
-
"cursor-w-resize": open && side === "left" || !open && side === "right",
|
|
5033
|
-
"cursor-e-resize": !open && side === "left" || open && side === "right"
|
|
5251
|
+
"cursor-w-resize": !resize?.enabled && (open && side === "left" || !open && side === "right"),
|
|
5252
|
+
"cursor-e-resize": !resize?.enabled && (!open && side === "left" || open && side === "right")
|
|
5034
5253
|
},
|
|
5035
5254
|
className
|
|
5036
5255
|
),
|
|
@@ -5039,12 +5258,13 @@ var SidebarRail = import_react62.default.forwardRef(({ className, ...props }, re
|
|
|
5039
5258
|
bottom: "20px",
|
|
5040
5259
|
right: side === "left" ? "-14px" : void 0,
|
|
5041
5260
|
left: side === "right" ? "-18px" : void 0,
|
|
5042
|
-
width: "10px"
|
|
5261
|
+
width: "10px",
|
|
5262
|
+
...resize?.enabled ? { cursor: "col-resize", touchAction: "none" } : {}
|
|
5043
5263
|
},
|
|
5044
5264
|
type: "button",
|
|
5045
5265
|
...props
|
|
5046
5266
|
},
|
|
5047
|
-
/* @__PURE__ */
|
|
5267
|
+
/* @__PURE__ */ import_react63.default.createElement(
|
|
5048
5268
|
Box,
|
|
5049
5269
|
{
|
|
5050
5270
|
radius: "xl",
|
|
@@ -5061,18 +5281,18 @@ var SidebarRail = import_react62.default.forwardRef(({ className, ...props }, re
|
|
|
5061
5281
|
className: (0, import_classnames34.default)(
|
|
5062
5282
|
"hover-child",
|
|
5063
5283
|
{
|
|
5064
|
-
"cursor-w-resize": open && side === "left" || !open && side === "right",
|
|
5065
|
-
"cursor-e-resize": !open && side === "left" || open && side === "right"
|
|
5284
|
+
"cursor-w-resize": !resize?.enabled && (open && side === "left" || !open && side === "right"),
|
|
5285
|
+
"cursor-e-resize": !resize?.enabled && (!open && side === "left" || open && side === "right")
|
|
5066
5286
|
},
|
|
5067
5287
|
className
|
|
5068
5288
|
)
|
|
5069
5289
|
},
|
|
5070
|
-
/* @__PURE__ */
|
|
5290
|
+
/* @__PURE__ */ import_react63.default.createElement(Icon, { name: caretIcon })
|
|
5071
5291
|
)
|
|
5072
|
-
);
|
|
5292
|
+
), resize?.enabled && /* @__PURE__ */ import_react63.default.createElement("span", { id: descriptionId, className: Sidebar_module_default.resizeDescription }, "Width ", Math.round(resize.width), " pixels. Use left and right arrows to resize, Home for minimum, End for maximum, and Enter or Space to toggle."));
|
|
5073
5293
|
});
|
|
5074
5294
|
SidebarRail.displayName = "SidebarRail";
|
|
5075
|
-
var SidebarMenuBadge =
|
|
5295
|
+
var SidebarMenuBadge = import_react63.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ import_react63.default.createElement(
|
|
5076
5296
|
"div",
|
|
5077
5297
|
{
|
|
5078
5298
|
ref,
|
|
@@ -5091,28 +5311,28 @@ var SidebarMenuBadge = import_react62.default.forwardRef(({ className, ...props
|
|
|
5091
5311
|
SidebarMenuBadge.displayName = "SidebarMenuBadge";
|
|
5092
5312
|
|
|
5093
5313
|
// src/components/Table/Table.tsx
|
|
5094
|
-
var
|
|
5314
|
+
var import_react69 = __toESM(require("react"));
|
|
5095
5315
|
var import_classnames40 = __toESM(require("classnames"));
|
|
5096
5316
|
|
|
5097
5317
|
// src/components/Table/Table.module.scss
|
|
5098
5318
|
var Table_module_default = { "container": "container__zReWp", "loading-mask": "loading-mask__gwG6j", "scroll-container": "scroll-container__79zJk", "table": "table__ojslm", "auto": "auto__bXEGP", "fixed": "fixed__zPdl3", "borderless": "borderless__AlDGM", "scrollable": "scrollable__HSxT1", "scrollable-x": "scrollable-x__aKmx8", "scrollable-y": "scrollable-y__8nNit", "table-bordered": "table-bordered__oTd6P", "full-height": "full-height__YPJfE" };
|
|
5099
5319
|
|
|
5100
5320
|
// src/components/Table/TableBody/TableBody.tsx
|
|
5101
|
-
var
|
|
5321
|
+
var import_react67 = __toESM(require("react"));
|
|
5102
5322
|
var import_classnames38 = __toESM(require("classnames"));
|
|
5103
5323
|
|
|
5104
5324
|
// src/components/Table/TableBody/TableBody.module.scss
|
|
5105
5325
|
var TableBody_module_default = { "table-body": "table-body__cX0OQ", "striped": "striped__1Epqn", "hover": "hover__I3QF4" };
|
|
5106
5326
|
|
|
5107
5327
|
// src/components/Table/common/TableRow/TableRow.tsx
|
|
5108
|
-
var
|
|
5328
|
+
var import_react66 = __toESM(require("react"));
|
|
5109
5329
|
var import_classnames37 = __toESM(require("classnames"));
|
|
5110
5330
|
|
|
5111
5331
|
// src/components/Table/common/TableRow/TableRow.module.scss
|
|
5112
5332
|
var TableRow_module_default = { "table-row": "table-row__BdHbx", "hoverable": "hoverable__Bdemq" };
|
|
5113
5333
|
|
|
5114
5334
|
// src/components/Table/TableBody/TableBodyCell/TableBodyCell.tsx
|
|
5115
|
-
var
|
|
5335
|
+
var import_react64 = __toESM(require("react"));
|
|
5116
5336
|
var import_classnames35 = __toESM(require("classnames"));
|
|
5117
5337
|
|
|
5118
5338
|
// src/components/Table/TableBody/TableBodyCell/TableBodyCell.module.scss
|
|
@@ -5145,7 +5365,7 @@ var TableBodyCell = ({
|
|
|
5145
5365
|
},
|
|
5146
5366
|
className
|
|
5147
5367
|
);
|
|
5148
|
-
return /* @__PURE__ */
|
|
5368
|
+
return /* @__PURE__ */ import_react64.default.createElement(
|
|
5149
5369
|
Box,
|
|
5150
5370
|
{
|
|
5151
5371
|
as: columnIsSticky ? "th" : "td",
|
|
@@ -5163,7 +5383,7 @@ var TableBodyCell = ({
|
|
|
5163
5383
|
var TableBodyCell_default = TableBodyCell;
|
|
5164
5384
|
|
|
5165
5385
|
// src/components/Table/TableHead/TableHeaderCell/TableHeaderCell.tsx
|
|
5166
|
-
var
|
|
5386
|
+
var import_react65 = __toESM(require("react"));
|
|
5167
5387
|
var import_classnames36 = __toESM(require("classnames"));
|
|
5168
5388
|
|
|
5169
5389
|
// src/components/Table/TableHead/TableHeaderCell/TableHeaderCell.module.scss
|
|
@@ -5190,7 +5410,7 @@ var TableHeaderCell = ({
|
|
|
5190
5410
|
const renderIcon = () => {
|
|
5191
5411
|
const renderArrows = () => {
|
|
5192
5412
|
if (getSortDirection() === "ascending") {
|
|
5193
|
-
return /* @__PURE__ */
|
|
5413
|
+
return /* @__PURE__ */ import_react65.default.createElement(
|
|
5194
5414
|
Icon,
|
|
5195
5415
|
{
|
|
5196
5416
|
name: "caret-sm-up",
|
|
@@ -5199,7 +5419,7 @@ var TableHeaderCell = ({
|
|
|
5199
5419
|
);
|
|
5200
5420
|
}
|
|
5201
5421
|
if (getSortDirection() === "descending") {
|
|
5202
|
-
return /* @__PURE__ */
|
|
5422
|
+
return /* @__PURE__ */ import_react65.default.createElement(
|
|
5203
5423
|
Icon,
|
|
5204
5424
|
{
|
|
5205
5425
|
name: "caret-sm-down",
|
|
@@ -5207,7 +5427,7 @@ var TableHeaderCell = ({
|
|
|
5207
5427
|
}
|
|
5208
5428
|
);
|
|
5209
5429
|
}
|
|
5210
|
-
return /* @__PURE__ */
|
|
5430
|
+
return /* @__PURE__ */ import_react65.default.createElement(
|
|
5211
5431
|
Box,
|
|
5212
5432
|
{
|
|
5213
5433
|
display: "inline-block",
|
|
@@ -5218,7 +5438,7 @@ var TableHeaderCell = ({
|
|
|
5218
5438
|
}
|
|
5219
5439
|
);
|
|
5220
5440
|
};
|
|
5221
|
-
return /* @__PURE__ */
|
|
5441
|
+
return /* @__PURE__ */ import_react65.default.createElement("span", { className: TableHeaderCell_module_default["sort-icon"] }, renderArrows());
|
|
5222
5442
|
};
|
|
5223
5443
|
const handleKeyPress = (event) => {
|
|
5224
5444
|
if (!onSort || !isSortable) return;
|
|
@@ -5250,7 +5470,7 @@ var TableHeaderCell = ({
|
|
|
5250
5470
|
},
|
|
5251
5471
|
className
|
|
5252
5472
|
);
|
|
5253
|
-
return /* @__PURE__ */
|
|
5473
|
+
return /* @__PURE__ */ import_react65.default.createElement(
|
|
5254
5474
|
Box,
|
|
5255
5475
|
{
|
|
5256
5476
|
as: "th",
|
|
@@ -5263,7 +5483,7 @@ var TableHeaderCell = ({
|
|
|
5263
5483
|
onKeyDown: handleKeyPress,
|
|
5264
5484
|
scope: "col"
|
|
5265
5485
|
},
|
|
5266
|
-
/* @__PURE__ */
|
|
5486
|
+
/* @__PURE__ */ import_react65.default.createElement("div", { className: TableHeaderCell_module_default.heading }, column.heading, isSortable && renderIcon())
|
|
5267
5487
|
);
|
|
5268
5488
|
};
|
|
5269
5489
|
|
|
@@ -5296,7 +5516,7 @@ var TableRow = ({
|
|
|
5296
5516
|
return true;
|
|
5297
5517
|
}
|
|
5298
5518
|
if (Array.isArray(value)) return value.every(isRenderableCell);
|
|
5299
|
-
return
|
|
5519
|
+
return import_react66.default.isValidElement(value);
|
|
5300
5520
|
};
|
|
5301
5521
|
const renderCellContent = (column) => {
|
|
5302
5522
|
if (column.render) {
|
|
@@ -5316,8 +5536,8 @@ var TableRow = ({
|
|
|
5316
5536
|
}
|
|
5317
5537
|
return void 0;
|
|
5318
5538
|
};
|
|
5319
|
-
return /* @__PURE__ */
|
|
5320
|
-
(column, columnIndex) => isTableHead ? /* @__PURE__ */
|
|
5539
|
+
return /* @__PURE__ */ import_react66.default.createElement("tr", { className: tableRowClasses }, Object.values(columns).map(
|
|
5540
|
+
(column, columnIndex) => isTableHead ? /* @__PURE__ */ import_react66.default.createElement(
|
|
5321
5541
|
TableHeaderCell,
|
|
5322
5542
|
{
|
|
5323
5543
|
column,
|
|
@@ -5335,7 +5555,7 @@ var TableRow = ({
|
|
|
5335
5555
|
hasStickyHeader,
|
|
5336
5556
|
sticky: column.sticky
|
|
5337
5557
|
}
|
|
5338
|
-
) : /* @__PURE__ */
|
|
5558
|
+
) : /* @__PURE__ */ import_react66.default.createElement(
|
|
5339
5559
|
TableBodyCell_default,
|
|
5340
5560
|
{
|
|
5341
5561
|
align: column.align || align,
|
|
@@ -5382,7 +5602,7 @@ var TableBody = ({
|
|
|
5382
5602
|
}
|
|
5383
5603
|
return `row-index-${rowIndex}`;
|
|
5384
5604
|
};
|
|
5385
|
-
return /* @__PURE__ */
|
|
5605
|
+
return /* @__PURE__ */ import_react67.default.createElement("tbody", { className: tableBodyClasses }, rows.map((row, rowIndex) => /* @__PURE__ */ import_react67.default.createElement(
|
|
5386
5606
|
TableRow,
|
|
5387
5607
|
{
|
|
5388
5608
|
columns,
|
|
@@ -5399,7 +5619,7 @@ var TableBody = ({
|
|
|
5399
5619
|
};
|
|
5400
5620
|
|
|
5401
5621
|
// src/components/Table/TableHead/TableHead.tsx
|
|
5402
|
-
var
|
|
5622
|
+
var import_react68 = __toESM(require("react"));
|
|
5403
5623
|
var import_classnames39 = __toESM(require("classnames"));
|
|
5404
5624
|
var TableHead = ({
|
|
5405
5625
|
columns,
|
|
@@ -5413,7 +5633,7 @@ var TableHead = ({
|
|
|
5413
5633
|
truncateOverflow = false
|
|
5414
5634
|
}) => {
|
|
5415
5635
|
const tableHeadClasses = (0, import_classnames39.default)(className);
|
|
5416
|
-
return /* @__PURE__ */
|
|
5636
|
+
return /* @__PURE__ */ import_react68.default.createElement("thead", { className: tableHeadClasses }, /* @__PURE__ */ import_react68.default.createElement(
|
|
5417
5637
|
TableRow,
|
|
5418
5638
|
{
|
|
5419
5639
|
columns,
|
|
@@ -5467,13 +5687,13 @@ var Table = ({
|
|
|
5467
5687
|
[Table_module_default.borderless]: isBorderless,
|
|
5468
5688
|
[Table_module_default.compact]: isCompact
|
|
5469
5689
|
});
|
|
5470
|
-
return /* @__PURE__ */
|
|
5690
|
+
return /* @__PURE__ */ import_react69.default.createElement("div", { className: containerClasses }, isLoading && /* @__PURE__ */ import_react69.default.createElement("div", { className: Table_module_default["loading-mask"] }, /* @__PURE__ */ import_react69.default.createElement(Spinner, { size: "xl" })), /* @__PURE__ */ import_react69.default.createElement(
|
|
5471
5691
|
"div",
|
|
5472
5692
|
{
|
|
5473
5693
|
className: scrollContainerClasses,
|
|
5474
5694
|
"data-testid": "tableContainerDiv-testid"
|
|
5475
5695
|
},
|
|
5476
|
-
/* @__PURE__ */
|
|
5696
|
+
/* @__PURE__ */ import_react69.default.createElement("table", { className: tableClasses }, /* @__PURE__ */ import_react69.default.createElement(
|
|
5477
5697
|
TableHead,
|
|
5478
5698
|
{
|
|
5479
5699
|
columns,
|
|
@@ -5485,7 +5705,7 @@ var Table = ({
|
|
|
5485
5705
|
truncateOverflow,
|
|
5486
5706
|
hasStickyHeader
|
|
5487
5707
|
}
|
|
5488
|
-
), /* @__PURE__ */
|
|
5708
|
+
), /* @__PURE__ */ import_react69.default.createElement(
|
|
5489
5709
|
TableBody,
|
|
5490
5710
|
{
|
|
5491
5711
|
rows,
|
|
@@ -5504,22 +5724,22 @@ var Table = ({
|
|
|
5504
5724
|
};
|
|
5505
5725
|
|
|
5506
5726
|
// src/components/ThemeProvider/ThemeProvider.tsx
|
|
5507
|
-
var
|
|
5727
|
+
var import_react70 = __toESM(require("react"));
|
|
5508
5728
|
var initialState = {
|
|
5509
5729
|
theme: "system",
|
|
5510
5730
|
setTheme: () => null
|
|
5511
5731
|
};
|
|
5512
|
-
var ThemeProviderContext = (0,
|
|
5732
|
+
var ThemeProviderContext = (0, import_react70.createContext)(initialState);
|
|
5513
5733
|
function ThemeProvider({
|
|
5514
5734
|
children,
|
|
5515
5735
|
defaultTheme = "system",
|
|
5516
5736
|
storageKey = "hyphen-ui-theme",
|
|
5517
5737
|
...props
|
|
5518
5738
|
}) {
|
|
5519
|
-
const [theme, setTheme] = (0,
|
|
5739
|
+
const [theme, setTheme] = (0, import_react70.useState)(
|
|
5520
5740
|
() => localStorage.getItem(storageKey) || defaultTheme
|
|
5521
5741
|
);
|
|
5522
|
-
(0,
|
|
5742
|
+
(0, import_react70.useEffect)(() => {
|
|
5523
5743
|
const root = window.document.documentElement;
|
|
5524
5744
|
root.classList.remove("light", "dark");
|
|
5525
5745
|
if (theme === "system") {
|
|
@@ -5538,14 +5758,14 @@ function ThemeProvider({
|
|
|
5538
5758
|
},
|
|
5539
5759
|
isDarkMode
|
|
5540
5760
|
};
|
|
5541
|
-
return /* @__PURE__ */
|
|
5761
|
+
return /* @__PURE__ */ import_react70.default.createElement(ThemeProviderContext.Provider, { ...props, value }, children);
|
|
5542
5762
|
}
|
|
5543
5763
|
|
|
5544
5764
|
// src/components/Toast/ToastContainer.tsx
|
|
5545
|
-
var
|
|
5765
|
+
var import_react74 = __toESM(require("react"));
|
|
5546
5766
|
|
|
5547
5767
|
// src/components/Toast/ToastNotification.tsx
|
|
5548
|
-
var
|
|
5768
|
+
var import_react71 = __toESM(require("react"));
|
|
5549
5769
|
var import_classnames41 = __toESM(require("classnames"));
|
|
5550
5770
|
|
|
5551
5771
|
// src/components/Toast/ToastNotification.module.scss
|
|
@@ -5578,12 +5798,12 @@ var renderToastIcon = (toast2) => {
|
|
|
5578
5798
|
iconName = "c-warning";
|
|
5579
5799
|
iconColor = "white";
|
|
5580
5800
|
}
|
|
5581
|
-
const icon = type !== "loading" ? /* @__PURE__ */
|
|
5582
|
-
return /* @__PURE__ */
|
|
5801
|
+
const icon = type !== "loading" ? /* @__PURE__ */ import_react71.default.createElement(Icon, { name: iconName, color: iconColor }) : /* @__PURE__ */ import_react71.default.createElement(Spinner, null);
|
|
5802
|
+
return /* @__PURE__ */ import_react71.default.createElement(Box, { justifyContent: "center", height: "100" }, icon);
|
|
5583
5803
|
};
|
|
5584
5804
|
var renderDismissIcon = (toast2, onDismiss) => {
|
|
5585
5805
|
if (!toast2.canDismiss) return;
|
|
5586
|
-
return /* @__PURE__ */
|
|
5806
|
+
return /* @__PURE__ */ import_react71.default.createElement(
|
|
5587
5807
|
Box,
|
|
5588
5808
|
{
|
|
5589
5809
|
as: "button",
|
|
@@ -5598,12 +5818,12 @@ var renderDismissIcon = (toast2, onDismiss) => {
|
|
|
5598
5818
|
onClick: onDismiss,
|
|
5599
5819
|
"aria-label": "dismiss notification"
|
|
5600
5820
|
},
|
|
5601
|
-
/* @__PURE__ */
|
|
5821
|
+
/* @__PURE__ */ import_react71.default.createElement(Icon, { name: "remove" })
|
|
5602
5822
|
);
|
|
5603
5823
|
};
|
|
5604
|
-
var ToastNotification =
|
|
5824
|
+
var ToastNotification = import_react71.default.memo(
|
|
5605
5825
|
({ toast: toast2, position = "top-center", style, children, onDismiss }) => {
|
|
5606
|
-
const message = /* @__PURE__ */
|
|
5826
|
+
const message = /* @__PURE__ */ import_react71.default.createElement(
|
|
5607
5827
|
Box,
|
|
5608
5828
|
{
|
|
5609
5829
|
direction: "row",
|
|
@@ -5625,7 +5845,7 @@ var ToastNotification = import_react70.default.memo(
|
|
|
5625
5845
|
[ToastNotification_module_default["toast-error"]]: toast2.type === "error"
|
|
5626
5846
|
}
|
|
5627
5847
|
);
|
|
5628
|
-
return /* @__PURE__ */
|
|
5848
|
+
return /* @__PURE__ */ import_react71.default.createElement(
|
|
5629
5849
|
Box,
|
|
5630
5850
|
{
|
|
5631
5851
|
alignItems: "center",
|
|
@@ -5642,16 +5862,16 @@ var ToastNotification = import_react70.default.memo(
|
|
|
5642
5862
|
},
|
|
5643
5863
|
typeof children === "function" ? children({
|
|
5644
5864
|
message
|
|
5645
|
-
}) : /* @__PURE__ */
|
|
5865
|
+
}) : /* @__PURE__ */ import_react71.default.createElement(import_react71.default.Fragment, null, renderToastIcon(toast2), message, renderDismissIcon(toast2, onDismiss))
|
|
5646
5866
|
);
|
|
5647
5867
|
}
|
|
5648
5868
|
);
|
|
5649
5869
|
|
|
5650
5870
|
// src/components/Toast/useToasts.ts
|
|
5651
|
-
var
|
|
5871
|
+
var import_react73 = require("react");
|
|
5652
5872
|
|
|
5653
5873
|
// src/components/Toast/Toast.store.ts
|
|
5654
|
-
var
|
|
5874
|
+
var import_react72 = require("react");
|
|
5655
5875
|
var TOAST_LIMIT = 20;
|
|
5656
5876
|
var toastTimeouts = /* @__PURE__ */ new Map();
|
|
5657
5877
|
var addToDismissedQueue = (toastId) => {
|
|
@@ -5787,8 +6007,8 @@ var defaultTimeouts = {
|
|
|
5787
6007
|
custom: 4e3
|
|
5788
6008
|
};
|
|
5789
6009
|
var useToastStore = (toastOptions = {}) => {
|
|
5790
|
-
const [state, setState] = (0,
|
|
5791
|
-
(0,
|
|
6010
|
+
const [state, setState] = (0, import_react72.useState)(memoryState);
|
|
6011
|
+
(0, import_react72.useEffect)(() => {
|
|
5792
6012
|
listeners.push(setState);
|
|
5793
6013
|
return () => {
|
|
5794
6014
|
const index = listeners.indexOf(setState);
|
|
@@ -5875,7 +6095,7 @@ toast.async = function(promise, messages, opts) {
|
|
|
5875
6095
|
// src/components/Toast/useToasts.ts
|
|
5876
6096
|
var useToasts = (toastOptions) => {
|
|
5877
6097
|
const { toasts, pausedAt } = useToastStore(toastOptions);
|
|
5878
|
-
(0,
|
|
6098
|
+
(0, import_react73.useEffect)(() => {
|
|
5879
6099
|
if (pausedAt) {
|
|
5880
6100
|
return;
|
|
5881
6101
|
}
|
|
@@ -5897,7 +6117,7 @@ var useToasts = (toastOptions) => {
|
|
|
5897
6117
|
timeouts.forEach((timeout) => timeout && clearTimeout(timeout));
|
|
5898
6118
|
};
|
|
5899
6119
|
}, [toasts, pausedAt]);
|
|
5900
|
-
const handlers = (0,
|
|
6120
|
+
const handlers = (0, import_react73.useMemo)(
|
|
5901
6121
|
() => ({
|
|
5902
6122
|
startPause: () => {
|
|
5903
6123
|
dispatch({
|
|
@@ -5979,7 +6199,7 @@ var renderNotification = (currentToast, children, containerPosition) => {
|
|
|
5979
6199
|
if (children) {
|
|
5980
6200
|
return children(currentToast);
|
|
5981
6201
|
}
|
|
5982
|
-
return /* @__PURE__ */
|
|
6202
|
+
return /* @__PURE__ */ import_react74.default.createElement(
|
|
5983
6203
|
ToastNotification,
|
|
5984
6204
|
{
|
|
5985
6205
|
toast: currentToast,
|
|
@@ -5999,7 +6219,7 @@ var ToastContainer = ({
|
|
|
5999
6219
|
...restProps
|
|
6000
6220
|
}) => {
|
|
6001
6221
|
const { toasts, handlers } = useToasts(toastOptions);
|
|
6002
|
-
return /* @__PURE__ */
|
|
6222
|
+
return /* @__PURE__ */ import_react74.default.createElement(
|
|
6003
6223
|
Box,
|
|
6004
6224
|
{
|
|
6005
6225
|
style: {
|
|
@@ -6029,7 +6249,7 @@ var ToastContainer = ({
|
|
|
6029
6249
|
const ref = t.height ? void 0 : createRectRef((rect) => {
|
|
6030
6250
|
handlers.updateHeight(t.id, rect.height);
|
|
6031
6251
|
});
|
|
6032
|
-
return /* @__PURE__ */
|
|
6252
|
+
return /* @__PURE__ */ import_react74.default.createElement(
|
|
6033
6253
|
Box,
|
|
6034
6254
|
{
|
|
6035
6255
|
ref,
|
|
@@ -6047,7 +6267,7 @@ var ToastContainer = ({
|
|
|
6047
6267
|
};
|
|
6048
6268
|
|
|
6049
6269
|
// src/components/Toggle/Toggle.tsx
|
|
6050
|
-
var
|
|
6270
|
+
var import_react75 = __toESM(require("react"));
|
|
6051
6271
|
var TogglePrimitive = __toESM(require("@radix-ui/react-toggle"));
|
|
6052
6272
|
|
|
6053
6273
|
// src/components/Toggle/Toggle.module.scss
|
|
@@ -6055,7 +6275,7 @@ var Toggle_module_default = { "item": "item__PrPsJ", "outline": "outline__Lkabh"
|
|
|
6055
6275
|
|
|
6056
6276
|
// src/components/Toggle/Toggle.tsx
|
|
6057
6277
|
var import_classnames42 = __toESM(require("classnames"));
|
|
6058
|
-
var Toggle = (0,
|
|
6278
|
+
var Toggle = (0, import_react75.forwardRef)(({ className, variant = "default", children, ...props }, ref) => /* @__PURE__ */ import_react75.default.createElement(
|
|
6059
6279
|
TogglePrimitive.Root,
|
|
6060
6280
|
{
|
|
6061
6281
|
ref,
|
|
@@ -6072,12 +6292,12 @@ var Toggle = (0, import_react74.forwardRef)(({ className, variant = "default", c
|
|
|
6072
6292
|
Toggle.displayName = "Toggle";
|
|
6073
6293
|
|
|
6074
6294
|
// src/hooks/useBreakpoint/useBreakpoint.ts
|
|
6075
|
-
var
|
|
6295
|
+
var import_react77 = require("react");
|
|
6076
6296
|
|
|
6077
6297
|
// src/hooks/useWindowSize/useWindowSize.ts
|
|
6078
|
-
var
|
|
6298
|
+
var import_react76 = __toESM(require("react"));
|
|
6079
6299
|
var useWindowSize = () => {
|
|
6080
|
-
const { innerWidth, innerHeight, outerHeight, outerWidth, isCreated } =
|
|
6300
|
+
const { innerWidth, innerHeight, outerHeight, outerWidth, isCreated } = import_react76.default.useContext(ResponsiveContext);
|
|
6081
6301
|
if (isCreated) {
|
|
6082
6302
|
return {
|
|
6083
6303
|
innerHeight,
|
|
@@ -6093,7 +6313,7 @@ var useWindowSize = () => {
|
|
|
6093
6313
|
var defaultBreakpoint = { name: "base", minWidth: 0 };
|
|
6094
6314
|
var useBreakpoint = () => {
|
|
6095
6315
|
const windowSize = useWindowSize();
|
|
6096
|
-
const [breakpoint, setBreakpoint] = (0,
|
|
6316
|
+
const [breakpoint, setBreakpoint] = (0, import_react77.useState)({
|
|
6097
6317
|
...defaultBreakpoint
|
|
6098
6318
|
});
|
|
6099
6319
|
useIsomorphicLayoutEffect(() => {
|
|
@@ -6120,7 +6340,7 @@ var useBreakpoint = () => {
|
|
|
6120
6340
|
};
|
|
6121
6341
|
|
|
6122
6342
|
// src/hooks/useOpenClose/useOpenClose.tsx
|
|
6123
|
-
var
|
|
6343
|
+
var import_react78 = require("react");
|
|
6124
6344
|
var useOpenClose = (props = {}) => {
|
|
6125
6345
|
const {
|
|
6126
6346
|
defaultIsOpen,
|
|
@@ -6128,28 +6348,28 @@ var useOpenClose = (props = {}) => {
|
|
|
6128
6348
|
onClose: onCloseProp,
|
|
6129
6349
|
onOpen: onOpenProp
|
|
6130
6350
|
} = props;
|
|
6131
|
-
const openCallback = (0,
|
|
6351
|
+
const openCallback = (0, import_react78.useCallback)(() => {
|
|
6132
6352
|
onOpenProp?.();
|
|
6133
6353
|
}, [onOpenProp]);
|
|
6134
|
-
const closeCallback = (0,
|
|
6354
|
+
const closeCallback = (0, import_react78.useCallback)(() => {
|
|
6135
6355
|
onCloseProp?.();
|
|
6136
6356
|
}, [onCloseProp]);
|
|
6137
|
-
const [isOpenState, setIsOpen] = (0,
|
|
6357
|
+
const [isOpenState, setIsOpen] = (0, import_react78.useState)(defaultIsOpen || false);
|
|
6138
6358
|
const isOpen = isOpenProp !== void 0 ? isOpenProp : isOpenState;
|
|
6139
6359
|
const isControlled = isOpenProp !== void 0;
|
|
6140
|
-
const handleClose = (0,
|
|
6360
|
+
const handleClose = (0, import_react78.useCallback)(() => {
|
|
6141
6361
|
if (!isControlled) {
|
|
6142
6362
|
setIsOpen(false);
|
|
6143
6363
|
}
|
|
6144
6364
|
closeCallback?.();
|
|
6145
6365
|
}, [isControlled, closeCallback]);
|
|
6146
|
-
const handleOpen = (0,
|
|
6366
|
+
const handleOpen = (0, import_react78.useCallback)(() => {
|
|
6147
6367
|
if (!isControlled) {
|
|
6148
6368
|
setIsOpen(true);
|
|
6149
6369
|
}
|
|
6150
6370
|
openCallback?.();
|
|
6151
6371
|
}, [isControlled, openCallback]);
|
|
6152
|
-
const handleToggle = (0,
|
|
6372
|
+
const handleToggle = (0, import_react78.useCallback)(() => {
|
|
6153
6373
|
if (isOpen) {
|
|
6154
6374
|
handleClose();
|
|
6155
6375
|
} else {
|
|
@@ -6165,9 +6385,9 @@ var useOpenClose = (props = {}) => {
|
|
|
6165
6385
|
};
|
|
6166
6386
|
|
|
6167
6387
|
// src/hooks/useTheme/useTheme.ts
|
|
6168
|
-
var
|
|
6388
|
+
var import_react79 = __toESM(require("react"));
|
|
6169
6389
|
var useTheme = () => {
|
|
6170
|
-
const context =
|
|
6390
|
+
const context = import_react79.default.useContext(ThemeProviderContext);
|
|
6171
6391
|
if (context === void 0)
|
|
6172
6392
|
throw new Error(
|
|
6173
6393
|
"useTheme must be used within a ThemeProvider. Be sure your App is wrapped in ThemeProvider."
|