@omnifyjp/ui 0.4.4 → 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 (417) hide show
  1. package/README.md +379 -133
  2. package/dist/chunk-2ZIFL2X3.js +189 -0
  3. package/dist/chunk-2ZIFL2X3.js.map +1 -0
  4. package/dist/chunk-5BL4VFRJ.js +57 -0
  5. package/dist/chunk-5BL4VFRJ.js.map +1 -0
  6. package/dist/chunk-5D3OAVOZ.js +91 -0
  7. package/dist/chunk-5D3OAVOZ.js.map +1 -0
  8. package/dist/chunk-DTM76EJD.js +235 -0
  9. package/dist/chunk-DTM76EJD.js.map +1 -0
  10. package/dist/chunk-EJEVW4RO.js +49 -0
  11. package/dist/chunk-EJEVW4RO.js.map +1 -0
  12. package/dist/chunk-JXFBHSPN.js +37 -0
  13. package/dist/chunk-JXFBHSPN.js.map +1 -0
  14. package/dist/chunk-O25D7DCP.js +72 -0
  15. package/dist/chunk-O25D7DCP.js.map +1 -0
  16. package/dist/chunk-OY3PSPA5.js +661 -0
  17. package/dist/chunk-OY3PSPA5.js.map +1 -0
  18. package/dist/chunk-SHHZRZMM.js +83 -0
  19. package/dist/chunk-SHHZRZMM.js.map +1 -0
  20. package/dist/chunk-X57K24P3.js +224 -0
  21. package/dist/chunk-X57K24P3.js.map +1 -0
  22. package/dist/chunk-XDXGUPCR.js +123 -0
  23. package/dist/chunk-XDXGUPCR.js.map +1 -0
  24. package/dist/components/AppShell.d.ts +27 -0
  25. package/dist/components/AppShell.js +11 -0
  26. package/dist/components/AppShell.js.map +1 -0
  27. package/dist/components/Header.d.ts +11 -0
  28. package/dist/components/Header.js +6 -0
  29. package/dist/components/Header.js.map +1 -0
  30. package/dist/components/OrganizationSelector.d.ts +8 -0
  31. package/dist/components/OrganizationSelector.js +4 -0
  32. package/dist/components/OrganizationSelector.js.map +1 -0
  33. package/dist/components/OrganizationSetupModal.d.ts +5 -0
  34. package/dist/components/OrganizationSetupModal.js +4 -0
  35. package/dist/components/OrganizationSetupModal.js.map +1 -0
  36. package/dist/components/PageContainer.d.ts +105 -0
  37. package/dist/components/PageContainer.js +3 -0
  38. package/dist/components/PageContainer.js.map +1 -0
  39. package/dist/components/ServiceMenu.d.ts +11 -0
  40. package/dist/components/ServiceMenu.js +3 -0
  41. package/dist/components/ServiceMenu.js.map +1 -0
  42. package/dist/components/Sidebar.d.ts +11 -0
  43. package/dist/components/Sidebar.js +5 -0
  44. package/dist/components/Sidebar.js.map +1 -0
  45. package/dist/contexts/OrganizationContext.d.ts +26 -0
  46. package/dist/contexts/OrganizationContext.js +3 -0
  47. package/dist/contexts/OrganizationContext.js.map +1 -0
  48. package/dist/contexts/ThemeContext.d.ts +14 -0
  49. package/dist/contexts/ThemeContext.js +3 -0
  50. package/dist/contexts/ThemeContext.js.map +1 -0
  51. package/dist/hooks/useDateFormat.d.ts +28 -0
  52. package/dist/hooks/useDateFormat.js +4 -0
  53. package/dist/hooks/useDateFormat.js.map +1 -0
  54. package/dist/i18n.d.ts +38 -0
  55. package/dist/i18n.js +3 -0
  56. package/dist/i18n.js.map +1 -0
  57. package/dist/index.d.ts +13 -109
  58. package/dist/index.js +11 -70
  59. package/dist/types.d.ts +89 -0
  60. package/dist/types.js +3 -0
  61. package/dist/types.js.map +1 -0
  62. package/package.json +23 -70
  63. package/dist/chunk-2C2HRGM7.js +0 -51
  64. package/dist/chunk-2C2HRGM7.js.map +0 -1
  65. package/dist/chunk-2TUWDXAC.js +0 -196
  66. package/dist/chunk-2TUWDXAC.js.map +0 -1
  67. package/dist/chunk-34ARZSNP.js +0 -63
  68. package/dist/chunk-34ARZSNP.js.map +0 -1
  69. package/dist/chunk-35DNN46W.js +0 -13
  70. package/dist/chunk-35DNN46W.js.map +0 -1
  71. package/dist/chunk-35U6QG4P.js +0 -116
  72. package/dist/chunk-35U6QG4P.js.map +0 -1
  73. package/dist/chunk-36YYHIJU.js +0 -52
  74. package/dist/chunk-36YYHIJU.js.map +0 -1
  75. package/dist/chunk-3EOHW4QN.js +0 -35
  76. package/dist/chunk-3EOHW4QN.js.map +0 -1
  77. package/dist/chunk-3UPBCOS4.js +0 -39
  78. package/dist/chunk-3UPBCOS4.js.map +0 -1
  79. package/dist/chunk-3VU56V66.js +0 -41
  80. package/dist/chunk-3VU56V66.js.map +0 -1
  81. package/dist/chunk-55E7D2HR.js +0 -99
  82. package/dist/chunk-55E7D2HR.js.map +0 -1
  83. package/dist/chunk-67YUL2ZS.js +0 -53
  84. package/dist/chunk-67YUL2ZS.js.map +0 -1
  85. package/dist/chunk-6DIDQ4TB.js +0 -131
  86. package/dist/chunk-6DIDQ4TB.js.map +0 -1
  87. package/dist/chunk-6GWVQB3Q.js +0 -155
  88. package/dist/chunk-6GWVQB3Q.js.map +0 -1
  89. package/dist/chunk-75WZR6HF.js +0 -44
  90. package/dist/chunk-75WZR6HF.js.map +0 -1
  91. package/dist/chunk-7IRLBU2I.js +0 -114
  92. package/dist/chunk-7IRLBU2I.js.map +0 -1
  93. package/dist/chunk-7RMTPT6O.js +0 -99
  94. package/dist/chunk-7RMTPT6O.js.map +0 -1
  95. package/dist/chunk-7XH3MGBR.js +0 -128
  96. package/dist/chunk-7XH3MGBR.js.map +0 -1
  97. package/dist/chunk-A3BB5ZOC.js +0 -77
  98. package/dist/chunk-A3BB5ZOC.js.map +0 -1
  99. package/dist/chunk-B434PORR.js +0 -239
  100. package/dist/chunk-B434PORR.js.map +0 -1
  101. package/dist/chunk-BAQWGQJG.js +0 -106
  102. package/dist/chunk-BAQWGQJG.js.map +0 -1
  103. package/dist/chunk-BRSM3SZP.js +0 -46
  104. package/dist/chunk-BRSM3SZP.js.map +0 -1
  105. package/dist/chunk-C34KSTWA.js +0 -43
  106. package/dist/chunk-C34KSTWA.js.map +0 -1
  107. package/dist/chunk-C5NZAOA7.js +0 -54
  108. package/dist/chunk-C5NZAOA7.js.map +0 -1
  109. package/dist/chunk-CUZR4JWM.js +0 -23
  110. package/dist/chunk-CUZR4JWM.js.map +0 -1
  111. package/dist/chunk-DGPY4WP3.js +0 -11
  112. package/dist/chunk-DGPY4WP3.js.map +0 -1
  113. package/dist/chunk-EWBCV7VA.js +0 -65
  114. package/dist/chunk-EWBCV7VA.js.map +0 -1
  115. package/dist/chunk-F2ZJLKDP.js +0 -119
  116. package/dist/chunk-F2ZJLKDP.js.map +0 -1
  117. package/dist/chunk-FLWMT4DB.js +0 -66
  118. package/dist/chunk-FLWMT4DB.js.map +0 -1
  119. package/dist/chunk-FRKG7JQY.js +0 -48
  120. package/dist/chunk-FRKG7JQY.js.map +0 -1
  121. package/dist/chunk-G7HTZBUR.js +0 -187
  122. package/dist/chunk-G7HTZBUR.js.map +0 -1
  123. package/dist/chunk-HWTW64R5.js +0 -90
  124. package/dist/chunk-HWTW64R5.js.map +0 -1
  125. package/dist/chunk-IAWKX5W4.js +0 -219
  126. package/dist/chunk-IAWKX5W4.js.map +0 -1
  127. package/dist/chunk-INLM7UJC.js +0 -238
  128. package/dist/chunk-INLM7UJC.js.map +0 -1
  129. package/dist/chunk-JAJMM32I.js +0 -18
  130. package/dist/chunk-JAJMM32I.js.map +0 -1
  131. package/dist/chunk-JJSVA3TH.js +0 -61
  132. package/dist/chunk-JJSVA3TH.js.map +0 -1
  133. package/dist/chunk-JLTBUACL.js +0 -121
  134. package/dist/chunk-JLTBUACL.js.map +0 -1
  135. package/dist/chunk-JRU2QX7T.js +0 -38
  136. package/dist/chunk-JRU2QX7T.js.map +0 -1
  137. package/dist/chunk-JXGRW2MR.js +0 -17
  138. package/dist/chunk-JXGRW2MR.js.map +0 -1
  139. package/dist/chunk-KTBOZ4NE.js +0 -93
  140. package/dist/chunk-KTBOZ4NE.js.map +0 -1
  141. package/dist/chunk-LMT327XH.js +0 -56
  142. package/dist/chunk-LMT327XH.js.map +0 -1
  143. package/dist/chunk-LTTNCAAA.js +0 -138
  144. package/dist/chunk-LTTNCAAA.js.map +0 -1
  145. package/dist/chunk-LVZNNIK4.js +0 -111
  146. package/dist/chunk-LVZNNIK4.js.map +0 -1
  147. package/dist/chunk-MJLFJPUG.js +0 -143
  148. package/dist/chunk-MJLFJPUG.js.map +0 -1
  149. package/dist/chunk-MZ2P566X.js +0 -65
  150. package/dist/chunk-MZ2P566X.js.map +0 -1
  151. package/dist/chunk-N47H4MHX.js +0 -41
  152. package/dist/chunk-N47H4MHX.js.map +0 -1
  153. package/dist/chunk-NNJTKHCE.js +0 -160
  154. package/dist/chunk-NNJTKHCE.js.map +0 -1
  155. package/dist/chunk-NPL2R5LD.js +0 -171
  156. package/dist/chunk-NPL2R5LD.js.map +0 -1
  157. package/dist/chunk-NU56GKGM.js +0 -44
  158. package/dist/chunk-NU56GKGM.js.map +0 -1
  159. package/dist/chunk-P3M5TZD2.js +0 -24
  160. package/dist/chunk-P3M5TZD2.js.map +0 -1
  161. package/dist/chunk-PGWNOZDX.js +0 -28
  162. package/dist/chunk-PGWNOZDX.js.map +0 -1
  163. package/dist/chunk-QB3UWRZH.js +0 -92
  164. package/dist/chunk-QB3UWRZH.js.map +0 -1
  165. package/dist/chunk-R2CDE5DO.js +0 -33
  166. package/dist/chunk-R2CDE5DO.js.map +0 -1
  167. package/dist/chunk-RQNZDWY3.js +0 -65
  168. package/dist/chunk-RQNZDWY3.js.map +0 -1
  169. package/dist/chunk-S6PDRGR5.js +0 -109
  170. package/dist/chunk-S6PDRGR5.js.map +0 -1
  171. package/dist/chunk-TGYQ3AKH.js +0 -95
  172. package/dist/chunk-TGYQ3AKH.js.map +0 -1
  173. package/dist/chunk-THQUH6WX.js +0 -81
  174. package/dist/chunk-THQUH6WX.js.map +0 -1
  175. package/dist/chunk-TJMK2KBE.js +0 -112
  176. package/dist/chunk-TJMK2KBE.js.map +0 -1
  177. package/dist/chunk-TTH7TWVX.js +0 -30
  178. package/dist/chunk-TTH7TWVX.js.map +0 -1
  179. package/dist/chunk-USIHM7FV.js +0 -211
  180. package/dist/chunk-USIHM7FV.js.map +0 -1
  181. package/dist/chunk-VVYSAGB3.js +0 -104
  182. package/dist/chunk-VVYSAGB3.js.map +0 -1
  183. package/dist/chunk-WD5KZE25.js +0 -25
  184. package/dist/chunk-WD5KZE25.js.map +0 -1
  185. package/dist/chunk-WL4ZO2H3.js +0 -33
  186. package/dist/chunk-WL4ZO2H3.js.map +0 -1
  187. package/dist/chunk-WRCHR4AK.js +0 -23
  188. package/dist/chunk-WRCHR4AK.js.map +0 -1
  189. package/dist/chunk-XOJJBNDX.js +0 -33
  190. package/dist/chunk-XOJJBNDX.js.map +0 -1
  191. package/dist/chunk-XUVLD65E.js +0 -617
  192. package/dist/chunk-XUVLD65E.js.map +0 -1
  193. package/dist/chunk-YBMEQZX7.js +0 -164
  194. package/dist/chunk-YBMEQZX7.js.map +0 -1
  195. package/dist/chunk-Z2QAABLM.js +0 -86
  196. package/dist/chunk-Z2QAABLM.js.map +0 -1
  197. package/dist/chunk-ZHEKDP5X.js +0 -41
  198. package/dist/chunk-ZHEKDP5X.js.map +0 -1
  199. package/dist/chunk-ZPMXRW2A.js +0 -63
  200. package/dist/chunk-ZPMXRW2A.js.map +0 -1
  201. package/dist/chunk-ZYEGBF7G.js +0 -25
  202. package/dist/chunk-ZYEGBF7G.js.map +0 -1
  203. package/dist/components/accordion.d.ts +0 -37
  204. package/dist/components/accordion.js +0 -4
  205. package/dist/components/accordion.js.map +0 -1
  206. package/dist/components/alert-dialog.d.ts +0 -56
  207. package/dist/components/alert-dialog.js +0 -5
  208. package/dist/components/alert-dialog.js.map +0 -1
  209. package/dist/components/alert.d.ts +0 -68
  210. package/dist/components/alert.js +0 -4
  211. package/dist/components/alert.js.map +0 -1
  212. package/dist/components/aspect-ratio.d.ts +0 -23
  213. package/dist/components/aspect-ratio.js +0 -3
  214. package/dist/components/aspect-ratio.js.map +0 -1
  215. package/dist/components/avatar.d.ts +0 -48
  216. package/dist/components/avatar.js +0 -4
  217. package/dist/components/avatar.js.map +0 -1
  218. package/dist/components/badge.d.ts +0 -52
  219. package/dist/components/badge.js +0 -4
  220. package/dist/components/badge.js.map +0 -1
  221. package/dist/components/breadcrumb.d.ts +0 -50
  222. package/dist/components/breadcrumb.js +0 -4
  223. package/dist/components/breadcrumb.js.map +0 -1
  224. package/dist/components/button.d.ts +0 -81
  225. package/dist/components/button.js +0 -4
  226. package/dist/components/button.js.map +0 -1
  227. package/dist/components/calendar-category-badge.d.ts +0 -24
  228. package/dist/components/calendar-category-badge.js +0 -5
  229. package/dist/components/calendar-category-badge.js.map +0 -1
  230. package/dist/components/calendar-event-chip.d.ts +0 -41
  231. package/dist/components/calendar-event-chip.js +0 -4
  232. package/dist/components/calendar-event-chip.js.map +0 -1
  233. package/dist/components/calendar-event-sheet.d.ts +0 -68
  234. package/dist/components/calendar-event-sheet.js +0 -9
  235. package/dist/components/calendar-event-sheet.js.map +0 -1
  236. package/dist/components/calendar-mini.d.ts +0 -65
  237. package/dist/components/calendar-mini.js +0 -6
  238. package/dist/components/calendar-mini.js.map +0 -1
  239. package/dist/components/calendar-toolbar.d.ts +0 -58
  240. package/dist/components/calendar-toolbar.js +0 -7
  241. package/dist/components/calendar-toolbar.js.map +0 -1
  242. package/dist/components/calendar.d.ts +0 -19
  243. package/dist/components/calendar.js +0 -5
  244. package/dist/components/calendar.js.map +0 -1
  245. package/dist/components/card.d.ts +0 -43
  246. package/dist/components/card.js +0 -4
  247. package/dist/components/card.js.map +0 -1
  248. package/dist/components/carousel.d.ts +0 -53
  249. package/dist/components/carousel.js +0 -5
  250. package/dist/components/carousel.js.map +0 -1
  251. package/dist/components/chart.d.ts +0 -103
  252. package/dist/components/chart.js +0 -4
  253. package/dist/components/chart.js.map +0 -1
  254. package/dist/components/checkbox.d.ts +0 -24
  255. package/dist/components/checkbox.js +0 -4
  256. package/dist/components/checkbox.js.map +0 -1
  257. package/dist/components/collapsible.d.ts +0 -28
  258. package/dist/components/collapsible.js +0 -3
  259. package/dist/components/collapsible.js.map +0 -1
  260. package/dist/components/color-picker.d.ts +0 -35
  261. package/dist/components/color-picker.js +0 -7
  262. package/dist/components/color-picker.js.map +0 -1
  263. package/dist/components/combobox.d.ts +0 -98
  264. package/dist/components/combobox.js +0 -8
  265. package/dist/components/combobox.js.map +0 -1
  266. package/dist/components/command.d.ts +0 -63
  267. package/dist/components/command.js +0 -5
  268. package/dist/components/command.js.map +0 -1
  269. package/dist/components/context-menu.d.ts +0 -70
  270. package/dist/components/context-menu.js +0 -4
  271. package/dist/components/context-menu.js.map +0 -1
  272. package/dist/components/date-picker.d.ts +0 -71
  273. package/dist/components/date-picker.js +0 -7
  274. package/dist/components/date-picker.js.map +0 -1
  275. package/dist/components/dialog.d.ts +0 -58
  276. package/dist/components/dialog.js +0 -4
  277. package/dist/components/dialog.js.map +0 -1
  278. package/dist/components/drawer.d.ts +0 -60
  279. package/dist/components/drawer.js +0 -4
  280. package/dist/components/drawer.js.map +0 -1
  281. package/dist/components/dropdown-menu.d.ts +0 -76
  282. package/dist/components/dropdown-menu.js +0 -4
  283. package/dist/components/dropdown-menu.js.map +0 -1
  284. package/dist/components/file-upload.d.ts +0 -44
  285. package/dist/components/file-upload.js +0 -5
  286. package/dist/components/file-upload.js.map +0 -1
  287. package/dist/components/form.d.ts +0 -67
  288. package/dist/components/form.js +0 -5
  289. package/dist/components/form.js.map +0 -1
  290. package/dist/components/hover-card.d.ts +0 -43
  291. package/dist/components/hover-card.js +0 -4
  292. package/dist/components/hover-card.js.map +0 -1
  293. package/dist/components/input-otp.d.ts +0 -38
  294. package/dist/components/input-otp.js +0 -4
  295. package/dist/components/input-otp.js.map +0 -1
  296. package/dist/components/input.d.ts +0 -38
  297. package/dist/components/input.js +0 -4
  298. package/dist/components/input.js.map +0 -1
  299. package/dist/components/label.d.ts +0 -20
  300. package/dist/components/label.js +0 -4
  301. package/dist/components/label.js.map +0 -1
  302. package/dist/components/menubar.d.ts +0 -82
  303. package/dist/components/menubar.js +0 -4
  304. package/dist/components/menubar.js.map +0 -1
  305. package/dist/components/navigation-menu.d.ts +0 -64
  306. package/dist/components/navigation-menu.js +0 -4
  307. package/dist/components/navigation-menu.js.map +0 -1
  308. package/dist/components/pagination.d.ts +0 -59
  309. package/dist/components/pagination.js +0 -5
  310. package/dist/components/pagination.js.map +0 -1
  311. package/dist/components/password-input.d.ts +0 -32
  312. package/dist/components/password-input.js +0 -5
  313. package/dist/components/password-input.js.map +0 -1
  314. package/dist/components/permission-grid.d.ts +0 -67
  315. package/dist/components/permission-grid.js +0 -5
  316. package/dist/components/permission-grid.js.map +0 -1
  317. package/dist/components/popover.d.ts +0 -37
  318. package/dist/components/popover.js +0 -4
  319. package/dist/components/popover.js.map +0 -1
  320. package/dist/components/progress.d.ts +0 -20
  321. package/dist/components/progress.js +0 -4
  322. package/dist/components/progress.js.map +0 -1
  323. package/dist/components/radio-group.d.ts +0 -38
  324. package/dist/components/radio-group.js +0 -4
  325. package/dist/components/radio-group.js.map +0 -1
  326. package/dist/components/rating.d.ts +0 -35
  327. package/dist/components/rating.js +0 -4
  328. package/dist/components/rating.js.map +0 -1
  329. package/dist/components/resizable.d.ts +0 -36
  330. package/dist/components/resizable.js +0 -4
  331. package/dist/components/resizable.js.map +0 -1
  332. package/dist/components/scope-tree.d.ts +0 -78
  333. package/dist/components/scope-tree.js +0 -5
  334. package/dist/components/scope-tree.js.map +0 -1
  335. package/dist/components/scope-type-badge.d.ts +0 -35
  336. package/dist/components/scope-type-badge.js +0 -5
  337. package/dist/components/scope-type-badge.js.map +0 -1
  338. package/dist/components/scroll-area.d.ts +0 -29
  339. package/dist/components/scroll-area.js +0 -4
  340. package/dist/components/scroll-area.js.map +0 -1
  341. package/dist/components/select.d.ts +0 -52
  342. package/dist/components/select.js +0 -4
  343. package/dist/components/select.js.map +0 -1
  344. package/dist/components/separator.d.ts +0 -24
  345. package/dist/components/separator.js +0 -4
  346. package/dist/components/separator.js.map +0 -1
  347. package/dist/components/sheet.d.ts +0 -51
  348. package/dist/components/sheet.js +0 -4
  349. package/dist/components/sheet.js.map +0 -1
  350. package/dist/components/sidebar.d.ts +0 -169
  351. package/dist/components/sidebar.js +0 -11
  352. package/dist/components/sidebar.js.map +0 -1
  353. package/dist/components/skeleton.d.ts +0 -25
  354. package/dist/components/skeleton.js +0 -4
  355. package/dist/components/skeleton.js.map +0 -1
  356. package/dist/components/slider.d.ts +0 -24
  357. package/dist/components/slider.js +0 -4
  358. package/dist/components/slider.js.map +0 -1
  359. package/dist/components/slug-input.d.ts +0 -50
  360. package/dist/components/slug-input.js +0 -6
  361. package/dist/components/slug-input.js.map +0 -1
  362. package/dist/components/sonner.d.ts +0 -22
  363. package/dist/components/sonner.js +0 -3
  364. package/dist/components/sonner.js.map +0 -1
  365. package/dist/components/stage-type-badge.d.ts +0 -30
  366. package/dist/components/stage-type-badge.js +0 -5
  367. package/dist/components/stage-type-badge.js.map +0 -1
  368. package/dist/components/switch.d.ts +0 -26
  369. package/dist/components/switch.js +0 -4
  370. package/dist/components/switch.js.map +0 -1
  371. package/dist/components/table.d.ts +0 -57
  372. package/dist/components/table.js +0 -4
  373. package/dist/components/table.js.map +0 -1
  374. package/dist/components/tabs.d.ts +0 -39
  375. package/dist/components/tabs.js +0 -4
  376. package/dist/components/tabs.js.map +0 -1
  377. package/dist/components/tag-input.d.ts +0 -40
  378. package/dist/components/tag-input.js +0 -5
  379. package/dist/components/tag-input.js.map +0 -1
  380. package/dist/components/textarea.d.ts +0 -21
  381. package/dist/components/textarea.js +0 -4
  382. package/dist/components/textarea.js.map +0 -1
  383. package/dist/components/time-picker.d.ts +0 -57
  384. package/dist/components/time-picker.js +0 -8
  385. package/dist/components/time-picker.js.map +0 -1
  386. package/dist/components/toggle-group.d.ts +0 -45
  387. package/dist/components/toggle-group.js +0 -5
  388. package/dist/components/toggle-group.js.map +0 -1
  389. package/dist/components/toggle.d.ts +0 -31
  390. package/dist/components/toggle.js +0 -4
  391. package/dist/components/toggle.js.map +0 -1
  392. package/dist/components/tooltip.d.ts +0 -34
  393. package/dist/components/tooltip.js +0 -4
  394. package/dist/components/tooltip.js.map +0 -1
  395. package/dist/components/workflow-category-badge.d.ts +0 -32
  396. package/dist/components/workflow-category-badge.js +0 -5
  397. package/dist/components/workflow-category-badge.js.map +0 -1
  398. package/dist/components/workflow-diagram.d.ts +0 -63
  399. package/dist/components/workflow-diagram.js +0 -5
  400. package/dist/components/workflow-diagram.js.map +0 -1
  401. package/dist/components/workflow-status-badge.d.ts +0 -30
  402. package/dist/components/workflow-status-badge.js +0 -5
  403. package/dist/components/workflow-status-badge.js.map +0 -1
  404. package/dist/components/workflow-stepper.d.ts +0 -52
  405. package/dist/components/workflow-stepper.js +0 -4
  406. package/dist/components/workflow-stepper.js.map +0 -1
  407. package/dist/hooks/use-mobile.d.ts +0 -3
  408. package/dist/hooks/use-mobile.js +0 -3
  409. package/dist/hooks/use-mobile.js.map +0 -1
  410. package/dist/lib/utils.d.ts +0 -5
  411. package/dist/lib/utils.js +0 -3
  412. package/dist/lib/utils.js.map +0 -1
  413. package/dist/types-CBVkScfB.d.ts +0 -84
  414. package/src/styles/fonts.css +0 -0
  415. package/src/styles/index.css +0 -3
  416. package/src/styles/tailwind.css +0 -4
  417. package/src/styles/theme.css +0 -461
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/scope-tree.tsx"],"names":[],"mappings":"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","file":"chunk-BAQWGQJG.js","sourcesContent":["import { useState } from 'react';\nimport { ChevronRight, Globe, Building2, GitBranch, MapPin, type LucideIcon } from 'lucide-react';\nimport { Badge } from './badge';\nimport { cn } from '../lib/utils';\n\n/** A small badge displayed next to a tree node name. */\nexport interface ScopeTreeBadge {\n /** Badge display text. */\n label: string;\n /** Optional className to style this badge. */\n className?: string;\n}\n\n/** A node in the scope tree hierarchy. */\nexport interface ScopeTreeNode {\n /** Unique identifier for this node, or `null` for root/global nodes. */\n id: string | null;\n /** Display name of this scope. */\n name: string;\n /** Scope type key (e.g. \"global\", \"organization\", \"branch\", \"location\"). Determines the icon. */\n type: string;\n /** Optional child nodes for nested hierarchy. */\n children?: ScopeTreeNode[];\n /** Optional badges displayed next to the node name. */\n badges?: ScopeTreeBadge[];\n}\n\n/** Represents the currently selected scope in the tree. */\nexport interface ScopeTreeSelectedScope {\n /** The scope type key of the selected node. */\n type: string;\n /** The ID of the selected node, or `null` for root/global nodes. */\n id: string | null;\n}\n\n/** Localizable labels for the scope tree. Currently reserved for future extensibility. */\nexport interface ScopeTreeLabels {\n /** No labels are required by default; provided for future extensibility. */\n [key: string]: string;\n}\n\nexport interface ScopeTreeProps {\n /** Tree data: an array of root-level scope nodes. */\n nodes: ScopeTreeNode[];\n /** The currently selected scope (type + id). Used for highlighting. */\n selectedScope?: ScopeTreeSelectedScope;\n /** Callback when a node is clicked. */\n onSelect?: (scope: ScopeTreeSelectedScope) => void;\n /** Localizable labels. Currently reserved for future extensibility. */\n labels?: Partial<ScopeTreeLabels>;\n /** Default expansion depth. Nodes at depth < this value start expanded. Defaults to `1`. */\n defaultExpandDepth?: number;\n /** Custom icon map keyed by scope type. Falls back to built-in icons for global/organization/branch/location. */\n iconMap?: Record<string, LucideIcon>;\n}\n\nconst DEFAULT_ICON_MAP: Record<string, LucideIcon> = {\n global: Globe,\n organization: Building2,\n branch: GitBranch,\n location: MapPin,\n};\n\nfunction getIcon(type: string, iconMap?: Record<string, LucideIcon>): LucideIcon {\n if (iconMap?.[type]) return iconMap[type];\n return DEFAULT_ICON_MAP[type] ?? Globe;\n}\n\n/**\n * Hierarchical tree view for selecting organizational scopes (e.g. global,\n * organization, branch, location). Nodes are expandable/collapsible with\n * chevron icons. Each node type has a dedicated icon. Supports custom icons\n * via `iconMap` and optional badges on nodes.\n *\n * @example\n * ```tsx\n * const nodes: ScopeTreeNode[] = [\n * {\n * id: null, name: \"Global\", type: \"global\",\n * children: [\n * { id: \"org-1\", name: \"Acme Corp\", type: \"organization\", children: [\n * { id: \"br-1\", name: \"Tokyo HQ\", type: \"branch\" },\n * ]},\n * ],\n * },\n * ];\n *\n * <ScopeTree\n * nodes={nodes}\n * selectedScope={{ type: \"branch\", id: \"br-1\" }}\n * onSelect={(scope) => setSelected(scope)}\n * />\n * ```\n */\nexport function ScopeTree({\n nodes,\n selectedScope,\n onSelect,\n defaultExpandDepth = 1,\n iconMap,\n}: ScopeTreeProps) {\n return (\n <div className=\"space-y-1\">\n {nodes.map(node => (\n <ScopeTreeNodeItem\n key={`${node.type}-${node.id}`}\n node={node}\n selectedScope={selectedScope}\n onSelect={onSelect}\n depth={0}\n defaultExpandDepth={defaultExpandDepth}\n iconMap={iconMap}\n />\n ))}\n </div>\n );\n}\n\ninterface ScopeTreeNodeItemProps {\n node: ScopeTreeNode;\n selectedScope?: ScopeTreeSelectedScope;\n onSelect?: (scope: ScopeTreeSelectedScope) => void;\n depth: number;\n defaultExpandDepth: number;\n iconMap?: Record<string, LucideIcon>;\n}\n\nfunction ScopeTreeNodeItem({\n node,\n selectedScope,\n onSelect,\n depth,\n defaultExpandDepth,\n iconMap,\n}: ScopeTreeNodeItemProps) {\n const [open, setOpen] = useState(depth < defaultExpandDepth);\n const Icon = getIcon(node.type, iconMap);\n const isSelected =\n selectedScope?.type === node.type && selectedScope?.id === node.id;\n const children = node.children ?? [];\n const hasChildren = children.length > 0;\n const paddingLeft = depth * 16;\n\n return (\n <div>\n <button\n type=\"button\"\n className={cn(\n 'w-full flex items-center gap-2 px-3 py-2 rounded-md text-sm transition-colors text-left',\n isSelected\n ? 'bg-accent text-accent-foreground font-medium'\n : 'hover:bg-accent/50 text-foreground',\n )}\n style={{ paddingLeft: `${paddingLeft + 12}px` }}\n onClick={() => {\n onSelect?.({ type: node.type, id: node.id });\n if (hasChildren) setOpen(prev => !prev);\n }}\n >\n {hasChildren ? (\n <ChevronRight\n className={cn(\n 'w-4 h-4 shrink-0 transition-transform',\n open && 'rotate-90',\n )}\n />\n ) : (\n <span className=\"w-4\" />\n )}\n <Icon className=\"w-4 h-4 shrink-0 text-muted-foreground\" />\n <span className=\"truncate flex-1\">{node.name}</span>\n {node.badges?.map((badge, i) => (\n <Badge\n key={i}\n variant=\"outline\"\n className={cn('text-[10px] px-1 py-0', badge.className)}\n >\n {badge.label}\n </Badge>\n ))}\n </button>\n {open && hasChildren && (\n <div>\n {children.map(child => (\n <ScopeTreeNodeItem\n key={`${child.type}-${child.id}`}\n node={child}\n selectedScope={selectedScope}\n onSelect={onSelect}\n depth={depth + 1}\n defaultExpandDepth={defaultExpandDepth}\n iconMap={iconMap}\n />\n ))}\n </div>\n )}\n </div>\n );\n}\n"]}
@@ -1,46 +0,0 @@
1
- import { cn } from './chunk-DGPY4WP3.js';
2
- import { CircleIcon } from 'lucide-react';
3
- import * as RadioGroupPrimitive from '@radix-ui/react-radio-group';
4
- import { jsx } from 'react/jsx-runtime';
5
-
6
- function RadioGroup({
7
- className,
8
- ...props
9
- }) {
10
- return /* @__PURE__ */ jsx(
11
- RadioGroupPrimitive.Root,
12
- {
13
- "data-slot": "radio-group",
14
- className: cn("grid gap-3", className),
15
- ...props
16
- }
17
- );
18
- }
19
- function RadioGroupItem({
20
- className,
21
- ...props
22
- }) {
23
- return /* @__PURE__ */ jsx(
24
- RadioGroupPrimitive.Item,
25
- {
26
- "data-slot": "radio-group-item",
27
- className: cn(
28
- "border-input text-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 aspect-square size-4 shrink-0 rounded-full border shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",
29
- className
30
- ),
31
- ...props,
32
- children: /* @__PURE__ */ jsx(
33
- RadioGroupPrimitive.Indicator,
34
- {
35
- "data-slot": "radio-group-indicator",
36
- className: "relative flex items-center justify-center",
37
- children: /* @__PURE__ */ jsx(CircleIcon, { className: "fill-primary absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2" })
38
- }
39
- )
40
- }
41
- );
42
- }
43
-
44
- export { RadioGroup, RadioGroupItem };
45
- //# sourceMappingURL=chunk-BRSM3SZP.js.map
46
- //# sourceMappingURL=chunk-BRSM3SZP.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/radio-group.tsx"],"names":[],"mappings":";;;;;AA0BA,SAAS,UAAA,CAAW;AAAA,EAClB,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAoB;AAClB,EAAA,uBACE,GAAA;AAAA,IAAqB,mBAAA,CAAA,IAAA;AAAA,IAApB;AAAA,MACC,WAAA,EAAU,aAAA;AAAA,MACV,SAAA,EAAW,EAAA,CAAG,YAAA,EAAc,SAAS,CAAA;AAAA,MACpC,GAAG;AAAA;AAAA,GACN;AAEJ;AAcA,SAAS,cAAA,CAAe;AAAA,EACtB,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAwB;AACtB,EAAA,uBACE,GAAA;AAAA,IAAqB,mBAAA,CAAA,IAAA;AAAA,IAApB;AAAA,MACC,WAAA,EAAU,kBAAA;AAAA,MACV,SAAA,EAAW,EAAA;AAAA,QACT,wXAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG,KAAA;AAAA,MAEJ,QAAA,kBAAA,GAAA;AAAA,QAAqB,mBAAA,CAAA,SAAA;AAAA,QAApB;AAAA,UACC,WAAA,EAAU,uBAAA;AAAA,UACV,SAAA,EAAU,2CAAA;AAAA,UAEV,QAAA,kBAAA,GAAA,CAAC,UAAA,EAAA,EAAW,SAAA,EAAU,iFAAA,EAAkF;AAAA;AAAA;AAC1G;AAAA,GACF;AAEJ","file":"chunk-BRSM3SZP.js","sourcesContent":["import * as React from \"react\";\nimport { CircleIcon } from \"lucide-react\";\nimport * as RadioGroupPrimitive from \"@radix-ui/react-radio-group\";\n\nimport { cn } from \"../lib/utils\";\n\ntype RadioGroupProps = React.ComponentProps<typeof RadioGroupPrimitive.Root>;\n\n/**\n * Container for a set of mutually exclusive radio options.\n * Use with {@link RadioGroupItem} to build single-selection groups.\n *\n * @example\n * ```tsx\n * <RadioGroup defaultValue=\"option-1\">\n * <div className=\"flex items-center gap-2\">\n * <RadioGroupItem value=\"option-1\" id=\"opt1\" />\n * <Label htmlFor=\"opt1\">Option 1</Label>\n * </div>\n * <div className=\"flex items-center gap-2\">\n * <RadioGroupItem value=\"option-2\" id=\"opt2\" />\n * <Label htmlFor=\"opt2\">Option 2</Label>\n * </div>\n * </RadioGroup>\n * ```\n */\nfunction RadioGroup({\n className,\n ...props\n}: RadioGroupProps) {\n return (\n <RadioGroupPrimitive.Root\n data-slot=\"radio-group\"\n className={cn(\"grid gap-3\", className)}\n {...props}\n />\n );\n}\n\ntype RadioGroupItemProps = React.ComponentProps<typeof RadioGroupPrimitive.Item>;\n\n/**\n * Individual radio option within a {@link RadioGroup}.\n * Renders as a circular indicator that fills when selected.\n *\n * @example\n * ```tsx\n * <RadioGroupItem value=\"dark\" id=\"theme-dark\" />\n * <Label htmlFor=\"theme-dark\">Dark mode</Label>\n * ```\n */\nfunction RadioGroupItem({\n className,\n ...props\n}: RadioGroupItemProps) {\n return (\n <RadioGroupPrimitive.Item\n data-slot=\"radio-group-item\"\n className={cn(\n \"border-input text-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 aspect-square size-4 shrink-0 rounded-full border shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50\",\n className,\n )}\n {...props}\n >\n <RadioGroupPrimitive.Indicator\n data-slot=\"radio-group-indicator\"\n className=\"relative flex items-center justify-center\"\n >\n <CircleIcon className=\"fill-primary absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2\" />\n </RadioGroupPrimitive.Indicator>\n </RadioGroupPrimitive.Item>\n );\n}\n\nexport { RadioGroup, RadioGroupItem };\nexport type { RadioGroupProps, RadioGroupItemProps };"]}
@@ -1,43 +0,0 @@
1
- import { cn } from './chunk-DGPY4WP3.js';
2
- import * as PopoverPrimitive from '@radix-ui/react-popover';
3
- import { jsx } from 'react/jsx-runtime';
4
-
5
- function Popover({
6
- ...props
7
- }) {
8
- return /* @__PURE__ */ jsx(PopoverPrimitive.Root, { "data-slot": "popover", ...props });
9
- }
10
- function PopoverTrigger({
11
- ...props
12
- }) {
13
- return /* @__PURE__ */ jsx(PopoverPrimitive.Trigger, { "data-slot": "popover-trigger", ...props });
14
- }
15
- function PopoverContent({
16
- className,
17
- align = "center",
18
- sideOffset = 4,
19
- ...props
20
- }) {
21
- return /* @__PURE__ */ jsx(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx(
22
- PopoverPrimitive.Content,
23
- {
24
- "data-slot": "popover-content",
25
- align,
26
- sideOffset,
27
- className: cn(
28
- "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 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border p-[var(--density-popover)] shadow-md outline-hidden",
29
- className
30
- ),
31
- ...props
32
- }
33
- ) });
34
- }
35
- function PopoverAnchor({
36
- ...props
37
- }) {
38
- return /* @__PURE__ */ jsx(PopoverPrimitive.Anchor, { "data-slot": "popover-anchor", ...props });
39
- }
40
-
41
- export { Popover, PopoverAnchor, PopoverContent, PopoverTrigger };
42
- //# sourceMappingURL=chunk-C34KSTWA.js.map
43
- //# sourceMappingURL=chunk-C34KSTWA.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/popover.tsx"],"names":[],"mappings":";;;;AA6BA,SAAS,OAAA,CAAQ;AAAA,EACf,GAAG;AACL,CAAA,EAAuD;AACrD,EAAA,2BAAyB,gBAAA,CAAA,IAAA,EAAjB,EAAsB,WAAA,EAAU,SAAA,EAAW,GAAG,KAAA,EAAO,CAAA;AAC/D;AAGA,SAAS,cAAA,CAAe;AAAA,EACtB,GAAG;AACL,CAAA,EAA0D;AACxD,EAAA,2BAAyB,gBAAA,CAAA,OAAA,EAAjB,EAAyB,WAAA,EAAU,iBAAA,EAAmB,GAAG,KAAA,EAAO,CAAA;AAC1E;AAGA,SAAS,cAAA,CAAe;AAAA,EACtB,SAAA;AAAA,EACA,KAAA,GAAQ,QAAA;AAAA,EACR,UAAA,GAAa,CAAA;AAAA,EACb,GAAG;AACL,CAAA,EAA0D;AACxD,EAAA,uBACE,GAAA,CAAkB,yBAAjB,EACC,QAAA,kBAAA,GAAA;AAAA,IAAkB,gBAAA,CAAA,OAAA;AAAA,IAAjB;AAAA,MACC,WAAA,EAAU,iBAAA;AAAA,MACV,KAAA;AAAA,MACA,UAAA;AAAA,MACA,SAAA,EAAW,EAAA;AAAA,QACT,ufAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG;AAAA;AAAA,GACN,EACF,CAAA;AAEJ;AAGA,SAAS,aAAA,CAAc;AAAA,EACrB,GAAG;AACL,CAAA,EAAyD;AACvD,EAAA,2BAAyB,gBAAA,CAAA,MAAA,EAAjB,EAAwB,WAAA,EAAU,gBAAA,EAAkB,GAAG,KAAA,EAAO,CAAA;AACxE","file":"chunk-C34KSTWA.js","sourcesContent":["import * as React from \"react\";\nimport * as PopoverPrimitive from \"@radix-ui/react-popover\";\n\nimport { cn } from \"../lib/utils\";\n\n/**\n * Floating popover component built on Radix UI Popover.\n *\n * Displays rich content in a floating panel anchored to a trigger element.\n * Supports controlled (`open`/`onOpenChange`) and uncontrolled usage.\n * Content is portaled and positioned automatically.\n *\n * @example\n * ```tsx\n * <Popover>\n * <PopoverTrigger asChild>\n * <Button variant=\"outline\">Open Popover</Button>\n * </PopoverTrigger>\n * <PopoverContent>\n * <div className=\"space-y-2\">\n * <h4 className=\"font-medium text-sm\">Dimensions</h4>\n * <p className=\"text-sm text-muted-foreground\">\n * Set the dimensions for the layer.\n * </p>\n * </div>\n * </PopoverContent>\n * </Popover>\n * ```\n */\nfunction Popover({\n ...props\n}: React.ComponentProps<typeof PopoverPrimitive.Root>) {\n return <PopoverPrimitive.Root data-slot=\"popover\" {...props} />;\n}\n\n/** Element that toggles the popover when clicked. Use `asChild` to merge into your own button. */\nfunction PopoverTrigger({\n ...props\n}: React.ComponentProps<typeof PopoverPrimitive.Trigger>) {\n return <PopoverPrimitive.Trigger data-slot=\"popover-trigger\" {...props} />;\n}\n\n/** Floating content panel positioned relative to the trigger. */\nfunction PopoverContent({\n className,\n align = \"center\",\n sideOffset = 4,\n ...props\n}: React.ComponentProps<typeof PopoverPrimitive.Content>) {\n return (\n <PopoverPrimitive.Portal>\n <PopoverPrimitive.Content\n data-slot=\"popover-content\"\n align={align}\n sideOffset={sideOffset}\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 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border p-[var(--density-popover)] shadow-md outline-hidden\",\n className,\n )}\n {...props}\n />\n </PopoverPrimitive.Portal>\n );\n}\n\n/** Custom anchor element for positioning the popover content relative to a different element than the trigger. */\nfunction PopoverAnchor({\n ...props\n}: React.ComponentProps<typeof PopoverPrimitive.Anchor>) {\n return <PopoverPrimitive.Anchor data-slot=\"popover-anchor\" {...props} />;\n}\n\nexport { Popover, PopoverTrigger, PopoverContent, PopoverAnchor };"]}
@@ -1,54 +0,0 @@
1
- import { cn } from './chunk-DGPY4WP3.js';
2
- import * as TooltipPrimitive from '@radix-ui/react-tooltip';
3
- import { jsx, jsxs } from 'react/jsx-runtime';
4
-
5
- function TooltipProvider({
6
- delayDuration = 0,
7
- ...props
8
- }) {
9
- return /* @__PURE__ */ jsx(
10
- TooltipPrimitive.Provider,
11
- {
12
- "data-slot": "tooltip-provider",
13
- delayDuration,
14
- ...props
15
- }
16
- );
17
- }
18
- function Tooltip({
19
- ...props
20
- }) {
21
- return /* @__PURE__ */ jsx(TooltipProvider, { children: /* @__PURE__ */ jsx(TooltipPrimitive.Root, { "data-slot": "tooltip", ...props }) });
22
- }
23
- function TooltipTrigger({
24
- ...props
25
- }) {
26
- return /* @__PURE__ */ jsx(TooltipPrimitive.Trigger, { "data-slot": "tooltip-trigger", ...props });
27
- }
28
- function TooltipContent({
29
- className,
30
- sideOffset = 0,
31
- children,
32
- ...props
33
- }) {
34
- return /* @__PURE__ */ jsx(TooltipPrimitive.Portal, { children: /* @__PURE__ */ jsxs(
35
- TooltipPrimitive.Content,
36
- {
37
- "data-slot": "tooltip-content",
38
- sideOffset,
39
- className: cn(
40
- "bg-primary text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-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 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance",
41
- className
42
- ),
43
- ...props,
44
- children: [
45
- children,
46
- /* @__PURE__ */ jsx(TooltipPrimitive.Arrow, { className: "bg-primary fill-primary z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]" })
47
- ]
48
- }
49
- ) });
50
- }
51
-
52
- export { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger };
53
- //# sourceMappingURL=chunk-C5NZAOA7.js.map
54
- //# sourceMappingURL=chunk-C5NZAOA7.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/tooltip.tsx"],"names":[],"mappings":";;;;AAMA,SAAS,eAAA,CAAgB;AAAA,EACvB,aAAA,GAAgB,CAAA;AAAA,EAChB,GAAG;AACL,CAAA,EAA2D;AACzD,EAAA,uBACE,GAAA;AAAA,IAAkB,gBAAA,CAAA,QAAA;AAAA,IAAjB;AAAA,MACC,WAAA,EAAU,kBAAA;AAAA,MACV,aAAA;AAAA,MACC,GAAG;AAAA;AAAA,GACN;AAEJ;AAuBA,SAAS,OAAA,CAAQ;AAAA,EACf,GAAG;AACL,CAAA,EAAuD;AACrD,EAAA,uBACE,GAAA,CAAC,mBACC,QAAA,kBAAA,GAAA,CAAkB,gBAAA,CAAA,IAAA,EAAjB,EAAsB,WAAA,EAAU,SAAA,EAAW,GAAG,KAAA,EAAO,CAAA,EACxD,CAAA;AAEJ;AAGA,SAAS,cAAA,CAAe;AAAA,EACtB,GAAG;AACL,CAAA,EAA0D;AACxD,EAAA,2BAAyB,gBAAA,CAAA,OAAA,EAAjB,EAAyB,WAAA,EAAU,iBAAA,EAAmB,GAAG,KAAA,EAAO,CAAA;AAC1E;AAGA,SAAS,cAAA,CAAe;AAAA,EACtB,SAAA;AAAA,EACA,UAAA,GAAa,CAAA;AAAA,EACb,QAAA;AAAA,EACA,GAAG;AACL,CAAA,EAA0D;AACxD,EAAA,uBACE,GAAA,CAAkB,yBAAjB,EACC,QAAA,kBAAA,IAAA;AAAA,IAAkB,gBAAA,CAAA,OAAA;AAAA,IAAjB;AAAA,MACC,WAAA,EAAU,iBAAA;AAAA,MACV,UAAA;AAAA,MACA,SAAA,EAAW,EAAA;AAAA,QACT,waAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA;AAAA,QAAA,QAAA;AAAA,wBACD,GAAA,CAAkB,gBAAA,CAAA,KAAA,EAAjB,EAAuB,SAAA,EAAU,8FAAA,EAA+F;AAAA;AAAA;AAAA,GACnI,EACF,CAAA;AAEJ","file":"chunk-C5NZAOA7.js","sourcesContent":["import * as React from \"react\";\nimport * as TooltipPrimitive from \"@radix-ui/react-tooltip\";\n\nimport { cn } from \"../lib/utils\";\n\n/** Provider that configures shared tooltip settings like delay duration. */\nfunction TooltipProvider({\n delayDuration = 0,\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Provider>) {\n return (\n <TooltipPrimitive.Provider\n data-slot=\"tooltip-provider\"\n delayDuration={delayDuration}\n {...props}\n />\n );\n}\n\n/**\n * Tooltip component built on Radix UI Tooltip.\n *\n * Displays a short informational label when the user hovers over or focuses\n * an element. Includes a built-in `TooltipProvider` with zero delay.\n * Renders with an arrow pointer for visual anchoring.\n *\n * @example\n * ```tsx\n * <Tooltip>\n * <TooltipTrigger asChild>\n * <Button variant=\"ghost\" size=\"icon\">\n * <InfoIcon className=\"size-4\" />\n * </Button>\n * </TooltipTrigger>\n * <TooltipContent>\n * <p>This is a helpful tooltip</p>\n * </TooltipContent>\n * </Tooltip>\n * ```\n */\nfunction Tooltip({\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Root>) {\n return (\n <TooltipProvider>\n <TooltipPrimitive.Root data-slot=\"tooltip\" {...props} />\n </TooltipProvider>\n );\n}\n\n/** Element that shows the tooltip on hover/focus. Use `asChild` to merge into your own element. */\nfunction TooltipTrigger({\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Trigger>) {\n return <TooltipPrimitive.Trigger data-slot=\"tooltip-trigger\" {...props} />;\n}\n\n/** Floating label that appears near the trigger. Includes an arrow indicator. */\nfunction TooltipContent({\n className,\n sideOffset = 0,\n children,\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Content>) {\n return (\n <TooltipPrimitive.Portal>\n <TooltipPrimitive.Content\n data-slot=\"tooltip-content\"\n sideOffset={sideOffset}\n className={cn(\n \"bg-primary text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-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 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance\",\n className,\n )}\n {...props}\n >\n {children}\n <TooltipPrimitive.Arrow className=\"bg-primary fill-primary z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]\" />\n </TooltipPrimitive.Content>\n </TooltipPrimitive.Portal>\n );\n}\n\nexport { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider };"]}
@@ -1,23 +0,0 @@
1
- import { Toaster as Toaster$1 } from 'sonner';
2
- import { jsx } from 'react/jsx-runtime';
3
-
4
- // src/components/sonner.tsx
5
- var Toaster = ({ ...props }) => {
6
- return /* @__PURE__ */ jsx(
7
- Toaster$1,
8
- {
9
- theme: "light",
10
- className: "toaster group",
11
- style: {
12
- "--normal-bg": "var(--popover)",
13
- "--normal-text": "var(--popover-foreground)",
14
- "--normal-border": "var(--border)"
15
- },
16
- ...props
17
- }
18
- );
19
- };
20
-
21
- export { Toaster };
22
- //# sourceMappingURL=chunk-CUZR4JWM.js.map
23
- //# sourceMappingURL=chunk-CUZR4JWM.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/sonner.tsx"],"names":["Sonner"],"mappings":";;;;AAmBA,IAAM,OAAA,GAAU,CAAC,EAAE,GAAG,OAAM,KAAoB;AAC9C,EAAA,uBACE,GAAA;AAAA,IAACA,SAAA;AAAA,IAAA;AAAA,MACC,KAAA,EAAM,OAAA;AAAA,MACN,SAAA,EAAU,eAAA;AAAA,MACV,KAAA,EACE;AAAA,QACE,aAAA,EAAe,gBAAA;AAAA,QACf,eAAA,EAAiB,2BAAA;AAAA,QACjB,iBAAA,EAAmB;AAAA,OACrB;AAAA,MAED,GAAG;AAAA;AAAA,GACN;AAEJ","file":"chunk-CUZR4JWM.js","sourcesContent":["import * as React from \"react\";\nimport { Toaster as Sonner, ToasterProps } from \"sonner\";\n\n/**\n * Toast notification container powered by the Sonner library.\n * Renders toast messages at a configurable position on screen.\n * Place this once at the root of your app, then use `toast()` to trigger notifications.\n *\n * @example\n * ```tsx\n * // In your root layout:\n * <Toaster />\n *\n * // Anywhere in your app:\n * import { toast } from \"sonner\";\n * toast.success(\"Changes saved\");\n * toast.error(\"Something went wrong\");\n * ```\n */\nconst Toaster = ({ ...props }: ToasterProps) => {\n return (\n <Sonner\n theme=\"light\"\n className=\"toaster group\"\n style={\n {\n \"--normal-bg\": \"var(--popover)\",\n \"--normal-text\": \"var(--popover-foreground)\",\n \"--normal-border\": \"var(--border)\",\n } as React.CSSProperties\n }\n {...props}\n />\n );\n};\n\nexport { Toaster };"]}
@@ -1,11 +0,0 @@
1
- import { clsx } from 'clsx';
2
- import { twMerge } from 'tailwind-merge';
3
-
4
- // src/lib/utils.ts
5
- function cn(...inputs) {
6
- return twMerge(clsx(inputs));
7
- }
8
-
9
- export { cn };
10
- //# sourceMappingURL=chunk-DGPY4WP3.js.map
11
- //# sourceMappingURL=chunk-DGPY4WP3.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/lib/utils.ts"],"names":[],"mappings":";;;;AAGO,SAAS,MAAM,MAAA,EAAsB;AAC1C,EAAA,OAAO,OAAA,CAAQ,IAAA,CAAK,MAAM,CAAC,CAAA;AAC7B","file":"chunk-DGPY4WP3.js","sourcesContent":["import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n"]}
@@ -1,65 +0,0 @@
1
- import { cn } from './chunk-DGPY4WP3.js';
2
- import * as React from 'react';
3
- import * as SliderPrimitive from '@radix-ui/react-slider';
4
- import { jsxs, jsx } from 'react/jsx-runtime';
5
-
6
- function Slider({
7
- className,
8
- defaultValue,
9
- value,
10
- min = 0,
11
- max = 100,
12
- ...props
13
- }) {
14
- const _values = React.useMemo(
15
- () => Array.isArray(value) ? value : Array.isArray(defaultValue) ? defaultValue : [min, max],
16
- [value, defaultValue, min, max]
17
- );
18
- return /* @__PURE__ */ jsxs(
19
- SliderPrimitive.Root,
20
- {
21
- "data-slot": "slider",
22
- defaultValue,
23
- value,
24
- min,
25
- max,
26
- className: cn(
27
- "relative flex w-full touch-none items-center select-none data-[disabled]:opacity-50 data-[orientation=vertical]:h-full data-[orientation=vertical]:min-h-44 data-[orientation=vertical]:w-auto data-[orientation=vertical]:flex-col",
28
- className
29
- ),
30
- ...props,
31
- children: [
32
- /* @__PURE__ */ jsx(
33
- SliderPrimitive.Track,
34
- {
35
- "data-slot": "slider-track",
36
- className: cn(
37
- "bg-muted relative grow overflow-hidden rounded-full data-[orientation=horizontal]:h-4 data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-1.5"
38
- ),
39
- children: /* @__PURE__ */ jsx(
40
- SliderPrimitive.Range,
41
- {
42
- "data-slot": "slider-range",
43
- className: cn(
44
- "bg-primary absolute data-[orientation=horizontal]:h-full data-[orientation=vertical]:w-full"
45
- )
46
- }
47
- )
48
- }
49
- ),
50
- Array.from({ length: _values.length }, (_, index) => /* @__PURE__ */ jsx(
51
- SliderPrimitive.Thumb,
52
- {
53
- "data-slot": "slider-thumb",
54
- className: "border-primary bg-background ring-ring/50 block size-4 shrink-0 rounded-full border shadow-sm transition-[color,box-shadow] hover:ring-4 focus-visible:ring-4 focus-visible:outline-hidden disabled:pointer-events-none disabled:opacity-50"
55
- },
56
- index
57
- ))
58
- ]
59
- }
60
- );
61
- }
62
-
63
- export { Slider };
64
- //# sourceMappingURL=chunk-EWBCV7VA.js.map
65
- //# sourceMappingURL=chunk-EWBCV7VA.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/slider.tsx"],"names":[],"mappings":";;;;;AAuBA,SAAS,MAAA,CAAO;AAAA,EACd,SAAA;AAAA,EACA,YAAA;AAAA,EACA,KAAA;AAAA,EACA,GAAA,GAAM,CAAA;AAAA,EACN,GAAA,GAAM,GAAA;AAAA,EACN,GAAG;AACL,CAAA,EAAgB;AACd,EAAA,MAAM,OAAA,GAAgB,KAAA,CAAA,OAAA;AAAA,IACpB,MACE,KAAA,CAAM,OAAA,CAAQ,KAAK,CAAA,GACf,KAAA,GACA,KAAA,CAAM,OAAA,CAAQ,YAAY,CAAA,GACxB,YAAA,GACA,CAAC,KAAK,GAAG,CAAA;AAAA,IACjB,CAAC,KAAA,EAAO,YAAA,EAAc,GAAA,EAAK,GAAG;AAAA,GAChC;AAEA,EAAA,uBACE,IAAA;AAAA,IAAiB,eAAA,CAAA,IAAA;AAAA,IAAhB;AAAA,MACC,WAAA,EAAU,QAAA;AAAA,MACV,YAAA;AAAA,MACA,KAAA;AAAA,MACA,GAAA;AAAA,MACA,GAAA;AAAA,MACA,SAAA,EAAW,EAAA;AAAA,QACT,qOAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG,KAAA;AAAA,MAEJ,QAAA,EAAA;AAAA,wBAAA,GAAA;AAAA,UAAiB,eAAA,CAAA,KAAA;AAAA,UAAhB;AAAA,YACC,WAAA,EAAU,cAAA;AAAA,YACV,SAAA,EAAW,EAAA;AAAA,cACT;AAAA,aACF;AAAA,YAEA,QAAA,kBAAA,GAAA;AAAA,cAAiB,eAAA,CAAA,KAAA;AAAA,cAAhB;AAAA,gBACC,WAAA,EAAU,cAAA;AAAA,gBACV,SAAA,EAAW,EAAA;AAAA,kBACT;AAAA;AACF;AAAA;AACF;AAAA,SACF;AAAA,QACC,KAAA,CAAM,KAAK,EAAE,MAAA,EAAQ,QAAQ,MAAA,EAAO,EAAG,CAAC,CAAA,EAAG,KAAA,qBAC1C,GAAA;AAAA,UAAiB,eAAA,CAAA,KAAA;AAAA,UAAhB;AAAA,YACC,WAAA,EAAU,cAAA;AAAA,YAEV,SAAA,EAAU;AAAA,WAAA;AAAA,UADL;AAAA,SAGR;AAAA;AAAA;AAAA,GACH;AAEJ","file":"chunk-EWBCV7VA.js","sourcesContent":["import * as React from \"react\";\nimport * as SliderPrimitive from \"@radix-ui/react-slider\";\n\nimport { cn } from \"../lib/utils\";\n\ntype SliderProps = React.ComponentProps<typeof SliderPrimitive.Root>;\n\n/**\n * Draggable range input for selecting a numeric value or range within a given min/max.\n * Supports single-thumb and multi-thumb modes, as well as vertical orientation.\n *\n * @example\n * ```tsx\n * // Single value\n * <Slider defaultValue={[50]} max={100} step={1} />\n *\n * // Range (two thumbs)\n * <Slider defaultValue={[25, 75]} max={100} step={5} />\n *\n * // Controlled\n * <Slider value={[volume]} onValueChange={([v]) => setVolume(v)} />\n * ```\n */\nfunction Slider({\n className,\n defaultValue,\n value,\n min = 0,\n max = 100,\n ...props\n}: SliderProps) {\n const _values = React.useMemo(\n () =>\n Array.isArray(value)\n ? value\n : Array.isArray(defaultValue)\n ? defaultValue\n : [min, max],\n [value, defaultValue, min, max],\n );\n\n return (\n <SliderPrimitive.Root\n data-slot=\"slider\"\n defaultValue={defaultValue}\n value={value}\n min={min}\n max={max}\n className={cn(\n \"relative flex w-full touch-none items-center select-none data-[disabled]:opacity-50 data-[orientation=vertical]:h-full data-[orientation=vertical]:min-h-44 data-[orientation=vertical]:w-auto data-[orientation=vertical]:flex-col\",\n className,\n )}\n {...props}\n >\n <SliderPrimitive.Track\n data-slot=\"slider-track\"\n className={cn(\n \"bg-muted relative grow overflow-hidden rounded-full data-[orientation=horizontal]:h-4 data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-1.5\",\n )}\n >\n <SliderPrimitive.Range\n data-slot=\"slider-range\"\n className={cn(\n \"bg-primary absolute data-[orientation=horizontal]:h-full data-[orientation=vertical]:w-full\",\n )}\n />\n </SliderPrimitive.Track>\n {Array.from({ length: _values.length }, (_, index) => (\n <SliderPrimitive.Thumb\n data-slot=\"slider-thumb\"\n key={index}\n className=\"border-primary bg-background ring-ring/50 block size-4 shrink-0 rounded-full border shadow-sm transition-[color,box-shadow] hover:ring-4 focus-visible:ring-4 focus-visible:outline-hidden disabled:pointer-events-none disabled:opacity-50\"\n />\n ))}\n </SliderPrimitive.Root>\n );\n}\n\nexport { Slider };\nexport type { SliderProps };"]}
@@ -1,119 +0,0 @@
1
- import { cn } from './chunk-DGPY4WP3.js';
2
- import * as React from 'react';
3
- import * as DialogPrimitive from '@radix-ui/react-dialog';
4
- import { XIcon } from 'lucide-react';
5
- import { jsx, jsxs } from 'react/jsx-runtime';
6
-
7
- function Dialog({
8
- ...props
9
- }) {
10
- return /* @__PURE__ */ jsx(DialogPrimitive.Root, { "data-slot": "dialog", ...props });
11
- }
12
- function DialogTrigger({
13
- ...props
14
- }) {
15
- return /* @__PURE__ */ jsx(DialogPrimitive.Trigger, { "data-slot": "dialog-trigger", ...props });
16
- }
17
- function DialogPortal({
18
- ...props
19
- }) {
20
- return /* @__PURE__ */ jsx(DialogPrimitive.Portal, { "data-slot": "dialog-portal", ...props });
21
- }
22
- function DialogClose({
23
- ...props
24
- }) {
25
- return /* @__PURE__ */ jsx(DialogPrimitive.Close, { "data-slot": "dialog-close", ...props });
26
- }
27
- var DialogOverlay = React.forwardRef(({ className, ...props }, ref) => {
28
- return /* @__PURE__ */ jsx(
29
- DialogPrimitive.Overlay,
30
- {
31
- ref,
32
- "data-slot": "dialog-overlay",
33
- className: cn(
34
- "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",
35
- className
36
- ),
37
- ...props
38
- }
39
- );
40
- });
41
- DialogOverlay.displayName = DialogPrimitive.Overlay.displayName;
42
- var DialogContent = React.forwardRef(({ className, children, ...props }, ref) => {
43
- return /* @__PURE__ */ jsxs(DialogPortal, { "data-slot": "dialog-portal", children: [
44
- /* @__PURE__ */ jsx(DialogOverlay, {}),
45
- /* @__PURE__ */ jsxs(
46
- DialogPrimitive.Content,
47
- {
48
- ref,
49
- "data-slot": "dialog-content",
50
- className: cn(
51
- "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-dialog shadow-lg duration-200 sm:max-w-lg",
52
- className
53
- ),
54
- ...props,
55
- children: [
56
- children,
57
- /* @__PURE__ */ jsxs(DialogPrimitive.Close, { 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", children: [
58
- /* @__PURE__ */ jsx(XIcon, {}),
59
- /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Close" })
60
- ] })
61
- ]
62
- }
63
- )
64
- ] });
65
- });
66
- DialogContent.displayName = DialogPrimitive.Content.displayName;
67
- function DialogHeader({ className, ...props }) {
68
- return /* @__PURE__ */ jsx(
69
- "div",
70
- {
71
- "data-slot": "dialog-header",
72
- className: cn("flex flex-col gap-2 text-center sm:text-left", className),
73
- ...props
74
- }
75
- );
76
- }
77
- function DialogFooter({ className, ...props }) {
78
- return /* @__PURE__ */ jsx(
79
- "div",
80
- {
81
- "data-slot": "dialog-footer",
82
- className: cn(
83
- "flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",
84
- className
85
- ),
86
- ...props
87
- }
88
- );
89
- }
90
- function DialogTitle({
91
- className,
92
- ...props
93
- }) {
94
- return /* @__PURE__ */ jsx(
95
- DialogPrimitive.Title,
96
- {
97
- "data-slot": "dialog-title",
98
- className: cn("text-lg leading-none font-semibold", className),
99
- ...props
100
- }
101
- );
102
- }
103
- function DialogDescription({
104
- className,
105
- ...props
106
- }) {
107
- return /* @__PURE__ */ jsx(
108
- DialogPrimitive.Description,
109
- {
110
- "data-slot": "dialog-description",
111
- className: cn("text-muted-foreground text-sm", className),
112
- ...props
113
- }
114
- );
115
- }
116
-
117
- export { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger };
118
- //# sourceMappingURL=chunk-F2ZJLKDP.js.map
119
- //# sourceMappingURL=chunk-F2ZJLKDP.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/dialog.tsx"],"names":[],"mappings":";;;;;;AAuCA,SAAS,MAAA,CAAO;AAAA,EACd,GAAG;AACL,CAAA,EAAsD;AACpD,EAAA,2BAAwB,eAAA,CAAA,IAAA,EAAhB,EAAqB,WAAA,EAAU,QAAA,EAAU,GAAG,KAAA,EAAO,CAAA;AAC7D;AAGA,SAAS,aAAA,CAAc;AAAA,EACrB,GAAG;AACL,CAAA,EAAyD;AACvD,EAAA,2BAAwB,eAAA,CAAA,OAAA,EAAhB,EAAwB,WAAA,EAAU,gBAAA,EAAkB,GAAG,KAAA,EAAO,CAAA;AACxE;AAGA,SAAS,YAAA,CAAa;AAAA,EACpB,GAAG;AACL,CAAA,EAAwD;AACtD,EAAA,2BAAwB,eAAA,CAAA,MAAA,EAAhB,EAAuB,WAAA,EAAU,eAAA,EAAiB,GAAG,KAAA,EAAO,CAAA;AACtE;AAGA,SAAS,WAAA,CAAY;AAAA,EACnB,GAAG;AACL,CAAA,EAAuD;AACrD,EAAA,2BAAwB,eAAA,CAAA,KAAA,EAAhB,EAAsB,WAAA,EAAU,cAAA,EAAgB,GAAG,KAAA,EAAO,CAAA;AACpE;AAGA,IAAM,aAAA,GAAsB,iBAG1B,CAAC,EAAE,WAAW,GAAG,KAAA,IAAS,GAAA,KAAQ;AAClC,EAAA,uBACE,GAAA;AAAA,IAAiB,eAAA,CAAA,OAAA;AAAA,IAAhB;AAAA,MACC,GAAA;AAAA,MACA,WAAA,EAAU,gBAAA;AAAA,MACV,SAAA,EAAW,EAAA;AAAA,QACT,wJAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG;AAAA;AAAA,GACN;AAEJ,CAAC;AACD,aAAA,CAAc,cAA8B,eAAA,CAAA,OAAA,CAAQ,WAAA;AAGpD,IAAM,aAAA,GAAsB,iBAG1B,CAAC,EAAE,WAAW,QAAA,EAAU,GAAG,KAAA,EAAM,EAAG,GAAA,KAAQ;AAC5C,EAAA,uBACE,IAAA,CAAC,YAAA,EAAA,EAAa,WAAA,EAAU,eAAA,EACtB,QAAA,EAAA;AAAA,oBAAA,GAAA,CAAC,aAAA,EAAA,EAAc,CAAA;AAAA,oBACf,IAAA;AAAA,MAAiB,eAAA,CAAA,OAAA;AAAA,MAAhB;AAAA,QACC,GAAA;AAAA,QACA,WAAA,EAAU,gBAAA;AAAA,QACV,SAAA,EAAW,EAAA;AAAA,UACT,kXAAA;AAAA,UACA;AAAA,SACF;AAAA,QACC,GAAG,KAAA;AAAA,QAEH,QAAA,EAAA;AAAA,UAAA,QAAA;AAAA,0BACD,IAAA,CAAiB,eAAA,CAAA,KAAA,EAAhB,EAAsB,SAAA,EAAU,mWAAA,EAC/B,QAAA,EAAA;AAAA,4BAAA,GAAA,CAAC,KAAA,EAAA,EAAM,CAAA;AAAA,4BACP,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,SAAA,EAAU,QAAA,EAAA,OAAA,EAAK;AAAA,WAAA,EACjC;AAAA;AAAA;AAAA;AACF,GAAA,EACF,CAAA;AAEJ,CAAC;AACD,aAAA,CAAc,cAA8B,eAAA,CAAA,OAAA,CAAQ,WAAA;AAGpD,SAAS,YAAA,CAAa,EAAE,SAAA,EAAW,GAAG,OAAM,EAAgC;AAC1E,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,WAAA,EAAU,eAAA;AAAA,MACV,SAAA,EAAW,EAAA,CAAG,8CAAA,EAAgD,SAAS,CAAA;AAAA,MACtE,GAAG;AAAA;AAAA,GACN;AAEJ;AAGA,SAAS,YAAA,CAAa,EAAE,SAAA,EAAW,GAAG,OAAM,EAAgC;AAC1E,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,WAAA,EAAU,eAAA;AAAA,MACV,SAAA,EAAW,EAAA;AAAA,QACT,wDAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG;AAAA;AAAA,GACN;AAEJ;AAGA,SAAS,WAAA,CAAY;AAAA,EACnB,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAuD;AACrD,EAAA,uBACE,GAAA;AAAA,IAAiB,eAAA,CAAA,KAAA;AAAA,IAAhB;AAAA,MACC,WAAA,EAAU,cAAA;AAAA,MACV,SAAA,EAAW,EAAA,CAAG,oCAAA,EAAsC,SAAS,CAAA;AAAA,MAC5D,GAAG;AAAA;AAAA,GACN;AAEJ;AAGA,SAAS,iBAAA,CAAkB;AAAA,EACzB,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAA6D;AAC3D,EAAA,uBACE,GAAA;AAAA,IAAiB,eAAA,CAAA,WAAA;AAAA,IAAhB;AAAA,MACC,WAAA,EAAU,oBAAA;AAAA,MACV,SAAA,EAAW,EAAA,CAAG,+BAAA,EAAiC,SAAS,CAAA;AAAA,MACvD,GAAG;AAAA;AAAA,GACN;AAEJ","file":"chunk-F2ZJLKDP.js","sourcesContent":["import * as React from \"react\";\nimport * as DialogPrimitive from \"@radix-ui/react-dialog\";\nimport { XIcon } from \"lucide-react\";\n\nimport { cn } from \"../lib/utils\";\n\n/**\n * Modal dialog component built on Radix UI Dialog.\n *\n * Renders a centered overlay panel that interrupts the user with important content\n * and expects a response. Supports controlled (`open`/`onOpenChange`) and\n * uncontrolled usage (via `DialogTrigger`).\n *\n * @example\n * ```tsx\n * <Dialog open={open} onOpenChange={setOpen}>\n * <DialogTrigger asChild>\n * <Button>Open Dialog</Button>\n * </DialogTrigger>\n * <DialogContent>\n * <DialogHeader>\n * <DialogTitle>Edit Profile</DialogTitle>\n * <DialogDescription>\n * Make changes to your profile here.\n * </DialogDescription>\n * </DialogHeader>\n * <div className=\"space-y-4\">\n * <Input placeholder=\"Name\" />\n * </div>\n * <DialogFooter>\n * <Button variant=\"outline\" onClick={() => setOpen(false)}>\n * Cancel\n * </Button>\n * <Button>Save Changes</Button>\n * </DialogFooter>\n * </DialogContent>\n * </Dialog>\n * ```\n */\nfunction Dialog({\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Root>) {\n return <DialogPrimitive.Root data-slot=\"dialog\" {...props} />;\n}\n\n/** Element that opens the dialog when clicked. Use `asChild` to merge into your own button. */\nfunction DialogTrigger({\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Trigger>) {\n return <DialogPrimitive.Trigger data-slot=\"dialog-trigger\" {...props} />;\n}\n\n/** Portal that renders dialog content outside the DOM hierarchy. */\nfunction DialogPortal({\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Portal>) {\n return <DialogPrimitive.Portal data-slot=\"dialog-portal\" {...props} />;\n}\n\n/** Button that closes the dialog. Use `asChild` to merge into your own button. */\nfunction DialogClose({\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Close>) {\n return <DialogPrimitive.Close data-slot=\"dialog-close\" {...props} />;\n}\n\n/** Semi-transparent backdrop rendered behind the dialog content. */\nconst DialogOverlay = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Overlay>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Overlay>\n>(({ className, ...props }, ref) => {\n return (\n <DialogPrimitive.Overlay\n ref={ref}\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});\nDialogOverlay.displayName = DialogPrimitive.Overlay.displayName;\n\n/** Dialog content panel with overlay backdrop and a built-in close button. */\nconst DialogContent = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Content>\n>(({ className, children, ...props }, ref) => {\n return (\n <DialogPortal data-slot=\"dialog-portal\">\n <DialogOverlay />\n <DialogPrimitive.Content\n ref={ref}\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-dialog shadow-lg duration-200 sm:max-w-lg\",\n className,\n )}\n {...props}\n >\n {children}\n <DialogPrimitive.Close 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 <XIcon />\n <span className=\"sr-only\">Close</span>\n </DialogPrimitive.Close>\n </DialogPrimitive.Content>\n </DialogPortal>\n );\n});\nDialogContent.displayName = DialogPrimitive.Content.displayName;\n\n/** Container for DialogTitle and DialogDescription at the top of the dialog. */\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\n/** Container for action buttons at the bottom of the dialog. */\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\n/** Accessible title rendered inside DialogHeader. */\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\n/** Accessible description rendered inside DialogHeader below the title. */\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};"]}
@@ -1,66 +0,0 @@
1
- import { cn } from './chunk-DGPY4WP3.js';
2
- import * as TabsPrimitive from '@radix-ui/react-tabs';
3
- import { jsx } from 'react/jsx-runtime';
4
-
5
- function Tabs({
6
- className,
7
- ...props
8
- }) {
9
- return /* @__PURE__ */ jsx(
10
- TabsPrimitive.Root,
11
- {
12
- "data-slot": "tabs",
13
- className: cn("flex flex-col gap-2", className),
14
- ...props
15
- }
16
- );
17
- }
18
- function TabsList({
19
- className,
20
- ...props
21
- }) {
22
- return /* @__PURE__ */ jsx(
23
- TabsPrimitive.List,
24
- {
25
- "data-slot": "tabs-list",
26
- className: cn(
27
- "bg-muted text-muted-foreground inline-flex h-element w-fit items-center justify-center rounded-xl p-[3px] flex",
28
- className
29
- ),
30
- ...props
31
- }
32
- );
33
- }
34
- function TabsTrigger({
35
- className,
36
- ...props
37
- }) {
38
- return /* @__PURE__ */ jsx(
39
- TabsPrimitive.Trigger,
40
- {
41
- "data-slot": "tabs-trigger",
42
- className: cn(
43
- "data-[state=active]:bg-card dark:data-[state=active]:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 text-foreground dark:text-muted-foreground inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-xl border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
44
- className
45
- ),
46
- ...props
47
- }
48
- );
49
- }
50
- function TabsContent({
51
- className,
52
- ...props
53
- }) {
54
- return /* @__PURE__ */ jsx(
55
- TabsPrimitive.Content,
56
- {
57
- "data-slot": "tabs-content",
58
- className: cn("flex-1 outline-none", className),
59
- ...props
60
- }
61
- );
62
- }
63
-
64
- export { Tabs, TabsContent, TabsList, TabsTrigger };
65
- //# sourceMappingURL=chunk-FLWMT4DB.js.map
66
- //# sourceMappingURL=chunk-FLWMT4DB.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/tabs.tsx"],"names":[],"mappings":";;;;AA+BA,SAAS,IAAA,CAAK;AAAA,EACZ,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAoD;AAClD,EAAA,uBACE,GAAA;AAAA,IAAe,aAAA,CAAA,IAAA;AAAA,IAAd;AAAA,MACC,WAAA,EAAU,MAAA;AAAA,MACV,SAAA,EAAW,EAAA,CAAG,qBAAA,EAAuB,SAAS,CAAA;AAAA,MAC7C,GAAG;AAAA;AAAA,GACN;AAEJ;AAGA,SAAS,QAAA,CAAS;AAAA,EAChB,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAoD;AAClD,EAAA,uBACE,GAAA;AAAA,IAAe,aAAA,CAAA,IAAA;AAAA,IAAd;AAAA,MACC,WAAA,EAAU,WAAA;AAAA,MACV,SAAA,EAAW,EAAA;AAAA,QACT,gHAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG;AAAA;AAAA,GACN;AAEJ;AAGA,SAAS,WAAA,CAAY;AAAA,EACnB,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAuD;AACrD,EAAA,uBACE,GAAA;AAAA,IAAe,aAAA,CAAA,OAAA;AAAA,IAAd;AAAA,MACC,WAAA,EAAU,cAAA;AAAA,MACV,SAAA,EAAW,EAAA;AAAA,QACT,6nBAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG;AAAA;AAAA,GACN;AAEJ;AAGA,SAAS,WAAA,CAAY;AAAA,EACnB,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAuD;AACrD,EAAA,uBACE,GAAA;AAAA,IAAe,aAAA,CAAA,OAAA;AAAA,IAAd;AAAA,MACC,WAAA,EAAU,cAAA;AAAA,MACV,SAAA,EAAW,EAAA,CAAG,qBAAA,EAAuB,SAAS,CAAA;AAAA,MAC7C,GAAG;AAAA;AAAA,GACN;AAEJ","file":"chunk-FLWMT4DB.js","sourcesContent":["import * as React from \"react\";\nimport * as TabsPrimitive from \"@radix-ui/react-tabs\";\n\nimport { cn } from \"../lib/utils\";\n\n/**\n * Tabbed interface component with list, trigger, and content sub-components.\n *\n * Built on Radix Tabs with density-aware sizing (`h-element` for the tab list).\n * Supports keyboard navigation and focus management out of the box.\n *\n * @example\n * ```tsx\n * <Tabs defaultValue=\"overview\">\n * <TabsList>\n * <TabsTrigger value=\"overview\">Overview</TabsTrigger>\n * <TabsTrigger value=\"analytics\">Analytics</TabsTrigger>\n * <TabsTrigger value=\"settings\">Settings</TabsTrigger>\n * </TabsList>\n * <TabsContent value=\"overview\">\n * <p>Overview content here.</p>\n * </TabsContent>\n * <TabsContent value=\"analytics\">\n * <p>Analytics content here.</p>\n * </TabsContent>\n * <TabsContent value=\"settings\">\n * <p>Settings content here.</p>\n * </TabsContent>\n * </Tabs>\n * ```\n */\nfunction Tabs({\n className,\n ...props\n}: React.ComponentProps<typeof TabsPrimitive.Root>) {\n return (\n <TabsPrimitive.Root\n data-slot=\"tabs\"\n className={cn(\"flex flex-col gap-2\", className)}\n {...props}\n />\n );\n}\n\n/** Container for `TabsTrigger` elements. Renders as a rounded pill with muted background. */\nfunction TabsList({\n className,\n ...props\n}: React.ComponentProps<typeof TabsPrimitive.List>) {\n return (\n <TabsPrimitive.List\n data-slot=\"tabs-list\"\n className={cn(\n \"bg-muted text-muted-foreground inline-flex h-element w-fit items-center justify-center rounded-xl p-[3px] flex\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Individual tab button. Highlights with a card background when active. Requires a `value` prop matching a `TabsContent`. */\nfunction TabsTrigger({\n className,\n ...props\n}: React.ComponentProps<typeof TabsPrimitive.Trigger>) {\n return (\n <TabsPrimitive.Trigger\n data-slot=\"tabs-trigger\"\n className={cn(\n \"data-[state=active]:bg-card dark:data-[state=active]:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 text-foreground dark:text-muted-foreground inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-xl border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Content panel shown when its `value` matches the active tab. */\nfunction TabsContent({\n className,\n ...props\n}: React.ComponentProps<typeof TabsPrimitive.Content>) {\n return (\n <TabsPrimitive.Content\n data-slot=\"tabs-content\"\n className={cn(\"flex-1 outline-none\", className)}\n {...props}\n />\n );\n}\n\nexport { Tabs, TabsList, TabsTrigger, TabsContent };"]}
@@ -1,48 +0,0 @@
1
- import { cn } from './chunk-DGPY4WP3.js';
2
- import { GripVerticalIcon } from 'lucide-react';
3
- import * as ResizablePrimitive from 'react-resizable-panels';
4
- import { jsx } from 'react/jsx-runtime';
5
-
6
- function ResizablePanelGroup({
7
- className,
8
- ...props
9
- }) {
10
- return /* @__PURE__ */ jsx(
11
- ResizablePrimitive.PanelGroup,
12
- {
13
- "data-slot": "resizable-panel-group",
14
- className: cn(
15
- "flex h-full w-full data-[panel-group-direction=vertical]:flex-col",
16
- className
17
- ),
18
- ...props
19
- }
20
- );
21
- }
22
- function ResizablePanel({
23
- ...props
24
- }) {
25
- return /* @__PURE__ */ jsx(ResizablePrimitive.Panel, { "data-slot": "resizable-panel", ...props });
26
- }
27
- function ResizableHandle({
28
- withHandle,
29
- className,
30
- ...props
31
- }) {
32
- return /* @__PURE__ */ jsx(
33
- ResizablePrimitive.PanelResizeHandle,
34
- {
35
- "data-slot": "resizable-handle",
36
- className: cn(
37
- "bg-border focus-visible:ring-ring relative flex w-px items-center justify-center after:absolute after:inset-y-0 after:left-1/2 after:w-1 after:-translate-x-1/2 focus-visible:ring-1 focus-visible:ring-offset-1 focus-visible:outline-hidden data-[panel-group-direction=vertical]:h-px data-[panel-group-direction=vertical]:w-full data-[panel-group-direction=vertical]:after:left-0 data-[panel-group-direction=vertical]:after:h-1 data-[panel-group-direction=vertical]:after:w-full data-[panel-group-direction=vertical]:after:-translate-y-1/2 data-[panel-group-direction=vertical]:after:translate-x-0 [&[data-panel-group-direction=vertical]>div]:rotate-90",
38
- className
39
- ),
40
- ...props,
41
- children: withHandle && /* @__PURE__ */ jsx("div", { className: "bg-border z-10 flex h-4 w-3 items-center justify-center rounded-xs border", children: /* @__PURE__ */ jsx(GripVerticalIcon, { className: "size-2.5" }) })
42
- }
43
- );
44
- }
45
-
46
- export { ResizableHandle, ResizablePanel, ResizablePanelGroup };
47
- //# sourceMappingURL=chunk-FRKG7JQY.js.map
48
- //# sourceMappingURL=chunk-FRKG7JQY.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/resizable.tsx"],"names":[],"mappings":";;;;;AAyBA,SAAS,mBAAA,CAAoB;AAAA,EAC3B,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAA+D;AAC7D,EAAA,uBACE,GAAA;AAAA,IAAoB,kBAAA,CAAA,UAAA;AAAA,IAAnB;AAAA,MACC,WAAA,EAAU,uBAAA;AAAA,MACV,SAAA,EAAW,EAAA;AAAA,QACT,mEAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG;AAAA;AAAA,GACN;AAEJ;AAGA,SAAS,cAAA,CAAe;AAAA,EACtB,GAAG;AACL,CAAA,EAA0D;AACxD,EAAA,2BAA2B,kBAAA,CAAA,KAAA,EAAnB,EAAyB,WAAA,EAAU,iBAAA,EAAmB,GAAG,KAAA,EAAO,CAAA;AAC1E;AAOA,SAAS,eAAA,CAAgB;AAAA,EACvB,UAAA;AAAA,EACA,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAEG;AACD,EAAA,uBACE,GAAA;AAAA,IAAoB,kBAAA,CAAA,iBAAA;AAAA,IAAnB;AAAA,MACC,WAAA,EAAU,kBAAA;AAAA,MACV,SAAA,EAAW,EAAA;AAAA,QACT,2oBAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA,UAAA,wBACE,KAAA,EAAA,EAAI,SAAA,EAAU,6EACb,QAAA,kBAAA,GAAA,CAAC,gBAAA,EAAA,EAAiB,SAAA,EAAU,UAAA,EAAW,CAAA,EACzC;AAAA;AAAA,GAEJ;AAEJ","file":"chunk-FRKG7JQY.js","sourcesContent":["import * as React from \"react\";\nimport { GripVerticalIcon } from \"lucide-react\";\nimport * as ResizablePrimitive from \"react-resizable-panels\";\n\nimport { cn } from \"../lib/utils\";\n\n/**\n * Resizable panel layout built on `react-resizable-panels`.\n *\n * Groups multiple `ResizablePanel` components separated by `ResizableHandle` drag handles.\n * Supports horizontal (default) and vertical layouts via the `direction` prop.\n *\n * @example\n * ```tsx\n * <ResizablePanelGroup direction=\"horizontal\">\n * <ResizablePanel defaultSize={50}>\n * <div className=\"p-4\">Left panel</div>\n * </ResizablePanel>\n * <ResizableHandle withHandle />\n * <ResizablePanel defaultSize={50}>\n * <div className=\"p-4\">Right panel</div>\n * </ResizablePanel>\n * </ResizablePanelGroup>\n * ```\n */\nfunction ResizablePanelGroup({\n className,\n ...props\n}: React.ComponentProps<typeof ResizablePrimitive.PanelGroup>) {\n return (\n <ResizablePrimitive.PanelGroup\n data-slot=\"resizable-panel-group\"\n className={cn(\n \"flex h-full w-full data-[panel-group-direction=vertical]:flex-col\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Individual resizable panel. Use `defaultSize` (percentage) to set the initial width/height. */\nfunction ResizablePanel({\n ...props\n}: React.ComponentProps<typeof ResizablePrimitive.Panel>) {\n return <ResizablePrimitive.Panel data-slot=\"resizable-panel\" {...props} />;\n}\n\n/**\n * Draggable handle between resizable panels.\n *\n * @param withHandle - When true, renders a visible grip icon on the handle for better discoverability.\n */\nfunction ResizableHandle({\n withHandle,\n className,\n ...props\n}: React.ComponentProps<typeof ResizablePrimitive.PanelResizeHandle> & {\n withHandle?: boolean;\n}) {\n return (\n <ResizablePrimitive.PanelResizeHandle\n data-slot=\"resizable-handle\"\n className={cn(\n \"bg-border focus-visible:ring-ring relative flex w-px items-center justify-center after:absolute after:inset-y-0 after:left-1/2 after:w-1 after:-translate-x-1/2 focus-visible:ring-1 focus-visible:ring-offset-1 focus-visible:outline-hidden data-[panel-group-direction=vertical]:h-px data-[panel-group-direction=vertical]:w-full data-[panel-group-direction=vertical]:after:left-0 data-[panel-group-direction=vertical]:after:h-1 data-[panel-group-direction=vertical]:after:w-full data-[panel-group-direction=vertical]:after:-translate-y-1/2 data-[panel-group-direction=vertical]:after:translate-x-0 [&[data-panel-group-direction=vertical]>div]:rotate-90\",\n className,\n )}\n {...props}\n >\n {withHandle && (\n <div className=\"bg-border z-10 flex h-4 w-3 items-center justify-center rounded-xs border\">\n <GripVerticalIcon className=\"size-2.5\" />\n </div>\n )}\n </ResizablePrimitive.PanelResizeHandle>\n );\n}\n\nexport { ResizablePanelGroup, ResizablePanel, ResizableHandle };"]}