@databricks/appkit-ui 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 (359) hide show
  1. package/CLAUDE.md +3 -0
  2. package/DCO +25 -0
  3. package/LICENSE +203 -0
  4. package/NOTICE.md +73 -0
  5. package/README.md +35 -0
  6. package/bin/setup-claude.js +190 -0
  7. package/dist/js/arrow/arrow-client.d.ts +64 -0
  8. package/dist/js/arrow/arrow-client.d.ts.map +1 -0
  9. package/dist/js/arrow/arrow-client.js +181 -0
  10. package/dist/js/arrow/arrow-client.js.map +1 -0
  11. package/dist/js/arrow/index.js +3 -0
  12. package/dist/js/arrow/lazy-arrow.d.ts +23 -0
  13. package/dist/js/arrow/lazy-arrow.d.ts.map +1 -0
  14. package/dist/js/arrow/lazy-arrow.js +86 -0
  15. package/dist/js/arrow/lazy-arrow.js.map +1 -0
  16. package/dist/js/constants.d.ts +10 -0
  17. package/dist/js/constants.d.ts.map +1 -0
  18. package/dist/js/constants.js +30 -0
  19. package/dist/js/constants.js.map +1 -0
  20. package/dist/js/index.d.ts +8 -0
  21. package/dist/js/index.js +8 -0
  22. package/dist/js/sse/connect-sse.d.ts +14 -0
  23. package/dist/js/sse/connect-sse.d.ts.map +1 -0
  24. package/dist/js/sse/connect-sse.js +128 -0
  25. package/dist/js/sse/connect-sse.js.map +1 -0
  26. package/dist/js/sse/types.d.ts +34 -0
  27. package/dist/js/sse/types.d.ts.map +1 -0
  28. package/dist/react/charts/area/index.d.ts +33 -0
  29. package/dist/react/charts/area/index.d.ts.map +1 -0
  30. package/dist/react/charts/area/index.js +29 -0
  31. package/dist/react/charts/area/index.js.map +1 -0
  32. package/dist/react/charts/bar/index.d.ts +43 -0
  33. package/dist/react/charts/bar/index.d.ts.map +1 -0
  34. package/dist/react/charts/bar/index.js +39 -0
  35. package/dist/react/charts/bar/index.js.map +1 -0
  36. package/dist/react/charts/base.d.ts +89 -0
  37. package/dist/react/charts/base.d.ts.map +1 -0
  38. package/dist/react/charts/base.js +123 -0
  39. package/dist/react/charts/base.js.map +1 -0
  40. package/dist/react/charts/chart-error-boundary.js +37 -0
  41. package/dist/react/charts/chart-error-boundary.js.map +1 -0
  42. package/dist/react/charts/constants.d.ts +22 -0
  43. package/dist/react/charts/constants.d.ts.map +1 -0
  44. package/dist/react/charts/constants.js +86 -0
  45. package/dist/react/charts/constants.js.map +1 -0
  46. package/dist/react/charts/create-chart.d.ts +26 -0
  47. package/dist/react/charts/create-chart.d.ts.map +1 -0
  48. package/dist/react/charts/create-chart.js +55 -0
  49. package/dist/react/charts/create-chart.js.map +1 -0
  50. package/dist/react/charts/empty.js +16 -0
  51. package/dist/react/charts/empty.js.map +1 -0
  52. package/dist/react/charts/error.js +16 -0
  53. package/dist/react/charts/error.js.map +1 -0
  54. package/dist/react/charts/heatmap/index.d.ts +42 -0
  55. package/dist/react/charts/heatmap/index.d.ts.map +1 -0
  56. package/dist/react/charts/heatmap/index.js +38 -0
  57. package/dist/react/charts/heatmap/index.js.map +1 -0
  58. package/dist/react/charts/index.js +18 -0
  59. package/dist/react/charts/line/index.d.ts +34 -0
  60. package/dist/react/charts/line/index.d.ts.map +1 -0
  61. package/dist/react/charts/line/index.js +30 -0
  62. package/dist/react/charts/line/index.js.map +1 -0
  63. package/dist/react/charts/loading.js +13 -0
  64. package/dist/react/charts/loading.js.map +1 -0
  65. package/dist/react/charts/normalize.d.ts +37 -0
  66. package/dist/react/charts/normalize.d.ts.map +1 -0
  67. package/dist/react/charts/normalize.js +256 -0
  68. package/dist/react/charts/normalize.js.map +1 -0
  69. package/dist/react/charts/options.d.ts +39 -0
  70. package/dist/react/charts/options.d.ts.map +1 -0
  71. package/dist/react/charts/options.js +212 -0
  72. package/dist/react/charts/options.js.map +1 -0
  73. package/dist/react/charts/pie/index.d.ts +57 -0
  74. package/dist/react/charts/pie/index.d.ts.map +1 -0
  75. package/dist/react/charts/pie/index.js +50 -0
  76. package/dist/react/charts/pie/index.js.map +1 -0
  77. package/dist/react/charts/radar/index.d.ts +32 -0
  78. package/dist/react/charts/radar/index.d.ts.map +1 -0
  79. package/dist/react/charts/radar/index.js +28 -0
  80. package/dist/react/charts/radar/index.js.map +1 -0
  81. package/dist/react/charts/scatter/index.d.ts +32 -0
  82. package/dist/react/charts/scatter/index.d.ts.map +1 -0
  83. package/dist/react/charts/scatter/index.js +28 -0
  84. package/dist/react/charts/scatter/index.js.map +1 -0
  85. package/dist/react/charts/theme.d.ts +23 -0
  86. package/dist/react/charts/theme.d.ts.map +1 -0
  87. package/dist/react/charts/theme.js +96 -0
  88. package/dist/react/charts/theme.js.map +1 -0
  89. package/dist/react/charts/types.d.ts +160 -0
  90. package/dist/react/charts/types.d.ts.map +1 -0
  91. package/dist/react/charts/types.js +17 -0
  92. package/dist/react/charts/types.js.map +1 -0
  93. package/dist/react/charts/utils.d.ts +36 -0
  94. package/dist/react/charts/utils.d.ts.map +1 -0
  95. package/dist/react/charts/utils.js +77 -0
  96. package/dist/react/charts/utils.js.map +1 -0
  97. package/dist/react/charts/wrapper.d.ts +65 -0
  98. package/dist/react/charts/wrapper.d.ts.map +1 -0
  99. package/dist/react/charts/wrapper.js +94 -0
  100. package/dist/react/charts/wrapper.js.map +1 -0
  101. package/dist/react/hooks/index.js +2 -0
  102. package/dist/react/hooks/types.d.ts +101 -0
  103. package/dist/react/hooks/types.d.ts.map +1 -0
  104. package/dist/react/hooks/use-analytics-query.d.ts +33 -0
  105. package/dist/react/hooks/use-analytics-query.d.ts.map +1 -0
  106. package/dist/react/hooks/use-analytics-query.js +146 -0
  107. package/dist/react/hooks/use-analytics-query.js.map +1 -0
  108. package/dist/react/hooks/use-chart-data.d.ts +54 -0
  109. package/dist/react/hooks/use-chart-data.d.ts.map +1 -0
  110. package/dist/react/hooks/use-chart-data.js +80 -0
  111. package/dist/react/hooks/use-chart-data.js.map +1 -0
  112. package/dist/react/hooks/use-mobile.js +21 -0
  113. package/dist/react/hooks/use-mobile.js.map +1 -0
  114. package/dist/react/hooks/use-query-hmr.js +19 -0
  115. package/dist/react/hooks/use-query-hmr.js.map +1 -0
  116. package/dist/react/index.d.ts +75 -0
  117. package/dist/react/index.js +79 -0
  118. package/dist/react/lib/format.js +42 -0
  119. package/dist/react/lib/format.js.map +1 -0
  120. package/dist/react/lib/utils.js +11 -0
  121. package/dist/react/lib/utils.js.map +1 -0
  122. package/dist/react/table/data-table.d.ts +47 -0
  123. package/dist/react/table/data-table.d.ts.map +1 -0
  124. package/dist/react/table/data-table.js +205 -0
  125. package/dist/react/table/data-table.js.map +1 -0
  126. package/dist/react/table/empty.js +16 -0
  127. package/dist/react/table/empty.js.map +1 -0
  128. package/dist/react/table/error.js +16 -0
  129. package/dist/react/table/error.js.map +1 -0
  130. package/dist/react/table/index.js +1 -0
  131. package/dist/react/table/loading.js +50 -0
  132. package/dist/react/table/loading.js.map +1 -0
  133. package/dist/react/table/table-wrapper.js +143 -0
  134. package/dist/react/table/table-wrapper.js.map +1 -0
  135. package/dist/react/table/types.d.ts +55 -0
  136. package/dist/react/table/types.d.ts.map +1 -0
  137. package/dist/react/ui/accordion.d.ts +25 -0
  138. package/dist/react/ui/accordion.d.ts.map +1 -0
  139. package/dist/react/ui/accordion.js +45 -0
  140. package/dist/react/ui/accordion.js.map +1 -0
  141. package/dist/react/ui/alert-dialog.d.ts +49 -0
  142. package/dist/react/ui/alert-dialog.d.ts.map +1 -0
  143. package/dist/react/ui/alert-dialog.js +82 -0
  144. package/dist/react/ui/alert-dialog.js.map +1 -0
  145. package/dist/react/ui/alert.d.ts +25 -0
  146. package/dist/react/ui/alert.d.ts.map +1 -0
  147. package/dist/react/ui/alert.js +38 -0
  148. package/dist/react/ui/alert.js.map +1 -0
  149. package/dist/react/ui/aspect-ratio.d.ts +10 -0
  150. package/dist/react/ui/aspect-ratio.d.ts.map +1 -0
  151. package/dist/react/ui/aspect-ratio.js +16 -0
  152. package/dist/react/ui/aspect-ratio.js.map +1 -0
  153. package/dist/react/ui/avatar.d.ts +20 -0
  154. package/dist/react/ui/avatar.d.ts.map +1 -0
  155. package/dist/react/ui/avatar.js +30 -0
  156. package/dist/react/ui/avatar.js.map +1 -0
  157. package/dist/react/ui/badge.d.ts +20 -0
  158. package/dist/react/ui/badge.d.ts.map +1 -0
  159. package/dist/react/ui/badge.js +26 -0
  160. package/dist/react/ui/badge.js.map +1 -0
  161. package/dist/react/ui/breadcrumb.d.ts +38 -0
  162. package/dist/react/ui/breadcrumb.d.ts.map +1 -0
  163. package/dist/react/ui/breadcrumb.js +71 -0
  164. package/dist/react/ui/breadcrumb.js.map +1 -0
  165. package/dist/react/ui/button-group.d.ts +29 -0
  166. package/dist/react/ui/button-group.d.ts.map +1 -0
  167. package/dist/react/ui/button-group.js +41 -0
  168. package/dist/react/ui/button-group.js.map +1 -0
  169. package/dist/react/ui/button.d.ts +22 -0
  170. package/dist/react/ui/button.d.ts.map +1 -0
  171. package/dist/react/ui/button.js +45 -0
  172. package/dist/react/ui/button.js.map +1 -0
  173. package/dist/react/ui/calendar.d.ts +27 -0
  174. package/dist/react/ui/calendar.d.ts.map +1 -0
  175. package/dist/react/ui/calendar.js +109 -0
  176. package/dist/react/ui/calendar.js.map +1 -0
  177. package/dist/react/ui/card.d.ts +35 -0
  178. package/dist/react/ui/card.d.ts.map +1 -0
  179. package/dist/react/ui/card.js +57 -0
  180. package/dist/react/ui/card.js.map +1 -0
  181. package/dist/react/ui/carousel.d.ts +48 -0
  182. package/dist/react/ui/carousel.d.ts.map +1 -0
  183. package/dist/react/ui/carousel.js +134 -0
  184. package/dist/react/ui/carousel.js.map +1 -0
  185. package/dist/react/ui/chart.d.ts +80 -0
  186. package/dist/react/ui/chart.d.ts.map +1 -0
  187. package/dist/react/ui/chart.js +143 -0
  188. package/dist/react/ui/chart.js.map +1 -0
  189. package/dist/react/ui/checkbox.d.ts +12 -0
  190. package/dist/react/ui/checkbox.d.ts.map +1 -0
  191. package/dist/react/ui/checkbox.js +24 -0
  192. package/dist/react/ui/checkbox.js.map +1 -0
  193. package/dist/react/ui/collapsible.d.ts +16 -0
  194. package/dist/react/ui/collapsible.d.ts.map +1 -0
  195. package/dist/react/ui/collapsible.js +26 -0
  196. package/dist/react/ui/collapsible.js.map +1 -0
  197. package/dist/react/ui/command.d.ts +53 -0
  198. package/dist/react/ui/command.d.ts.map +1 -0
  199. package/dist/react/ui/command.js +87 -0
  200. package/dist/react/ui/command.js.map +1 -0
  201. package/dist/react/ui/context-menu.d.ts +77 -0
  202. package/dist/react/ui/context-menu.d.ts.map +1 -0
  203. package/dist/react/ui/context-menu.js +125 -0
  204. package/dist/react/ui/context-menu.js.map +1 -0
  205. package/dist/react/ui/dialog.d.ts +48 -0
  206. package/dist/react/ui/dialog.d.ts.map +1 -0
  207. package/dist/react/ui/dialog.js +87 -0
  208. package/dist/react/ui/dialog.js.map +1 -0
  209. package/dist/react/ui/drawer.d.ts +45 -0
  210. package/dist/react/ui/drawer.d.ts.map +1 -0
  211. package/dist/react/ui/drawer.js +81 -0
  212. package/dist/react/ui/drawer.js.map +1 -0
  213. package/dist/react/ui/dropdown-menu.d.ts +78 -0
  214. package/dist/react/ui/dropdown-menu.d.ts.map +1 -0
  215. package/dist/react/ui/dropdown-menu.js +124 -0
  216. package/dist/react/ui/dropdown-menu.js.map +1 -0
  217. package/dist/react/ui/empty.d.ts +36 -0
  218. package/dist/react/ui/empty.d.ts.map +1 -0
  219. package/dist/react/ui/empty.js +62 -0
  220. package/dist/react/ui/empty.js.map +1 -0
  221. package/dist/react/ui/field.d.ts +65 -0
  222. package/dist/react/ui/field.d.ts.map +1 -0
  223. package/dist/react/ui/field.js +120 -0
  224. package/dist/react/ui/field.js.map +1 -0
  225. package/dist/react/ui/form.d.ts +46 -0
  226. package/dist/react/ui/form.d.ts.map +1 -0
  227. package/dist/react/ui/form.js +92 -0
  228. package/dist/react/ui/form.js.map +1 -0
  229. package/dist/react/ui/hover-card.d.ts +20 -0
  230. package/dist/react/ui/hover-card.d.ts.map +1 -0
  231. package/dist/react/ui/hover-card.js +35 -0
  232. package/dist/react/ui/hover-card.js.map +1 -0
  233. package/dist/react/ui/index.js +53 -0
  234. package/dist/react/ui/input-group.d.ts +44 -0
  235. package/dist/react/ui/input-group.d.ts.map +1 -0
  236. package/dist/react/ui/input-group.js +82 -0
  237. package/dist/react/ui/input-group.js.map +1 -0
  238. package/dist/react/ui/input-otp.d.ts +29 -0
  239. package/dist/react/ui/input-otp.d.ts.map +1 -0
  240. package/dist/react/ui/input-otp.js +47 -0
  241. package/dist/react/ui/input-otp.js.map +1 -0
  242. package/dist/react/ui/input.d.ts +12 -0
  243. package/dist/react/ui/input.d.ts.map +1 -0
  244. package/dist/react/ui/input.js +16 -0
  245. package/dist/react/ui/input.js.map +1 -0
  246. package/dist/react/ui/item.d.ts +63 -0
  247. package/dist/react/ui/item.d.ts.map +1 -0
  248. package/dist/react/ui/item.js +118 -0
  249. package/dist/react/ui/item.js.map +1 -0
  250. package/dist/react/ui/kbd.d.ts +14 -0
  251. package/dist/react/ui/kbd.d.ts.map +1 -0
  252. package/dist/react/ui/kbd.js +22 -0
  253. package/dist/react/ui/kbd.js.map +1 -0
  254. package/dist/react/ui/label.d.ts +12 -0
  255. package/dist/react/ui/label.d.ts.map +1 -0
  256. package/dist/react/ui/label.js +18 -0
  257. package/dist/react/ui/label.js.map +1 -0
  258. package/dist/react/ui/menubar.d.ts +85 -0
  259. package/dist/react/ui/menubar.d.ts.map +1 -0
  260. package/dist/react/ui/menubar.js +134 -0
  261. package/dist/react/ui/menubar.js.map +1 -0
  262. package/dist/react/ui/navigation-menu.d.ts +47 -0
  263. package/dist/react/ui/navigation-menu.d.ts.map +1 -0
  264. package/dist/react/ui/navigation-menu.js +82 -0
  265. package/dist/react/ui/navigation-menu.js.map +1 -0
  266. package/dist/react/ui/pagination.d.ts +40 -0
  267. package/dist/react/ui/pagination.d.ts.map +1 -0
  268. package/dist/react/ui/pagination.js +80 -0
  269. package/dist/react/ui/pagination.js.map +1 -0
  270. package/dist/react/ui/popover.d.ts +23 -0
  271. package/dist/react/ui/popover.d.ts.map +1 -0
  272. package/dist/react/ui/popover.js +38 -0
  273. package/dist/react/ui/popover.js.map +1 -0
  274. package/dist/react/ui/progress.d.ts +13 -0
  275. package/dist/react/ui/progress.d.ts.map +1 -0
  276. package/dist/react/ui/progress.js +21 -0
  277. package/dist/react/ui/progress.js.map +1 -0
  278. package/dist/react/ui/radio-group.d.ts +16 -0
  279. package/dist/react/ui/radio-group.d.ts.map +1 -0
  280. package/dist/react/ui/radio-group.js +31 -0
  281. package/dist/react/ui/radio-group.js.map +1 -0
  282. package/dist/react/ui/resizable.d.ts +22 -0
  283. package/dist/react/ui/resizable.d.ts.map +1 -0
  284. package/dist/react/ui/resizable.js +34 -0
  285. package/dist/react/ui/resizable.js.map +1 -0
  286. package/dist/react/ui/scroll-area.d.ts +18 -0
  287. package/dist/react/ui/scroll-area.d.ts.map +1 -0
  288. package/dist/react/ui/scroll-area.js +39 -0
  289. package/dist/react/ui/scroll-area.js.map +1 -0
  290. package/dist/react/ui/select.d.ts +53 -0
  291. package/dist/react/ui/select.d.ts.map +1 -0
  292. package/dist/react/ui/select.js +98 -0
  293. package/dist/react/ui/select.js.map +1 -0
  294. package/dist/react/ui/separator.d.ts +14 -0
  295. package/dist/react/ui/separator.d.ts.map +1 -0
  296. package/dist/react/ui/separator.js +20 -0
  297. package/dist/react/ui/separator.js.map +1 -0
  298. package/dist/react/ui/sheet.d.ts +41 -0
  299. package/dist/react/ui/sheet.d.ts.map +1 -0
  300. package/dist/react/ui/sheet.js +83 -0
  301. package/dist/react/ui/sheet.js.map +1 -0
  302. package/dist/react/ui/sidebar.d.ts +167 -0
  303. package/dist/react/ui/sidebar.d.ts.map +1 -0
  304. package/dist/react/ui/sidebar.js +379 -0
  305. package/dist/react/ui/sidebar.js.map +1 -0
  306. package/dist/react/ui/skeleton.d.ts +10 -0
  307. package/dist/react/ui/skeleton.d.ts.map +1 -0
  308. package/dist/react/ui/skeleton.js +15 -0
  309. package/dist/react/ui/skeleton.js.map +1 -0
  310. package/dist/react/ui/slider.d.ts +16 -0
  311. package/dist/react/ui/slider.d.ts.map +1 -0
  312. package/dist/react/ui/slider.js +40 -0
  313. package/dist/react/ui/slider.js.map +1 -0
  314. package/dist/react/ui/sonner.d.ts +10 -0
  315. package/dist/react/ui/sonner.d.ts.map +1 -0
  316. package/dist/react/ui/sonner.js +31 -0
  317. package/dist/react/ui/sonner.js.map +1 -0
  318. package/dist/react/ui/spinner.d.ts +10 -0
  319. package/dist/react/ui/spinner.d.ts.map +1 -0
  320. package/dist/react/ui/spinner.js +17 -0
  321. package/dist/react/ui/spinner.js.map +1 -0
  322. package/dist/react/ui/switch.d.ts +12 -0
  323. package/dist/react/ui/switch.d.ts.map +1 -0
  324. package/dist/react/ui/switch.js +22 -0
  325. package/dist/react/ui/switch.js.map +1 -0
  326. package/dist/react/ui/table.d.ts +39 -0
  327. package/dist/react/ui/table.d.ts.map +1 -0
  328. package/dist/react/ui/table.js +68 -0
  329. package/dist/react/ui/table.js.map +1 -0
  330. package/dist/react/ui/tabs.d.ts +24 -0
  331. package/dist/react/ui/tabs.d.ts.map +1 -0
  332. package/dist/react/ui/tabs.js +39 -0
  333. package/dist/react/ui/tabs.js.map +1 -0
  334. package/dist/react/ui/textarea.d.ts +11 -0
  335. package/dist/react/ui/textarea.d.ts.map +1 -0
  336. package/dist/react/ui/textarea.js +15 -0
  337. package/dist/react/ui/textarea.js.map +1 -0
  338. package/dist/react/ui/toggle-group.d.ts +27 -0
  339. package/dist/react/ui/toggle-group.d.ts.map +1 -0
  340. package/dist/react/ui/toggle-group.js +50 -0
  341. package/dist/react/ui/toggle-group.js.map +1 -0
  342. package/dist/react/ui/toggle.d.ts +20 -0
  343. package/dist/react/ui/toggle.d.ts.map +1 -0
  344. package/dist/react/ui/toggle.js +38 -0
  345. package/dist/react/ui/toggle.js.map +1 -0
  346. package/dist/react/ui/tooltip.d.ts +24 -0
  347. package/dist/react/ui/tooltip.d.ts.map +1 -0
  348. package/dist/react/ui/tooltip.js +39 -0
  349. package/dist/react/ui/tooltip.js.map +1 -0
  350. package/dist/shared/src/sql/helpers.d.ts +160 -0
  351. package/dist/shared/src/sql/helpers.d.ts.map +1 -0
  352. package/dist/shared/src/sql/helpers.js +103 -0
  353. package/dist/shared/src/sql/helpers.js.map +1 -0
  354. package/dist/shared/src/sql/types.d.ts +34 -0
  355. package/dist/shared/src/sql/types.d.ts.map +1 -0
  356. package/dist/styles.css +425 -0
  357. package/llms.txt +193 -0
  358. package/package.json +98 -0
  359. package/scripts/postinstall.js +6 -0
