@e-infra/design-system 0.0.2

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 (311) hide show
  1. package/LICENSE.md +21 -0
  2. package/README.md +200 -0
  3. package/dist/index.cjs.js +298 -0
  4. package/dist/index.cjs.js.map +1 -0
  5. package/dist/index.cjs10.js +105 -0
  6. package/dist/index.cjs10.js.map +1 -0
  7. package/dist/index.cjs11.js +56 -0
  8. package/dist/index.cjs11.js.map +1 -0
  9. package/dist/index.cjs12.js +206 -0
  10. package/dist/index.cjs12.js.map +1 -0
  11. package/dist/index.cjs13.js +92 -0
  12. package/dist/index.cjs13.js.map +1 -0
  13. package/dist/index.cjs14.js +216 -0
  14. package/dist/index.cjs14.js.map +1 -0
  15. package/dist/index.cjs15.js +261 -0
  16. package/dist/index.cjs15.js.map +1 -0
  17. package/dist/index.cjs16.js +50 -0
  18. package/dist/index.cjs16.js.map +1 -0
  19. package/dist/index.cjs17.js +53 -0
  20. package/dist/index.cjs17.js.map +1 -0
  21. package/dist/index.cjs18.js +173 -0
  22. package/dist/index.cjs18.js.map +1 -0
  23. package/dist/index.cjs19.js +242 -0
  24. package/dist/index.cjs19.js.map +1 -0
  25. package/dist/index.cjs2.js +298 -0
  26. package/dist/index.cjs2.js.map +1 -0
  27. package/dist/index.cjs20.js +156 -0
  28. package/dist/index.cjs20.js.map +1 -0
  29. package/dist/index.cjs21.js +130 -0
  30. package/dist/index.cjs21.js.map +1 -0
  31. package/dist/index.cjs22.js +251 -0
  32. package/dist/index.cjs22.js.map +1 -0
  33. package/dist/index.cjs23.js +134 -0
  34. package/dist/index.cjs23.js.map +1 -0
  35. package/dist/index.cjs24.js +57 -0
  36. package/dist/index.cjs24.js.map +1 -0
  37. package/dist/index.cjs25.js +23 -0
  38. package/dist/index.cjs25.js.map +1 -0
  39. package/dist/index.cjs26.js +85 -0
  40. package/dist/index.cjs26.js.map +1 -0
  41. package/dist/index.cjs27.js +41 -0
  42. package/dist/index.cjs27.js.map +1 -0
  43. package/dist/index.cjs28.js +271 -0
  44. package/dist/index.cjs28.js.map +1 -0
  45. package/dist/index.cjs29.js +189 -0
  46. package/dist/index.cjs29.js.map +1 -0
  47. package/dist/index.cjs3.js +298 -0
  48. package/dist/index.cjs3.js.map +1 -0
  49. package/dist/index.cjs30.js +120 -0
  50. package/dist/index.cjs30.js.map +1 -0
  51. package/dist/index.cjs31.js +63 -0
  52. package/dist/index.cjs31.js.map +1 -0
  53. package/dist/index.cjs32.js +51 -0
  54. package/dist/index.cjs32.js.map +1 -0
  55. package/dist/index.cjs33.js +64 -0
  56. package/dist/index.cjs33.js.map +1 -0
  57. package/dist/index.cjs34.js +49 -0
  58. package/dist/index.cjs34.js.map +1 -0
  59. package/dist/index.cjs35.js +79 -0
  60. package/dist/index.cjs35.js.map +1 -0
  61. package/dist/index.cjs36.js +198 -0
  62. package/dist/index.cjs36.js.map +1 -0
  63. package/dist/index.cjs37.js +45 -0
  64. package/dist/index.cjs37.js.map +1 -0
  65. package/dist/index.cjs38.js +146 -0
  66. package/dist/index.cjs38.js.map +1 -0
  67. package/dist/index.cjs39.js +657 -0
  68. package/dist/index.cjs39.js.map +1 -0
  69. package/dist/index.cjs4.js +83 -0
  70. package/dist/index.cjs4.js.map +1 -0
  71. package/dist/index.cjs40.js +16 -0
  72. package/dist/index.cjs40.js.map +1 -0
  73. package/dist/index.cjs41.js +82 -0
  74. package/dist/index.cjs41.js.map +1 -0
  75. package/dist/index.cjs42.js +33 -0
  76. package/dist/index.cjs42.js.map +1 -0
  77. package/dist/index.cjs43.js +50 -0
  78. package/dist/index.cjs43.js.map +1 -0
  79. package/dist/index.cjs44.js +117 -0
  80. package/dist/index.cjs44.js.map +1 -0
  81. package/dist/index.cjs45.js +86 -0
  82. package/dist/index.cjs45.js.map +1 -0
  83. package/dist/index.cjs46.js +20 -0
  84. package/dist/index.cjs46.js.map +1 -0
  85. package/dist/index.cjs47.js +63 -0
  86. package/dist/index.cjs47.js.map +1 -0
  87. package/dist/index.cjs48.js +88 -0
  88. package/dist/index.cjs48.js.map +1 -0
  89. package/dist/index.cjs49.js +74 -0
  90. package/dist/index.cjs49.js.map +1 -0
  91. package/dist/index.cjs5.js +68 -0
  92. package/dist/index.cjs5.js.map +1 -0
  93. package/dist/index.cjs50.js +9 -0
  94. package/dist/index.cjs50.js.map +1 -0
  95. package/dist/index.cjs51.js +38 -0
  96. package/dist/index.cjs51.js.map +1 -0
  97. package/dist/index.cjs6.js +166 -0
  98. package/dist/index.cjs6.js.map +1 -0
  99. package/dist/index.cjs7.js +29 -0
  100. package/dist/index.cjs7.js.map +1 -0
  101. package/dist/index.cjs8.js +72 -0
  102. package/dist/index.cjs8.js.map +1 -0
  103. package/dist/index.cjs9.js +42 -0
  104. package/dist/index.cjs9.js.map +1 -0
  105. package/dist/index.es.js +298 -0
  106. package/dist/index.es.js.map +1 -0
  107. package/dist/index.es10.js +105 -0
  108. package/dist/index.es10.js.map +1 -0
  109. package/dist/index.es11.js +56 -0
  110. package/dist/index.es11.js.map +1 -0
  111. package/dist/index.es12.js +189 -0
  112. package/dist/index.es12.js.map +1 -0
  113. package/dist/index.es13.js +92 -0
  114. package/dist/index.es13.js.map +1 -0
  115. package/dist/index.es14.js +199 -0
  116. package/dist/index.es14.js.map +1 -0
  117. package/dist/index.es15.js +243 -0
  118. package/dist/index.es15.js.map +1 -0
  119. package/dist/index.es16.js +33 -0
  120. package/dist/index.es16.js.map +1 -0
  121. package/dist/index.es17.js +36 -0
  122. package/dist/index.es17.js.map +1 -0
  123. package/dist/index.es18.js +173 -0
  124. package/dist/index.es18.js.map +1 -0
  125. package/dist/index.es19.js +225 -0
  126. package/dist/index.es19.js.map +1 -0
  127. package/dist/index.es2.js +298 -0
  128. package/dist/index.es2.js.map +1 -0
  129. package/dist/index.es20.js +139 -0
  130. package/dist/index.es20.js.map +1 -0
  131. package/dist/index.es21.js +130 -0
  132. package/dist/index.es21.js.map +1 -0
  133. package/dist/index.es22.js +234 -0
  134. package/dist/index.es22.js.map +1 -0
  135. package/dist/index.es23.js +117 -0
  136. package/dist/index.es23.js.map +1 -0
  137. package/dist/index.es24.js +40 -0
  138. package/dist/index.es24.js.map +1 -0
  139. package/dist/index.es25.js +23 -0
  140. package/dist/index.es25.js.map +1 -0
  141. package/dist/index.es26.js +68 -0
  142. package/dist/index.es26.js.map +1 -0
  143. package/dist/index.es27.js +24 -0
  144. package/dist/index.es27.js.map +1 -0
  145. package/dist/index.es28.js +254 -0
  146. package/dist/index.es28.js.map +1 -0
  147. package/dist/index.es29.js +172 -0
  148. package/dist/index.es29.js.map +1 -0
  149. package/dist/index.es3.js +298 -0
  150. package/dist/index.es3.js.map +1 -0
  151. package/dist/index.es30.js +120 -0
  152. package/dist/index.es30.js.map +1 -0
  153. package/dist/index.es31.js +46 -0
  154. package/dist/index.es31.js.map +1 -0
  155. package/dist/index.es32.js +34 -0
  156. package/dist/index.es32.js.map +1 -0
  157. package/dist/index.es33.js +47 -0
  158. package/dist/index.es33.js.map +1 -0
  159. package/dist/index.es34.js +49 -0
  160. package/dist/index.es34.js.map +1 -0
  161. package/dist/index.es35.js +62 -0
  162. package/dist/index.es35.js.map +1 -0
  163. package/dist/index.es36.js +181 -0
  164. package/dist/index.es36.js.map +1 -0
  165. package/dist/index.es37.js +28 -0
  166. package/dist/index.es37.js.map +1 -0
  167. package/dist/index.es38.js +129 -0
  168. package/dist/index.es38.js.map +1 -0
  169. package/dist/index.es39.js +640 -0
  170. package/dist/index.es39.js.map +1 -0
  171. package/dist/index.es4.js +66 -0
  172. package/dist/index.es4.js.map +1 -0
  173. package/dist/index.es40.js +16 -0
  174. package/dist/index.es40.js.map +1 -0
  175. package/dist/index.es41.js +64 -0
  176. package/dist/index.es41.js.map +1 -0
  177. package/dist/index.es42.js +33 -0
  178. package/dist/index.es42.js.map +1 -0
  179. package/dist/index.es43.js +33 -0
  180. package/dist/index.es43.js.map +1 -0
  181. package/dist/index.es44.js +117 -0
  182. package/dist/index.es44.js.map +1 -0
  183. package/dist/index.es45.js +69 -0
  184. package/dist/index.es45.js.map +1 -0
  185. package/dist/index.es46.js +20 -0
  186. package/dist/index.es46.js.map +1 -0
  187. package/dist/index.es47.js +46 -0
  188. package/dist/index.es47.js.map +1 -0
  189. package/dist/index.es48.js +70 -0
  190. package/dist/index.es48.js.map +1 -0
  191. package/dist/index.es49.js +57 -0
  192. package/dist/index.es49.js.map +1 -0
  193. package/dist/index.es5.js +68 -0
  194. package/dist/index.es5.js.map +1 -0
  195. package/dist/index.es50.js +9 -0
  196. package/dist/index.es50.js.map +1 -0
  197. package/dist/index.es51.js +21 -0
  198. package/dist/index.es51.js.map +1 -0
  199. package/dist/index.es6.js +149 -0
  200. package/dist/index.es6.js.map +1 -0
  201. package/dist/index.es7.js +12 -0
  202. package/dist/index.es7.js.map +1 -0
  203. package/dist/index.es8.js +55 -0
  204. package/dist/index.es8.js.map +1 -0
  205. package/dist/index.es9.js +42 -0
  206. package/dist/index.es9.js.map +1 -0
  207. package/dist/types/components/index.d.ts +47 -0
  208. package/dist/types/components/index.d.ts.map +1 -0
  209. package/dist/types/components/ui/accordion.d.ts +8 -0
  210. package/dist/types/components/ui/accordion.d.ts.map +1 -0
  211. package/dist/types/components/ui/alert-dialog.d.ts +15 -0
  212. package/dist/types/components/ui/alert-dialog.d.ts.map +1 -0
  213. package/dist/types/components/ui/alert.d.ts +10 -0
  214. package/dist/types/components/ui/alert.d.ts.map +1 -0
  215. package/dist/types/components/ui/aspect-ratio.d.ts +4 -0
  216. package/dist/types/components/ui/aspect-ratio.d.ts.map +1 -0
  217. package/dist/types/components/ui/avatar.d.ts +7 -0
  218. package/dist/types/components/ui/avatar.d.ts.map +1 -0
  219. package/dist/types/components/ui/badge.d.ts +10 -0
  220. package/dist/types/components/ui/badge.d.ts.map +1 -0
  221. package/dist/types/components/ui/breadcrumb.d.ts +12 -0
  222. package/dist/types/components/ui/breadcrumb.d.ts.map +1 -0
  223. package/dist/types/components/ui/button.d.ts +11 -0
  224. package/dist/types/components/ui/button.d.ts.map +1 -0
  225. package/dist/types/components/ui/calendar.d.ts +9 -0
  226. package/dist/types/components/ui/calendar.d.ts.map +1 -0
  227. package/dist/types/components/ui/card.d.ts +10 -0
  228. package/dist/types/components/ui/card.d.ts.map +1 -0
  229. package/dist/types/components/ui/carousel.d.ts +20 -0
  230. package/dist/types/components/ui/carousel.d.ts.map +1 -0
  231. package/dist/types/components/ui/chart.d.ts +41 -0
  232. package/dist/types/components/ui/chart.d.ts.map +1 -0
  233. package/dist/types/components/ui/checkbox.d.ts +5 -0
  234. package/dist/types/components/ui/checkbox.d.ts.map +1 -0
  235. package/dist/types/components/ui/collapsible.d.ts +6 -0
  236. package/dist/types/components/ui/collapsible.d.ts.map +1 -0
  237. package/dist/types/components/ui/command.d.ts +19 -0
  238. package/dist/types/components/ui/command.d.ts.map +1 -0
  239. package/dist/types/components/ui/context-menu.d.ts +26 -0
  240. package/dist/types/components/ui/context-menu.d.ts.map +1 -0
  241. package/dist/types/components/ui/dialog.d.ts +16 -0
  242. package/dist/types/components/ui/dialog.d.ts.map +1 -0
  243. package/dist/types/components/ui/drawer.d.ts +14 -0
  244. package/dist/types/components/ui/drawer.d.ts.map +1 -0
  245. package/dist/types/components/ui/dropdown-menu.d.ts +26 -0
  246. package/dist/types/components/ui/dropdown-menu.d.ts.map +1 -0
  247. package/dist/types/components/ui/form.d.ts +25 -0
  248. package/dist/types/components/ui/form.d.ts.map +1 -0
  249. package/dist/types/components/ui/hover-card.d.ts +7 -0
  250. package/dist/types/components/ui/hover-card.d.ts.map +1 -0
  251. package/dist/types/components/ui/input-otp.d.ts +12 -0
  252. package/dist/types/components/ui/input-otp.d.ts.map +1 -0
  253. package/dist/types/components/ui/input.d.ts +4 -0
  254. package/dist/types/components/ui/input.d.ts.map +1 -0
  255. package/dist/types/components/ui/label.d.ts +5 -0
  256. package/dist/types/components/ui/label.d.ts.map +1 -0
  257. package/dist/types/components/ui/menubar.d.ts +27 -0
  258. package/dist/types/components/ui/menubar.d.ts.map +1 -0
  259. package/dist/types/components/ui/navigation-menu.d.ts +15 -0
  260. package/dist/types/components/ui/navigation-menu.d.ts.map +1 -0
  261. package/dist/types/components/ui/pagination.d.ts +14 -0
  262. package/dist/types/components/ui/pagination.d.ts.map +1 -0
  263. package/dist/types/components/ui/popover.d.ts +8 -0
  264. package/dist/types/components/ui/popover.d.ts.map +1 -0
  265. package/dist/types/components/ui/progress.d.ts +5 -0
  266. package/dist/types/components/ui/progress.d.ts.map +1 -0
  267. package/dist/types/components/ui/radio-group.d.ts +6 -0
  268. package/dist/types/components/ui/radio-group.d.ts.map +1 -0
  269. package/dist/types/components/ui/resizable.d.ts +9 -0
  270. package/dist/types/components/ui/resizable.d.ts.map +1 -0
  271. package/dist/types/components/ui/scroll-area.d.ts +6 -0
  272. package/dist/types/components/ui/scroll-area.d.ts.map +1 -0
  273. package/dist/types/components/ui/select.d.ts +16 -0
  274. package/dist/types/components/ui/select.d.ts.map +1 -0
  275. package/dist/types/components/ui/separator.d.ts +5 -0
  276. package/dist/types/components/ui/separator.d.ts.map +1 -0
  277. package/dist/types/components/ui/sheet.d.ts +14 -0
  278. package/dist/types/components/ui/sheet.d.ts.map +1 -0
  279. package/dist/types/components/ui/sidebar.d.ts +70 -0
  280. package/dist/types/components/ui/sidebar.d.ts.map +1 -0
  281. package/dist/types/components/ui/skeleton.d.ts +3 -0
  282. package/dist/types/components/ui/skeleton.d.ts.map +1 -0
  283. package/dist/types/components/ui/slider.d.ts +5 -0
  284. package/dist/types/components/ui/slider.d.ts.map +1 -0
  285. package/dist/types/components/ui/sonner.d.ts +4 -0
  286. package/dist/types/components/ui/sonner.d.ts.map +1 -0
  287. package/dist/types/components/ui/switch.d.ts +5 -0
  288. package/dist/types/components/ui/switch.d.ts.map +1 -0
  289. package/dist/types/components/ui/table.d.ts +11 -0
  290. package/dist/types/components/ui/table.d.ts.map +1 -0
  291. package/dist/types/components/ui/tabs.d.ts +8 -0
  292. package/dist/types/components/ui/tabs.d.ts.map +1 -0
  293. package/dist/types/components/ui/textarea.d.ts +4 -0
  294. package/dist/types/components/ui/textarea.d.ts.map +1 -0
  295. package/dist/types/components/ui/toggle-group.d.ts +10 -0
  296. package/dist/types/components/ui/toggle-group.d.ts.map +1 -0
  297. package/dist/types/components/ui/toggle.d.ts +10 -0
  298. package/dist/types/components/ui/toggle.d.ts.map +1 -0
  299. package/dist/types/components/ui/tooltip.d.ts +8 -0
  300. package/dist/types/components/ui/tooltip.d.ts.map +1 -0
  301. package/dist/types/components.d.ts +2 -0
  302. package/dist/types/hooks/index.d.ts +2 -0
  303. package/dist/types/hooks/index.d.ts.map +1 -0
  304. package/dist/types/hooks/use-mobile.d.ts +2 -0
  305. package/dist/types/hooks/use-mobile.d.ts.map +1 -0
  306. package/dist/types/hooks.d.ts +2 -0
  307. package/dist/types/index.d.ts +4 -0
  308. package/dist/types/index.d.ts.map +1 -0
  309. package/dist/types/lib/utils.d.ts +3 -0
  310. package/dist/types/lib/utils.d.ts.map +1 -0
  311. package/package.json +138 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs39.js","sources":["../lib/components/ui/sidebar.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { PanelLeftIcon } from \"lucide-react\";\n\nimport { useIsMobile } from \"../../hooks/use-mobile\";\nimport { cn } from \"@/lib/utils\";\nimport { Button } from \"./button\";\nimport { Input } from \"./input\";\nimport { Separator } from \"./separator\";\nimport {\n Sheet,\n SheetContent,\n SheetDescription,\n SheetHeader,\n SheetTitle,\n} from \"./sheet\";\nimport { Skeleton } from \"./skeleton\";\nimport {\n Tooltip,\n TooltipContent,\n TooltipProvider,\n TooltipTrigger,\n} from \"./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 has-data-[variant=inset]:bg-sidebar flex min-h-svh w-full\",\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 \"bg-sidebar text-sidebar-foreground flex h-full w-(--sidebar-width) flex-col\",\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=\"bg-sidebar text-sidebar-foreground w-(--sidebar-width) p-0 [&>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 text-sidebar-foreground hidden 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=\"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 >\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 \"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\",\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 \"hover:group-data-[collapsible=offcanvas]:bg-sidebar group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full\",\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 \"bg-background relative flex w-full flex-1 flex-col\",\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(\"bg-background h-8 w-full 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(\"bg-sidebar-border mx-2 w-auto\", 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 : \"div\";\n\n return (\n <Comp\n data-slot=\"sidebar-group-label\"\n data-sidebar=\"group-label\"\n className={cn(\n \"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\",\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 : \"button\";\n\n return (\n <Comp\n data-slot=\"sidebar-group-action\"\n data-sidebar=\"group-action\"\n className={cn(\n \"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\",\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 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 {\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 : \"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 : \"button\";\n\n return (\n <Comp\n data-slot=\"sidebar-menu-action\"\n data-sidebar=\"menu-action\"\n className={cn(\n \"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\",\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 \"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\",\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 \"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\",\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 \"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\",\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 : \"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 \"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\",\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":["React","useIsMobile","open","jsx","TooltipProvider","cn","Sheet","jsxs","SheetContent","SheetHeader","SheetTitle","SheetDescription","Button","PanelLeftIcon","Input","Separator","Slot","cva","tooltip","button","Tooltip","TooltipTrigger","TooltipContent","Skeleton"],"mappings":"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"}
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ require("react");
5
+ const AccordionPrimitive = require("@radix-ui/react-accordion");
6
+ const lucideReact = require("lucide-react");
7
+ const utils = require("./index.cjs50.js");
8
+ function _interopNamespaceDefault(e) {
9
+ const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
10
+ if (e) {
11
+ for (const k in e) {
12
+ if (k !== "default") {
13
+ const d = Object.getOwnPropertyDescriptor(e, k);
14
+ Object.defineProperty(n, k, d.get ? d : {
15
+ enumerable: true,
16
+ get: () => e[k]
17
+ });
18
+ }
19
+ }
20
+ }
21
+ n.default = e;
22
+ return Object.freeze(n);
23
+ }
24
+ const AccordionPrimitive__namespace = /* @__PURE__ */ _interopNamespaceDefault(AccordionPrimitive);
25
+ function Accordion({
26
+ ...props
27
+ }) {
28
+ return /* @__PURE__ */ jsxRuntime.jsx(AccordionPrimitive__namespace.Root, { "data-slot": "accordion", ...props });
29
+ }
30
+ function AccordionItem({
31
+ className,
32
+ ...props
33
+ }) {
34
+ return /* @__PURE__ */ jsxRuntime.jsx(
35
+ AccordionPrimitive__namespace.Item,
36
+ {
37
+ "data-slot": "accordion-item",
38
+ className: utils.cn("border-b last:border-b-0", className),
39
+ ...props
40
+ }
41
+ );
42
+ }
43
+ function AccordionTrigger({
44
+ className,
45
+ children,
46
+ ...props
47
+ }) {
48
+ return /* @__PURE__ */ jsxRuntime.jsx(AccordionPrimitive__namespace.Header, { className: "flex", children: /* @__PURE__ */ jsxRuntime.jsxs(
49
+ AccordionPrimitive__namespace.Trigger,
50
+ {
51
+ "data-slot": "accordion-trigger",
52
+ className: utils.cn(
53
+ "focus-visible:border-ring focus-visible:ring-ring/50 flex flex-1 items-start justify-between gap-4 rounded-md py-4 text-left text-sm font-medium transition-all outline-none hover:underline focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-180",
54
+ className
55
+ ),
56
+ ...props,
57
+ children: [
58
+ children,
59
+ /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ChevronDownIcon, { className: "text-muted-foreground pointer-events-none size-4 shrink-0 translate-y-0.5 transition-transform duration-200" })
60
+ ]
61
+ }
62
+ ) });
63
+ }
64
+ function AccordionContent({
65
+ className,
66
+ children,
67
+ ...props
68
+ }) {
69
+ return /* @__PURE__ */ jsxRuntime.jsx(
70
+ AccordionPrimitive__namespace.Content,
71
+ {
72
+ "data-slot": "accordion-content",
73
+ className: "data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden text-sm",
74
+ ...props,
75
+ children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: utils.cn("pt-0 pb-4", className), children })
76
+ }
77
+ );
78
+ }
79
+ exports.Accordion = Accordion;
80
+ exports.AccordionContent = AccordionContent;
81
+ exports.AccordionItem = AccordionItem;
82
+ exports.AccordionTrigger = AccordionTrigger;
83
+ //# sourceMappingURL=index.cjs4.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs4.js","sources":["../lib/components/ui/accordion.tsx"],"sourcesContent":["import * as React from \"react\";\nimport * as AccordionPrimitive from \"@radix-ui/react-accordion\";\nimport { ChevronDownIcon } from \"lucide-react\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction Accordion({\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Root>) {\n return <AccordionPrimitive.Root data-slot=\"accordion\" {...props} />;\n}\n\nfunction AccordionItem({\n className,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Item>) {\n return (\n <AccordionPrimitive.Item\n data-slot=\"accordion-item\"\n className={cn(\"border-b last:border-b-0\", className)}\n {...props}\n />\n );\n}\n\nfunction AccordionTrigger({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Trigger>) {\n return (\n <AccordionPrimitive.Header className=\"flex\">\n <AccordionPrimitive.Trigger\n data-slot=\"accordion-trigger\"\n className={cn(\n \"focus-visible:border-ring focus-visible:ring-ring/50 flex flex-1 items-start justify-between gap-4 rounded-md py-4 text-left text-sm font-medium transition-all outline-none hover:underline focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-180\",\n className\n )}\n {...props}\n >\n {children}\n <ChevronDownIcon className=\"text-muted-foreground pointer-events-none size-4 shrink-0 translate-y-0.5 transition-transform duration-200\" />\n </AccordionPrimitive.Trigger>\n </AccordionPrimitive.Header>\n );\n}\n\nfunction AccordionContent({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Content>) {\n return (\n <AccordionPrimitive.Content\n data-slot=\"accordion-content\"\n className=\"data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden text-sm\"\n {...props}\n >\n <div className={cn(\"pt-0 pb-4\", className)}>{children}</div>\n </AccordionPrimitive.Content>\n );\n}\n\nexport { Accordion, AccordionItem, AccordionTrigger, AccordionContent };\n"],"names":["AccordionPrimitive","jsx","cn","jsxs","ChevronDownIcon"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAMA,SAAS,UAAU;AAAA,EACjB,GAAG;AACL,GAAyD;AACvD,wCAAQA,8BAAmB,MAAnB,EAAwB,aAAU,aAAa,GAAG,OAAO;AACnE;AAEA,SAAS,cAAc;AAAA,EACrB;AAAA,EACA,GAAG;AACL,GAAyD;AACvD,SACEC,2BAAAA;AAAAA,IAACD,8BAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAWE,MAAAA,GAAG,4BAA4B,SAAS;AAAA,MAClD,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;AAEA,SAAS,iBAAiB;AAAA,EACxB;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAA4D;AAC1D,SACED,2BAAAA,IAACD,8BAAmB,QAAnB,EAA0B,WAAU,QACnC,UAAAG,2BAAAA;AAAAA,IAACH,8BAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAWE,MAAAA;AAAAA,QACT;AAAA,QACA;AAAA,MAAA;AAAA,MAED,GAAG;AAAA,MAEH,UAAA;AAAA,QAAA;AAAA,QACDD,2BAAAA,IAACG,YAAAA,iBAAA,EAAgB,WAAU,8GAAA,CAA8G;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA,GAE7I;AAEJ;AAEA,SAAS,iBAAiB;AAAA,EACxB;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAA4D;AAC1D,SACEH,2BAAAA;AAAAA,IAACD,8BAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAU;AAAA,MACT,GAAG;AAAA,MAEJ,yCAAC,OAAA,EAAI,WAAWE,MAAAA,GAAG,aAAa,SAAS,GAAI,SAAA,CAAS;AAAA,IAAA;AAAA,EAAA;AAG5D;;;;;"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const utils = require("./index.cjs50.js");
5
+ function Skeleton({ className, ...props }) {
6
+ return /* @__PURE__ */ jsxRuntime.jsx(
7
+ "div",
8
+ {
9
+ "data-slot": "skeleton",
10
+ className: utils.cn("bg-accent animate-pulse rounded-md", className),
11
+ ...props
12
+ }
13
+ );
14
+ }
15
+ exports.Skeleton = Skeleton;
16
+ //# sourceMappingURL=index.cjs40.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs40.js","sources":["../lib/components/ui/skeleton.tsx"],"sourcesContent":["import { cn } from \"@/lib/utils\";\n\nfunction Skeleton({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"skeleton\"\n className={cn(\"bg-accent animate-pulse rounded-md\", className)}\n {...props}\n />\n );\n}\n\nexport { Skeleton };\n"],"names":["jsx","cn"],"mappings":";;;;AAEA,SAAS,SAAS,EAAE,WAAW,GAAG,SAAsC;AACtE,SACEA,2BAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWC,MAAAA,GAAG,sCAAsC,SAAS;AAAA,MAC5D,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;;"}
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const React = require("react");
5
+ const SliderPrimitive = require("@radix-ui/react-slider");
6
+ const utils = require("./index.cjs50.js");
7
+ function _interopNamespaceDefault(e) {
8
+ const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
9
+ if (e) {
10
+ for (const k in e) {
11
+ if (k !== "default") {
12
+ const d = Object.getOwnPropertyDescriptor(e, k);
13
+ Object.defineProperty(n, k, d.get ? d : {
14
+ enumerable: true,
15
+ get: () => e[k]
16
+ });
17
+ }
18
+ }
19
+ }
20
+ n.default = e;
21
+ return Object.freeze(n);
22
+ }
23
+ const React__namespace = /* @__PURE__ */ _interopNamespaceDefault(React);
24
+ const SliderPrimitive__namespace = /* @__PURE__ */ _interopNamespaceDefault(SliderPrimitive);
25
+ function Slider({
26
+ className,
27
+ defaultValue,
28
+ value,
29
+ min = 0,
30
+ max = 100,
31
+ ...props
32
+ }) {
33
+ const _values = React__namespace.useMemo(
34
+ () => Array.isArray(value) ? value : Array.isArray(defaultValue) ? defaultValue : [min, max],
35
+ [value, defaultValue, min, max]
36
+ );
37
+ return /* @__PURE__ */ jsxRuntime.jsxs(
38
+ SliderPrimitive__namespace.Root,
39
+ {
40
+ "data-slot": "slider",
41
+ defaultValue,
42
+ value,
43
+ min,
44
+ max,
45
+ className: utils.cn(
46
+ "relative flex w-full touch-none items-center select-none data-[disabled]:opacity-50 data-[orientation=vertical]:h-full data-[orientation=vertical]:min-h-44 data-[orientation=vertical]:w-auto data-[orientation=vertical]:flex-col",
47
+ className
48
+ ),
49
+ ...props,
50
+ children: [
51
+ /* @__PURE__ */ jsxRuntime.jsx(
52
+ SliderPrimitive__namespace.Track,
53
+ {
54
+ "data-slot": "slider-track",
55
+ className: utils.cn(
56
+ "bg-muted relative grow overflow-hidden rounded-full data-[orientation=horizontal]:h-1.5 data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-1.5"
57
+ ),
58
+ children: /* @__PURE__ */ jsxRuntime.jsx(
59
+ SliderPrimitive__namespace.Range,
60
+ {
61
+ "data-slot": "slider-range",
62
+ className: utils.cn(
63
+ "bg-primary absolute data-[orientation=horizontal]:h-full data-[orientation=vertical]:w-full"
64
+ )
65
+ }
66
+ )
67
+ }
68
+ ),
69
+ Array.from({ length: _values.length }, (_, index) => /* @__PURE__ */ jsxRuntime.jsx(
70
+ SliderPrimitive__namespace.Thumb,
71
+ {
72
+ "data-slot": "slider-thumb",
73
+ className: "border-primary ring-ring/50 block size-4 shrink-0 rounded-full border bg-white shadow-sm transition-[color,box-shadow] hover:ring-4 focus-visible:ring-4 focus-visible:outline-hidden disabled:pointer-events-none disabled:opacity-50"
74
+ },
75
+ index
76
+ ))
77
+ ]
78
+ }
79
+ );
80
+ }
81
+ exports.Slider = Slider;
82
+ //# sourceMappingURL=index.cjs41.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs41.js","sources":["../lib/components/ui/slider.tsx"],"sourcesContent":["import * as React from \"react\";\nimport * as SliderPrimitive from \"@radix-ui/react-slider\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction Slider({\n className,\n defaultValue,\n value,\n min = 0,\n max = 100,\n ...props\n}: React.ComponentProps<typeof SliderPrimitive.Root>) {\n const _values = React.useMemo(\n () =>\n Array.isArray(value)\n ? value\n : Array.isArray(defaultValue)\n ? defaultValue\n : [min, max],\n [value, defaultValue, min, max]\n );\n\n return (\n <SliderPrimitive.Root\n data-slot=\"slider\"\n defaultValue={defaultValue}\n value={value}\n min={min}\n max={max}\n className={cn(\n \"relative flex w-full touch-none items-center select-none data-[disabled]:opacity-50 data-[orientation=vertical]:h-full data-[orientation=vertical]:min-h-44 data-[orientation=vertical]:w-auto data-[orientation=vertical]:flex-col\",\n className\n )}\n {...props}\n >\n <SliderPrimitive.Track\n data-slot=\"slider-track\"\n className={cn(\n \"bg-muted relative grow overflow-hidden rounded-full data-[orientation=horizontal]:h-1.5 data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-1.5\"\n )}\n >\n <SliderPrimitive.Range\n data-slot=\"slider-range\"\n className={cn(\n \"bg-primary absolute data-[orientation=horizontal]:h-full data-[orientation=vertical]:w-full\"\n )}\n />\n </SliderPrimitive.Track>\n {Array.from({ length: _values.length }, (_, index) => (\n <SliderPrimitive.Thumb\n data-slot=\"slider-thumb\"\n key={index}\n className=\"border-primary ring-ring/50 block size-4 shrink-0 rounded-full border bg-white shadow-sm transition-[color,box-shadow] hover:ring-4 focus-visible:ring-4 focus-visible:outline-hidden disabled:pointer-events-none disabled:opacity-50\"\n />\n ))}\n </SliderPrimitive.Root>\n );\n}\n\nexport { Slider };\n"],"names":["React","jsxs","SliderPrimitive","cn","jsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAKA,SAAS,OAAO;AAAA,EACd;AAAA,EACA;AAAA,EACA;AAAA,EACA,MAAM;AAAA,EACN,MAAM;AAAA,EACN,GAAG;AACL,GAAsD;AACpD,QAAM,UAAUA,iBAAM;AAAA,IACpB,MACE,MAAM,QAAQ,KAAK,IACf,QACA,MAAM,QAAQ,YAAY,IACxB,eACA,CAAC,KAAK,GAAG;AAAA,IACjB,CAAC,OAAO,cAAc,KAAK,GAAG;AAAA,EAAA;AAGhC,SACEC,2BAAAA;AAAAA,IAACC,2BAAgB;AAAA,IAAhB;AAAA,MACC,aAAU;AAAA,MACV;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,WAAWC,MAAAA;AAAAA,QACT;AAAA,QACA;AAAA,MAAA;AAAA,MAED,GAAG;AAAA,MAEJ,UAAA;AAAA,QAAAC,2BAAAA;AAAAA,UAACF,2BAAgB;AAAA,UAAhB;AAAA,YACC,aAAU;AAAA,YACV,WAAWC,MAAAA;AAAAA,cACT;AAAA,YAAA;AAAA,YAGF,UAAAC,2BAAAA;AAAAA,cAACF,2BAAgB;AAAA,cAAhB;AAAA,gBACC,aAAU;AAAA,gBACV,WAAWC,MAAAA;AAAAA,kBACT;AAAA,gBAAA;AAAA,cACF;AAAA,YAAA;AAAA,UACF;AAAA,QAAA;AAAA,QAED,MAAM,KAAK,EAAE,QAAQ,QAAQ,UAAU,CAAC,GAAG,UAC1CC,2BAAAA;AAAAA,UAACF,2BAAgB;AAAA,UAAhB;AAAA,YACC,aAAU;AAAA,YAEV,WAAU;AAAA,UAAA;AAAA,UADL;AAAA,QAAA,CAGR;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGP;;"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ "use client";
3
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
4
+ const jsxRuntime = require("react/jsx-runtime");
5
+ const lucideReact = require("lucide-react");
6
+ const nextThemes = require("next-themes");
7
+ const sonner = require("sonner");
8
+ const Toaster = ({ ...props }) => {
9
+ const { theme = "system" } = nextThemes.useTheme();
10
+ return /* @__PURE__ */ jsxRuntime.jsx(
11
+ sonner.Toaster,
12
+ {
13
+ theme,
14
+ className: "toaster group",
15
+ icons: {
16
+ success: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.CircleCheckIcon, { className: "size-4" }),
17
+ info: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.InfoIcon, { className: "size-4" }),
18
+ warning: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.TriangleAlertIcon, { className: "size-4" }),
19
+ error: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.OctagonXIcon, { className: "size-4" }),
20
+ loading: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Loader2Icon, { className: "size-4 animate-spin" })
21
+ },
22
+ style: {
23
+ "--normal-bg": "var(--popover)",
24
+ "--normal-text": "var(--popover-foreground)",
25
+ "--normal-border": "var(--border)",
26
+ "--border-radius": "var(--radius)"
27
+ },
28
+ ...props
29
+ }
30
+ );
31
+ };
32
+ exports.Toaster = Toaster;
33
+ //# sourceMappingURL=index.cjs42.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs42.js","sources":["../lib/components/ui/sonner.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n CircleCheckIcon,\n InfoIcon,\n Loader2Icon,\n OctagonXIcon,\n TriangleAlertIcon,\n} from \"lucide-react\";\nimport { useTheme } from \"next-themes\";\nimport { Toaster as Sonner, type ToasterProps } from \"sonner\";\n\nconst Toaster = ({ ...props }: ToasterProps) => {\n const { theme = \"system\" } = useTheme();\n\n return (\n <Sonner\n theme={theme as ToasterProps[\"theme\"]}\n className=\"toaster group\"\n icons={{\n success: <CircleCheckIcon className=\"size-4\" />,\n info: <InfoIcon className=\"size-4\" />,\n warning: <TriangleAlertIcon className=\"size-4\" />,\n error: <OctagonXIcon className=\"size-4\" />,\n loading: <Loader2Icon className=\"size-4 animate-spin\" />,\n }}\n style={\n {\n \"--normal-bg\": \"var(--popover)\",\n \"--normal-text\": \"var(--popover-foreground)\",\n \"--normal-border\": \"var(--border)\",\n \"--border-radius\": \"var(--radius)\",\n } as React.CSSProperties\n }\n {...props}\n />\n );\n};\n\nexport { Toaster };\n"],"names":["useTheme","jsx","Sonner","CircleCheckIcon","InfoIcon","TriangleAlertIcon","OctagonXIcon","Loader2Icon"],"mappings":";;;;;;;AAYA,MAAM,UAAU,CAAC,EAAE,GAAG,YAA0B;AAC9C,QAAM,EAAE,QAAQ,SAAA,IAAaA,oBAAA;AAE7B,SACEC,2BAAAA;AAAAA,IAACC,OAAAA;AAAAA,IAAA;AAAA,MACC;AAAA,MACA,WAAU;AAAA,MACV,OAAO;AAAA,QACL,SAASD,2BAAAA,IAACE,YAAAA,iBAAA,EAAgB,WAAU,SAAA,CAAS;AAAA,QAC7C,MAAMF,2BAAAA,IAACG,YAAAA,UAAA,EAAS,WAAU,SAAA,CAAS;AAAA,QACnC,SAASH,2BAAAA,IAACI,YAAAA,mBAAA,EAAkB,WAAU,SAAA,CAAS;AAAA,QAC/C,OAAOJ,2BAAAA,IAACK,YAAAA,cAAA,EAAa,WAAU,SAAA,CAAS;AAAA,QACxC,SAASL,2BAAAA,IAACM,YAAAA,aAAA,EAAY,WAAU,sBAAA,CAAsB;AAAA,MAAA;AAAA,MAExD,OACE;AAAA,QACE,eAAe;AAAA,QACf,iBAAiB;AAAA,QACjB,mBAAmB;AAAA,QACnB,mBAAmB;AAAA,MAAA;AAAA,MAGtB,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;;"}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ require("react");
5
+ const SwitchPrimitive = require("@radix-ui/react-switch");
6
+ const utils = require("./index.cjs50.js");
7
+ function _interopNamespaceDefault(e) {
8
+ const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
9
+ if (e) {
10
+ for (const k in e) {
11
+ if (k !== "default") {
12
+ const d = Object.getOwnPropertyDescriptor(e, k);
13
+ Object.defineProperty(n, k, d.get ? d : {
14
+ enumerable: true,
15
+ get: () => e[k]
16
+ });
17
+ }
18
+ }
19
+ }
20
+ n.default = e;
21
+ return Object.freeze(n);
22
+ }
23
+ const SwitchPrimitive__namespace = /* @__PURE__ */ _interopNamespaceDefault(SwitchPrimitive);
24
+ function Switch({
25
+ className,
26
+ ...props
27
+ }) {
28
+ return /* @__PURE__ */ jsxRuntime.jsx(
29
+ SwitchPrimitive__namespace.Root,
30
+ {
31
+ "data-slot": "switch",
32
+ className: utils.cn(
33
+ "peer data-[state=checked]:bg-primary data-[state=unchecked]:bg-input focus-visible:border-ring focus-visible:ring-ring/50 dark:data-[state=unchecked]:bg-input/80 inline-flex h-[1.15rem] w-8 shrink-0 items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",
34
+ className
35
+ ),
36
+ ...props,
37
+ children: /* @__PURE__ */ jsxRuntime.jsx(
38
+ SwitchPrimitive__namespace.Thumb,
39
+ {
40
+ "data-slot": "switch-thumb",
41
+ className: utils.cn(
42
+ "bg-background dark:data-[state=unchecked]:bg-foreground dark:data-[state=checked]:bg-primary-foreground pointer-events-none block size-4 rounded-full ring-0 transition-transform data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0"
43
+ )
44
+ }
45
+ )
46
+ }
47
+ );
48
+ }
49
+ exports.Switch = Switch;
50
+ //# sourceMappingURL=index.cjs43.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs43.js","sources":["../lib/components/ui/switch.tsx"],"sourcesContent":["import * as React from \"react\";\nimport * as SwitchPrimitive from \"@radix-ui/react-switch\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction Switch({\n className,\n ...props\n}: React.ComponentProps<typeof SwitchPrimitive.Root>) {\n return (\n <SwitchPrimitive.Root\n data-slot=\"switch\"\n className={cn(\n \"peer data-[state=checked]:bg-primary data-[state=unchecked]:bg-input focus-visible:border-ring focus-visible:ring-ring/50 dark:data-[state=unchecked]:bg-input/80 inline-flex h-[1.15rem] w-8 shrink-0 items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50\",\n className\n )}\n {...props}\n >\n <SwitchPrimitive.Thumb\n data-slot=\"switch-thumb\"\n className={cn(\n \"bg-background dark:data-[state=unchecked]:bg-foreground dark:data-[state=checked]:bg-primary-foreground pointer-events-none block size-4 rounded-full ring-0 transition-transform data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0\"\n )}\n />\n </SwitchPrimitive.Root>\n );\n}\n\nexport { Switch };\n"],"names":["jsx","SwitchPrimitive","cn"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAKA,SAAS,OAAO;AAAA,EACd;AAAA,EACA,GAAG;AACL,GAAsD;AACpD,SACEA,2BAAAA;AAAAA,IAACC,2BAAgB;AAAA,IAAhB;AAAA,MACC,aAAU;AAAA,MACV,WAAWC,MAAAA;AAAAA,QACT;AAAA,QACA;AAAA,MAAA;AAAA,MAED,GAAG;AAAA,MAEJ,UAAAF,2BAAAA;AAAAA,QAACC,2BAAgB;AAAA,QAAhB;AAAA,UACC,aAAU;AAAA,UACV,WAAWC,MAAAA;AAAAA,YACT;AAAA,UAAA;AAAA,QACF;AAAA,MAAA;AAAA,IACF;AAAA,EAAA;AAGN;;"}
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+ "use client";
3
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
4
+ const jsxRuntime = require("react/jsx-runtime");
5
+ require("react");
6
+ const utils = require("./index.cjs50.js");
7
+ function Table({ className, ...props }) {
8
+ return /* @__PURE__ */ jsxRuntime.jsx(
9
+ "div",
10
+ {
11
+ "data-slot": "table-container",
12
+ className: "relative w-full overflow-x-auto",
13
+ children: /* @__PURE__ */ jsxRuntime.jsx(
14
+ "table",
15
+ {
16
+ "data-slot": "table",
17
+ className: utils.cn("w-full caption-bottom text-sm", className),
18
+ ...props
19
+ }
20
+ )
21
+ }
22
+ );
23
+ }
24
+ function TableHeader({ className, ...props }) {
25
+ return /* @__PURE__ */ jsxRuntime.jsx(
26
+ "thead",
27
+ {
28
+ "data-slot": "table-header",
29
+ className: utils.cn("[&_tr]:border-b", className),
30
+ ...props
31
+ }
32
+ );
33
+ }
34
+ function TableBody({ className, ...props }) {
35
+ return /* @__PURE__ */ jsxRuntime.jsx(
36
+ "tbody",
37
+ {
38
+ "data-slot": "table-body",
39
+ className: utils.cn("[&_tr:last-child]:border-0", className),
40
+ ...props
41
+ }
42
+ );
43
+ }
44
+ function TableFooter({ className, ...props }) {
45
+ return /* @__PURE__ */ jsxRuntime.jsx(
46
+ "tfoot",
47
+ {
48
+ "data-slot": "table-footer",
49
+ className: utils.cn(
50
+ "bg-muted/50 border-t font-medium [&>tr]:last:border-b-0",
51
+ className
52
+ ),
53
+ ...props
54
+ }
55
+ );
56
+ }
57
+ function TableRow({ className, ...props }) {
58
+ return /* @__PURE__ */ jsxRuntime.jsx(
59
+ "tr",
60
+ {
61
+ "data-slot": "table-row",
62
+ className: utils.cn(
63
+ "hover:bg-muted/50 data-[state=selected]:bg-muted border-b transition-colors",
64
+ className
65
+ ),
66
+ ...props
67
+ }
68
+ );
69
+ }
70
+ function TableHead({ className, ...props }) {
71
+ return /* @__PURE__ */ jsxRuntime.jsx(
72
+ "th",
73
+ {
74
+ "data-slot": "table-head",
75
+ className: utils.cn(
76
+ "text-foreground h-10 px-2 text-left align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",
77
+ className
78
+ ),
79
+ ...props
80
+ }
81
+ );
82
+ }
83
+ function TableCell({ className, ...props }) {
84
+ return /* @__PURE__ */ jsxRuntime.jsx(
85
+ "td",
86
+ {
87
+ "data-slot": "table-cell",
88
+ className: utils.cn(
89
+ "p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",
90
+ className
91
+ ),
92
+ ...props
93
+ }
94
+ );
95
+ }
96
+ function TableCaption({
97
+ className,
98
+ ...props
99
+ }) {
100
+ return /* @__PURE__ */ jsxRuntime.jsx(
101
+ "caption",
102
+ {
103
+ "data-slot": "table-caption",
104
+ className: utils.cn("text-muted-foreground mt-4 text-sm", className),
105
+ ...props
106
+ }
107
+ );
108
+ }
109
+ exports.Table = Table;
110
+ exports.TableBody = TableBody;
111
+ exports.TableCaption = TableCaption;
112
+ exports.TableCell = TableCell;
113
+ exports.TableFooter = TableFooter;
114
+ exports.TableHead = TableHead;
115
+ exports.TableHeader = TableHeader;
116
+ exports.TableRow = TableRow;
117
+ //# sourceMappingURL=index.cjs44.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs44.js","sources":["../lib/components/ui/table.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction Table({ className, ...props }: React.ComponentProps<\"table\">) {\n return (\n <div\n data-slot=\"table-container\"\n className=\"relative w-full overflow-x-auto\"\n >\n <table\n data-slot=\"table\"\n className={cn(\"w-full caption-bottom text-sm\", className)}\n {...props}\n />\n </div>\n );\n}\n\nfunction TableHeader({ className, ...props }: React.ComponentProps<\"thead\">) {\n return (\n <thead\n data-slot=\"table-header\"\n className={cn(\"[&_tr]:border-b\", className)}\n {...props}\n />\n );\n}\n\nfunction TableBody({ className, ...props }: React.ComponentProps<\"tbody\">) {\n return (\n <tbody\n data-slot=\"table-body\"\n className={cn(\"[&_tr:last-child]:border-0\", className)}\n {...props}\n />\n );\n}\n\nfunction TableFooter({ className, ...props }: React.ComponentProps<\"tfoot\">) {\n return (\n <tfoot\n data-slot=\"table-footer\"\n className={cn(\n \"bg-muted/50 border-t font-medium [&>tr]:last:border-b-0\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction TableRow({ className, ...props }: React.ComponentProps<\"tr\">) {\n return (\n <tr\n data-slot=\"table-row\"\n className={cn(\n \"hover:bg-muted/50 data-[state=selected]:bg-muted border-b transition-colors\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction TableHead({ className, ...props }: React.ComponentProps<\"th\">) {\n return (\n <th\n data-slot=\"table-head\"\n className={cn(\n \"text-foreground h-10 px-2 text-left align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction TableCell({ className, ...props }: React.ComponentProps<\"td\">) {\n return (\n <td\n data-slot=\"table-cell\"\n className={cn(\n \"p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction TableCaption({\n className,\n ...props\n}: React.ComponentProps<\"caption\">) {\n return (\n <caption\n data-slot=\"table-caption\"\n className={cn(\"text-muted-foreground mt-4 text-sm\", className)}\n {...props}\n />\n );\n}\n\nexport {\n Table,\n TableHeader,\n TableBody,\n TableFooter,\n TableHead,\n TableRow,\n TableCell,\n TableCaption,\n};\n"],"names":["jsx","cn"],"mappings":";;;;;;AAMA,SAAS,MAAM,EAAE,WAAW,GAAG,SAAwC;AACrE,SACEA,2BAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAU;AAAA,MAEV,UAAAA,2BAAAA;AAAAA,QAAC;AAAA,QAAA;AAAA,UACC,aAAU;AAAA,UACV,WAAWC,MAAAA,GAAG,iCAAiC,SAAS;AAAA,UACvD,GAAG;AAAA,QAAA;AAAA,MAAA;AAAA,IACN;AAAA,EAAA;AAGN;AAEA,SAAS,YAAY,EAAE,WAAW,GAAG,SAAwC;AAC3E,SACED,2BAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWC,MAAAA,GAAG,mBAAmB,SAAS;AAAA,MACzC,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;AAEA,SAAS,UAAU,EAAE,WAAW,GAAG,SAAwC;AACzE,SACED,2BAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWC,MAAAA,GAAG,8BAA8B,SAAS;AAAA,MACpD,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;AAEA,SAAS,YAAY,EAAE,WAAW,GAAG,SAAwC;AAC3E,SACED,2BAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWC,MAAAA;AAAAA,QACT;AAAA,QACA;AAAA,MAAA;AAAA,MAED,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;AAEA,SAAS,SAAS,EAAE,WAAW,GAAG,SAAqC;AACrE,SACED,2BAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWC,MAAAA;AAAAA,QACT;AAAA,QACA;AAAA,MAAA;AAAA,MAED,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;AAEA,SAAS,UAAU,EAAE,WAAW,GAAG,SAAqC;AACtE,SACED,2BAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWC,MAAAA;AAAAA,QACT;AAAA,QACA;AAAA,MAAA;AAAA,MAED,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;AAEA,SAAS,UAAU,EAAE,WAAW,GAAG,SAAqC;AACtE,SACED,2BAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWC,MAAAA;AAAAA,QACT;AAAA,QACA;AAAA,MAAA;AAAA,MAED,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;AAEA,SAAS,aAAa;AAAA,EACpB;AAAA,EACA,GAAG;AACL,GAAoC;AAClC,SACED,2BAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWC,MAAAA,GAAG,sCAAsC,SAAS;AAAA,MAC5D,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;;;;;;;;;"}
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ require("react");
5
+ const TabsPrimitive = require("@radix-ui/react-tabs");
6
+ const utils = require("./index.cjs50.js");
7
+ function _interopNamespaceDefault(e) {
8
+ const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
9
+ if (e) {
10
+ for (const k in e) {
11
+ if (k !== "default") {
12
+ const d = Object.getOwnPropertyDescriptor(e, k);
13
+ Object.defineProperty(n, k, d.get ? d : {
14
+ enumerable: true,
15
+ get: () => e[k]
16
+ });
17
+ }
18
+ }
19
+ }
20
+ n.default = e;
21
+ return Object.freeze(n);
22
+ }
23
+ const TabsPrimitive__namespace = /* @__PURE__ */ _interopNamespaceDefault(TabsPrimitive);
24
+ function Tabs({
25
+ className,
26
+ ...props
27
+ }) {
28
+ return /* @__PURE__ */ jsxRuntime.jsx(
29
+ TabsPrimitive__namespace.Root,
30
+ {
31
+ "data-slot": "tabs",
32
+ className: utils.cn("flex flex-col gap-2", className),
33
+ ...props
34
+ }
35
+ );
36
+ }
37
+ function TabsList({
38
+ className,
39
+ ...props
40
+ }) {
41
+ return /* @__PURE__ */ jsxRuntime.jsx(
42
+ TabsPrimitive__namespace.List,
43
+ {
44
+ "data-slot": "tabs-list",
45
+ className: utils.cn(
46
+ "bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center rounded-lg p-[3px]",
47
+ className
48
+ ),
49
+ ...props
50
+ }
51
+ );
52
+ }
53
+ function TabsTrigger({
54
+ className,
55
+ ...props
56
+ }) {
57
+ return /* @__PURE__ */ jsxRuntime.jsx(
58
+ TabsPrimitive__namespace.Trigger,
59
+ {
60
+ "data-slot": "tabs-trigger",
61
+ className: utils.cn(
62
+ "data-[state=active]:bg-background dark:data-[state=active]:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 text-foreground dark:text-muted-foreground inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
63
+ className
64
+ ),
65
+ ...props
66
+ }
67
+ );
68
+ }
69
+ function TabsContent({
70
+ className,
71
+ ...props
72
+ }) {
73
+ return /* @__PURE__ */ jsxRuntime.jsx(
74
+ TabsPrimitive__namespace.Content,
75
+ {
76
+ "data-slot": "tabs-content",
77
+ className: utils.cn("flex-1 outline-none", className),
78
+ ...props
79
+ }
80
+ );
81
+ }
82
+ exports.Tabs = Tabs;
83
+ exports.TabsContent = TabsContent;
84
+ exports.TabsList = TabsList;
85
+ exports.TabsTrigger = TabsTrigger;
86
+ //# sourceMappingURL=index.cjs45.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs45.js","sources":["../lib/components/ui/tabs.tsx"],"sourcesContent":["import * as React from \"react\";\nimport * as TabsPrimitive from \"@radix-ui/react-tabs\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction Tabs({\n className,\n ...props\n}: React.ComponentProps<typeof TabsPrimitive.Root>) {\n return (\n <TabsPrimitive.Root\n data-slot=\"tabs\"\n className={cn(\"flex flex-col gap-2\", className)}\n {...props}\n />\n );\n}\n\nfunction TabsList({\n className,\n ...props\n}: React.ComponentProps<typeof TabsPrimitive.List>) {\n return (\n <TabsPrimitive.List\n data-slot=\"tabs-list\"\n className={cn(\n \"bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center rounded-lg p-[3px]\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction TabsTrigger({\n className,\n ...props\n}: React.ComponentProps<typeof TabsPrimitive.Trigger>) {\n return (\n <TabsPrimitive.Trigger\n data-slot=\"tabs-trigger\"\n className={cn(\n \"data-[state=active]:bg-background dark:data-[state=active]:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 text-foreground dark:text-muted-foreground inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction TabsContent({\n className,\n ...props\n}: React.ComponentProps<typeof TabsPrimitive.Content>) {\n return (\n <TabsPrimitive.Content\n data-slot=\"tabs-content\"\n className={cn(\"flex-1 outline-none\", className)}\n {...props}\n />\n );\n}\n\nexport { Tabs, TabsList, TabsTrigger, TabsContent };\n"],"names":["jsx","TabsPrimitive","cn"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAKA,SAAS,KAAK;AAAA,EACZ;AAAA,EACA,GAAG;AACL,GAAoD;AAClD,SACEA,2BAAAA;AAAAA,IAACC,yBAAc;AAAA,IAAd;AAAA,MACC,aAAU;AAAA,MACV,WAAWC,MAAAA,GAAG,uBAAuB,SAAS;AAAA,MAC7C,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;AAEA,SAAS,SAAS;AAAA,EAChB;AAAA,EACA,GAAG;AACL,GAAoD;AAClD,SACEF,2BAAAA;AAAAA,IAACC,yBAAc;AAAA,IAAd;AAAA,MACC,aAAU;AAAA,MACV,WAAWC,MAAAA;AAAAA,QACT;AAAA,QACA;AAAA,MAAA;AAAA,MAED,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;AAEA,SAAS,YAAY;AAAA,EACnB;AAAA,EACA,GAAG;AACL,GAAuD;AACrD,SACEF,2BAAAA;AAAAA,IAACC,yBAAc;AAAA,IAAd;AAAA,MACC,aAAU;AAAA,MACV,WAAWC,MAAAA;AAAAA,QACT;AAAA,QACA;AAAA,MAAA;AAAA,MAED,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;AAEA,SAAS,YAAY;AAAA,EACnB;AAAA,EACA,GAAG;AACL,GAAuD;AACrD,SACEF,2BAAAA;AAAAA,IAACC,yBAAc;AAAA,IAAd;AAAA,MACC,aAAU;AAAA,MACV,WAAWC,MAAAA,GAAG,uBAAuB,SAAS;AAAA,MAC7C,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;;;;;"}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ require("react");
5
+ const utils = require("./index.cjs50.js");
6
+ function Textarea({ className, ...props }) {
7
+ return /* @__PURE__ */ jsxRuntime.jsx(
8
+ "textarea",
9
+ {
10
+ "data-slot": "textarea",
11
+ className: utils.cn(
12
+ "border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",
13
+ className
14
+ ),
15
+ ...props
16
+ }
17
+ );
18
+ }
19
+ exports.Textarea = Textarea;
20
+ //# sourceMappingURL=index.cjs46.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs46.js","sources":["../lib/components/ui/textarea.tsx"],"sourcesContent":["import * as React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction Textarea({ className, ...props }: React.ComponentProps<\"textarea\">) {\n return (\n <textarea\n data-slot=\"textarea\"\n className={cn(\n \"border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 md:text-sm\",\n className\n )}\n {...props}\n />\n );\n}\n\nexport { Textarea };\n"],"names":["jsx","cn"],"mappings":";;;;;AAIA,SAAS,SAAS,EAAE,WAAW,GAAG,SAA2C;AAC3E,SACEA,2BAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWC,MAAAA;AAAAA,QACT;AAAA,QACA;AAAA,MAAA;AAAA,MAED,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;;"}