@lssm/lib.design-system 1.7.1 → 1.7.3

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.
Files changed (174) hide show
  1. package/dist/components/atoms/ActionButtons.d.ts +10 -10
  2. package/dist/components/atoms/ActionButtons.d.ts.map +1 -1
  3. package/dist/components/atoms/Button.d.ts +2 -2
  4. package/dist/components/atoms/Button.d.ts.map +1 -1
  5. package/dist/components/atoms/Button.mobile.d.ts +2 -2
  6. package/dist/components/atoms/Button.mobile.d.ts.map +1 -1
  7. package/dist/components/atoms/ButtonLink.d.ts +2 -2
  8. package/dist/components/atoms/ButtonLink.mobile.d.ts +2 -2
  9. package/dist/components/atoms/ButtonLink.mobile.d.ts.map +1 -1
  10. package/dist/components/atoms/Cta.d.ts +2 -2
  11. package/dist/components/atoms/DataChips.d.ts +5 -5
  12. package/dist/components/atoms/DataChips.d.ts.map +1 -1
  13. package/dist/components/atoms/EmptyState.d.ts +2 -2
  14. package/dist/components/atoms/EmptyState.d.ts.map +1 -1
  15. package/dist/components/atoms/ErrorState.d.ts +2 -2
  16. package/dist/components/atoms/ErrorState.mobile.d.ts +2 -2
  17. package/dist/components/atoms/ErrorState.mobile.d.ts.map +1 -1
  18. package/dist/components/atoms/Input.d.ts +2 -2
  19. package/dist/components/atoms/Input.d.ts.map +1 -1
  20. package/dist/components/atoms/Input.mobile.d.ts +2 -2
  21. package/dist/components/atoms/Input.mobile.d.ts.map +1 -1
  22. package/dist/components/atoms/Link.d.ts +2 -2
  23. package/dist/components/atoms/Link.web.d.ts +2 -2
  24. package/dist/components/atoms/LoaderCircular.d.ts +4 -4
  25. package/dist/components/atoms/LoaderCircular.d.ts.map +1 -1
  26. package/dist/components/atoms/LoaderCircular.mobile.d.ts +2 -2
  27. package/dist/components/atoms/NavBrand.d.ts +2 -2
  28. package/dist/components/atoms/NavBrand.d.ts.map +1 -1
  29. package/dist/components/atoms/Stepper.d.ts +2 -2
  30. package/dist/components/atoms/Stepper.d.ts.map +1 -1
  31. package/dist/components/atoms/Textarea.d.ts +2 -2
  32. package/dist/components/atoms/Textarea.mobile.d.ts +2 -2
  33. package/dist/components/atoms/Textarea.mobile.d.ts.map +1 -1
  34. package/dist/components/data-view/DataViewDetail.d.ts +2 -2
  35. package/dist/components/data-view/DataViewDetail.d.ts.map +1 -1
  36. package/dist/components/data-view/DataViewList.d.ts +2 -2
  37. package/dist/components/data-view/DataViewList.d.ts.map +1 -1
  38. package/dist/components/data-view/DataViewRenderer.d.ts +2 -2
  39. package/dist/components/data-view/DataViewRenderer.d.ts.map +1 -1
  40. package/dist/components/data-view/DataViewTable.d.ts +2 -2
  41. package/dist/components/data-view/DataViewTable.d.ts.map +1 -1
  42. package/dist/components/forms/FormCardLayout.d.ts +2 -2
  43. package/dist/components/forms/FormCardLayout.d.ts.map +1 -1
  44. package/dist/components/forms/FormDialog.d.ts +2 -2
  45. package/dist/components/forms/FormDialog.d.ts.map +1 -1
  46. package/dist/components/forms/FormLayout.d.ts +4 -4
  47. package/dist/components/forms/FormLayout.d.ts.map +1 -1
  48. package/dist/components/forms/FormOneByOneLayout.d.ts +2 -2
  49. package/dist/components/forms/FormOneByOneLayout.d.ts.map +1 -1
  50. package/dist/components/forms/FormStepsLayout.d.ts +2 -2
  51. package/dist/components/forms/ZodForm.d.ts +2 -2
  52. package/dist/components/forms/ZodForm.d.ts.map +1 -1
  53. package/dist/components/legal/atoms/DefinitionList.d.ts +2 -2
  54. package/dist/components/legal/atoms/DefinitionList.d.ts.map +1 -1
  55. package/dist/components/legal/atoms/KeyValueList.d.ts +2 -2
  56. package/dist/components/legal/atoms/KeyValueList.d.ts.map +1 -1
  57. package/dist/components/legal/atoms/LegalCallout.d.ts +5 -5
  58. package/dist/components/legal/atoms/LegalCallout.d.ts.map +1 -1
  59. package/dist/components/legal/atoms/LegalHeading.d.ts +4 -4
  60. package/dist/components/legal/atoms/LegalHeading.d.ts.map +1 -1
  61. package/dist/components/legal/atoms/LegalList.d.ts +4 -4
  62. package/dist/components/legal/atoms/LegalList.d.ts.map +1 -1
  63. package/dist/components/legal/atoms/LegalSection.d.ts +4 -4
  64. package/dist/components/legal/atoms/LegalText.d.ts +5 -5
  65. package/dist/components/legal/molecules/Consent.d.ts +3 -3
  66. package/dist/components/legal/molecules/ContactFields.d.ts +2 -2
  67. package/dist/components/legal/molecules/LegalMeta.d.ts +2 -2
  68. package/dist/components/legal/molecules/LegalTOC.d.ts +4 -4
  69. package/dist/components/legal/molecules/LegalTOC.d.ts.map +1 -1
  70. package/dist/components/legal/organisms/ContactForm.d.ts +2 -2
  71. package/dist/components/legal/organisms/GDPRDataRequest.d.ts +2 -2
  72. package/dist/components/legal/organisms/GDPRRights.d.ts +2 -2
  73. package/dist/components/legal/organisms/LegalPageLayout.d.ts +2 -2
  74. package/dist/components/legal/templates/ContactTemplate.d.ts +2 -2
  75. package/dist/components/legal/templates/CookiesTemplate.d.ts +2 -2
  76. package/dist/components/legal/templates/PrivacyTemplate.d.ts +2 -2
  77. package/dist/components/legal/templates/SalesTermsTemplate.d.ts +2 -2
  78. package/dist/components/legal/templates/TermsTemplate.d.ts +2 -2
  79. package/dist/components/molecules/AiLinkButton.d.ts +2 -2
  80. package/dist/components/molecules/Breadcrumbs.d.ts +2 -2
  81. package/dist/components/molecules/Breadcrumbs.d.ts.map +1 -1
  82. package/dist/components/molecules/CommandPalette.d.ts +2 -2
  83. package/dist/components/molecules/CommandSearchTrigger.d.ts +2 -2
  84. package/dist/components/molecules/EntityCard.d.ts +4 -4
  85. package/dist/components/molecules/FiltersToolbar.d.ts +2 -2
  86. package/dist/components/molecules/FiltersToolbar.mobile.d.ts +2 -2
  87. package/dist/components/molecules/HoverPreview.d.ts +2 -2
  88. package/dist/components/molecules/LangSwitch.d.ts +2 -2
  89. package/dist/components/molecules/LangSwitchDropdown.d.ts +2 -2
  90. package/dist/components/molecules/LoaderBlock.d.ts +2 -2
  91. package/dist/components/molecules/LoaderBlock.d.ts.map +1 -1
  92. package/dist/components/molecules/LoaderBlock.mobile.d.ts +2 -2
  93. package/dist/components/molecules/MobileNavMenu.d.ts +2 -2
  94. package/dist/components/molecules/MobileNavMenu.d.ts.map +1 -1
  95. package/dist/components/molecules/NavItemCard.d.ts +2 -2
  96. package/dist/components/molecules/NavMain.d.ts +2 -2
  97. package/dist/components/molecules/NavMain.d.ts.map +1 -1
  98. package/dist/components/molecules/NavUser.d.ts +2 -2
  99. package/dist/components/molecules/NavUser.d.ts.map +1 -1
  100. package/dist/components/molecules/OverviewCard.d.ts +2 -2
  101. package/dist/components/molecules/OverviewCard.d.ts.map +1 -1
  102. package/dist/components/molecules/SkeletonBlock/index.mobile.d.ts +2 -2
  103. package/dist/components/molecules/SkeletonBlock/index.web.d.ts +2 -2
  104. package/dist/components/molecules/SkeletonCircle/index.mobile.d.ts +2 -2
  105. package/dist/components/molecules/SkeletonCircle/index.web.d.ts +2 -2
  106. package/dist/components/molecules/SkeletonCircle/index.web.d.ts.map +1 -1
  107. package/dist/components/molecules/SkeletonList/index.mobile.d.ts +2 -2
  108. package/dist/components/molecules/SkeletonList/index.web.d.ts +2 -2
  109. package/dist/components/molecules/StatCard.d.ts +5 -5
  110. package/dist/components/molecules/StatCard.d.ts.map +1 -1
  111. package/dist/components/molecules/StatusChip.d.ts +5 -5
  112. package/dist/components/molecules/StatusChip.d.ts.map +1 -1
  113. package/dist/components/molecules/hover-previews/Doc.d.ts +2 -2
  114. package/dist/components/molecules/hover-previews/Media.d.ts +2 -2
  115. package/dist/components/molecules/hover-previews/Simple.d.ts +2 -2
  116. package/dist/components/molecules/hover-previews/Simple.d.ts.map +1 -1
  117. package/dist/components/molecules/hover-previews/Stats.d.ts +2 -2
  118. package/dist/components/molecules/hover-previews/User.d.ts +2 -2
  119. package/dist/components/native/BottomTabs.mobile.d.ts +2 -2
  120. package/dist/components/native/BottomTabs.mobile.d.ts.map +1 -1
  121. package/dist/components/native/FlatListScreen.mobile.d.ts +4 -4
  122. package/dist/components/native/SheetMenu.mobile.d.ts +2 -2
  123. package/dist/components/organisms/AcademyLayout.d.ts +2 -2
  124. package/dist/components/organisms/AcademyLayout.d.ts.map +1 -1
  125. package/dist/components/organisms/AppHeader.d.ts +2 -2
  126. package/dist/components/organisms/AppHeader.d.ts.map +1 -1
  127. package/dist/components/organisms/AppHeader.mobile.d.ts +2 -2
  128. package/dist/components/organisms/AppLayout.d.ts +2 -2
  129. package/dist/components/organisms/AppLayout.d.ts.map +1 -1
  130. package/dist/components/organisms/AppSidebar.d.ts +2 -2
  131. package/dist/components/organisms/AppSidebar.d.ts.map +1 -1
  132. package/dist/components/organisms/EmptyDataList.d.ts +2 -2
  133. package/dist/components/organisms/EmptyDataList.mobile.d.ts +2 -2
  134. package/dist/components/organisms/EmptyDataList.mobile.d.ts.map +1 -1
  135. package/dist/components/organisms/EmptySearchResult.d.ts +2 -2
  136. package/dist/components/organisms/EmptySearchResult.d.ts.map +1 -1
  137. package/dist/components/organisms/FAQSection.d.ts +2 -2
  138. package/dist/components/organisms/FAQSection.d.ts.map +1 -1
  139. package/dist/components/organisms/FeatureCarousel.d.ts +2 -2
  140. package/dist/components/organisms/FeaturesSection.d.ts +2 -2
  141. package/dist/components/organisms/Footer.d.ts +2 -2
  142. package/dist/components/organisms/GridLayout.d.ts +4 -4
  143. package/dist/components/organisms/GridLayout.d.ts.map +1 -1
  144. package/dist/components/organisms/Header.d.ts +4 -4
  145. package/dist/components/organisms/Header.mobile.d.ts +2 -2
  146. package/dist/components/organisms/HeroResponsive.d.ts +2 -2
  147. package/dist/components/organisms/HeroResponsive.d.ts.map +1 -1
  148. package/dist/components/organisms/HeroSection.d.ts +2 -2
  149. package/dist/components/organisms/ListCardPage.d.ts +5 -5
  150. package/dist/components/organisms/ListGridPage.d.ts +5 -5
  151. package/dist/components/organisms/ListPageResponsive.d.ts +2 -2
  152. package/dist/components/organisms/ListTablePage.d.ts +4 -4
  153. package/dist/components/organisms/ListTablePage.d.ts.map +1 -1
  154. package/dist/components/organisms/MarketingHeader.d.ts +2 -2
  155. package/dist/components/organisms/MarketingHeader.d.ts.map +1 -1
  156. package/dist/components/organisms/MarketingHeaderDesktop.d.ts +2 -2
  157. package/dist/components/organisms/MarketingHeaderMobile.d.ts +2 -2
  158. package/dist/components/organisms/MarketingLayout.d.ts +2 -2
  159. package/dist/components/organisms/MarketingLayout.d.ts.map +1 -1
  160. package/dist/components/organisms/PageHeaderResponsive.d.ts +2 -2
  161. package/dist/components/organisms/PageHeaderResponsive.d.ts.map +1 -1
  162. package/dist/components/organisms/PageHeaderResponsive.mobile.d.ts +2 -2
  163. package/dist/components/organisms/PricingCarousel.d.ts +2 -2
  164. package/dist/components/organisms/PricingSection.d.ts +2 -2
  165. package/dist/components/organisms/PricingSection.d.ts.map +1 -1
  166. package/dist/components/organisms/TestimonialCarousel.d.ts +2 -2
  167. package/dist/components/organisms/TestimonialCarousel.d.ts.map +1 -1
  168. package/dist/components/templates/lists/ListPageTemplate/index.mobile.d.ts +2 -2
  169. package/dist/components/templates/lists/ListPageTemplate/index.web.d.ts +2 -2
  170. package/dist/theme/variants.d.ts +3 -3
  171. package/dist/theme/variants.d.ts.map +1 -1
  172. package/dist/ui-kit-web/dist/ui/sidebar.js +84 -182
  173. package/dist/ui-kit-web/dist/ui/sidebar.js.map +1 -1
  174. package/package.json +301 -150
