@customafk/lunas-ui 0.2.39 → 0.2.41

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 (646) hide show
  1. package/dist/{alert-CNFuxKp7.d.cts → alert-BVsYpWFX.d.cts} +5 -5
  2. package/dist/{alert-BzBDfGk2.js → alert-D5VmhFT9.js} +2 -2
  3. package/dist/{alert-BzBDfGk2.js.map → alert-D5VmhFT9.js.map} +1 -1
  4. package/dist/{alert-DOpQdSIC.d.ts → alert-DXmXDeGs.d.ts} +7 -7
  5. package/dist/{alert-B2PaDJp6.cjs → alert-JwECRZfz.cjs} +2 -2
  6. package/dist/{alert-B2PaDJp6.cjs.map → alert-JwECRZfz.cjs.map} +1 -1
  7. package/dist/{button-IMi0bEY_.d.cts → button-BBfGvggN.d.ts} +4 -4
  8. package/dist/{button-D4YMSwqK.d.ts → button-BEjRVw6s.d.cts} +5 -5
  9. package/dist/{button.variants-CoSpd71B.js → button.variants-BruXd4VM.js} +1 -1
  10. package/dist/{button.variants-CoSpd71B.js.map → button.variants-BruXd4VM.js.map} +1 -1
  11. package/dist/{button.variants-4kw6plrv.cjs → button.variants-DgVFNsVc.cjs} +2 -2
  12. package/dist/{button.variants-4kw6plrv.cjs.map → button.variants-DgVFNsVc.cjs.map} +1 -1
  13. package/dist/cards/grid-product-card.cjs +1 -1
  14. package/dist/cards/grid-product-card.cjs.map +1 -1
  15. package/dist/cards/grid-product-card.js +1 -1
  16. package/dist/cards/grid-product-card.js.map +1 -1
  17. package/dist/cards/product-card.cjs +1 -1
  18. package/dist/cards/product-card.cjs.map +1 -1
  19. package/dist/cards/product-card.js +1 -1
  20. package/dist/cards/product-card.js.map +1 -1
  21. package/dist/cards/simple-card.cjs +1 -1
  22. package/dist/cards/simple-card.d.ts +2 -2
  23. package/dist/cards/simple-card.js +1 -1
  24. package/dist/chunk-Bmb41Sf3.cjs +1 -0
  25. package/dist/{close-Dlo1bI8x.cjs → close-Dflkky9q.cjs} +2 -2
  26. package/dist/{close-Dlo1bI8x.cjs.map → close-Dflkky9q.cjs.map} +1 -1
  27. package/dist/{close-C0PdZGxr.js → close-DrkwaVXK.js} +1 -1
  28. package/dist/{close-C0PdZGxr.js.map → close-DrkwaVXK.js.map} +1 -1
  29. package/dist/cms-layout-B8maJRLp.cjs +2 -0
  30. package/dist/{cms-layout-BCH4NroR.cjs.map → cms-layout-B8maJRLp.cjs.map} +1 -1
  31. package/dist/cms-layout-CLeGdpMb.js +2 -0
  32. package/dist/{cms-layout-tPwrgJZc.js.map → cms-layout-CLeGdpMb.js.map} +1 -1
  33. package/dist/data-display/country.cjs +1 -1
  34. package/dist/data-display/country.cjs.map +1 -1
  35. package/dist/data-display/country.d.cts +1 -1
  36. package/dist/data-display/country.d.ts +1 -1
  37. package/dist/data-display/country.js +1 -1
  38. package/dist/data-display/country.js.map +1 -1
  39. package/dist/data-display/data-list.cjs +1 -1
  40. package/dist/data-display/date-tooltip.cjs +1 -1
  41. package/dist/data-display/date-tooltip.cjs.map +1 -1
  42. package/dist/data-display/date-tooltip.js +1 -1
  43. package/dist/data-display/date-tooltip.js.map +1 -1
  44. package/dist/data-display/date.cjs +2 -1
  45. package/dist/data-display/date.cjs.map +1 -0
  46. package/dist/data-display/date.js +2 -1
  47. package/dist/data-display/date.js.map +1 -0
  48. package/dist/data-display/empty.cjs +1 -1
  49. package/dist/data-display/name.cjs +1 -1
  50. package/dist/data-display/name.cjs.map +1 -1
  51. package/dist/data-display/name.js +1 -1
  52. package/dist/data-display/name.js.map +1 -1
  53. package/dist/data-display/phone-number.cjs +1 -1
  54. package/dist/data-display/phone-number.cjs.map +1 -1
  55. package/dist/data-display/phone-number.js +1 -1
  56. package/dist/data-display/phone-number.js.map +1 -1
  57. package/dist/data-display/role-badge.cjs +1 -1
  58. package/dist/data-display/role-badge.cjs.map +1 -1
  59. package/dist/data-display/role-badge.d.cts +1 -1
  60. package/dist/data-display/role-badge.d.ts +1 -1
  61. package/dist/data-display/role-badge.js +1 -1
  62. package/dist/data-display/role-badge.js.map +1 -1
  63. package/dist/data-display/statistic.cjs +2 -1
  64. package/dist/data-display/statistic.cjs.map +1 -0
  65. package/dist/data-display/statistic.d.cts +3 -3
  66. package/dist/data-display/statistic.d.ts +3 -3
  67. package/dist/data-display/statistic.js +2 -1
  68. package/dist/data-display/statistic.js.map +1 -0
  69. package/dist/data-display/user.cjs +2 -1
  70. package/dist/data-display/user.cjs.map +1 -0
  71. package/dist/data-display/user.js +2 -1
  72. package/dist/data-display/user.js.map +1 -0
  73. package/dist/dialogs/confirm-dialog.cjs +1 -1
  74. package/dist/dialogs/confirm-dialog.js +1 -1
  75. package/dist/dialogs/detail-dialog/components/sidebar.cjs +1 -1
  76. package/dist/dialogs/detail-dialog/components/sidebar.d.cts +26 -26
  77. package/dist/dialogs/detail-dialog/components/sidebar.d.ts +6 -6
  78. package/dist/dialogs/detail-dialog/components/sidebar.js +1 -1
  79. package/dist/dialogs/detail-dialog/index.cjs +1 -1
  80. package/dist/dialogs/detail-dialog/index.cjs.map +1 -1
  81. package/dist/dialogs/detail-dialog/index.js +1 -1
  82. package/dist/dialogs/detail-dialog/index.js.map +1 -1
  83. package/dist/dialogs/error-dialog.cjs +1 -1
  84. package/dist/dialogs/error-dialog.js +1 -1
  85. package/dist/dialogs/loading-dialog.cjs +1 -1
  86. package/dist/dialogs/loading-dialog.cjs.map +1 -1
  87. package/dist/dialogs/loading-dialog.js +1 -1
  88. package/dist/dialogs/loading-dialog.js.map +1 -1
  89. package/dist/features/descriptions/index.cjs +1 -1
  90. package/dist/features/descriptions/index.cjs.map +1 -1
  91. package/dist/features/descriptions/index.d.cts +3 -3
  92. package/dist/features/descriptions/index.d.ts +6 -6
  93. package/dist/features/descriptions/index.js +1 -1
  94. package/dist/features/descriptions/index.js.map +1 -1
  95. package/dist/features/search-modal/index.cjs +1 -1
  96. package/dist/features/search-modal/index.d.cts +2 -2
  97. package/dist/features/search-modal/index.d.ts +2 -2
  98. package/dist/features/search-modal/index.js +1 -1
  99. package/dist/features/tables/index.cjs +1 -1
  100. package/dist/features/tables/index.d.cts +1 -1
  101. package/dist/features/tables/index.d.ts +1 -2
  102. package/dist/features/tables/index.js +1 -1
  103. package/dist/features/tanstack-form/index.cjs +1 -1
  104. package/dist/features/tanstack-form/index.d.cts +1 -1
  105. package/dist/features/tanstack-form/index.d.ts +1 -1
  106. package/dist/features/tanstack-form/index.js +1 -1
  107. package/dist/features/text-editor/index.cjs +1 -1
  108. package/dist/features/text-editor/index.d.cts +1 -1
  109. package/dist/features/text-editor/index.d.ts +1 -1
  110. package/dist/features/text-editor/index.js +1 -1
  111. package/dist/field-0gaEKxov.cjs +2 -0
  112. package/dist/{field-BrlETeXX.cjs.map → field-0gaEKxov.cjs.map} +1 -1
  113. package/dist/field-DG-kX3HU.js +2 -0
  114. package/dist/{field-DpoKF1nY.js.map → field-DG-kX3HU.js.map} +1 -1
  115. package/dist/{flex-DmWmOBn5.cjs → flex-BAfCk_in.cjs} +2 -2
  116. package/dist/{flex-DmWmOBn5.cjs.map → flex-BAfCk_in.cjs.map} +1 -1
  117. package/dist/{flex-CinRrgEy.js → flex-D_XtSjf4.js} +2 -2
  118. package/dist/{flex-CinRrgEy.js.map → flex-D_XtSjf4.js.map} +1 -1
  119. package/dist/{heading-tGTqk3pA.cjs → heading-BX7ZVnVg.cjs} +2 -2
  120. package/dist/{heading-tGTqk3pA.cjs.map → heading-BX7ZVnVg.cjs.map} +1 -1
  121. package/dist/{heading-Bz-hSatD.js → heading-Bw3eo6IT.js} +1 -1
  122. package/dist/{heading-Bz-hSatD.js.map → heading-Bw3eo6IT.js.map} +1 -1
  123. package/dist/{index-C1WfBa-T.d.ts → index--eHW_BCk.d.ts} +7 -7
  124. package/dist/{index-BlQGXGqt.d.ts → index-C257sc-c.d.ts} +1 -1
  125. package/dist/{index-gSP59hja.d.cts → index-C4ZFmaZm.d.cts} +324 -324
  126. package/dist/{index-BxoQxUnW.d.cts → index-DWEpRM8i.d.cts} +3 -3
  127. package/dist/{index-BDMEeMn4.d.ts → index-DnQeeNHV.d.ts} +31 -31
  128. package/dist/{index-Du_HLRsN.d.cts → index-_MFRCXuJ.d.cts} +3 -3
  129. package/dist/{index-KO98y6L0.d.cts → index-rNI5ia8r.d.cts} +1 -1
  130. package/dist/{index-BiAWxLAj.d.ts → index-rZ2RtGJp.d.ts} +325 -325
  131. package/dist/index.cjs +1 -1
  132. package/dist/index.d.cts +11 -11
  133. package/dist/index.d.ts +11 -11
  134. package/dist/index.js +1 -1
  135. package/dist/layouts/cms-layout/index.cjs +1 -1
  136. package/dist/layouts/cms-layout/index.d.cts +1 -1
  137. package/dist/layouts/cms-layout/index.d.ts +1 -1
  138. package/dist/layouts/cms-layout/index.js +1 -1
  139. package/dist/layouts/flex.cjs +1 -1
  140. package/dist/layouts/flex.d.cts +5 -5
  141. package/dist/layouts/flex.d.ts +5 -5
  142. package/dist/layouts/flex.js +1 -1
  143. package/dist/layouts/grid.cjs +1 -1
  144. package/dist/layouts/payment-layout/index.cjs +1 -1
  145. package/dist/layouts/payment-layout/index.js +1 -1
  146. package/dist/pages/FeatureDeveloping.cjs +1 -1
  147. package/dist/pages/FeatureDeveloping.cjs.map +1 -1
  148. package/dist/pages/FeatureDeveloping.d.cts +2 -2
  149. package/dist/pages/FeatureDeveloping.d.ts +2 -2
  150. package/dist/pages/FeatureDeveloping.js +1 -1
  151. package/dist/pages/FeatureDeveloping.js.map +1 -1
  152. package/dist/pages/FeatureFixing.cjs +1 -1
  153. package/dist/pages/FeatureFixing.cjs.map +1 -1
  154. package/dist/pages/FeatureFixing.d.cts +2 -2
  155. package/dist/pages/FeatureFixing.d.ts +2 -2
  156. package/dist/pages/FeatureFixing.js +1 -1
  157. package/dist/pages/FeatureFixing.js.map +1 -1
  158. package/dist/pages/LoginPage.cjs +1 -1
  159. package/dist/pages/LoginPage.cjs.map +1 -1
  160. package/dist/pages/LoginPage.d.cts +2 -2
  161. package/dist/pages/LoginPage.d.ts +2 -2
  162. package/dist/pages/LoginPage.js +1 -1
  163. package/dist/pages/LoginPage.js.map +1 -1
  164. package/dist/pages/NotAuthorized.cjs +1 -1
  165. package/dist/pages/NotAuthorized.cjs.map +1 -1
  166. package/dist/pages/NotAuthorized.d.cts +2 -2
  167. package/dist/pages/NotAuthorized.d.ts +2 -2
  168. package/dist/pages/NotAuthorized.js +1 -1
  169. package/dist/pages/NotAuthorized.js.map +1 -1
  170. package/dist/pages/NotFound.cjs +1 -1
  171. package/dist/pages/NotFound.cjs.map +1 -1
  172. package/dist/pages/NotFound.d.cts +2 -2
  173. package/dist/pages/NotFound.d.ts +2 -2
  174. package/dist/pages/NotFound.js +1 -1
  175. package/dist/pages/NotFound.js.map +1 -1
  176. package/dist/pages/RegisterPage.cjs +1 -1
  177. package/dist/pages/RegisterPage.cjs.map +1 -1
  178. package/dist/pages/RegisterPage.d.cts +2 -2
  179. package/dist/pages/RegisterPage.d.ts +2 -2
  180. package/dist/pages/RegisterPage.js +1 -1
  181. package/dist/pages/RegisterPage.js.map +1 -1
  182. package/dist/pages/VerifyEmailPage.cjs +1 -1
  183. package/dist/pages/VerifyEmailPage.cjs.map +1 -1
  184. package/dist/pages/VerifyEmailPage.d.cts +2 -2
  185. package/dist/pages/VerifyEmailPage.d.ts +2 -2
  186. package/dist/pages/VerifyEmailPage.js +1 -1
  187. package/dist/pages/VerifyEmailPage.js.map +1 -1
  188. package/dist/{paragraph-DvTZvbzw.cjs → paragraph-D0x3Jc6W.cjs} +2 -2
  189. package/dist/{paragraph-DvTZvbzw.cjs.map → paragraph-D0x3Jc6W.cjs.map} +1 -1
  190. package/dist/{paragraph-Cc13ZI4d.js → paragraph-ESjXXqHU.js} +1 -1
  191. package/dist/{paragraph-Cc13ZI4d.js.map → paragraph-ESjXXqHU.js.map} +1 -1
  192. package/dist/payment-layout-CksJbGsl.js +2 -0
  193. package/dist/{payment-layout-giaGvs8T.js.map → payment-layout-CksJbGsl.js.map} +1 -1
  194. package/dist/payment-layout-O7TNw2Cr.cjs +2 -0
  195. package/dist/{payment-layout-DyILfyVG.cjs.map → payment-layout-O7TNw2Cr.cjs.map} +1 -1
  196. package/dist/search-modal-Db8Xp2L4.cjs +2 -0
  197. package/dist/{search-modal-B-pzGcfP.cjs.map → search-modal-Db8Xp2L4.cjs.map} +1 -1
  198. package/dist/search-modal-DdonKbwA.js +2 -0
  199. package/dist/{search-modal-b2AE5WEW.js.map → search-modal-DdonKbwA.js.map} +1 -1
  200. package/dist/sidebar-BCuXtop_.js +2 -0
  201. package/dist/sidebar-BCuXtop_.js.map +1 -0
  202. package/dist/sidebar-CQZlWCK4.cjs +2 -0
  203. package/dist/{sidebar-D5J2gcTw.cjs.map → sidebar-CQZlWCK4.cjs.map} +1 -1
  204. package/dist/{skeleton-DlRDNM97.js → skeleton-DAcbjBGp.js} +1 -1
  205. package/dist/{skeleton-DlRDNM97.js.map → skeleton-DAcbjBGp.js.map} +1 -1
  206. package/dist/{skeleton-CX1USu1w.cjs → skeleton-oQFT4xR2.cjs} +2 -2
  207. package/dist/{skeleton-CX1USu1w.cjs.map → skeleton-oQFT4xR2.cjs.map} +1 -1
  208. package/dist/systems/google.cjs +1 -1
  209. package/dist/systems/google.js +1 -1
  210. package/dist/tables-DbwtCMRI.js +4 -0
  211. package/dist/{tables-DWQytYNm.js.map → tables-DbwtCMRI.js.map} +1 -1
  212. package/dist/tables-DgZbLZQP.cjs +4 -0
  213. package/dist/{tables-CPKHe3k-.cjs.map → tables-DgZbLZQP.cjs.map} +1 -1
  214. package/dist/tanstack-form-C3SGhsmN.cjs +2 -0
  215. package/dist/tanstack-form-C3SGhsmN.cjs.map +1 -0
  216. package/dist/tanstack-form-Ds_Zjt20.js +2 -0
  217. package/dist/tanstack-form-Ds_Zjt20.js.map +1 -0
  218. package/dist/text-editor-DhTxCxvH.cjs +2 -0
  219. package/dist/{text-editor-CvJN3nSL.cjs.map → text-editor-DhTxCxvH.cjs.map} +1 -1
  220. package/dist/text-editor-DwisU9_U.js +2 -0
  221. package/dist/{text-editor-WbS7pJJs.js.map → text-editor-DwisU9_U.js.map} +1 -1
  222. package/dist/typography/paragraph.cjs +1 -1
  223. package/dist/typography/paragraph.d.cts +4 -4
  224. package/dist/typography/paragraph.d.ts +3 -3
  225. package/dist/typography/paragraph.js +1 -1
  226. package/dist/typography/title.cjs +1 -1
  227. package/dist/ui/alert-dialog.cjs +1 -1
  228. package/dist/ui/alert-dialog.d.cts +12 -12
  229. package/dist/ui/alert-dialog.d.ts +12 -12
  230. package/dist/ui/alert-dialog.js +1 -1
  231. package/dist/ui/alert.cjs +1 -1
  232. package/dist/ui/alert.d.cts +1 -1
  233. package/dist/ui/alert.d.ts +1 -1
  234. package/dist/ui/alert.js +1 -1
  235. package/dist/ui/aspect-ratio.cjs +1 -1
  236. package/dist/ui/aspect-ratio.d.cts +2 -2
  237. package/dist/ui/aspect-ratio.d.ts +2 -2
  238. package/dist/ui/avatar.cjs +2 -1
  239. package/dist/ui/avatar.cjs.map +1 -0
  240. package/dist/ui/avatar.d.cts +4 -4
  241. package/dist/ui/avatar.d.ts +4 -4
  242. package/dist/ui/avatar.js +2 -1
  243. package/dist/ui/avatar.js.map +1 -0
  244. package/dist/ui/badge.cjs +2 -1
  245. package/dist/ui/badge.cjs.map +1 -0
  246. package/dist/ui/badge.d.cts +42 -2
  247. package/dist/ui/badge.d.ts +42 -2
  248. package/dist/ui/badge.js +2 -1
  249. package/dist/ui/badge.js.map +1 -0
  250. package/dist/ui/breadcrumb.cjs +1 -1
  251. package/dist/ui/breadcrumb.cjs.map +1 -1
  252. package/dist/ui/breadcrumb.d.cts +8 -8
  253. package/dist/ui/breadcrumb.d.ts +8 -8
  254. package/dist/ui/breadcrumb.js +1 -1
  255. package/dist/ui/breadcrumb.js.map +1 -1
  256. package/dist/ui/button-group.cjs +1 -1
  257. package/dist/ui/button-group.cjs.map +1 -1
  258. package/dist/ui/button-group.d.cts +7 -7
  259. package/dist/ui/button-group.d.ts +7 -7
  260. package/dist/ui/button-group.js +1 -1
  261. package/dist/ui/button-group.js.map +1 -1
  262. package/dist/ui/button.cjs +2 -1
  263. package/dist/ui/button.cjs.map +1 -0
  264. package/dist/ui/button.d.cts +1 -1
  265. package/dist/ui/button.d.ts +1 -1
  266. package/dist/ui/button.js +2 -1
  267. package/dist/ui/button.js.map +1 -0
  268. package/dist/ui/buttons/add-new.cjs +1 -1
  269. package/dist/ui/buttons/add-new.cjs.map +1 -1
  270. package/dist/ui/buttons/add-new.js +1 -1
  271. package/dist/ui/buttons/add-new.js.map +1 -1
  272. package/dist/ui/buttons/edit.cjs +1 -1
  273. package/dist/ui/buttons/edit.cjs.map +1 -1
  274. package/dist/ui/buttons/edit.js +1 -1
  275. package/dist/ui/buttons/edit.js.map +1 -1
  276. package/dist/ui/buttons/refresh.cjs +1 -1
  277. package/dist/ui/buttons/refresh.cjs.map +1 -1
  278. package/dist/ui/buttons/refresh.js +1 -1
  279. package/dist/ui/buttons/refresh.js.map +1 -1
  280. package/dist/ui/buttons/trash.cjs +1 -1
  281. package/dist/ui/buttons/trash.cjs.map +1 -1
  282. package/dist/ui/buttons/trash.js +1 -1
  283. package/dist/ui/buttons/trash.js.map +1 -1
  284. package/dist/ui/buttons/upload-image.cjs +1 -1
  285. package/dist/ui/buttons/upload-image.cjs.map +1 -1
  286. package/dist/ui/buttons/upload-image.js +1 -1
  287. package/dist/ui/buttons/upload-image.js.map +1 -1
  288. package/dist/ui/calendar.cjs +2 -1
  289. package/dist/ui/calendar.cjs.map +1 -0
  290. package/dist/ui/calendar.d.cts +4 -4
  291. package/dist/ui/calendar.d.ts +4 -4
  292. package/dist/ui/calendar.js +2 -1
  293. package/dist/ui/calendar.js.map +1 -0
  294. package/dist/ui/card.cjs +1 -1
  295. package/dist/ui/card.d.cts +8 -8
  296. package/dist/ui/card.d.ts +8 -8
  297. package/dist/ui/card.js +1 -1
  298. package/dist/ui/carousel.cjs +1 -1
  299. package/dist/ui/carousel.cjs.map +1 -1
  300. package/dist/ui/carousel.d.cts +7 -7
  301. package/dist/ui/carousel.d.ts +7 -7
  302. package/dist/ui/carousel.js +1 -1
  303. package/dist/ui/carousel.js.map +1 -1
  304. package/dist/ui/checkbox.cjs +2 -1
  305. package/dist/ui/checkbox.cjs.map +1 -0
  306. package/dist/ui/checkbox.d.cts +2 -2
  307. package/dist/ui/checkbox.d.ts +2 -2
  308. package/dist/ui/checkbox.js +2 -1
  309. package/dist/ui/checkbox.js.map +1 -0
  310. package/dist/ui/collapsible.cjs +1 -1
  311. package/dist/ui/collapsible.d.cts +4 -4
  312. package/dist/ui/collapsible.d.ts +4 -4
  313. package/dist/ui/command.cjs +2 -1
  314. package/dist/ui/command.cjs.map +1 -0
  315. package/dist/ui/command.d.cts +11 -11
  316. package/dist/ui/command.d.ts +11 -11
  317. package/dist/ui/command.js +2 -1
  318. package/dist/ui/command.js.map +1 -0
  319. package/dist/ui/context-menu.cjs +1 -1
  320. package/dist/ui/context-menu.d.cts +16 -16
  321. package/dist/ui/context-menu.d.ts +16 -16
  322. package/dist/ui/dialog.cjs +2 -1
  323. package/dist/ui/dialog.cjs.map +1 -0
  324. package/dist/ui/dialog.d.cts +90 -2
  325. package/dist/ui/dialog.d.ts +90 -2
  326. package/dist/ui/dialog.js +2 -1
  327. package/dist/ui/dialog.js.map +1 -0
  328. package/dist/ui/drawer.cjs +2 -1
  329. package/dist/ui/drawer.cjs.map +1 -0
  330. package/dist/ui/drawer.d.cts +11 -11
  331. package/dist/ui/drawer.d.ts +11 -11
  332. package/dist/ui/drawer.js +2 -1
  333. package/dist/ui/drawer.js.map +1 -0
  334. package/dist/ui/dropdown-menu.cjs +2 -1
  335. package/dist/ui/dropdown-menu.cjs.map +1 -0
  336. package/dist/ui/dropdown-menu.d.cts +16 -16
  337. package/dist/ui/dropdown-menu.d.ts +16 -16
  338. package/dist/ui/dropdown-menu.js +2 -1
  339. package/dist/ui/dropdown-menu.js.map +1 -0
  340. package/dist/ui/empty.cjs +1 -1
  341. package/dist/ui/empty.d.cts +9 -9
  342. package/dist/ui/empty.d.ts +7 -7
  343. package/dist/ui/field.cjs +1 -1
  344. package/dist/ui/field.d.cts +22 -22
  345. package/dist/ui/field.d.ts +22 -22
  346. package/dist/ui/field.js +1 -1
  347. package/dist/ui/file-uploader.cjs +2 -2
  348. package/dist/ui/file-uploader.cjs.map +1 -1
  349. package/dist/ui/file-uploader.d.cts +2 -2
  350. package/dist/ui/file-uploader.d.ts +2 -2
  351. package/dist/ui/file-uploader.js +2 -2
  352. package/dist/ui/file-uploader.js.map +1 -1
  353. package/dist/ui/form.cjs +1 -1
  354. package/dist/ui/form.cjs.map +1 -1
  355. package/dist/ui/form.d.cts +10 -10
  356. package/dist/ui/form.d.ts +10 -10
  357. package/dist/ui/form.js +1 -1
  358. package/dist/ui/form.js.map +1 -1
  359. package/dist/ui/hover-card.cjs +1 -1
  360. package/dist/ui/hover-card.d.cts +4 -4
  361. package/dist/ui/hover-card.d.ts +4 -4
  362. package/dist/ui/image.cjs +2 -1
  363. package/dist/ui/image.cjs.map +1 -0
  364. package/dist/ui/image.js +2 -1
  365. package/dist/ui/image.js.map +1 -0
  366. package/dist/ui/input-otp.cjs +1 -1
  367. package/dist/ui/input-otp.d.cts +5 -5
  368. package/dist/ui/input-otp.d.ts +5 -5
  369. package/dist/ui/input-otp.js +1 -1
  370. package/dist/ui/input.cjs +2 -1
  371. package/dist/ui/input.cjs.map +1 -0
  372. package/dist/ui/input.d.cts +44 -2
  373. package/dist/ui/input.d.ts +44 -2
  374. package/dist/ui/input.js +2 -1
  375. package/dist/ui/input.js.map +1 -0
  376. package/dist/ui/inputs/search-input.cjs +1 -1
  377. package/dist/ui/inputs/search-input.cjs.map +1 -1
  378. package/dist/ui/inputs/search-input.d.cts +3 -3
  379. package/dist/ui/inputs/search-input.d.ts +3 -3
  380. package/dist/ui/inputs/search-input.js +1 -1
  381. package/dist/ui/inputs/search-input.js.map +1 -1
  382. package/dist/ui/item.cjs +1 -1
  383. package/dist/ui/item.cjs.map +1 -1
  384. package/dist/ui/item.d.cts +15 -15
  385. package/dist/ui/item.d.ts +12 -12
  386. package/dist/ui/item.js +1 -1
  387. package/dist/ui/item.js.map +1 -1
  388. package/dist/ui/label.cjs +2 -1
  389. package/dist/ui/label.cjs.map +1 -0
  390. package/dist/ui/label.d.cts +2 -2
  391. package/dist/ui/label.d.ts +2 -2
  392. package/dist/ui/label.js +2 -1
  393. package/dist/ui/label.js.map +1 -0
  394. package/dist/ui/menubar.cjs +1 -1
  395. package/dist/ui/menubar.d.cts +17 -17
  396. package/dist/ui/menubar.d.ts +17 -17
  397. package/dist/ui/multi-select.cjs +1 -1
  398. package/dist/ui/multi-select.cjs.map +1 -1
  399. package/dist/ui/multi-select.d.cts +3 -3
  400. package/dist/ui/multi-select.d.ts +6 -7
  401. package/dist/ui/multi-select.js +1 -1
  402. package/dist/ui/multi-select.js.map +1 -1
  403. package/dist/ui/navigation-menu.cjs +1 -1
  404. package/dist/ui/navigation-menu.d.cts +11 -11
  405. package/dist/ui/navigation-menu.d.ts +11 -11
  406. package/dist/ui/pagination.cjs +1 -1
  407. package/dist/ui/pagination.d.cts +9 -9
  408. package/dist/ui/pagination.d.ts +9 -9
  409. package/dist/ui/pagination.js +1 -1
  410. package/dist/ui/popover.cjs +2 -1
  411. package/dist/ui/popover.cjs.map +1 -0
  412. package/dist/ui/popover.d.cts +6 -6
  413. package/dist/ui/popover.d.ts +6 -6
  414. package/dist/ui/popover.js +2 -1
  415. package/dist/ui/popover.js.map +1 -0
  416. package/dist/ui/progress.cjs +2 -1
  417. package/dist/ui/progress.cjs.map +1 -0
  418. package/dist/ui/progress.d.cts +2 -2
  419. package/dist/ui/progress.d.ts +2 -2
  420. package/dist/ui/progress.js +2 -1
  421. package/dist/ui/progress.js.map +1 -0
  422. package/dist/ui/radio-group.cjs +2 -1
  423. package/dist/ui/radio-group.cjs.map +1 -0
  424. package/dist/ui/radio-group.d.cts +3 -3
  425. package/dist/ui/radio-group.d.ts +3 -3
  426. package/dist/ui/radio-group.js +2 -1
  427. package/dist/ui/radio-group.js.map +1 -0
  428. package/dist/ui/resizable.cjs +2 -1
  429. package/dist/ui/resizable.cjs.map +1 -0
  430. package/dist/ui/resizable.d.cts +9 -9
  431. package/dist/ui/resizable.d.ts +9 -9
  432. package/dist/ui/resizable.js +2 -1
  433. package/dist/ui/resizable.js.map +1 -0
  434. package/dist/ui/scroll-area.cjs +1 -1
  435. package/dist/ui/scroll-area.d.cts +5 -5
  436. package/dist/ui/scroll-area.d.ts +5 -5
  437. package/dist/ui/scroll-area.js +1 -1
  438. package/dist/ui/select.cjs +2 -1
  439. package/dist/ui/select.cjs.map +1 -0
  440. package/dist/ui/select.d.cts +9 -9
  441. package/dist/ui/select.d.ts +9 -9
  442. package/dist/ui/select.js +2 -1
  443. package/dist/ui/select.js.map +1 -0
  444. package/dist/ui/separator.cjs +2 -1
  445. package/dist/ui/separator.cjs.map +1 -0
  446. package/dist/ui/separator.d.cts +2 -2
  447. package/dist/ui/separator.d.ts +2 -2
  448. package/dist/ui/separator.js +2 -1
  449. package/dist/ui/separator.js.map +1 -0
  450. package/dist/ui/sheet.cjs +2 -1
  451. package/dist/ui/sheet.cjs.map +1 -0
  452. package/dist/ui/sheet.d.cts +9 -9
  453. package/dist/ui/sheet.d.ts +9 -9
  454. package/dist/ui/sheet.js +2 -1
  455. package/dist/ui/sheet.js.map +1 -0
  456. package/dist/ui/skeleton.cjs +1 -1
  457. package/dist/ui/skeleton.d.cts +2 -2
  458. package/dist/ui/skeleton.d.ts +2 -2
  459. package/dist/ui/skeleton.js +1 -1
  460. package/dist/ui/slider.cjs +1 -1
  461. package/dist/ui/slider.d.cts +2 -2
  462. package/dist/ui/slider.d.ts +2 -2
  463. package/dist/ui/slider.js +1 -1
  464. package/dist/ui/sonner.cjs +1 -1
  465. package/dist/ui/sonner.d.cts +2 -2
  466. package/dist/ui/sonner.d.ts +2 -2
  467. package/dist/ui/spinner.cjs +2 -1
  468. package/dist/ui/spinner.cjs.map +1 -0
  469. package/dist/ui/spinner.d.cts +2 -2
  470. package/dist/ui/spinner.d.ts +2 -2
  471. package/dist/ui/spinner.js +2 -1
  472. package/dist/ui/spinner.js.map +1 -0
  473. package/dist/ui/switch.cjs +2 -1
  474. package/dist/ui/switch.cjs.map +1 -0
  475. package/dist/ui/switch.d.cts +2 -2
  476. package/dist/ui/switch.d.ts +2 -2
  477. package/dist/ui/switch.js +2 -1
  478. package/dist/ui/switch.js.map +1 -0
  479. package/dist/ui/table.cjs +1 -1
  480. package/dist/ui/table.d.cts +17 -17
  481. package/dist/ui/table.d.ts +17 -17
  482. package/dist/ui/table.js +1 -1
  483. package/dist/ui/tabs.cjs +1 -1
  484. package/dist/ui/tabs.d.cts +5 -5
  485. package/dist/ui/tabs.d.ts +5 -5
  486. package/dist/ui/textarea.cjs +2 -1
  487. package/dist/ui/textarea.cjs.map +1 -0
  488. package/dist/ui/textarea.d.cts +2 -2
  489. package/dist/ui/textarea.js +2 -1
  490. package/dist/ui/textarea.js.map +1 -0
  491. package/dist/ui/toggle-group.cjs +1 -1
  492. package/dist/ui/toggle-group.cjs.map +1 -1
  493. package/dist/ui/toggle-group.d.cts +4 -4
  494. package/dist/ui/toggle-group.d.ts +4 -4
  495. package/dist/ui/toggle-group.js +1 -1
  496. package/dist/ui/toggle-group.js.map +1 -1
  497. package/dist/ui/toggle.cjs +1 -1
  498. package/dist/ui/toggle.d.cts +2 -2
  499. package/dist/ui/toggle.d.ts +3 -3
  500. package/dist/ui/tooltip.cjs +2 -1
  501. package/dist/ui/tooltip.cjs.map +1 -0
  502. package/dist/ui/tooltip.d.cts +5 -5
  503. package/dist/ui/tooltip.d.ts +5 -5
  504. package/dist/ui/tooltip.js +2 -1
  505. package/dist/ui/tooltip.js.map +1 -0
  506. package/package.json +97 -97
  507. package/dist/avatar-Hpj8lmux.js +0 -2
  508. package/dist/avatar-Hpj8lmux.js.map +0 -1
  509. package/dist/avatar-TyOphzGo.cjs +0 -2
  510. package/dist/avatar-TyOphzGo.cjs.map +0 -1
  511. package/dist/badge-CRpRXSuO.js +0 -2
  512. package/dist/badge-CRpRXSuO.js.map +0 -1
  513. package/dist/badge-D4c9IlYD.d.cts +0 -42
  514. package/dist/badge-DowUoI6w.d.ts +0 -42
  515. package/dist/badge-KW7xu5Ca.cjs +0 -2
  516. package/dist/badge-KW7xu5Ca.cjs.map +0 -1
  517. package/dist/button-C--DAN1D.cjs +0 -2
  518. package/dist/button-C--DAN1D.cjs.map +0 -1
  519. package/dist/button-LMMbL-uH.js +0 -2
  520. package/dist/button-LMMbL-uH.js.map +0 -1
  521. package/dist/calendar-4weBDnXz.cjs +0 -2
  522. package/dist/calendar-4weBDnXz.cjs.map +0 -1
  523. package/dist/calendar-DzPt7b6k.js +0 -2
  524. package/dist/calendar-DzPt7b6k.js.map +0 -1
  525. package/dist/checkbox-DLGDoU-1.js +0 -2
  526. package/dist/checkbox-DLGDoU-1.js.map +0 -1
  527. package/dist/checkbox-Dsq-MSbH.cjs +0 -2
  528. package/dist/checkbox-Dsq-MSbH.cjs.map +0 -1
  529. package/dist/chunk-350yNsax.cjs +0 -1
  530. package/dist/cms-layout-BCH4NroR.cjs +0 -2
  531. package/dist/cms-layout-tPwrgJZc.js +0 -2
  532. package/dist/command-2gUejA6g.js +0 -2
  533. package/dist/command-2gUejA6g.js.map +0 -1
  534. package/dist/command-CsP8a1Un.cjs +0 -2
  535. package/dist/command-CsP8a1Un.cjs.map +0 -1
  536. package/dist/date-BIqCFM1Z.js +0 -2
  537. package/dist/date-BIqCFM1Z.js.map +0 -1
  538. package/dist/date-D4NVl6C9.cjs +0 -2
  539. package/dist/date-D4NVl6C9.cjs.map +0 -1
  540. package/dist/dialog-AcOtFuF4.d.ts +0 -90
  541. package/dist/dialog-BLjShZci.d.cts +0 -90
  542. package/dist/dialog-BigPrWIj.cjs +0 -2
  543. package/dist/dialog-BigPrWIj.cjs.map +0 -1
  544. package/dist/dialog-CmutQ3rp.js +0 -2
  545. package/dist/dialog-CmutQ3rp.js.map +0 -1
  546. package/dist/dist-Cx5ufCdr.cjs +0 -2
  547. package/dist/dist-Cx5ufCdr.cjs.map +0 -1
  548. package/dist/dist-EPxjIRJp.js +0 -2
  549. package/dist/dist-EPxjIRJp.js.map +0 -1
  550. package/dist/drawer-B3qXaN5p.js +0 -2
  551. package/dist/drawer-B3qXaN5p.js.map +0 -1
  552. package/dist/drawer-BB8BZzDG.cjs +0 -2
  553. package/dist/drawer-BB8BZzDG.cjs.map +0 -1
  554. package/dist/dropdown-menu-CVh520yG.cjs +0 -2
  555. package/dist/dropdown-menu-CVh520yG.cjs.map +0 -1
  556. package/dist/dropdown-menu-DeHCVyby.js +0 -2
  557. package/dist/dropdown-menu-DeHCVyby.js.map +0 -1
  558. package/dist/field-BrlETeXX.cjs +0 -2
  559. package/dist/field-DpoKF1nY.js +0 -2
  560. package/dist/image-BpTuF_1w.js +0 -2
  561. package/dist/image-BpTuF_1w.js.map +0 -1
  562. package/dist/image-W_Yb0xTB.cjs +0 -2
  563. package/dist/image-W_Yb0xTB.cjs.map +0 -1
  564. package/dist/input-Aa-GQW2V.d.cts +0 -44
  565. package/dist/input-B1Wc5jsb.d.ts +0 -44
  566. package/dist/input-DAfP6LZ7.js +0 -2
  567. package/dist/input-DAfP6LZ7.js.map +0 -1
  568. package/dist/input-WJ0DLHTR.cjs +0 -2
  569. package/dist/input-WJ0DLHTR.cjs.map +0 -1
  570. package/dist/label-B8cAG2kc.js +0 -2
  571. package/dist/label-B8cAG2kc.js.map +0 -1
  572. package/dist/label-CC6fXVbC.cjs +0 -2
  573. package/dist/label-CC6fXVbC.cjs.map +0 -1
  574. package/dist/payment-layout-DyILfyVG.cjs +0 -2
  575. package/dist/payment-layout-giaGvs8T.js +0 -2
  576. package/dist/popover-6233wU1s.js +0 -2
  577. package/dist/popover-6233wU1s.js.map +0 -1
  578. package/dist/popover-DBsC8Ltp.cjs +0 -2
  579. package/dist/popover-DBsC8Ltp.cjs.map +0 -1
  580. package/dist/progress-AYknlEgK.js +0 -2
  581. package/dist/progress-AYknlEgK.js.map +0 -1
  582. package/dist/progress-gvBqNiHp.cjs +0 -2
  583. package/dist/progress-gvBqNiHp.cjs.map +0 -1
  584. package/dist/radio-group-ImoBjpqZ.js +0 -2
  585. package/dist/radio-group-ImoBjpqZ.js.map +0 -1
  586. package/dist/radio-group-_TdMkv8w.cjs +0 -2
  587. package/dist/radio-group-_TdMkv8w.cjs.map +0 -1
  588. package/dist/resizable-C-M-mu6b.js +0 -2
  589. package/dist/resizable-C-M-mu6b.js.map +0 -1
  590. package/dist/resizable-sgpaHAb8.cjs +0 -2
  591. package/dist/resizable-sgpaHAb8.cjs.map +0 -1
  592. package/dist/search-modal-B-pzGcfP.cjs +0 -2
  593. package/dist/search-modal-b2AE5WEW.js +0 -2
  594. package/dist/select-CWLQHh8x.cjs +0 -2
  595. package/dist/select-CWLQHh8x.cjs.map +0 -1
  596. package/dist/select-CryLzZA0.js +0 -2
  597. package/dist/select-CryLzZA0.js.map +0 -1
  598. package/dist/separator-BM8hA4DP.js +0 -2
  599. package/dist/separator-BM8hA4DP.js.map +0 -1
  600. package/dist/separator-KuymG9g0.cjs +0 -2
  601. package/dist/separator-KuymG9g0.cjs.map +0 -1
  602. package/dist/sheet-CvKSi0UC.cjs +0 -2
  603. package/dist/sheet-CvKSi0UC.cjs.map +0 -1
  604. package/dist/sheet-DGXXYgWB.js +0 -2
  605. package/dist/sheet-DGXXYgWB.js.map +0 -1
  606. package/dist/sidebar-BDrsbzo5.js +0 -2
  607. package/dist/sidebar-BDrsbzo5.js.map +0 -1
  608. package/dist/sidebar-D5J2gcTw.cjs +0 -2
  609. package/dist/spinner-C1eamx3w.js +0 -2
  610. package/dist/spinner-C1eamx3w.js.map +0 -1
  611. package/dist/spinner-CFxorYEt.cjs +0 -2
  612. package/dist/spinner-CFxorYEt.cjs.map +0 -1
  613. package/dist/statistic-CYMqAYNc.js +0 -2
  614. package/dist/statistic-CYMqAYNc.js.map +0 -1
  615. package/dist/statistic-DDXilD7q.cjs +0 -2
  616. package/dist/statistic-DDXilD7q.cjs.map +0 -1
  617. package/dist/switch-BLHmdRq2.js +0 -2
  618. package/dist/switch-BLHmdRq2.js.map +0 -1
  619. package/dist/switch-DVfOV7wP.cjs +0 -2
  620. package/dist/switch-DVfOV7wP.cjs.map +0 -1
  621. package/dist/tables-CPKHe3k-.cjs +0 -4
  622. package/dist/tables-DWQytYNm.js +0 -4
  623. package/dist/tanstack-form-DatI41wz.cjs +0 -12
  624. package/dist/tanstack-form-DatI41wz.cjs.map +0 -1
  625. package/dist/tanstack-form-YVdm9V01.js +0 -12
  626. package/dist/tanstack-form-YVdm9V01.js.map +0 -1
  627. package/dist/text-editor-CvJN3nSL.cjs +0 -2
  628. package/dist/text-editor-WbS7pJJs.js +0 -2
  629. package/dist/textarea-Bp6VvhiA.js +0 -2
  630. package/dist/textarea-Bp6VvhiA.js.map +0 -1
  631. package/dist/textarea-Cc9CF8wD.cjs +0 -2
  632. package/dist/textarea-Cc9CF8wD.cjs.map +0 -1
  633. package/dist/tooltip-CBdoIzoM.cjs +0 -2
  634. package/dist/tooltip-CBdoIzoM.cjs.map +0 -1
  635. package/dist/tooltip-CVIl6Hln.js +0 -2
  636. package/dist/tooltip-CVIl6Hln.js.map +0 -1
  637. package/dist/types-BD1t0Bj8.cjs +0 -2
  638. package/dist/types-BD1t0Bj8.cjs.map +0 -1
  639. package/dist/types-BVSfF-1o.d.ts +0 -24
  640. package/dist/types-BZqffRVJ.js +0 -2
  641. package/dist/types-BZqffRVJ.js.map +0 -1
  642. package/dist/types-Cc_mLRAn.d.cts +0 -24
  643. package/dist/user-BSpgswEC.js +0 -2
  644. package/dist/user-BSpgswEC.js.map +0 -1
  645. package/dist/user-ii4FBhO1.cjs +0 -2
  646. package/dist/user-ii4FBhO1.cjs.map +0 -1
