@prototyperco/ui 0.5.0-alpha.0 → 0.5.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 (349) hide show
  1. package/dist/components/accordion.cjs +154 -0
  2. package/dist/components/accordion.cjs.map +1 -0
  3. package/dist/components/accordion.d.cts +14 -0
  4. package/dist/components/accordion.d.ts +14 -0
  5. package/dist/components/accordion.js +127 -0
  6. package/dist/components/accordion.js.map +1 -0
  7. package/dist/components/alert-dialog.cjs +324 -0
  8. package/dist/components/alert-dialog.cjs.map +1 -0
  9. package/dist/components/alert-dialog.d.cts +30 -0
  10. package/dist/components/alert-dialog.d.ts +30 -0
  11. package/dist/components/alert-dialog.js +289 -0
  12. package/dist/components/alert-dialog.js.map +1 -0
  13. package/dist/components/alert.cjs +105 -0
  14. package/dist/components/alert.cjs.map +1 -0
  15. package/dist/components/alert.d.cts +17 -0
  16. package/dist/components/alert.d.ts +17 -0
  17. package/dist/components/alert.js +78 -0
  18. package/dist/components/alert.js.map +1 -0
  19. package/dist/components/autocomplete.cjs +512 -0
  20. package/dist/components/autocomplete.cjs.map +1 -0
  21. package/dist/components/autocomplete.d.cts +31 -0
  22. package/dist/components/autocomplete.d.ts +31 -0
  23. package/dist/components/autocomplete.js +472 -0
  24. package/dist/components/autocomplete.js.map +1 -0
  25. package/dist/components/avatar.cjs +144 -0
  26. package/dist/components/avatar.cjs.map +1 -0
  27. package/dist/components/avatar.d.cts +18 -0
  28. package/dist/components/avatar.d.ts +18 -0
  29. package/dist/components/avatar.js +115 -0
  30. package/dist/components/avatar.js.map +1 -0
  31. package/dist/components/badge.cjs +81 -0
  32. package/dist/components/badge.cjs.map +1 -0
  33. package/dist/components/badge.d.cts +13 -0
  34. package/dist/components/badge.d.ts +13 -0
  35. package/dist/components/badge.js +56 -0
  36. package/dist/components/badge.js.map +1 -0
  37. package/dist/components/breadcrumb.cjs +142 -0
  38. package/dist/components/breadcrumb.cjs.map +1 -0
  39. package/dist/components/breadcrumb.d.cts +20 -0
  40. package/dist/components/breadcrumb.d.ts +20 -0
  41. package/dist/components/breadcrumb.js +112 -0
  42. package/dist/components/breadcrumb.js.map +1 -0
  43. package/dist/components/button.cjs +145 -0
  44. package/dist/components/button.cjs.map +1 -0
  45. package/dist/components/button.d.cts +16 -0
  46. package/dist/components/button.d.ts +16 -0
  47. package/dist/components/button.js +120 -0
  48. package/dist/components/button.js.map +1 -0
  49. package/dist/components/card.cjs +141 -0
  50. package/dist/components/card.cjs.map +1 -0
  51. package/dist/components/card.d.cts +23 -0
  52. package/dist/components/card.d.ts +23 -0
  53. package/dist/components/card.js +111 -0
  54. package/dist/components/card.js.map +1 -0
  55. package/dist/components/checkbox-group.cjs +56 -0
  56. package/dist/components/checkbox-group.cjs.map +1 -0
  57. package/dist/components/checkbox-group.d.cts +8 -0
  58. package/dist/components/checkbox-group.d.ts +8 -0
  59. package/dist/components/checkbox-group.js +32 -0
  60. package/dist/components/checkbox-group.js.map +1 -0
  61. package/dist/components/checkbox.cjs +152 -0
  62. package/dist/components/checkbox.cjs.map +1 -0
  63. package/dist/components/checkbox.d.cts +12 -0
  64. package/dist/components/checkbox.d.ts +12 -0
  65. package/dist/components/checkbox.js +126 -0
  66. package/dist/components/checkbox.js.map +1 -0
  67. package/dist/components/collapsible.cjs +89 -0
  68. package/dist/components/collapsible.cjs.map +1 -0
  69. package/dist/components/collapsible.d.cts +12 -0
  70. package/dist/components/collapsible.d.ts +12 -0
  71. package/dist/components/collapsible.js +63 -0
  72. package/dist/components/collapsible.js.map +1 -0
  73. package/dist/components/color-picker.cjs +983 -0
  74. package/dist/components/color-picker.cjs.map +1 -0
  75. package/dist/components/color-picker.d.cts +41 -0
  76. package/dist/components/color-picker.d.ts +41 -0
  77. package/dist/components/color-picker.js +939 -0
  78. package/dist/components/color-picker.js.map +1 -0
  79. package/dist/components/columns.cjs +163 -0
  80. package/dist/components/columns.cjs.map +1 -0
  81. package/dist/components/columns.d.cts +16 -0
  82. package/dist/components/columns.d.ts +16 -0
  83. package/dist/components/columns.js +136 -0
  84. package/dist/components/columns.js.map +1 -0
  85. package/dist/components/combobox.cjs +633 -0
  86. package/dist/components/combobox.cjs.map +1 -0
  87. package/dist/components/combobox.d.cts +40 -0
  88. package/dist/components/combobox.d.ts +40 -0
  89. package/dist/components/combobox.js +576 -0
  90. package/dist/components/combobox.js.map +1 -0
  91. package/dist/components/command-palette.cjs +370 -0
  92. package/dist/components/command-palette.cjs.map +1 -0
  93. package/dist/components/command-palette.d.cts +42 -0
  94. package/dist/components/command-palette.d.ts +42 -0
  95. package/dist/components/command-palette.js +329 -0
  96. package/dist/components/command-palette.js.map +1 -0
  97. package/dist/components/container.cjs +80 -0
  98. package/dist/components/container.cjs.map +1 -0
  99. package/dist/components/container.d.cts +27 -0
  100. package/dist/components/container.d.ts +27 -0
  101. package/dist/components/container.js +54 -0
  102. package/dist/components/container.js.map +1 -0
  103. package/dist/components/context-menu.cjs +309 -0
  104. package/dist/components/context-menu.cjs.map +1 -0
  105. package/dist/components/context-menu.d.cts +37 -0
  106. package/dist/components/context-menu.d.ts +37 -0
  107. package/dist/components/context-menu.js +271 -0
  108. package/dist/components/context-menu.js.map +1 -0
  109. package/dist/components/dialog.cjs +319 -0
  110. package/dist/components/dialog.cjs.map +1 -0
  111. package/dist/components/dialog.d.cts +32 -0
  112. package/dist/components/dialog.d.ts +32 -0
  113. package/dist/components/dialog.js +285 -0
  114. package/dist/components/dialog.js.map +1 -0
  115. package/dist/components/drawer.cjs +185 -0
  116. package/dist/components/drawer.cjs.map +1 -0
  117. package/dist/components/drawer.d.cts +32 -0
  118. package/dist/components/drawer.d.ts +32 -0
  119. package/dist/components/drawer.js +151 -0
  120. package/dist/components/drawer.js.map +1 -0
  121. package/dist/components/field.cjs +334 -0
  122. package/dist/components/field.cjs.map +1 -0
  123. package/dist/components/field.d.cts +39 -0
  124. package/dist/components/field.d.ts +39 -0
  125. package/dist/components/field.js +299 -0
  126. package/dist/components/field.js.map +1 -0
  127. package/dist/components/fieldset.cjs +75 -0
  128. package/dist/components/fieldset.cjs.map +1 -0
  129. package/dist/components/fieldset.d.cts +12 -0
  130. package/dist/components/fieldset.d.ts +12 -0
  131. package/dist/components/fieldset.js +50 -0
  132. package/dist/components/fieldset.js.map +1 -0
  133. package/dist/components/form.cjs +52 -0
  134. package/dist/components/form.cjs.map +1 -0
  135. package/dist/components/form.d.cts +8 -0
  136. package/dist/components/form.d.ts +8 -0
  137. package/dist/components/form.js +28 -0
  138. package/dist/components/form.js.map +1 -0
  139. package/dist/components/input-group.cjs +338 -0
  140. package/dist/components/input-group.cjs.map +1 -0
  141. package/dist/components/input-group.d.cts +27 -0
  142. package/dist/components/input-group.d.ts +27 -0
  143. package/dist/components/input-group.js +307 -0
  144. package/dist/components/input-group.js.map +1 -0
  145. package/dist/components/input.cjs +63 -0
  146. package/dist/components/input.cjs.map +1 -0
  147. package/dist/components/input.d.cts +8 -0
  148. package/dist/components/input.d.ts +8 -0
  149. package/dist/components/input.js +39 -0
  150. package/dist/components/input.js.map +1 -0
  151. package/dist/components/label.cjs +54 -0
  152. package/dist/components/label.cjs.map +1 -0
  153. package/dist/components/label.d.cts +8 -0
  154. package/dist/components/label.d.ts +8 -0
  155. package/dist/components/label.js +28 -0
  156. package/dist/components/label.js.map +1 -0
  157. package/dist/components/menu.cjs +305 -0
  158. package/dist/components/menu.cjs.map +1 -0
  159. package/dist/components/menu.d.cts +37 -0
  160. package/dist/components/menu.d.ts +37 -0
  161. package/dist/components/menu.js +267 -0
  162. package/dist/components/menu.js.map +1 -0
  163. package/dist/components/menubar.cjs +503 -0
  164. package/dist/components/menubar.cjs.map +1 -0
  165. package/dist/components/menubar.d.cts +37 -0
  166. package/dist/components/menubar.d.ts +37 -0
  167. package/dist/components/menubar.js +464 -0
  168. package/dist/components/menubar.js.map +1 -0
  169. package/dist/components/meter.cjs +152 -0
  170. package/dist/components/meter.cjs.map +1 -0
  171. package/dist/components/meter.d.cts +23 -0
  172. package/dist/components/meter.d.ts +23 -0
  173. package/dist/components/meter.js +122 -0
  174. package/dist/components/meter.js.map +1 -0
  175. package/dist/components/navigation-menu.cjs +315 -0
  176. package/dist/components/navigation-menu.cjs.map +1 -0
  177. package/dist/components/navigation-menu.d.cts +22 -0
  178. package/dist/components/navigation-menu.d.ts +22 -0
  179. package/dist/components/navigation-menu.js +283 -0
  180. package/dist/components/navigation-menu.js.map +1 -0
  181. package/dist/components/number-field.cjs +217 -0
  182. package/dist/components/number-field.cjs.map +1 -0
  183. package/dist/components/number-field.d.cts +23 -0
  184. package/dist/components/number-field.d.ts +23 -0
  185. package/dist/components/number-field.js +185 -0
  186. package/dist/components/number-field.js.map +1 -0
  187. package/dist/components/popover.cjs +125 -0
  188. package/dist/components/popover.cjs.map +1 -0
  189. package/dist/components/popover.d.cts +16 -0
  190. package/dist/components/popover.d.ts +16 -0
  191. package/dist/components/popover.js +96 -0
  192. package/dist/components/popover.js.map +1 -0
  193. package/dist/components/preview-card.cjs +86 -0
  194. package/dist/components/preview-card.cjs.map +1 -0
  195. package/dist/components/preview-card.d.cts +12 -0
  196. package/dist/components/preview-card.d.ts +12 -0
  197. package/dist/components/preview-card.js +60 -0
  198. package/dist/components/preview-card.js.map +1 -0
  199. package/dist/components/progress.cjs +167 -0
  200. package/dist/components/progress.cjs.map +1 -0
  201. package/dist/components/progress.d.cts +23 -0
  202. package/dist/components/progress.d.ts +23 -0
  203. package/dist/components/progress.js +137 -0
  204. package/dist/components/progress.js.map +1 -0
  205. package/dist/components/radio-group.cjs +98 -0
  206. package/dist/components/radio-group.cjs.map +1 -0
  207. package/dist/components/radio-group.d.cts +11 -0
  208. package/dist/components/radio-group.d.ts +11 -0
  209. package/dist/components/radio-group.js +73 -0
  210. package/dist/components/radio-group.js.map +1 -0
  211. package/dist/components/resizable-panel.cjs +91 -0
  212. package/dist/components/resizable-panel.cjs.map +1 -0
  213. package/dist/components/resizable-panel.d.cts +14 -0
  214. package/dist/components/resizable-panel.d.ts +14 -0
  215. package/dist/components/resizable-panel.js +69 -0
  216. package/dist/components/resizable-panel.js.map +1 -0
  217. package/dist/components/row.cjs +94 -0
  218. package/dist/components/row.cjs.map +1 -0
  219. package/dist/components/row.d.cts +27 -0
  220. package/dist/components/row.d.ts +27 -0
  221. package/dist/components/row.js +68 -0
  222. package/dist/components/row.js.map +1 -0
  223. package/dist/components/scroll-area.cjs +96 -0
  224. package/dist/components/scroll-area.cjs.map +1 -0
  225. package/dist/components/scroll-area.d.cts +10 -0
  226. package/dist/components/scroll-area.d.ts +10 -0
  227. package/dist/components/scroll-area.js +71 -0
  228. package/dist/components/scroll-area.js.map +1 -0
  229. package/dist/components/section.cjs +104 -0
  230. package/dist/components/section.cjs.map +1 -0
  231. package/dist/components/section.d.cts +26 -0
  232. package/dist/components/section.d.ts +26 -0
  233. package/dist/components/section.js +79 -0
  234. package/dist/components/section.js.map +1 -0
  235. package/dist/components/segmented-control.cjs +117 -0
  236. package/dist/components/segmented-control.cjs.map +1 -0
  237. package/dist/components/segmented-control.d.cts +16 -0
  238. package/dist/components/segmented-control.d.ts +16 -0
  239. package/dist/components/segmented-control.js +91 -0
  240. package/dist/components/segmented-control.js.map +1 -0
  241. package/dist/components/select.cjs +273 -0
  242. package/dist/components/select.cjs.map +1 -0
  243. package/dist/components/select.d.cts +26 -0
  244. package/dist/components/select.d.ts +26 -0
  245. package/dist/components/select.js +239 -0
  246. package/dist/components/select.js.map +1 -0
  247. package/dist/components/separator.cjs +60 -0
  248. package/dist/components/separator.cjs.map +1 -0
  249. package/dist/components/separator.d.cts +8 -0
  250. package/dist/components/separator.d.ts +8 -0
  251. package/dist/components/separator.js +36 -0
  252. package/dist/components/separator.js.map +1 -0
  253. package/dist/components/skeleton.cjs +54 -0
  254. package/dist/components/skeleton.cjs.map +1 -0
  255. package/dist/components/skeleton.d.cts +8 -0
  256. package/dist/components/skeleton.d.ts +8 -0
  257. package/dist/components/skeleton.js +28 -0
  258. package/dist/components/skeleton.js.map +1 -0
  259. package/dist/components/slider.cjs +221 -0
  260. package/dist/components/slider.cjs.map +1 -0
  261. package/dist/components/slider.d.cts +16 -0
  262. package/dist/components/slider.d.ts +16 -0
  263. package/dist/components/slider.js +182 -0
  264. package/dist/components/slider.js.map +1 -0
  265. package/dist/components/spinner.cjs +97 -0
  266. package/dist/components/spinner.cjs.map +1 -0
  267. package/dist/components/spinner.d.cts +13 -0
  268. package/dist/components/spinner.d.ts +13 -0
  269. package/dist/components/spinner.js +72 -0
  270. package/dist/components/spinner.js.map +1 -0
  271. package/dist/components/switch.cjs +177 -0
  272. package/dist/components/switch.cjs.map +1 -0
  273. package/dist/components/switch.d.cts +22 -0
  274. package/dist/components/switch.d.ts +22 -0
  275. package/dist/components/switch.js +139 -0
  276. package/dist/components/switch.js.map +1 -0
  277. package/dist/components/tabs.cjs +123 -0
  278. package/dist/components/tabs.cjs.map +1 -0
  279. package/dist/components/tabs.d.cts +19 -0
  280. package/dist/components/tabs.d.ts +19 -0
  281. package/dist/components/tabs.js +95 -0
  282. package/dist/components/tabs.js.map +1 -0
  283. package/dist/components/text-field.cjs +290 -0
  284. package/dist/components/text-field.cjs.map +1 -0
  285. package/dist/components/text-field.d.cts +27 -0
  286. package/dist/components/text-field.d.ts +27 -0
  287. package/dist/components/text-field.js +262 -0
  288. package/dist/components/text-field.js.map +1 -0
  289. package/dist/components/textarea.cjs +60 -0
  290. package/dist/components/textarea.cjs.map +1 -0
  291. package/dist/components/textarea.d.cts +8 -0
  292. package/dist/components/textarea.d.ts +8 -0
  293. package/dist/components/textarea.js +34 -0
  294. package/dist/components/textarea.js.map +1 -0
  295. package/dist/components/toast.cjs +167 -0
  296. package/dist/components/toast.cjs.map +1 -0
  297. package/dist/components/toast.d.cts +28 -0
  298. package/dist/components/toast.d.ts +28 -0
  299. package/dist/components/toast.js +147 -0
  300. package/dist/components/toast.js.map +1 -0
  301. package/dist/components/toggle-group.cjs +171 -0
  302. package/dist/components/toggle-group.cjs.map +1 -0
  303. package/dist/components/toggle-group.d.cts +18 -0
  304. package/dist/components/toggle-group.d.ts +18 -0
  305. package/dist/components/toggle-group.js +136 -0
  306. package/dist/components/toggle-group.js.map +1 -0
  307. package/dist/components/toggle.cjs +92 -0
  308. package/dist/components/toggle.cjs.map +1 -0
  309. package/dist/components/toggle.d.cts +14 -0
  310. package/dist/components/toggle.d.ts +14 -0
  311. package/dist/components/toggle.js +67 -0
  312. package/dist/components/toggle.js.map +1 -0
  313. package/dist/components/toolbar.cjs +160 -0
  314. package/dist/components/toolbar.cjs.map +1 -0
  315. package/dist/components/toolbar.d.cts +14 -0
  316. package/dist/components/toolbar.d.ts +14 -0
  317. package/dist/components/toolbar.js +131 -0
  318. package/dist/components/toolbar.js.map +1 -0
  319. package/dist/components/tooltip.cjs +116 -0
  320. package/dist/components/tooltip.cjs.map +1 -0
  321. package/dist/components/tooltip.d.cts +13 -0
  322. package/dist/components/tooltip.d.ts +13 -0
  323. package/dist/components/tooltip.js +89 -0
  324. package/dist/components/tooltip.js.map +1 -0
  325. package/dist/components/tree-view.cjs +472 -0
  326. package/dist/components/tree-view.cjs.map +1 -0
  327. package/dist/components/tree-view.d.cts +33 -0
  328. package/dist/components/tree-view.d.ts +33 -0
  329. package/dist/components/tree-view.js +435 -0
  330. package/dist/components/tree-view.js.map +1 -0
  331. package/dist/index.cjs +11 -14
  332. package/dist/index.cjs.map +1 -1
  333. package/dist/index.d.cts +101 -903
  334. package/dist/index.d.ts +101 -903
  335. package/dist/index.js +4 -6
  336. package/dist/index.js.map +1 -1
  337. package/dist/lib/color-utils.cjs +315 -0
  338. package/dist/lib/color-utils.cjs.map +1 -0
  339. package/dist/lib/color-utils.d.cts +24 -0
  340. package/dist/lib/color-utils.d.ts +24 -0
  341. package/dist/lib/color-utils.js +280 -0
  342. package/dist/lib/color-utils.js.map +1 -0
  343. package/dist/lib/utils.cjs +35 -0
  344. package/dist/lib/utils.cjs.map +1 -0
  345. package/dist/lib/utils.d.cts +5 -0
  346. package/dist/lib/utils.d.ts +5 -0
  347. package/dist/lib/utils.js +10 -0
  348. package/dist/lib/utils.js.map +1 -0
  349. package/package.json +24 -5
