@customafk/lunas-ui 0.0.26 → 0.0.27

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 (364) hide show
  1. package/dist/{alert-dialog-D-oR0YW3.cjs → alert-dialog-26JyobJb.cjs} +1 -1
  2. package/dist/{alert-dialog-D-oR0YW3.cjs.map → alert-dialog-26JyobJb.cjs.map} +1 -1
  3. package/dist/{alert-dialog-CNHyP_A9.js → alert-dialog-Dv0cgymS.js} +1 -1
  4. package/dist/{alert-dialog-CNHyP_A9.js.map → alert-dialog-Dv0cgymS.js.map} +1 -1
  5. package/dist/{button-BmBtMriU.d.ts → button-CPBLm_02.d.ts} +5 -5
  6. package/dist/{button-tCnJHt8O.d.cts → button-ghXW1WTr.d.cts} +5 -5
  7. package/dist/{calendar-CbuOOMpK.js → calendar-B66UT_fu.js} +1 -1
  8. package/dist/{calendar-CbuOOMpK.js.map → calendar-B66UT_fu.js.map} +1 -1
  9. package/dist/{calendar-B8IKzrdN.cjs → calendar-DXegnGRJ.cjs} +1 -1
  10. package/dist/{calendar-B8IKzrdN.cjs.map → calendar-DXegnGRJ.cjs.map} +1 -1
  11. package/dist/{command-Dr2XmKV6.d.cts → command-CE_Qcgo7.d.ts} +12 -12
  12. package/dist/{command-Dvq-HZwH.d.ts → command-CiEjoEnP.d.cts} +12 -12
  13. package/dist/{command-TFZwJmux.js → command-Dbkg10QA.js} +2 -2
  14. package/dist/{command-TFZwJmux.js.map → command-Dbkg10QA.js.map} +1 -1
  15. package/dist/{command-CoB5R5FI.cjs → command-IL3ogESu.cjs} +2 -2
  16. package/dist/{command-CoB5R5FI.cjs.map → command-IL3ogESu.cjs.map} +1 -1
  17. package/dist/data-display/empty.d.cts +2 -2
  18. package/dist/data-display/statistic.d.cts +2 -2
  19. package/dist/data-display/statistic.d.ts +2 -2
  20. package/dist/{dialog-CSDDiHKO.js → dialog-BEdMA5Lp.js} +1 -1
  21. package/dist/{dialog-CSDDiHKO.js.map → dialog-BEdMA5Lp.js.map} +1 -1
  22. package/dist/{dialog-C-DYoapJ.d.ts → dialog-Bw_T5aco.d.cts} +12 -12
  23. package/dist/{dialog-_Cgij9NP.cjs → dialog-C4oHnJNN.cjs} +1 -1
  24. package/dist/{dialog-_Cgij9NP.cjs.map → dialog-C4oHnJNN.cjs.map} +1 -1
  25. package/dist/{dialog-CA0E_tNX.d.cts → dialog-CoH1pTBH.d.ts} +12 -12
  26. package/dist/dialogs/confirm-dialog.cjs +1 -1
  27. package/dist/dialogs/confirm-dialog.js +1 -1
  28. package/dist/dialogs/detail-dialog/component/sidebar.d.cts +4 -4
  29. package/dist/dialogs/detail-dialog/component/sidebar.d.ts +28 -28
  30. package/dist/dialogs/detail-dialog/index.cjs +1 -1
  31. package/dist/dialogs/detail-dialog/index.js +1 -1
  32. package/dist/dialogs/error-dialog.cjs +1 -1
  33. package/dist/dialogs/error-dialog.js +1 -1
  34. package/dist/dialogs/form-dialog.cjs +1 -1
  35. package/dist/dialogs/form-dialog.d.cts +2 -2
  36. package/dist/dialogs/form-dialog.d.ts +2 -2
  37. package/dist/dialogs/form-dialog.js +1 -1
  38. package/dist/dialogs/loading-dialog.cjs +1 -1
  39. package/dist/dialogs/loading-dialog.js +1 -1
  40. package/dist/{error-dialog-D5R5le-W.cjs → error-dialog-C0PDn-pj.cjs} +2 -2
  41. package/dist/{error-dialog-D5R5le-W.cjs.map → error-dialog-C0PDn-pj.cjs.map} +1 -1
  42. package/dist/{error-dialog-Q99thrSD.js → error-dialog-CCdQ8zbQ.js} +2 -2
  43. package/dist/{error-dialog-Q99thrSD.js.map → error-dialog-CCdQ8zbQ.js.map} +1 -1
  44. package/dist/{form-wrapper-CY-stRaQ.cjs → form-wrapper-Cd8c5MIL.cjs} +2 -2
  45. package/dist/{form-wrapper-CY-stRaQ.cjs.map → form-wrapper-Cd8c5MIL.cjs.map} +1 -1
  46. package/dist/{form-wrapper-C2xlvWx0.js → form-wrapper-DntbFqN1.js} +2 -2
  47. package/dist/{form-wrapper-C2xlvWx0.js.map → form-wrapper-DntbFqN1.js.map} +1 -1
  48. package/dist/forms/combobox-field.cjs +1 -1
  49. package/dist/forms/combobox-field.d.cts +2 -2
  50. package/dist/forms/combobox-field.d.ts +2 -2
  51. package/dist/forms/combobox-field.js +1 -1
  52. package/dist/forms/date-field.cjs +1 -1
  53. package/dist/forms/date-field.d.cts +2 -2
  54. package/dist/forms/date-field.d.ts +2 -2
  55. package/dist/forms/date-field.js +1 -1
  56. package/dist/forms/form-wrapper.cjs +1 -1
  57. package/dist/forms/form-wrapper.d.cts +2 -2
  58. package/dist/forms/form-wrapper.d.ts +2 -2
  59. package/dist/forms/form-wrapper.js +1 -1
  60. package/dist/forms/multi-select-field.cjs +1 -1
  61. package/dist/forms/multi-select-field.cjs.map +1 -1
  62. package/dist/forms/multi-select-field.d.cts +2 -2
  63. package/dist/forms/multi-select-field.d.ts +2 -2
  64. package/dist/forms/multi-select-field.js +1 -1
  65. package/dist/forms/number-field.d.cts +2 -2
  66. package/dist/forms/number-field.d.ts +2 -2
  67. package/dist/forms/password-field.d.cts +2 -2
  68. package/dist/forms/password-field.d.ts +2 -2
  69. package/dist/forms/select-field.d.cts +2 -2
  70. package/dist/forms/select-field.d.ts +2 -2
  71. package/dist/forms/switch-field.d.cts +2 -2
  72. package/dist/forms/switch-field.d.ts +2 -2
  73. package/dist/forms/text-field.d.cts +2 -2
  74. package/dist/forms/text-field.d.ts +2 -2
  75. package/dist/forms/textarea-field.d.cts +2 -2
  76. package/dist/forms/textarea-field.d.ts +2 -2
  77. package/dist/{input-CjNcnHb_.d.ts → input-CUDclgoU.d.ts} +3 -3
  78. package/dist/{input-BsXm0_Iq.d.cts → input-y_n-XGys.d.cts} +3 -3
  79. package/dist/layouts/app-layout/index.d.cts +5 -5
  80. package/dist/layouts/app-layout/index.d.ts +3 -3
  81. package/dist/layouts/flex.d.cts +4 -4
  82. package/dist/layouts/flex.d.ts +4 -4
  83. package/dist/layouts/main/index.d.cts +4 -4
  84. package/dist/layouts/main/index.d.ts +4 -4
  85. package/dist/{multi-select-Cjvm4tK5.cjs → multi-select-3yxD9gbY.cjs} +2 -2
  86. package/dist/{multi-select-Cjvm4tK5.cjs.map → multi-select-3yxD9gbY.cjs.map} +1 -1
  87. package/dist/{multi-select-D0bZVOnm.js → multi-select-Cb07NlA7.js} +2 -2
  88. package/dist/{multi-select-D0bZVOnm.js.map → multi-select-Cb07NlA7.js.map} +1 -1
  89. package/dist/{popover-CTFp7ZXi.js → popover-CqAD7HNo.js} +1 -1
  90. package/dist/{popover-CTFp7ZXi.js.map → popover-CqAD7HNo.js.map} +1 -1
  91. package/dist/{popover-DCcPvdz2.cjs → popover-Dd0acCEk.cjs} +1 -1
  92. package/dist/{popover-DCcPvdz2.cjs.map → popover-Dd0acCEk.cjs.map} +1 -1
  93. package/dist/{separator-5FdzRGaJ.d.ts → separator-BLYi41aC.d.ts} +3 -3
  94. package/dist/{separator-DpxrpK_H.d.cts → separator-ClGBPiYE.d.cts} +3 -3
  95. package/dist/table/index.d.cts +2 -2
  96. package/dist/table/index.d.ts +2 -2
  97. package/dist/{toggle-Cx9H5u3p.d.cts → toggle-BWQWsKMA.d.ts} +4 -4
  98. package/dist/{toggle-DH9IssyE.d.ts → toggle-DnGvFJh8.d.cts} +4 -4
  99. package/dist/{tooltip-Djh_dcy5.d.ts → tooltip-Bk8VwHdM.d.ts} +6 -6
  100. package/dist/{tooltip-BAtWdJyX.d.cts → tooltip-cisSpCHG.d.cts} +6 -6
  101. package/dist/typography/paragraph.d.cts +2 -2
  102. package/dist/typography/paragraph.d.ts +2 -2
  103. package/dist/typography/title.d.cts +2 -2
  104. package/dist/typography/title.d.ts +2 -2
  105. package/dist/ui/alert-dialog.cjs +1 -1
  106. package/dist/ui/alert-dialog.d.cts +12 -12
  107. package/dist/ui/alert-dialog.d.ts +12 -12
  108. package/dist/ui/alert-dialog.js +1 -1
  109. package/dist/ui/alert.d.cts +6 -6
  110. package/dist/ui/alert.d.ts +6 -6
  111. package/dist/ui/aspect-ratio.d.cts +2 -2
  112. package/dist/ui/aspect-ratio.d.ts +2 -2
  113. package/dist/ui/avatar.d.cts +4 -4
  114. package/dist/ui/avatar.d.ts +4 -4
  115. package/dist/ui/badge.d.cts +2 -2
  116. package/dist/ui/badge.d.ts +4 -4
  117. package/dist/ui/breadcrumb.d.cts +8 -8
  118. package/dist/ui/breadcrumb.d.ts +8 -8
  119. package/dist/ui/button.d.cts +1 -1
  120. package/dist/ui/button.d.ts +1 -1
  121. package/dist/ui/calendar.cjs +1 -1
  122. package/dist/ui/calendar.d.cts +4 -4
  123. package/dist/ui/calendar.d.ts +4 -4
  124. package/dist/ui/calendar.js +1 -1
  125. package/dist/ui/card.d.cts +8 -8
  126. package/dist/ui/card.d.ts +8 -8
  127. package/dist/ui/carousel.d.cts +7 -7
  128. package/dist/ui/carousel.d.ts +7 -7
  129. package/dist/ui/collapsible.d.cts +4 -4
  130. package/dist/ui/collapsible.d.ts +4 -4
  131. package/dist/ui/command.cjs +1 -1
  132. package/dist/ui/command.d.cts +2 -2
  133. package/dist/ui/command.d.ts +2 -2
  134. package/dist/ui/command.js +1 -1
  135. package/dist/ui/context-menu.d.cts +16 -16
  136. package/dist/ui/context-menu.d.ts +16 -16
  137. package/dist/ui/dialog.cjs +1 -1
  138. package/dist/ui/dialog.d.cts +1 -1
  139. package/dist/ui/dialog.d.ts +1 -1
  140. package/dist/ui/dialog.js +1 -1
  141. package/dist/ui/dropdown-menu.d.cts +16 -16
  142. package/dist/ui/dropdown-menu.d.ts +16 -16
  143. package/dist/ui/file-uploader.d.cts +2 -2
  144. package/dist/ui/file-uploader.d.ts +2 -2
  145. package/dist/ui/form.d.cts +7 -7
  146. package/dist/ui/form.d.ts +7 -7
  147. package/dist/ui/hover-card.d.cts +4 -4
  148. package/dist/ui/hover-card.d.ts +4 -4
  149. package/dist/ui/input-otp.d.cts +5 -5
  150. package/dist/ui/input-otp.d.ts +5 -5
  151. package/dist/ui/input.d.cts +1 -1
  152. package/dist/ui/input.d.ts +1 -1
  153. package/dist/ui/inputs/search-input.d.cts +1 -1
  154. package/dist/ui/inputs/search-input.d.ts +3 -3
  155. package/dist/ui/label.d.cts +2 -2
  156. package/dist/ui/label.d.ts +2 -2
  157. package/dist/ui/menubar.d.cts +17 -17
  158. package/dist/ui/menubar.d.ts +17 -17
  159. package/dist/ui/multi-select.cjs +1 -1
  160. package/dist/ui/multi-select.d.cts +2 -2
  161. package/dist/ui/multi-select.d.ts +2 -2
  162. package/dist/ui/multi-select.js +1 -1
  163. package/dist/ui/navigation-menu.d.cts +11 -11
  164. package/dist/ui/navigation-menu.d.ts +9 -9
  165. package/dist/ui/pagination.d.cts +9 -9
  166. package/dist/ui/pagination.d.ts +9 -9
  167. package/dist/ui/popover.cjs +1 -1
  168. package/dist/ui/popover.d.cts +5 -5
  169. package/dist/ui/popover.d.ts +5 -5
  170. package/dist/ui/popover.js +1 -1
  171. package/dist/ui/progress.d.cts +2 -2
  172. package/dist/ui/progress.d.ts +2 -2
  173. package/dist/ui/radio-group.d.cts +3 -3
  174. package/dist/ui/radio-group.d.ts +3 -3
  175. package/dist/ui/resizable.d.cts +4 -4
  176. package/dist/ui/resizable.d.ts +4 -4
  177. package/dist/ui/scroll-area.d.ts +3 -3
  178. package/dist/ui/select.d.cts +11 -11
  179. package/dist/ui/select.d.ts +11 -11
  180. package/dist/ui/separator.d.cts +1 -1
  181. package/dist/ui/separator.d.ts +1 -1
  182. package/dist/ui/sheet.d.cts +9 -9
  183. package/dist/ui/sheet.d.ts +9 -9
  184. package/dist/ui/sidebar.d.cts +30 -30
  185. package/dist/ui/sidebar.d.ts +30 -30
  186. package/dist/ui/skeleton.d.cts +2 -2
  187. package/dist/ui/skeleton.d.ts +2 -2
  188. package/dist/ui/slider.d.cts +2 -2
  189. package/dist/ui/slider.d.ts +2 -2
  190. package/dist/ui/sonner.d.cts +2 -2
  191. package/dist/ui/sonner.d.ts +2 -2
  192. package/dist/ui/switch.d.cts +2 -2
  193. package/dist/ui/switch.d.ts +2 -2
  194. package/dist/ui/table.d.cts +9 -9
  195. package/dist/ui/table.d.ts +9 -9
  196. package/dist/ui/tabs.d.cts +5 -5
  197. package/dist/ui/tabs.d.ts +5 -5
  198. package/dist/ui/textarea.d.cts +2 -2
  199. package/dist/ui/textarea.d.ts +2 -2
  200. package/dist/ui/toggle-group.d.cts +4 -4
  201. package/dist/ui/toggle-group.d.ts +4 -4
  202. package/dist/ui/toggle.d.cts +1 -1
  203. package/dist/ui/toggle.d.ts +1 -1
  204. package/dist/ui/tooltip.d.cts +1 -1
  205. package/dist/ui/tooltip.d.ts +1 -1
  206. package/package.json +2 -2
  207. package/styles/base.css +29 -0
  208. package/styles/loader.css +113 -0
  209. package/styles/theme.css +104 -0
  210. package/styles/typography.css +6 -0
  211. package/packages/components/cards/simple-card.tsx +0 -23
  212. package/packages/components/data-display/country.tsx +0 -53
  213. package/packages/components/data-display/data-list.tsx +0 -29
  214. package/packages/components/data-display/date-tooltip.tsx +0 -23
  215. package/packages/components/data-display/date.tsx +0 -157
  216. package/packages/components/data-display/empty.tsx +0 -13
  217. package/packages/components/data-display/name.tsx +0 -23
  218. package/packages/components/data-display/phone-number.tsx +0 -14
  219. package/packages/components/data-display/role-badge.tsx +0 -29
  220. package/packages/components/data-display/statistic.tsx +0 -139
  221. package/packages/components/dialogs/confirm-dialog.tsx +0 -44
  222. package/packages/components/dialogs/detail-dialog/component/header.tsx +0 -10
  223. package/packages/components/dialogs/detail-dialog/component/main.tsx +0 -35
  224. package/packages/components/dialogs/detail-dialog/component/sidebar.tsx +0 -618
  225. package/packages/components/dialogs/detail-dialog/component/wrapper.tsx +0 -15
  226. package/packages/components/dialogs/detail-dialog/index.tsx +0 -91
  227. package/packages/components/dialogs/error-dialog.tsx +0 -34
  228. package/packages/components/dialogs/form-dialog.tsx +0 -74
  229. package/packages/components/dialogs/loading-dialog.tsx +0 -20
  230. package/packages/components/forms/combobox-field.tsx +0 -104
  231. package/packages/components/forms/date-field.tsx +0 -62
  232. package/packages/components/forms/form-wrapper.tsx +0 -120
  233. package/packages/components/forms/multi-select-field.tsx +0 -56
  234. package/packages/components/forms/number-field.tsx +0 -54
  235. package/packages/components/forms/password-field.tsx +0 -38
  236. package/packages/components/forms/select-field.tsx +0 -58
  237. package/packages/components/forms/switch-field.tsx +0 -40
  238. package/packages/components/forms/text-field.tsx +0 -73
  239. package/packages/components/forms/textarea-field.tsx +0 -45
  240. package/packages/components/index.tsx +0 -0
  241. package/packages/components/layouts/app-layout/index.tsx +0 -74
  242. package/packages/components/layouts/app-layout/sidebar.tsx +0 -663
  243. package/packages/components/layouts/flex.tsx +0 -99
  244. package/packages/components/layouts/main/content.tsx +0 -11
  245. package/packages/components/layouts/main/header.tsx +0 -41
  246. package/packages/components/layouts/main/index.tsx +0 -3
  247. package/packages/components/layouts/main/wrapper.tsx +0 -5
  248. package/packages/components/table/data-table-pagination.tsx +0 -70
  249. package/packages/components/table/data-table.tsx +0 -241
  250. package/packages/components/table/index.tsx +0 -107
  251. package/packages/components/typography/paragraph.tsx +0 -29
  252. package/packages/components/typography/title.tsx +0 -31
  253. package/packages/components/ui/alert-dialog.tsx +0 -99
  254. package/packages/components/ui/alert.tsx +0 -44
  255. package/packages/components/ui/aspect-ratio.tsx +0 -11
  256. package/packages/components/ui/avatar.tsx +0 -25
  257. package/packages/components/ui/badge.tsx +0 -57
  258. package/packages/components/ui/breadcrumb.tsx +0 -74
  259. package/packages/components/ui/button.tsx +0 -205
  260. package/packages/components/ui/buttons/add-new.tsx +0 -19
  261. package/packages/components/ui/buttons/edit.tsx +0 -14
  262. package/packages/components/ui/buttons/refresh.tsx +0 -19
  263. package/packages/components/ui/buttons/trash.tsx +0 -14
  264. package/packages/components/ui/buttons/upload-image.tsx +0 -25
  265. package/packages/components/ui/calendar.tsx +0 -141
  266. package/packages/components/ui/card.tsx +0 -44
  267. package/packages/components/ui/carousel.tsx +0 -187
  268. package/packages/components/ui/checkbox.tsx +0 -34
  269. package/packages/components/ui/collapsible.tsx +0 -17
  270. package/packages/components/ui/command.tsx +0 -138
  271. package/packages/components/ui/context-menu.tsx +0 -196
  272. package/packages/components/ui/dialog.tsx +0 -119
  273. package/packages/components/ui/dropdown-menu.tsx +0 -249
  274. package/packages/components/ui/file-uploader.tsx +0 -314
  275. package/packages/components/ui/form.tsx +0 -104
  276. package/packages/components/ui/hover-card.tsx +0 -32
  277. package/packages/components/ui/input-otp.tsx +0 -67
  278. package/packages/components/ui/input.tsx +0 -59
  279. package/packages/components/ui/inputs/number-input.tsx +0 -317
  280. package/packages/components/ui/inputs/password-input.tsx +0 -29
  281. package/packages/components/ui/inputs/search-input.tsx +0 -24
  282. package/packages/components/ui/label.tsx +0 -26
  283. package/packages/components/ui/menubar.tsx +0 -212
  284. package/packages/components/ui/multi-select.tsx +0 -626
  285. package/packages/components/ui/navigation-menu.tsx +0 -124
  286. package/packages/components/ui/pagination.tsx +0 -70
  287. package/packages/components/ui/popover.tsx +0 -49
  288. package/packages/components/ui/progress.tsx +0 -19
  289. package/packages/components/ui/radio-group.tsx +0 -36
  290. package/packages/components/ui/resizable.tsx +0 -47
  291. package/packages/components/ui/scroll-area.tsx +0 -35
  292. package/packages/components/ui/select.tsx +0 -199
  293. package/packages/components/ui/separator.tsx +0 -25
  294. package/packages/components/ui/sheet.tsx +0 -119
  295. package/packages/components/ui/sidebar.tsx +0 -675
  296. package/packages/components/ui/skeleton.tsx +0 -8
  297. package/packages/components/ui/slider.tsx +0 -45
  298. package/packages/components/ui/sonner.tsx +0 -40
  299. package/packages/components/ui/switch.tsx +0 -46
  300. package/packages/components/ui/table.tsx +0 -66
  301. package/packages/components/ui/tabs.tsx +0 -53
  302. package/packages/components/ui/textarea.tsx +0 -46
  303. package/packages/components/ui/toggle-group.tsx +0 -63
  304. package/packages/components/ui/toggle.tsx +0 -34
  305. package/packages/components/ui/tooltip.tsx +0 -53
  306. package/packages/constants.tsx +0 -45
  307. package/packages/hooks/use-callback-ref.ts +0 -22
  308. package/packages/hooks/use-controllable-state.ts +0 -58
  309. package/packages/hooks/use-mobile.ts +0 -19
  310. package/packages/index.css +0 -133
  311. package/packages/lib/utils.ts +0 -24
  312. package/packages/stories/1.Guideline.mdx +0 -3
  313. package/packages/stories/2.Colors.mdx +0 -145
  314. package/packages/stories/3.Pypography.mdx +0 -51
  315. package/packages/stories/cards/simple-card.stories.tsx +0 -24
  316. package/packages/stories/data-display/data-list.stories.tsx +0 -22
  317. package/packages/stories/data-display/empty.stories.tsx +0 -13
  318. package/packages/stories/data-display/form-dialog.stories.tsx +0 -27
  319. package/packages/stories/data-display/name.stories.tsx +0 -25
  320. package/packages/stories/data-display/phone-number.stories.tsx +0 -17
  321. package/packages/stories/data-display/statistic.stories.tsx +0 -41
  322. package/packages/stories/dialogs/confirm-dialog.stories.tsx +0 -26
  323. package/packages/stories/dialogs/detail-dialog.stories.tsx +0 -34
  324. package/packages/stories/dialogs/error-dialog.stories.tsx +0 -27
  325. package/packages/stories/dialogs/loading-dialog.stories.tsx +0 -16
  326. package/packages/stories/forms/combobox-field.stories.tsx +0 -38
  327. package/packages/stories/forms/form-wrapper.stories.tsx +0 -59
  328. package/packages/stories/forms/multi-select-field.stories.tsx +0 -42
  329. package/packages/stories/forms/number-field.stories.tsx +0 -35
  330. package/packages/stories/forms/select-field.stories.tsx +0 -39
  331. package/packages/stories/forms/switch-field.stories.tsx +0 -36
  332. package/packages/stories/forms/text-field.stories.tsx +0 -41
  333. package/packages/stories/forms/textarea-field.stories.tsx +0 -34
  334. package/packages/stories/layouts/app-layout.stories.tsx +0 -49
  335. package/packages/stories/typography/paragraph.stories.tsx +0 -45
  336. package/packages/stories/typography/title.stories.tsx +0 -39
  337. package/packages/stories/ui/alert-dialog.stories.tsx +0 -49
  338. package/packages/stories/ui/alert.stories.tsx +0 -63
  339. package/packages/stories/ui/aspect-ratio.stories.tsx +0 -22
  340. package/packages/stories/ui/badge.stories.tsx +0 -170
  341. package/packages/stories/ui/breadcrumb.stories.tsx +0 -172
  342. package/packages/stories/ui/button.stories.tsx +0 -181
  343. package/packages/stories/ui/card.stories.tsx +0 -58
  344. package/packages/stories/ui/checkbox.stories.tsx +0 -48
  345. package/packages/stories/ui/command.stories.tsx +0 -58
  346. package/packages/stories/ui/dialog.stories.tsx +0 -55
  347. package/packages/stories/ui/dropdown-menu.stories.tsx +0 -89
  348. package/packages/stories/ui/file-uploader.stories.tsx +0 -18
  349. package/packages/stories/ui/input.stories.tsx +0 -38
  350. package/packages/stories/ui/label.stories.tsx +0 -17
  351. package/packages/stories/ui/multi-select.stories.tsx +0 -29
  352. package/packages/stories/ui/popover.stories.tsx +0 -52
  353. package/packages/stories/ui/progress.stories.tsx +0 -17
  354. package/packages/stories/ui/radio-group.stories.tsx +0 -31
  355. package/packages/stories/ui/select.stories.tsx +0 -31
  356. package/packages/stories/ui/separator.stories.tsx +0 -31
  357. package/packages/stories/ui/sheet.stories.tsx +0 -50
  358. package/packages/stories/ui/skeleton.stories.tsx +0 -27
  359. package/packages/stories/ui/switch.stories.tsx +0 -21
  360. package/packages/stories/ui/table.stories.tsx +0 -82
  361. package/packages/stories/ui/tabs.stories.tsx +0 -70
  362. package/packages/stories/ui/textarea.stories.tsx +0 -15
  363. package/packages/stories/ui/toaster.stories.tsx +0 -87
  364. package/packages/types.ts +0 -50
