@asevenid/ui 0.1.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.
Files changed (314) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +105 -0
  3. package/dist/components/primitives/accordion.d.ts +10 -0
  4. package/dist/components/primitives/accordion.d.ts.map +1 -0
  5. package/dist/components/primitives/accordion.js +37 -0
  6. package/dist/components/primitives/accordion.js.map +1 -0
  7. package/dist/components/primitives/alert-dialog.d.ts +9 -0
  8. package/dist/components/primitives/alert-dialog.d.ts.map +1 -0
  9. package/dist/components/primitives/alert-dialog.js +58 -0
  10. package/dist/components/primitives/alert-dialog.js.map +1 -0
  11. package/dist/components/primitives/alert.d.ts +12 -0
  12. package/dist/components/primitives/alert.d.ts.map +1 -0
  13. package/dist/components/primitives/alert.js +32 -0
  14. package/dist/components/primitives/alert.js.map +1 -0
  15. package/dist/components/primitives/avatar.d.ts +20 -0
  16. package/dist/components/primitives/avatar.d.ts.map +1 -0
  17. package/dist/components/primitives/avatar.js +55 -0
  18. package/dist/components/primitives/avatar.js.map +1 -0
  19. package/dist/components/primitives/badge.d.ts +14 -0
  20. package/dist/components/primitives/badge.d.ts.map +1 -0
  21. package/dist/components/primitives/badge.js +42 -0
  22. package/dist/components/primitives/badge.js.map +1 -0
  23. package/dist/components/primitives/button.d.ts +7 -0
  24. package/dist/components/primitives/button.d.ts.map +1 -0
  25. package/dist/components/primitives/button.js +52 -0
  26. package/dist/components/primitives/button.js.map +1 -0
  27. package/dist/components/primitives/calendar.d.ts +7 -0
  28. package/dist/components/primitives/calendar.d.ts.map +1 -0
  29. package/dist/components/primitives/calendar.js +32 -0
  30. package/dist/components/primitives/calendar.js.map +1 -0
  31. package/dist/components/primitives/card.d.ts +14 -0
  32. package/dist/components/primitives/card.d.ts.map +1 -0
  33. package/dist/components/primitives/card.js +29 -0
  34. package/dist/components/primitives/card.js.map +1 -0
  35. package/dist/components/primitives/checkbox.d.ts +7 -0
  36. package/dist/components/primitives/checkbox.d.ts.map +1 -0
  37. package/dist/components/primitives/checkbox.js +51 -0
  38. package/dist/components/primitives/checkbox.js.map +1 -0
  39. package/dist/components/primitives/color-picker.d.ts +23 -0
  40. package/dist/components/primitives/color-picker.d.ts.map +1 -0
  41. package/dist/components/primitives/color-picker.js +128 -0
  42. package/dist/components/primitives/color-picker.js.map +1 -0
  43. package/dist/components/primitives/combobox.d.ts +17 -0
  44. package/dist/components/primitives/combobox.d.ts.map +1 -0
  45. package/dist/components/primitives/combobox.js +106 -0
  46. package/dist/components/primitives/combobox.js.map +1 -0
  47. package/dist/components/primitives/date-picker.d.ts +21 -0
  48. package/dist/components/primitives/date-picker.d.ts.map +1 -0
  49. package/dist/components/primitives/date-picker.js +81 -0
  50. package/dist/components/primitives/date-picker.js.map +1 -0
  51. package/dist/components/primitives/date-range-picker.d.ts +16 -0
  52. package/dist/components/primitives/date-range-picker.d.ts.map +1 -0
  53. package/dist/components/primitives/date-range-picker.js +51 -0
  54. package/dist/components/primitives/date-range-picker.js.map +1 -0
  55. package/dist/components/primitives/dialog.d.ts +8 -0
  56. package/dist/components/primitives/dialog.d.ts.map +1 -0
  57. package/dist/components/primitives/dialog.js +46 -0
  58. package/dist/components/primitives/dialog.js.map +1 -0
  59. package/dist/components/primitives/drawer.d.ts +2 -0
  60. package/dist/components/primitives/drawer.d.ts.map +1 -0
  61. package/dist/components/primitives/field.d.ts +19 -0
  62. package/dist/components/primitives/field.d.ts.map +1 -0
  63. package/dist/components/primitives/field.js +55 -0
  64. package/dist/components/primitives/field.js.map +1 -0
  65. package/dist/components/primitives/input-group.d.ts +11 -0
  66. package/dist/components/primitives/input-group.d.ts.map +1 -0
  67. package/dist/components/primitives/input-group.js +32 -0
  68. package/dist/components/primitives/input-group.js.map +1 -0
  69. package/dist/components/primitives/input.d.ts +7 -0
  70. package/dist/components/primitives/input.d.ts.map +1 -0
  71. package/dist/components/primitives/input.js +18 -0
  72. package/dist/components/primitives/input.js.map +1 -0
  73. package/dist/components/primitives/kbd.d.ts +13 -0
  74. package/dist/components/primitives/kbd.d.ts.map +1 -0
  75. package/dist/components/primitives/kbd.js +18 -0
  76. package/dist/components/primitives/kbd.js.map +1 -0
  77. package/dist/components/primitives/label.d.ts +7 -0
  78. package/dist/components/primitives/label.d.ts.map +1 -0
  79. package/dist/components/primitives/label.js +21 -0
  80. package/dist/components/primitives/label.js.map +1 -0
  81. package/dist/components/primitives/pagination.d.ts +12 -0
  82. package/dist/components/primitives/pagination.d.ts.map +1 -0
  83. package/dist/components/primitives/pagination.js +92 -0
  84. package/dist/components/primitives/pagination.js.map +1 -0
  85. package/dist/components/primitives/radio-group.d.ts +9 -0
  86. package/dist/components/primitives/radio-group.d.ts.map +1 -0
  87. package/dist/components/primitives/radio-group.js +36 -0
  88. package/dist/components/primitives/radio-group.js.map +1 -0
  89. package/dist/components/primitives/select.d.ts +7 -0
  90. package/dist/components/primitives/select.d.ts.map +1 -0
  91. package/dist/components/primitives/select.js +31 -0
  92. package/dist/components/primitives/select.js.map +1 -0
  93. package/dist/components/primitives/sheet.d.ts +2 -0
  94. package/dist/components/primitives/sheet.d.ts.map +1 -0
  95. package/dist/components/primitives/skeleton.d.ts +5 -0
  96. package/dist/components/primitives/skeleton.d.ts.map +1 -0
  97. package/dist/components/primitives/skeleton.js +15 -0
  98. package/dist/components/primitives/skeleton.js.map +1 -0
  99. package/dist/components/primitives/slider.d.ts +10 -0
  100. package/dist/components/primitives/slider.d.ts.map +1 -0
  101. package/dist/components/primitives/slider.js +91 -0
  102. package/dist/components/primitives/slider.js.map +1 -0
  103. package/dist/components/primitives/sonner.d.ts +5 -0
  104. package/dist/components/primitives/sonner.d.ts.map +1 -0
  105. package/dist/components/primitives/sonner.js +50 -0
  106. package/dist/components/primitives/sonner.js.map +1 -0
  107. package/dist/components/primitives/switch.d.ts +7 -0
  108. package/dist/components/primitives/switch.d.ts.map +1 -0
  109. package/dist/components/primitives/switch.js +22 -0
  110. package/dist/components/primitives/switch.js.map +1 -0
  111. package/dist/components/primitives/table.d.ts +10 -0
  112. package/dist/components/primitives/table.d.ts.map +1 -0
  113. package/dist/components/primitives/table.js +74 -0
  114. package/dist/components/primitives/table.js.map +1 -0
  115. package/dist/components/primitives/tabs.d.ts +6 -0
  116. package/dist/components/primitives/tabs.d.ts.map +1 -0
  117. package/dist/components/primitives/tabs.js +146 -0
  118. package/dist/components/primitives/tabs.js.map +1 -0
  119. package/dist/components/primitives/tag.d.ts +17 -0
  120. package/dist/components/primitives/tag.d.ts.map +1 -0
  121. package/dist/components/primitives/tag.js +71 -0
  122. package/dist/components/primitives/tag.js.map +1 -0
  123. package/dist/components/primitives/textarea.d.ts +7 -0
  124. package/dist/components/primitives/textarea.d.ts.map +1 -0
  125. package/dist/components/primitives/textarea.js +18 -0
  126. package/dist/components/primitives/textarea.js.map +1 -0
  127. package/dist/components/primitives/toggle-group.d.ts +9 -0
  128. package/dist/components/primitives/toggle-group.d.ts.map +1 -0
  129. package/dist/components/primitives/toggle-group.js +61 -0
  130. package/dist/components/primitives/toggle-group.js.map +1 -0
  131. package/dist/components/primitives/toggle.d.ts +7 -0
  132. package/dist/components/primitives/toggle.d.ts.map +1 -0
  133. package/dist/components/primitives/toggle.js +36 -0
  134. package/dist/components/primitives/toggle.js.map +1 -0
  135. package/dist/components/ui/accordion.d.ts +8 -0
  136. package/dist/components/ui/accordion.d.ts.map +1 -0
  137. package/dist/components/ui/accordion.js +67 -0
  138. package/dist/components/ui/accordion.js.map +1 -0
  139. package/dist/components/ui/alert-dialog.d.ts +19 -0
  140. package/dist/components/ui/alert-dialog.d.ts.map +1 -0
  141. package/dist/components/ui/alert-dialog.js +147 -0
  142. package/dist/components/ui/alert-dialog.js.map +1 -0
  143. package/dist/components/ui/alert.d.ts +10 -0
  144. package/dist/components/ui/alert.d.ts.map +1 -0
  145. package/dist/components/ui/alert.js +69 -0
  146. package/dist/components/ui/alert.js.map +1 -0
  147. package/dist/components/ui/avatar.d.ts +12 -0
  148. package/dist/components/ui/avatar.d.ts.map +1 -0
  149. package/dist/components/ui/avatar.js +106 -0
  150. package/dist/components/ui/avatar.js.map +1 -0
  151. package/dist/components/ui/badge.d.ts +10 -0
  152. package/dist/components/ui/badge.d.ts.map +1 -0
  153. package/dist/components/ui/badge.js +46 -0
  154. package/dist/components/ui/badge.js.map +1 -0
  155. package/dist/components/ui/breadcrumb.d.ts +12 -0
  156. package/dist/components/ui/breadcrumb.d.ts.map +1 -0
  157. package/dist/components/ui/breadcrumb.js +106 -0
  158. package/dist/components/ui/breadcrumb.js.map +1 -0
  159. package/dist/components/ui/button-group.d.ts +12 -0
  160. package/dist/components/ui/button-group.d.ts.map +1 -0
  161. package/dist/components/ui/button-group.js +78 -0
  162. package/dist/components/ui/button-group.js.map +1 -0
  163. package/dist/components/ui/button.d.ts +11 -0
  164. package/dist/components/ui/button.d.ts.map +1 -0
  165. package/dist/components/ui/button.js +59 -0
  166. package/dist/components/ui/button.js.map +1 -0
  167. package/dist/components/ui/calendar.d.ts +9 -0
  168. package/dist/components/ui/calendar.d.ts.map +1 -0
  169. package/dist/components/ui/calendar.js +175 -0
  170. package/dist/components/ui/calendar.js.map +1 -0
  171. package/dist/components/ui/card.d.ts +10 -0
  172. package/dist/components/ui/card.d.ts.map +1 -0
  173. package/dist/components/ui/card.js +93 -0
  174. package/dist/components/ui/card.js.map +1 -0
  175. package/dist/components/ui/checkbox.d.ts +5 -0
  176. package/dist/components/ui/checkbox.d.ts.map +1 -0
  177. package/dist/components/ui/combobox.d.ts +25 -0
  178. package/dist/components/ui/combobox.d.ts.map +1 -0
  179. package/dist/components/ui/combobox.js +246 -0
  180. package/dist/components/ui/combobox.js.map +1 -0
  181. package/dist/components/ui/dialog.d.ts +18 -0
  182. package/dist/components/ui/dialog.d.ts.map +1 -0
  183. package/dist/components/ui/dialog.js +125 -0
  184. package/dist/components/ui/dialog.js.map +1 -0
  185. package/dist/components/ui/drawer.d.ts +14 -0
  186. package/dist/components/ui/drawer.d.ts.map +1 -0
  187. package/dist/components/ui/drawer.js +131 -0
  188. package/dist/components/ui/drawer.js.map +1 -0
  189. package/dist/components/ui/dropdown-menu.d.ts +26 -0
  190. package/dist/components/ui/dropdown-menu.d.ts.map +1 -0
  191. package/dist/components/ui/dropdown-menu.js +234 -0
  192. package/dist/components/ui/dropdown-menu.js.map +1 -0
  193. package/dist/components/ui/field.d.ts +25 -0
  194. package/dist/components/ui/field.d.ts.map +1 -0
  195. package/dist/components/ui/field.js +223 -0
  196. package/dist/components/ui/field.js.map +1 -0
  197. package/dist/components/ui/input-group.d.ts +17 -0
  198. package/dist/components/ui/input-group.d.ts.map +1 -0
  199. package/dist/components/ui/input-group.js +136 -0
  200. package/dist/components/ui/input-group.js.map +1 -0
  201. package/dist/components/ui/input.d.ts +4 -0
  202. package/dist/components/ui/input.d.ts.map +1 -0
  203. package/dist/components/ui/input.js +24 -0
  204. package/dist/components/ui/input.js.map +1 -0
  205. package/dist/components/ui/kbd.d.ts +4 -0
  206. package/dist/components/ui/kbd.d.ts.map +1 -0
  207. package/dist/components/ui/kbd.js +33 -0
  208. package/dist/components/ui/kbd.js.map +1 -0
  209. package/dist/components/ui/label.d.ts +5 -0
  210. package/dist/components/ui/label.d.ts.map +1 -0
  211. package/dist/components/ui/label.js +25 -0
  212. package/dist/components/ui/label.js.map +1 -0
  213. package/dist/components/ui/pagination.d.ts +14 -0
  214. package/dist/components/ui/pagination.d.ts.map +1 -0
  215. package/dist/components/ui/pagination.js +39 -0
  216. package/dist/components/ui/pagination.js.map +1 -0
  217. package/dist/components/ui/popover.d.ts +11 -0
  218. package/dist/components/ui/popover.d.ts.map +1 -0
  219. package/dist/components/ui/popover.js +83 -0
  220. package/dist/components/ui/popover.js.map +1 -0
  221. package/dist/components/ui/radio-group.d.ts +6 -0
  222. package/dist/components/ui/radio-group.d.ts.map +1 -0
  223. package/dist/components/ui/radio-group.js +48 -0
  224. package/dist/components/ui/radio-group.js.map +1 -0
  225. package/dist/components/ui/select.d.ts +16 -0
  226. package/dist/components/ui/select.d.ts.map +1 -0
  227. package/dist/components/ui/select.js +181 -0
  228. package/dist/components/ui/select.js.map +1 -0
  229. package/dist/components/ui/separator.d.ts +5 -0
  230. package/dist/components/ui/separator.d.ts.map +1 -0
  231. package/dist/components/ui/separator.js +29 -0
  232. package/dist/components/ui/separator.js.map +1 -0
  233. package/dist/components/ui/sheet.d.ts +15 -0
  234. package/dist/components/ui/sheet.d.ts.map +1 -0
  235. package/dist/components/ui/sheet.js +130 -0
  236. package/dist/components/ui/sheet.js.map +1 -0
  237. package/dist/components/ui/sidebar.d.ts +70 -0
  238. package/dist/components/ui/sidebar.d.ts.map +1 -0
  239. package/dist/components/ui/sidebar.js +599 -0
  240. package/dist/components/ui/sidebar.js.map +1 -0
  241. package/dist/components/ui/skeleton.d.ts +3 -0
  242. package/dist/components/ui/skeleton.d.ts.map +1 -0
  243. package/dist/components/ui/skeleton.js +17 -0
  244. package/dist/components/ui/skeleton.js.map +1 -0
  245. package/dist/components/ui/slider.d.ts +5 -0
  246. package/dist/components/ui/slider.d.ts.map +1 -0
  247. package/dist/components/ui/slider.js +65 -0
  248. package/dist/components/ui/slider.js.map +1 -0
  249. package/dist/components/ui/sonner.d.ts +4 -0
  250. package/dist/components/ui/sonner.d.ts.map +1 -0
  251. package/dist/components/ui/sonner.js +33 -0
  252. package/dist/components/ui/sonner.js.map +1 -0
  253. package/dist/components/ui/spinner.d.ts +3 -0
  254. package/dist/components/ui/spinner.d.ts.map +1 -0
  255. package/dist/components/ui/spinner.js +19 -0
  256. package/dist/components/ui/spinner.js.map +1 -0
  257. package/dist/components/ui/switch.d.ts +7 -0
  258. package/dist/components/ui/switch.d.ts.map +1 -0
  259. package/dist/components/ui/switch.js +36 -0
  260. package/dist/components/ui/switch.js.map +1 -0
  261. package/dist/components/ui/table.d.ts +11 -0
  262. package/dist/components/ui/table.d.ts.map +1 -0
  263. package/dist/components/ui/table.js +117 -0
  264. package/dist/components/ui/table.js.map +1 -0
  265. package/dist/components/ui/tabs.d.ts +12 -0
  266. package/dist/components/ui/tabs.d.ts.map +1 -0
  267. package/dist/components/ui/tabs.js +94 -0
  268. package/dist/components/ui/tabs.js.map +1 -0
  269. package/dist/components/ui/textarea.d.ts +4 -0
  270. package/dist/components/ui/textarea.d.ts.map +1 -0
  271. package/dist/components/ui/textarea.js +21 -0
  272. package/dist/components/ui/textarea.js.map +1 -0
  273. package/dist/components/ui/toggle-group.d.ts +10 -0
  274. package/dist/components/ui/toggle-group.d.ts.map +1 -0
  275. package/dist/components/ui/toggle-group.js +71 -0
  276. package/dist/components/ui/toggle-group.js.map +1 -0
  277. package/dist/components/ui/toggle.d.ts +10 -0
  278. package/dist/components/ui/toggle.d.ts.map +1 -0
  279. package/dist/components/ui/toggle.js +46 -0
  280. package/dist/components/ui/toggle.js.map +1 -0
  281. package/dist/components/ui/tooltip.d.ts +8 -0
  282. package/dist/components/ui/tooltip.d.ts.map +1 -0
  283. package/dist/components/ui/tooltip.js +58 -0
  284. package/dist/components/ui/tooltip.js.map +1 -0
  285. package/dist/design-system/modes/options.d.ts +26 -0
  286. package/dist/design-system/modes/options.d.ts.map +1 -0
  287. package/dist/design-system/modes/options.js +61 -0
  288. package/dist/design-system/modes/options.js.map +1 -0
  289. package/dist/design-system/modes/runtime.d.ts +34 -0
  290. package/dist/design-system/modes/runtime.d.ts.map +1 -0
  291. package/dist/design-system/modes/runtime.js +195 -0
  292. package/dist/design-system/modes/runtime.js.map +1 -0
  293. package/dist/hooks/use-mobile.d.ts +2 -0
  294. package/dist/hooks/use-mobile.d.ts.map +1 -0
  295. package/dist/hooks/use-mobile.js +16 -0
  296. package/dist/hooks/use-mobile.js.map +1 -0
  297. package/dist/index.d.ts +51 -0
  298. package/dist/index.d.ts.map +1 -0
  299. package/dist/index.js +306 -0
  300. package/dist/index.js.map +1 -0
  301. package/dist/lib/constants.d.ts +2 -0
  302. package/dist/lib/constants.d.ts.map +1 -0
  303. package/dist/lib/cva.d.ts +2 -0
  304. package/dist/lib/cva.d.ts.map +1 -0
  305. package/dist/lib/generate-shades.d.ts +39 -0
  306. package/dist/lib/generate-shades.d.ts.map +1 -0
  307. package/dist/lib/generate-shades.js +220 -0
  308. package/dist/lib/generate-shades.js.map +1 -0
  309. package/dist/lib/utils.d.ts +3 -0
  310. package/dist/lib/utils.d.ts.map +1 -0
  311. package/dist/lib/utils.js +10 -0
  312. package/dist/lib/utils.js.map +1 -0
  313. package/dist/styles.css +2 -0
  314. package/package.json +106 -0