@@ -0,0 +1,154 @@
1
+ "use strict";
2
+ "use client";
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
+
21
+ // src/components/accordion.tsx
22
+ var accordion_exports = {};
23
+ __export(accordion_exports, {
24
+ Accordion: () => Accordion,
25
+ AccordionContent: () => AccordionContent,
26
+ AccordionItem: () => AccordionItem,
27
+ AccordionTrigger: () => AccordionTrigger
28
+ });
29
+ module.exports = __toCommonJS(accordion_exports);
30
+ var import_accordion = require("@base-ui/react/accordion");
31
+ var import_lucide_react = require("lucide-react");
32
+
33
+ // src/lib/utils.ts
34
+ var import_clsx = require("clsx");
35
+ var import_tailwind_merge = require("tailwind-merge");
36
+ function cn(...inputs) {
37
+ return (0, import_tailwind_merge.twMerge)((0, import_clsx.clsx)(inputs));
38
+ }
39
+
40
+ // src/components/accordion.tsx
41
+ var import_jsx_runtime = require("react/jsx-runtime");
42
+ function Accordion({ className, ...props }) {
43
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
44
+ import_accordion.Accordion.Root,
45
+ {
46
+ "data-slot": "accordion",
47
+ className: cn("flex w-full flex-col", className),
48
+ ...props
49
+ }
50
+ );
51
+ }
52
+ function AccordionItem({ className, ...props }) {
53
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
54
+ import_accordion.Accordion.Item,
55
+ {
56
+ "data-slot": "accordion-item",
57
+ className: cn(
58
+ "not-last:border-b not-last:border-border-light",
59
+ className
60
+ ),
61
+ ...props
62
+ }
63
+ );
64
+ }
65
+ function AccordionTrigger({
66
+ className,
67
+ children,
68
+ ...props
69
+ }) {
70
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_accordion.Accordion.Header, { className: "flex", children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
71
+ import_accordion.Accordion.Trigger,
72
+ {
73
+ "data-slot": "accordion-trigger",
74
+ className: cn(
75
+ // Base
76
+ "no-highlight group/accordion-trigger relative flex flex-1 cursor-pointer items-start justify-between",
77
+ "rounded-md py-4 text-left text-sm font-medium outline-none",
78
+ // Transitions
79
+ "transition-[color,background-color,border-color,box-shadow,opacity] duration-150 ease-smooth",
80
+ "motion-reduce:transition-none",
81
+ // Hover & focus
82
+ "hover-only:hover:underline",
83
+ "focus-visible:focus-ring",
84
+ // Press feedback
85
+ "motion-safe:active:scale-[0.98]",
86
+ // Icon positioning
87
+ "**:data-[slot=accordion-trigger-icon]:ml-auto",
88
+ "**:data-[slot=accordion-trigger-icon]:size-4",
89
+ "**:data-[slot=accordion-trigger-icon]:text-muted-foreground",
90
+ // Disabled
91
+ "aria-disabled:status-disabled",
92
+ className
93
+ ),
94
+ ...props,
95
+ children: [
96
+ children,
97
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
98
+ import_lucide_react.ChevronDownIcon,
99
+ {
100
+ "data-slot": "accordion-trigger-icon",
101
+ className: cn(
102
+ "pointer-events-none shrink-0",
103
+ "transition-transform duration-200 ease-smooth",
104
+ "motion-reduce:transition-none",
105
+ "group-data-[panel-open]/accordion-trigger:rotate-180"
106
+ )
107
+ }
108
+ )
109
+ ]
110
+ }
111
+ ) });
112
+ }
113
+ function AccordionContent({
114
+ className,
115
+ children,
116
+ ...props
117
+ }) {
118
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
119
+ import_accordion.Accordion.Panel,
120
+ {
121
+ "data-slot": "accordion-content",
122
+ className: cn(
123
+ // Height animation (Base UI provides --accordion-panel-height)
124
+ "h-(--accordion-panel-height) overflow-hidden text-sm",
125
+ "transition-[height] duration-200 ease-smooth",
126
+ "motion-reduce:transition-none",
127
+ // Starting/ending at 0 height
128
+ "data-starting-style:h-0",
129
+ "data-ending-style:h-0"
130
+ ),
131
+ ...props,
132
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
133
+ "div",
134
+ {
135
+ className: cn(
136
+ "pt-0 pb-4",
137
+ "[&_a]:underline [&_a]:underline-offset-3 [&_a]:hover-only:hover:text-foreground",
138
+ "[&_p:not(:last-child)]:mb-4",
139
+ className
140
+ ),
141
+ children
142
+ }
143
+ )
144
+ }
145
+ );
146
+ }
147
+ // Annotate the CommonJS export names for ESM import in node:
148
+ 0 && (module.exports = {
149
+ Accordion,
150
+ AccordionContent,
151
+ AccordionItem,
152
+ AccordionTrigger
153
+ });
154
+ //# sourceMappingURL=accordion.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/components/accordion.tsx","../../src/lib/utils.ts"],"sourcesContent":["\"use client\";\n\nimport { Accordion as AccordionPrimitive } from \"@base-ui/react/accordion\";\nimport { ChevronDownIcon } from \"lucide-react\";\n\nimport { cn } from \"../lib/utils\";\n\nfunction Accordion({ className, ...props }: AccordionPrimitive.Root.Props) {\n return (\n <AccordionPrimitive.Root\n data-slot=\"accordion\"\n className={cn(\"flex w-full flex-col\", className)}\n {...props}\n />\n );\n}\n\nfunction AccordionItem({ className, ...props }: AccordionPrimitive.Item.Props) {\n return (\n <AccordionPrimitive.Item\n data-slot=\"accordion-item\"\n className={cn(\n \"not-last:border-b not-last:border-border-light\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AccordionTrigger({\n className,\n children,\n ...props\n}: AccordionPrimitive.Trigger.Props) {\n return (\n <AccordionPrimitive.Header className=\"flex\">\n <AccordionPrimitive.Trigger\n data-slot=\"accordion-trigger\"\n className={cn(\n // Base\n \"no-highlight group/accordion-trigger relative flex flex-1 cursor-pointer items-start justify-between\",\n \"rounded-md py-4 text-left text-sm font-medium outline-none\",\n // Transitions\n \"transition-[color,background-color,border-color,box-shadow,opacity] duration-150 ease-smooth\",\n \"motion-reduce:transition-none\",\n // Hover & focus\n \"hover-only:hover:underline\",\n \"focus-visible:focus-ring\",\n // Press feedback\n \"motion-safe:active:scale-[0.98]\",\n // Icon positioning\n \"**:data-[slot=accordion-trigger-icon]:ml-auto\",\n \"**:data-[slot=accordion-trigger-icon]:size-4\",\n \"**:data-[slot=accordion-trigger-icon]:text-muted-foreground\",\n // Disabled\n \"aria-disabled:status-disabled\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronDownIcon\n data-slot=\"accordion-trigger-icon\"\n className={cn(\n \"pointer-events-none shrink-0\",\n \"transition-transform duration-200 ease-smooth\",\n \"motion-reduce:transition-none\",\n \"group-data-[panel-open]/accordion-trigger:rotate-180\",\n )}\n />\n </AccordionPrimitive.Trigger>\n </AccordionPrimitive.Header>\n );\n}\n\nfunction AccordionContent({\n className,\n children,\n ...props\n}: AccordionPrimitive.Panel.Props) {\n return (\n <AccordionPrimitive.Panel\n data-slot=\"accordion-content\"\n className={cn(\n // Height animation (Base UI provides --accordion-panel-height)\n \"h-(--accordion-panel-height) overflow-hidden text-sm\",\n \"transition-[height] duration-200 ease-smooth\",\n \"motion-reduce:transition-none\",\n // Starting/ending at 0 height\n \"data-starting-style:h-0\",\n \"data-ending-style:h-0\",\n )}\n {...props}\n >\n <div\n className={cn(\n \"pt-0 pb-4\",\n \"[&_a]:underline [&_a]:underline-offset-3 [&_a]:hover-only:hover:text-foreground\",\n \"[&_p:not(:last-child)]:mb-4\",\n className,\n )}\n >\n {children}\n </div>\n </AccordionPrimitive.Panel>\n );\n}\n\nexport { Accordion, AccordionItem, AccordionTrigger, AccordionContent };\n\nexport type AccordionProps = React.ComponentProps<typeof Accordion>;\nexport type AccordionItemProps = React.ComponentProps<typeof AccordionItem>;\nexport type AccordionTriggerProps = React.ComponentProps<\n typeof AccordionTrigger\n>;\nexport type AccordionContentProps = React.ComponentProps<\n typeof AccordionContent\n>;\n","import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,uBAAgD;AAChD,0BAAgC;;;ACHhC,kBAAsC;AACtC,4BAAwB;AAEjB,SAAS,MAAM,QAAsB;AAC1C,aAAO,mCAAQ,kBAAK,MAAM,CAAC;AAC7B;;;ADII;AAFJ,SAAS,UAAU,EAAE,WAAW,GAAG,MAAM,GAAkC;AACzE,SACE;AAAA,IAAC,iBAAAA,UAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAW,GAAG,wBAAwB,SAAS;AAAA,MAC9C,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,cAAc,EAAE,WAAW,GAAG,MAAM,GAAkC;AAC7E,SACE;AAAA,IAAC,iBAAAA,UAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,iBAAiB;AAAA,EACxB;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAAqC;AACnC,SACE,4CAAC,iBAAAA,UAAmB,QAAnB,EAA0B,WAAU,QACnC;AAAA,IAAC,iBAAAA,UAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA;AAAA,QAET;AAAA,QACA;AAAA;AAAA,QAEA;AAAA,QACA;AAAA;AAAA,QAEA;AAAA,QACA;AAAA;AAAA,QAEA;AAAA;AAAA,QAEA;AAAA,QACA;AAAA,QACA;AAAA;AAAA,QAEA;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEH;AAAA;AAAA,QACD;AAAA,UAAC;AAAA;AAAA,YACC,aAAU;AAAA,YACV,WAAW;AAAA,cACT;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,YACF;AAAA;AAAA,QACF;AAAA;AAAA;AAAA,EACF,GACF;AAEJ;AAEA,SAAS,iBAAiB;AAAA,EACxB;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAAmC;AACjC,SACE;AAAA,IAAC,iBAAAA,UAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA;AAAA,QAET;AAAA,QACA;AAAA,QACA;AAAA;AAAA,QAEA;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEJ;AAAA,QAAC;AAAA;AAAA,UACC,WAAW;AAAA,YACT;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,UACF;AAAA,UAEC;AAAA;AAAA,MACH;AAAA;AAAA,EACF;AAEJ;","names":["AccordionPrimitive"]}
@@ -0,0 +1,14 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { Accordion as Accordion$1 } from '@base-ui/react/accordion';
3
+
4
+ declare function Accordion({ className, ...props }: Accordion$1.Root.Props): react_jsx_runtime.JSX.Element;
5
+ declare function AccordionItem({ className, ...props }: Accordion$1.Item.Props): react_jsx_runtime.JSX.Element;
6
+ declare function AccordionTrigger({ className, children, ...props }: Accordion$1.Trigger.Props): react_jsx_runtime.JSX.Element;
7
+ declare function AccordionContent({ className, children, ...props }: Accordion$1.Panel.Props): react_jsx_runtime.JSX.Element;
8
+
9
+ type AccordionProps = React.ComponentProps<typeof Accordion>;
10
+ type AccordionItemProps = React.ComponentProps<typeof AccordionItem>;
11
+ type AccordionTriggerProps = React.ComponentProps<typeof AccordionTrigger>;
12
+ type AccordionContentProps = React.ComponentProps<typeof AccordionContent>;
13
+
14
+ export { Accordion, AccordionContent, type AccordionContentProps, AccordionItem, type AccordionItemProps, type AccordionProps, AccordionTrigger, type AccordionTriggerProps };
@@ -0,0 +1,14 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { Accordion as Accordion$1 } from '@base-ui/react/accordion';
3
+
4
+ declare function Accordion({ className, ...props }: Accordion$1.Root.Props): react_jsx_runtime.JSX.Element;
5
+ declare function AccordionItem({ className, ...props }: Accordion$1.Item.Props): react_jsx_runtime.JSX.Element;
6
+ declare function AccordionTrigger({ className, children, ...props }: Accordion$1.Trigger.Props): react_jsx_runtime.JSX.Element;
7
+ declare function AccordionContent({ className, children, ...props }: Accordion$1.Panel.Props): react_jsx_runtime.JSX.Element;
8
+
9
+ type AccordionProps = React.ComponentProps<typeof Accordion>;
10
+ type AccordionItemProps = React.ComponentProps<typeof AccordionItem>;
11
+ type AccordionTriggerProps = React.ComponentProps<typeof AccordionTrigger>;
12
+ type AccordionContentProps = React.ComponentProps<typeof AccordionContent>;
13
+
14
+ export { Accordion, AccordionContent, type AccordionContentProps, AccordionItem, type AccordionItemProps, type AccordionProps, AccordionTrigger, type AccordionTriggerProps };
@@ -0,0 +1,127 @@
1
+ "use client";
2
+
3
+ // src/components/accordion.tsx
4
+ import { Accordion as AccordionPrimitive } from "@base-ui/react/accordion";
5
+ import { ChevronDownIcon } from "lucide-react";
6
+
7
+ // src/lib/utils.ts
8
+ import { clsx } from "clsx";
9
+ import { twMerge } from "tailwind-merge";
10
+ function cn(...inputs) {
11
+ return twMerge(clsx(inputs));
12
+ }
13
+
14
+ // src/components/accordion.tsx
15
+ import { jsx, jsxs } from "react/jsx-runtime";
16
+ function Accordion({ className, ...props }) {
17
+ return /* @__PURE__ */ jsx(
18
+ AccordionPrimitive.Root,
19
+ {
20
+ "data-slot": "accordion",
21
+ className: cn("flex w-full flex-col", className),
22
+ ...props
23
+ }
24
+ );
25
+ }
26
+ function AccordionItem({ className, ...props }) {
27
+ return /* @__PURE__ */ jsx(
28
+ AccordionPrimitive.Item,
29
+ {
30
+ "data-slot": "accordion-item",
31
+ className: cn(
32
+ "not-last:border-b not-last:border-border-light",
33
+ className
34
+ ),
35
+ ...props
36
+ }
37
+ );
38
+ }
39
+ function AccordionTrigger({
40
+ className,
41
+ children,
42
+ ...props
43
+ }) {
44
+ return /* @__PURE__ */ jsx(AccordionPrimitive.Header, { className: "flex", children: /* @__PURE__ */ jsxs(
45
+ AccordionPrimitive.Trigger,
46
+ {
47
+ "data-slot": "accordion-trigger",
48
+ className: cn(
49
+ // Base
50
+ "no-highlight group/accordion-trigger relative flex flex-1 cursor-pointer items-start justify-between",
51
+ "rounded-md py-4 text-left text-sm font-medium outline-none",
52
+ // Transitions
53
+ "transition-[color,background-color,border-color,box-shadow,opacity] duration-150 ease-smooth",
54
+ "motion-reduce:transition-none",
55
+ // Hover & focus
56
+ "hover-only:hover:underline",
57
+ "focus-visible:focus-ring",
58
+ // Press feedback
59
+ "motion-safe:active:scale-[0.98]",
60
+ // Icon positioning
61
+ "**:data-[slot=accordion-trigger-icon]:ml-auto",
62
+ "**:data-[slot=accordion-trigger-icon]:size-4",
63
+ "**:data-[slot=accordion-trigger-icon]:text-muted-foreground",
64
+ // Disabled
65
+ "aria-disabled:status-disabled",
66
+ className
67
+ ),
68
+ ...props,
69
+ children: [
70
+ children,
71
+ /* @__PURE__ */ jsx(
72
+ ChevronDownIcon,
73
+ {
74
+ "data-slot": "accordion-trigger-icon",
75
+ className: cn(
76
+ "pointer-events-none shrink-0",
77
+ "transition-transform duration-200 ease-smooth",
78
+ "motion-reduce:transition-none",
79
+ "group-data-[panel-open]/accordion-trigger:rotate-180"
80
+ )
81
+ }
82
+ )
83
+ ]
84
+ }
85
+ ) });
86
+ }
87
+ function AccordionContent({
88
+ className,
89
+ children,
90
+ ...props
91
+ }) {
92
+ return /* @__PURE__ */ jsx(
93
+ AccordionPrimitive.Panel,
94
+ {
95
+ "data-slot": "accordion-content",
96
+ className: cn(
97
+ // Height animation (Base UI provides --accordion-panel-height)
98
+ "h-(--accordion-panel-height) overflow-hidden text-sm",
99
+ "transition-[height] duration-200 ease-smooth",
100
+ "motion-reduce:transition-none",
101
+ // Starting/ending at 0 height
102
+ "data-starting-style:h-0",
103
+ "data-ending-style:h-0"
104
+ ),
105
+ ...props,
106
+ children: /* @__PURE__ */ jsx(
107
+ "div",
108
+ {
109
+ className: cn(
110
+ "pt-0 pb-4",
111
+ "[&_a]:underline [&_a]:underline-offset-3 [&_a]:hover-only:hover:text-foreground",
112
+ "[&_p:not(:last-child)]:mb-4",
113
+ className
114
+ ),
115
+ children
116
+ }
117
+ )
118
+ }
119
+ );
120
+ }
121
+ export {
122
+ Accordion,
123
+ AccordionContent,
124
+ AccordionItem,
125
+ AccordionTrigger
126
+ };
127
+ //# sourceMappingURL=accordion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/components/accordion.tsx","../../src/lib/utils.ts"],"sourcesContent":["\"use client\";\n\nimport { Accordion as AccordionPrimitive } from \"@base-ui/react/accordion\";\nimport { ChevronDownIcon } from \"lucide-react\";\n\nimport { cn } from \"../lib/utils\";\n\nfunction Accordion({ className, ...props }: AccordionPrimitive.Root.Props) {\n return (\n <AccordionPrimitive.Root\n data-slot=\"accordion\"\n className={cn(\"flex w-full flex-col\", className)}\n {...props}\n />\n );\n}\n\nfunction AccordionItem({ className, ...props }: AccordionPrimitive.Item.Props) {\n return (\n <AccordionPrimitive.Item\n data-slot=\"accordion-item\"\n className={cn(\n \"not-last:border-b not-last:border-border-light\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AccordionTrigger({\n className,\n children,\n ...props\n}: AccordionPrimitive.Trigger.Props) {\n return (\n <AccordionPrimitive.Header className=\"flex\">\n <AccordionPrimitive.Trigger\n data-slot=\"accordion-trigger\"\n className={cn(\n // Base\n \"no-highlight group/accordion-trigger relative flex flex-1 cursor-pointer items-start justify-between\",\n \"rounded-md py-4 text-left text-sm font-medium outline-none\",\n // Transitions\n \"transition-[color,background-color,border-color,box-shadow,opacity] duration-150 ease-smooth\",\n \"motion-reduce:transition-none\",\n // Hover & focus\n \"hover-only:hover:underline\",\n \"focus-visible:focus-ring\",\n // Press feedback\n \"motion-safe:active:scale-[0.98]\",\n // Icon positioning\n \"**:data-[slot=accordion-trigger-icon]:ml-auto\",\n \"**:data-[slot=accordion-trigger-icon]:size-4\",\n \"**:data-[slot=accordion-trigger-icon]:text-muted-foreground\",\n // Disabled\n \"aria-disabled:status-disabled\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronDownIcon\n data-slot=\"accordion-trigger-icon\"\n className={cn(\n \"pointer-events-none shrink-0\",\n \"transition-transform duration-200 ease-smooth\",\n \"motion-reduce:transition-none\",\n \"group-data-[panel-open]/accordion-trigger:rotate-180\",\n )}\n />\n </AccordionPrimitive.Trigger>\n </AccordionPrimitive.Header>\n );\n}\n\nfunction AccordionContent({\n className,\n children,\n ...props\n}: AccordionPrimitive.Panel.Props) {\n return (\n <AccordionPrimitive.Panel\n data-slot=\"accordion-content\"\n className={cn(\n // Height animation (Base UI provides --accordion-panel-height)\n \"h-(--accordion-panel-height) overflow-hidden text-sm\",\n \"transition-[height] duration-200 ease-smooth\",\n \"motion-reduce:transition-none\",\n // Starting/ending at 0 height\n \"data-starting-style:h-0\",\n \"data-ending-style:h-0\",\n )}\n {...props}\n >\n <div\n className={cn(\n \"pt-0 pb-4\",\n \"[&_a]:underline [&_a]:underline-offset-3 [&_a]:hover-only:hover:text-foreground\",\n \"[&_p:not(:last-child)]:mb-4\",\n className,\n )}\n >\n {children}\n </div>\n </AccordionPrimitive.Panel>\n );\n}\n\nexport { Accordion, AccordionItem, AccordionTrigger, AccordionContent };\n\nexport type AccordionProps = React.ComponentProps<typeof Accordion>;\nexport type AccordionItemProps = React.ComponentProps<typeof AccordionItem>;\nexport type AccordionTriggerProps = React.ComponentProps<\n typeof AccordionTrigger\n>;\nexport type AccordionContentProps = React.ComponentProps<\n typeof AccordionContent\n>;\n","import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n"],"mappings":";;;AAEA,SAAS,aAAa,0BAA0B;AAChD,SAAS,uBAAuB;;;ACHhC,SAAS,YAA6B;AACtC,SAAS,eAAe;AAEjB,SAAS,MAAM,QAAsB;AAC1C,SAAO,QAAQ,KAAK,MAAM,CAAC;AAC7B;;;ADII,cA4BE,YA5BF;AAFJ,SAAS,UAAU,EAAE,WAAW,GAAG,MAAM,GAAkC;AACzE,SACE;AAAA,IAAC,mBAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAW,GAAG,wBAAwB,SAAS;AAAA,MAC9C,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,cAAc,EAAE,WAAW,GAAG,MAAM,GAAkC;AAC7E,SACE;AAAA,IAAC,mBAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,iBAAiB;AAAA,EACxB;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAAqC;AACnC,SACE,oBAAC,mBAAmB,QAAnB,EAA0B,WAAU,QACnC;AAAA,IAAC,mBAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA;AAAA,QAET;AAAA,QACA;AAAA;AAAA,QAEA;AAAA,QACA;AAAA;AAAA,QAEA;AAAA,QACA;AAAA;AAAA,QAEA;AAAA;AAAA,QAEA;AAAA,QACA;AAAA,QACA;AAAA;AAAA,QAEA;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEH;AAAA;AAAA,QACD;AAAA,UAAC;AAAA;AAAA,YACC,aAAU;AAAA,YACV,WAAW;AAAA,cACT;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,YACF;AAAA;AAAA,QACF;AAAA;AAAA;AAAA,EACF,GACF;AAEJ;AAEA,SAAS,iBAAiB;AAAA,EACxB;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAAmC;AACjC,SACE;AAAA,IAAC,mBAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA;AAAA,QAET;AAAA,QACA;AAAA,QACA;AAAA;AAAA,QAEA;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEJ;AAAA,QAAC;AAAA;AAAA,UACC,WAAW;AAAA,YACT;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,UACF;AAAA,UAEC;AAAA;AAAA,MACH;AAAA;AAAA,EACF;AAEJ;","names":[]}
@@ -0,0 +1,324 @@
1
+ "use strict";
2
+ "use client";
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
+
21
+ // src/components/alert-dialog.tsx
22
+ var alert_dialog_exports = {};
23
+ __export(alert_dialog_exports, {
24
+ AlertDialog: () => AlertDialog,
25
+ AlertDialogAction: () => AlertDialogAction,
26
+ AlertDialogCancel: () => AlertDialogCancel,
27
+ AlertDialogContent: () => AlertDialogContent,
28
+ AlertDialogDescription: () => AlertDialogDescription,
29
+ AlertDialogFooter: () => AlertDialogFooter,
30
+ AlertDialogHeader: () => AlertDialogHeader,
31
+ AlertDialogMedia: () => AlertDialogMedia,
32
+ AlertDialogOverlay: () => AlertDialogOverlay,
33
+ AlertDialogPortal: () => AlertDialogPortal,
34
+ AlertDialogTitle: () => AlertDialogTitle,
35
+ AlertDialogTrigger: () => AlertDialogTrigger
36
+ });
37
+ module.exports = __toCommonJS(alert_dialog_exports);
38
+ var import_alert_dialog = require("@base-ui/react/alert-dialog");
39
+
40
+ // src/lib/utils.ts
41
+ var import_clsx = require("clsx");
42
+ var import_tailwind_merge = require("tailwind-merge");
43
+ function cn(...inputs) {
44
+ return (0, import_tailwind_merge.twMerge)((0, import_clsx.clsx)(inputs));
45
+ }
46
+
47
+ // src/components/button.tsx
48
+ var import_button = require("@base-ui/react/button");
49
+ var import_class_variance_authority = require("class-variance-authority");
50
+ var import_jsx_runtime = require("react/jsx-runtime");
51
+ var buttonVariants = (0, import_class_variance_authority.cva)(
52
+ [
53
+ "inline-flex items-center justify-center whitespace-nowrap rounded-lg text-sm font-medium",
54
+ "transform-gpu transition-[color,background-color,border-color,box-shadow,opacity,transform] duration-150 ease-smooth",
55
+ "motion-reduce:transition-none",
56
+ "disabled:status-disabled",
57
+ "focus-visible:focus-ring",
58
+ "[&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0",
59
+ "shrink-0 group/button select-none no-highlight"
60
+ ],
61
+ {
62
+ variants: {
63
+ variant: {
64
+ default: [
65
+ // Base styles
66
+ "relative rounded-lg overflow-visible shadow-surface border border-primary dark:border-primary-dark",
67
+ "isolate text-primary-foreground [text-shadow:_0_1px_2px_oklch(0%_0_0_/_30%)]",
68
+ "[&>*]:relative [&>*]:z-[2]",
69
+ // Combined gradient layer with primary colors
70
+ "before:pointer-events-none before:absolute before:inset-[-0.5px] before:rounded-[inherit]",
71
+ "before:bg-gradient-to-br before:from-primary-light before:via-primary-middle before:to-primary-dark",
72
+ "before:dark:from-primary-light before:dark:via-primary-middle before:dark:to-primary-dark",
73
+ "before:z-[-1]",
74
+ // Additional outer border
75
+ "after:pointer-events-none after:absolute after:inset-[0.5px] after:rounded-[inherit]",
76
+ "after:bg-gradient-to-br after:from-primary after:to-primary-dark",
77
+ "after:z-[-1] after:transition-opacity after:duration-200 after:opacity-40 after:motion-reduce:transition-none",
78
+ // Hover state
79
+ "hover-only:after:opacity-100 hover-only:transition-opacity hover-only:duration-200"
80
+ ].join(" "),
81
+ destructive: "bg-destructive text-destructive-foreground hover-only:hover:bg-destructive-hover",
82
+ outline: [
83
+ // Base styles
84
+ "relative rounded-lg overflow-visible shadow-field border",
85
+ "isolate text-foreground",
86
+ "[&>*]:relative [&>*]:z-[2]",
87
+ // Background layer
88
+ "before:pointer-events-none before:absolute before:inset-[-0.5px] before:rounded-[inherit]",
89
+ "before:bg-gradient-to-br before:from-border-light before:via-border before:to-border-dark/50",
90
+ "before:dark:from-border-light before:dark:to-border-dark",
91
+ "before:z-[-1]",
92
+ // Inner background layer
93
+ "after:pointer-events-none after:absolute after:inset-[0.5px] after:rounded-[inherit]",
94
+ "after:bg-background",
95
+ "after:z-[-1]",
96
+ "after:transition-colors after:duration-200 after:ease-out after:motion-reduce:transition-none",
97
+ // Hover state
98
+ "hover-only:after:bg-muted"
99
+ ].join(" "),
100
+ secondary: "bg-secondary text-secondary-foreground hover-only:hover:bg-accent",
101
+ ghost: "hover-only:bg-accent hover-only:text-accent-foreground motion-safe:active:scale-100",
102
+ "primary-soft": "bg-primary-soft text-primary hover-only:hover:bg-primary-soft-hover",
103
+ "destructive-soft": "bg-destructive-soft text-destructive hover-only:hover:bg-destructive-soft-hover",
104
+ success: "bg-success text-success-foreground hover-only:hover:bg-success-hover",
105
+ warning: "bg-warning text-warning-foreground hover-only:hover:bg-warning-hover",
106
+ link: "dark:text-primary-light text-primary-dark underline-offset-4 hover-only:underline motion-safe:active:scale-100"
107
+ },
108
+ size: {
109
+ default: "h-9 gap-2 px-4 py-1 in-data-[slot=button-group]:rounded-md has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2 motion-safe:active:scale-[0.97]",
110
+ xs: "h-6 gap-1 rounded-lg px-2 text-xs in-data-[slot=button-group]:rounded-md has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3 motion-safe:active:scale-[0.985]",
111
+ sm: "h-8 gap-1.5 rounded-lg px-3 text-xs in-data-[slot=button-group]:rounded-md has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 motion-safe:active:scale-[0.98]",
112
+ lg: "h-10 gap-2 rounded-lg px-8 has-data-[icon=inline-end]:pr-3 has-data-[icon=inline-start]:pl-3 motion-safe:active:scale-[0.96]",
113
+ icon: "size-9 motion-safe:active:scale-[0.97]",
114
+ "icon-xs": "size-6 rounded-lg in-data-[slot=button-group]:rounded-md motion-safe:active:scale-[0.985]",
115
+ "icon-sm": "size-8 rounded-lg in-data-[slot=button-group]:rounded-md motion-safe:active:scale-[0.98]",
116
+ "icon-lg": "size-10 motion-safe:active:scale-[0.96]"
117
+ }
118
+ },
119
+ defaultVariants: {
120
+ variant: "default",
121
+ size: "default"
122
+ }
123
+ }
124
+ );
125
+ function Button({
126
+ className,
127
+ variant = "default",
128
+ size = "default",
129
+ isPending,
130
+ nativeButton,
131
+ render,
132
+ ...props
133
+ }) {
134
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
135
+ import_button.Button,
136
+ {
137
+ "data-slot": "button",
138
+ "data-pending": isPending || void 0,
139
+ "aria-disabled": isPending || void 0,
140
+ nativeButton: nativeButton ?? (render ? false : void 0),
141
+ render,
142
+ className: cn(
143
+ buttonVariants({ variant, size }),
144
+ isPending && "status-pending",
145
+ className
146
+ ),
147
+ ...props
148
+ }
149
+ );
150
+ }
151
+
152
+ // src/components/alert-dialog.tsx
153
+ var import_jsx_runtime2 = require("react/jsx-runtime");
154
+ function AlertDialog({ ...props }) {
155
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_alert_dialog.AlertDialog.Root, { "data-slot": "alert-dialog", ...props });
156
+ }
157
+ function AlertDialogTrigger({ ...props }) {
158
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_alert_dialog.AlertDialog.Trigger, { "data-slot": "alert-dialog-trigger", ...props });
159
+ }
160
+ function AlertDialogPortal({ ...props }) {
161
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_alert_dialog.AlertDialog.Portal, { "data-slot": "alert-dialog-portal", ...props });
162
+ }
163
+ function AlertDialogOverlay({
164
+ className,
165
+ ...props
166
+ }) {
167
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
168
+ import_alert_dialog.AlertDialog.Backdrop,
169
+ {
170
+ "data-slot": "alert-dialog-overlay",
171
+ className: cn(
172
+ "data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 bg-overlay-backdrop duration-200 supports-backdrop-filter:backdrop-blur-xs fixed inset-0 isolate z-50 transition motion-reduce:animate-none motion-reduce:transition-none",
173
+ className
174
+ ),
175
+ ...props
176
+ }
177
+ );
178
+ }
179
+ function AlertDialogContent({
180
+ className,
181
+ size = "default",
182
+ ...props
183
+ }) {
184
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(AlertDialogPortal, { children: [
185
+ /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(AlertDialogOverlay, {}),
186
+ /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
187
+ import_alert_dialog.AlertDialog.Popup,
188
+ {
189
+ "data-slot": "alert-dialog-content",
190
+ "data-size": size,
191
+ className: cn(
192
+ "bg-overlay text-overlay-foreground shadow-overlay data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-[0.98] data-open:zoom-in-[1.02] ring-border-light gap-6 rounded-xl p-6 ring-1 duration-200 ease-out-fluid data-[size=default]:max-w-xs data-[size=sm]:max-w-xs data-[size=default]:sm:max-w-lg group/alert-dialog-content fixed top-1/2 left-1/2 z-50 grid w-full -translate-x-1/2 -translate-y-1/2 outline-none transition data-entering:will-change-[opacity,transform] data-exiting:will-change-[opacity,transform] motion-reduce:animate-none motion-reduce:transition-none",
193
+ className
194
+ ),
195
+ ...props
196
+ }
197
+ )
198
+ ] });
199
+ }
200
+ function AlertDialogHeader({
201
+ className,
202
+ ...props
203
+ }) {
204
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
205
+ "div",
206
+ {
207
+ "data-slot": "alert-dialog-header",
208
+ className: cn(
209
+ "grid grid-rows-[auto_1fr] place-items-center gap-1.5 text-center has-data-[slot=alert-dialog-media]:grid-rows-[auto_auto_1fr] has-data-[slot=alert-dialog-media]:gap-x-6 sm:group-data-[size=default]/alert-dialog-content:place-items-start sm:group-data-[size=default]/alert-dialog-content:text-left sm:group-data-[size=default]/alert-dialog-content:has-data-[slot=alert-dialog-media]:grid-rows-[auto_1fr]",
210
+ className
211
+ ),
212
+ ...props
213
+ }
214
+ );
215
+ }
216
+ function AlertDialogFooter({
217
+ className,
218
+ ...props
219
+ }) {
220
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
221
+ "div",
222
+ {
223
+ "data-slot": "alert-dialog-footer",
224
+ className: cn(
225
+ "flex flex-col-reverse gap-2 group-data-[size=sm]/alert-dialog-content:grid group-data-[size=sm]/alert-dialog-content:grid-cols-2 sm:flex-row sm:justify-end",
226
+ className
227
+ ),
228
+ ...props
229
+ }
230
+ );
231
+ }
232
+ function AlertDialogMedia({
233
+ className,
234
+ ...props
235
+ }) {
236
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
237
+ "div",
238
+ {
239
+ "data-slot": "alert-dialog-media",
240
+ className: cn(
241
+ "bg-surface-secondary mb-2 inline-flex size-16 items-center justify-center rounded-md sm:group-data-[size=default]/alert-dialog-content:row-span-2 *:[svg:not([class*='size-'])]:size-8",
242
+ className
243
+ ),
244
+ ...props
245
+ }
246
+ );
247
+ }
248
+ function AlertDialogTitle({
249
+ className,
250
+ ...props
251
+ }) {
252
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
253
+ import_alert_dialog.AlertDialog.Title,
254
+ {
255
+ "data-slot": "alert-dialog-title",
256
+ className: cn(
257
+ "text-lg font-medium sm:group-data-[size=default]/alert-dialog-content:group-has-data-[slot=alert-dialog-media]/alert-dialog-content:col-start-2",
258
+ className
259
+ ),
260
+ ...props
261
+ }
262
+ );
263
+ }
264
+ function AlertDialogDescription({
265
+ className,
266
+ ...props
267
+ }) {
268
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
269
+ import_alert_dialog.AlertDialog.Description,
270
+ {
271
+ "data-slot": "alert-dialog-description",
272
+ className: cn(
273
+ "text-muted-foreground *:[a]:hover-only:hover:text-foreground text-sm text-balance md:text-pretty *:[a]:underline *:[a]:underline-offset-3",
274
+ className
275
+ ),
276
+ ...props
277
+ }
278
+ );
279
+ }
280
+ function AlertDialogAction({
281
+ className,
282
+ ...props
283
+ }) {
284
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
285
+ Button,
286
+ {
287
+ "data-slot": "alert-dialog-action",
288
+ className: cn(className),
289
+ ...props
290
+ }
291
+ );
292
+ }
293
+ function AlertDialogCancel({
294
+ className,
295
+ variant = "outline",
296
+ size = "default",
297
+ ...props
298
+ }) {
299
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
300
+ import_alert_dialog.AlertDialog.Close,
301
+ {
302
+ "data-slot": "alert-dialog-cancel",
303
+ className: cn(className),
304
+ render: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Button, { variant, size }),
305
+ ...props
306
+ }
307
+ );
308
+ }
309
+ // Annotate the CommonJS export names for ESM import in node:
310
+ 0 && (module.exports = {
311
+ AlertDialog,
312
+ AlertDialogAction,
313
+ AlertDialogCancel,
314
+ AlertDialogContent,
315
+ AlertDialogDescription,
316
+ AlertDialogFooter,
317
+ AlertDialogHeader,
318
+ AlertDialogMedia,
319
+ AlertDialogOverlay,
320
+ AlertDialogPortal,
321
+ AlertDialogTitle,
322
+ AlertDialogTrigger
323
+ });
324
+ //# sourceMappingURL=alert-dialog.cjs.map