@@ -1,196 +0,0 @@
1
- 'use client'
2
- import React from 'react'
3
- import { ContextMenu as ContextMenuPrimitive } from 'radix-ui'
4
- import { CheckIcon, ChevronRightIcon, CircleIcon } from 'lucide-react'
5
-
6
- import { cn } from '@/lib/utils'
7
-
8
- function ContextMenu({ ...props }: React.ComponentProps<typeof ContextMenuPrimitive.Root>) {
9
- return <ContextMenuPrimitive.Root data-slot="context-menu" {...props} />
10
- }
11
-
12
- function ContextMenuTrigger({ ...props }: React.ComponentProps<typeof ContextMenuPrimitive.Trigger>) {
13
- return <ContextMenuPrimitive.Trigger data-slot="context-menu-trigger" {...props} />
14
- }
15
-
16
- function ContextMenuGroup({ ...props }: React.ComponentProps<typeof ContextMenuPrimitive.Group>) {
17
- return <ContextMenuPrimitive.Group data-slot="context-menu-group" {...props} />
18
- }
19
-
20
- function ContextMenuPortal({ ...props }: React.ComponentProps<typeof ContextMenuPrimitive.Portal>) {
21
- return <ContextMenuPrimitive.Portal data-slot="context-menu-portal" {...props} />
22
- }
23
-
24
- function ContextMenuSub({ ...props }: React.ComponentProps<typeof ContextMenuPrimitive.Sub>) {
25
- return <ContextMenuPrimitive.Sub data-slot="context-menu-sub" {...props} />
26
- }
27
-
28
- function ContextMenuRadioGroup({ ...props }: React.ComponentProps<typeof ContextMenuPrimitive.RadioGroup>) {
29
- return <ContextMenuPrimitive.RadioGroup data-slot="context-menu-radio-group" {...props} />
30
- }
31
-
32
- function ContextMenuSubTrigger({
33
- className,
34
- inset,
35
- children,
36
- ...props
37
- }: React.ComponentProps<typeof ContextMenuPrimitive.SubTrigger> & {
38
- inset?: boolean
39
- }) {
40
- return (
41
- <ContextMenuPrimitive.SubTrigger
42
- data-slot="context-menu-sub-trigger"
43
- data-inset={inset}
44
- className={cn(
45
- "focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-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",
46
- className,
47
- )}
48
- {...props}
49
- >
50
- {children}
51
- <ChevronRightIcon className="ml-auto" />
52
- </ContextMenuPrimitive.SubTrigger>
53
- )
54
- }
55
-
56
- function ContextMenuSubContent({ className, ...props }: React.ComponentProps<typeof ContextMenuPrimitive.SubContent>) {
57
- return (
58
- <ContextMenuPrimitive.SubContent
59
- data-slot="context-menu-sub-content"
60
- className={cn(
61
- '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',
62
- className,
63
- )}
64
- {...props}
65
- />
66
- )
67
- }
68
-
69
- function ContextMenuContent({ className, ...props }: React.ComponentProps<typeof ContextMenuPrimitive.Content>) {
70
- return (
71
- <ContextMenuPrimitive.Portal>
72
- <ContextMenuPrimitive.Content
73
- data-slot="context-menu-content"
74
- className={cn(
75
- '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',
76
- className,
77
- )}
78
- {...props}
79
- />
80
- </ContextMenuPrimitive.Portal>
81
- )
82
- }
83
-
84
- function ContextMenuItem({
85
- className,
86
- inset,
87
- variant = 'default',
88
- ...props
89
- }: React.ComponentProps<typeof ContextMenuPrimitive.Item> & {
90
- inset?: boolean
91
- variant?: 'default' | 'destructive'
92
- }) {
93
- return (
94
- <ContextMenuPrimitive.Item
95
- data-slot="context-menu-item"
96
- data-inset={inset}
97
- data-variant={variant}
98
- className={cn(
99
- "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",
100
- className,
101
- )}
102
- {...props}
103
- />
104
- )
105
- }
106
-
107
- function ContextMenuCheckboxItem({ className, children, checked, ...props }: React.ComponentProps<typeof ContextMenuPrimitive.CheckboxItem>) {
108
- return (
109
- <ContextMenuPrimitive.CheckboxItem
110
- data-slot="context-menu-checkbox-item"
111
- className={cn(
112
- "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",
113
- className,
114
- )}
115
- checked={checked}
116
- {...props}
117
- >
118
- <span className="pointer-events-none absolute left-2 flex size-3.5 items-center justify-center">
119
- <ContextMenuPrimitive.ItemIndicator>
120
- <CheckIcon className="size-4" />
121
- </ContextMenuPrimitive.ItemIndicator>
122
- </span>
123
- {children}
124
- </ContextMenuPrimitive.CheckboxItem>
125
- )
126
- }
127
-
128
- function ContextMenuRadioItem({ className, children, ...props }: React.ComponentProps<typeof ContextMenuPrimitive.RadioItem>) {
129
- return (
130
- <ContextMenuPrimitive.RadioItem
131
- data-slot="context-menu-radio-item"
132
- className={cn(
133
- 'relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none',
134
- 'focus:bg-accent',
135
- 'focus:text-accent-foreground',
136
- 'data-[disabled]:pointer-events-none',
137
- 'data-[disabled]:opacity-50',
138
- '[&_svg]:pointer-events-none',
139
- '[&_svg]:shrink-0',
140
- "[&_svg:not([class*='size-'])]:size-4",
141
- className,
142
- )}
143
- {...props}
144
- >
145
- <span className="pointer-events-none absolute left-2 flex size-3.5 items-center justify-center">
146
- <ContextMenuPrimitive.ItemIndicator>
147
- <CircleIcon className="size-2 fill-current" />
148
- </ContextMenuPrimitive.ItemIndicator>
149
- </span>
150
- {children}
151
- </ContextMenuPrimitive.RadioItem>
152
- )
153
- }
154
-
155
- function ContextMenuLabel({
156
- className,
157
- inset,
158
- ...props
159
- }: React.ComponentProps<typeof ContextMenuPrimitive.Label> & {
160
- inset?: boolean
161
- }) {
162
- return (
163
- <ContextMenuPrimitive.Label
164
- data-slot="context-menu-label"
165
- data-inset={inset}
166
- className={cn('text-foreground px-2 py-1.5 text-sm font-medium data-[inset]:pl-8', className)}
167
- {...props}
168
- />
169
- )
170
- }
171
-
172
- function ContextMenuSeparator({ className, ...props }: React.ComponentProps<typeof ContextMenuPrimitive.Separator>) {
173
- return <ContextMenuPrimitive.Separator data-slot="context-menu-separator" className={cn('bg-border -mx-1 my-1 h-px', className)} {...props} />
174
- }
175
-
176
- function ContextMenuShortcut({ className, ...props }: React.ComponentProps<'span'>) {
177
- return <span data-slot="context-menu-shortcut" className={cn('text-muted-foreground ml-auto text-xs tracking-widest', className)} {...props} />
178
- }
179
-
180
- export {
181
- ContextMenu,
182
- ContextMenuCheckboxItem,
183
- ContextMenuContent,
184
- ContextMenuGroup,
185
- ContextMenuItem,
186
- ContextMenuLabel,
187
- ContextMenuPortal,
188
- ContextMenuRadioGroup,
189
- ContextMenuRadioItem,
190
- ContextMenuSeparator,
191
- ContextMenuShortcut,
192
- ContextMenuSub,
193
- ContextMenuSubContent,
194
- ContextMenuSubTrigger,
195
- ContextMenuTrigger,
196
- }
@@ -1,119 +0,0 @@
1
- 'use client'
2
- import { Dialog as DialogPrimitive } from 'radix-ui'
3
- import { XIcon } from 'lucide-react'
4
-
5
- import { cn } from '@/lib/utils'
6
-
7
- function Dialog({ ...props }: React.ComponentProps<typeof DialogPrimitive.Root>) {
8
- return <DialogPrimitive.Root data-slot="dialog" {...props} />
9
- }
10
-
11
- function DialogTrigger({ ...props }: React.ComponentProps<typeof DialogPrimitive.Trigger>) {
12
- return <DialogPrimitive.Trigger data-slot="dialog-trigger" {...props} />
13
- }
14
-
15
- function DialogPortal({ ...props }: React.ComponentProps<typeof DialogPrimitive.Portal>) {
16
- return <DialogPrimitive.Portal data-slot="dialog-portal" {...props} />
17
- }
18
-
19
- function DialogClose({ ...props }: React.ComponentProps<typeof DialogPrimitive.Close>) {
20
- return <DialogPrimitive.Close data-slot="dialog-close" {...props} />
21
- }
22
-
23
- function DialogOverlay({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Overlay>) {
24
- return (
25
- <DialogPrimitive.Overlay
26
- data-slot="dialog-overlay"
27
- className={cn(
28
- 'fixed inset-0 z-50 bg-black/50',
29
- 'data-[state=open]:animate-in',
30
- 'data-[state=open]:fade-in-0',
31
- 'data-[state=closed]:animate-out',
32
- 'data-[state=closed]:fade-out-0',
33
- className,
34
- )}
35
- {...props}
36
- />
37
- )
38
- }
39
-
40
- function DialogContent({
41
- className,
42
- children,
43
- showCloseButton = true,
44
- ...props
45
- }: React.ComponentProps<typeof DialogPrimitive.Content> & {
46
- showCloseButton?: boolean
47
- }) {
48
- return (
49
- <DialogPortal data-slot="dialog-portal">
50
- <DialogOverlay />
51
- <div className="fixed inset-0 z-50 flex items-center justify-center">
52
- <DialogPrimitive.Content
53
- data-slot="dialog-content"
54
- className={cn(
55
- 'bg-background relative z-50 grid',
56
- 'shadow-dialog gap-4 p-6 outline-none',
57
- 'max-h-[85svh] w-full max-w-[calc(100%-2rem)] sm:max-w-lg',
58
- 'rounded-2xl duration-200',
59
- 'data-[state=open]:animate-in',
60
- 'data-[state=open]:fade-in-0',
61
- 'data-[state=open]:zoom-in-80',
62
- 'data-[state=closed]:animate-out',
63
- 'data-[state=closed]:fade-out-0',
64
- 'data-[state=closed]:zoom-out-80',
65
- className,
66
- )}
67
- {...props}
68
- >
69
- {children}
70
- {showCloseButton && (
71
- <DialogPrimitive.Close
72
- data-slot="dialog-close"
73
- tabIndex={-1}
74
- className={cn(
75
- 'btnClose',
76
- 'absolute top-3 right-3 rounded-full p-2 opacity-70',
77
- 'cursor-pointer transition-all',
78
- 'outline-0',
79
- 'disabled:pointer-events-none',
80
- 'focus:ring-2',
81
- 'focus:ring-border-weak',
82
- 'hover:opacity-100',
83
- 'hover:bg-accent-muted',
84
- 'data-[state=open]:bg-accent-weak',
85
- 'data-[state=open]:text-text-positive-muted',
86
- '[&_svg]:text-accent-foreground/60',
87
- '[&_svg]:hover:text-text-positive-strong',
88
- '[&_svg]:pointer-events-none',
89
- '[&_svg]:shrink-0',
90
- "[&_svg:not([class*='size-'])]:size-5",
91
- )}
92
- >
93
- <XIcon />
94
- <span className="sr-only">Close</span>
95
- </DialogPrimitive.Close>
96
- )}
97
- </DialogPrimitive.Content>
98
- </div>
99
- </DialogPortal>
100
- )
101
- }
102
-
103
- function DialogHeader({ className, ...props }: React.ComponentProps<'div'>) {
104
- return <div data-slot="dialog-header" className={cn('flex flex-col gap-2 text-center sm:text-left', className)} {...props} />
105
- }
106
-
107
- function DialogFooter({ className, ...props }: React.ComponentProps<'div'>) {
108
- return <div data-slot="dialog-footer" className={cn('flex flex-col-reverse gap-2 sm:flex-row sm:justify-end', className)} {...props} />
109
- }
110
-
111
- function DialogTitle({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Title>) {
112
- return <DialogPrimitive.Title data-slot="dialog-title" className={cn('text-text-positive-strong text-lg leading-none font-semibold', className)} {...props} />
113
- }
114
-
115
- function DialogDescription({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Description>) {
116
- return <DialogPrimitive.Description data-slot="dialog-description" className={cn('text-text-positive-weak text-sm', className)} {...props} />
117
- }
118
-
119
- export { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger }
@@ -1,249 +0,0 @@
1
- 'use client'
2
- import { DropdownMenu as DropdownMenuPrimitive } from 'radix-ui'
3
- import { CheckIcon, ChevronRightIcon, CircleIcon } from 'lucide-react'
4
-
5
- import { cn } from '@/lib/utils'
6
-
7
- function DropdownMenu({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Root>) {
8
- return <DropdownMenuPrimitive.Root data-slot="dropdown-menu" {...props} />
9
- }
10
-
11
- function DropdownMenuPortal({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Portal>) {
12
- return <DropdownMenuPrimitive.Portal data-slot="dropdown-menu-portal" {...props} />
13
- }
14
-
15
- function DropdownMenuTrigger({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Trigger>) {
16
- return <DropdownMenuPrimitive.Trigger data-slot="dropdown-menu-trigger" {...props} />
17
- }
18
-
19
- function DropdownMenuContent({ className, sideOffset = 4, align = 'start', ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Content>) {
20
- return (
21
- <DropdownMenuPrimitive.Portal>
22
- <DropdownMenuPrimitive.Content
23
- data-slot="dropdown-menu-content"
24
- sideOffset={sideOffset}
25
- className={cn(
26
- 'bg-popover text-text-positive',
27
- 'z-50',
28
- 'min-w-32',
29
- 'overflow-x-hidden overflow-y-auto',
30
- 'border-border-weak shadow-dropdown rounded-md border p-1.5',
31
- 'max-h-(--radix-dropdown-menu-content-available-height)',
32
- 'origin-(--radix-dropdown-menu-content-transform-origin)',
33
- 'data-[state=open]:animate-in',
34
- 'data-[state=open]:fade-in-0',
35
- 'data-[state=open]:zoom-in-95',
36
- 'data-[state=closed]:animate-out',
37
- 'data-[state=closed]:fade-out-0',
38
- 'data-[state=closed]:zoom-out-95',
39
- 'data-[side=bottom]:slide-in-from-top-2',
40
- 'data-[side=left]:slide-in-from-right-2',
41
- 'data-[side=right]:slide-in-from-left-2',
42
- 'data-[side=top]:slide-in-from-bottom-2',
43
- className,
44
- )}
45
- {...props}
46
- align={align}
47
- />
48
- </DropdownMenuPrimitive.Portal>
49
- )
50
- }
51
-
52
- function DropdownMenuGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Group>) {
53
- return <DropdownMenuPrimitive.Group data-slot="dropdown-menu-group" {...props} />
54
- }
55
-
56
- function DropdownMenuItem({
57
- className,
58
- inset,
59
- variant = 'default',
60
- ...props
61
- }: React.ComponentProps<typeof DropdownMenuPrimitive.Item> & {
62
- inset?: boolean
63
- variant?: 'default' | 'destructive'
64
- }) {
65
- return (
66
- <DropdownMenuPrimitive.Item
67
- data-slot="dropdown-menu-item"
68
- data-inset={inset}
69
- data-variant={variant}
70
- className={cn(
71
- 'relative flex cursor-pointer items-center gap-2 rounded-md px-2 py-2.5 text-sm outline-hidden transition-all select-none',
72
- 'focus:bg-accent-muted',
73
- 'focus:text-text-positive-strong',
74
- 'data-[inset]:pl-8',
75
- 'data-[disabled]:pointer-events-none',
76
- 'data-[disabled]:opacity-50',
77
- 'data-[variant=destructive]:text-danger',
78
- 'data-[variant=destructive]:focus:bg-danger-muted',
79
- 'data-[variant=destructive]:focus:text-danger-strong',
80
- 'data-[variant=destructive]:*:[svg]:!text-danger',
81
- '[&_svg]:shrink-0',
82
- '[&_svg]:pointer-events-none',
83
- "[&_svg:not([class*='size-'])]:size-4",
84
- "[&_svg:not([class*='text-'])]:text-text-positive-muted",
85
- className,
86
- )}
87
- {...props}
88
- />
89
- )
90
- }
91
-
92
- function DropdownMenuCheckboxItem({ className, children, checked, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem>) {
93
- return (
94
- <DropdownMenuPrimitive.CheckboxItem
95
- data-slot="dropdown-menu-checkbox-item"
96
- className={cn(
97
- 'relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none',
98
- 'focus:bg-accent-muted',
99
- 'focus:text-text-positive-strong',
100
- 'data-[disabled]:opacity-50',
101
- 'data-[disabled]:pointer-events-none',
102
- '[&_svg]:pointer-events-none',
103
- '[&_svg]:shrink-0',
104
- "[&_svg:not([class*='size-'])]:size-4",
105
- className,
106
- )}
107
- checked={checked}
108
- {...props}
109
- >
110
- <span className="pointer-events-none absolute left-2 flex size-3.5 items-center justify-center">
111
- <DropdownMenuPrimitive.ItemIndicator>
112
- <CheckIcon size={16} />
113
- </DropdownMenuPrimitive.ItemIndicator>
114
- </span>
115
- {children}
116
- </DropdownMenuPrimitive.CheckboxItem>
117
- )
118
- }
119
-
120
- function DropdownMenuRadioGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioGroup>) {
121
- return <DropdownMenuPrimitive.RadioGroup data-slot="dropdown-menu-radio-group" {...props} />
122
- }
123
-
124
- function DropdownMenuRadioItem({ className, children, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioItem>) {
125
- return (
126
- <DropdownMenuPrimitive.RadioItem
127
- data-slot="dropdown-menu-radio-item"
128
- className={cn(
129
- 'relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none',
130
- 'focus:bg-accent-muted',
131
- 'focus:text-text-positive-strong',
132
- 'data-[disabled]:pointer-events-none',
133
- 'data-[disabled]:opacity-50',
134
- '[&_svg]:pointer-events-none',
135
- '[&_svg]:shrink-0',
136
- "[&_svg:not([class*='size-'])]:size-4",
137
- className,
138
- )}
139
- {...props}
140
- >
141
- <span className="pointer-events-none absolute left-2 flex size-3.5 items-center justify-center">
142
- <DropdownMenuPrimitive.ItemIndicator>
143
- <CircleIcon className="size-2 fill-current" />
144
- </DropdownMenuPrimitive.ItemIndicator>
145
- </span>
146
- {children}
147
- </DropdownMenuPrimitive.RadioItem>
148
- )
149
- }
150
-
151
- function DropdownMenuLabel({
152
- className,
153
- inset,
154
- ...props
155
- }: React.ComponentProps<typeof DropdownMenuPrimitive.Label> & {
156
- inset?: boolean
157
- }) {
158
- return (
159
- <DropdownMenuPrimitive.Label
160
- data-slot="dropdown-menu-label"
161
- data-inset={inset}
162
- className={cn('px-2 py-1.5 text-sm font-medium data-[inset]:pl-8', className)}
163
- {...props}
164
- />
165
- )
166
- }
167
-
168
- function DropdownMenuSeparator({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Separator>) {
169
- return <DropdownMenuPrimitive.Separator data-slot="dropdown-menu-separator" className={cn('bg-border-weak -mx-1 my-1 h-px', className)} {...props} />
170
- }
171
-
172
- function DropdownMenuShortcut({ className, ...props }: React.ComponentProps<'span'>) {
173
- return <span data-slot="dropdown-menu-shortcut" className={cn('text-text-positive-muted ml-auto text-xs tracking-widest', className)} {...props} />
174
- }
175
-
176
- function DropdownMenuSub({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Sub>) {
177
- return <DropdownMenuPrimitive.Sub data-slot="dropdown-menu-sub" {...props} />
178
- }
179
-
180
- function DropdownMenuSubTrigger({
181
- className,
182
- inset,
183
- children,
184
- ...props
185
- }: React.ComponentProps<typeof DropdownMenuPrimitive.SubTrigger> & {
186
- inset?: boolean
187
- }) {
188
- return (
189
- <DropdownMenuPrimitive.SubTrigger
190
- data-slot="dropdown-menu-sub-trigger"
191
- data-inset={inset}
192
- className={cn(
193
- 'flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-hidden select-none',
194
- 'focus:bg-accent-muted',
195
- 'focus:text-text-positive-strong',
196
- 'data-[state=open]:bg-accent-muted',
197
- 'data-[state=open]:text-text-positive-strong',
198
- 'data-[inset]:pl-8',
199
- className,
200
- )}
201
- {...props}
202
- >
203
- {children}
204
- <ChevronRightIcon className="ml-auto size-4" />
205
- </DropdownMenuPrimitive.SubTrigger>
206
- )
207
- }
208
-
209
- function DropdownMenuSubContent({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.SubContent>) {
210
- return (
211
- <DropdownMenuPrimitive.SubContent
212
- data-slot="dropdown-menu-sub-content"
213
- className={cn(
214
- 'bg-popover text-text-positive',
215
- 'border-border-weak shadow-dropdown z-50 min-w-32 origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md border p-1',
216
- 'data-[state=open]:animate-in',
217
- 'data-[state=open]:fade-in-0',
218
- 'data-[state=open]:zoom-in-95',
219
- 'data-[state=closed]:zoom-out-95',
220
- 'data-[state=closed]:animate-out',
221
- 'data-[state=closed]:fade-out-0',
222
- 'data-[side=bottom]:slide-in-from-top-2',
223
- 'data-[side=left]:slide-in-from-right-2',
224
- 'data-[side=right]:slide-in-from-left-2',
225
- 'data-[side=top]:slide-in-from-bottom-2',
226
- className,
227
- )}
228
- {...props}
229
- />
230
- )
231
- }
232
-
233
- export {
234
- DropdownMenu,
235
- DropdownMenuCheckboxItem,
236
- DropdownMenuContent,
237
- DropdownMenuGroup,
238
- DropdownMenuItem,
239
- DropdownMenuLabel,
240
- DropdownMenuPortal,
241
- DropdownMenuRadioGroup,
242
- DropdownMenuRadioItem,
243
- DropdownMenuSeparator,
244
- DropdownMenuShortcut,
245
- DropdownMenuSub,
246
- DropdownMenuSubContent,
247
- DropdownMenuSubTrigger,
248
- DropdownMenuTrigger,
249
- }