admin-ui-starter-kit 0.6.8 → 0.6.9

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 (962) hide show
  1. package/.agents/skills/component-library-rules/references/components/base__display-utilities.md +15 -8
  2. package/dist/_shared/ai-artifact-Cv8VBibf.cjs +3 -0
  3. package/dist/_shared/ai-artifact-Cv8VBibf.cjs.map +1 -0
  4. package/dist/_shared/ai-artifact-DwfXQuh4.js +1099 -0
  5. package/dist/_shared/ai-artifact-DwfXQuh4.js.map +1 -0
  6. package/dist/_shared/auth-Cz5ci18c.cjs +2 -0
  7. package/dist/_shared/auth-Cz5ci18c.cjs.map +1 -0
  8. package/dist/_shared/auth-DDWsgFUL.js +643 -0
  9. package/dist/_shared/auth-DDWsgFUL.js.map +1 -0
  10. package/dist/_shared/badge-C65rt1M9.cjs +2 -0
  11. package/dist/_shared/badge-C65rt1M9.cjs.map +1 -0
  12. package/dist/_shared/badge-r8ae66Vd.js +110 -0
  13. package/dist/_shared/badge-r8ae66Vd.js.map +1 -0
  14. package/dist/_shared/comments-DAzpeuQq.cjs +2 -0
  15. package/dist/_shared/comments-DAzpeuQq.cjs.map +1 -0
  16. package/dist/_shared/comments-DzZaKP9x.js +952 -0
  17. package/dist/_shared/comments-DzZaKP9x.js.map +1 -0
  18. package/dist/_shared/data-display-DQUUEzCx.cjs +2 -0
  19. package/dist/_shared/data-display-DQUUEzCx.cjs.map +1 -0
  20. package/dist/_shared/data-display-LlvMEFTK.js +1878 -0
  21. package/dist/_shared/data-display-LlvMEFTK.js.map +1 -0
  22. package/dist/_shared/date-picker-CrC-lHyF.cjs +2 -0
  23. package/dist/_shared/date-picker-CrC-lHyF.cjs.map +1 -0
  24. package/dist/_shared/date-picker-DbYBek-b.js +1361 -0
  25. package/dist/_shared/date-picker-DbYBek-b.js.map +1 -0
  26. package/dist/_shared/date-pickers-9AU8YQK2.js +329 -0
  27. package/dist/_shared/date-pickers-9AU8YQK2.js.map +1 -0
  28. package/dist/_shared/date-pickers-DUEwCWig.cjs +2 -0
  29. package/dist/_shared/date-pickers-DUEwCWig.cjs.map +1 -0
  30. package/dist/_shared/display-BqoPOdof.cjs +2 -0
  31. package/dist/_shared/display-BqoPOdof.cjs.map +1 -0
  32. package/dist/_shared/display-CQoSwU74.js +986 -0
  33. package/dist/_shared/display-CQoSwU74.js.map +1 -0
  34. package/dist/_shared/forms-CNh-S9FK.cjs +2 -0
  35. package/dist/_shared/forms-CNh-S9FK.cjs.map +1 -0
  36. package/dist/_shared/forms-DIz3SCA9.js +3534 -0
  37. package/dist/_shared/forms-DIz3SCA9.js.map +1 -0
  38. package/dist/_shared/header-Bs61tQla.js +447 -0
  39. package/dist/_shared/header-Bs61tQla.js.map +1 -0
  40. package/dist/_shared/header-D01oOxna.cjs +2 -0
  41. package/dist/_shared/header-D01oOxna.cjs.map +1 -0
  42. package/dist/_shared/hooks-ACnpaIli.js +95 -0
  43. package/dist/_shared/hooks-ACnpaIli.js.map +1 -0
  44. package/dist/_shared/hooks-B7khuHkk.cjs +2 -0
  45. package/dist/_shared/hooks-B7khuHkk.cjs.map +1 -0
  46. package/dist/_shared/layout-CGi5w1mo.js +268 -0
  47. package/dist/_shared/layout-CGi5w1mo.js.map +1 -0
  48. package/dist/_shared/layout-ccVwjUG8.cjs +2 -0
  49. package/dist/_shared/layout-ccVwjUG8.cjs.map +1 -0
  50. package/dist/_shared/mentions-Cg_4vFxd.cjs +2 -0
  51. package/dist/_shared/mentions-Cg_4vFxd.cjs.map +1 -0
  52. package/dist/_shared/mentions-Ci9RFTfw.js +506 -0
  53. package/dist/_shared/mentions-Ci9RFTfw.js.map +1 -0
  54. package/dist/_shared/navigation-C1QN2-Vq.cjs +2 -0
  55. package/dist/_shared/navigation-C1QN2-Vq.cjs.map +1 -0
  56. package/dist/_shared/navigation-CMrLO8v5.js +436 -0
  57. package/dist/_shared/navigation-CMrLO8v5.js.map +1 -0
  58. package/dist/_shared/separator-BXn_fnly.cjs +2 -0
  59. package/dist/_shared/separator-BXn_fnly.cjs.map +1 -0
  60. package/dist/_shared/separator-DiH-j--f.js +20 -0
  61. package/dist/_shared/separator-DiH-j--f.js.map +1 -0
  62. package/dist/_shared/settings-CgtcSI8L.js +143 -0
  63. package/dist/_shared/settings-CgtcSI8L.js.map +1 -0
  64. package/dist/_shared/settings-csNmeT7b.cjs +2 -0
  65. package/dist/_shared/settings-csNmeT7b.cjs.map +1 -0
  66. package/dist/_shared/sidebar-DyGIcJd9.cjs +2 -0
  67. package/dist/_shared/sidebar-DyGIcJd9.cjs.map +1 -0
  68. package/dist/_shared/sidebar-OT-xIguQ.js +548 -0
  69. package/dist/_shared/sidebar-OT-xIguQ.js.map +1 -0
  70. package/dist/_shared/table-BVWemr79.cjs +2 -0
  71. package/dist/_shared/table-BVWemr79.cjs.map +1 -0
  72. package/dist/_shared/table-WYSjfQRr.js +1377 -0
  73. package/dist/_shared/table-WYSjfQRr.js.map +1 -0
  74. package/dist/_shared/workspace-BkwsqTrc.cjs +2 -0
  75. package/dist/_shared/workspace-BkwsqTrc.cjs.map +1 -0
  76. package/dist/_shared/workspace-DpU1YG1t.js +357 -0
  77. package/dist/_shared/workspace-DpU1YG1t.js.map +1 -0
  78. package/dist/components/base/badge/index.cjs +1 -1
  79. package/dist/components/base/badge/index.js +1 -1
  80. package/dist/components/base/date-pickers/index.cjs +1 -1
  81. package/dist/components/base/date-pickers/index.js +2 -2
  82. package/dist/components/base/display/index.cjs +1 -1
  83. package/dist/components/base/display/index.js +2 -2
  84. package/dist/components/base/display/separator.d.ts +10 -1
  85. package/dist/components/base/display/separator.d.ts.map +1 -1
  86. package/dist/components/base/event-calendar/index.cjs +1 -1
  87. package/dist/components/base/event-calendar/index.js +1 -1
  88. package/dist/components/base/forms/index.cjs +1 -1
  89. package/dist/components/base/forms/index.js +2 -2
  90. package/dist/components/base/navigation/index.cjs +1 -1
  91. package/dist/components/base/navigation/index.js +1 -1
  92. package/dist/components/base/table/index.cjs +1 -1
  93. package/dist/components/base/table/index.js +1 -1
  94. package/dist/components/composed/admin/index.cjs +1 -1
  95. package/dist/components/composed/admin/index.js +3 -3
  96. package/dist/components/composed/ai/index.cjs +1 -1
  97. package/dist/components/composed/ai/index.js +4 -4
  98. package/dist/components/composed/cards/index.cjs +1 -1
  99. package/dist/components/composed/cards/index.js +3 -3
  100. package/dist/components/composed/commerce/index.cjs +1 -1
  101. package/dist/components/composed/commerce/index.js +4 -4
  102. package/dist/components/composed/dark-surfaces/index.cjs +1 -1
  103. package/dist/components/composed/dark-surfaces/index.js +2 -2
  104. package/dist/components/composed/data-display/index.cjs +1 -1
  105. package/dist/components/composed/data-display/index.js +1 -1
  106. package/dist/components/composed/navigation/index.cjs +1 -1
  107. package/dist/components/composed/navigation/index.js +1 -1
  108. package/dist/components/composed/timelines/index.cjs +1 -1
  109. package/dist/components/composed/timelines/index.js +1 -1
  110. package/dist/components/features/activities/index.cjs +1 -1
  111. package/dist/components/features/activities/index.js +1 -1
  112. package/dist/components/features/ai-chat/index.cjs +1 -1
  113. package/dist/components/features/ai-chat/index.js +2 -2
  114. package/dist/components/features/comments/index.cjs +1 -1
  115. package/dist/components/features/comments/index.js +2 -2
  116. package/dist/components/features/event-log/index.cjs +1 -1
  117. package/dist/components/features/event-log/index.js +2 -2
  118. package/dist/components/features/filters/index.cjs +1 -1
  119. package/dist/components/features/filters/index.js +2 -2
  120. package/dist/components/features/global-search/index.cjs +1 -1
  121. package/dist/components/features/global-search/index.js +1 -1
  122. package/dist/components/features/media-library/index.cjs +1 -1
  123. package/dist/components/features/media-library/index.js +3 -3
  124. package/dist/components/features/mentions/index.cjs +1 -1
  125. package/dist/components/features/mentions/index.js +1 -1
  126. package/dist/components/features/products/index.cjs +1 -1
  127. package/dist/components/features/products/index.js +5 -5
  128. package/dist/components/features/resource/index.cjs +1 -1
  129. package/dist/components/features/resource/index.js +2 -2
  130. package/dist/components/features/schema-form/index.cjs +1 -1
  131. package/dist/components/features/schema-form/index.js +2 -2
  132. package/dist/components/layout/auth/index.cjs +1 -1
  133. package/dist/components/layout/auth/index.js +1 -1
  134. package/dist/components/layout/header/index.cjs +1 -1
  135. package/dist/components/layout/header/index.js +1 -1
  136. package/dist/components/layout/hooks/index.cjs +1 -1
  137. package/dist/components/layout/hooks/index.js +1 -1
  138. package/dist/components/layout/index.cjs +1 -1
  139. package/dist/components/layout/index.js +7 -7
  140. package/dist/components/layout/page/index.cjs +1 -1
  141. package/dist/components/layout/page/index.js +1 -1
  142. package/dist/components/layout/settings/index.cjs +1 -1
  143. package/dist/components/layout/settings/index.js +1 -1
  144. package/dist/components/layout/sidebar/index.cjs +1 -1
  145. package/dist/components/layout/sidebar/index.js +2 -2
  146. package/dist/components/layout/workspace/index.cjs +1 -1
  147. package/dist/components/layout/workspace/index.js +1 -1
  148. package/dist/showcase/assets/AreaChart-DxDBymDt.js +6 -0
  149. package/dist/showcase/assets/CompositeItem-owAA4Ah3.js +1 -0
  150. package/dist/showcase/assets/CompositeRoot-DzHTtLBs.js +1 -0
  151. package/dist/showcase/assets/DialogTrigger-OUBMI353.js +1 -0
  152. package/dist/showcase/assets/LabelableContext-Cd9Gf7TR.js +1 -0
  153. package/dist/showcase/assets/PreviewLayout-X_NxjYOV.js +1 -0
  154. package/dist/showcase/assets/RadioGroup-BzveyiIV.js +1 -0
  155. package/dist/showcase/assets/ScrollAreaCorner-IZFF348L.js +1 -0
  156. package/dist/showcase/assets/Separator-CSYYEo-X.js +1 -0
  157. package/dist/showcase/assets/ToolbarRootContext-BYSKM0e8.js +1 -0
  158. package/dist/showcase/assets/accordion-B9VkLXiy.js +171 -0
  159. package/dist/showcase/assets/accordion-variants-g7lk5hEX.js +1 -0
  160. package/dist/showcase/assets/action-menu-CWIvuiLO.js +1 -0
  161. package/dist/showcase/assets/actions-BuwzXYEF.js +310 -0
  162. package/dist/showcase/assets/activities-BTBlr1G4.js +500 -0
  163. package/dist/showcase/assets/activities-feed-card-C5lcwUFk.js +1 -0
  164. package/dist/showcase/assets/admin-kbK6nUjx.js +140 -0
  165. package/dist/showcase/assets/ai-CKu9EGmA.js +207 -0
  166. package/dist/showcase/assets/ai-artifact-Bg1MFGeF.js +2 -0
  167. package/dist/showcase/assets/ai-chat-DEntRhJD.js +568 -0
  168. package/dist/showcase/assets/ai-elements-DyKRCWiS.js +387 -0
  169. package/dist/showcase/assets/ai-tool-call-DFrTelEX.js +1 -0
  170. package/dist/showcase/assets/alert-C0wSpBYn.js +93 -0
  171. package/dist/showcase/assets/alert-CZ4rgwPr.js +62 -0
  172. package/dist/showcase/assets/alert-WTKIdE4s.js +1 -0
  173. package/dist/showcase/assets/api-key-list-BnrUT9Uf.js +1 -0
  174. package/dist/showcase/assets/api-key-list-bQ6QzFhA.js +73 -0
  175. package/dist/showcase/assets/app-sidebar-B3veRbac.js +1 -0
  176. package/dist/showcase/assets/arrow-down-CEXJx115.js +1 -0
  177. package/dist/showcase/assets/arrow-left-Ca6ri5q0.js +1 -0
  178. package/dist/showcase/assets/arrow-right-a3STqWgx.js +1 -0
  179. package/dist/showcase/assets/arrow-up-CCU1MaGq.js +1 -0
  180. package/dist/showcase/assets/arrow-up-right-BDImqvM2.js +1 -0
  181. package/dist/showcase/assets/avatar-Bwgai0SK.js +67 -0
  182. package/dist/showcase/assets/avatar-DSmL52Us.js +57 -0
  183. package/dist/showcase/assets/avatar-kK9n1a25.js +1 -0
  184. package/dist/showcase/assets/avatar-nb7MgV_x.js +1 -0
  185. package/dist/showcase/assets/badge-CTGPRSXm.js +31 -0
  186. package/dist/showcase/assets/badge-check-zqoYYrVj.js +1 -0
  187. package/dist/showcase/assets/bell-D7HWGStL.js +1 -0
  188. package/dist/showcase/assets/boolean-indicator-CqwlV0cf.js +1 -0
  189. package/dist/showcase/assets/bot-Owx4SMiU.js +1 -0
  190. package/dist/showcase/assets/box-BeeoLlMd.js +1 -0
  191. package/dist/showcase/assets/braces-fzrExVIx.js +1 -0
  192. package/dist/showcase/assets/brain-Da2fsBjd.js +1 -0
  193. package/dist/showcase/assets/brand-Bo6uwdGf.js +36 -0
  194. package/dist/showcase/assets/breadcrumb-B-K-6dtd.js +1 -0
  195. package/dist/showcase/assets/breadcrumb-B6lR9Cq2.js +52 -0
  196. package/dist/showcase/assets/breadcrumbs-Bamog6P5.js +1 -0
  197. package/dist/showcase/assets/briefcase-DQjbh28E.js +1 -0
  198. package/dist/showcase/assets/building-2-DaQW5yJa.js +1 -0
  199. package/dist/showcase/assets/button-D3skvyQS.js +44 -0
  200. package/dist/showcase/assets/button-group-BYtbrhme.js +1 -0
  201. package/dist/showcase/assets/buttons-B3IkMmNQ.js +272 -0
  202. package/dist/showcase/assets/calendar-C4fCDK3O.js +1 -0
  203. package/dist/showcase/assets/calendar-CcwkVxCK.js +16 -0
  204. package/dist/showcase/assets/calendar-DBkwxV9H.js +1 -0
  205. package/dist/showcase/assets/calendar-days-BWed1W3Z.js +1 -0
  206. package/dist/showcase/assets/camera-BUoAyoZT.js +1 -0
  207. package/dist/showcase/assets/card-7DBPqWuv.js +1 -0
  208. package/dist/showcase/assets/card-ClwyNDHJ.js +188 -0
  209. package/dist/showcase/assets/card-primitives-BE1YpEQW.js +1 -0
  210. package/dist/showcase/assets/card-radio-group-1NMbocuG.js +1 -0
  211. package/dist/showcase/assets/cards-Bu8uaGSU.js +354 -0
  212. package/dist/showcase/assets/carousel-dTTRRSQg.js +449 -0
  213. package/dist/showcase/assets/cell-renderers-CcyBuUsC.js +1 -0
  214. package/dist/showcase/assets/chart-BSboeIO6.js +358 -0
  215. package/dist/showcase/assets/chart-column-CCzA6B9l.js +1 -0
  216. package/dist/showcase/assets/checkbox-CSdEPNT5.js +1 -0
  217. package/dist/showcase/assets/checkbox-CqNLi9Q3.js +1 -0
  218. package/dist/showcase/assets/chevron-down-C91gNQdT.js +1 -0
  219. package/dist/showcase/assets/chevron-left-SiAoYFSo.js +1 -0
  220. package/dist/showcase/assets/chevron-up-Beb1_ET_.js +1 -0
  221. package/dist/showcase/assets/chevrons-up-down-DaST4VKL.js +1 -0
  222. package/dist/showcase/assets/circle-D9KiRp8C.js +1 -0
  223. package/dist/showcase/assets/circle-alert-BQkAwFkl.js +1 -0
  224. package/dist/showcase/assets/circle-check-big-CN5YOJqq.js +1 -0
  225. package/dist/showcase/assets/circle-check-dqmKTiDe.js +1 -0
  226. package/dist/showcase/assets/circle-dot-B7LPN_0V.js +1 -0
  227. package/dist/showcase/assets/circle-question-mark-yTRkQO3d.js +1 -0
  228. package/dist/showcase/assets/circle-x-CW2dFcX-.js +1 -0
  229. package/dist/showcase/assets/clock-3-CXJ_JotW.js +1 -0
  230. package/dist/showcase/assets/clock-DUqvfazQ.js +1 -0
  231. package/dist/showcase/assets/code-xml-BmdQDeID.js +1 -0
  232. package/dist/showcase/assets/collapsible-C-WYhJxn.js +1 -0
  233. package/dist/showcase/assets/collapsible-CL37AlCX.js +27 -0
  234. package/dist/showcase/assets/collapsible-uGO5Rj8q.js +1 -0
  235. package/dist/showcase/assets/combobox-CFh5kUzj.js +685 -0
  236. package/dist/showcase/assets/command-CtpLaHjh.js +1 -0
  237. package/dist/showcase/assets/command-DSlK-QAE.js +1 -0
  238. package/dist/showcase/assets/comment-composer-Rr_a5tZQ.js +1 -0
  239. package/dist/showcase/assets/comment-item-Dme2o2KI.js +1 -0
  240. package/dist/showcase/assets/comments-CW2nz465.js +357 -0
  241. package/dist/showcase/assets/commerce-bwcq6oPn.js +267 -0
  242. package/dist/showcase/assets/composite-DMIR0vmP.js +1 -0
  243. package/dist/showcase/assets/conditional-rendering-Bk6AC76c.js +1 -0
  244. package/dist/showcase/assets/contact-card-BCXS9tWq.js +65 -0
  245. package/dist/showcase/assets/content-container-b1dC2caJ.js +1 -0
  246. package/dist/showcase/assets/copyable-BIABx-Vv.js +96 -0
  247. package/dist/showcase/assets/copyable-Ic9wzVaj.js +1 -0
  248. package/dist/showcase/assets/course-card-Bo5P3TYv.js +77 -0
  249. package/dist/showcase/assets/cpu-_VqU6yRO.js +1 -0
  250. package/dist/showcase/assets/credit-card-BbxO8xLo.js +1 -0
  251. package/dist/showcase/assets/css-variables-zqpBgnS1.js +1205 -0
  252. package/dist/showcase/assets/currency-Cjvt4F0b.js +149 -0
  253. package/dist/showcase/assets/dark-surfaces-CLwERt1f.js +90 -0
  254. package/dist/showcase/assets/data-view-AtyUp7b-.js +124 -0
  255. package/dist/showcase/assets/data-view-cnEmgP1C.js +4 -0
  256. package/dist/showcase/assets/database-TbVXEw7v.js +1 -0
  257. package/dist/showcase/assets/date-block-CDHemKnP.js +1 -0
  258. package/dist/showcase/assets/date-block-COb89Y_-.js +1 -0
  259. package/dist/showcase/assets/date-picker-CK8llBIN.js +1 -0
  260. package/dist/showcase/assets/date-pickers-DFfDnW9w.js +73 -0
  261. package/dist/showcase/assets/dense-info-CaFVDE90.js +106 -0
  262. package/dist/showcase/assets/design-system-consistency-CeSMuTuu.js +264 -0
  263. package/dist/showcase/assets/dialog-CRQNEK2K.js +1 -0
  264. package/dist/showcase/assets/dialog-CsCLDb0G.js +1 -0
  265. package/dist/showcase/assets/dialog-Qh3EHEKq.js +1 -0
  266. package/dist/showcase/assets/display-utilities-rP3hb4FK.js +4 -0
  267. package/dist/showcase/assets/display-utilities.examples-BwbvHOcx.js +309 -0
  268. package/dist/showcase/assets/dist-CbqRct9s.js +1 -0
  269. package/dist/showcase/assets/dist-iivamCjp.js +45 -0
  270. package/dist/showcase/assets/dollar-sign-COaRmdJE.js +1 -0
  271. package/dist/showcase/assets/download-yCcb4rfH.js +1 -0
  272. package/dist/showcase/assets/dropdown-menu-KoFNw-fX.js +1 -0
  273. package/dist/showcase/assets/dropzone-DLguWnmu.js +1 -0
  274. package/dist/showcase/assets/earth-TDRqTA4S.js +1 -0
  275. package/dist/showcase/assets/ellipsis-Q_fBbRE9.js +1 -0
  276. package/dist/showcase/assets/ellipsis-vertical-Bh8t3Z1g.js +1 -0
  277. package/dist/showcase/assets/empty-DvmDTSAj.js +1 -0
  278. package/dist/showcase/assets/empty-item-C3HP5nuw.js +49 -0
  279. package/dist/showcase/assets/empty-state-Dcin4cOt.js +190 -0
  280. package/dist/showcase/assets/empty-state-IV_GTNEI.js +1 -0
  281. package/dist/showcase/assets/enhanced-activities-BLf2gpes.js +357 -0
  282. package/dist/showcase/assets/enhanced-combobox-ClZcVnhv.js +1 -0
  283. package/dist/showcase/assets/esm-Cf6QQstQ.js +2 -0
  284. package/dist/showcase/assets/event-calendar-zrfI_3AM.js +138 -0
  285. package/dist/showcase/assets/event-log-D-_CViAw.js +330 -0
  286. package/dist/showcase/assets/example-6bZGEb3-.js +1 -0
  287. package/dist/showcase/assets/external-link-7ldgjHZM.js +1 -0
  288. package/dist/showcase/assets/eye-pXVkim6z.js +1 -0
  289. package/dist/showcase/assets/feature-announcement-CFcGj3ge.js +34 -0
  290. package/dist/showcase/assets/file-Bn9sAGaT.js +1 -0
  291. package/dist/showcase/assets/file-text-Cvxg6pjh.js +1 -0
  292. package/dist/showcase/assets/filter-layout-DqNRRzDU.js +1 -0
  293. package/dist/showcase/assets/filters-CQMI_T63.js +139 -0
  294. package/dist/showcase/assets/flag-vI_WJ-BU.js +1 -0
  295. package/dist/showcase/assets/folder-open-0AyKSRQS.js +1 -0
  296. package/dist/showcase/assets/form-field-BaBeXn7a.js +1 -0
  297. package/dist/showcase/assets/format-DLLMyN-3.js +1 -0
  298. package/dist/showcase/assets/forms-gPD-Caru.js +915 -0
  299. package/dist/showcase/assets/funnel-Ca9nWMHm.js +1 -0
  300. package/dist/showcase/assets/generic-AAssz0h7.js +1 -0
  301. package/dist/showcase/assets/getPseudoElementBounds-fbxSMOsb.js +1 -0
  302. package/dist/showcase/assets/gift-BC42Oxfz.js +1 -0
  303. package/dist/showcase/assets/giftcard-cards-CFKnYe0c.js +85 -0
  304. package/dist/showcase/assets/git-branch-B-nF8w-J.js +1 -0
  305. package/dist/showcase/assets/global-search-D6Gxw0G3.js +1 -0
  306. package/dist/showcase/assets/global-search-jsb_4idg.js +215 -0
  307. package/dist/showcase/assets/globe-C92uBSrO.js +1 -0
  308. package/dist/showcase/assets/gradient-card-D4ly60sD.js +58 -0
  309. package/dist/showcase/assets/hash-BShTbxlR.js +1 -0
  310. package/dist/showcase/assets/header-CSiNqg9Q.js +1 -0
  311. package/dist/showcase/assets/header-notifications-CpHeFPQF.js +1 -0
  312. package/dist/showcase/assets/heart-B3hXs7fr.js +1 -0
  313. package/dist/showcase/assets/hooks-CamAqFFh.js +220 -0
  314. package/dist/showcase/assets/house-4_CouE-Y.js +1 -0
  315. package/dist/showcase/assets/icon-badge-CePIZqWR.js +1 -0
  316. package/dist/showcase/assets/icon-badge-DSbvvnxh.js +37 -0
  317. package/dist/showcase/assets/image-BxbFIbVJ.js +1 -0
  318. package/dist/showcase/assets/inbox-BXab1SM6.js +1 -0
  319. package/dist/showcase/assets/index-BPUtPJjB.css +2 -0
  320. package/dist/showcase/assets/index-BjjNfnhP.js +10 -0
  321. package/dist/showcase/assets/inertValue-CZOzgsmF.js +1 -0
  322. package/dist/showcase/assets/info-DzqwCq93.js +1 -0
  323. package/dist/showcase/assets/inline-stat-D5ybpUh-.js +15 -0
  324. package/dist/showcase/assets/inline-stat-Dq34wv-6.js +1 -0
  325. package/dist/showcase/assets/input-C8OfUHCK.js +1 -0
  326. package/dist/showcase/assets/input-D34Ge3rh.js +1 -0
  327. package/dist/showcase/assets/input-group-BCPZ6Pwq.js +1 -0
  328. package/dist/showcase/assets/input-group-CySTANka.js +47 -0
  329. package/dist/showcase/assets/inputs-CnmHo_lj.js +155 -0
  330. package/dist/showcase/assets/installation-BPvseS46.js +134 -0
  331. package/dist/showcase/assets/invoice-header-C9JjJWQX.js +36 -0
  332. package/dist/showcase/assets/invoice-items-DB8tbCv9.js +36 -0
  333. package/dist/showcase/assets/invoice-mini-Q_PnimKL.js +14 -0
  334. package/dist/showcase/assets/invoice-table-CLDvpLib.js +30 -0
  335. package/dist/showcase/assets/isSameDay-D8bDebyL.js +1 -0
  336. package/dist/showcase/assets/isToday-XVjRuMtp.js +1 -0
  337. package/dist/showcase/assets/italic-Cm13b8qb.js +1 -0
  338. package/dist/showcase/assets/item-C07859JQ.js +1 -0
  339. package/dist/showcase/assets/item-LinnMxvu.js +1 -0
  340. package/dist/showcase/assets/item-i7ZUMs5t.js +140 -0
  341. package/dist/showcase/assets/kanban-CIMTpuN5.js +188 -0
  342. package/dist/showcase/assets/key-round-Bh7EzOyR.js +1 -0
  343. package/dist/showcase/assets/label-C3A4CjeG.js +1 -0
  344. package/dist/showcase/assets/languages-C37jhetw.js +1 -0
  345. package/dist/showcase/assets/layers-Lyr6p-Nt.js +1 -0
  346. package/dist/showcase/assets/layout-app-shell-BWAkl9gq.js +608 -0
  347. package/dist/showcase/assets/layout-auth-y1alnhc8.js +790 -0
  348. package/dist/showcase/assets/layout-containers-B6c-uvil.js +101 -0
  349. package/dist/showcase/assets/layout-header-DNhJHWNw.js +203 -0
  350. package/dist/showcase/assets/layout-page-CXU7CnQK.js +315 -0
  351. package/dist/showcase/assets/layout-primitives-StuFwfwh.js +34 -0
  352. package/dist/showcase/assets/layout-sidebar-D-QjnZPh.js +224 -0
  353. package/dist/showcase/assets/layout-users-D7KMzs3-.js +117 -0
  354. package/dist/showcase/assets/layout-workspace-Butr7CL5.js +191 -0
  355. package/dist/showcase/assets/lib-D5nOMXIt.js +1 -0
  356. package/dist/showcase/assets/list-checks-Cg9HZf4W.js +1 -0
  357. package/dist/showcase/assets/lock-Da21HhQx.js +1 -0
  358. package/dist/showcase/assets/lock-keyhole-DNTfa9e3.js +1 -0
  359. package/dist/showcase/assets/mail-Bamky-ti.js +1 -0
  360. package/dist/showcase/assets/mail-check-BfVYPC42.js +1 -0
  361. package/dist/showcase/assets/map-BTlWnRAQ.js +124 -0
  362. package/dist/showcase/assets/map-pin-BU2RBuvC.js +1 -0
  363. package/dist/showcase/assets/media-library-DJxgoGAF.js +699 -0
  364. package/dist/showcase/assets/mention-inline-suggestions-CbXVAvbK.js +1 -0
  365. package/dist/showcase/assets/mentions-kMT-Z3qU.js +138 -0
  366. package/dist/showcase/assets/menus-bhp_n9PT.js +171 -0
  367. package/dist/showcase/assets/message-square-DC5Bb9Zs.js +1 -0
  368. package/dist/showcase/assets/metadata-list-DGr729EW.js +286 -0
  369. package/dist/showcase/assets/metadata-list-DyjhZi6d.js +1 -0
  370. package/dist/showcase/assets/metric-DRDok6Ci.js +1 -0
  371. package/dist/showcase/assets/metric-bar-DZsH4Q3U.js +1 -0
  372. package/dist/showcase/assets/metric-grid-BlFXTrid.js +1 -0
  373. package/dist/showcase/assets/metric-trend-chip-oEihbEK8.js +1 -0
  374. package/dist/showcase/assets/metrics-analytics-bar-BovaXHQX.js +44 -0
  375. package/dist/showcase/assets/metrics-analytics-cards-CeX9Skmd.js +50 -0
  376. package/dist/showcase/assets/metrics-comparison-DFPSmREl.js +76 -0
  377. package/dist/showcase/assets/metrics-heatmap-CXzfZwe_.js +27 -0
  378. package/dist/showcase/assets/metrics-inline-badge-DQJaNpYH.js +17 -0
  379. package/dist/showcase/assets/metrics-kpi-row-BIpv8CPU.js +31 -0
  380. package/dist/showcase/assets/metrics-micro-grid-EOCkRI5Z.js +42 -0
  381. package/dist/showcase/assets/metrics-overview-BD4s9H2T.js +192 -0
  382. package/dist/showcase/assets/metrics-stat-cards-t7asN5nA.js +54 -0
  383. package/dist/showcase/assets/minus-Dr1iTc_q.js +1 -0
  384. package/dist/showcase/assets/money-display-B5_VqQC0.js +1 -0
  385. package/dist/showcase/assets/money-display-bU2_cVGX.js +1 -0
  386. package/dist/showcase/assets/month-year-picker-DVRuYbLm.js +1 -0
  387. package/dist/showcase/assets/navigation-DBKvJoe-.js +231 -0
  388. package/dist/showcase/assets/navigation-DOhfmtgy.js +90 -0
  389. package/dist/showcase/assets/navigation-extras-BkO2TZP7.js +43 -0
  390. package/dist/showcase/assets/notification-banner-CE1Ei_ZT.js +1 -0
  391. package/dist/showcase/assets/onboarding-checklist-Bf0aoBoa.js +119 -0
  392. package/dist/showcase/assets/overflow-tab-bar-B2RXtyMP.js +1 -0
  393. package/dist/showcase/assets/overlays-4E_sUgkz.js +408 -0
  394. package/dist/showcase/assets/overlays-ulNl-Vhr.js +159 -0
  395. package/dist/showcase/assets/overview-CgymfIBq.js +184 -0
  396. package/dist/showcase/assets/package-CADuUP1u.js +1 -0
  397. package/dist/showcase/assets/package-check-O7MD6XE_.js +1 -0
  398. package/dist/showcase/assets/page-GB6OIgID.js +1 -0
  399. package/dist/showcase/assets/page-action-button-Dpprot7y.js +1 -0
  400. package/dist/showcase/assets/page-header-2VEUPx67.js +1 -0
  401. package/dist/showcase/assets/pagination-BBuRtAX9.js +1 -0
  402. package/dist/showcase/assets/pagination-C4mt4Q4l.js +42 -0
  403. package/dist/showcase/assets/paperclip-Cmyh3Bhf.js +1 -0
  404. package/dist/showcase/assets/password-input-CgZj1niQ.js +1 -0
  405. package/dist/showcase/assets/pencil-CtdXjogr.js +1 -0
  406. package/dist/showcase/assets/phone-CAFMH1vV.js +1 -0
  407. package/dist/showcase/assets/placeholder-pattern-DHKm-uYV.js +1 -0
  408. package/dist/showcase/assets/plus-CN2dzUxL.js +1 -0
  409. package/dist/showcase/assets/popover-DILNXLWy.js +1 -0
  410. package/dist/showcase/assets/popover-menu-Bp08xxOf.js +1 -0
  411. package/dist/showcase/assets/popover-o1EO2yVS.js +1 -0
  412. package/dist/showcase/assets/products-CCLAbHBN.js +423 -0
  413. package/dist/showcase/assets/progress-BGna-ZmU.js +18 -0
  414. package/dist/showcase/assets/progress-BSYlNLIJ.js +1 -0
  415. package/dist/showcase/assets/progress-CZVy3LGB.js +1 -0
  416. package/dist/showcase/assets/props-table-X9St7Q4m.js +1 -0
  417. package/dist/showcase/assets/props.generated-f_jHBhPb.json +41753 -0
  418. package/dist/showcase/assets/qr-code-CEmKf9xU.js +1 -0
  419. package/dist/showcase/assets/quote-IH6r-rlY.js +1 -0
  420. package/dist/showcase/assets/receipt-m9rOe5lY.js +1 -0
  421. package/dist/showcase/assets/receipt-text-C0TobatH.js +1 -0
  422. package/dist/showcase/assets/refinement-guide-t9T7iAS2.js +189 -0
  423. package/dist/showcase/assets/refresh-cw-Dy_Nc4jA.js +1 -0
  424. package/dist/showcase/assets/resolveValueLabel-DR7LgQP5.js +1 -0
  425. package/dist/showcase/assets/resource-BcJ8O6uj.js +1 -0
  426. package/dist/showcase/assets/resource-_zDXez77.js +139 -0
  427. package/dist/showcase/assets/resource-selector-card-CCAEF-AT.js +43 -0
  428. package/dist/showcase/assets/rich-text-editor-BJG_ECJp.js +143 -0
  429. package/dist/showcase/assets/rich-text-editor-fbgVfyEH.js +124 -0
  430. package/dist/showcase/assets/rotate-ccw-CGuTkHQ3.js +1 -0
  431. package/dist/showcase/assets/route-C7EZ2Njy.js +1 -0
  432. package/dist/showcase/assets/save-fKrt-yFG.js +1 -0
  433. package/dist/showcase/assets/schema-form-k7TXeirD.js +327 -0
  434. package/dist/showcase/assets/scroll-area-CqNwdlI6.js +32 -0
  435. package/dist/showcase/assets/scroll-area-UVtlGOgx.js +1 -0
  436. package/dist/showcase/assets/section-DuBNJP4P.js +1 -0
  437. package/dist/showcase/assets/select-CINVEIWn.js +1 -0
  438. package/dist/showcase/assets/select-ZLaamXrm.js +1 -0
  439. package/dist/showcase/assets/send-DBvt_4jT.js +1 -0
  440. package/dist/showcase/assets/separator-BdBXRpc3.js +28 -0
  441. package/dist/showcase/assets/separator-CkJjJQWW.js +1 -0
  442. package/dist/showcase/assets/separator-CxOeStjL.js +1 -0
  443. package/dist/showcase/assets/separator-O-VQMSf_.js +1 -0
  444. package/dist/showcase/assets/settings-2-BWjMVlyS.js +1 -0
  445. package/dist/showcase/assets/settings-D9Z79UcG.js +1 -0
  446. package/dist/showcase/assets/sheet-CK9C6r7_.js +1 -0
  447. package/dist/showcase/assets/shield-BboB3Zlo.js +1 -0
  448. package/dist/showcase/assets/shield-alert-CAAobStl.js +1 -0
  449. package/dist/showcase/assets/shield-check-Rfyzz9bK.js +1 -0
  450. package/dist/showcase/assets/shopping-bag-5hLD82YW.js +1 -0
  451. package/dist/showcase/assets/showcase-DhOQXB5E.js +132 -0
  452. package/dist/showcase/assets/sidebar-ZTUACc0t.js +1 -0
  453. package/dist/showcase/assets/sidebar.context-BiNOpG5W.js +1 -0
  454. package/dist/showcase/assets/skeleton-BZUSoHbk.js +1 -0
  455. package/dist/showcase/assets/skeleton-BZkYzAdq.js +1 -0
  456. package/dist/showcase/assets/skeleton-CrOp8tx3.js +29 -0
  457. package/dist/showcase/assets/skeleton-P5GXAj4U.js +1 -0
  458. package/dist/showcase/assets/slider-zlE7nLrp.js +1 -0
  459. package/dist/showcase/assets/smart-card-OExZHSsj.js +1 -0
  460. package/dist/showcase/assets/sonner-eMphKM9E.js +22 -0
  461. package/dist/showcase/assets/sortable.esm-CM9VD5N4.js +5 -0
  462. package/dist/showcase/assets/sparkles-CIB5irID.js +1 -0
  463. package/dist/showcase/assets/spinner-11-kP-Ob.js +1 -0
  464. package/dist/showcase/assets/spinner-D4G5TFSm.js +49 -0
  465. package/dist/showcase/assets/spinner-DKGukuFV.js +30 -0
  466. package/dist/showcase/assets/square-pen-zflKy9oX.js +1 -0
  467. package/dist/showcase/assets/stacked-avatars-Cve1Y6GY.js +1 -0
  468. package/dist/showcase/assets/star-DleXDkCp.js +1 -0
  469. package/dist/showcase/assets/startOfDay-TDP2erzM.js +1 -0
  470. package/dist/showcase/assets/styles-BKlX_Ipc.js +1 -0
  471. package/dist/showcase/assets/suggestions-Dt2hm1NY.js +126 -0
  472. package/dist/showcase/assets/switch-DAPAgJbv.js +1 -0
  473. package/dist/showcase/assets/switch-fQpP2tJl.js +1 -0
  474. package/dist/showcase/assets/sync-BRcK160D.js +124 -0
  475. package/dist/showcase/assets/table-Dhmbe1yN.js +686 -0
  476. package/dist/showcase/assets/table-actions-GGrPOQcv.js +1 -0
  477. package/dist/showcase/assets/table-v0Eu5yZn.js +1 -0
  478. package/dist/showcase/assets/tabs-DmaXB1aF.js +19 -0
  479. package/dist/showcase/assets/tabs-vbNIJ-eo.js +1 -0
  480. package/dist/showcase/assets/tags-input-Bms_Q5CE.js +1 -0
  481. package/dist/showcase/assets/text-button-gvJCzaXS.js +1 -0
  482. package/dist/showcase/assets/text-link-DkByVX4d.js +1 -0
  483. package/dist/showcase/assets/textarea-B6Ho29y3.js +1 -0
  484. package/dist/showcase/assets/textarea-JCb0yhZ1.js +1 -0
  485. package/dist/showcase/assets/throttle-alert-CPU-u6Rs.js +1 -0
  486. package/dist/showcase/assets/timelines-Bw7mvAdx.js +200 -0
  487. package/dist/showcase/assets/toggle-group-jlIGX1zh.js +1 -0
  488. package/dist/showcase/assets/toggles-DV6V9vj-.js +71 -0
  489. package/dist/showcase/assets/toggles-group-C-Y3dG8q.js +32 -0
  490. package/dist/showcase/assets/tooltip-CDtPyNOv.js +31 -0
  491. package/dist/showcase/assets/trash-2-CXRm3lMl.js +1 -0
  492. package/dist/showcase/assets/trending-up-Bcyp9cw8.js +1 -0
  493. package/dist/showcase/assets/truck-DVgzuKLP.js +1 -0
  494. package/dist/showcase/assets/typography-BKPf4j85.js +223 -0
  495. package/dist/showcase/assets/ui-badge-D-Ud2MES.js +28 -0
  496. package/dist/showcase/assets/ui-card-gGqI2cfr.js +30 -0
  497. package/dist/showcase/assets/ui-table-Bqcab_kq.js +42 -0
  498. package/dist/showcase/assets/upload-tray-BFh6twLE.js +138 -0
  499. package/dist/showcase/assets/use-layout-link-e9jr981L.js +1 -0
  500. package/dist/showcase/assets/useAriaLabelledBy-ByBTPUi3.js +1 -0
  501. package/dist/showcase/assets/useCollapsiblePanel-Bx_-SRtw.js +1 -0
  502. package/dist/showcase/assets/useCompositeItem-Dmih9c3W.js +1 -0
  503. package/dist/showcase/assets/useCompositeListItem-C0QJgAKb.js +1 -0
  504. package/dist/showcase/assets/useLabelableId-COfjI9qt.js +1 -0
  505. package/dist/showcase/assets/useOpenInteractionType-CRefmlni.js +1 -0
  506. package/dist/showcase/assets/useRender-Bgu76j1u.js +1 -0
  507. package/dist/showcase/assets/useTriggerFocusGuards-B2fPZeWf.js +1 -0
  508. package/dist/showcase/assets/useValueChanged-CNjJ-spo.js +1 -0
  509. package/dist/showcase/assets/user-CmkLnMh9.js +1 -0
  510. package/dist/showcase/assets/user-plus-3CGFNUf0.js +1 -0
  511. package/dist/showcase/assets/users-CuO8W7wn.js +1 -0
  512. package/dist/showcase/assets/vendor-profile-HLMsE22G.js +37 -0
  513. package/dist/showcase/assets/video-CoHnn0fp.js +1 -0
  514. package/dist/showcase/assets/visually-hidden-D5bPAL7Q.js +1 -0
  515. package/dist/showcase/assets/wrench-C93IxaGt.js +1 -0
  516. package/dist/showcase/assets/x-BJDvVLAz.js +1 -0
  517. package/dist/showcase/assets/zap-DYD_Ljkv.js +1 -0
  518. package/dist/showcase/index.html +2 -2
  519. package/dist/style.css +1 -1
  520. package/package.json +1 -1
  521. package/src/css/themes/shadcn.default.css +2 -2
  522. package/dist/_shared/ai-artifact-BylloxGO.js +0 -1099
  523. package/dist/_shared/ai-artifact-BylloxGO.js.map +0 -1
  524. package/dist/_shared/ai-artifact-DfT97Mpi.cjs +0 -3
  525. package/dist/_shared/ai-artifact-DfT97Mpi.cjs.map +0 -1
  526. package/dist/_shared/auth-1Ht9Kevx.js +0 -643
  527. package/dist/_shared/auth-1Ht9Kevx.js.map +0 -1
  528. package/dist/_shared/auth-DTN6sFXM.cjs +0 -2
  529. package/dist/_shared/auth-DTN6sFXM.cjs.map +0 -1
  530. package/dist/_shared/badge-LSAgdmGt.cjs +0 -2
  531. package/dist/_shared/badge-LSAgdmGt.cjs.map +0 -1
  532. package/dist/_shared/badge-nZ2zbAV4.js +0 -110
  533. package/dist/_shared/badge-nZ2zbAV4.js.map +0 -1
  534. package/dist/_shared/comments-B_WKQUol.js +0 -952
  535. package/dist/_shared/comments-B_WKQUol.js.map +0 -1
  536. package/dist/_shared/comments-DMHMNObS.cjs +0 -2
  537. package/dist/_shared/comments-DMHMNObS.cjs.map +0 -1
  538. package/dist/_shared/data-display-4E_irfF2.js +0 -1878
  539. package/dist/_shared/data-display-4E_irfF2.js.map +0 -1
  540. package/dist/_shared/data-display-BPn-7qFO.cjs +0 -2
  541. package/dist/_shared/data-display-BPn-7qFO.cjs.map +0 -1
  542. package/dist/_shared/date-picker-CvqLnlxm.js +0 -1361
  543. package/dist/_shared/date-picker-CvqLnlxm.js.map +0 -1
  544. package/dist/_shared/date-picker-D83fCi2g.cjs +0 -2
  545. package/dist/_shared/date-picker-D83fCi2g.cjs.map +0 -1
  546. package/dist/_shared/date-pickers-C6ku2BPp.cjs +0 -2
  547. package/dist/_shared/date-pickers-C6ku2BPp.cjs.map +0 -1
  548. package/dist/_shared/date-pickers-RdbwIhdY.js +0 -329
  549. package/dist/_shared/date-pickers-RdbwIhdY.js.map +0 -1
  550. package/dist/_shared/display-DFVeSuWL.js +0 -986
  551. package/dist/_shared/display-DFVeSuWL.js.map +0 -1
  552. package/dist/_shared/display-Lr3xTd4a.cjs +0 -2
  553. package/dist/_shared/display-Lr3xTd4a.cjs.map +0 -1
  554. package/dist/_shared/forms-BA8Aa_fi.js +0 -3534
  555. package/dist/_shared/forms-BA8Aa_fi.js.map +0 -1
  556. package/dist/_shared/forms-CNjjdFcf.cjs +0 -2
  557. package/dist/_shared/forms-CNjjdFcf.cjs.map +0 -1
  558. package/dist/_shared/header-BEsz1_so.cjs +0 -2
  559. package/dist/_shared/header-BEsz1_so.cjs.map +0 -1
  560. package/dist/_shared/header-bJx8z6zT.js +0 -447
  561. package/dist/_shared/header-bJx8z6zT.js.map +0 -1
  562. package/dist/_shared/hooks-gRgVhyY2.js +0 -95
  563. package/dist/_shared/hooks-gRgVhyY2.js.map +0 -1
  564. package/dist/_shared/hooks-nFiRfUxX.cjs +0 -2
  565. package/dist/_shared/hooks-nFiRfUxX.cjs.map +0 -1
  566. package/dist/_shared/layout-C_dYiKtE.cjs +0 -2
  567. package/dist/_shared/layout-C_dYiKtE.cjs.map +0 -1
  568. package/dist/_shared/layout-nigj488k.js +0 -268
  569. package/dist/_shared/layout-nigj488k.js.map +0 -1
  570. package/dist/_shared/mentions-BE51BNeq.cjs +0 -2
  571. package/dist/_shared/mentions-BE51BNeq.cjs.map +0 -1
  572. package/dist/_shared/mentions-CBhP29St.js +0 -506
  573. package/dist/_shared/mentions-CBhP29St.js.map +0 -1
  574. package/dist/_shared/navigation-CWK_YQ5Y.js +0 -436
  575. package/dist/_shared/navigation-CWK_YQ5Y.js.map +0 -1
  576. package/dist/_shared/navigation-DTBMb7-M.cjs +0 -2
  577. package/dist/_shared/navigation-DTBMb7-M.cjs.map +0 -1
  578. package/dist/_shared/settings-D-HAOE3R.js +0 -143
  579. package/dist/_shared/settings-D-HAOE3R.js.map +0 -1
  580. package/dist/_shared/settings-DkL3bOk0.cjs +0 -2
  581. package/dist/_shared/settings-DkL3bOk0.cjs.map +0 -1
  582. package/dist/_shared/sidebar-BTyx7ipN.cjs +0 -2
  583. package/dist/_shared/sidebar-BTyx7ipN.cjs.map +0 -1
  584. package/dist/_shared/sidebar-DkBNualh.js +0 -548
  585. package/dist/_shared/sidebar-DkBNualh.js.map +0 -1
  586. package/dist/_shared/table-Cq0jkSm5.js +0 -1377
  587. package/dist/_shared/table-Cq0jkSm5.js.map +0 -1
  588. package/dist/_shared/table-GqTKCC8F.cjs +0 -2
  589. package/dist/_shared/table-GqTKCC8F.cjs.map +0 -1
  590. package/dist/_shared/workspace-5UId04M9.js +0 -357
  591. package/dist/_shared/workspace-5UId04M9.js.map +0 -1
  592. package/dist/_shared/workspace-BMws_rFf.cjs +0 -2
  593. package/dist/_shared/workspace-BMws_rFf.cjs.map +0 -1
  594. package/dist/showcase/assets/AreaChart-oKO7Ng_P.js +0 -6
  595. package/dist/showcase/assets/CompositeItem-CK7jBYU8.js +0 -1
  596. package/dist/showcase/assets/CompositeRoot-_AuToqhT.js +0 -1
  597. package/dist/showcase/assets/DialogTrigger-C44ZZXQ9.js +0 -1
  598. package/dist/showcase/assets/LabelableContext-DLVZlnur.js +0 -1
  599. package/dist/showcase/assets/PreviewLayout-Oik7TDHN.js +0 -1
  600. package/dist/showcase/assets/RadioGroup-DeYb8CGE.js +0 -1
  601. package/dist/showcase/assets/ScrollAreaCorner-BZlE_Bil.js +0 -1
  602. package/dist/showcase/assets/Separator-uiIktHzk.js +0 -1
  603. package/dist/showcase/assets/ToolbarRootContext-CEzj5dKk.js +0 -1
  604. package/dist/showcase/assets/accordion-B_wg_YOp.js +0 -171
  605. package/dist/showcase/assets/accordion-variants-O6U7E38x.js +0 -1
  606. package/dist/showcase/assets/action-menu-D_wGvb_o.js +0 -1
  607. package/dist/showcase/assets/actions-u4Fl4zm1.js +0 -310
  608. package/dist/showcase/assets/activities-C6iITHzB.js +0 -500
  609. package/dist/showcase/assets/activities-feed-card-OpYs16UV.js +0 -1
  610. package/dist/showcase/assets/admin-Bq15E5Wd.js +0 -140
  611. package/dist/showcase/assets/ai-DcUzGTlb.js +0 -207
  612. package/dist/showcase/assets/ai-artifact-BUAu1_jV.js +0 -2
  613. package/dist/showcase/assets/ai-chat-C6OWWBqh.js +0 -568
  614. package/dist/showcase/assets/ai-elements-CCe4Aqj_.js +0 -387
  615. package/dist/showcase/assets/ai-tool-call-B_NF1ePn.js +0 -1
  616. package/dist/showcase/assets/alert-B4VWkFPE.js +0 -1
  617. package/dist/showcase/assets/alert-BDIqciKo.js +0 -62
  618. package/dist/showcase/assets/alert-jvCEGWe6.js +0 -93
  619. package/dist/showcase/assets/api-key-list-BH8mde9A.js +0 -1
  620. package/dist/showcase/assets/api-key-list-CA6O3hsc.js +0 -73
  621. package/dist/showcase/assets/app-sidebar-DsMTwSAB.js +0 -1
  622. package/dist/showcase/assets/arrow-down-BzPC0rON.js +0 -1
  623. package/dist/showcase/assets/arrow-left-DNehZvF-.js +0 -1
  624. package/dist/showcase/assets/arrow-right-CKIgWncF.js +0 -1
  625. package/dist/showcase/assets/arrow-up-YjujZi8v.js +0 -1
  626. package/dist/showcase/assets/arrow-up-right-KnVxFmw9.js +0 -1
  627. package/dist/showcase/assets/avatar-BBLri7tX.js +0 -57
  628. package/dist/showcase/assets/avatar-BeFx8JQd.js +0 -1
  629. package/dist/showcase/assets/avatar-CFWUZzaF.js +0 -67
  630. package/dist/showcase/assets/avatar-D6exHRSK.js +0 -1
  631. package/dist/showcase/assets/badge-check-BfY3RIjR.js +0 -1
  632. package/dist/showcase/assets/badge-jGj2HQsg.js +0 -31
  633. package/dist/showcase/assets/bell-CTDSIOv8.js +0 -1
  634. package/dist/showcase/assets/boolean-indicator-C1u7OFcR.js +0 -1
  635. package/dist/showcase/assets/bot-D-iqtYiQ.js +0 -1
  636. package/dist/showcase/assets/box-DxjjLEh2.js +0 -1
  637. package/dist/showcase/assets/braces-B6XLlZwJ.js +0 -1
  638. package/dist/showcase/assets/brain-BdNpswBH.js +0 -1
  639. package/dist/showcase/assets/brand-C6srYuIa.js +0 -36
  640. package/dist/showcase/assets/breadcrumb-BaeV7C4t.js +0 -52
  641. package/dist/showcase/assets/breadcrumb-jKu4EUFo.js +0 -1
  642. package/dist/showcase/assets/breadcrumbs-D7vYX_5y.js +0 -1
  643. package/dist/showcase/assets/briefcase-cs9wyoxL.js +0 -1
  644. package/dist/showcase/assets/building-2-rcMEYcbf.js +0 -1
  645. package/dist/showcase/assets/button-group-D1oXfasP.js +0 -1
  646. package/dist/showcase/assets/button-oBRwhAhs.js +0 -44
  647. package/dist/showcase/assets/buttons-D_SDu9w3.js +0 -272
  648. package/dist/showcase/assets/calendar-CGTiVckW.js +0 -1
  649. package/dist/showcase/assets/calendar-ChLkVME0.js +0 -16
  650. package/dist/showcase/assets/calendar-CjMPvWfI.js +0 -1
  651. package/dist/showcase/assets/calendar-days-CNom8Y38.js +0 -1
  652. package/dist/showcase/assets/camera-D0rjOOcs.js +0 -1
  653. package/dist/showcase/assets/card-CYz4UxYz.js +0 -1
  654. package/dist/showcase/assets/card-D9updr3B.js +0 -188
  655. package/dist/showcase/assets/card-primitives-BQ0hSEWX.js +0 -1
  656. package/dist/showcase/assets/card-radio-group-CrNG04Bl.js +0 -1
  657. package/dist/showcase/assets/cards-D4Lw-AI6.js +0 -354
  658. package/dist/showcase/assets/carousel-C6Mmapzw.js +0 -449
  659. package/dist/showcase/assets/cell-renderers-BF80Z3jW.js +0 -1
  660. package/dist/showcase/assets/chart-BHgMfUB5.js +0 -358
  661. package/dist/showcase/assets/chart-column-CE_VhlUz.js +0 -1
  662. package/dist/showcase/assets/checkbox-CDLT09vU.js +0 -1
  663. package/dist/showcase/assets/checkbox-Dj24Tegr.js +0 -1
  664. package/dist/showcase/assets/chevron-down-1GeJ4hOO.js +0 -1
  665. package/dist/showcase/assets/chevron-left-wqlWv2Qy.js +0 -1
  666. package/dist/showcase/assets/chevron-up-CZAm-2rZ.js +0 -1
  667. package/dist/showcase/assets/chevrons-up-down-DgysGYWR.js +0 -1
  668. package/dist/showcase/assets/circle-C9Ooo8Lv.js +0 -1
  669. package/dist/showcase/assets/circle-alert-C6XBfkf2.js +0 -1
  670. package/dist/showcase/assets/circle-check-DvCYlVmL.js +0 -1
  671. package/dist/showcase/assets/circle-check-big-C8o9clAE.js +0 -1
  672. package/dist/showcase/assets/circle-dot-BoYf3vOR.js +0 -1
  673. package/dist/showcase/assets/circle-question-mark-DYPX0qe9.js +0 -1
  674. package/dist/showcase/assets/circle-x-GosnT0l7.js +0 -1
  675. package/dist/showcase/assets/clock-3-DklFhayq.js +0 -1
  676. package/dist/showcase/assets/clock-BvwTkk1w.js +0 -1
  677. package/dist/showcase/assets/code-xml-AGOwtN8Z.js +0 -1
  678. package/dist/showcase/assets/collapsible-CBkbr3ho.js +0 -1
  679. package/dist/showcase/assets/collapsible-CmY1SA28.js +0 -27
  680. package/dist/showcase/assets/collapsible-DfDnQ_t_.js +0 -1
  681. package/dist/showcase/assets/combobox-BsZQo7hF.js +0 -685
  682. package/dist/showcase/assets/command-B0Q84gg6.js +0 -1
  683. package/dist/showcase/assets/command-BtADdA65.js +0 -1
  684. package/dist/showcase/assets/comment-composer-BmBnkba9.js +0 -1
  685. package/dist/showcase/assets/comment-item-y5mTfSmU.js +0 -1
  686. package/dist/showcase/assets/comments-BuYiGPxI.js +0 -357
  687. package/dist/showcase/assets/commerce-21Ef_rsW.js +0 -267
  688. package/dist/showcase/assets/composite-fKT6fZFs.js +0 -1
  689. package/dist/showcase/assets/conditional-rendering-DsTG0sOE.js +0 -1
  690. package/dist/showcase/assets/contact-card-S8koA9Sr.js +0 -65
  691. package/dist/showcase/assets/content-container-B4gW5fmA.js +0 -1
  692. package/dist/showcase/assets/copyable-D2xL2rMm.js +0 -96
  693. package/dist/showcase/assets/copyable-gLrmPayI.js +0 -1
  694. package/dist/showcase/assets/course-card-B8eEvF7a.js +0 -77
  695. package/dist/showcase/assets/cpu-Cp1On3tr.js +0 -1
  696. package/dist/showcase/assets/credit-card-QbZMZB90.js +0 -1
  697. package/dist/showcase/assets/css-variables-BXICo9fV.js +0 -1205
  698. package/dist/showcase/assets/currency-D2MSLjLt.js +0 -149
  699. package/dist/showcase/assets/dark-surfaces-CJsxuvQU.js +0 -90
  700. package/dist/showcase/assets/data-view-syhKhdz9.js +0 -124
  701. package/dist/showcase/assets/data-view-znnAeb6b.js +0 -4
  702. package/dist/showcase/assets/database-isLkCvDd.js +0 -1
  703. package/dist/showcase/assets/date-block-BDn9lGVM.js +0 -1
  704. package/dist/showcase/assets/date-block-CqRL1xfo.js +0 -1
  705. package/dist/showcase/assets/date-picker-DNcmSgQk.js +0 -1
  706. package/dist/showcase/assets/date-pickers-3lQUDDS7.js +0 -73
  707. package/dist/showcase/assets/dense-info-CfvqiIpM.js +0 -106
  708. package/dist/showcase/assets/design-system-consistency-C3yRhKwF.js +0 -264
  709. package/dist/showcase/assets/dialog-DiAkrPHO.js +0 -1
  710. package/dist/showcase/assets/dialog-feUFM03m.js +0 -1
  711. package/dist/showcase/assets/dialog-ruVOqJnB.js +0 -1
  712. package/dist/showcase/assets/display-utilities-SPJxlrkp.js +0 -4
  713. package/dist/showcase/assets/display-utilities.examples-ByRydMl0.js +0 -302
  714. package/dist/showcase/assets/dist-C9DVZddl.js +0 -45
  715. package/dist/showcase/assets/dist-DNARKM_B.js +0 -1
  716. package/dist/showcase/assets/dollar-sign-CUDuWyun.js +0 -1
  717. package/dist/showcase/assets/download-CIbh9VUU.js +0 -1
  718. package/dist/showcase/assets/dropdown-menu-MoIAG0ES.js +0 -1
  719. package/dist/showcase/assets/dropzone-D0kHIUuh.js +0 -1
  720. package/dist/showcase/assets/earth-BpNTeF25.js +0 -1
  721. package/dist/showcase/assets/ellipsis-B9w0cuoH.js +0 -1
  722. package/dist/showcase/assets/ellipsis-vertical-DHbOsjTF.js +0 -1
  723. package/dist/showcase/assets/empty-DvYVgcNF.js +0 -1
  724. package/dist/showcase/assets/empty-item-oFM5kPCp.js +0 -49
  725. package/dist/showcase/assets/empty-state-DTq86muv.js +0 -1
  726. package/dist/showcase/assets/empty-state-De7XCht-.js +0 -190
  727. package/dist/showcase/assets/enhanced-activities--XHjx99M.js +0 -357
  728. package/dist/showcase/assets/enhanced-combobox-CX_mTkei.js +0 -1
  729. package/dist/showcase/assets/esm-XXqBjGGF.js +0 -2
  730. package/dist/showcase/assets/event-calendar-zTiCWOF5.js +0 -138
  731. package/dist/showcase/assets/event-log-C_zSlY6y.js +0 -330
  732. package/dist/showcase/assets/example-Cv05rz75.js +0 -1
  733. package/dist/showcase/assets/external-link-DaR-AMyf.js +0 -1
  734. package/dist/showcase/assets/eye-CDSbB0kZ.js +0 -1
  735. package/dist/showcase/assets/feature-announcement-DJ26ZDVB.js +0 -34
  736. package/dist/showcase/assets/file-DPSK5cGC.js +0 -1
  737. package/dist/showcase/assets/file-text-BBWpAppG.js +0 -1
  738. package/dist/showcase/assets/filter-layout-CZRGcd6Z.js +0 -1
  739. package/dist/showcase/assets/filters-Bn7hYUeq.js +0 -139
  740. package/dist/showcase/assets/flag-BRs-GTCx.js +0 -1
  741. package/dist/showcase/assets/folder-open-DnFjlB3X.js +0 -1
  742. package/dist/showcase/assets/form-field-SW-Yp7H7.js +0 -1
  743. package/dist/showcase/assets/format-Bki5m7M3.js +0 -1
  744. package/dist/showcase/assets/forms-CAUL2gGq.js +0 -915
  745. package/dist/showcase/assets/funnel-D6g2Suhd.js +0 -1
  746. package/dist/showcase/assets/generic-CU6JNqKO.js +0 -1
  747. package/dist/showcase/assets/getPseudoElementBounds-yqDwWA_y.js +0 -1
  748. package/dist/showcase/assets/gift-B2Qp9Vqt.js +0 -1
  749. package/dist/showcase/assets/giftcard-cards-Dk0DYoN2.js +0 -85
  750. package/dist/showcase/assets/git-branch-CPtvCNGc.js +0 -1
  751. package/dist/showcase/assets/global-search-D1ow01VA.js +0 -1
  752. package/dist/showcase/assets/global-search-DQR2AgDO.js +0 -215
  753. package/dist/showcase/assets/globe-BiZgUZFZ.js +0 -1
  754. package/dist/showcase/assets/gradient-card-D5isLy3_.js +0 -58
  755. package/dist/showcase/assets/hash-NJ5ohGOa.js +0 -1
  756. package/dist/showcase/assets/header-Df9uYSSH.js +0 -1
  757. package/dist/showcase/assets/header-notifications-sPR5NuON.js +0 -1
  758. package/dist/showcase/assets/heart-C4t7PVKW.js +0 -1
  759. package/dist/showcase/assets/hooks-0TKg0ZAK.js +0 -220
  760. package/dist/showcase/assets/house-CuLXFtjd.js +0 -1
  761. package/dist/showcase/assets/icon-badge-Cr6DD-_7.js +0 -1
  762. package/dist/showcase/assets/icon-badge-DMdMSSRL.js +0 -37
  763. package/dist/showcase/assets/image-DYjJaO0i.js +0 -1
  764. package/dist/showcase/assets/inbox-DGF8FgvV.js +0 -1
  765. package/dist/showcase/assets/index-ATou_nFA.js +0 -10
  766. package/dist/showcase/assets/index-C8U-r6l7.css +0 -2
  767. package/dist/showcase/assets/inertValue-CBi0sj8C.js +0 -1
  768. package/dist/showcase/assets/info-DLaTRPUT.js +0 -1
  769. package/dist/showcase/assets/inline-stat-DGpunTNF.js +0 -1
  770. package/dist/showcase/assets/inline-stat-rUaaOSmR.js +0 -15
  771. package/dist/showcase/assets/input-Cmrgo51H.js +0 -1
  772. package/dist/showcase/assets/input-CnmnWnGb.js +0 -1
  773. package/dist/showcase/assets/input-group-BwujFvXM.js +0 -1
  774. package/dist/showcase/assets/input-group-DvXgZtra.js +0 -47
  775. package/dist/showcase/assets/inputs-CjzW_R8z.js +0 -155
  776. package/dist/showcase/assets/installation-2dW-rmF2.js +0 -134
  777. package/dist/showcase/assets/invoice-header-DeWxMKCe.js +0 -36
  778. package/dist/showcase/assets/invoice-items-Dxb95w0e.js +0 -36
  779. package/dist/showcase/assets/invoice-mini-EMzCkmR7.js +0 -14
  780. package/dist/showcase/assets/invoice-table-ClWJaclJ.js +0 -30
  781. package/dist/showcase/assets/isSameDay-BNPzVySj.js +0 -1
  782. package/dist/showcase/assets/isToday-D6n7oLej.js +0 -1
  783. package/dist/showcase/assets/italic-B8w3dpYw.js +0 -1
  784. package/dist/showcase/assets/item-B8_dwOlT.js +0 -1
  785. package/dist/showcase/assets/item-Baq-Mmy2.js +0 -1
  786. package/dist/showcase/assets/item-BtMuqGwy.js +0 -140
  787. package/dist/showcase/assets/kanban-B-QxvKMg.js +0 -188
  788. package/dist/showcase/assets/key-round-CrBIyzIa.js +0 -1
  789. package/dist/showcase/assets/label-VWe_nbHh.js +0 -1
  790. package/dist/showcase/assets/languages-N0uGt5nC.js +0 -1
  791. package/dist/showcase/assets/layers-DEZvT5cX.js +0 -1
  792. package/dist/showcase/assets/layout-app-shell-T9UqKX2o.js +0 -608
  793. package/dist/showcase/assets/layout-auth-IVC4DuU3.js +0 -790
  794. package/dist/showcase/assets/layout-containers-naBpuH05.js +0 -101
  795. package/dist/showcase/assets/layout-header-9i_7ygKU.js +0 -203
  796. package/dist/showcase/assets/layout-page-CrEUiJpW.js +0 -315
  797. package/dist/showcase/assets/layout-primitives-DPrVHpu3.js +0 -34
  798. package/dist/showcase/assets/layout-sidebar-D7z6-kPu.js +0 -224
  799. package/dist/showcase/assets/layout-users-Cov9D84d.js +0 -117
  800. package/dist/showcase/assets/layout-workspace-Czlmi8gY.js +0 -191
  801. package/dist/showcase/assets/lib-DNMH46Rn.js +0 -1
  802. package/dist/showcase/assets/list-checks-DygDRIGi.js +0 -1
  803. package/dist/showcase/assets/lock-DqEahakB.js +0 -1
  804. package/dist/showcase/assets/lock-keyhole-CETEK3R0.js +0 -1
  805. package/dist/showcase/assets/mail-LKhBlrEc.js +0 -1
  806. package/dist/showcase/assets/mail-check-BOTjWQJf.js +0 -1
  807. package/dist/showcase/assets/map-0vJT2r8C.js +0 -124
  808. package/dist/showcase/assets/map-pin-D0qrpDJI.js +0 -1
  809. package/dist/showcase/assets/media-library-Bp99WaS9.js +0 -699
  810. package/dist/showcase/assets/mention-inline-suggestions-mlV7LRvD.js +0 -1
  811. package/dist/showcase/assets/mentions-Cmd1zxOR.js +0 -138
  812. package/dist/showcase/assets/menus-CtjFPoDr.js +0 -171
  813. package/dist/showcase/assets/message-square-BXyvikcZ.js +0 -1
  814. package/dist/showcase/assets/metadata-list-DLUBcy7E.js +0 -286
  815. package/dist/showcase/assets/metadata-list-F3bWXtZB.js +0 -1
  816. package/dist/showcase/assets/metric-CXPRptlh.js +0 -1
  817. package/dist/showcase/assets/metric-bar-BY25WVZ0.js +0 -1
  818. package/dist/showcase/assets/metric-grid-DQtf9y6E.js +0 -1
  819. package/dist/showcase/assets/metric-trend-chip-CXHpkj3U.js +0 -1
  820. package/dist/showcase/assets/metrics-analytics-bar-BIuwiVrn.js +0 -44
  821. package/dist/showcase/assets/metrics-analytics-cards-yx5lMGQf.js +0 -50
  822. package/dist/showcase/assets/metrics-comparison-BC_7jLXf.js +0 -76
  823. package/dist/showcase/assets/metrics-heatmap-C_nhCljz.js +0 -27
  824. package/dist/showcase/assets/metrics-inline-badge-3oySQnoR.js +0 -17
  825. package/dist/showcase/assets/metrics-kpi-row-zS4-oiTO.js +0 -31
  826. package/dist/showcase/assets/metrics-micro-grid-UJkA2LNR.js +0 -42
  827. package/dist/showcase/assets/metrics-overview-DQFr22ol.js +0 -192
  828. package/dist/showcase/assets/metrics-stat-cards-DnBirxKV.js +0 -54
  829. package/dist/showcase/assets/minus-BOVQEx6C.js +0 -1
  830. package/dist/showcase/assets/money-display-DV7xlrNV.js +0 -1
  831. package/dist/showcase/assets/money-display-DxnM5--7.js +0 -1
  832. package/dist/showcase/assets/month-year-picker-BzRXCrQ7.js +0 -1
  833. package/dist/showcase/assets/navigation-ChJKLv4Y.js +0 -90
  834. package/dist/showcase/assets/navigation-D7VJsKrP.js +0 -231
  835. package/dist/showcase/assets/navigation-extras-BVc1xQuB.js +0 -43
  836. package/dist/showcase/assets/notification-banner-1ivcmPLe.js +0 -1
  837. package/dist/showcase/assets/onboarding-checklist-CbARgwpX.js +0 -119
  838. package/dist/showcase/assets/overflow-tab-bar-DlqMmyTx.js +0 -1
  839. package/dist/showcase/assets/overlays-DkWO50b8.js +0 -159
  840. package/dist/showcase/assets/overlays-KKZpxWjt.js +0 -408
  841. package/dist/showcase/assets/overview-BjQe-YZE.js +0 -184
  842. package/dist/showcase/assets/package-DhQRoFDo.js +0 -1
  843. package/dist/showcase/assets/package-check-CBgGiccG.js +0 -1
  844. package/dist/showcase/assets/page-BWTmyV5J.js +0 -1
  845. package/dist/showcase/assets/page-action-button-DV-YYRA4.js +0 -1
  846. package/dist/showcase/assets/page-header-Bmg4NU_P.js +0 -1
  847. package/dist/showcase/assets/pagination-ByQ_OXRU.js +0 -1
  848. package/dist/showcase/assets/pagination-Db5CuoBb.js +0 -42
  849. package/dist/showcase/assets/paperclip-BQNPUzG_.js +0 -1
  850. package/dist/showcase/assets/password-input-CPvjzM1f.js +0 -1
  851. package/dist/showcase/assets/pencil-DuBakHme.js +0 -1
  852. package/dist/showcase/assets/phone-t94LTB1m.js +0 -1
  853. package/dist/showcase/assets/placeholder-pattern-BNou2ep-.js +0 -1
  854. package/dist/showcase/assets/plus-BRcp6JhT.js +0 -1
  855. package/dist/showcase/assets/popover-CVuJP03o.js +0 -1
  856. package/dist/showcase/assets/popover-D_P2gTn8.js +0 -1
  857. package/dist/showcase/assets/popover-menu-DGY5jEk4.js +0 -1
  858. package/dist/showcase/assets/products-8sUfDMPU.js +0 -423
  859. package/dist/showcase/assets/progress-BrMvIZIz.js +0 -1
  860. package/dist/showcase/assets/progress-CSXZAavT.js +0 -18
  861. package/dist/showcase/assets/progress-Dvqpf_O0.js +0 -1
  862. package/dist/showcase/assets/props-table-BAfz1Zc6.js +0 -1
  863. package/dist/showcase/assets/props.generated-CuVoOKYT.json +0 -41746
  864. package/dist/showcase/assets/qr-code-C-CaHJQ2.js +0 -1
  865. package/dist/showcase/assets/quote-Ci80eS0u.js +0 -1
  866. package/dist/showcase/assets/receipt-jvwbPuE3.js +0 -1
  867. package/dist/showcase/assets/receipt-text-CT0GiMQm.js +0 -1
  868. package/dist/showcase/assets/refinement-guide-BnCQ9-6f.js +0 -189
  869. package/dist/showcase/assets/refresh-cw-CXDARnCe.js +0 -1
  870. package/dist/showcase/assets/resolveValueLabel-DJanfUim.js +0 -1
  871. package/dist/showcase/assets/resource-Bir-z7ie.js +0 -139
  872. package/dist/showcase/assets/resource-D19qhfYP.js +0 -1
  873. package/dist/showcase/assets/resource-selector-card-BUbuu-QH.js +0 -43
  874. package/dist/showcase/assets/rich-text-editor-BCtz589M.js +0 -124
  875. package/dist/showcase/assets/rich-text-editor-uu9FmB8B.js +0 -143
  876. package/dist/showcase/assets/rotate-ccw-DEIVfiHA.js +0 -1
  877. package/dist/showcase/assets/route-B5vtDLsE.js +0 -1
  878. package/dist/showcase/assets/save-DQ4Up8ZB.js +0 -1
  879. package/dist/showcase/assets/schema-form-D7wbdl5u.js +0 -327
  880. package/dist/showcase/assets/scroll-area-B0QD6o1Y.js +0 -32
  881. package/dist/showcase/assets/scroll-area-BoZ1SrfI.js +0 -1
  882. package/dist/showcase/assets/section-BXsVHOsI.js +0 -1
  883. package/dist/showcase/assets/select-CW8SYsOY.js +0 -1
  884. package/dist/showcase/assets/select-DmRqLSoG.js +0 -1
  885. package/dist/showcase/assets/send-Dxs1-xSj.js +0 -1
  886. package/dist/showcase/assets/separator-BLOG_8oO.js +0 -1
  887. package/dist/showcase/assets/separator-DZC_uQU-.js +0 -1
  888. package/dist/showcase/assets/separator-OlLHRN7k.js +0 -28
  889. package/dist/showcase/assets/settings-2-BSpgytsy.js +0 -1
  890. package/dist/showcase/assets/settings-CCNP7XOu.js +0 -1
  891. package/dist/showcase/assets/sheet-DIfJjbgA.js +0 -1
  892. package/dist/showcase/assets/shield-D2gTWkwA.js +0 -1
  893. package/dist/showcase/assets/shield-alert-C-3oWpoe.js +0 -1
  894. package/dist/showcase/assets/shield-check-D11r1eJ8.js +0 -1
  895. package/dist/showcase/assets/shopping-bag-DAeaVQ5O.js +0 -1
  896. package/dist/showcase/assets/showcase-GdZcH6OR.js +0 -132
  897. package/dist/showcase/assets/sidebar-RBzHNuB7.js +0 -1
  898. package/dist/showcase/assets/sidebar.context-Dyw470Qp.js +0 -1
  899. package/dist/showcase/assets/skeleton-B7crngMw.js +0 -1
  900. package/dist/showcase/assets/skeleton-BwEVNdGJ.js +0 -1
  901. package/dist/showcase/assets/skeleton-DM73_ueB.js +0 -1
  902. package/dist/showcase/assets/skeleton-cHsWJOtO.js +0 -29
  903. package/dist/showcase/assets/slider-DRPnIs0S.js +0 -1
  904. package/dist/showcase/assets/smart-card-DER7dpD9.js +0 -1
  905. package/dist/showcase/assets/sonner-Go1YsPBH.js +0 -22
  906. package/dist/showcase/assets/sortable.esm-q6LdsxSr.js +0 -5
  907. package/dist/showcase/assets/sparkles-DqH40POl.js +0 -1
  908. package/dist/showcase/assets/spinner-C0YWWxyj.js +0 -1
  909. package/dist/showcase/assets/spinner-CpHNR13f.js +0 -30
  910. package/dist/showcase/assets/spinner-Dwvf24e9.js +0 -49
  911. package/dist/showcase/assets/square-pen-D-xHmIA0.js +0 -1
  912. package/dist/showcase/assets/stacked-avatars-C92NYKIa.js +0 -1
  913. package/dist/showcase/assets/star-dD4CAJ83.js +0 -1
  914. package/dist/showcase/assets/startOfDay-BXZshd4g.js +0 -1
  915. package/dist/showcase/assets/styles-BPJdkO_3.js +0 -1
  916. package/dist/showcase/assets/suggestions-CyhKme4Q.js +0 -126
  917. package/dist/showcase/assets/switch-C7DVTgQd.js +0 -1
  918. package/dist/showcase/assets/switch-LU6nljdS.js +0 -1
  919. package/dist/showcase/assets/sync-bERw1shm.js +0 -124
  920. package/dist/showcase/assets/table-BuIv4nqB.js +0 -686
  921. package/dist/showcase/assets/table-CDMDtBgJ.js +0 -1
  922. package/dist/showcase/assets/table-actions-DsK7d8Yb.js +0 -1
  923. package/dist/showcase/assets/tabs-BDryywGb.js +0 -19
  924. package/dist/showcase/assets/tabs-BNaZmM48.js +0 -1
  925. package/dist/showcase/assets/tags-input-CzE_5BJl.js +0 -1
  926. package/dist/showcase/assets/text-button-B1m5cpX_.js +0 -1
  927. package/dist/showcase/assets/text-link-CqjW10Ce.js +0 -1
  928. package/dist/showcase/assets/textarea-xJ3EE8R9.js +0 -1
  929. package/dist/showcase/assets/textarea-xOekToAG.js +0 -1
  930. package/dist/showcase/assets/throttle-alert-BH1HMiaI.js +0 -1
  931. package/dist/showcase/assets/timelines-DjWkuOz3.js +0 -200
  932. package/dist/showcase/assets/toggle-group-Css6pfUI.js +0 -1
  933. package/dist/showcase/assets/toggles-DhDrn3YH.js +0 -71
  934. package/dist/showcase/assets/toggles-group-e4xtKzkl.js +0 -32
  935. package/dist/showcase/assets/tooltip-DMvMUrGe.js +0 -31
  936. package/dist/showcase/assets/trash-2-zILxQmtX.js +0 -1
  937. package/dist/showcase/assets/trending-up-CRH278ig.js +0 -1
  938. package/dist/showcase/assets/truck-At9CEKg7.js +0 -1
  939. package/dist/showcase/assets/typography-B0ehvSV4.js +0 -223
  940. package/dist/showcase/assets/ui-badge-CyLWYf3f.js +0 -28
  941. package/dist/showcase/assets/ui-card-BPnLZmkJ.js +0 -30
  942. package/dist/showcase/assets/ui-table-C-zXhcOm.js +0 -42
  943. package/dist/showcase/assets/upload-tray-IyQJEM9n.js +0 -138
  944. package/dist/showcase/assets/use-layout-link-Cux4giQO.js +0 -1
  945. package/dist/showcase/assets/useAriaLabelledBy-Bo0rTGvc.js +0 -1
  946. package/dist/showcase/assets/useCollapsiblePanel-CzU-1LY3.js +0 -1
  947. package/dist/showcase/assets/useCompositeItem-CJFNnVql.js +0 -1
  948. package/dist/showcase/assets/useCompositeListItem-BAuO9hue.js +0 -1
  949. package/dist/showcase/assets/useLabelableId-HuACs9ba.js +0 -1
  950. package/dist/showcase/assets/useOpenInteractionType-MEUfJuxN.js +0 -1
  951. package/dist/showcase/assets/useRender-B-6DpRfj.js +0 -1
  952. package/dist/showcase/assets/useTriggerFocusGuards-B-mRyUJJ.js +0 -1
  953. package/dist/showcase/assets/useValueChanged-CVn_Rfso.js +0 -1
  954. package/dist/showcase/assets/user-eelwPGBI.js +0 -1
  955. package/dist/showcase/assets/user-plus-DhswMZvb.js +0 -1
  956. package/dist/showcase/assets/users-BVMmaveS.js +0 -1
  957. package/dist/showcase/assets/vendor-profile-FHaiInTe.js +0 -37
  958. package/dist/showcase/assets/video-C42fxAyj.js +0 -1
  959. package/dist/showcase/assets/visually-hidden-BwzlEinj.js +0 -1
  960. package/dist/showcase/assets/wrench-EKI7PaKp.js +0 -1
  961. package/dist/showcase/assets/x--LIqlhum.js +0 -1
  962. package/dist/showcase/assets/zap-C1fX30vt.js +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"display-CQoSwU74.js","names":[],"sources":["../../src/components/base/forms/fields/decimal-input.tsx","../../src/components/base/forms/fields/currency-input.tsx","../../src/components/base/forms/fields/money-input.tsx","../../src/components/base/forms/form-field.tsx","../../src/components/base/display/notification-banner.tsx","../../src/components/base/display/placeholder-pattern.tsx","../../src/components/base/display/show-if.tsx","../../src/components/base/display/throttle-alert.tsx","../../src/components/base/display/visually-hidden.tsx","../../src/components/base/display/stacked-avatars.tsx","../../src/components/base/display/date-block.tsx","../../src/components/ui/collapsible.tsx","../../src/components/base/display/money-input.tsx","../../src/components/base/display/boolean-indicator.tsx","../../src/components/ui/empty.tsx","../../src/components/ui/progress.tsx","../../src/components/base/display/qr-code.tsx"],"sourcesContent":["/**\n * DecimalInput — text-based numeric input with decimal-place enforcement,\n * locale-friendly comma → dot normalisation, optional min/max clamping,\n * rounding mode (`round` / `floor` / `ceil` / `half-even`), and optional\n * stepper buttons when `step` is set.\n *\n * Wraps the base `Input` so all add-on / icon / clear / loading features\n * still work. Extra features layered on top:\n *\n * - `step` — when set, renders − / + stepper buttons that snap the value\n * to a multiple of `step` (anchored at `min` if provided, else 0).\n * - `roundingMode` — controls how stepper / blur normalisation rounds\n * half values; default `'round'` (round-half-up).\n * - `normalizeOnBlur` (default `true`) — pads the displayed value to the\n * full `decimalPlaces` count and clamps to `[min, max]` when the field\n * loses focus.\n *\n * The `value` prop is always a plain string (consumers parse it as needed)\n * so RHF / Inertia can treat it like any other input.\n */\nimport * as React from 'react';\nimport { useCallback } from 'react';\nimport { Minus, Plus } from 'lucide-react';\nimport { useStrings, type StringsProp } from '@/lib/strings';\nimport { useFormsConfig, type FormControlSize } from '@/lib/ui-provider';\nimport { cn } from '@/lib/utils';\nimport { resolveFormControlSize } from '../form-sizing';\nimport { Input, type InputProps } from './input';\n\nexport type DecimalRoundingMode = 'round' | 'floor' | 'ceil' | 'half-even';\n\nexport interface DecimalInputStrings {\n\tdecrement: string;\n\tincrement: string;\n}\n\nexport const defaultDecimalInputStrings: DecimalInputStrings = {\n\tdecrement: 'Decrement',\n\tincrement: 'Increment',\n};\n\nexport interface DecimalInputProps extends Omit<InputProps, 'type' | 'inputMode' | 'strings'> {\n\tdecimalPlaces?: number;\n\tmin?: number;\n\tmax?: number;\n\tallowNegative?: boolean;\n\tallowEmpty?: boolean;\n\t/** When set, renders − / + steppers and snaps the value to multiples of `step`. */\n\tstep?: number;\n\t/** How to round when normalising on blur or stepping. Default `'round'`. */\n\troundingMode?: DecimalRoundingMode;\n\t/** Pad to full decimalPlaces and clamp to [min, max] on blur. Default `true`. */\n\tnormalizeOnBlur?: boolean;\n\t/** String overrides for stepper aria-labels. */\n\tstrings?: StringsProp<DecimalInputStrings>;\n}\n\nconst formatDecimalValue = (\n\tvalue: string,\n\tdecimalPlaces: number,\n\tallowNegative: boolean,\n): string => {\n\tif (!value) return '';\n\n\tlet formatted = value;\n\tformatted = formatted.replace(/,/g, '.');\n\n\tif (allowNegative) {\n\t\tformatted = formatted.replace(/[^\\d.-]/g, '');\n\t} else {\n\t\tformatted = formatted.replace(/[^\\d.]/g, '');\n\t}\n\n\tif (allowNegative && formatted.includes('-')) {\n\t\tconst hasLeadingMinus = formatted.startsWith('-');\n\t\tformatted = formatted.replace(/-/g, '');\n\t\tif (hasLeadingMinus) formatted = '-' + formatted;\n\t}\n\n\tconst parts = formatted.split('.');\n\tif (parts.length > 2) {\n\t\tformatted = parts[0] + '.' + parts.slice(1).join('');\n\t}\n\n\tif (parts.length === 2 && parts[1].length > decimalPlaces) {\n\t\tformatted = parts[0] + '.' + parts[1].substring(0, decimalPlaces);\n\t}\n\n\treturn formatted;\n};\n\nconst isWithinBounds = (value: string, min?: number, max?: number): boolean => {\n\tif (!value || value === '-') return true;\n\tconst numValue = parseFloat(value);\n\tif (Number.isNaN(numValue)) return true;\n\tif (min !== undefined && numValue < min) return false;\n\tif (max !== undefined && numValue > max) return false;\n\treturn true;\n};\n\nfunction applyRounding(value: number, decimals: number, mode: DecimalRoundingMode): number {\n\tconst factor = Math.pow(10, decimals);\n\tconst shifted = value * factor;\n\tswitch (mode) {\n\t\tcase 'floor':\n\t\t\treturn Math.floor(shifted) / factor;\n\t\tcase 'ceil':\n\t\t\treturn Math.ceil(shifted) / factor;\n\t\tcase 'half-even': {\n\t\t\tconst floor = Math.floor(shifted);\n\t\t\tconst diff = shifted - floor;\n\t\t\tif (diff > 0.5) return (floor + 1) / factor;\n\t\t\tif (diff < 0.5) return floor / factor;\n\t\t\treturn (floor % 2 === 0 ? floor : floor + 1) / factor;\n\t\t}\n\t\tcase 'round':\n\t\tdefault:\n\t\t\treturn Math.round(shifted) / factor;\n\t}\n}\n\nfunction clamp(n: number, min?: number, max?: number): number {\n\tlet next = n;\n\tif (min !== undefined) next = Math.max(min, next);\n\tif (max !== undefined) next = Math.min(max, next);\n\treturn next;\n}\n\nfunction snapToStep(\n\tcurrent: number,\n\tdelta: number,\n\tstep: number,\n\tmin?: number,\n\tmode: DecimalRoundingMode = 'round',\n): number {\n\tconst anchor = min ?? 0;\n\tconst stepsFromAnchor = (current - anchor) / step;\n\tconst rounded =\n\t\tmode === 'floor'\n\t\t\t? Math.floor(stepsFromAnchor)\n\t\t\t: mode === 'ceil'\n\t\t\t\t? Math.ceil(stepsFromAnchor)\n\t\t\t\t: Math.round(stepsFromAnchor);\n\tconst stepped = anchor + (rounded + delta) * step;\n\treturn Number(stepped.toFixed(12));\n}\n\nfunction fireChange(\n\ttarget: HTMLInputElement,\n\tvalue: string,\n\tonChange?: InputProps['onChange'],\n) {\n\t// Write the value to the DOM first so UNCONTROLLED inputs actually reflect\n\t// stepper clicks and blur-normalisation. (Previously this only called\n\t// onChange, so steppers were a no-op on uncontrolled fields.) Use the native\n\t// value setter so React's input value-tracker stays in sync for controlled\n\t// consumers, which then reconcile through their onChange + re-render.\n\tconst nativeSetter = Object.getOwnPropertyDescriptor(\n\t\twindow.HTMLInputElement.prototype,\n\t\t'value',\n\t)?.set;\n\tif (nativeSetter) nativeSetter.call(target, value);\n\telse target.value = value;\n\n\tif (!onChange) return;\n\tconst event = {\n\t\ttarget,\n\t\tcurrentTarget: target,\n\t\ttype: 'change',\n\t\tbubbles: false,\n\t\tcancelable: false,\n\t} as unknown as React.ChangeEvent<HTMLInputElement>;\n\tonChange(event);\n}\n\nconst STEPPER_SIZE_CLASS: Record<FormControlSize, string> = {\n\tsmall: 'w-control-small',\n\tdefault: 'w-control',\n};\n\nfunction DecimalInputImpl(\n\t{\n\t\tdecimalPlaces = 2,\n\t\tmin,\n\t\tmax,\n\t\tallowNegative = true,\n\t\tallowEmpty = true,\n\t\tstep,\n\t\troundingMode = 'round',\n\t\tnormalizeOnBlur = true,\n\t\tonChange,\n\t\tonBlur,\n\t\tplaceholder,\n\t\tclassName,\n\t\tvalue: controlledValue,\n\t\tdefaultValue,\n\t\tdisabled,\n\t\tsize: sizeProp,\n\t\tstrings: stringsProp,\n\t\t...props\n\t}: DecimalInputProps,\n\tforwardedRef: React.ForwardedRef<HTMLInputElement>,\n) {\n\tconst { defaultControlSize } = useFormsConfig();\n\tconst size: FormControlSize = resolveFormControlSize(sizeProp, defaultControlSize);\n\tconst strings = useStrings(defaultDecimalInputStrings, stringsProp);\n\tconst validDecimalPlaces = Math.min(12, Math.max(0, decimalPlaces));\n\tconst inputRef = React.useRef<HTMLInputElement | null>(null);\n\n\tconst handleChange = useCallback(\n\t\t(e: React.ChangeEvent<HTMLInputElement>) => {\n\t\t\tconst newValue = e.target.value;\n\n\t\t\tif (!newValue && allowEmpty) {\n\t\t\t\tonChange?.(e);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst formatted = formatDecimalValue(newValue, validDecimalPlaces, allowNegative);\n\t\t\tif (!isWithinBounds(formatted, min, max)) return;\n\n\t\t\tif (formatted !== newValue) {\n\t\t\t\tconst modifiedEvent = {\n\t\t\t\t\t...e,\n\t\t\t\t\ttarget: { ...e.target, value: formatted },\n\t\t\t\t\tcurrentTarget: { ...e.currentTarget, value: formatted },\n\t\t\t\t} as React.ChangeEvent<HTMLInputElement>;\n\t\t\t\tonChange?.(modifiedEvent);\n\t\t\t} else {\n\t\t\t\tonChange?.(e);\n\t\t\t}\n\t\t},\n\t\t[onChange, validDecimalPlaces, allowNegative, allowEmpty, min, max],\n\t);\n\n\tconst handleBlur = useCallback(\n\t\t(e: React.FocusEvent<HTMLInputElement>) => {\n\t\t\tonBlur?.(e);\n\t\t\tif (!normalizeOnBlur) return;\n\t\t\tconst raw = e.target.value;\n\t\t\tif (!raw && allowEmpty) return;\n\t\t\tconst num = Number.parseFloat(raw.replace(',', '.'));\n\t\t\tif (!Number.isFinite(num)) return;\n\t\t\tconst clamped = clamp(num, min, max);\n\t\t\tconst rounded = applyRounding(clamped, validDecimalPlaces, roundingMode);\n\t\t\tconst next = rounded.toFixed(validDecimalPlaces);\n\t\t\tif (next !== raw && inputRef.current) {\n\t\t\t\tfireChange(inputRef.current, next, onChange);\n\t\t\t}\n\t\t},\n\t\t[onBlur, onChange, normalizeOnBlur, allowEmpty, min, max, validDecimalPlaces, roundingMode],\n\t);\n\n\tconst adjust = useCallback(\n\t\t(delta: number) => {\n\t\t\tif (disabled || step === undefined) return;\n\t\t\tconst target = inputRef.current;\n\t\t\tif (!target) return;\n\t\t\tconst raw = target.value;\n\t\t\tconst current = Number.parseFloat(raw.replace(',', '.'));\n\t\t\tconst base = Number.isFinite(current) ? current : (min ?? 0);\n\t\t\tconst snapped = clamp(snapToStep(base, delta, step, min, roundingMode), min, max);\n\t\t\tconst next = applyRounding(snapped, validDecimalPlaces, roundingMode).toFixed(validDecimalPlaces);\n\t\t\tfireChange(target, next, onChange);\n\t\t},\n\t\t[disabled, step, min, max, roundingMode, validDecimalPlaces, onChange],\n\t);\n\n\tconst showSteppers = typeof step === 'number' && step > 0;\n\tconst placeholderResolved =\n\t\tplaceholder ?? (validDecimalPlaces > 0 ? `0.${'0'.repeat(validDecimalPlaces)}` : '0');\n\n\tif (showSteppers) {\n\t\treturn (\n\t\t\t<div\n\t\t\t\tclassName={cn('decimal-input--component', \n\t\t\t\t\t// Stepper segmented group — input + adjacent − / + buttons\n\t\t\t\t\t// share a single border radius so the group reads as one\n\t\t\t\t\t// control instead of three loose chips.\n\t\t\t\t\t'flex items-stretch overflow-hidden rounded-radius border border-input bg-transparent',\n\t\t\t\t\t'focus-within:border-ring focus-within:ring-ring/50 focus-within:ring-[3px]',\n\t\t\t\t\tprops['aria-invalid'] && 'border-destructive ring-destructive/20',\n\t\t\t\t\tdisabled && 'opacity-50 cursor-not-allowed',\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t<button\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\ttabIndex={-1}\n\t\t\t\t\taria-label={strings.decrement}\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\tonClick={() => adjust(-1)}\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t'inline-flex shrink-0 items-center justify-center border-r border-input text-muted-foreground transition-colors',\n\t\t\t\t\t\tSTEPPER_SIZE_CLASS[size],\n\t\t\t\t\t\t'hover:bg-muted hover:text-foreground',\n\t\t\t\t\t\t'disabled:cursor-not-allowed disabled:opacity-50',\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t<Minus className={size === 'small' ? 'size-icon-sm' : 'size-icon'} />\n\t\t\t\t</button>\n\t\t\t\t<Input\n\t\t\t\t\tsize={size}\n\t\t\t\t\tref={(node) => { inputRef.current = node; if (typeof forwardedRef === \"function\") forwardedRef(node); else if (forwardedRef) forwardedRef.current = node; }}\n\t\t\t\t\ttype=\"text\"\n\t\t\t\t\tinputMode={validDecimalPlaces > 0 ? 'decimal' : 'numeric'}\n\t\t\t\t\tplaceholder={placeholderResolved}\n\t\t\t\t\tonChange={handleChange}\n\t\t\t\t\tonBlur={handleBlur}\n\t\t\t\t\tvalue={controlledValue}\n\t\t\t\t\tdefaultValue={defaultValue}\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t'flex-1 tabular-nums text-center border-0 shadow-none rounded-none focus-visible:ring-0 focus-visible:border-0',\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t)}\n\t\t\t\t\t{...props}\n\t\t\t\t/>\n\t\t\t\t<button\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\ttabIndex={-1}\n\t\t\t\t\taria-label={strings.increment}\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\tonClick={() => adjust(1)}\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t'inline-flex shrink-0 items-center justify-center border-l border-input text-muted-foreground transition-colors',\n\t\t\t\t\t\tSTEPPER_SIZE_CLASS[size],\n\t\t\t\t\t\t'hover:bg-muted hover:text-foreground',\n\t\t\t\t\t\t'disabled:cursor-not-allowed disabled:opacity-50',\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t<Plus className={size === 'small' ? 'size-icon-sm' : 'size-icon'} />\n\t\t\t\t</button>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<Input\n\t\t\tsize={size}\n\t\t\tref={(node) => { inputRef.current = node; if (typeof forwardedRef === \"function\") forwardedRef(node); else if (forwardedRef) forwardedRef.current = node; }}\n\t\t\ttype=\"text\"\n\t\t\tinputMode={validDecimalPlaces > 0 ? 'decimal' : 'numeric'}\n\t\t\tplaceholder={placeholderResolved}\n\t\t\tonChange={handleChange}\n\t\t\tonBlur={handleBlur}\n\t\t\tvalue={controlledValue}\n\t\t\tdefaultValue={defaultValue}\n\t\t\tdisabled={disabled}\n\t\t\tclassName={cn('tabular-nums text-end', className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nconst DecimalInput = React.forwardRef<HTMLInputElement, DecimalInputProps>(DecimalInputImpl);\nDecimalInput.displayName = 'DecimalInput';\n\nexport { DecimalInput };\n","import { useState, useCallback, useEffect, useMemo, memo, forwardRef, type ForwardedRef } from 'react';\nimport * as baseui from '@/components/ui/select';\nimport { Label } from '@/components/typography';\nimport { useFormsConfig } from '@/lib/ui-provider';\nimport { cn } from '@/lib/utils';\nimport { formControlSizeClasses, resolveFormControlSize } from '../form-sizing';\nimport { DecimalInput, type DecimalInputProps } from './decimal-input';\n\nexport interface CurrencyOption {\n value: string;\n label: string;\n}\n\nexport interface CurrencyInputProps extends Omit<DecimalInputProps, 'label' | 'hint' | 'helperText' | 'error'> {\n /** Current currency value */\n currency?: string;\n\n /** Default currency if uncontrolled */\n defaultCurrency?: string;\n\n /** List of available currencies (simple strings or objects with value/label) */\n currencies?: (string | CurrencyOption)[];\n\n /** Callback when currency changes */\n onCurrencyChange?: (currency: string) => void;\n\n /** Position of currency dropdown */\n currencyPosition?: 'start' | 'end';\n\n /** Disable currency selection */\n disableCurrencySelector?: boolean;\n\n /** Placeholder for currency dropdown */\n currencyPlaceholder?: string;\n\n /** Width of the currency dropdown */\n currencyWidth?: string;\n\n /** Label for currency field (sub-label) */\n currencyLabel?: string;\n\n /** Error state for styling (passed from FormField) */\n invalid?: boolean;\n\n /** Called when the input is misconfigured (mismatched currency/defaultCurrency\n * while the selector is disabled, missing currency, etc.). The library\n * also DEV-logs the same message to the console. */\n onConfigError?: (\n message: string,\n details: { currency?: string; defaultCurrency?: string; disableCurrencySelector?: boolean },\n ) => void;\n}\n\n// Common currency symbols\nconst CURRENCY_SYMBOLS: Record<string, string> = {\n USD: '$',\n EUR: '€',\n GBP: '£',\n BGN: 'лв',\n JPY: '¥',\n CNY: '¥',\n CHF: 'CHF',\n CAD: 'C$',\n AUD: 'A$',\n};\n\nconst normalizeCurrencies = (currencies?: (string | CurrencyOption)[]): CurrencyOption[] => {\n if (!currencies || currencies.length === 0) return [];\n\n return currencies.map((currency) => {\n if (typeof currency === 'string') {\n const symbol = CURRENCY_SYMBOLS[currency] || currency;\n return {\n value: currency,\n label: `${symbol} ${currency}`,\n };\n }\n return currency;\n });\n};\n\nfunction CurrencyInputImpl(\n {\n currency: controlledCurrency,\n defaultCurrency,\n currencies,\n onCurrencyChange,\n currencyPosition = 'start',\n disableCurrencySelector = false,\n currencyPlaceholder,\n currencyWidth = 'w-28',\n currencyLabel,\n invalid,\n disabled,\n onConfigError,\n size: sizeProp,\n ...decimalInputProps\n }: CurrencyInputProps,\n forwardedRef: ForwardedRef<HTMLInputElement>,\n) {\n const { defaultControlSize } = useFormsConfig();\n const size = resolveFormControlSize(sizeProp, defaultControlSize);\n\n // Memoize normalized currencies\n const normalizedCurrencies = useMemo(() => normalizeCurrencies(currencies), [currencies]);\n\n // Internal state for uncontrolled currency\n const [internalCurrency, setInternalCurrency] = useState(\n defaultCurrency ?? normalizedCurrencies[0]?.value ?? ''\n );\n\n // Determine if currency is controlled\n const isCurrencyControlled = controlledCurrency !== undefined;\n const selectedCurrency = isCurrencyControlled ? controlledCurrency : internalCurrency;\n\n useEffect(() => {\n const details = { currency: controlledCurrency, defaultCurrency, disableCurrencySelector };\n if (\n disableCurrencySelector &&\n typeof controlledCurrency === 'string' &&\n typeof defaultCurrency === 'string' &&\n controlledCurrency.trim() !== '' &&\n defaultCurrency.trim() !== '' &&\n controlledCurrency !== defaultCurrency\n ) {\n const message = '[CurrencyInput] currency/defaultCurrency mismatch while selector is disabled.';\n if (import.meta.env?.DEV) {\n console.warn(message, { currency: controlledCurrency, defaultCurrency });\n }\n onConfigError?.(message, details);\n }\n\n if (\n disableCurrencySelector &&\n (typeof selectedCurrency !== 'string' || selectedCurrency.trim().length === 0)\n ) {\n const message = '[CurrencyInput] disableCurrencySelector is enabled but no currency is provided.';\n if (import.meta.env?.DEV) {\n console.warn(message);\n }\n onConfigError?.(message, details);\n }\n }, [controlledCurrency, defaultCurrency, disableCurrencySelector, onConfigError, selectedCurrency]);\n\n // Handle currency change\n const handleCurrencyChange = useCallback(\n (newCurrency: string | null) => {\n if (newCurrency === null) return;\n if (!isCurrencyControlled) {\n setInternalCurrency(newCurrency);\n }\n onCurrencyChange?.(newCurrency);\n },\n [isCurrencyControlled, onCurrencyChange]\n );\n\n // Memoize trigger class names. Size flows through `formControlSizeClasses[size]`\n // so the trigger height matches the inner DecimalInput when a consumer sets\n // `<UIProvider forms={{ defaultControlSize }}>`.\n const triggerClassName = useMemo(\n () =>\n cn(\n 'border-input bg-transparent !shadow-none',\n formControlSizeClasses[size],\n 'focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]',\n 'aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive',\n currencyWidth,\n disabled && 'opacity-50 cursor-not-allowed'\n ),\n [size, currencyWidth, disabled]\n );\n\n // Currency selector component\n const currencySelector = (\n <div className=\"space-y-2\">\n {!!currencyLabel && <Label className=\"leading-6\">{currencyLabel}</Label>}\n <baseui.Select\n value={selectedCurrency}\n onValueChange={(value) => handleCurrencyChange(value)}\n disabled={disabled || disableCurrencySelector}\n >\n <baseui.SelectTrigger aria-invalid={invalid || undefined} className={triggerClassName}>\n <baseui.SelectValue placeholder={currencyPlaceholder ?? ''} />\n </baseui.SelectTrigger>\n <baseui.SelectContent>\n <baseui.SelectGroup>\n {normalizedCurrencies.map((curr) => (\n <baseui.SelectItem key={curr.value} value={curr.value}>\n {curr.label}\n </baseui.SelectItem>\n ))}\n </baseui.SelectGroup>\n </baseui.SelectContent>\n </baseui.Select>\n </div>\n );\n\n return (\n <div className={cn('currency-input--component', 'flex items-start gap-2')}>\n {currencyPosition === 'start' && currencySelector}\n\n <div className=\"flex-1\">\n <DecimalInput\n ref={forwardedRef}\n size={size}\n decimalPlaces={2}\n allowNegative={false}\n disabled={disabled}\n invalid={invalid}\n {...decimalInputProps}\n />\n </div>\n\n {currencyPosition === 'end' && currencySelector}\n </div>\n );\n}\n\n// forwardRef + memo: forward to the underlying decimal input so consumers\n// can focus/measure programmatically.\nexport const CurrencyInput = memo(forwardRef<HTMLInputElement, CurrencyInputProps>(CurrencyInputImpl));\nCurrencyInput.displayName = 'CurrencyInput';\n","/**\n * MoneyInput (forms/fields) — `CurrencyInput` preset with a small default\n * currency list for back-compat and a callback shape that matches the\n * library's `CurrencyCode` typing.\n *\n * For the richer `MoneyInputData`-shaped helper with migration warnings and\n * form-field chrome, use `@/components/base/display/money-input` instead.\n */\nimport { forwardRef, useCallback } from 'react';\n\nimport { CurrencyInput, type CurrencyInputProps } from './currency-input';\nimport type { CurrencyCode } from '@/lib/ui-provider';\n\nexport interface MoneyInputProps extends Omit<CurrencyInputProps, 'currency' | 'defaultCurrency' | 'currencies' | 'onCurrencyChange'> {\n /** Current currency value (ISO 4217 code, e.g. 'USD'). */\n currency?: CurrencyCode;\n /** Default currency if uncontrolled. */\n defaultCurrency?: CurrencyCode;\n /** Available currencies for the inline picker. Defaults to `['USD', 'EUR']`\n * — pass your own list or wire `useMoneyConfig` at the consumer site for\n * real production use. */\n currencies?: CurrencyCode[];\n /** Callback when the user changes the currency in the inline picker. */\n onCurrencyChange?: (currency: CurrencyCode) => void;\n}\n\nconst DEFAULT_CURRENCIES: CurrencyCode[] = ['USD', 'EUR'];\n\nexport const MoneyInput = forwardRef<HTMLInputElement, MoneyInputProps>(function MoneyInput(\n { currencies = DEFAULT_CURRENCIES, onCurrencyChange, currency, defaultCurrency, ...props },\n ref,\n) {\n const handleCurrencyChange = useCallback(\n (nextCurrency: string) => {\n onCurrencyChange?.(nextCurrency);\n },\n [onCurrencyChange]\n );\n\n return (\n <CurrencyInput className=\"money-input--component\"\n ref={ref}\n currencies={currencies}\n currency={currency}\n defaultCurrency={defaultCurrency}\n onCurrencyChange={handleCurrencyChange}\n {...props}\n />\n );\n});\n\nMoneyInput.displayName = 'MoneyInput';\n","/**\n * Unified Form Field Components\n * =============================\n *\n * Two components sharing the same visual structure for field chrome:\n *\n * 1. `FormField` - Pure presentation wrapper (label, hint, error, required indicator)\n * 2. `ControlledFormField` - FormField + react-hook-form Controller integration\n *\n * ## FormField\n * Use for custom components or non-controlled inputs.\n *\n * ```tsx\n * <FormField label={t('label')} error={error} required hint={t('hint')}>\n * <CustomAutocomplete value={value} onSelect={onSelect} />\n * </FormField>\n * ```\n *\n * ## ControlledFormField\n * Use with react-hook-form. Auto-merges backend (Inertia) + validation errors.\n *\n * ```tsx\n * <ControlledFormField\n * name=\"email\"\n * control={control}\n * error={getError}\n * label={t('fields.email.label')}\n * required\n * rules={{ required: true, pattern: /^\\\\S+@\\\\S+$/i }}\n * >\n * {(field, error, invalid) => (\n * <Input\n * placeholder={t('fields.email.placeholder')}\n * value={field.value ?? ''}\n * onChange={field.onChange}\n * onBlur={field.onBlur}\n * invalid={invalid}\n * />\n * )}\n * </ControlledFormField>\n * ```\n *\n * ## Render Function Parameters\n * - `field` - Controller props: value, onChange, onBlur, name, ref\n * - `error` - Merged error string (backend || validation) or undefined\n * - `invalid` - Boolean for input styling (border color, etc.)\n * - `fieldState` - Escape hatch: touched, dirty, isTouched, isDirty, etc.\n *\n * ## Error Priority\n * Backend errors (via `error` getter) take priority over validation errors.\n * This ensures server-side validation is authoritative.\n *\n * ## Chrome Props (shared by both components)\n * - `label` - Field label text\n * - `required` - Shows red asterisk after label\n * - `hint` - Secondary text shown below the field when there is no error\n * - `error` - Error message (red text below input)\n * - `helperText` - Helper text (shown when no error)\n * - `className` - Additional wrapper classes\n */\n\nimport * as React from 'react';\nimport { type ReactNode } from 'react';\nimport {\n\tController,\n\ttype Control,\n\ttype ControllerFieldState,\n\ttype ControllerRenderProps,\n\ttype FieldPath,\n\ttype FieldValues,\n\ttype RegisterOptions,\n} from 'react-hook-form';\n\nimport { Label, Text } from '@/components/typography';\nimport { cn } from '@/lib/utils';\n\ninterface FieldChromeProps {\n\tlabel?: string;\n\tisRequired?: boolean;\n\trequired?: boolean;\n\thint?: string;\n\terror?: string;\n\thelperText?: string;\n\tclassName?: string;\n}\n\ninterface FormFieldProps extends FieldChromeProps {\n\tchildren: ReactNode;\n\thtmlFor?: string;\n}\n\nexport function FormField({\n\tchildren,\n\tlabel,\n\tisRequired,\n\trequired,\n\thint,\n\terror,\n\thelperText,\n\thtmlFor,\n\tclassName,\n}: FormFieldProps) {\n\tconst hasError = Boolean(error);\n\tconst supportingText = error || helperText || (!hasError ? hint : undefined);\n\tconst showBottomText = Boolean(supportingText);\n\tconst resolvedRequired = isRequired ?? required;\n\tconst generatedId = React.useId();\n\tconst childId =\n\t\tReact.isValidElement(children)\n\t\t\t? (children.props as { id?: string }).id\n\t\t\t: undefined;\n\tconst resolvedHtmlFor = htmlFor ?? childId ?? (label && React.isValidElement(children) ? `form-field-${generatedId}` : undefined);\n\tconst resolvedChildren =\n\t\tresolvedHtmlFor && React.isValidElement(children) && !childId\n\t\t\t? React.cloneElement(children as React.ReactElement<{ id?: string }>, { id: resolvedHtmlFor })\n\t\t\t: children;\n\n\treturn (\n\t\t<div className={cn('form-field--component', 'space-y-1', className)}>\n\t\t\t{!!label && (\n\t\t\t\t<Label htmlFor={resolvedHtmlFor} className=\"flex items-center leading-6\">\n\t\t\t\t\t{label}\n\t\t\t\t\t{!!resolvedRequired && (\n\t\t\t\t\t\t<span className=\"ml-1 text-destructive\">*</span>\n\t\t\t\t\t)}\n\t\t\t\t</Label>\n\t\t\t)}\n\n\t\t\t{resolvedChildren}\n\n\t\t\t{!!showBottomText && (\n\t\t\t\t<Text\n\t\t\t\t\ttag=\"p\"\n\t\t\t\t\tsize=\"xs\"\n\t\t\t\t\ttype={hasError ? 'error' : 'secondary'}\n\t\t\t\t\t{...(hasError ? { role: 'alert', 'aria-live': 'polite' } : {})}\n\t\t\t\t>\n\t\t\t\t\t{supportingText}\n\t\t\t\t</Text>\n\t\t\t)}\n\t\t</div>\n\t);\n}\n\ntype ErrorGetter<TName extends string> = (field: TName) => string | undefined;\n\ninterface ControlledFormFieldProps<\n\tTFieldValues extends FieldValues,\n\tTName extends FieldPath<TFieldValues>,\n> extends Omit<FieldChromeProps, 'error'> {\n\tname: TName;\n\tcontrol: Control<TFieldValues>;\n\trules?: RegisterOptions<TFieldValues, TName>;\n\terror?: ErrorGetter<TName>;\n\tchildren: (\n\t\tfield: ControllerRenderProps<TFieldValues, TName>,\n\t\terror: string | undefined,\n\t\tinvalid: boolean,\n\t\tfieldState: ControllerFieldState,\n\t) => ReactNode;\n}\n\nexport function ControlledFormField<\n\tTFieldValues extends FieldValues,\n\tTName extends FieldPath<TFieldValues>,\n>({\n\tname,\n\tcontrol,\n\trules,\n\terror: errorGetter,\n\tchildren,\n\t...chromeProps\n}: ControlledFormFieldProps<TFieldValues, TName>) {\n\treturn (\n\t\t<Controller\n\t\t\tname={name}\n\t\t\tcontrol={control}\n\t\t\trules={rules}\n\t\t\trender={({ field, fieldState }) => {\n\t\t\t\tconst validationError = fieldState.error?.message\n\t\t\t\t\t|| (fieldState.error ? (fieldState.error.type === 'required' ? (chromeProps.label ? `${chromeProps.label} is required` : 'This field is required') : 'Invalid value') : undefined);\n\t\t\t\tconst resolvedError = errorGetter?.(name) || validationError || undefined;\n\t\t\t\tconst invalid = Boolean(resolvedError);\n\n\t\t\t\treturn (\n\t\t\t\t\t<FormField {...chromeProps} error={resolvedError} htmlFor={name}>\n\t\t\t\t\t\t{children(field, resolvedError, invalid, fieldState)}\n\t\t\t\t\t</FormField>\n\t\t\t\t);\n\t\t\t}}\n\t\t/>\n\t);\n}\n\nFormField.displayName = 'FormField';\nControlledFormField.displayName = 'ControlledFormField';\n","/**\n * NotificationBanner — full-width inline notification with type-specific\n * styling (info / success / error / warning). The icon sits in a soft circle\n * for clear hierarchy, the title (when present) reads at full strength, and\n * the message uses the muted secondary tone so the type colour highlights\n * without overwhelming. Optional dismiss button on the trailing edge.\n *\n * Use inside page bodies for non-blocking notices; reach for `Alert` when\n * the affordance is structural (e.g. inside a form), and Toast for transient\n * feedback.\n */\nimport { AlertTriangle, BadgeCheck, CircleAlert, Info, X } from 'lucide-react';\nimport React from 'react';\n\nimport { Button } from '@/components/base/buttons';\nimport { Text } from '@/components/typography';\nimport { sanitizeHtml } from '@/lib/sanitize-html';\nimport { cn } from '@/lib/utils';\n\nexport type NotificationType = 'info' | 'success' | 'error' | 'warning';\n\nexport interface NotificationBannerProps {\n\ttype?: NotificationType;\n\tdismissible?: boolean;\n\ttitle?: string;\n\tmessage?: string;\n\tonDismiss?: () => void;\n\tchildren?: React.ReactNode;\n\tasHTML?: boolean;\n\tdismissAriaLabel?: string;\n\tclassName?: string;\n}\n\ninterface BannerTone {\n\twrapper: string;\n\ticonRing: string;\n\ticonColor: string;\n\ttitle: string;\n\tclose: string;\n}\n\nconst TONES: Record<NotificationType, BannerTone> = {\n\tinfo: {\n\t\twrapper: 'border-info/30 bg-info/5',\n\t\ticonRing: 'bg-info/15',\n\t\ticonColor: 'text-info',\n\t\ttitle: 'text-info',\n\t\tclose: 'text-info/70 hover:text-info hover:bg-info/10',\n\t},\n\tsuccess: {\n\t\twrapper: 'border-success/30 bg-success/5',\n\t\ticonRing: 'bg-success/15',\n\t\ticonColor: 'text-success',\n\t\ttitle: 'text-success',\n\t\tclose: 'text-success/70 hover:text-success hover:bg-success/10',\n\t},\n\terror: {\n\t\twrapper: 'border-destructive/30 bg-destructive/5',\n\t\ticonRing: 'bg-destructive/15',\n\t\ticonColor: 'text-destructive',\n\t\ttitle: 'text-destructive',\n\t\tclose: 'text-destructive/70 hover:text-destructive hover:bg-destructive/10',\n\t},\n\twarning: {\n\t\twrapper: 'border-warning/40 bg-warning/10',\n\t\ticonRing: 'bg-warning/20',\n\t\ticonColor: 'text-warning-foreground',\n\t\ttitle: 'text-warning-foreground',\n\t\tclose: 'text-warning-foreground/70 hover:text-warning-foreground hover:bg-warning/20',\n\t},\n};\n\nconst ICONS: Record<NotificationType, React.ElementType> = {\n\tinfo: Info,\n\tsuccess: BadgeCheck,\n\terror: CircleAlert,\n\twarning: AlertTriangle,\n};\n\nfunction SanitizedSpan({ html }: { html: string }) {\n\treturn React.createElement('span', { dangerouslySetInnerHTML: { __html: html } });\n}\n\nexport function NotificationBanner({\n\ttype = 'info',\n\tdismissible = false,\n\ttitle,\n\tmessage,\n\tonDismiss,\n\tchildren,\n\tasHTML = false,\n\tdismissAriaLabel = 'Dismiss notification',\n\tclassName,\n}: NotificationBannerProps) {\n\tconst tone = TONES[type];\n\tconst IconComponent = ICONS[type];\n\tconst sanitizedHtml = React.useMemo(\n\t\t() => sanitizeHtml(message ?? (typeof children === 'string' ? children : '')),\n\t\t[children, message],\n\t);\n\tconst hasTitle = !!title;\n\n\treturn (\n\t\t<div\n\t\t\trole=\"status\"\n\t\t\tclassName={cn('notification-banner--component', \n\t\t\t\t'flex w-full items-start gap-3 rounded-lg border px-4 py-3',\n\t\t\t\t'animate-in fade-in-0 slide-in-from-bottom-1 duration-200',\n\t\t\t\ttone.wrapper,\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t>\n\t\t\t<span\n\t\t\t\taria-hidden=\"true\"\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'mt-0.5 inline-flex size-8 shrink-0 items-center justify-center rounded-full',\n\t\t\t\t\ttone.iconRing,\n\t\t\t\t\ttone.iconColor,\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t<IconComponent className=\"size-4\" />\n\t\t\t</span>\n\n\t\t\t<div className=\"min-w-0 flex-1\">\n\t\t\t\t{hasTitle && (\n\t\t\t\t\t<Text\n\t\t\t\t\t\ttag=\"div\"\n\t\t\t\t\t\tweight=\"semibold\"\n\t\t\t\t\t\tclassName=\"leading-snug text-foreground\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{title}\n\t\t\t\t\t</Text>\n\t\t\t\t)}\n\t\t\t\t<Text\n\t\t\t\t\ttag=\"div\"\n\t\t\t\t\ttype={hasTitle ? 'secondary' : 'main'}\n\t\t\t\t\tclassName={cn('break-words leading-snug', hasTitle && 'mt-0.5')}\n\t\t\t\t>\n\t\t\t\t\t{!!asHTML && <SanitizedSpan html={sanitizedHtml} />}\n\t\t\t\t\t{!asHTML && (message ?? children)}\n\t\t\t\t</Text>\n\t\t\t</div>\n\n\t\t\t{!!dismissible && (\n\t\t\t\t<Button\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\tbuttonStyle=\"ghost\"\n\t\t\t\t\tsize=\"icon-small\"\n\t\t\t\t\taria-label={dismissAriaLabel}\n\t\t\t\t\tonClick={onDismiss}\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t'-mr-1 inline-flex size-7 shrink-0 items-center justify-center rounded-md transition-colors',\n\t\t\t\t\t\t'focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/40',\n\t\t\t\t\t\ttone.close,\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t<X className=\"size-4\" />\n\t\t\t\t</Button>\n\t\t\t)}\n\t\t</div>\n\t);\n}\n\nNotificationBanner.displayName = 'NotificationBanner';\n\nexport default NotificationBanner;\n","/**\n * PlaceholderPattern — diagonal-stripe SVG fill suitable as a skeleton or\n * empty-region indicator. Uses a unique pattern id per instance so multiple\n * copies on the same page don't collide.\n */\nimport { useId } from 'react';\n\nimport { cn } from '@/lib/utils';\nexport interface PlaceholderPatternProps {\n\tclassName?: string;\n}\n\nexport function PlaceholderPattern({ className }: PlaceholderPatternProps) {\n\tconst patternId = useId();\n\n\treturn (\n\t\t<svg\n\t\t\tclassName={cn('placeholder-pattern--component', className)}\n\t\t\tfill=\"none\"\n\t\t\tstroke=\"currentColor\"\n\t\t\taria-hidden=\"true\"\n\t\t>\n\t\t\t<defs>\n\t\t\t\t<pattern\n\t\t\t\t\tid={patternId}\n\t\t\t\t\tx=\"0\"\n\t\t\t\t\ty=\"0\"\n\t\t\t\t\twidth=\"10\"\n\t\t\t\t\theight=\"10\"\n\t\t\t\t\tpatternUnits=\"userSpaceOnUse\"\n\t\t\t\t>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M-3 13 15-5M-5 5l18-18M-1 21 17 3\"\n\t\t\t\t\t\tstroke=\"currentColor\"\n\t\t\t\t\t\tstrokeWidth=\"0.75\"\n\t\t\t\t\t\tstrokeLinecap=\"square\"\n\t\t\t\t\t\tvectorEffect=\"non-scaling-stroke\"\n\t\t\t\t\t/>\n\t\t\t\t</pattern>\n\t\t\t</defs>\n\t\t\t<rect\n\t\t\t\tstroke=\"none\"\n\t\t\t\tfill={`url(#${patternId})`}\n\t\t\t\twidth=\"100%\"\n\t\t\t\theight=\"100%\"\n\t\t\t/>\n\t\t</svg>\n\t);\n}\n\nPlaceholderPattern.displayName = 'PlaceholderPattern';\n\n","/**\n * ShowIf — conditional render gate. Returns `children` when `when` is truthy,\n * otherwise the optional `fallback`. Useful for inline presentation logic\n * where a ternary would be noisier than a self-explanatory tag.\n */\nimport type { ReactNode } from 'react';\n\nexport type ShowIfProps = { when: boolean; children: ReactNode; fallback?: ReactNode };\n\nexport function ShowIf({ when, children, fallback = null }: ShowIfProps) {\n\tif (when) return children;\n\tif (fallback) return fallback;\n\treturn null;\n}\n\nShowIf.displayName = 'ShowIf';\n\nexport default ShowIf;\n\n","/**\n * ThrottleAlert — destructive alert for rate-limit / throttling errors.\n *\n * Single header icon, primary message, and a tight inline meta row showing\n * `attempts` and `remaining`. Use as a banner above a form when a request\n * has been blocked and the user must wait. Strings overridable for i18n.\n */\nimport { ShieldAlert, Clock, RotateCcw } from 'lucide-react';\n\nimport { Text } from '@/components/typography';\nimport { useStrings, type StringsProp } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nexport interface ThrottleAlertStrings {\n\tmaxAttempts: string;\n\ttryAgainIn: string;\n}\n\nexport const defaultThrottleAlertStrings: ThrottleAlertStrings = {\n\tmaxAttempts: 'Max attempts',\n\ttryAgainIn: 'Try again in',\n};\n\nexport interface ThrottleAlertProps {\n\tmessage: string;\n\tattempts: number;\n\tremaining: string;\n\tclassName?: string;\n\tstrings?: StringsProp<ThrottleAlertStrings>;\n}\n\nexport function ThrottleAlert({\n\tmessage,\n\tattempts,\n\tremaining,\n\tclassName,\n\tstrings: stringsProp,\n}: ThrottleAlertProps) {\n\tconst strings = useStrings(defaultThrottleAlertStrings, stringsProp);\n\n\treturn (\n\t\t<div\n\t\t\trole=\"alert\"\n\t\t\tclassName={cn('throttle-alert--component', \n\t\t\t\t'flex items-start gap-3 rounded-lg border border-destructive/30 bg-destructive/5 px-4 py-3',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t>\n\t\t\t<span\n\t\t\t\taria-hidden=\"true\"\n\t\t\t\tclassName=\"mt-0.5 inline-flex size-8 shrink-0 items-center justify-center rounded-full bg-destructive/15 text-destructive\"\n\t\t\t>\n\t\t\t\t<ShieldAlert className=\"size-4\" />\n\t\t\t</span>\n\t\t\t<div className=\"min-w-0 flex-1 space-y-1.5\">\n\t\t\t\t<Text weight=\"medium\" className=\"text-destructive leading-snug\">\n\t\t\t\t\t{message}\n\t\t\t\t</Text>\n\t\t\t\t<div className=\"flex flex-wrap items-center gap-x-4 gap-y-1 text-xs text-destructive/80\">\n\t\t\t\t\t<span className=\"inline-flex items-center gap-1.5\">\n\t\t\t\t\t\t<RotateCcw className=\"size-3\" aria-hidden=\"true\" />\n\t\t\t\t\t\t<span>{strings.maxAttempts}</span>\n\t\t\t\t\t\t<span className=\"font-semibold tabular-nums text-destructive\">{attempts}</span>\n\t\t\t\t\t</span>\n\t\t\t\t\t<span className=\"inline-flex items-center gap-1.5\">\n\t\t\t\t\t\t<Clock className=\"size-3\" aria-hidden=\"true\" />\n\t\t\t\t\t\t<span>{strings.tryAgainIn}</span>\n\t\t\t\t\t\t<span className=\"font-semibold tabular-nums text-destructive\">{remaining}</span>\n\t\t\t\t\t</span>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n\nThrottleAlert.displayName = 'ThrottleAlert';\n","/**\n * VisuallyHidden — hides content from sighted users while keeping it readable\n * by assistive tech (screen readers, voice). Use to label icon-only buttons,\n * give context to status changes, or expose extra structure for AT users.\n */\nimport * as React from 'react';\n\nimport { cn } from '@/lib/utils';\n\nexport interface VisuallyHiddenProps {\n\tchildren: React.ReactNode;\n\tclassName?: string;\n}\n\nexport function VisuallyHidden({ children, className }: VisuallyHiddenProps) {\n\treturn (\n\t\t<span\n\t\t\tclassName={cn('visually-hidden--component', \n\t\t\t\t'absolute w-px h-px p-0 -m-px overflow-hidden whitespace-nowrap border-0',\n\t\t\t\t'[clip:rect(0,0,0,0)]',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t>\n\t\t\t{children}\n\t\t</span>\n\t);\n}\n\nVisuallyHidden.displayName = 'VisuallyHidden';\n","/**\n * StackedAvatars — overlapping avatar group with optional `+N` overflow chip,\n * configurable size, and an optional semantic `tone` for fallbacks (initials)\n * when the consumer hasn't passed `imageUrl`.\n *\n * Wraps the shadcn AvatarGroup primitive with library-default sizes and a\n * deterministic tone picker so fallbacks stay stable without raw hue utilities.\n */\nimport * as React from 'react';\nimport {\n\tAvatar,\n\tAvatarFallback,\n\tAvatarGroup,\n\tAvatarGroupCount,\n\tAvatarImage,\n} from './avatar';\nimport { Text } from '@/components/typography';\nimport type { ComponentScale } from '@/lib/ui-provider';\nimport { cn } from '@/lib/utils';\n\nexport type StackedAvatarsSize = ComponentScale;\nexport type StackedAvatarTone =\n\t| 'muted'\n\t| 'primary'\n\t| 'secondary'\n\t| 'info'\n\t| 'success'\n\t| 'warning'\n\t| 'destructive';\n\nexport interface StackedAvatarUser {\n\tid?: string;\n\tname: string;\n\timageUrl?: string;\n\t/** Optional semantic tone override for this user's fallback. Numeric values map to the token set. */\n\ttone?: StackedAvatarTone | number;\n}\n\nexport interface StackedAvatarsProps {\n\tusers: StackedAvatarUser[];\n\tmax?: number;\n\tsize?: StackedAvatarsSize;\n\tclassName?: string;\n\t/** Whether to render a `+N` count when `users.length > max`. Default `true`. */\n\tshowOverflow?: boolean;\n\t/** Provide custom overflow text (e.g. \"+12 more\"). Default `+N`. */\n\toverflowFormatter?: (overflow: number) => React.ReactNode;\n\t/** Extra class names applied to each avatar root. */\n\tavatarClassName?: string;\n}\n\nconst FALLBACK_TONES: StackedAvatarTone[] = [\n\t'muted',\n\t'primary',\n\t'secondary',\n\t'info',\n\t'success',\n];\n\nconst FALLBACK_TONE_CLASSNAMES: Record<StackedAvatarTone, string> = {\n\tmuted: 'bg-muted text-muted-foreground',\n\tprimary: 'bg-primary/10 text-primary',\n\tsecondary: 'bg-secondary text-secondary-foreground',\n\tinfo: 'bg-info/10 text-info',\n\tsuccess: 'bg-success/10 text-success',\n\twarning: 'bg-warning/15 text-warning',\n\tdestructive: 'bg-destructive/10 text-destructive',\n};\n\nfunction getInitials(name: string, compact = false): string {\n\tconst parts = name.trim().split(/\\s+/);\n\tif (parts.length === 0) return '?';\n\tif (compact) return parts[0].slice(0, 1).toUpperCase();\n\tif (parts.length === 1) return parts[0].slice(0, 2).toUpperCase();\n\treturn (parts[0][0] + parts[parts.length - 1][0]).toUpperCase();\n}\n\nfunction pickFallbackTone(seed: string | number, override?: StackedAvatarTone | number) {\n\tif (typeof override === 'string') {\n\t\treturn override;\n\t}\n\tif (typeof override === 'number') {\n\t\treturn FALLBACK_TONES[Math.abs(override) % FALLBACK_TONES.length];\n\t}\n\tconst key = typeof seed === 'number' ? seed : Array.from(seed).reduce((s, c) => s + c.charCodeAt(0), 0);\n\treturn FALLBACK_TONES[key % FALLBACK_TONES.length];\n}\n\nfunction normalizeStackedAvatarsSize(size: StackedAvatarsSize | string | undefined): StackedAvatarsSize {\n\tif (size === 'small' || size === 'default') return size;\n\tif (size === 'xs' || size === 'sm') return 'small';\n\treturn 'default';\n}\n\nexport function StackedAvatars({\n\tusers,\n\tmax = 4,\n\tsize = 'default',\n\tclassName,\n\tshowOverflow = true,\n\toverflowFormatter,\n\tavatarClassName,\n}: StackedAvatarsProps) {\n\tconst visible = users.slice(0, max);\n\tconst overflow = Math.max(0, users.length - max);\n\tconst resolvedSize = normalizeStackedAvatarsSize(size);\n\n\treturn (\n\t\t<AvatarGroup className={cn('stacked-avatars--component', className)}>\n\t\t\t{visible.map((user, index) => {\n\t\t\t\tconst initials = getInitials(user.name, resolvedSize === 'small');\n\t\t\t\tconst fallbackTone = pickFallbackTone(user.id ?? user.name ?? index, user.tone);\n\t\t\t\treturn (\n\t\t\t\t\t<Avatar\n\t\t\t\t\t\tkey={user.id ?? `${user.name}-${index}`}\n\t\t\t\t\t\tsize={resolvedSize}\n\t\t\t\t\t\tclassName={cn('ring-background', avatarClassName)}\n\t\t\t\t\t\ttitle={user.name}\n\t\t\t\t\t>\n\t\t\t\t\t\t{user.imageUrl ? (\n\t\t\t\t\t\t\t<AvatarImage src={user.imageUrl} alt={user.name} />\n\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t<AvatarFallback\n\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t'font-semibold',\n\t\t\t\t\t\t\t\tFALLBACK_TONE_CLASSNAMES[fallbackTone],\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{initials}\n\t\t\t\t\t\t</AvatarFallback>\n\t\t\t\t\t</Avatar>\n\t\t\t\t);\n\t\t\t})}\n\t\t\t{!!showOverflow && overflow > 0 && (\n\t\t\t\t<AvatarGroupCount>\n\t\t\t\t\t<Text size=\"xs\" weight=\"semibold\">\n\t\t\t\t\t\t{overflowFormatter ? overflowFormatter(overflow) : `+${overflow}`}\n\t\t\t\t\t</Text>\n\t\t\t\t</AvatarGroupCount>\n\t\t\t)}\n\t\t</AvatarGroup>\n\t);\n}\n\nStackedAvatars.displayName = 'StackedAvatars';\n","/**\n * DateBlock — compact \"boxed\" date display showing weekday + day-of-month\n * + optional month and time. Built on `date-fns` so locales propagate\n * naturally (`enGB`, `bg`, …).\n *\n * Two layouts:\n * - `stacked` (default) — three lines: weekday / day / month\n * - `inline` — single row: weekday + day + month + optional time\n *\n * Time can render `inline` (right of the date), `below` (under the date\n * block), or `hidden`. Compact rooms (booking lists) typically use\n * `stacked` with `time=\"below\"`.\n */\nimport { format, type Locale } from 'date-fns';\n\nimport { Text } from '@/components/typography';\nimport { useStrings, type StringsProp } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nexport type DateBlockLayout = 'stacked' | 'inline';\nexport type DateBlockTimePlacement = 'inline' | 'below' | 'hidden';\nexport type DateBlockTone = 'default' | 'muted' | 'primary' | 'inverse' | 'success' | 'warning' | 'destructive' | 'info';\n\nexport interface DateBlockStrings {\n\t/** Used by `inline` layout when month is hidden (e.g. \"Apr 30 · 14:00\"). */\n\tseparator: string;\n}\n\nexport const defaultDateBlockStrings: DateBlockStrings = {\n\tseparator: '·',\n};\n\nexport interface DateBlockProps {\n\t/** Date instance, ISO string, or unix timestamp. */\n\tdate: Date | string | number;\n\t/** ISO time string (`HH:mm`) or already-formatted time string. */\n\ttime?: string | null;\n\t/** date-fns `Locale` (e.g. `enGB`, `bg`). Defaults to user-agent. */\n\tlocale?: Locale;\n\t/** Layout. Default `stacked`. */\n\tlayout?: DateBlockLayout;\n\t/** Where to place the time. Default `inline` for `inline` layout, `below` for `stacked`. */\n\ttimePlacement?: DateBlockTimePlacement;\n\t/** Tone of the boxed block. Default `default` (card surface). */\n\ttone?: DateBlockTone;\n\t/** Whether to render a card-like box around the block. Default `true` for stacked, `false` for inline. */\n\tboxed?: boolean;\n\t/** Show month label. Default `true`. */\n\tshowMonth?: boolean;\n\t/** Custom format for the day-of-month token (date-fns format). Default `'d'`. */\n\tdayFormat?: string;\n\t/** Custom format for the weekday token. Default `'EEE'`. */\n\tweekdayFormat?: string;\n\t/** Custom format for the month token. Default `'MMM'`. */\n\tmonthFormat?: string;\n\tclassName?: string;\n\tstrings?: StringsProp<DateBlockStrings>;\n}\n\nconst toneClassMap: Record<DateBlockTone, { bg: string; text: string; border: string; accent: string; subtle: string }> = {\n\tdefault: { bg: 'bg-card', text: 'text-foreground', border: 'border-border', accent: 'text-foreground', subtle: 'text-muted-foreground' },\n\tinverse: { bg: 'bg-primary', text: 'text-background', border: 'border-primary', accent: 'text-background/80', subtle: 'text-background/65' },\n\tmuted: { bg: 'bg-muted/50', text: 'text-foreground', border: 'border-border', accent: 'text-foreground', subtle: 'text-muted-foreground' },\n\tprimary: { bg: 'bg-primary/10', text: 'text-foreground', border: 'border-primary/30', accent: 'text-primary', subtle: 'text-muted-foreground' },\n\tsuccess: { bg: 'bg-success/10', text: 'text-foreground', border: 'border-success/30', accent: 'text-success', subtle: 'text-muted-foreground' },\n\twarning: { bg: 'bg-warning/15', text: 'text-foreground', border: 'border-warning/40', accent: 'text-warning-foreground', subtle: 'text-muted-foreground' },\n\tdestructive: { bg: 'bg-destructive/10', text: 'text-foreground', border: 'border-destructive/30', accent: 'text-destructive', subtle: 'text-muted-foreground' },\n\tinfo: { bg: 'bg-info/10', text: 'text-foreground', border: 'border-info/30', accent: 'text-info', subtle: 'text-muted-foreground' },\n};\n\nfunction resolveDate(input: Date | string | number): Date {\n\tif (input instanceof Date) return input;\n\tconst d = typeof input === 'number' ? new Date(input) : new Date(input);\n\treturn d;\n}\n\nexport function DateBlock({\n\tdate,\n\ttime,\n\tlocale,\n\tlayout = 'stacked',\n\ttimePlacement,\n\ttone = 'default',\n\tboxed,\n\tshowMonth = true,\n\tdayFormat = 'd',\n\tweekdayFormat = 'EEE',\n\tmonthFormat = 'MMM',\n\tclassName,\n\tstrings: stringsProp,\n}: DateBlockProps) {\n\tconst resolved = resolveDate(date);\n\tconst strings = useStrings(defaultDateBlockStrings, stringsProp);\n\tconst tones = toneClassMap[tone];\n\tconst dateValid = !Number.isNaN(resolved.getTime());\n\n\tconst weekday = dateValid ? format(resolved, weekdayFormat, locale ? { locale } : undefined) : '';\n\tconst day = dateValid ? format(resolved, dayFormat, locale ? { locale } : undefined) : '';\n\tconst month = dateValid ? format(resolved, monthFormat, locale ? { locale } : undefined) : '';\n\n\tconst resolvedTimePlacement: DateBlockTimePlacement =\n\t\ttimePlacement ?? (layout === 'inline' ? 'inline' : 'below');\n\tconst useBox = boxed ?? layout === 'stacked';\n\n\tif (layout === 'inline') {\n\t\treturn (\n\t\t\t<span\n\t\t\t\tclassName={cn('date-block--component', \n\t\t\t\t\t'inline-flex items-center gap-1.5 tabular-nums',\n\t\t\t\t\tuseBox && cn('rounded-md border px-2 py-1', tones.bg, tones.border),\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t<Text size=\"xs\" weight=\"semibold\" className={cn(tones.accent, 'uppercase tracking-wide')}>\n\t\t\t\t\t{weekday}\n\t\t\t\t</Text>\n\t\t\t\t<Text weight=\"semibold\">{day}</Text>\n\t\t\t\t{!!showMonth && (\n\t\t\t\t\t<Text size=\"xs\" type=\"secondary\" className=\"uppercase tracking-wide\">\n\t\t\t\t\t\t{month}\n\t\t\t\t\t</Text>\n\t\t\t\t)}\n\t\t\t\t{!!time && resolvedTimePlacement === 'inline' && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Text size=\"xs\" type=\"discrete\" aria-hidden>\n\t\t\t\t\t\t\t{strings.separator}\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t<Text size=\"xs\" type=\"secondary\">{time}</Text>\n\t\t\t\t\t</>\n\t\t\t\t)}\n\t\t\t</span>\n\t\t);\n\t}\n\n\treturn (\n\t\t<div className={cn('inline-flex flex-col items-center gap-0.5', className)}>\n\t\t\t<div\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'flex flex-col items-center justify-center gap-1 tabular-nums',\n\t\t\t\t\tuseBox && cn('w-14 min-h-14 rounded-md border px-1.5 py-1.5', tones.bg, tones.border),\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t<Text\n\t\t\t\t\tsize=\"xs\"\n\t\t\t\t\tweight=\"semibold\"\n\t\t\t\t\tstyle={{ lineHeight: 1 }}\n\t\t\t\t\tclassName={cn(tones.accent, 'uppercase tracking-wider')}\n\t\t\t\t>\n\t\t\t\t\t{weekday}\n\t\t\t\t</Text>\n\t\t\t\t<Text size=\"lg\" weight=\"bold\" style={{ lineHeight: 1 }} className={tones.text}>\n\t\t\t\t\t{day}\n\t\t\t\t</Text>\n\t\t\t\t{!!showMonth && (\n\t\t\t\t\t<Text\n\t\t\t\t\t\tsize=\"xs\"\n\t\t\t\t\t\tstyle={{ lineHeight: 1 }}\n\t\t\t\t\t\tclassName={cn(tones.subtle, 'uppercase tracking-wider')}\n\t\t\t\t\t>\n\t\t\t\t\t\t{month}\n\t\t\t\t\t</Text>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t\t{!!time && resolvedTimePlacement === 'below' && (\n\t\t\t\t<Text size=\"xs\" type=\"secondary\" className=\"tabular-nums\">\n\t\t\t\t\t{time}\n\t\t\t\t</Text>\n\t\t\t)}\n\t\t\t{!!time && resolvedTimePlacement === 'inline' && (\n\t\t\t\t<Text size=\"xs\" type=\"secondary\" className=\"tabular-nums\">\n\t\t\t\t\t{time}\n\t\t\t\t</Text>\n\t\t\t)}\n\t\t</div>\n\t);\n}\n\nDateBlock.displayName = 'DateBlock';\n","import { Collapsible as CollapsiblePrimitive } from \"@base-ui/react/collapsible\"\nimport * as React from \"react\"\n\nimport { Slot } from \"@/components/ui/slot\"\n\nfunction Collapsible({ ...props }: CollapsiblePrimitive.Root.Props) {\n return <CollapsiblePrimitive.Root data-slot=\"collapsible\" {...props} />\n}\n\nfunction CollapsibleTrigger({\n asChild = false,\n nativeButton,\n render,\n children,\n ...props\n}: CollapsiblePrimitive.Trigger.Props & { asChild?: boolean; nativeButton?: boolean }) {\n const slotRender = asChild ? <Slot /> : undefined\n const safeRender: CollapsiblePrimitive.Trigger.Props[\"render\"] = typeof render === \"function\"\n ? ((renderProps, state) => {\n const { nativeButton: _nativeButton, ...rest } = renderProps as Record<string, unknown>\n void _nativeButton\n return render(rest as typeof renderProps, state)\n })\n : render\n let inferredNativeButton = true\n if (asChild && React.isValidElement(children)) {\n if (typeof children.type === \"string\") {\n inferredNativeButton = children.type === \"button\"\n } else {\n const childProps = (children.props ?? {}) as Record<string, unknown>\n inferredNativeButton = !(\"href\" in childProps)\n }\n }\n const resolvedNativeButton = nativeButton ?? (asChild ? inferredNativeButton : true)\n return (\n <CollapsiblePrimitive.Trigger\n data-slot=\"collapsible-trigger\"\n render={slotRender ?? safeRender}\n nativeButton={resolvedNativeButton}\n {...props}\n >\n {children}\n </CollapsiblePrimitive.Trigger>\n )\n}\n\nfunction CollapsibleContent({ ...props }: CollapsiblePrimitive.Panel.Props) {\n return (\n <CollapsiblePrimitive.Panel data-slot=\"collapsible-content\" {...props} />\n )\n}\n\nexport { Collapsible, CollapsibleTrigger, CollapsibleContent }\n","import { AlertTriangle, Info } from 'lucide-react';\nimport { useCallback, useMemo, type ReactNode } from 'react';\n\nimport { MoneyInput as BaseMoneyInput, type MoneyInputProps as BaseMoneyInputProps } from '@/components/base/forms/fields/money-input';\nimport { FormField } from '@/components/base/forms/form-field';\nimport { Text } from '@/components/typography';\nimport { Alert, AlertDescription } from '@/components/base/display/alert';\nimport { cn } from '@/lib/utils';\nimport type { CurrencyCode } from '@/lib/ui-provider';\n\n/** Optional money payload for migration hints. Consumers map their domain\n * shape into this — `formatted` is the consumer's pre-rendered display\n * string for the alternate currency leg. */\nexport interface MoneyData {\n amount?: number | string | null;\n currency?: string | null;\n /** Optional original/record currency that triggered a migration warning. */\n recordCurrency?: string | null;\n /** Optional secondary leg the consumer formatted for display. */\n pair?: { formatted?: string | null } | null;\n}\n\nexport interface MoneyInputData {\n amount: number;\n currency: CurrencyCode;\n}\n\nexport interface MoneyInputProps extends Omit<BaseMoneyInputProps, 'invalid'> {\n /** Optional money payload for migration hints */\n money?: MoneyData | null;\n /** Display label */\n label?: string;\n /** Hint next to label */\n hint?: string;\n /** Helper text below input */\n helperText?: string;\n /** Error message */\n error?: string;\n /** Required indicator */\n required?: boolean;\n /** Invalid state override */\n invalid?: boolean;\n /** Optional change handler for combined data */\n onChangeData?: (data: MoneyInputData) => void;\n /** Record currency for migration detection */\n recordCurrency?: CurrencyCode;\n /** Show migration warning block */\n showMigrationWarning?: boolean;\n /** Custom migration warning message */\n migrationWarningMessage?: ReactNode;\n /** Show original currency hint */\n showOriginalHint?: boolean;\n}\n\nconst defaultEmptyFormatted = '—';\n\nconst resolveFormatted = (formatted: unknown): string =>\n typeof formatted === 'string' ? formatted.trim() : '';\n\nexport function MoneyInput({\n money,\n currency = 'EUR',\n onChangeData,\n recordCurrency: recordCurrencyProp,\n label,\n hint,\n helperText,\n error,\n required,\n invalid,\n showMigrationWarning = true,\n migrationWarningMessage,\n showOriginalHint = true,\n className,\n onChange,\n onCurrencyChange,\n ...props\n}: MoneyInputProps) {\n const recordCurrency = recordCurrencyProp ?? money?.recordCurrency ?? undefined;\n\n const willMigrate = useMemo(\n () => recordCurrency !== undefined && recordCurrency !== currency,\n [recordCurrency, currency],\n );\n\n const otherFormatted = useMemo(() => {\n if (!showOriginalHint) return '';\n return resolveFormatted(money?.pair?.formatted);\n }, [showOriginalHint, money?.pair?.formatted]);\n\n const showOriginalHintBlock = otherFormatted.length > 0 && !error;\n const showMigrationBlock = willMigrate && showMigrationWarning;\n\n const handleAmountChange = useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n onChange?.(e);\n const parsed = Number.parseFloat(e.target.value);\n const safeAmount = Number.isFinite(parsed) ? parsed : 0;\n onChangeData?.({ amount: safeAmount, currency });\n },\n [onChange, onChangeData, currency],\n );\n\n const handleCurrencyChange = useCallback(\n (nextCurrency: CurrencyCode) => {\n onCurrencyChange?.(nextCurrency);\n const parsedValue = Number.parseFloat(String(props.value ?? ''));\n const safeAmount = Number.isFinite(parsedValue) ? parsedValue : 0;\n onChangeData?.({ amount: safeAmount, currency: nextCurrency });\n },\n [onCurrencyChange, onChangeData, props.value],\n );\n\n const isInvalid = invalid ?? Boolean(error);\n\n const inputNode = (\n <BaseMoneyInput\n {...props}\n currency={currency}\n onChange={handleAmountChange}\n onCurrencyChange={handleCurrencyChange}\n invalid={isInvalid}\n />\n );\n\n const hasChrome = Boolean(label || hint || helperText || error || required);\n const renderedInput = hasChrome ? (\n <FormField\n label={label}\n hint={hint}\n helperText={helperText}\n error={error}\n required={required}\n >\n {inputNode}\n </FormField>\n ) : inputNode;\n\n return (\n <div className={cn('money-input--component', 'space-y-2', className)}>\n {renderedInput}\n\n {!!showOriginalHintBlock && (\n <div className=\"flex items-center gap-1.5 text-muted-foreground\">\n <Info className=\"h-3.5 w-3.5 shrink-0\" />\n <Text size=\"xs\" type=\"secondary\">\n {otherFormatted || defaultEmptyFormatted}\n </Text>\n </div>\n )}\n\n {!!showMigrationBlock && (\n <Alert className=\"border-warning/50 bg-warning/5 py-2\">\n <AlertTriangle className=\"h-4 w-4 text-warning\" />\n <AlertDescription className=\"text-warning-foreground text-xs\">\n {migrationWarningMessage ??\n `Currency will be converted from ${recordCurrency ?? ''} to ${currency}.`}\n </AlertDescription>\n </Alert>\n )}\n </div>\n );\n}\n\nMoneyInput.displayName = 'MoneyInput';\n","/**\n * BooleanIndicator — labelled yes/no chip showing the truth of a value with an\n * optional check/cross icon. Use for compact metadata grids where each row\n * answers a single boolean question. Strings overridable for i18n.\n */\nimport { CheckCircle2, XCircle } from 'lucide-react';\nimport React from 'react';\nimport { Badge, type ComposedBadgeVariant } from '@/components/base/badge';\nimport { Text } from '@/components/typography';\nimport { useStrings, type StringsProp } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nexport interface BooleanIndicatorStrings {\n\ttrue: string;\n\tfalse: string;\n}\n\nexport const defaultBooleanIndicatorStrings: BooleanIndicatorStrings = {\n\ttrue: 'Yes',\n\tfalse: 'No',\n};\n\nexport type BooleanIndicatorProps = {\n\tlabel: React.ReactNode;\n\tvalue?: boolean | null;\n\tshowIcon?: boolean;\n\ttrueVariant?: ComposedBadgeVariant;\n\tfalseVariant?: ComposedBadgeVariant;\n\tclassName?: string;\n\tbadgeClassName?: string;\n\tstrings?: StringsProp<BooleanIndicatorStrings>;\n\t/** @deprecated Use `strings.true` instead. */\n\ttrueLabel?: React.ReactNode;\n\t/** @deprecated Use `strings.false` instead. */\n\tfalseLabel?: React.ReactNode;\n};\n\nexport function BooleanIndicator({\n\tlabel,\n\tvalue = false,\n\ttrueLabel,\n\tfalseLabel,\n\tshowIcon = true,\n\ttrueVariant = 'success',\n\tfalseVariant = 'secondary',\n\tclassName,\n\tbadgeClassName,\n\tstrings: stringsProp,\n}: BooleanIndicatorProps) {\n\tconst strings = useStrings(defaultBooleanIndicatorStrings, stringsProp);\n\tconst isTrue = Boolean(value);\n\tconst Icon = isTrue ? CheckCircle2 : XCircle;\n\tconst badgeVariant = isTrue ? trueVariant : falseVariant;\n\tconst fallback = isTrue ? trueLabel : falseLabel;\n\tconst content = fallback ?? (isTrue ? strings.true : strings.false);\n\n\treturn (\n\t\t<div\n\t\t\tclassName={cn('boolean-indicator--component', \n\t\t\t\t'flex items-center justify-between gap-space-md rounded-radius border border-border/60 bg-muted/30 px-row-x py-row-y',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t>\n\t\t\t<Text size=\"inherit\" type=\"secondary\" className=\"text-xs uppercase tracking-wide\">\n\t\t\t\t{label}\n\t\t\t</Text>\n\t\t\t<Badge\n\t\t\t\tvariant={badgeVariant}\n\t\t\t\tclassName={cn('whitespace-nowrap', badgeClassName)}\n\t\t\t>\n\t\t\t\t{!!showIcon && <Icon className=\"size-icon\" />}\n\t\t\t\t{content}\n\t\t\t</Badge>\n\t\t</div>\n\t);\n}\n\nBooleanIndicator.displayName = 'BooleanIndicator';\n\nexport default BooleanIndicator;\n","import { cva, type VariantProps } from \"class-variance-authority\"\n\nimport { cn } from \"@/lib/utils\"\n\nfunction Empty({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"empty\"\n className={cn(\n \"gap-4 rounded-lg border-dashed p-12 flex w-full min-w-0 flex-1 flex-col items-center justify-center text-center text-balance\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction EmptyHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"empty-header\"\n className={cn(\n \"gap-2 flex max-w-sm flex-col items-center\",\n className\n )}\n {...props}\n />\n )\n}\n\nconst emptyMediaVariants = cva(\n \"mb-2 flex shrink-0 items-center justify-center [&_svg]:pointer-events-none [&_svg]:shrink-0\",\n {\n variants: {\n variant: {\n default: \"bg-transparent\",\n icon: \"bg-muted text-foreground flex size-10 shrink-0 items-center justify-center rounded-lg [&_svg:not([class*='size-'])]:size-6\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n)\n\nfunction EmptyMedia({\n className,\n variant = \"default\",\n ...props\n}: React.ComponentProps<\"div\"> & VariantProps<typeof emptyMediaVariants>) {\n return (\n <div\n data-slot=\"empty-icon\"\n data-variant={variant}\n className={cn(emptyMediaVariants({ variant, className }))}\n {...props}\n />\n )\n}\n\nfunction EmptyTitle({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"empty-title\"\n className={cn(\"text-lg font-medium tracking-tight\", className)}\n {...props}\n />\n )\n}\n\nfunction EmptyDescription({ className, ...props }: React.ComponentProps<\"p\">) {\n return (\n <div\n data-slot=\"empty-description\"\n className={cn(\n \"text-sm/relaxed text-muted-foreground [&>a:hover]:text-primary [&>a]:underline [&>a]:underline-offset-4\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction EmptyContent({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"empty-content\"\n className={cn(\n \"gap-4 text-sm flex w-full max-w-sm min-w-0 flex-col items-center text-balance\",\n className\n )}\n {...props}\n />\n )\n}\n\nexport {\n Empty,\n EmptyHeader,\n EmptyTitle,\n EmptyDescription,\n EmptyContent,\n EmptyMedia,\n}\n","import { Progress as ProgressPrimitive } from \"@base-ui/react/progress\"\n\nimport { cn } from \"@/lib/utils\"\n\nfunction Progress({\n className,\n children,\n value,\n ...props\n}: ProgressPrimitive.Root.Props) {\n return (\n <ProgressPrimitive.Root\n value={value}\n data-slot=\"progress\"\n className={cn(\"flex flex-wrap gap-3\", className)}\n {...props}\n >\n {children}\n <ProgressTrack>\n <ProgressIndicator />\n </ProgressTrack>\n </ProgressPrimitive.Root>\n )\n}\n\nfunction ProgressTrack({ className, ...props }: ProgressPrimitive.Track.Props) {\n return (\n <ProgressPrimitive.Track\n className={cn(\n \"bg-muted h-1.5 rounded-full relative flex w-full items-center overflow-x-hidden\",\n className\n )}\n data-slot=\"progress-track\"\n {...props}\n />\n )\n}\n\nfunction ProgressIndicator({\n className,\n ...props\n}: ProgressPrimitive.Indicator.Props) {\n return (\n <ProgressPrimitive.Indicator\n data-slot=\"progress-indicator\"\n className={cn(\"bg-primary h-full transition-all\", className)}\n {...props}\n />\n )\n}\n\nfunction ProgressLabel({ className, ...props }: ProgressPrimitive.Label.Props) {\n return (\n <ProgressPrimitive.Label\n className={cn(\"text-sm font-medium\", className)}\n data-slot=\"progress-label\"\n {...props}\n />\n )\n}\n\nfunction ProgressValue({ className, ...props }: ProgressPrimitive.Value.Props) {\n return (\n <ProgressPrimitive.Value\n className={cn(\"text-muted-foreground ml-auto text-sm tabular-nums\", className)}\n data-slot=\"progress-value\"\n {...props}\n />\n )\n}\n\nexport {\n Progress,\n ProgressTrack,\n ProgressIndicator,\n ProgressLabel,\n ProgressValue,\n}\n","import { formatHex, oklch } from 'culori';\nimport QR from 'qrcode';\nimport type { HTMLAttributes } from 'react';\nimport { useEffect, useState } from 'react';\nimport { cn } from '@/lib/utils';\n\nexport type QRCodeProps = HTMLAttributes<HTMLDivElement> & {\n\tdata: string;\n\tforeground?: string;\n\tbackground?: string;\n\trobustness?: 'L' | 'M' | 'Q' | 'H';\n};\n\nconst oklchRegex = /oklch\\\\(([.\\\\d-]+)\\\\s+([.\\\\d]+)\\\\s+([.\\\\d]+)\\\\)/;\n\nfunction getOklch(color: string, fallback: [number, number, number]) {\n\tconst oklchMatch = color.match(oklchRegex);\n\n\tif (!oklchMatch) {\n\t\treturn { l: fallback[0], c: fallback[1], h: fallback[2] };\n\t}\n\n\treturn {\n\t\tl: Number.parseFloat(oklchMatch[1]),\n\t\tc: Number.parseFloat(oklchMatch[2]),\n\t\th: Number.parseFloat(oklchMatch[3]),\n\t};\n}\n\nexport function QRCode({\n\tdata,\n\tforeground,\n\tbackground,\n\trobustness = 'M',\n\tclassName,\n\t...props\n}: QRCodeProps) {\n\tconst [svg, setSvg] = useState<string | null>(null);\n\n\tuseEffect(() => {\n\t\tconst generateQR = async () => {\n\t\t\ttry {\n\t\t\t\tconst text = String(data ?? '').trim();\n\t\t\t\tif (!text) {\n\t\t\t\t\tsetSvg(null);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst styles = getComputedStyle(document.documentElement);\n\t\t\t\tconst foregroundColor =\n\t\t\t\t\tforeground ?? styles.getPropertyValue('--foreground');\n\t\t\t\tconst backgroundColor =\n\t\t\t\t\tbackground ?? styles.getPropertyValue('--background');\n\n\t\t\t\tconst foregroundOklch = getOklch(foregroundColor, [\n\t\t\t\t\t0.21, 0.006, 285.885,\n\t\t\t\t]);\n\t\t\t\tconst backgroundOklch = getOklch(backgroundColor, [0.985, 0, 0]);\n\n\t\t\t\tconst newSvg = await QR.toString(text, {\n\t\t\t\t\ttype: 'svg',\n\t\t\t\t\tcolor: {\n\t\t\t\t\t\tdark: formatHex(\n\t\t\t\t\t\t\toklch({ mode: 'oklch', ...foregroundOklch }),\n\t\t\t\t\t\t),\n\t\t\t\t\t\tlight: formatHex(\n\t\t\t\t\t\t\toklch({ mode: 'oklch', ...backgroundOklch }),\n\t\t\t\t\t\t),\n\t\t\t\t\t},\n\t\t\t\t\twidth: 200,\n\t\t\t\t\terrorCorrectionLevel: robustness,\n\t\t\t\t\tmargin: 0,\n\t\t\t\t});\n\n\t\t\t\tsetSvg(newSvg);\n\t\t\t} catch {\n\t\t\t\t// QR generation failure (invalid data, oversized payload) — render falls\n\t\t\t\t// back to empty SVG; consumer can surface their own error from the parent.\n\t\t\t\tsetSvg('');\n\t\t\t}\n\t\t};\n\n\t\tvoid generateQR();\n\t}, [data, foreground, background, robustness]);\n\n\tif (!svg) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<div\n\t\t\tclassName={cn('qr-code--component', 'size-full', '[&_svg]:size-full', className)}\n\t\t\tdangerouslySetInnerHTML={{ __html: svg }}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nexport default QRCode;\n\nQRCode.displayName = 'QRCode';\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ const e=require("./chunk-CMqjfN_6.cjs"),t=require("../lib/strings.cjs"),n=require("./ui-provider-CrsJ_dGn.cjs"),r=require("../lib/utils.cjs"),i=require("./button-CfQtOuBK.cjs"),a=require("./buttons-DABiSx6N.cjs"),o=require("./typography-CWEobAJV.cjs"),s=require("./icon-badge-CU6ZkcER.cjs"),c=require("./badge-C65rt1M9.cjs"),l=require("./cards-m03XN10f.cjs"),u=require("./input-Dvvmn96E.cjs"),d=require("./checkbox-ECGg8wjW.cjs"),f=require("./form-sizing-DJus3nK3.cjs"),p=require("./textarea-bHFAtwYd.cjs"),m=require("./select-CG5Yq-6A.cjs"),h=require("./display-BqoPOdof.cjs"),g=require("./card-radio-group-DKhZhBFV.cjs"),_=require("./date-picker-CrC-lHyF.cjs"),v=require("./popover-dWR7-MzY.cjs");let y=require("react");y=e.t(y,1);let b=require("react/jsx-runtime"),x=require("lucide-react"),S=require("@base-ui/react/switch"),C=require("@base-ui/react/slider"),w=require("@base-ui/react/radio"),T=require("@base-ui/react/radio-group"),E=require("@dnd-kit/core"),D=require("@dnd-kit/sortable"),O=require("@dnd-kit/utilities"),k=require("react-hook-form");var A={showPassword:`Show password`,hidePassword:`Hide password`},j=y.forwardRef(function({visible:e,defaultVisible:n=!1,onVisibilityChange:i,revealable:a=!0,wrapperClassName:o,visibilityButtonClassName:s,className:c,disabled:l,isLoading:d,inputStrings:f,strings:p,...m},h){let g=t.useStrings(A,p),[_,v]=y.useState(n),S=e!==void 0,C=S?e:_,w=l||d,T=y.useCallback(()=>{let e=!C;S||v(e),i?.(e)},[S,C,i]);return(0,b.jsxs)(`div`,{className:r.cn(`password-input--component`,`relative`,o),children:[(0,b.jsx)(u.t,{ref:h,type:C?`text`:`password`,disabled:l,isLoading:d,className:r.cn(a&&`pe-10`,c),strings:f,...m}),!!a&&(0,b.jsx)(`button`,{type:`button`,className:r.cn(`password-input--toggle`,`text-muted-foreground/80 hover:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 absolute inset-y-0 end-0 flex h-full w-9 items-center justify-center rounded-e-md transition-[color,box-shadow] outline-none focus-visible:z-10 focus-visible:ring-[3px] disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50`,s),"aria-label":C?g.hidePassword:g.showPassword,"aria-pressed":C,disabled:w,onMouseDown:e=>e.preventDefault(),onClick:T,children:C?(0,b.jsx)(x.EyeOff,{className:`size-4`,"aria-hidden":`true`}):(0,b.jsx)(x.Eye,{className:`size-4`,"aria-hidden":`true`})})]})});j.displayName=`PasswordInput`;function M(e,{separator:t=`-`,lowercase:n=!0,trim:r=!0}={}){let i=t||`-`,a=i.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`),o=String(e??``).normalize(`NFKD`).replace(/[\u0300-\u036f]/g,``).replace(/&/g,` and `).replace(/['’]/g,``);return n&&(o=o.toLowerCase()),o=o.replace(/[^\p{Letter}\p{Number}]+/gu,i).replace(RegExp(`${a}{2,}`,`g`),i),r&&(o=o.replace(RegExp(`^${a}|${a}$`,`g`),``)),o}var N=y.forwardRef(function({value:e,slugify:t,separator:n=`-`,lowercase:i=!0,trim:a=!0,wrapperClassName:o,className:s,...c},l){let d=y.useMemo(()=>t?.(e)??M(e,{separator:n,lowercase:i,trim:a}),[i,n,t,a,e]);return(0,b.jsx)(`div`,{className:r.cn(`slug-field--component`,o),children:(0,b.jsx)(u.t,{ref:l,...c,type:`text`,value:d,readOnly:!0,className:s})})});N.displayName=`SlugField`;var P={placeholder:`Select an option`},F=`__select_empty__`,I=e=>e===``||e===null?F:e??void 0,L=e=>{if(e!==F)return e},R=(0,y.memo)((0,y.forwardRef)(({options:e,placeholder:i,strings:a,allowClear:o=!1,invalid:s,size:c,className:l,onChange:u,disabled:d,defaultOpen:p,open:h,onOpenChange:g,name:_,required:v,"aria-label":x,value:S,defaultValue:C},w)=>{let T=t.useStrings(P,a),{defaultControlSize:E}=n.o(),D=f.f(c,E),O=i??T.placeholder,k=(0,y.useMemo)(()=>{let t=e.map(e=>({...e,value:I(e.value)??``}));return o&&(t.some(e=>e.value===F)||t.unshift({label:O,value:F})),t},[e,o,O]),A=(0,y.useMemo)(()=>I(S),[S]),j=(0,y.useMemo)(()=>I(C),[C]),M=(0,y.useMemo)(()=>{let e=A??j;if(e!==void 0)return k.find(t=>t.value===e)?.label},[j,k,A]),N=(0,y.useCallback)(e=>{e!==null&&u?.(L(e))},[u]),R=!!s;return(0,b.jsxs)(m.t,{onValueChange:e=>N(e),disabled:d,defaultOpen:p,open:h,onOpenChange:g,name:_,required:v,value:A,defaultValue:j,children:[(0,b.jsx)(m.a,{ref:w,"aria-label":x,"aria-invalid":R||void 0,className:r.cn(`select--component`,`flex w-full items-center justify-between rounded-radius border !shadow-none`,`transition-[color,box-shadow] outline-none`,f.u[D],f.l[D],f.s[D],`bg-transparent dark:bg-input/30`,`data-[placeholder]:text-muted-foreground`,`focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]`,`aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive`,`disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50`,l),children:(0,b.jsx)(m.o,{placeholder:O,children:M})}),(0,b.jsx)(m.n,{children:(0,b.jsx)(m.r,{children:k.map(e=>(0,b.jsxs)(m.i,{value:e.value,disabled:e.disabled,children:[!!e.icon&&(0,b.jsxs)(`div`,{className:r.cn(`flex items-center`,f.s[D]),children:[(0,b.jsx)(`span`,{className:r.cn(f.a[D],`shrink-0`),children:e.icon}),e.label]}),!e.icon&&e.label]},e.value))})})]})}));R.displayName=`Select`;function z({className:e,size:t=`default`,...n}){return(0,b.jsx)(S.Switch.Root,{"data-slot":`switch`,"data-size":t,className:r.cn(`data-checked:bg-primary data-unchecked:bg-input focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 aria-invalid:border-destructive shrink-0 rounded-full border border-transparent focus-visible:ring-[3px] aria-invalid:ring-[3px] data-[size=default]:h-5 data-[size=default]:w-9 data-[size=sm]:h-4 data-[size=sm]:w-7 peer group/switch relative inline-flex items-center transition-all outline-none after:absolute after:-inset-x-3 after:-inset-y-2 data-disabled:cursor-not-allowed data-disabled:opacity-50`,e),...n,children:(0,b.jsx)(S.Switch.Thumb,{"data-slot":`switch-thumb`,className:`bg-background rounded-full shadow-sm group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 group-data-[size=default]/switch:data-checked:translate-x-[16px] group-data-[size=sm]/switch:data-checked:translate-x-[12px] group-data-[size=default]/switch:data-unchecked:translate-x-0.5 group-data-[size=sm]/switch:data-unchecked:translate-x-0.5 pointer-events-none block ring-0 transition-transform`})})}var B=(0,y.forwardRef)(function({onCheckedChange:e,invalid:t,className:n,...i},a){let o=(0,y.useId)(),s=(0,y.useMemo)(()=>i.name?String(i.name):i.id?String(i.id):`switch-${o}`,[o,i.id,i.name]),c=i.id??s,l=(0,y.useCallback)(t=>{e?.({target:{name:s,value:t}})},[s,e]);return(0,b.jsx)(z,{ref:a,...i,onCheckedChange:l,id:c,name:s,"aria-invalid":t||void 0,className:r.cn(`switch--component`,t&&`data-[state=unchecked]:border-destructive`,n)})});B.displayName=`Switch`;var V=(0,y.forwardRef)(function({onCheckedChange:e,invalid:t,className:n,...i},a){return(0,b.jsx)(z,{ref:a,...i,onCheckedChange:t=>e?.(t),"aria-invalid":t||void 0,className:r.cn(t&&`data-[state=unchecked]:border-destructive`,n)})});V.displayName=`ToggleSwitch`;function H({label:e,description:t,hint:n,icon:i,name:a,value:s,defaultValue:c,onChange:l,disabled:u=!1,invalid:d,className:f}){let p=s!==void 0,[m,h]=(0,y.useState)(c??!1),g=p?s??!1:m,_=(0,y.useId)(),v=(0,y.useMemo)(()=>a??_,[a,_]),x=typeof t==`string`&&t.trim()!==``,S=x?`${v}-description`:void 0,C=(0,y.useCallback)(e=>{u||(p||h(e),l?.(e))},[u,p,l]),w=(0,y.useCallback)(e=>{e.target.closest(`[role="switch"]`)||C(!g)},[g,C]);return(0,b.jsxs)(`div`,{"aria-invalid":d||void 0,onClick:w,className:r.cn(`switch-card--component`,`group relative flex items-start gap-3 rounded-lg border bg-card p-4 transition-[background,border-color,box-shadow] duration-150`,`border-border`,g&&`border-primary bg-primary/[0.04]`,`aria-invalid:border-destructive aria-invalid:ring-2 aria-invalid:ring-destructive/20`,!u&&`cursor-pointer hover:border-foreground/20 hover:bg-muted/30`,u&&`cursor-not-allowed opacity-50`,f),children:[!!a&&(0,b.jsx)(`input`,{type:`hidden`,name:a,value:g?`1`:`0`,"aria-hidden":`true`}),!!i&&(0,b.jsx)(`span`,{className:r.cn(`mt-0.5 inline-flex size-9 shrink-0 items-center justify-center rounded-md transition-colors`,g?`bg-primary/10 text-primary`:`bg-muted/50 text-muted-foreground group-hover:bg-muted group-hover:text-foreground`),children:(0,b.jsx)(i,{className:`size-4`})}),(0,b.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-0.5`,children:[(0,b.jsx)(o.a,{htmlFor:v,className:r.cn(`block font-semibold tracking-tight`,u?`cursor-not-allowed`:`cursor-pointer`),children:e}),!!x&&(0,b.jsx)(o.s,{type:`secondary`,className:`leading-snug`,children:t}),!!n&&(0,b.jsx)(o.s,{size:`xs`,type:`discrete`,className:`leading-snug`,children:n})]}),(0,b.jsx)(`div`,{className:`mt-1 flex shrink-0 items-center`,children:(0,b.jsx)(z,{id:v,checked:g,onCheckedChange:e=>C(e),disabled:u,"aria-label":e,"aria-describedby":S})}),!!x&&(0,b.jsx)(`span`,{id:`${v}-description`,className:`sr-only`,children:t})]})}H.displayName=`SwitchCard`;function U({label:e,description:t,kind:n=`switch`,value:i,defaultValue:a,onChange:s,disabled:c=!1,invalid:l=!1,name:u,className:f,controlPosition:p=`trailing`}){let m=i!==void 0,[h,g]=(0,y.useState)(a??!1),_=m?i??!1:h,v=(0,y.useId)(),x=(0,y.useCallback)(e=>{c||(m||g(e),s?.(e))},[c,m,s]),S=e=>{e.target.closest(`[role="switch"], [role="checkbox"], input[type="checkbox"]`)||x(!_)},C=n===`switch`?(0,b.jsx)(z,{id:v,name:u,checked:_,onCheckedChange:e=>x(e),disabled:c,"aria-invalid":l||void 0}):(0,b.jsx)(d.n,{id:v,name:u,checked:_,onCheckedChange:e=>x(e===!0),disabled:c,"aria-invalid":l||void 0}),w=(0,b.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,b.jsx)(o.a,{htmlFor:v,className:r.cn(`block leading-snug`,c?`cursor-not-allowed opacity-50`:`cursor-pointer`),children:e}),!!t&&(0,b.jsx)(o.s,{size:`xs`,type:`secondary`,className:`mt-0.5 leading-snug`,children:t})]});return(0,b.jsxs)(`div`,{role:`group`,onClick:S,className:r.cn(`toggle-field--component`,`flex items-start gap-3 rounded-md py-1`,c&&`pointer-events-none`,f),children:[p===`leading`&&(0,b.jsx)(`div`,{className:`mt-0.5 flex shrink-0`,children:C}),w,p===`trailing`&&(0,b.jsx)(`div`,{className:`mt-0.5 flex shrink-0`,children:C})]})}U.displayName=`ToggleField`;var ee={placeholder:`Add a tag…`,emptyRecommendations:`No recommendations found.`,clearAll:`Clear all`,summary:(e,t)=>`${e} / ${t} tags`};function W({value:e=[],onChange:n,placeholder:i,recommendations:s,maxTags:l,showMaxTags:d=!1,allowDuplicates:f=!1,validate:p,disabled:m=!1,showClearAll:h=!1,renderTag:g,delimiter:_=/[\n,]/,addOnBlur:v=!0,minLength:S=1,maxLength:C,emptyMessage:w,sortTags:T=!1,caseSensitive:E=!1,field:D,invalid:O,className:k,strings:A}){let j=t.useStrings(t.useStrings(ee,i!==void 0||w!==void 0?{placeholder:i,emptyRecommendations:w}:void 0),A),[M,N]=(0,y.useState)(``),[P,F]=(0,y.useState)(!1),[I,L]=(0,y.useState)(-1),R=(0,y.useRef)(null),z=(0,y.useCallback)(e=>{if(typeof e==`string`)return e;if(D&&typeof e==`object`&&e){let t=e[D];return typeof t==`string`?t:t==null?``:String(t)}return String(e)},[D]),B=(0,y.useCallback)(t=>typeof e[0]==`string`||e.length===0?t:D?{[D]:t}:t,[D,e]),V=(0,y.useMemo)(()=>s?s.map(e=>e&&typeof e==`object`&&`value`in e&&`label`in e?e:{value:e,label:z(e)}):[],[s,z]),H=(0,y.useMemo)(()=>{if(!V.length||!M)return V;let t=E?M:M.toLowerCase(),n=new Set(e.map(e=>{let t=z(e);return E?t:t.toLowerCase()}));return V.filter(e=>{let r=E?e.label:e.label.toLowerCase(),i=z(e.value),a=E?i:i.toLowerCase();return(r.includes(t)||a.includes(t))&&(f||!n.has(a))})},[V,M,e,f,E,z]),U=(0,y.useMemo)(()=>T?[...e].sort((e,t)=>{let n=z(e),r=z(t);return n.localeCompare(r)}):e,[e,T,z]),W=(0,y.useCallback)(t=>{let r=typeof t==`string`?B(t):t,i=z(r).trim();if(!i||i.length<S||C&&i.length>C||l&&e.length>=l||!f&&e.some(e=>{let t=z(e);return E?t===i:t.toLowerCase()===i.toLowerCase()})||p&&!p(r))return;let a=[...e,r];n?.(a),N(``),F(!1),L(-1)},[e,n,l,f,p,S,C,E,z,B]),G=(0,y.useCallback)(t=>{let r=e.filter((e,n)=>n!==t);n?.(r)},[e,n]),te=(0,y.useCallback)(e=>{let t=e.target.value;N(t),L(-1),s&&s.length>0&&F(!0)},[s]),ne=(0,y.useCallback)(t=>{m||(t.key===`Enter`?(t.preventDefault(),P&&I>=0&&I<H.length?(W(H[I].value),L(-1)):M.trim()&&W(M)):t.key===`Tab`?M&&(t.preventDefault(),W(M)):t.key===`ArrowDown`?(t.preventDefault(),P&&L(e=>e<H.length-1?e+1:e)):t.key===`ArrowUp`?(t.preventDefault(),P&&L(e=>e>0?e-1:0)):t.key===`Escape`?(F(!1),L(-1)):t.key===`Backspace`&&!M&&e.length>0&&G(e.length-1))},[m,P,I,H,M,W,G,e.length]),re=(0,y.useCallback)(e=>{m||(e.preventDefault(),e.clipboardData.getData(`text`).split(_).map(e=>e.trim()).filter(Boolean).forEach(e=>W(e)))},[m,_,W]),ie=(0,y.useCallback)(()=>{setTimeout(()=>{F(!1),v&&M&&W(M)},200)},[v,M,W]),ae=(0,y.useCallback)(()=>{n?.([]),N(``)},[n]),K=(0,y.useCallback)((e,t,n)=>{let i=`${z(e)}-${t}`;return(0,b.jsxs)(c.t,{variant:`secondary`,className:r.cn(`tags-input--component`,`gap-1 pr-1 font-normal`),children:[z(e),(0,b.jsx)(`button`,{type:`button`,"aria-label":`Remove ${z(e)}`,className:r.cn(`inline-flex size-icon items-center justify-center rounded-full`,`text-muted-foreground/70 hover:bg-foreground/10 hover:text-foreground`,`outline-none focus-visible:ring-2 focus-visible:ring-ring/50`,`disabled:opacity-50 disabled:pointer-events-none`),onClick:()=>n(t),disabled:m,children:(0,b.jsx)(x.X,{className:`size-icon-sm`,"aria-hidden":`true`})})]},i)},[z,m]),oe=!!O;return(0,b.jsxs)(`div`,{className:r.cn(`w-full relative`,k),children:[(0,b.jsxs)(`div`,{className:`relative`,children:[(0,b.jsx)(u.t,{ref:R,type:`text`,placeholder:j.placeholder,value:M,onChange:te,onKeyDown:ne,onPaste:re,onBlur:ie,onFocus:()=>{s&&H.length>0&&F(!0)},disabled:m||l!==void 0&&e.length>=l,invalid:oe,maxLength:C,className:`w-full`}),!!s&&!!P&&(0,b.jsx)(`div`,{className:`absolute top-full left-0 right-0 z-50 mt-1 max-h-[200px] overflow-y-auto rounded-md bg-popover p-1 text-sm text-popover-foreground shadow-md ring-1 ring-foreground/10`,children:H.length>0?H.map((t,n)=>{let i=z(t.value),a=e.some(e=>z(e)===z(t.value));return(0,b.jsxs)(`button`,{type:`button`,onMouseDown:e=>{e.preventDefault(),W(t.value),L(-1),R.current?.focus()},onMouseEnter:()=>L(n),className:r.cn(`relative flex w-full cursor-pointer items-center justify-between gap-space-sm rounded-md px-control-sm py-row-y text-sm`,`hover:bg-accent hover:text-accent-foreground`,`focus-visible:outline-none`,I===n&&`bg-accent text-accent-foreground`),children:[(0,b.jsx)(`span`,{children:t.label}),(0,b.jsx)(x.Check,{className:r.cn(`ml-auto size-icon-sm`,a?`opacity-100`:`opacity-0`)})]},i)}):(0,b.jsx)(o.s,{tag:`div`,size:`xs`,type:`secondary`,className:`px-2 py-row-y`,children:j.emptyRecommendations})})]}),U.length>0&&(0,b.jsxs)(`div`,{className:`mt-space-md flex flex-wrap items-center gap-space-sm`,children:[U.map((e,t)=>g?g(e,t,G):K(e,t,G)),!!h&&e.length>0&&!m&&(0,b.jsx)(a.n,{type:`button`,size:`small`,onClick:ae,className:`ml-auto`,children:j.clearAll})]}),!!l&&!!d&&(0,b.jsx)(o.s,{size:`xs`,type:`secondary`,className:`mt-1`,children:j.summary(e.length,l)})]})}W.displayName=`TagsInput`;var G={prefixPlaceholder:`Prefix`},te={US:{value:`+1`,label:`United States`,iso:`US`},CA:{value:`+1`,label:`Canada`,iso:`CA`},AU:{value:`+61`,label:`Australia`,iso:`AU`},BG:{value:`+359`,label:`Bulgaria`,iso:`BG`},GR:{value:`+30`,label:`Greece`,iso:`GR`},GB:{value:`+44`,label:`United Kingdom`,iso:`GB`},DE:{value:`+49`,label:`Germany`,iso:`DE`},FR:{value:`+33`,label:`France`,iso:`FR`},IT:{value:`+39`,label:`Italy`,iso:`IT`},ES:{value:`+34`,label:`Spain`,iso:`ES`},NL:{value:`+31`,label:`Netherlands`,iso:`NL`},BE:{value:`+32`,label:`Belgium`,iso:`BE`},AT:{value:`+43`,label:`Austria`,iso:`AT`},CH:{value:`+41`,label:`Switzerland`,iso:`CH`},PL:{value:`+48`,label:`Poland`,iso:`PL`},RO:{value:`+40`,label:`Romania`,iso:`RO`},RS:{value:`+381`,label:`Serbia`,iso:`RS`},HR:{value:`+385`,label:`Croatia`,iso:`HR`},SI:{value:`+386`,label:`Slovenia`,iso:`SI`},MK:{value:`+389`,label:`North Macedonia`,iso:`MK`},TR:{value:`+90`,label:`Turkey`,iso:`TR`},RU:{value:`+7`,label:`Russia`,iso:`RU`},UA:{value:`+380`,label:`Ukraine`,iso:`UA`},SK:{value:`+421`,label:`Slovakia`,iso:`SK`},CZ:{value:`+420`,label:`Czech Republic`,iso:`CZ`},HU:{value:`+36`,label:`Hungary`,iso:`HU`},PT:{value:`+351`,label:`Portugal`,iso:`PT`},IE:{value:`+353`,label:`Ireland`,iso:`IE`},SE:{value:`+46`,label:`Sweden`,iso:`SE`},NO:{value:`+47`,label:`Norway`,iso:`NO`},DK:{value:`+45`,label:`Denmark`,iso:`DK`},FI:{value:`+358`,label:`Finland`,iso:`FI`},CY:{value:`+357`,label:`Cyprus`,iso:`CY`},AL:{value:`+355`,label:`Albania`,iso:`AL`},ME:{value:`+382`,label:`Montenegro`,iso:`ME`},BA:{value:`+387`,label:`Bosnia and Herzegovina`,iso:`BA`},XK:{value:`+383`,label:`Kosovo`,iso:`XK`},MD:{value:`+373`,label:`Moldova`,iso:`MD`},BY:{value:`+375`,label:`Belarus`,iso:`BY`},LT:{value:`+370`,label:`Lithuania`,iso:`LT`},LV:{value:`+371`,label:`Latvia`,iso:`LV`},EE:{value:`+372`,label:`Estonia`,iso:`EE`}},ne=[`US`,`CA`,`GB`,`DE`,`FR`,`IT`,`ES`,`AU`],re=e=>typeof e==`string`?te[e.toUpperCase()]??null:e,ie=e=>e.map(re).filter(e=>e!==null),ae=(e,t)=>{let n=e.trim().replace(/\s+/g,` `).replace(/[^\d ()+-]/g,``);return t&&n.startsWith(t)&&(n=n.slice(t.length).replace(/^[\s-]+/,``)),t&&n.startsWith(`0`)&&(n=n.slice(1)),n},K=(e,t)=>e?e.startsWith(`+`)?e:te[e.toUpperCase()]?.value??e:t[0]?.value??``;function oe({normalizeOnBlur:e=!0,onBlur:i,onChange:a,prefix:s,defaultPrefix:c,prefixes:l=ne,onPrefixChange:d,disablePrefixSelector:p=!1,prefixPlaceholder:h,prefixWidth:g=`w-30`,showCountryName:_=!0,showPrefixInDropdown:v=!0,invalid:x,disabled:S,className:C,size:w,strings:T,...E},D){let{defaultControlSize:O}=n.o(),k=f.f(w,O),A=t.useStrings(G,T),j=(0,y.useMemo)(()=>ie(l),[l]),[M,N]=(0,y.useState)((0,y.useMemo)(()=>K(c,j),[c,j])),P=s!==void 0,F=P?K(s,j):M,I=(0,y.useMemo)(()=>j.find(e=>e.value===F),[j,F]),L=(0,y.useCallback)(e=>{e!==null&&(P||N(e),d?.(e))},[P,d]),R=(0,y.useCallback)(e=>{if(!a)return;let t=e.target.value;if(F&&t.startsWith(F)){let n=t.slice(F.length).replace(/^[\s-]+/,``),r=n.startsWith(`0`)?n.slice(1):n;if(r!==t){a({...e,target:{...e.target,value:r},currentTarget:{...e.currentTarget,value:r}});return}}a(e)},[a,F]),z=(0,y.useCallback)(t=>{if(e&&typeof a==`function`){let e=ae(t.target.value,F);e!==t.target.value&&a({...t,target:{...t.target,value:e},currentTarget:{...t.currentTarget,value:e}})}i?.(t)},[e,a,i,F]);if(j.length===0||p){let e=F||c;return e?(0,b.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,b.jsx)(`div`,{"aria-invalid":x||void 0,className:r.cn(`flex items-center justify-center rounded-md border border-input bg-muted px-3`,f.u[k],S&&`opacity-50`,`aria-invalid:border-destructive aria-invalid:ring-2 aria-invalid:ring-destructive/20`),children:(0,b.jsx)(o.s,{tag:`span`,type:`secondary`,weight:`medium`,children:e})}),(0,b.jsx)(`div`,{className:`flex-1`,children:(0,b.jsx)(u.t,{ref:D,size:k,type:`tel`,autoComplete:`tel`,inputMode:`tel`,onChange:R,onBlur:z,invalid:x,disabled:S,className:C,...E})})]}):(0,b.jsx)(u.t,{ref:D,size:k,type:`tel`,autoComplete:`tel`,inputMode:`tel`,onChange:R,onBlur:z,invalid:x,disabled:S,className:r.cn(`phone-input--component`,C),...E})}return(0,b.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,b.jsxs)(m.t,{value:F,onValueChange:e=>L(e),disabled:S,children:[(0,b.jsx)(m.a,{"aria-invalid":x||void 0,className:r.cn(`border-input bg-transparent shrink-0 !shadow-none`,f.u[k],`focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]`,`aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive`,g,S&&`opacity-50 cursor-not-allowed`),children:(0,b.jsx)(m.o,{placeholder:h??A.prefixPlaceholder,children:!!I&&(0,b.jsx)(o.s,{tag:`span`,children:I.value})})}),(0,b.jsx)(m.n,{children:(0,b.jsx)(m.r,{children:j.map(e=>(0,b.jsx)(m.i,{value:e.value,children:(0,b.jsxs)(`div`,{className:`flex items-center gap-2`,children:[!!v&&(0,b.jsx)(o.s,{tag:`span`,weight:`medium`,className:`min-w-13`,children:e.value}),!!_&&(0,b.jsx)(o.s,{tag:`span`,type:`secondary`,lineHeight:`tight`,children:e.label})]})},e.value))})})]}),(0,b.jsx)(`div`,{className:`flex-1`,children:(0,b.jsx)(u.t,{ref:D,size:k,type:`tel`,autoComplete:`tel`,inputMode:`tel`,onChange:R,onBlur:z,invalid:x,disabled:S,className:C,...E})})]})}var se=(0,y.memo)(y.forwardRef(oe));se.displayName=`PhoneInput`;var ce=(0,y.forwardRef)(function({decimalPlaces:e=2,min:t=0,max:n=100,step:r,...i},a){return(0,b.jsx)(h.A,{className:`percentage-input--component`,ref:a,decimalPlaces:e,allowNegative:!1,min:t,max:n,step:r,endAddon:`%`,...i})});ce.displayName=`PercentageInput`;function le({className:e,defaultValue:t,value:n,min:i=0,max:a=100,...o}){let s=y.useMemo(()=>Array.isArray(n)?n:Array.isArray(t)?t:[i,a],[n,t,i,a]);return(0,b.jsx)(C.Slider.Root,{className:r.cn(`data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full`,e),"data-slot":`slider`,defaultValue:t,value:n,min:i,max:a,thumbAlignment:`edge`,...o,children:(0,b.jsxs)(C.Slider.Control,{className:`relative flex w-full touch-none items-center select-none data-disabled:opacity-50 data-[orientation=vertical]:h-full data-[orientation=vertical]:min-h-40 data-[orientation=vertical]:w-auto data-[orientation=vertical]:flex-col`,children:[(0,b.jsx)(C.Slider.Track,{"data-slot":`slider-track`,className:`relative grow overflow-hidden rounded-full bg-muted select-none data-[orientation=horizontal]:h-1.5 data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-1.5`,children:(0,b.jsx)(C.Slider.Indicator,{"data-slot":`slider-range`,className:`absolute bg-primary select-none data-[orientation=horizontal]:h-full data-[orientation=vertical]:w-full`})}),Array.from({length:s.length},(e,t)=>(0,b.jsx)(C.Slider.Thumb,{"data-slot":`slider-thumb`,className:`block size-4 shrink-0 rounded-full border border-primary bg-white shadow-sm ring-ring/50 transition-[color,box-shadow] select-none hover:ring-4 focus-visible:ring-4 focus-visible:outline-hidden disabled:pointer-events-none disabled:opacity-50`},t))]})})}function ue({name:e,id:t,value:n,defaultValue:i,min:a=0,max:s=100,step:c=1,disabled:l=!1,invalid:u=!1,onChange:d,onValueChange:f,onValueCommitted:p,showValue:m=!1,formatValue:h,unit:g,className:_,orientation:v=`horizontal`},x){let S=(0,y.useId)(),C=t??`slider-${S}`,w=e??C,T=(0,y.useCallback)(e=>{let t=Array.isArray(e)?e[0]:e;f?.(t),d?.({target:{name:w,value:t}})},[w,d,f]),E=(0,y.useCallback)(e=>{let t=Array.isArray(e)?e[0]:e;p?.(t)},[p]),D=(0,y.useMemo)(()=>{if(!m)return null;let e=n??i??a;return h?h(e):g?`${e}${g}`:String(e)},[m,n,i,a,h,g]),O=n===void 0?void 0:[n],k=i===void 0?[a]:[i];return(0,b.jsxs)(`div`,{className:r.cn(`slider--component`,`flex items-center gap-3`,_),children:[(0,b.jsx)(le,{ref:x,id:C,value:O,defaultValue:k,min:a,max:s,step:c,disabled:l,orientation:v,onValueChange:T,onValueCommitted:E,"aria-invalid":u||void 0,className:r.cn(`min-w-0 flex-1`,u&&`[&_[data-slot=slider-range]]:bg-destructive [&_[data-slot=slider-thumb]]:border-destructive`)}),!!m&&D!==null&&(0,b.jsx)(o.s,{tag:`span`,type:u?`error`:`secondary`,className:`min-w-8 shrink-0 text-right tabular-nums`,children:D})]})}var de=y.forwardRef(ue);de.displayName=`SliderField`;function fe({options:e,value:t,defaultValue:i,onChange:a,name:s,invalid:c,disabled:l,size:u,className:d}){let{defaultControlSize:p}=n.o(),m=g.r[f.f(u,p)];return(0,b.jsx)(T.RadioGroup,{value:t,defaultValue:i,onValueChange:e=>e&&a?.(e),name:s,disabled:l,"aria-invalid":c||void 0,className:r.cn(`list-radio-group--component`,`overflow-hidden rounded-md border [&>[role=radio]~[role=radio]]:border-t`,`aria-invalid:border-destructive aria-invalid:ring-2 aria-invalid:ring-destructive/20`,l&&`pointer-events-none opacity-50`,d),children:e.map(e=>(0,b.jsxs)(w.Radio.Root,{value:e.value,disabled:l||e.disabled,className:r.cn(`group flex w-full items-start gap-3 text-start outline-none cursor-pointer`,`transition-colors hover:bg-muted/40 focus-visible:bg-muted/40`,`data-[checked]:bg-primary/10`,`disabled:cursor-not-allowed disabled:opacity-50`,m),children:[(0,b.jsx)(`div`,{className:`mt-0.5 flex h-5 w-5 shrink-0 items-center justify-center rounded-full border border-primary group-data-[checked]:border-primary group-not-data-[checked]:border-muted-foreground/50`,children:(0,b.jsx)(w.Radio.Indicator,{render:(0,b.jsx)(x.Circle,{className:`h-2.5 w-2.5 fill-primary text-primary`})})}),(0,b.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,b.jsx)(o.s,{tag:`span`,weight:`medium`,lineHeight:`tight`,className:`block`,children:e.label}),!!e.description&&(0,b.jsx)(o.s,{tag:`span`,size:`xs`,type:`secondary`,className:`block mt-0.5`,children:e.description})]})]},e.value))})}fe.displayName=`ListRadioGroup`;var pe=[`floor`,`half_up`,`ceil`];function me({value:e,onChange:t,labels:n,placeholder:r,...i}){return(0,b.jsx)(R,{className:`rounding-mode-select--component`,options:(0,y.useMemo)(()=>pe.map(e=>({value:e,label:n?.[e]??e})),[n]),value:e,onChange:(0,y.useCallback)(e=>{t?.(e)},[t]),placeholder:r,...i})}me.displayName=`RoundingModeSelect`;var he={placeholder:`Select an item`},q=`__rich_select_empty__`,ge=(0,y.forwardRef)(({options:e,placeholder:i,strings:a,onChange:s,className:c,disabled:l,defaultOpen:u,open:d,onOpenChange:p,name:h,required:g,value:_,defaultValue:v,allowClear:x=!1,invalid:S,size:C},w)=>{let{defaultControlSize:T}=n.o(),E=f.f(C,T),D=t.useStrings(he,a),O=i??D.placeholder,k=(0,y.useCallback)(e=>{if(e!==q)return e===``||e==null?x?q:void 0:e},[x]),A=(0,y.useCallback)(e=>{if(e!==q)return e},[]),j=(0,y.useMemo)(()=>{let t=e.map(e=>({...e,value:k(e.value)??``}));return x&&(t.some(e=>e.label===O)||t.unshift({label:O,value:q})),t},[e,x,O,k]),M=(0,y.useMemo)(()=>k(_??void 0),[_,k]),N=(0,y.useMemo)(()=>k(v??void 0),[v,k]),P=_!==void 0,[F,I]=(0,y.useState)(N),L=P?M:F,R=(0,y.useMemo)(()=>j.find(e=>e.value===L),[L,j]),z=(0,y.useCallback)(e=>{e!=null&&(P||I(e),s?.(A(e)))},[P,s,A]),B=r.cn(`border-input bg-transparent w-full rounded-radius border outline-none transition-[color,box-shadow] !shadow-none`,f.u[E],f.c[E],`h-auto py-2`,`focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]`,`aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive aria-invalid:text-destructive`,`disabled:cursor-not-allowed disabled:opacity-50`,c),V=P?{value:M}:{};return(0,b.jsxs)(m.t,{onValueChange:e=>z(e),disabled:l,defaultOpen:u,open:d,onOpenChange:p,name:h,required:g,defaultValue:N,...V,children:[(0,b.jsx)(m.a,{ref:w,className:r.cn(`rich-select--component`,B),"aria-invalid":S,children:R?(0,b.jsx)(o.s,{tag:`span`,className:`text-left break-words whitespace-normal`,children:R.label}):(0,b.jsx)(m.o,{placeholder:O})}),(0,b.jsx)(m.n,{children:(0,b.jsx)(m.r,{children:j.map(e=>(0,b.jsx)(m.i,{value:e.value,disabled:e.disabled,children:(0,b.jsxs)(`div`,{className:`flex w-full items-center gap-2`,children:[!!e.icon&&(0,b.jsx)(`span`,{className:`w-4 h-4 shrink-0 flex items-center justify-center self-start mt-0.5`,children:e.icon}),(0,b.jsxs)(`div`,{className:`flex flex-col min-w-0 text-left flex-1`,children:[(0,b.jsx)(o.s,{tag:`span`,weight:`medium`,children:e.label}),!!e.description&&(0,b.jsx)(o.s,{tag:`span`,size:`xs`,type:`secondary`,lineHeight:`tight`,className:`mt-0.5 line-clamp-2`,children:e.description})]})]})},e.value))})})]})});ge.displayName=`RichSelect`;var _e={width:`Width`,height:`Height`,depth:`Depth`,unit:`Unit`,widthPlaceholder:`0.00`,heightPlaceholder:`0.00`,depthPlaceholder:`0.00`},ve=[{value:`g`,label:`g (grams)`},{value:`kg`,label:`kg (kilograms)`}],ye=(e,t)=>{if(!e)return{width:``,height:``,depth:``};if(t===`string`&&typeof e==`string`){let t=e.split(`x`).map(e=>e.trim());return{width:t[0]||``,height:t[1]||``,depth:t[2]||``}}return t===`object`&&typeof e==`object`?{width:e.width||``,height:e.height||``,depth:e.depth||``}:{width:``,height:``,depth:``}},be=(e,t,n,r)=>r===`string`?`${e}x${t}x${n}`:{width:e,height:t,depth:n};function xe({value:e,defaultValue:i,format:a=`string`,unit:s,defaultUnit:c=`g`,widthLabel:l,heightLabel:u,depthLabel:d,unitLabel:p,unitPlaceholder:g,widthPlaceholder:_,heightPlaceholder:v,depthPlaceholder:x,onChange:S,onUnitChange:C,decimalPlaces:w=2,min:T=0,max:E,showUnitSelector:D=!0,disableUnitSelector:O=!1,layout:k=`horizontal`,invalid:A,disabled:j=!1,className:M,size:N,strings:P}){let{defaultControlSize:F}=n.o(),I=f.f(N,F),L=t.useStrings(_e,P),R=l??L.width,z=u??L.height,B=d??L.depth,V=g??L.unit,H=_??L.widthPlaceholder,U=v??L.heightPlaceholder,ee=x??L.depthPlaceholder,W=k===`horizontal`,G=k===`vertical`,te=D===!0,ne=(p??``).length>0,re=G?R:``,ie=G?z:``,ae=G?B:``,K=e!==void 0,oe=s!==void 0,se=ye(K?e:i,a),[ce,le]=(0,y.useState)(se.width),[ue,de]=(0,y.useState)(se.height),[fe,pe]=(0,y.useState)(se.depth),[me,he]=(0,y.useState)(s||c),q=ye(e,a),ge=K?q.width:ce,xe=K?q.height:ue,Se=K?q.depth:fe,Ce=oe?s:me;(0,y.useEffect)(()=>{if(K){let t=ye(e,a);le(t.width),de(t.height),pe(t.depth)}},[e,a,K]);let we=(0,y.useCallback)((e,t)=>{let n=ge,r=xe,i=Se;e===`width`&&(n=t),e===`height`&&(r=t),e===`depth`&&(i=t),K||(le(n),de(r),pe(i));let o=be(n,r,i,a);S?.({target:{value:o}})},[ge,xe,Se,K,a,S]),Te=(0,y.useCallback)(e=>{if(e===null)return;let t=e;oe||he(t),C?.(t)},[oe,C]),Ee=(0,b.jsxs)(`div`,{className:`space-y-2`,children:[!!ne&&(0,b.jsx)(o.a,{className:`leading-6`,children:p}),(0,b.jsxs)(m.t,{value:Ce,onValueChange:e=>Te(e),disabled:j||O,children:[(0,b.jsx)(m.a,{"aria-invalid":A||void 0,className:r.cn(`border-input bg-transparent !shadow-none`,f.u[I],`focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]`,`aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive`,`w-32`,j&&`opacity-50 cursor-not-allowed`),children:(0,b.jsx)(m.o,{placeholder:V})}),(0,b.jsx)(m.n,{children:(0,b.jsx)(m.r,{children:ve.map(e=>(0,b.jsx)(m.i,{value:e.value,children:e.label},e.value))})})]})]});return(0,b.jsx)(`div`,{className:r.cn(`dimensions-input--component`,`space-y-2`,M),children:(0,b.jsxs)(`div`,{className:r.cn(`flex gap-2`,k===`vertical`?`flex-col`:`flex-row items-start`),children:[(0,b.jsxs)(`div`,{className:`flex-1 space-y-1`,children:[!!G&&!!re&&(0,b.jsx)(o.a,{children:re}),(0,b.jsx)(h.A,{size:I,value:ge,onChange:e=>we(`width`,e.target.value),placeholder:H,decimalPlaces:w,min:T,max:E,disabled:j,invalid:A,"aria-label":R}),!!W&&(0,b.jsx)(o.s,{size:`xs`,type:`secondary`,className:`text-center`,children:R})]}),k===`horizontal`&&(0,b.jsx)(`div`,{className:`flex items-center pt-2`,children:(0,b.jsx)(o.s,{tag:`span`,type:`secondary`,children:`×`})}),(0,b.jsxs)(`div`,{className:`flex-1 space-y-1`,children:[!!G&&!!ie&&(0,b.jsx)(o.a,{children:ie}),(0,b.jsx)(h.A,{size:I,value:xe,onChange:e=>we(`height`,e.target.value),placeholder:U,decimalPlaces:w,min:T,max:E,disabled:j,invalid:A,"aria-label":z}),!!W&&(0,b.jsx)(o.s,{size:`xs`,type:`secondary`,className:`text-center`,children:z})]}),k===`horizontal`&&(0,b.jsx)(`div`,{className:`flex items-center pt-2`,children:(0,b.jsx)(o.s,{tag:`span`,type:`secondary`,children:`×`})}),(0,b.jsxs)(`div`,{className:`flex-1 space-y-1`,children:[!!G&&!!ae&&(0,b.jsx)(o.a,{children:ae}),(0,b.jsx)(h.A,{size:I,value:Se,onChange:e=>we(`depth`,e.target.value),placeholder:ee,decimalPlaces:w,min:T,max:E,disabled:j,invalid:A,"aria-label":B}),!!W&&(0,b.jsx)(o.s,{size:`xs`,type:`secondary`,className:`text-center`,children:B})]}),!!te&&(0,b.jsxs)(`div`,{className:r.cn(k===`vertical`?`w-full`:`w-32 pt-0`),children:[Ee,!!W&&!ne&&(0,b.jsx)(o.s,{size:`xs`,type:`secondary`,className:`mt-1 text-center`,children:V})]})]})})}xe.displayName=`DimensionsInput`;var Se={unitLabel:``,unitPlaceholder:``},Ce=[{value:`g`,label:`g`},{value:`kg`,label:`kg`},{value:`lb`,label:`lb`},{value:`oz`,label:`oz`}];function we({value:e,defaultValue:i,unit:a,defaultUnit:s=`g`,onChange:c,onUnitChange:l,decimalPlaces:u=2,min:d=0,max:p,showUnitSelector:g=!0,disableUnitSelector:_=!1,unitLabel:v,unitPlaceholder:x,unitWidth:S=`w-24`,strings:C,invalid:w,disabled:T=!1,size:E,className:D}){let{defaultControlSize:O}=n.o(),k=f.f(E,O),A=t.useStrings(t.useStrings(Se,v!==void 0||x!==void 0?{unitLabel:v,unitPlaceholder:x}:void 0),C),j=e!==void 0,M=a!==void 0,[N,P]=(0,y.useState)(i??``),[F,I]=(0,y.useState)(a??s),L=j?e??``:N,R=M?a??s:F,z=(0,y.useCallback)(e=>{j||P(e.target.value),c?.({target:{value:e.target.value}})},[j,c]),B=(0,y.useCallback)(e=>{if(e===null)return;let t=e;M||I(t),l?.(t)},[M,l]),V=(0,y.useMemo)(()=>Ce,[]),H=A.unitLabel!==``;return(0,b.jsxs)(`div`,{className:r.cn(`weight-input--component`,`flex items-start gap-2`,D),children:[(0,b.jsx)(`div`,{className:`flex-1`,children:(0,b.jsx)(h.A,{size:k,value:L,onChange:z,decimalPlaces:u,allowNegative:!1,min:d,max:p,disabled:T,invalid:w})}),!!g&&(0,b.jsxs)(`div`,{className:`space-y-2`,children:[!!H&&(0,b.jsx)(o.a,{className:`leading-6`,children:A.unitLabel}),(0,b.jsxs)(m.t,{value:R,onValueChange:e=>B(e),disabled:T||_,children:[(0,b.jsx)(m.a,{"aria-invalid":w||void 0,className:r.cn(`border-input bg-transparent !shadow-none`,f.u[k],`focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]`,`aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive`,(T||_)&&`opacity-50 cursor-not-allowed`,S),children:(0,b.jsx)(m.o,{placeholder:A.unitPlaceholder||void 0})}),(0,b.jsx)(m.n,{children:(0,b.jsx)(m.r,{children:V.map(e=>(0,b.jsx)(m.i,{value:e.value,children:e.label},e.value))})})]})]})]})}we.displayName=`WeightInput`;var Te={latLabel:``,lngLabel:``,latPlaceholder:``,lngPlaceholder:``,previewLinkLabel:``},Ee=(e,t)=>{if(!e)return{lat:``,lng:``};if(t===`string`&&typeof e==`string`){let[t,n]=e.split(`,`).map(e=>e.trim());return{lat:t??``,lng:n??``}}return t===`object`&&typeof e==`object`?{lat:e.lat??``,lng:e.lng??``}:{lat:``,lng:``}},De=(e,t,n)=>n===`string`?`${e},${t}`:{lat:e,lng:t},Oe=(e,t,n)=>{if(!e)return!1;let r=Number(e);return Number.isFinite(r)&&r>=t&&r<=n};function ke({value:e,defaultValue:n,format:i=`object`,onChange:a,latLabel:s,lngLabel:c,latPlaceholder:l,lngPlaceholder:u,decimalPlaces:d=6,showPreviewLink:f=!0,previewLinkLabel:p,strings:m,invalid:g,className:_,disabled:v}){let x=t.useStrings(t.useStrings(Te,s!==void 0||c!==void 0||l!==void 0||u!==void 0||p!==void 0?{latLabel:s,lngLabel:c,latPlaceholder:l,lngPlaceholder:u,previewLinkLabel:p}:void 0),m),S=e!==void 0,C=Ee(S?e:n,i),[w,T]=(0,y.useState)(C.lat),[E,D]=(0,y.useState)(C.lng),O=Ee(e,i),k=S?O.lat:w,A=S?O.lng:E;(0,y.useEffect)(()=>{S&&(T(O.lat),D(O.lng))},[S,O.lat,O.lng]);let j=(0,y.useCallback)((e,t)=>{S||(T(e),D(t)),a?.({target:{value:De(e,t,i)}})},[S,a,i]),M=(0,y.useMemo)(()=>{let e=Oe(k,-90,90),t=Oe(A,-180,180);return!e||!t?null:`https://www.google.com/maps?q=${encodeURIComponent(`${k},${A}`)}`},[k,A]);return(0,b.jsxs)(`div`,{className:r.cn(`coordinates-input--component`,`space-y-3`,_),children:[(0,b.jsxs)(`div`,{className:`grid grid-cols-1 gap-3 md:grid-cols-2`,children:[(0,b.jsxs)(`div`,{className:`space-y-2`,children:[!!x.latLabel&&(0,b.jsx)(o.a,{children:x.latLabel}),(0,b.jsx)(h.A,{placeholder:x.latPlaceholder||void 0,value:k,onChange:e=>j(e.target.value,A),decimalPlaces:d,allowNegative:!0,min:-90,max:90,invalid:g,disabled:v})]}),(0,b.jsxs)(`div`,{className:`space-y-2`,children:[!!x.lngLabel&&(0,b.jsx)(o.a,{children:x.lngLabel}),(0,b.jsx)(h.A,{placeholder:x.lngPlaceholder||void 0,value:A,onChange:e=>j(k,e.target.value),decimalPlaces:d,allowNegative:!0,min:-180,max:180,invalid:g,disabled:v})]})]}),!!f&&!!M&&!!x.previewLinkLabel&&(0,b.jsx)(o.i,{href:M,type:`secondary`,underline:!1,children:x.previewLinkLabel})]})}ke.displayName=`CoordinatesInput`;function Ae({value:e,onChange:t,placeholder:n,readableFormat:r=`dd-MM-yyyy HH:mm`,stepMinutes:i=30,modal:a=!0,invalid:o,disabled:s}){let c=e?new Date(e):void 0;return(0,b.jsx)(_.t,{className:`date-time-input--component`,mode:`single`,disabled:s,error:o?` `:void 0,placeholder:n,value:c,onChange:(0,y.useCallback)(e=>{t?.(e.date?e.date.toISOString():void 0)},[t]),readableFormat:r,withTime:{enabled:!0,format:`24`,step:i},modal:a})}Ae.displayName=`DateTimeInput`;var je={placeholder:`Select time`,dialogTitle:`Select Time`,hours:`Hours`,minutes:`Minutes`,seconds:`Seconds`,now:`Now`,done:`Done`,hoursPlaceholder:`HH`,minutesPlaceholder:`MM`,secondsPlaceholder:`SS`,am:`AM`,pm:`PM`},J=e=>String(e).padStart(2,`0`),Y=e=>{let t=e.trim();if(t===``)return null;let n=Number.parseInt(t,10);return Number.isFinite(n)?n:null},X=(e,t,n)=>Math.min(Math.max(e,t),n),Me=e=>(e??``).replace(/\D/g,``).slice(0,2),Ne=(e,t)=>{if(!Number.isFinite(t)||t<=0||t===1)return e;let n=e%t,r=n>=Math.max(1,Math.floor(t*.8)),i=e-n,a=r?i+t:i;return a>=60?0:a};function Pe({className:e,value:n=`00:00:00`,onChange:a,invalid:s,disabled:c,placeholder:l,dialogTitle:d,hoursLabel:f,minutesLabel:p,secondsLabel:m,nowLabel:h,doneLabel:g,format:S=`24`,minuteStep:C=5,showSeconds:w=!0,strings:T}){let E=(0,y.useId)(),D=t.useStrings(t.useStrings(je,l!==void 0||d!==void 0||f!==void 0||p!==void 0||m!==void 0||h!==void 0||g!==void 0?{placeholder:l,dialogTitle:d,hours:f,minutes:p,seconds:m,now:h,done:g}:void 0),T),O=(0,y.useCallback)((e,t)=>{let n=Y(e??``)??0;return S===`12`?{hours:J(n>12?12:X(n===0?12:n,1,12)),meridiem:t}:{hours:J(n>24?24:X(n,0,24)),meridiem:t}},[S]),k=(0,y.useCallback)(e=>{let t=Y(e??``)??0;return t>59&&(t=0),t=Ne(X(t,0,59),C),J(t)},[C]),A=(0,y.useCallback)(e=>{let t=Y(e??``)??0;return t>59&&(t=0),t=X(t,0,59),J(t)},[]),j=(0,y.useCallback)((e,t,n,r)=>{let i=Y(e)??0,a=Y(t)??0;a>59&&(a=0),a=Ne(X(a,0,59),C);let o=w?Y(n)??0:0;if(o>59&&(o=0),o=w?X(o,0,59):0,S===`12`){let e=i>12?12:X(i===0?12:i,1,12);return`${J(r===`AM`?e===12?0:e:e===12?12:e+12)}:${J(a)}:${J(o)}`}return`${J(i>24?24:X(i,0,24))}:${J(a)}:${J(o)}`},[S,C,w]),M=(0,y.useCallback)(e=>{let[t=`00`,n=`00`,r=`00`]=(e??``).split(`:`),i=w?r:`00`;return{hours:Me(t),minutes:Me(n),seconds:Me(i)}},[w]),[N,P]=(0,y.useState)(!1),[F,I]=(0,y.useState)(()=>M(n)),[L,R]=(0,y.useState)(()=>{let[e=`00`]=(n??``).split(`:`);return(Y(e)??0)>=12?`PM`:`AM`}),z=(0,y.useRef)({});(0,y.useEffect)(()=>{if(N)return;I(M(n));let[e=`00`]=(n??``).split(`:`);R((Y(e)??0)>=12?`PM`:`AM`)},[N,M,n]);let B=(e,t)=>{let n=Me(t);I(t=>({...t,[e]:n})),z.current[e]&&window.clearTimeout(z.current[e]),z.current[e]=window.setTimeout(()=>{I(t=>{let n={...t};if(e===`hours`){let e=(n.hours??``).trim();e.length===1&&(n.hours=`0${e}`),(n.hours??``).trim().length===2&&(n.hours=O(n.hours,L).hours)}if(e===`minutes`){let e=(n.minutes??``).trim();e.length===1&&(n.minutes=`0${e}`),(n.minutes??``).trim().length===2&&(n.minutes=k(n.minutes))}if(e===`seconds`){let e=(n.seconds??``).trim();e.length===1&&(n.seconds=`0${e}`),(n.seconds??``).trim().length===2&&(n.seconds=A(n.seconds))}let r=j(n.hours,n.minutes,n.seconds,L);a?.(r);let[i=`00`,o=`00`,s=`00`]=r.split(`:`);return S===`12`?n.hours=J((Y(i)??0)%12||12):n.hours=i,n.minutes=o,n.seconds=s,n})},400)},V=e=>{z.current[e]&&window.clearTimeout(z.current[e]),I(e=>{let t={...e};t.hours=O(t.hours,L).hours,t.minutes=k(t.minutes),t.seconds=A(t.seconds);let n=j(t.hours,t.minutes,t.seconds,L);a?.(n);let[r=`00`,i=`00`,o=`00`]=n.split(`:`);return{hours:S===`12`?Me(String((Y(r)??0)%12||12)):r,minutes:i,seconds:o}})},H=(0,y.useMemo)(()=>{let e=j(F.hours,F.minutes,F.seconds,L);if(!w){let[t=`00`,n=`00`]=e.split(`:`);return`${t}:${n}`}return e},[L,j,w,F.hours,F.minutes,F.seconds]);return(0,b.jsxs)(v.n,{open:N,onOpenChange:P,children:[(0,b.jsx)(v.s,{render:t=>(0,b.jsx)(i.t,{...t,id:E,variant:`secondary`,buttonStyle:`outline`,"aria-expanded":N,"aria-invalid":s,disabled:c,className:r.cn(`time-picker--component`,_.n,`w-full justify-between text-left`,!n&&`!text-muted-foreground`,t.className,e),children:t.children}),children:(0,b.jsxs)(`div`,{className:`flex items-center gap-space-md`,children:[(0,b.jsx)(x.Clock,{className:`size-icon`}),(0,b.jsx)(`span`,{children:H||D.placeholder})]})}),(0,b.jsx)(v.t,{className:`w-auto p-4`,align:`start`,children:(0,b.jsxs)(`div`,{className:`space-y-4`,children:[(0,b.jsx)(o.s,{tag:`div`,weight:`medium`,align:`center`,children:D.dialogTitle}),(0,b.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,b.jsxs)(`div`,{className:`text-center`,children:[(0,b.jsx)(o.a,{size:`small`,className:`text-muted-foreground`,children:D.hours}),(0,b.jsx)(u.t,{inputMode:`numeric`,value:F.hours,onChange:e=>B(`hours`,e.target.value),onFocus:e=>e.currentTarget.select(),onClick:e=>e.currentTarget.select(),onBlur:()=>V(`hours`),placeholder:D.hoursPlaceholder,className:`w-16 text-center`})]}),(0,b.jsx)(o.s,{tag:`div`,className:`text-2xl`,children:`:`}),(0,b.jsxs)(`div`,{className:`text-center`,children:[(0,b.jsx)(o.a,{size:`small`,className:`text-muted-foreground`,children:D.minutes}),(0,b.jsx)(u.t,{inputMode:`numeric`,value:F.minutes,onChange:e=>B(`minutes`,e.target.value),onFocus:e=>e.currentTarget.select(),onClick:e=>e.currentTarget.select(),onBlur:()=>V(`minutes`),placeholder:D.minutesPlaceholder,className:`w-16 text-center`})]}),!!w&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(o.s,{tag:`div`,className:`text-2xl`,children:`:`}),(0,b.jsxs)(`div`,{className:`text-center`,children:[(0,b.jsx)(o.a,{size:`small`,className:`text-muted-foreground`,children:D.seconds}),(0,b.jsx)(u.t,{inputMode:`numeric`,value:F.seconds,onChange:e=>B(`seconds`,e.target.value),onFocus:e=>e.currentTarget.select(),onClick:e=>e.currentTarget.select(),onBlur:()=>V(`seconds`),placeholder:D.secondsPlaceholder,className:`w-16 text-center`})]})]}),S===`12`&&(0,b.jsxs)(`div`,{className:`flex items-end gap-1 pb-0.5`,children:[(0,b.jsx)(i.t,{type:`button`,variant:L===`AM`?`primary`:`secondary`,buttonStyle:L===`AM`?`solid`:`outline`,onClick:()=>R(`AM`),children:D.am}),(0,b.jsx)(i.t,{type:`button`,variant:L===`PM`?`primary`:`secondary`,buttonStyle:L===`PM`?`solid`:`outline`,onClick:()=>R(`PM`),children:D.pm})]})]}),(0,b.jsxs)(`div`,{className:`flex gap-2`,children:[(0,b.jsx)(i.t,{variant:`secondary`,buttonStyle:`outline`,className:`flex-1`,onClick:()=>{let e=new Date,t={hours:String(S===`12`?e.getHours()%12||12:e.getHours()),minutes:String(e.getMinutes()),seconds:``};I(t),R(e.getHours()>=12?`PM`:`AM`),a?.(j(t.hours,t.minutes,t.seconds,e.getHours()>=12?`PM`:`AM`))},children:D.now}),(0,b.jsx)(i.t,{variant:`primary`,buttonStyle:`solid`,className:`flex-1`,onClick:()=>{a?.(j(F.hours,F.minutes,F.seconds,L)),P(!1)},children:D.done})]})]})})]})}Pe.displayName=`TimePicker`;var Z=e=>{if(e===0)return`0 Bytes`;let t=1024,n=[`Bytes`,`KB`,`MB`,`GB`,`TB`],r=Math.floor(Math.log(e)/Math.log(t));return`${(e/t**r).toFixed(2)} ${n[r]}`},Fe=0,Ie=()=>`${Date.now().toString(36)}-${(Fe++).toString(36)}`,Le=e=>{let[t,n]=(0,y.useState)([]),[r,i]=(0,y.useState)({}),a=(0,y.useCallback)(Z,[]),o=(0,y.useCallback)(t=>{if(e?.minSize!==void 0&&t.size<e.minSize)return`Size (${Z(t.size)}) is smaller than minimum (${Z(e.minSize)}).`;if(e?.maxSize!==void 0&&t.size>e.maxSize)return`Size (${Z(t.size)}) exceeds maximum (${Z(e.maxSize)}).`;let n=t.name.split(`.`).pop()?.toLowerCase()||``;if(e?.allowedExtensions&&!e.allowedExtensions.map(e=>e.toLowerCase()).includes(n))return`Extension (.${n}) is not allowed.`;if(e?.customValidator){let n=e.customValidator(t);if(n!==!0)return typeof n==`string`?n:`Custom validation failed.`}return null},[e]),s=(0,y.useCallback)((t,r=!1)=>{let a=Array.isArray(t)?t:Array.from(t),s={};n(t=>{let n=r?[]:[...t];return a.forEach(t=>{let r=t.name.split(`.`).pop()?.toLowerCase()||``;if(n.some(e=>e.name===t.name&&e.size===t.size&&e.extension===r))return;let i=o(t);if(i){s[t.name]=i;return}if(e?.maxFiles!==void 0&&n.length+1>e.maxFiles){s[t.name]=`Cannot exceed max files limit of ${e.maxFiles}.`;return}let a={id:Ie(),file:t,name:t.name,size:t.size,formattedSize:Z(t.size),type:t.type,extension:r,lastModified:t.lastModified};n.push(a)}),n}),i(s)},[e?.maxFiles,o]);return{files:t,addFiles:(0,y.useCallback)(e=>s(e,!1),[s]),setFiles:(0,y.useCallback)(e=>s(e,!0),[s]),remove:(0,y.useCallback)(e=>{n(t=>t.filter(t=>t.id!==e))},[]),removeAll:(0,y.useCallback)(()=>{n(e=>e.length===0?e:[]),i({})},[]),formatSize:a,validationErrors:r}},Re={instruction:`Drag a file here or click to browse`,helper:``,browse:`Browse files`,remove:`Remove`};function ze({accept:e,multiple:n=!1,value:a,onChange:c,onChangeFiles:l,disabled:u,invalid:d,instructionText:f,browseButtonText:p,removeButtonText:m,helperText:h,strings:g},_){let v=t.useStrings(t.useStrings(Re,f!==void 0||h!==void 0||p!==void 0||m!==void 0?{instruction:f,helper:h,browse:p,remove:m}:void 0),g),{files:S,setFiles:C,remove:w,removeAll:T,validationErrors:E}=Le({maxFiles:n?void 0:1}),D=(0,y.useRef)(null),[O,k]=(0,y.useState)(!1);(0,y.useEffect)(()=>{if(n){Array.isArray(a)&&a.length>0?C(a):a||T();return}a instanceof File?C([a]):a||T()},[a,n]);let A=S[0],j=A?.name??(a instanceof File?a.name:``),M=A?.formattedSize??(a instanceof File?`${Math.round(a.size/1024*100)/100} KB`:``),N=n&&S.length>0,P=!n&&j.length>0,F=(0,y.useCallback)(()=>{u||D.current?.click()},[u]),I=(0,y.useCallback)(e=>{if(!e||e.length===0){T(),n?l?.([]):c?.(void 0);return}let t=Array.from(e);C(e),n?l?.(t):c?.(t[0])},[n,c,l,T,C]),L=(0,y.useCallback)(e=>{let t=e.target.files;if(!t||t.length===0){D.current&&(D.current.value=``);return}I(t),D.current&&(D.current.value=``)},[I]),R=(0,y.useCallback)(()=>{A&&w(A.id),D.current&&(D.current.value=``),c?.(void 0)},[c,w,A]),z=(0,y.useCallback)(e=>{let t=S.filter(t=>t.id!==e).map(e=>e.file);w(e),l?.(t),D.current&&(D.current.value=``)},[S,l,w]),B=(0,y.useCallback)(e=>{e.preventDefault(),e.stopPropagation()},[]),V=(0,y.useCallback)(e=>{B(e),u||k(!0)},[u,B]),H=(0,y.useCallback)(e=>{B(e),k(!1)},[B]),U=(0,y.useCallback)(e=>{if(B(e),k(!1),u)return;let t=e.dataTransfer?.files;!t||t.length===0||(I(t),D.current&&(D.current.value=``))},[u,I,B]),ee=(0,y.useMemo)(()=>r.cn(`relative flex min-h-45 flex-col items-center justify-center gap-4 rounded-xl border border-dashed px-6 py-10 text-center transition-colors duration-150`,d?`border-destructive`:`border-muted-foreground/60`,`bg-muted/40`,`hover:border-primary hover:bg-primary/5 hover:text-primary`,u?`cursor-not-allowed opacity-50 hover:border-muted-foreground/60 hover:bg-muted/40 hover:text-muted-foreground`:``,!u&&O?`border-primary bg-primary/10 text-primary`:``),[u,O,d]);return(0,b.jsxs)(`div`,{className:r.cn(`file-upload--component`,`space-y-3`),children:[(0,b.jsxs)(`div`,{role:`button`,tabIndex:u?-1:0,className:ee,onClick:e=>{e.defaultPrevented||F()},onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),F())},onDragEnter:V,onDragOver:V,onDragLeave:H,onDrop:U,"aria-disabled":u,"aria-invalid":d||void 0,children:[(0,b.jsx)(`input`,{ref:e=>{D.current=e,typeof _==`function`?_(e):_&&(_.current=e)},type:`file`,className:`hidden`,accept:e,multiple:n,onChange:L,onClick:e=>{e.stopPropagation()},disabled:u}),(0,b.jsx)(s.t,{icon:x.UploadIcon,tone:`primary`,shape:`circle`,className:`size-avatar-lg [&>svg]:size-icon-lg`}),(0,b.jsxs)(`div`,{className:`space-y-1`,children:[(0,b.jsx)(o.s,{weight:`medium`,children:v.instruction}),!!v.helper&&(0,b.jsx)(o.s,{size:`xs`,type:`secondary`,children:v.helper})]}),(0,b.jsx)(i.t,{type:`button`,variant:`secondary`,buttonStyle:`outline`,onClick:e=>{e.preventDefault(),e.stopPropagation(),F()},disabled:u,children:v.browse})]}),!!N&&(0,b.jsx)(`div`,{className:`space-y-2`,children:S.map(e=>(0,b.jsxs)(`div`,{className:`flex items-center gap-3 rounded-radius border bg-card p-surface-sm`,children:[(0,b.jsx)(s.t,{icon:x.File,tone:`muted`,shape:`square`}),(0,b.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,b.jsx)(o.s,{tag:`div`,weight:`medium`,className:`truncate`,title:e.name,children:e.name}),(0,b.jsx)(o.s,{tag:`div`,size:`xs`,type:`secondary`,children:e.formattedSize})]}),(0,b.jsx)(i.t,{type:`button`,variant:`error`,buttonStyle:`ghost`,size:`small`,icon:x.Trash2Icon,onClick:()=>z(e.id),children:v.remove})]},e.id))}),!!P&&(0,b.jsxs)(`div`,{className:`flex items-center gap-3 rounded-radius border bg-card p-surface-sm`,children:[(0,b.jsx)(s.t,{icon:x.File,tone:`muted`,shape:`square`}),(0,b.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,b.jsx)(o.s,{tag:`div`,weight:`medium`,className:`truncate`,title:j,children:j}),(0,b.jsx)(o.s,{tag:`div`,size:`xs`,type:`secondary`,children:M})]}),(0,b.jsx)(i.t,{type:`button`,variant:`error`,buttonStyle:`ghost`,size:`small`,icon:x.Trash2Icon,onClick:R,children:v.remove})]}),Object.keys(E).length>0&&(0,b.jsx)(`ul`,{className:`space-y-1.5`,children:Object.entries(E).map(([e,t])=>(0,b.jsxs)(`li`,{role:`alert`,className:`flex items-start gap-2 rounded-md border border-destructive/30 bg-destructive/5 px-3 py-2`,children:[(0,b.jsx)(`span`,{"aria-hidden":`true`,className:`mt-0.5 inline-flex size-4 shrink-0 items-center justify-center rounded-full bg-destructive/15 text-destructive`,children:(0,b.jsx)(`span`,{className:`size-1.5 rounded-full bg-destructive`})}),(0,b.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,b.jsx)(o.s,{size:`xs`,weight:`medium`,className:`truncate text-destructive`,children:e}),(0,b.jsx)(o.s,{size:`xs`,type:`secondary`,className:`text-destructive/80`,children:t})]})]},e))})]})}var Be=y.default.forwardRef(ze);Be.displayName=`FileUpload`;var Ve=2,He={square:`aspect-square`,standard:`aspect-[4/3]`,widescreen:`aspect-[16/9]`,portrait:`aspect-[9/16]`},Ue={select:`Select image`,change:`Change image`,remove:`Remove`,noSelection:`No file selected yet.`,keepCurrent:`Current image stays until you upload a new one.`,supportsTemplate:`Supports {ext} files up to {size} MB.`,moreFiles:e=>`+ ${e} more file${e===1?``:`s`}`};function We({accept:e=`.png,.jpg,.jpeg,.gif,.svg`,multiple:n=!1,value:a,onChange:s,disabled:c,defaultPreviewUrl:l,aspectRatio:u=`square`,fit:d=`cover`,maxWidth:f,layout:p=`stacked`,invalid:m,selectButtonText:h,changeButtonText:g,removeButtonText:_,strings:v},S){let C=t.useStrings(t.useStrings(Ue,h!==void 0||g!==void 0||_!==void 0?{select:h,change:g,remove:_}:void 0),v),w=(0,y.useId)(),T=(0,y.useRef)(null),E=(0,y.useMemo)(()=>{if(!e)return[`png`,`jpg`,`jpeg`,`gif`,`svg`];let t=e.split(`,`).map(e=>e.trim()).map(e=>{if(!e)return null;if(e.startsWith(`.`))return e.slice(1).toLowerCase();if(e.includes(`/`)){let t=e.split(`/`)[1]??``;return t===`*`||t.length===0?null:t.replace(/\+.*/,``).toLowerCase()}return e.toLowerCase()}).filter(e=>!!e);if(t.length!==0)return Array.from(new Set(t))},[e]),{files:D,setFiles:O,remove:k,removeAll:A,validationErrors:j}=Le((0,y.useMemo)(()=>({maxFiles:n?void 0:1,allowedExtensions:E}),[n,E]));(0,y.useEffect)(()=>{a?O([a]):(A(),T.current&&(T.current.value=``))},[a,O,A]);let M=D[0],N=M?C.change:C.select,[P,F]=(0,y.useState)(void 0),I=(0,y.useMemo)(()=>!E||E.length===0?null:E.map(e=>e.toUpperCase()).join(`, `),[E]);(0,y.useEffect)(()=>{let e=M?.file??a;if(!e){F(void 0);return}let t=URL.createObjectURL(e);return F(t),()=>URL.revokeObjectURL(t)},[M,a]);let L=P??l,R=!!L,z=He[u]??He.square,B=d===`contain`?`object-contain p-3`:`object-cover`,V=f?typeof f==`number`?`${f}px`:f:`240px`,H=p===`inline`?void 0:{maxWidth:V},U=p===`inline`?{maxWidth:f?V:`185px`,width:`100%`}:void 0,ee=(0,y.useCallback)(e=>{let t=e.target.files;if(!t||t.length===0){A(),s?.(void 0),T.current&&(T.current.value=``);return}O(t),s?.(t[0])},[A,O,s]),W=(0,y.useCallback)(()=>{c||T.current?.click()},[c]),G=(0,y.useCallback)(()=>{M&&k(M.id),s?.(void 0),T.current&&(T.current.value=``)},[M,k,s]);return(0,b.jsxs)(`div`,{className:r.cn(`image-upload--component`,`space-y-3`),style:H,children:[(0,b.jsx)(`input`,{ref:e=>{T.current=e,typeof S==`function`?S(e):S&&(S.current=e)},id:w,type:`file`,className:`sr-only`,accept:e,multiple:n,disabled:c,onChange:ee}),(0,b.jsxs)(`div`,{className:r.cn(p===`inline`?`flex items-start gap-4`:`space-y-3`),children:[(0,b.jsx)(`div`,{className:r.cn(`relative overflow-hidden rounded-md border transition-colors`,p===`inline`?`flex-shrink-0 w-full`:`w-full`,z,R?`border-border bg-muted/20`:r.cn(`border-dashed bg-background text-muted-foreground dark:bg-foreground`,m?`border-destructive`:`border-muted-foreground/60`)),style:U,children:R&&L?(0,b.jsx)(`img`,{src:L,alt:M?.name||`Selected image`,className:r.cn(`absolute inset-0 h-full w-full`,B)}):(0,b.jsx)(`div`,{className:`absolute inset-0 flex items-center justify-center`,children:(0,b.jsx)(x.ImageIcon,{"aria-hidden":!0,className:`size-icon-lg`})})}),(0,b.jsxs)(`div`,{className:r.cn(`space-y-2`,p===`inline`&&`flex-1 min-w-0`),children:[(0,b.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,b.jsx)(i.t,{type:`button`,variant:`secondary`,buttonStyle:`outline`,onClick:W,disabled:c,children:N}),!M&&!!R&&(0,b.jsx)(o.s,{size:`xs`,type:`secondary`,children:C.keepCurrent})]}),!!I&&(0,b.jsx)(o.s,{size:`xs`,type:`secondary`,children:C.supportsTemplate.replace(`{ext}`,I).replace(`{size}`,String(Ve))}),!!M&&(0,b.jsxs)(`div`,{className:`space-y-1`,children:[(0,b.jsx)(o.s,{weight:`medium`,title:M.name,className:`truncate`,children:M.name}),(0,b.jsx)(o.s,{size:`xs`,type:`secondary`,children:M.formattedSize}),!!n&&D.length>1&&(0,b.jsx)(o.s,{size:`xs`,type:`secondary`,children:C.moreFiles(D.length-1)}),(0,b.jsx)(i.t,{type:`button`,variant:`error`,buttonStyle:`ghost`,size:`small`,icon:x.Trash2,onClick:G,children:C.remove})]}),!M&&!R&&(0,b.jsx)(o.s,{size:`xs`,type:`secondary`,children:C.noSelection})]})]}),Object.keys(j).length>0&&(0,b.jsx)(`div`,{className:`space-y-1`,children:Object.entries(j).map(([e,t])=>(0,b.jsxs)(o.s,{size:`xs`,type:`error`,children:[e,`: `,t]},e))})]})}var Ge=y.default.forwardRef(We);Ge.displayName=`ImageUpload`;var Ke={instruction:`Drag files here or click to browse`,helper:``,dragOver:`Release to upload`},qe={small:{padding:`px-surface py-surface`,minH:`min-h-24`,iconBox:`size-avatar-lg`,iconSize:`size-icon`},default:{padding:`px-surface py-space-2xl`,minH:`min-h-32`,iconBox:`size-avatar-lg`,iconSize:`size-icon-lg`}},Je=e=>e===`small`||e==="default"?e:e===`compact`?`small`:`default`;function Ye({onDrop:e,accept:n,multiple:i=!1,disabled:a=!1,invalid:s=!1,size:c=`default`,icon:l,className:u,children:d,strings:f},p){let m=t.useStrings(Ke,f),h=(0,y.useRef)(null),[g,_]=(0,y.useState)(!1),v=Je(c),S=qe[v],C=(0,y.useCallback)(()=>{a||h.current?.click()},[a]),w=(0,y.useCallback)(t=>{let n=t.target.files;!n||n.length===0||(e(Array.from(n)),h.current&&(h.current.value=``))},[e]),T=(0,y.useCallback)(e=>{e.preventDefault(),e.stopPropagation(),a||_(!0)},[a]),E=(0,y.useCallback)(e=>{e.preventDefault(),e.stopPropagation(),_(!1)},[]),D=(0,y.useCallback)(t=>{if(t.preventDefault(),t.stopPropagation(),_(!1),a)return;let n=t.dataTransfer?.files;!n||n.length===0||e(Array.from(n))},[a,e]);return(0,b.jsxs)(`div`,{role:`button`,tabIndex:a?-1:0,"aria-disabled":a||void 0,"aria-invalid":s||void 0,onClick:e=>{e.defaultPrevented||C()},onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),C())},onDragEnter:T,onDragOver:T,onDragLeave:E,onDrop:D,className:r.cn(`dropzone--component`,`relative flex flex-col items-center justify-center gap-3 rounded-xl border border-dashed text-center transition-colors duration-150`,S.minH,S.padding,s?`border-destructive`:`border-muted-foreground/40`,`bg-muted/30 hover:border-primary hover:bg-primary/5 hover:text-primary`,a&&`cursor-not-allowed opacity-50 hover:border-muted-foreground/40 hover:bg-muted/30 hover:text-muted-foreground`,!a&&g&&`border-primary bg-primary/10 text-primary`,u),children:[(0,b.jsx)(`input`,{ref:e=>{h.current=e,typeof p==`function`?p(e):p&&(p.current=e)},type:`file`,className:`hidden`,accept:n,multiple:i,disabled:a,onChange:w,onClick:e=>e.stopPropagation()}),(0,b.jsx)(`span`,{className:r.cn(`inline-flex items-center justify-center rounded-full bg-primary/10 text-primary`,S.iconBox),"aria-hidden":`true`,children:l??(0,b.jsx)(x.UploadCloud,{className:S.iconSize})}),(0,b.jsxs)(`div`,{className:`space-y-1`,children:[(0,b.jsx)(o.s,{size:v===`small`?`xs`:`sm`,weight:`medium`,children:g?m.dragOver:m.instruction}),!!m.helper&&(0,b.jsx)(o.s,{size:`xs`,type:`secondary`,children:m.helper})]}),!!d&&(0,b.jsx)(`div`,{onClick:e=>e.stopPropagation(),onKeyDown:e=>e.stopPropagation(),children:d})]})}var Xe=y.forwardRef(Ye);Xe.displayName=`Dropzone`;var Ze={change:`Change photo`,remove:`Remove photo`,hint:`Click or drop an image`,dragOver:`Drop image to upload`},Qe={small:{box:`size-upload-avatar-small`,icon:`size-icon`,remove:`size-control-clear`},default:{box:`size-upload-avatar`,icon:`size-icon-lg`,remove:`size-control`}},$e=e=>e===`small`||e==="default"?e:e===`sm`?`small`:`default`;function et({value:e,onChange:n,defaultPreviewUrl:i,accept:a=`.png,.jpg,.jpeg,.gif,.webp`,disabled:s=!1,invalid:c=!1,size:l=`default`,className:u,strings:d,initials:f},p){let m=t.useStrings(Ze,d),h=(0,y.useId)(),g=(0,y.useRef)(null),[_,v]=(0,y.useState)(!1),S=$e(l),C=Qe[S],{files:w,setFiles:T,removeAll:E}=Le({maxFiles:1,allowedExtensions:(0,y.useMemo)(()=>a.split(`,`).map(e=>e.trim().replace(/^\./,``).toLowerCase()).filter(Boolean),[a])});(0,y.useEffect)(()=>{e?T([e]):E()},[e]);let D=w[0],[O,k]=(0,y.useState)(void 0);(0,y.useEffect)(()=>{let t=D?.file??e;if(!t){k(void 0);return}let n=URL.createObjectURL(t);return k(n),()=>URL.revokeObjectURL(n)},[D,e]);let A=O??i,j=!!A,M=(0,y.useCallback)(e=>{let t=e.target.files;!t||t.length===0||(T(t),n?.(t[0]),g.current&&(g.current.value=``))},[n,T]),N=(0,y.useCallback)(()=>{s||g.current?.click()},[s]),P=(0,y.useCallback)(()=>{E(),n?.(void 0),g.current&&(g.current.value=``)},[n,E]),F=e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),N())},I=(0,y.useCallback)(e=>{e.preventDefault(),e.stopPropagation(),s||v(!0)},[s]),L=(0,y.useCallback)(e=>{e.preventDefault(),e.stopPropagation(),v(!1)},[]),R=(0,y.useCallback)(e=>{if(e.preventDefault(),e.stopPropagation(),v(!1),s)return;let t=e.dataTransfer?.files;!t||t.length===0||(T(t),n?.(t[0]))},[s,n,T]);return(0,b.jsxs)(`div`,{className:r.cn(`avatar-upload--component`,`inline-flex flex-col items-center gap-2`,u),children:[(0,b.jsxs)(`div`,{role:`button`,tabIndex:s?-1:0,"aria-label":m.change,"aria-disabled":s||void 0,"aria-invalid":c||void 0,onClick:N,onKeyDown:F,onDragEnter:I,onDragOver:I,onDragLeave:L,onDrop:R,className:r.cn(`group relative flex shrink-0 items-center justify-center overflow-hidden rounded-full`,`border border-dashed transition-colors duration-150 outline-none`,`focus-visible:ring-2 focus-visible:ring-ring/50`,j?`border-border/60 bg-muted/20`:r.cn(`bg-muted/30 hover:border-primary hover:bg-primary/5`,c?`border-destructive`:`border-muted-foreground/40`),s&&`cursor-not-allowed opacity-50`,!s&&_&&`border-primary bg-primary/10`,C.box),children:[(0,b.jsx)(`input`,{id:h,ref:e=>{g.current=e,typeof p==`function`?p(e):p&&(p.current=e)},type:`file`,className:`sr-only`,"aria-label":m.change,accept:a,disabled:s,onChange:M}),j&&A?(0,b.jsx)(`img`,{src:A,alt:m.change,className:`absolute inset-0 size-full object-cover`}):f?(0,b.jsx)(o.s,{size:S===`small`?`sm`:`base`,weight:`bold`,className:`leading-none`,children:f}):(0,b.jsx)(x.Camera,{className:r.cn(C.icon,`text-muted-foreground`),"aria-hidden":`true`}),!s&&j&&(0,b.jsx)(`div`,{className:`pointer-events-none absolute inset-0 hidden items-center justify-center bg-foreground/50 text-background backdrop-blur-[1px] group-hover:flex`,"aria-hidden":`true`,children:(0,b.jsx)(x.Camera,{className:C.icon})}),!s&&j&&(0,b.jsx)(`button`,{type:`button`,"aria-label":m.remove,onClick:e=>{e.stopPropagation(),P()},className:r.cn(`absolute right-0.5 top-0.5 inline-flex items-center justify-center rounded-full bg-card text-foreground shadow ring-1 ring-border`,`opacity-0 transition-opacity group-hover:opacity-100 focus-visible:opacity-100`,C.remove),children:(0,b.jsx)(x.X,{className:`size-3`})}),!s&&!j&&_&&(0,b.jsx)(o.s,{size:`xs`,weight:`medium`,className:`absolute inset-x-0 bottom-1.5 text-center text-primary`,children:m.dragOver})]}),!j&&(0,b.jsx)(o.s,{size:`xs`,type:`secondary`,children:m.hint})]})}var tt=y.forwardRef(et);tt.displayName=`AvatarUpload`;var nt={addInstruction:`Drop or click to add images`,helper:``,dragOver:`Release to upload`,cover:`Cover`,removeAria:`Remove image`,maxReached:`You have reached the maximum number of images.`},rt=0,it=()=>`media-${Date.now().toString(36)}-${(rt++).toString(36)}`;function at({item:e,isFirst:t,disabled:n,onRemove:i,strings:a,tileClassName:o}){let{attributes:s,listeners:c,setNodeRef:l,transform:u,transition:d,isDragging:f}=(0,D.useSortable)({id:e.id,disabled:n});return(0,b.jsxs)(`div`,{ref:l,style:{transform:O.CSS.Transform.toString(u),transition:d},className:r.cn(`media-gallery--component`,`group relative aspect-square overflow-hidden rounded-lg border border-border/60 bg-muted/30`,`cursor-grab active:cursor-grabbing`,f&&`z-10 shadow-lg ring-2 ring-primary/40`,n&&`pointer-events-none opacity-50`,o),...s,...c,children:[(0,b.jsx)(`img`,{src:e.previewUrl,alt:e.file.name,className:`absolute inset-0 size-full object-cover`,draggable:!1}),t&&(0,b.jsx)(`span`,{className:`absolute left-1.5 top-1.5 rounded-full bg-card/90 px-1.5 py-0.5 text-xs font-semibold text-foreground shadow ring-1 ring-border`,children:a.cover}),(0,b.jsx)(`button`,{type:`button`,"aria-label":a.removeAria,onPointerDown:e=>e.stopPropagation(),onClick:e=>{e.stopPropagation(),i()},className:r.cn(`absolute right-1.5 top-1.5 inline-flex size-6 items-center justify-center rounded-full bg-card text-foreground shadow ring-1 ring-border`,`opacity-0 transition-opacity group-hover:opacity-100 focus-visible:opacity-100`),children:(0,b.jsx)(x.X,{className:`size-3.5`})})]})}function ot({value:e,onChange:n,accept:i=`.png,.jpg,.jpeg,.gif,.webp`,maxFiles:a,disabled:s=!1,invalid:c=!1,className:l,tileClassName:u,strings:d}){let f=t.useStrings(nt,d),p=(0,y.useId)(),m=(0,y.useRef)(null),[h,g]=(0,y.useState)([]),[_,v]=(0,y.useState)(!1),S=(0,E.useSensors)((0,E.useSensor)(E.PointerSensor,{activationConstraint:{distance:6}})),C=(0,y.useRef)([]);C.current=h,(0,y.useEffect)(()=>{e&&g(t=>t.length===e.length&&t.every((t,n)=>t.file===e[n])?t:(t.forEach(e=>URL.revokeObjectURL(e.previewUrl)),e.map(e=>({id:it(),file:e,previewUrl:URL.createObjectURL(e)}))))},[e]),(0,y.useEffect)(()=>()=>{C.current.forEach(e=>URL.revokeObjectURL(e.previewUrl))},[]);let w=(0,y.useCallback)(e=>{n?.(e.map(e=>e.file))},[n]),T=(0,y.useCallback)(e=>{s||g(t=>{let n=a===void 0?e.length:Math.max(0,a-t.length),r=e.slice(0,n).map(e=>({id:it(),file:e,previewUrl:URL.createObjectURL(e)})),i=[...t,...r];return w(i),i})},[s,w,a]),O=(0,y.useCallback)(e=>{g(t=>{let n=t.find(t=>t.id===e);n&&URL.revokeObjectURL(n.previewUrl);let r=t.filter(t=>t.id!==e);return w(r),r})},[w]),k=(0,y.useCallback)(e=>{let t=e.target.files;!t||t.length===0||(T(Array.from(t)),m.current&&(m.current.value=``))},[T]),A=(0,y.useCallback)(e=>{e.preventDefault(),e.stopPropagation(),s||v(!0)},[s]),j=(0,y.useCallback)(e=>{e.preventDefault(),e.stopPropagation(),v(!1)},[]),M=(0,y.useCallback)(e=>{if(e.preventDefault(),e.stopPropagation(),v(!1),s)return;let t=e.dataTransfer?.files;!t||t.length===0||T(Array.from(t))},[T,s]),N=(0,y.useCallback)(e=>{let{active:t,over:n}=e;!n||t.id===n.id||g(e=>{let r=e.findIndex(e=>e.id===t.id),i=e.findIndex(e=>e.id===n.id);if(r===-1||i===-1)return e;let a=[...e],[o]=a.splice(r,1);return a.splice(i,0,o),w(a),a})},[w]),P=(0,y.useMemo)(()=>h.map(e=>e.id),[h]),F=a!==void 0&&h.length>=a;return(0,b.jsxs)(`div`,{className:r.cn(`space-y-3`,l),children:[(0,b.jsx)(E.DndContext,{sensors:S,onDragEnd:N,children:(0,b.jsx)(D.SortableContext,{items:P,strategy:D.rectSortingStrategy,children:(0,b.jsxs)(`div`,{className:r.cn(`grid grid-cols-2 gap-2`,`sm:grid-cols-3 md:grid-cols-4`),children:[h.map((e,t)=>(0,b.jsx)(at,{item:e,isFirst:t===0,disabled:s,onRemove:()=>O(e.id),strings:f,tileClassName:u},e.id)),!F&&(0,b.jsxs)(`div`,{role:`button`,tabIndex:s?-1:0,"aria-disabled":s||void 0,"aria-invalid":c||void 0,onClick:()=>!s&&m.current?.click(),onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),m.current?.click())},onDragEnter:A,onDragOver:A,onDragLeave:j,onDrop:M,className:r.cn(`flex aspect-square items-center justify-center rounded-lg border border-dashed text-center outline-none transition-colors`,`hover:border-primary hover:bg-primary/5 hover:text-primary focus-visible:ring-2 focus-visible:ring-ring/50`,c?`border-destructive`:`border-muted-foreground/40`,s&&`cursor-not-allowed opacity-50`,!s&&_&&`border-primary bg-primary/10 text-primary`),children:[(0,b.jsx)(`input`,{id:p,ref:m,type:`file`,className:`sr-only`,accept:i,multiple:!0,disabled:s,onChange:k}),(0,b.jsxs)(`div`,{className:`flex flex-col items-center gap-2 px-2`,children:[(0,b.jsx)(x.ImagePlus,{className:`size-5 text-muted-foreground`,"aria-hidden":`true`}),(0,b.jsx)(o.s,{size:`xs`,weight:`medium`,children:_?f.dragOver:f.addInstruction})]})]})]})})}),!!F&&(0,b.jsx)(o.s,{size:`xs`,type:`secondary`,children:f.maxReached}),!F&&!!f.helper&&(0,b.jsx)(o.s,{size:`xs`,type:`secondary`,children:f.helper})]})}ot.displayName=`MediaGallery`;var st={queued:`Queued`,uploading:`Uploading`,done:`Uploaded`,error:`Failed`,cancelled:`Cancelled`,cancel:`Cancel`,retry:`Retry`,remove:`Remove`},ct={queued:{icon:x.Clock,bg:`bg-muted`,fg:`text-muted-foreground`,bar:`bg-muted-foreground/30`},uploading:{icon:x.UploadCloud,bg:`bg-primary/15`,fg:`text-primary`,bar:`bg-primary`},done:{icon:x.Check,bg:`bg-success/15`,fg:`text-success`,bar:`bg-success`},error:{icon:x.AlertCircle,bg:`bg-destructive/15`,fg:`text-destructive`,bar:`bg-destructive`},cancelled:{icon:x.X,bg:`bg-muted`,fg:`text-muted-foreground`,bar:`bg-muted-foreground/30`}};function lt({items:e,onCancel:n,onRetry:a,onRemove:s,className:c,strings:l}){let u=t.useStrings(st,l),d={queued:u.queued,uploading:u.uploading,done:u.done,error:u.error,cancelled:u.cancelled};return e.length===0?null:(0,b.jsx)(`ul`,{className:r.cn(`upload-progress-list--component`,`space-y-2`,c),children:e.map(e=>{let t=ct[e.status],c=t.icon,l=e.status===`done`?100:e.status===`cancelled`||e.status===`error`?e.progress??0:Math.max(0,Math.min(100,e.progress??0)),f=e.status===`uploading`||e.status===`queued`;return(0,b.jsx)(`li`,{className:`rounded-md border border-border/60 bg-card px-3 py-2`,children:(0,b.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,b.jsx)(`span`,{className:r.cn(`inline-flex size-7 shrink-0 items-center justify-center rounded-md`,t.bg,t.fg),children:(0,b.jsx)(c,{className:r.cn(`size-3.5`,e.status===`uploading`&&`animate-pulse`)})}),(0,b.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,b.jsxs)(`div`,{className:`flex items-baseline justify-between gap-2`,children:[(0,b.jsx)(o.s,{weight:`medium`,className:`truncate`,children:e.name}),(0,b.jsx)(o.s,{size:`xs`,type:`secondary`,className:`shrink-0 tabular-nums`,children:e.size})]}),f?(0,b.jsx)(`div`,{className:`mt-1.5 h-1 w-full overflow-hidden rounded-full bg-muted`,children:(0,b.jsx)(`div`,{className:r.cn(`h-full rounded-full transition-[width] duration-200`,t.bar),style:{width:`${l}%`}})}):(0,b.jsxs)(o.s,{size:`xs`,type:e.status===`error`?`error`:`secondary`,children:[d[e.status],e.status===`error`&&!!e.error&&` — ${e.error}`]})]}),(0,b.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[e.status===`uploading`&&!!n&&(0,b.jsx)(i.t,{type:`button`,variant:`secondary`,buttonStyle:`ghost`,size:`icon-small`,"aria-label":u.cancel,onClick:()=>n(e.id),children:(0,b.jsx)(x.X,{className:`size-3.5`})}),e.status===`error`&&!!a&&(0,b.jsx)(i.t,{type:`button`,variant:`secondary`,buttonStyle:`ghost`,size:`icon-small`,"aria-label":u.retry,onClick:()=>a(e.id),children:(0,b.jsx)(x.RefreshCw,{className:`size-3.5`})}),(e.status===`done`||e.status===`error`||e.status===`cancelled`)&&!!s&&(0,b.jsx)(i.t,{type:`button`,variant:`secondary`,buttonStyle:`ghost`,size:`icon-small`,"aria-label":u.remove,onClick:()=>s(e.id),children:(0,b.jsx)(x.X,{className:`size-3.5`})})]})]})},e.id)})})}lt.displayName=`UploadProgressList`;var ut={heading:`Upload progress`,completedLabel:`Completed`,failedLabel:`Failed`,uploadingLabel:`Uploading`,queuedLabel:`Queued`,clearAll:`Clear all`};function dt(e){let t=0,n=0,r=0,i=0;for(let a of e)a.status===`done`?t+=1:a.status===`error`?n+=1:a.status===`uploading`?r+=1:a.status===`queued`&&(i+=1);return{completed:t,failed:n,uploading:r,queued:i}}var ft=(0,y.forwardRef)(function({items:e,onAddFiles:n,onCancel:a,onRetry:s,onRemove:l,onClearAll:u,dropzone:d,className:f,strings:p,listStrings:m},h){let g=t.useStrings(ut,p),{completed:_,failed:v,uploading:x,queued:S}=dt(e),C=(0,y.useCallback)(e=>{e.length>0&&n(e)},[n]),w=e.length>0;return(0,b.jsxs)(`div`,{ref:h,className:r.cn(`upload-tray--component`,`flex flex-col gap-4`,f),children:[(0,b.jsx)(Xe,{onDrop:C,accept:d?.accept,multiple:d?.multiple,size:d?.size,disabled:d?.disabled,invalid:d?.invalid,strings:d?.strings}),!!w&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-2`,children:[(0,b.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,b.jsx)(o.s,{tag:`span`,weight:`semibold`,children:g.heading}),_>0&&(0,b.jsxs)(c.t,{variant:`success`,children:[g.completedLabel,`: `,_]}),v>0&&(0,b.jsxs)(c.t,{variant:`destructive`,children:[g.failedLabel,`: `,v]}),x>0&&(0,b.jsxs)(c.t,{variant:`info`,children:[g.uploadingLabel,`: `,x]}),S>0&&(0,b.jsxs)(c.t,{variant:`secondary`,children:[g.queuedLabel,`: `,S]})]}),!!u&&(0,b.jsx)(i.t,{variant:`secondary`,buttonStyle:`ghost`,onClick:u,children:g.clearAll})]}),(0,b.jsx)(lt,{items:e,onCancel:a,onRetry:s,onRemove:l,strings:m})]})]})});ft.displayName=`UploadTray`;var Q={emptyState:`No items added yet.`,addItem:`Add item`,removeAriaLabel:`Remove item`},pt={emptyState:Q.emptyState,addButton:Q.addItem,removeAriaLabel:Q.removeAriaLabel,dragHandleAriaLabel:`Drag to reorder`};function mt({item:e,index:t,sortable:n,rowVariant:a,removeVariant:o,hideRemove:s,disabled:c,strings:l,onRemove:u,renderRow:d}){let f=(0,D.useSortable)({id:e.id,disabled:c||!n}),p=n?f.isDragging:!1,m=n?{transform:O.CSS.Transform.toString(f.transform),transition:f.transition,opacity:p?.6:1}:void 0,h=n?f.setNodeRef:void 0,g=n?f.attributes:{},_=n?f.listeners:void 0,v=n?(0,b.jsx)(`button`,{type:`button`,"aria-label":l.dragHandleAriaLabel,className:r.cn(`inline-flex size-9 shrink-0 items-center justify-center rounded-md`,`text-muted-foreground/50 hover:text-foreground hover:bg-muted`,`cursor-grab active:cursor-grabbing`,`outline-none focus-visible:ring-2 focus-visible:ring-ring/50`,`transition-colors`,c&&`pointer-events-none opacity-50`),...g,..._,children:(0,b.jsx)(x.GripVertical,{className:`size-4`,"aria-hidden":`true`})}):null,y=s?null:o===`icon-button`?(0,b.jsx)(i.t,{type:`button`,variant:`secondary`,buttonStyle:`outline`,size:`default`,"aria-label":l.removeAriaLabel,disabled:c,onClick:()=>u(t),className:`shrink-0`,children:(0,b.jsx)(x.Trash2,{className:`size-4`,"aria-hidden":`true`})}):(0,b.jsx)(`button`,{type:`button`,"aria-label":l.removeAriaLabel,disabled:c,onClick:()=>u(t),className:r.cn(`inline-flex size-9 shrink-0 items-center justify-center rounded-md`,`text-muted-foreground/70 hover:bg-destructive/10 hover:text-destructive`,`outline-none focus-visible:ring-2 focus-visible:ring-ring/50`,`transition-colors`,`disabled:pointer-events-none disabled:opacity-50`),children:(0,b.jsx)(x.X,{className:`size-4`,"aria-hidden":`true`})});return a===`card`?(0,b.jsx)(`div`,{ref:h,style:m,className:r.cn(`repeater--component`,`relative rounded-md border border-input bg-card p-4`,n&&`pl-2`),children:(0,b.jsxs)(`div`,{className:`flex items-start gap-2`,children:[v,(0,b.jsx)(`div`,{className:`min-w-0 flex-1`,children:d(e,{index:t,isDragging:p})}),y]})}):(0,b.jsxs)(`div`,{ref:h,style:m,className:`flex items-start gap-2`,children:[v,(0,b.jsx)(`div`,{className:`min-w-0 flex-1`,children:d(e,{index:t,isDragging:p})}),y]})}function $({items:e,renderRow:n,onAdd:a,onRemove:s,onMove:c,sortable:l=!1,rowVariant:u=`inline`,removeVariant:d=`ghost`,hideRemove:f=!1,hideAdd:p=!1,disabled:m=!1,strings:h,className:g}){let _=t.useStrings(pt,h),v=(0,E.useSensors)((0,E.useSensor)(E.PointerSensor,{activationConstraint:{distance:4}}),(0,E.useSensor)(E.KeyboardSensor,{coordinateGetter:D.sortableKeyboardCoordinates})),S=(0,y.useCallback)(t=>{let{active:n,over:r}=t;if(!r||n.id===r.id)return;let i=e.findIndex(e=>e.id===n.id),a=e.findIndex(e=>e.id===r.id);i<0||a<0||c?.(i,a)},[e,c]),C=(0,y.useMemo)(()=>e.map(e=>e.id),[e]),w=(0,b.jsx)(`div`,{className:`space-y-2`,children:e.map((e,t)=>(0,b.jsx)(mt,{item:e,index:t,sortable:l,rowVariant:u,removeVariant:d,hideRemove:f,disabled:m,strings:_,onRemove:s,renderRow:n},e.id))});return(0,b.jsxs)(`div`,{className:r.cn(`space-y-3`,g),children:[e.length===0?(0,b.jsx)(`div`,{className:`rounded-md border border-dashed border-input p-4`,children:(0,b.jsx)(o.s,{type:`secondary`,children:_.emptyState})}):l?(0,b.jsx)(E.DndContext,{sensors:v,collisionDetection:E.closestCenter,onDragEnd:S,children:(0,b.jsx)(D.SortableContext,{items:C,strategy:D.verticalListSortingStrategy,children:w})}):w,!p&&(0,b.jsxs)(i.t,{type:`button`,variant:`secondary`,buttonStyle:`outline`,size:`default`,disabled:m,onClick:a,children:[(0,b.jsx)(x.Plus,{className:`size-4 mr-1.5`}),_.addButton]})]})}$.displayName=`Repeater`;var ht={keyLabel:`Key`,valueLabel:`Value`,keyPlaceholder:`key`,valuePlaceholder:`value`,addButton:`Add row`,removeRowAriaLabel:`Remove row`,emptyState:`No rows yet.`},gt=()=>typeof crypto<`u`&&`randomUUID`in crypto?crypto.randomUUID():Math.random().toString(36).slice(2,10),_t=(0,y.memo)(function({row:e,keyPlaceholder:t,valuePlaceholder:n,invalid:i,onKeyChange:a,onValueChange:o}){let{id:s,key:c,value:l}=e;return(0,b.jsxs)(`div`,{className:r.cn(`key-value-editor--component`,`grid grid-cols-1 md:grid-cols-2 gap-2`),children:[(0,b.jsx)(u.t,{value:c??``,placeholder:t,onChange:e=>a(s,e.target.value),invalid:i}),(0,b.jsx)(u.t,{value:l??``,placeholder:n,onChange:e=>o(s,e.target.value),invalid:i})]})});function vt({value:e,onChange:n,invalid:i,sortable:a=!1,keyPlaceholder:s,valuePlaceholder:c,keyLabel:l,valueLabel:u,addButtonText:d,strings:f}){let p=t.useStrings(t.useStrings(ht,s!==void 0||c!==void 0||l!==void 0||u!==void 0||d!==void 0?{keyPlaceholder:s,valuePlaceholder:c,keyLabel:l,valueLabel:u,addButton:d}:void 0),f),m=(0,y.useRef)(!1),[h,g]=(0,y.useState)(()=>e&&Object.keys(e).length>0?Object.entries(e).map(([e,t])=>({id:gt(),key:e,value:String(t??``)})):[{id:gt(),key:``,value:``}]),_=(0,y.useCallback)(e=>{let t={};e.forEach(({key:e,value:n})=>{e.trim()!==``&&(t[e]=n??``)}),m.current=!0,n?.(t),queueMicrotask(()=>{m.current=!1})},[n]),v=(0,y.useCallback)((e,t)=>{g(n=>{let r=n.map(n=>n.id===e?{...n,key:t}:n);return _(r),r})},[_]),x=(0,y.useCallback)((e,t)=>{g(n=>{let r=n.map(n=>n.id===e?{...n,value:t}:n);return _(r),r})},[_]),S=(0,y.useCallback)(()=>{g(e=>{let t=[...e,{id:gt(),key:``,value:``}];return _(t),t})},[_]),C=(0,y.useCallback)(e=>{g(t=>{let n=t.filter((t,n)=>n!==e),r=n.length?n:[{id:gt(),key:``,value:``}];return _(r),r})},[_]),w=(0,y.useCallback)((e,t)=>{g(n=>{let r=[...n],[i]=r.splice(e,1);return r.splice(t,0,i),_(r),r})},[_]);return(0,b.jsxs)(`div`,{className:`space-y-2`,children:[(!!p.keyLabel||!!p.valueLabel)&&(0,b.jsxs)(`div`,{className:r.cn(`grid grid-cols-1 md:grid-cols-2 gap-2`,a?`pl-11`:``,`pr-11`),children:[!!p.keyLabel&&(0,b.jsx)(o.a,{className:`flex items-center`,children:p.keyLabel}),!!p.valueLabel&&(0,b.jsx)(o.a,{className:`flex items-center`,children:p.valueLabel})]}),(0,b.jsx)($,{items:h,sortable:a,onAdd:S,onRemove:C,onMove:w,strings:{emptyState:p.emptyState,addButton:p.addButton,removeAriaLabel:p.removeRowAriaLabel},renderRow:e=>(0,b.jsx)(_t,{row:e,keyPlaceholder:p.keyPlaceholder,valuePlaceholder:p.valuePlaceholder,invalid:i,onKeyChange:v,onValueChange:x})})]})}vt.displayName=`KeyValueEditor`;var yt={placeholder:`Enter value`,addButton:`Add item`,...Q};function bt({name:e,placeholder:n,addButtonText:r,emptyMessage:i,invalid:a,sortable:o=!1,strings:s}){let c=t.useStrings(t.useStrings(yt,n!==void 0||r!==void 0||i!==void 0?{placeholder:n,addButton:r,emptyState:i}:void 0),s),{control:l,register:d}=(0,k.useFormContext)(),{fields:f,append:p,remove:m,move:h}=(0,k.useFieldArray)({control:l,name:e});return(0,b.jsx)($,{className:`string-repeater--component`,items:f,sortable:o,onAdd:()=>p(``),onRemove:e=>m(e),onMove:(e,t)=>h(e,t),strings:{emptyState:c.emptyState,addButton:c.addButton,removeAriaLabel:c.removeAriaLabel},renderRow:(t,{index:n})=>(0,b.jsx)(u.t,{...d(`${e}.${n}`),placeholder:c.placeholder,invalid:a})})}bt.displayName=`StringRepeater`;var xt={addButton:`Add item`,...Q};function St({name:e,fields:n,addButtonText:i,emptyMessage:a,invalid:o,sortable:s=!1,strings:c}){let l=t.useStrings(t.useStrings(xt,i!==void 0||a!==void 0?{addButton:i,emptyState:a}:void 0),c),{control:d,register:f}=(0,k.useFormContext)(),{fields:m,append:g,remove:_,move:v}=(0,k.useFieldArray)({control:d,name:e}),x=(0,y.useCallback)(()=>n.reduce((e,t)=>(e[t.name]=``,e),{}),[n]);return(0,b.jsx)($,{items:m,sortable:s,rowVariant:`card`,removeVariant:`ghost`,onAdd:()=>g(x()),onRemove:e=>_(e),onMove:(e,t)=>v(e,t),strings:{emptyState:l.emptyState,addButton:l.addButton,removeAriaLabel:l.removeAriaLabel},renderRow:(t,{index:i})=>(0,b.jsx)(`div`,{className:r.cn(`object-repeater--component`,`space-y-3`),children:n.map(t=>{let n=`${e}.${i}.${t.name}`;return(0,b.jsx)(h.D,{label:t.label,required:t.required,hint:t.hint,htmlFor:n,children:t.type===`textarea`?(0,b.jsx)(p.t,{...f(n),id:n,placeholder:t.placeholder,minRows:3,invalid:o}):(0,b.jsx)(u.t,{...f(n),id:n,type:t.type||`text`,placeholder:t.placeholder,invalid:o})},t.name)})})})}St.displayName=`ObjectRepeater`;var Ct={addButton:`Add item`,emptyState:Q.emptyState,dragHandle:`Drag to reorder`,removeAriaLabel:Q.removeAriaLabel};function wt({name:e,placeholder:n,addButtonText:r,emptyMessage:i,disableSort:a=!1,invalid:o,strings:s}){let c=t.useStrings(t.useStrings(Ct,r!==void 0||i!==void 0?{addButton:r,emptyState:i}:void 0),s),{control:l,register:d}=(0,k.useFormContext)(),{fields:f,append:p,remove:m,move:h}=(0,k.useFieldArray)({control:l,name:e});return(0,b.jsx)($,{className:`list--component`,items:f,sortable:!a,onAdd:()=>p(``),onRemove:e=>m(e),onMove:(e,t)=>h(e,t),strings:{emptyState:c.emptyState,addButton:c.addButton,removeAriaLabel:c.removeAriaLabel,dragHandleAriaLabel:c.dragHandle},renderRow:(t,{index:r})=>(0,b.jsx)(u.t,{...d(`${e}.${r}`),placeholder:n,invalid:o})})}wt.displayName=`List`;function Tt({name:e,value:t,options:i,onChange:a,allowClear:o=!1,size:s,fullWidth:c=!1,disabled:l=!1,invalid:u=!1,className:d}){let{defaultControlSize:p}=n.o(),m=f.f(s,p),h=y.useCallback(e=>{e===t?o&&a(null):a(e)},[o,a,t]);return(0,b.jsx)(`div`,{"data-name":e,role:`radiogroup`,"aria-invalid":u||void 0,className:r.cn(`pill-radio-group--component`,`border-input inline-flex items-center overflow-hidden rounded-lg border`,c&&`w-full`,`aria-invalid:border-destructive aria-invalid:ring-2 aria-invalid:ring-destructive/20`,l&&`pointer-events-none opacity-50`,d),children:i.map((e,n)=>{let i=e.value===t,a=e.icon;return(0,b.jsxs)(`button`,{type:`button`,role:`radio`,"aria-checked":i,"aria-label":(typeof e.label==`string`?e.label:void 0)||e.value,disabled:l||e.disabled,onClick:()=>h(e.value),className:r.cn(`inline-flex select-none items-center justify-center font-medium transition-colors`,`focus-visible:ring-ring/50 outline-none focus-visible:z-10 focus-visible:ring-2`,`disabled:pointer-events-none disabled:opacity-50`,g.i[m],c&&`flex-1`,n>0&&`border-input border-l`,i?`bg-primary text-primary-foreground`:`bg-background text-foreground hover:bg-muted`),children:[!!a&&(0,b.jsx)(a,{className:r.cn(m===`small`?`size-icon-sm`:`size-icon`,e.label&&`mr-space-sm`)}),e.label]},e.value)})})}Tt.displayName=`PillRadioGroup`;function Et({name:e,type:t=`text`,placeholder:n,primaryLocale:i,secondaryLocale:a,activeLocale:o,invalid:s,className:c}){let{register:l}=(0,k.useFormContext)(),d=`${e}.${o===`primary`?i:a}`;return t===`textarea`?(0,b.jsx)(p.t,{...l(d),placeholder:n,minRows:3,invalid:s,className:r.cn(`localized-string-field--component`,c)}):(0,b.jsx)(u.t,{...l(d),type:t===`number`?`number`:`text`,placeholder:n,invalid:s,className:c})}Et.displayName=`LocalizedStringField`;function Dt({name:e,fields:t,primaryLocale:n,secondaryLocale:r,activeLocale:i,invalid:a,className:s}){let{register:c}=(0,k.useFormContext)(),l=i===`primary`?n:r;return(0,b.jsx)(`div`,{className:`w-full space-y-3 rounded-md border p-4 ${s??``}`,children:t.map(t=>{let n=`${e}.${l}.${t.name}`;return(0,b.jsxs)(`div`,{className:`w-full space-y-1.5`,children:[(0,b.jsxs)(o.a,{htmlFor:n,children:[t.label,!!t.required&&(0,b.jsx)(`span`,{className:`text-destructive ml-1`,children:`*`})]}),t.type===`textarea`?(0,b.jsx)(p.t,{...c(n),id:n,placeholder:t.placeholder,minRows:3,invalid:a}):(0,b.jsx)(u.t,{...c(n),id:n,type:t.type===`number`?`number`:`text`,placeholder:t.placeholder,invalid:a})]},t.name)})})}Dt.displayName=`LocalizedObjectField`;var Ot={placeholder:`Enter value`,addButton:Q.addItem,emptyState:Q.emptyState,removeAriaLabel:Q.removeAriaLabel};function kt({name:e,placeholder:n,addButtonText:r,emptyMessage:i,primaryLocale:a,secondaryLocale:o,activeLocale:s,invalid:c,sortable:l=!1,strings:u}){let d=t.useStrings(t.useStrings(Ot,n!==void 0||r!==void 0||i!==void 0?{placeholder:n,addButton:r,emptyState:i}:void 0),u),{control:f,register:m}=(0,k.useFormContext)(),h=`${e}.${s===`primary`?a:o}`,{fields:g,append:_,remove:v,move:y}=(0,k.useFieldArray)({control:f,name:h});return(0,b.jsx)($,{className:`localized-string-repeater--component`,items:g,sortable:l,onAdd:()=>_(``),onRemove:e=>v(e),onMove:(e,t)=>y(e,t),strings:{emptyState:d.emptyState,addButton:d.addButton,removeAriaLabel:d.removeAriaLabel},renderRow:(e,{index:t})=>(0,b.jsx)(p.t,{...m(`${h}.${t}`),placeholder:d.placeholder,minRows:2,invalid:c})})}kt.displayName=`LocalizedStringRepeater`;function At({title:e,description:t,actions:n,children:i,footer:a,padding:o=`default`,surface:s=`card`,className:c,contentClassName:u}){return(0,b.jsx)(l.t,{"data-component":`form-section`,"data-slot":`form-section`,title:e,description:t,headerAction:n,footerSlot:a,padding:o,surface:s,className:r.cn(`form-section--component`,c),contentClassName:r.cn(`form-section--content grid gap-4`,u),children:i})}function jt({children:e,leading:t,trailing:n,sticky:i=!1,className:a}){return(0,b.jsxs)(`div`,{"data-component":`form-actions-bar`,"data-slot":`form-actions-bar`,className:r.cn(`form-actions-bar--component flex min-w-0 flex-col gap-3 border-t border-border bg-background/95 px-4 py-3 backdrop-blur sm:flex-row sm:items-center sm:justify-between`,i&&`sticky bottom-0 z-30`,a),children:[(0,b.jsx)(`div`,{"data-slot":`form-actions-leading`,className:`form-actions-bar--leading min-w-0 flex-1`,children:t}),(0,b.jsx)(`div`,{"data-slot":`form-actions-trailing`,className:`form-actions-bar--trailing flex shrink-0 flex-wrap items-center gap-2`,children:n??e})]})}function Mt({title:e,description:t,errors:n=[],action:i,className:a}){return(0,b.jsxs)(l.i,{"data-component":`error-summary`,"data-slot":`error-summary`,variant:`destructive`,className:r.cn(`error-summary--component`,a),children:[(0,b.jsx)(l.s,{children:e}),!!t&&(0,b.jsx)(l.o,{children:t}),n.length>0&&(0,b.jsx)(`ul`,{"data-slot":`error-summary-list`,className:`error-summary--list col-start-2 m-0 list-disc space-y-1 pl-4 text-sm text-muted-foreground`,children:n.map((e,t)=>(0,b.jsx)(`li`,{children:e},t))}),!!i&&(0,b.jsx)(l.a,{children:i})]})}function Nt({title:e,description:t,actions:n,variant:i=`warning`,className:a}){return(0,b.jsxs)(l.i,{"data-component":`dirty-state-banner`,"data-slot":`dirty-state-banner`,variant:i,className:r.cn(`dirty-state-banner--component`,a),children:[(0,b.jsx)(l.s,{children:e}),!!t&&(0,b.jsx)(l.o,{children:t}),!!n&&(0,b.jsx)(l.a,{children:n})]})}function Pt({isSubmitting:e=!1,isDirty:t=!0,disableWhenPristine:n=!1,disabled:a,children:o,...s}){return(0,b.jsx)(i.t,{...s,"data-component":`submit-state-button`,"data-slot":`submit-state-button`,type:s.type??`submit`,loading:e,disabled:a||n&&!t,className:r.cn(`submit-state-button--component`,s.className),children:o})}function Ft(e){let{formId:t,onSubmit:n,errors:i,isLoading:a,label:s}=e,c=(e=>{let t=i?.[e];return Array.isArray(t)?t[0]:t})(`password`),l=c?()=>c:void 0,d=(Array.isArray(i?.general)?i.general[0]:i?.general)||(Array.isArray(i?.server)?i.server[0]:i?.server),{handleSubmit:f,control:p}=(0,k.useForm)({defaultValues:(0,y.useMemo)(()=>({password:``}),[])}),m=async e=>{await n({password:e.password})},g=!!a;return(0,b.jsxs)(`form`,{id:t,onSubmit:f(m),className:r.cn(`operation-password-form--component`,`space-y-4`),children:[!!d&&(0,b.jsx)(o.s,{type:`error`,children:d}),(0,b.jsx)(h.E,{name:`password`,control:p,error:l,label:s,required:!0,children:(e,t,n)=>(0,b.jsx)(u.t,{type:`password`,value:e.value??``,onChange:e.onChange,onBlur:e.onBlur,name:e.name,invalid:n,disabled:g,autoFocus:!0})})]})}Ft.displayName=`OperationPasswordForm`,Object.defineProperty(exports,"$",{enumerable:!0,get:function(){return A}}),Object.defineProperty(exports,"A",{enumerable:!0,get:function(){return Re}}),Object.defineProperty(exports,"B",{enumerable:!0,get:function(){return ce}}),Object.defineProperty(exports,"C",{enumerable:!0,get:function(){return tt}}),Object.defineProperty(exports,"D",{enumerable:!0,get:function(){return Ge}}),Object.defineProperty(exports,"E",{enumerable:!0,get:function(){return Ke}}),Object.defineProperty(exports,"F",{enumerable:!0,get:function(){return xe}}),Object.defineProperty(exports,"G",{enumerable:!0,get:function(){return U}}),Object.defineProperty(exports,"H",{enumerable:!0,get:function(){return ne}}),Object.defineProperty(exports,"I",{enumerable:!0,get:function(){return ge}}),Object.defineProperty(exports,"J",{enumerable:!0,get:function(){return V}}),Object.defineProperty(exports,"K",{enumerable:!0,get:function(){return H}}),Object.defineProperty(exports,"L",{enumerable:!0,get:function(){return me}}),Object.defineProperty(exports,"M",{enumerable:!0,get:function(){return Ae}}),Object.defineProperty(exports,"N",{enumerable:!0,get:function(){return ke}}),Object.defineProperty(exports,"O",{enumerable:!0,get:function(){return Ue}}),Object.defineProperty(exports,"P",{enumerable:!0,get:function(){return we}}),Object.defineProperty(exports,"Q",{enumerable:!0,get:function(){return j}}),Object.defineProperty(exports,"R",{enumerable:!0,get:function(){return fe}}),Object.defineProperty(exports,"S",{enumerable:!0,get:function(){return nt}}),Object.defineProperty(exports,"T",{enumerable:!0,get:function(){return Xe}}),Object.defineProperty(exports,"U",{enumerable:!0,get:function(){return se}}),Object.defineProperty(exports,"V",{enumerable:!0,get:function(){return te}}),Object.defineProperty(exports,"W",{enumerable:!0,get:function(){return W}}),Object.defineProperty(exports,"X",{enumerable:!0,get:function(){return N}}),Object.defineProperty(exports,"Y",{enumerable:!0,get:function(){return R}}),Object.defineProperty(exports,"Z",{enumerable:!0,get:function(){return M}}),Object.defineProperty(exports,"_",{enumerable:!0,get:function(){return ft}}),Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return At}}),Object.defineProperty(exports,"b",{enumerable:!0,get:function(){return st}}),Object.defineProperty(exports,"c",{enumerable:!0,get:function(){return Dt}}),Object.defineProperty(exports,"d",{enumerable:!0,get:function(){return wt}}),Object.defineProperty(exports,"f",{enumerable:!0,get:function(){return St}}),Object.defineProperty(exports,"g",{enumerable:!0,get:function(){return pt}}),Object.defineProperty(exports,"h",{enumerable:!0,get:function(){return $}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return jt}}),Object.defineProperty(exports,"j",{enumerable:!0,get:function(){return Pe}}),Object.defineProperty(exports,"k",{enumerable:!0,get:function(){return Be}}),Object.defineProperty(exports,"l",{enumerable:!0,get:function(){return Et}}),Object.defineProperty(exports,"m",{enumerable:!0,get:function(){return vt}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return Nt}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return Pt}}),Object.defineProperty(exports,"p",{enumerable:!0,get:function(){return bt}}),Object.defineProperty(exports,"q",{enumerable:!0,get:function(){return B}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return Mt}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return kt}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return Ft}}),Object.defineProperty(exports,"u",{enumerable:!0,get:function(){return Tt}}),Object.defineProperty(exports,"v",{enumerable:!0,get:function(){return ut}}),Object.defineProperty(exports,"w",{enumerable:!0,get:function(){return Ze}}),Object.defineProperty(exports,"x",{enumerable:!0,get:function(){return ot}}),Object.defineProperty(exports,"y",{enumerable:!0,get:function(){return lt}}),Object.defineProperty(exports,"z",{enumerable:!0,get:function(){return de}});
2
+ //# sourceMappingURL=forms-CNh-S9FK.cjs.map