@@ -1,5 +1,5 @@
1
1
  import { ListPageTemplateProps } from "./types.js";
2
- import * as react_jsx_runtime66 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime92 from "react/jsx-runtime";
3
3
 
4
4
  //#region src/components/templates/lists/ListPageTemplate/index.mobile.d.ts
5
5
  declare function ListPageTemplate<T = any>({
@@ -16,7 +16,7 @@ declare function ListPageTemplate<T = any>({
16
16
  data,
17
17
  renderItem,
18
18
  emptyProps
19
- }: ListPageTemplateProps<T>): react_jsx_runtime66.JSX.Element;
19
+ }: ListPageTemplateProps<T>): react_jsx_runtime92.JSX.Element;
20
20
  //#endregion
21
21
  export { ListPageTemplate, ListPageTemplateProps };
22
22
  //# sourceMappingURL=index.mobile.d.ts.map
@@ -1,5 +1,5 @@
1
1
  import { ListPageTemplateProps } from "./types.js";
2
- import * as react_jsx_runtime73 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime93 from "react/jsx-runtime";
3
3
 
4
4
  //#region src/components/templates/lists/ListPageTemplate/index.web.d.ts
5
5
  declare function ListPageTemplate<T = any>({
@@ -17,7 +17,7 @@ declare function ListPageTemplate<T = any>({
17
17
  data,
18
18
  renderItem,
19
19
  emptyProps
20
- }: ListPageTemplateProps<T>): react_jsx_runtime73.JSX.Element;
20
+ }: ListPageTemplateProps<T>): react_jsx_runtime93.JSX.Element;
21
21
  //#endregion
22
22
  export { ListPageTemplate, ListPageTemplateProps };
23
23
  //# sourceMappingURL=index.web.d.ts.map
@@ -1,5 +1,5 @@
1
1
  import { VariantProps } from "class-variance-authority";
2
- import * as class_variance_authority_types5 from "class-variance-authority/types";
2
+ import * as class_variance_authority_types18 from "class-variance-authority/types";
3
3
 
4
4
  //#region src/theme/variants.d.ts
5
5
  type SizeVariant = 'sm' | 'md' | 'lg';
@@ -13,9 +13,9 @@ type EmphasisVariant = 'default' | 'subtle' | 'strong';
13
13
  declare const dsBaseVariants: (props?: ({
14
14
  size?: "sm" | "md" | "lg" | null | undefined;
15
15
  density?: "compact" | "comfortable" | null | undefined;
16
- tone?: "neutral" | "danger" | "info" | "success" | "warning" | null | undefined;
16
+ tone?: "neutral" | "info" | "success" | "warning" | "danger" | null | undefined;
17
17
  emphasis?: "strong" | "default" | "subtle" | null | undefined;
18
- } & class_variance_authority_types5.ClassProp) | undefined) => string;
18
+ } & class_variance_authority_types18.ClassProp) | undefined) => string;
19
19
  type DSBaseVariantsProps = VariantProps<typeof dsBaseVariants>;
20
20
  //#endregion
21
21
  export { DSBaseVariantsProps, DensityVariant, EmphasisVariant, SizeVariant, ToneVariant, dsBaseVariants };
@@ -1 +1 @@
1
- {"version":3,"file":"variants.d.ts","names":[],"sources":["../../src/theme/variants.ts"],"sourcesContent":[],"mappings":";;;;KAIY,WAAA;KACA,cAAA;KACA,WAAA;AAFA,KAGA,eAAA,GAHW,SAAA,GAAA,QAAA,GAAA,QAAA;AACvB;AACA;AACA;AAMA;AAgCY,cAhCC,cAgCkB,EAAA,CAAA,MAAuB,EAAA,CAAA;;;;;IAFpD,+BAAA,CAAA;KAEU,mBAAA,GAAsB,oBAAoB"}
1
+ {"version":3,"file":"variants.d.ts","names":[],"sources":["../../src/theme/variants.ts"],"sourcesContent":[],"mappings":";;;;KAIY,WAAA;KACA,cAAA;KACA,WAAA;AAFA,KAGA,eAAA,GAHW,SAAA,GAAA,QAAA,GAAA,QAAA;AACvB;AACA;AACA;AAMA;AAgCY,cAhCC,cAgCkB,EAAA,CAAA,MAAuB,EAAA,CAAA;;;;;IAFpD,gCAAA,CAAA;KAEU,mBAAA,GAAsB,oBAAoB"}
@@ -2,22 +2,19 @@
2
2
 
3
3
 
4
4
  import { cn, init_utils } from "./utils.js";
5
- import { Separator } from "./separator.js";
6
- import { Button } from "./button.js";
7
5
  import { Input } from "./input.js";
8
- import { Sheet, SheetContent } from "./sheet.js";
6
+ import { Sheet, SheetContent, SheetDescription, SheetHeader, SheetTitle } from "./sheet.js";
9
7
  import { useIsMobile } from "./use-mobile.js";
10
- import { Skeleton } from "./skeleton.js";
11
8
  import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from "./tooltip.js";
12
9
  import * as React$1 from "react";
13
10
  import { jsx, jsxs } from "react/jsx-runtime";
14
11
  import { cva } from "class-variance-authority";
15
12
  import { Slot } from "@radix-ui/react-slot";
16
- import { PanelLeft } from "lucide-react";
13
+ import "lucide-react";
17
14
 
18
15
  //#region ../ui-kit-web/dist/ui/sidebar.js
19
16
  init_utils();
20
- const SIDEBAR_COOKIE_NAME = "sidebar:state";
17
+ const SIDEBAR_COOKIE_NAME = "sidebar_state";
21
18
  const SIDEBAR_COOKIE_MAX_AGE = 3600 * 24 * 7;
22
19
  const SIDEBAR_WIDTH = "16rem";
23
20
  const SIDEBAR_WIDTH_MOBILE = "18rem";
@@ -29,7 +26,7 @@ function useSidebar() {
29
26
  if (!context) throw new Error("useSidebar must be used within a SidebarProvider.");
30
27
  return context;
31
28
  }