@@ -1,2 +0,0 @@
1
- const e=require(`./chunk-350yNsax.cjs`);let t=require(`react`),n=require(`class-variance-authority`),r=require(`react/jsx-runtime`);const i=(0,n.cva)([`w-full rounded font-normal text-text-positive caret-primary transition-all tabular-nums`,`placeholder:text-text-positive-muted`,`disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50`,`read-only:pointer-events-none read-only:bg-muted-muted read-only:placeholder:text-text-positive-weak`],{variants:{variant:{outline:[`outline-1 outline-border -outline-offset-1 bg-transparent shadow-input`,`focus-visible:outline-primary-strong`,`focus-visible:ring-4`,`focus-visible:ring-primary-weak`,`aria-invalid:outline-danger`,`aria-invalid:ring-danger-weak`,`aria-invalid:bg-danger-bg-subtle`,`aria-invalid:focus-visible:outline-danger-strong`,`aria-invalid:focus-visible:ring-4`,`aria-invalid:placeholder:text-text-positive-weak`],ghost:``,none:``,soft:``,subtle:``},size:{xs:`px-2 py-1 text-xs leading-4`,sm:`px-2.5 py-1.5 text-xs leading-4`,md:`px-2.5 py-2 text-sm leading-5`,lg:`px-3 py-2 text-sm leading-5`,xl:`px-3 py-2 text-base leading-6`}},defaultVariants:{variant:`outline`,size:`md`}});function a({className:e,variant:n,size:a,onChange:o,onValueChange:s,...c}){let l=(0,t.useCallback)(e=>{o?.(e),s?.(e.target.value)},[o,s]);return(0,r.jsx)(`input`,{"data-slot":`input`,className:i({variant:n,size:a,className:e}),...c,onChange:l})}Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return a}});
2
- //# sourceMappingURL=input-WJ0DLHTR.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"input-WJ0DLHTR.cjs","names":[],"sources":["../packages/components/ui/input.tsx"],"sourcesContent":["'use client';\n\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { useCallback } from 'react';\n\n/** CVA variant definitions for the `Input` component — controls sizing and visual style. */\nexport const inputVariants = cva(\n [\n 'w-full rounded font-normal text-text-positive caret-primary transition-all tabular-nums',\n 'placeholder:text-text-positive-muted',\n 'disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50',\n 'read-only:pointer-events-none read-only:bg-muted-muted read-only:placeholder:text-text-positive-weak',\n ],\n {\n variants: {\n variant: {\n outline: [\n 'outline-1 outline-border -outline-offset-1 bg-transparent shadow-input',\n 'focus-visible:outline-primary-strong',\n 'focus-visible:ring-4',\n 'focus-visible:ring-primary-weak',\n 'aria-invalid:outline-danger',\n 'aria-invalid:ring-danger-weak',\n 'aria-invalid:bg-danger-bg-subtle',\n 'aria-invalid:focus-visible:outline-danger-strong',\n 'aria-invalid:focus-visible:ring-4',\n 'aria-invalid:placeholder:text-text-positive-weak',\n ],\n ghost: '',\n none: '',\n soft: '',\n subtle: '',\n },\n size: {\n xs: 'px-2 py-1 text-xs leading-4',\n sm: 'px-2.5 py-1.5 text-xs leading-4',\n md: 'px-2.5 py-2 text-sm leading-5',\n lg: 'px-3 py-2 text-sm leading-5',\n xl: 'px-3 py-2 text-base leading-6',\n },\n },\n defaultVariants: {\n variant: 'outline',\n size: 'md',\n },\n }\n);\n\nexport type InputVariantProps = VariantProps<typeof inputVariants>;\n\n/**\n * Styled text input field built on the native `<input>` element with CVA-driven size and variant tokens.\n *\n * @example\n * ```tsx\n * import { Input } from '@customafk/lunas-ui/ui/input';\n *\n * <Input\n * placeholder=\"Enter your name\"\n * variant=\"outline\"\n * size=\"md\"\n * onValueChange={(value) => console.log(value)}\n * />\n * ```\n */\nfunction Input({\n className,\n variant,\n size,\n onChange,\n onValueChange,\n ...props\n}: Omit<React.ComponentProps<'input'>, 'size'> & {\n /** Visual style of the input border — `'outline'` (default), `'ghost'`, `'none'`, `'soft'`, or `'subtle'`. */\n variant?: InputVariantProps['variant'];\n /** Controls padding and font size — `'xs'` | `'sm'` | `'md'` (default) | `'lg'` | `'xl'`. */\n size?: InputVariantProps['size'];\n /** Convenience callback that receives the raw string value on every change, bypassing the synthetic event. */\n onValueChange?: (value: string) => void;\n}) {\n const handleChange = useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n onChange?.(e);\n onValueChange?.(e.target.value);\n },\n [onChange, onValueChange]\n );\n return <input data-slot=\"input\" className={inputVariants({ variant, size, className })} {...props} onChange={handleChange} />;\n}\n\nexport { Input };\n"],"mappings":"oIAMA,MAAa,GAAA,EAAA,EAAA,KACX,CACE,0FACA,uCACA,+EACA,uGACD,CACD,CACE,SAAU,CACR,QAAS,CACP,QAAS,CACP,yEACA,uCACA,uBACA,kCACA,8BACA,gCACA,mCACA,mDACA,oCACA,mDACD,CACD,MAAO,GACP,KAAM,GACN,KAAM,GACN,OAAQ,GACT,CACD,KAAM,CACJ,GAAI,8BACJ,GAAI,kCACJ,GAAI,gCACJ,GAAI,8BACJ,GAAI,gCACL,CACF,CACD,gBAAiB,CACf,QAAS,UACT,KAAM,KACP,CACF,CACF,CAmBD,SAAS,EAAM,CACb,YACA,UACA,OACA,WACA,gBACA,GAAG,GAQF,CACD,IAAM,GAAA,EAAA,EAAA,aACH,GAA2C,CAC1C,IAAW,EAAE,CACb,IAAgB,EAAE,OAAO,MAAM,EAEjC,CAAC,EAAU,EAAc,CAC1B,CACD,OAAO,EAAA,EAAA,KAAC,QAAA,CAAM,YAAU,QAAQ,UAAW,EAAc,CAAE,UAAS,OAAM,YAAW,CAAC,CAAE,GAAI,EAAO,SAAU,GAAgB"}
@@ -1,2 +0,0 @@
1
- import{cn as e}from"@customafk/react-toolkit/utils";import{jsx as t}from"react/jsx-runtime";import{Label as n}from"radix-ui";function r({className:r,...i}){return t(n.Root,{"data-slot":`label`,className:e(`text-text-positive`,`flex items-center gap-2`,`select-none font-medium text-sm/6 leading-none`,`group-data-[disabled=true]:pointer-events-none`,`group-data-[disabled=true]:opacity-50`,`peer-disabled:cursor-not-allowed`,`peer-disabled:opacity-50`,r),...i})}export{r as t};
2
- //# sourceMappingURL=label-B8cAG2kc.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"label-B8cAG2kc.js","names":["Label","LabelPrimitive"],"sources":["../packages/components/ui/label.tsx"],"sourcesContent":["'use client';\n\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { Label as LabelPrimitive } from 'radix-ui';\n\n/**\n * Accessible form label built on Radix UI's `Label.Root`, with styles for disabled and peer-disabled states.\n *\n * @example\n * ```tsx\n * import { Label } from '@customafk/lunas-ui/ui/label';\n * import { Input } from '@customafk/lunas-ui/ui/input';\n *\n * <Label htmlFor=\"email\">Email address</Label>\n * <Input id=\"email\" type=\"email\" placeholder=\"you@example.com\" />\n * ```\n */\nfunction Label({ className, ...props }: React.ComponentProps<typeof LabelPrimitive.Root>) {\n return (\n <LabelPrimitive.Root\n data-slot=\"label\"\n className={cn(\n 'text-text-positive',\n 'flex items-center gap-2',\n 'select-none font-medium text-sm/6 leading-none',\n 'group-data-[disabled=true]:pointer-events-none',\n 'group-data-[disabled=true]:opacity-50',\n 'peer-disabled:cursor-not-allowed',\n 'peer-disabled:opacity-50',\n className\n )}\n {...props}\n />\n );\n}\n\nexport { Label };\n"],"mappings":"6HAkBA,SAASA,EAAM,CAAE,YAAW,GAAG,GAA2D,CACxF,OACE,EAACC,EAAe,KAAA,CACd,YAAU,QACV,UAAW,EACT,qBACA,0BACA,iDACA,iDACA,wCACA,mCACA,2BACA,EACD,CACD,GAAI,GACJ"}
@@ -1,2 +0,0 @@
1
- const e=require(`./chunk-350yNsax.cjs`);let t=require(`@customafk/react-toolkit/utils`),n=require(`react/jsx-runtime`),r=require(`radix-ui`);function i({className:e,...i}){return(0,n.jsx)(r.Label.Root,{"data-slot":`label`,className:(0,t.cn)(`text-text-positive`,`flex items-center gap-2`,`select-none font-medium text-sm/6 leading-none`,`group-data-[disabled=true]:pointer-events-none`,`group-data-[disabled=true]:opacity-50`,`peer-disabled:cursor-not-allowed`,`peer-disabled:opacity-50`,e),...i})}Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return i}});
2
- //# sourceMappingURL=label-CC6fXVbC.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"label-CC6fXVbC.cjs","names":["LabelPrimitive"],"sources":["../packages/components/ui/label.tsx"],"sourcesContent":["'use client';\n\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { Label as LabelPrimitive } from 'radix-ui';\n\n/**\n * Accessible form label built on Radix UI's `Label.Root`, with styles for disabled and peer-disabled states.\n *\n * @example\n * ```tsx\n * import { Label } from '@customafk/lunas-ui/ui/label';\n * import { Input } from '@customafk/lunas-ui/ui/input';\n *\n * <Label htmlFor=\"email\">Email address</Label>\n * <Input id=\"email\" type=\"email\" placeholder=\"you@example.com\" />\n * ```\n */\nfunction Label({ className, ...props }: React.ComponentProps<typeof LabelPrimitive.Root>) {\n return (\n <LabelPrimitive.Root\n data-slot=\"label\"\n className={cn(\n 'text-text-positive',\n 'flex items-center gap-2',\n 'select-none font-medium text-sm/6 leading-none',\n 'group-data-[disabled=true]:pointer-events-none',\n 'group-data-[disabled=true]:opacity-50',\n 'peer-disabled:cursor-not-allowed',\n 'peer-disabled:opacity-50',\n className\n )}\n {...props}\n />\n );\n}\n\nexport { Label };\n"],"mappings":"6IAkBA,SAAS,EAAM,CAAE,YAAW,GAAG,GAA2D,CACxF,OACE,EAAA,EAAA,KAACA,EAAAA,MAAe,KAAA,CACd,YAAU,QACV,WAAA,EAAA,EAAA,IACE,qBACA,0BACA,iDACA,iDACA,wCACA,mCACA,2BACA,EACD,CACD,GAAI,GACJ"}
@@ -1,2 +0,0 @@
1
- const e=require(`./chunk-350yNsax.cjs`),t=require(`./dist-Cx5ufCdr.cjs`),n=require(`./button-C--DAN1D.cjs`),r=require(`./paragraph-DvTZvbzw.cjs`),i=require(`./flex-DmWmOBn5.cjs`),a=require(`./tooltip-CBdoIzoM.cjs`),o=require(`./avatar-TyOphzGo.cjs`),s=require(`./sheet-CvKSi0UC.cjs`),c=require(`./dropdown-menu-CVh520yG.cjs`);let l=require(`lucide-react`),u=require(`react`),d=require(`@customafk/react-toolkit/utils`),f=require(`class-variance-authority`),p=require(`react/jsx-runtime`),m=require(`@customafk/react-toolkit/color-hash`),h=require(`@customafk/react-toolkit/hooks/useMobile`);const g=`sidebar_state`,_=3600*24*7,v=`16rem`,y=`18rem`,b=`3rem`,x=`b`,S=(0,u.createContext)(null);function C(){let e=(0,u.useContext)(S);if(!e)throw Error(`useSidebar must be used within a SidebarProvider.`);return e}function w({defaultOpen:e=!0,open:t,onOpenChange:n,className:r,style:i,children:o,...s}){let c=(0,h.useIsMobile)(),[l,f]=(0,u.useState)(!1),[m,g]=(0,u.useState)(e),_=t??m,v=(0,u.useCallback)(e=>{let t=typeof e==`function`?e(_):e;n?n(t):g(t),document.cookie=`sidebar_state=${t}; path=/; max-age=604800`},[n,_]),y=(0,u.useCallback)(()=>c?f(e=>!e):v(e=>!e),[c,v]);(0,u.useEffect)(()=>{let e=e=>{e.key===`b`&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),y())};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[y]);let b=_?`expanded`:`collapsed`,x=(0,u.useMemo)(()=>({state:b,open:_,setOpen:v,isMobile:c,openMobile:l,setOpenMobile:f,toggleSidebar:y}),[b,_,v,c,l,y]);return(0,p.jsx)(S.Provider,{value:x,children:(0,p.jsx)(a.r,{delayDuration:0,children:(0,p.jsx)(`div`,{"data-slot":`sidebar-wrapper`,style:{"--sidebar-width":`16rem`,"--sidebar-width-icon":`3rem`,...i},className:(0,d.cn)(`group/sidebar-wrapper flex h-dvh w-full`,r),...s,children:o})})})}function T({side:e=`left`,variant:t=`sidebar`,collapsible:r=`offcanvas`,className:i,children:a,...o}){let{isMobile:c,state:u,openMobile:f,setOpenMobile:m,toggleSidebar:h}=C();return r===`none`?(0,p.jsx)(`aside`,{"data-slot":`sidebar`,className:(0,d.cn)(`flex h-full w-(--sidebar-width) flex-col bg-sidebar text-sidebar-foreground`,i),...o,children:a}):c?(0,p.jsx)(s.t,{open:f,onOpenChange:m,...o,children:(0,p.jsxs)(s.r,{"data-sidebar":`sidebar`,"data-slot":`sidebar`,"data-mobile":`true`,className:`w-(--sidebar-width) bg-sidebar p-0 text-sidebar-foreground sm:max-w-3xs [&>button]:hidden`,style:{"--sidebar-width":`18rem`},side:e,children:[(0,p.jsxs)(s.o,{className:`sr-only`,children:[(0,p.jsx)(s.s,{children:`Sidebar`}),(0,p.jsx)(s.i,{children:`Displays the mobile sidebar.`})]}),(0,p.jsxs)(`div`,{className:`flex size-full flex-col`,children:[(0,p.jsxs)(`div`,{className:`flex flex-0 items-center gap-x-2 border-border-weak border-b p-2 pr-4`,children:[(0,p.jsxs)(n.t,{"data-sidebar":`trigger`,"data-slot":`sidebar-trigger`,variant:`ghost`,color:`muted`,size:`icon`,className:(0,d.cn)(`size-10 rounded-full`,i),onClick:e=>{h(),e.preventDefault(),e.stopPropagation()},children:[(0,p.jsx)(l.MenuIcon,{className:`size-6!`}),(0,p.jsx)(`span`,{className:`sr-only`,children:`Toggle Sidebar`})]}),(0,p.jsx)(`div`,{className:`ml-2 flex aspect-square size-8 items-center justify-center rounded-lg bg-sidebar-primary text-sidebar-primary-foreground`,children:(0,p.jsx)(l.ShoppingCartIcon,{size:20})}),(0,p.jsxs)(`div`,{className:`grid flex-1 text-left text-sm leading-tight`,children:[(0,p.jsx)(`span`,{className:`truncate font-medium`,children:`Lunas Store`}),(0,p.jsx)(`span`,{className:`truncate text-xs`,children:`Established 2023`})]})]}),(0,p.jsx)(`div`,{className:`flex flex-1 flex-col p-2`,children:a})]})]})}):(0,p.jsxs)(`aside`,{className:`group peer hidden bg-card text-sidebar-foreground md:block`,"data-state":u,"data-collapsible":u===`collapsed`?r:``,"data-variant":t,"data-side":e,"data-slot":`sidebar`,children:[(0,p.jsx)(`div`,{"data-slot":`sidebar-gap`,className:(0,d.cn)(`relative`,`bg-transparent`,`transition-[width] duration-200 ease-linear`,`h-(--header-height) w-(--sidebar-width)`,`sm:h-[calc(var(--header-height)+0.5rem)]`,`group-data-[collapsible=offcanvas]:w-0`,`group-data-[side=right]:rotate-180`,t===`floating`||t===`inset`?`group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]`:`group-data-[collapsible=icon]:w-(--sidebar-width-icon)`)}),(0,p.jsx)(`div`,{"data-slot":`sidebar-container`,className:(0,d.cn)(`hidden md:flex`,`fixed inset-y-0 top-14 z-10 shadow-nav`,`h-[calc(100dvh-3.5rem)] w-(--sidebar-width)`,`transition-[left,right,width] duration-200 ease-linear`,e===`left`&&`left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]`,e===`right`&&`right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]`,t===`floating`||t===`inset`?`p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]`:`group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l`,i),...o,children:(0,p.jsx)(`div`,{"data-sidebar":`sidebar`,"data-slot":`sidebar-inner`,className:(0,d.cn)(`flex size-full flex-col`,`group-data-[variant=floating]:rounded-lg`,`group-data-[variant=floating]:border`,`group-data-[variant=floating]:border-sidebar-border`,`group-data-[variant=floating]:shadow-sm`),children:a})})]})}function E({className:e,children:t,...n}){return(0,p.jsxs)(`main`,{"data-slot":`sidebar-inset`,className:(0,d.cn)(`relative flex w-full flex-1 flex-col`,e),...n,children:[(0,p.jsx)(`div`,{className:`h-(--header-height) w-full sm:h-[calc(var(--header-height)+0.5rem)]`}),(0,p.jsx)(`div`,{className:`inset-shadow-sm flex-1`,children:t})]})}function D({className:e,...t}){return(0,p.jsx)(`div`,{"data-slot":`sidebar-footer`,"data-sidebar":`footer`,className:(0,d.cn)(`flex flex-col gap-2 p-2`,e),...t})}function O({className:e,...t}){return(0,p.jsx)(`div`,{"data-slot":`sidebar-content`,"data-sidebar":`content`,className:(0,d.cn)(`flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden`,e),...t})}function k({className:e,...t}){return(0,p.jsx)(`div`,{"data-slot":`sidebar-group`,"data-sidebar":`group`,className:(0,d.cn)(`relative flex w-full min-w-0 flex-col`,e),...t})}function A({className:e,asChild:n=!1,...r}){return(0,p.jsx)(n?t.t:`div`,{"data-slot":`sidebar-group-label`,"data-sidebar":`group-label`,className:(0,d.cn)(`flex h-8 shrink-0 items-center rounded-md px-2 font-medium text-sidebar-foreground/70 text-xs outline-hidden ring-sidebar-ring transition-[margin,opacity] duration-200 ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0`,`group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0`,e),...r})}function j({className:e,...t}){return(0,p.jsx)(`div`,{"data-slot":`sidebar-group-content`,"data-sidebar":`group-content`,className:(0,d.cn)(`w-full text-sm`,e),...t})}function M({className:e,...t}){return(0,p.jsx)(`ul`,{"data-slot":`sidebar-menu`,"data-sidebar":`menu`,className:(0,d.cn)(`flex w-full min-w-0 flex-col gap-1`,e),...t})}function N({className:e,...t}){return(0,p.jsx)(`li`,{"data-slot":`sidebar-menu-item`,"data-sidebar":`menu-item`,className:(0,d.cn)(`group/menu-item relative`,e),...t})}const P=(0,f.cva)([`peer/menu-button`,`cursor-pointer`,`flex w-full items-center gap-2`,`overflow-hidden rounded-md p-2 outline-hidden`,`truncate text-left font-normal`,`transition-[color,width,height,padding]`,`hover:bg-sidebar-accent`,`hover:text-sidebar-accent-foreground`,`active:bg-sidebar-accent`,`active:text-sidebar-accent-foreground`,`disabled:pointer-events-none`,`disabled:opacity-50`,`group-has-data-[sidebar=menu-action]/menu-item:pr-8`,`aria-disabled:pointer-events-none`,`aria-disabled:opacity-50`,`data-[active=true]:bg-sidebar-primary-muted`,`data-[active=true]:text-sidebar-primary`,`data-[state=open]:hover:bg-sidebar-accent`,`data-[state=open]:hover:text-sidebar-accent-foreground`,`group-data-[collapsible=icon]:size-12!`,`group-data-[collapsible=icon]:p-3!`,`group-data-[collapsible=icon]:gap-3!`,`[&>svg]:size-6`,`[&>svg]:shrink-0`,`[&>span:last-child]:truncate`],{variants:{variant:{default:`hover:bg-sidebar-accent/60 hover:text-sidebar-accent-foreground/80`,outline:`bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]`},size:{default:`h-10 text-sm`,sm:`h-7 text-xs`,lg:`h-12 text-sm group-data-[collapsible=icon]:p-0!`}},defaultVariants:{variant:`default`,size:`default`}});function F({asChild:e=!1,isActive:n=!1,variant:r=`default`,size:i=`default`,tooltip:o,className:s,...c}){let l=e?t.t:`button`,{isMobile:u,state:f}=C(),m=(0,p.jsx)(l,{"data-slot":`sidebar-menu-button`,"data-sidebar":`menu-button`,"data-size":i,"data-active":n,className:(0,d.cn)(P({variant:r,size:i}),s),...c});return o?(typeof o==`string`&&(o={children:o}),(0,p.jsxs)(a.t,{children:[(0,p.jsx)(a.i,{asChild:!0,children:m}),(0,p.jsx)(a.n,{side:`right`,align:`center`,hidden:f!==`collapsed`||u,...o})]})):m}const I=({uuid:e,username:t,email:n})=>(0,p.jsxs)(i.t,{"data-slot":`user-display`,wrap:!1,gap:`sm`,padding:`none`,children:[(0,p.jsx)(o.t,{className:`size-9 shadow-card`,children:(0,p.jsx)(o.n,{style:{backgroundColor:m.colorHashLight.hex(e)},children:(0,p.jsx)(l.UserRoundIcon,{size:28,className:`text-white`})})}),(0,p.jsxs)(i.t,{vertical:!0,padding:`none`,gap:`none`,align:`start`,className:`hidden sm:flex`,children:[(0,p.jsx)(r.t,{className:`text-sm font-medium text-text-positive`,children:t}),(0,p.jsx)(r.t,{variant:`sm`,className:`mt-0! text-xs text-text-positive-weak`,children:n})]})]}),L=({user:e,isLogin:t=!0,onLogin:r,onLogout:i})=>{let{toggleSidebar:a}=C(),o=(0,u.useCallback)(e=>{e.preventDefault(),e.stopPropagation(),a()},[a]),s=(0,u.useCallback)(e=>{e.preventDefault(),e.stopPropagation(),i?.()},[i]),f=(0,u.useCallback)(e=>{e.preventDefault(),e.stopPropagation(),r?.()},[r]);return(0,p.jsxs)(`header`,{"data-slot":`payment-layout-header`,className:(0,d.cn)(`bg-card`,`h-[calc(var(--header-height)+0.5rem)] sm:px-4 sm:pr-6`,`absolute inset-x-0 top-0 z-20 gap-2 px-2 pr-2.5`,`flex items-center shadow-nav`,`transition-[width,height] ease-linear`),children:[t&&(0,p.jsxs)(n.t,{"data-sidebar":`trigger`,"data-slot":`sidebar-trigger`,variant:`ghost`,color:`muted`,size:`icon`,className:`hidden size-10 rounded-full transition-all hover:text-text-positive md:flex`,onClick:o,children:[(0,p.jsx)(l.MenuIcon,{className:`size-6!`}),(0,p.jsx)(`span`,{className:`sr-only`,children:`Toggle Sidebar`})]}),(0,p.jsxs)(`div`,{className:`flex flex-1 gap-x-2 sm:ml-2.5`,children:[(0,p.jsx)(`div`,{className:`flex aspect-square size-8 items-center justify-center rounded-lg bg-sidebar-primary text-sidebar-primary-foreground`,children:(0,p.jsx)(l.ShoppingCartIcon,{size:20})}),(0,p.jsxs)(`div`,{className:`grid flex-1 text-left text-sm leading-tight`,children:[(0,p.jsx)(`span`,{className:`truncate font-medium`,children:`Lunas Payment`}),(0,p.jsx)(`span`,{className:`truncate text-xs`,children:`Quản lý đơn hàng`})]})]}),e?(0,p.jsxs)(c.t,{children:[(0,p.jsx)(c.h,{asChild:!0,children:(0,p.jsx)(n.t,{variant:`ghost`,color:`muted`,className:`gap-x-2 rounded-full px-2 transition-all hover:text-text-positive`,children:(0,p.jsx)(I,{uuid:e?.uuid??``,username:e.fullname,email:e.email})})}),(0,p.jsxs)(c.r,{align:`end`,className:`w-56`,children:[(0,p.jsxs)(c.o,{className:`font-normal`,children:[(0,p.jsx)(`p`,{className:`font-medium`,children:e.fullname}),(0,p.jsx)(`p`,{className:`text-muted-foreground text-xs`,children:e.email})]}),(0,p.jsx)(c.u,{}),(0,p.jsx)(c.i,{children:(0,p.jsxs)(c.a,{onClick:s,children:[(0,p.jsx)(l.LogOutIcon,{size:14}),`Đăng xuất`]})})]})]}):(0,p.jsx)(n.t,{size:`sm`,onClick:f,children:`Đăng nhập`})]})},R=({items:e,activeNavItemId:t})=>{let{isMobile:n}=C();if(!n||e.length===0)return null;let r=e.slice(0,5);return(0,p.jsx)(`nav`,{"data-slot":`mobile-bottom-nav`,className:`fixed inset-x-0 bottom-0 z-20 flex h-16 items-stretch border-border border-t bg-card md:hidden`,children:r.map(e=>(0,p.jsxs)(`button`,{type:`button`,onClick:e.onClick,"data-active":e.id===t,className:(0,d.cn)(`flex flex-1 flex-col items-center justify-center gap-0.5`,`text-muted-foreground transition-colors`,`data-[active=true]:text-sidebar-primary`,`[&>svg]:size-5 [&>svg]:shrink-0`),children:[e.icon,(0,p.jsx)(`span`,{className:`max-w-16 truncate text-[10px] leading-3`,children:e.label})]},e.id))})},z=({activeNavItemId:e,sidebar:t,user:n,isLogin:r=!0,onLogin:i,onLogout:a,children:o})=>{let s=(0,u.useMemo)(()=>t?.groupcontent||[],[t]),c=(0,u.useMemo)(()=>s.flatMap(e=>e.items),[s]);return(0,p.jsxs)(w,{children:[(0,p.jsx)(L,{user:n,isLogin:r,onLogin:i,onLogout:a}),r&&(0,p.jsxs)(T,{variant:`inset`,collapsible:`icon`,children:[(0,p.jsx)(O,{children:s.map(t=>(0,p.jsxs)(k,{children:[(0,p.jsx)(A,{children:t.label}),(0,p.jsx)(j,{children:(0,p.jsx)(M,{children:t.items.map(t=>(0,p.jsx)(N,{children:(0,p.jsxs)(F,{isActive:t.id===e,onClick:e=>{t.onClick?.(),e.preventDefault(),e.stopPropagation()},children:[t.icon,t.label]})},t.id))})})]},t.id))}),(0,p.jsx)(D,{children:(0,p.jsx)(M,{children:(0,p.jsx)(N,{className:`mt-2 border-t border-t-border`,children:(0,p.jsx)(`p`,{className:`pt-2 text-center text-muted-foreground text-xs`,children:`Copyright © 2025, Lunas.`})})})})]}),(0,p.jsx)(E,{children:(0,p.jsx)(`section`,{className:`relative size-full`,children:(0,p.jsx)(`div`,{className:(0,d.cn)(`absolute inset-0 overflow-y-auto`,r&&`pb-16 md:pb-0`),children:o})})}),r&&(0,p.jsx)(R,{items:c,activeNavItemId:e})]})};Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return z}});
2
- //# sourceMappingURL=payment-layout-DyILfyVG.cjs.map
@@ -1,2 +0,0 @@
1
- import{t as e}from"./dist-EPxjIRJp.js";import{t}from"./button-LMMbL-uH.js";import{t as n}from"./paragraph-Cc13ZI4d.js";import{t as r}from"./flex-CinRrgEy.js";import{i,n as a,r as o,t as s}from"./tooltip-CVIl6Hln.js";import{n as c,t as l}from"./avatar-Hpj8lmux.js";import{i as u,o as d,r as f,s as p,t as m}from"./sheet-DGXXYgWB.js";import{a as h,h as g,i as _,o as v,r as y,t as b,u as x}from"./dropdown-menu-DeHCVyby.js";import{LogOutIcon as S,MenuIcon as C,ShoppingCartIcon as w,UserRoundIcon as T}from"lucide-react";import{createContext as E,useCallback as D,useContext as O,useEffect as k,useMemo as A,useState as j}from"react";import{cn as M}from"@customafk/react-toolkit/utils";import{cva as N}from"class-variance-authority";import{jsx as P,jsxs as F}from"react/jsx-runtime";import{colorHashLight as I}from"@customafk/react-toolkit/color-hash";import{useIsMobile as L}from"@customafk/react-toolkit/hooks/useMobile";const R=E(null);function z(){let e=O(R);if(!e)throw Error(`useSidebar must be used within a SidebarProvider.`);return e}function B({defaultOpen:e=!0,open:t,onOpenChange:n,className:r,style:i,children:a,...s}){let c=L(),[l,u]=j(!1),[d,f]=j(e),p=t??d,m=D(e=>{let t=typeof e==`function`?e(p):e;n?n(t):f(t),document.cookie=`sidebar_state=${t}; path=/; max-age=604800`},[n,p]),h=D(()=>c?u(e=>!e):m(e=>!e),[c,m]);k(()=>{let e=e=>{e.key===`b`&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),h())};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[h]);let g=p?`expanded`:`collapsed`,_=A(()=>({state:g,open:p,setOpen:m,isMobile:c,openMobile:l,setOpenMobile:u,toggleSidebar:h}),[g,p,m,c,l,h]);return P(R.Provider,{value:_,children:P(o,{delayDuration:0,children:P(`div`,{"data-slot":`sidebar-wrapper`,style:{"--sidebar-width":`16rem`,"--sidebar-width-icon":`3rem`,...i},className:M(`group/sidebar-wrapper flex h-dvh w-full`,r),...s,children:a})})})}function V({side:e=`left`,variant:n=`sidebar`,collapsible:r=`offcanvas`,className:i,children:a,...o}){let{isMobile:s,state:c,openMobile:l,setOpenMobile:h,toggleSidebar:g}=z();return r===`none`?P(`aside`,{"data-slot":`sidebar`,className:M(`flex h-full w-(--sidebar-width) flex-col bg-sidebar text-sidebar-foreground`,i),...o,children:a}):s?P(m,{open:l,onOpenChange:h,...o,children:F(f,{"data-sidebar":`sidebar`,"data-slot":`sidebar`,"data-mobile":`true`,className:`w-(--sidebar-width) bg-sidebar p-0 text-sidebar-foreground sm:max-w-3xs [&>button]:hidden`,style:{"--sidebar-width":`18rem`},side:e,children:[F(d,{className:`sr-only`,children:[P(p,{children:`Sidebar`}),P(u,{children:`Displays the mobile sidebar.`})]}),F(`div`,{className:`flex size-full flex-col`,children:[F(`div`,{className:`flex flex-0 items-center gap-x-2 border-border-weak border-b p-2 pr-4`,children:[F(t,{"data-sidebar":`trigger`,"data-slot":`sidebar-trigger`,variant:`ghost`,color:`muted`,size:`icon`,className:M(`size-10 rounded-full`,i),onClick:e=>{g(),e.preventDefault(),e.stopPropagation()},children:[P(C,{className:`size-6!`}),P(`span`,{className:`sr-only`,children:`Toggle Sidebar`})]}),P(`div`,{className:`ml-2 flex aspect-square size-8 items-center justify-center rounded-lg bg-sidebar-primary text-sidebar-primary-foreground`,children:P(w,{size:20})}),F(`div`,{className:`grid flex-1 text-left text-sm leading-tight`,children:[P(`span`,{className:`truncate font-medium`,children:`Lunas Store`}),P(`span`,{className:`truncate text-xs`,children:`Established 2023`})]})]}),P(`div`,{className:`flex flex-1 flex-col p-2`,children:a})]})]})}):F(`aside`,{className:`group peer hidden bg-card text-sidebar-foreground md:block`,"data-state":c,"data-collapsible":c===`collapsed`?r:``,"data-variant":n,"data-side":e,"data-slot":`sidebar`,children:[P(`div`,{"data-slot":`sidebar-gap`,className:M(`relative`,`bg-transparent`,`transition-[width] duration-200 ease-linear`,`h-(--header-height) w-(--sidebar-width)`,`sm:h-[calc(var(--header-height)+0.5rem)]`,`group-data-[collapsible=offcanvas]:w-0`,`group-data-[side=right]:rotate-180`,n===`floating`||n===`inset`?`group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]`:`group-data-[collapsible=icon]:w-(--sidebar-width-icon)`)}),P(`div`,{"data-slot":`sidebar-container`,className:M(`hidden md:flex`,`fixed inset-y-0 top-14 z-10 shadow-nav`,`h-[calc(100dvh-3.5rem)] w-(--sidebar-width)`,`transition-[left,right,width] duration-200 ease-linear`,e===`left`&&`left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]`,e===`right`&&`right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]`,n===`floating`||n===`inset`?`p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]`:`group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l`,i),...o,children:P(`div`,{"data-sidebar":`sidebar`,"data-slot":`sidebar-inner`,className:M(`flex size-full flex-col`,`group-data-[variant=floating]:rounded-lg`,`group-data-[variant=floating]:border`,`group-data-[variant=floating]:border-sidebar-border`,`group-data-[variant=floating]:shadow-sm`),children:a})})]})}function H({className:e,children:t,...n}){return F(`main`,{"data-slot":`sidebar-inset`,className:M(`relative flex w-full flex-1 flex-col`,e),...n,children:[P(`div`,{className:`h-(--header-height) w-full sm:h-[calc(var(--header-height)+0.5rem)]`}),P(`div`,{className:`inset-shadow-sm flex-1`,children:t})]})}function U({className:e,...t}){return P(`div`,{"data-slot":`sidebar-footer`,"data-sidebar":`footer`,className:M(`flex flex-col gap-2 p-2`,e),...t})}function W({className:e,...t}){return P(`div`,{"data-slot":`sidebar-content`,"data-sidebar":`content`,className:M(`flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden`,e),...t})}function G({className:e,...t}){return P(`div`,{"data-slot":`sidebar-group`,"data-sidebar":`group`,className:M(`relative flex w-full min-w-0 flex-col`,e),...t})}function K({className:t,asChild:n=!1,...r}){return P(n?e:`div`,{"data-slot":`sidebar-group-label`,"data-sidebar":`group-label`,className:M(`flex h-8 shrink-0 items-center rounded-md px-2 font-medium text-sidebar-foreground/70 text-xs outline-hidden ring-sidebar-ring transition-[margin,opacity] duration-200 ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0`,`group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0`,t),...r})}function q({className:e,...t}){return P(`div`,{"data-slot":`sidebar-group-content`,"data-sidebar":`group-content`,className:M(`w-full text-sm`,e),...t})}function J({className:e,...t}){return P(`ul`,{"data-slot":`sidebar-menu`,"data-sidebar":`menu`,className:M(`flex w-full min-w-0 flex-col gap-1`,e),...t})}function Y({className:e,...t}){return P(`li`,{"data-slot":`sidebar-menu-item`,"data-sidebar":`menu-item`,className:M(`group/menu-item relative`,e),...t})}const X=N([`peer/menu-button`,`cursor-pointer`,`flex w-full items-center gap-2`,`overflow-hidden rounded-md p-2 outline-hidden`,`truncate text-left font-normal`,`transition-[color,width,height,padding]`,`hover:bg-sidebar-accent`,`hover:text-sidebar-accent-foreground`,`active:bg-sidebar-accent`,`active:text-sidebar-accent-foreground`,`disabled:pointer-events-none`,`disabled:opacity-50`,`group-has-data-[sidebar=menu-action]/menu-item:pr-8`,`aria-disabled:pointer-events-none`,`aria-disabled:opacity-50`,`data-[active=true]:bg-sidebar-primary-muted`,`data-[active=true]:text-sidebar-primary`,`data-[state=open]:hover:bg-sidebar-accent`,`data-[state=open]:hover:text-sidebar-accent-foreground`,`group-data-[collapsible=icon]:size-12!`,`group-data-[collapsible=icon]:p-3!`,`group-data-[collapsible=icon]:gap-3!`,`[&>svg]:size-6`,`[&>svg]:shrink-0`,`[&>span:last-child]:truncate`],{variants:{variant:{default:`hover:bg-sidebar-accent/60 hover:text-sidebar-accent-foreground/80`,outline:`bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]`},size:{default:`h-10 text-sm`,sm:`h-7 text-xs`,lg:`h-12 text-sm group-data-[collapsible=icon]:p-0!`}},defaultVariants:{variant:`default`,size:`default`}});function Z({asChild:t=!1,isActive:n=!1,variant:r=`default`,size:o=`default`,tooltip:c,className:l,...u}){let d=t?e:`button`,{isMobile:f,state:p}=z(),m=P(d,{"data-slot":`sidebar-menu-button`,"data-sidebar":`menu-button`,"data-size":o,"data-active":n,className:M(X({variant:r,size:o}),l),...u});return c?(typeof c==`string`&&(c={children:c}),F(s,{children:[P(i,{asChild:!0,children:m}),P(a,{side:`right`,align:`center`,hidden:p!==`collapsed`||f,...c})]})):m}const Q=({uuid:e,username:t,email:i})=>F(r,{"data-slot":`user-display`,wrap:!1,gap:`sm`,padding:`none`,children:[P(l,{className:`size-9 shadow-card`,children:P(c,{style:{backgroundColor:I.hex(e)},children:P(T,{size:28,className:`text-white`})})}),F(r,{vertical:!0,padding:`none`,gap:`none`,align:`start`,className:`hidden sm:flex`,children:[P(n,{className:`text-sm font-medium text-text-positive`,children:t}),P(n,{variant:`sm`,className:`mt-0! text-xs text-text-positive-weak`,children:i})]})]}),$=({user:e,isLogin:n=!0,onLogin:r,onLogout:i})=>{let{toggleSidebar:a}=z(),o=D(e=>{e.preventDefault(),e.stopPropagation(),a()},[a]),s=D(e=>{e.preventDefault(),e.stopPropagation(),i?.()},[i]),c=D(e=>{e.preventDefault(),e.stopPropagation(),r?.()},[r]);return F(`header`,{"data-slot":`payment-layout-header`,className:M(`bg-card`,`h-[calc(var(--header-height)+0.5rem)] sm:px-4 sm:pr-6`,`absolute inset-x-0 top-0 z-20 gap-2 px-2 pr-2.5`,`flex items-center shadow-nav`,`transition-[width,height] ease-linear`),children:[n&&F(t,{"data-sidebar":`trigger`,"data-slot":`sidebar-trigger`,variant:`ghost`,color:`muted`,size:`icon`,className:`hidden size-10 rounded-full transition-all hover:text-text-positive md:flex`,onClick:o,children:[P(C,{className:`size-6!`}),P(`span`,{className:`sr-only`,children:`Toggle Sidebar`})]}),F(`div`,{className:`flex flex-1 gap-x-2 sm:ml-2.5`,children:[P(`div`,{className:`flex aspect-square size-8 items-center justify-center rounded-lg bg-sidebar-primary text-sidebar-primary-foreground`,children:P(w,{size:20})}),F(`div`,{className:`grid flex-1 text-left text-sm leading-tight`,children:[P(`span`,{className:`truncate font-medium`,children:`Lunas Payment`}),P(`span`,{className:`truncate text-xs`,children:`Quản lý đơn hàng`})]})]}),e?F(b,{children:[P(g,{asChild:!0,children:P(t,{variant:`ghost`,color:`muted`,className:`gap-x-2 rounded-full px-2 transition-all hover:text-text-positive`,children:P(Q,{uuid:e?.uuid??``,username:e.fullname,email:e.email})})}),F(y,{align:`end`,className:`w-56`,children:[F(v,{className:`font-normal`,children:[P(`p`,{className:`font-medium`,children:e.fullname}),P(`p`,{className:`text-muted-foreground text-xs`,children:e.email})]}),P(x,{}),P(_,{children:F(h,{onClick:s,children:[P(S,{size:14}),`Đăng xuất`]})})]})]}):P(t,{size:`sm`,onClick:c,children:`Đăng nhập`})]})},ee=({items:e,activeNavItemId:t})=>{let{isMobile:n}=z();if(!n||e.length===0)return null;let r=e.slice(0,5);return P(`nav`,{"data-slot":`mobile-bottom-nav`,className:`fixed inset-x-0 bottom-0 z-20 flex h-16 items-stretch border-border border-t bg-card md:hidden`,children:r.map(e=>F(`button`,{type:`button`,onClick:e.onClick,"data-active":e.id===t,className:M(`flex flex-1 flex-col items-center justify-center gap-0.5`,`text-muted-foreground transition-colors`,`data-[active=true]:text-sidebar-primary`,`[&>svg]:size-5 [&>svg]:shrink-0`),children:[e.icon,P(`span`,{className:`max-w-16 truncate text-[10px] leading-3`,children:e.label})]},e.id))})},te=({activeNavItemId:e,sidebar:t,user:n,isLogin:r=!0,onLogin:i,onLogout:a,children:o})=>{let s=A(()=>t?.groupcontent||[],[t]),c=A(()=>s.flatMap(e=>e.items),[s]);return F(B,{children:[P($,{user:n,isLogin:r,onLogin:i,onLogout:a}),r&&F(V,{variant:`inset`,collapsible:`icon`,children:[P(W,{children:s.map(t=>F(G,{children:[P(K,{children:t.label}),P(q,{children:P(J,{children:t.items.map(t=>P(Y,{children:F(Z,{isActive:t.id===e,onClick:e=>{t.onClick?.(),e.preventDefault(),e.stopPropagation()},children:[t.icon,t.label]})},t.id))})})]},t.id))}),P(U,{children:P(J,{children:P(Y,{className:`mt-2 border-t border-t-border`,children:P(`p`,{className:`pt-2 text-center text-muted-foreground text-xs`,children:`Copyright © 2025, Lunas.`})})})})]}),P(H,{children:P(`section`,{className:`relative size-full`,children:P(`div`,{className:M(`absolute inset-0 overflow-y-auto`,r&&`pb-16 md:pb-0`),children:o})})}),r&&P(ee,{items:c,activeNavItemId:e})]})};export{te as t};
2
- //# sourceMappingURL=payment-layout-giaGvs8T.js.map
@@ -1,2 +0,0 @@
1
- import{t as e}from"./close-C0PdZGxr.js";import{cn as t}from"@customafk/react-toolkit/utils";import{jsx as n}from"react/jsx-runtime";import{Popover as r}from"radix-ui";function i({...e}){return n(r.Root,{"data-slot":`popover`,...e})}function a({...e}){return n(r.Trigger,{"data-slot":`popover-trigger`,...e})}function o({className:e,align:i=`start`,sideOffset:a=4,...o}){return n(r.Portal,{children:n(r.Content,{"data-slot":`popover-content`,align:i,sideOffset:a,className:t(`relative bg-popover`,`text-text-positive`,`z-50`,`min-w-(--radix-popover-trigger-width)`,`max-h-(--radix-popover-content-available-height)`,`origin-(--radix-popover-content-transform-origin)`,`rounded-md p-4 shadow-dropdown outline-none`,`data-[state=open]:animate-in`,`data-[state=open]:fade-in-0`,`data-[state=open]: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`,e),...o})})}function s({...e}){return n(r.Anchor,{"data-slot":`popover-anchor`,...e})}function c({className:t,...i}){return n(r.Close,{"data-slot":`popover-close`,...i,asChild:!0,children:n(e,{className:`absolute top-2 right-2`})})}export{a,o as i,s as n,c as r,i as t};
2
- //# sourceMappingURL=popover-6233wU1s.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"popover-6233wU1s.js","names":["Popover","PopoverPrimitive"],"sources":["../packages/components/ui/popover.tsx"],"sourcesContent":["'use client';\n\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { Popover as PopoverPrimitive } from 'radix-ui';\nimport { CloseButton } from './buttons/close';\n\n/**\n * Floating panel built on Radix UI's Popover primitives, anchored to a trigger element with animated open/close transitions.\n *\n * @example\n * ```tsx\n * import {\n * Popover, PopoverTrigger, PopoverContent, PopoverClose,\n * } from '@customafk/lunas-ui/ui/popover';\n * import { Button } from '@customafk/lunas-ui/ui/button';\n *\n * <Popover>\n * <PopoverTrigger asChild>\n * <Button variant=\"outline\">Open popover</Button>\n * </PopoverTrigger>\n * <PopoverContent>\n * <PopoverClose />\n * <p>Popover body content goes here.</p>\n * </PopoverContent>\n * </Popover>\n * ```\n */\nfunction Popover({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Root>) {\n return <PopoverPrimitive.Root data-slot=\"popover\" {...props} />;\n}\n\n/** Element that opens or closes the popover on click; use `asChild` to render a custom trigger element. */\nfunction PopoverTrigger({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Trigger>) {\n return <PopoverPrimitive.Trigger data-slot=\"popover-trigger\" {...props} />;\n}\n\n/** Floating content panel rendered in a portal, matching the trigger width and animated on open/close. */\nfunction PopoverContent({ className, align = 'start', sideOffset = 4, ...props }: 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 'relative bg-popover',\n 'text-text-positive',\n 'z-50',\n 'min-w-(--radix-popover-trigger-width)',\n 'max-h-(--radix-popover-content-available-height)',\n 'origin-(--radix-popover-content-transform-origin)',\n 'rounded-md p-4 shadow-dropdown outline-none',\n\n 'data-[state=open]:animate-in',\n 'data-[state=open]:fade-in-0',\n 'data-[state=open]:zoom-in-95',\n\n 'data-[state=closed]:animate-out',\n 'data-[state=closed]:fade-out-0',\n 'data-[state=closed]:zoom-out-95',\n\n 'data-[side=bottom]:slide-in-from-top-2',\n 'data-[side=left]:slide-in-from-right-2',\n 'data-[side=right]:slide-in-from-left-2',\n 'data-[side=top]:slide-in-from-bottom-2',\n className\n )}\n {...props}\n />\n </PopoverPrimitive.Portal>\n );\n}\n\n/** Optional anchor element that overrides the trigger as the popover's positioning reference point. */\nfunction PopoverAnchor({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Anchor>) {\n return <PopoverPrimitive.Anchor data-slot=\"popover-anchor\" {...props} />;\n}\n\n/** Close button pre-positioned at the top-right corner of `PopoverContent` using the shared `CloseButton` primitive. */\nfunction PopoverClose({ className, ...props }: React.ComponentProps<typeof PopoverPrimitive.Close>) {\n return (\n <PopoverPrimitive.Close data-slot=\"popover-close\" {...props} asChild>\n <CloseButton className=\"absolute top-2 right-2\" />\n </PopoverPrimitive.Close>\n );\n}\n\nexport { Popover, PopoverAnchor, PopoverContent, PopoverTrigger, PopoverClose };\n"],"mappings":"uKA4BA,SAASA,EAAQ,CAAE,GAAG,GAA6D,CACjF,OAAO,EAACC,EAAiB,KAAA,CAAK,YAAU,UAAU,GAAI,GAAS,CAIjE,SAAS,EAAe,CAAE,GAAG,GAAgE,CAC3F,OAAO,EAACA,EAAiB,QAAA,CAAQ,YAAU,kBAAkB,GAAI,GAAS,CAI5E,SAAS,EAAe,CAAE,YAAW,QAAQ,QAAS,aAAa,EAAG,GAAG,GAAgE,CACvI,OACE,EAACA,EAAiB,OAAA,CAAA,SAChB,EAACA,EAAiB,QAAA,CAChB,YAAU,kBACH,QACK,aACZ,UAAW,EACT,sBACA,qBACA,OACA,wCACA,mDACA,oDACA,8CAEA,+BACA,8BACA,+BAEA,kCACA,iCACA,kCAEA,yCACA,yCACA,yCACA,yCACA,EACD,CACD,GAAI,GACJ,CAAA,CACsB,CAK9B,SAAS,EAAc,CAAE,GAAG,GAA+D,CACzF,OAAO,EAACA,EAAiB,OAAA,CAAO,YAAU,iBAAiB,GAAI,GAAS,CAI1E,SAAS,EAAa,CAAE,YAAW,GAAG,GAA8D,CAClG,OACE,EAACA,EAAiB,MAAA,CAAM,YAAU,gBAAgB,GAAI,EAAO,QAAA,YAC3D,EAAC,EAAA,CAAY,UAAU,yBAAA,CAA2B,EAC3B"}
@@ -1,2 +0,0 @@
1
- const e=require(`./chunk-350yNsax.cjs`),t=require(`./close-Dlo1bI8x.cjs`);let n=require(`@customafk/react-toolkit/utils`),r=require(`react/jsx-runtime`),i=require(`radix-ui`);function a({...e}){return(0,r.jsx)(i.Popover.Root,{"data-slot":`popover`,...e})}function o({...e}){return(0,r.jsx)(i.Popover.Trigger,{"data-slot":`popover-trigger`,...e})}function s({className:e,align:t=`start`,sideOffset:a=4,...o}){return(0,r.jsx)(i.Popover.Portal,{children:(0,r.jsx)(i.Popover.Content,{"data-slot":`popover-content`,align:t,sideOffset:a,className:(0,n.cn)(`relative bg-popover`,`text-text-positive`,`z-50`,`min-w-(--radix-popover-trigger-width)`,`max-h-(--radix-popover-content-available-height)`,`origin-(--radix-popover-content-transform-origin)`,`rounded-md p-4 shadow-dropdown outline-none`,`data-[state=open]:animate-in`,`data-[state=open]:fade-in-0`,`data-[state=open]: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`,e),...o})})}function c({...e}){return(0,r.jsx)(i.Popover.Anchor,{"data-slot":`popover-anchor`,...e})}function l({className:e,...n}){return(0,r.jsx)(i.Popover.Close,{"data-slot":`popover-close`,...n,asChild:!0,children:(0,r.jsx)(t.t,{className:`absolute top-2 right-2`})})}Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return a}});
2
- //# sourceMappingURL=popover-DBsC8Ltp.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"popover-DBsC8Ltp.cjs","names":["PopoverPrimitive","CloseButton"],"sources":["../packages/components/ui/popover.tsx"],"sourcesContent":["'use client';\n\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { Popover as PopoverPrimitive } from 'radix-ui';\nimport { CloseButton } from './buttons/close';\n\n/**\n * Floating panel built on Radix UI's Popover primitives, anchored to a trigger element with animated open/close transitions.\n *\n * @example\n * ```tsx\n * import {\n * Popover, PopoverTrigger, PopoverContent, PopoverClose,\n * } from '@customafk/lunas-ui/ui/popover';\n * import { Button } from '@customafk/lunas-ui/ui/button';\n *\n * <Popover>\n * <PopoverTrigger asChild>\n * <Button variant=\"outline\">Open popover</Button>\n * </PopoverTrigger>\n * <PopoverContent>\n * <PopoverClose />\n * <p>Popover body content goes here.</p>\n * </PopoverContent>\n * </Popover>\n * ```\n */\nfunction Popover({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Root>) {\n return <PopoverPrimitive.Root data-slot=\"popover\" {...props} />;\n}\n\n/** Element that opens or closes the popover on click; use `asChild` to render a custom trigger element. */\nfunction PopoverTrigger({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Trigger>) {\n return <PopoverPrimitive.Trigger data-slot=\"popover-trigger\" {...props} />;\n}\n\n/** Floating content panel rendered in a portal, matching the trigger width and animated on open/close. */\nfunction PopoverContent({ className, align = 'start', sideOffset = 4, ...props }: 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 'relative bg-popover',\n 'text-text-positive',\n 'z-50',\n 'min-w-(--radix-popover-trigger-width)',\n 'max-h-(--radix-popover-content-available-height)',\n 'origin-(--radix-popover-content-transform-origin)',\n 'rounded-md p-4 shadow-dropdown outline-none',\n\n 'data-[state=open]:animate-in',\n 'data-[state=open]:fade-in-0',\n 'data-[state=open]:zoom-in-95',\n\n 'data-[state=closed]:animate-out',\n 'data-[state=closed]:fade-out-0',\n 'data-[state=closed]:zoom-out-95',\n\n 'data-[side=bottom]:slide-in-from-top-2',\n 'data-[side=left]:slide-in-from-right-2',\n 'data-[side=right]:slide-in-from-left-2',\n 'data-[side=top]:slide-in-from-bottom-2',\n className\n )}\n {...props}\n />\n </PopoverPrimitive.Portal>\n );\n}\n\n/** Optional anchor element that overrides the trigger as the popover's positioning reference point. */\nfunction PopoverAnchor({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Anchor>) {\n return <PopoverPrimitive.Anchor data-slot=\"popover-anchor\" {...props} />;\n}\n\n/** Close button pre-positioned at the top-right corner of `PopoverContent` using the shared `CloseButton` primitive. */\nfunction PopoverClose({ className, ...props }: React.ComponentProps<typeof PopoverPrimitive.Close>) {\n return (\n <PopoverPrimitive.Close data-slot=\"popover-close\" {...props} asChild>\n <CloseButton className=\"absolute top-2 right-2\" />\n </PopoverPrimitive.Close>\n );\n}\n\nexport { Popover, PopoverAnchor, PopoverContent, PopoverTrigger, PopoverClose };\n"],"mappings":"+KA4BA,SAAS,EAAQ,CAAE,GAAG,GAA6D,CACjF,OAAO,EAAA,EAAA,KAACA,EAAAA,QAAiB,KAAA,CAAK,YAAU,UAAU,GAAI,GAAS,CAIjE,SAAS,EAAe,CAAE,GAAG,GAAgE,CAC3F,OAAO,EAAA,EAAA,KAACA,EAAAA,QAAiB,QAAA,CAAQ,YAAU,kBAAkB,GAAI,GAAS,CAI5E,SAAS,EAAe,CAAE,YAAW,QAAQ,QAAS,aAAa,EAAG,GAAG,GAAgE,CACvI,OACE,EAAA,EAAA,KAACA,EAAAA,QAAiB,OAAA,CAAA,UAChB,EAAA,EAAA,KAACA,EAAAA,QAAiB,QAAA,CAChB,YAAU,kBACH,QACK,aACZ,WAAA,EAAA,EAAA,IACE,sBACA,qBACA,OACA,wCACA,mDACA,oDACA,8CAEA,+BACA,8BACA,+BAEA,kCACA,iCACA,kCAEA,yCACA,yCACA,yCACA,yCACA,EACD,CACD,GAAI,GACJ,CAAA,CACsB,CAK9B,SAAS,EAAc,CAAE,GAAG,GAA+D,CACzF,OAAO,EAAA,EAAA,KAACA,EAAAA,QAAiB,OAAA,CAAO,YAAU,iBAAiB,GAAI,GAAS,CAI1E,SAAS,EAAa,CAAE,YAAW,GAAG,GAA8D,CAClG,OACE,EAAA,EAAA,KAACA,EAAAA,QAAiB,MAAA,CAAM,YAAU,gBAAgB,GAAI,EAAO,QAAA,aAC3D,EAAA,EAAA,KAACC,EAAAA,EAAAA,CAAY,UAAU,yBAAA,CAA2B,EAC3B"}
@@ -1,2 +0,0 @@
1
- import{cn as e}from"@customafk/react-toolkit/utils";import{jsx as t}from"react/jsx-runtime";import{Progress as n}from"radix-ui";function r({className:r,value:i,...a}){return t(n.Root,{"data-slot":`progress`,className:e(`bg-primary-weak relative h-2 w-full overflow-hidden rounded-full`,r),...a,children:t(n.Indicator,{"data-slot":`progress-indicator`,className:`bg-primary size-full flex-1 transition-all`,style:{transform:`translateX(-${100-(i||0)}%)`}})})}export{r as t};
2
- //# sourceMappingURL=progress-AYknlEgK.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"progress-AYknlEgK.js","names":["Progress","ProgressPrimitive"],"sources":["../packages/components/ui/progress.tsx"],"sourcesContent":["'use client';\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { Progress as ProgressPrimitive } from 'radix-ui';\n\n/**\n * A horizontal progress bar that visually represents a completion percentage.\n *\n * @example\n * ```tsx\n * import { Progress } from '@customafk/lunas-ui/ui/progress';\n *\n * <Progress value={65} />\n * ```\n */\nfunction Progress({ className, value, ...props }: React.ComponentProps<typeof ProgressPrimitive.Root>) {\n return (\n <ProgressPrimitive.Root data-slot=\"progress\" className={cn('bg-primary-weak relative h-2 w-full overflow-hidden rounded-full', className)} {...props}>\n <ProgressPrimitive.Indicator\n data-slot=\"progress-indicator\"\n className=\"bg-primary size-full flex-1 transition-all\"\n style={{ transform: `translateX(-${100 - (value || 0)}%)` }}\n />\n </ProgressPrimitive.Root>\n );\n}\n\nexport { Progress };\n"],"mappings":"gIAeA,SAASA,EAAS,CAAE,YAAW,QAAO,GAAG,GAA8D,CACrG,OACE,EAACC,EAAkB,KAAA,CAAK,YAAU,WAAW,UAAW,EAAG,mEAAoE,EAAU,CAAE,GAAI,WAC7I,EAACA,EAAkB,UAAA,CACjB,YAAU,qBACV,UAAU,6CACV,MAAO,CAAE,UAAW,eAAe,KAAO,GAAS,GAAG,IAAK,EAC3D,EACqB"}
@@ -1,2 +0,0 @@
1
- const e=require(`./chunk-350yNsax.cjs`);let t=require(`@customafk/react-toolkit/utils`),n=require(`react/jsx-runtime`),r=require(`radix-ui`);function i({className:e,value:i,...a}){return(0,n.jsx)(r.Progress.Root,{"data-slot":`progress`,className:(0,t.cn)(`bg-primary-weak relative h-2 w-full overflow-hidden rounded-full`,e),...a,children:(0,n.jsx)(r.Progress.Indicator,{"data-slot":`progress-indicator`,className:`bg-primary size-full flex-1 transition-all`,style:{transform:`translateX(-${100-(i||0)}%)`}})})}Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return i}});
2
- //# sourceMappingURL=progress-gvBqNiHp.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"progress-gvBqNiHp.cjs","names":["ProgressPrimitive"],"sources":["../packages/components/ui/progress.tsx"],"sourcesContent":["'use client';\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { Progress as ProgressPrimitive } from 'radix-ui';\n\n/**\n * A horizontal progress bar that visually represents a completion percentage.\n *\n * @example\n * ```tsx\n * import { Progress } from '@customafk/lunas-ui/ui/progress';\n *\n * <Progress value={65} />\n * ```\n */\nfunction Progress({ className, value, ...props }: React.ComponentProps<typeof ProgressPrimitive.Root>) {\n return (\n <ProgressPrimitive.Root data-slot=\"progress\" className={cn('bg-primary-weak relative h-2 w-full overflow-hidden rounded-full', className)} {...props}>\n <ProgressPrimitive.Indicator\n data-slot=\"progress-indicator\"\n className=\"bg-primary size-full flex-1 transition-all\"\n style={{ transform: `translateX(-${100 - (value || 0)}%)` }}\n />\n </ProgressPrimitive.Root>\n );\n}\n\nexport { Progress };\n"],"mappings":"6IAeA,SAAS,EAAS,CAAE,YAAW,QAAO,GAAG,GAA8D,CACrG,OACE,EAAA,EAAA,KAACA,EAAAA,SAAkB,KAAA,CAAK,YAAU,WAAW,WAAA,EAAA,EAAA,IAAc,mEAAoE,EAAU,CAAE,GAAI,YAC7I,EAAA,EAAA,KAACA,EAAAA,SAAkB,UAAA,CACjB,YAAU,qBACV,UAAU,6CACV,MAAO,CAAE,UAAW,eAAe,KAAO,GAAS,GAAG,IAAK,EAC3D,EACqB"}
@@ -1,2 +0,0 @@
1
- import{CircleIcon as e}from"lucide-react";import{cn as t}from"@customafk/react-toolkit/utils";import{jsx as n,jsxs as r}from"react/jsx-runtime";import{RadioGroup as i}from"radix-ui";function a({className:e,...r}){return n(i.Root,{"data-slot":`radio-group`,className:t(`grid gap-3`,e),...r})}function o({className:a,...o}){return n(i.Item,{"data-slot":`radio-group-item`,className:t(`aspect-square size-4 shrink-0 rounded-full border border-border shadow-xs outline-none transition-all`,`disabled:cursor-not-allowed disabled:opacity-50`,`focus:border-border focus:ring-4 focus:ring-primary-weak`,`aria-invalid:border-danger-strong aria-invalid:ring-danger-weak`,`aria-readonly:pointer-events-none`,`aria-readonly:[&_div]:bg-muted`,`aria-readonly:[&_svg]:fill-muted-weak`,`aria-readonly:[&_svg]:text-muted-weak`,a),...o,children:r(i.Indicator,{"data-slot":`radio-group-indicator`,className:`relative flex items-center justify-center bg-primary`,children:[n(`div`,{className:`absolute size-4 rounded-full bg-primary`}),n(e,{className:`-translate-1/2 absolute top-1/2 left-1/2 size-2 fill-text-negative-strong text-text-negative`})]})})}export{o as n,a as t};
2
- //# sourceMappingURL=radio-group-ImoBjpqZ.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"radio-group-ImoBjpqZ.js","names":["RadioGroup","RadioGroupPrimitive"],"sources":["../packages/components/ui/radio-group.tsx"],"sourcesContent":["'use client';\n\nimport { CircleIcon } from 'lucide-react';\n\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { RadioGroup as RadioGroupPrimitive } from 'radix-ui';\n\n/**\n * Accessible radio button group built on Radix UI's RadioGroup primitive, where only one option can be selected at a time.\n *\n * @example\n * ```tsx\n * import { RadioGroup, RadioGroupItem } from '@customafk/lunas-ui/ui/radio-group';\n * import { Label } from '@customafk/lunas-ui/ui/label';\n *\n * <RadioGroup defaultValue=\"monthly\">\n * <div className=\"flex items-center gap-2\">\n * <RadioGroupItem value=\"monthly\" id=\"monthly\" />\n * <Label htmlFor=\"monthly\">Monthly</Label>\n * </div>\n * <div className=\"flex items-center gap-2\">\n * <RadioGroupItem value=\"annually\" id=\"annually\" />\n * <Label htmlFor=\"annually\">Annually</Label>\n * </div>\n * </RadioGroup>\n * ```\n */\nfunction RadioGroup({ className, ...props }: React.ComponentProps<typeof RadioGroupPrimitive.Root>) {\n return <RadioGroupPrimitive.Root data-slot=\"radio-group\" className={cn('grid gap-3', className)} {...props} />;\n}\n\n/** Individual radio button within a `RadioGroup`; shows a filled circle indicator when selected. */\nfunction RadioGroupItem({ className, ...props }: React.ComponentProps<typeof RadioGroupPrimitive.Item>) {\n return (\n <RadioGroupPrimitive.Item\n data-slot=\"radio-group-item\"\n className={cn(\n 'aspect-square size-4 shrink-0 rounded-full border border-border shadow-xs outline-none transition-all',\n 'disabled:cursor-not-allowed disabled:opacity-50',\n 'focus:border-border focus:ring-4 focus:ring-primary-weak',\n 'aria-invalid:border-danger-strong aria-invalid:ring-danger-weak',\n 'aria-readonly:pointer-events-none',\n 'aria-readonly:[&_div]:bg-muted',\n 'aria-readonly:[&_svg]:fill-muted-weak',\n 'aria-readonly:[&_svg]:text-muted-weak',\n className\n )}\n {...props}\n >\n <RadioGroupPrimitive.Indicator data-slot=\"radio-group-indicator\" className=\"relative flex items-center justify-center bg-primary\">\n <div className=\"absolute size-4 rounded-full bg-primary\" />\n <CircleIcon className=\"-translate-1/2 absolute top-1/2 left-1/2 size-2 fill-text-negative-strong text-text-negative\" />\n </RadioGroupPrimitive.Indicator>\n </RadioGroupPrimitive.Item>\n );\n}\n\nexport { RadioGroup, RadioGroupItem };\n"],"mappings":"sLA4BA,SAASA,EAAW,CAAE,YAAW,GAAG,GAAgE,CAClG,OAAO,EAACC,EAAoB,KAAA,CAAK,YAAU,cAAc,UAAW,EAAG,aAAc,EAAU,CAAE,GAAI,GAAS,CAIhH,SAAS,EAAe,CAAE,YAAW,GAAG,GAAgE,CACtG,OACE,EAACA,EAAoB,KAAA,CACnB,YAAU,mBACV,UAAW,EACT,wGACA,kDACA,2DACA,kEACA,oCACA,iCACA,wCACA,wCACA,EACD,CACD,GAAI,WAEJ,EAACA,EAAoB,UAAA,CAAU,YAAU,wBAAwB,UAAU,iEACzE,EAAC,MAAA,CAAI,UAAU,0CAAA,CAA4C,CAC3D,EAAC,EAAA,CAAW,UAAU,+FAAA,CAAiG,CAAA,EACzF,EACP"}
@@ -1,2 +0,0 @@
1
- const e=require(`./chunk-350yNsax.cjs`);let t=require(`lucide-react`),n=require(`@customafk/react-toolkit/utils`),r=require(`react/jsx-runtime`),i=require(`radix-ui`);function a({className:e,...t}){return(0,r.jsx)(i.RadioGroup.Root,{"data-slot":`radio-group`,className:(0,n.cn)(`grid gap-3`,e),...t})}function o({className:e,...a}){return(0,r.jsx)(i.RadioGroup.Item,{"data-slot":`radio-group-item`,className:(0,n.cn)(`aspect-square size-4 shrink-0 rounded-full border border-border shadow-xs outline-none transition-all`,`disabled:cursor-not-allowed disabled:opacity-50`,`focus:border-border focus:ring-4 focus:ring-primary-weak`,`aria-invalid:border-danger-strong aria-invalid:ring-danger-weak`,`aria-readonly:pointer-events-none`,`aria-readonly:[&_div]:bg-muted`,`aria-readonly:[&_svg]:fill-muted-weak`,`aria-readonly:[&_svg]:text-muted-weak`,e),...a,children:(0,r.jsxs)(i.RadioGroup.Indicator,{"data-slot":`radio-group-indicator`,className:`relative flex items-center justify-center bg-primary`,children:[(0,r.jsx)(`div`,{className:`absolute size-4 rounded-full bg-primary`}),(0,r.jsx)(t.CircleIcon,{className:`-translate-1/2 absolute top-1/2 left-1/2 size-2 fill-text-negative-strong text-text-negative`})]})})}Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return a}});
2
- //# sourceMappingURL=radio-group-_TdMkv8w.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"radio-group-_TdMkv8w.cjs","names":["RadioGroupPrimitive","CircleIcon"],"sources":["../packages/components/ui/radio-group.tsx"],"sourcesContent":["'use client';\n\nimport { CircleIcon } from 'lucide-react';\n\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { RadioGroup as RadioGroupPrimitive } from 'radix-ui';\n\n/**\n * Accessible radio button group built on Radix UI's RadioGroup primitive, where only one option can be selected at a time.\n *\n * @example\n * ```tsx\n * import { RadioGroup, RadioGroupItem } from '@customafk/lunas-ui/ui/radio-group';\n * import { Label } from '@customafk/lunas-ui/ui/label';\n *\n * <RadioGroup defaultValue=\"monthly\">\n * <div className=\"flex items-center gap-2\">\n * <RadioGroupItem value=\"monthly\" id=\"monthly\" />\n * <Label htmlFor=\"monthly\">Monthly</Label>\n * </div>\n * <div className=\"flex items-center gap-2\">\n * <RadioGroupItem value=\"annually\" id=\"annually\" />\n * <Label htmlFor=\"annually\">Annually</Label>\n * </div>\n * </RadioGroup>\n * ```\n */\nfunction RadioGroup({ className, ...props }: React.ComponentProps<typeof RadioGroupPrimitive.Root>) {\n return <RadioGroupPrimitive.Root data-slot=\"radio-group\" className={cn('grid gap-3', className)} {...props} />;\n}\n\n/** Individual radio button within a `RadioGroup`; shows a filled circle indicator when selected. */\nfunction RadioGroupItem({ className, ...props }: React.ComponentProps<typeof RadioGroupPrimitive.Item>) {\n return (\n <RadioGroupPrimitive.Item\n data-slot=\"radio-group-item\"\n className={cn(\n 'aspect-square size-4 shrink-0 rounded-full border border-border shadow-xs outline-none transition-all',\n 'disabled:cursor-not-allowed disabled:opacity-50',\n 'focus:border-border focus:ring-4 focus:ring-primary-weak',\n 'aria-invalid:border-danger-strong aria-invalid:ring-danger-weak',\n 'aria-readonly:pointer-events-none',\n 'aria-readonly:[&_div]:bg-muted',\n 'aria-readonly:[&_svg]:fill-muted-weak',\n 'aria-readonly:[&_svg]:text-muted-weak',\n className\n )}\n {...props}\n >\n <RadioGroupPrimitive.Indicator data-slot=\"radio-group-indicator\" className=\"relative flex items-center justify-center bg-primary\">\n <div className=\"absolute size-4 rounded-full bg-primary\" />\n <CircleIcon className=\"-translate-1/2 absolute top-1/2 left-1/2 size-2 fill-text-negative-strong text-text-negative\" />\n </RadioGroupPrimitive.Indicator>\n </RadioGroupPrimitive.Item>\n );\n}\n\nexport { RadioGroup, RadioGroupItem };\n"],"mappings":"uKA4BA,SAAS,EAAW,CAAE,YAAW,GAAG,GAAgE,CAClG,OAAO,EAAA,EAAA,KAACA,EAAAA,WAAoB,KAAA,CAAK,YAAU,cAAc,WAAA,EAAA,EAAA,IAAc,aAAc,EAAU,CAAE,GAAI,GAAS,CAIhH,SAAS,EAAe,CAAE,YAAW,GAAG,GAAgE,CACtG,OACE,EAAA,EAAA,KAACA,EAAAA,WAAoB,KAAA,CACnB,YAAU,mBACV,WAAA,EAAA,EAAA,IACE,wGACA,kDACA,2DACA,kEACA,oCACA,iCACA,wCACA,wCACA,EACD,CACD,GAAI,YAEJ,EAAA,EAAA,MAACA,EAAAA,WAAoB,UAAA,CAAU,YAAU,wBAAwB,UAAU,kEACzE,EAAA,EAAA,KAAC,MAAA,CAAI,UAAU,0CAAA,CAA4C,EAC3D,EAAA,EAAA,KAACC,EAAAA,WAAAA,CAAW,UAAU,+FAAA,CAAiG,CAAA,EACzF,EACP"}
@@ -1,2 +0,0 @@
1
- import{GripVerticalIcon as e}from"lucide-react";import{memo as t}from"react";import{cn as n}from"@customafk/react-toolkit/utils";import{jsx as r}from"react/jsx-runtime";import*as i from"react-resizable-panels";const a=t(({className:e,...t})=>r(i.PanelGroup,{"data-slot":`resizable-panel-group`,className:n(`flex h-full w-full data-[panel-group-direction=vertical]:flex-col`,e),...t}));a.displayName=`ResizablePanelGroup`;const o=t(({...e})=>r(i.Panel,{"data-slot":`resizable-panel`,...e}));o.displayName=`ResizablePanel`;const s=t(({withHandle:t,className:a,...o})=>r(i.PanelResizeHandle,{"data-slot":`resizable-handle`,className:n(`relative flex w-px items-center justify-center bg-border after:absolute after:inset-y-0 after:left-1/2 after:w-1 after:-translate-x-1/2 focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-1 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-x-0 data-[panel-group-direction=vertical]:after:-translate-y-1/2 [&[data-panel-group-direction=vertical]>div]:rotate-90`,a),...o,children:t&&r(`div`,{className:`z-10 flex h-4 w-3 items-center justify-center rounded-xs border bg-border`,children:r(e,{className:`size-2.5`})})}));s.displayName=`ResizableHandle`;export{o as n,a as r,s as t};
2
- //# sourceMappingURL=resizable-C-M-mu6b.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"resizable-C-M-mu6b.js","names":[],"sources":["../packages/components/ui/resizable.tsx"],"sourcesContent":["'use client';\n\nimport { memo } from 'react';\n\nimport { GripVerticalIcon } from 'lucide-react';\n\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport * as ResizablePrimitive from 'react-resizable-panels';\n\ntype TResizablePanelGroup = React.ComponentProps<typeof ResizablePrimitive.PanelGroup>;\n\ntype TResizablePanel = React.ComponentProps<typeof ResizablePrimitive.Panel>;\n\ntype TResizableHandle = React.ComponentProps<typeof ResizablePrimitive.PanelResizeHandle> & {\n withHandle?: boolean;\n};\n\n/**\n * Root container that manages a group of resizable panels; supports horizontal and vertical orientations.\n *\n * @example\n * ```tsx\n * import { ResizablePanelGroup, ResizablePanel, ResizableHandle } from '@customafk/lunas-ui/ui/resizable';\n *\n * <ResizablePanelGroup direction=\"horizontal\">\n * <ResizablePanel defaultSize={50}>Left</ResizablePanel>\n * <ResizableHandle withHandle />\n * <ResizablePanel defaultSize={50}>Right</ResizablePanel>\n * </ResizablePanelGroup>\n * ```\n */\nconst ResizablePanelGroup = memo<TResizablePanelGroup>(({ className, ...props }) => {\n return (\n <ResizablePrimitive.PanelGroup\n data-slot=\"resizable-panel-group\"\n className={cn('flex h-full w-full data-[panel-group-direction=vertical]:flex-col', className)}\n {...props}\n />\n );\n});\nResizablePanelGroup.displayName = 'ResizablePanelGroup';\n\n/** An individual resizable panel within a ResizablePanelGroup. */\nconst ResizablePanel = memo<TResizablePanel>(({ ...props }) => {\n return <ResizablePrimitive.Panel data-slot=\"resizable-panel\" {...props} />;\n});\nResizablePanel.displayName = 'ResizablePanel';\n\n/**\n * The drag handle placed between two ResizablePanels to resize them.\n *\n * @param withHandle - When true, renders a visible grip icon centered on the handle.\n */\nconst ResizableHandle = memo<TResizableHandle>(({ withHandle, className, ...props }) => {\n return (\n <ResizablePrimitive.PanelResizeHandle\n data-slot=\"resizable-handle\"\n className={cn(\n 'relative flex w-px items-center justify-center bg-border after:absolute after:inset-y-0 after:left-1/2 after:w-1 after:-translate-x-1/2 focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-1 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-x-0 data-[panel-group-direction=vertical]:after:-translate-y-1/2 [&[data-panel-group-direction=vertical]>div]:rotate-90',\n className\n )}\n {...props}\n >\n {withHandle && (\n <div className=\"z-10 flex h-4 w-3 items-center justify-center rounded-xs border bg-border\">\n <GripVerticalIcon className=\"size-2.5\" />\n </div>\n )}\n </ResizablePrimitive.PanelResizeHandle>\n );\n});\nResizableHandle.displayName = 'ResizableHandle';\n\nexport { ResizableHandle, ResizablePanel, ResizablePanelGroup };\n"],"mappings":"kNAgCA,MAAM,EAAsB,GAA4B,CAAE,YAAW,GAAG,KAEpE,EAAC,EAAmB,WAAA,CAClB,YAAU,wBACV,UAAW,EAAG,oEAAqE,EAAU,CAC7F,GAAI,GACJ,CAEJ,CACF,EAAoB,YAAc,sBAGlC,MAAM,EAAiB,GAAuB,CAAE,GAAG,KAC1C,EAAC,EAAmB,MAAA,CAAM,YAAU,kBAAkB,GAAI,GAAS,CAC1E,CACF,EAAe,YAAc,iBAO7B,MAAM,EAAkB,GAAwB,CAAE,aAAY,YAAW,GAAG,KAExE,EAAC,EAAmB,kBAAA,CAClB,YAAU,mBACV,UAAW,EACT,4oBACA,EACD,CACD,GAAI,WAEH,GACC,EAAC,MAAA,CAAI,UAAU,qFACb,EAAC,EAAA,CAAiB,UAAU,WAAA,CAAa,EACrC,EAE6B,CAEzC,CACF,EAAgB,YAAc"}
@@ -1,2 +0,0 @@
1
- const e=require(`./chunk-350yNsax.cjs`);let t=require(`lucide-react`),n=require(`react`),r=require(`@customafk/react-toolkit/utils`),i=require(`react/jsx-runtime`),a=require(`react-resizable-panels`);a=e.n(a);const o=(0,n.memo)(({className:e,...t})=>(0,i.jsx)(a.PanelGroup,{"data-slot":`resizable-panel-group`,className:(0,r.cn)(`flex h-full w-full data-[panel-group-direction=vertical]:flex-col`,e),...t}));o.displayName=`ResizablePanelGroup`;const s=(0,n.memo)(({...e})=>(0,i.jsx)(a.Panel,{"data-slot":`resizable-panel`,...e}));s.displayName=`ResizablePanel`;const c=(0,n.memo)(({withHandle:e,className:n,...o})=>(0,i.jsx)(a.PanelResizeHandle,{"data-slot":`resizable-handle`,className:(0,r.cn)(`relative flex w-px items-center justify-center bg-border after:absolute after:inset-y-0 after:left-1/2 after:w-1 after:-translate-x-1/2 focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-1 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-x-0 data-[panel-group-direction=vertical]:after:-translate-y-1/2 [&[data-panel-group-direction=vertical]>div]:rotate-90`,n),...o,children:e&&(0,i.jsx)(`div`,{className:`z-10 flex h-4 w-3 items-center justify-center rounded-xs border bg-border`,children:(0,i.jsx)(t.GripVerticalIcon,{className:`size-2.5`})})}));c.displayName=`ResizableHandle`,Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return c}});
2
- //# sourceMappingURL=resizable-sgpaHAb8.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"resizable-sgpaHAb8.cjs","names":["ResizablePrimitive","GripVerticalIcon"],"sources":["../packages/components/ui/resizable.tsx"],"sourcesContent":["'use client';\n\nimport { memo } from 'react';\n\nimport { GripVerticalIcon } from 'lucide-react';\n\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport * as ResizablePrimitive from 'react-resizable-panels';\n\ntype TResizablePanelGroup = React.ComponentProps<typeof ResizablePrimitive.PanelGroup>;\n\ntype TResizablePanel = React.ComponentProps<typeof ResizablePrimitive.Panel>;\n\ntype TResizableHandle = React.ComponentProps<typeof ResizablePrimitive.PanelResizeHandle> & {\n withHandle?: boolean;\n};\n\n/**\n * Root container that manages a group of resizable panels; supports horizontal and vertical orientations.\n *\n * @example\n * ```tsx\n * import { ResizablePanelGroup, ResizablePanel, ResizableHandle } from '@customafk/lunas-ui/ui/resizable';\n *\n * <ResizablePanelGroup direction=\"horizontal\">\n * <ResizablePanel defaultSize={50}>Left</ResizablePanel>\n * <ResizableHandle withHandle />\n * <ResizablePanel defaultSize={50}>Right</ResizablePanel>\n * </ResizablePanelGroup>\n * ```\n */\nconst ResizablePanelGroup = memo<TResizablePanelGroup>(({ className, ...props }) => {\n return (\n <ResizablePrimitive.PanelGroup\n data-slot=\"resizable-panel-group\"\n className={cn('flex h-full w-full data-[panel-group-direction=vertical]:flex-col', className)}\n {...props}\n />\n );\n});\nResizablePanelGroup.displayName = 'ResizablePanelGroup';\n\n/** An individual resizable panel within a ResizablePanelGroup. */\nconst ResizablePanel = memo<TResizablePanel>(({ ...props }) => {\n return <ResizablePrimitive.Panel data-slot=\"resizable-panel\" {...props} />;\n});\nResizablePanel.displayName = 'ResizablePanel';\n\n/**\n * The drag handle placed between two ResizablePanels to resize them.\n *\n * @param withHandle - When true, renders a visible grip icon centered on the handle.\n */\nconst ResizableHandle = memo<TResizableHandle>(({ withHandle, className, ...props }) => {\n return (\n <ResizablePrimitive.PanelResizeHandle\n data-slot=\"resizable-handle\"\n className={cn(\n 'relative flex w-px items-center justify-center bg-border after:absolute after:inset-y-0 after:left-1/2 after:w-1 after:-translate-x-1/2 focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-1 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-x-0 data-[panel-group-direction=vertical]:after:-translate-y-1/2 [&[data-panel-group-direction=vertical]>div]:rotate-90',\n className\n )}\n {...props}\n >\n {withHandle && (\n <div className=\"z-10 flex h-4 w-3 items-center justify-center rounded-xs border bg-border\">\n <GripVerticalIcon className=\"size-2.5\" />\n </div>\n )}\n </ResizablePrimitive.PanelResizeHandle>\n );\n});\nResizableHandle.displayName = 'ResizableHandle';\n\nexport { ResizableHandle, ResizablePanel, ResizablePanelGroup };\n"],"mappings":"iNAgCA,MAAM,GAAA,EAAA,EAAA,OAAkD,CAAE,YAAW,GAAG,MAEpE,EAAA,EAAA,KAACA,EAAmB,WAAA,CAClB,YAAU,wBACV,WAAA,EAAA,EAAA,IAAc,oEAAqE,EAAU,CAC7F,GAAI,GACJ,CAEJ,CACF,EAAoB,YAAc,sBAGlC,MAAM,GAAA,EAAA,EAAA,OAAwC,CAAE,GAAG,MAC1C,EAAA,EAAA,KAACA,EAAmB,MAAA,CAAM,YAAU,kBAAkB,GAAI,GAAS,CAC1E,CACF,EAAe,YAAc,iBAO7B,MAAM,GAAA,EAAA,EAAA,OAA0C,CAAE,aAAY,YAAW,GAAG,MAExE,EAAA,EAAA,KAACA,EAAmB,kBAAA,CAClB,YAAU,mBACV,WAAA,EAAA,EAAA,IACE,4oBACA,EACD,CACD,GAAI,WAEH,IACC,EAAA,EAAA,KAAC,MAAA,CAAI,UAAU,sFACb,EAAA,EAAA,KAACC,EAAAA,iBAAAA,CAAiB,UAAU,WAAA,CAAa,EACrC,EAE6B,CAEzC,CACF,EAAgB,YAAc"}
@@ -1,2 +0,0 @@
1
- const e=require(`./chunk-350yNsax.cjs`),t=require(`./dialog-BigPrWIj.cjs`),n=require(`./command-CsP8a1Un.cjs`);let r=require(`lucide-react`),i=require(`react/jsx-runtime`);const a=({value:e})=>(0,i.jsx)(n.o,{value:e,children:(0,i.jsxs)(`div`,{className:`size-full flex space-x-2 items-center`,children:[(0,i.jsx)(`div`,{className:`size-12 border border-border rounded-lg bg-card`}),(0,i.jsxs)(`div`,{className:`flex flex-col grow text-sm`,children:[(0,i.jsxs)(`p`,{className:`font-semibold`,children:[`Content Item for `,e]}),(0,i.jsx)(`p`,{className:`font-medium text-text-positive-weak`,children:`100.000VND`})]}),(0,i.jsx)(`button`,{className:`size-8 flex items-center justify-center grow-0`,children:(0,i.jsx)(r.ForwardIcon,{size:20,className:`text-text-positive-weak`})})]})}),o=()=>(0,i.jsxs)(n.t,{children:[(0,i.jsx)(n.a,{placeholder:`Type a command or search...`}),(0,i.jsxs)(n.s,{children:[(0,i.jsxs)(n.r,{className:`h-80 flex flex-col items-center justify-center space-y-2`,children:[(0,i.jsx)(r.Package2Icon,{strokeWidth:1,size:64,className:`text-text-positive-weak`}),(0,i.jsx)(`span`,{className:`ml-2`,children:`No results found.`})]}),(0,i.jsxs)(n.i,{heading:`Search Results`,children:[(0,i.jsx)(a,{value:`example-item-1`}),(0,i.jsx)(a,{value:`example-item-2`}),(0,i.jsx)(a,{value:`example-item-3`})]})]})]}),s=()=>(0,i.jsx)(t.t,{open:!0,children:(0,i.jsx)(t.r,{showCloseButton:!1,className:`sm:max-w-3xl`,children:(0,i.jsx)(o,{})})});Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return s}});
2
- //# sourceMappingURL=search-modal-B-pzGcfP.cjs.map
@@ -1,2 +0,0 @@
1
- import{r as e,t}from"./dialog-CmutQ3rp.js";import{a as n,i as r,o as i,r as a,s as o,t as s}from"./command-2gUejA6g.js";import{ForwardIcon as c,Package2Icon as l}from"lucide-react";import{jsx as u,jsxs as d}from"react/jsx-runtime";const f=({value:e})=>u(i,{value:e,children:d(`div`,{className:`size-full flex space-x-2 items-center`,children:[u(`div`,{className:`size-12 border border-border rounded-lg bg-card`}),d(`div`,{className:`flex flex-col grow text-sm`,children:[d(`p`,{className:`font-semibold`,children:[`Content Item for `,e]}),u(`p`,{className:`font-medium text-text-positive-weak`,children:`100.000VND`})]}),u(`button`,{className:`size-8 flex items-center justify-center grow-0`,children:u(c,{size:20,className:`text-text-positive-weak`})})]})}),p=()=>d(s,{children:[u(n,{placeholder:`Type a command or search...`}),d(o,{children:[d(a,{className:`h-80 flex flex-col items-center justify-center space-y-2`,children:[u(l,{strokeWidth:1,size:64,className:`text-text-positive-weak`}),u(`span`,{className:`ml-2`,children:`No results found.`})]}),d(r,{heading:`Search Results`,children:[u(f,{value:`example-item-1`}),u(f,{value:`example-item-2`}),u(f,{value:`example-item-3`})]})]})]}),m=()=>u(t,{open:!0,children:u(e,{showCloseButton:!1,className:`sm:max-w-3xl`,children:u(p,{})})});export{m as t};
2
- //# sourceMappingURL=search-modal-b2AE5WEW.js.map
@@ -1,2 +0,0 @@
1
- const e=require(`./chunk-350yNsax.cjs`);let t=require(`lucide-react`),n=require(`@customafk/react-toolkit/utils`),r=require(`react/jsx-runtime`),i=require(`radix-ui`);function a({...e}){return(0,r.jsx)(i.Select.Root,{"data-slot":`select`,...e})}function o({...e}){return(0,r.jsx)(i.Select.Group,{"data-slot":`select-group`,...e})}function s({...e}){return(0,r.jsx)(i.Select.Value,{"data-slot":`select-value`,...e})}function c({className:e,size:a=`default`,children:o,...s}){return(0,r.jsxs)(i.Select.Trigger,{"data-slot":`select-trigger`,"data-size":a,className:(0,n.cn)(`flex w-full items-center justify-between`,`outline-1 outline-border -outline-offset-1`,`gap-2 rounded bg-transparent px-3 py-2`,`rounded shadow-input transition-all`,`cursor-pointer whitespace-nowrap text-sm`,`focus-visible:text-text-positive-strong`,`focus-visible:outline-primary-strong`,`focus-visible:ring-4`,`focus-visible:ring-primary-weak`,`data-[state=open]:text-text-positive-muted`,`data-[state=open]:outline-primary-strong`,`data-[state=open]:ring-4`,`data-[state=open]:ring-primary-weak`,`disabled:cursor-not-allowed`,`disabled:opacity-50`,`aria-invalid:bg-danger-bg-subtle`,`aria-invalid:outline-danger`,`aria-invalid:ring-danger-weak`,`aria-invalid:focus:outline-danger-strong`,`aria-invalid:focus:ring-4`,`aria-invalid:placeholder:text-text-positive-weak`,`aria-invalid:data-[state=open]:outline-danger-strong`,`aria-invalid:data-[state=open]:ring-danger-weak`,`data-placeholder:text-text-positive-muted`,`*:data-[slot=select-value]:line-clamp-1`,`*:data-[slot=select-value]:flex`,`*:data-[slot=select-value]:items-center`,`*:data-[slot=select-value]:gap-2`,`aria-readonly:bg-muted-muted`,`aria-readonly:cursor-default`,`aria-readonly:focus:outline-none`,`aria-readonly:ring-0`,`aria-readonly:pointer-events-none`,`[&_svg]:shrink-0`,`[&_svg]:pointer-events-none`,`[&_svg:not([class*='size-'])]:size-4`,`[&_svg:not([class*='text-'])]:text-muted-foreground`,e),...s,children:[o,(0,r.jsx)(i.Select.Icon,{asChild:!0,children:(0,r.jsx)(t.ChevronDownIcon,{size:16,opacity:50})})]})}function l({className:e,children:t,position:a=`popper`,...o}){return(0,r.jsx)(i.Select.Portal,{children:(0,r.jsx)(i.Select.Content,{"data-slot":`select-content`,className:(0,n.cn)(`relative z-50 max-h-80 min-w-32 overflow-y-auto overflow-x-hidden rounded shadow-dropdown duration-300`,`bg-white`,`w-(--radix-select-trigger-width)`,`origin-(--radix-select-content-transform-origin)`,`max-h-[min(20rem,var(--radix-select-content-available-height))]`,`data-[state=open]:animate-in`,`data-[state=open]:fade-in`,`data-[state=closed]:animate-out`,`data-[state=closed]:fade-out`,`data-[side=bottom]:slide-in-from-top-8`,`data-[side=left]:slide-in-from-right-8`,`data-[side=right]:slide-in-from-left-8`,`data-[side=top]:slide-in-from-bottom-8`,a===`popper`&&`data-[side=bottom]:translate-y-1`,a===`popper`&&`data-[side=left]:-translate-x-1`,a===`popper`&&`data-[side=right]:translate-x-1`,a===`popper`&&`data-[side=top]:-translate-y-1`,e),position:a,...o,children:(0,r.jsx)(i.Select.Viewport,{className:(0,n.cn)(`p-1`,a===`popper`&&`w-full scroll-my-1`,a===`popper`&&`h-(--radix-select-trigger-height)`,a===`popper`&&`min-w-(--radix-select-trigger-width)`),children:t})})})}function u({className:e,...t}){return(0,r.jsx)(i.Select.Label,{"data-slot":`select-label`,className:(0,n.cn)(`px-2 py-1.5 text-text-positive-weak text-xs`,e),...t})}function d({className:e,children:a,...o}){return(0,r.jsxs)(i.Select.Item,{"data-slot":`select-item`,className:(0,n.cn)(`relative flex select-none items-center`,`gap-2 rounded py-2.5 pr-8 pl-2`,`w-full`,`cursor-pointer outline-none transition-colors`,`font-medium text-sm text-text-positive-weak`,`focus:shadow-xs`,`focus:bg-muted-muted`,`data-disabled:opacity-50`,`data-disabled:pointer-events-none`,`[&_svg]:pointer-events-none`,`[&_svg]:shrink-0`,`[&_svg:not([class*='size-'])]:size-4`,`[&_svg:not([class*='text-'])]:text-text-positive-weak`,`*:[span]:last:flex`,`*:[span]:last:items-center`,`*:[span]:last:gap-2`,e),...o,children:[(0,r.jsx)(i.Select.ItemText,{children:a}),(0,r.jsx)(`span`,{className:`absolute right-2 flex size-3.5 items-center justify-center`,children:(0,r.jsx)(i.Select.ItemIndicator,{children:(0,r.jsx)(t.CheckIcon,{size:16})})})]})}function f({className:e,...t}){return(0,r.jsx)(i.Select.Separator,{"data-slot":`select-separator`,className:(0,n.cn)(`-mx-1 pointer-events-none my-1 h-px bg-border-weak`,e),...t})}Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,`c`,{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return a}});
2
- //# sourceMappingURL=select-CWLQHh8x.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"select-CWLQHh8x.cjs","names":["SelectPrimitive","ChevronDownIcon","CheckIcon"],"sources":["../packages/components/ui/select.tsx"],"sourcesContent":["'use client';\n\nimport { CheckIcon, ChevronDownIcon } from 'lucide-react';\n\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { Select as SelectPrimitive } from 'radix-ui';\n\n/**\n * Accessible dropdown select built on Radix UI's Select primitives, composed from `Select`, `SelectTrigger`, `SelectContent`, and `SelectItem`.\n *\n * @example\n * ```tsx\n * import {\n * Select, SelectTrigger, SelectValue,\n * SelectContent, SelectItem,\n * } from '@customafk/lunas-ui/ui/select';\n *\n * <Select>\n * <SelectTrigger>\n * <SelectValue placeholder=\"Pick a fruit\" />\n * </SelectTrigger>\n * <SelectContent>\n * <SelectItem value=\"apple\">Apple</SelectItem>\n * <SelectItem value=\"banana\">Banana</SelectItem>\n * </SelectContent>\n * </Select>\n * ```\n */\nfunction Select({ ...props }: React.ComponentProps<typeof SelectPrimitive.Root>) {\n return <SelectPrimitive.Root data-slot=\"select\" {...props} />;\n}\n\n/** Groups related `SelectItem` elements with an optional `SelectLabel` header. */\nfunction SelectGroup({ ...props }: React.ComponentProps<typeof SelectPrimitive.Group>) {\n return <SelectPrimitive.Group data-slot=\"select-group\" {...props} />;\n}\n\n/** Renders the currently selected value (or a placeholder) inside `SelectTrigger`. */\nfunction SelectValue({ ...props }: React.ComponentProps<typeof SelectPrimitive.Value>) {\n return <SelectPrimitive.Value data-slot=\"select-value\" {...props} />;\n}\n\n/**\n * The button that opens the select dropdown; renders the current value and a chevron icon.\n *\n * @param size - `'default'` (standard padding) or `'sm'` (compact).\n */\nfunction SelectTrigger({\n className,\n size = 'default',\n children,\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.Trigger> & {\n /** Controls the trigger's padding — `'default'` or `'sm'`. */\n size?: 'sm' | 'default';\n}) {\n return (\n <SelectPrimitive.Trigger\n data-slot=\"select-trigger\"\n data-size={size}\n className={cn(\n 'flex w-full items-center justify-between',\n 'outline-1 outline-border -outline-offset-1',\n 'gap-2 rounded bg-transparent px-3 py-2',\n 'rounded shadow-input transition-all',\n 'cursor-pointer whitespace-nowrap text-sm',\n\n // Text styles\n 'focus-visible:text-text-positive-strong',\n 'focus-visible:outline-primary-strong',\n 'focus-visible:ring-4',\n 'focus-visible:ring-primary-weak',\n\n // State styles\n 'data-[state=open]:text-text-positive-muted',\n 'data-[state=open]:outline-primary-strong',\n 'data-[state=open]:ring-4',\n 'data-[state=open]:ring-primary-weak',\n 'disabled:cursor-not-allowed',\n 'disabled:opacity-50',\n\n // Invalid state\n 'aria-invalid:bg-danger-bg-subtle',\n 'aria-invalid:outline-danger',\n 'aria-invalid:ring-danger-weak',\n 'aria-invalid:focus:outline-danger-strong',\n 'aria-invalid:focus:ring-4',\n 'aria-invalid:placeholder:text-text-positive-weak',\n 'aria-invalid:data-[state=open]:outline-danger-strong',\n 'aria-invalid:data-[state=open]:ring-danger-weak',\n\n // Placeholder styles\n 'data-placeholder:text-text-positive-muted',\n '*:data-[slot=select-value]:line-clamp-1',\n '*:data-[slot=select-value]:flex',\n '*:data-[slot=select-value]:items-center',\n '*:data-[slot=select-value]:gap-2',\n\n // Readonly state\n 'aria-readonly:bg-muted-muted',\n 'aria-readonly:cursor-default',\n 'aria-readonly:focus:outline-none',\n 'aria-readonly:ring-0',\n 'aria-readonly:pointer-events-none',\n\n // Icon styles\n '[&_svg]:shrink-0',\n '[&_svg]:pointer-events-none',\n \"[&_svg:not([class*='size-'])]:size-4\",\n \"[&_svg:not([class*='text-'])]:text-muted-foreground\",\n className\n )}\n {...props}\n >\n {children}\n <SelectPrimitive.Icon asChild>\n <ChevronDownIcon size={16} opacity={50} />\n </SelectPrimitive.Icon>\n </SelectPrimitive.Trigger>\n );\n}\n\n/** Floating dropdown panel that renders inside a portal with enter/exit animations. */\nfunction SelectContent({ className, children, position = 'popper', ...props }: React.ComponentProps<typeof SelectPrimitive.Content>) {\n return (\n <SelectPrimitive.Portal>\n <SelectPrimitive.Content\n data-slot=\"select-content\"\n className={cn(\n 'relative z-50 max-h-80 min-w-32 overflow-y-auto overflow-x-hidden rounded shadow-dropdown duration-300',\n 'bg-white',\n 'w-(--radix-select-trigger-width)',\n 'origin-(--radix-select-content-transform-origin)',\n 'max-h-[min(20rem,var(--radix-select-content-available-height))]',\n\n 'data-[state=open]:animate-in',\n 'data-[state=open]:fade-in',\n\n 'data-[state=closed]:animate-out',\n 'data-[state=closed]:fade-out',\n\n 'data-[side=bottom]:slide-in-from-top-8',\n 'data-[side=left]:slide-in-from-right-8',\n 'data-[side=right]:slide-in-from-left-8',\n 'data-[side=top]:slide-in-from-bottom-8',\n\n position === 'popper' && 'data-[side=bottom]:translate-y-1',\n position === 'popper' && 'data-[side=left]:-translate-x-1',\n position === 'popper' && 'data-[side=right]:translate-x-1',\n position === 'popper' && 'data-[side=top]:-translate-y-1',\n className\n )}\n position={position}\n {...props}\n >\n <SelectPrimitive.Viewport\n className={cn(\n 'p-1',\n position === 'popper' && 'w-full scroll-my-1',\n position === 'popper' && 'h-(--radix-select-trigger-height)',\n position === 'popper' && 'min-w-(--radix-select-trigger-width)'\n )}\n >\n {children}\n </SelectPrimitive.Viewport>\n </SelectPrimitive.Content>\n </SelectPrimitive.Portal>\n );\n}\n\n/** Non-interactive label displayed above a `SelectGroup` to describe its options. */\nfunction SelectLabel({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.Label>) {\n return <SelectPrimitive.Label data-slot=\"select-label\" className={cn('px-2 py-1.5 text-text-positive-weak text-xs', className)} {...props} />;\n}\n\n/** A selectable option within `SelectContent`; shows a check icon when chosen. */\nfunction SelectItem({ className, children, ...props }: React.ComponentProps<typeof SelectPrimitive.Item>) {\n return (\n <SelectPrimitive.Item\n data-slot=\"select-item\"\n className={cn(\n 'relative flex select-none items-center',\n 'gap-2 rounded py-2.5 pr-8 pl-2',\n 'w-full',\n 'cursor-pointer outline-none transition-colors',\n 'font-medium text-sm text-text-positive-weak',\n\n 'focus:shadow-xs',\n 'focus:bg-muted-muted',\n\n 'data-disabled:opacity-50',\n 'data-disabled:pointer-events-none',\n\n '[&_svg]:pointer-events-none',\n '[&_svg]:shrink-0',\n \"[&_svg:not([class*='size-'])]:size-4\",\n \"[&_svg:not([class*='text-'])]:text-text-positive-weak\",\n\n '*:[span]:last:flex',\n '*:[span]:last:items-center',\n '*:[span]:last:gap-2',\n className\n )}\n {...props}\n >\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\n <span className=\"absolute right-2 flex size-3.5 items-center justify-center\">\n <SelectPrimitive.ItemIndicator>\n <CheckIcon size={16} />\n </SelectPrimitive.ItemIndicator>\n </span>\n </SelectPrimitive.Item>\n );\n}\n\n/** Thin horizontal rule used to visually separate groups of `SelectItem` elements. */\nfunction SelectSeparator({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.Separator>) {\n return <SelectPrimitive.Separator data-slot=\"select-separator\" className={cn('-mx-1 pointer-events-none my-1 h-px bg-border-weak', className)} {...props} />;\n}\n\nexport { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectSeparator, SelectTrigger, SelectValue };\n"],"mappings":"uKA6BA,SAAS,EAAO,CAAE,GAAG,GAA4D,CAC/E,OAAO,EAAA,EAAA,KAACA,EAAAA,OAAgB,KAAA,CAAK,YAAU,SAAS,GAAI,GAAS,CAI/D,SAAS,EAAY,CAAE,GAAG,GAA6D,CACrF,OAAO,EAAA,EAAA,KAACA,EAAAA,OAAgB,MAAA,CAAM,YAAU,eAAe,GAAI,GAAS,CAItE,SAAS,EAAY,CAAE,GAAG,GAA6D,CACrF,OAAO,EAAA,EAAA,KAACA,EAAAA,OAAgB,MAAA,CAAM,YAAU,eAAe,GAAI,GAAS,CAQtE,SAAS,EAAc,CACrB,YACA,OAAO,UACP,WACA,GAAG,GAIF,CACD,OACE,EAAA,EAAA,MAACA,EAAAA,OAAgB,QAAA,CACf,YAAU,iBACV,YAAW,EACX,WAAA,EAAA,EAAA,IACE,2CACA,6CACA,yCACA,sCACA,2CAGA,0CACA,uCACA,uBACA,kCAGA,6CACA,2CACA,2BACA,sCACA,8BACA,sBAGA,mCACA,8BACA,gCACA,2CACA,4BACA,mDACA,uDACA,kDAGA,4CACA,0CACA,kCACA,0CACA,mCAGA,+BACA,+BACA,mCACA,uBACA,oCAGA,mBACA,8BACA,uCACA,sDACA,EACD,CACD,GAAI,YAEH,GACD,EAAA,EAAA,KAACA,EAAAA,OAAgB,KAAA,CAAK,QAAA,aACpB,EAAA,EAAA,KAACC,EAAAA,gBAAAA,CAAgB,KAAM,GAAI,QAAS,IAAM,EACrB,CAAA,EACC,CAK9B,SAAS,EAAc,CAAE,YAAW,WAAU,WAAW,SAAU,GAAG,GAA+D,CACnI,OACE,EAAA,EAAA,KAACD,EAAAA,OAAgB,OAAA,CAAA,UACf,EAAA,EAAA,KAACA,EAAAA,OAAgB,QAAA,CACf,YAAU,iBACV,WAAA,EAAA,EAAA,IACE,yGACA,WACA,mCACA,mDACA,kEAEA,+BACA,4BAEA,kCACA,+BAEA,yCACA,yCACA,yCACA,yCAEA,IAAa,UAAY,mCACzB,IAAa,UAAY,kCACzB,IAAa,UAAY,kCACzB,IAAa,UAAY,iCACzB,EACD,CACS,WACV,GAAI,YAEJ,EAAA,EAAA,KAACA,EAAAA,OAAgB,SAAA,CACf,WAAA,EAAA,EAAA,IACE,MACA,IAAa,UAAY,qBACzB,IAAa,UAAY,oCACzB,IAAa,UAAY,uCAC1B,CAEA,YACwB,EACH,CAAA,CACH,CAK7B,SAAS,EAAY,CAAE,YAAW,GAAG,GAA6D,CAChG,OAAO,EAAA,EAAA,KAACA,EAAAA,OAAgB,MAAA,CAAM,YAAU,eAAe,WAAA,EAAA,EAAA,IAAc,8CAA+C,EAAU,CAAE,GAAI,GAAS,CAI/I,SAAS,EAAW,CAAE,YAAW,WAAU,GAAG,GAA4D,CACxG,OACE,EAAA,EAAA,MAACA,EAAAA,OAAgB,KAAA,CACf,YAAU,cACV,WAAA,EAAA,EAAA,IACE,yCACA,iCACA,SACA,gDACA,8CAEA,kBACA,uBAEA,2BACA,oCAEA,8BACA,mBACA,uCACA,wDAEA,qBACA,6BACA,sBACA,EACD,CACD,GAAI,aAEJ,EAAA,EAAA,KAACA,EAAAA,OAAgB,SAAA,CAAU,WAAA,CAAoC,EAC/D,EAAA,EAAA,KAAC,OAAA,CAAK,UAAU,uEACd,EAAA,EAAA,KAACA,EAAAA,OAAgB,cAAA,CAAA,UACf,EAAA,EAAA,KAACE,EAAAA,UAAAA,CAAU,KAAM,GAAA,CAAM,CAAA,CACO,EAC3B,CAAA,EACc,CAK3B,SAAS,EAAgB,CAAE,YAAW,GAAG,GAAiE,CACxG,OAAO,EAAA,EAAA,KAACF,EAAAA,OAAgB,UAAA,CAAU,YAAU,mBAAmB,WAAA,EAAA,EAAA,IAAc,qDAAsD,EAAU,CAAE,GAAI,GAAS"}
@@ -1,2 +0,0 @@
1
- import{CheckIcon as e,ChevronDownIcon as t}from"lucide-react";import{cn as n}from"@customafk/react-toolkit/utils";import{jsx as r,jsxs as i}from"react/jsx-runtime";import{Select as a}from"radix-ui";function o({...e}){return r(a.Root,{"data-slot":`select`,...e})}function s({...e}){return r(a.Group,{"data-slot":`select-group`,...e})}function c({...e}){return r(a.Value,{"data-slot":`select-value`,...e})}function l({className:e,size:o=`default`,children:s,...c}){return i(a.Trigger,{"data-slot":`select-trigger`,"data-size":o,className:n(`flex w-full items-center justify-between`,`outline-1 outline-border -outline-offset-1`,`gap-2 rounded bg-transparent px-3 py-2`,`rounded shadow-input transition-all`,`cursor-pointer whitespace-nowrap text-sm`,`focus-visible:text-text-positive-strong`,`focus-visible:outline-primary-strong`,`focus-visible:ring-4`,`focus-visible:ring-primary-weak`,`data-[state=open]:text-text-positive-muted`,`data-[state=open]:outline-primary-strong`,`data-[state=open]:ring-4`,`data-[state=open]:ring-primary-weak`,`disabled:cursor-not-allowed`,`disabled:opacity-50`,`aria-invalid:bg-danger-bg-subtle`,`aria-invalid:outline-danger`,`aria-invalid:ring-danger-weak`,`aria-invalid:focus:outline-danger-strong`,`aria-invalid:focus:ring-4`,`aria-invalid:placeholder:text-text-positive-weak`,`aria-invalid:data-[state=open]:outline-danger-strong`,`aria-invalid:data-[state=open]:ring-danger-weak`,`data-placeholder:text-text-positive-muted`,`*:data-[slot=select-value]:line-clamp-1`,`*:data-[slot=select-value]:flex`,`*:data-[slot=select-value]:items-center`,`*:data-[slot=select-value]:gap-2`,`aria-readonly:bg-muted-muted`,`aria-readonly:cursor-default`,`aria-readonly:focus:outline-none`,`aria-readonly:ring-0`,`aria-readonly:pointer-events-none`,`[&_svg]:shrink-0`,`[&_svg]:pointer-events-none`,`[&_svg:not([class*='size-'])]:size-4`,`[&_svg:not([class*='text-'])]:text-muted-foreground`,e),...c,children:[s,r(a.Icon,{asChild:!0,children:r(t,{size:16,opacity:50})})]})}function u({className:e,children:t,position:i=`popper`,...o}){return r(a.Portal,{children:r(a.Content,{"data-slot":`select-content`,className:n(`relative z-50 max-h-80 min-w-32 overflow-y-auto overflow-x-hidden rounded shadow-dropdown duration-300`,`bg-white`,`w-(--radix-select-trigger-width)`,`origin-(--radix-select-content-transform-origin)`,`max-h-[min(20rem,var(--radix-select-content-available-height))]`,`data-[state=open]:animate-in`,`data-[state=open]:fade-in`,`data-[state=closed]:animate-out`,`data-[state=closed]:fade-out`,`data-[side=bottom]:slide-in-from-top-8`,`data-[side=left]:slide-in-from-right-8`,`data-[side=right]:slide-in-from-left-8`,`data-[side=top]:slide-in-from-bottom-8`,i===`popper`&&`data-[side=bottom]:translate-y-1`,i===`popper`&&`data-[side=left]:-translate-x-1`,i===`popper`&&`data-[side=right]:translate-x-1`,i===`popper`&&`data-[side=top]:-translate-y-1`,e),position:i,...o,children:r(a.Viewport,{className:n(`p-1`,i===`popper`&&`w-full scroll-my-1`,i===`popper`&&`h-(--radix-select-trigger-height)`,i===`popper`&&`min-w-(--radix-select-trigger-width)`),children:t})})})}function d({className:e,...t}){return r(a.Label,{"data-slot":`select-label`,className:n(`px-2 py-1.5 text-text-positive-weak text-xs`,e),...t})}function f({className:t,children:o,...s}){return i(a.Item,{"data-slot":`select-item`,className:n(`relative flex select-none items-center`,`gap-2 rounded py-2.5 pr-8 pl-2`,`w-full`,`cursor-pointer outline-none transition-colors`,`font-medium text-sm text-text-positive-weak`,`focus:shadow-xs`,`focus:bg-muted-muted`,`data-disabled:opacity-50`,`data-disabled:pointer-events-none`,`[&_svg]:pointer-events-none`,`[&_svg]:shrink-0`,`[&_svg:not([class*='size-'])]:size-4`,`[&_svg:not([class*='text-'])]:text-text-positive-weak`,`*:[span]:last:flex`,`*:[span]:last:items-center`,`*:[span]:last:gap-2`,t),...s,children:[r(a.ItemText,{children:o}),r(`span`,{className:`absolute right-2 flex size-3.5 items-center justify-center`,children:r(a.ItemIndicator,{children:r(e,{size:16})})})]})}function p({className:e,...t}){return r(a.Separator,{"data-slot":`select-separator`,className:n(`-mx-1 pointer-events-none my-1 h-px bg-border-weak`,e),...t})}export{d as a,c,f as i,u as n,p as o,s as r,l as s,o as t};
2
- //# sourceMappingURL=select-CryLzZA0.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"select-CryLzZA0.js","names":["Select","SelectPrimitive"],"sources":["../packages/components/ui/select.tsx"],"sourcesContent":["'use client';\n\nimport { CheckIcon, ChevronDownIcon } from 'lucide-react';\n\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { Select as SelectPrimitive } from 'radix-ui';\n\n/**\n * Accessible dropdown select built on Radix UI's Select primitives, composed from `Select`, `SelectTrigger`, `SelectContent`, and `SelectItem`.\n *\n * @example\n * ```tsx\n * import {\n * Select, SelectTrigger, SelectValue,\n * SelectContent, SelectItem,\n * } from '@customafk/lunas-ui/ui/select';\n *\n * <Select>\n * <SelectTrigger>\n * <SelectValue placeholder=\"Pick a fruit\" />\n * </SelectTrigger>\n * <SelectContent>\n * <SelectItem value=\"apple\">Apple</SelectItem>\n * <SelectItem value=\"banana\">Banana</SelectItem>\n * </SelectContent>\n * </Select>\n * ```\n */\nfunction Select({ ...props }: React.ComponentProps<typeof SelectPrimitive.Root>) {\n return <SelectPrimitive.Root data-slot=\"select\" {...props} />;\n}\n\n/** Groups related `SelectItem` elements with an optional `SelectLabel` header. */\nfunction SelectGroup({ ...props }: React.ComponentProps<typeof SelectPrimitive.Group>) {\n return <SelectPrimitive.Group data-slot=\"select-group\" {...props} />;\n}\n\n/** Renders the currently selected value (or a placeholder) inside `SelectTrigger`. */\nfunction SelectValue({ ...props }: React.ComponentProps<typeof SelectPrimitive.Value>) {\n return <SelectPrimitive.Value data-slot=\"select-value\" {...props} />;\n}\n\n/**\n * The button that opens the select dropdown; renders the current value and a chevron icon.\n *\n * @param size - `'default'` (standard padding) or `'sm'` (compact).\n */\nfunction SelectTrigger({\n className,\n size = 'default',\n children,\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.Trigger> & {\n /** Controls the trigger's padding — `'default'` or `'sm'`. */\n size?: 'sm' | 'default';\n}) {\n return (\n <SelectPrimitive.Trigger\n data-slot=\"select-trigger\"\n data-size={size}\n className={cn(\n 'flex w-full items-center justify-between',\n 'outline-1 outline-border -outline-offset-1',\n 'gap-2 rounded bg-transparent px-3 py-2',\n 'rounded shadow-input transition-all',\n 'cursor-pointer whitespace-nowrap text-sm',\n\n // Text styles\n 'focus-visible:text-text-positive-strong',\n 'focus-visible:outline-primary-strong',\n 'focus-visible:ring-4',\n 'focus-visible:ring-primary-weak',\n\n // State styles\n 'data-[state=open]:text-text-positive-muted',\n 'data-[state=open]:outline-primary-strong',\n 'data-[state=open]:ring-4',\n 'data-[state=open]:ring-primary-weak',\n 'disabled:cursor-not-allowed',\n 'disabled:opacity-50',\n\n // Invalid state\n 'aria-invalid:bg-danger-bg-subtle',\n 'aria-invalid:outline-danger',\n 'aria-invalid:ring-danger-weak',\n 'aria-invalid:focus:outline-danger-strong',\n 'aria-invalid:focus:ring-4',\n 'aria-invalid:placeholder:text-text-positive-weak',\n 'aria-invalid:data-[state=open]:outline-danger-strong',\n 'aria-invalid:data-[state=open]:ring-danger-weak',\n\n // Placeholder styles\n 'data-placeholder:text-text-positive-muted',\n '*:data-[slot=select-value]:line-clamp-1',\n '*:data-[slot=select-value]:flex',\n '*:data-[slot=select-value]:items-center',\n '*:data-[slot=select-value]:gap-2',\n\n // Readonly state\n 'aria-readonly:bg-muted-muted',\n 'aria-readonly:cursor-default',\n 'aria-readonly:focus:outline-none',\n 'aria-readonly:ring-0',\n 'aria-readonly:pointer-events-none',\n\n // Icon styles\n '[&_svg]:shrink-0',\n '[&_svg]:pointer-events-none',\n \"[&_svg:not([class*='size-'])]:size-4\",\n \"[&_svg:not([class*='text-'])]:text-muted-foreground\",\n className\n )}\n {...props}\n >\n {children}\n <SelectPrimitive.Icon asChild>\n <ChevronDownIcon size={16} opacity={50} />\n </SelectPrimitive.Icon>\n </SelectPrimitive.Trigger>\n );\n}\n\n/** Floating dropdown panel that renders inside a portal with enter/exit animations. */\nfunction SelectContent({ className, children, position = 'popper', ...props }: React.ComponentProps<typeof SelectPrimitive.Content>) {\n return (\n <SelectPrimitive.Portal>\n <SelectPrimitive.Content\n data-slot=\"select-content\"\n className={cn(\n 'relative z-50 max-h-80 min-w-32 overflow-y-auto overflow-x-hidden rounded shadow-dropdown duration-300',\n 'bg-white',\n 'w-(--radix-select-trigger-width)',\n 'origin-(--radix-select-content-transform-origin)',\n 'max-h-[min(20rem,var(--radix-select-content-available-height))]',\n\n 'data-[state=open]:animate-in',\n 'data-[state=open]:fade-in',\n\n 'data-[state=closed]:animate-out',\n 'data-[state=closed]:fade-out',\n\n 'data-[side=bottom]:slide-in-from-top-8',\n 'data-[side=left]:slide-in-from-right-8',\n 'data-[side=right]:slide-in-from-left-8',\n 'data-[side=top]:slide-in-from-bottom-8',\n\n position === 'popper' && 'data-[side=bottom]:translate-y-1',\n position === 'popper' && 'data-[side=left]:-translate-x-1',\n position === 'popper' && 'data-[side=right]:translate-x-1',\n position === 'popper' && 'data-[side=top]:-translate-y-1',\n className\n )}\n position={position}\n {...props}\n >\n <SelectPrimitive.Viewport\n className={cn(\n 'p-1',\n position === 'popper' && 'w-full scroll-my-1',\n position === 'popper' && 'h-(--radix-select-trigger-height)',\n position === 'popper' && 'min-w-(--radix-select-trigger-width)'\n )}\n >\n {children}\n </SelectPrimitive.Viewport>\n </SelectPrimitive.Content>\n </SelectPrimitive.Portal>\n );\n}\n\n/** Non-interactive label displayed above a `SelectGroup` to describe its options. */\nfunction SelectLabel({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.Label>) {\n return <SelectPrimitive.Label data-slot=\"select-label\" className={cn('px-2 py-1.5 text-text-positive-weak text-xs', className)} {...props} />;\n}\n\n/** A selectable option within `SelectContent`; shows a check icon when chosen. */\nfunction SelectItem({ className, children, ...props }: React.ComponentProps<typeof SelectPrimitive.Item>) {\n return (\n <SelectPrimitive.Item\n data-slot=\"select-item\"\n className={cn(\n 'relative flex select-none items-center',\n 'gap-2 rounded py-2.5 pr-8 pl-2',\n 'w-full',\n 'cursor-pointer outline-none transition-colors',\n 'font-medium text-sm text-text-positive-weak',\n\n 'focus:shadow-xs',\n 'focus:bg-muted-muted',\n\n 'data-disabled:opacity-50',\n 'data-disabled:pointer-events-none',\n\n '[&_svg]:pointer-events-none',\n '[&_svg]:shrink-0',\n \"[&_svg:not([class*='size-'])]:size-4\",\n \"[&_svg:not([class*='text-'])]:text-text-positive-weak\",\n\n '*:[span]:last:flex',\n '*:[span]:last:items-center',\n '*:[span]:last:gap-2',\n className\n )}\n {...props}\n >\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\n <span className=\"absolute right-2 flex size-3.5 items-center justify-center\">\n <SelectPrimitive.ItemIndicator>\n <CheckIcon size={16} />\n </SelectPrimitive.ItemIndicator>\n </span>\n </SelectPrimitive.Item>\n );\n}\n\n/** Thin horizontal rule used to visually separate groups of `SelectItem` elements. */\nfunction SelectSeparator({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.Separator>) {\n return <SelectPrimitive.Separator data-slot=\"select-separator\" className={cn('-mx-1 pointer-events-none my-1 h-px bg-border-weak', className)} {...props} />;\n}\n\nexport { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectSeparator, SelectTrigger, SelectValue };\n"],"mappings":"sMA6BA,SAASA,EAAO,CAAE,GAAG,GAA4D,CAC/E,OAAO,EAACC,EAAgB,KAAA,CAAK,YAAU,SAAS,GAAI,GAAS,CAI/D,SAAS,EAAY,CAAE,GAAG,GAA6D,CACrF,OAAO,EAACA,EAAgB,MAAA,CAAM,YAAU,eAAe,GAAI,GAAS,CAItE,SAAS,EAAY,CAAE,GAAG,GAA6D,CACrF,OAAO,EAACA,EAAgB,MAAA,CAAM,YAAU,eAAe,GAAI,GAAS,CAQtE,SAAS,EAAc,CACrB,YACA,OAAO,UACP,WACA,GAAG,GAIF,CACD,OACE,EAACA,EAAgB,QAAA,CACf,YAAU,iBACV,YAAW,EACX,UAAW,EACT,2CACA,6CACA,yCACA,sCACA,2CAGA,0CACA,uCACA,uBACA,kCAGA,6CACA,2CACA,2BACA,sCACA,8BACA,sBAGA,mCACA,8BACA,gCACA,2CACA,4BACA,mDACA,uDACA,kDAGA,4CACA,0CACA,kCACA,0CACA,mCAGA,+BACA,+BACA,mCACA,uBACA,oCAGA,mBACA,8BACA,uCACA,sDACA,EACD,CACD,GAAI,YAEH,EACD,EAACA,EAAgB,KAAA,CAAK,QAAA,YACpB,EAAC,EAAA,CAAgB,KAAM,GAAI,QAAS,IAAM,EACrB,CAAA,EACC,CAK9B,SAAS,EAAc,CAAE,YAAW,WAAU,WAAW,SAAU,GAAG,GAA+D,CACnI,OACE,EAACA,EAAgB,OAAA,CAAA,SACf,EAACA,EAAgB,QAAA,CACf,YAAU,iBACV,UAAW,EACT,yGACA,WACA,mCACA,mDACA,kEAEA,+BACA,4BAEA,kCACA,+BAEA,yCACA,yCACA,yCACA,yCAEA,IAAa,UAAY,mCACzB,IAAa,UAAY,kCACzB,IAAa,UAAY,kCACzB,IAAa,UAAY,iCACzB,EACD,CACS,WACV,GAAI,WAEJ,EAACA,EAAgB,SAAA,CACf,UAAW,EACT,MACA,IAAa,UAAY,qBACzB,IAAa,UAAY,oCACzB,IAAa,UAAY,uCAC1B,CAEA,YACwB,EACH,CAAA,CACH,CAK7B,SAAS,EAAY,CAAE,YAAW,GAAG,GAA6D,CAChG,OAAO,EAACA,EAAgB,MAAA,CAAM,YAAU,eAAe,UAAW,EAAG,8CAA+C,EAAU,CAAE,GAAI,GAAS,CAI/I,SAAS,EAAW,CAAE,YAAW,WAAU,GAAG,GAA4D,CACxG,OACE,EAACA,EAAgB,KAAA,CACf,YAAU,cACV,UAAW,EACT,yCACA,iCACA,SACA,gDACA,8CAEA,kBACA,uBAEA,2BACA,oCAEA,8BACA,mBACA,uCACA,wDAEA,qBACA,6BACA,sBACA,EACD,CACD,GAAI,YAEJ,EAACA,EAAgB,SAAA,CAAU,WAAA,CAAoC,CAC/D,EAAC,OAAA,CAAK,UAAU,sEACd,EAACA,EAAgB,cAAA,CAAA,SACf,EAAC,EAAA,CAAU,KAAM,GAAA,CAAM,CAAA,CACO,EAC3B,CAAA,EACc,CAK3B,SAAS,EAAgB,CAAE,YAAW,GAAG,GAAiE,CACxG,OAAO,EAACA,EAAgB,UAAA,CAAU,YAAU,mBAAmB,UAAW,EAAG,qDAAsD,EAAU,CAAE,GAAI,GAAS"}
@@ -1,2 +0,0 @@
1
- import{cn as e}from"@customafk/react-toolkit/utils";import{jsx as t}from"react/jsx-runtime";import{Separator as n}from"radix-ui";function r({className:r,orientation:i=`horizontal`,decorative:a=!0,...o}){return t(n.Root,{"data-slot":`separator`,decorative:a,orientation:i,className:e(`bg-border-weak shrink-0`,`data-[orientation=horizontal]:h-px`,`data-[orientation=horizontal]:w-full`,`data-[orientation=vertical]:h-full`,`data-[orientation=vertical]:w-px`,r),...o})}export{r as t};
2
- //# sourceMappingURL=separator-BM8hA4DP.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"separator-BM8hA4DP.js","names":["Separator","SeparatorPrimitive"],"sources":["../packages/components/ui/separator.tsx"],"sourcesContent":["'use client';\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { Separator as SeparatorPrimitive } from 'radix-ui';\n\n/**\n * Thin visual divider built on Radix UI's Separator primitive, supporting horizontal and vertical orientations.\n *\n * @example\n * ```tsx\n * import { Separator } from '@customafk/lunas-ui/ui/separator';\n *\n * <div className=\"space-y-4\">\n * <p>Section one</p>\n * <Separator />\n * <p>Section two</p>\n * </div>\n *\n * <div className=\"flex h-8 items-center gap-4\">\n * <span>Left</span>\n * <Separator orientation=\"vertical\" />\n * <span>Right</span>\n * </div>\n * ```\n */\nfunction Separator({ className, orientation = 'horizontal', decorative = true, ...props }: React.ComponentProps<typeof SeparatorPrimitive.Root>) {\n return (\n <SeparatorPrimitive.Root\n data-slot=\"separator\"\n decorative={decorative}\n orientation={orientation}\n className={cn(\n 'bg-border-weak shrink-0',\n 'data-[orientation=horizontal]:h-px',\n 'data-[orientation=horizontal]:w-full',\n 'data-[orientation=vertical]:h-full',\n 'data-[orientation=vertical]:w-px',\n className\n )}\n {...props}\n />\n );\n}\n\nexport { Separator };\n"],"mappings":"iIAyBA,SAASA,EAAU,CAAE,YAAW,cAAc,aAAc,aAAa,GAAM,GAAG,GAA+D,CAC/I,OACE,EAACC,EAAmB,KAAA,CAClB,YAAU,YACE,aACC,cACb,UAAW,EACT,0BACA,qCACA,uCACA,qCACA,mCACA,EACD,CACD,GAAI,GACJ"}
@@ -1,2 +0,0 @@
1
- const e=require(`./chunk-350yNsax.cjs`);let t=require(`@customafk/react-toolkit/utils`),n=require(`react/jsx-runtime`),r=require(`radix-ui`);function i({className:e,orientation:i=`horizontal`,decorative:a=!0,...o}){return(0,n.jsx)(r.Separator.Root,{"data-slot":`separator`,decorative:a,orientation:i,className:(0,t.cn)(`bg-border-weak shrink-0`,`data-[orientation=horizontal]:h-px`,`data-[orientation=horizontal]:w-full`,`data-[orientation=vertical]:h-full`,`data-[orientation=vertical]:w-px`,e),...o})}Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return i}});
2
- //# sourceMappingURL=separator-KuymG9g0.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"separator-KuymG9g0.cjs","names":["SeparatorPrimitive"],"sources":["../packages/components/ui/separator.tsx"],"sourcesContent":["'use client';\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { Separator as SeparatorPrimitive } from 'radix-ui';\n\n/**\n * Thin visual divider built on Radix UI's Separator primitive, supporting horizontal and vertical orientations.\n *\n * @example\n * ```tsx\n * import { Separator } from '@customafk/lunas-ui/ui/separator';\n *\n * <div className=\"space-y-4\">\n * <p>Section one</p>\n * <Separator />\n * <p>Section two</p>\n * </div>\n *\n * <div className=\"flex h-8 items-center gap-4\">\n * <span>Left</span>\n * <Separator orientation=\"vertical\" />\n * <span>Right</span>\n * </div>\n * ```\n */\nfunction Separator({ className, orientation = 'horizontal', decorative = true, ...props }: React.ComponentProps<typeof SeparatorPrimitive.Root>) {\n return (\n <SeparatorPrimitive.Root\n data-slot=\"separator\"\n decorative={decorative}\n orientation={orientation}\n className={cn(\n 'bg-border-weak shrink-0',\n 'data-[orientation=horizontal]:h-px',\n 'data-[orientation=horizontal]:w-full',\n 'data-[orientation=vertical]:h-full',\n 'data-[orientation=vertical]:w-px',\n className\n )}\n {...props}\n />\n );\n}\n\nexport { Separator };\n"],"mappings":"6IAyBA,SAAS,EAAU,CAAE,YAAW,cAAc,aAAc,aAAa,GAAM,GAAG,GAA+D,CAC/I,OACE,EAAA,EAAA,KAACA,EAAAA,UAAmB,KAAA,CAClB,YAAU,YACE,aACC,cACb,WAAA,EAAA,EAAA,IACE,0BACA,qCACA,uCACA,qCACA,mCACA,EACD,CACD,GAAI,GACJ"}
@@ -1,2 +0,0 @@
1
- const e=require(`./chunk-350yNsax.cjs`);let t=require(`lucide-react`),n=require(`@customafk/react-toolkit/utils`),r=require(`react/jsx-runtime`),i=require(`radix-ui`);function a({...e}){return(0,r.jsx)(i.Dialog.Root,{"data-slot":`sheet`,...e})}function o({...e}){return(0,r.jsx)(i.Dialog.Trigger,{"data-slot":`sheet-trigger`,...e})}function s({...e}){return(0,r.jsx)(i.Dialog.Close,{"data-slot":`sheet-close`,...e})}function c({...e}){return(0,r.jsx)(i.Dialog.Portal,{"data-slot":`sheet-portal`,...e})}function l({className:e,...t}){return(0,r.jsx)(i.Dialog.Overlay,{"data-slot":`sheet-overlay`,className:(0,n.cn)(`fixed inset-0 z-50 bg-black/50`,`data-[state=open]:animate-in`,`data-[state=closed]:animate-out`,`data-[state=closed]:fade-out-0`,`data-[state=open]:fade-in-0`,e),...t})}function u({className:e,children:a,side:o=`right`,...s}){return(0,r.jsxs)(c,{children:[(0,r.jsx)(l,{}),(0,r.jsxs)(i.Dialog.Content,{"data-slot":`sheet-content`,className:(0,n.cn)(`bg-background`,`fixed z-50 flex flex-col gap-4 border-border-weak shadow-dropdown transition ease-in-out`,`data-[state=open]:animate-in`,`data-[state=open]:duration-500`,`data-[state=closed]:animate-out`,`data-[state=closed]:duration-300`,o===`right`&&`inset-y-0 right-0 h-full w-3/4 border-l sm:max-w-sm`,o===`right`&&`data-[state=closed]:slide-out-to-right`,o===`right`&&`data-[state=open]:slide-in-from-right`,o===`left`&&`inset-y-0 left-0 h-full w-3/4 border-r sm:max-w-sm`,o===`left`&&`data-[state=closed]:slide-out-to-left`,o===`left`&&`data-[state=open]:slide-in-from-left`,o===`top`&&`inset-x-0 top-0 h-auto border-b`,o===`top`&&`data-[state=closed]:slide-out-to-top`,o===`top`&&`data-[state=open]:slide-in-from-top`,o===`bottom`&&`inset-x-0 bottom-0 h-auto border-t`,o===`bottom`&&`data-[state=closed]:slide-out-to-bottom`,o===`bottom`&&`data-[state=open]:slide-in-from-bottom`,e),...s,children:[a,(0,r.jsxs)(i.Dialog.Close,{className:(0,n.cn)(`cursor-pointer p-2 ring-offset-background`,`absolute top-2 right-2 rounded-full opacity-70 transition-opacity`,`data-[state=open]:bg-secondary`,`disabled:pointer-events-none`,`hover:opacity-100`,`hover:bg-border-muted`,`focus:ring-border-weak`,`focus:ring-4`,`focus:outline-hidden`),children:[(0,r.jsx)(t.XIcon,{className:`size-5`}),(0,r.jsx)(`span`,{className:`sr-only`,children:`Close`})]})]})]})}function d({className:e,...t}){return(0,r.jsx)(`div`,{"data-slot":`sheet-header`,className:(0,n.cn)(`flex flex-0 flex-col gap-1.5 p-4`,e),...t})}function f({className:e,...t}){return(0,r.jsx)(`div`,{"data-slot":`sheet-footer`,className:(0,n.cn)(`mt-auto flex flex-0 flex-col gap-2 p-4`,e),...t})}function p({className:e,...t}){return(0,r.jsx)(i.Dialog.Title,{"data-slot":`sheet-title`,className:(0,n.cn)(`font-semibold text-text-positive-strong`,e),...t})}function m({className:e,...t}){return(0,r.jsx)(i.Dialog.Description,{"data-slot":`sheet-description`,className:(0,n.cn)(`text-sm text-text-positive-weak`,e),...t})}Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,`c`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return m}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return a}});
2
- //# sourceMappingURL=sheet-CvKSi0UC.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sheet-CvKSi0UC.cjs","names":["SheetPrimitive","XIcon"],"sources":["../packages/components/ui/sheet.tsx"],"sourcesContent":["'use client';\n\nimport { XIcon } from 'lucide-react';\n\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { Dialog as SheetPrimitive } from 'radix-ui';\n\n/**\n * Root provider for the Sheet panel — wraps all Sheet sub-components and manages open state.\n *\n * @example\n * ```tsx\n * import { Sheet, SheetTrigger, SheetContent, SheetHeader, SheetTitle, SheetDescription } from '@customafk/lunas-ui/ui/sheet';\n *\n * <Sheet>\n * <SheetTrigger>Open</SheetTrigger>\n * <SheetContent side=\"right\">\n * <SheetHeader>\n * <SheetTitle>Settings</SheetTitle>\n * <SheetDescription>Manage your preferences.</SheetDescription>\n * </SheetHeader>\n * </SheetContent>\n * </Sheet>\n * ```\n */\nfunction Sheet({ ...props }: React.ComponentProps<typeof SheetPrimitive.Root>) {\n return <SheetPrimitive.Root data-slot=\"sheet\" {...props} />;\n}\n\n/** Button or element that opens the Sheet when interacted with. */\nfunction SheetTrigger({ ...props }: React.ComponentProps<typeof SheetPrimitive.Trigger>) {\n return <SheetPrimitive.Trigger data-slot=\"sheet-trigger\" {...props} />;\n}\n\n/** Button that programmatically closes the Sheet. */\nfunction SheetClose({ ...props }: React.ComponentProps<typeof SheetPrimitive.Close>) {\n return <SheetPrimitive.Close data-slot=\"sheet-close\" {...props} />;\n}\n\n/** Portals Sheet content outside the current DOM hierarchy. */\nfunction SheetPortal({ ...props }: React.ComponentProps<typeof SheetPrimitive.Portal>) {\n return <SheetPrimitive.Portal data-slot=\"sheet-portal\" {...props} />;\n}\n\n/** Semi-transparent backdrop rendered behind the Sheet panel. */\nfunction SheetOverlay({ className, ...props }: React.ComponentProps<typeof SheetPrimitive.Overlay>) {\n return (\n <SheetPrimitive.Overlay\n data-slot=\"sheet-overlay\"\n className={cn(\n 'fixed inset-0 z-50 bg-black/50',\n 'data-[state=open]:animate-in',\n 'data-[state=closed]:animate-out',\n 'data-[state=closed]:fade-out-0',\n 'data-[state=open]:fade-in-0',\n className\n )}\n {...props}\n />\n );\n}\n\n/**\n * The sliding panel itself; renders on the specified `side` of the viewport and includes a built-in close button.\n */\nfunction SheetContent({\n className,\n children,\n side = 'right',\n ...props\n}: React.ComponentProps<typeof SheetPrimitive.Content> & {\n /** Edge of the viewport from which the sheet slides in. */\n side?: 'top' | 'right' | 'bottom' | 'left';\n}) {\n return (\n <SheetPortal>\n <SheetOverlay />\n <SheetPrimitive.Content\n data-slot=\"sheet-content\"\n className={cn(\n 'bg-background',\n 'fixed z-50 flex flex-col gap-4 border-border-weak shadow-dropdown transition ease-in-out',\n\n 'data-[state=open]:animate-in',\n 'data-[state=open]:duration-500',\n 'data-[state=closed]:animate-out',\n 'data-[state=closed]:duration-300',\n\n side === 'right' && 'inset-y-0 right-0 h-full w-3/4 border-l sm:max-w-sm',\n side === 'right' && 'data-[state=closed]:slide-out-to-right',\n side === 'right' && 'data-[state=open]:slide-in-from-right',\n\n side === 'left' && 'inset-y-0 left-0 h-full w-3/4 border-r sm:max-w-sm',\n side === 'left' && 'data-[state=closed]:slide-out-to-left',\n side === 'left' && 'data-[state=open]:slide-in-from-left',\n\n side === 'top' && 'inset-x-0 top-0 h-auto border-b',\n side === 'top' && 'data-[state=closed]:slide-out-to-top',\n side === 'top' && 'data-[state=open]:slide-in-from-top',\n\n side === 'bottom' && 'inset-x-0 bottom-0 h-auto border-t',\n side === 'bottom' && 'data-[state=closed]:slide-out-to-bottom',\n side === 'bottom' && 'data-[state=open]:slide-in-from-bottom',\n className\n )}\n {...props}\n >\n {children}\n <SheetPrimitive.Close\n className={cn(\n 'cursor-pointer p-2 ring-offset-background',\n 'absolute top-2 right-2 rounded-full opacity-70 transition-opacity',\n 'data-[state=open]:bg-secondary',\n 'disabled:pointer-events-none',\n 'hover:opacity-100',\n 'hover:bg-border-muted',\n 'focus:ring-border-weak',\n 'focus:ring-4',\n 'focus:outline-hidden'\n )}\n >\n <XIcon className=\"size-5\" />\n <span className=\"sr-only\">Close</span>\n </SheetPrimitive.Close>\n </SheetPrimitive.Content>\n </SheetPortal>\n );\n}\n\n/** Padded container for the Sheet title and description at the top of the panel. */\nfunction SheetHeader({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"sheet-header\" className={cn('flex flex-0 flex-col gap-1.5 p-4', className)} {...props} />;\n}\n\n/** Sticky footer area at the bottom of the Sheet panel, typically used for action buttons. */\nfunction SheetFooter({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"sheet-footer\" className={cn('mt-auto flex flex-0 flex-col gap-2 p-4', className)} {...props} />;\n}\n\n/** Accessible title element for the Sheet, announced by screen readers on open. */\nfunction SheetTitle({ className, ...props }: React.ComponentProps<typeof SheetPrimitive.Title>) {\n return <SheetPrimitive.Title data-slot=\"sheet-title\" className={cn('font-semibold text-text-positive-strong', className)} {...props} />;\n}\n\n/** Accessible description element for the Sheet, providing supplemental context to the title. */\nfunction SheetDescription({ className, ...props }: React.ComponentProps<typeof SheetPrimitive.Description>) {\n return <SheetPrimitive.Description data-slot=\"sheet-description\" className={cn('text-sm text-text-positive-weak', className)} {...props} />;\n}\n\nexport { Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger };\n"],"mappings":"uKA0BA,SAAS,EAAM,CAAE,GAAG,GAA2D,CAC7E,OAAO,EAAA,EAAA,KAACA,EAAAA,OAAe,KAAA,CAAK,YAAU,QAAQ,GAAI,GAAS,CAI7D,SAAS,EAAa,CAAE,GAAG,GAA8D,CACvF,OAAO,EAAA,EAAA,KAACA,EAAAA,OAAe,QAAA,CAAQ,YAAU,gBAAgB,GAAI,GAAS,CAIxE,SAAS,EAAW,CAAE,GAAG,GAA4D,CACnF,OAAO,EAAA,EAAA,KAACA,EAAAA,OAAe,MAAA,CAAM,YAAU,cAAc,GAAI,GAAS,CAIpE,SAAS,EAAY,CAAE,GAAG,GAA6D,CACrF,OAAO,EAAA,EAAA,KAACA,EAAAA,OAAe,OAAA,CAAO,YAAU,eAAe,GAAI,GAAS,CAItE,SAAS,EAAa,CAAE,YAAW,GAAG,GAA8D,CAClG,OACE,EAAA,EAAA,KAACA,EAAAA,OAAe,QAAA,CACd,YAAU,gBACV,WAAA,EAAA,EAAA,IACE,iCACA,+BACA,kCACA,iCACA,8BACA,EACD,CACD,GAAI,GACJ,CAON,SAAS,EAAa,CACpB,YACA,WACA,OAAO,QACP,GAAG,GAIF,CACD,OACE,EAAA,EAAA,MAAC,EAAA,CAAA,SAAA,EACC,EAAA,EAAA,KAAC,EAAA,EAAA,CAAe,EAChB,EAAA,EAAA,MAACA,EAAAA,OAAe,QAAA,CACd,YAAU,gBACV,WAAA,EAAA,EAAA,IACE,gBACA,2FAEA,+BACA,iCACA,kCACA,mCAEA,IAAS,SAAW,sDACpB,IAAS,SAAW,yCACpB,IAAS,SAAW,wCAEpB,IAAS,QAAU,qDACnB,IAAS,QAAU,wCACnB,IAAS,QAAU,uCAEnB,IAAS,OAAS,kCAClB,IAAS,OAAS,uCAClB,IAAS,OAAS,sCAElB,IAAS,UAAY,qCACrB,IAAS,UAAY,0CACrB,IAAS,UAAY,yCACrB,EACD,CACD,GAAI,YAEH,GACD,EAAA,EAAA,MAACA,EAAAA,OAAe,MAAA,CACd,WAAA,EAAA,EAAA,IACE,4CACA,oEACA,iCACA,+BACA,oBACA,wBACA,yBACA,eACA,uBACD,YAED,EAAA,EAAA,KAACC,EAAAA,MAAAA,CAAM,UAAU,SAAA,CAAW,EAC5B,EAAA,EAAA,KAAC,OAAA,CAAK,UAAU,mBAAU,SAAY,CAAA,EACjB,CAAA,EACA,CAAA,CAAA,CACb,CAKlB,SAAS,EAAY,CAAE,YAAW,GAAG,GAAsC,CACzE,OAAO,EAAA,EAAA,KAAC,MAAA,CAAI,YAAU,eAAe,WAAA,EAAA,EAAA,IAAc,mCAAoC,EAAU,CAAE,GAAI,GAAS,CAIlH,SAAS,EAAY,CAAE,YAAW,GAAG,GAAsC,CACzE,OAAO,EAAA,EAAA,KAAC,MAAA,CAAI,YAAU,eAAe,WAAA,EAAA,EAAA,IAAc,yCAA0C,EAAU,CAAE,GAAI,GAAS,CAIxH,SAAS,EAAW,CAAE,YAAW,GAAG,GAA4D,CAC9F,OAAO,EAAA,EAAA,KAACD,EAAAA,OAAe,MAAA,CAAM,YAAU,cAAc,WAAA,EAAA,EAAA,IAAc,0CAA2C,EAAU,CAAE,GAAI,GAAS,CAIzI,SAAS,EAAiB,CAAE,YAAW,GAAG,GAAkE,CAC1G,OAAO,EAAA,EAAA,KAACA,EAAAA,OAAe,YAAA,CAAY,YAAU,oBAAoB,WAAA,EAAA,EAAA,IAAc,kCAAmC,EAAU,CAAE,GAAI,GAAS"}
@@ -1,2 +0,0 @@
1
- import{XIcon as e}from"lucide-react";import{cn as t}from"@customafk/react-toolkit/utils";import{jsx as n,jsxs as r}from"react/jsx-runtime";import{Dialog as i}from"radix-ui";function a({...e}){return n(i.Root,{"data-slot":`sheet`,...e})}function o({...e}){return n(i.Trigger,{"data-slot":`sheet-trigger`,...e})}function s({...e}){return n(i.Close,{"data-slot":`sheet-close`,...e})}function c({...e}){return n(i.Portal,{"data-slot":`sheet-portal`,...e})}function l({className:e,...r}){return n(i.Overlay,{"data-slot":`sheet-overlay`,className:t(`fixed inset-0 z-50 bg-black/50`,`data-[state=open]:animate-in`,`data-[state=closed]:animate-out`,`data-[state=closed]:fade-out-0`,`data-[state=open]:fade-in-0`,e),...r})}function u({className:a,children:o,side:s=`right`,...u}){return r(c,{children:[n(l,{}),r(i.Content,{"data-slot":`sheet-content`,className:t(`bg-background`,`fixed z-50 flex flex-col gap-4 border-border-weak shadow-dropdown transition ease-in-out`,`data-[state=open]:animate-in`,`data-[state=open]:duration-500`,`data-[state=closed]:animate-out`,`data-[state=closed]:duration-300`,s===`right`&&`inset-y-0 right-0 h-full w-3/4 border-l sm:max-w-sm`,s===`right`&&`data-[state=closed]:slide-out-to-right`,s===`right`&&`data-[state=open]:slide-in-from-right`,s===`left`&&`inset-y-0 left-0 h-full w-3/4 border-r sm:max-w-sm`,s===`left`&&`data-[state=closed]:slide-out-to-left`,s===`left`&&`data-[state=open]:slide-in-from-left`,s===`top`&&`inset-x-0 top-0 h-auto border-b`,s===`top`&&`data-[state=closed]:slide-out-to-top`,s===`top`&&`data-[state=open]:slide-in-from-top`,s===`bottom`&&`inset-x-0 bottom-0 h-auto border-t`,s===`bottom`&&`data-[state=closed]:slide-out-to-bottom`,s===`bottom`&&`data-[state=open]:slide-in-from-bottom`,a),...u,children:[o,r(i.Close,{className:t(`cursor-pointer p-2 ring-offset-background`,`absolute top-2 right-2 rounded-full opacity-70 transition-opacity`,`data-[state=open]:bg-secondary`,`disabled:pointer-events-none`,`hover:opacity-100`,`hover:bg-border-muted`,`focus:ring-border-weak`,`focus:ring-4`,`focus:outline-hidden`),children:[n(e,{className:`size-5`}),n(`span`,{className:`sr-only`,children:`Close`})]})]})]})}function d({className:e,...r}){return n(`div`,{"data-slot":`sheet-header`,className:t(`flex flex-0 flex-col gap-1.5 p-4`,e),...r})}function f({className:e,...r}){return n(`div`,{"data-slot":`sheet-footer`,className:t(`mt-auto flex flex-0 flex-col gap-2 p-4`,e),...r})}function p({className:e,...r}){return n(i.Title,{"data-slot":`sheet-title`,className:t(`font-semibold text-text-positive-strong`,e),...r})}function m({className:e,...r}){return n(i.Description,{"data-slot":`sheet-description`,className:t(`text-sm text-text-positive-weak`,e),...r})}export{f as a,o as c,m as i,s as n,d as o,u as r,p as s,a as t};
2
- //# sourceMappingURL=sheet-DGXXYgWB.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sheet-DGXXYgWB.js","names":["SheetPrimitive"],"sources":["../packages/components/ui/sheet.tsx"],"sourcesContent":["'use client';\n\nimport { XIcon } from 'lucide-react';\n\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { Dialog as SheetPrimitive } from 'radix-ui';\n\n/**\n * Root provider for the Sheet panel — wraps all Sheet sub-components and manages open state.\n *\n * @example\n * ```tsx\n * import { Sheet, SheetTrigger, SheetContent, SheetHeader, SheetTitle, SheetDescription } from '@customafk/lunas-ui/ui/sheet';\n *\n * <Sheet>\n * <SheetTrigger>Open</SheetTrigger>\n * <SheetContent side=\"right\">\n * <SheetHeader>\n * <SheetTitle>Settings</SheetTitle>\n * <SheetDescription>Manage your preferences.</SheetDescription>\n * </SheetHeader>\n * </SheetContent>\n * </Sheet>\n * ```\n */\nfunction Sheet({ ...props }: React.ComponentProps<typeof SheetPrimitive.Root>) {\n return <SheetPrimitive.Root data-slot=\"sheet\" {...props} />;\n}\n\n/** Button or element that opens the Sheet when interacted with. */\nfunction SheetTrigger({ ...props }: React.ComponentProps<typeof SheetPrimitive.Trigger>) {\n return <SheetPrimitive.Trigger data-slot=\"sheet-trigger\" {...props} />;\n}\n\n/** Button that programmatically closes the Sheet. */\nfunction SheetClose({ ...props }: React.ComponentProps<typeof SheetPrimitive.Close>) {\n return <SheetPrimitive.Close data-slot=\"sheet-close\" {...props} />;\n}\n\n/** Portals Sheet content outside the current DOM hierarchy. */\nfunction SheetPortal({ ...props }: React.ComponentProps<typeof SheetPrimitive.Portal>) {\n return <SheetPrimitive.Portal data-slot=\"sheet-portal\" {...props} />;\n}\n\n/** Semi-transparent backdrop rendered behind the Sheet panel. */\nfunction SheetOverlay({ className, ...props }: React.ComponentProps<typeof SheetPrimitive.Overlay>) {\n return (\n <SheetPrimitive.Overlay\n data-slot=\"sheet-overlay\"\n className={cn(\n 'fixed inset-0 z-50 bg-black/50',\n 'data-[state=open]:animate-in',\n 'data-[state=closed]:animate-out',\n 'data-[state=closed]:fade-out-0',\n 'data-[state=open]:fade-in-0',\n className\n )}\n {...props}\n />\n );\n}\n\n/**\n * The sliding panel itself; renders on the specified `side` of the viewport and includes a built-in close button.\n */\nfunction SheetContent({\n className,\n children,\n side = 'right',\n ...props\n}: React.ComponentProps<typeof SheetPrimitive.Content> & {\n /** Edge of the viewport from which the sheet slides in. */\n side?: 'top' | 'right' | 'bottom' | 'left';\n}) {\n return (\n <SheetPortal>\n <SheetOverlay />\n <SheetPrimitive.Content\n data-slot=\"sheet-content\"\n className={cn(\n 'bg-background',\n 'fixed z-50 flex flex-col gap-4 border-border-weak shadow-dropdown transition ease-in-out',\n\n 'data-[state=open]:animate-in',\n 'data-[state=open]:duration-500',\n 'data-[state=closed]:animate-out',\n 'data-[state=closed]:duration-300',\n\n side === 'right' && 'inset-y-0 right-0 h-full w-3/4 border-l sm:max-w-sm',\n side === 'right' && 'data-[state=closed]:slide-out-to-right',\n side === 'right' && 'data-[state=open]:slide-in-from-right',\n\n side === 'left' && 'inset-y-0 left-0 h-full w-3/4 border-r sm:max-w-sm',\n side === 'left' && 'data-[state=closed]:slide-out-to-left',\n side === 'left' && 'data-[state=open]:slide-in-from-left',\n\n side === 'top' && 'inset-x-0 top-0 h-auto border-b',\n side === 'top' && 'data-[state=closed]:slide-out-to-top',\n side === 'top' && 'data-[state=open]:slide-in-from-top',\n\n side === 'bottom' && 'inset-x-0 bottom-0 h-auto border-t',\n side === 'bottom' && 'data-[state=closed]:slide-out-to-bottom',\n side === 'bottom' && 'data-[state=open]:slide-in-from-bottom',\n className\n )}\n {...props}\n >\n {children}\n <SheetPrimitive.Close\n className={cn(\n 'cursor-pointer p-2 ring-offset-background',\n 'absolute top-2 right-2 rounded-full opacity-70 transition-opacity',\n 'data-[state=open]:bg-secondary',\n 'disabled:pointer-events-none',\n 'hover:opacity-100',\n 'hover:bg-border-muted',\n 'focus:ring-border-weak',\n 'focus:ring-4',\n 'focus:outline-hidden'\n )}\n >\n <XIcon className=\"size-5\" />\n <span className=\"sr-only\">Close</span>\n </SheetPrimitive.Close>\n </SheetPrimitive.Content>\n </SheetPortal>\n );\n}\n\n/** Padded container for the Sheet title and description at the top of the panel. */\nfunction SheetHeader({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"sheet-header\" className={cn('flex flex-0 flex-col gap-1.5 p-4', className)} {...props} />;\n}\n\n/** Sticky footer area at the bottom of the Sheet panel, typically used for action buttons. */\nfunction SheetFooter({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"sheet-footer\" className={cn('mt-auto flex flex-0 flex-col gap-2 p-4', className)} {...props} />;\n}\n\n/** Accessible title element for the Sheet, announced by screen readers on open. */\nfunction SheetTitle({ className, ...props }: React.ComponentProps<typeof SheetPrimitive.Title>) {\n return <SheetPrimitive.Title data-slot=\"sheet-title\" className={cn('font-semibold text-text-positive-strong', className)} {...props} />;\n}\n\n/** Accessible description element for the Sheet, providing supplemental context to the title. */\nfunction SheetDescription({ className, ...props }: React.ComponentProps<typeof SheetPrimitive.Description>) {\n return <SheetPrimitive.Description data-slot=\"sheet-description\" className={cn('text-sm text-text-positive-weak', className)} {...props} />;\n}\n\nexport { Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger };\n"],"mappings":"6KA0BA,SAAS,EAAM,CAAE,GAAG,GAA2D,CAC7E,OAAO,EAACA,EAAe,KAAA,CAAK,YAAU,QAAQ,GAAI,GAAS,CAI7D,SAAS,EAAa,CAAE,GAAG,GAA8D,CACvF,OAAO,EAACA,EAAe,QAAA,CAAQ,YAAU,gBAAgB,GAAI,GAAS,CAIxE,SAAS,EAAW,CAAE,GAAG,GAA4D,CACnF,OAAO,EAACA,EAAe,MAAA,CAAM,YAAU,cAAc,GAAI,GAAS,CAIpE,SAAS,EAAY,CAAE,GAAG,GAA6D,CACrF,OAAO,EAACA,EAAe,OAAA,CAAO,YAAU,eAAe,GAAI,GAAS,CAItE,SAAS,EAAa,CAAE,YAAW,GAAG,GAA8D,CAClG,OACE,EAACA,EAAe,QAAA,CACd,YAAU,gBACV,UAAW,EACT,iCACA,+BACA,kCACA,iCACA,8BACA,EACD,CACD,GAAI,GACJ,CAON,SAAS,EAAa,CACpB,YACA,WACA,OAAO,QACP,GAAG,GAIF,CACD,OACE,EAAC,EAAA,CAAA,SAAA,CACC,EAAC,EAAA,EAAA,CAAe,CAChB,EAACA,EAAe,QAAA,CACd,YAAU,gBACV,UAAW,EACT,gBACA,2FAEA,+BACA,iCACA,kCACA,mCAEA,IAAS,SAAW,sDACpB,IAAS,SAAW,yCACpB,IAAS,SAAW,wCAEpB,IAAS,QAAU,qDACnB,IAAS,QAAU,wCACnB,IAAS,QAAU,uCAEnB,IAAS,OAAS,kCAClB,IAAS,OAAS,uCAClB,IAAS,OAAS,sCAElB,IAAS,UAAY,qCACrB,IAAS,UAAY,0CACrB,IAAS,UAAY,yCACrB,EACD,CACD,GAAI,YAEH,EACD,EAACA,EAAe,MAAA,CACd,UAAW,EACT,4CACA,oEACA,iCACA,+BACA,oBACA,wBACA,yBACA,eACA,uBACD,WAED,EAAC,EAAA,CAAM,UAAU,SAAA,CAAW,CAC5B,EAAC,OAAA,CAAK,UAAU,mBAAU,SAAY,CAAA,EACjB,CAAA,EACA,CAAA,CAAA,CACb,CAKlB,SAAS,EAAY,CAAE,YAAW,GAAG,GAAsC,CACzE,OAAO,EAAC,MAAA,CAAI,YAAU,eAAe,UAAW,EAAG,mCAAoC,EAAU,CAAE,GAAI,GAAS,CAIlH,SAAS,EAAY,CAAE,YAAW,GAAG,GAAsC,CACzE,OAAO,EAAC,MAAA,CAAI,YAAU,eAAe,UAAW,EAAG,yCAA0C,EAAU,CAAE,GAAI,GAAS,CAIxH,SAAS,EAAW,CAAE,YAAW,GAAG,GAA4D,CAC9F,OAAO,EAACA,EAAe,MAAA,CAAM,YAAU,cAAc,UAAW,EAAG,0CAA2C,EAAU,CAAE,GAAI,GAAS,CAIzI,SAAS,EAAiB,CAAE,YAAW,GAAG,GAAkE,CAC1G,OAAO,EAACA,EAAe,YAAA,CAAY,YAAU,oBAAoB,UAAW,EAAG,kCAAmC,EAAU,CAAE,GAAI,GAAS"}
@@ -1,2 +0,0 @@
1
- import{t as e}from"./button-LMMbL-uH.js";import{t}from"./skeleton-DlRDNM97.js";import{i as n,n as r,r as i,t as a}from"./tooltip-CVIl6Hln.js";import{t as o}from"./separator-BM8hA4DP.js";import{i as s,o as c,r as l,s as u,t as d}from"./sheet-DGXXYgWB.js";import{MenuIcon as f}from"lucide-react";import{createContext as p,use as m,useCallback as h,useEffect as g,useMemo as _,useState as v}from"react";import{cn as y}from"@customafk/react-toolkit/utils";import{cva as b}from"class-variance-authority";import{jsx as x,jsxs as S}from"react/jsx-runtime";import{Slot as C}from"radix-ui";import{useIsMobile as w}from"@customafk/react-toolkit/hooks/useMobile";const T=p(null);function E(){let e=m(T);if(!e)throw Error(`useSidebar must be used within a SidebarProvider.`);return e}function D({defaultOpen:e=!0,open:t,onOpenChange:n,className:r,style:a,children:o,...s}){let c=w(),[l,u]=v(!1),[d,f]=v(e),p=t??d,m=h(e=>{let t=typeof e==`function`?e(p):e;n?n(t):f(t),document.cookie=`detail_dialog_sidebar_state=${t}; path=/; max-age=604800`},[n,p]),b=h(()=>c?u(e=>!e):m(e=>!e),[c,m]);g(()=>{let e=e=>{e.key===`p`&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),b())};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[b]);let S=p?`expanded`:`collapsed`,C=_(()=>({state:S,isMobile:c,toggleSidebar:b,open:p,setOpen:m,openMobile:l,setOpenMobile:u}),[S,c,p,m,l,b]);return x(T.Provider,{value:C,children:x(i,{delayDuration:0,children:x(`div`,{"data-slot":`sidebar-wrapper`,style:{"--sidebar-width":`18rem`,"--sidebar-width-icon":`3rem`,...a},className:y(`group/sidebar-wrapper flex h-full min-h-[85dvh] w-full items-start has-data-[variant=inset]:bg-sidebar`,r),...s,children:o})})})}function O({side:e=`left`,variant:t=`sidebar`,collapsible:n=`offcanvas`,className:r,children:i,...a}){let{state:o,isMobile:f,openMobile:p,setOpenMobile:m}=E();return n===`none`?x(`div`,{"data-slot":`sidebar`,className:y(`flex h-full w-(--sidebar-width) flex-col bg-sidebar text-sidebar-foreground`,r),...a,children:i}):f?x(d,{open:p,onOpenChange:m,...a,children:S(l,{"data-sidebar":`sidebar`,"data-slot":`sidebar`,"data-mobile":`true`,className:`z-20 hidden w-(--sidebar-width) bg-sidebar p-0 text-sidebar-foreground shadow-nav md:flex [&>button]:hidden`,style:{"--sidebar-width":`18rem`},side:e,children:[S(c,{className:`sr-only`,children:[x(u,{children:`Sidebar`}),x(s,{children:`Displays the mobile sidebar.`})]}),x(`div`,{className:`flex h-full w-full flex-col`,children:i})]})}):S(`div`,{className:`group peer hidden text-sidebar-foreground md:block`,"data-state":o,"data-collapsible":o===`collapsed`?n:``,"data-variant":t,"data-side":e,"data-slot":`sidebar`,children:[x(`div`,{"data-slot":`sidebar-gap`,className:y(`relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear`,`group-data-[collapsible=offcanvas]:w-0`,`group-data-[side=right]:rotate-180`,t===`floating`||t===`inset`?`group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]`:`group-data-[collapsible=icon]:w-(--sidebar-width-icon)`)}),x(`div`,{"data-slot":`sidebar-container`,className:y(`absolute inset-y-0 z-20 hidden w-(--sidebar-width) shadow-nav transition-[left,right,width] duration-200 ease-linear md:flex`,e===`left`?`left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]`:`right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]`,t===`floating`||t===`inset`?`p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]`:`group-data-[collapsible=icon]:w-(--sidebar-width-icon)`,r),...a,children:x(`div`,{"data-sidebar":`sidebar`,"data-slot":`sidebar-inner`,className:y(`flex size-full flex-col shadow-nav`,`group-data-[variant=floating]:rounded-lg`,`group-data-[variant=floating]:border`,`group-data-[variant=floating]:border-sidebar-border`,`group-data-[variant=floating]:shadow-sm`),children:i})})]})}function k({className:t,onClick:n,...r}){let{toggleSidebar:i}=E();return S(e,{"data-sidebar":`trigger`,"data-slot":`sidebar-trigger`,variant:`ghost`,color:`secondary`,size:`icon`,className:y(`size-10 rounded-full [&_svg]:size-6!`,t),onClick:e=>{n?.(e),i()},...r,children:[x(f,{}),x(`span`,{className:`sr-only`,children:`Toggle Sidebar`})]})}function A({className:e,...t}){let{toggleSidebar:n}=E();return x(`button`,{"data-sidebar":`rail`,"data-slot":`sidebar-rail`,"aria-label":`Toggle Sidebar`,tabIndex:-1,onClick:n,title:`Toggle Sidebar`,className:y(`absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear sm:flex`,`after:absolute after:inset-y-0 after:left-1/2 after:w-0.5`,`hover:after:bg-sidebar-border`,`group-data-[side=left]:-right-4 group-data-[side=right]:left-0`,`in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize`,`[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize`,`hover:group-data-[collapsible=offcanvas]:bg-sidebar`,`group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full`,`[[data-side=left][data-collapsible=offcanvas]_&]:-right-2`,`[[data-side=right][data-collapsible=offcanvas]_&]:-left-2`,e),...t})}function j({className:e,...t}){return x(`main`,{"data-slot":`sidebar-inset`,className:y(`relative flex w-full flex-1 flex-col bg-background`,`md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0`,`md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm`,`md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2`,e),...t})}function M({className:e,...t}){return x(`div`,{"data-slot":`sidebar-header`,"data-sidebar":`header`,className:y(`flex flex-col gap-2 p-2`,e),...t})}function N({className:e,children:t,...n}){let{open:r}=E();return x(`div`,{"data-slot":`sidebar-footer`,"data-sidebar":`footer`,className:y(`flex flex-col gap-2 p-2`,e),...n,children:S(B,{children:[r&&x(V,{children:t}),x(V,{children:S(`p`,{className:`pt-2 text-center text-xs text-text-positive-subtle`,children:[`Copyright © `,new Date().getFullYear(),`, Lunas.`]})})]})})}function P({className:e,...t}){return x(o,{"data-slot":`sidebar-separator`,"data-sidebar":`separator`,className:y(`mx-2 w-auto bg-sidebar-border`,e),...t})}function F({className:e,...t}){return x(`div`,{"data-slot":`sidebar-content`,"data-sidebar":`content`,className:y(`flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden`,e),...t})}function I({className:e,...t}){return x(`div`,{"data-slot":`sidebar-group`,"data-sidebar":`group`,className:y(`relative flex w-full min-w-0 flex-col p-2`,e),...t})}function L({className:e,asChild:t=!1,...n}){return x(t?C.Slot:`div`,{"data-slot":`sidebar-group-label`,"data-sidebar":`group-label`,className:y(`flex h-8 shrink-0 items-center rounded-md px-2 font-medium text-sidebar-foreground/70 text-xs outline-hidden ring-sidebar-ring transition-[margin,opacity,color] duration-200 ease-linear focus-visible:ring-2`,`[&>svg]:size-4 [&>svg]:shrink-0`,`group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0`,e),...n})}function R({className:e,asChild:t=!1,...n}){return x(t?C.Slot:`button`,{"data-slot":`sidebar-group-action`,"data-sidebar":`group-action`,className:y(`absolute top-3.5 right-3 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground outline-hidden ring-sidebar-ring transition-[background-color,color,transform]`,`hover:bg-sidebar-accent hover:text-sidebar-accent-foreground`,`focus-visible:ring-2`,`[&>svg]:size-4 [&>svg]:shrink-0`,`after:absolute after:-inset-2 md:after:hidden`,`group-data-[collapsible=icon]:hidden`,e),...n})}function z({className:e,...t}){return x(`div`,{"data-slot":`sidebar-group-content`,"data-sidebar":`group-content`,className:y(`w-full text-sm`,e),...t})}function B({className:e,...t}){return x(`ul`,{"data-slot":`sidebar-menu`,"data-sidebar":`menu`,className:y(`flex w-full min-w-0 flex-col gap-1`,e),...t})}function V({className:e,...t}){return x(`li`,{"data-slot":`sidebar-menu-item`,"data-sidebar":`menu-item`,className:y(`group/menu-item relative`,e),...t})}const H=b([`peer/menu-button`,`cursor-pointer`,`flex w-full items-center gap-2`,`overflow-hidden rounded-md p-2 outline-hidden`,`truncate text-left font-normal`,`transition-[color,background-color,width,height,padding]`,`active:bg-sidebar-accent active:text-sidebar-accent-foreground`,`disabled:pointer-events-none disabled:opacity-50`,`group-has-data-[sidebar=menu-action]/menu-item:pr-8`,`aria-disabled:pointer-events-none aria-disabled:opacity-50`,`data-[active=true]:bg-sidebar-primary-muted data-[active=true]:font-normal data-[active=true]:text-sidebar-primary`,`data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground`,`group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2!`,`[&>svg]:size-4 [&>svg]:shrink-0`,`[&>span:last-child]:truncate`],{variants:{variant:{default:`hover:bg-sidebar-accent/60 hover:text-sidebar-accent-foreground`,outline:`bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]`},size:{default:`h-8 text-sm`,sm:`h-7 text-xs`,lg:`h-12 text-sm group-data-[collapsible=icon]:p-0!`}},defaultVariants:{variant:`default`,size:`default`}});function U({asChild:e=!1,isActive:t=!1,variant:i=`default`,size:o=`default`,tooltip:s,className:c,...l}){let u=e?C.Slot:`button`,{state:d}=E(),f=x(u,{"data-slot":`sidebar-menu-button`,"data-sidebar":`menu-button`,"data-size":o,"data-active":t,className:y(H({variant:i,size:o}),c),...l});return s?(typeof s==`string`&&(s={children:s}),S(a,{children:[x(n,{asChild:!0,children:f}),x(r,{side:`right`,align:`center`,hidden:d!==`collapsed`,...s})]})):f}function W({className:e,asChild:t=!1,showOnHover:n=!1,...r}){return x(t?C.Slot:`button`,{"data-slot":`sidebar-menu-action`,"data-sidebar":`menu-action`,className:y(`absolute top-1.5 right-1 flex aspect-square w-5 items-center justify-center rounded-md p-0 outline-hidden`,`text-sidebar-foreground ring-sidebar-ring`,`transition-[background-color,color,opacity]`,`hover:bg-sidebar-accent hover:text-sidebar-accent-foreground`,`focus-visible:ring-2`,`peer-hover/menu-button:text-sidebar-accent-foreground`,`[&>svg]:size-4 [&>svg]:shrink-0`,`after:absolute after:-inset-2 md:after:hidden`,`peer-data-[size=sm]/menu-button:top-1`,`peer-data-[size=default]/menu-button:top-1.5`,`peer-data-[size=lg]/menu-button:top-2.5`,`group-data-[collapsible=icon]:hidden`,n&&`peer-data-[active=true]/menu-button:text-sidebar-accent-foreground`,n&&`group-focus-within/menu-item:opacity-100`,n&&`group-hover/menu-item:opacity-100`,n&&`data-[state=open]:opacity-100 md:opacity-0`,e),...r})}function G({className:e,...t}){return x(`div`,{"data-slot":`sidebar-menu-badge`,"data-sidebar":`menu-badge`,className:y(`pointer-events-none absolute right-1 flex h-5 min-w-5 select-none items-center justify-center rounded-md px-1 font-medium text-sidebar-foreground text-xs tabular-nums transition-colors`,`peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground`,`peer-data-[size=sm]/menu-button:top-1`,`peer-data-[size=default]/menu-button:top-1.5`,`peer-data-[size=lg]/menu-button:top-2.5`,`group-data-[collapsible=icon]:hidden`,e),...t})}function K({className:e,showIcon:n=!1,...r}){let i=_(()=>`${Math.floor(Math.random()*40)+50}%`,[]);return S(`div`,{"data-slot":`sidebar-menu-skeleton`,"data-sidebar":`menu-skeleton`,className:y(`flex h-8 items-center gap-2 rounded-md px-2`,e),...r,children:[n&&x(t,{className:`size-4 rounded-md`,"data-sidebar":`menu-skeleton-icon`}),x(t,{className:`h-4 max-w-(--skeleton-width) flex-1`,"data-sidebar":`menu-skeleton-text`,style:{"--skeleton-width":i}})]})}function q({className:e,...t}){return x(`ul`,{"data-slot":`sidebar-menu-sub`,"data-sidebar":`menu-sub`,className:y(`mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l border-sidebar-border px-2.5 py-0.5`,`group-data-[collapsible=icon]:hidden`,e),...t})}function J({className:e,...t}){return x(`li`,{"data-slot":`sidebar-menu-sub-item`,"data-sidebar":`menu-sub-item`,className:y(`group/menu-sub-item relative`,e),...t})}function Y({asChild:e=!1,size:t=`md`,isActive:n=!1,className:r,...i}){return x(e?C.Slot:`a`,{"data-slot":`sidebar-menu-sub-button`,"data-sidebar":`menu-sub-button`,"data-size":t,"data-active":n,className:y(`text-sidebar-foreground ring-sidebar-ring`,`flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 outline-hidden`,`transition-[background-color,color]`,`hover:bg-sidebar-accent hover:text-sidebar-accent-foreground`,`active:bg-sidebar-accent active:text-sidebar-accent-foreground`,`focus-visible:ring-2`,`disabled:pointer-events-none disabled:opacity-50`,`aria-disabled:pointer-events-none aria-disabled:opacity-50`,`data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground`,`group-data-[collapsible=icon]:hidden`,`[&>span:last-child]:truncate`,`[&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:text-sidebar-accent-foreground`,t===`sm`&&`text-xs`,t===`md`&&`text-sm`,r),...i})}export{E as C,D as S,A as _,z as a,O as b,B as c,U as d,V as f,J as g,Y as h,R as i,W as l,q as m,N as n,L as o,K as p,I as r,M as s,F as t,G as u,P as v,j as x,k as y};
2
- //# sourceMappingURL=sidebar-BDrsbzo5.js.map