@@ -0,0 +1,87 @@
1
+ import { cn } from "../lib/utils.js";
2
+ import { Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle } from "./dialog.js";
3
+ import { jsx, jsxs } from "react/jsx-runtime";
4
+ import { SearchIcon } from "lucide-react";
5
+ import { Command } from "cmdk";
6
+
7
+ //#region src/react/ui/command.tsx
8
+ function Command$1({ className, ...props }) {
9
+ return /* @__PURE__ */ jsx(Command, {
10
+ "data-slot": "command",
11
+ className: cn("bg-popover text-popover-foreground flex h-full w-full flex-col overflow-hidden rounded-md", className),
12
+ ...props
13
+ });
14
+ }
15
+ function CommandDialog({ title = "Command Palette", description = "Search for a command to run...", children, className, showCloseButton = true, ...props }) {
16
+ return /* @__PURE__ */ jsxs(Dialog, {
17
+ ...props,
18
+ children: [/* @__PURE__ */ jsxs(DialogHeader, {
19
+ className: "sr-only",
20
+ children: [/* @__PURE__ */ jsx(DialogTitle, { children: title }), /* @__PURE__ */ jsx(DialogDescription, { children: description })]
21
+ }), /* @__PURE__ */ jsx(DialogContent, {
22
+ className: cn("overflow-hidden p-0", className),
23
+ showCloseButton,
24
+ children: /* @__PURE__ */ jsx(Command$1, {
25
+ className: "[&_[cmdk-group-heading]]:text-muted-foreground **:data-[slot=command-input-wrapper]:h-12 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group]]:px-2 [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5",
26
+ children
27
+ })
28
+ })]
29
+ });
30
+ }
31
+ function CommandInput({ className, ...props }) {
32
+ return /* @__PURE__ */ jsxs("div", {
33
+ "data-slot": "command-input-wrapper",
34
+ className: "flex h-9 items-center gap-2 border-b px-3",
35
+ children: [/* @__PURE__ */ jsx(SearchIcon, { className: "size-4 shrink-0 opacity-50" }), /* @__PURE__ */ jsx(Command.Input, {
36
+ "data-slot": "command-input",
37
+ className: cn("placeholder:text-muted-foreground flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-hidden disabled:cursor-not-allowed disabled:opacity-50", className),
38
+ ...props
39
+ })]
40
+ });
41
+ }
42
+ function CommandList({ className, ...props }) {
43
+ return /* @__PURE__ */ jsx(Command.List, {
44
+ "data-slot": "command-list",
45
+ className: cn("max-h-[300px] scroll-py-1 overflow-x-hidden overflow-y-auto", className),
46
+ ...props
47
+ });
48
+ }
49
+ function CommandEmpty({ ...props }) {
50
+ return /* @__PURE__ */ jsx(Command.Empty, {
51
+ "data-slot": "command-empty",
52
+ className: "py-6 text-center text-sm",
53
+ ...props
54
+ });
55
+ }
56
+ function CommandGroup({ className, ...props }) {
57
+ return /* @__PURE__ */ jsx(Command.Group, {
58
+ "data-slot": "command-group",
59
+ className: cn("text-foreground [&_[cmdk-group-heading]]:text-muted-foreground overflow-hidden p-1 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium", className),
60
+ ...props
61
+ });
62
+ }
63
+ function CommandSeparator({ className, ...props }) {
64
+ return /* @__PURE__ */ jsx(Command.Separator, {
65
+ "data-slot": "command-separator",
66
+ className: cn("bg-border -mx-1 h-px", className),
67
+ ...props
68
+ });
69
+ }
70
+ function CommandItem({ className, ...props }) {
71
+ return /* @__PURE__ */ jsx(Command.Item, {
72
+ "data-slot": "command-item",
73
+ className: cn("data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
74
+ ...props
75
+ });
76
+ }
77
+ function CommandShortcut({ className, ...props }) {
78
+ return /* @__PURE__ */ jsx("span", {
79
+ "data-slot": "command-shortcut",
80
+ className: cn("text-muted-foreground ml-auto text-xs tracking-widest", className),
81
+ ...props
82
+ });
83
+ }
84
+
85
+ //#endregion
86
+ export { Command$1 as Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut };
87
+ //# sourceMappingURL=command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command.js","names":["Command","CommandPrimitive"],"sources":["../../../src/react/ui/command.tsx"],"sourcesContent":["import type * as React from \"react\";\nimport { Command as CommandPrimitive } from \"cmdk\";\nimport { SearchIcon } from \"lucide-react\";\n\nimport { cn } from \"../lib/utils\";\nimport {\n Dialog,\n DialogContent,\n DialogDescription,\n DialogHeader,\n DialogTitle,\n} from \"./dialog\";\n\nfunction Command({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive>) {\n return (\n <CommandPrimitive\n data-slot=\"command\"\n className={cn(\n \"bg-popover text-popover-foreground flex h-full w-full flex-col overflow-hidden rounded-md\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction CommandDialog({\n title = \"Command Palette\",\n description = \"Search for a command to run...\",\n children,\n className,\n showCloseButton = true,\n ...props\n}: React.ComponentProps<typeof Dialog> & {\n title?: string;\n description?: string;\n className?: string;\n showCloseButton?: boolean;\n}) {\n return (\n <Dialog {...props}>\n <DialogHeader className=\"sr-only\">\n <DialogTitle>{title}</DialogTitle>\n <DialogDescription>{description}</DialogDescription>\n </DialogHeader>\n <DialogContent\n className={cn(\"overflow-hidden p-0\", className)}\n showCloseButton={showCloseButton}\n >\n <Command className=\"[&_[cmdk-group-heading]]:text-muted-foreground **:data-[slot=command-input-wrapper]:h-12 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group]]:px-2 [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5\">\n {children}\n </Command>\n </DialogContent>\n </Dialog>\n );\n}\n\nfunction CommandInput({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Input>) {\n return (\n <div\n data-slot=\"command-input-wrapper\"\n className=\"flex h-9 items-center gap-2 border-b px-3\"\n >\n <SearchIcon className=\"size-4 shrink-0 opacity-50\" />\n <CommandPrimitive.Input\n data-slot=\"command-input\"\n className={cn(\n \"placeholder:text-muted-foreground flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-hidden disabled:cursor-not-allowed disabled:opacity-50\",\n className,\n )}\n {...props}\n />\n </div>\n );\n}\n\nfunction CommandList({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.List>) {\n return (\n <CommandPrimitive.List\n data-slot=\"command-list\"\n className={cn(\n \"max-h-[300px] scroll-py-1 overflow-x-hidden overflow-y-auto\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction CommandEmpty({\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Empty>) {\n return (\n <CommandPrimitive.Empty\n data-slot=\"command-empty\"\n className=\"py-6 text-center text-sm\"\n {...props}\n />\n );\n}\n\nfunction CommandGroup({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Group>) {\n return (\n <CommandPrimitive.Group\n data-slot=\"command-group\"\n className={cn(\n \"text-foreground [&_[cmdk-group-heading]]:text-muted-foreground overflow-hidden p-1 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction CommandSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Separator>) {\n return (\n <CommandPrimitive.Separator\n data-slot=\"command-separator\"\n className={cn(\"bg-border -mx-1 h-px\", className)}\n {...props}\n />\n );\n}\n\nfunction CommandItem({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Item>) {\n return (\n <CommandPrimitive.Item\n data-slot=\"command-item\"\n className={cn(\n \"data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction CommandShortcut({\n className,\n ...props\n}: React.ComponentProps<\"span\">) {\n return (\n <span\n data-slot=\"command-shortcut\"\n className={cn(\n \"text-muted-foreground ml-auto text-xs tracking-widest\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n Command,\n CommandDialog,\n CommandInput,\n CommandList,\n CommandEmpty,\n CommandGroup,\n CommandItem,\n CommandShortcut,\n CommandSeparator,\n};\n"],"mappings":";;;;;;;AAaA,SAASA,UAAQ,EACf,WACA,GAAG,SAC6C;AAChD,QACE,oBAACC;EACC,aAAU;EACV,WAAW,GACT,6FACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,cAAc,EACrB,QAAQ,mBACR,cAAc,kCACd,UACA,WACA,kBAAkB,MAClB,GAAG,SAMF;AACD,QACE,qBAAC;EAAO,GAAI;aACV,qBAAC;GAAa,WAAU;cACtB,oBAAC,yBAAa,QAAoB,EAClC,oBAAC,+BAAmB,cAAgC;IACvC,EACf,oBAAC;GACC,WAAW,GAAG,uBAAuB,UAAU;GAC9B;aAEjB,oBAACD;IAAQ,WAAU;IAChB;KACO;IACI;GACT;;AAIb,SAAS,aAAa,EACpB,WACA,GAAG,SACmD;AACtD,QACE,qBAAC;EACC,aAAU;EACV,WAAU;aAEV,oBAAC,cAAW,WAAU,+BAA+B,EACrD,oBAACC,QAAiB;GAChB,aAAU;GACV,WAAW,GACT,4JACA,UACD;GACD,GAAI;IACJ;GACE;;AAIV,SAAS,YAAY,EACnB,WACA,GAAG,SACkD;AACrD,QACE,oBAACA,QAAiB;EAChB,aAAU;EACV,WAAW,GACT,+DACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,aAAa,EACpB,GAAG,SACmD;AACtD,QACE,oBAACA,QAAiB;EAChB,aAAU;EACV,WAAU;EACV,GAAI;GACJ;;AAIN,SAAS,aAAa,EACpB,WACA,GAAG,SACmD;AACtD,QACE,oBAACA,QAAiB;EAChB,aAAU;EACV,WAAW,GACT,0NACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,iBAAiB,EACxB,WACA,GAAG,SACuD;AAC1D,QACE,oBAACA,QAAiB;EAChB,aAAU;EACV,WAAW,GAAG,wBAAwB,UAAU;EAChD,GAAI;GACJ;;AAIN,SAAS,YAAY,EACnB,WACA,GAAG,SACkD;AACrD,QACE,oBAACA,QAAiB;EAChB,aAAU;EACV,WAAW,GACT,uYACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,gBAAgB,EACvB,WACA,GAAG,SAC4B;AAC/B,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,yDACA,UACD;EACD,GAAI;GACJ"}
@@ -0,0 +1,77 @@
1
+ import * as React from "react";
2
+ import * as react_jsx_runtime75 from "react/jsx-runtime";
3
+ import * as ContextMenuPrimitive from "@radix-ui/react-context-menu";
4
+
5
+ //#region src/react/ui/context-menu.d.ts
6
+ declare function ContextMenu({
7
+ ...props
8
+ }: React.ComponentProps<typeof ContextMenuPrimitive.Root>): react_jsx_runtime75.JSX.Element;
9
+ declare function ContextMenuTrigger({
10
+ ...props
11
+ }: React.ComponentProps<typeof ContextMenuPrimitive.Trigger>): react_jsx_runtime75.JSX.Element;
12
+ declare function ContextMenuGroup({
13
+ ...props
14
+ }: React.ComponentProps<typeof ContextMenuPrimitive.Group>): react_jsx_runtime75.JSX.Element;
15
+ declare function ContextMenuPortal({
16
+ ...props
17
+ }: React.ComponentProps<typeof ContextMenuPrimitive.Portal>): react_jsx_runtime75.JSX.Element;
18
+ declare function ContextMenuSub({
19
+ ...props
20
+ }: React.ComponentProps<typeof ContextMenuPrimitive.Sub>): react_jsx_runtime75.JSX.Element;
21
+ declare function ContextMenuRadioGroup({
22
+ ...props
23
+ }: React.ComponentProps<typeof ContextMenuPrimitive.RadioGroup>): react_jsx_runtime75.JSX.Element;
24
+ declare function ContextMenuSubTrigger({
25
+ className,
26
+ inset,
27
+ children,
28
+ ...props
29
+ }: React.ComponentProps<typeof ContextMenuPrimitive.SubTrigger> & {
30
+ inset?: boolean;
31
+ }): react_jsx_runtime75.JSX.Element;
32
+ declare function ContextMenuSubContent({
33
+ className,
34
+ ...props
35
+ }: React.ComponentProps<typeof ContextMenuPrimitive.SubContent>): react_jsx_runtime75.JSX.Element;
36
+ declare function ContextMenuContent({
37
+ className,
38
+ ...props
39
+ }: React.ComponentProps<typeof ContextMenuPrimitive.Content>): react_jsx_runtime75.JSX.Element;
40
+ declare function ContextMenuItem({
41
+ className,
42
+ inset,
43
+ variant,
44
+ ...props
45
+ }: React.ComponentProps<typeof ContextMenuPrimitive.Item> & {
46
+ inset?: boolean;
47
+ variant?: "default" | "destructive";
48
+ }): react_jsx_runtime75.JSX.Element;
49
+ declare function ContextMenuCheckboxItem({
50
+ className,
51
+ children,
52
+ checked,
53
+ ...props
54
+ }: React.ComponentProps<typeof ContextMenuPrimitive.CheckboxItem>): react_jsx_runtime75.JSX.Element;
55
+ declare function ContextMenuRadioItem({
56
+ className,
57
+ children,
58
+ ...props
59
+ }: React.ComponentProps<typeof ContextMenuPrimitive.RadioItem>): react_jsx_runtime75.JSX.Element;
60
+ declare function ContextMenuLabel({
61
+ className,
62
+ inset,
63
+ ...props
64
+ }: React.ComponentProps<typeof ContextMenuPrimitive.Label> & {
65
+ inset?: boolean;
66
+ }): react_jsx_runtime75.JSX.Element;
67
+ declare function ContextMenuSeparator({
68
+ className,
69
+ ...props
70
+ }: React.ComponentProps<typeof ContextMenuPrimitive.Separator>): react_jsx_runtime75.JSX.Element;
71
+ declare function ContextMenuShortcut({
72
+ className,
73
+ ...props
74
+ }: React.ComponentProps<"span">): react_jsx_runtime75.JSX.Element;
75
+ //#endregion
76
+ export { ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger };
77
+ //# sourceMappingURL=context-menu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context-menu.d.ts","names":[],"sources":["../../../src/react/ui/context-menu.tsx"],"sourcesContent":[],"mappings":";;;;;iBAQS,WAAA;;GAEN,KAAA,CAAM,sBAAsB,oBAAA,CAAqB,QAAK,mBAAA,CAAA,GAAA,CAAA;iBAIhD,kBAAA;;GAEN,KAAA,CAAM,sBAAsB,oBAAA,CAAqB,WAAQ,mBAAA,CAAA,GAAA,CAAA;iBAMnD,gBAAA;;GAEN,KAAA,CAAM,sBAAsB,oBAAA,CAAqB,SAAM,mBAAA,CAAA,GAAA,CAAA;AArBW,iBA2B5D,iBAAA,CAtBW;EAAA,GAAA;AAAA,CAAA,EAwBjB,KAAA,CAAM,cAxBW,CAAA,OAwBW,oBAAA,CAAqB,MAxBhC,CAAA,CAAA,EAwBuC,mBAAA,CAAA,GAAA,CAAA,OAxBvC;iBA8BX,cAAA,CA9BW;EAAA,GAAA;AAAA,CAAA,EAgCjB,KAAA,CAAM,cAhCW,CAAA,OAgCW,oBAAA,CAAqB,GAhChC,CAAA,CAAA,EAgCoC,mBAAA,CAAA,GAAA,CAAA,OAhCpC;iBAoCX,qBAAA,CAlC2C;EAAA,GAAA;AAAA,CAAA,EAoCjD,KAAA,CAAM,cApC2C,CAAA,OAoCrB,oBAAA,CAAqB,UApCA,CAAA,CAAA,EAoCW,mBAAA,CAAA,GAAA,CAAA,OApCX;iBA6C3C,qBAAA,CA7CA;EAAA,SAAA;EAAA,KAAA;EAAA,QAAA;EAAA,GAAA;CAAA,EAkDN,KAAA,CAAM,cAlDA,CAAA,OAkDsB,oBAAA,CAAqB,UAlD3C,CAAA,GAAA;OAAgD,CAAA,EAAA,OAAA;CAAA,CAAA,EAoDxD,mBAAA,CAAA,GAAA,CAAA,OApDwD;AAAA,iBAqEhD,qBAAA,CAjEkB;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAoExB,KAAA,CAAM,cApEkB,CAAA,OAoEI,oBAAA,CAAqB,UApEzB,CAAA,CAAA,EAoEoC,mBAAA,CAAA,GAAA,CAAA,OApEpC;iBAiFlB,kBAAA,CAjFkB;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAoFxB,KAAA,CAAM,cApFkB,CAAA,OAoFI,oBAAA,CAAqB,OApFzB,CAAA,CAAA,EAoFiC,mBAAA,CAAA,GAAA,CAAA,OApFjC;iBAmGlB,eAAA,CAjG2C;EAAA,SAAA;EAAA,KAAA;EAAA,OAAA;EAAA,GAAA;CAAA,EAsGjD,KAAA,CAAM,cAtG2C,CAAA,OAsGrB,oBAAA,CAAqB,IAtGA,CAAA,GAAA;OAAjD,CAAA,EAAA,OAAM;SAAmD,CAAA,EAAA,SAAA,GAAA,aAAA;CAAA,CAAA,EAyG3D,mBAAA,CAAA,GAAA,CAAA,OAzG2D;AAAA,iBAwHnD,uBAAA,CAlHgB;EAAA,SAAA;EAAA,QAAA;EAAA,OAAA;EAAA,GAAA;AAAA,CAAA,EAuHtB,KAAA,CAAM,cAvHgB,CAAA,OAuHM,oBAAA,CAAqB,YAvH3B,CAAA,CAAA,EAuHwC,mBAAA,CAAA,GAAA,CAAA,OAvHxC;iBA4IhB,oBAAA,CA5IgB;EAAA,SAAA;EAAA,QAAA;EAAA,GAAA;AAAA,CAAA,EAgJtB,KAAA,CAAM,cAhJgB,CAAA,OAgJM,oBAAA,CAAqB,SAhJ3B,CAAA,CAAA,EAgJqC,mBAAA,CAAA,GAAA,CAAA,OAhJrC;iBAoKhB,gBAAA,CAlK2C;EAAA,SAAA;EAAA,KAAA;EAAA,GAAA;CAAA,EAsKjD,KAAA,CAAM,cAtK2C,CAAA,OAsKrB,oBAAA,CAAqB,KAtKA,CAAA,GAAA;OAAjD,CAAA,EAAA,OAAM;IAwKR,mBAAA,CAAA,GAAA,CAAA,OAxKyD;iBAsLjD,oBAAA,CAtLiD;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAyLvD,KAAA,CAAM,cAzLiD,CAAA,OAyL3B,oBAAA,CAAqB,SAzLM,CAAA,CAAA,EAyLI,mBAAA,CAAA,GAAA,CAAA,OAzLJ;AAAA,iBAmMjD,mBAAA,CA7LiB;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAgMvB,KAAA,CAAM,cAhMiB,CAAA,MAAA,CAAA,CAAA,EAgMK,mBAAA,CAAA,GAAA,CAAA,OAhML"}
@@ -0,0 +1,125 @@
1
+ "use client";
2
+
3
+ import { cn } from "../lib/utils.js";
4
+ import { jsx, jsxs } from "react/jsx-runtime";
5
+ import { CheckIcon, ChevronRightIcon, CircleIcon } from "lucide-react";
6
+ import * as ContextMenuPrimitive from "@radix-ui/react-context-menu";
7
+
8
+ //#region src/react/ui/context-menu.tsx
9
+ function ContextMenu({ ...props }) {
10
+ return /* @__PURE__ */ jsx(ContextMenuPrimitive.Root, {
11
+ "data-slot": "context-menu",
12
+ ...props
13
+ });
14
+ }
15
+ function ContextMenuTrigger({ ...props }) {
16
+ return /* @__PURE__ */ jsx(ContextMenuPrimitive.Trigger, {
17
+ "data-slot": "context-menu-trigger",
18
+ ...props
19
+ });
20
+ }
21
+ function ContextMenuGroup({ ...props }) {
22
+ return /* @__PURE__ */ jsx(ContextMenuPrimitive.Group, {
23
+ "data-slot": "context-menu-group",
24
+ ...props
25
+ });
26
+ }
27
+ function ContextMenuPortal({ ...props }) {
28
+ return /* @__PURE__ */ jsx(ContextMenuPrimitive.Portal, {
29
+ "data-slot": "context-menu-portal",
30
+ ...props
31
+ });
32
+ }
33
+ function ContextMenuSub({ ...props }) {
34
+ return /* @__PURE__ */ jsx(ContextMenuPrimitive.Sub, {
35
+ "data-slot": "context-menu-sub",
36
+ ...props
37
+ });
38
+ }
39
+ function ContextMenuRadioGroup({ ...props }) {
40
+ return /* @__PURE__ */ jsx(ContextMenuPrimitive.RadioGroup, {
41
+ "data-slot": "context-menu-radio-group",
42
+ ...props
43
+ });
44
+ }
45
+ function ContextMenuSubTrigger({ className, inset, children, ...props }) {
46
+ return /* @__PURE__ */ jsxs(ContextMenuPrimitive.SubTrigger, {
47
+ "data-slot": "context-menu-sub-trigger",
48
+ "data-inset": inset,
49
+ className: cn("focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
50
+ ...props,
51
+ children: [children, /* @__PURE__ */ jsx(ChevronRightIcon, { className: "ml-auto" })]
52
+ });
53
+ }
54
+ function ContextMenuSubContent({ className, ...props }) {
55
+ return /* @__PURE__ */ jsx(ContextMenuPrimitive.SubContent, {
56
+ "data-slot": "context-menu-sub-content",
57
+ className: cn("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] origin-(--radix-context-menu-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-lg", className),
58
+ ...props
59
+ });
60
+ }
61
+ function ContextMenuContent({ className, ...props }) {
62
+ return /* @__PURE__ */ jsx(ContextMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx(ContextMenuPrimitive.Content, {
63
+ "data-slot": "context-menu-content",
64
+ className: cn("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-context-menu-content-available-height) min-w-[8rem] origin-(--radix-context-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md", className),
65
+ ...props
66
+ }) });
67
+ }
68
+ function ContextMenuItem({ className, inset, variant = "default", ...props }) {
69
+ return /* @__PURE__ */ jsx(ContextMenuPrimitive.Item, {
70
+ "data-slot": "context-menu-item",
71
+ "data-inset": inset,
72
+ "data-variant": variant,
73
+ className: cn("focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
74
+ ...props
75
+ });
76
+ }
77
+ function ContextMenuCheckboxItem({ className, children, checked, ...props }) {
78
+ return /* @__PURE__ */ jsxs(ContextMenuPrimitive.CheckboxItem, {
79
+ "data-slot": "context-menu-checkbox-item",
80
+ className: cn("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
81
+ checked,
82
+ ...props,
83
+ children: [/* @__PURE__ */ jsx("span", {
84
+ className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center",
85
+ children: /* @__PURE__ */ jsx(ContextMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx(CheckIcon, { className: "size-4" }) })
86
+ }), children]
87
+ });
88
+ }
89
+ function ContextMenuRadioItem({ className, children, ...props }) {
90
+ return /* @__PURE__ */ jsxs(ContextMenuPrimitive.RadioItem, {
91
+ "data-slot": "context-menu-radio-item",
92
+ className: cn("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
93
+ ...props,
94
+ children: [/* @__PURE__ */ jsx("span", {
95
+ className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center",
96
+ children: /* @__PURE__ */ jsx(ContextMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx(CircleIcon, { className: "size-2 fill-current" }) })
97
+ }), children]
98
+ });
99
+ }
100
+ function ContextMenuLabel({ className, inset, ...props }) {
101
+ return /* @__PURE__ */ jsx(ContextMenuPrimitive.Label, {
102
+ "data-slot": "context-menu-label",
103
+ "data-inset": inset,
104
+ className: cn("text-foreground px-2 py-1.5 text-sm font-medium data-[inset]:pl-8", className),
105
+ ...props
106
+ });
107
+ }
108
+ function ContextMenuSeparator({ className, ...props }) {
109
+ return /* @__PURE__ */ jsx(ContextMenuPrimitive.Separator, {
110
+ "data-slot": "context-menu-separator",
111
+ className: cn("bg-border -mx-1 my-1 h-px", className),
112
+ ...props
113
+ });
114
+ }
115
+ function ContextMenuShortcut({ className, ...props }) {
116
+ return /* @__PURE__ */ jsx("span", {
117
+ "data-slot": "context-menu-shortcut",
118
+ className: cn("text-muted-foreground ml-auto text-xs tracking-widest", className),
119
+ ...props
120
+ });
121
+ }
122
+
123
+ //#endregion
124
+ export { ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger };
125
+ //# sourceMappingURL=context-menu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context-menu.js","names":[],"sources":["../../../src/react/ui/context-menu.tsx"],"sourcesContent":["\"use client\";\n\nimport type * as React from \"react\";\nimport * as ContextMenuPrimitive from \"@radix-ui/react-context-menu\";\nimport { CheckIcon, ChevronRightIcon, CircleIcon } from \"lucide-react\";\n\nimport { cn } from \"../lib/utils\";\n\nfunction ContextMenu({\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.Root>) {\n return <ContextMenuPrimitive.Root data-slot=\"context-menu\" {...props} />;\n}\n\nfunction ContextMenuTrigger({\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.Trigger>) {\n return (\n <ContextMenuPrimitive.Trigger data-slot=\"context-menu-trigger\" {...props} />\n );\n}\n\nfunction ContextMenuGroup({\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.Group>) {\n return (\n <ContextMenuPrimitive.Group data-slot=\"context-menu-group\" {...props} />\n );\n}\n\nfunction ContextMenuPortal({\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.Portal>) {\n return (\n <ContextMenuPrimitive.Portal data-slot=\"context-menu-portal\" {...props} />\n );\n}\n\nfunction ContextMenuSub({\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.Sub>) {\n return <ContextMenuPrimitive.Sub data-slot=\"context-menu-sub\" {...props} />;\n}\n\nfunction ContextMenuRadioGroup({\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.RadioGroup>) {\n return (\n <ContextMenuPrimitive.RadioGroup\n data-slot=\"context-menu-radio-group\"\n {...props}\n />\n );\n}\n\nfunction ContextMenuSubTrigger({\n className,\n inset,\n children,\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.SubTrigger> & {\n inset?: boolean;\n}) {\n return (\n <ContextMenuPrimitive.SubTrigger\n data-slot=\"context-menu-sub-trigger\"\n data-inset={inset}\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"ml-auto\" />\n </ContextMenuPrimitive.SubTrigger>\n );\n}\n\nfunction ContextMenuSubContent({\n className,\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.SubContent>) {\n return (\n <ContextMenuPrimitive.SubContent\n data-slot=\"context-menu-sub-content\"\n className={cn(\n \"bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] origin-(--radix-context-menu-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-lg\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction ContextMenuContent({\n className,\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.Content>) {\n return (\n <ContextMenuPrimitive.Portal>\n <ContextMenuPrimitive.Content\n data-slot=\"context-menu-content\"\n className={cn(\n \"bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-context-menu-content-available-height) min-w-[8rem] origin-(--radix-context-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md\",\n className,\n )}\n {...props}\n />\n </ContextMenuPrimitive.Portal>\n );\n}\n\nfunction ContextMenuItem({\n className,\n inset,\n variant = \"default\",\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.Item> & {\n inset?: boolean;\n variant?: \"default\" | \"destructive\";\n}) {\n return (\n <ContextMenuPrimitive.Item\n data-slot=\"context-menu-item\"\n data-inset={inset}\n data-variant={variant}\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction ContextMenuCheckboxItem({\n className,\n children,\n checked,\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.CheckboxItem>) {\n return (\n <ContextMenuPrimitive.CheckboxItem\n data-slot=\"context-menu-checkbox-item\"\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n checked={checked}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center\">\n <ContextMenuPrimitive.ItemIndicator>\n <CheckIcon className=\"size-4\" />\n </ContextMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </ContextMenuPrimitive.CheckboxItem>\n );\n}\n\nfunction ContextMenuRadioItem({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.RadioItem>) {\n return (\n <ContextMenuPrimitive.RadioItem\n data-slot=\"context-menu-radio-item\"\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center\">\n <ContextMenuPrimitive.ItemIndicator>\n <CircleIcon className=\"size-2 fill-current\" />\n </ContextMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </ContextMenuPrimitive.RadioItem>\n );\n}\n\nfunction ContextMenuLabel({\n className,\n inset,\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.Label> & {\n inset?: boolean;\n}) {\n return (\n <ContextMenuPrimitive.Label\n data-slot=\"context-menu-label\"\n data-inset={inset}\n className={cn(\n \"text-foreground px-2 py-1.5 text-sm font-medium data-[inset]:pl-8\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction ContextMenuSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.Separator>) {\n return (\n <ContextMenuPrimitive.Separator\n data-slot=\"context-menu-separator\"\n className={cn(\"bg-border -mx-1 my-1 h-px\", className)}\n {...props}\n />\n );\n}\n\nfunction ContextMenuShortcut({\n className,\n ...props\n}: React.ComponentProps<\"span\">) {\n return (\n <span\n data-slot=\"context-menu-shortcut\"\n className={cn(\n \"text-muted-foreground ml-auto text-xs tracking-widest\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n ContextMenu,\n ContextMenuTrigger,\n ContextMenuContent,\n ContextMenuItem,\n ContextMenuCheckboxItem,\n ContextMenuRadioItem,\n ContextMenuLabel,\n ContextMenuSeparator,\n ContextMenuShortcut,\n ContextMenuGroup,\n ContextMenuPortal,\n ContextMenuSub,\n ContextMenuSubContent,\n ContextMenuSubTrigger,\n ContextMenuRadioGroup,\n};\n"],"mappings":";;;;;;;;AAQA,SAAS,YAAY,EACnB,GAAG,SACsD;AACzD,QAAO,oBAAC,qBAAqB;EAAK,aAAU;EAAe,GAAI;GAAS;;AAG1E,SAAS,mBAAmB,EAC1B,GAAG,SACyD;AAC5D,QACE,oBAAC,qBAAqB;EAAQ,aAAU;EAAuB,GAAI;GAAS;;AAIhF,SAAS,iBAAiB,EACxB,GAAG,SACuD;AAC1D,QACE,oBAAC,qBAAqB;EAAM,aAAU;EAAqB,GAAI;GAAS;;AAI5E,SAAS,kBAAkB,EACzB,GAAG,SACwD;AAC3D,QACE,oBAAC,qBAAqB;EAAO,aAAU;EAAsB,GAAI;GAAS;;AAI9E,SAAS,eAAe,EACtB,GAAG,SACqD;AACxD,QAAO,oBAAC,qBAAqB;EAAI,aAAU;EAAmB,GAAI;GAAS;;AAG7E,SAAS,sBAAsB,EAC7B,GAAG,SAC4D;AAC/D,QACE,oBAAC,qBAAqB;EACpB,aAAU;EACV,GAAI;GACJ;;AAIN,SAAS,sBAAsB,EAC7B,WACA,OACA,UACA,GAAG,SAGF;AACD,QACE,qBAAC,qBAAqB;EACpB,aAAU;EACV,cAAY;EACZ,WAAW,GACT,wWACA,UACD;EACD,GAAI;aAEH,UACD,oBAAC,oBAAiB,WAAU,YAAY;GACR;;AAItC,SAAS,sBAAsB,EAC7B,WACA,GAAG,SAC4D;AAC/D,QACE,oBAAC,qBAAqB;EACpB,aAAU;EACV,WAAW,GACT,gfACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,mBAAmB,EAC1B,WACA,GAAG,SACyD;AAC5D,QACE,oBAAC,qBAAqB,oBACpB,oBAAC,qBAAqB;EACpB,aAAU;EACV,WAAW,GACT,wjBACA,UACD;EACD,GAAI;GACJ,GAC0B;;AAIlC,SAAS,gBAAgB,EACvB,WACA,OACA,UAAU,WACV,GAAG,SAIF;AACD,QACE,oBAAC,qBAAqB;EACpB,aAAU;EACV,cAAY;EACZ,gBAAc;EACd,WAAW,GACT,+mBACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,wBAAwB,EAC/B,WACA,UACA,SACA,GAAG,SAC8D;AACjE,QACE,qBAAC,qBAAqB;EACpB,aAAU;EACV,WAAW,GACT,gTACA,UACD;EACQ;EACT,GAAI;aAEJ,oBAAC;GAAK,WAAU;aACd,oBAAC,qBAAqB,2BACpB,oBAAC,aAAU,WAAU,WAAW,GACG;IAChC,EACN;GACiC;;AAIxC,SAAS,qBAAqB,EAC5B,WACA,UACA,GAAG,SAC2D;AAC9D,QACE,qBAAC,qBAAqB;EACpB,aAAU;EACV,WAAW,GACT,gTACA,UACD;EACD,GAAI;aAEJ,oBAAC;GAAK,WAAU;aACd,oBAAC,qBAAqB,2BACpB,oBAAC,cAAW,WAAU,wBAAwB,GACX;IAChC,EACN;GAC8B;;AAIrC,SAAS,iBAAiB,EACxB,WACA,OACA,GAAG,SAGF;AACD,QACE,oBAAC,qBAAqB;EACpB,aAAU;EACV,cAAY;EACZ,WAAW,GACT,qEACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,qBAAqB,EAC5B,WACA,GAAG,SAC2D;AAC9D,QACE,oBAAC,qBAAqB;EACpB,aAAU;EACV,WAAW,GAAG,6BAA6B,UAAU;EACrD,GAAI;GACJ;;AAIN,SAAS,oBAAoB,EAC3B,WACA,GAAG,SAC4B;AAC/B,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,yDACA,UACD;EACD,GAAI;GACJ"}
@@ -0,0 +1,48 @@
1
+ import * as React from "react";
2
+ import * as react_jsx_runtime65 from "react/jsx-runtime";
3
+ import * as DialogPrimitive from "@radix-ui/react-dialog";
4
+
5
+ //#region src/react/ui/dialog.d.ts
6
+ declare function Dialog({
7
+ ...props
8
+ }: React.ComponentProps<typeof DialogPrimitive.Root>): react_jsx_runtime65.JSX.Element;
9
+ declare function DialogTrigger({
10
+ ...props
11
+ }: React.ComponentProps<typeof DialogPrimitive.Trigger>): react_jsx_runtime65.JSX.Element;
12
+ declare function DialogPortal({
13
+ ...props
14
+ }: React.ComponentProps<typeof DialogPrimitive.Portal>): react_jsx_runtime65.JSX.Element;
15
+ declare function DialogClose({
16
+ ...props
17
+ }: React.ComponentProps<typeof DialogPrimitive.Close>): react_jsx_runtime65.JSX.Element;
18
+ declare function DialogOverlay({
19
+ className,
20
+ ...props
21
+ }: React.ComponentProps<typeof DialogPrimitive.Overlay>): react_jsx_runtime65.JSX.Element;
22
+ declare function DialogContent({
23
+ className,
24
+ children,
25
+ showCloseButton,
26
+ ...props
27
+ }: React.ComponentProps<typeof DialogPrimitive.Content> & {
28
+ showCloseButton?: boolean;
29
+ }): react_jsx_runtime65.JSX.Element;
30
+ declare function DialogHeader({
31
+ className,
32
+ ...props
33
+ }: React.ComponentProps<"div">): react_jsx_runtime65.JSX.Element;
34
+ declare function DialogFooter({
35
+ className,
36
+ ...props
37
+ }: React.ComponentProps<"div">): react_jsx_runtime65.JSX.Element;
38
+ declare function DialogTitle({
39
+ className,
40
+ ...props
41
+ }: React.ComponentProps<typeof DialogPrimitive.Title>): react_jsx_runtime65.JSX.Element;
42
+ declare function DialogDescription({
43
+ className,
44
+ ...props
45
+ }: React.ComponentProps<typeof DialogPrimitive.Description>): react_jsx_runtime65.JSX.Element;
46
+ //#endregion
47
+ export { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger };
48
+ //# sourceMappingURL=dialog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dialog.d.ts","names":[],"sources":["../../../src/react/ui/dialog.tsx"],"sourcesContent":[],"mappings":";;;;;iBAMS,MAAA;;GAEN,KAAA,CAAM,sBAAsB,eAAA,CAAgB,QAAK,mBAAA,CAAA,GAAA,CAAA;iBAI3C,aAAA;;GAEN,KAAA,CAAM,sBAAsB,eAAA,CAAgB,WAAQ,mBAAA,CAAA,GAAA,CAAA;iBAI9C,YAAA;;GAEN,KAAA,CAAM,sBAAsB,eAAA,CAAgB,UAAO,mBAAA,CAAA,GAAA,CAAA;AAnBI,iBAuBjD,WAAA,CAlBM;EAAA,GAAA;AAAA,CAAA,EAoBZ,KAAA,CAAM,cApBM,CAAA,OAoBgB,eAAA,CAAgB,KApBhC,CAAA,CAAA,EAoBsC,mBAAA,CAAA,GAAA,CAAA,OApBtC;iBAwBN,aAAA,CAxBM;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EA2BZ,KAAA,CAAM,cA3BM,CAAA,OA2BgB,eAAA,CAAgB,OA3BhC,CAAA,CAAA,EA2BwC,mBAAA,CAAA,GAAA,CAAA,OA3BxC;iBAwCN,aAAA,CAtCsC;EAAA,SAAA;EAAA,QAAA;EAAA,eAAA;EAAA,GAAA;CAAA,EA2C5C,KAAA,CAAM,cA3CsC,CAAA,OA2ChB,eAAA,CAAgB,OA3CA,CAAA,GAAA;iBAAtC,CAAA,EAAA,OAAA;IA6CR,mBAAA,CAAA,GAAA,CAAA,OA7CmD;iBAwE3C,YAAA,CAxE2C;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAwEL,KAAA,CAAM,cAxED,CAAA,KAAA,CAAA,CAAA,EAwEsB,mBAAA,CAAA,GAAA,CAAA,OAxEtB;AAAA,iBAkF3C,YAAA,CA9Ea;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EA8EyB,KAAA,CAAM,cA9E/B,CAAA,KAAA,CAAA,CAAA,EA8EoD,mBAAA,CAAA,GAAA,CAAA,OA9EpD;iBA2Fb,WAAA,CA3Fa;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EA8FnB,KAAA,CAAM,cA9Fa,CAAA,OA8FS,eAAA,CAAgB,KA9FzB,CAAA,CAAA,EA8F+B,mBAAA,CAAA,GAAA,CAAA,OA9F/B;iBAwGb,iBAAA,CAtGsC;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAyG5C,KAAA,CAAM,cAzGsC,CAAA,OAyGhB,eAAA,CAAgB,WAzGA,CAAA,CAAA,EAyGY,mBAAA,CAAA,GAAA,CAAA,OAzGZ"}
@@ -0,0 +1,87 @@
1
+ import { cn } from "../lib/utils.js";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
3
+ import { XIcon } from "lucide-react";
4
+ import * as DialogPrimitive from "@radix-ui/react-dialog";
5
+
6
+ //#region src/react/ui/dialog.tsx
7
+ function Dialog({ ...props }) {
8
+ return /* @__PURE__ */ jsx(DialogPrimitive.Root, {
9
+ "data-slot": "dialog",
10
+ ...props
11
+ });
12
+ }
13
+ function DialogTrigger({ ...props }) {
14
+ return /* @__PURE__ */ jsx(DialogPrimitive.Trigger, {
15
+ "data-slot": "dialog-trigger",
16
+ ...props
17
+ });
18
+ }
19
+ function DialogPortal({ ...props }) {
20
+ return /* @__PURE__ */ jsx(DialogPrimitive.Portal, {
21
+ "data-slot": "dialog-portal",
22
+ ...props
23
+ });
24
+ }
25
+ function DialogClose({ ...props }) {
26
+ return /* @__PURE__ */ jsx(DialogPrimitive.Close, {
27
+ "data-slot": "dialog-close",
28
+ ...props
29
+ });
30
+ }
31
+ function DialogOverlay({ className, ...props }) {
32
+ return /* @__PURE__ */ jsx(DialogPrimitive.Overlay, {
33
+ "data-slot": "dialog-overlay",
34
+ className: cn("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50", className),
35
+ ...props
36
+ });
37
+ }
38
+ function DialogContent({ className, children, showCloseButton = true, ...props }) {
39
+ return /* @__PURE__ */ jsxs(DialogPortal, {
40
+ "data-slot": "dialog-portal",
41
+ children: [/* @__PURE__ */ jsx(DialogOverlay, {}), /* @__PURE__ */ jsxs(DialogPrimitive.Content, {
42
+ "data-slot": "dialog-content",
43
+ className: cn("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg", className),
44
+ ...props,
45
+ children: [children, showCloseButton && /* @__PURE__ */ jsxs(DialogPrimitive.Close, {
46
+ "data-slot": "dialog-close",
47
+ className: "ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
48
+ children: [/* @__PURE__ */ jsx(XIcon, {}), /* @__PURE__ */ jsx("span", {
49
+ className: "sr-only",
50
+ children: "Close"
51
+ })]
52
+ })]
53
+ })]
54
+ });
55
+ }
56
+ function DialogHeader({ className, ...props }) {
57
+ return /* @__PURE__ */ jsx("div", {
58
+ "data-slot": "dialog-header",
59
+ className: cn("flex flex-col gap-2 text-center sm:text-left", className),
60
+ ...props
61
+ });
62
+ }
63
+ function DialogFooter({ className, ...props }) {
64
+ return /* @__PURE__ */ jsx("div", {
65
+ "data-slot": "dialog-footer",
66
+ className: cn("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end", className),
67
+ ...props
68
+ });
69
+ }
70
+ function DialogTitle({ className, ...props }) {
71
+ return /* @__PURE__ */ jsx(DialogPrimitive.Title, {
72
+ "data-slot": "dialog-title",
73
+ className: cn("text-lg leading-none font-semibold", className),
74
+ ...props
75
+ });
76
+ }
77
+ function DialogDescription({ className, ...props }) {
78
+ return /* @__PURE__ */ jsx(DialogPrimitive.Description, {
79
+ "data-slot": "dialog-description",
80
+ className: cn("text-muted-foreground text-sm", className),
81
+ ...props
82
+ });
83
+ }
84
+
85
+ //#endregion
86
+ export { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger };
87
+ //# sourceMappingURL=dialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dialog.js","names":[],"sources":["../../../src/react/ui/dialog.tsx"],"sourcesContent":["import type * as React from \"react\";\nimport * as DialogPrimitive from \"@radix-ui/react-dialog\";\nimport { XIcon } from \"lucide-react\";\n\nimport { cn } from \"../lib/utils\";\n\nfunction Dialog({\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Root>) {\n return <DialogPrimitive.Root data-slot=\"dialog\" {...props} />;\n}\n\nfunction DialogTrigger({\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Trigger>) {\n return <DialogPrimitive.Trigger data-slot=\"dialog-trigger\" {...props} />;\n}\n\nfunction DialogPortal({\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Portal>) {\n return <DialogPrimitive.Portal data-slot=\"dialog-portal\" {...props} />;\n}\n\nfunction DialogClose({\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Close>) {\n return <DialogPrimitive.Close data-slot=\"dialog-close\" {...props} />;\n}\n\nfunction DialogOverlay({\n className,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Overlay>) {\n return (\n <DialogPrimitive.Overlay\n data-slot=\"dialog-overlay\"\n className={cn(\n \"data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction DialogContent({\n className,\n children,\n showCloseButton = true,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Content> & {\n showCloseButton?: boolean;\n}) {\n return (\n <DialogPortal data-slot=\"dialog-portal\">\n <DialogOverlay />\n <DialogPrimitive.Content\n data-slot=\"dialog-content\"\n className={cn(\n \"bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg\",\n className,\n )}\n {...props}\n >\n {children}\n {showCloseButton && (\n <DialogPrimitive.Close\n data-slot=\"dialog-close\"\n className=\"ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\"\n >\n <XIcon />\n <span className=\"sr-only\">Close</span>\n </DialogPrimitive.Close>\n )}\n </DialogPrimitive.Content>\n </DialogPortal>\n );\n}\n\nfunction DialogHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"dialog-header\"\n className={cn(\"flex flex-col gap-2 text-center sm:text-left\", className)}\n {...props}\n />\n );\n}\n\nfunction DialogFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"dialog-footer\"\n className={cn(\n \"flex flex-col-reverse gap-2 sm:flex-row sm:justify-end\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction DialogTitle({\n className,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Title>) {\n return (\n <DialogPrimitive.Title\n data-slot=\"dialog-title\"\n className={cn(\"text-lg leading-none font-semibold\", className)}\n {...props}\n />\n );\n}\n\nfunction DialogDescription({\n className,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Description>) {\n return (\n <DialogPrimitive.Description\n data-slot=\"dialog-description\"\n className={cn(\"text-muted-foreground text-sm\", className)}\n {...props}\n />\n );\n}\n\nexport {\n Dialog,\n DialogClose,\n DialogContent,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogOverlay,\n DialogPortal,\n DialogTitle,\n DialogTrigger,\n};\n"],"mappings":";;;;;;AAMA,SAAS,OAAO,EACd,GAAG,SACiD;AACpD,QAAO,oBAAC,gBAAgB;EAAK,aAAU;EAAS,GAAI;GAAS;;AAG/D,SAAS,cAAc,EACrB,GAAG,SACoD;AACvD,QAAO,oBAAC,gBAAgB;EAAQ,aAAU;EAAiB,GAAI;GAAS;;AAG1E,SAAS,aAAa,EACpB,GAAG,SACmD;AACtD,QAAO,oBAAC,gBAAgB;EAAO,aAAU;EAAgB,GAAI;GAAS;;AAGxE,SAAS,YAAY,EACnB,GAAG,SACkD;AACrD,QAAO,oBAAC,gBAAgB;EAAM,aAAU;EAAe,GAAI;GAAS;;AAGtE,SAAS,cAAc,EACrB,WACA,GAAG,SACoD;AACvD,QACE,oBAAC,gBAAgB;EACf,aAAU;EACV,WAAW,GACT,0JACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,cAAc,EACrB,WACA,UACA,kBAAkB,MAClB,GAAG,SAGF;AACD,QACE,qBAAC;EAAa,aAAU;aACtB,oBAAC,kBAAgB,EACjB,qBAAC,gBAAgB;GACf,aAAU;GACV,WAAW,GACT,+WACA,UACD;GACD,GAAI;cAEH,UACA,mBACC,qBAAC,gBAAgB;IACf,aAAU;IACV,WAAU;eAEV,oBAAC,UAAQ,EACT,oBAAC;KAAK,WAAU;eAAU;MAAY;KAChB;IAEF;GACb;;AAInB,SAAS,aAAa,EAAE,WAAW,GAAG,SAAsC;AAC1E,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GAAG,gDAAgD,UAAU;EACxE,GAAI;GACJ;;AAIN,SAAS,aAAa,EAAE,WAAW,GAAG,SAAsC;AAC1E,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,0DACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,YAAY,EACnB,WACA,GAAG,SACkD;AACrD,QACE,oBAAC,gBAAgB;EACf,aAAU;EACV,WAAW,GAAG,sCAAsC,UAAU;EAC9D,GAAI;GACJ;;AAIN,SAAS,kBAAkB,EACzB,WACA,GAAG,SACwD;AAC3D,QACE,oBAAC,gBAAgB;EACf,aAAU;EACV,WAAW,GAAG,iCAAiC,UAAU;EACzD,GAAI;GACJ"}
@@ -0,0 +1,45 @@
1
+ import * as React from "react";
2
+ import * as react_jsx_runtime90 from "react/jsx-runtime";
3
+ import { Drawer } from "vaul";
4
+
5
+ //#region src/react/ui/drawer.d.ts
6
+ declare function Drawer$1({
7
+ ...props
8
+ }: React.ComponentProps<typeof Drawer.Root>): react_jsx_runtime90.JSX.Element;
9
+ declare function DrawerTrigger({
10
+ ...props
11
+ }: React.ComponentProps<typeof Drawer.Trigger>): react_jsx_runtime90.JSX.Element;
12
+ declare function DrawerPortal({
13
+ ...props
14
+ }: React.ComponentProps<typeof Drawer.Portal>): react_jsx_runtime90.JSX.Element;
15
+ declare function DrawerClose({
16
+ ...props
17
+ }: React.ComponentProps<typeof Drawer.Close>): react_jsx_runtime90.JSX.Element;
18
+ declare function DrawerOverlay({
19
+ className,
20
+ ...props
21
+ }: React.ComponentProps<typeof Drawer.Overlay>): react_jsx_runtime90.JSX.Element;
22
+ declare function DrawerContent({
23
+ className,
24
+ children,
25
+ ...props
26
+ }: React.ComponentProps<typeof Drawer.Content>): react_jsx_runtime90.JSX.Element;
27
+ declare function DrawerHeader({
28
+ className,
29
+ ...props
30
+ }: React.ComponentProps<"div">): react_jsx_runtime90.JSX.Element;
31
+ declare function DrawerFooter({
32
+ className,
33
+ ...props
34
+ }: React.ComponentProps<"div">): react_jsx_runtime90.JSX.Element;
35
+ declare function DrawerTitle({
36
+ className,
37
+ ...props
38
+ }: React.ComponentProps<typeof Drawer.Title>): react_jsx_runtime90.JSX.Element;
39
+ declare function DrawerDescription({
40
+ className,
41
+ ...props
42
+ }: React.ComponentProps<typeof Drawer.Description>): react_jsx_runtime90.JSX.Element;
43
+ //#endregion
44
+ export { Drawer$1 as Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger };
45
+ //# sourceMappingURL=drawer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"drawer.d.ts","names":[],"sources":["../../../src/react/ui/drawer.tsx"],"sourcesContent":[],"mappings":";;;;;iBAOS,QAAA;;GAEN,KAAA,CAAM,sBAAsB,MAAA,CAAgB,QAAK,mBAAA,CAAA,GAAA,CAAA;iBAI3C,aAAA;;GAEN,KAAA,CAAM,sBAAsB,MAAA,CAAgB,WAAQ,mBAAA,CAAA,GAAA,CAAA;iBAI9C,YAAA;;GAEN,KAAA,CAAM,sBAAsB,MAAA,CAAgB,UAAO,mBAAA,CAAA,GAAA,CAAA;AAlBL,iBAsBxC,WAAA,CAlBM;EAAA,GAAA;AAAA,CAAA,EAoBZ,KAAA,CAAM,cApBM,CAAA,OAoBgB,MAAA,CAAgB,KApBhC,CAAA,CAAA,EAoBsC,mBAAA,CAAA,GAAA,CAAA,OApBtC;iBAwBN,aAAA,CAxBM;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EA2BZ,KAAA,CAAM,cA3BM,CAAA,OA2BgB,MAAA,CAAgB,OA3BhC,CAAA,CAAA,EA2BwC,mBAAA,CAAA,GAAA,CAAA,OA3BxC;iBAwCN,aAAA,CAtCsC;EAAA,SAAA;EAAA,QAAA;EAAA,GAAA;AAAA,CAAA,EA0C5C,KAAA,CAAM,cA1CsC,CAAA,OA0ChB,MAAA,CAAgB,OA1CA,CAAA,CAAA,EA0CQ,mBAAA,CAAA,GAAA,CAAA,OA1CR;iBAiEtC,YAAA,CAjEA;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAiEsC,KAAA,CAAM,cAjE5C,CAAA,KAAA,CAAA,CAAA,EAiEiE,mBAAA,CAAA,GAAA,CAAA,OAjEjE;iBA8EA,YAAA,CA9E2C;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EA8EL,KAAA,CAAM,cA9ED,CAAA,KAAA,CAAA,CAAA,EA8EsB,mBAAA,CAAA,GAAA,CAAA,OA9EtB;iBAwF3C,WAAA,CAxF2C;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EA2FjD,KAAA,CAAM,cA3F2C,CAAA,OA2FrB,MAAA,CAAgB,KA3FK,CAAA,CAAA,EA2FC,mBAAA,CAAA,GAAA,CAAA,OA3FD;AAAA,iBAqG3C,iBAAA,CAjGa;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAoGnB,KAAA,CAAM,cApGa,CAAA,OAoGS,MAAA,CAAgB,WApGzB,CAAA,CAAA,EAoGqC,mBAAA,CAAA,GAAA,CAAA,OApGrC"}
@@ -0,0 +1,81 @@
1
+ "use client";
2
+
3
+ import { cn } from "../lib/utils.js";
4
+ import { jsx, jsxs } from "react/jsx-runtime";
5
+ import { Drawer } from "vaul";
6
+
7
+ //#region src/react/ui/drawer.tsx
8
+ function Drawer$1({ ...props }) {
9
+ return /* @__PURE__ */ jsx(Drawer.Root, {
10
+ "data-slot": "drawer",
11
+ ...props
12
+ });
13
+ }
14
+ function DrawerTrigger({ ...props }) {
15
+ return /* @__PURE__ */ jsx(Drawer.Trigger, {
16
+ "data-slot": "drawer-trigger",
17
+ ...props
18
+ });
19
+ }
20
+ function DrawerPortal({ ...props }) {
21
+ return /* @__PURE__ */ jsx(Drawer.Portal, {
22
+ "data-slot": "drawer-portal",
23
+ ...props
24
+ });
25
+ }
26
+ function DrawerClose({ ...props }) {
27
+ return /* @__PURE__ */ jsx(Drawer.Close, {
28
+ "data-slot": "drawer-close",
29
+ ...props
30
+ });
31
+ }
32
+ function DrawerOverlay({ className, ...props }) {
33
+ return /* @__PURE__ */ jsx(Drawer.Overlay, {
34
+ "data-slot": "drawer-overlay",
35
+ className: cn("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50", className),
36
+ ...props
37
+ });
38
+ }
39
+ function DrawerContent({ className, children, ...props }) {
40
+ return /* @__PURE__ */ jsxs(DrawerPortal, {
41
+ "data-slot": "drawer-portal",
42
+ children: [/* @__PURE__ */ jsx(DrawerOverlay, {}), /* @__PURE__ */ jsxs(Drawer.Content, {
43
+ "data-slot": "drawer-content",
44
+ className: cn("group/drawer-content bg-background fixed z-50 flex h-auto flex-col", "data-[vaul-drawer-direction=top]:inset-x-0 data-[vaul-drawer-direction=top]:top-0 data-[vaul-drawer-direction=top]:mb-24 data-[vaul-drawer-direction=top]:max-h-[80vh] data-[vaul-drawer-direction=top]:rounded-b-lg data-[vaul-drawer-direction=top]:border-b", "data-[vaul-drawer-direction=bottom]:inset-x-0 data-[vaul-drawer-direction=bottom]:bottom-0 data-[vaul-drawer-direction=bottom]:mt-24 data-[vaul-drawer-direction=bottom]:max-h-[80vh] data-[vaul-drawer-direction=bottom]:rounded-t-lg data-[vaul-drawer-direction=bottom]:border-t", "data-[vaul-drawer-direction=right]:inset-y-0 data-[vaul-drawer-direction=right]:right-0 data-[vaul-drawer-direction=right]:w-3/4 data-[vaul-drawer-direction=right]:border-l data-[vaul-drawer-direction=right]:sm:max-w-sm", "data-[vaul-drawer-direction=left]:inset-y-0 data-[vaul-drawer-direction=left]:left-0 data-[vaul-drawer-direction=left]:w-3/4 data-[vaul-drawer-direction=left]:border-r data-[vaul-drawer-direction=left]:sm:max-w-sm", className),
45
+ ...props,
46
+ children: [/* @__PURE__ */ jsx("div", { className: "bg-muted mx-auto mt-4 hidden h-2 w-[100px] shrink-0 rounded-full group-data-[vaul-drawer-direction=bottom]/drawer-content:block" }), children]
47
+ })]
48
+ });
49
+ }
50
+ function DrawerHeader({ className, ...props }) {
51
+ return /* @__PURE__ */ jsx("div", {
52
+ "data-slot": "drawer-header",
53
+ className: cn("flex flex-col gap-0.5 p-4 group-data-[vaul-drawer-direction=bottom]/drawer-content:text-center group-data-[vaul-drawer-direction=top]/drawer-content:text-center md:gap-1.5 md:text-left", className),
54
+ ...props
55
+ });
56
+ }
57
+ function DrawerFooter({ className, ...props }) {
58
+ return /* @__PURE__ */ jsx("div", {
59
+ "data-slot": "drawer-footer",
60
+ className: cn("mt-auto flex flex-col gap-2 p-4", className),
61
+ ...props
62
+ });
63
+ }
64
+ function DrawerTitle({ className, ...props }) {
65
+ return /* @__PURE__ */ jsx(Drawer.Title, {
66
+ "data-slot": "drawer-title",
67
+ className: cn("text-foreground font-semibold", className),
68
+ ...props
69
+ });
70
+ }
71
+ function DrawerDescription({ className, ...props }) {
72
+ return /* @__PURE__ */ jsx(Drawer.Description, {
73
+ "data-slot": "drawer-description",
74
+ className: cn("text-muted-foreground text-sm", className),
75
+ ...props
76
+ });
77
+ }
78
+
79
+ //#endregion
80
+ export { Drawer$1 as Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger };
81
+ //# sourceMappingURL=drawer.js.map