@bergetai/ui 0.11.3 → 0.12.0
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.cjs +1517 -540
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +118 -3
- package/dist/index.d.ts +118 -3
- package/dist/index.js +1382 -431
- package/dist/index.js.map +1 -1
- package/dist/styles/index.css +60 -7
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -320,6 +320,21 @@ function brandVariantClasses(variant) {
|
|
|
320
320
|
disabledClasses,
|
|
321
321
|
"disabled:bg-transparent disabled:border-berget-button-disabled-border"
|
|
322
322
|
);
|
|
323
|
+
case "ghost":
|
|
324
|
+
return cn(
|
|
325
|
+
"bg-transparent text-berget-button-ghost-fg",
|
|
326
|
+
// Pin the foreground on hover — the underlying primitive ghost adds
|
|
327
|
+
// hover:text-foreground, which is the same value here but pinned
|
|
328
|
+
// explicitly for parity with the other fg-token variants.
|
|
329
|
+
"hover:bg-berget-button-ghost-hover hover:text-berget-button-ghost-fg",
|
|
330
|
+
// The dark:hover twin neutralises the primitive ghost's
|
|
331
|
+
// dark:hover:bg-muted/50 so only the token fill applies.
|
|
332
|
+
"dark:hover:bg-berget-button-ghost-hover",
|
|
333
|
+
"active:bg-berget-button-ghost-active dark:active:bg-berget-button-ghost-active",
|
|
334
|
+
"focus-visible:border-transparent",
|
|
335
|
+
disabledClasses,
|
|
336
|
+
"disabled:bg-transparent"
|
|
337
|
+
);
|
|
323
338
|
case "link":
|
|
324
339
|
return cn(
|
|
325
340
|
"h-auto bg-transparent p-0 text-berget-button-link-fg font-medium underline-offset-4 shadow-none",
|
|
@@ -354,6 +369,7 @@ function primitiveVariant(variant) {
|
|
|
354
369
|
case "primary":
|
|
355
370
|
case "destructive":
|
|
356
371
|
case "outline":
|
|
372
|
+
case "ghost":
|
|
357
373
|
return "ghost";
|
|
358
374
|
default:
|
|
359
375
|
return variant;
|
|
@@ -674,7 +690,7 @@ var BergetLogo = React7.forwardRef(
|
|
|
674
690
|
({ variant = "logotype", color = "auto", size = 48, className, ...props }, ref) => {
|
|
675
691
|
const fillColor = color === "auto" ? "var(--berget-logo-light)" : color === "white" ? "var(--berget-logo-light)" : "var(--berget-logo-dark)";
|
|
676
692
|
if (variant === "symbol") {
|
|
677
|
-
const aspectRatio2 =
|
|
693
|
+
const aspectRatio2 = 428 / 386;
|
|
678
694
|
const width2 = size * aspectRatio2;
|
|
679
695
|
const height2 = size;
|
|
680
696
|
return /* @__PURE__ */ jsx9(
|
|
@@ -683,7 +699,7 @@ var BergetLogo = React7.forwardRef(
|
|
|
683
699
|
ref,
|
|
684
700
|
width: width2,
|
|
685
701
|
height: height2,
|
|
686
|
-
viewBox: "
|
|
702
|
+
viewBox: "18 17 428 386",
|
|
687
703
|
fill: "none",
|
|
688
704
|
xmlns: "http://www.w3.org/2000/svg",
|
|
689
705
|
role: "img",
|
|
@@ -1575,26 +1591,981 @@ function NavigationMenuPositioner({
|
|
|
1575
1591
|
...props,
|
|
1576
1592
|
children: /* @__PURE__ */ jsx18(NavigationMenuPrimitive2.Popup, { className: "data-[ending-style]:easing-[ease] xs:w-(--popup-width) relative h-(--popup-height) w-(--popup-width) origin-(--transform-origin) rounded-berget-xs bg-berget-popover text-berget-popover-foreground shadow-berget-lg ring-1 ring-berget-border transition-[opacity,transform,width,height,scale,translate] duration-[0.35s] ease-[cubic-bezier(0.22,1,0.36,1)] outline-none data-ending-style:scale-90 data-ending-style:opacity-0 data-ending-style:duration-150 data-starting-style:scale-90 data-starting-style:opacity-0", children: /* @__PURE__ */ jsx18(NavigationMenuPrimitive2.Viewport, { className: "relative size-full overflow-hidden" }) })
|
|
1577
1593
|
}
|
|
1578
|
-
) });
|
|
1594
|
+
) });
|
|
1595
|
+
}
|
|
1596
|
+
|
|
1597
|
+
// src/primitives/sidebar.tsx
|
|
1598
|
+
import * as React15 from "react";
|
|
1599
|
+
import { mergeProps } from "@base-ui/react/merge-props";
|
|
1600
|
+
import { useRender } from "@base-ui/react/use-render";
|
|
1601
|
+
import { cva as cva9 } from "class-variance-authority";
|
|
1602
|
+
import { cn as cn11 } from "cn";
|
|
1603
|
+
|
|
1604
|
+
// src/hooks/use-mobile.tsx
|
|
1605
|
+
import * as React14 from "react";
|
|
1606
|
+
var MOBILE_BREAKPOINT = 768;
|
|
1607
|
+
function useIsMobile() {
|
|
1608
|
+
const [isMobile, setIsMobile] = React14.useState(void 0);
|
|
1609
|
+
React14.useEffect(() => {
|
|
1610
|
+
const mql = window.matchMedia(`(max-width: ${MOBILE_BREAKPOINT - 1}px)`);
|
|
1611
|
+
const onChange = () => {
|
|
1612
|
+
setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);
|
|
1613
|
+
};
|
|
1614
|
+
mql.addEventListener("change", onChange);
|
|
1615
|
+
setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);
|
|
1616
|
+
return () => mql.removeEventListener("change", onChange);
|
|
1617
|
+
}, []);
|
|
1618
|
+
return !!isMobile;
|
|
1619
|
+
}
|
|
1620
|
+
|
|
1621
|
+
// src/primitives/input.tsx
|
|
1622
|
+
import { Input as InputPrimitive } from "@base-ui/react/input";
|
|
1623
|
+
import { cn as cn6 } from "cn";
|
|
1624
|
+
import { jsx as jsx19 } from "react/jsx-runtime";
|
|
1625
|
+
function Input({ className, type, ...props }) {
|
|
1626
|
+
return /* @__PURE__ */ jsx19(
|
|
1627
|
+
InputPrimitive,
|
|
1628
|
+
{
|
|
1629
|
+
type,
|
|
1630
|
+
"data-slot": "input",
|
|
1631
|
+
className: cn6(
|
|
1632
|
+
"h-8 w-full min-w-0 rounded-lg border border-input bg-transparent px-2.5 py-1 text-base transition-colors outline-none file:inline-flex file:h-6 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:bg-input/50 disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:disabled:bg-input/80 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40",
|
|
1633
|
+
className
|
|
1634
|
+
),
|
|
1635
|
+
...props
|
|
1636
|
+
}
|
|
1637
|
+
);
|
|
1638
|
+
}
|
|
1639
|
+
|
|
1640
|
+
// src/primitives/separator.tsx
|
|
1641
|
+
import { Separator as SeparatorPrimitive } from "@base-ui/react/separator";
|
|
1642
|
+
import { cn as cn7 } from "cn";
|
|
1643
|
+
import { jsx as jsx20 } from "react/jsx-runtime";
|
|
1644
|
+
function Separator({
|
|
1645
|
+
className,
|
|
1646
|
+
orientation = "horizontal",
|
|
1647
|
+
...props
|
|
1648
|
+
}) {
|
|
1649
|
+
return /* @__PURE__ */ jsx20(
|
|
1650
|
+
SeparatorPrimitive,
|
|
1651
|
+
{
|
|
1652
|
+
"data-slot": "separator",
|
|
1653
|
+
orientation,
|
|
1654
|
+
className: cn7(
|
|
1655
|
+
"shrink-0 bg-border data-horizontal:h-px data-horizontal:w-full data-vertical:w-px data-vertical:self-stretch",
|
|
1656
|
+
className
|
|
1657
|
+
),
|
|
1658
|
+
...props
|
|
1659
|
+
}
|
|
1660
|
+
);
|
|
1661
|
+
}
|
|
1662
|
+
|
|
1663
|
+
// src/primitives/sheet.tsx
|
|
1664
|
+
import { Dialog as SheetPrimitive } from "@base-ui/react/dialog";
|
|
1665
|
+
import { cn as cn8 } from "cn";
|
|
1666
|
+
import { XIcon } from "lucide-react";
|
|
1667
|
+
import { jsx as jsx21, jsxs as jsxs11 } from "react/jsx-runtime";
|
|
1668
|
+
function Sheet({ ...props }) {
|
|
1669
|
+
return /* @__PURE__ */ jsx21(SheetPrimitive.Root, { "data-slot": "sheet", ...props });
|
|
1670
|
+
}
|
|
1671
|
+
function SheetPortal({ ...props }) {
|
|
1672
|
+
return /* @__PURE__ */ jsx21(SheetPrimitive.Portal, { "data-slot": "sheet-portal", ...props });
|
|
1673
|
+
}
|
|
1674
|
+
function SheetOverlay({ className, ...props }) {
|
|
1675
|
+
return /* @__PURE__ */ jsx21(
|
|
1676
|
+
SheetPrimitive.Backdrop,
|
|
1677
|
+
{
|
|
1678
|
+
"data-slot": "sheet-overlay",
|
|
1679
|
+
className: cn8(
|
|
1680
|
+
"fixed inset-0 z-50 bg-black/10 transition-opacity duration-150 data-ending-style:opacity-0 data-starting-style:opacity-0 supports-backdrop-filter:backdrop-blur-xs",
|
|
1681
|
+
className
|
|
1682
|
+
),
|
|
1683
|
+
...props
|
|
1684
|
+
}
|
|
1685
|
+
);
|
|
1686
|
+
}
|
|
1687
|
+
function SheetContent({
|
|
1688
|
+
className,
|
|
1689
|
+
children,
|
|
1690
|
+
side = "right",
|
|
1691
|
+
showCloseButton = true,
|
|
1692
|
+
...props
|
|
1693
|
+
}) {
|
|
1694
|
+
return /* @__PURE__ */ jsxs11(SheetPortal, { children: [
|
|
1695
|
+
/* @__PURE__ */ jsx21(SheetOverlay, {}),
|
|
1696
|
+
/* @__PURE__ */ jsxs11(
|
|
1697
|
+
SheetPrimitive.Popup,
|
|
1698
|
+
{
|
|
1699
|
+
"data-slot": "sheet-content",
|
|
1700
|
+
"data-side": side,
|
|
1701
|
+
className: cn8(
|
|
1702
|
+
"fixed z-50 flex flex-col gap-4 bg-popover bg-clip-padding text-sm text-popover-foreground shadow-lg transition duration-200 ease-in-out data-ending-style:opacity-0 data-starting-style:opacity-0 data-[side=bottom]:inset-x-0 data-[side=bottom]:bottom-0 data-[side=bottom]:h-auto data-[side=bottom]:border-t data-[side=bottom]:data-ending-style:translate-y-[2.5rem] data-[side=bottom]:data-starting-style:translate-y-[2.5rem] data-[side=left]:inset-y-0 data-[side=left]:left-0 data-[side=left]:h-full data-[side=left]:w-3/4 data-[side=left]:border-r data-[side=left]:data-ending-style:translate-x-[-2.5rem] data-[side=left]:data-starting-style:translate-x-[-2.5rem] data-[side=right]:inset-y-0 data-[side=right]:right-0 data-[side=right]:h-full data-[side=right]:w-3/4 data-[side=right]:border-l data-[side=right]:data-ending-style:translate-x-[2.5rem] data-[side=right]:data-starting-style:translate-x-[2.5rem] data-[side=top]:inset-x-0 data-[side=top]:top-0 data-[side=top]:h-auto data-[side=top]:border-b data-[side=top]:data-ending-style:translate-y-[-2.5rem] data-[side=top]:data-starting-style:translate-y-[-2.5rem] data-[side=left]:sm:max-w-sm data-[side=right]:sm:max-w-sm",
|
|
1703
|
+
className
|
|
1704
|
+
),
|
|
1705
|
+
...props,
|
|
1706
|
+
children: [
|
|
1707
|
+
children,
|
|
1708
|
+
showCloseButton && /* @__PURE__ */ jsxs11(
|
|
1709
|
+
SheetPrimitive.Close,
|
|
1710
|
+
{
|
|
1711
|
+
"data-slot": "sheet-close",
|
|
1712
|
+
render: /* @__PURE__ */ jsx21(
|
|
1713
|
+
Button,
|
|
1714
|
+
{
|
|
1715
|
+
variant: "ghost",
|
|
1716
|
+
className: "absolute top-3 right-3",
|
|
1717
|
+
size: "icon-sm"
|
|
1718
|
+
}
|
|
1719
|
+
),
|
|
1720
|
+
children: [
|
|
1721
|
+
/* @__PURE__ */ jsx21(
|
|
1722
|
+
XIcon,
|
|
1723
|
+
{}
|
|
1724
|
+
),
|
|
1725
|
+
/* @__PURE__ */ jsx21("span", { className: "sr-only", children: "Close" })
|
|
1726
|
+
]
|
|
1727
|
+
}
|
|
1728
|
+
)
|
|
1729
|
+
]
|
|
1730
|
+
}
|
|
1731
|
+
)
|
|
1732
|
+
] });
|
|
1733
|
+
}
|
|
1734
|
+
function SheetHeader({ className, ...props }) {
|
|
1735
|
+
return /* @__PURE__ */ jsx21(
|
|
1736
|
+
"div",
|
|
1737
|
+
{
|
|
1738
|
+
"data-slot": "sheet-header",
|
|
1739
|
+
className: cn8("flex flex-col gap-0.5 p-4", className),
|
|
1740
|
+
...props
|
|
1741
|
+
}
|
|
1742
|
+
);
|
|
1743
|
+
}
|
|
1744
|
+
function SheetTitle({ className, ...props }) {
|
|
1745
|
+
return /* @__PURE__ */ jsx21(
|
|
1746
|
+
SheetPrimitive.Title,
|
|
1747
|
+
{
|
|
1748
|
+
"data-slot": "sheet-title",
|
|
1749
|
+
className: cn8(
|
|
1750
|
+
"text-base font-medium text-foreground",
|
|
1751
|
+
className
|
|
1752
|
+
),
|
|
1753
|
+
...props
|
|
1754
|
+
}
|
|
1755
|
+
);
|
|
1756
|
+
}
|
|
1757
|
+
function SheetDescription({
|
|
1758
|
+
className,
|
|
1759
|
+
...props
|
|
1760
|
+
}) {
|
|
1761
|
+
return /* @__PURE__ */ jsx21(
|
|
1762
|
+
SheetPrimitive.Description,
|
|
1763
|
+
{
|
|
1764
|
+
"data-slot": "sheet-description",
|
|
1765
|
+
className: cn8("text-sm text-muted-foreground", className),
|
|
1766
|
+
...props
|
|
1767
|
+
}
|
|
1768
|
+
);
|
|
1769
|
+
}
|
|
1770
|
+
|
|
1771
|
+
// src/primitives/skeleton.tsx
|
|
1772
|
+
import { cn as cn9 } from "cn";
|
|
1773
|
+
import { jsx as jsx22 } from "react/jsx-runtime";
|
|
1774
|
+
function Skeleton({ className, ...props }) {
|
|
1775
|
+
return /* @__PURE__ */ jsx22(
|
|
1776
|
+
"div",
|
|
1777
|
+
{
|
|
1778
|
+
"data-slot": "skeleton",
|
|
1779
|
+
className: cn9("animate-pulse rounded-md bg-muted", className),
|
|
1780
|
+
...props
|
|
1781
|
+
}
|
|
1782
|
+
);
|
|
1783
|
+
}
|
|
1784
|
+
|
|
1785
|
+
// src/primitives/tooltip.tsx
|
|
1786
|
+
import { Tooltip as TooltipPrimitive } from "@base-ui/react/tooltip";
|
|
1787
|
+
import { cn as cn10 } from "cn";
|
|
1788
|
+
import { jsx as jsx23, jsxs as jsxs12 } from "react/jsx-runtime";
|
|
1789
|
+
function Tooltip({ ...props }) {
|
|
1790
|
+
return /* @__PURE__ */ jsx23(TooltipPrimitive.Root, { "data-slot": "tooltip", ...props });
|
|
1791
|
+
}
|
|
1792
|
+
function TooltipTrigger({ ...props }) {
|
|
1793
|
+
return /* @__PURE__ */ jsx23(TooltipPrimitive.Trigger, { "data-slot": "tooltip-trigger", ...props });
|
|
1794
|
+
}
|
|
1795
|
+
function TooltipContent({
|
|
1796
|
+
className,
|
|
1797
|
+
side = "top",
|
|
1798
|
+
sideOffset = 4,
|
|
1799
|
+
align = "center",
|
|
1800
|
+
alignOffset = 0,
|
|
1801
|
+
children,
|
|
1802
|
+
...props
|
|
1803
|
+
}) {
|
|
1804
|
+
return /* @__PURE__ */ jsx23(TooltipPrimitive.Portal, { children: /* @__PURE__ */ jsx23(
|
|
1805
|
+
TooltipPrimitive.Positioner,
|
|
1806
|
+
{
|
|
1807
|
+
align,
|
|
1808
|
+
alignOffset,
|
|
1809
|
+
side,
|
|
1810
|
+
sideOffset,
|
|
1811
|
+
className: "isolate z-50",
|
|
1812
|
+
children: /* @__PURE__ */ jsxs12(
|
|
1813
|
+
TooltipPrimitive.Popup,
|
|
1814
|
+
{
|
|
1815
|
+
"data-slot": "tooltip-content",
|
|
1816
|
+
className: cn10(
|
|
1817
|
+
"z-50 inline-flex w-fit max-w-xs origin-(--transform-origin) items-center gap-1.5 rounded-md bg-foreground px-3 py-1.5 text-xs text-background has-data-[slot=kbd]:pr-1.5 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 **:data-[slot=kbd]:relative **:data-[slot=kbd]:isolate **:data-[slot=kbd]:z-50 **:data-[slot=kbd]:rounded-sm data-[state=delayed-open]:animate-in data-[state=delayed-open]:fade-in-0 data-[state=delayed-open]:zoom-in-95 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",
|
|
1818
|
+
className
|
|
1819
|
+
),
|
|
1820
|
+
...props,
|
|
1821
|
+
children: [
|
|
1822
|
+
children,
|
|
1823
|
+
/* @__PURE__ */ jsx23(TooltipPrimitive.Arrow, { className: "z-50 size-2.5 translate-y-[calc(-50%-2px)] rotate-45 rounded-[2px] bg-foreground fill-foreground data-[side=bottom]:top-1 data-[side=inline-end]:top-1/2! data-[side=inline-end]:-left-1 data-[side=inline-end]:-translate-y-1/2 data-[side=inline-start]:top-1/2! data-[side=inline-start]:-right-1 data-[side=inline-start]:-translate-y-1/2 data-[side=left]:top-1/2! data-[side=left]:-right-1 data-[side=left]:-translate-y-1/2 data-[side=right]:top-1/2! data-[side=right]:-left-1 data-[side=right]:-translate-y-1/2 data-[side=top]:-bottom-2.5" })
|
|
1824
|
+
]
|
|
1825
|
+
}
|
|
1826
|
+
)
|
|
1827
|
+
}
|
|
1828
|
+
) });
|
|
1829
|
+
}
|
|
1830
|
+
|
|
1831
|
+
// src/primitives/sidebar.tsx
|
|
1832
|
+
import { PanelLeftIcon } from "lucide-react";
|
|
1833
|
+
import { jsx as jsx24, jsxs as jsxs13 } from "react/jsx-runtime";
|
|
1834
|
+
var SIDEBAR_COOKIE_NAME = "sidebar_state";
|
|
1835
|
+
var SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7;
|
|
1836
|
+
var SIDEBAR_WIDTH = "16rem";
|
|
1837
|
+
var SIDEBAR_WIDTH_MOBILE = "18rem";
|
|
1838
|
+
var SIDEBAR_WIDTH_ICON = "3rem";
|
|
1839
|
+
var SIDEBAR_KEYBOARD_SHORTCUT = "b";
|
|
1840
|
+
var SidebarContext = React15.createContext(null);
|
|
1841
|
+
function useSidebar() {
|
|
1842
|
+
const context = React15.useContext(SidebarContext);
|
|
1843
|
+
if (!context) {
|
|
1844
|
+
throw new Error("useSidebar must be used within a SidebarProvider.");
|
|
1845
|
+
}
|
|
1846
|
+
return context;
|
|
1847
|
+
}
|
|
1848
|
+
function SidebarProvider({
|
|
1849
|
+
defaultOpen = true,
|
|
1850
|
+
open: openProp,
|
|
1851
|
+
onOpenChange: setOpenProp,
|
|
1852
|
+
className,
|
|
1853
|
+
style,
|
|
1854
|
+
children,
|
|
1855
|
+
...props
|
|
1856
|
+
}) {
|
|
1857
|
+
const isMobile = useIsMobile();
|
|
1858
|
+
const [openMobile, setOpenMobile] = React15.useState(false);
|
|
1859
|
+
const [_open, _setOpen] = React15.useState(defaultOpen);
|
|
1860
|
+
const open = openProp ?? _open;
|
|
1861
|
+
const setOpen = React15.useCallback(
|
|
1862
|
+
(value) => {
|
|
1863
|
+
const openState = typeof value === "function" ? value(open) : value;
|
|
1864
|
+
if (setOpenProp) {
|
|
1865
|
+
setOpenProp(openState);
|
|
1866
|
+
} else {
|
|
1867
|
+
_setOpen(openState);
|
|
1868
|
+
}
|
|
1869
|
+
document.cookie = `${SIDEBAR_COOKIE_NAME}=${openState}; path=/; max-age=${SIDEBAR_COOKIE_MAX_AGE}`;
|
|
1870
|
+
},
|
|
1871
|
+
[setOpenProp, open]
|
|
1872
|
+
);
|
|
1873
|
+
const toggleSidebar = React15.useCallback(() => {
|
|
1874
|
+
return isMobile ? setOpenMobile((open2) => !open2) : setOpen((open2) => !open2);
|
|
1875
|
+
}, [isMobile, setOpen, setOpenMobile]);
|
|
1876
|
+
React15.useEffect(() => {
|
|
1877
|
+
const handleKeyDown = (event) => {
|
|
1878
|
+
if (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {
|
|
1879
|
+
event.preventDefault();
|
|
1880
|
+
toggleSidebar();
|
|
1881
|
+
}
|
|
1882
|
+
};
|
|
1883
|
+
window.addEventListener("keydown", handleKeyDown);
|
|
1884
|
+
return () => window.removeEventListener("keydown", handleKeyDown);
|
|
1885
|
+
}, [toggleSidebar]);
|
|
1886
|
+
const state = open ? "expanded" : "collapsed";
|
|
1887
|
+
const contextValue = React15.useMemo(
|
|
1888
|
+
() => ({
|
|
1889
|
+
state,
|
|
1890
|
+
open,
|
|
1891
|
+
setOpen,
|
|
1892
|
+
isMobile,
|
|
1893
|
+
openMobile,
|
|
1894
|
+
setOpenMobile,
|
|
1895
|
+
toggleSidebar
|
|
1896
|
+
}),
|
|
1897
|
+
[state, open, setOpen, isMobile, openMobile, setOpenMobile, toggleSidebar]
|
|
1898
|
+
);
|
|
1899
|
+
return /* @__PURE__ */ jsx24(SidebarContext.Provider, { value: contextValue, children: /* @__PURE__ */ jsx24(
|
|
1900
|
+
"div",
|
|
1901
|
+
{
|
|
1902
|
+
"data-slot": "sidebar-wrapper",
|
|
1903
|
+
style: {
|
|
1904
|
+
"--sidebar-width": SIDEBAR_WIDTH,
|
|
1905
|
+
"--sidebar-width-icon": SIDEBAR_WIDTH_ICON,
|
|
1906
|
+
...style
|
|
1907
|
+
},
|
|
1908
|
+
className: cn11(
|
|
1909
|
+
"group/sidebar-wrapper flex min-h-svh w-full has-data-[variant=inset]:bg-sidebar",
|
|
1910
|
+
className
|
|
1911
|
+
),
|
|
1912
|
+
...props,
|
|
1913
|
+
children
|
|
1914
|
+
}
|
|
1915
|
+
) });
|
|
1916
|
+
}
|
|
1917
|
+
function Sidebar({
|
|
1918
|
+
side = "left",
|
|
1919
|
+
variant = "sidebar",
|
|
1920
|
+
collapsible = "offcanvas",
|
|
1921
|
+
className,
|
|
1922
|
+
children,
|
|
1923
|
+
dir,
|
|
1924
|
+
...props
|
|
1925
|
+
}) {
|
|
1926
|
+
const { isMobile, state, openMobile, setOpenMobile } = useSidebar();
|
|
1927
|
+
if (collapsible === "none") {
|
|
1928
|
+
return /* @__PURE__ */ jsx24(
|
|
1929
|
+
"div",
|
|
1930
|
+
{
|
|
1931
|
+
"data-slot": "sidebar",
|
|
1932
|
+
className: cn11(
|
|
1933
|
+
"flex h-full w-(--sidebar-width) flex-col bg-sidebar text-sidebar-foreground",
|
|
1934
|
+
className
|
|
1935
|
+
),
|
|
1936
|
+
...props,
|
|
1937
|
+
children
|
|
1938
|
+
}
|
|
1939
|
+
);
|
|
1940
|
+
}
|
|
1941
|
+
if (isMobile) {
|
|
1942
|
+
return /* @__PURE__ */ jsx24(Sheet, { open: openMobile, onOpenChange: setOpenMobile, ...props, children: /* @__PURE__ */ jsxs13(
|
|
1943
|
+
SheetContent,
|
|
1944
|
+
{
|
|
1945
|
+
dir,
|
|
1946
|
+
"data-sidebar": "sidebar",
|
|
1947
|
+
"data-slot": "sidebar",
|
|
1948
|
+
"data-mobile": "true",
|
|
1949
|
+
className: "w-(--sidebar-width) bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden",
|
|
1950
|
+
style: {
|
|
1951
|
+
"--sidebar-width": SIDEBAR_WIDTH_MOBILE
|
|
1952
|
+
},
|
|
1953
|
+
side,
|
|
1954
|
+
children: [
|
|
1955
|
+
/* @__PURE__ */ jsxs13(SheetHeader, { className: "sr-only", children: [
|
|
1956
|
+
/* @__PURE__ */ jsx24(SheetTitle, { children: "Sidebar" }),
|
|
1957
|
+
/* @__PURE__ */ jsx24(SheetDescription, { children: "Displays the mobile sidebar." })
|
|
1958
|
+
] }),
|
|
1959
|
+
/* @__PURE__ */ jsx24("div", { className: "flex h-full w-full flex-col", children })
|
|
1960
|
+
]
|
|
1961
|
+
}
|
|
1962
|
+
) });
|
|
1963
|
+
}
|
|
1964
|
+
return /* @__PURE__ */ jsxs13(
|
|
1965
|
+
"div",
|
|
1966
|
+
{
|
|
1967
|
+
className: "group peer hidden text-sidebar-foreground md:block",
|
|
1968
|
+
"data-state": state,
|
|
1969
|
+
"data-collapsible": state === "collapsed" ? collapsible : "",
|
|
1970
|
+
"data-variant": variant,
|
|
1971
|
+
"data-side": side,
|
|
1972
|
+
"data-slot": "sidebar",
|
|
1973
|
+
children: [
|
|
1974
|
+
/* @__PURE__ */ jsx24(
|
|
1975
|
+
"div",
|
|
1976
|
+
{
|
|
1977
|
+
"data-slot": "sidebar-gap",
|
|
1978
|
+
className: cn11(
|
|
1979
|
+
"relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear",
|
|
1980
|
+
"group-data-[collapsible=offcanvas]:w-0",
|
|
1981
|
+
"group-data-[side=right]:rotate-180",
|
|
1982
|
+
variant === "floating" || variant === "inset" ? "group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]" : "group-data-[collapsible=icon]:w-(--sidebar-width-icon)"
|
|
1983
|
+
)
|
|
1984
|
+
}
|
|
1985
|
+
),
|
|
1986
|
+
/* @__PURE__ */ jsx24(
|
|
1987
|
+
"div",
|
|
1988
|
+
{
|
|
1989
|
+
"data-slot": "sidebar-container",
|
|
1990
|
+
"data-side": side,
|
|
1991
|
+
className: cn11(
|
|
1992
|
+
"fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear data-[side=left]:left-0 data-[side=left]:group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)] data-[side=right]:right-0 data-[side=right]:group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)] md:flex",
|
|
1993
|
+
// Adjust the padding for floating and inset variants.
|
|
1994
|
+
variant === "floating" || variant === "inset" ? "p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]" : "group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l",
|
|
1995
|
+
className
|
|
1996
|
+
),
|
|
1997
|
+
...props,
|
|
1998
|
+
children: /* @__PURE__ */ jsx24(
|
|
1999
|
+
"div",
|
|
2000
|
+
{
|
|
2001
|
+
"data-sidebar": "sidebar",
|
|
2002
|
+
"data-slot": "sidebar-inner",
|
|
2003
|
+
className: "flex size-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:shadow-sm group-data-[variant=floating]:ring-1 group-data-[variant=floating]:ring-sidebar-border",
|
|
2004
|
+
children
|
|
2005
|
+
}
|
|
2006
|
+
)
|
|
2007
|
+
}
|
|
2008
|
+
)
|
|
2009
|
+
]
|
|
2010
|
+
}
|
|
2011
|
+
);
|
|
2012
|
+
}
|
|
2013
|
+
function SidebarTrigger({
|
|
2014
|
+
className,
|
|
2015
|
+
onClick,
|
|
2016
|
+
...props
|
|
2017
|
+
}) {
|
|
2018
|
+
const { toggleSidebar } = useSidebar();
|
|
2019
|
+
return /* @__PURE__ */ jsxs13(
|
|
2020
|
+
Button,
|
|
2021
|
+
{
|
|
2022
|
+
"data-sidebar": "trigger",
|
|
2023
|
+
"data-slot": "sidebar-trigger",
|
|
2024
|
+
variant: "ghost",
|
|
2025
|
+
size: "icon-sm",
|
|
2026
|
+
className: cn11(className),
|
|
2027
|
+
onClick: (event) => {
|
|
2028
|
+
onClick?.(event);
|
|
2029
|
+
toggleSidebar();
|
|
2030
|
+
},
|
|
2031
|
+
...props,
|
|
2032
|
+
children: [
|
|
2033
|
+
/* @__PURE__ */ jsx24(PanelLeftIcon, {}),
|
|
2034
|
+
/* @__PURE__ */ jsx24("span", { className: "sr-only", children: "Toggle Sidebar" })
|
|
2035
|
+
]
|
|
2036
|
+
}
|
|
2037
|
+
);
|
|
2038
|
+
}
|
|
2039
|
+
function SidebarRail({ className, ...props }) {
|
|
2040
|
+
const { toggleSidebar } = useSidebar();
|
|
2041
|
+
return /* @__PURE__ */ jsx24(
|
|
2042
|
+
"button",
|
|
2043
|
+
{
|
|
2044
|
+
"data-sidebar": "rail",
|
|
2045
|
+
"data-slot": "sidebar-rail",
|
|
2046
|
+
"aria-label": "Toggle Sidebar",
|
|
2047
|
+
tabIndex: -1,
|
|
2048
|
+
onClick: toggleSidebar,
|
|
2049
|
+
title: "Toggle Sidebar",
|
|
2050
|
+
className: cn11(
|
|
2051
|
+
"absolute inset-y-0 z-20 hidden w-4 transition-all ease-linear group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:absolute after:inset-y-0 after:start-1/2 after:w-[2px] hover:after:bg-sidebar-border sm:flex ltr:-translate-x-1/2 rtl:-translate-x-1/2",
|
|
2052
|
+
"in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize",
|
|
2053
|
+
"[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize",
|
|
2054
|
+
"group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full hover:group-data-[collapsible=offcanvas]:bg-sidebar",
|
|
2055
|
+
"[[data-side=left][data-collapsible=offcanvas]_&]:-right-2",
|
|
2056
|
+
"[[data-side=right][data-collapsible=offcanvas]_&]:-left-2",
|
|
2057
|
+
className
|
|
2058
|
+
),
|
|
2059
|
+
...props
|
|
2060
|
+
}
|
|
2061
|
+
);
|
|
2062
|
+
}
|
|
2063
|
+
function SidebarInset({ className, ...props }) {
|
|
2064
|
+
return /* @__PURE__ */ jsx24(
|
|
2065
|
+
"main",
|
|
2066
|
+
{
|
|
2067
|
+
"data-slot": "sidebar-inset",
|
|
2068
|
+
className: cn11(
|
|
2069
|
+
"relative flex w-full flex-1 flex-col bg-background md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2",
|
|
2070
|
+
className
|
|
2071
|
+
),
|
|
2072
|
+
...props
|
|
2073
|
+
}
|
|
2074
|
+
);
|
|
2075
|
+
}
|
|
2076
|
+
function SidebarInput({
|
|
2077
|
+
className,
|
|
2078
|
+
...props
|
|
2079
|
+
}) {
|
|
2080
|
+
return /* @__PURE__ */ jsx24(
|
|
2081
|
+
Input,
|
|
2082
|
+
{
|
|
2083
|
+
"data-slot": "sidebar-input",
|
|
2084
|
+
"data-sidebar": "input",
|
|
2085
|
+
className: cn11("h-8 w-full bg-background shadow-none", className),
|
|
2086
|
+
...props
|
|
2087
|
+
}
|
|
2088
|
+
);
|
|
2089
|
+
}
|
|
2090
|
+
function SidebarHeader({ className, ...props }) {
|
|
2091
|
+
return /* @__PURE__ */ jsx24(
|
|
2092
|
+
"div",
|
|
2093
|
+
{
|
|
2094
|
+
"data-slot": "sidebar-header",
|
|
2095
|
+
"data-sidebar": "header",
|
|
2096
|
+
className: cn11("flex flex-col gap-2 p-2", className),
|
|
2097
|
+
...props
|
|
2098
|
+
}
|
|
2099
|
+
);
|
|
2100
|
+
}
|
|
2101
|
+
function SidebarFooter({ className, ...props }) {
|
|
2102
|
+
return /* @__PURE__ */ jsx24(
|
|
2103
|
+
"div",
|
|
2104
|
+
{
|
|
2105
|
+
"data-slot": "sidebar-footer",
|
|
2106
|
+
"data-sidebar": "footer",
|
|
2107
|
+
className: cn11("flex flex-col gap-2 p-2", className),
|
|
2108
|
+
...props
|
|
2109
|
+
}
|
|
2110
|
+
);
|
|
2111
|
+
}
|
|
2112
|
+
function SidebarSeparator({
|
|
2113
|
+
className,
|
|
2114
|
+
...props
|
|
2115
|
+
}) {
|
|
2116
|
+
return /* @__PURE__ */ jsx24(
|
|
2117
|
+
Separator,
|
|
2118
|
+
{
|
|
2119
|
+
"data-slot": "sidebar-separator",
|
|
2120
|
+
"data-sidebar": "separator",
|
|
2121
|
+
className: cn11("mx-2 w-auto bg-sidebar-border", className),
|
|
2122
|
+
...props
|
|
2123
|
+
}
|
|
2124
|
+
);
|
|
2125
|
+
}
|
|
2126
|
+
function SidebarContent({ className, ...props }) {
|
|
2127
|
+
return /* @__PURE__ */ jsx24(
|
|
2128
|
+
"div",
|
|
2129
|
+
{
|
|
2130
|
+
"data-slot": "sidebar-content",
|
|
2131
|
+
"data-sidebar": "content",
|
|
2132
|
+
className: cn11(
|
|
2133
|
+
"no-scrollbar flex min-h-0 flex-1 flex-col gap-0 overflow-auto group-data-[collapsible=icon]:overflow-hidden",
|
|
2134
|
+
className
|
|
2135
|
+
),
|
|
2136
|
+
...props
|
|
2137
|
+
}
|
|
2138
|
+
);
|
|
2139
|
+
}
|
|
2140
|
+
function SidebarGroup({ className, ...props }) {
|
|
2141
|
+
return /* @__PURE__ */ jsx24(
|
|
2142
|
+
"div",
|
|
2143
|
+
{
|
|
2144
|
+
"data-slot": "sidebar-group",
|
|
2145
|
+
"data-sidebar": "group",
|
|
2146
|
+
className: cn11("relative flex w-full min-w-0 flex-col p-2", className),
|
|
2147
|
+
...props
|
|
2148
|
+
}
|
|
2149
|
+
);
|
|
2150
|
+
}
|
|
2151
|
+
function SidebarGroupLabel({
|
|
2152
|
+
className,
|
|
2153
|
+
render,
|
|
2154
|
+
...props
|
|
2155
|
+
}) {
|
|
2156
|
+
return useRender({
|
|
2157
|
+
defaultTagName: "div",
|
|
2158
|
+
props: mergeProps(
|
|
2159
|
+
{
|
|
2160
|
+
className: cn11(
|
|
2161
|
+
"flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium text-sidebar-foreground/70 ring-sidebar-ring outline-hidden transition-[margin,opacity] duration-200 ease-linear group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0 focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0",
|
|
2162
|
+
className
|
|
2163
|
+
)
|
|
2164
|
+
},
|
|
2165
|
+
props
|
|
2166
|
+
),
|
|
2167
|
+
render,
|
|
2168
|
+
state: {
|
|
2169
|
+
slot: "sidebar-group-label",
|
|
2170
|
+
sidebar: "group-label"
|
|
2171
|
+
}
|
|
2172
|
+
});
|
|
2173
|
+
}
|
|
2174
|
+
function SidebarGroupAction({
|
|
2175
|
+
className,
|
|
2176
|
+
render,
|
|
2177
|
+
...props
|
|
2178
|
+
}) {
|
|
2179
|
+
return useRender({
|
|
2180
|
+
defaultTagName: "button",
|
|
2181
|
+
props: mergeProps(
|
|
2182
|
+
{
|
|
2183
|
+
className: cn11(
|
|
2184
|
+
"absolute top-3.5 right-3 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform group-data-[collapsible=icon]:hidden after:absolute after:-inset-2 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 md:after:hidden [&>svg]:size-4 [&>svg]:shrink-0",
|
|
2185
|
+
className
|
|
2186
|
+
)
|
|
2187
|
+
},
|
|
2188
|
+
props
|
|
2189
|
+
),
|
|
2190
|
+
render,
|
|
2191
|
+
state: {
|
|
2192
|
+
slot: "sidebar-group-action",
|
|
2193
|
+
sidebar: "group-action"
|
|
2194
|
+
}
|
|
2195
|
+
});
|
|
2196
|
+
}
|
|
2197
|
+
function SidebarGroupContent({
|
|
2198
|
+
className,
|
|
2199
|
+
...props
|
|
2200
|
+
}) {
|
|
2201
|
+
return /* @__PURE__ */ jsx24(
|
|
2202
|
+
"div",
|
|
2203
|
+
{
|
|
2204
|
+
"data-slot": "sidebar-group-content",
|
|
2205
|
+
"data-sidebar": "group-content",
|
|
2206
|
+
className: cn11("w-full text-sm", className),
|
|
2207
|
+
...props
|
|
2208
|
+
}
|
|
2209
|
+
);
|
|
2210
|
+
}
|
|
2211
|
+
function SidebarMenu({ className, ...props }) {
|
|
2212
|
+
return /* @__PURE__ */ jsx24(
|
|
2213
|
+
"ul",
|
|
2214
|
+
{
|
|
2215
|
+
"data-slot": "sidebar-menu",
|
|
2216
|
+
"data-sidebar": "menu",
|
|
2217
|
+
className: cn11("flex w-full min-w-0 flex-col gap-0", className),
|
|
2218
|
+
...props
|
|
2219
|
+
}
|
|
2220
|
+
);
|
|
2221
|
+
}
|
|
2222
|
+
function SidebarMenuItem({ className, ...props }) {
|
|
2223
|
+
return /* @__PURE__ */ jsx24(
|
|
2224
|
+
"li",
|
|
2225
|
+
{
|
|
2226
|
+
"data-slot": "sidebar-menu-item",
|
|
2227
|
+
"data-sidebar": "menu-item",
|
|
2228
|
+
className: cn11("group/menu-item relative", className),
|
|
2229
|
+
...props
|
|
2230
|
+
}
|
|
2231
|
+
);
|
|
2232
|
+
}
|
|
2233
|
+
var sidebarMenuButtonVariants = cva9(
|
|
2234
|
+
"peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm ring-sidebar-ring outline-hidden transition-[width,height,padding] group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate",
|
|
2235
|
+
{
|
|
2236
|
+
variants: {
|
|
2237
|
+
variant: {
|
|
2238
|
+
default: "hover:bg-sidebar-accent hover:text-sidebar-accent-foreground",
|
|
2239
|
+
outline: "bg-background shadow-[0_0_0_1px_var(--sidebar-border)] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_var(--sidebar-accent)]"
|
|
2240
|
+
},
|
|
2241
|
+
size: {
|
|
2242
|
+
default: "h-8 text-sm",
|
|
2243
|
+
sm: "h-7 text-xs",
|
|
2244
|
+
lg: "h-12 text-sm group-data-[collapsible=icon]:p-0!"
|
|
2245
|
+
}
|
|
2246
|
+
},
|
|
2247
|
+
defaultVariants: {
|
|
2248
|
+
variant: "default",
|
|
2249
|
+
size: "default"
|
|
2250
|
+
}
|
|
2251
|
+
}
|
|
2252
|
+
);
|
|
2253
|
+
function SidebarMenuButton({
|
|
2254
|
+
render,
|
|
2255
|
+
isActive = false,
|
|
2256
|
+
variant = "default",
|
|
2257
|
+
size = "default",
|
|
2258
|
+
tooltip,
|
|
2259
|
+
className,
|
|
2260
|
+
...props
|
|
2261
|
+
}) {
|
|
2262
|
+
const { isMobile, state } = useSidebar();
|
|
2263
|
+
const comp = useRender({
|
|
2264
|
+
defaultTagName: "button",
|
|
2265
|
+
props: mergeProps(
|
|
2266
|
+
{
|
|
2267
|
+
className: cn11(sidebarMenuButtonVariants({ variant, size }), className)
|
|
2268
|
+
},
|
|
2269
|
+
props
|
|
2270
|
+
),
|
|
2271
|
+
render: !tooltip ? render : /* @__PURE__ */ jsx24(TooltipTrigger, { render }),
|
|
2272
|
+
state: {
|
|
2273
|
+
slot: "sidebar-menu-button",
|
|
2274
|
+
sidebar: "menu-button",
|
|
2275
|
+
size,
|
|
2276
|
+
active: isActive
|
|
2277
|
+
}
|
|
2278
|
+
});
|
|
2279
|
+
if (!tooltip) {
|
|
2280
|
+
return comp;
|
|
2281
|
+
}
|
|
2282
|
+
if (typeof tooltip === "string") {
|
|
2283
|
+
tooltip = {
|
|
2284
|
+
children: tooltip
|
|
2285
|
+
};
|
|
2286
|
+
}
|
|
2287
|
+
return /* @__PURE__ */ jsxs13(Tooltip, { children: [
|
|
2288
|
+
comp,
|
|
2289
|
+
/* @__PURE__ */ jsx24(
|
|
2290
|
+
TooltipContent,
|
|
2291
|
+
{
|
|
2292
|
+
side: "right",
|
|
2293
|
+
align: "center",
|
|
2294
|
+
hidden: state !== "collapsed" || isMobile,
|
|
2295
|
+
...tooltip
|
|
2296
|
+
}
|
|
2297
|
+
)
|
|
2298
|
+
] });
|
|
2299
|
+
}
|
|
2300
|
+
function SidebarMenuAction({
|
|
2301
|
+
className,
|
|
2302
|
+
render,
|
|
2303
|
+
showOnHover = false,
|
|
2304
|
+
...props
|
|
2305
|
+
}) {
|
|
2306
|
+
return useRender({
|
|
2307
|
+
defaultTagName: "button",
|
|
2308
|
+
props: mergeProps(
|
|
2309
|
+
{
|
|
2310
|
+
className: cn11(
|
|
2311
|
+
"absolute top-1.5 right-1 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform group-data-[collapsible=icon]:hidden peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[size=default]/menu-button:top-1.5 peer-data-[size=lg]/menu-button:top-2.5 peer-data-[size=sm]/menu-button:top-1 after:absolute after:-inset-2 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 md:after:hidden [&>svg]:size-4 [&>svg]:shrink-0",
|
|
2312
|
+
showOnHover && "group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 peer-data-active/menu-button:text-sidebar-accent-foreground aria-expanded:opacity-100 md:opacity-0",
|
|
2313
|
+
className
|
|
2314
|
+
)
|
|
2315
|
+
},
|
|
2316
|
+
props
|
|
2317
|
+
),
|
|
2318
|
+
render,
|
|
2319
|
+
state: {
|
|
2320
|
+
slot: "sidebar-menu-action",
|
|
2321
|
+
sidebar: "menu-action"
|
|
2322
|
+
}
|
|
2323
|
+
});
|
|
2324
|
+
}
|
|
2325
|
+
function SidebarMenuBadge({
|
|
2326
|
+
className,
|
|
2327
|
+
...props
|
|
2328
|
+
}) {
|
|
2329
|
+
return /* @__PURE__ */ jsx24(
|
|
2330
|
+
"div",
|
|
2331
|
+
{
|
|
2332
|
+
"data-slot": "sidebar-menu-badge",
|
|
2333
|
+
"data-sidebar": "menu-badge",
|
|
2334
|
+
className: cn11(
|
|
2335
|
+
"pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium text-sidebar-foreground tabular-nums select-none group-data-[collapsible=icon]:hidden peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[size=default]/menu-button:top-1.5 peer-data-[size=lg]/menu-button:top-2.5 peer-data-[size=sm]/menu-button:top-1 peer-data-active/menu-button:text-sidebar-accent-foreground",
|
|
2336
|
+
className
|
|
2337
|
+
),
|
|
2338
|
+
...props
|
|
2339
|
+
}
|
|
2340
|
+
);
|
|
2341
|
+
}
|
|
2342
|
+
function SidebarMenuSkeleton({
|
|
2343
|
+
className,
|
|
2344
|
+
showIcon = false,
|
|
2345
|
+
...props
|
|
2346
|
+
}) {
|
|
2347
|
+
const [width] = React15.useState(() => {
|
|
2348
|
+
return `${Math.floor(Math.random() * 40) + 50}%`;
|
|
2349
|
+
});
|
|
2350
|
+
return /* @__PURE__ */ jsxs13(
|
|
2351
|
+
"div",
|
|
2352
|
+
{
|
|
2353
|
+
"data-slot": "sidebar-menu-skeleton",
|
|
2354
|
+
"data-sidebar": "menu-skeleton",
|
|
2355
|
+
className: cn11("flex h-8 items-center gap-2 rounded-md px-2", className),
|
|
2356
|
+
...props,
|
|
2357
|
+
children: [
|
|
2358
|
+
showIcon && /* @__PURE__ */ jsx24(
|
|
2359
|
+
Skeleton,
|
|
2360
|
+
{
|
|
2361
|
+
className: "size-4 rounded-md",
|
|
2362
|
+
"data-sidebar": "menu-skeleton-icon"
|
|
2363
|
+
}
|
|
2364
|
+
),
|
|
2365
|
+
/* @__PURE__ */ jsx24(
|
|
2366
|
+
Skeleton,
|
|
2367
|
+
{
|
|
2368
|
+
className: "h-4 max-w-(--skeleton-width) flex-1",
|
|
2369
|
+
"data-sidebar": "menu-skeleton-text",
|
|
2370
|
+
style: {
|
|
2371
|
+
"--skeleton-width": width
|
|
2372
|
+
}
|
|
2373
|
+
}
|
|
2374
|
+
)
|
|
2375
|
+
]
|
|
2376
|
+
}
|
|
2377
|
+
);
|
|
2378
|
+
}
|
|
2379
|
+
function SidebarMenuSub({ className, ...props }) {
|
|
2380
|
+
return /* @__PURE__ */ jsx24(
|
|
2381
|
+
"ul",
|
|
2382
|
+
{
|
|
2383
|
+
"data-slot": "sidebar-menu-sub",
|
|
2384
|
+
"data-sidebar": "menu-sub",
|
|
2385
|
+
className: cn11(
|
|
2386
|
+
"mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l border-sidebar-border px-2.5 py-0.5 group-data-[collapsible=icon]:hidden",
|
|
2387
|
+
className
|
|
2388
|
+
),
|
|
2389
|
+
...props
|
|
2390
|
+
}
|
|
2391
|
+
);
|
|
2392
|
+
}
|
|
2393
|
+
function SidebarMenuSubItem({
|
|
2394
|
+
className,
|
|
2395
|
+
...props
|
|
2396
|
+
}) {
|
|
2397
|
+
return /* @__PURE__ */ jsx24(
|
|
2398
|
+
"li",
|
|
2399
|
+
{
|
|
2400
|
+
"data-slot": "sidebar-menu-sub-item",
|
|
2401
|
+
"data-sidebar": "menu-sub-item",
|
|
2402
|
+
className: cn11("group/menu-sub-item relative", className),
|
|
2403
|
+
...props
|
|
2404
|
+
}
|
|
2405
|
+
);
|
|
2406
|
+
}
|
|
2407
|
+
function SidebarMenuSubButton({
|
|
2408
|
+
render,
|
|
2409
|
+
size = "md",
|
|
2410
|
+
isActive = false,
|
|
2411
|
+
className,
|
|
2412
|
+
...props
|
|
2413
|
+
}) {
|
|
2414
|
+
return useRender({
|
|
2415
|
+
defaultTagName: "a",
|
|
2416
|
+
props: mergeProps(
|
|
2417
|
+
{
|
|
2418
|
+
className: cn11(
|
|
2419
|
+
"flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 text-sidebar-foreground ring-sidebar-ring outline-hidden group-data-[collapsible=icon]:hidden hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[size=md]:text-sm data-[size=sm]:text-xs data-active:bg-sidebar-accent data-active:text-sidebar-accent-foreground [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:text-sidebar-accent-foreground",
|
|
2420
|
+
className
|
|
2421
|
+
)
|
|
2422
|
+
},
|
|
2423
|
+
props
|
|
2424
|
+
),
|
|
2425
|
+
render,
|
|
2426
|
+
state: {
|
|
2427
|
+
slot: "sidebar-menu-sub-button",
|
|
2428
|
+
sidebar: "menu-sub-button",
|
|
2429
|
+
size,
|
|
2430
|
+
active: isActive
|
|
2431
|
+
}
|
|
2432
|
+
});
|
|
2433
|
+
}
|
|
2434
|
+
|
|
2435
|
+
// src/components/sidebar/Sidebar.tsx
|
|
2436
|
+
import { jsx as jsx25, jsxs as jsxs14 } from "react/jsx-runtime";
|
|
2437
|
+
var iconModeButtonClasses = "group-data-[collapsible=icon]:w-10! group-data-[collapsible=icon]:h-10! group-data-[collapsible=icon]:px-3!";
|
|
2438
|
+
var sizingMenuButtonClasses = "text-base px-3 py-2 h-auto";
|
|
2439
|
+
var sizingSubButtonClasses = "data-[size=md]:text-base data-[size=sm]:text-base px-3 py-2 h-auto";
|
|
2440
|
+
function SidebarGroupLabel2({
|
|
2441
|
+
className,
|
|
2442
|
+
...props
|
|
2443
|
+
}) {
|
|
2444
|
+
return /* @__PURE__ */ jsx25(
|
|
2445
|
+
SidebarGroupLabel,
|
|
2446
|
+
{
|
|
2447
|
+
className: cn("px-3 uppercase tracking-caption", className),
|
|
2448
|
+
...props
|
|
2449
|
+
}
|
|
2450
|
+
);
|
|
2451
|
+
}
|
|
2452
|
+
function SidebarProvider2({
|
|
2453
|
+
className,
|
|
2454
|
+
style,
|
|
2455
|
+
...props
|
|
2456
|
+
}) {
|
|
2457
|
+
return /* @__PURE__ */ jsx25(
|
|
2458
|
+
SidebarProvider,
|
|
2459
|
+
{
|
|
2460
|
+
className,
|
|
2461
|
+
style: {
|
|
2462
|
+
"--sidebar-width-icon": "3.75rem",
|
|
2463
|
+
...style
|
|
2464
|
+
},
|
|
2465
|
+
...props
|
|
2466
|
+
}
|
|
2467
|
+
);
|
|
2468
|
+
}
|
|
2469
|
+
function SidebarGroup2({ className, ...props }) {
|
|
2470
|
+
return /* @__PURE__ */ jsx25(
|
|
2471
|
+
SidebarGroup,
|
|
2472
|
+
{
|
|
2473
|
+
className: cn("group-data-[collapsible=icon]:px-2.5", className),
|
|
2474
|
+
...props
|
|
2475
|
+
}
|
|
2476
|
+
);
|
|
2477
|
+
}
|
|
2478
|
+
function SidebarFooter2({
|
|
2479
|
+
className,
|
|
2480
|
+
...props
|
|
2481
|
+
}) {
|
|
2482
|
+
return /* @__PURE__ */ jsx25(
|
|
2483
|
+
SidebarFooter,
|
|
2484
|
+
{
|
|
2485
|
+
className: cn(
|
|
2486
|
+
"group-data-[collapsible=icon]:px-2.5 border-t border-berget-border",
|
|
2487
|
+
className
|
|
2488
|
+
),
|
|
2489
|
+
...props
|
|
2490
|
+
}
|
|
2491
|
+
);
|
|
2492
|
+
}
|
|
2493
|
+
function SidebarHeader2({
|
|
2494
|
+
className,
|
|
2495
|
+
...props
|
|
2496
|
+
}) {
|
|
2497
|
+
return /* @__PURE__ */ jsx25(
|
|
2498
|
+
SidebarHeader,
|
|
2499
|
+
{
|
|
2500
|
+
className: cn(
|
|
2501
|
+
"py-0 group-data-[collapsible=icon]:px-0 border-b border-berget-border",
|
|
2502
|
+
className
|
|
2503
|
+
),
|
|
2504
|
+
...props
|
|
2505
|
+
}
|
|
2506
|
+
);
|
|
2507
|
+
}
|
|
2508
|
+
function SidebarLogo() {
|
|
2509
|
+
return /* @__PURE__ */ jsx25(SidebarHeader, { className: "px-0", children: /* @__PURE__ */ jsxs14("div", { className: "relative flex h-15 items-center overflow-hidden px-3", children: [
|
|
2510
|
+
/* @__PURE__ */ jsx25(
|
|
2511
|
+
BergetLogo,
|
|
2512
|
+
{
|
|
2513
|
+
variant: "logotype",
|
|
2514
|
+
size: 32,
|
|
2515
|
+
className: "shrink-0 transition-[opacity,visibility] duration-150 group-data-[collapsible=icon]:pointer-events-none group-data-[collapsible=icon]:invisible group-data-[collapsible=icon]:opacity-0"
|
|
2516
|
+
}
|
|
2517
|
+
),
|
|
2518
|
+
/* @__PURE__ */ jsx25("span", { className: "pointer-events-none invisible absolute inset-y-0 left-0 w-15 flex items-center justify-center px-3 opacity-0 transition-[opacity,visibility] duration-150 group-data-[collapsible=icon]:visible group-data-[collapsible=icon]:opacity-100", children: /* @__PURE__ */ jsx25(BergetLogo, { variant: "symbol", size: 32 }) })
|
|
2519
|
+
] }) });
|
|
2520
|
+
}
|
|
2521
|
+
function SidebarPageHeader({ className, ...props }) {
|
|
2522
|
+
return /* @__PURE__ */ jsx25(
|
|
2523
|
+
"header",
|
|
2524
|
+
{
|
|
2525
|
+
className: cn(
|
|
2526
|
+
"flex h-[calc(3.75rem+1px)] items-center gap-2 border-b border-berget-border px-4",
|
|
2527
|
+
className
|
|
2528
|
+
),
|
|
2529
|
+
...props
|
|
2530
|
+
}
|
|
2531
|
+
);
|
|
2532
|
+
}
|
|
2533
|
+
function SidebarMenuButton2({ className, ...props }) {
|
|
2534
|
+
return /* @__PURE__ */ jsx25(
|
|
2535
|
+
SidebarMenuButton,
|
|
2536
|
+
{
|
|
2537
|
+
className: cn(sizingMenuButtonClasses, iconModeButtonClasses, className),
|
|
2538
|
+
...props
|
|
2539
|
+
}
|
|
2540
|
+
);
|
|
2541
|
+
}
|
|
2542
|
+
function SidebarMenuSubButton2({ className, ...props }) {
|
|
2543
|
+
return /* @__PURE__ */ jsx25(
|
|
2544
|
+
SidebarMenuSubButton,
|
|
2545
|
+
{
|
|
2546
|
+
className: cn(sizingSubButtonClasses, "[&>svg]:text-inherit", className),
|
|
2547
|
+
...props
|
|
2548
|
+
}
|
|
2549
|
+
);
|
|
1579
2550
|
}
|
|
1580
2551
|
|
|
1581
2552
|
// src/components/table/Table.tsx
|
|
1582
|
-
import * as
|
|
2553
|
+
import * as React16 from "react";
|
|
1583
2554
|
|
|
1584
2555
|
// src/primitives/table.tsx
|
|
1585
|
-
import { cn as
|
|
1586
|
-
import { jsx as
|
|
2556
|
+
import { cn as cn12 } from "cn";
|
|
2557
|
+
import { jsx as jsx26 } from "react/jsx-runtime";
|
|
1587
2558
|
function Table({ className, ...props }) {
|
|
1588
|
-
return /* @__PURE__ */
|
|
2559
|
+
return /* @__PURE__ */ jsx26(
|
|
1589
2560
|
"div",
|
|
1590
2561
|
{
|
|
1591
2562
|
"data-slot": "table-container",
|
|
1592
2563
|
className: "relative w-full overflow-x-auto",
|
|
1593
|
-
children: /* @__PURE__ */
|
|
2564
|
+
children: /* @__PURE__ */ jsx26(
|
|
1594
2565
|
"table",
|
|
1595
2566
|
{
|
|
1596
2567
|
"data-slot": "table",
|
|
1597
|
-
className:
|
|
2568
|
+
className: cn12("w-full caption-bottom text-sm", className),
|
|
1598
2569
|
...props
|
|
1599
2570
|
}
|
|
1600
2571
|
)
|
|
@@ -1602,31 +2573,31 @@ function Table({ className, ...props }) {
|
|
|
1602
2573
|
);
|
|
1603
2574
|
}
|
|
1604
2575
|
function TableHeader({ className, ...props }) {
|
|
1605
|
-
return /* @__PURE__ */
|
|
2576
|
+
return /* @__PURE__ */ jsx26(
|
|
1606
2577
|
"thead",
|
|
1607
2578
|
{
|
|
1608
2579
|
"data-slot": "table-header",
|
|
1609
|
-
className:
|
|
2580
|
+
className: cn12("[&_tr]:border-b", className),
|
|
1610
2581
|
...props
|
|
1611
2582
|
}
|
|
1612
2583
|
);
|
|
1613
2584
|
}
|
|
1614
2585
|
function TableBody({ className, ...props }) {
|
|
1615
|
-
return /* @__PURE__ */
|
|
2586
|
+
return /* @__PURE__ */ jsx26(
|
|
1616
2587
|
"tbody",
|
|
1617
2588
|
{
|
|
1618
2589
|
"data-slot": "table-body",
|
|
1619
|
-
className:
|
|
2590
|
+
className: cn12("[&_tr:last-child]:border-0", className),
|
|
1620
2591
|
...props
|
|
1621
2592
|
}
|
|
1622
2593
|
);
|
|
1623
2594
|
}
|
|
1624
2595
|
function TableFooter({ className, ...props }) {
|
|
1625
|
-
return /* @__PURE__ */
|
|
2596
|
+
return /* @__PURE__ */ jsx26(
|
|
1626
2597
|
"tfoot",
|
|
1627
2598
|
{
|
|
1628
2599
|
"data-slot": "table-footer",
|
|
1629
|
-
className:
|
|
2600
|
+
className: cn12(
|
|
1630
2601
|
"border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",
|
|
1631
2602
|
className
|
|
1632
2603
|
),
|
|
@@ -1635,11 +2606,11 @@ function TableFooter({ className, ...props }) {
|
|
|
1635
2606
|
);
|
|
1636
2607
|
}
|
|
1637
2608
|
function TableRow({ className, ...props }) {
|
|
1638
|
-
return /* @__PURE__ */
|
|
2609
|
+
return /* @__PURE__ */ jsx26(
|
|
1639
2610
|
"tr",
|
|
1640
2611
|
{
|
|
1641
2612
|
"data-slot": "table-row",
|
|
1642
|
-
className:
|
|
2613
|
+
className: cn12(
|
|
1643
2614
|
"border-b transition-colors hover:bg-muted/50 has-aria-expanded:bg-muted/50 data-[state=selected]:bg-muted",
|
|
1644
2615
|
className
|
|
1645
2616
|
),
|
|
@@ -1648,11 +2619,11 @@ function TableRow({ className, ...props }) {
|
|
|
1648
2619
|
);
|
|
1649
2620
|
}
|
|
1650
2621
|
function TableHead({ className, ...props }) {
|
|
1651
|
-
return /* @__PURE__ */
|
|
2622
|
+
return /* @__PURE__ */ jsx26(
|
|
1652
2623
|
"th",
|
|
1653
2624
|
{
|
|
1654
2625
|
"data-slot": "table-head",
|
|
1655
|
-
className:
|
|
2626
|
+
className: cn12(
|
|
1656
2627
|
"h-10 px-2 text-left align-middle font-medium whitespace-nowrap text-foreground [&:has([role=checkbox])]:pr-0",
|
|
1657
2628
|
className
|
|
1658
2629
|
),
|
|
@@ -1661,11 +2632,11 @@ function TableHead({ className, ...props }) {
|
|
|
1661
2632
|
);
|
|
1662
2633
|
}
|
|
1663
2634
|
function TableCell({ className, ...props }) {
|
|
1664
|
-
return /* @__PURE__ */
|
|
2635
|
+
return /* @__PURE__ */ jsx26(
|
|
1665
2636
|
"td",
|
|
1666
2637
|
{
|
|
1667
2638
|
"data-slot": "table-cell",
|
|
1668
|
-
className:
|
|
2639
|
+
className: cn12(
|
|
1669
2640
|
"p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0",
|
|
1670
2641
|
className
|
|
1671
2642
|
),
|
|
@@ -1677,23 +2648,23 @@ function TableCaption({
|
|
|
1677
2648
|
className,
|
|
1678
2649
|
...props
|
|
1679
2650
|
}) {
|
|
1680
|
-
return /* @__PURE__ */
|
|
2651
|
+
return /* @__PURE__ */ jsx26(
|
|
1681
2652
|
"caption",
|
|
1682
2653
|
{
|
|
1683
2654
|
"data-slot": "table-caption",
|
|
1684
|
-
className:
|
|
2655
|
+
className: cn12("mt-4 text-sm text-muted-foreground", className),
|
|
1685
2656
|
...props
|
|
1686
2657
|
}
|
|
1687
2658
|
);
|
|
1688
2659
|
}
|
|
1689
2660
|
|
|
1690
2661
|
// src/components/table/Table.tsx
|
|
1691
|
-
import { jsx as
|
|
1692
|
-
var Table2 =
|
|
1693
|
-
({ className, ...props }, ref) => /* @__PURE__ */
|
|
2662
|
+
import { jsx as jsx27 } from "react/jsx-runtime";
|
|
2663
|
+
var Table2 = React16.forwardRef(
|
|
2664
|
+
({ className, ...props }, ref) => /* @__PURE__ */ jsx27(Table, { ref, className, ...props })
|
|
1694
2665
|
);
|
|
1695
2666
|
Table2.displayName = "Table";
|
|
1696
|
-
var TableHeader2 =
|
|
2667
|
+
var TableHeader2 = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx27(
|
|
1697
2668
|
TableHeader,
|
|
1698
2669
|
{
|
|
1699
2670
|
ref,
|
|
@@ -1702,7 +2673,7 @@ var TableHeader2 = React14.forwardRef(({ className, ...props }, ref) => /* @__PU
|
|
|
1702
2673
|
}
|
|
1703
2674
|
));
|
|
1704
2675
|
TableHeader2.displayName = "TableHeader";
|
|
1705
|
-
var TableBody2 =
|
|
2676
|
+
var TableBody2 = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx27(
|
|
1706
2677
|
TableBody,
|
|
1707
2678
|
{
|
|
1708
2679
|
ref,
|
|
@@ -1711,7 +2682,7 @@ var TableBody2 = React14.forwardRef(({ className, ...props }, ref) => /* @__PURE
|
|
|
1711
2682
|
}
|
|
1712
2683
|
));
|
|
1713
2684
|
TableBody2.displayName = "TableBody";
|
|
1714
|
-
var TableFooter2 =
|
|
2685
|
+
var TableFooter2 = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx27(
|
|
1715
2686
|
TableFooter,
|
|
1716
2687
|
{
|
|
1717
2688
|
ref,
|
|
@@ -1723,8 +2694,8 @@ var TableFooter2 = React14.forwardRef(({ className, ...props }, ref) => /* @__PU
|
|
|
1723
2694
|
}
|
|
1724
2695
|
));
|
|
1725
2696
|
TableFooter2.displayName = "TableFooter";
|
|
1726
|
-
var TableRow2 =
|
|
1727
|
-
({ className, ...props }, ref) => /* @__PURE__ */
|
|
2697
|
+
var TableRow2 = React16.forwardRef(
|
|
2698
|
+
({ className, ...props }, ref) => /* @__PURE__ */ jsx27(
|
|
1728
2699
|
TableRow,
|
|
1729
2700
|
{
|
|
1730
2701
|
ref,
|
|
@@ -1737,7 +2708,7 @@ var TableRow2 = React14.forwardRef(
|
|
|
1737
2708
|
)
|
|
1738
2709
|
);
|
|
1739
2710
|
TableRow2.displayName = "TableRow";
|
|
1740
|
-
var TableHead2 =
|
|
2711
|
+
var TableHead2 = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx27(
|
|
1741
2712
|
TableHead,
|
|
1742
2713
|
{
|
|
1743
2714
|
ref,
|
|
@@ -1749,7 +2720,7 @@ var TableHead2 = React14.forwardRef(({ className, ...props }, ref) => /* @__PURE
|
|
|
1749
2720
|
}
|
|
1750
2721
|
));
|
|
1751
2722
|
TableHead2.displayName = "TableHead";
|
|
1752
|
-
var TableCell2 =
|
|
2723
|
+
var TableCell2 = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx27(
|
|
1753
2724
|
TableCell,
|
|
1754
2725
|
{
|
|
1755
2726
|
ref,
|
|
@@ -1758,7 +2729,7 @@ var TableCell2 = React14.forwardRef(({ className, ...props }, ref) => /* @__PURE
|
|
|
1758
2729
|
}
|
|
1759
2730
|
));
|
|
1760
2731
|
TableCell2.displayName = "TableCell";
|
|
1761
|
-
var TableCaption2 =
|
|
2732
|
+
var TableCaption2 = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx27(
|
|
1762
2733
|
TableCaption,
|
|
1763
2734
|
{
|
|
1764
2735
|
ref,
|
|
@@ -1769,46 +2740,21 @@ var TableCaption2 = React14.forwardRef(({ className, ...props }, ref) => /* @__P
|
|
|
1769
2740
|
TableCaption2.displayName = "TableCaption";
|
|
1770
2741
|
|
|
1771
2742
|
// src/components/item/Item.tsx
|
|
1772
|
-
import * as
|
|
1773
|
-
|
|
1774
|
-
// src/primitives/item.tsx
|
|
1775
|
-
import { mergeProps } from "@base-ui/react/merge-props";
|
|
1776
|
-
import { useRender } from "@base-ui/react/use-render";
|
|
1777
|
-
import { cva as cva9 } from "class-variance-authority";
|
|
1778
|
-
import { cn as cn8 } from "cn";
|
|
1779
|
-
|
|
1780
|
-
// src/primitives/separator.tsx
|
|
1781
|
-
import { Separator as SeparatorPrimitive } from "@base-ui/react/separator";
|
|
1782
|
-
import { cn as cn7 } from "cn";
|
|
1783
|
-
import { jsx as jsx21 } from "react/jsx-runtime";
|
|
1784
|
-
function Separator({
|
|
1785
|
-
className,
|
|
1786
|
-
orientation = "horizontal",
|
|
1787
|
-
...props
|
|
1788
|
-
}) {
|
|
1789
|
-
return /* @__PURE__ */ jsx21(
|
|
1790
|
-
SeparatorPrimitive,
|
|
1791
|
-
{
|
|
1792
|
-
"data-slot": "separator",
|
|
1793
|
-
orientation,
|
|
1794
|
-
className: cn7(
|
|
1795
|
-
"shrink-0 bg-border data-horizontal:h-px data-horizontal:w-full data-vertical:w-px data-vertical:self-stretch",
|
|
1796
|
-
className
|
|
1797
|
-
),
|
|
1798
|
-
...props
|
|
1799
|
-
}
|
|
1800
|
-
);
|
|
1801
|
-
}
|
|
2743
|
+
import * as React17 from "react";
|
|
1802
2744
|
|
|
1803
2745
|
// src/primitives/item.tsx
|
|
1804
|
-
import {
|
|
2746
|
+
import { mergeProps as mergeProps2 } from "@base-ui/react/merge-props";
|
|
2747
|
+
import { useRender as useRender2 } from "@base-ui/react/use-render";
|
|
2748
|
+
import { cva as cva10 } from "class-variance-authority";
|
|
2749
|
+
import { cn as cn13 } from "cn";
|
|
2750
|
+
import { jsx as jsx28 } from "react/jsx-runtime";
|
|
1805
2751
|
function ItemGroup({ className, ...props }) {
|
|
1806
|
-
return /* @__PURE__ */
|
|
2752
|
+
return /* @__PURE__ */ jsx28(
|
|
1807
2753
|
"div",
|
|
1808
2754
|
{
|
|
1809
2755
|
role: "list",
|
|
1810
2756
|
"data-slot": "item-group",
|
|
1811
|
-
className:
|
|
2757
|
+
className: cn13(
|
|
1812
2758
|
"group/item-group flex w-full flex-col gap-4 has-data-[size=sm]:gap-2.5 has-data-[size=xs]:gap-2",
|
|
1813
2759
|
className
|
|
1814
2760
|
),
|
|
@@ -1820,17 +2766,17 @@ function ItemSeparator({
|
|
|
1820
2766
|
className,
|
|
1821
2767
|
...props
|
|
1822
2768
|
}) {
|
|
1823
|
-
return /* @__PURE__ */
|
|
2769
|
+
return /* @__PURE__ */ jsx28(
|
|
1824
2770
|
Separator,
|
|
1825
2771
|
{
|
|
1826
2772
|
"data-slot": "item-separator",
|
|
1827
2773
|
orientation: "horizontal",
|
|
1828
|
-
className:
|
|
2774
|
+
className: cn13("my-2", className),
|
|
1829
2775
|
...props
|
|
1830
2776
|
}
|
|
1831
2777
|
);
|
|
1832
2778
|
}
|
|
1833
|
-
var itemVariants =
|
|
2779
|
+
var itemVariants = cva10(
|
|
1834
2780
|
"group/item flex w-full flex-wrap items-center rounded-lg border text-sm transition-colors duration-100 outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 [a]:transition-colors [a]:hover:bg-muted",
|
|
1835
2781
|
{
|
|
1836
2782
|
variants: {
|
|
@@ -1858,11 +2804,11 @@ function Item({
|
|
|
1858
2804
|
render,
|
|
1859
2805
|
...props
|
|
1860
2806
|
}) {
|
|
1861
|
-
return
|
|
2807
|
+
return useRender2({
|
|
1862
2808
|
defaultTagName: "div",
|
|
1863
|
-
props:
|
|
2809
|
+
props: mergeProps2(
|
|
1864
2810
|
{
|
|
1865
|
-
className:
|
|
2811
|
+
className: cn13(itemVariants({ variant, size, className }))
|
|
1866
2812
|
},
|
|
1867
2813
|
props
|
|
1868
2814
|
),
|
|
@@ -1874,7 +2820,7 @@ function Item({
|
|
|
1874
2820
|
}
|
|
1875
2821
|
});
|
|
1876
2822
|
}
|
|
1877
|
-
var itemMediaVariants =
|
|
2823
|
+
var itemMediaVariants = cva10(
|
|
1878
2824
|
"flex shrink-0 items-center justify-center gap-2 group-has-data-[slot=item-description]/item:translate-y-0.5 group-has-data-[slot=item-description]/item:self-start [&_svg]:pointer-events-none",
|
|
1879
2825
|
{
|
|
1880
2826
|
variants: {
|
|
@@ -1894,22 +2840,22 @@ function ItemMedia({
|
|
|
1894
2840
|
variant = "default",
|
|
1895
2841
|
...props
|
|
1896
2842
|
}) {
|
|
1897
|
-
return /* @__PURE__ */
|
|
2843
|
+
return /* @__PURE__ */ jsx28(
|
|
1898
2844
|
"div",
|
|
1899
2845
|
{
|
|
1900
2846
|
"data-slot": "item-media",
|
|
1901
2847
|
"data-variant": variant,
|
|
1902
|
-
className:
|
|
2848
|
+
className: cn13(itemMediaVariants({ variant, className })),
|
|
1903
2849
|
...props
|
|
1904
2850
|
}
|
|
1905
2851
|
);
|
|
1906
2852
|
}
|
|
1907
2853
|
function ItemContent({ className, ...props }) {
|
|
1908
|
-
return /* @__PURE__ */
|
|
2854
|
+
return /* @__PURE__ */ jsx28(
|
|
1909
2855
|
"div",
|
|
1910
2856
|
{
|
|
1911
2857
|
"data-slot": "item-content",
|
|
1912
|
-
className:
|
|
2858
|
+
className: cn13(
|
|
1913
2859
|
"flex flex-1 flex-col gap-1 group-data-[size=xs]/item:gap-0 [&+[data-slot=item-content]]:flex-none",
|
|
1914
2860
|
className
|
|
1915
2861
|
),
|
|
@@ -1918,11 +2864,11 @@ function ItemContent({ className, ...props }) {
|
|
|
1918
2864
|
);
|
|
1919
2865
|
}
|
|
1920
2866
|
function ItemTitle({ className, ...props }) {
|
|
1921
|
-
return /* @__PURE__ */
|
|
2867
|
+
return /* @__PURE__ */ jsx28(
|
|
1922
2868
|
"div",
|
|
1923
2869
|
{
|
|
1924
2870
|
"data-slot": "item-title",
|
|
1925
|
-
className:
|
|
2871
|
+
className: cn13(
|
|
1926
2872
|
"line-clamp-1 flex w-fit items-center gap-2 text-sm leading-snug font-medium underline-offset-4",
|
|
1927
2873
|
className
|
|
1928
2874
|
),
|
|
@@ -1931,11 +2877,11 @@ function ItemTitle({ className, ...props }) {
|
|
|
1931
2877
|
);
|
|
1932
2878
|
}
|
|
1933
2879
|
function ItemDescription({ className, ...props }) {
|
|
1934
|
-
return /* @__PURE__ */
|
|
2880
|
+
return /* @__PURE__ */ jsx28(
|
|
1935
2881
|
"p",
|
|
1936
2882
|
{
|
|
1937
2883
|
"data-slot": "item-description",
|
|
1938
|
-
className:
|
|
2884
|
+
className: cn13(
|
|
1939
2885
|
"line-clamp-2 text-left text-sm leading-normal font-normal text-muted-foreground group-data-[size=xs]/item:text-xs [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary",
|
|
1940
2886
|
className
|
|
1941
2887
|
),
|
|
@@ -1944,21 +2890,21 @@ function ItemDescription({ className, ...props }) {
|
|
|
1944
2890
|
);
|
|
1945
2891
|
}
|
|
1946
2892
|
function ItemActions({ className, ...props }) {
|
|
1947
|
-
return /* @__PURE__ */
|
|
2893
|
+
return /* @__PURE__ */ jsx28(
|
|
1948
2894
|
"div",
|
|
1949
2895
|
{
|
|
1950
2896
|
"data-slot": "item-actions",
|
|
1951
|
-
className:
|
|
2897
|
+
className: cn13("flex items-center gap-2", className),
|
|
1952
2898
|
...props
|
|
1953
2899
|
}
|
|
1954
2900
|
);
|
|
1955
2901
|
}
|
|
1956
2902
|
function ItemHeader({ className, ...props }) {
|
|
1957
|
-
return /* @__PURE__ */
|
|
2903
|
+
return /* @__PURE__ */ jsx28(
|
|
1958
2904
|
"div",
|
|
1959
2905
|
{
|
|
1960
2906
|
"data-slot": "item-header",
|
|
1961
|
-
className:
|
|
2907
|
+
className: cn13(
|
|
1962
2908
|
"flex basis-full items-center justify-between gap-2",
|
|
1963
2909
|
className
|
|
1964
2910
|
),
|
|
@@ -1967,11 +2913,11 @@ function ItemHeader({ className, ...props }) {
|
|
|
1967
2913
|
);
|
|
1968
2914
|
}
|
|
1969
2915
|
function ItemFooter({ className, ...props }) {
|
|
1970
|
-
return /* @__PURE__ */
|
|
2916
|
+
return /* @__PURE__ */ jsx28(
|
|
1971
2917
|
"div",
|
|
1972
2918
|
{
|
|
1973
2919
|
"data-slot": "item-footer",
|
|
1974
|
-
className:
|
|
2920
|
+
className: cn13(
|
|
1975
2921
|
"flex basis-full items-center justify-between gap-2",
|
|
1976
2922
|
className
|
|
1977
2923
|
),
|
|
@@ -1981,9 +2927,9 @@ function ItemFooter({ className, ...props }) {
|
|
|
1981
2927
|
}
|
|
1982
2928
|
|
|
1983
2929
|
// src/components/item/Item.tsx
|
|
1984
|
-
import { jsx as
|
|
2930
|
+
import { jsx as jsx29 } from "react/jsx-runtime";
|
|
1985
2931
|
function Item2({ className, asChild, children, ...props }) {
|
|
1986
|
-
return /* @__PURE__ */
|
|
2932
|
+
return /* @__PURE__ */ jsx29(
|
|
1987
2933
|
Item,
|
|
1988
2934
|
{
|
|
1989
2935
|
render: asChild ? children : void 0,
|
|
@@ -2002,8 +2948,8 @@ function Item2({ className, asChild, children, ...props }) {
|
|
|
2002
2948
|
}
|
|
2003
2949
|
);
|
|
2004
2950
|
}
|
|
2005
|
-
var ItemMedia2 =
|
|
2006
|
-
return /* @__PURE__ */
|
|
2951
|
+
var ItemMedia2 = React17.forwardRef(({ className, ...props }, ref) => {
|
|
2952
|
+
return /* @__PURE__ */ jsx29(
|
|
2007
2953
|
ItemMedia,
|
|
2008
2954
|
{
|
|
2009
2955
|
ref,
|
|
@@ -2013,8 +2959,8 @@ var ItemMedia2 = React15.forwardRef(({ className, ...props }, ref) => {
|
|
|
2013
2959
|
);
|
|
2014
2960
|
});
|
|
2015
2961
|
ItemMedia2.displayName = "ItemMedia";
|
|
2016
|
-
var ItemTitle2 =
|
|
2017
|
-
return /* @__PURE__ */
|
|
2962
|
+
var ItemTitle2 = React17.forwardRef(({ className, ...props }, ref) => {
|
|
2963
|
+
return /* @__PURE__ */ jsx29(
|
|
2018
2964
|
ItemTitle,
|
|
2019
2965
|
{
|
|
2020
2966
|
ref,
|
|
@@ -2024,8 +2970,8 @@ var ItemTitle2 = React15.forwardRef(({ className, ...props }, ref) => {
|
|
|
2024
2970
|
);
|
|
2025
2971
|
});
|
|
2026
2972
|
ItemTitle2.displayName = "ItemTitle";
|
|
2027
|
-
var ItemDescription2 =
|
|
2028
|
-
return /* @__PURE__ */
|
|
2973
|
+
var ItemDescription2 = React17.forwardRef(({ className, ...props }, ref) => {
|
|
2974
|
+
return /* @__PURE__ */ jsx29(
|
|
2029
2975
|
ItemDescription,
|
|
2030
2976
|
{
|
|
2031
2977
|
ref,
|
|
@@ -2035,8 +2981,8 @@ var ItemDescription2 = React15.forwardRef(({ className, ...props }, ref) => {
|
|
|
2035
2981
|
);
|
|
2036
2982
|
});
|
|
2037
2983
|
ItemDescription2.displayName = "ItemDescription";
|
|
2038
|
-
var ItemSeparator2 =
|
|
2039
|
-
return /* @__PURE__ */
|
|
2984
|
+
var ItemSeparator2 = React17.forwardRef(({ className, ...props }, ref) => {
|
|
2985
|
+
return /* @__PURE__ */ jsx29(
|
|
2040
2986
|
ItemSeparator,
|
|
2041
2987
|
{
|
|
2042
2988
|
ref,
|
|
@@ -2048,36 +2994,15 @@ var ItemSeparator2 = React15.forwardRef(({ className, ...props }, ref) => {
|
|
|
2048
2994
|
ItemSeparator2.displayName = "ItemSeparator";
|
|
2049
2995
|
|
|
2050
2996
|
// src/components/input/Input.tsx
|
|
2051
|
-
import * as
|
|
2052
|
-
|
|
2053
|
-
|
|
2054
|
-
import { Input as InputPrimitive } from "@base-ui/react/input";
|
|
2055
|
-
import { cn as cn9 } from "cn";
|
|
2056
|
-
import { jsx as jsx24 } from "react/jsx-runtime";
|
|
2057
|
-
function Input({ className, type, ...props }) {
|
|
2058
|
-
return /* @__PURE__ */ jsx24(
|
|
2059
|
-
InputPrimitive,
|
|
2060
|
-
{
|
|
2061
|
-
type,
|
|
2062
|
-
"data-slot": "input",
|
|
2063
|
-
className: cn9(
|
|
2064
|
-
"h-8 w-full min-w-0 rounded-lg border border-input bg-transparent px-2.5 py-1 text-base transition-colors outline-none file:inline-flex file:h-6 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:bg-input/50 disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:disabled:bg-input/80 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40",
|
|
2065
|
-
className
|
|
2066
|
-
),
|
|
2067
|
-
...props
|
|
2068
|
-
}
|
|
2069
|
-
);
|
|
2070
|
-
}
|
|
2071
|
-
|
|
2072
|
-
// src/components/input/Input.tsx
|
|
2073
|
-
import { jsx as jsx25, jsxs as jsxs11 } from "react/jsx-runtime";
|
|
2074
|
-
var Input2 = React16.forwardRef(
|
|
2997
|
+
import * as React18 from "react";
|
|
2998
|
+
import { jsx as jsx30, jsxs as jsxs15 } from "react/jsx-runtime";
|
|
2999
|
+
var Input2 = React18.forwardRef(
|
|
2075
3000
|
({ className, icon, actionButton, label, description, error, id, disabled, ...props }, ref) => {
|
|
2076
|
-
const generatedId =
|
|
3001
|
+
const generatedId = React18.useId();
|
|
2077
3002
|
const inputId = id || generatedId;
|
|
2078
3003
|
const errorId = `${inputId}-error`;
|
|
2079
3004
|
const descriptionId = `${inputId}-description`;
|
|
2080
|
-
const inputElement = /* @__PURE__ */
|
|
3005
|
+
const inputElement = /* @__PURE__ */ jsx30(
|
|
2081
3006
|
Input,
|
|
2082
3007
|
{
|
|
2083
3008
|
ref,
|
|
@@ -2097,8 +3022,8 @@ var Input2 = React16.forwardRef(
|
|
|
2097
3022
|
}
|
|
2098
3023
|
);
|
|
2099
3024
|
if (!icon && !actionButton) {
|
|
2100
|
-
return /* @__PURE__ */
|
|
2101
|
-
label && /* @__PURE__ */
|
|
3025
|
+
return /* @__PURE__ */ jsxs15("div", { className: "flex flex-col gap-2", children: [
|
|
3026
|
+
label && /* @__PURE__ */ jsx30(
|
|
2102
3027
|
"label",
|
|
2103
3028
|
{
|
|
2104
3029
|
htmlFor: inputId,
|
|
@@ -2111,9 +3036,9 @@ var Input2 = React16.forwardRef(
|
|
|
2111
3036
|
}
|
|
2112
3037
|
),
|
|
2113
3038
|
inputElement,
|
|
2114
|
-
(description || error) && /* @__PURE__ */
|
|
2115
|
-
description && /* @__PURE__ */
|
|
2116
|
-
error && /* @__PURE__ */
|
|
3039
|
+
(description || error) && /* @__PURE__ */ jsxs15("div", { className: "flex flex-col gap-1", children: [
|
|
3040
|
+
description && /* @__PURE__ */ jsx30(Typography, { variant: "xs", color: "muted", id: descriptionId, children: description }),
|
|
3041
|
+
error && /* @__PURE__ */ jsx30(
|
|
2117
3042
|
Typography,
|
|
2118
3043
|
{
|
|
2119
3044
|
variant: "xs",
|
|
@@ -2125,8 +3050,8 @@ var Input2 = React16.forwardRef(
|
|
|
2125
3050
|
] })
|
|
2126
3051
|
] });
|
|
2127
3052
|
}
|
|
2128
|
-
return /* @__PURE__ */
|
|
2129
|
-
label && /* @__PURE__ */
|
|
3053
|
+
return /* @__PURE__ */ jsxs15("div", { className: "flex flex-col gap-2", children: [
|
|
3054
|
+
label && /* @__PURE__ */ jsx30(
|
|
2130
3055
|
"label",
|
|
2131
3056
|
{
|
|
2132
3057
|
htmlFor: inputId,
|
|
@@ -2138,14 +3063,14 @@ var Input2 = React16.forwardRef(
|
|
|
2138
3063
|
children: label
|
|
2139
3064
|
}
|
|
2140
3065
|
),
|
|
2141
|
-
/* @__PURE__ */
|
|
2142
|
-
icon && /* @__PURE__ */
|
|
3066
|
+
/* @__PURE__ */ jsxs15("div", { className: "relative w-full", children: [
|
|
3067
|
+
icon && /* @__PURE__ */ jsx30("div", { className: "absolute left-3 top-1/2 -translate-y-1/2", children: icon }),
|
|
2143
3068
|
inputElement,
|
|
2144
|
-
actionButton && /* @__PURE__ */
|
|
3069
|
+
actionButton && /* @__PURE__ */ jsx30("div", { className: "absolute right-2 top-1/2 -translate-y-1/2", children: actionButton })
|
|
2145
3070
|
] }),
|
|
2146
|
-
(description || error) && /* @__PURE__ */
|
|
2147
|
-
description && /* @__PURE__ */
|
|
2148
|
-
error && /* @__PURE__ */
|
|
3071
|
+
(description || error) && /* @__PURE__ */ jsxs15("div", { className: "flex flex-col gap-1", children: [
|
|
3072
|
+
description && /* @__PURE__ */ jsx30(Typography, { variant: "xs", color: "muted", id: descriptionId, children: description }),
|
|
3073
|
+
error && /* @__PURE__ */ jsx30(Typography, { variant: "xs", id: errorId, className: "text-berget-destructive-foreground", children: error })
|
|
2149
3074
|
] })
|
|
2150
3075
|
] });
|
|
2151
3076
|
}
|
|
@@ -2153,32 +3078,32 @@ var Input2 = React16.forwardRef(
|
|
|
2153
3078
|
Input2.displayName = "Input";
|
|
2154
3079
|
|
|
2155
3080
|
// src/components/checkbox/Checkbox.tsx
|
|
2156
|
-
import * as
|
|
3081
|
+
import * as React19 from "react";
|
|
2157
3082
|
import { Checkbox as CheckboxPrimitive2 } from "@base-ui/react/checkbox";
|
|
2158
3083
|
import { Check as Check2 } from "lucide-react";
|
|
2159
|
-
import { cva as
|
|
3084
|
+
import { cva as cva11 } from "class-variance-authority";
|
|
2160
3085
|
|
|
2161
3086
|
// src/primitives/checkbox.tsx
|
|
2162
3087
|
import { Checkbox as CheckboxPrimitive } from "@base-ui/react/checkbox";
|
|
2163
|
-
import { cn as
|
|
3088
|
+
import { cn as cn14 } from "cn";
|
|
2164
3089
|
import { CheckIcon } from "lucide-react";
|
|
2165
|
-
import { jsx as
|
|
3090
|
+
import { jsx as jsx31 } from "react/jsx-runtime";
|
|
2166
3091
|
function Checkbox({ className, ...props }) {
|
|
2167
|
-
return /* @__PURE__ */
|
|
3092
|
+
return /* @__PURE__ */ jsx31(
|
|
2168
3093
|
CheckboxPrimitive.Root,
|
|
2169
3094
|
{
|
|
2170
3095
|
"data-slot": "checkbox",
|
|
2171
|
-
className:
|
|
3096
|
+
className: cn14(
|
|
2172
3097
|
"peer relative flex size-4 shrink-0 cursor-pointer items-center justify-center rounded-[4px] border border-input transition-colors outline-none group-has-disabled/field:opacity-50 group-has-[:focus-visible]/field-label:ring-0 group-has-[:focus-visible]/field-label:not-data-checked:border-input after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 aria-invalid:aria-checked:border-primary dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:border-primary data-checked:bg-primary data-checked:text-primary-foreground group-has-[:focus-visible]/field-label:data-checked:border-primary dark:data-checked:bg-primary",
|
|
2173
3098
|
className
|
|
2174
3099
|
),
|
|
2175
3100
|
...props,
|
|
2176
|
-
children: /* @__PURE__ */
|
|
3101
|
+
children: /* @__PURE__ */ jsx31(
|
|
2177
3102
|
CheckboxPrimitive.Indicator,
|
|
2178
3103
|
{
|
|
2179
3104
|
"data-slot": "checkbox-indicator",
|
|
2180
3105
|
className: "grid place-content-center text-current transition-none [&>svg]:size-3.5",
|
|
2181
|
-
children: /* @__PURE__ */
|
|
3106
|
+
children: /* @__PURE__ */ jsx31(
|
|
2182
3107
|
CheckIcon,
|
|
2183
3108
|
{}
|
|
2184
3109
|
)
|
|
@@ -2189,8 +3114,8 @@ function Checkbox({ className, ...props }) {
|
|
|
2189
3114
|
}
|
|
2190
3115
|
|
|
2191
3116
|
// src/components/checkbox/Checkbox.tsx
|
|
2192
|
-
import { jsx as
|
|
2193
|
-
var checkboxVariants =
|
|
3117
|
+
import { jsx as jsx32, jsxs as jsxs16 } from "react/jsx-runtime";
|
|
3118
|
+
var checkboxVariants = cva11(
|
|
2194
3119
|
"inline-flex items-center justify-center rounded-berget-xs transition-all duration-200 focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50",
|
|
2195
3120
|
{
|
|
2196
3121
|
variants: {
|
|
@@ -2211,7 +3136,7 @@ var checkboxVariants = cva10(
|
|
|
2211
3136
|
}
|
|
2212
3137
|
}
|
|
2213
3138
|
);
|
|
2214
|
-
var Checkbox2 =
|
|
3139
|
+
var Checkbox2 = React19.forwardRef(
|
|
2215
3140
|
({
|
|
2216
3141
|
"aria-label": ariaLabel,
|
|
2217
3142
|
className,
|
|
@@ -2224,11 +3149,11 @@ var Checkbox2 = React17.forwardRef(
|
|
|
2224
3149
|
disabled,
|
|
2225
3150
|
...props
|
|
2226
3151
|
}, ref) => {
|
|
2227
|
-
const generatedId =
|
|
3152
|
+
const generatedId = React19.useId();
|
|
2228
3153
|
const checkboxId = id || generatedId;
|
|
2229
3154
|
const errorId = `${checkboxId}-error`;
|
|
2230
|
-
return /* @__PURE__ */
|
|
2231
|
-
/* @__PURE__ */
|
|
3155
|
+
return /* @__PURE__ */ jsxs16("div", { className: "flex items-start gap-3", children: [
|
|
3156
|
+
/* @__PURE__ */ jsx32("div", { className: "relative flex items-start pt-0.5", children: /* @__PURE__ */ jsx32(
|
|
2232
3157
|
Checkbox,
|
|
2233
3158
|
{
|
|
2234
3159
|
ref,
|
|
@@ -2245,7 +3170,7 @@ var Checkbox2 = React17.forwardRef(
|
|
|
2245
3170
|
className
|
|
2246
3171
|
),
|
|
2247
3172
|
...props,
|
|
2248
|
-
children: /* @__PURE__ */
|
|
3173
|
+
children: /* @__PURE__ */ jsx32(CheckboxPrimitive2.Indicator, { children: /* @__PURE__ */ jsx32(
|
|
2249
3174
|
Check2,
|
|
2250
3175
|
{
|
|
2251
3176
|
className: "h-4 w-4 text-current stroke-current",
|
|
@@ -2254,8 +3179,8 @@ var Checkbox2 = React17.forwardRef(
|
|
|
2254
3179
|
) })
|
|
2255
3180
|
}
|
|
2256
3181
|
) }),
|
|
2257
|
-
(label || description || error) && /* @__PURE__ */
|
|
2258
|
-
label && /* @__PURE__ */
|
|
3182
|
+
(label || description || error) && /* @__PURE__ */ jsxs16("div", { className: "flex flex-col gap-1", children: [
|
|
3183
|
+
label && /* @__PURE__ */ jsx32(
|
|
2259
3184
|
"label",
|
|
2260
3185
|
{
|
|
2261
3186
|
htmlFor: checkboxId,
|
|
@@ -2267,8 +3192,8 @@ var Checkbox2 = React17.forwardRef(
|
|
|
2267
3192
|
children: label
|
|
2268
3193
|
}
|
|
2269
3194
|
),
|
|
2270
|
-
description && /* @__PURE__ */
|
|
2271
|
-
error && /* @__PURE__ */
|
|
3195
|
+
description && /* @__PURE__ */ jsx32(Typography, { variant: "xs", color: "muted", children: description }),
|
|
3196
|
+
error && /* @__PURE__ */ jsx32(Typography, { variant: "xs", id: errorId, className: "text-berget-destructive-foreground", children: error })
|
|
2272
3197
|
] })
|
|
2273
3198
|
] });
|
|
2274
3199
|
}
|
|
@@ -2276,11 +3201,11 @@ var Checkbox2 = React17.forwardRef(
|
|
|
2276
3201
|
Checkbox2.displayName = "Checkbox";
|
|
2277
3202
|
|
|
2278
3203
|
// src/components/switch/Switch.tsx
|
|
2279
|
-
import * as
|
|
3204
|
+
import * as React20 from "react";
|
|
2280
3205
|
import { Switch as SwitchPrimitives } from "@base-ui/react/switch";
|
|
2281
|
-
import { cva as
|
|
2282
|
-
import { jsx as
|
|
2283
|
-
var switchRootVariants =
|
|
3206
|
+
import { cva as cva12 } from "class-variance-authority";
|
|
3207
|
+
import { jsx as jsx33, jsxs as jsxs17 } from "react/jsx-runtime";
|
|
3208
|
+
var switchRootVariants = cva12(
|
|
2284
3209
|
"peer inline-flex shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-berget-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50",
|
|
2285
3210
|
{
|
|
2286
3211
|
variants: {
|
|
@@ -2301,7 +3226,7 @@ var switchRootVariants = cva11(
|
|
|
2301
3226
|
}
|
|
2302
3227
|
}
|
|
2303
3228
|
);
|
|
2304
|
-
var switchThumbVariants =
|
|
3229
|
+
var switchThumbVariants = cva12(
|
|
2305
3230
|
"pointer-events-none block rounded-full ring-0 transition-transform shadow-berget-sm bg-berget-foreground",
|
|
2306
3231
|
{
|
|
2307
3232
|
variants: {
|
|
@@ -2316,7 +3241,7 @@ var switchThumbVariants = cva11(
|
|
|
2316
3241
|
}
|
|
2317
3242
|
}
|
|
2318
3243
|
);
|
|
2319
|
-
var Switch =
|
|
3244
|
+
var Switch = React20.forwardRef(
|
|
2320
3245
|
({
|
|
2321
3246
|
"aria-label": ariaLabel,
|
|
2322
3247
|
className,
|
|
@@ -2329,11 +3254,11 @@ var Switch = React18.forwardRef(
|
|
|
2329
3254
|
disabled,
|
|
2330
3255
|
...props
|
|
2331
3256
|
}, ref) => {
|
|
2332
|
-
const generatedId =
|
|
3257
|
+
const generatedId = React20.useId();
|
|
2333
3258
|
const switchId = id || generatedId;
|
|
2334
3259
|
const errorId = `${switchId}-error`;
|
|
2335
|
-
return /* @__PURE__ */
|
|
2336
|
-
/* @__PURE__ */
|
|
3260
|
+
return /* @__PURE__ */ jsxs17("div", { className: "flex items-center gap-3", children: [
|
|
3261
|
+
/* @__PURE__ */ jsx33(
|
|
2337
3262
|
SwitchPrimitives.Root,
|
|
2338
3263
|
{
|
|
2339
3264
|
ref,
|
|
@@ -2349,11 +3274,11 @@ var Switch = React18.forwardRef(
|
|
|
2349
3274
|
className
|
|
2350
3275
|
),
|
|
2351
3276
|
...props,
|
|
2352
|
-
children: /* @__PURE__ */
|
|
3277
|
+
children: /* @__PURE__ */ jsx33(SwitchPrimitives.Thumb, { className: cn(switchThumbVariants({ size })) })
|
|
2353
3278
|
}
|
|
2354
3279
|
),
|
|
2355
|
-
(label || description || error) && /* @__PURE__ */
|
|
2356
|
-
label && /* @__PURE__ */
|
|
3280
|
+
(label || description || error) && /* @__PURE__ */ jsxs17("div", { className: "flex flex-col gap-1", children: [
|
|
3281
|
+
label && /* @__PURE__ */ jsx33(
|
|
2357
3282
|
"label",
|
|
2358
3283
|
{
|
|
2359
3284
|
htmlFor: switchId,
|
|
@@ -2364,8 +3289,8 @@ var Switch = React18.forwardRef(
|
|
|
2364
3289
|
children: label
|
|
2365
3290
|
}
|
|
2366
3291
|
),
|
|
2367
|
-
description && /* @__PURE__ */
|
|
2368
|
-
error && /* @__PURE__ */
|
|
3292
|
+
description && /* @__PURE__ */ jsx33(Typography, { variant: "xs", color: "muted", children: description }),
|
|
3293
|
+
error && /* @__PURE__ */ jsx33(Typography, { variant: "xs", id: errorId, className: "text-berget-destructive-foreground", children: error })
|
|
2369
3294
|
] })
|
|
2370
3295
|
] });
|
|
2371
3296
|
}
|
|
@@ -2373,21 +3298,21 @@ var Switch = React18.forwardRef(
|
|
|
2373
3298
|
Switch.displayName = "Switch";
|
|
2374
3299
|
|
|
2375
3300
|
// src/components/select/Select.tsx
|
|
2376
|
-
import * as
|
|
2377
|
-
import { cva as
|
|
3301
|
+
import * as React21 from "react";
|
|
3302
|
+
import { cva as cva13 } from "class-variance-authority";
|
|
2378
3303
|
|
|
2379
3304
|
// src/primitives/select.tsx
|
|
2380
3305
|
import { Select as SelectPrimitive } from "@base-ui/react/select";
|
|
2381
|
-
import { cn as
|
|
3306
|
+
import { cn as cn15 } from "cn";
|
|
2382
3307
|
import { ChevronDownIcon as ChevronDownIcon2, CheckIcon as CheckIcon2, ChevronUpIcon } from "lucide-react";
|
|
2383
|
-
import { jsx as
|
|
3308
|
+
import { jsx as jsx34, jsxs as jsxs18 } from "react/jsx-runtime";
|
|
2384
3309
|
var Select = SelectPrimitive.Root;
|
|
2385
3310
|
function SelectValue({ className, ...props }) {
|
|
2386
|
-
return /* @__PURE__ */
|
|
3311
|
+
return /* @__PURE__ */ jsx34(
|
|
2387
3312
|
SelectPrimitive.Value,
|
|
2388
3313
|
{
|
|
2389
3314
|
"data-slot": "select-value",
|
|
2390
|
-
className:
|
|
3315
|
+
className: cn15("flex flex-1 text-left", className),
|
|
2391
3316
|
...props
|
|
2392
3317
|
}
|
|
2393
3318
|
);
|
|
@@ -2398,22 +3323,22 @@ function SelectTrigger({
|
|
|
2398
3323
|
children,
|
|
2399
3324
|
...props
|
|
2400
3325
|
}) {
|
|
2401
|
-
return /* @__PURE__ */
|
|
3326
|
+
return /* @__PURE__ */ jsxs18(
|
|
2402
3327
|
SelectPrimitive.Trigger,
|
|
2403
3328
|
{
|
|
2404
3329
|
"data-slot": "select-trigger",
|
|
2405
3330
|
"data-size": size,
|
|
2406
|
-
className:
|
|
3331
|
+
className: cn15(
|
|
2407
3332
|
"flex w-fit cursor-pointer items-center justify-between gap-1.5 rounded-lg border border-input bg-transparent py-2 pr-2 pl-2.5 text-sm whitespace-nowrap transition-colors outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 data-placeholder:text-muted-foreground data-[size=default]:h-8 data-[size=sm]:h-7 data-[size=sm]:rounded-[min(var(--radius-md),10px)] *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-1.5 dark:bg-input/30 dark:hover:bg-input/50 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
2408
3333
|
className
|
|
2409
3334
|
),
|
|
2410
3335
|
...props,
|
|
2411
3336
|
children: [
|
|
2412
3337
|
children,
|
|
2413
|
-
/* @__PURE__ */
|
|
3338
|
+
/* @__PURE__ */ jsx34(
|
|
2414
3339
|
SelectPrimitive.Icon,
|
|
2415
3340
|
{
|
|
2416
|
-
render: /* @__PURE__ */
|
|
3341
|
+
render: /* @__PURE__ */ jsx34(ChevronDownIcon2, { className: "pointer-events-none size-4 text-muted-foreground" })
|
|
2417
3342
|
}
|
|
2418
3343
|
)
|
|
2419
3344
|
]
|
|
@@ -2430,7 +3355,7 @@ function SelectContent({
|
|
|
2430
3355
|
alignItemWithTrigger = true,
|
|
2431
3356
|
...props
|
|
2432
3357
|
}) {
|
|
2433
|
-
return /* @__PURE__ */
|
|
3358
|
+
return /* @__PURE__ */ jsx34(SelectPrimitive.Portal, { children: /* @__PURE__ */ jsx34(
|
|
2434
3359
|
SelectPrimitive.Positioner,
|
|
2435
3360
|
{
|
|
2436
3361
|
side,
|
|
@@ -2439,17 +3364,17 @@ function SelectContent({
|
|
|
2439
3364
|
alignOffset,
|
|
2440
3365
|
alignItemWithTrigger,
|
|
2441
3366
|
className: "isolate z-50",
|
|
2442
|
-
children: /* @__PURE__ */
|
|
3367
|
+
children: /* @__PURE__ */ jsxs18(
|
|
2443
3368
|
SelectPrimitive.Popup,
|
|
2444
3369
|
{
|
|
2445
3370
|
"data-slot": "select-content",
|
|
2446
3371
|
"data-align-trigger": alignItemWithTrigger,
|
|
2447
|
-
className:
|
|
3372
|
+
className: cn15("relative isolate z-50 max-h-(--available-height) w-(--anchor-width) min-w-36 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 data-[align-trigger=true]:animate-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95", className),
|
|
2448
3373
|
...props,
|
|
2449
3374
|
children: [
|
|
2450
|
-
/* @__PURE__ */
|
|
2451
|
-
/* @__PURE__ */
|
|
2452
|
-
/* @__PURE__ */
|
|
3375
|
+
/* @__PURE__ */ jsx34(SelectScrollUpButton, {}),
|
|
3376
|
+
/* @__PURE__ */ jsx34(SelectPrimitive.List, { children }),
|
|
3377
|
+
/* @__PURE__ */ jsx34(SelectScrollDownButton, {})
|
|
2453
3378
|
]
|
|
2454
3379
|
}
|
|
2455
3380
|
)
|
|
@@ -2461,22 +3386,22 @@ function SelectItem({
|
|
|
2461
3386
|
children,
|
|
2462
3387
|
...props
|
|
2463
3388
|
}) {
|
|
2464
|
-
return /* @__PURE__ */
|
|
3389
|
+
return /* @__PURE__ */ jsxs18(
|
|
2465
3390
|
SelectPrimitive.Item,
|
|
2466
3391
|
{
|
|
2467
3392
|
"data-slot": "select-item",
|
|
2468
|
-
className:
|
|
3393
|
+
className: cn15(
|
|
2469
3394
|
"relative flex w-full cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",
|
|
2470
3395
|
className
|
|
2471
3396
|
),
|
|
2472
3397
|
...props,
|
|
2473
3398
|
children: [
|
|
2474
|
-
/* @__PURE__ */
|
|
2475
|
-
/* @__PURE__ */
|
|
3399
|
+
/* @__PURE__ */ jsx34(SelectPrimitive.ItemText, { className: "flex flex-1 shrink-0 gap-2 whitespace-nowrap", children }),
|
|
3400
|
+
/* @__PURE__ */ jsx34(
|
|
2476
3401
|
SelectPrimitive.ItemIndicator,
|
|
2477
3402
|
{
|
|
2478
|
-
render: /* @__PURE__ */
|
|
2479
|
-
children: /* @__PURE__ */
|
|
3403
|
+
render: /* @__PURE__ */ jsx34("span", { className: "pointer-events-none absolute right-2 flex size-4 items-center justify-center" }),
|
|
3404
|
+
children: /* @__PURE__ */ jsx34(CheckIcon2, { className: "pointer-events-none" })
|
|
2480
3405
|
}
|
|
2481
3406
|
)
|
|
2482
3407
|
]
|
|
@@ -2487,16 +3412,16 @@ function SelectScrollUpButton({
|
|
|
2487
3412
|
className,
|
|
2488
3413
|
...props
|
|
2489
3414
|
}) {
|
|
2490
|
-
return /* @__PURE__ */
|
|
3415
|
+
return /* @__PURE__ */ jsx34(
|
|
2491
3416
|
SelectPrimitive.ScrollUpArrow,
|
|
2492
3417
|
{
|
|
2493
3418
|
"data-slot": "select-scroll-up-button",
|
|
2494
|
-
className:
|
|
3419
|
+
className: cn15(
|
|
2495
3420
|
"top-0 z-10 flex w-full cursor-default items-center justify-center bg-popover py-1 [&_svg:not([class*='size-'])]:size-4",
|
|
2496
3421
|
className
|
|
2497
3422
|
),
|
|
2498
3423
|
...props,
|
|
2499
|
-
children: /* @__PURE__ */
|
|
3424
|
+
children: /* @__PURE__ */ jsx34(
|
|
2500
3425
|
ChevronUpIcon,
|
|
2501
3426
|
{}
|
|
2502
3427
|
)
|
|
@@ -2507,16 +3432,16 @@ function SelectScrollDownButton({
|
|
|
2507
3432
|
className,
|
|
2508
3433
|
...props
|
|
2509
3434
|
}) {
|
|
2510
|
-
return /* @__PURE__ */
|
|
3435
|
+
return /* @__PURE__ */ jsx34(
|
|
2511
3436
|
SelectPrimitive.ScrollDownArrow,
|
|
2512
3437
|
{
|
|
2513
3438
|
"data-slot": "select-scroll-down-button",
|
|
2514
|
-
className:
|
|
3439
|
+
className: cn15(
|
|
2515
3440
|
"bottom-0 z-10 flex w-full cursor-default items-center justify-center bg-popover py-1 [&_svg:not([class*='size-'])]:size-4",
|
|
2516
3441
|
className
|
|
2517
3442
|
),
|
|
2518
3443
|
...props,
|
|
2519
|
-
children: /* @__PURE__ */
|
|
3444
|
+
children: /* @__PURE__ */ jsx34(
|
|
2520
3445
|
ChevronDownIcon2,
|
|
2521
3446
|
{}
|
|
2522
3447
|
)
|
|
@@ -2525,8 +3450,8 @@ function SelectScrollDownButton({
|
|
|
2525
3450
|
}
|
|
2526
3451
|
|
|
2527
3452
|
// src/components/select/Select.tsx
|
|
2528
|
-
import { jsx as
|
|
2529
|
-
var selectVariants =
|
|
3453
|
+
import { jsx as jsx35, jsxs as jsxs19 } from "react/jsx-runtime";
|
|
3454
|
+
var selectVariants = cva13(
|
|
2530
3455
|
"flex w-full items-center justify-between rounded-berget-xs border bg-card px-4 py-3 text-sm transition-colors duration-200 focus-visible:outline-none focus-visible:ring-0 focus-visible:ring-offset-0 focus-visible:border-berget-form-focus-border disabled:cursor-not-allowed disabled:opacity-50",
|
|
2531
3456
|
{
|
|
2532
3457
|
variants: {
|
|
@@ -2548,7 +3473,7 @@ var selectVariants = cva12(
|
|
|
2548
3473
|
}
|
|
2549
3474
|
}
|
|
2550
3475
|
);
|
|
2551
|
-
var Select2 =
|
|
3476
|
+
var Select2 = React21.forwardRef(
|
|
2552
3477
|
({
|
|
2553
3478
|
className,
|
|
2554
3479
|
variant,
|
|
@@ -2566,12 +3491,12 @@ var Select2 = React19.forwardRef(
|
|
|
2566
3491
|
name,
|
|
2567
3492
|
required
|
|
2568
3493
|
}, ref) => {
|
|
2569
|
-
const generatedId =
|
|
3494
|
+
const generatedId = React21.useId();
|
|
2570
3495
|
const selectId = id || generatedId;
|
|
2571
3496
|
const errorId = `${selectId}-error`;
|
|
2572
3497
|
const descriptionId = `${selectId}-description`;
|
|
2573
|
-
return /* @__PURE__ */
|
|
2574
|
-
label && /* @__PURE__ */
|
|
3498
|
+
return /* @__PURE__ */ jsxs19("div", { className: "flex flex-col gap-2", children: [
|
|
3499
|
+
label && /* @__PURE__ */ jsx35(
|
|
2575
3500
|
"label",
|
|
2576
3501
|
{
|
|
2577
3502
|
htmlFor: selectId,
|
|
@@ -2583,7 +3508,7 @@ var Select2 = React19.forwardRef(
|
|
|
2583
3508
|
children: label
|
|
2584
3509
|
}
|
|
2585
3510
|
),
|
|
2586
|
-
/* @__PURE__ */
|
|
3511
|
+
/* @__PURE__ */ jsxs19(
|
|
2587
3512
|
Select,
|
|
2588
3513
|
{
|
|
2589
3514
|
value,
|
|
@@ -2594,7 +3519,7 @@ var Select2 = React19.forwardRef(
|
|
|
2594
3519
|
required,
|
|
2595
3520
|
items: options,
|
|
2596
3521
|
children: [
|
|
2597
|
-
/* @__PURE__ */
|
|
3522
|
+
/* @__PURE__ */ jsx35(
|
|
2598
3523
|
SelectTrigger,
|
|
2599
3524
|
{
|
|
2600
3525
|
ref,
|
|
@@ -2606,33 +3531,33 @@ var Select2 = React19.forwardRef(
|
|
|
2606
3531
|
error && "border-berget-destructive-foreground/50 bg-berget-destructive",
|
|
2607
3532
|
className
|
|
2608
3533
|
),
|
|
2609
|
-
children: /* @__PURE__ */
|
|
3534
|
+
children: /* @__PURE__ */ jsx35(SelectValue, { placeholder })
|
|
2610
3535
|
}
|
|
2611
3536
|
),
|
|
2612
|
-
/* @__PURE__ */
|
|
3537
|
+
/* @__PURE__ */ jsx35(SelectContent, { children: options.map((option) => /* @__PURE__ */ jsx35(SelectItem, { value: option.value, disabled: option.disabled, children: option.label }, option.value)) })
|
|
2613
3538
|
]
|
|
2614
3539
|
}
|
|
2615
3540
|
),
|
|
2616
|
-
description && /* @__PURE__ */
|
|
2617
|
-
error && /* @__PURE__ */
|
|
3541
|
+
description && /* @__PURE__ */ jsx35(Typography, { variant: "xs", color: "muted", id: descriptionId, children: description }),
|
|
3542
|
+
error && /* @__PURE__ */ jsx35(Typography, { variant: "xs", id: errorId, className: "text-berget-destructive-foreground", children: error })
|
|
2618
3543
|
] });
|
|
2619
3544
|
}
|
|
2620
3545
|
);
|
|
2621
3546
|
Select2.displayName = "Select";
|
|
2622
3547
|
|
|
2623
3548
|
// src/components/country-select/CountrySelect.tsx
|
|
2624
|
-
import * as
|
|
3549
|
+
import * as React23 from "react";
|
|
2625
3550
|
import { ChevronDown as ChevronDown2, Globe } from "lucide-react";
|
|
2626
3551
|
|
|
2627
3552
|
// src/components/icon/Icon.tsx
|
|
2628
|
-
import * as
|
|
2629
|
-
import { jsx as
|
|
3553
|
+
import * as React22 from "react";
|
|
3554
|
+
import { jsx as jsx36 } from "react/jsx-runtime";
|
|
2630
3555
|
var iconStrokeMap = {
|
|
2631
3556
|
16: 1.4,
|
|
2632
3557
|
24: 1.6,
|
|
2633
3558
|
32: 1.8
|
|
2634
3559
|
};
|
|
2635
|
-
var Icon =
|
|
3560
|
+
var Icon = React22.forwardRef(
|
|
2636
3561
|
({
|
|
2637
3562
|
icon: IconComponent,
|
|
2638
3563
|
size,
|
|
@@ -2644,7 +3569,7 @@ var Icon = React20.forwardRef(
|
|
|
2644
3569
|
const strokeWidth = iconStrokeMap[size];
|
|
2645
3570
|
const sizeClass = size === 16 ? "w-4 h-4" : size === 24 ? "w-6 h-6" : "w-8 h-8";
|
|
2646
3571
|
const ariaAttributes = ariaLabel ? { "aria-label": ariaLabel } : { "aria-hidden": ariaHidden };
|
|
2647
|
-
return /* @__PURE__ */
|
|
3572
|
+
return /* @__PURE__ */ jsx36(
|
|
2648
3573
|
IconComponent,
|
|
2649
3574
|
{
|
|
2650
3575
|
ref,
|
|
@@ -2660,13 +3585,13 @@ Icon.displayName = "Icon";
|
|
|
2660
3585
|
|
|
2661
3586
|
// src/primitives/popover.tsx
|
|
2662
3587
|
import { Popover as PopoverPrimitive } from "@base-ui/react/popover";
|
|
2663
|
-
import { cn as
|
|
2664
|
-
import { jsx as
|
|
3588
|
+
import { cn as cn16 } from "cn";
|
|
3589
|
+
import { jsx as jsx37 } from "react/jsx-runtime";
|
|
2665
3590
|
function Popover({ ...props }) {
|
|
2666
|
-
return /* @__PURE__ */
|
|
3591
|
+
return /* @__PURE__ */ jsx37(PopoverPrimitive.Root, { "data-slot": "popover", ...props });
|
|
2667
3592
|
}
|
|
2668
3593
|
function PopoverTrigger({ ...props }) {
|
|
2669
|
-
return /* @__PURE__ */
|
|
3594
|
+
return /* @__PURE__ */ jsx37(PopoverPrimitive.Trigger, { "data-slot": "popover-trigger", ...props });
|
|
2670
3595
|
}
|
|
2671
3596
|
function PopoverContent({
|
|
2672
3597
|
className,
|
|
@@ -2676,7 +3601,7 @@ function PopoverContent({
|
|
|
2676
3601
|
sideOffset = 4,
|
|
2677
3602
|
...props
|
|
2678
3603
|
}) {
|
|
2679
|
-
return /* @__PURE__ */
|
|
3604
|
+
return /* @__PURE__ */ jsx37(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx37(
|
|
2680
3605
|
PopoverPrimitive.Positioner,
|
|
2681
3606
|
{
|
|
2682
3607
|
align,
|
|
@@ -2684,11 +3609,11 @@ function PopoverContent({
|
|
|
2684
3609
|
side,
|
|
2685
3610
|
sideOffset,
|
|
2686
3611
|
className: "isolate z-50",
|
|
2687
|
-
children: /* @__PURE__ */
|
|
3612
|
+
children: /* @__PURE__ */ jsx37(
|
|
2688
3613
|
PopoverPrimitive.Popup,
|
|
2689
3614
|
{
|
|
2690
3615
|
"data-slot": "popover-content",
|
|
2691
|
-
className:
|
|
3616
|
+
className: cn16(
|
|
2692
3617
|
"z-50 flex w-72 origin-(--transform-origin) flex-col gap-2.5 rounded-lg bg-popover p-2.5 text-sm text-popover-foreground shadow-md ring-1 ring-foreground/10 outline-hidden duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",
|
|
2693
3618
|
className
|
|
2694
3619
|
),
|
|
@@ -2701,27 +3626,27 @@ function PopoverContent({
|
|
|
2701
3626
|
|
|
2702
3627
|
// src/primitives/command.tsx
|
|
2703
3628
|
import { Command as CommandPrimitive } from "cmdk";
|
|
2704
|
-
import { cn as
|
|
3629
|
+
import { cn as cn20 } from "cn";
|
|
2705
3630
|
|
|
2706
3631
|
// src/primitives/dialog.tsx
|
|
2707
3632
|
import { Dialog as DialogPrimitive2 } from "@base-ui/react/dialog";
|
|
2708
|
-
import { cn as
|
|
2709
|
-
import { XIcon } from "lucide-react";
|
|
2710
|
-
import { jsx as
|
|
3633
|
+
import { cn as cn17 } from "cn";
|
|
3634
|
+
import { XIcon as XIcon2 } from "lucide-react";
|
|
3635
|
+
import { jsx as jsx38, jsxs as jsxs20 } from "react/jsx-runtime";
|
|
2711
3636
|
|
|
2712
3637
|
// src/primitives/input-group.tsx
|
|
2713
|
-
import { cva as
|
|
2714
|
-
import { cn as
|
|
3638
|
+
import { cva as cva14 } from "class-variance-authority";
|
|
3639
|
+
import { cn as cn19 } from "cn";
|
|
2715
3640
|
|
|
2716
3641
|
// src/primitives/textarea.tsx
|
|
2717
|
-
import { cn as
|
|
2718
|
-
import { jsx as
|
|
3642
|
+
import { cn as cn18 } from "cn";
|
|
3643
|
+
import { jsx as jsx39 } from "react/jsx-runtime";
|
|
2719
3644
|
function Textarea({ className, ...props }) {
|
|
2720
|
-
return /* @__PURE__ */
|
|
3645
|
+
return /* @__PURE__ */ jsx39(
|
|
2721
3646
|
"textarea",
|
|
2722
3647
|
{
|
|
2723
3648
|
"data-slot": "textarea",
|
|
2724
|
-
className:
|
|
3649
|
+
className: cn18(
|
|
2725
3650
|
"flex field-sizing-content min-h-16 w-full rounded-lg border border-input bg-transparent px-2.5 py-2 text-base transition-colors outline-none placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:bg-input/50 disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:disabled:bg-input/80 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40",
|
|
2726
3651
|
className
|
|
2727
3652
|
),
|
|
@@ -2731,14 +3656,14 @@ function Textarea({ className, ...props }) {
|
|
|
2731
3656
|
}
|
|
2732
3657
|
|
|
2733
3658
|
// src/primitives/input-group.tsx
|
|
2734
|
-
import { jsx as
|
|
3659
|
+
import { jsx as jsx40 } from "react/jsx-runtime";
|
|
2735
3660
|
function InputGroup({ className, ...props }) {
|
|
2736
|
-
return /* @__PURE__ */
|
|
3661
|
+
return /* @__PURE__ */ jsx40(
|
|
2737
3662
|
"div",
|
|
2738
3663
|
{
|
|
2739
3664
|
"data-slot": "input-group",
|
|
2740
3665
|
role: "group",
|
|
2741
|
-
className:
|
|
3666
|
+
className: cn19(
|
|
2742
3667
|
"group/input-group relative flex h-8 w-full min-w-0 items-center rounded-lg border border-input transition-colors outline-none in-data-[slot=combobox-content]:focus-within:border-inherit in-data-[slot=combobox-content]:focus-within:ring-0 has-disabled:bg-input/50 has-disabled:opacity-50 has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot=input-group-control]:focus-visible]:ring-3 has-[[data-slot=input-group-control]:focus-visible]:ring-ring/50 has-[[data-slot][aria-invalid=true]]:border-destructive has-[[data-slot][aria-invalid=true]]:ring-3 has-[[data-slot][aria-invalid=true]]:ring-destructive/20 has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-start]]:h-auto has-[>[data-align=block-start]]:flex-col has-[>textarea]:h-auto dark:bg-input/30 dark:has-disabled:bg-input/80 dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40 has-[>[data-align=block-end]]:[&>input]:pt-3 has-[>[data-align=block-start]]:[&>input]:pb-3 has-[>[data-align=inline-end]]:[&>input]:pr-1.5 has-[>[data-align=inline-start]]:[&>input]:pl-1.5",
|
|
2743
3668
|
className
|
|
2744
3669
|
),
|
|
@@ -2746,7 +3671,7 @@ function InputGroup({ className, ...props }) {
|
|
|
2746
3671
|
}
|
|
2747
3672
|
);
|
|
2748
3673
|
}
|
|
2749
|
-
var inputGroupAddonVariants =
|
|
3674
|
+
var inputGroupAddonVariants = cva14(
|
|
2750
3675
|
"flex h-auto cursor-text items-center justify-center gap-2 py-1.5 text-sm font-medium text-muted-foreground select-none group-data-[disabled=true]/input-group:opacity-50 [&>kbd]:rounded-[calc(var(--radius)-5px)] [&>svg:not([class*='size-'])]:size-4",
|
|
2751
3676
|
{
|
|
2752
3677
|
variants: {
|
|
@@ -2767,13 +3692,13 @@ function InputGroupAddon({
|
|
|
2767
3692
|
align = "inline-start",
|
|
2768
3693
|
...props
|
|
2769
3694
|
}) {
|
|
2770
|
-
return /* @__PURE__ */
|
|
3695
|
+
return /* @__PURE__ */ jsx40(
|
|
2771
3696
|
"div",
|
|
2772
3697
|
{
|
|
2773
3698
|
role: "group",
|
|
2774
3699
|
"data-slot": "input-group-addon",
|
|
2775
3700
|
"data-align": align,
|
|
2776
|
-
className:
|
|
3701
|
+
className: cn19(inputGroupAddonVariants({ align }), className),
|
|
2777
3702
|
onClick: (e) => {
|
|
2778
3703
|
if (e.target.closest("button")) {
|
|
2779
3704
|
return;
|
|
@@ -2784,7 +3709,7 @@ function InputGroupAddon({
|
|
|
2784
3709
|
}
|
|
2785
3710
|
);
|
|
2786
3711
|
}
|
|
2787
|
-
var inputGroupButtonVariants =
|
|
3712
|
+
var inputGroupButtonVariants = cva14(
|
|
2788
3713
|
"flex items-center gap-2 text-sm shadow-none",
|
|
2789
3714
|
{
|
|
2790
3715
|
variants: {
|
|
@@ -2803,16 +3728,16 @@ var inputGroupButtonVariants = cva13(
|
|
|
2803
3728
|
|
|
2804
3729
|
// src/primitives/command.tsx
|
|
2805
3730
|
import { SearchIcon, CheckIcon as CheckIcon3 } from "lucide-react";
|
|
2806
|
-
import { jsx as
|
|
3731
|
+
import { jsx as jsx41, jsxs as jsxs21 } from "react/jsx-runtime";
|
|
2807
3732
|
function Command({
|
|
2808
3733
|
className,
|
|
2809
3734
|
...props
|
|
2810
3735
|
}) {
|
|
2811
|
-
return /* @__PURE__ */
|
|
3736
|
+
return /* @__PURE__ */ jsx41(
|
|
2812
3737
|
CommandPrimitive,
|
|
2813
3738
|
{
|
|
2814
3739
|
"data-slot": "command",
|
|
2815
|
-
className:
|
|
3740
|
+
className: cn20(
|
|
2816
3741
|
"flex size-full flex-col overflow-hidden rounded-xl! bg-popover p-1 text-popover-foreground",
|
|
2817
3742
|
className
|
|
2818
3743
|
),
|
|
@@ -2824,30 +3749,30 @@ function CommandInput({
|
|
|
2824
3749
|
className,
|
|
2825
3750
|
...props
|
|
2826
3751
|
}) {
|
|
2827
|
-
return /* @__PURE__ */
|
|
2828
|
-
/* @__PURE__ */
|
|
3752
|
+
return /* @__PURE__ */ jsx41("div", { "data-slot": "command-input-wrapper", className: "p-1 pb-0", children: /* @__PURE__ */ jsxs21(InputGroup, { className: "h-8! rounded-lg! border-input/30 bg-input/30 shadow-none! *:data-[slot=input-group-addon]:pl-2!", children: [
|
|
3753
|
+
/* @__PURE__ */ jsx41(
|
|
2829
3754
|
CommandPrimitive.Input,
|
|
2830
3755
|
{
|
|
2831
3756
|
"data-slot": "command-input",
|
|
2832
|
-
className:
|
|
3757
|
+
className: cn20(
|
|
2833
3758
|
"w-full text-sm outline-hidden disabled:cursor-not-allowed disabled:opacity-50",
|
|
2834
3759
|
className
|
|
2835
3760
|
),
|
|
2836
3761
|
...props
|
|
2837
3762
|
}
|
|
2838
3763
|
),
|
|
2839
|
-
/* @__PURE__ */
|
|
3764
|
+
/* @__PURE__ */ jsx41(InputGroupAddon, { children: /* @__PURE__ */ jsx41(SearchIcon, { className: "size-4 shrink-0 opacity-50" }) })
|
|
2840
3765
|
] }) });
|
|
2841
3766
|
}
|
|
2842
3767
|
function CommandList({
|
|
2843
3768
|
className,
|
|
2844
3769
|
...props
|
|
2845
3770
|
}) {
|
|
2846
|
-
return /* @__PURE__ */
|
|
3771
|
+
return /* @__PURE__ */ jsx41(
|
|
2847
3772
|
CommandPrimitive.List,
|
|
2848
3773
|
{
|
|
2849
3774
|
"data-slot": "command-list",
|
|
2850
|
-
className:
|
|
3775
|
+
className: cn20(
|
|
2851
3776
|
"no-scrollbar max-h-72 scroll-py-1 overflow-x-hidden overflow-y-auto outline-none",
|
|
2852
3777
|
className
|
|
2853
3778
|
),
|
|
@@ -2859,11 +3784,11 @@ function CommandEmpty({
|
|
|
2859
3784
|
className,
|
|
2860
3785
|
...props
|
|
2861
3786
|
}) {
|
|
2862
|
-
return /* @__PURE__ */
|
|
3787
|
+
return /* @__PURE__ */ jsx41(
|
|
2863
3788
|
CommandPrimitive.Empty,
|
|
2864
3789
|
{
|
|
2865
3790
|
"data-slot": "command-empty",
|
|
2866
|
-
className:
|
|
3791
|
+
className: cn20("py-6 text-center text-sm", className),
|
|
2867
3792
|
...props
|
|
2868
3793
|
}
|
|
2869
3794
|
);
|
|
@@ -2872,11 +3797,11 @@ function CommandGroup({
|
|
|
2872
3797
|
className,
|
|
2873
3798
|
...props
|
|
2874
3799
|
}) {
|
|
2875
|
-
return /* @__PURE__ */
|
|
3800
|
+
return /* @__PURE__ */ jsx41(
|
|
2876
3801
|
CommandPrimitive.Group,
|
|
2877
3802
|
{
|
|
2878
3803
|
"data-slot": "command-group",
|
|
2879
|
-
className:
|
|
3804
|
+
className: cn20(
|
|
2880
3805
|
"overflow-hidden p-1 text-foreground **:[[cmdk-group-heading]]:px-2 **:[[cmdk-group-heading]]:py-1.5 **:[[cmdk-group-heading]]:text-xs **:[[cmdk-group-heading]]:font-medium **:[[cmdk-group-heading]]:text-muted-foreground",
|
|
2881
3806
|
className
|
|
2882
3807
|
),
|
|
@@ -2889,18 +3814,18 @@ function CommandItem({
|
|
|
2889
3814
|
children,
|
|
2890
3815
|
...props
|
|
2891
3816
|
}) {
|
|
2892
|
-
return /* @__PURE__ */
|
|
3817
|
+
return /* @__PURE__ */ jsxs21(
|
|
2893
3818
|
CommandPrimitive.Item,
|
|
2894
3819
|
{
|
|
2895
3820
|
"data-slot": "command-item",
|
|
2896
|
-
className:
|
|
3821
|
+
className: cn20(
|
|
2897
3822
|
"group/command-item relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none in-data-[slot=dialog-content]:rounded-lg! data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 data-selected:bg-muted data-selected:text-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-selected:*:[svg]:text-foreground",
|
|
2898
3823
|
className
|
|
2899
3824
|
),
|
|
2900
3825
|
...props,
|
|
2901
3826
|
children: [
|
|
2902
3827
|
children,
|
|
2903
|
-
/* @__PURE__ */
|
|
3828
|
+
/* @__PURE__ */ jsx41(CheckIcon3, { className: "ml-auto opacity-0 group-has-data-[slot=command-shortcut]/command-item:hidden group-data-[checked=true]/command-item:opacity-100" })
|
|
2904
3829
|
]
|
|
2905
3830
|
}
|
|
2906
3831
|
);
|
|
@@ -3048,8 +3973,8 @@ var isEUCountry = (countryCode) => {
|
|
|
3048
3973
|
};
|
|
3049
3974
|
|
|
3050
3975
|
// src/components/country-select/CountrySelect.tsx
|
|
3051
|
-
import { Fragment as Fragment3, jsx as
|
|
3052
|
-
var CountrySelect =
|
|
3976
|
+
import { Fragment as Fragment3, jsx as jsx42, jsxs as jsxs22 } from "react/jsx-runtime";
|
|
3977
|
+
var CountrySelect = React23.forwardRef(
|
|
3053
3978
|
({
|
|
3054
3979
|
value,
|
|
3055
3980
|
onValueChange,
|
|
@@ -3059,14 +3984,14 @@ var CountrySelect = React21.forwardRef(
|
|
|
3059
3984
|
align = "center",
|
|
3060
3985
|
sideOffset = 4
|
|
3061
3986
|
}, ref) => {
|
|
3062
|
-
const [open, setOpen] =
|
|
3063
|
-
const selectedCountry =
|
|
3064
|
-
return /* @__PURE__ */
|
|
3065
|
-
/* @__PURE__ */
|
|
3987
|
+
const [open, setOpen] = React23.useState(false);
|
|
3988
|
+
const selectedCountry = React23.useMemo(() => COUNTRIES.find((c) => c.code === value), [value]);
|
|
3989
|
+
return /* @__PURE__ */ jsxs22(Popover, { open, onOpenChange: setOpen, children: [
|
|
3990
|
+
/* @__PURE__ */ jsxs22(
|
|
3066
3991
|
PopoverTrigger,
|
|
3067
3992
|
{
|
|
3068
3993
|
ref,
|
|
3069
|
-
render: /* @__PURE__ */
|
|
3994
|
+
render: /* @__PURE__ */ jsx42(
|
|
3070
3995
|
"button",
|
|
3071
3996
|
{
|
|
3072
3997
|
type: "button",
|
|
@@ -3088,16 +4013,16 @@ var CountrySelect = React21.forwardRef(
|
|
|
3088
4013
|
}
|
|
3089
4014
|
),
|
|
3090
4015
|
children: [
|
|
3091
|
-
/* @__PURE__ */
|
|
3092
|
-
/* @__PURE__ */
|
|
3093
|
-
/* @__PURE__ */
|
|
3094
|
-
/* @__PURE__ */
|
|
4016
|
+
/* @__PURE__ */ jsx42("div", { className: "flex items-center gap-2 min-w-0 flex-1", children: selectedCountry ? /* @__PURE__ */ jsxs22(Fragment3, { children: [
|
|
4017
|
+
/* @__PURE__ */ jsx42("span", { className: "text-xl flex-shrink-0", children: selectedCountry.flag }),
|
|
4018
|
+
/* @__PURE__ */ jsx42("span", { className: "truncate", children: selectedCountry.name }),
|
|
4019
|
+
/* @__PURE__ */ jsxs22("span", { className: "text-berget-muted-foreground text-xs flex-shrink-0", children: [
|
|
3095
4020
|
"(",
|
|
3096
4021
|
selectedCountry.code,
|
|
3097
4022
|
")"
|
|
3098
4023
|
] })
|
|
3099
|
-
] }) : /* @__PURE__ */
|
|
3100
|
-
/* @__PURE__ */
|
|
4024
|
+
] }) : /* @__PURE__ */ jsxs22(Fragment3, { children: [
|
|
4025
|
+
/* @__PURE__ */ jsx42(
|
|
3101
4026
|
Icon,
|
|
3102
4027
|
{
|
|
3103
4028
|
icon: Globe,
|
|
@@ -3105,9 +4030,9 @@ var CountrySelect = React21.forwardRef(
|
|
|
3105
4030
|
className: "flex-shrink-0 text-berget-muted-foreground"
|
|
3106
4031
|
}
|
|
3107
4032
|
),
|
|
3108
|
-
/* @__PURE__ */
|
|
4033
|
+
/* @__PURE__ */ jsx42("span", { className: "text-berget-muted-foreground truncate", children: placeholder })
|
|
3109
4034
|
] }) }),
|
|
3110
|
-
/* @__PURE__ */
|
|
4035
|
+
/* @__PURE__ */ jsx42(
|
|
3111
4036
|
Icon,
|
|
3112
4037
|
{
|
|
3113
4038
|
icon: ChevronDown2,
|
|
@@ -3122,17 +4047,17 @@ var CountrySelect = React21.forwardRef(
|
|
|
3122
4047
|
]
|
|
3123
4048
|
}
|
|
3124
4049
|
),
|
|
3125
|
-
/* @__PURE__ */
|
|
4050
|
+
/* @__PURE__ */ jsx42(
|
|
3126
4051
|
PopoverContent,
|
|
3127
4052
|
{
|
|
3128
4053
|
align,
|
|
3129
4054
|
sideOffset,
|
|
3130
4055
|
className: "w-[var(--radix-popover-trigger-width)] p-0",
|
|
3131
|
-
children: /* @__PURE__ */
|
|
3132
|
-
/* @__PURE__ */
|
|
3133
|
-
/* @__PURE__ */
|
|
3134
|
-
/* @__PURE__ */
|
|
3135
|
-
/* @__PURE__ */
|
|
4056
|
+
children: /* @__PURE__ */ jsxs22(Command, { children: [
|
|
4057
|
+
/* @__PURE__ */ jsx42(CommandInput, { placeholder: "Search country..." }),
|
|
4058
|
+
/* @__PURE__ */ jsxs22(CommandList, { children: [
|
|
4059
|
+
/* @__PURE__ */ jsx42(CommandEmpty, { children: "No countries found." }),
|
|
4060
|
+
/* @__PURE__ */ jsx42(CommandGroup, { children: COUNTRIES.map((country) => /* @__PURE__ */ jsxs22(
|
|
3136
4061
|
CommandItem,
|
|
3137
4062
|
{
|
|
3138
4063
|
value: `${country.name} ${country.code}`,
|
|
@@ -3146,12 +4071,12 @@ var CountrySelect = React21.forwardRef(
|
|
|
3146
4071
|
value === country.code && "bg-berget-brand-granite-800/40"
|
|
3147
4072
|
),
|
|
3148
4073
|
children: [
|
|
3149
|
-
/* @__PURE__ */
|
|
3150
|
-
/* @__PURE__ */
|
|
3151
|
-
/* @__PURE__ */
|
|
3152
|
-
/* @__PURE__ */
|
|
4074
|
+
/* @__PURE__ */ jsx42("span", { className: "text-xl flex-shrink-0", children: country.flag }),
|
|
4075
|
+
/* @__PURE__ */ jsxs22("div", { className: "flex-1 min-w-0", children: [
|
|
4076
|
+
/* @__PURE__ */ jsx42("div", { className: "text-sm truncate", children: country.name }),
|
|
4077
|
+
/* @__PURE__ */ jsx42("div", { className: "text-xs text-berget-muted-foreground", children: country.code })
|
|
3153
4078
|
] }),
|
|
3154
|
-
value === country.code && /* @__PURE__ */
|
|
4079
|
+
value === country.code && /* @__PURE__ */ jsx42("div", { className: "w-2 h-2 rounded-full bg-berget-brand-granite-400 flex-shrink-0" })
|
|
3155
4080
|
]
|
|
3156
4081
|
},
|
|
3157
4082
|
country.code
|
|
@@ -3166,10 +4091,10 @@ var CountrySelect = React21.forwardRef(
|
|
|
3166
4091
|
CountrySelect.displayName = "CountrySelect";
|
|
3167
4092
|
|
|
3168
4093
|
// src/components/text-area/TextArea.tsx
|
|
3169
|
-
import * as
|
|
3170
|
-
import { cva as
|
|
3171
|
-
import { jsx as
|
|
3172
|
-
var textAreaVariants =
|
|
4094
|
+
import * as React24 from "react";
|
|
4095
|
+
import { cva as cva15 } from "class-variance-authority";
|
|
4096
|
+
import { jsx as jsx43, jsxs as jsxs23 } from "react/jsx-runtime";
|
|
4097
|
+
var textAreaVariants = cva15(
|
|
3173
4098
|
"rounded-berget-xs bg-card px-4 py-3 transition-colors duration-200 focus-visible:border-berget-form-focus-border focus-visible:ring-0 focus-visible:ring-offset-0 resize-y",
|
|
3174
4099
|
{
|
|
3175
4100
|
variants: {
|
|
@@ -3191,7 +4116,7 @@ var textAreaVariants = cva14(
|
|
|
3191
4116
|
}
|
|
3192
4117
|
}
|
|
3193
4118
|
);
|
|
3194
|
-
var TextArea =
|
|
4119
|
+
var TextArea = React24.forwardRef(
|
|
3195
4120
|
({
|
|
3196
4121
|
className,
|
|
3197
4122
|
variant,
|
|
@@ -3211,13 +4136,13 @@ var TextArea = React22.forwardRef(
|
|
|
3211
4136
|
actionButton,
|
|
3212
4137
|
...props
|
|
3213
4138
|
}, ref) => {
|
|
3214
|
-
const generatedId =
|
|
4139
|
+
const generatedId = React24.useId();
|
|
3215
4140
|
const textareaId = id || generatedId;
|
|
3216
4141
|
const errorId = `${textareaId}-error`;
|
|
3217
4142
|
const descriptionId = `${textareaId}-description`;
|
|
3218
4143
|
const characterCount = typeof value === "string" ? value.length : 0;
|
|
3219
|
-
return /* @__PURE__ */
|
|
3220
|
-
label && /* @__PURE__ */
|
|
4144
|
+
return /* @__PURE__ */ jsxs23("div", { className: "flex flex-col gap-2", children: [
|
|
4145
|
+
label && /* @__PURE__ */ jsx43(
|
|
3221
4146
|
"label",
|
|
3222
4147
|
{
|
|
3223
4148
|
htmlFor: textareaId,
|
|
@@ -3229,9 +4154,9 @@ var TextArea = React22.forwardRef(
|
|
|
3229
4154
|
children: label
|
|
3230
4155
|
}
|
|
3231
4156
|
),
|
|
3232
|
-
/* @__PURE__ */
|
|
3233
|
-
icon && /* @__PURE__ */
|
|
3234
|
-
/* @__PURE__ */
|
|
4157
|
+
/* @__PURE__ */ jsxs23("div", { className: "relative", children: [
|
|
4158
|
+
icon && /* @__PURE__ */ jsx43("div", { className: "absolute left-2 top-1/2 -translate-y-1/2", children: icon }),
|
|
4159
|
+
/* @__PURE__ */ jsx43(
|
|
3235
4160
|
Textarea,
|
|
3236
4161
|
{
|
|
3237
4162
|
ref,
|
|
@@ -3256,13 +4181,13 @@ var TextArea = React22.forwardRef(
|
|
|
3256
4181
|
...props
|
|
3257
4182
|
}
|
|
3258
4183
|
),
|
|
3259
|
-
secondaryIcon && /* @__PURE__ */
|
|
3260
|
-
actionButton && /* @__PURE__ */
|
|
4184
|
+
secondaryIcon && /* @__PURE__ */ jsx43("div", { className: "absolute right-12 top-1/2 -translate-y-1/2", children: secondaryIcon }),
|
|
4185
|
+
actionButton && /* @__PURE__ */ jsx43("div", { className: "absolute right-2 top-1/2 -translate-y-1/2", children: actionButton })
|
|
3261
4186
|
] }),
|
|
3262
|
-
(description || error || showCount && maxLength) && /* @__PURE__ */
|
|
3263
|
-
description && /* @__PURE__ */
|
|
3264
|
-
(error || showCount && maxLength) && /* @__PURE__ */
|
|
3265
|
-
showCount && maxLength && /* @__PURE__ */
|
|
4187
|
+
(description || error || showCount && maxLength) && /* @__PURE__ */ jsxs23("div", { className: "flex items-center justify-between gap-2", children: [
|
|
4188
|
+
description && /* @__PURE__ */ jsx43(Typography, { variant: "xs", color: "muted", id: descriptionId, children: description }),
|
|
4189
|
+
(error || showCount && maxLength) && /* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-2 ml-auto", children: [
|
|
4190
|
+
showCount && maxLength && /* @__PURE__ */ jsxs23(
|
|
3266
4191
|
Typography,
|
|
3267
4192
|
{
|
|
3268
4193
|
variant: "xs",
|
|
@@ -3276,7 +4201,7 @@ var TextArea = React22.forwardRef(
|
|
|
3276
4201
|
]
|
|
3277
4202
|
}
|
|
3278
4203
|
),
|
|
3279
|
-
error && /* @__PURE__ */
|
|
4204
|
+
error && /* @__PURE__ */ jsx43(
|
|
3280
4205
|
Typography,
|
|
3281
4206
|
{
|
|
3282
4207
|
variant: "xs",
|
|
@@ -3293,14 +4218,14 @@ var TextArea = React22.forwardRef(
|
|
|
3293
4218
|
TextArea.displayName = "TextArea";
|
|
3294
4219
|
|
|
3295
4220
|
// src/primitives/label.tsx
|
|
3296
|
-
import { cn as
|
|
3297
|
-
import { jsx as
|
|
4221
|
+
import { cn as cn21 } from "cn";
|
|
4222
|
+
import { jsx as jsx44 } from "react/jsx-runtime";
|
|
3298
4223
|
function Label({ className, ...props }) {
|
|
3299
|
-
return /* @__PURE__ */
|
|
4224
|
+
return /* @__PURE__ */ jsx44(
|
|
3300
4225
|
"label",
|
|
3301
4226
|
{
|
|
3302
4227
|
"data-slot": "label",
|
|
3303
|
-
className:
|
|
4228
|
+
className: cn21(
|
|
3304
4229
|
"flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",
|
|
3305
4230
|
className
|
|
3306
4231
|
),
|
|
@@ -3310,16 +4235,16 @@ function Label({ className, ...props }) {
|
|
|
3310
4235
|
}
|
|
3311
4236
|
|
|
3312
4237
|
// src/primitives/field.tsx
|
|
3313
|
-
import { useMemo as
|
|
3314
|
-
import { cva as
|
|
3315
|
-
import { cn as
|
|
3316
|
-
import { jsx as
|
|
4238
|
+
import { useMemo as useMemo4 } from "react";
|
|
4239
|
+
import { cva as cva16 } from "class-variance-authority";
|
|
4240
|
+
import { cn as cn22 } from "cn";
|
|
4241
|
+
import { jsx as jsx45, jsxs as jsxs24 } from "react/jsx-runtime";
|
|
3317
4242
|
function FieldSet({ className, ...props }) {
|
|
3318
|
-
return /* @__PURE__ */
|
|
4243
|
+
return /* @__PURE__ */ jsx45(
|
|
3319
4244
|
"fieldset",
|
|
3320
4245
|
{
|
|
3321
4246
|
"data-slot": "field-set",
|
|
3322
|
-
className:
|
|
4247
|
+
className: cn22(
|
|
3323
4248
|
"flex flex-col gap-4 has-[>[data-slot=checkbox-group]]:gap-3 has-[>[data-slot=radio-group]]:gap-3",
|
|
3324
4249
|
className
|
|
3325
4250
|
),
|
|
@@ -3332,12 +4257,12 @@ function FieldLegend({
|
|
|
3332
4257
|
variant = "legend",
|
|
3333
4258
|
...props
|
|
3334
4259
|
}) {
|
|
3335
|
-
return /* @__PURE__ */
|
|
4260
|
+
return /* @__PURE__ */ jsx45(
|
|
3336
4261
|
"legend",
|
|
3337
4262
|
{
|
|
3338
4263
|
"data-slot": "field-legend",
|
|
3339
4264
|
"data-variant": variant,
|
|
3340
|
-
className:
|
|
4265
|
+
className: cn22(
|
|
3341
4266
|
"mb-1.5 font-medium data-[variant=label]:text-sm data-[variant=legend]:text-base",
|
|
3342
4267
|
className
|
|
3343
4268
|
),
|
|
@@ -3346,11 +4271,11 @@ function FieldLegend({
|
|
|
3346
4271
|
);
|
|
3347
4272
|
}
|
|
3348
4273
|
function FieldGroup({ className, ...props }) {
|
|
3349
|
-
return /* @__PURE__ */
|
|
4274
|
+
return /* @__PURE__ */ jsx45(
|
|
3350
4275
|
"div",
|
|
3351
4276
|
{
|
|
3352
4277
|
"data-slot": "field-group",
|
|
3353
|
-
className:
|
|
4278
|
+
className: cn22(
|
|
3354
4279
|
"group/field-group @container/field-group flex w-full flex-col gap-5 data-[slot=checkbox-group]:gap-3 *:data-[slot=field-group]:gap-4",
|
|
3355
4280
|
className
|
|
3356
4281
|
),
|
|
@@ -3358,7 +4283,7 @@ function FieldGroup({ className, ...props }) {
|
|
|
3358
4283
|
}
|
|
3359
4284
|
);
|
|
3360
4285
|
}
|
|
3361
|
-
var fieldVariants =
|
|
4286
|
+
var fieldVariants = cva16(
|
|
3362
4287
|
"group/field flex w-full gap-2 data-[invalid=true]:text-destructive",
|
|
3363
4288
|
{
|
|
3364
4289
|
variants: {
|
|
@@ -3378,23 +4303,23 @@ function Field({
|
|
|
3378
4303
|
orientation = "vertical",
|
|
3379
4304
|
...props
|
|
3380
4305
|
}) {
|
|
3381
|
-
return /* @__PURE__ */
|
|
4306
|
+
return /* @__PURE__ */ jsx45(
|
|
3382
4307
|
"div",
|
|
3383
4308
|
{
|
|
3384
4309
|
role: "group",
|
|
3385
4310
|
"data-slot": "field",
|
|
3386
4311
|
"data-orientation": orientation,
|
|
3387
|
-
className:
|
|
4312
|
+
className: cn22(fieldVariants({ orientation }), className),
|
|
3388
4313
|
...props
|
|
3389
4314
|
}
|
|
3390
4315
|
);
|
|
3391
4316
|
}
|
|
3392
4317
|
function FieldContent({ className, ...props }) {
|
|
3393
|
-
return /* @__PURE__ */
|
|
4318
|
+
return /* @__PURE__ */ jsx45(
|
|
3394
4319
|
"div",
|
|
3395
4320
|
{
|
|
3396
4321
|
"data-slot": "field-content",
|
|
3397
|
-
className:
|
|
4322
|
+
className: cn22(
|
|
3398
4323
|
"group/field-content flex flex-1 flex-col gap-0.5 leading-snug",
|
|
3399
4324
|
className
|
|
3400
4325
|
),
|
|
@@ -3406,11 +4331,11 @@ function FieldLabel({
|
|
|
3406
4331
|
className,
|
|
3407
4332
|
...props
|
|
3408
4333
|
}) {
|
|
3409
|
-
return /* @__PURE__ */
|
|
4334
|
+
return /* @__PURE__ */ jsx45(
|
|
3410
4335
|
Label,
|
|
3411
4336
|
{
|
|
3412
4337
|
"data-slot": "field-label",
|
|
3413
|
-
className:
|
|
4338
|
+
className: cn22(
|
|
3414
4339
|
"group/field-label peer/field-label flex w-fit gap-2 leading-snug group-data-[disabled=true]/field:opacity-50 has-data-checked:border-primary/30 has-data-checked:bg-primary/5 has-[>[data-slot=field]]:rounded-lg has-[>[data-slot=field]]:border has-[>[data-slot=field]]:not-has-[:disabled,[data-disabled]]:hover:bg-muted/50 has-[>[data-slot=field]]:has-[:focus-visible]:border-ring has-[>[data-slot=field]]:has-[:focus-visible]:ring-3 has-[>[data-slot=field]]:has-[:focus-visible]:ring-ring/50 *:data-[slot=field]:p-2.5 dark:has-data-checked:border-primary/20 dark:has-data-checked:bg-primary/10",
|
|
3415
4340
|
"has-[>[data-slot=field]]:w-full has-[>[data-slot=field]]:flex-col",
|
|
3416
4341
|
className
|
|
@@ -3420,11 +4345,11 @@ function FieldLabel({
|
|
|
3420
4345
|
);
|
|
3421
4346
|
}
|
|
3422
4347
|
function FieldTitle({ className, ...props }) {
|
|
3423
|
-
return /* @__PURE__ */
|
|
4348
|
+
return /* @__PURE__ */ jsx45(
|
|
3424
4349
|
"div",
|
|
3425
4350
|
{
|
|
3426
4351
|
"data-slot": "field-label",
|
|
3427
|
-
className:
|
|
4352
|
+
className: cn22(
|
|
3428
4353
|
"flex w-fit items-center gap-2 text-sm font-medium group-data-[disabled=true]/field:opacity-50",
|
|
3429
4354
|
className
|
|
3430
4355
|
),
|
|
@@ -3433,11 +4358,11 @@ function FieldTitle({ className, ...props }) {
|
|
|
3433
4358
|
);
|
|
3434
4359
|
}
|
|
3435
4360
|
function FieldDescription({ className, ...props }) {
|
|
3436
|
-
return /* @__PURE__ */
|
|
4361
|
+
return /* @__PURE__ */ jsx45(
|
|
3437
4362
|
"p",
|
|
3438
4363
|
{
|
|
3439
4364
|
"data-slot": "field-description",
|
|
3440
|
-
className:
|
|
4365
|
+
className: cn22(
|
|
3441
4366
|
"text-left text-sm leading-normal font-normal text-muted-foreground group-has-data-horizontal/field:text-balance [[data-variant=legend]+&]:-mt-1.5",
|
|
3442
4367
|
"last:mt-0 nth-last-2:-mt-1",
|
|
3443
4368
|
"[&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary",
|
|
@@ -3452,19 +4377,19 @@ function FieldSeparator({
|
|
|
3452
4377
|
className,
|
|
3453
4378
|
...props
|
|
3454
4379
|
}) {
|
|
3455
|
-
return /* @__PURE__ */
|
|
4380
|
+
return /* @__PURE__ */ jsxs24(
|
|
3456
4381
|
"div",
|
|
3457
4382
|
{
|
|
3458
4383
|
"data-slot": "field-separator",
|
|
3459
4384
|
"data-content": !!children,
|
|
3460
|
-
className:
|
|
4385
|
+
className: cn22(
|
|
3461
4386
|
"relative -my-2 h-5 text-sm group-data-[variant=outline]/field-group:-mb-2",
|
|
3462
4387
|
className
|
|
3463
4388
|
),
|
|
3464
4389
|
...props,
|
|
3465
4390
|
children: [
|
|
3466
|
-
/* @__PURE__ */
|
|
3467
|
-
children && /* @__PURE__ */
|
|
4391
|
+
/* @__PURE__ */ jsx45(Separator, { className: "absolute inset-0 top-1/2" }),
|
|
4392
|
+
children && /* @__PURE__ */ jsx45(
|
|
3468
4393
|
"span",
|
|
3469
4394
|
{
|
|
3470
4395
|
className: "relative mx-auto block w-fit bg-background px-2 text-muted-foreground",
|
|
@@ -3482,7 +4407,7 @@ function FieldError({
|
|
|
3482
4407
|
errors,
|
|
3483
4408
|
...props
|
|
3484
4409
|
}) {
|
|
3485
|
-
const content =
|
|
4410
|
+
const content = useMemo4(() => {
|
|
3486
4411
|
if (children) {
|
|
3487
4412
|
return children;
|
|
3488
4413
|
}
|
|
@@ -3495,19 +4420,19 @@ function FieldError({
|
|
|
3495
4420
|
if (uniqueErrors?.length == 1) {
|
|
3496
4421
|
return uniqueErrors[0]?.message;
|
|
3497
4422
|
}
|
|
3498
|
-
return /* @__PURE__ */
|
|
3499
|
-
(error, index) => error?.message && /* @__PURE__ */
|
|
4423
|
+
return /* @__PURE__ */ jsx45("ul", { className: "ml-4 flex list-disc flex-col gap-1", children: uniqueErrors.map(
|
|
4424
|
+
(error, index) => error?.message && /* @__PURE__ */ jsx45("li", { children: error.message }, index)
|
|
3500
4425
|
) });
|
|
3501
4426
|
}, [children, errors]);
|
|
3502
4427
|
if (!content) {
|
|
3503
4428
|
return null;
|
|
3504
4429
|
}
|
|
3505
|
-
return /* @__PURE__ */
|
|
4430
|
+
return /* @__PURE__ */ jsx45(
|
|
3506
4431
|
"div",
|
|
3507
4432
|
{
|
|
3508
4433
|
role: "alert",
|
|
3509
4434
|
"data-slot": "field-error",
|
|
3510
|
-
className:
|
|
4435
|
+
className: cn22("text-sm font-normal text-destructive", className),
|
|
3511
4436
|
...props,
|
|
3512
4437
|
children: content
|
|
3513
4438
|
}
|
|
@@ -3515,11 +4440,11 @@ function FieldError({
|
|
|
3515
4440
|
}
|
|
3516
4441
|
|
|
3517
4442
|
// src/components/link/Link.tsx
|
|
3518
|
-
import * as
|
|
3519
|
-
import { cva as
|
|
4443
|
+
import * as React25 from "react";
|
|
4444
|
+
import { cva as cva17 } from "class-variance-authority";
|
|
3520
4445
|
import { ExternalLink } from "lucide-react";
|
|
3521
|
-
import { jsx as
|
|
3522
|
-
var linkVariants =
|
|
4446
|
+
import { jsx as jsx46, jsxs as jsxs25 } from "react/jsx-runtime";
|
|
4447
|
+
var linkVariants = cva17(
|
|
3523
4448
|
"inline-flex cursor-pointer items-center gap-2 transition-all duration-200 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:pointer-events-none disabled:opacity-50",
|
|
3524
4449
|
{
|
|
3525
4450
|
variants: {
|
|
@@ -3543,7 +4468,7 @@ var linkVariants = cva16(
|
|
|
3543
4468
|
}
|
|
3544
4469
|
}
|
|
3545
4470
|
);
|
|
3546
|
-
var Link =
|
|
4471
|
+
var Link = React25.forwardRef(
|
|
3547
4472
|
({
|
|
3548
4473
|
className,
|
|
3549
4474
|
variant,
|
|
@@ -3556,7 +4481,7 @@ var Link = React23.forwardRef(
|
|
|
3556
4481
|
...props
|
|
3557
4482
|
}, ref) => {
|
|
3558
4483
|
const isExternal = external || typeof props.href === "string" && (props.href.startsWith("http://") || props.href.startsWith("https://") || props.href.startsWith("mailto:") || props.href.startsWith("tel:"));
|
|
3559
|
-
return /* @__PURE__ */
|
|
4484
|
+
return /* @__PURE__ */ jsxs25(
|
|
3560
4485
|
"a",
|
|
3561
4486
|
{
|
|
3562
4487
|
ref,
|
|
@@ -3572,8 +4497,8 @@ var Link = React23.forwardRef(
|
|
|
3572
4497
|
},
|
|
3573
4498
|
children: [
|
|
3574
4499
|
children,
|
|
3575
|
-
icon && /* @__PURE__ */
|
|
3576
|
-
showExternalIcon && isExternal && !disabled && /* @__PURE__ */
|
|
4500
|
+
icon && /* @__PURE__ */ jsx46("span", { className: "inline-flex items-center", children: icon }),
|
|
4501
|
+
showExternalIcon && isExternal && !disabled && /* @__PURE__ */ jsx46("span", { className: "inline-flex items-center ml-1 opacity-60", "aria-hidden": "true", children: /* @__PURE__ */ jsx46(Icon, { icon: ExternalLink, size: 16 }) })
|
|
3577
4502
|
]
|
|
3578
4503
|
}
|
|
3579
4504
|
);
|
|
@@ -3582,11 +4507,11 @@ var Link = React23.forwardRef(
|
|
|
3582
4507
|
Link.displayName = "Link";
|
|
3583
4508
|
|
|
3584
4509
|
// src/components/container/Container.tsx
|
|
3585
|
-
import * as
|
|
3586
|
-
import { mergeProps as
|
|
3587
|
-
import { useRender as
|
|
3588
|
-
import { cva as
|
|
3589
|
-
var containerVariants =
|
|
4510
|
+
import * as React26 from "react";
|
|
4511
|
+
import { mergeProps as mergeProps3 } from "@base-ui/react/merge-props";
|
|
4512
|
+
import { useRender as useRender3 } from "@base-ui/react/use-render";
|
|
4513
|
+
import { cva as cva18 } from "class-variance-authority";
|
|
4514
|
+
var containerVariants = cva18("w-full mx-auto", {
|
|
3590
4515
|
variants: {
|
|
3591
4516
|
size: {
|
|
3592
4517
|
sm: "max-w-3xl",
|
|
@@ -3607,13 +4532,13 @@ var containerVariants = cva17("w-full mx-auto", {
|
|
|
3607
4532
|
padding: "md"
|
|
3608
4533
|
}
|
|
3609
4534
|
});
|
|
3610
|
-
var Container =
|
|
4535
|
+
var Container = React26.forwardRef(
|
|
3611
4536
|
({ className, size, padding, asChild = false, children, ...props }, ref) => {
|
|
3612
|
-
return
|
|
4537
|
+
return useRender3({
|
|
3613
4538
|
ref,
|
|
3614
4539
|
defaultTagName: "div",
|
|
3615
4540
|
render: asChild ? children : void 0,
|
|
3616
|
-
props:
|
|
4541
|
+
props: mergeProps3(
|
|
3617
4542
|
{
|
|
3618
4543
|
className: cn(containerVariants({ size, padding }), className),
|
|
3619
4544
|
children: asChild ? void 0 : children
|
|
@@ -3626,11 +4551,11 @@ var Container = React24.forwardRef(
|
|
|
3626
4551
|
Container.displayName = "Container";
|
|
3627
4552
|
|
|
3628
4553
|
// src/components/grid/Grid.tsx
|
|
3629
|
-
import * as
|
|
3630
|
-
import { cva as
|
|
3631
|
-
import { mergeProps as
|
|
3632
|
-
import { useRender as
|
|
3633
|
-
var gridVariants =
|
|
4554
|
+
import * as React27 from "react";
|
|
4555
|
+
import { cva as cva19 } from "class-variance-authority";
|
|
4556
|
+
import { mergeProps as mergeProps4 } from "@base-ui/react/merge-props";
|
|
4557
|
+
import { useRender as useRender4 } from "@base-ui/react/use-render";
|
|
4558
|
+
var gridVariants = cva19("grid", {
|
|
3634
4559
|
variants: {
|
|
3635
4560
|
align: {
|
|
3636
4561
|
start: "items-start",
|
|
@@ -3652,13 +4577,13 @@ var gridVariants = cva18("grid", {
|
|
|
3652
4577
|
justify: "start"
|
|
3653
4578
|
}
|
|
3654
4579
|
});
|
|
3655
|
-
var Grid =
|
|
4580
|
+
var Grid = React27.forwardRef(
|
|
3656
4581
|
({ className, align, justify, cols, rows, gap, gapX, gapY, asChild = false, children, ...props }, ref) => {
|
|
3657
|
-
return
|
|
4582
|
+
return useRender4({
|
|
3658
4583
|
ref,
|
|
3659
4584
|
defaultTagName: "div",
|
|
3660
4585
|
render: asChild ? children : void 0,
|
|
3661
|
-
props:
|
|
4586
|
+
props: mergeProps4(
|
|
3662
4587
|
{
|
|
3663
4588
|
className: cn(
|
|
3664
4589
|
gridVariants({ align, justify }),
|
|
@@ -3679,11 +4604,11 @@ var Grid = React25.forwardRef(
|
|
|
3679
4604
|
Grid.displayName = "Grid";
|
|
3680
4605
|
|
|
3681
4606
|
// src/components/box/Box.tsx
|
|
3682
|
-
import * as
|
|
3683
|
-
import { cva as
|
|
3684
|
-
import { mergeProps as
|
|
3685
|
-
import { useRender as
|
|
3686
|
-
var boxVariants =
|
|
4607
|
+
import * as React28 from "react";
|
|
4608
|
+
import { cva as cva20 } from "class-variance-authority";
|
|
4609
|
+
import { mergeProps as mergeProps5 } from "@base-ui/react/merge-props";
|
|
4610
|
+
import { useRender as useRender5 } from "@base-ui/react/use-render";
|
|
4611
|
+
var boxVariants = cva20("flex", {
|
|
3687
4612
|
variants: {
|
|
3688
4613
|
direction: {
|
|
3689
4614
|
row: "flex-row",
|
|
@@ -3719,13 +4644,13 @@ var boxVariants = cva19("flex", {
|
|
|
3719
4644
|
wrap: "nowrap"
|
|
3720
4645
|
}
|
|
3721
4646
|
});
|
|
3722
|
-
var Box =
|
|
4647
|
+
var Box = React28.forwardRef(
|
|
3723
4648
|
({ className, direction, align, justify, wrap, gap, asChild = false, children, ...props }, ref) => {
|
|
3724
|
-
return
|
|
4649
|
+
return useRender5({
|
|
3725
4650
|
ref,
|
|
3726
4651
|
defaultTagName: "div",
|
|
3727
4652
|
render: asChild ? children : void 0,
|
|
3728
|
-
props:
|
|
4653
|
+
props: mergeProps5(
|
|
3729
4654
|
{
|
|
3730
4655
|
className: cn(
|
|
3731
4656
|
boxVariants({ direction, align, justify, wrap }),
|
|
@@ -3742,22 +4667,22 @@ var Box = React26.forwardRef(
|
|
|
3742
4667
|
Box.displayName = "Box";
|
|
3743
4668
|
|
|
3744
4669
|
// src/components/language-select/LanguageSelect.tsx
|
|
3745
|
-
import * as
|
|
4670
|
+
import * as React29 from "react";
|
|
3746
4671
|
import { Globe as Globe2 } from "lucide-react";
|
|
3747
|
-
import { jsx as
|
|
3748
|
-
var LanguageSelect =
|
|
4672
|
+
import { jsx as jsx47, jsxs as jsxs26 } from "react/jsx-runtime";
|
|
4673
|
+
var LanguageSelect = React29.forwardRef(
|
|
3749
4674
|
({ className, options, value, onValueChange }, ref) => {
|
|
3750
|
-
return /* @__PURE__ */
|
|
3751
|
-
/* @__PURE__ */
|
|
3752
|
-
/* @__PURE__ */
|
|
3753
|
-
/* @__PURE__ */
|
|
4675
|
+
return /* @__PURE__ */ jsxs26(DropdownMenu, { children: [
|
|
4676
|
+
/* @__PURE__ */ jsx47(DropdownMenuTrigger, { ref, asChild: true, children: /* @__PURE__ */ jsxs26(Button2, { variant: "outline", size: "icon", className, "aria-label": "Select language", children: [
|
|
4677
|
+
/* @__PURE__ */ jsx47("span", { className: "sr-only", children: "Select language" }),
|
|
4678
|
+
/* @__PURE__ */ jsx47(Icon, { icon: Globe2, size: 16, "aria-hidden": true })
|
|
3754
4679
|
] }) }),
|
|
3755
|
-
/* @__PURE__ */
|
|
4680
|
+
/* @__PURE__ */ jsx47(DropdownMenuContent, { align: "start", children: /* @__PURE__ */ jsx47(
|
|
3756
4681
|
DropdownMenuRadioGroup,
|
|
3757
4682
|
{
|
|
3758
4683
|
value,
|
|
3759
4684
|
onValueChange: onValueChange ? (v) => onValueChange(v) : void 0,
|
|
3760
|
-
children: options.map((option) => /* @__PURE__ */
|
|
4685
|
+
children: options.map((option) => /* @__PURE__ */ jsx47(
|
|
3761
4686
|
DropdownMenuRadioItem,
|
|
3762
4687
|
{
|
|
3763
4688
|
value: option.value,
|
|
@@ -3775,13 +4700,13 @@ var LanguageSelect = React27.forwardRef(
|
|
|
3775
4700
|
LanguageSelect.displayName = "LanguageSelect";
|
|
3776
4701
|
|
|
3777
4702
|
// src/components/list/List.tsx
|
|
3778
|
-
import * as
|
|
4703
|
+
import * as React31 from "react";
|
|
3779
4704
|
|
|
3780
4705
|
// src/components/divider/Divider.tsx
|
|
3781
|
-
import * as
|
|
3782
|
-
import { cva as
|
|
3783
|
-
import { jsx as
|
|
3784
|
-
var dividerVariants =
|
|
4706
|
+
import * as React30 from "react";
|
|
4707
|
+
import { cva as cva21 } from "class-variance-authority";
|
|
4708
|
+
import { jsx as jsx48, jsxs as jsxs27 } from "react/jsx-runtime";
|
|
4709
|
+
var dividerVariants = cva21("", {
|
|
3785
4710
|
variants: {
|
|
3786
4711
|
variant: {
|
|
3787
4712
|
default: "bg-berget-separator",
|
|
@@ -3801,7 +4726,7 @@ var dividerVariants = cva20("", {
|
|
|
3801
4726
|
size: "thin"
|
|
3802
4727
|
}
|
|
3803
4728
|
});
|
|
3804
|
-
var Divider =
|
|
4729
|
+
var Divider = React30.forwardRef(
|
|
3805
4730
|
({
|
|
3806
4731
|
className,
|
|
3807
4732
|
orientation = "horizontal",
|
|
@@ -3812,16 +4737,16 @@ var Divider = React28.forwardRef(
|
|
|
3812
4737
|
...props
|
|
3813
4738
|
}, ref) => {
|
|
3814
4739
|
if (label) {
|
|
3815
|
-
return /* @__PURE__ */
|
|
3816
|
-
labelPosition !== "right" && /* @__PURE__ */
|
|
4740
|
+
return /* @__PURE__ */ jsxs27("div", { ref, className: cn("flex items-center w-full", className), ...props, children: [
|
|
4741
|
+
labelPosition !== "right" && /* @__PURE__ */ jsx48(
|
|
3817
4742
|
Separator,
|
|
3818
4743
|
{
|
|
3819
4744
|
orientation: "horizontal",
|
|
3820
4745
|
className: cn(dividerVariants({ variant, size }), "flex-1")
|
|
3821
4746
|
}
|
|
3822
4747
|
),
|
|
3823
|
-
/* @__PURE__ */
|
|
3824
|
-
labelPosition !== "left" && /* @__PURE__ */
|
|
4748
|
+
/* @__PURE__ */ jsx48(Typography, { variant: "small", color: "muted", className: "px-4 whitespace-nowrap", children: label }),
|
|
4749
|
+
labelPosition !== "left" && /* @__PURE__ */ jsx48(
|
|
3825
4750
|
Separator,
|
|
3826
4751
|
{
|
|
3827
4752
|
orientation: "horizontal",
|
|
@@ -3830,7 +4755,7 @@ var Divider = React28.forwardRef(
|
|
|
3830
4755
|
)
|
|
3831
4756
|
] });
|
|
3832
4757
|
}
|
|
3833
|
-
return /* @__PURE__ */
|
|
4758
|
+
return /* @__PURE__ */ jsx48(
|
|
3834
4759
|
Separator,
|
|
3835
4760
|
{
|
|
3836
4761
|
ref,
|
|
@@ -3848,19 +4773,19 @@ Divider.displayName = "Divider";
|
|
|
3848
4773
|
|
|
3849
4774
|
// src/components/list/List.tsx
|
|
3850
4775
|
import { Check as Check3 } from "lucide-react";
|
|
3851
|
-
import { jsx as
|
|
3852
|
-
var List =
|
|
4776
|
+
import { jsx as jsx49, jsxs as jsxs28 } from "react/jsx-runtime";
|
|
4777
|
+
var List = React31.forwardRef(
|
|
3853
4778
|
({ className, children, ...props }, ref) => {
|
|
3854
|
-
const childrenArray =
|
|
3855
|
-
return /* @__PURE__ */
|
|
4779
|
+
const childrenArray = React31.Children.toArray(children);
|
|
4780
|
+
return /* @__PURE__ */ jsx49("div", { ref, className: cn("flex flex-col", className), ...props, children: childrenArray.map((child, index) => /* @__PURE__ */ jsxs28(React31.Fragment, { children: [
|
|
3856
4781
|
child,
|
|
3857
|
-
index < childrenArray.length - 1 && /* @__PURE__ */
|
|
4782
|
+
index < childrenArray.length - 1 && /* @__PURE__ */ jsx49(Divider, { variant: "subtle" })
|
|
3858
4783
|
] }, index)) });
|
|
3859
4784
|
}
|
|
3860
4785
|
);
|
|
3861
4786
|
List.displayName = "List";
|
|
3862
|
-
var ListItem =
|
|
3863
|
-
({ className, icon, children, interactive = true, ...props }, ref) => /* @__PURE__ */
|
|
4787
|
+
var ListItem = React31.forwardRef(
|
|
4788
|
+
({ className, icon, children, interactive = true, ...props }, ref) => /* @__PURE__ */ jsxs28(
|
|
3864
4789
|
"div",
|
|
3865
4790
|
{
|
|
3866
4791
|
ref,
|
|
@@ -3871,15 +4796,15 @@ var ListItem = React29.forwardRef(
|
|
|
3871
4796
|
),
|
|
3872
4797
|
...props,
|
|
3873
4798
|
children: [
|
|
3874
|
-
icon && /* @__PURE__ */
|
|
3875
|
-
/* @__PURE__ */
|
|
4799
|
+
icon && /* @__PURE__ */ jsx49("div", { className: "flex-shrink-0 flex items-center justify-center", children: icon }),
|
|
4800
|
+
/* @__PURE__ */ jsx49("div", { className: "flex-1 min-w-0", children })
|
|
3876
4801
|
]
|
|
3877
4802
|
}
|
|
3878
4803
|
)
|
|
3879
4804
|
);
|
|
3880
4805
|
ListItem.displayName = "ListItem";
|
|
3881
|
-
var ListHeader =
|
|
3882
|
-
({ className, children, ...props }, ref) => /* @__PURE__ */
|
|
4806
|
+
var ListHeader = React31.forwardRef(
|
|
4807
|
+
({ className, children, ...props }, ref) => /* @__PURE__ */ jsx49(
|
|
3883
4808
|
"div",
|
|
3884
4809
|
{
|
|
3885
4810
|
ref,
|
|
@@ -3890,45 +4815,45 @@ var ListHeader = React29.forwardRef(
|
|
|
3890
4815
|
)
|
|
3891
4816
|
);
|
|
3892
4817
|
ListHeader.displayName = "ListHeader";
|
|
3893
|
-
var FeatureList =
|
|
4818
|
+
var FeatureList = React31.forwardRef(
|
|
3894
4819
|
({ items, variant = "bullet", className, ...props }, ref) => {
|
|
3895
|
-
return /* @__PURE__ */
|
|
3896
|
-
variant === "bullet" ? /* @__PURE__ */
|
|
3897
|
-
/* @__PURE__ */
|
|
4820
|
+
return /* @__PURE__ */ jsx49("ul", { ref, className: cn("flex flex-col gap-fluid-md", className), ...props, children: items.map((item, index) => /* @__PURE__ */ jsxs28("li", { className: "flex items-start gap-fluid-md", children: [
|
|
4821
|
+
variant === "bullet" ? /* @__PURE__ */ jsx49("span", { className: "w-1.5 h-1.5 rounded-full bg-berget-icon-muted flex-shrink-0 mt-2" }) : /* @__PURE__ */ jsx49("div", { className: "flex-shrink-0 mt-0.5", children: /* @__PURE__ */ jsx49(Icon, { icon: Check3, size: 24, className: "text-berget-logo-light" }) }),
|
|
4822
|
+
/* @__PURE__ */ jsx49(Typography, { variant: "body", color: "muted", children: item })
|
|
3898
4823
|
] }, index)) });
|
|
3899
4824
|
}
|
|
3900
4825
|
);
|
|
3901
4826
|
FeatureList.displayName = "FeatureList";
|
|
3902
4827
|
|
|
3903
4828
|
// src/components/code-block/CodeBlock.tsx
|
|
3904
|
-
import { useState as
|
|
4829
|
+
import { useState as useState5, useEffect as useEffect4, useCallback as useCallback4 } from "react";
|
|
3905
4830
|
import { Copy, Check as Check4 } from "lucide-react";
|
|
3906
|
-
import { jsx as
|
|
4831
|
+
import { jsx as jsx50, jsxs as jsxs29 } from "react/jsx-runtime";
|
|
3907
4832
|
function CodeBlock({ code, language = "text", title, className }) {
|
|
3908
|
-
const [html, setHtml] =
|
|
3909
|
-
const [copied, setCopied] =
|
|
3910
|
-
|
|
4833
|
+
const [html, setHtml] = useState5(null);
|
|
4834
|
+
const [copied, setCopied] = useState5(false);
|
|
4835
|
+
useEffect4(() => {
|
|
3911
4836
|
getHighlighter().then((highlighter) => {
|
|
3912
4837
|
const loadedLangs = highlighter.getLoadedLanguages();
|
|
3913
4838
|
const lang = loadedLangs.includes(language) ? language : "text";
|
|
3914
4839
|
setHtml(highlighter.codeToHtml(code, { lang, theme: "berget" }));
|
|
3915
4840
|
});
|
|
3916
4841
|
}, [code, language]);
|
|
3917
|
-
const handleCopy =
|
|
4842
|
+
const handleCopy = useCallback4(async () => {
|
|
3918
4843
|
await navigator.clipboard.writeText(code);
|
|
3919
4844
|
setCopied(true);
|
|
3920
4845
|
setTimeout(() => setCopied(false), 2e3);
|
|
3921
4846
|
}, [code]);
|
|
3922
|
-
const copyButton = /* @__PURE__ */
|
|
4847
|
+
const copyButton = /* @__PURE__ */ jsx50(
|
|
3923
4848
|
"button",
|
|
3924
4849
|
{
|
|
3925
4850
|
onClick: handleCopy,
|
|
3926
4851
|
className: "flex items-center justify-center w-6 h-6 text-berget-muted-foreground hover:text-berget-foreground transition-colors",
|
|
3927
4852
|
"aria-label": "Copy code",
|
|
3928
|
-
children: copied ? /* @__PURE__ */
|
|
4853
|
+
children: copied ? /* @__PURE__ */ jsx50(Check4, { className: "w-3.5 h-3.5" }) : /* @__PURE__ */ jsx50(Copy, { className: "w-3.5 h-3.5" })
|
|
3929
4854
|
}
|
|
3930
4855
|
);
|
|
3931
|
-
return /* @__PURE__ */
|
|
4856
|
+
return /* @__PURE__ */ jsxs29(
|
|
3932
4857
|
"div",
|
|
3933
4858
|
{
|
|
3934
4859
|
className: cn(
|
|
@@ -3936,27 +4861,27 @@ function CodeBlock({ code, language = "text", title, className }) {
|
|
|
3936
4861
|
className
|
|
3937
4862
|
),
|
|
3938
4863
|
children: [
|
|
3939
|
-
title && /* @__PURE__ */
|
|
3940
|
-
/* @__PURE__ */
|
|
3941
|
-
html ? /* @__PURE__ */
|
|
4864
|
+
title && /* @__PURE__ */ jsx50("div", { className: "!h-10 flex items-center !px-4 !text-xs !leading-normal border-b border-berget-border bg-berget-codeblock-header-bg", children: /* @__PURE__ */ jsx50("span", { className: "text-berget-muted-foreground", children: title }) }),
|
|
4865
|
+
/* @__PURE__ */ jsx50("div", { className: "absolute right-2 top-2 z-10", children: copyButton }),
|
|
4866
|
+
html ? /* @__PURE__ */ jsx50(
|
|
3942
4867
|
"div",
|
|
3943
4868
|
{
|
|
3944
4869
|
className: "[&_.shiki]:!p-4 [&_.shiki]:!m-0 [&_.shiki]:overflow-x-auto [&_.shiki]:!text-sm [&_.shiki]:!leading-relaxed [&_.shiki]:bg-transparent",
|
|
3945
4870
|
dangerouslySetInnerHTML: { __html: html }
|
|
3946
4871
|
}
|
|
3947
|
-
) : /* @__PURE__ */
|
|
4872
|
+
) : /* @__PURE__ */ jsx50("pre", { className: "!p-4 !m-0 overflow-x-auto !text-sm !leading-relaxed text-berget-muted-foreground", children: /* @__PURE__ */ jsx50("code", { children: code }) })
|
|
3948
4873
|
]
|
|
3949
4874
|
}
|
|
3950
4875
|
);
|
|
3951
4876
|
}
|
|
3952
4877
|
|
|
3953
4878
|
// src/components/window-frame/WindowFrame.tsx
|
|
3954
|
-
import * as
|
|
3955
|
-
import { useState as
|
|
3956
|
-
import { jsx as
|
|
3957
|
-
var WindowFrame =
|
|
4879
|
+
import * as React32 from "react";
|
|
4880
|
+
import { useState as useState6 } from "react";
|
|
4881
|
+
import { jsx as jsx51, jsxs as jsxs30 } from "react/jsx-runtime";
|
|
4882
|
+
var WindowFrame = React32.forwardRef(
|
|
3958
4883
|
({ title = "window", tabs, activeTab, onTabChange, children, className, ...props }, ref) => {
|
|
3959
|
-
const [internalActive, setInternalActive] =
|
|
4884
|
+
const [internalActive, setInternalActive] = useState6(tabs?.[0]?.id ?? "");
|
|
3960
4885
|
const currentTab = activeTab ?? internalActive;
|
|
3961
4886
|
const handleTabChange = (id) => {
|
|
3962
4887
|
if (onTabChange) {
|
|
@@ -3965,7 +4890,7 @@ var WindowFrame = React30.forwardRef(
|
|
|
3965
4890
|
setInternalActive(id);
|
|
3966
4891
|
}
|
|
3967
4892
|
};
|
|
3968
|
-
return /* @__PURE__ */
|
|
4893
|
+
return /* @__PURE__ */ jsxs30(
|
|
3969
4894
|
"div",
|
|
3970
4895
|
{
|
|
3971
4896
|
ref,
|
|
@@ -3975,13 +4900,13 @@ var WindowFrame = React30.forwardRef(
|
|
|
3975
4900
|
),
|
|
3976
4901
|
...props,
|
|
3977
4902
|
children: [
|
|
3978
|
-
/* @__PURE__ */
|
|
3979
|
-
/* @__PURE__ */
|
|
3980
|
-
/* @__PURE__ */
|
|
3981
|
-
/* @__PURE__ */
|
|
3982
|
-
/* @__PURE__ */
|
|
4903
|
+
/* @__PURE__ */ jsxs30("div", { className: "flex items-center gap-2 px-4 py-3 border-b border-berget-brand-granite-700 bg-berget-brand-granite-900", children: [
|
|
4904
|
+
/* @__PURE__ */ jsxs30("div", { className: "flex items-center gap-2 flex-shrink-0", children: [
|
|
4905
|
+
/* @__PURE__ */ jsx51("div", { className: "w-3 h-3 rounded-full bg-berget-brand-muscaria-400" }),
|
|
4906
|
+
/* @__PURE__ */ jsx51("div", { className: "w-3 h-3 rounded-full bg-berget-brand-chanterelle-200" }),
|
|
4907
|
+
/* @__PURE__ */ jsx51("div", { className: "w-3 h-3 rounded-full bg-berget-brand-moss-400" })
|
|
3983
4908
|
] }),
|
|
3984
|
-
tabs && tabs.length > 0 ? /* @__PURE__ */
|
|
4909
|
+
tabs && tabs.length > 0 ? /* @__PURE__ */ jsx51("div", { className: "ml-4 flex items-center gap-1", children: tabs.map((tab) => /* @__PURE__ */ jsx51(
|
|
3985
4910
|
"button",
|
|
3986
4911
|
{
|
|
3987
4912
|
type: "button",
|
|
@@ -3993,9 +4918,9 @@ var WindowFrame = React30.forwardRef(
|
|
|
3993
4918
|
children: tab.label
|
|
3994
4919
|
},
|
|
3995
4920
|
tab.id
|
|
3996
|
-
)) }) : /* @__PURE__ */
|
|
4921
|
+
)) }) : /* @__PURE__ */ jsx51("span", { className: "ml-4 text-sm font-mono text-berget-brand-moss-400", children: title })
|
|
3997
4922
|
] }),
|
|
3998
|
-
/* @__PURE__ */
|
|
4923
|
+
/* @__PURE__ */ jsx51("div", { children })
|
|
3999
4924
|
]
|
|
4000
4925
|
}
|
|
4001
4926
|
);
|
|
@@ -4004,8 +4929,8 @@ var WindowFrame = React30.forwardRef(
|
|
|
4004
4929
|
WindowFrame.displayName = "WindowFrame";
|
|
4005
4930
|
|
|
4006
4931
|
// src/components/fog-illustration/FogIllustration.tsx
|
|
4007
|
-
import { useEffect as
|
|
4008
|
-
import { jsx as
|
|
4932
|
+
import { useEffect as useEffect5, useRef } from "react";
|
|
4933
|
+
import { jsx as jsx52 } from "react/jsx-runtime";
|
|
4009
4934
|
var FOG_BRAND_PALETTE = {
|
|
4010
4935
|
ink: "#171a1a",
|
|
4011
4936
|
milk: "#f7f5ed",
|
|
@@ -4211,7 +5136,7 @@ var FogIllustration = ({ palette, speed = 1, className }) => {
|
|
|
4211
5136
|
const ref = useRef(null);
|
|
4212
5137
|
const live = useRef({ palette: { ...FOG_BRAND_PALETTE, ...palette }, speed });
|
|
4213
5138
|
live.current = { palette: { ...FOG_BRAND_PALETTE, ...palette }, speed };
|
|
4214
|
-
|
|
5139
|
+
useEffect5(() => {
|
|
4215
5140
|
const canvas = ref.current;
|
|
4216
5141
|
const parent = canvas?.parentElement;
|
|
4217
5142
|
if (!canvas || !parent) return;
|
|
@@ -4318,7 +5243,7 @@ var FogIllustration = ({ palette, speed = 1, className }) => {
|
|
|
4318
5243
|
gl.deleteFramebuffer(fbo);
|
|
4319
5244
|
};
|
|
4320
5245
|
}, []);
|
|
4321
|
-
return /* @__PURE__ */
|
|
5246
|
+
return /* @__PURE__ */ jsx52("canvas", { ref, "aria-hidden": "true", className: cn("size-full", className) });
|
|
4322
5247
|
};
|
|
4323
5248
|
export {
|
|
4324
5249
|
Alert2 as Alert,
|
|
@@ -4420,6 +5345,31 @@ export {
|
|
|
4420
5345
|
NavigationMenuPositioner,
|
|
4421
5346
|
NavigationMenuTrigger,
|
|
4422
5347
|
Select2 as Select,
|
|
5348
|
+
Sidebar,
|
|
5349
|
+
SidebarContent,
|
|
5350
|
+
SidebarFooter2 as SidebarFooter,
|
|
5351
|
+
SidebarGroup2 as SidebarGroup,
|
|
5352
|
+
SidebarGroupAction,
|
|
5353
|
+
SidebarGroupContent,
|
|
5354
|
+
SidebarGroupLabel2 as SidebarGroupLabel,
|
|
5355
|
+
SidebarHeader2 as SidebarHeader,
|
|
5356
|
+
SidebarInput,
|
|
5357
|
+
SidebarInset,
|
|
5358
|
+
SidebarLogo,
|
|
5359
|
+
SidebarMenu,
|
|
5360
|
+
SidebarMenuAction,
|
|
5361
|
+
SidebarMenuBadge,
|
|
5362
|
+
SidebarMenuButton2 as SidebarMenuButton,
|
|
5363
|
+
SidebarMenuItem,
|
|
5364
|
+
SidebarMenuSkeleton,
|
|
5365
|
+
SidebarMenuSub,
|
|
5366
|
+
SidebarMenuSubButton2 as SidebarMenuSubButton,
|
|
5367
|
+
SidebarMenuSubItem,
|
|
5368
|
+
SidebarPageHeader,
|
|
5369
|
+
SidebarProvider2 as SidebarProvider,
|
|
5370
|
+
SidebarRail,
|
|
5371
|
+
SidebarSeparator,
|
|
5372
|
+
SidebarTrigger,
|
|
4423
5373
|
Switch,
|
|
4424
5374
|
Table2 as Table,
|
|
4425
5375
|
TableBody2 as TableBody,
|
|
@@ -4453,6 +5403,7 @@ export {
|
|
|
4453
5403
|
switchThumbVariants,
|
|
4454
5404
|
textAreaVariants,
|
|
4455
5405
|
typographyVariants,
|
|
5406
|
+
useSidebar,
|
|
4456
5407
|
useTheme
|
|
4457
5408
|
};
|
|
4458
5409
|
//# sourceMappingURL=index.js.map
|