32
- const SidebarProvider = React$1.forwardRef(({ defaultOpen = true, open: openProp, onOpenChange: setOpenProp, className, style, children,...props }, ref) => {
29
+ function SidebarProvider({ defaultOpen = true, open: openProp, onOpenChange: setOpenProp, className, style, children,...props }) {
33
30
  const isMobile = useIsMobile();
34
31
  const [openMobile, setOpenMobile] = React$1.useState(false);
35
32
  const [_open, _setOpen] = React$1.useState(defaultOpen);
@@ -80,25 +77,24 @@ const SidebarProvider = React$1.forwardRef(({ defaultOpen = true, open: openProp
80
77
  children: /* @__PURE__ */ jsx(TooltipProvider, {
81
78
  delayDuration: 0,
82
79
  children: /* @__PURE__ */ jsx("div", {
80
+ "data-slot": "sidebar-wrapper",
83
81
  style: {
84
82
  "--sidebar-width": SIDEBAR_WIDTH,
85
83
  "--sidebar-width-icon": SIDEBAR_WIDTH_ICON,
86
84
  ...style
87
85
  },
88
86
  className: cn("group/sidebar-wrapper has-data-[variant=inset]:bg-sidebar flex min-h-svh w-full", className),
89
- ref,
90
87
  ...props,
91
88
  children
92
89
  })
93
90
  })
94
91
  });
95
- });
96
- SidebarProvider.displayName = "SidebarProvider";
97
- const Sidebar = React$1.forwardRef(({ side = "left", variant = "sidebar", collapsible = "offcanvas", className, children,...props }, ref) => {
92
+ }
93
+ function Sidebar({ side = "left", variant = "sidebar", collapsible = "offcanvas", className, children,...props }) {
98
94
  const { isMobile, state, openMobile, setOpenMobile } = useSidebar();
99
95
  if (collapsible === "none") return /* @__PURE__ */ jsx("div", {
96
+ "data-slot": "sidebar",
100
97
  className: cn("bg-sidebar text-sidebar-foreground flex h-full w-(--sidebar-width) flex-col", className),
101
- ref,
102
98
  ...props,
103
99
  children
104
100
  });
@@ -106,182 +102,140 @@ const Sidebar = React$1.forwardRef(({ side = "left", variant = "sidebar", collap
106
102
  open: openMobile,
107
103
  onOpenChange: setOpenMobile,
108
104
  ...props,
109
- children: /* @__PURE__ */ jsx(SheetContent, {
105
+ children: /* @__PURE__ */ jsxs(SheetContent, {
110
106
  "data-sidebar": "sidebar",
107
+ "data-slot": "sidebar",
111
108
  "data-mobile": "true",
112
109
  className: "bg-sidebar text-sidebar-foreground w-(--sidebar-width) p-0 [&>button]:hidden",
113
110
  style: { "--sidebar-width": SIDEBAR_WIDTH_MOBILE },
114
111
  side,
115
- children: /* @__PURE__ */ jsx("div", {
112
+ children: [/* @__PURE__ */ jsxs(SheetHeader, {
113
+ className: "sr-only",
114
+ children: [/* @__PURE__ */ jsx(SheetTitle, { children: "Sidebar" }), /* @__PURE__ */ jsx(SheetDescription, { children: "Displays the mobile sidebar." })]
115
+ }), /* @__PURE__ */ jsx("div", {
116
116
  className: "flex h-full w-full flex-col",
117
117
  children
118
- })
118
+ })]
119
119
  })
120
120
  });
121
121
  return /* @__PURE__ */ jsxs("div", {
122
- ref,
123
- className: "text-sidebar-foreground group peer hidden md:block",
122
+ className: "group peer text-sidebar-foreground hidden md:block",
124
123
  "data-state": state,
125
124
  "data-collapsible": state === "collapsed" ? collapsible : "",
126
125
  "data-variant": variant,
127
126
  "data-side": side,
128
- children: [/* @__PURE__ */ jsx("div", { className: cn("relative h-svh w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear", "group-data-[collapsible=offcanvas]:w-0", "group-data-[side=right]:rotate-180", variant === "floating" || variant === "inset" ? "group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]" : "group-data-[collapsible=icon]:w-(--sidebar-width-icon)") }), /* @__PURE__ */ jsx("div", {
127
+ "data-slot": "sidebar",
128
+ children: [/* @__PURE__ */ jsx("div", {
129
+ "data-slot": "sidebar-gap",
130
+ className: cn("relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear", "group-data-[collapsible=offcanvas]:w-0", "group-data-[side=right]:rotate-180", variant === "floating" || variant === "inset" ? "group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]" : "group-data-[collapsible=icon]:w-(--sidebar-width-icon)")
131
+ }), /* @__PURE__ */ jsx("div", {
132
+ "data-slot": "sidebar-container",
129
133
  className: cn("fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear md:flex", side === "left" ? "left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]" : "right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]", 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", className),
130
134
  ...props,
131
135
  children: /* @__PURE__ */ jsx("div", {
132
136
  "data-sidebar": "sidebar",
133
- className: "bg-sidebar group-data-[variant=floating]:border-sidebar-border flex h-full w-full flex-col group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:shadow-2xs",
137
+ "data-slot": "sidebar-inner",
138
+ className: "bg-sidebar group-data-[variant=floating]:border-sidebar-border flex h-full w-full flex-col group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:shadow-sm",
134
139
  children
135
140
  })
136
141
  })]
137
142
  });
138
- });
139
- Sidebar.displayName = "Sidebar";
140
- const SidebarTrigger = React$1.forwardRef(({ className, onClick,...props }, ref) => {
141
- const { toggleSidebar } = useSidebar();
142
- return /* @__PURE__ */ jsxs(Button, {
143
- ref,
144
- "data-sidebar": "trigger",
145
- variant: "ghost",
146
- size: "icon",
147
- className: cn("h-7 w-7", className),
148
- onClick: (event) => {
149
- onClick?.(event);
150
- toggleSidebar();
151
- },
152
- ...props,
153
- children: [/* @__PURE__ */ jsx(PanelLeft, {}), /* @__PURE__ */ jsx("span", {
154
- className: "sr-only",
155
- children: "Toggle Sidebar"
156
- })]
157
- });
158
- });
159
- SidebarTrigger.displayName = "SidebarTrigger";
160
- const SidebarRail = React$1.forwardRef(({ className,...props }, ref) => {
143
+ }
144
+ function SidebarRail({ className,...props }) {
161
145
  const { toggleSidebar } = useSidebar();
162
146
  return /* @__PURE__ */ jsx("button", {
163
- ref,
164
147
  "data-sidebar": "rail",
148
+ "data-slot": "sidebar-rail",
165
149
  "aria-label": "Toggle Sidebar",
166
150
  tabIndex: -1,
167
151
  onClick: toggleSidebar,
168
152
  title: "Toggle Sidebar",
169
- className: cn("hover:after:bg-sidebar-border absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] sm:flex", "in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize", "[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize", "group-data-[collapsible=offcanvas]:hover:bg-sidebar group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full", "[[data-side=left][data-collapsible=offcanvas]_&]:-right-2", "[[data-side=right][data-collapsible=offcanvas]_&]:-left-2", className),
170
- ...props
171
- });
172
- });
173
- SidebarRail.displayName = "SidebarRail";
174
- const SidebarInset = React$1.forwardRef(({ className,...props }, ref) => {
175
- return /* @__PURE__ */ jsx("main", {
176
- ref,
177
- className: cn("bg-background relative flex min-h-svh flex-1 flex-col", "peer-data-[variant=inset]:min-h-[calc(100svh-(--spacing(4)))] 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-2xs md:peer-data-[state=collapsed]:peer-data-[variant=inset]:ml-2", className),
153
+ className: cn("hover:after:bg-sidebar-border absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] sm:flex", "in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize", "[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize", "hover:group-data-[collapsible=offcanvas]:bg-sidebar group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full", "[[data-side=left][data-collapsible=offcanvas]_&]:-right-2", "[[data-side=right][data-collapsible=offcanvas]_&]:-left-2", className),
178
154
  ...props
179
155
  });
180
- });
181
- SidebarInset.displayName = "SidebarInset";
182
- const SidebarInput = React$1.forwardRef(({ className,...props }, ref) => {
156
+ }
157
+ function SidebarInput({ className,...props }) {
183
158
  return /* @__PURE__ */ jsx(Input, {
184
- ref,
159
+ "data-slot": "sidebar-input",
185
160
  "data-sidebar": "input",
186
- className: cn("focus-visible:ring-sidebar-ring bg-background h-8 w-full shadow-none focus-visible:ring-2", className),
161
+ className: cn("bg-background h-8 w-full shadow-none", className),
187
162
  ...props
188
163
  });
189
- });
190
- SidebarInput.displayName = "SidebarInput";
191
- const SidebarHeader = React$1.forwardRef(({ className,...props }, ref) => {
164
+ }
165
+ function SidebarHeader({ className,...props }) {
192
166
  return /* @__PURE__ */ jsx("div", {
193
- ref,
167
+ "data-slot": "sidebar-header",
194
168
  "data-sidebar": "header",
195
169
  className: cn("flex flex-col gap-2 p-2", className),
196
170
  ...props
197
171
  });
198
- });
199
- SidebarHeader.displayName = "SidebarHeader";
200
- const SidebarFooter = React$1.forwardRef(({ className,...props }, ref) => {
172
+ }
173
+ function SidebarFooter({ className,...props }) {
201
174
  return /* @__PURE__ */ jsx("div", {
202
- ref,
175
+ "data-slot": "sidebar-footer",
203
176
  "data-sidebar": "footer",
204
177
  className: cn("flex flex-col gap-2 p-2", className),
205
178
  ...props
206
179
  });
207
- });
208
- SidebarFooter.displayName = "SidebarFooter";
209
- const SidebarSeparator = React$1.forwardRef(({ className,...props }, ref) => {
210
- return /* @__PURE__ */ jsx(Separator, {
211
- ref,
212
- "data-sidebar": "separator",
213
- className: cn("bg-sidebar-border mx-2 w-auto", className),
214
- ...props
215
- });
216
- });
217
- SidebarSeparator.displayName = "SidebarSeparator";
218
- const SidebarContent = React$1.forwardRef(({ className,...props }, ref) => {
180
+ }
181
+ function SidebarContent({ className,...props }) {
219
182
  return /* @__PURE__ */ jsx("div", {
220
- ref,
183
+ "data-slot": "sidebar-content",
221
184
  "data-sidebar": "content",
222
185
  className: cn("flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden", className),
223
186
  ...props
224
187
  });
225
- });
226
- SidebarContent.displayName = "SidebarContent";
227
- const SidebarGroup = React$1.forwardRef(({ className,...props }, ref) => {
188
+ }
189
+ function SidebarGroup({ className,...props }) {
228
190
  return /* @__PURE__ */ jsx("div", {
229
- ref,
191
+ "data-slot": "sidebar-group",
230
192
  "data-sidebar": "group",
231
193
  className: cn("relative flex w-full min-w-0 flex-col p-2", className),
232
194
  ...props
233
195
  });
234
- });
235
- SidebarGroup.displayName = "SidebarGroup";
236
- const SidebarGroupLabel = React$1.forwardRef(({ className, asChild = false,...props }, ref) => {
196
+ }
197
+ function SidebarGroupLabel({ className, asChild = false,...props }) {
237
198
  return /* @__PURE__ */ jsx(asChild ? Slot : "div", {
238
- ref,
199
+ "data-slot": "sidebar-group-label",
239
200
  "data-sidebar": "group-label",
240
- className: cn("text-sidebar-foreground/70 ring-sidebar-ring flex h-8 shrink-0 items-center rounded-md px-2 text-sm font-medium outline-hidden transition-[margin,opa] duration-200 ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0", "group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0", className),
201
+ className: cn("text-sidebar-foreground/70 ring-sidebar-ring flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium outline-hidden transition-[margin,opacity] duration-200 ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0", "group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0", className),
241
202
  ...props
242
203
  });
243
- });
244
- SidebarGroupLabel.displayName = "SidebarGroupLabel";
245
- const SidebarGroupAction = React$1.forwardRef(({ className, asChild = false,...props }, ref) => {
246
- return /* @__PURE__ */ jsx(asChild ? Slot : "button", {
247
- ref,
248
- "data-sidebar": "group-action",
249
- className: cn("text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground absolute top-3.5 right-3 flex aspect-square w-5 items-center justify-center rounded-md p-0 outline-hidden transition-transform focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0", "after:absolute after:-inset-2 md:after:hidden", "group-data-[collapsible=icon]:hidden", className),
204
+ }
205
+ function SidebarGroupContent({ className,...props }) {
206
+ return /* @__PURE__ */ jsx("div", {
207
+ "data-slot": "sidebar-group-content",
208
+ "data-sidebar": "group-content",
209
+ className: cn("w-full text-sm", className),
250
210
  ...props
251
211
  });
252
- });
253
- SidebarGroupAction.displayName = "SidebarGroupAction";
254
- const SidebarGroupContent = React$1.forwardRef(({ className,...props }, ref) => /* @__PURE__ */ jsx("div", {
255
- ref,
256
- "data-sidebar": "group-content",
257
- className: cn("w-full text-base", className),
258
- ...props
259
- }));
260
- SidebarGroupContent.displayName = "SidebarGroupContent";
261
- const SidebarMenu = React$1.forwardRef(({ className,...props }, ref) => /* @__PURE__ */ jsx("ul", {
262
- ref,
263
- "data-sidebar": "menu",
264
- className: cn("flex w-full min-w-0 flex-col gap-1", className),
265
- ...props
266
- }));
267
- SidebarMenu.displayName = "SidebarMenu";
268
- const SidebarMenuItem = React$1.forwardRef(({ className,...props }, ref) => /* @__PURE__ */ jsx("li", {
269
- ref,
270
- "data-sidebar": "menu-item",
271
- className: cn("group/menu-item relative", className),
272
- ...props
273
- }));
274
- SidebarMenuItem.displayName = "SidebarMenuItem";
275
- const sidebarMenuButtonVariants = cva("peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-base outline-hidden ring-sidebar-ring transition-[width,height,padding] 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 group-has-data-[sidebar=menu-action]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0", {
212
+ }
213
+ function SidebarMenu({ className,...props }) {
214
+ return /* @__PURE__ */ jsx("ul", {
215
+ "data-slot": "sidebar-menu",
216
+ "data-sidebar": "menu",
217
+ className: cn("flex w-full min-w-0 flex-col gap-1", className),
218
+ ...props
219
+ });
220
+ }
221
+ function SidebarMenuItem({ className,...props }) {
222
+ return /* @__PURE__ */ jsx("li", {
223
+ "data-slot": "sidebar-menu-item",
224
+ "data-sidebar": "menu-item",
225
+ className: cn("group/menu-item relative", className),
226
+ ...props
227
+ });
228
+ }
229
+ const sidebarMenuButtonVariants = cva("peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm outline-hidden ring-sidebar-ring transition-[width,height,padding] 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 group-has-data-[sidebar=menu-action]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0", {
276
230
  variants: {
277
231
  variant: {
278
232
  default: "hover:bg-sidebar-accent hover:text-sidebar-accent-foreground",
279
233
  outline: "bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]"
280
234
  },
281
235
  size: {
282
- default: "h-8 text-base",
283
- sm: "h-7 text-sm",
284
- lg: "h-12 text-base group-data-[collapsible=icon]:p-0!"
236
+ default: "h-8 text-sm",
237
+ sm: "h-7 text-xs",
238
+ lg: "h-12 text-sm group-data-[collapsible=icon]:p-0!"
285
239
  }
286
240
  },
287
241
  defaultVariants: {
@@ -289,11 +243,11 @@ const sidebarMenuButtonVariants = cva("peer/menu-button flex w-full items-center
289
243
  size: "default"
290
244
  }
291
245
  });
292
- const SidebarMenuButton = React$1.forwardRef(({ asChild = false, isActive = false, variant = "default", size = "default", tooltip, className,...props }, ref) => {
246
+ function SidebarMenuButton({ asChild = false, isActive = false, variant = "default", size = "default", tooltip, className,...props }) {
293
247
  const Comp = asChild ? Slot : "button";
294
248
  const { isMobile, state } = useSidebar();
295
249
  const button = /* @__PURE__ */ jsx(Comp, {
296
- ref,
250
+ "data-slot": "sidebar-menu-button",
297
251
  "data-sidebar": "menu-button",
298
252
  "data-size": size,
299
253
  "data-active": isActive,
@@ -314,67 +268,15 @@ const SidebarMenuButton = React$1.forwardRef(({ asChild = false, isActive = fals
314
268
  hidden: state !== "collapsed" || isMobile,
315
269
  ...tooltip
316
270
  })] });
317
- });
318
- SidebarMenuButton.displayName = "SidebarMenuButton";
319
- const SidebarMenuAction = React$1.forwardRef(({ className, asChild = false, showOnHover = false,...props }, ref) => {
320
- return /* @__PURE__ */ jsx(asChild ? Slot : "button", {
321
- ref,
322
- "data-sidebar": "menu-action",
323
- className: cn("text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground peer-hover/menu-button:text-sidebar-accent-foreground absolute top-1.5 right-1 flex aspect-square w-5 items-center justify-center rounded-md p-0 outline-hidden transition-transform focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0", "after:absolute after:-inset-2 md:after:hidden", "peer-data-[size=sm]/menu-button:top-1", "peer-data-[size=default]/menu-button:top-1.5", "peer-data-[size=lg]/menu-button:top-2.5", "group-data-[collapsible=icon]:hidden", showOnHover && "peer-data-[active=true]/menu-button:text-sidebar-accent-foreground group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 data-[state=open]:opacity-100 md:opacity-0", className),
324
- ...props
325
- });
326
- });
327
- SidebarMenuAction.displayName = "SidebarMenuAction";
328
- const SidebarMenuBadge = React$1.forwardRef(({ className,...props }, ref) => /* @__PURE__ */ jsx("div", {
329
- ref,
330
- "data-sidebar": "menu-badge",
331
- className: cn("text-sidebar-foreground pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-sm font-medium tabular-nums select-none", "peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground", "peer-data-[size=sm]/menu-button:top-1", "peer-data-[size=default]/menu-button:top-1.5", "peer-data-[size=lg]/menu-button:top-2.5", "group-data-[collapsible=icon]:hidden", className),
332
- ...props
333
- }));
334
- SidebarMenuBadge.displayName = "SidebarMenuBadge";
335
- const SidebarMenuSkeleton = React$1.forwardRef(({ className, showIcon = false,...props }, ref) => {
336
- const width = React$1.useMemo(() => {
337
- return `${Math.floor(Math.random() * 40) + 50}%`;
338
- }, []);
339
- return /* @__PURE__ */ jsxs("div", {
340
- ref,
341
- "data-sidebar": "menu-skeleton",
342
- className: cn("flex h-8 items-center gap-2 rounded-md px-2", className),
343
- ...props,
344
- children: [showIcon && /* @__PURE__ */ jsx(Skeleton, {
345
- className: "size-4 rounded-md",
346
- "data-sidebar": "menu-skeleton-icon"
347
- }), /* @__PURE__ */ jsx(Skeleton, {
348
- className: "h-4 max-w-(--skeleton-width) flex-1",
349
- "data-sidebar": "menu-skeleton-text",
350
- style: { "--skeleton-width": width }
351
- })]
352
- });
353
- });
354
- SidebarMenuSkeleton.displayName = "SidebarMenuSkeleton";
355
- const SidebarMenuSub = React$1.forwardRef(({ className,...props }, ref) => /* @__PURE__ */ jsx("ul", {
356
- ref,
357
- "data-sidebar": "menu-sub",
358
- className: cn("border-sidebar-border mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l px-2.5 py-0.5", "group-data-[collapsible=icon]:hidden", className),
359
- ...props
360
- }));
361
- SidebarMenuSub.displayName = "SidebarMenuSub";
362
- const SidebarMenuSubItem = React$1.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsx("li", {
363
- ref,
364
- ...props
365
- }));
366
- SidebarMenuSubItem.displayName = "SidebarMenuSubItem";
367
- const SidebarMenuSubButton = React$1.forwardRef(({ asChild = false, size = "md", isActive, className,...props }, ref) => {
368
- return /* @__PURE__ */ jsx(asChild ? Slot : "a", {
369
- ref,
370
- "data-sidebar": "menu-sub-button",
371
- "data-size": size,
372
- "data-active": isActive,
373
- className: cn("text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground active:bg-sidebar-accent active:text-sidebar-accent-foreground [&>svg]:text-sidebar-accent-foreground flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 outline-hidden focus-visible:ring-2 disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0", "data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground", size === "sm" && "text-sm", size === "md" && "text-base", "group-data-[collapsible=icon]:hidden", className),
271
+ }
272
+ function SidebarMenuBadge({ className,...props }) {
273
+ return /* @__PURE__ */ jsx("div", {
274
+ "data-slot": "sidebar-menu-badge",
275
+ "data-sidebar": "menu-badge",
276
+ className: cn("text-sidebar-foreground pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium tabular-nums select-none", "peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground", "peer-data-[size=sm]/menu-button:top-1", "peer-data-[size=default]/menu-button:top-1.5", "peer-data-[size=lg]/menu-button:top-2.5", "group-data-[collapsible=icon]:hidden", className),
374
277
  ...props
375
278
  });
376
- });
377
- SidebarMenuSubButton.displayName = "SidebarMenuSubButton";
279
+ }
378
280
 
379
281
  //#endregion
380
282
  export { Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarMenu, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarProvider, SidebarRail };
@@ -1 +1 @@
1
- {"version":3,"file":"sidebar.js","names":[],"sources":["../../../../../ui-kit-web/dist/ui/sidebar.js"],"sourcesContent":["'use client';\n\n\nimport { cn } from \"./utils.js\";\nimport { Button } from \"./button.js\";\nimport { Input } from \"./input.js\";\nimport { Separator } from \"./separator.js\";\nimport { Sheet, SheetContent } from \"./sheet.js\";\nimport { useIsMobile } from \"./use-mobile.js\";\nimport { Skeleton } from \"./skeleton.js\";\nimport { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from \"./tooltip.js\";\nimport * as React$1 from \"react\";\nimport { PanelLeft } from \"lucide-react\";\nimport { jsx, jsxs } from \"react/jsx-runtime\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { cva } from \"class-variance-authority\";\n\n//#region ui/sidebar.tsx\nconst SIDEBAR_COOKIE_NAME = \"sidebar:state\";\nconst SIDEBAR_COOKIE_MAX_AGE = 3600 * 24 * 7;\nconst SIDEBAR_WIDTH = \"16rem\";\nconst SIDEBAR_WIDTH_MOBILE = \"18rem\";\nconst SIDEBAR_WIDTH_ICON = \"3rem\";\nconst SIDEBAR_KEYBOARD_SHORTCUT = \"b\";\nconst SidebarContext = React$1.createContext(null);\nfunction useSidebar() {\n\tconst context = React$1.useContext(SidebarContext);\n\tif (!context) throw new Error(\"useSidebar must be used within a SidebarProvider.\");\n\treturn context;\n}\nconst SidebarProvider = React$1.forwardRef(({ defaultOpen = true, open: openProp, onOpenChange: setOpenProp, className, style, children,...props }, ref) => {\n\tconst isMobile = useIsMobile();\n\tconst [openMobile, setOpenMobile] = React$1.useState(false);\n\tconst [_open, _setOpen] = React$1.useState(defaultOpen);\n\tconst open = openProp ?? _open;\n\tconst setOpen = React$1.useCallback((value) => {\n\t\tconst openState = typeof value === \"function\" ? value(open) : value;\n\t\tif (setOpenProp) setOpenProp(openState);\n\t\telse _setOpen(openState);\n\t\tdocument.cookie = `${SIDEBAR_COOKIE_NAME}=${openState}; path=/; max-age=${SIDEBAR_COOKIE_MAX_AGE}`;\n\t}, [setOpenProp, open]);\n\tconst toggleSidebar = React$1.useCallback(() => {\n\t\treturn isMobile ? setOpenMobile((open$1) => !open$1) : setOpen((open$1) => !open$1);\n\t}, [\n\t\tisMobile,\n\t\tsetOpen,\n\t\tsetOpenMobile\n\t]);\n\tReact$1.useEffect(() => {\n\t\tconst handleKeyDown = (event) => {\n\t\t\tif (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\ttoggleSidebar();\n\t\t\t}\n\t\t};\n\t\twindow.addEventListener(\"keydown\", handleKeyDown);\n\t\treturn () => window.removeEventListener(\"keydown\", handleKeyDown);\n\t}, [toggleSidebar]);\n\tconst state = open ? \"expanded\" : \"collapsed\";\n\tconst contextValue = React$1.useMemo(() => ({\n\t\tstate,\n\t\topen,\n\t\tsetOpen,\n\t\tisMobile,\n\t\topenMobile,\n\t\tsetOpenMobile,\n\t\ttoggleSidebar\n\t}), [\n\t\tstate,\n\t\topen,\n\t\tsetOpen,\n\t\tisMobile,\n\t\topenMobile,\n\t\tsetOpenMobile,\n\t\ttoggleSidebar\n\t]);\n\treturn /* @__PURE__ */ jsx(SidebarContext.Provider, {\n\t\tvalue: contextValue,\n\t\tchildren: /* @__PURE__ */ jsx(TooltipProvider, {\n\t\t\tdelayDuration: 0,\n\t\t\tchildren: /* @__PURE__ */ jsx(\"div\", {\n\t\t\t\tstyle: {\n\t\t\t\t\t\"--sidebar-width\": SIDEBAR_WIDTH,\n\t\t\t\t\t\"--sidebar-width-icon\": SIDEBAR_WIDTH_ICON,\n\t\t\t\t\t...style\n\t\t\t\t},\n\t\t\t\tclassName: cn(\"group/sidebar-wrapper has-data-[variant=inset]:bg-sidebar flex min-h-svh w-full\", className),\n\t\t\t\tref,\n\t\t\t\t...props,\n\t\t\t\tchildren\n\t\t\t})\n\t\t})\n\t});\n});\nSidebarProvider.displayName = \"SidebarProvider\";\nconst Sidebar = React$1.forwardRef(({ side = \"left\", variant = \"sidebar\", collapsible = \"offcanvas\", className, children,...props }, ref) => {\n\tconst { isMobile, state, openMobile, setOpenMobile } = useSidebar();\n\tif (collapsible === \"none\") return /* @__PURE__ */ jsx(\"div\", {\n\t\tclassName: cn(\"bg-sidebar text-sidebar-foreground flex h-full w-(--sidebar-width) flex-col\", className),\n\t\tref,\n\t\t...props,\n\t\tchildren\n\t});\n\tif (isMobile) return /* @__PURE__ */ jsx(Sheet, {\n\t\topen: openMobile,\n\t\tonOpenChange: setOpenMobile,\n\t\t...props,\n\t\tchildren: /* @__PURE__ */ jsx(SheetContent, {\n\t\t\t\"data-sidebar\": \"sidebar\",\n\t\t\t\"data-mobile\": \"true\",\n\t\t\tclassName: \"bg-sidebar text-sidebar-foreground w-(--sidebar-width) p-0 [&>button]:hidden\",\n\t\t\tstyle: { \"--sidebar-width\": SIDEBAR_WIDTH_MOBILE },\n\t\t\tside,\n\t\t\tchildren: /* @__PURE__ */ jsx(\"div\", {\n\t\t\t\tclassName: \"flex h-full w-full flex-col\",\n\t\t\t\tchildren\n\t\t\t})\n\t\t})\n\t});\n\treturn /* @__PURE__ */ jsxs(\"div\", {\n\t\tref,\n\t\tclassName: \"text-sidebar-foreground group peer hidden md:block\",\n\t\t\"data-state\": state,\n\t\t\"data-collapsible\": state === \"collapsed\" ? collapsible : \"\",\n\t\t\"data-variant\": variant,\n\t\t\"data-side\": side,\n\t\tchildren: [/* @__PURE__ */ jsx(\"div\", { className: cn(\"relative h-svh w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear\", \"group-data-[collapsible=offcanvas]:w-0\", \"group-data-[side=right]:rotate-180\", variant === \"floating\" || variant === \"inset\" ? \"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]\" : \"group-data-[collapsible=icon]:w-(--sidebar-width-icon)\") }), /* @__PURE__ */ jsx(\"div\", {\n\t\t\tclassName: cn(\"fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear md:flex\", side === \"left\" ? \"left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]\" : \"right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]\", 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\", className),\n\t\t\t...props,\n\t\t\tchildren: /* @__PURE__ */ jsx(\"div\", {\n\t\t\t\t\"data-sidebar\": \"sidebar\",\n\t\t\t\tclassName: \"bg-sidebar group-data-[variant=floating]:border-sidebar-border flex h-full w-full flex-col group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:shadow-2xs\",\n\t\t\t\tchildren\n\t\t\t})\n\t\t})]\n\t});\n});\nSidebar.displayName = \"Sidebar\";\nconst SidebarTrigger = React$1.forwardRef(({ className, onClick,...props }, ref) => {\n\tconst { toggleSidebar } = useSidebar();\n\treturn /* @__PURE__ */ jsxs(Button, {\n\t\tref,\n\t\t\"data-sidebar\": \"trigger\",\n\t\tvariant: \"ghost\",\n\t\tsize: \"icon\",\n\t\tclassName: cn(\"h-7 w-7\", className),\n\t\tonClick: (event) => {\n\t\t\tonClick?.(event);\n\t\t\ttoggleSidebar();\n\t\t},\n\t\t...props,\n\t\tchildren: [/* @__PURE__ */ jsx(PanelLeft, {}), /* @__PURE__ */ jsx(\"span\", {\n\t\t\tclassName: \"sr-only\",\n\t\t\tchildren: \"Toggle Sidebar\"\n\t\t})]\n\t});\n});\nSidebarTrigger.displayName = \"SidebarTrigger\";\nconst SidebarRail = React$1.forwardRef(({ className,...props }, ref) => {\n\tconst { toggleSidebar } = useSidebar();\n\treturn /* @__PURE__ */ jsx(\"button\", {\n\t\tref,\n\t\t\"data-sidebar\": \"rail\",\n\t\t\"aria-label\": \"Toggle Sidebar\",\n\t\ttabIndex: -1,\n\t\tonClick: toggleSidebar,\n\t\ttitle: \"Toggle Sidebar\",\n\t\tclassName: cn(\"hover:after:bg-sidebar-border absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] sm:flex\", \"in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize\", \"[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize\", \"group-data-[collapsible=offcanvas]:hover:bg-sidebar group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full\", \"[[data-side=left][data-collapsible=offcanvas]_&]:-right-2\", \"[[data-side=right][data-collapsible=offcanvas]_&]:-left-2\", className),\n\t\t...props\n\t});\n});\nSidebarRail.displayName = \"SidebarRail\";\nconst SidebarInset = React$1.forwardRef(({ className,...props }, ref) => {\n\treturn /* @__PURE__ */ jsx(\"main\", {\n\t\tref,\n\t\tclassName: cn(\"bg-background relative flex min-h-svh flex-1 flex-col\", \"peer-data-[variant=inset]:min-h-[calc(100svh-(--spacing(4)))] 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-2xs md:peer-data-[state=collapsed]:peer-data-[variant=inset]:ml-2\", className),\n\t\t...props\n\t});\n});\nSidebarInset.displayName = \"SidebarInset\";\nconst SidebarInput = React$1.forwardRef(({ className,...props }, ref) => {\n\treturn /* @__PURE__ */ jsx(Input, {\n\t\tref,\n\t\t\"data-sidebar\": \"input\",\n\t\tclassName: cn(\"focus-visible:ring-sidebar-ring bg-background h-8 w-full shadow-none focus-visible:ring-2\", className),\n\t\t...props\n\t});\n});\nSidebarInput.displayName = \"SidebarInput\";\nconst SidebarHeader = React$1.forwardRef(({ className,...props }, ref) => {\n\treturn /* @__PURE__ */ jsx(\"div\", {\n\t\tref,\n\t\t\"data-sidebar\": \"header\",\n\t\tclassName: cn(\"flex flex-col gap-2 p-2\", className),\n\t\t...props\n\t});\n});\nSidebarHeader.displayName = \"SidebarHeader\";\nconst SidebarFooter = React$1.forwardRef(({ className,...props }, ref) => {\n\treturn /* @__PURE__ */ jsx(\"div\", {\n\t\tref,\n\t\t\"data-sidebar\": \"footer\",\n\t\tclassName: cn(\"flex flex-col gap-2 p-2\", className),\n\t\t...props\n\t});\n});\nSidebarFooter.displayName = \"SidebarFooter\";\nconst SidebarSeparator = React$1.forwardRef(({ className,...props }, ref) => {\n\treturn /* @__PURE__ */ jsx(Separator, {\n\t\tref,\n\t\t\"data-sidebar\": \"separator\",\n\t\tclassName: cn(\"bg-sidebar-border mx-2 w-auto\", className),\n\t\t...props\n\t});\n});\nSidebarSeparator.displayName = \"SidebarSeparator\";\nconst SidebarContent = React$1.forwardRef(({ className,...props }, ref) => {\n\treturn /* @__PURE__ */ jsx(\"div\", {\n\t\tref,\n\t\t\"data-sidebar\": \"content\",\n\t\tclassName: cn(\"flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden\", className),\n\t\t...props\n\t});\n});\nSidebarContent.displayName = \"SidebarContent\";\nconst SidebarGroup = React$1.forwardRef(({ className,...props }, ref) => {\n\treturn /* @__PURE__ */ jsx(\"div\", {\n\t\tref,\n\t\t\"data-sidebar\": \"group\",\n\t\tclassName: cn(\"relative flex w-full min-w-0 flex-col p-2\", className),\n\t\t...props\n\t});\n});\nSidebarGroup.displayName = \"SidebarGroup\";\nconst SidebarGroupLabel = React$1.forwardRef(({ className, asChild = false,...props }, ref) => {\n\treturn /* @__PURE__ */ jsx(asChild ? Slot : \"div\", {\n\t\tref,\n\t\t\"data-sidebar\": \"group-label\",\n\t\tclassName: cn(\"text-sidebar-foreground/70 ring-sidebar-ring flex h-8 shrink-0 items-center rounded-md px-2 text-sm font-medium outline-hidden transition-[margin,opa] duration-200 ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0\", \"group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0\", className),\n\t\t...props\n\t});\n});\nSidebarGroupLabel.displayName = \"SidebarGroupLabel\";\nconst SidebarGroupAction = React$1.forwardRef(({ className, asChild = false,...props }, ref) => {\n\treturn /* @__PURE__ */ jsx(asChild ? Slot : \"button\", {\n\t\tref,\n\t\t\"data-sidebar\": \"group-action\",\n\t\tclassName: cn(\"text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground absolute top-3.5 right-3 flex aspect-square w-5 items-center justify-center rounded-md p-0 outline-hidden transition-transform focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0\", \"after:absolute after:-inset-2 md:after:hidden\", \"group-data-[collapsible=icon]:hidden\", className),\n\t\t...props\n\t});\n});\nSidebarGroupAction.displayName = \"SidebarGroupAction\";\nconst SidebarGroupContent = React$1.forwardRef(({ className,...props }, ref) => /* @__PURE__ */ jsx(\"div\", {\n\tref,\n\t\"data-sidebar\": \"group-content\",\n\tclassName: cn(\"w-full text-base\", className),\n\t...props\n}));\nSidebarGroupContent.displayName = \"SidebarGroupContent\";\nconst SidebarMenu = React$1.forwardRef(({ className,...props }, ref) => /* @__PURE__ */ jsx(\"ul\", {\n\tref,\n\t\"data-sidebar\": \"menu\",\n\tclassName: cn(\"flex w-full min-w-0 flex-col gap-1\", className),\n\t...props\n}));\nSidebarMenu.displayName = \"SidebarMenu\";\nconst SidebarMenuItem = React$1.forwardRef(({ className,...props }, ref) => /* @__PURE__ */ jsx(\"li\", {\n\tref,\n\t\"data-sidebar\": \"menu-item\",\n\tclassName: cn(\"group/menu-item relative\", className),\n\t...props\n}));\nSidebarMenuItem.displayName = \"SidebarMenuItem\";\nconst sidebarMenuButtonVariants = cva(\"peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-base outline-hidden ring-sidebar-ring transition-[width,height,padding] 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 group-has-data-[sidebar=menu-action]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0\", {\n\tvariants: {\n\t\tvariant: {\n\t\t\tdefault: \"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground\",\n\t\t\toutline: \"bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]\"\n\t\t},\n\t\tsize: {\n\t\t\tdefault: \"h-8 text-base\",\n\t\t\tsm: \"h-7 text-sm\",\n\t\t\tlg: \"h-12 text-base group-data-[collapsible=icon]:p-0!\"\n\t\t}\n\t},\n\tdefaultVariants: {\n\t\tvariant: \"default\",\n\t\tsize: \"default\"\n\t}\n});\nconst SidebarMenuButton = React$1.forwardRef(({ asChild = false, isActive = false, variant = \"default\", size = \"default\", tooltip, className,...props }, ref) => {\n\tconst Comp = asChild ? Slot : \"button\";\n\tconst { isMobile, state } = useSidebar();\n\tconst button = /* @__PURE__ */ jsx(Comp, {\n\t\tref,\n\t\t\"data-sidebar\": \"menu-button\",\n\t\t\"data-size\": size,\n\t\t\"data-active\": isActive,\n\t\tclassName: cn(sidebarMenuButtonVariants({\n\t\t\tvariant,\n\t\t\tsize\n\t\t}), className),\n\t\t...props\n\t});\n\tif (!tooltip) return button;\n\tif (typeof tooltip === \"string\") tooltip = { children: tooltip };\n\treturn /* @__PURE__ */ jsxs(Tooltip, { children: [/* @__PURE__ */ jsx(TooltipTrigger, {\n\t\tasChild: true,\n\t\tchildren: button\n\t}), /* @__PURE__ */ jsx(TooltipContent, {\n\t\tside: \"right\",\n\t\talign: \"center\",\n\t\thidden: state !== \"collapsed\" || isMobile,\n\t\t...tooltip\n\t})] });\n});\nSidebarMenuButton.displayName = \"SidebarMenuButton\";\nconst SidebarMenuAction = React$1.forwardRef(({ className, asChild = false, showOnHover = false,...props }, ref) => {\n\treturn /* @__PURE__ */ jsx(asChild ? Slot : \"button\", {\n\t\tref,\n\t\t\"data-sidebar\": \"menu-action\",\n\t\tclassName: cn(\"text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground peer-hover/menu-button:text-sidebar-accent-foreground absolute top-1.5 right-1 flex aspect-square w-5 items-center justify-center rounded-md p-0 outline-hidden transition-transform focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0\", \"after:absolute after:-inset-2 md:after:hidden\", \"peer-data-[size=sm]/menu-button:top-1\", \"peer-data-[size=default]/menu-button:top-1.5\", \"peer-data-[size=lg]/menu-button:top-2.5\", \"group-data-[collapsible=icon]:hidden\", showOnHover && \"peer-data-[active=true]/menu-button:text-sidebar-accent-foreground group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 data-[state=open]:opacity-100 md:opacity-0\", className),\n\t\t...props\n\t});\n});\nSidebarMenuAction.displayName = \"SidebarMenuAction\";\nconst SidebarMenuBadge = React$1.forwardRef(({ className,...props }, ref) => /* @__PURE__ */ jsx(\"div\", {\n\tref,\n\t\"data-sidebar\": \"menu-badge\",\n\tclassName: cn(\"text-sidebar-foreground pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-sm font-medium tabular-nums select-none\", \"peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground\", \"peer-data-[size=sm]/menu-button:top-1\", \"peer-data-[size=default]/menu-button:top-1.5\", \"peer-data-[size=lg]/menu-button:top-2.5\", \"group-data-[collapsible=icon]:hidden\", className),\n\t...props\n}));\nSidebarMenuBadge.displayName = \"SidebarMenuBadge\";\nconst SidebarMenuSkeleton = React$1.forwardRef(({ className, showIcon = false,...props }, ref) => {\n\tconst width = React$1.useMemo(() => {\n\t\treturn `${Math.floor(Math.random() * 40) + 50}%`;\n\t}, []);\n\treturn /* @__PURE__ */ jsxs(\"div\", {\n\t\tref,\n\t\t\"data-sidebar\": \"menu-skeleton\",\n\t\tclassName: cn(\"flex h-8 items-center gap-2 rounded-md px-2\", className),\n\t\t...props,\n\t\tchildren: [showIcon && /* @__PURE__ */ jsx(Skeleton, {\n\t\t\tclassName: \"size-4 rounded-md\",\n\t\t\t\"data-sidebar\": \"menu-skeleton-icon\"\n\t\t}), /* @__PURE__ */ jsx(Skeleton, {\n\t\t\tclassName: \"h-4 max-w-(--skeleton-width) flex-1\",\n\t\t\t\"data-sidebar\": \"menu-skeleton-text\",\n\t\t\tstyle: { \"--skeleton-width\": width }\n\t\t})]\n\t});\n});\nSidebarMenuSkeleton.displayName = \"SidebarMenuSkeleton\";\nconst SidebarMenuSub = React$1.forwardRef(({ className,...props }, ref) => /* @__PURE__ */ jsx(\"ul\", {\n\tref,\n\t\"data-sidebar\": \"menu-sub\",\n\tclassName: cn(\"border-sidebar-border mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l px-2.5 py-0.5\", \"group-data-[collapsible=icon]:hidden\", className),\n\t...props\n}));\nSidebarMenuSub.displayName = \"SidebarMenuSub\";\nconst SidebarMenuSubItem = React$1.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsx(\"li\", {\n\tref,\n\t...props\n}));\nSidebarMenuSubItem.displayName = \"SidebarMenuSubItem\";\nconst SidebarMenuSubButton = React$1.forwardRef(({ asChild = false, size = \"md\", isActive, className,...props }, ref) => {\n\treturn /* @__PURE__ */ jsx(asChild ? Slot : \"a\", {\n\t\tref,\n\t\t\"data-sidebar\": \"menu-sub-button\",\n\t\t\"data-size\": size,\n\t\t\"data-active\": isActive,\n\t\tclassName: cn(\"text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground active:bg-sidebar-accent active:text-sidebar-accent-foreground [&>svg]:text-sidebar-accent-foreground flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 outline-hidden focus-visible:ring-2 disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0\", \"data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground\", size === \"sm\" && \"text-sm\", size === \"md\" && \"text-base\", \"group-data-[collapsible=icon]:hidden\", className),\n\t\t...props\n\t});\n});\nSidebarMenuSubButton.displayName = \"SidebarMenuSubButton\";\n\n//#endregion\nexport { Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, useSidebar };\n//# sourceMappingURL=sidebar.js.map"],"mappings":"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"}
1
+ {"version":3,"file":"sidebar.js","names":[],"sources":["../../../../../ui-kit-web/dist/ui/sidebar.js"],"sourcesContent":["'use client';\n\n\nimport { cn } from \"./utils.js\";\nimport { Button } from \"./button.js\";\nimport { Input } from \"./input.js\";\nimport { Separator } from \"./separator.js\";\nimport { Sheet, SheetContent, SheetDescription, SheetHeader, SheetTitle } from \"./sheet.js\";\nimport { useIsMobile } from \"./use-mobile.js\";\nimport { Skeleton } from \"./skeleton.js\";\nimport { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from \"./tooltip.js\";\nimport * as React$1 from \"react\";\nimport { PanelLeftIcon } from \"lucide-react\";\nimport { jsx, jsxs } from \"react/jsx-runtime\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { cva } from \"class-variance-authority\";\n\n//#region ui/sidebar.tsx\nconst SIDEBAR_COOKIE_NAME = \"sidebar_state\";\nconst SIDEBAR_COOKIE_MAX_AGE = 3600 * 24 * 7;\nconst SIDEBAR_WIDTH = \"16rem\";\nconst SIDEBAR_WIDTH_MOBILE = \"18rem\";\nconst SIDEBAR_WIDTH_ICON = \"3rem\";\nconst SIDEBAR_KEYBOARD_SHORTCUT = \"b\";\nconst SidebarContext = React$1.createContext(null);\nfunction useSidebar() {\n\tconst context = React$1.useContext(SidebarContext);\n\tif (!context) throw new Error(\"useSidebar must be used within a SidebarProvider.\");\n\treturn context;\n}\nfunction SidebarProvider({ defaultOpen = true, open: openProp, onOpenChange: setOpenProp, className, style, children,...props }) {\n\tconst isMobile = useIsMobile();\n\tconst [openMobile, setOpenMobile] = React$1.useState(false);\n\tconst [_open, _setOpen] = React$1.useState(defaultOpen);\n\tconst open = openProp ?? _open;\n\tconst setOpen = React$1.useCallback((value) => {\n\t\tconst openState = typeof value === \"function\" ? value(open) : value;\n\t\tif (setOpenProp) setOpenProp(openState);\n\t\telse _setOpen(openState);\n\t\tdocument.cookie = `${SIDEBAR_COOKIE_NAME}=${openState}; path=/; max-age=${SIDEBAR_COOKIE_MAX_AGE}`;\n\t}, [setOpenProp, open]);\n\tconst toggleSidebar = React$1.useCallback(() => {\n\t\treturn isMobile ? setOpenMobile((open$1) => !open$1) : setOpen((open$1) => !open$1);\n\t}, [\n\t\tisMobile,\n\t\tsetOpen,\n\t\tsetOpenMobile\n\t]);\n\tReact$1.useEffect(() => {\n\t\tconst handleKeyDown = (event) => {\n\t\t\tif (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\ttoggleSidebar();\n\t\t\t}\n\t\t};\n\t\twindow.addEventListener(\"keydown\", handleKeyDown);\n\t\treturn () => window.removeEventListener(\"keydown\", handleKeyDown);\n\t}, [toggleSidebar]);\n\tconst state = open ? \"expanded\" : \"collapsed\";\n\tconst contextValue = React$1.useMemo(() => ({\n\t\tstate,\n\t\topen,\n\t\tsetOpen,\n\t\tisMobile,\n\t\topenMobile,\n\t\tsetOpenMobile,\n\t\ttoggleSidebar\n\t}), [\n\t\tstate,\n\t\topen,\n\t\tsetOpen,\n\t\tisMobile,\n\t\topenMobile,\n\t\tsetOpenMobile,\n\t\ttoggleSidebar\n\t]);\n\treturn /* @__PURE__ */ jsx(SidebarContext.Provider, {\n\t\tvalue: contextValue,\n\t\tchildren: /* @__PURE__ */ jsx(TooltipProvider, {\n\t\t\tdelayDuration: 0,\n\t\t\tchildren: /* @__PURE__ */ jsx(\"div\", {\n\t\t\t\t\"data-slot\": \"sidebar-wrapper\",\n\t\t\t\tstyle: {\n\t\t\t\t\t\"--sidebar-width\": SIDEBAR_WIDTH,\n\t\t\t\t\t\"--sidebar-width-icon\": SIDEBAR_WIDTH_ICON,\n\t\t\t\t\t...style\n\t\t\t\t},\n\t\t\t\tclassName: cn(\"group/sidebar-wrapper has-data-[variant=inset]:bg-sidebar flex min-h-svh w-full\", className),\n\t\t\t\t...props,\n\t\t\t\tchildren\n\t\t\t})\n\t\t})\n\t});\n}\nfunction Sidebar({ side = \"left\", variant = \"sidebar\", collapsible = \"offcanvas\", className, children,...props }) {\n\tconst { isMobile, state, openMobile, setOpenMobile } = useSidebar();\n\tif (collapsible === \"none\") return /* @__PURE__ */ jsx(\"div\", {\n\t\t\"data-slot\": \"sidebar\",\n\t\tclassName: cn(\"bg-sidebar text-sidebar-foreground flex h-full w-(--sidebar-width) flex-col\", className),\n\t\t...props,\n\t\tchildren\n\t});\n\tif (isMobile) return /* @__PURE__ */ jsx(Sheet, {\n\t\topen: openMobile,\n\t\tonOpenChange: setOpenMobile,\n\t\t...props,\n\t\tchildren: /* @__PURE__ */ jsxs(SheetContent, {\n\t\t\t\"data-sidebar\": \"sidebar\",\n\t\t\t\"data-slot\": \"sidebar\",\n\t\t\t\"data-mobile\": \"true\",\n\t\t\tclassName: \"bg-sidebar text-sidebar-foreground w-(--sidebar-width) p-0 [&>button]:hidden\",\n\t\t\tstyle: { \"--sidebar-width\": SIDEBAR_WIDTH_MOBILE },\n\t\t\tside,\n\t\t\tchildren: [/* @__PURE__ */ jsxs(SheetHeader, {\n\t\t\t\tclassName: \"sr-only\",\n\t\t\t\tchildren: [/* @__PURE__ */ jsx(SheetTitle, { children: \"Sidebar\" }), /* @__PURE__ */ jsx(SheetDescription, { children: \"Displays the mobile sidebar.\" })]\n\t\t\t}), /* @__PURE__ */ jsx(\"div\", {\n\t\t\t\tclassName: \"flex h-full w-full flex-col\",\n\t\t\t\tchildren\n\t\t\t})]\n\t\t})\n\t});\n\treturn /* @__PURE__ */ jsxs(\"div\", {\n\t\tclassName: \"group peer text-sidebar-foreground hidden md:block\",\n\t\t\"data-state\": state,\n\t\t\"data-collapsible\": state === \"collapsed\" ? collapsible : \"\",\n\t\t\"data-variant\": variant,\n\t\t\"data-side\": side,\n\t\t\"data-slot\": \"sidebar\",\n\t\tchildren: [/* @__PURE__ */ jsx(\"div\", {\n\t\t\t\"data-slot\": \"sidebar-gap\",\n\t\t\tclassName: cn(\"relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear\", \"group-data-[collapsible=offcanvas]:w-0\", \"group-data-[side=right]:rotate-180\", variant === \"floating\" || variant === \"inset\" ? \"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]\" : \"group-data-[collapsible=icon]:w-(--sidebar-width-icon)\")\n\t\t}), /* @__PURE__ */ jsx(\"div\", {\n\t\t\t\"data-slot\": \"sidebar-container\",\n\t\t\tclassName: cn(\"fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear md:flex\", side === \"left\" ? \"left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]\" : \"right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]\", 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\", className),\n\t\t\t...props,\n\t\t\tchildren: /* @__PURE__ */ jsx(\"div\", {\n\t\t\t\t\"data-sidebar\": \"sidebar\",\n\t\t\t\t\"data-slot\": \"sidebar-inner\",\n\t\t\t\tclassName: \"bg-sidebar group-data-[variant=floating]:border-sidebar-border flex h-full w-full flex-col group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:shadow-sm\",\n\t\t\t\tchildren\n\t\t\t})\n\t\t})]\n\t});\n}\nfunction SidebarTrigger({ className, onClick,...props }) {\n\tconst { toggleSidebar } = useSidebar();\n\treturn /* @__PURE__ */ jsxs(Button, {\n\t\t\"data-sidebar\": \"trigger\",\n\t\t\"data-slot\": \"sidebar-trigger\",\n\t\tvariant: \"ghost\",\n\t\tsize: \"icon\",\n\t\tclassName: cn(\"size-7\", className),\n\t\tonClick: (event) => {\n\t\t\tonClick?.(event);\n\t\t\ttoggleSidebar();\n\t\t},\n\t\t...props,\n\t\tchildren: [/* @__PURE__ */ jsx(PanelLeftIcon, {}), /* @__PURE__ */ jsx(\"span\", {\n\t\t\tclassName: \"sr-only\",\n\t\t\tchildren: \"Toggle Sidebar\"\n\t\t})]\n\t});\n}\nfunction SidebarRail({ className,...props }) {\n\tconst { toggleSidebar } = useSidebar();\n\treturn /* @__PURE__ */ jsx(\"button\", {\n\t\t\"data-sidebar\": \"rail\",\n\t\t\"data-slot\": \"sidebar-rail\",\n\t\t\"aria-label\": \"Toggle Sidebar\",\n\t\ttabIndex: -1,\n\t\tonClick: toggleSidebar,\n\t\ttitle: \"Toggle Sidebar\",\n\t\tclassName: cn(\"hover:after:bg-sidebar-border absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] sm:flex\", \"in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize\", \"[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize\", \"hover:group-data-[collapsible=offcanvas]:bg-sidebar group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full\", \"[[data-side=left][data-collapsible=offcanvas]_&]:-right-2\", \"[[data-side=right][data-collapsible=offcanvas]_&]:-left-2\", className),\n\t\t...props\n\t});\n}\nfunction SidebarInset({ className,...props }) {\n\treturn /* @__PURE__ */ jsx(\"main\", {\n\t\t\"data-slot\": \"sidebar-inset\",\n\t\tclassName: cn(\"bg-background relative flex w-full flex-1 flex-col\", \"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\", className),\n\t\t...props\n\t});\n}\nfunction SidebarInput({ className,...props }) {\n\treturn /* @__PURE__ */ jsx(Input, {\n\t\t\"data-slot\": \"sidebar-input\",\n\t\t\"data-sidebar\": \"input\",\n\t\tclassName: cn(\"bg-background h-8 w-full shadow-none\", className),\n\t\t...props\n\t});\n}\nfunction SidebarHeader({ className,...props }) {\n\treturn /* @__PURE__ */ jsx(\"div\", {\n\t\t\"data-slot\": \"sidebar-header\",\n\t\t\"data-sidebar\": \"header\",\n\t\tclassName: cn(\"flex flex-col gap-2 p-2\", className),\n\t\t...props\n\t});\n}\nfunction SidebarFooter({ className,...props }) {\n\treturn /* @__PURE__ */ jsx(\"div\", {\n\t\t\"data-slot\": \"sidebar-footer\",\n\t\t\"data-sidebar\": \"footer\",\n\t\tclassName: cn(\"flex flex-col gap-2 p-2\", className),\n\t\t...props\n\t});\n}\nfunction SidebarSeparator({ className,...props }) {\n\treturn /* @__PURE__ */ jsx(Separator, {\n\t\t\"data-slot\": \"sidebar-separator\",\n\t\t\"data-sidebar\": \"separator\",\n\t\tclassName: cn(\"bg-sidebar-border mx-2 w-auto\", className),\n\t\t...props\n\t});\n}\nfunction SidebarContent({ className,...props }) {\n\treturn /* @__PURE__ */ jsx(\"div\", {\n\t\t\"data-slot\": \"sidebar-content\",\n\t\t\"data-sidebar\": \"content\",\n\t\tclassName: cn(\"flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden\", className),\n\t\t...props\n\t});\n}\nfunction SidebarGroup({ className,...props }) {\n\treturn /* @__PURE__ */ jsx(\"div\", {\n\t\t\"data-slot\": \"sidebar-group\",\n\t\t\"data-sidebar\": \"group\",\n\t\tclassName: cn(\"relative flex w-full min-w-0 flex-col p-2\", className),\n\t\t...props\n\t});\n}\nfunction SidebarGroupLabel({ className, asChild = false,...props }) {\n\treturn /* @__PURE__ */ jsx(asChild ? Slot : \"div\", {\n\t\t\"data-slot\": \"sidebar-group-label\",\n\t\t\"data-sidebar\": \"group-label\",\n\t\tclassName: cn(\"text-sidebar-foreground/70 ring-sidebar-ring flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium outline-hidden transition-[margin,opacity] duration-200 ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0\", \"group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0\", className),\n\t\t...props\n\t});\n}\nfunction SidebarGroupAction({ className, asChild = false,...props }) {\n\treturn /* @__PURE__ */ jsx(asChild ? Slot : \"button\", {\n\t\t\"data-slot\": \"sidebar-group-action\",\n\t\t\"data-sidebar\": \"group-action\",\n\t\tclassName: cn(\"text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground absolute top-3.5 right-3 flex aspect-square w-5 items-center justify-center rounded-md p-0 outline-hidden transition-transform focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0\", \"after:absolute after:-inset-2 md:after:hidden\", \"group-data-[collapsible=icon]:hidden\", className),\n\t\t...props\n\t});\n}\nfunction SidebarGroupContent({ className,...props }) {\n\treturn /* @__PURE__ */ jsx(\"div\", {\n\t\t\"data-slot\": \"sidebar-group-content\",\n\t\t\"data-sidebar\": \"group-content\",\n\t\tclassName: cn(\"w-full text-sm\", className),\n\t\t...props\n\t});\n}\nfunction SidebarMenu({ className,...props }) {\n\treturn /* @__PURE__ */ jsx(\"ul\", {\n\t\t\"data-slot\": \"sidebar-menu\",\n\t\t\"data-sidebar\": \"menu\",\n\t\tclassName: cn(\"flex w-full min-w-0 flex-col gap-1\", className),\n\t\t...props\n\t});\n}\nfunction SidebarMenuItem({ className,...props }) {\n\treturn /* @__PURE__ */ jsx(\"li\", {\n\t\t\"data-slot\": \"sidebar-menu-item\",\n\t\t\"data-sidebar\": \"menu-item\",\n\t\tclassName: cn(\"group/menu-item relative\", className),\n\t\t...props\n\t});\n}\nconst sidebarMenuButtonVariants = cva(\"peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm outline-hidden ring-sidebar-ring transition-[width,height,padding] 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 group-has-data-[sidebar=menu-action]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0\", {\n\tvariants: {\n\t\tvariant: {\n\t\t\tdefault: \"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground\",\n\t\t\toutline: \"bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]\"\n\t\t},\n\t\tsize: {\n\t\t\tdefault: \"h-8 text-sm\",\n\t\t\tsm: \"h-7 text-xs\",\n\t\t\tlg: \"h-12 text-sm group-data-[collapsible=icon]:p-0!\"\n\t\t}\n\t},\n\tdefaultVariants: {\n\t\tvariant: \"default\",\n\t\tsize: \"default\"\n\t}\n});\nfunction SidebarMenuButton({ asChild = false, isActive = false, variant = \"default\", size = \"default\", tooltip, className,...props }) {\n\tconst Comp = asChild ? Slot : \"button\";\n\tconst { isMobile, state } = useSidebar();\n\tconst button = /* @__PURE__ */ jsx(Comp, {\n\t\t\"data-slot\": \"sidebar-menu-button\",\n\t\t\"data-sidebar\": \"menu-button\",\n\t\t\"data-size\": size,\n\t\t\"data-active\": isActive,\n\t\tclassName: cn(sidebarMenuButtonVariants({\n\t\t\tvariant,\n\t\t\tsize\n\t\t}), className),\n\t\t...props\n\t});\n\tif (!tooltip) return button;\n\tif (typeof tooltip === \"string\") tooltip = { children: tooltip };\n\treturn /* @__PURE__ */ jsxs(Tooltip, { children: [/* @__PURE__ */ jsx(TooltipTrigger, {\n\t\tasChild: true,\n\t\tchildren: button\n\t}), /* @__PURE__ */ jsx(TooltipContent, {\n\t\tside: \"right\",\n\t\talign: \"center\",\n\t\thidden: state !== \"collapsed\" || isMobile,\n\t\t...tooltip\n\t})] });\n}\nfunction SidebarMenuAction({ className, asChild = false, showOnHover = false,...props }) {\n\treturn /* @__PURE__ */ jsx(asChild ? Slot : \"button\", {\n\t\t\"data-slot\": \"sidebar-menu-action\",\n\t\t\"data-sidebar\": \"menu-action\",\n\t\tclassName: cn(\"text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground peer-hover/menu-button:text-sidebar-accent-foreground absolute top-1.5 right-1 flex aspect-square w-5 items-center justify-center rounded-md p-0 outline-hidden transition-transform focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0\", \"after:absolute after:-inset-2 md:after:hidden\", \"peer-data-[size=sm]/menu-button:top-1\", \"peer-data-[size=default]/menu-button:top-1.5\", \"peer-data-[size=lg]/menu-button:top-2.5\", \"group-data-[collapsible=icon]:hidden\", showOnHover && \"peer-data-[active=true]/menu-button:text-sidebar-accent-foreground group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 data-[state=open]:opacity-100 md:opacity-0\", className),\n\t\t...props\n\t});\n}\nfunction SidebarMenuBadge({ className,...props }) {\n\treturn /* @__PURE__ */ jsx(\"div\", {\n\t\t\"data-slot\": \"sidebar-menu-badge\",\n\t\t\"data-sidebar\": \"menu-badge\",\n\t\tclassName: cn(\"text-sidebar-foreground pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium tabular-nums select-none\", \"peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground\", \"peer-data-[size=sm]/menu-button:top-1\", \"peer-data-[size=default]/menu-button:top-1.5\", \"peer-data-[size=lg]/menu-button:top-2.5\", \"group-data-[collapsible=icon]:hidden\", className),\n\t\t...props\n\t});\n}\nfunction SidebarMenuSkeleton({ className, showIcon = false,...props }) {\n\tconst width = React$1.useMemo(() => {\n\t\treturn `${Math.floor(Math.random() * 40) + 50}%`;\n\t}, []);\n\treturn /* @__PURE__ */ jsxs(\"div\", {\n\t\t\"data-slot\": \"sidebar-menu-skeleton\",\n\t\t\"data-sidebar\": \"menu-skeleton\",\n\t\tclassName: cn(\"flex h-8 items-center gap-2 rounded-md px-2\", className),\n\t\t...props,\n\t\tchildren: [showIcon && /* @__PURE__ */ jsx(Skeleton, {\n\t\t\tclassName: \"size-4 rounded-md\",\n\t\t\t\"data-sidebar\": \"menu-skeleton-icon\"\n\t\t}), /* @__PURE__ */ jsx(Skeleton, {\n\t\t\tclassName: \"h-4 max-w-(--skeleton-width) flex-1\",\n\t\t\t\"data-sidebar\": \"menu-skeleton-text\",\n\t\t\tstyle: { \"--skeleton-width\": width }\n\t\t})]\n\t});\n}\nfunction SidebarMenuSub({ className,...props }) {\n\treturn /* @__PURE__ */ jsx(\"ul\", {\n\t\t\"data-slot\": \"sidebar-menu-sub\",\n\t\t\"data-sidebar\": \"menu-sub\",\n\t\tclassName: cn(\"border-sidebar-border mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l px-2.5 py-0.5\", \"group-data-[collapsible=icon]:hidden\", className),\n\t\t...props\n\t});\n}\nfunction SidebarMenuSubItem({ className,...props }) {\n\treturn /* @__PURE__ */ jsx(\"li\", {\n\t\t\"data-slot\": \"sidebar-menu-sub-item\",\n\t\t\"data-sidebar\": \"menu-sub-item\",\n\t\tclassName: cn(\"group/menu-sub-item relative\", className),\n\t\t...props\n\t});\n}\nfunction SidebarMenuSubButton({ asChild = false, size = \"md\", isActive = false, className,...props }) {\n\treturn /* @__PURE__ */ jsx(asChild ? Slot : \"a\", {\n\t\t\"data-slot\": \"sidebar-menu-sub-button\",\n\t\t\"data-sidebar\": \"menu-sub-button\",\n\t\t\"data-size\": size,\n\t\t\"data-active\": isActive,\n\t\tclassName: cn(\"text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground active:bg-sidebar-accent active:text-sidebar-accent-foreground [&>svg]:text-sidebar-accent-foreground flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 outline-hidden focus-visible:ring-2 disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0\", \"data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground\", size === \"sm\" && \"text-xs\", size === \"md\" && \"text-sm\", \"group-data-[collapsible=icon]:hidden\", className),\n\t\t...props\n\t});\n}\n\n//#endregion\nexport { Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, useSidebar };\n//# sourceMappingURL=sidebar.js.map"],"mappings":"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"}