@@ -0,0 +1,599 @@
1
+ "use client";
2
+ import { jsx as t, jsxs as p } from "react/jsx-runtime";
3
+ import * as c from "react";
4
+ import { cva as C } from "class-variance-authority";
5
+ import { PanelLeftIcon as z } from "lucide-react";
6
+ import { Slot as h } from "radix-ui";
7
+ import { useIsMobile as I } from "../../hooks/use-mobile.js";
8
+ import { cn as r } from "../../lib/utils.js";
9
+ import { Button as E } from "./button.js";
10
+ import { Input as D } from "./input.js";
11
+ import { Separator as R } from "./separator.js";
12
+ import { Sheet as T, SheetContent as B, SheetHeader as A, SheetTitle as O, SheetDescription as H } from "./sheet.js";
13
+ import { Skeleton as y } from "./skeleton.js";
14
+ import { Tooltip as K, TooltipTrigger as j, TooltipContent as G, TooltipProvider as L } from "./tooltip.js";
15
+ const $ = "sidebar_state", P = 3600 * 24 * 7, V = "16rem", W = "18rem", q = "3rem", F = "b", _ = c.createContext(null);
16
+ function S() {
17
+ const a = c.useContext(_);
18
+ if (!a)
19
+ throw new Error("useSidebar must be used within a SidebarProvider.");
20
+ return a;
21
+ }
22
+ function de({
23
+ defaultOpen: a = !0,
24
+ open: e,
25
+ onOpenChange: i,
26
+ className: n,
27
+ style: o,
28
+ children: s,
29
+ ...g
30
+ }) {
31
+ const l = I(), [f, u] = c.useState(!1), [v, k] = c.useState(a), m = e ?? v, x = c.useCallback(
32
+ (d) => {
33
+ const b = typeof d == "function" ? d(m) : d;
34
+ i ? i(b) : k(b), document.cookie = `${$}=${b}; path=/; max-age=${P}`;
35
+ },
36
+ [i, m]
37
+ ), w = c.useCallback(() => l ? u((d) => !d) : x((d) => !d), [l, x, u]);
38
+ c.useEffect(() => {
39
+ const d = (b) => {
40
+ b.key === F && (b.metaKey || b.ctrlKey) && (b.preventDefault(), w());
41
+ };
42
+ return window.addEventListener("keydown", d), () => window.removeEventListener("keydown", d);
43
+ }, [w]);
44
+ const N = m ? "expanded" : "collapsed", M = c.useMemo(
45
+ () => ({
46
+ state: N,
47
+ open: m,
48
+ setOpen: x,
49
+ isMobile: l,
50
+ openMobile: f,
51
+ setOpenMobile: u,
52
+ toggleSidebar: w
53
+ }),
54
+ [N, m, x, l, f, u, w]
55
+ );
56
+ return /* @__PURE__ */ t(_.Provider, { value: M, children: /* @__PURE__ */ t(L, { delayDuration: 0, children: /* @__PURE__ */ t(
57
+ "div",
58
+ {
59
+ "data-slot": "sidebar-wrapper",
60
+ style: {
61
+ "--sidebar-width": V,
62
+ "--sidebar-width-icon": q,
63
+ ...o
64
+ },
65
+ className: r(
66
+ "group/sidebar-wrapper flex min-h-svh w-full has-data-[variant=inset]:bg-sidebar",
67
+ n
68
+ ),
69
+ ...g,
70
+ children: s
71
+ }
72
+ ) }) });
73
+ }
74
+ function se({
75
+ side: a = "left",
76
+ variant: e = "sidebar",
77
+ collapsible: i = "offcanvas",
78
+ className: n,
79
+ children: o,
80
+ ...s
81
+ }) {
82
+ const { isMobile: g, state: l, openMobile: f, setOpenMobile: u } = S();
83
+ return i === "none" ? /* @__PURE__ */ t(
84
+ "div",
85
+ {
86
+ "data-slot": "sidebar",
87
+ className: r(
88
+ "flex h-full w-(--sidebar-width) flex-col bg-sidebar text-sidebar-foreground",
89
+ n
90
+ ),
91
+ ...s,
92
+ children: o
93
+ }
94
+ ) : g ? /* @__PURE__ */ t(T, { open: f, onOpenChange: u, ...s, children: /* @__PURE__ */ p(
95
+ B,
96
+ {
97
+ "data-sidebar": "sidebar",
98
+ "data-slot": "sidebar",
99
+ "data-mobile": "true",
100
+ className: "w-(--sidebar-width) bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden",
101
+ style: {
102
+ "--sidebar-width": W
103
+ },
104
+ side: a,
105
+ children: [
106
+ /* @__PURE__ */ p(A, { className: "sr-only", children: [
107
+ /* @__PURE__ */ t(O, { children: "Sidebar" }),
108
+ /* @__PURE__ */ t(H, { children: "Displays the mobile sidebar." })
109
+ ] }),
110
+ /* @__PURE__ */ t("div", { className: "flex h-full w-full flex-col", children: o })
111
+ ]
112
+ }
113
+ ) }) : /* @__PURE__ */ p(
114
+ "div",
115
+ {
116
+ className: "group peer hidden text-sidebar-foreground md:block",
117
+ "data-state": l,
118
+ "data-collapsible": l === "collapsed" ? i : "",
119
+ "data-variant": e,
120
+ "data-side": a,
121
+ "data-slot": "sidebar",
122
+ children: [
123
+ /* @__PURE__ */ t(
124
+ "div",
125
+ {
126
+ "data-slot": "sidebar-gap",
127
+ className: r(
128
+ "relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear",
129
+ "group-data-[collapsible=offcanvas]:w-0",
130
+ "group-data-[side=right]:rotate-180",
131
+ e === "floating" || e === "inset" ? "group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]" : "group-data-[collapsible=icon]:w-(--sidebar-width-icon)"
132
+ )
133
+ }
134
+ ),
135
+ /* @__PURE__ */ t(
136
+ "div",
137
+ {
138
+ "data-slot": "sidebar-container",
139
+ className: r(
140
+ "fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear md:flex",
141
+ a === "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)]",
142
+ // Adjust the padding for floating and inset variants.
143
+ e === "floating" || e === "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",
144
+ n
145
+ ),
146
+ ...s,
147
+ children: /* @__PURE__ */ t(
148
+ "div",
149
+ {
150
+ "data-sidebar": "sidebar",
151
+ "data-slot": "sidebar-inner",
152
+ className: "flex h-full w-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:border-sidebar-border group-data-[variant=floating]:shadow-sm",
153
+ children: o
154
+ }
155
+ )
156
+ }
157
+ )
158
+ ]
159
+ }
160
+ );
161
+ }
162
+ function le({
163
+ className: a,
164
+ onClick: e,
165
+ ...i
166
+ }) {
167
+ const { toggleSidebar: n } = S();
168
+ return /* @__PURE__ */ p(
169
+ E,
170
+ {
171
+ "data-sidebar": "trigger",
172
+ "data-slot": "sidebar-trigger",
173
+ variant: "ghost",
174
+ size: "icon",
175
+ className: r("size-7", a),
176
+ onClick: (o) => {
177
+ e?.(o), n();
178
+ },
179
+ ...i,
180
+ children: [
181
+ /* @__PURE__ */ t(z, {}),
182
+ /* @__PURE__ */ t("span", { className: "sr-only", children: "Toggle Sidebar" })
183
+ ]
184
+ }
185
+ );
186
+ }
187
+ function ce({ className: a, ...e }) {
188
+ const { toggleSidebar: i } = S();
189
+ return /* @__PURE__ */ t(
190
+ "button",
191
+ {
192
+ "data-sidebar": "rail",
193
+ "data-slot": "sidebar-rail",
194
+ "aria-label": "Toggle Sidebar",
195
+ tabIndex: -1,
196
+ onClick: i,
197
+ title: "Toggle Sidebar",
198
+ className: r(
199
+ "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] hover:after:bg-sidebar-border sm:flex",
200
+ "in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize",
201
+ "[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize",
202
+ "group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full hover:group-data-[collapsible=offcanvas]:bg-sidebar",
203
+ "[[data-side=left][data-collapsible=offcanvas]_&]:-right-2",
204
+ "[[data-side=right][data-collapsible=offcanvas]_&]:-left-2",
205
+ a
206
+ ),
207
+ ...e
208
+ }
209
+ );
210
+ }
211
+ function ue({ className: a, ...e }) {
212
+ return /* @__PURE__ */ t(
213
+ "main",
214
+ {
215
+ "data-slot": "sidebar-inset",
216
+ className: r(
217
+ "relative flex w-full flex-1 flex-col bg-background",
218
+ "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",
219
+ a
220
+ ),
221
+ ...e
222
+ }
223
+ );
224
+ }
225
+ function be({
226
+ className: a,
227
+ ...e
228
+ }) {
229
+ return /* @__PURE__ */ t(
230
+ D,
231
+ {
232
+ "data-slot": "sidebar-input",
233
+ "data-sidebar": "input",
234
+ className: r("h-8 w-full bg-background shadow-none", a),
235
+ ...e
236
+ }
237
+ );
238
+ }
239
+ function fe({ className: a, ...e }) {
240
+ return /* @__PURE__ */ t(
241
+ "div",
242
+ {
243
+ "data-slot": "sidebar-header",
244
+ "data-sidebar": "header",
245
+ className: r("flex flex-col gap-2 p-2", a),
246
+ ...e
247
+ }
248
+ );
249
+ }
250
+ function pe({ className: a, ...e }) {
251
+ return /* @__PURE__ */ t(
252
+ "div",
253
+ {
254
+ "data-slot": "sidebar-footer",
255
+ "data-sidebar": "footer",
256
+ className: r("flex flex-col gap-2 p-2", a),
257
+ ...e
258
+ }
259
+ );
260
+ }
261
+ function ge({
262
+ className: a,
263
+ ...e
264
+ }) {
265
+ return /* @__PURE__ */ t(
266
+ R,
267
+ {
268
+ "data-slot": "sidebar-separator",
269
+ "data-sidebar": "separator",
270
+ className: r("mx-2 w-auto bg-sidebar-border", a),
271
+ ...e
272
+ }
273
+ );
274
+ }
275
+ function me({ className: a, ...e }) {
276
+ return /* @__PURE__ */ t(
277
+ "div",
278
+ {
279
+ "data-slot": "sidebar-content",
280
+ "data-sidebar": "content",
281
+ className: r(
282
+ "flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden",
283
+ a
284
+ ),
285
+ ...e
286
+ }
287
+ );
288
+ }
289
+ function he({ className: a, ...e }) {
290
+ return /* @__PURE__ */ t(
291
+ "div",
292
+ {
293
+ "data-slot": "sidebar-group",
294
+ "data-sidebar": "group",
295
+ className: r("relative flex w-full min-w-0 flex-col p-2", a),
296
+ ...e
297
+ }
298
+ );
299
+ }
300
+ function ve({
301
+ className: a,
302
+ asChild: e = !1,
303
+ ...i
304
+ }) {
305
+ const n = e ? h.Root : "div";
306
+ return /* @__PURE__ */ t(
307
+ n,
308
+ {
309
+ "data-slot": "sidebar-group-label",
310
+ "data-sidebar": "group-label",
311
+ className: r(
312
+ "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 focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0",
313
+ "group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0",
314
+ a
315
+ ),
316
+ ...i
317
+ }
318
+ );
319
+ }
320
+ function xe({
321
+ className: a,
322
+ asChild: e = !1,
323
+ ...i
324
+ }) {
325
+ const n = e ? h.Root : "button";
326
+ return /* @__PURE__ */ t(
327
+ n,
328
+ {
329
+ "data-slot": "sidebar-group-action",
330
+ "data-sidebar": "group-action",
331
+ className: r(
332
+ "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 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0",
333
+ // Increases the hit area of the button on mobile.
334
+ "after:absolute after:-inset-2 md:after:hidden",
335
+ "group-data-[collapsible=icon]:hidden",
336
+ a
337
+ ),
338
+ ...i
339
+ }
340
+ );
341
+ }
342
+ function we({
343
+ className: a,
344
+ ...e
345
+ }) {
346
+ return /* @__PURE__ */ t(
347
+ "div",
348
+ {
349
+ "data-slot": "sidebar-group-content",
350
+ "data-sidebar": "group-content",
351
+ className: r("w-full text-sm", a),
352
+ ...e
353
+ }
354
+ );
355
+ }
356
+ function Se({ className: a, ...e }) {
357
+ return /* @__PURE__ */ t(
358
+ "ul",
359
+ {
360
+ "data-slot": "sidebar-menu",
361
+ "data-sidebar": "menu",
362
+ className: r("flex w-full min-w-0 flex-col gap-1", a),
363
+ ...e
364
+ }
365
+ );
366
+ }
367
+ function Ne({ className: a, ...e }) {
368
+ return /* @__PURE__ */ t(
369
+ "li",
370
+ {
371
+ "data-slot": "sidebar-menu-item",
372
+ "data-sidebar": "menu-item",
373
+ className: r("group/menu-item relative", a),
374
+ ...e
375
+ }
376
+ );
377
+ }
378
+ const U = C(
379
+ "peer/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-[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 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0",
380
+ {
381
+ variants: {
382
+ variant: {
383
+ default: "hover:bg-sidebar-accent hover:text-sidebar-accent-foreground",
384
+ 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))]"
385
+ },
386
+ size: {
387
+ default: "h-8 text-sm",
388
+ sm: "h-7 text-xs",
389
+ lg: "h-12 text-sm group-data-[collapsible=icon]:p-0!"
390
+ }
391
+ },
392
+ defaultVariants: {
393
+ variant: "default",
394
+ size: "default"
395
+ }
396
+ }
397
+ );
398
+ function ye({
399
+ asChild: a = !1,
400
+ isActive: e = !1,
401
+ variant: i = "default",
402
+ size: n = "default",
403
+ tooltip: o,
404
+ className: s,
405
+ ...g
406
+ }) {
407
+ const l = a ? h.Root : "button", { isMobile: f, state: u } = S(), v = /* @__PURE__ */ t(
408
+ l,
409
+ {
410
+ "data-slot": "sidebar-menu-button",
411
+ "data-sidebar": "menu-button",
412
+ "data-size": n,
413
+ "data-active": e,
414
+ className: r(U({ variant: i, size: n }), s),
415
+ ...g
416
+ }
417
+ );
418
+ return o ? (typeof o == "string" && (o = {
419
+ children: o
420
+ }), /* @__PURE__ */ p(K, { children: [
421
+ /* @__PURE__ */ t(j, { asChild: !0, children: v }),
422
+ /* @__PURE__ */ t(
423
+ G,
424
+ {
425
+ side: "right",
426
+ align: "center",
427
+ hidden: u !== "collapsed" || f,
428
+ ...o
429
+ }
430
+ )
431
+ ] })) : v;
432
+ }
433
+ function _e({
434
+ className: a,
435
+ asChild: e = !1,
436
+ showOnHover: i = !1,
437
+ ...n
438
+ }) {
439
+ const o = e ? h.Root : "button";
440
+ return /* @__PURE__ */ t(
441
+ o,
442
+ {
443
+ "data-slot": "sidebar-menu-action",
444
+ "data-sidebar": "menu-action",
445
+ className: r(
446
+ "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 peer-hover/menu-button:text-sidebar-accent-foreground hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0",
447
+ // Increases the hit area of the button on mobile.
448
+ "after:absolute after:-inset-2 md:after:hidden",
449
+ "peer-data-[size=sm]/menu-button:top-1",
450
+ "peer-data-[size=default]/menu-button:top-1.5",
451
+ "peer-data-[size=lg]/menu-button:top-2.5",
452
+ "group-data-[collapsible=icon]:hidden",
453
+ i && "group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 peer-data-[active=true]/menu-button:text-sidebar-accent-foreground data-[state=open]:opacity-100 md:opacity-0",
454
+ a
455
+ ),
456
+ ...n
457
+ }
458
+ );
459
+ }
460
+ function ke({
461
+ className: a,
462
+ ...e
463
+ }) {
464
+ return /* @__PURE__ */ t(
465
+ "div",
466
+ {
467
+ "data-slot": "sidebar-menu-badge",
468
+ "data-sidebar": "menu-badge",
469
+ className: r(
470
+ "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",
471
+ "peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground",
472
+ "peer-data-[size=sm]/menu-button:top-1",
473
+ "peer-data-[size=default]/menu-button:top-1.5",
474
+ "peer-data-[size=lg]/menu-button:top-2.5",
475
+ "group-data-[collapsible=icon]:hidden",
476
+ a
477
+ ),
478
+ ...e
479
+ }
480
+ );
481
+ }
482
+ function Me({
483
+ className: a,
484
+ showIcon: e = !1,
485
+ ...i
486
+ }) {
487
+ const n = c.useMemo(() => `${Math.floor(Math.random() * 40) + 50}%`, []);
488
+ return /* @__PURE__ */ p(
489
+ "div",
490
+ {
491
+ "data-slot": "sidebar-menu-skeleton",
492
+ "data-sidebar": "menu-skeleton",
493
+ className: r("flex h-8 items-center gap-2 rounded-md px-2", a),
494
+ ...i,
495
+ children: [
496
+ e && /* @__PURE__ */ t(
497
+ y,
498
+ {
499
+ className: "size-4 rounded-md",
500
+ "data-sidebar": "menu-skeleton-icon"
501
+ }
502
+ ),
503
+ /* @__PURE__ */ t(
504
+ y,
505
+ {
506
+ className: "h-4 max-w-(--skeleton-width) flex-1",
507
+ "data-sidebar": "menu-skeleton-text",
508
+ style: {
509
+ "--skeleton-width": n
510
+ }
511
+ }
512
+ )
513
+ ]
514
+ }
515
+ );
516
+ }
517
+ function Ce({ className: a, ...e }) {
518
+ return /* @__PURE__ */ t(
519
+ "ul",
520
+ {
521
+ "data-slot": "sidebar-menu-sub",
522
+ "data-sidebar": "menu-sub",
523
+ className: r(
524
+ "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",
525
+ "group-data-[collapsible=icon]:hidden",
526
+ a
527
+ ),
528
+ ...e
529
+ }
530
+ );
531
+ }
532
+ function ze({
533
+ className: a,
534
+ ...e
535
+ }) {
536
+ return /* @__PURE__ */ t(
537
+ "li",
538
+ {
539
+ "data-slot": "sidebar-menu-sub-item",
540
+ "data-sidebar": "menu-sub-item",
541
+ className: r("group/menu-sub-item relative", a),
542
+ ...e
543
+ }
544
+ );
545
+ }
546
+ function Ie({
547
+ asChild: a = !1,
548
+ size: e = "md",
549
+ isActive: i = !1,
550
+ className: n,
551
+ ...o
552
+ }) {
553
+ const s = a ? h.Root : "a";
554
+ return /* @__PURE__ */ t(
555
+ s,
556
+ {
557
+ "data-slot": "sidebar-menu-sub-button",
558
+ "data-sidebar": "menu-sub-button",
559
+ "data-size": e,
560
+ "data-active": i,
561
+ className: r(
562
+ "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 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 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:text-sidebar-accent-foreground",
563
+ "data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground",
564
+ e === "sm" && "text-xs",
565
+ e === "md" && "text-sm",
566
+ "group-data-[collapsible=icon]:hidden",
567
+ n
568
+ ),
569
+ ...o
570
+ }
571
+ );
572
+ }
573
+ export {
574
+ se as Sidebar,
575
+ me as SidebarContent,
576
+ pe as SidebarFooter,
577
+ he as SidebarGroup,
578
+ xe as SidebarGroupAction,
579
+ we as SidebarGroupContent,
580
+ ve as SidebarGroupLabel,
581
+ fe as SidebarHeader,
582
+ be as SidebarInput,
583
+ ue as SidebarInset,
584
+ Se as SidebarMenu,
585
+ _e as SidebarMenuAction,
586
+ ke as SidebarMenuBadge,
587
+ ye as SidebarMenuButton,
588
+ Ne as SidebarMenuItem,
589
+ Me as SidebarMenuSkeleton,
590
+ Ce as SidebarMenuSub,
591
+ Ie as SidebarMenuSubButton,
592
+ ze as SidebarMenuSubItem,
593
+ de as SidebarProvider,
594
+ ce as SidebarRail,
595
+ ge as SidebarSeparator,
596
+ le as SidebarTrigger,
597
+ S as useSidebar
598
+ };
599
+ //# sourceMappingURL=sidebar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sidebar.js","sources":["../../../src/components/ui/sidebar.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\nimport { PanelLeftIcon } from \"lucide-react\"\nimport { Slot } from \"radix-ui\"\n\nimport { useIsMobile } from \"@/hooks/use-mobile\"\nimport { cn } from \"@/lib/utils\"\nimport { Button } from \"@/components/ui/button\"\nimport { Input } from \"@/components/ui/input\"\nimport { Separator } from \"@/components/ui/separator\"\nimport {\n Sheet,\n SheetContent,\n SheetDescription,\n SheetHeader,\n SheetTitle,\n} from \"@/components/ui/sheet\"\nimport { Skeleton } from \"@/components/ui/skeleton\"\nimport {\n Tooltip,\n TooltipContent,\n TooltipProvider,\n TooltipTrigger,\n} from \"@/components/ui/tooltip\"\n\nconst SIDEBAR_COOKIE_NAME = \"sidebar_state\"\nconst SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7\nconst SIDEBAR_WIDTH = \"16rem\"\nconst SIDEBAR_WIDTH_MOBILE = \"18rem\"\nconst SIDEBAR_WIDTH_ICON = \"3rem\"\nconst SIDEBAR_KEYBOARD_SHORTCUT = \"b\"\n\ntype SidebarContextProps = {\n state: \"expanded\" | \"collapsed\"\n open: boolean\n setOpen: (open: boolean) => void\n openMobile: boolean\n setOpenMobile: (open: boolean) => void\n isMobile: boolean\n toggleSidebar: () => void\n}\n\nconst SidebarContext = React.createContext<SidebarContextProps | null>(null)\n\nfunction useSidebar() {\n const context = React.useContext(SidebarContext)\n if (!context) {\n throw new Error(\"useSidebar must be used within a SidebarProvider.\")\n }\n\n return context\n}\n\nfunction SidebarProvider({\n defaultOpen = true,\n open: openProp,\n onOpenChange: setOpenProp,\n className,\n style,\n children,\n ...props\n}: React.ComponentProps<\"div\"> & {\n defaultOpen?: boolean\n open?: boolean\n onOpenChange?: (open: boolean) => void\n}) {\n const isMobile = useIsMobile()\n const [openMobile, setOpenMobile] = React.useState(false)\n\n // This is the internal state of the sidebar.\n // We use openProp and setOpenProp for control from outside the component.\n const [_open, _setOpen] = React.useState(defaultOpen)\n const open = openProp ?? _open\n const setOpen = React.useCallback(\n (value: boolean | ((value: boolean) => boolean)) => {\n const openState = typeof value === \"function\" ? value(open) : value\n if (setOpenProp) {\n setOpenProp(openState)\n } else {\n _setOpen(openState)\n }\n\n // This sets the cookie to keep the sidebar state.\n document.cookie = `${SIDEBAR_COOKIE_NAME}=${openState}; path=/; max-age=${SIDEBAR_COOKIE_MAX_AGE}`\n },\n [setOpenProp, open]\n )\n\n // Helper to toggle the sidebar.\n const toggleSidebar = React.useCallback(() => {\n return isMobile ? setOpenMobile((open) => !open) : setOpen((open) => !open)\n }, [isMobile, setOpen, setOpenMobile])\n\n // Adds a keyboard shortcut to toggle the sidebar.\n React.useEffect(() => {\n const handleKeyDown = (event: KeyboardEvent) => {\n if (\n event.key === SIDEBAR_KEYBOARD_SHORTCUT &&\n (event.metaKey || event.ctrlKey)\n ) {\n event.preventDefault()\n toggleSidebar()\n }\n }\n\n window.addEventListener(\"keydown\", handleKeyDown)\n return () => window.removeEventListener(\"keydown\", handleKeyDown)\n }, [toggleSidebar])\n\n // We add a state so that we can do data-state=\"expanded\" or \"collapsed\".\n // This makes it easier to style the sidebar with Tailwind classes.\n const state = open ? \"expanded\" : \"collapsed\"\n\n const contextValue = React.useMemo<SidebarContextProps>(\n () => ({\n state,\n open,\n setOpen,\n isMobile,\n openMobile,\n setOpenMobile,\n toggleSidebar,\n }),\n [state, open, setOpen, isMobile, openMobile, setOpenMobile, toggleSidebar]\n )\n\n return (\n <SidebarContext.Provider value={contextValue}>\n <TooltipProvider delayDuration={0}>\n <div\n data-slot=\"sidebar-wrapper\"\n style={\n {\n \"--sidebar-width\": SIDEBAR_WIDTH,\n \"--sidebar-width-icon\": SIDEBAR_WIDTH_ICON,\n ...style,\n } as React.CSSProperties\n }\n className={cn(\n \"group/sidebar-wrapper flex min-h-svh w-full has-data-[variant=inset]:bg-sidebar\",\n className\n )}\n {...props}\n >\n {children}\n </div>\n </TooltipProvider>\n </SidebarContext.Provider>\n )\n}\n\nfunction Sidebar({\n side = \"left\",\n variant = \"sidebar\",\n collapsible = \"offcanvas\",\n className,\n children,\n ...props\n}: React.ComponentProps<\"div\"> & {\n side?: \"left\" | \"right\"\n variant?: \"sidebar\" | \"floating\" | \"inset\"\n collapsible?: \"offcanvas\" | \"icon\" | \"none\"\n}) {\n const { isMobile, state, openMobile, setOpenMobile } = useSidebar()\n\n if (collapsible === \"none\") {\n return (\n <div\n data-slot=\"sidebar\"\n className={cn(\n \"flex h-full w-(--sidebar-width) flex-col bg-sidebar text-sidebar-foreground\",\n className\n )}\n {...props}\n >\n {children}\n </div>\n )\n }\n\n if (isMobile) {\n return (\n <Sheet open={openMobile} onOpenChange={setOpenMobile} {...props}>\n <SheetContent\n data-sidebar=\"sidebar\"\n data-slot=\"sidebar\"\n data-mobile=\"true\"\n className=\"w-(--sidebar-width) bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden\"\n style={\n {\n \"--sidebar-width\": SIDEBAR_WIDTH_MOBILE,\n } as React.CSSProperties\n }\n side={side}\n >\n <SheetHeader className=\"sr-only\">\n <SheetTitle>Sidebar</SheetTitle>\n <SheetDescription>Displays the mobile sidebar.</SheetDescription>\n </SheetHeader>\n <div className=\"flex h-full w-full flex-col\">{children}</div>\n </SheetContent>\n </Sheet>\n )\n }\n\n return (\n <div\n className=\"group peer hidden text-sidebar-foreground md:block\"\n data-state={state}\n data-collapsible={state === \"collapsed\" ? collapsible : \"\"}\n data-variant={variant}\n data-side={side}\n data-slot=\"sidebar\"\n >\n {/* This is what handles the sidebar gap on desktop */}\n <div\n data-slot=\"sidebar-gap\"\n className={cn(\n \"relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear\",\n \"group-data-[collapsible=offcanvas]:w-0\",\n \"group-data-[side=right]:rotate-180\",\n variant === \"floating\" || variant === \"inset\"\n ? \"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]\"\n : \"group-data-[collapsible=icon]:w-(--sidebar-width-icon)\"\n )}\n />\n <div\n data-slot=\"sidebar-container\"\n className={cn(\n \"fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear md:flex\",\n side === \"left\"\n ? \"left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]\"\n : \"right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]\",\n // Adjust the padding for floating and inset variants.\n variant === \"floating\" || variant === \"inset\"\n ? \"p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]\"\n : \"group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l\",\n className\n )}\n {...props}\n >\n <div\n data-sidebar=\"sidebar\"\n data-slot=\"sidebar-inner\"\n className=\"flex h-full w-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:border-sidebar-border group-data-[variant=floating]:shadow-sm\"\n >\n {children}\n </div>\n </div>\n </div>\n )\n}\n\nfunction SidebarTrigger({\n className,\n onClick,\n ...props\n}: React.ComponentProps<typeof Button>) {\n const { toggleSidebar } = useSidebar()\n\n return (\n <Button\n data-sidebar=\"trigger\"\n data-slot=\"sidebar-trigger\"\n variant=\"ghost\"\n size=\"icon\"\n className={cn(\"size-7\", className)}\n onClick={(event) => {\n onClick?.(event)\n toggleSidebar()\n }}\n {...props}\n >\n <PanelLeftIcon />\n <span className=\"sr-only\">Toggle Sidebar</span>\n </Button>\n )\n}\n\nfunction SidebarRail({ className, ...props }: React.ComponentProps<\"button\">) {\n const { toggleSidebar } = useSidebar()\n\n return (\n <button\n data-sidebar=\"rail\"\n data-slot=\"sidebar-rail\"\n aria-label=\"Toggle Sidebar\"\n tabIndex={-1}\n onClick={toggleSidebar}\n title=\"Toggle Sidebar\"\n className={cn(\n \"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] hover:after:bg-sidebar-border sm:flex\",\n \"in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize\",\n \"[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize\",\n \"group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full hover:group-data-[collapsible=offcanvas]:bg-sidebar\",\n \"[[data-side=left][data-collapsible=offcanvas]_&]:-right-2\",\n \"[[data-side=right][data-collapsible=offcanvas]_&]:-left-2\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarInset({ className, ...props }: React.ComponentProps<\"main\">) {\n return (\n <main\n data-slot=\"sidebar-inset\"\n className={cn(\n \"relative flex w-full flex-1 flex-col bg-background\",\n \"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\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarInput({\n className,\n ...props\n}: React.ComponentProps<typeof Input>) {\n return (\n <Input\n data-slot=\"sidebar-input\"\n data-sidebar=\"input\"\n className={cn(\"h-8 w-full bg-background shadow-none\", className)}\n {...props}\n />\n )\n}\n\nfunction SidebarHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-header\"\n data-sidebar=\"header\"\n className={cn(\"flex flex-col gap-2 p-2\", className)}\n {...props}\n />\n )\n}\n\nfunction SidebarFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-footer\"\n data-sidebar=\"footer\"\n className={cn(\"flex flex-col gap-2 p-2\", className)}\n {...props}\n />\n )\n}\n\nfunction SidebarSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof Separator>) {\n return (\n <Separator\n data-slot=\"sidebar-separator\"\n data-sidebar=\"separator\"\n className={cn(\"mx-2 w-auto bg-sidebar-border\", className)}\n {...props}\n />\n )\n}\n\nfunction SidebarContent({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-content\"\n data-sidebar=\"content\"\n className={cn(\n \"flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-group\"\n data-sidebar=\"group\"\n className={cn(\"relative flex w-full min-w-0 flex-col p-2\", className)}\n {...props}\n />\n )\n}\n\nfunction SidebarGroupLabel({\n className,\n asChild = false,\n ...props\n}: React.ComponentProps<\"div\"> & { asChild?: boolean }) {\n const Comp = asChild ? Slot.Root : \"div\"\n\n return (\n <Comp\n data-slot=\"sidebar-group-label\"\n data-sidebar=\"group-label\"\n className={cn(\n \"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 focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0\",\n \"group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarGroupAction({\n className,\n asChild = false,\n ...props\n}: React.ComponentProps<\"button\"> & { asChild?: boolean }) {\n const Comp = asChild ? Slot.Root : \"button\"\n\n return (\n <Comp\n data-slot=\"sidebar-group-action\"\n data-sidebar=\"group-action\"\n className={cn(\n \"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 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0\",\n // Increases the hit area of the button on mobile.\n \"after:absolute after:-inset-2 md:after:hidden\",\n \"group-data-[collapsible=icon]:hidden\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarGroupContent({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-group-content\"\n data-sidebar=\"group-content\"\n className={cn(\"w-full text-sm\", className)}\n {...props}\n />\n )\n}\n\nfunction SidebarMenu({ className, ...props }: React.ComponentProps<\"ul\">) {\n return (\n <ul\n data-slot=\"sidebar-menu\"\n data-sidebar=\"menu\"\n className={cn(\"flex w-full min-w-0 flex-col gap-1\", className)}\n {...props}\n />\n )\n}\n\nfunction SidebarMenuItem({ className, ...props }: React.ComponentProps<\"li\">) {\n return (\n <li\n data-slot=\"sidebar-menu-item\"\n data-sidebar=\"menu-item\"\n className={cn(\"group/menu-item relative\", className)}\n {...props}\n />\n )\n}\n\nconst sidebarMenuButtonVariants = cva(\n \"peer/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-[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 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0\",\n {\n variants: {\n variant: {\n default: \"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground\",\n outline:\n \"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 },\n size: {\n default: \"h-8 text-sm\",\n sm: \"h-7 text-xs\",\n lg: \"h-12 text-sm group-data-[collapsible=icon]:p-0!\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n }\n)\n\nfunction SidebarMenuButton({\n asChild = false,\n isActive = false,\n variant = \"default\",\n size = \"default\",\n tooltip,\n className,\n ...props\n}: React.ComponentProps<\"button\"> & {\n asChild?: boolean\n isActive?: boolean\n tooltip?: string | React.ComponentProps<typeof TooltipContent>\n} & VariantProps<typeof sidebarMenuButtonVariants>) {\n const Comp = asChild ? Slot.Root : \"button\"\n const { isMobile, state } = useSidebar()\n\n const button = (\n <Comp\n data-slot=\"sidebar-menu-button\"\n data-sidebar=\"menu-button\"\n data-size={size}\n data-active={isActive}\n className={cn(sidebarMenuButtonVariants({ variant, size }), className)}\n {...props}\n />\n )\n\n if (!tooltip) {\n return button\n }\n\n if (typeof tooltip === \"string\") {\n tooltip = {\n children: tooltip,\n }\n }\n\n return (\n <Tooltip>\n <TooltipTrigger asChild>{button}</TooltipTrigger>\n <TooltipContent\n side=\"right\"\n align=\"center\"\n hidden={state !== \"collapsed\" || isMobile}\n {...tooltip}\n />\n </Tooltip>\n )\n}\n\nfunction SidebarMenuAction({\n className,\n asChild = false,\n showOnHover = false,\n ...props\n}: React.ComponentProps<\"button\"> & {\n asChild?: boolean\n showOnHover?: boolean\n}) {\n const Comp = asChild ? Slot.Root : \"button\"\n\n return (\n <Comp\n data-slot=\"sidebar-menu-action\"\n data-sidebar=\"menu-action\"\n className={cn(\n \"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 peer-hover/menu-button:text-sidebar-accent-foreground hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0\",\n // Increases the hit area of the button on mobile.\n \"after:absolute after:-inset-2 md:after:hidden\",\n \"peer-data-[size=sm]/menu-button:top-1\",\n \"peer-data-[size=default]/menu-button:top-1.5\",\n \"peer-data-[size=lg]/menu-button:top-2.5\",\n \"group-data-[collapsible=icon]:hidden\",\n showOnHover &&\n \"group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 peer-data-[active=true]/menu-button:text-sidebar-accent-foreground data-[state=open]:opacity-100 md:opacity-0\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarMenuBadge({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-menu-badge\"\n data-sidebar=\"menu-badge\"\n className={cn(\n \"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\",\n \"peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground\",\n \"peer-data-[size=sm]/menu-button:top-1\",\n \"peer-data-[size=default]/menu-button:top-1.5\",\n \"peer-data-[size=lg]/menu-button:top-2.5\",\n \"group-data-[collapsible=icon]:hidden\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarMenuSkeleton({\n className,\n showIcon = false,\n ...props\n}: React.ComponentProps<\"div\"> & {\n showIcon?: boolean\n}) {\n // Random width between 50 to 90%.\n const width = React.useMemo(() => {\n return `${Math.floor(Math.random() * 40) + 50}%`\n }, [])\n\n return (\n <div\n data-slot=\"sidebar-menu-skeleton\"\n data-sidebar=\"menu-skeleton\"\n className={cn(\"flex h-8 items-center gap-2 rounded-md px-2\", className)}\n {...props}\n >\n {showIcon && (\n <Skeleton\n className=\"size-4 rounded-md\"\n data-sidebar=\"menu-skeleton-icon\"\n />\n )}\n <Skeleton\n className=\"h-4 max-w-(--skeleton-width) flex-1\"\n data-sidebar=\"menu-skeleton-text\"\n style={\n {\n \"--skeleton-width\": width,\n } as React.CSSProperties\n }\n />\n </div>\n )\n}\n\nfunction SidebarMenuSub({ className, ...props }: React.ComponentProps<\"ul\">) {\n return (\n <ul\n data-slot=\"sidebar-menu-sub\"\n data-sidebar=\"menu-sub\"\n className={cn(\n \"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\",\n \"group-data-[collapsible=icon]:hidden\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarMenuSubItem({\n className,\n ...props\n}: React.ComponentProps<\"li\">) {\n return (\n <li\n data-slot=\"sidebar-menu-sub-item\"\n data-sidebar=\"menu-sub-item\"\n className={cn(\"group/menu-sub-item relative\", className)}\n {...props}\n />\n )\n}\n\nfunction SidebarMenuSubButton({\n asChild = false,\n size = \"md\",\n isActive = false,\n className,\n ...props\n}: React.ComponentProps<\"a\"> & {\n asChild?: boolean\n size?: \"sm\" | \"md\"\n isActive?: boolean\n}) {\n const Comp = asChild ? Slot.Root : \"a\"\n\n return (\n <Comp\n data-slot=\"sidebar-menu-sub-button\"\n data-sidebar=\"menu-sub-button\"\n data-size={size}\n data-active={isActive}\n className={cn(\n \"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 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 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:text-sidebar-accent-foreground\",\n \"data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground\",\n size === \"sm\" && \"text-xs\",\n size === \"md\" && \"text-sm\",\n \"group-data-[collapsible=icon]:hidden\",\n className\n )}\n {...props}\n />\n )\n}\n\nexport {\n Sidebar,\n SidebarContent,\n SidebarFooter,\n SidebarGroup,\n SidebarGroupAction,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarHeader,\n SidebarInput,\n SidebarInset,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuBadge,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSkeleton,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n SidebarProvider,\n SidebarRail,\n SidebarSeparator,\n SidebarTrigger,\n useSidebar,\n}\n"],"names":["SIDEBAR_COOKIE_NAME","SIDEBAR_COOKIE_MAX_AGE","SIDEBAR_WIDTH","SIDEBAR_WIDTH_MOBILE","SIDEBAR_WIDTH_ICON","SIDEBAR_KEYBOARD_SHORTCUT","SidebarContext","React","useSidebar","context","SidebarProvider","defaultOpen","openProp","setOpenProp","className","style","children","props","isMobile","useIsMobile","openMobile","setOpenMobile","_open","_setOpen","open","setOpen","value","openState","toggleSidebar","handleKeyDown","event","state","contextValue","jsx","TooltipProvider","cn","Sidebar","side","variant","collapsible","Sheet","jsxs","SheetContent","SheetHeader","SheetTitle","SheetDescription","SidebarTrigger","onClick","Button","PanelLeftIcon","SidebarRail","SidebarInset","SidebarInput","Input","SidebarHeader","SidebarFooter","SidebarSeparator","Separator","SidebarContent","SidebarGroup","SidebarGroupLabel","asChild","Comp","Slot","SidebarGroupAction","SidebarGroupContent","SidebarMenu","SidebarMenuItem","sidebarMenuButtonVariants","cva","SidebarMenuButton","isActive","size","tooltip","button","Tooltip","TooltipTrigger","TooltipContent","SidebarMenuAction","showOnHover","SidebarMenuBadge","SidebarMenuSkeleton","showIcon","width","Skeleton","SidebarMenuSub","SidebarMenuSubItem","SidebarMenuSubButton"],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ declare function Skeleton({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
2
+ export { Skeleton };
3
+ //# sourceMappingURL=skeleton.d.ts.map