@exem-ui/react 0.3.4-next.20261015085356 → 0.3.4-next.20261022010408
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/{chunk-SHNVBKAJ.js → chunk-LDCNEHLQ.js} +1 -3
- package/dist/{chunk-L24IAWPF.mjs → chunk-RXQE5QHI.mjs} +1 -3
- package/dist/flat/index.js +8 -8
- package/dist/flat/index.mjs +1 -1
- package/dist/index.d.mts +115 -32
- package/dist/index.d.ts +115 -32
- package/dist/index.js +245 -270
- package/dist/index.mjs +202 -226
- package/package.json +3 -4
package/dist/index.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { overlayListVariants, commonInputVariants, textFieldVariants, ScrollArea, ConditionalTooltip } from './chunk-
|
|
2
|
-
export { ColorPalette, ColorPaletteColors, Combobox, ComboboxContent, ComboboxDescription, ComboboxEmpty, ComboboxInput, ComboboxItem, ComboboxLabel, ComboboxList, ComboboxSearch, ComboboxTrigger, ComboboxValue, DEFAULT_COLOR, ScrollArea, ScrollBar, Segment, Select, Tabs, Tooltip, colorPaletteColorClasses, getColorPaletteColor, isInPalette } from './chunk-
|
|
1
|
+
import { overlayListVariants, commonInputVariants, textFieldVariants, ScrollArea, ConditionalTooltip } from './chunk-RXQE5QHI.mjs';
|
|
2
|
+
export { ColorPalette, ColorPaletteColors, Combobox, ComboboxContent, ComboboxDescription, ComboboxEmpty, ComboboxInput, ComboboxItem, ComboboxLabel, ComboboxList, ComboboxSearch, ComboboxTrigger, ComboboxValue, DEFAULT_COLOR, ScrollArea, ScrollBar, Segment, Select, Tabs, Tooltip, colorPaletteColorClasses, getColorPaletteColor, isInPalette } from './chunk-RXQE5QHI.mjs';
|
|
3
3
|
import { X, MoreHorizontal, iconSizes, Minus, Check, Person, Loading, Warning, Info, Error as Error$1, ChevronLeft, ChevronRight } from './chunk-HCGCMPIB.mjs';
|
|
4
4
|
import { cva, cn } from '@exem-ui/core/utils';
|
|
5
5
|
import * as React from 'react';
|
|
@@ -13,7 +13,6 @@ import * as SwitchPrimitives from '@radix-ui/react-switch';
|
|
|
13
13
|
import { DayPicker } from 'react-day-picker';
|
|
14
14
|
import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
|
|
15
15
|
import { Dialog } from '@base-ui/react/dialog';
|
|
16
|
-
import * as DialogPrimitive2 from '@radix-ui/react-dialog';
|
|
17
16
|
import { Resizable } from 're-resizable';
|
|
18
17
|
import { Progress as Progress$1 } from '@base-ui/react/progress';
|
|
19
18
|
import { toast as toast$1, Toaster as Toaster$1 } from 'sonner';
|
|
@@ -466,6 +465,7 @@ var buttonVariants = cva(
|
|
|
466
465
|
},
|
|
467
466
|
variants: {
|
|
468
467
|
size: {
|
|
468
|
+
"2xsmall": "h-5 gap-0 px-1 text-caption font-medium",
|
|
469
469
|
xsmall: "h-6 gap-0 px-1 text-body-3 font-medium",
|
|
470
470
|
small: "h-7 gap-0.5 px-1.5 text-body-2 font-medium",
|
|
471
471
|
medium: "h-8 gap-0.5 px-2 text-body-2 font-medium",
|
|
@@ -476,6 +476,7 @@ var buttonVariants = cva(
|
|
|
476
476
|
}
|
|
477
477
|
);
|
|
478
478
|
var iconSizeMap = {
|
|
479
|
+
"2xsmall": iconSizes.xs,
|
|
479
480
|
xsmall: iconSizes.sm,
|
|
480
481
|
small: iconSizes.sm,
|
|
481
482
|
medium: iconSizes.sm,
|
|
@@ -519,6 +520,7 @@ function Button({
|
|
|
519
520
|
);
|
|
520
521
|
}
|
|
521
522
|
var iconButtonSizeClasses = {
|
|
523
|
+
"2xsmall": "size-5",
|
|
522
524
|
xsmall: "size-6",
|
|
523
525
|
small: "size-7",
|
|
524
526
|
medium: "size-8",
|
|
@@ -1614,55 +1616,16 @@ var Modal = Object.assign(ModalRoot, {
|
|
|
1614
1616
|
Description: ModalDescription
|
|
1615
1617
|
});
|
|
1616
1618
|
|
|
1617
|
-
// src/hooks/useOverlayDismissGuard.ts
|
|
1618
|
-
var isBaseUiPopupOpen = () => Boolean(
|
|
1619
|
-
document.querySelector('[data-base-ui-portal] [data-slot="combobox-content"][data-open]')
|
|
1620
|
-
);
|
|
1621
|
-
var isTargetInsideBaseUiPopup = (target) => target instanceof Element && Boolean(target.closest("[data-base-ui-portal]"));
|
|
1622
|
-
var shouldPreventDismissForSelect = (target) => {
|
|
1623
|
-
const isSelectOpen = Boolean(
|
|
1624
|
-
document.querySelector('[data-radix-select-content][data-state="open"]')
|
|
1625
|
-
);
|
|
1626
|
-
if (isSelectOpen) {
|
|
1627
|
-
return true;
|
|
1628
|
-
}
|
|
1629
|
-
if (!(target instanceof Element)) {
|
|
1630
|
-
return false;
|
|
1631
|
-
}
|
|
1632
|
-
return Boolean(
|
|
1633
|
-
target.closest("[data-radix-select-content]") || target.closest("[data-radix-select-viewport]")
|
|
1634
|
-
);
|
|
1635
|
-
};
|
|
1636
|
-
function useOverlayDismissGuard({
|
|
1637
|
-
onInteractOutside,
|
|
1638
|
-
onEscapeKeyDown
|
|
1639
|
-
}) {
|
|
1640
|
-
const handleInteractOutside = (event) => {
|
|
1641
|
-
if (shouldPreventDismissForSelect(event.target) || isTargetInsideBaseUiPopup(event.target)) {
|
|
1642
|
-
event.preventDefault();
|
|
1643
|
-
}
|
|
1644
|
-
onInteractOutside?.(event);
|
|
1645
|
-
};
|
|
1646
|
-
const handleEscapeKeyDown = (event) => {
|
|
1647
|
-
if (isBaseUiPopupOpen()) {
|
|
1648
|
-
event.preventDefault();
|
|
1649
|
-
}
|
|
1650
|
-
onEscapeKeyDown?.(event);
|
|
1651
|
-
};
|
|
1652
|
-
return { onEscapeKeyDown: handleEscapeKeyDown, onInteractOutside: handleInteractOutside };
|
|
1653
|
-
}
|
|
1654
|
-
|
|
1655
1619
|
// src/sheet/sheetResize.ts
|
|
1656
1620
|
var SHEET_EDGE_GAP = "[--sheet-edge-gap:40px]";
|
|
1657
|
-
var
|
|
1658
|
-
var
|
|
1659
|
-
var resolveMaxSize = (maxSize, axis) => {
|
|
1621
|
+
var SHEET_SIZE_DEFAULTS = { minSize: 400, maxSize: "80%", defaultSize: 800 };
|
|
1622
|
+
var resolveMaxSize = (maxSize) => {
|
|
1660
1623
|
if (typeof maxSize === "number") {
|
|
1661
1624
|
return maxSize;
|
|
1662
1625
|
}
|
|
1663
1626
|
const value = Number.parseFloat(maxSize);
|
|
1664
1627
|
if (maxSize.trim().endsWith("%") && Number.isFinite(value)) {
|
|
1665
|
-
return `${value}
|
|
1628
|
+
return `${value}vw`;
|
|
1666
1629
|
}
|
|
1667
1630
|
return maxSize;
|
|
1668
1631
|
};
|
|
@@ -1693,67 +1656,49 @@ var writeStoredSize = (key, size) => {
|
|
|
1693
1656
|
};
|
|
1694
1657
|
var ENABLE_BY_SIDE = {
|
|
1695
1658
|
right: { left: true },
|
|
1696
|
-
left: { right: true }
|
|
1697
|
-
top: { bottom: true },
|
|
1698
|
-
bottom: { top: true }
|
|
1659
|
+
left: { right: true }
|
|
1699
1660
|
};
|
|
1700
1661
|
var HANDLE_EDGE_BY_SIDE = {
|
|
1701
1662
|
right: "left",
|
|
1702
|
-
left: "right"
|
|
1703
|
-
top: "bottom",
|
|
1704
|
-
bottom: "top"
|
|
1663
|
+
left: "right"
|
|
1705
1664
|
};
|
|
1706
|
-
var SheetResizeHandle = ({
|
|
1707
|
-
"
|
|
1665
|
+
var SheetResizeHandle = ({ active }) => /* @__PURE__ */ jsx("div", { className: "group/sheet-handle flex h-full w-full cursor-col-resize items-center justify-center", children: /* @__PURE__ */ jsx(
|
|
1666
|
+
"span",
|
|
1708
1667
|
{
|
|
1709
1668
|
className: cn(
|
|
1710
|
-
"group/sheet-handle
|
|
1711
|
-
|
|
1712
|
-
|
|
1713
|
-
children: /* @__PURE__ */ jsx(
|
|
1714
|
-
"span",
|
|
1715
|
-
{
|
|
1716
|
-
className: cn(
|
|
1717
|
-
"transition-colors group-hover/sheet-handle:bg-border-accent",
|
|
1718
|
-
active ? "bg-border-accent" : "bg-border-primary",
|
|
1719
|
-
axis === "horizontal" ? "h-full w-px" : "h-px w-full"
|
|
1720
|
-
)
|
|
1721
|
-
}
|
|
1669
|
+
"transition-colors group-hover/sheet-handle:bg-border-accent",
|
|
1670
|
+
active ? "bg-border-accent" : "bg-border-primary",
|
|
1671
|
+
"h-full w-px"
|
|
1722
1672
|
)
|
|
1723
1673
|
}
|
|
1724
|
-
);
|
|
1674
|
+
) });
|
|
1725
1675
|
var SheetResizableBox = ({ side, options, children }) => {
|
|
1726
1676
|
const { minSize, maxSize, defaultSize, storageKey, onResize } = options;
|
|
1727
|
-
const
|
|
1728
|
-
const
|
|
1729
|
-
const defaults = getDefaults(axis);
|
|
1730
|
-
const resolvedMin = minSize ?? defaults.minSize;
|
|
1731
|
-
const resolvedMax = resolveMaxSize(maxSize ?? defaults.maxSize, axis);
|
|
1677
|
+
const resolvedMin = minSize ?? SHEET_SIZE_DEFAULTS.minSize;
|
|
1678
|
+
const resolvedMax = resolveMaxSize(maxSize ?? SHEET_SIZE_DEFAULTS.maxSize);
|
|
1732
1679
|
const [initialSize] = useState(() => {
|
|
1733
1680
|
const stored = storageKey ? readStoredSize(storageKey) : null;
|
|
1734
|
-
return Math.max(stored ?? defaultSize ??
|
|
1681
|
+
return Math.max(stored ?? defaultSize ?? SHEET_SIZE_DEFAULTS.defaultSize, resolvedMin);
|
|
1735
1682
|
});
|
|
1736
1683
|
const [resizing, setResizing] = useState(false);
|
|
1737
1684
|
const handleResizeStop = (_event, _direction, refElement) => {
|
|
1738
1685
|
setResizing(false);
|
|
1739
|
-
const next =
|
|
1686
|
+
const next = refElement.offsetWidth;
|
|
1740
1687
|
if (storageKey) {
|
|
1741
1688
|
writeStoredSize(storageKey, next);
|
|
1742
1689
|
}
|
|
1743
1690
|
onResize?.(next);
|
|
1744
1691
|
};
|
|
1745
1692
|
const handleComponent = {
|
|
1746
|
-
[HANDLE_EDGE_BY_SIDE[side]]: /* @__PURE__ */ jsx(SheetResizeHandle, {
|
|
1693
|
+
[HANDLE_EDGE_BY_SIDE[side]]: /* @__PURE__ */ jsx(SheetResizeHandle, { active: resizing })
|
|
1747
1694
|
};
|
|
1748
1695
|
return /* @__PURE__ */ jsx(
|
|
1749
1696
|
Resizable,
|
|
1750
1697
|
{
|
|
1751
1698
|
enable: ENABLE_BY_SIDE[side],
|
|
1752
|
-
defaultSize:
|
|
1753
|
-
minWidth:
|
|
1754
|
-
maxWidth:
|
|
1755
|
-
minHeight: isHorizontal ? void 0 : resolvedMin,
|
|
1756
|
-
maxHeight: isHorizontal ? void 0 : resolvedMax,
|
|
1699
|
+
defaultSize: { width: initialSize, height: "100%" },
|
|
1700
|
+
minWidth: resolvedMin,
|
|
1701
|
+
maxWidth: resolvedMax,
|
|
1757
1702
|
onResizeStart: () => setResizing(true),
|
|
1758
1703
|
onResizeStop: handleResizeStop,
|
|
1759
1704
|
handleComponent,
|
|
@@ -1762,135 +1707,132 @@ var SheetResizableBox = ({ side, options, children }) => {
|
|
|
1762
1707
|
}
|
|
1763
1708
|
);
|
|
1764
1709
|
};
|
|
1765
|
-
var
|
|
1710
|
+
var SHEET_TRANSITION = "transition-[transform,translate,opacity] duration-300 ease-out data-[ending-style]:duration-200";
|
|
1766
1711
|
var SHEET_CONTENT_BOX = "flex flex-col border-border-primary bg-background-primary shadow-strong";
|
|
1767
|
-
var
|
|
1768
|
-
right: "inset-y-0 right-0
|
|
1769
|
-
left: "inset-y-0 left-0
|
|
1770
|
-
top: "inset-x-0 top-0 w-full h-auto max-h-[calc(100vh-var(--sheet-edge-gap))] border-b data-[state=open]:slide-in-from-top data-[state=closed]:slide-out-to-top",
|
|
1771
|
-
bottom: "inset-x-0 bottom-0 w-full h-auto max-h-[calc(100vh-var(--sheet-edge-gap))] border-t data-[state=open]:slide-in-from-bottom data-[state=closed]:slide-out-to-bottom"
|
|
1712
|
+
var SHEET_ANCHOR = {
|
|
1713
|
+
right: "inset-y-0 right-0 max-w-[calc(100vw-var(--sheet-edge-gap))]",
|
|
1714
|
+
left: "inset-y-0 left-0 max-w-[calc(100vw-var(--sheet-edge-gap))]"
|
|
1772
1715
|
};
|
|
1773
|
-
var
|
|
1774
|
-
right: "
|
|
1775
|
-
left: "
|
|
1776
|
-
top: "inset-x-0 top-0 max-h-[calc(100vh-var(--sheet-edge-gap))] data-[state=open]:slide-in-from-top data-[state=closed]:slide-out-to-top",
|
|
1777
|
-
bottom: "inset-x-0 bottom-0 max-h-[calc(100vh-var(--sheet-edge-gap))] data-[state=open]:slide-in-from-bottom data-[state=closed]:slide-out-to-bottom"
|
|
1716
|
+
var SHEET_SLIDE = {
|
|
1717
|
+
right: "data-[starting-style]:translate-x-full data-[ending-style]:translate-x-full",
|
|
1718
|
+
left: "data-[starting-style]:-translate-x-full data-[ending-style]:-translate-x-full"
|
|
1778
1719
|
};
|
|
1779
|
-
var
|
|
1780
|
-
|
|
1781
|
-
|
|
1782
|
-
|
|
1783
|
-
|
|
1784
|
-
)
|
|
1785
|
-
|
|
1786
|
-
|
|
1787
|
-
|
|
1788
|
-
);
|
|
1789
|
-
|
|
1790
|
-
|
|
1791
|
-
|
|
1720
|
+
var SHEET_BOX_SIZE = {
|
|
1721
|
+
right: "h-full w-[800px] border-l",
|
|
1722
|
+
left: "h-full w-[800px] border-r"
|
|
1723
|
+
};
|
|
1724
|
+
var SheetModalContext = createContext(void 0);
|
|
1725
|
+
function SheetRoot(props) {
|
|
1726
|
+
return /* @__PURE__ */ jsx(SheetModalContext.Provider, { value: props.modal, children: /* @__PURE__ */ jsx(Dialog.Root, { ...props }) });
|
|
1727
|
+
}
|
|
1728
|
+
function SheetTrigger(props) {
|
|
1729
|
+
return /* @__PURE__ */ jsx(Dialog.Trigger, { "data-slot": "sheet-trigger", ...props });
|
|
1730
|
+
}
|
|
1731
|
+
function SheetPortal(props) {
|
|
1732
|
+
return /* @__PURE__ */ jsx(Dialog.Portal, { ...props });
|
|
1733
|
+
}
|
|
1734
|
+
function SheetOverlay({ className, ...props }) {
|
|
1735
|
+
return /* @__PURE__ */ jsx(
|
|
1736
|
+
Dialog.Backdrop,
|
|
1792
1737
|
{
|
|
1793
|
-
|
|
1738
|
+
"data-slot": "sheet-overlay",
|
|
1794
1739
|
className: cn(
|
|
1795
|
-
"fixed inset-0 z-50 bg-component-dim
|
|
1740
|
+
"fixed inset-0 z-50 bg-component-dim",
|
|
1741
|
+
"transition-opacity duration-300 data-[starting-style]:opacity-0 data-[ending-style]:opacity-0",
|
|
1796
1742
|
className
|
|
1797
1743
|
),
|
|
1798
1744
|
...props
|
|
1799
1745
|
}
|
|
1800
|
-
)
|
|
1801
|
-
|
|
1802
|
-
|
|
1803
|
-
|
|
1804
|
-
|
|
1805
|
-
|
|
1806
|
-
|
|
1807
|
-
|
|
1808
|
-
|
|
1809
|
-
|
|
1810
|
-
|
|
1811
|
-
|
|
1812
|
-
|
|
1813
|
-
|
|
1814
|
-
|
|
1815
|
-
|
|
1816
|
-
|
|
1817
|
-
|
|
1818
|
-
DialogPrimitive2.Content,
|
|
1819
|
-
{
|
|
1820
|
-
ref,
|
|
1821
|
-
className: cn(
|
|
1822
|
-
SHEET_CONTENT_BASE,
|
|
1823
|
-
SHEET_EDGE_GAP,
|
|
1824
|
-
isResizable ? SHEET_RESIZE_SIDE_CLASSES[side] : cn(SHEET_CONTENT_BOX, SHEET_SIDE_CLASSES[side]),
|
|
1825
|
-
className
|
|
1826
|
-
),
|
|
1827
|
-
...props,
|
|
1828
|
-
...dismissGuard,
|
|
1829
|
-
children: isResizable ? /* @__PURE__ */ jsx(SheetResizableBox, { side, options: resizeOptions, children }) : children
|
|
1830
|
-
}
|
|
1831
|
-
)
|
|
1832
|
-
] }) });
|
|
1833
|
-
}
|
|
1834
|
-
);
|
|
1835
|
-
Sheet.Header = forwardRef(
|
|
1836
|
-
({ className, line = true, rightSlot, children, ...props }, ref) => {
|
|
1837
|
-
const rightElement = rightSlot === void 0 ? /* @__PURE__ */ jsx(
|
|
1838
|
-
DialogPrimitive2.Close,
|
|
1839
|
-
{
|
|
1840
|
-
className: cn(
|
|
1841
|
-
"flex shrink-0 items-center justify-center size-8 rounded-medium text-icon-secondary transition-colors hover:bg-elevation-elevation-2 focus:outline-none disabled:pointer-events-none"
|
|
1842
|
-
),
|
|
1843
|
-
children: /* @__PURE__ */ jsx(X, { type: "regular", size: 20 })
|
|
1844
|
-
}
|
|
1845
|
-
) : rightSlot;
|
|
1846
|
-
return /* @__PURE__ */ jsxs(
|
|
1847
|
-
"div",
|
|
1746
|
+
);
|
|
1747
|
+
}
|
|
1748
|
+
function SheetContent({
|
|
1749
|
+
className,
|
|
1750
|
+
children,
|
|
1751
|
+
side: sideProp = "right",
|
|
1752
|
+
resizable = false,
|
|
1753
|
+
...props
|
|
1754
|
+
}) {
|
|
1755
|
+
const side = sideProp === "left" ? "left" : "right";
|
|
1756
|
+
const modal = useContext(SheetModalContext);
|
|
1757
|
+
const resizeOptions = typeof resizable === "object" ? resizable : { use: resizable };
|
|
1758
|
+
const isResizable = resizeOptions.use ?? true;
|
|
1759
|
+
const showOverlay = modal !== false && modal !== "trap-focus";
|
|
1760
|
+
return /* @__PURE__ */ jsxs(SheetPortal, { children: [
|
|
1761
|
+
showOverlay && /* @__PURE__ */ jsx(SheetOverlay, {}),
|
|
1762
|
+
/* @__PURE__ */ jsx(
|
|
1763
|
+
Dialog.Popup,
|
|
1848
1764
|
{
|
|
1849
|
-
|
|
1765
|
+
"data-slot": "sheet-content",
|
|
1850
1766
|
className: cn(
|
|
1851
|
-
"
|
|
1852
|
-
|
|
1767
|
+
"fixed z-50",
|
|
1768
|
+
SHEET_EDGE_GAP,
|
|
1769
|
+
SHEET_TRANSITION,
|
|
1770
|
+
SHEET_ANCHOR[side],
|
|
1771
|
+
SHEET_SLIDE[side],
|
|
1772
|
+
!isResizable && cn(SHEET_CONTENT_BOX, SHEET_BOX_SIZE[side]),
|
|
1853
1773
|
className
|
|
1854
1774
|
),
|
|
1855
1775
|
...props,
|
|
1856
|
-
children:
|
|
1857
|
-
/* @__PURE__ */ jsx("div", { className: "flex min-w-0 flex-1 flex-row items-center gap-1", children }),
|
|
1858
|
-
rightElement ? /* @__PURE__ */ jsx("div", { className: "flex shrink-0 flex-row items-center", children: rightElement }) : null
|
|
1859
|
-
]
|
|
1860
|
-
}
|
|
1861
|
-
);
|
|
1862
|
-
}
|
|
1863
|
-
);
|
|
1864
|
-
Sheet.Body = forwardRef(
|
|
1865
|
-
({ className, children, ...props }, ref) => {
|
|
1866
|
-
const { side } = useContext(SheetContext);
|
|
1867
|
-
const disableHorizontalScroll = side === "left" || side === "right";
|
|
1868
|
-
return /* @__PURE__ */ jsx(
|
|
1869
|
-
"div",
|
|
1870
|
-
{
|
|
1871
|
-
ref,
|
|
1872
|
-
className: cn(
|
|
1873
|
-
"flex-1 flex flex-col min-h-0 h-full",
|
|
1874
|
-
"[&_[data-slot=scroll-area-viewport]>div]:h-full"
|
|
1875
|
-
),
|
|
1876
|
-
...props,
|
|
1877
|
-
children: /* @__PURE__ */ jsx(
|
|
1878
|
-
ScrollArea,
|
|
1879
|
-
{
|
|
1880
|
-
className: "h-full flex flex-col",
|
|
1881
|
-
disableHorizontalScroll,
|
|
1882
|
-
children: /* @__PURE__ */ jsx("div", { className: cn("p-4", className), children })
|
|
1883
|
-
}
|
|
1884
|
-
)
|
|
1776
|
+
children: isResizable ? /* @__PURE__ */ jsx(SheetResizableBox, { side, options: resizeOptions, children }) : children
|
|
1885
1777
|
}
|
|
1886
|
-
)
|
|
1887
|
-
}
|
|
1888
|
-
|
|
1889
|
-
|
|
1890
|
-
|
|
1778
|
+
)
|
|
1779
|
+
] });
|
|
1780
|
+
}
|
|
1781
|
+
function SheetHeader({ className, line = true, rightSlot, children, ...props }) {
|
|
1782
|
+
const rightElement = rightSlot === void 0 ? /* @__PURE__ */ jsx(
|
|
1783
|
+
Dialog.Close,
|
|
1784
|
+
{
|
|
1785
|
+
"data-slot": "sheet-close-icon",
|
|
1786
|
+
className: cn(
|
|
1787
|
+
"flex shrink-0 items-center justify-center size-8 rounded-medium text-icon-secondary transition-colors hover:bg-elevation-elevation-2 focus:outline-none disabled:pointer-events-none"
|
|
1788
|
+
),
|
|
1789
|
+
children: /* @__PURE__ */ jsx(X, { type: "regular", size: 20 })
|
|
1790
|
+
}
|
|
1791
|
+
) : rightSlot;
|
|
1792
|
+
return /* @__PURE__ */ jsxs(
|
|
1891
1793
|
"div",
|
|
1892
1794
|
{
|
|
1893
|
-
|
|
1795
|
+
"data-slot": "sheet-header",
|
|
1796
|
+
className: cn(
|
|
1797
|
+
"flex shrink-0 flex-row items-center gap-2 h-12 pl-4 pr-2",
|
|
1798
|
+
line && "border-b border-border-primary",
|
|
1799
|
+
className
|
|
1800
|
+
),
|
|
1801
|
+
...props,
|
|
1802
|
+
children: [
|
|
1803
|
+
/* @__PURE__ */ jsx("div", { className: "flex min-w-0 flex-1 flex-row items-center gap-1", children }),
|
|
1804
|
+
rightElement ? /* @__PURE__ */ jsx("div", { className: "flex shrink-0 flex-row items-center", children: rightElement }) : null
|
|
1805
|
+
]
|
|
1806
|
+
}
|
|
1807
|
+
);
|
|
1808
|
+
}
|
|
1809
|
+
function SheetBody({ className, children, scroll = true, ...props }) {
|
|
1810
|
+
const content = /* @__PURE__ */ jsx("div", { className: cn("p-4", className), children });
|
|
1811
|
+
return /* @__PURE__ */ jsx(
|
|
1812
|
+
"div",
|
|
1813
|
+
{
|
|
1814
|
+
"data-slot": "sheet-body",
|
|
1815
|
+
className: cn(
|
|
1816
|
+
"flex-1 flex flex-col min-h-0",
|
|
1817
|
+
scroll && "h-full [&_[data-slot=scroll-area-viewport]>div]:h-full"
|
|
1818
|
+
),
|
|
1819
|
+
...props,
|
|
1820
|
+
children: scroll ? /* @__PURE__ */ jsx(
|
|
1821
|
+
ScrollArea,
|
|
1822
|
+
{
|
|
1823
|
+
className: "h-full flex flex-col",
|
|
1824
|
+
disableHorizontalScroll: true,
|
|
1825
|
+
children: content
|
|
1826
|
+
}
|
|
1827
|
+
) : content
|
|
1828
|
+
}
|
|
1829
|
+
);
|
|
1830
|
+
}
|
|
1831
|
+
function SheetFooter({ className, line = true, ...props }) {
|
|
1832
|
+
return /* @__PURE__ */ jsx(
|
|
1833
|
+
"div",
|
|
1834
|
+
{
|
|
1835
|
+
"data-slot": "sheet-footer",
|
|
1894
1836
|
className: cn(
|
|
1895
1837
|
"flex flex-row items-center justify-between h-14 gap-3 px-4 py-3",
|
|
1896
1838
|
line && "border-t border-border-primary",
|
|
@@ -1898,13 +1840,19 @@ Sheet.Footer = forwardRef(
|
|
|
1898
1840
|
),
|
|
1899
1841
|
...props
|
|
1900
1842
|
}
|
|
1901
|
-
)
|
|
1902
|
-
|
|
1903
|
-
|
|
1904
|
-
|
|
1843
|
+
);
|
|
1844
|
+
}
|
|
1845
|
+
function SheetFooterDescription({
|
|
1846
|
+
className,
|
|
1847
|
+
error = false,
|
|
1848
|
+
icon,
|
|
1849
|
+
children,
|
|
1850
|
+
...props
|
|
1851
|
+
}) {
|
|
1852
|
+
return /* @__PURE__ */ jsxs(
|
|
1905
1853
|
"div",
|
|
1906
1854
|
{
|
|
1907
|
-
|
|
1855
|
+
"data-slot": "sheet-footer-description",
|
|
1908
1856
|
className: cn(
|
|
1909
1857
|
"flex flex-row items-center gap-1 text-body-3",
|
|
1910
1858
|
error ? "text-text-critical" : "text-text-tertiary",
|
|
@@ -1916,43 +1864,71 @@ Sheet.FooterDescription = forwardRef(
|
|
|
1916
1864
|
children
|
|
1917
1865
|
]
|
|
1918
1866
|
}
|
|
1919
|
-
)
|
|
1920
|
-
|
|
1921
|
-
|
|
1922
|
-
|
|
1923
|
-
|
|
1924
|
-
DialogPrimitive2.Title,
|
|
1867
|
+
);
|
|
1868
|
+
}
|
|
1869
|
+
function SheetActions({ className, ...props }) {
|
|
1870
|
+
return /* @__PURE__ */ jsx(
|
|
1871
|
+
"div",
|
|
1925
1872
|
{
|
|
1926
|
-
|
|
1873
|
+
"data-slot": "sheet-actions",
|
|
1874
|
+
className: cn("ml-auto flex flex-row items-center gap-2", className),
|
|
1875
|
+
...props
|
|
1876
|
+
}
|
|
1877
|
+
);
|
|
1878
|
+
}
|
|
1879
|
+
function SheetClose(props) {
|
|
1880
|
+
return /* @__PURE__ */ jsx(Dialog.Close, { "data-slot": "sheet-close", ...props });
|
|
1881
|
+
}
|
|
1882
|
+
function SheetTitle({ className, ...props }) {
|
|
1883
|
+
return /* @__PURE__ */ jsx(
|
|
1884
|
+
Dialog.Title,
|
|
1885
|
+
{
|
|
1886
|
+
"data-slot": "sheet-title",
|
|
1927
1887
|
className: cn(
|
|
1928
1888
|
"text-body-1 font-semibold leading-none tracking-tight text-text-primary",
|
|
1929
1889
|
className
|
|
1930
1890
|
),
|
|
1931
1891
|
...props
|
|
1932
1892
|
}
|
|
1933
|
-
)
|
|
1934
|
-
|
|
1935
|
-
|
|
1936
|
-
|
|
1937
|
-
|
|
1938
|
-
|
|
1939
|
-
|
|
1940
|
-
|
|
1941
|
-
|
|
1942
|
-
|
|
1943
|
-
|
|
1944
|
-
|
|
1945
|
-
|
|
1946
|
-
|
|
1947
|
-
|
|
1948
|
-
|
|
1949
|
-
|
|
1950
|
-
|
|
1951
|
-
|
|
1952
|
-
|
|
1953
|
-
|
|
1954
|
-
|
|
1955
|
-
|
|
1893
|
+
);
|
|
1894
|
+
}
|
|
1895
|
+
function SheetDescription({ className, ...props }) {
|
|
1896
|
+
return /* @__PURE__ */ jsx(
|
|
1897
|
+
Dialog.Description,
|
|
1898
|
+
{
|
|
1899
|
+
"data-slot": "sheet-description",
|
|
1900
|
+
className: cn("text-body-2 text-text-tertiary", className),
|
|
1901
|
+
...props
|
|
1902
|
+
}
|
|
1903
|
+
);
|
|
1904
|
+
}
|
|
1905
|
+
SheetRoot.displayName = "Sheet";
|
|
1906
|
+
SheetTrigger.displayName = "Sheet.Trigger";
|
|
1907
|
+
SheetPortal.displayName = "Sheet.Portal";
|
|
1908
|
+
SheetClose.displayName = "Sheet.Close";
|
|
1909
|
+
SheetOverlay.displayName = "Sheet.Overlay";
|
|
1910
|
+
SheetContent.displayName = "Sheet.Content";
|
|
1911
|
+
SheetHeader.displayName = "Sheet.Header";
|
|
1912
|
+
SheetBody.displayName = "Sheet.Body";
|
|
1913
|
+
SheetFooter.displayName = "Sheet.Footer";
|
|
1914
|
+
SheetFooterDescription.displayName = "Sheet.FooterDescription";
|
|
1915
|
+
SheetActions.displayName = "Sheet.Actions";
|
|
1916
|
+
SheetTitle.displayName = "Sheet.Title";
|
|
1917
|
+
SheetDescription.displayName = "Sheet.Description";
|
|
1918
|
+
var Sheet = Object.assign(SheetRoot, {
|
|
1919
|
+
Trigger: SheetTrigger,
|
|
1920
|
+
Portal: SheetPortal,
|
|
1921
|
+
Close: SheetClose,
|
|
1922
|
+
Overlay: SheetOverlay,
|
|
1923
|
+
Content: SheetContent,
|
|
1924
|
+
Header: SheetHeader,
|
|
1925
|
+
Body: SheetBody,
|
|
1926
|
+
Footer: SheetFooter,
|
|
1927
|
+
FooterDescription: SheetFooterDescription,
|
|
1928
|
+
Actions: SheetActions,
|
|
1929
|
+
Title: SheetTitle,
|
|
1930
|
+
Description: SheetDescription
|
|
1931
|
+
});
|
|
1956
1932
|
var MESSAGE_BOX_TRANSITION = "transition-[transform,scale,opacity] duration-200 data-[starting-style]:opacity-0 data-[ending-style]:opacity-0";
|
|
1957
1933
|
var MessageBoxContext = createContext({ variant: "default" });
|
|
1958
1934
|
function MessageBoxRoot(props) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@exem-ui/react",
|
|
3
|
-
"version": "0.3.4-next.
|
|
3
|
+
"version": "0.3.4-next.20261022010408",
|
|
4
4
|
"description": "Exem Design System - React Components",
|
|
5
5
|
"author": "Exem Design Team",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -79,7 +79,6 @@
|
|
|
79
79
|
"@dnd-kit/sortable": "^10.0.0",
|
|
80
80
|
"@dnd-kit/utilities": "^3.2.2",
|
|
81
81
|
"@radix-ui/react-checkbox": "^1.2.3",
|
|
82
|
-
"@radix-ui/react-dialog": "^1.1.15",
|
|
83
82
|
"@radix-ui/react-dropdown-menu": "^2.1.16",
|
|
84
83
|
"@radix-ui/react-radio-group": "^1.2.3",
|
|
85
84
|
"@radix-ui/react-scroll-area": "^1.2.10",
|
|
@@ -99,7 +98,7 @@
|
|
|
99
98
|
"tailwind-merge": "^3.3.1",
|
|
100
99
|
"tailwind-scrollbar-hide": "^4.0.0",
|
|
101
100
|
"tiny-invariant": "^1.3.3",
|
|
102
|
-
"@exem-ui/core": "0.3.3-next.
|
|
101
|
+
"@exem-ui/core": "0.3.3-next.20261022010408"
|
|
103
102
|
},
|
|
104
103
|
"devDependencies": {
|
|
105
104
|
"@eslint/js": "^9.15.0",
|
|
@@ -135,7 +134,7 @@
|
|
|
135
134
|
"tsup": "^8.5.0",
|
|
136
135
|
"typescript": "^5.8.2",
|
|
137
136
|
"typescript-eslint": "^8.16.0",
|
|
138
|
-
"@exem-ui/tailwindcss3": "0.3.2-next.
|
|
137
|
+
"@exem-ui/tailwindcss3": "0.3.2-next.20261022010408"
|
|
139
138
|
},
|
|
140
139
|
"scripts": {
|
|
141
140
|
"generate": "node scripts/generate-icons.js",
|