@techzyapp/ui-library 1.0.25 → 1.0.28

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 (721) hide show
  1. package/dist/AdminRoot-BTvmassR.js +55 -0
  2. package/dist/AdminRoot-BTvmassR.js.map +1 -0
  3. package/dist/AdminRoot-DM-cZCpN.cjs +2 -0
  4. package/dist/AdminRoot-DM-cZCpN.cjs.map +1 -0
  5. package/dist/{Alert-udX1ybuC.cjs → Alert-CFm6MU0u.cjs} +2 -2
  6. package/dist/{Alert-udX1ybuC.cjs.map → Alert-CFm6MU0u.cjs.map} +1 -1
  7. package/dist/{Alert-DXmzM_rh.js → Alert-v-lelDih.js} +3 -3
  8. package/dist/{Alert-DXmzM_rh.js.map → Alert-v-lelDih.js.map} +1 -1
  9. package/dist/{AuthLayout-CP9qu6Bv.js → AuthLayout-DOFYw_z5.js} +3 -3
  10. package/dist/{AuthLayout-CP9qu6Bv.js.map → AuthLayout-DOFYw_z5.js.map} +1 -1
  11. package/dist/{AuthLayout-BRUxDgzs.cjs → AuthLayout-QAtW2GAT.cjs} +2 -2
  12. package/dist/{AuthLayout-BRUxDgzs.cjs.map → AuthLayout-QAtW2GAT.cjs.map} +1 -1
  13. package/dist/Avatar-DXNPg23a.js +90 -0
  14. package/dist/Avatar-DXNPg23a.js.map +1 -0
  15. package/dist/Avatar-DrV_F7Ex.cjs +2 -0
  16. package/dist/Avatar-DrV_F7Ex.cjs.map +1 -0
  17. package/dist/{AvatarGroup-uW0SD5P4.cjs → AvatarGroup-CHesdo-M.cjs} +2 -2
  18. package/dist/{AvatarGroup-uW0SD5P4.cjs.map → AvatarGroup-CHesdo-M.cjs.map} +1 -1
  19. package/dist/{AvatarGroup-YaNasLMS.js → AvatarGroup-CwlYqDCI.js} +2 -2
  20. package/dist/{AvatarGroup-YaNasLMS.js.map → AvatarGroup-CwlYqDCI.js.map} +1 -1
  21. package/dist/Badge-BmFgusOa.js +50 -0
  22. package/dist/{Badge-DSWigoGC.js.map → Badge-BmFgusOa.js.map} +1 -1
  23. package/dist/Badge-DVbe1rAI.cjs +2 -0
  24. package/dist/{Badge-BQpr2Jee.cjs.map → Badge-DVbe1rAI.cjs.map} +1 -1
  25. package/dist/{Breadcrumbs-CsYTiX2h.cjs → Breadcrumbs-3wHPNa0P.cjs} +2 -2
  26. package/dist/{Breadcrumbs-CsYTiX2h.cjs.map → Breadcrumbs-3wHPNa0P.cjs.map} +1 -1
  27. package/dist/{Breadcrumbs-DQHHeLId.js → Breadcrumbs-Cgd-u3aK.js} +3 -3
  28. package/dist/{Breadcrumbs-DQHHeLId.js.map → Breadcrumbs-Cgd-u3aK.js.map} +1 -1
  29. package/dist/Button-BLW9yV8W.js +72 -0
  30. package/dist/{Button-DBs8xnA5.js.map → Button-BLW9yV8W.js.map} +1 -1
  31. package/dist/Button-KRGjJdMV.cjs +2 -0
  32. package/dist/{Button-CXmDOzPk.cjs.map → Button-KRGjJdMV.cjs.map} +1 -1
  33. package/dist/{Calendar-B2nMXk4C.cjs → Calendar-CoTCOOUu.cjs} +2 -2
  34. package/dist/{Calendar-B2nMXk4C.cjs.map → Calendar-CoTCOOUu.cjs.map} +1 -1
  35. package/dist/{Calendar-CtteUt82.js → Calendar-sLA-xa0B.js} +4 -4
  36. package/dist/{Calendar-CtteUt82.js.map → Calendar-sLA-xa0B.js.map} +1 -1
  37. package/dist/Card-6fiSEC0z.js +121 -0
  38. package/dist/Card-6fiSEC0z.js.map +1 -0
  39. package/dist/Card-zTkvreQu.cjs +2 -0
  40. package/dist/Card-zTkvreQu.cjs.map +1 -0
  41. package/dist/Checkbox-CTp1xFW7.cjs +2 -0
  42. package/dist/{Checkbox-fzJCwe0j.cjs.map → Checkbox-CTp1xFW7.cjs.map} +1 -1
  43. package/dist/Checkbox-DyKBIgVT.js +98 -0
  44. package/dist/{Checkbox-ZYOSBYRt.js.map → Checkbox-DyKBIgVT.js.map} +1 -1
  45. package/dist/{Chip-DdKhcstm.js → Chip-C-5Z5wsC.js} +31 -31
  46. package/dist/{Chip-DdKhcstm.js.map → Chip-C-5Z5wsC.js.map} +1 -1
  47. package/dist/Chip-CqOqfafx.cjs +2 -0
  48. package/dist/{Chip-gUH_7nQc.cjs.map → Chip-CqOqfafx.cjs.map} +1 -1
  49. package/dist/ChoiceCardGroup-BSagRbPI.cjs +2 -0
  50. package/dist/{ChoiceCardGroup-d0VVTUi5.cjs.map → ChoiceCardGroup-BSagRbPI.cjs.map} +1 -1
  51. package/dist/ChoiceCardGroup-CEniY_HJ.js +181 -0
  52. package/dist/{ChoiceCardGroup-DBohUnRj.js.map → ChoiceCardGroup-CEniY_HJ.js.map} +1 -1
  53. package/dist/{CodeBlock-C6tQtbHU.cjs → CodeBlock-DFiHDZXh.cjs} +2 -2
  54. package/dist/{CodeBlock-C6tQtbHU.cjs.map → CodeBlock-DFiHDZXh.cjs.map} +1 -1
  55. package/dist/{CodeBlock-DD_d3-sM.js → CodeBlock-rPaqO7yD.js} +3 -3
  56. package/dist/{CodeBlock-DD_d3-sM.js.map → CodeBlock-rPaqO7yD.js.map} +1 -1
  57. package/dist/ColorPicker-Bqypsy5E.cjs +2 -0
  58. package/dist/ColorPicker-Bqypsy5E.cjs.map +1 -0
  59. package/dist/{ColorPicker-Dw6Qk0iy.js → ColorPicker-DXDAXvlA.js} +36 -27
  60. package/dist/ColorPicker-DXDAXvlA.js.map +1 -0
  61. package/dist/ColorPickerPanel-6lQC1URc.js +322 -0
  62. package/dist/ColorPickerPanel-6lQC1URc.js.map +1 -0
  63. package/dist/ColorPickerPanel-C9ARc_uD.cjs +2 -0
  64. package/dist/ColorPickerPanel-C9ARc_uD.cjs.map +1 -0
  65. package/dist/ColorRamp-B9OWxCOK.cjs +2 -0
  66. package/dist/ColorRamp-B9OWxCOK.cjs.map +1 -0
  67. package/dist/ColorRamp-DQ8wkgvF.js +126 -0
  68. package/dist/ColorRamp-DQ8wkgvF.js.map +1 -0
  69. package/dist/{ConfigProvider-Bszl3Wr3.cjs → ConfigProvider-BElY0HuV.cjs} +2 -2
  70. package/dist/ConfigProvider-BElY0HuV.cjs.map +1 -0
  71. package/dist/{ConfigProvider-DR9YMy9U.js → ConfigProvider-B_RSn9bb.js} +2 -2
  72. package/dist/ConfigProvider-B_RSn9bb.js.map +1 -0
  73. package/dist/CopyButton-B5aicGl3.cjs +2 -0
  74. package/dist/{CopyButton-Ct-8AmmX.cjs.map → CopyButton-B5aicGl3.cjs.map} +1 -1
  75. package/dist/CopyButton-BplPYm8i.js +43 -0
  76. package/dist/{CopyButton-DJ1PSJZU.js.map → CopyButton-BplPYm8i.js.map} +1 -1
  77. package/dist/DashedButton-B7xodc3N.cjs +2 -0
  78. package/dist/{DashedButton-3C4IZuo4.cjs.map → DashedButton-B7xodc3N.cjs.map} +1 -1
  79. package/dist/DashedButton-iM7kzopW.js +59 -0
  80. package/dist/{DashedButton-BXZAyMtw.js.map → DashedButton-iM7kzopW.js.map} +1 -1
  81. package/dist/{DatePicker-BxEydgfu.cjs → DatePicker-Cdl2JYBd.cjs} +2 -2
  82. package/dist/{DatePicker-BxEydgfu.cjs.map → DatePicker-Cdl2JYBd.cjs.map} +1 -1
  83. package/dist/{DatePicker-CJioG5M7.js → DatePicker-U5TJ9FYM.js} +7 -7
  84. package/dist/{DatePicker-CJioG5M7.js.map → DatePicker-U5TJ9FYM.js.map} +1 -1
  85. package/dist/DatePicker.module-BDtTsg8M.cjs +2 -0
  86. package/dist/{DatePicker.module-tE-tGNBd.cjs.map → DatePicker.module-BDtTsg8M.cjs.map} +1 -1
  87. package/dist/DatePicker.module-CMMQyEhG.js +138 -0
  88. package/dist/{DatePicker.module-BZDftL4g.js.map → DatePicker.module-CMMQyEhG.js.map} +1 -1
  89. package/dist/{DateTimePicker-COEj2Z0F.cjs → DateTimePicker-DUFtddxJ.cjs} +2 -2
  90. package/dist/{DateTimePicker-COEj2Z0F.cjs.map → DateTimePicker-DUFtddxJ.cjs.map} +1 -1
  91. package/dist/{DateTimePicker-e2zj2bhS.js → DateTimePicker-laJsZYJX.js} +10 -10
  92. package/dist/{DateTimePicker-e2zj2bhS.js.map → DateTimePicker-laJsZYJX.js.map} +1 -1
  93. package/dist/DescriptionList-BCvOX8fg.cjs +2 -0
  94. package/dist/DescriptionList-BCvOX8fg.cjs.map +1 -0
  95. package/dist/DescriptionList-Y9jF_4L0.js +176 -0
  96. package/dist/DescriptionList-Y9jF_4L0.js.map +1 -0
  97. package/dist/{Dropdown-FfkmluRu.js → Dropdown--1mNTVZJ.js} +2 -2
  98. package/dist/{Dropdown-FfkmluRu.js.map → Dropdown--1mNTVZJ.js.map} +1 -1
  99. package/dist/{Dropdown-Ui7h2TGd.cjs → Dropdown-DNZ9S_zQ.cjs} +2 -2
  100. package/dist/{Dropdown-Ui7h2TGd.cjs.map → Dropdown-DNZ9S_zQ.cjs.map} +1 -1
  101. package/dist/EmptyState-BtwuzX9Z.js +58 -0
  102. package/dist/EmptyState-BtwuzX9Z.js.map +1 -0
  103. package/dist/EmptyState-CO_NRZ6w.cjs +2 -0
  104. package/dist/EmptyState-CO_NRZ6w.cjs.map +1 -0
  105. package/dist/ErrorBoundary-DJ6R1M9k.js +126 -0
  106. package/dist/ErrorBoundary-DJ6R1M9k.js.map +1 -0
  107. package/dist/ErrorBoundary-unvC1vZQ.cjs +2 -0
  108. package/dist/ErrorBoundary-unvC1vZQ.cjs.map +1 -0
  109. package/dist/FileCard-C3a2yDhK.js +149 -0
  110. package/dist/FileCard-C3a2yDhK.js.map +1 -0
  111. package/dist/FileCard-DKjDQRzZ.cjs +2 -0
  112. package/dist/FileCard-DKjDQRzZ.cjs.map +1 -0
  113. package/dist/FileUploader-CuOHWkiG.js +707 -0
  114. package/dist/FileUploader-CuOHWkiG.js.map +1 -0
  115. package/dist/FileUploader-VIOg03pl.cjs +2 -0
  116. package/dist/FileUploader-VIOg03pl.cjs.map +1 -0
  117. package/dist/{Flag-CB4YyPj3.cjs → Flag-aOQncoEZ.cjs} +2 -2
  118. package/dist/{Flag-CB4YyPj3.cjs.map → Flag-aOQncoEZ.cjs.map} +1 -1
  119. package/dist/{Flag-yA1y5XzR.js → Flag-kpUfmrwC.js} +2 -2
  120. package/dist/{Flag-yA1y5XzR.js.map → Flag-kpUfmrwC.js.map} +1 -1
  121. package/dist/FloatingPanel-BIC4WrFa.cjs +2 -0
  122. package/dist/FloatingPanel-BIC4WrFa.cjs.map +1 -0
  123. package/dist/FloatingPanel-CeSOtE_D.js +135 -0
  124. package/dist/FloatingPanel-CeSOtE_D.js.map +1 -0
  125. package/dist/{FullscreenToggle-0lskYnpx.cjs → FullscreenToggle-BSwxQEaG.cjs} +2 -2
  126. package/dist/{FullscreenToggle-0lskYnpx.cjs.map → FullscreenToggle-BSwxQEaG.cjs.map} +1 -1
  127. package/dist/{FullscreenToggle-jSLruiKt.js → FullscreenToggle-CMifmPD3.js} +3 -3
  128. package/dist/{FullscreenToggle-jSLruiKt.js.map → FullscreenToggle-CMifmPD3.js.map} +1 -1
  129. package/dist/IconButton-A2B0bqC-.cjs +2 -0
  130. package/dist/{IconButton-BN-bZxEi.cjs.map → IconButton-A2B0bqC-.cjs.map} +1 -1
  131. package/dist/IconButton-Dq17Fekm.js +68 -0
  132. package/dist/{IconButton-BEGWfcVc.js.map → IconButton-Dq17Fekm.js.map} +1 -1
  133. package/dist/List-9lUjapQ5.cjs +2 -0
  134. package/dist/List-9lUjapQ5.cjs.map +1 -0
  135. package/dist/List-CZwNGxuP.js +107 -0
  136. package/dist/List-CZwNGxuP.js.map +1 -0
  137. package/dist/Loader-CwyoKoWY.js +28 -0
  138. package/dist/{Loader-BZIa8hwv.js.map → Loader-CwyoKoWY.js.map} +1 -1
  139. package/dist/Loader-D9nteBXt.cjs +2 -0
  140. package/dist/{Loader-B5YqzEYy.cjs.map → Loader-D9nteBXt.cjs.map} +1 -1
  141. package/dist/MobileFrame-8FSsYA_w.js +91 -0
  142. package/dist/MobileFrame-8FSsYA_w.js.map +1 -0
  143. package/dist/MobileFrame-Dsfgd_4k.cjs +2 -0
  144. package/dist/MobileFrame-Dsfgd_4k.cjs.map +1 -0
  145. package/dist/Modal-CQDcYS-Y.cjs +2 -0
  146. package/dist/Modal-CQDcYS-Y.cjs.map +1 -0
  147. package/dist/Modal-cz6JIsZn.js +196 -0
  148. package/dist/Modal-cz6JIsZn.js.map +1 -0
  149. package/dist/MultiSelect-BIwE6wb7.cjs +2 -0
  150. package/dist/MultiSelect-BIwE6wb7.cjs.map +1 -0
  151. package/dist/MultiSelect-C6l0LpIs.js +219 -0
  152. package/dist/MultiSelect-C6l0LpIs.js.map +1 -0
  153. package/dist/{MultilineTextField-Dz6Fg8RJ.cjs → MultilineTextField-B6EYAdik.cjs} +2 -2
  154. package/dist/{MultilineTextField-Dz6Fg8RJ.cjs.map → MultilineTextField-B6EYAdik.cjs.map} +1 -1
  155. package/dist/{MultilineTextField-CwNCJ9lZ.js → MultilineTextField-BgfBFeeF.js} +2 -2
  156. package/dist/{MultilineTextField-CwNCJ9lZ.js.map → MultilineTextField-BgfBFeeF.js.map} +1 -1
  157. package/dist/{NumberField-2yM0mmyj.js → NumberField-BpUTV_Qn.js} +5 -5
  158. package/dist/{NumberField-2yM0mmyj.js.map → NumberField-BpUTV_Qn.js.map} +1 -1
  159. package/dist/{NumberField-CEt95jcC.cjs → NumberField-IyhO4OpJ.cjs} +2 -2
  160. package/dist/{NumberField-CEt95jcC.cjs.map → NumberField-IyhO4OpJ.cjs.map} +1 -1
  161. package/dist/{OtpField-CkliY82J.js → OtpField-BoLxbGtY.js} +4 -4
  162. package/dist/{OtpField-CkliY82J.js.map → OtpField-BoLxbGtY.js.map} +1 -1
  163. package/dist/{OtpField-on-K0_fM.cjs → OtpField-HMrxkdiy.cjs} +2 -2
  164. package/dist/{OtpField-on-K0_fM.cjs.map → OtpField-HMrxkdiy.cjs.map} +1 -1
  165. package/dist/{PageLayout-DGHu7Vm3.cjs → PageLayout-DtWG-6dn.cjs} +2 -2
  166. package/dist/{PageLayout-DGHu7Vm3.cjs.map → PageLayout-DtWG-6dn.cjs.map} +1 -1
  167. package/dist/{PageLayout-DzPh_G6H.js → PageLayout-G8F1WgC-.js} +2 -2
  168. package/dist/{PageLayout-DzPh_G6H.js.map → PageLayout-G8F1WgC-.js.map} +1 -1
  169. package/dist/{PageNotFound-CCFfPHgA.js → PageNotFound-CeKIMZ55.js} +9 -9
  170. package/dist/PageNotFound-CeKIMZ55.js.map +1 -0
  171. package/dist/PageNotFound-DG8xXPL3.cjs +2 -0
  172. package/dist/PageNotFound-DG8xXPL3.cjs.map +1 -0
  173. package/dist/Pagination-Br8P3KwE.cjs +2 -0
  174. package/dist/{Pagination-BdVebW2L.cjs.map → Pagination-Br8P3KwE.cjs.map} +1 -1
  175. package/dist/Pagination-CE1uKrR4.js +139 -0
  176. package/dist/{Pagination-CmskZjcz.js.map → Pagination-CE1uKrR4.js.map} +1 -1
  177. package/dist/PaletteField-BBPbkDcp.js +54 -0
  178. package/dist/PaletteField-BBPbkDcp.js.map +1 -0
  179. package/dist/PaletteField-DwvSn6V6.cjs +2 -0
  180. package/dist/PaletteField-DwvSn6V6.cjs.map +1 -0
  181. package/dist/PhoneField-B-L0xAtD.js +372 -0
  182. package/dist/PhoneField-B-L0xAtD.js.map +1 -0
  183. package/dist/PhoneField-BclMbl7L.cjs +2 -0
  184. package/dist/PhoneField-BclMbl7L.cjs.map +1 -0
  185. package/dist/Popconfirm-BgpvCBy1.js +113 -0
  186. package/dist/Popconfirm-BgpvCBy1.js.map +1 -0
  187. package/dist/Popconfirm-DD8F8SXn.cjs +2 -0
  188. package/dist/Popconfirm-DD8F8SXn.cjs.map +1 -0
  189. package/dist/{Popover-CgIU4Rhg.js → Popover-B82Id9Ut.js} +2 -2
  190. package/dist/{Popover-CgIU4Rhg.js.map → Popover-B82Id9Ut.js.map} +1 -1
  191. package/dist/{Popover-CBI1icIM.cjs → Popover-DAT6DcM9.cjs} +2 -2
  192. package/dist/{Popover-CBI1icIM.cjs.map → Popover-DAT6DcM9.cjs.map} +1 -1
  193. package/dist/Progress-L5koRRJp.js +119 -0
  194. package/dist/Progress-L5koRRJp.js.map +1 -0
  195. package/dist/Progress-_aZ8XOJr.cjs +2 -0
  196. package/dist/Progress-_aZ8XOJr.cjs.map +1 -0
  197. package/dist/QrCode-BQ1eUiAJ.cjs +2 -0
  198. package/dist/QrCode-BQ1eUiAJ.cjs.map +1 -0
  199. package/dist/QrCode-osD23Vkt.js +80 -0
  200. package/dist/QrCode-osD23Vkt.js.map +1 -0
  201. package/dist/QueryError-BMH8X69O.cjs +2 -0
  202. package/dist/QueryError-BMH8X69O.cjs.map +1 -0
  203. package/dist/QueryError-tBuIQRgv.js +19 -0
  204. package/dist/QueryError-tBuIQRgv.js.map +1 -0
  205. package/dist/RadioGroup-BcFBdFhh.cjs +2 -0
  206. package/dist/{RadioGroup-C8u7eNBS.cjs.map → RadioGroup-BcFBdFhh.cjs.map} +1 -1
  207. package/dist/RadioGroup-dVx_hMCY.js +141 -0
  208. package/dist/{RadioGroup-DbodUJW8.js.map → RadioGroup-dVx_hMCY.js.map} +1 -1
  209. package/dist/RemoveDialog-C9_UzFBf.js +109 -0
  210. package/dist/RemoveDialog-C9_UzFBf.js.map +1 -0
  211. package/dist/RemoveDialog-DBKYnTYU.cjs +2 -0
  212. package/dist/RemoveDialog-DBKYnTYU.cjs.map +1 -0
  213. package/dist/RichTextEditor-DTz7Qcn_.cjs +2 -0
  214. package/dist/RichTextEditor-DTz7Qcn_.cjs.map +1 -0
  215. package/dist/{RichTextEditor-Bm8FFbcR.js → RichTextEditor-fXcbUjTl.js} +13 -13
  216. package/dist/RichTextEditor-fXcbUjTl.js.map +1 -0
  217. package/dist/RootLayout-DG2dXhXn.cjs +2 -0
  218. package/dist/{RootLayout-kssj9exn.cjs.map → RootLayout-DG2dXhXn.cjs.map} +1 -1
  219. package/dist/RootLayout-p8ArA6wA.js +515 -0
  220. package/dist/{RootLayout-Cf7Rr9Iz.js.map → RootLayout-p8ArA6wA.js.map} +1 -1
  221. package/dist/Select-BAR_aVSz.js +199 -0
  222. package/dist/Select-BAR_aVSz.js.map +1 -0
  223. package/dist/Select-BuVfUiw-.cjs +2 -0
  224. package/dist/Select-BuVfUiw-.cjs.map +1 -0
  225. package/dist/{Sidebar-YH-DoNG9.js → Sidebar-CsWcjSTx.js} +193 -183
  226. package/dist/Sidebar-CsWcjSTx.js.map +1 -0
  227. package/dist/Sidebar-NI5HGGYF.cjs +2 -0
  228. package/dist/Sidebar-NI5HGGYF.cjs.map +1 -0
  229. package/dist/Skeleton-DK0lAjS9.cjs +2 -0
  230. package/dist/Skeleton-DK0lAjS9.cjs.map +1 -0
  231. package/dist/Skeleton-_-uGax2j.js +56 -0
  232. package/dist/Skeleton-_-uGax2j.js.map +1 -0
  233. package/dist/Slider-Cu1FhxR2.cjs +2 -0
  234. package/dist/{Slider-dxYVXRev.cjs.map → Slider-Cu1FhxR2.cjs.map} +1 -1
  235. package/dist/Slider-DoQJWgGU.js +184 -0
  236. package/dist/{Slider-oGXd5e9X.js.map → Slider-DoQJWgGU.js.map} +1 -1
  237. package/dist/{SpeedDial-9_Yk8AGx.cjs → SpeedDial-C_rZkHmF.cjs} +2 -2
  238. package/dist/{SpeedDial-9_Yk8AGx.cjs.map → SpeedDial-C_rZkHmF.cjs.map} +1 -1
  239. package/dist/{SpeedDial-DWNuC6f8.js → SpeedDial-DF-ILheU.js} +2 -2
  240. package/dist/{SpeedDial-DWNuC6f8.js.map → SpeedDial-DF-ILheU.js.map} +1 -1
  241. package/dist/{Stepper-CuqFpamY.js → Stepper-B39Ax_w6.js} +70 -70
  242. package/dist/{Stepper-CuqFpamY.js.map → Stepper-B39Ax_w6.js.map} +1 -1
  243. package/dist/Stepper-CT7n113R.cjs +2 -0
  244. package/dist/{Stepper-B1z_u650.cjs.map → Stepper-CT7n113R.cjs.map} +1 -1
  245. package/dist/{SwatchPicker-CCJltwHI.cjs → SwatchPicker-BWXqgsEy.cjs} +2 -2
  246. package/dist/{SwatchPicker-CCJltwHI.cjs.map → SwatchPicker-BWXqgsEy.cjs.map} +1 -1
  247. package/dist/{SwatchPicker-CqyWngFJ.js → SwatchPicker-Bpxk0IOe.js} +3 -3
  248. package/dist/{SwatchPicker-CqyWngFJ.js.map → SwatchPicker-Bpxk0IOe.js.map} +1 -1
  249. package/dist/Switch-DSs2Y0IR.cjs +2 -0
  250. package/dist/{Switch-DRkZ6kHJ.cjs.map → Switch-DSs2Y0IR.cjs.map} +1 -1
  251. package/dist/Switch-Jh2Ch8GO.js +85 -0
  252. package/dist/{Switch-DMPJ0fhB.js.map → Switch-Jh2Ch8GO.js.map} +1 -1
  253. package/dist/Table-CH_oiEP3.js +1170 -0
  254. package/dist/Table-CH_oiEP3.js.map +1 -0
  255. package/dist/Table-DD_uysnY.cjs +2 -0
  256. package/dist/Table-DD_uysnY.cjs.map +1 -0
  257. package/dist/Tabs-By86Cmpw.js +190 -0
  258. package/dist/{Tabs-ytbBzAxG.js.map → Tabs-By86Cmpw.js.map} +1 -1
  259. package/dist/Tabs-C1N9FgAq.cjs +2 -0
  260. package/dist/{Tabs-BiKDy_fv.cjs.map → Tabs-C1N9FgAq.cjs.map} +1 -1
  261. package/dist/{TagsField-CEt_PC5y.js → TagsField-BiOyAadf.js} +5 -5
  262. package/dist/{TagsField-CEt_PC5y.js.map → TagsField-BiOyAadf.js.map} +1 -1
  263. package/dist/{TagsField-DpDbf0ru.cjs → TagsField-RX-x45-j.cjs} +2 -2
  264. package/dist/{TagsField-DpDbf0ru.cjs.map → TagsField-RX-x45-j.cjs.map} +1 -1
  265. package/dist/{TextField-Df_kGy2l.cjs → TextField-CdbanZuk.cjs} +2 -2
  266. package/dist/{TextField-Df_kGy2l.cjs.map → TextField-CdbanZuk.cjs.map} +1 -1
  267. package/dist/{TextField-BWdmF-HE.js → TextField-CkronCRC.js} +5 -5
  268. package/dist/{TextField-BWdmF-HE.js.map → TextField-CkronCRC.js.map} +1 -1
  269. package/dist/TextField.module-6gYcR9TL.js +27 -0
  270. package/dist/TextField.module-6gYcR9TL.js.map +1 -0
  271. package/dist/TextField.module-DsNCo8vN.cjs +2 -0
  272. package/dist/TextField.module-DsNCo8vN.cjs.map +1 -0
  273. package/dist/{ThemeToggle-CgxF6oUu.js → ThemeToggle-BYUEH6be.js} +3 -3
  274. package/dist/{ThemeToggle-CgxF6oUu.js.map → ThemeToggle-BYUEH6be.js.map} +1 -1
  275. package/dist/{ThemeToggle-BJdXhmfc.cjs → ThemeToggle-C4QhDd76.cjs} +2 -2
  276. package/dist/{ThemeToggle-BJdXhmfc.cjs.map → ThemeToggle-C4QhDd76.cjs.map} +1 -1
  277. package/dist/{TimeColumns-DxVN0V8l.cjs → TimeColumns-Cl0_IRf0.cjs} +2 -2
  278. package/dist/{TimeColumns-DxVN0V8l.cjs.map → TimeColumns-Cl0_IRf0.cjs.map} +1 -1
  279. package/dist/{TimeColumns-n-fz50mr.js → TimeColumns-yzjScNU8.js} +3 -3
  280. package/dist/{TimeColumns-n-fz50mr.js.map → TimeColumns-yzjScNU8.js.map} +1 -1
  281. package/dist/{TimePicker-DvoemiGz.cjs → TimePicker-CJGVGETl.cjs} +2 -2
  282. package/dist/{TimePicker-DvoemiGz.cjs.map → TimePicker-CJGVGETl.cjs.map} +1 -1
  283. package/dist/{TimePicker-Bopxx3zU.js → TimePicker-CoIdMv1S.js} +8 -8
  284. package/dist/{TimePicker-Bopxx3zU.js.map → TimePicker-CoIdMv1S.js.map} +1 -1
  285. package/dist/Timeline-CKEosWka.cjs +2 -0
  286. package/dist/{Timeline-ONU_3gi3.cjs.map → Timeline-CKEosWka.cjs.map} +1 -1
  287. package/dist/Timeline-ufVXmpMY.js +71 -0
  288. package/dist/{Timeline-D3kzt1dy.js.map → Timeline-ufVXmpMY.js.map} +1 -1
  289. package/dist/{Toaster-BxIY2H4V.js → Toaster-Dhz2mYq_.js} +2 -2
  290. package/dist/{Toaster-BxIY2H4V.js.map → Toaster-Dhz2mYq_.js.map} +1 -1
  291. package/dist/{Toaster-DZSzFse_.cjs → Toaster-lv5cJhib.cjs} +2 -2
  292. package/dist/{Toaster-DZSzFse_.cjs.map → Toaster-lv5cJhib.cjs.map} +1 -1
  293. package/dist/{TranslatedFields-BtDLkQy7.cjs → TranslatedFields-BCJ86Tqp.cjs} +2 -2
  294. package/dist/{TranslatedFields-BtDLkQy7.cjs.map → TranslatedFields-BCJ86Tqp.cjs.map} +1 -1
  295. package/dist/{TranslatedFields-DmR8LKSG.js → TranslatedFields-BtNUAyrY.js} +5 -5
  296. package/dist/{TranslatedFields-DmR8LKSG.js.map → TranslatedFields-BtNUAyrY.js.map} +1 -1
  297. package/dist/Typography-B6ASPrzT.cjs +2 -0
  298. package/dist/Typography-B6ASPrzT.cjs.map +1 -0
  299. package/dist/Typography-CJv5AnRP.js +70 -0
  300. package/dist/Typography-CJv5AnRP.js.map +1 -0
  301. package/dist/UserCard-B-eNyZuT.js +78 -0
  302. package/dist/UserCard-B-eNyZuT.js.map +1 -0
  303. package/dist/UserCard-CiQUrZjb.cjs +2 -0
  304. package/dist/UserCard-CiQUrZjb.cjs.map +1 -0
  305. package/dist/app/AdminRoot.d.cts +10 -3
  306. package/dist/app/AdminRoot.d.ts +10 -3
  307. package/dist/color-CgR8ybWZ.cjs +2 -0
  308. package/dist/color-CgR8ybWZ.cjs.map +1 -0
  309. package/dist/color-EQJ2DrcQ.js +24 -0
  310. package/dist/color-EQJ2DrcQ.js.map +1 -0
  311. package/dist/components/Alert/index.cjs +1 -1
  312. package/dist/components/Alert/index.js +1 -1
  313. package/dist/components/AuthLayout/index.cjs +1 -1
  314. package/dist/components/AuthLayout/index.js +1 -1
  315. package/dist/components/Avatar/Avatar.d.cts +7 -1
  316. package/dist/components/Avatar/Avatar.d.ts +7 -1
  317. package/dist/components/Avatar/index.cjs +1 -1
  318. package/dist/components/Avatar/index.js +2 -2
  319. package/dist/components/Badge/index.cjs +1 -1
  320. package/dist/components/Badge/index.js +1 -1
  321. package/dist/components/Breadcrumbs/index.cjs +1 -1
  322. package/dist/components/Breadcrumbs/index.js +1 -1
  323. package/dist/components/Button/index.cjs +1 -1
  324. package/dist/components/Button/index.js +1 -1
  325. package/dist/components/Card/Card.d.cts +2 -0
  326. package/dist/components/Card/Card.d.ts +2 -0
  327. package/dist/components/Card/index.cjs +1 -1
  328. package/dist/components/Card/index.js +1 -1
  329. package/dist/components/Checkbox/index.cjs +1 -1
  330. package/dist/components/Checkbox/index.js +1 -1
  331. package/dist/components/Chip/index.cjs +1 -1
  332. package/dist/components/Chip/index.js +1 -1
  333. package/dist/components/ChoiceCard/index.cjs +1 -1
  334. package/dist/components/ChoiceCard/index.js +1 -1
  335. package/dist/components/CodeBlock/index.cjs +1 -1
  336. package/dist/components/CodeBlock/index.js +1 -1
  337. package/dist/components/ColorPicker/ColorPicker.d.cts +5 -0
  338. package/dist/components/ColorPicker/ColorPicker.d.ts +5 -0
  339. package/dist/components/ColorPicker/ColorPickerPanel.d.cts +6 -1
  340. package/dist/components/ColorPicker/ColorPickerPanel.d.ts +6 -1
  341. package/dist/components/ColorPicker/colorUtils.d.cts +3 -12
  342. package/dist/components/ColorPicker/colorUtils.d.ts +3 -12
  343. package/dist/components/ColorPicker/index.cjs +1 -1
  344. package/dist/components/ColorPicker/index.js +1 -1
  345. package/dist/components/ColorRamp/ColorRamp.d.cts +36 -0
  346. package/dist/components/ColorRamp/ColorRamp.d.ts +36 -0
  347. package/dist/components/ColorRamp/index.cjs +2 -0
  348. package/dist/components/ColorRamp/index.cjs.map +1 -0
  349. package/dist/components/ColorRamp/index.d.cts +3 -0
  350. package/dist/components/ColorRamp/index.d.ts +3 -0
  351. package/dist/components/ColorRamp/index.js +6 -0
  352. package/dist/components/ColorRamp/index.js.map +1 -0
  353. package/dist/components/CopyButton/index.cjs +1 -1
  354. package/dist/components/CopyButton/index.js +1 -1
  355. package/dist/components/DashedButton/index.cjs +1 -1
  356. package/dist/components/DashedButton/index.js +1 -1
  357. package/dist/components/DatePicker/index.cjs +1 -1
  358. package/dist/components/DatePicker/index.js +1 -1
  359. package/dist/components/DateTimePicker/index.cjs +1 -1
  360. package/dist/components/DateTimePicker/index.js +1 -1
  361. package/dist/components/DescriptionList/DescriptionList.d.cts +76 -0
  362. package/dist/components/DescriptionList/DescriptionList.d.ts +76 -0
  363. package/dist/components/DescriptionList/index.cjs +2 -0
  364. package/dist/components/DescriptionList/index.cjs.map +1 -0
  365. package/dist/components/DescriptionList/index.d.cts +2 -0
  366. package/dist/components/DescriptionList/index.d.ts +2 -0
  367. package/dist/components/DescriptionList/index.js +6 -0
  368. package/dist/components/DescriptionList/index.js.map +1 -0
  369. package/dist/components/Dropdown/index.cjs +1 -1
  370. package/dist/components/Dropdown/index.js +1 -1
  371. package/dist/components/EmptyState/EmptyState.d.cts +4 -1
  372. package/dist/components/EmptyState/EmptyState.d.ts +4 -1
  373. package/dist/components/EmptyState/index.cjs +1 -1
  374. package/dist/components/EmptyState/index.js +1 -1
  375. package/dist/components/ErrorState/ErrorBoundary.d.cts +35 -0
  376. package/dist/components/ErrorState/ErrorBoundary.d.ts +35 -0
  377. package/dist/components/ErrorState/ErrorState.d.cts +36 -0
  378. package/dist/components/ErrorState/ErrorState.d.ts +36 -0
  379. package/dist/components/ErrorState/QueryError.d.cts +18 -0
  380. package/dist/components/ErrorState/QueryError.d.ts +18 -0
  381. package/dist/components/ErrorState/errorMessage.d.cts +14 -0
  382. package/dist/components/ErrorState/errorMessage.d.ts +14 -0
  383. package/dist/components/ErrorState/index.cjs +2 -0
  384. package/dist/components/ErrorState/index.cjs.map +1 -0
  385. package/dist/components/ErrorState/index.d.cts +7 -0
  386. package/dist/components/ErrorState/index.d.ts +7 -0
  387. package/dist/components/ErrorState/index.js +11 -0
  388. package/dist/components/ErrorState/index.js.map +1 -0
  389. package/dist/components/FileCard/index.cjs +1 -1
  390. package/dist/components/FileCard/index.js +1 -1
  391. package/dist/components/FileUploader/index.cjs +1 -1
  392. package/dist/components/FileUploader/index.js +1 -1
  393. package/dist/components/Flag/index.cjs +1 -1
  394. package/dist/components/Flag/index.js +1 -1
  395. package/dist/components/FloatingPanel/FloatingPanel.d.cts +4 -0
  396. package/dist/components/FloatingPanel/FloatingPanel.d.ts +4 -0
  397. package/dist/components/FullscreenToggle/index.cjs +1 -1
  398. package/dist/components/FullscreenToggle/index.js +1 -1
  399. package/dist/components/IconButton/index.cjs +1 -1
  400. package/dist/components/IconButton/index.js +1 -1
  401. package/dist/components/List/List.d.cts +13 -3
  402. package/dist/components/List/List.d.ts +13 -3
  403. package/dist/components/List/ListItem.d.cts +5 -0
  404. package/dist/components/List/ListItem.d.ts +5 -0
  405. package/dist/components/List/index.cjs +1 -1
  406. package/dist/components/List/index.js +4 -5
  407. package/dist/components/List/index.js.map +1 -1
  408. package/dist/components/List/listContext.d.cts +9 -3
  409. package/dist/components/List/listContext.d.ts +9 -3
  410. package/dist/components/Loader/index.cjs +1 -1
  411. package/dist/components/Loader/index.js +1 -1
  412. package/dist/components/MobileFrame/MobileFrame.d.cts +45 -0
  413. package/dist/components/MobileFrame/MobileFrame.d.ts +45 -0
  414. package/dist/components/MobileFrame/frames.d.cts +27 -0
  415. package/dist/components/MobileFrame/frames.d.ts +27 -0
  416. package/dist/components/MobileFrame/index.cjs +2 -0
  417. package/dist/components/MobileFrame/index.cjs.map +1 -0
  418. package/dist/components/MobileFrame/index.d.cts +4 -0
  419. package/dist/components/MobileFrame/index.d.ts +4 -0
  420. package/dist/components/MobileFrame/index.js +8 -0
  421. package/dist/components/MobileFrame/index.js.map +1 -0
  422. package/dist/components/Modal/Modal.d.cts +2 -0
  423. package/dist/components/Modal/Modal.d.ts +2 -0
  424. package/dist/components/Modal/index.cjs +1 -1
  425. package/dist/components/Modal/index.js +1 -1
  426. package/dist/components/MultiSelect/index.cjs +1 -1
  427. package/dist/components/MultiSelect/index.js +1 -1
  428. package/dist/components/MultilineTextField/index.cjs +1 -1
  429. package/dist/components/MultilineTextField/index.js +1 -1
  430. package/dist/components/NumberField/index.cjs +1 -1
  431. package/dist/components/NumberField/index.js +1 -1
  432. package/dist/components/OptionMenu/OptionMenu.d.cts +40 -0
  433. package/dist/components/OptionMenu/OptionMenu.d.ts +40 -0
  434. package/dist/components/OptionMenu/useOptionMenu.d.cts +81 -0
  435. package/dist/components/OptionMenu/useOptionMenu.d.ts +81 -0
  436. package/dist/components/OtpField/index.cjs +1 -1
  437. package/dist/components/OtpField/index.js +1 -1
  438. package/dist/components/PageLayout/index.cjs +1 -1
  439. package/dist/components/PageLayout/index.js +1 -1
  440. package/dist/components/PageNotFound/PageNotFound.d.cts +1 -1
  441. package/dist/components/PageNotFound/PageNotFound.d.ts +1 -1
  442. package/dist/components/PageNotFound/index.cjs +1 -1
  443. package/dist/components/PageNotFound/index.js +1 -1
  444. package/dist/components/Pagination/index.cjs +1 -1
  445. package/dist/components/Pagination/index.js +1 -1
  446. package/dist/components/PaletteField/PaletteField.d.cts +30 -0
  447. package/dist/components/PaletteField/PaletteField.d.ts +30 -0
  448. package/dist/components/PaletteField/index.cjs +2 -0
  449. package/dist/components/PaletteField/index.cjs.map +1 -0
  450. package/dist/components/PaletteField/index.d.cts +2 -0
  451. package/dist/components/PaletteField/index.d.ts +2 -0
  452. package/dist/components/PaletteField/index.js +6 -0
  453. package/dist/components/PaletteField/index.js.map +1 -0
  454. package/dist/components/PhoneField/PhoneField.d.cts +54 -0
  455. package/dist/components/PhoneField/PhoneField.d.ts +54 -0
  456. package/dist/components/PhoneField/index.cjs +2 -0
  457. package/dist/components/PhoneField/index.cjs.map +1 -0
  458. package/dist/components/PhoneField/index.d.cts +4 -0
  459. package/dist/components/PhoneField/index.d.ts +4 -0
  460. package/dist/components/PhoneField/index.js +7 -0
  461. package/dist/components/PhoneField/index.js.map +1 -0
  462. package/dist/components/PhoneField/phone.d.cts +50 -0
  463. package/dist/components/PhoneField/phone.d.ts +50 -0
  464. package/dist/components/Popconfirm/Popconfirm.d.cts +53 -0
  465. package/dist/components/Popconfirm/Popconfirm.d.ts +53 -0
  466. package/dist/components/Popconfirm/index.cjs +2 -0
  467. package/dist/components/Popconfirm/index.cjs.map +1 -0
  468. package/dist/components/Popconfirm/index.d.cts +2 -0
  469. package/dist/components/Popconfirm/index.d.ts +2 -0
  470. package/dist/components/Popconfirm/index.js +6 -0
  471. package/dist/components/Popconfirm/index.js.map +1 -0
  472. package/dist/components/Popover/index.cjs +1 -1
  473. package/dist/components/Popover/index.js +1 -1
  474. package/dist/components/Progress/Progress.d.cts +50 -0
  475. package/dist/components/Progress/Progress.d.ts +50 -0
  476. package/dist/components/Progress/index.cjs +2 -0
  477. package/dist/components/Progress/index.cjs.map +1 -0
  478. package/dist/components/Progress/index.d.cts +2 -0
  479. package/dist/components/Progress/index.d.ts +2 -0
  480. package/dist/components/Progress/index.js +6 -0
  481. package/dist/components/Progress/index.js.map +1 -0
  482. package/dist/components/QrCode/QrCode.d.cts +3 -0
  483. package/dist/components/QrCode/QrCode.d.ts +3 -0
  484. package/dist/components/QrCode/index.cjs +1 -1
  485. package/dist/components/QrCode/index.js +1 -1
  486. package/dist/components/Radio/index.cjs +1 -1
  487. package/dist/components/Radio/index.js +1 -1
  488. package/dist/components/RemoveDialog/RemoveDialog.d.cts +8 -1
  489. package/dist/components/RemoveDialog/RemoveDialog.d.ts +8 -1
  490. package/dist/components/RemoveDialog/index.cjs +1 -1
  491. package/dist/components/RemoveDialog/index.js +1 -1
  492. package/dist/components/RichTextEditor/index.cjs +1 -1
  493. package/dist/components/RichTextEditor/index.js +1 -1
  494. package/dist/components/RootLayout/index.cjs +1 -1
  495. package/dist/components/RootLayout/index.js +1 -1
  496. package/dist/components/Select/Select.d.cts +2 -12
  497. package/dist/components/Select/Select.d.ts +2 -12
  498. package/dist/components/Select/index.cjs +1 -1
  499. package/dist/components/Select/index.js +1 -1
  500. package/dist/components/Sidebar/index.cjs +1 -1
  501. package/dist/components/Sidebar/index.js +1 -1
  502. package/dist/components/Skeleton/Skeleton.d.cts +31 -0
  503. package/dist/components/Skeleton/Skeleton.d.ts +31 -0
  504. package/dist/components/Skeleton/index.cjs +2 -0
  505. package/dist/components/Skeleton/index.cjs.map +1 -0
  506. package/dist/components/Skeleton/index.d.cts +2 -0
  507. package/dist/components/Skeleton/index.d.ts +2 -0
  508. package/dist/components/Skeleton/index.js +6 -0
  509. package/dist/components/Skeleton/index.js.map +1 -0
  510. package/dist/components/Slider/index.cjs +1 -1
  511. package/dist/components/Slider/index.js +1 -1
  512. package/dist/components/SpeedDial/index.cjs +1 -1
  513. package/dist/components/SpeedDial/index.js +1 -1
  514. package/dist/components/Stepper/index.cjs +1 -1
  515. package/dist/components/Stepper/index.js +1 -1
  516. package/dist/components/SwatchPicker/index.cjs +1 -1
  517. package/dist/components/SwatchPicker/index.js +1 -1
  518. package/dist/components/Switch/index.cjs +1 -1
  519. package/dist/components/Switch/index.js +1 -1
  520. package/dist/components/Table/Table.d.cts +7 -1
  521. package/dist/components/Table/Table.d.ts +7 -1
  522. package/dist/components/Table/index.cjs +1 -1
  523. package/dist/components/Table/index.js +1 -1
  524. package/dist/components/Tabs/index.cjs +1 -1
  525. package/dist/components/Tabs/index.js +1 -1
  526. package/dist/components/TagsField/index.cjs +1 -1
  527. package/dist/components/TagsField/index.js +1 -1
  528. package/dist/components/TextField/index.cjs +1 -1
  529. package/dist/components/TextField/index.js +1 -1
  530. package/dist/components/ThemeToggle/index.cjs +1 -1
  531. package/dist/components/ThemeToggle/index.js +1 -1
  532. package/dist/components/TimePicker/index.cjs +1 -1
  533. package/dist/components/TimePicker/index.js +1 -1
  534. package/dist/components/Timeline/index.cjs +1 -1
  535. package/dist/components/Timeline/index.js +1 -1
  536. package/dist/components/Toast/index.cjs +1 -1
  537. package/dist/components/Toast/index.js +1 -1
  538. package/dist/components/TranslatedFields/index.cjs +1 -1
  539. package/dist/components/TranslatedFields/index.js +1 -1
  540. package/dist/components/Typography/Typography.d.cts +10 -3
  541. package/dist/components/Typography/Typography.d.ts +10 -3
  542. package/dist/components/Typography/index.cjs +1 -1
  543. package/dist/components/Typography/index.js +1 -1
  544. package/dist/components/UserCard/UserCard.d.cts +3 -1
  545. package/dist/components/UserCard/UserCard.d.ts +3 -1
  546. package/dist/components/UserCard/index.cjs +1 -1
  547. package/dist/components/UserCard/index.js +1 -1
  548. package/dist/components/index.d.cts +9 -0
  549. package/dist/components/index.d.ts +9 -0
  550. package/dist/entries/app.cjs +1 -1
  551. package/dist/entries/app.js +1 -1
  552. package/dist/entries/components.cjs +1 -1
  553. package/dist/entries/components.js +171 -146
  554. package/dist/entries/components.js.map +1 -1
  555. package/dist/entries/helpers.cjs +1 -1
  556. package/dist/entries/helpers.d.cts +2 -0
  557. package/dist/entries/helpers.d.ts +2 -0
  558. package/dist/entries/helpers.js +18 -8
  559. package/dist/entries/helpers.js.map +1 -1
  560. package/dist/entries/i18n.cjs +1 -1
  561. package/dist/entries/i18n.js +2 -2
  562. package/dist/entries/theme.cjs +1 -1
  563. package/dist/entries/theme.js +1 -1
  564. package/dist/helpers/color.d.cts +17 -0
  565. package/dist/helpers/color.d.ts +17 -0
  566. package/dist/helpers/palette.d.cts +68 -0
  567. package/dist/helpers/palette.d.ts +68 -0
  568. package/dist/hooks/useOptionalPeer.d.cts +21 -0
  569. package/dist/hooks/useOptionalPeer.d.ts +21 -0
  570. package/dist/i18n/messages.d.cts +24 -0
  571. package/dist/i18n/messages.d.ts +24 -0
  572. package/dist/index.cjs +1 -1
  573. package/dist/index.css +16 -12
  574. package/dist/index.js +224 -189
  575. package/dist/index.js.map +1 -1
  576. package/dist/{messages-ogohLC5P.js → messages-BF2ft7yD.js} +201 -33
  577. package/dist/messages-BF2ft7yD.js.map +1 -0
  578. package/dist/messages-ihnE1jVG.cjs +36 -0
  579. package/dist/messages-ihnE1jVG.cjs.map +1 -0
  580. package/dist/palette-B031dM4E.js +70 -0
  581. package/dist/palette-B031dM4E.js.map +1 -0
  582. package/dist/palette-BycMHbED.cjs +2 -0
  583. package/dist/palette-BycMHbED.cjs.map +1 -0
  584. package/dist/theme/ConfigProvider.d.cts +8 -8
  585. package/dist/theme/ConfigProvider.d.ts +8 -8
  586. package/dist/useOptionMenu-C0xSaZ4t.cjs +2 -0
  587. package/dist/useOptionMenu-C0xSaZ4t.cjs.map +1 -0
  588. package/dist/useOptionMenu-Cq_eHdab.js +286 -0
  589. package/dist/useOptionMenu-Cq_eHdab.js.map +1 -0
  590. package/dist/useOptionalPeer-49f3XcO5.js +28 -0
  591. package/dist/useOptionalPeer-49f3XcO5.js.map +1 -0
  592. package/dist/useOptionalPeer-9Fkx5Leb.cjs +2 -0
  593. package/dist/useOptionalPeer-9Fkx5Leb.cjs.map +1 -0
  594. package/package.json +6 -1
  595. package/dist/AdminRoot-BkPPRkyQ.cjs +0 -2
  596. package/dist/AdminRoot-BkPPRkyQ.cjs.map +0 -1
  597. package/dist/AdminRoot-CgvtgUpW.js +0 -50
  598. package/dist/AdminRoot-CgvtgUpW.js.map +0 -1
  599. package/dist/Avatar-Dgf04PBC.cjs +0 -2
  600. package/dist/Avatar-Dgf04PBC.cjs.map +0 -1
  601. package/dist/Avatar-Q50J8wdN.js +0 -60
  602. package/dist/Avatar-Q50J8wdN.js.map +0 -1
  603. package/dist/Badge-BQpr2Jee.cjs +0 -2
  604. package/dist/Badge-DSWigoGC.js +0 -50
  605. package/dist/Button-CXmDOzPk.cjs +0 -2
  606. package/dist/Button-DBs8xnA5.js +0 -72
  607. package/dist/Card-DGF22HbS.cjs +0 -2
  608. package/dist/Card-DGF22HbS.cjs.map +0 -1
  609. package/dist/Card-DYKnWt-L.js +0 -118
  610. package/dist/Card-DYKnWt-L.js.map +0 -1
  611. package/dist/Checkbox-ZYOSBYRt.js +0 -98
  612. package/dist/Checkbox-fzJCwe0j.cjs +0 -2
  613. package/dist/Chip-gUH_7nQc.cjs +0 -2
  614. package/dist/ChoiceCardGroup-DBohUnRj.js +0 -181
  615. package/dist/ChoiceCardGroup-d0VVTUi5.cjs +0 -2
  616. package/dist/ColorPicker-DtzFwNWk.cjs +0 -2
  617. package/dist/ColorPicker-DtzFwNWk.cjs.map +0 -1
  618. package/dist/ColorPicker-Dw6Qk0iy.js.map +0 -1
  619. package/dist/ColorPickerPanel--wBX-m7J.cjs +0 -2
  620. package/dist/ColorPickerPanel--wBX-m7J.cjs.map +0 -1
  621. package/dist/ColorPickerPanel-Dp7bnnVf.js +0 -336
  622. package/dist/ColorPickerPanel-Dp7bnnVf.js.map +0 -1
  623. package/dist/ConfigProvider-Bszl3Wr3.cjs.map +0 -1
  624. package/dist/ConfigProvider-DR9YMy9U.js.map +0 -1
  625. package/dist/CopyButton-Ct-8AmmX.cjs +0 -2
  626. package/dist/CopyButton-DJ1PSJZU.js +0 -31
  627. package/dist/DashedButton-3C4IZuo4.cjs +0 -2
  628. package/dist/DashedButton-BXZAyMtw.js +0 -59
  629. package/dist/DatePicker.module-BZDftL4g.js +0 -138
  630. package/dist/DatePicker.module-tE-tGNBd.cjs +0 -2
  631. package/dist/EmptyState-BTd7aVgu.js +0 -38
  632. package/dist/EmptyState-BTd7aVgu.js.map +0 -1
  633. package/dist/EmptyState-Bv4XXnD1.cjs +0 -2
  634. package/dist/EmptyState-Bv4XXnD1.cjs.map +0 -1
  635. package/dist/FileCard-DW5Ur8Aj.cjs +0 -2
  636. package/dist/FileCard-DW5Ur8Aj.cjs.map +0 -1
  637. package/dist/FileCard-DY8N9Lzz.js +0 -148
  638. package/dist/FileCard-DY8N9Lzz.js.map +0 -1
  639. package/dist/FileUploader-B7VfhcR7.cjs +0 -2
  640. package/dist/FileUploader-B7VfhcR7.cjs.map +0 -1
  641. package/dist/FileUploader-BYF5FvUc.js +0 -684
  642. package/dist/FileUploader-BYF5FvUc.js.map +0 -1
  643. package/dist/FloatingPanel-BG9Uag__.js +0 -131
  644. package/dist/FloatingPanel-BG9Uag__.js.map +0 -1
  645. package/dist/FloatingPanel-U6sGYiSK.cjs +0 -2
  646. package/dist/FloatingPanel-U6sGYiSK.cjs.map +0 -1
  647. package/dist/IconButton-BEGWfcVc.js +0 -68
  648. package/dist/IconButton-BN-bZxEi.cjs +0 -2
  649. package/dist/List-ChXO0Hz-.cjs +0 -2
  650. package/dist/List-ChXO0Hz-.cjs.map +0 -1
  651. package/dist/List-LqbfF6gU.js +0 -26
  652. package/dist/List-LqbfF6gU.js.map +0 -1
  653. package/dist/ListItem-Cn15lJBr.js +0 -74
  654. package/dist/ListItem-Cn15lJBr.js.map +0 -1
  655. package/dist/ListItem-yXXjtepZ.cjs +0 -2
  656. package/dist/ListItem-yXXjtepZ.cjs.map +0 -1
  657. package/dist/Loader-B5YqzEYy.cjs +0 -2
  658. package/dist/Loader-BZIa8hwv.js +0 -29
  659. package/dist/Modal-0V-REVV-.cjs +0 -2
  660. package/dist/Modal-0V-REVV-.cjs.map +0 -1
  661. package/dist/Modal-B7yoFC3o.js +0 -195
  662. package/dist/Modal-B7yoFC3o.js.map +0 -1
  663. package/dist/MultiSelect-C8xuXaoR.js +0 -350
  664. package/dist/MultiSelect-C8xuXaoR.js.map +0 -1
  665. package/dist/MultiSelect-gj9Ymeh2.cjs +0 -2
  666. package/dist/MultiSelect-gj9Ymeh2.cjs.map +0 -1
  667. package/dist/PageNotFound-B8_eIT8p.cjs +0 -2
  668. package/dist/PageNotFound-B8_eIT8p.cjs.map +0 -1
  669. package/dist/PageNotFound-CCFfPHgA.js.map +0 -1
  670. package/dist/Pagination-BdVebW2L.cjs +0 -2
  671. package/dist/Pagination-CmskZjcz.js +0 -139
  672. package/dist/QrCode-Bcj9_Emc.js +0 -70
  673. package/dist/QrCode-Bcj9_Emc.js.map +0 -1
  674. package/dist/QrCode-DfDfGhG-.cjs +0 -2
  675. package/dist/QrCode-DfDfGhG-.cjs.map +0 -1
  676. package/dist/RadioGroup-C8u7eNBS.cjs +0 -2
  677. package/dist/RadioGroup-DbodUJW8.js +0 -141
  678. package/dist/RemoveDialog-CV75B0aN.js +0 -47
  679. package/dist/RemoveDialog-CV75B0aN.js.map +0 -1
  680. package/dist/RemoveDialog-DmOk0ezc.cjs +0 -2
  681. package/dist/RemoveDialog-DmOk0ezc.cjs.map +0 -1
  682. package/dist/RichTextEditor-Bm8FFbcR.js.map +0 -1
  683. package/dist/RichTextEditor-uXddgtlk.cjs +0 -2
  684. package/dist/RichTextEditor-uXddgtlk.cjs.map +0 -1
  685. package/dist/RootLayout-Cf7Rr9Iz.js +0 -515
  686. package/dist/RootLayout-kssj9exn.cjs +0 -2
  687. package/dist/Select-7vEGJCvA.cjs +0 -2
  688. package/dist/Select-7vEGJCvA.cjs.map +0 -1
  689. package/dist/Select-CdX3Ks7y.js +0 -338
  690. package/dist/Select-CdX3Ks7y.js.map +0 -1
  691. package/dist/Sidebar-DcKIEfhy.cjs +0 -2
  692. package/dist/Sidebar-DcKIEfhy.cjs.map +0 -1
  693. package/dist/Sidebar-YH-DoNG9.js.map +0 -1
  694. package/dist/Slider-dxYVXRev.cjs +0 -2
  695. package/dist/Slider-oGXd5e9X.js +0 -184
  696. package/dist/Stepper-B1z_u650.cjs +0 -2
  697. package/dist/Switch-DMPJ0fhB.js +0 -85
  698. package/dist/Switch-DRkZ6kHJ.cjs +0 -2
  699. package/dist/Table-BPit83Pn.cjs +0 -2
  700. package/dist/Table-BPit83Pn.cjs.map +0 -1
  701. package/dist/Table-Drdhfm99.js +0 -1090
  702. package/dist/Table-Drdhfm99.js.map +0 -1
  703. package/dist/Tabs-BiKDy_fv.cjs +0 -2
  704. package/dist/Tabs-ytbBzAxG.js +0 -190
  705. package/dist/TextField.module-QePvGeJ3.js +0 -27
  706. package/dist/TextField.module-QePvGeJ3.js.map +0 -1
  707. package/dist/TextField.module-m-UllwzG.cjs +0 -2
  708. package/dist/TextField.module-m-UllwzG.cjs.map +0 -1
  709. package/dist/Timeline-D3kzt1dy.js +0 -71
  710. package/dist/Timeline-ONU_3gi3.cjs +0 -2
  711. package/dist/Typography-BFatE1_A.cjs +0 -2
  712. package/dist/Typography-BFatE1_A.cjs.map +0 -1
  713. package/dist/Typography-Cta6Rg4L.js +0 -51
  714. package/dist/Typography-Cta6Rg4L.js.map +0 -1
  715. package/dist/UserCard-C1yFvVIc.cjs +0 -2
  716. package/dist/UserCard-C1yFvVIc.cjs.map +0 -1
  717. package/dist/UserCard-J8Bpbh3x.js +0 -74
  718. package/dist/UserCard-J8Bpbh3x.js.map +0 -1
  719. package/dist/messages-DKT0SRM0.cjs +0 -36
  720. package/dist/messages-DKT0SRM0.cjs.map +0 -1
  721. package/dist/messages-ogohLC5P.js.map +0 -1
@@ -1,350 +0,0 @@
1
- import { jsxs as y, jsx as a } from "react/jsx-runtime";
2
- import { forwardRef as Me, useId as Ce, useState as R, useRef as D, useCallback as G, useMemo as Ee, useEffect as q } from "react";
3
- import { clsx as K } from "clsx";
4
- import { u as Be } from "./formContext-B7ln1Miy.js";
5
- import { F as Re } from "./FloatingPanel-BG9Uag__.js";
6
- import { C as qe } from "./Chip-DdKhcstm.js";
7
- import { I as V } from "./Icon-DaTvzLBu.js";
8
- import { L as Ke } from "./List-LqbfF6gU.js";
9
- import { L as Ve } from "./ListItem-Cn15lJBr.js";
10
- import { L as We } from "./Loader-BZIa8hwv.js";
11
- import { T as W } from "./Typography-Cta6Rg4L.js";
12
- import { a as $e } from "./ConfigProvider-DR9YMy9U.js";
13
- const Ae = "_field_16ykc_1", Fe = "_fullWidth_16ykc_7", Oe = "_label_16ykc_12", Pe = "_required_16ykc_21", Se = "_control_16ykc_27", He = "_filled_16ykc_47", je = "_open_16ykc_51", Qe = "_error_16ykc_56", Ue = "_disabled_16ykc_64", ze = "_chips_16ykc_31", Ge = "_value_16ykc_84", Je = "_valueLabel_16ykc_91", Xe = "_placeholder_16ykc_96", Ye = "_clear_16ykc_100", Ze = "_chevron_16ykc_117", er = "_sm_16ykc_127", rr = "_md_16ykc_131", lr = "_lg_16ykc_135", tr = "_helper_16ykc_140", or = "_popover_16ykc_145", ar = "_search_16ykc_152", cr = "_searchIcon_16ykc_161", sr = "_searchInput_16ykc_165", nr = "_listbox_16ykc_180", ir = "_active_16ykc_188", dr = "_noOptions_16ykc_192", ur = "_loading_16ykc_198", l = {
14
- field: Ae,
15
- fullWidth: Fe,
16
- label: Oe,
17
- required: Pe,
18
- control: Se,
19
- filled: He,
20
- open: je,
21
- error: Qe,
22
- disabled: Ue,
23
- chips: ze,
24
- value: Ge,
25
- valueLabel: Je,
26
- placeholder: Xe,
27
- clear: Ye,
28
- chevron: Ze,
29
- sm: er,
30
- md: rr,
31
- lg: lr,
32
- helper: tr,
33
- popover: or,
34
- search: ar,
35
- searchIcon: cr,
36
- searchInput: sr,
37
- listbox: nr,
38
- active: ir,
39
- noOptions: dr,
40
- loading: ur
41
- }, Dr = Me(function({
42
- label: N,
43
- options: L,
44
- size: b = "md",
45
- error: ie,
46
- helperText: de,
47
- required: J = !1,
48
- fullWidth: ue = !0,
49
- disabled: f = !1,
50
- value: $,
51
- defaultValue: fe,
52
- onChange: A,
53
- placeholder: me,
54
- color: pe = "primary",
55
- clearable: _e = !0,
56
- searchable: d = !1,
57
- searchPlaceholder: he,
58
- onSearchChange: k,
59
- loading: ve = !1,
60
- loadingText: ye,
61
- noOptionsText: T,
62
- name: _,
63
- id: be,
64
- className: ke,
65
- style: ge
66
- }, g) {
67
- const Ie = Ce(), I = be ?? Ie, F = `${I}-label`, O = `${I}-listbox`, X = `${I}-helper`, P = (e) => `${I}-opt-${e}`, w = $e(), Y = he ?? w("common.search"), M = Be(), C = !!(M && _), s = C ? M.field(_) : void 0, we = $ !== void 0 ? $ : C ? M.values[_] ?? [] : void 0, Z = $ !== void 0 || C, [xe, De] = R(fe ?? []), n = Z ? we : xe, S = ie ?? (s == null ? void 0 : s.error) ?? !1, H = de ?? (s == null ? void 0 : s.helperText), j = (e) => {
68
- Z || De(e), C && M.setValue(_, e), A == null || A(e);
69
- }, h = D(null), ee = D(null), Q = D({ buffer: "", timer: 0 }), E = D(void 0);
70
- E.current = s ? () => s.onBlur({}) : void 0;
71
- const [t, re] = R(!1), [p, le] = R(""), [m, u] = R(-1), Ne = G(
72
- (e) => {
73
- h.current = e, typeof g == "function" ? g(e) : g && (g.current = e);
74
- },
75
- [g]
76
- ), c = Ee(() => {
77
- if (!d || k || !p.trim()) return L;
78
- const e = p.trim().toLowerCase();
79
- return L.filter((r) => r.label.toLowerCase().includes(e));
80
- }, [d, k, p, L]), v = G(
81
- (e, r) => {
82
- let o = e;
83
- for (; o >= 0 && o < c.length; ) {
84
- if (!c[o].disabled) return o;
85
- o += r;
86
- }
87
- return -1;
88
- },
89
- [c]
90
- ), te = D(null), B = G((e) => {
91
- var r, o;
92
- re(!1), le(""), window.clearTimeout(Q.current.timer), Q.current.buffer = "", (r = E.current) == null || r.call(E), e && ((o = h.current) == null || o.focus());
93
- }, []);
94
- q(() => {
95
- t && (u(v(0, 1)), d && requestAnimationFrame(() => {
96
- var e;
97
- return (e = ee.current) == null ? void 0 : e.focus();
98
- }));
99
- }, [t]), q(() => {
100
- var e, r;
101
- !t || m < 0 || (r = (e = document.getElementById(P(m))) == null ? void 0 : e.scrollIntoView) == null || r.call(e, { block: "nearest" });
102
- }, [t, m]), q(() => {
103
- t && d && u(v(0, 1));
104
- }, [p]), q(() => {
105
- t && u((e) => e < c.length ? e : v(0, 1));
106
- }, [c.length]);
107
- const x = () => {
108
- f || re(!0);
109
- }, U = (e) => {
110
- !e || e.disabled || j(
111
- n.includes(e.value) ? n.filter((r) => r !== e.value) : [...n, e.value]
112
- );
113
- }, oe = (e) => j(n.filter((r) => r !== e)), ae = (e) => {
114
- u((r) => {
115
- const o = r < 0 ? e > 0 ? 0 : c.length - 1 : r + e, i = v(o, e);
116
- return i === -1 ? r : i;
117
- });
118
- }, Le = (e) => {
119
- const r = Q.current;
120
- window.clearTimeout(r.timer), r.buffer += e.toLowerCase(), r.timer = window.setTimeout(() => r.buffer = "", 500);
121
- const o = c.findIndex(
122
- (i) => !i.disabled && i.label.toLowerCase().startsWith(r.buffer)
123
- );
124
- o >= 0 && u(o);
125
- }, ce = (e) => {
126
- if (!f)
127
- switch (e.key) {
128
- case "ArrowDown":
129
- e.preventDefault(), t ? ae(1) : x();
130
- break;
131
- case "ArrowUp":
132
- e.preventDefault(), t ? ae(-1) : x();
133
- break;
134
- case "Enter":
135
- e.preventDefault(), t ? U(c[m]) : x();
136
- break;
137
- case " ":
138
- t ? d || (e.preventDefault(), U(c[m])) : (e.preventDefault(), x());
139
- break;
140
- case "Escape":
141
- t && (e.preventDefault(), e.stopPropagation(), B(!0));
142
- break;
143
- case "Tab":
144
- t && B(!0);
145
- break;
146
- case "Backspace":
147
- t && (!d || p === "") && n.length > 0 && (e.preventDefault(), oe(n[n.length - 1]));
148
- break;
149
- case "Home":
150
- t && (e.preventDefault(), u(v(0, 1)));
151
- break;
152
- case "End":
153
- t && (e.preventDefault(), u(v(c.length - 1, -1)));
154
- break;
155
- default:
156
- !d && t && e.key.length === 1 && !e.metaKey && !e.ctrlKey && !e.altKey && Le(e.key);
157
- }
158
- }, Te = (e) => {
159
- var o, i;
160
- const r = e.relatedTarget;
161
- r && ((o = te.current) != null && o.contains(r) || (i = h.current) != null && i.contains(r)) || s == null || s.onBlur(e);
162
- }, se = t && m >= 0 ? P(m) : void 0, ne = b === "sm" ? 16 : b === "md" ? 14 : 12, z = n.length > 0;
163
- return /* @__PURE__ */ y(
164
- "div",
165
- {
166
- className: K(
167
- l.field,
168
- l[b],
169
- ue && l.fullWidth,
170
- S && l.error,
171
- f && l.disabled,
172
- ke
173
- ),
174
- style: ge,
175
- children: [
176
- N != null && /* @__PURE__ */ y(
177
- "span",
178
- {
179
- id: F,
180
- className: l.label,
181
- onClick: () => {
182
- var e;
183
- return !f && ((e = h.current) == null ? void 0 : e.focus());
184
- },
185
- children: [
186
- /* @__PURE__ */ a(W, { as: "span", variant: "bodySmall", color: "muted", children: N }),
187
- J && /* @__PURE__ */ a("span", { className: l.required, "aria-hidden": "true", children: "*" })
188
- ]
189
- }
190
- ),
191
- /* @__PURE__ */ y(
192
- "div",
193
- {
194
- ref: Ne,
195
- id: I,
196
- ..._ ? { name: _ } : {},
197
- role: "combobox",
198
- tabIndex: f ? -1 : 0,
199
- "aria-haspopup": "listbox",
200
- "aria-expanded": t,
201
- "aria-controls": t ? O : void 0,
202
- "aria-activedescendant": d ? void 0 : se,
203
- "aria-labelledby": N != null ? F : void 0,
204
- "aria-disabled": f || void 0,
205
- "aria-required": J || void 0,
206
- "aria-invalid": S || void 0,
207
- "aria-describedby": H != null ? X : void 0,
208
- className: K(l.control, t && l.open, z && l.filled),
209
- onClick: () => t ? B(!1) : x(),
210
- onKeyDown: ce,
211
- onBlur: Te,
212
- children: [
213
- z ? /* @__PURE__ */ a("span", { className: l.chips, children: n.map((e) => {
214
- const r = L.find((o) => o.value === e);
215
- return /* @__PURE__ */ a(
216
- qe,
217
- {
218
- size: b,
219
- color: pe,
220
- disabled: f,
221
- onDelete: () => oe(e),
222
- deleteLabel: `Remove ${(r == null ? void 0 : r.label) ?? e}`,
223
- deleteTabIndex: -1,
224
- children: (r == null ? void 0 : r.label) ?? e
225
- },
226
- e
227
- );
228
- }) }) : /* @__PURE__ */ a("span", { className: K(l.value, l.placeholder), children: /* @__PURE__ */ a("span", { className: l.valueLabel, children: me ?? w("select.placeholder") }) }),
229
- _e && z && !f && /* @__PURE__ */ a(
230
- "button",
231
- {
232
- type: "button",
233
- className: l.clear,
234
- "aria-label": w("multiSelect.clearAll"),
235
- tabIndex: -1,
236
- onMouseDown: (e) => e.preventDefault(),
237
- onClick: (e) => {
238
- var r;
239
- e.stopPropagation(), j([]), (r = h.current) == null || r.focus();
240
- },
241
- children: /* @__PURE__ */ a(V, { name: "CloseCircle", size: "sm" })
242
- }
243
- ),
244
- /* @__PURE__ */ a(
245
- V,
246
- {
247
- name: "ArrowDown4",
248
- className: l.chevron,
249
- style: { width: ne, height: ne },
250
- "aria-hidden": "true"
251
- }
252
- )
253
- ]
254
- }
255
- ),
256
- /* @__PURE__ */ y(
257
- Re,
258
- {
259
- ref: te,
260
- open: t,
261
- triggerRef: h,
262
- onClose: B,
263
- matchTriggerWidth: !0,
264
- className: l.popover,
265
- children: [
266
- d && /* @__PURE__ */ y("div", { className: l.search, children: [
267
- /* @__PURE__ */ a(V, { name: "SearchNormal", size: "sm", className: l.searchIcon, "aria-hidden": "true" }),
268
- /* @__PURE__ */ a(
269
- "input",
270
- {
271
- ref: ee,
272
- className: l.searchInput,
273
- type: "text",
274
- role: "combobox",
275
- "aria-expanded": "true",
276
- "aria-controls": O,
277
- "aria-activedescendant": se,
278
- "aria-autocomplete": "list",
279
- "aria-label": Y,
280
- placeholder: Y,
281
- value: p,
282
- spellCheck: !1,
283
- onChange: (e) => {
284
- le(e.target.value), k == null || k(e.target.value);
285
- },
286
- onKeyDown: ce
287
- }
288
- )
289
- ] }),
290
- /* @__PURE__ */ a(
291
- Ke,
292
- {
293
- role: "listbox",
294
- id: O,
295
- "aria-labelledby": N != null ? F : void 0,
296
- "aria-multiselectable": "true",
297
- size: b,
298
- className: l.listbox,
299
- onMouseLeave: () => u(-1),
300
- children: ve ? /* @__PURE__ */ y("div", { className: l.loading, children: [
301
- /* @__PURE__ */ a(We, { size: "sm" }),
302
- /* @__PURE__ */ a(W, { as: "span", variant: "bodySmall", color: "muted", children: ye ?? w("common.loading") })
303
- ] }) : c.length === 0 ? /* @__PURE__ */ a("div", { className: l.noOptions, children: /* @__PURE__ */ a(W, { as: "span", variant: "bodySmall", color: "muted", children: T == null ? w("select.noOptions") : typeof T == "function" ? T(p) : T }) }) : c.map((e, r) => {
304
- const o = n.includes(e.value);
305
- return /* @__PURE__ */ a(
306
- Ve,
307
- {
308
- id: P(r),
309
- role: "option",
310
- tabIndex: -1,
311
- "aria-selected": o,
312
- "aria-current": void 0,
313
- clickable: !0,
314
- selected: o,
315
- disabled: e.disabled,
316
- icon: e.icon,
317
- className: K(r === m && l.active),
318
- trailing: o ? /* @__PURE__ */ a(V, { name: "TickCircle", size: "sm" }) : void 0,
319
- onMouseEnter: () => !e.disabled && u(r),
320
- onMouseDown: (i) => i.preventDefault(),
321
- onClick: () => U(e),
322
- children: e.label
323
- },
324
- e.value
325
- );
326
- })
327
- }
328
- )
329
- ]
330
- }
331
- ),
332
- H != null && /* @__PURE__ */ a(
333
- W,
334
- {
335
- as: "span",
336
- id: X,
337
- variant: "bodySmall",
338
- color: S ? "error" : "muted",
339
- className: l.helper,
340
- children: H
341
- }
342
- )
343
- ]
344
- }
345
- );
346
- });
347
- export {
348
- Dr as M
349
- };
350
- //# sourceMappingURL=MultiSelect-C8xuXaoR.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MultiSelect-C8xuXaoR.js","sources":["../src/components/MultiSelect/MultiSelect.tsx"],"sourcesContent":["import {\n forwardRef,\n useCallback,\n useEffect,\n useId,\n useMemo,\n useRef,\n useState,\n type CSSProperties,\n type FocusEvent,\n type KeyboardEvent as ReactKeyboardEvent,\n type ReactNode,\n} from 'react'\nimport { clsx } from 'clsx'\nimport { useFormContext } from '../../form/formContext'\nimport { FloatingPanel } from '../FloatingPanel/FloatingPanel'\nimport { useT, type ThemeColor } from '../../theme'\nimport { Chip } from '../Chip'\nimport { Icon } from '../Icon'\nimport { List, ListItem } from '../List'\nimport { Loader } from '../Loader'\nimport { Typography } from '../Typography'\nimport type { SelectOption, SelectSize } from '../Select'\nimport styles from './MultiSelect.module.css'\n\nexport interface MultiSelectProps {\n /** Label rendered above the field. */\n label?: ReactNode\n /** The selectable options. */\n options: SelectOption[]\n /** Preset size — control height, font, chips and option density. */\n size?: SelectSize\n /** Marks the field invalid: red border/ring + the `helperText` in the error color. */\n error?: boolean\n /** Helper / validation text under the field. Adopts the error color while `error`. */\n helperText?: ReactNode\n /** Adds a red asterisk after the label. */\n required?: boolean\n /** Stretches the field to fill its container width. Defaults to `true`. */\n fullWidth?: boolean\n /** Disables the field. */\n disabled?: boolean\n /** Controlled value — the chosen options' `value`s. */\n value?: string[]\n /** Initial value for uncontrolled use. */\n defaultValue?: string[]\n /** Fires with the next array of selected values. */\n onChange?: (value: string[]) => void\n /** Text shown in the trigger when nothing is selected. Defaults to `\"Select…\"`. */\n placeholder?: string\n /** Theme palette token tinting the selected chips. Defaults to `primary`. */\n color?: ThemeColor\n /** Shows a clear (×) button in the trigger when anything is selected. Defaults to `true`. */\n clearable?: boolean\n /** Adds a search box inside the popover that filters options by label. */\n searchable?: boolean\n /** Placeholder for the search box. Defaults to `\"Search…\"`. */\n searchPlaceholder?: string\n /**\n * Fires with the search query as the user types. **Providing this switches off the built-in\n * local filtering** — you own `options` (e.g. fetch them from a server for the current query).\n */\n onSearchChange?: (query: string) => void\n /** Shows a loading indicator in the popover (e.g. while fetching server-side search results). */\n loading?: boolean\n /** Text shown next to the loader while `loading`. Defaults to `\"Loading…\"`. */\n loadingText?: ReactNode\n /**\n * Shown in the popover when no option matches. Defaults to `\"No options\"`. Pass a function\n * `(query) => node` to vary the message by the current search text — e.g. a \"Type to search\" hint\n * while it's empty vs a \"No results\" message after typing.\n */\n noOptionsText?: ReactNode | ((query: string) => ReactNode)\n /** Form field name — auto-binds to a surrounding `<Form>` (value is a `string[]`). */\n name?: string\n /** Id for the trigger (label association). */\n id?: string\n className?: string\n style?: CSSProperties\n}\n\n/**\n * A labeled multi-select — the `string[]` sibling of `Select`. The trigger shows the chosen options\n * as deletable `Chip`s (wrapping, growing like `TagsField`) or a placeholder; clicking it opens the\n * same `Dropdown`-style popover (portaled, flips, scroll-locked, trigger-width, animated — shared via\n * `useFloatingPanel`). Options render as `ListItem`s in a `role=\"listbox\"` `aria-multiselectable`\n * list; selecting **toggles** an option and keeps the popover open, the chosen ones showing a tick.\n * Full keyboard support (Arrow/Home/End, Enter/Space to toggle, Escape to close, type-ahead) and\n * ARIA. Optionally `searchable` + `clearable`; pass `onSearchChange` to drive the search\n * **server-side** (you own `options` — local filtering is skipped) with a `loading` indicator.\n * Controlled (`value` + `onChange`) or uncontrolled\n * (`defaultValue`), and binds to a surrounding `<Form>` by `name` (value = `string[]`; validate with\n * e.g. `z.array(z.string()).min(1, 'Pick at least one')`). Token-only styling.\n */\nexport const MultiSelect = forwardRef<HTMLDivElement, MultiSelectProps>(function MultiSelect(\n {\n label,\n options,\n size = 'md',\n error,\n helperText,\n required = false,\n fullWidth = true,\n disabled = false,\n value,\n defaultValue,\n onChange,\n placeholder,\n color = 'primary',\n clearable = true,\n searchable = false,\n searchPlaceholder,\n onSearchChange,\n loading = false,\n loadingText,\n noOptionsText,\n name,\n id: idProp,\n className,\n style,\n },\n ref,\n) {\n const reactId = useId()\n const id = idProp ?? reactId\n const labelId = `${id}-label`\n const listboxId = `${id}-listbox`\n const helperId = `${id}-helper`\n const optionId = (index: number) => `${id}-opt-${index}`\n\n // ── value (controlled / form-bound / uncontrolled) — always a string[] ─────────────────────────\n // Read the RAW form value (field().value String-coerces, which would flatten the array).\n const t = useT()\n const searchPh = searchPlaceholder ?? t('common.search')\n const form = useFormContext()\n const isFormBound = Boolean(form && name)\n const bound = isFormBound ? form!.field(name!) : undefined\n const externalValue =\n value !== undefined\n ? value\n : isFormBound\n ? ((form!.values[name!] as string[] | undefined) ?? [])\n : undefined\n const isControlled = value !== undefined || isFormBound\n const [internal, setInternal] = useState<string[]>(defaultValue ?? [])\n const selectedValues = isControlled ? externalValue! : internal\n\n const resolvedError = error ?? bound?.error ?? false\n const resolvedHelperText = helperText ?? bound?.helperText\n\n const commit = (next: string[]) => {\n if (!isControlled) setInternal(next)\n if (isFormBound) form!.setValue(name!, next)\n onChange?.(next)\n }\n\n // ── popover open state ─────────────────────────────────────────────────────────────────────────\n const triggerRef = useRef<HTMLDivElement | null>(null)\n const searchInputRef = useRef<HTMLInputElement | null>(null)\n const typeahead = useRef({ buffer: '', timer: 0 })\n const fieldBlur = useRef<(() => void) | undefined>(undefined)\n fieldBlur.current = bound ? () => bound.onBlur({} as FocusEvent<HTMLInputElement>) : undefined\n const [open, setOpen] = useState(false)\n const [searchQuery, setSearchQuery] = useState('')\n const [highlightedIndex, setHighlightedIndex] = useState(-1)\n\n const setTriggerRef = useCallback(\n (node: HTMLDivElement | null) => {\n triggerRef.current = node\n if (typeof ref === 'function') ref(node)\n else if (ref) (ref as { current: HTMLDivElement | null }).current = node\n },\n [ref],\n )\n\n // when `onSearchChange` is set the consumer owns `options` (server-side search) — skip local filter\n const filteredOptions = useMemo(() => {\n if (!searchable || onSearchChange || !searchQuery.trim()) return options\n const q = searchQuery.trim().toLowerCase()\n return options.filter((o) => o.label.toLowerCase().includes(q))\n }, [searchable, onSearchChange, searchQuery, options])\n\n const findEnabled = useCallback(\n (start: number, delta: number) => {\n let i = start\n while (i >= 0 && i < filteredOptions.length) {\n if (!filteredOptions[i].disabled) return i\n i += delta\n }\n return -1\n },\n [filteredOptions],\n )\n\n // the floating panel forwards its node here, for the focus-leaves-the-widget check on blur\n const popoverRef = useRef<HTMLDivElement | null>(null)\n\n const closeMenu = useCallback((refocus: boolean) => {\n setOpen(false)\n setSearchQuery('')\n window.clearTimeout(typeahead.current.timer)\n typeahead.current.buffer = ''\n fieldBlur.current?.()\n if (refocus) triggerRef.current?.focus()\n }, [])\n\n // on open: highlight the first enabled option, focus the search box if searchable\n useEffect(() => {\n if (!open) return\n setHighlightedIndex(findEnabled(0, 1))\n if (searchable) requestAnimationFrame(() => searchInputRef.current?.focus())\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [open])\n\n useEffect(() => {\n if (!open || highlightedIndex < 0) return\n document.getElementById(optionId(highlightedIndex))?.scrollIntoView?.({ block: 'nearest' })\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [open, highlightedIndex])\n\n // search filter → re-anchor to the first match\n useEffect(() => {\n if (open && searchable) setHighlightedIndex(findEnabled(0, 1))\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [searchQuery])\n\n // keep the highlight in range if the option count changes while open\n useEffect(() => {\n if (open) setHighlightedIndex((i) => (i < filteredOptions.length ? i : findEnabled(0, 1)))\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [filteredOptions.length])\n\n const openMenu = () => {\n if (!disabled) setOpen(true)\n }\n const toggleOption = (opt: SelectOption | undefined) => {\n if (!opt || opt.disabled) return\n commit(\n selectedValues.includes(opt.value)\n ? selectedValues.filter((v) => v !== opt.value)\n : [...selectedValues, opt.value],\n )\n // multi-select stays open\n }\n const removeValue = (v: string) => commit(selectedValues.filter((x) => x !== v))\n const moveHighlight = (delta: number) => {\n setHighlightedIndex((cur) => {\n const start = cur < 0 ? (delta > 0 ? 0 : filteredOptions.length - 1) : cur + delta\n const found = findEnabled(start, delta)\n return found === -1 ? cur : found\n })\n }\n\n const handleTypeahead = (char: string) => {\n const t = typeahead.current\n window.clearTimeout(t.timer)\n t.buffer += char.toLowerCase()\n t.timer = window.setTimeout(() => (t.buffer = ''), 500)\n const match = filteredOptions.findIndex(\n (o) => !o.disabled && o.label.toLowerCase().startsWith(t.buffer),\n )\n if (match >= 0) setHighlightedIndex(match)\n }\n\n const handleKeyDown = (event: ReactKeyboardEvent) => {\n if (disabled) return\n switch (event.key) {\n case 'ArrowDown':\n event.preventDefault()\n open ? moveHighlight(1) : openMenu()\n break\n case 'ArrowUp':\n event.preventDefault()\n open ? moveHighlight(-1) : openMenu()\n break\n case 'Enter':\n event.preventDefault()\n if (!open) openMenu()\n else toggleOption(filteredOptions[highlightedIndex])\n break\n case ' ':\n // Space opens a closed menu (any mode); toggles only when open & not searchable\n if (!open) {\n event.preventDefault()\n openMenu()\n } else if (!searchable) {\n event.preventDefault()\n toggleOption(filteredOptions[highlightedIndex])\n }\n break\n case 'Escape':\n if (open) {\n event.preventDefault()\n event.stopPropagation() // don't let FloatingPanel's own Escape also fire closeMenu/onBlur\n closeMenu(true)\n }\n break\n case 'Tab':\n // refocus the trigger so Tab continues from the field's visual location, not the portaled\n // search input's DOM position (end of <body>); don't preventDefault — let Tab move on\n if (open) closeMenu(true)\n break\n case 'Backspace':\n // remove the last chip when the (search) input is empty or there's no search box\n if (open && (!searchable || searchQuery === '') && selectedValues.length > 0) {\n event.preventDefault()\n removeValue(selectedValues[selectedValues.length - 1])\n }\n break\n case 'Home':\n if (open) {\n event.preventDefault()\n setHighlightedIndex(findEnabled(0, 1))\n }\n break\n case 'End':\n if (open) {\n event.preventDefault()\n setHighlightedIndex(findEnabled(filteredOptions.length - 1, -1))\n }\n break\n default:\n if (\n !searchable &&\n open &&\n event.key.length === 1 &&\n !event.metaKey &&\n !event.ctrlKey &&\n !event.altKey\n ) {\n handleTypeahead(event.key)\n }\n }\n }\n\n const handleTriggerBlur = (event: FocusEvent<HTMLDivElement>) => {\n const next = event.relatedTarget as Node | null\n if (next && (popoverRef.current?.contains(next) || triggerRef.current?.contains(next))) return\n bound?.onBlur(event as unknown as FocusEvent<HTMLInputElement>)\n }\n\n const activeId = open && highlightedIndex >= 0 ? optionId(highlightedIndex) : undefined\n // chevron size per field size: sm 16 · md 14 · lg 12\n const chevronPx = size === 'sm' ? 16 : size === 'md' ? 14 : 12\n const hasValue = selectedValues.length > 0\n\n return (\n <div\n className={clsx(\n styles.field,\n styles[size],\n fullWidth && styles.fullWidth,\n resolvedError && styles.error,\n disabled && styles.disabled,\n className,\n )}\n style={style}\n >\n {label != null && (\n <span\n id={labelId}\n className={styles.label}\n onClick={() => !disabled && triggerRef.current?.focus()}\n >\n <Typography as=\"span\" variant=\"bodySmall\" color=\"muted\">\n {label}\n </Typography>\n {required && (\n <span className={styles.required} aria-hidden=\"true\">\n *\n </span>\n )}\n </span>\n )}\n\n <div\n ref={setTriggerRef}\n id={id}\n {...(name ? { name } : {})}\n role=\"combobox\"\n tabIndex={disabled ? -1 : 0}\n aria-haspopup=\"listbox\"\n aria-expanded={open}\n aria-controls={open ? listboxId : undefined}\n aria-activedescendant={searchable ? undefined : activeId}\n aria-labelledby={label != null ? labelId : undefined}\n aria-disabled={disabled || undefined}\n aria-required={required || undefined}\n aria-invalid={resolvedError || undefined}\n aria-describedby={resolvedHelperText != null ? helperId : undefined}\n className={clsx(styles.control, open && styles.open, hasValue && styles.filled)}\n onClick={() => (open ? closeMenu(false) : openMenu())}\n onKeyDown={handleKeyDown}\n onBlur={handleTriggerBlur}\n >\n {hasValue ? (\n <span className={styles.chips}>\n {selectedValues.map((v) => {\n const opt = options.find((o) => o.value === v)\n return (\n <Chip\n key={v}\n size={size}\n color={color}\n disabled={disabled}\n onDelete={() => removeValue(v)}\n deleteLabel={`Remove ${opt?.label ?? v}`}\n // the combobox owns keyboard focus — keep chip deletes out of the tab order\n deleteTabIndex={-1}\n >\n {opt?.label ?? v}\n </Chip>\n )\n })}\n </span>\n ) : (\n <span className={clsx(styles.value, styles.placeholder)}>\n <span className={styles.valueLabel}>{placeholder ?? t('select.placeholder')}</span>\n </span>\n )}\n\n {clearable && hasValue && !disabled && (\n <button\n type=\"button\"\n className={styles.clear}\n aria-label={t('multiSelect.clearAll')}\n tabIndex={-1}\n onMouseDown={(e) => e.preventDefault()}\n onClick={(e) => {\n e.stopPropagation()\n commit([])\n triggerRef.current?.focus()\n }}\n >\n <Icon name=\"CloseCircle\" size=\"sm\" />\n </button>\n )}\n\n <Icon\n name=\"ArrowDown4\"\n className={styles.chevron}\n style={{ width: chevronPx, height: chevronPx }}\n aria-hidden=\"true\"\n />\n </div>\n\n <FloatingPanel\n ref={popoverRef}\n open={open}\n triggerRef={triggerRef}\n onClose={closeMenu}\n matchTriggerWidth\n className={styles.popover}\n >\n {searchable && (\n <div className={styles.search}>\n <Icon name=\"SearchNormal\" size=\"sm\" className={styles.searchIcon} aria-hidden=\"true\" />\n <input\n ref={searchInputRef}\n className={styles.searchInput}\n type=\"text\"\n role=\"combobox\"\n aria-expanded=\"true\"\n aria-controls={listboxId}\n aria-activedescendant={activeId}\n aria-autocomplete=\"list\"\n aria-label={searchPh}\n placeholder={searchPh}\n value={searchQuery}\n spellCheck={false}\n onChange={(e) => {\n setSearchQuery(e.target.value)\n onSearchChange?.(e.target.value)\n }}\n onKeyDown={handleKeyDown}\n />\n </div>\n )}\n\n <List\n role=\"listbox\"\n id={listboxId}\n aria-labelledby={label != null ? labelId : undefined}\n aria-multiselectable=\"true\"\n size={size}\n className={styles.listbox}\n // clear the mouse highlight when the pointer leaves the list (no lingering hover)\n onMouseLeave={() => setHighlightedIndex(-1)}\n >\n {loading ? (\n <div className={styles.loading}>\n <Loader size=\"sm\" />\n <Typography as=\"span\" variant=\"bodySmall\" color=\"muted\">\n {loadingText ?? t('common.loading')}\n </Typography>\n </div>\n ) : filteredOptions.length === 0 ? (\n <div className={styles.noOptions}>\n <Typography as=\"span\" variant=\"bodySmall\" color=\"muted\">\n {noOptionsText == null\n ? t('select.noOptions')\n : typeof noOptionsText === 'function'\n ? noOptionsText(searchQuery)\n : noOptionsText}\n </Typography>\n </div>\n ) : (\n filteredOptions.map((opt, index) => {\n const isSelected = selectedValues.includes(opt.value)\n return (\n <ListItem\n key={opt.value}\n id={optionId(index)}\n role=\"option\"\n tabIndex={-1}\n aria-selected={isSelected}\n aria-current={undefined}\n clickable\n selected={isSelected}\n disabled={opt.disabled}\n icon={opt.icon}\n className={clsx(index === highlightedIndex && styles.active)}\n trailing={isSelected ? <Icon name=\"TickCircle\" size=\"sm\" /> : undefined}\n onMouseEnter={() => !opt.disabled && setHighlightedIndex(index)}\n // keep focus on the search input (menu stays open on toggle) so typing keeps working\n onMouseDown={(e) => e.preventDefault()}\n onClick={() => toggleOption(opt)}\n >\n {opt.label}\n </ListItem>\n )\n })\n )}\n </List>\n </FloatingPanel>\n\n {resolvedHelperText != null && (\n <Typography\n as=\"span\"\n id={helperId}\n variant=\"bodySmall\"\n color={resolvedError ? 'error' : 'muted'}\n className={styles.helper}\n >\n {resolvedHelperText}\n </Typography>\n )}\n </div>\n )\n})\n"],"names":["MultiSelect","forwardRef","label","options","size","error","helperText","required","fullWidth","disabled","value","defaultValue","onChange","placeholder","color","clearable","searchable","searchPlaceholder","onSearchChange","loading","loadingText","noOptionsText","name","idProp","className","style","ref","reactId","useId","id","labelId","listboxId","helperId","optionId","index","t","useT","searchPh","form","useFormContext","isFormBound","bound","externalValue","isControlled","internal","setInternal","useState","selectedValues","resolvedError","resolvedHelperText","commit","next","triggerRef","useRef","searchInputRef","typeahead","fieldBlur","open","setOpen","searchQuery","setSearchQuery","highlightedIndex","setHighlightedIndex","setTriggerRef","useCallback","node","filteredOptions","useMemo","q","o","findEnabled","start","delta","i","popoverRef","closeMenu","refocus","_a","_b","useEffect","openMenu","toggleOption","opt","v","removeValue","x","moveHighlight","cur","found","handleTypeahead","char","match","handleKeyDown","event","handleTriggerBlur","activeId","chevronPx","hasValue","jsxs","clsx","styles","jsx","Typography","Chip","Icon","FloatingPanel","List","Loader","isSelected","ListItem","e"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- "use strict";const t=require("react/jsx-runtime"),o=require("react"),R=require("clsx"),we=require("./formContext-bTWrqdEV.cjs"),De=require("./FloatingPanel-U6sGYiSK.cjs"),Ne=require("./Chip-gUH_7nQc.cjs"),E=require("./Icon-BVULqOJD.cjs"),qe=require("./List-ChXO0Hz-.cjs"),Le=require("./ListItem-yXXjtepZ.cjs"),Te=require("./Loader-B5YqzEYy.cjs"),M=require("./Typography-BFatE1_A.cjs"),Ce=require("./ConfigProvider-Bszl3Wr3.cjs"),Re="_field_16ykc_1",Ee="_fullWidth_16ykc_7",Me="_label_16ykc_12",Se="_required_16ykc_21",Be="_control_16ykc_27",Pe="_filled_16ykc_47",Ke="_open_16ykc_51",Ve="_error_16ykc_56",We="_disabled_16ykc_64",$e="_chips_16ykc_31",Ae="_value_16ykc_84",Fe="_valueLabel_16ykc_91",Oe="_placeholder_16ykc_96",He="_clear_16ykc_100",Qe="_chevron_16ykc_117",Ue="_sm_16ykc_127",ze="_md_16ykc_131",Ge="_lg_16ykc_135",Je="_helper_16ykc_140",Xe="_popover_16ykc_145",Ye="_search_16ykc_152",Ze="_searchIcon_16ykc_161",es="_searchInput_16ykc_165",ss="_listbox_16ykc_180",ts="_active_16ykc_188",rs="_noOptions_16ykc_192",ls="_loading_16ykc_198",r={field:Re,fullWidth:Ee,label:Me,required:Se,control:Be,filled:Pe,open:Ke,error:Ve,disabled:We,chips:$e,value:Ae,valueLabel:Fe,placeholder:Oe,clear:He,chevron:Qe,sm:Ue,md:ze,lg:Ge,helper:Je,popover:Xe,search:Ye,searchIcon:Ze,searchInput:es,listbox:ss,active:ts,noOptions:rs,loading:ls},cs=o.forwardRef(function({label:w,options:D,size:b="md",error:ce,helperText:oe,required:Q=!1,fullWidth:ae=!0,disabled:p=!1,value:S,defaultValue:ne,onChange:B,placeholder:ie,color:ue="primary",clearable:de=!0,searchable:d=!1,searchPlaceholder:fe,onSearchChange:k,loading:pe=!1,loadingText:he,noOptionsText:N,name:_,id:me,className:_e,style:ye},x){const ve=o.useId(),g=me??ve,P=`${g}-label`,K=`${g}-listbox`,U=`${g}-helper`,V=e=>`${g}-opt-${e}`,I=Ce.useT(),z=fe??I("common.search"),q=we.useFormContext(),L=!!(q&&_),n=L?q.field(_):void 0,be=S!==void 0?S:L?q.values[_]??[]:void 0,G=S!==void 0||L,[ke,xe]=o.useState(ne??[]),i=G?be:ke,W=ce??(n==null?void 0:n.error)??!1,$=oe??(n==null?void 0:n.helperText),A=e=>{G||xe(e),L&&q.setValue(_,e),B==null||B(e)},y=o.useRef(null),J=o.useRef(null),F=o.useRef({buffer:"",timer:0}),T=o.useRef(void 0);T.current=n?()=>n.onBlur({}):void 0;const[l,X]=o.useState(!1),[m,Y]=o.useState(""),[h,f]=o.useState(-1),ge=o.useCallback(e=>{y.current=e,typeof x=="function"?x(e):x&&(x.current=e)},[x]),a=o.useMemo(()=>{if(!d||k||!m.trim())return D;const e=m.trim().toLowerCase();return D.filter(s=>s.label.toLowerCase().includes(e))},[d,k,m,D]),v=o.useCallback((e,s)=>{let c=e;for(;c>=0&&c<a.length;){if(!a[c].disabled)return c;c+=s}return-1},[a]),Z=o.useRef(null),C=o.useCallback(e=>{var s,c;X(!1),Y(""),window.clearTimeout(F.current.timer),F.current.buffer="",(s=T.current)==null||s.call(T),e&&((c=y.current)==null||c.focus())},[]);o.useEffect(()=>{l&&(f(v(0,1)),d&&requestAnimationFrame(()=>{var e;return(e=J.current)==null?void 0:e.focus()}))},[l]),o.useEffect(()=>{var e,s;!l||h<0||(s=(e=document.getElementById(V(h)))==null?void 0:e.scrollIntoView)==null||s.call(e,{block:"nearest"})},[l,h]),o.useEffect(()=>{l&&d&&f(v(0,1))},[m]),o.useEffect(()=>{l&&f(e=>e<a.length?e:v(0,1))},[a.length]);const j=()=>{p||X(!0)},O=e=>{!e||e.disabled||A(i.includes(e.value)?i.filter(s=>s!==e.value):[...i,e.value])},ee=e=>A(i.filter(s=>s!==e)),se=e=>{f(s=>{const c=s<0?e>0?0:a.length-1:s+e,u=v(c,e);return u===-1?s:u})},Ie=e=>{const s=F.current;window.clearTimeout(s.timer),s.buffer+=e.toLowerCase(),s.timer=window.setTimeout(()=>s.buffer="",500);const c=a.findIndex(u=>!u.disabled&&u.label.toLowerCase().startsWith(s.buffer));c>=0&&f(c)},te=e=>{if(!p)switch(e.key){case"ArrowDown":e.preventDefault(),l?se(1):j();break;case"ArrowUp":e.preventDefault(),l?se(-1):j();break;case"Enter":e.preventDefault(),l?O(a[h]):j();break;case" ":l?d||(e.preventDefault(),O(a[h])):(e.preventDefault(),j());break;case"Escape":l&&(e.preventDefault(),e.stopPropagation(),C(!0));break;case"Tab":l&&C(!0);break;case"Backspace":l&&(!d||m==="")&&i.length>0&&(e.preventDefault(),ee(i[i.length-1]));break;case"Home":l&&(e.preventDefault(),f(v(0,1)));break;case"End":l&&(e.preventDefault(),f(v(a.length-1,-1)));break;default:!d&&l&&e.key.length===1&&!e.metaKey&&!e.ctrlKey&&!e.altKey&&Ie(e.key)}},je=e=>{var c,u;const s=e.relatedTarget;s&&((c=Z.current)!=null&&c.contains(s)||(u=y.current)!=null&&u.contains(s))||n==null||n.onBlur(e)},re=l&&h>=0?V(h):void 0,le=b==="sm"?16:b==="md"?14:12,H=i.length>0;return t.jsxs("div",{className:R.clsx(r.field,r[b],ae&&r.fullWidth,W&&r.error,p&&r.disabled,_e),style:ye,children:[w!=null&&t.jsxs("span",{id:P,className:r.label,onClick:()=>{var e;return!p&&((e=y.current)==null?void 0:e.focus())},children:[t.jsx(M.Typography,{as:"span",variant:"bodySmall",color:"muted",children:w}),Q&&t.jsx("span",{className:r.required,"aria-hidden":"true",children:"*"})]}),t.jsxs("div",{ref:ge,id:g,..._?{name:_}:{},role:"combobox",tabIndex:p?-1:0,"aria-haspopup":"listbox","aria-expanded":l,"aria-controls":l?K:void 0,"aria-activedescendant":d?void 0:re,"aria-labelledby":w!=null?P:void 0,"aria-disabled":p||void 0,"aria-required":Q||void 0,"aria-invalid":W||void 0,"aria-describedby":$!=null?U:void 0,className:R.clsx(r.control,l&&r.open,H&&r.filled),onClick:()=>l?C(!1):j(),onKeyDown:te,onBlur:je,children:[H?t.jsx("span",{className:r.chips,children:i.map(e=>{const s=D.find(c=>c.value===e);return t.jsx(Ne.Chip,{size:b,color:ue,disabled:p,onDelete:()=>ee(e),deleteLabel:`Remove ${(s==null?void 0:s.label)??e}`,deleteTabIndex:-1,children:(s==null?void 0:s.label)??e},e)})}):t.jsx("span",{className:R.clsx(r.value,r.placeholder),children:t.jsx("span",{className:r.valueLabel,children:ie??I("select.placeholder")})}),de&&H&&!p&&t.jsx("button",{type:"button",className:r.clear,"aria-label":I("multiSelect.clearAll"),tabIndex:-1,onMouseDown:e=>e.preventDefault(),onClick:e=>{var s;e.stopPropagation(),A([]),(s=y.current)==null||s.focus()},children:t.jsx(E.Icon,{name:"CloseCircle",size:"sm"})}),t.jsx(E.Icon,{name:"ArrowDown4",className:r.chevron,style:{width:le,height:le},"aria-hidden":"true"})]}),t.jsxs(De.FloatingPanel,{ref:Z,open:l,triggerRef:y,onClose:C,matchTriggerWidth:!0,className:r.popover,children:[d&&t.jsxs("div",{className:r.search,children:[t.jsx(E.Icon,{name:"SearchNormal",size:"sm",className:r.searchIcon,"aria-hidden":"true"}),t.jsx("input",{ref:J,className:r.searchInput,type:"text",role:"combobox","aria-expanded":"true","aria-controls":K,"aria-activedescendant":re,"aria-autocomplete":"list","aria-label":z,placeholder:z,value:m,spellCheck:!1,onChange:e=>{Y(e.target.value),k==null||k(e.target.value)},onKeyDown:te})]}),t.jsx(qe.List,{role:"listbox",id:K,"aria-labelledby":w!=null?P:void 0,"aria-multiselectable":"true",size:b,className:r.listbox,onMouseLeave:()=>f(-1),children:pe?t.jsxs("div",{className:r.loading,children:[t.jsx(Te.Loader,{size:"sm"}),t.jsx(M.Typography,{as:"span",variant:"bodySmall",color:"muted",children:he??I("common.loading")})]}):a.length===0?t.jsx("div",{className:r.noOptions,children:t.jsx(M.Typography,{as:"span",variant:"bodySmall",color:"muted",children:N==null?I("select.noOptions"):typeof N=="function"?N(m):N})}):a.map((e,s)=>{const c=i.includes(e.value);return t.jsx(Le.ListItem,{id:V(s),role:"option",tabIndex:-1,"aria-selected":c,"aria-current":void 0,clickable:!0,selected:c,disabled:e.disabled,icon:e.icon,className:R.clsx(s===h&&r.active),trailing:c?t.jsx(E.Icon,{name:"TickCircle",size:"sm"}):void 0,onMouseEnter:()=>!e.disabled&&f(s),onMouseDown:u=>u.preventDefault(),onClick:()=>O(e),children:e.label},e.value)})})]}),$!=null&&t.jsx(M.Typography,{as:"span",id:U,variant:"bodySmall",color:W?"error":"muted",className:r.helper,children:$})]})});exports.MultiSelect=cs;
2
- //# sourceMappingURL=MultiSelect-gj9Ymeh2.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MultiSelect-gj9Ymeh2.cjs","sources":["../src/components/MultiSelect/MultiSelect.tsx"],"sourcesContent":["import {\n forwardRef,\n useCallback,\n useEffect,\n useId,\n useMemo,\n useRef,\n useState,\n type CSSProperties,\n type FocusEvent,\n type KeyboardEvent as ReactKeyboardEvent,\n type ReactNode,\n} from 'react'\nimport { clsx } from 'clsx'\nimport { useFormContext } from '../../form/formContext'\nimport { FloatingPanel } from '../FloatingPanel/FloatingPanel'\nimport { useT, type ThemeColor } from '../../theme'\nimport { Chip } from '../Chip'\nimport { Icon } from '../Icon'\nimport { List, ListItem } from '../List'\nimport { Loader } from '../Loader'\nimport { Typography } from '../Typography'\nimport type { SelectOption, SelectSize } from '../Select'\nimport styles from './MultiSelect.module.css'\n\nexport interface MultiSelectProps {\n /** Label rendered above the field. */\n label?: ReactNode\n /** The selectable options. */\n options: SelectOption[]\n /** Preset size — control height, font, chips and option density. */\n size?: SelectSize\n /** Marks the field invalid: red border/ring + the `helperText` in the error color. */\n error?: boolean\n /** Helper / validation text under the field. Adopts the error color while `error`. */\n helperText?: ReactNode\n /** Adds a red asterisk after the label. */\n required?: boolean\n /** Stretches the field to fill its container width. Defaults to `true`. */\n fullWidth?: boolean\n /** Disables the field. */\n disabled?: boolean\n /** Controlled value — the chosen options' `value`s. */\n value?: string[]\n /** Initial value for uncontrolled use. */\n defaultValue?: string[]\n /** Fires with the next array of selected values. */\n onChange?: (value: string[]) => void\n /** Text shown in the trigger when nothing is selected. Defaults to `\"Select…\"`. */\n placeholder?: string\n /** Theme palette token tinting the selected chips. Defaults to `primary`. */\n color?: ThemeColor\n /** Shows a clear (×) button in the trigger when anything is selected. Defaults to `true`. */\n clearable?: boolean\n /** Adds a search box inside the popover that filters options by label. */\n searchable?: boolean\n /** Placeholder for the search box. Defaults to `\"Search…\"`. */\n searchPlaceholder?: string\n /**\n * Fires with the search query as the user types. **Providing this switches off the built-in\n * local filtering** — you own `options` (e.g. fetch them from a server for the current query).\n */\n onSearchChange?: (query: string) => void\n /** Shows a loading indicator in the popover (e.g. while fetching server-side search results). */\n loading?: boolean\n /** Text shown next to the loader while `loading`. Defaults to `\"Loading…\"`. */\n loadingText?: ReactNode\n /**\n * Shown in the popover when no option matches. Defaults to `\"No options\"`. Pass a function\n * `(query) => node` to vary the message by the current search text — e.g. a \"Type to search\" hint\n * while it's empty vs a \"No results\" message after typing.\n */\n noOptionsText?: ReactNode | ((query: string) => ReactNode)\n /** Form field name — auto-binds to a surrounding `<Form>` (value is a `string[]`). */\n name?: string\n /** Id for the trigger (label association). */\n id?: string\n className?: string\n style?: CSSProperties\n}\n\n/**\n * A labeled multi-select — the `string[]` sibling of `Select`. The trigger shows the chosen options\n * as deletable `Chip`s (wrapping, growing like `TagsField`) or a placeholder; clicking it opens the\n * same `Dropdown`-style popover (portaled, flips, scroll-locked, trigger-width, animated — shared via\n * `useFloatingPanel`). Options render as `ListItem`s in a `role=\"listbox\"` `aria-multiselectable`\n * list; selecting **toggles** an option and keeps the popover open, the chosen ones showing a tick.\n * Full keyboard support (Arrow/Home/End, Enter/Space to toggle, Escape to close, type-ahead) and\n * ARIA. Optionally `searchable` + `clearable`; pass `onSearchChange` to drive the search\n * **server-side** (you own `options` — local filtering is skipped) with a `loading` indicator.\n * Controlled (`value` + `onChange`) or uncontrolled\n * (`defaultValue`), and binds to a surrounding `<Form>` by `name` (value = `string[]`; validate with\n * e.g. `z.array(z.string()).min(1, 'Pick at least one')`). Token-only styling.\n */\nexport const MultiSelect = forwardRef<HTMLDivElement, MultiSelectProps>(function MultiSelect(\n {\n label,\n options,\n size = 'md',\n error,\n helperText,\n required = false,\n fullWidth = true,\n disabled = false,\n value,\n defaultValue,\n onChange,\n placeholder,\n color = 'primary',\n clearable = true,\n searchable = false,\n searchPlaceholder,\n onSearchChange,\n loading = false,\n loadingText,\n noOptionsText,\n name,\n id: idProp,\n className,\n style,\n },\n ref,\n) {\n const reactId = useId()\n const id = idProp ?? reactId\n const labelId = `${id}-label`\n const listboxId = `${id}-listbox`\n const helperId = `${id}-helper`\n const optionId = (index: number) => `${id}-opt-${index}`\n\n // ── value (controlled / form-bound / uncontrolled) — always a string[] ─────────────────────────\n // Read the RAW form value (field().value String-coerces, which would flatten the array).\n const t = useT()\n const searchPh = searchPlaceholder ?? t('common.search')\n const form = useFormContext()\n const isFormBound = Boolean(form && name)\n const bound = isFormBound ? form!.field(name!) : undefined\n const externalValue =\n value !== undefined\n ? value\n : isFormBound\n ? ((form!.values[name!] as string[] | undefined) ?? [])\n : undefined\n const isControlled = value !== undefined || isFormBound\n const [internal, setInternal] = useState<string[]>(defaultValue ?? [])\n const selectedValues = isControlled ? externalValue! : internal\n\n const resolvedError = error ?? bound?.error ?? false\n const resolvedHelperText = helperText ?? bound?.helperText\n\n const commit = (next: string[]) => {\n if (!isControlled) setInternal(next)\n if (isFormBound) form!.setValue(name!, next)\n onChange?.(next)\n }\n\n // ── popover open state ─────────────────────────────────────────────────────────────────────────\n const triggerRef = useRef<HTMLDivElement | null>(null)\n const searchInputRef = useRef<HTMLInputElement | null>(null)\n const typeahead = useRef({ buffer: '', timer: 0 })\n const fieldBlur = useRef<(() => void) | undefined>(undefined)\n fieldBlur.current = bound ? () => bound.onBlur({} as FocusEvent<HTMLInputElement>) : undefined\n const [open, setOpen] = useState(false)\n const [searchQuery, setSearchQuery] = useState('')\n const [highlightedIndex, setHighlightedIndex] = useState(-1)\n\n const setTriggerRef = useCallback(\n (node: HTMLDivElement | null) => {\n triggerRef.current = node\n if (typeof ref === 'function') ref(node)\n else if (ref) (ref as { current: HTMLDivElement | null }).current = node\n },\n [ref],\n )\n\n // when `onSearchChange` is set the consumer owns `options` (server-side search) — skip local filter\n const filteredOptions = useMemo(() => {\n if (!searchable || onSearchChange || !searchQuery.trim()) return options\n const q = searchQuery.trim().toLowerCase()\n return options.filter((o) => o.label.toLowerCase().includes(q))\n }, [searchable, onSearchChange, searchQuery, options])\n\n const findEnabled = useCallback(\n (start: number, delta: number) => {\n let i = start\n while (i >= 0 && i < filteredOptions.length) {\n if (!filteredOptions[i].disabled) return i\n i += delta\n }\n return -1\n },\n [filteredOptions],\n )\n\n // the floating panel forwards its node here, for the focus-leaves-the-widget check on blur\n const popoverRef = useRef<HTMLDivElement | null>(null)\n\n const closeMenu = useCallback((refocus: boolean) => {\n setOpen(false)\n setSearchQuery('')\n window.clearTimeout(typeahead.current.timer)\n typeahead.current.buffer = ''\n fieldBlur.current?.()\n if (refocus) triggerRef.current?.focus()\n }, [])\n\n // on open: highlight the first enabled option, focus the search box if searchable\n useEffect(() => {\n if (!open) return\n setHighlightedIndex(findEnabled(0, 1))\n if (searchable) requestAnimationFrame(() => searchInputRef.current?.focus())\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [open])\n\n useEffect(() => {\n if (!open || highlightedIndex < 0) return\n document.getElementById(optionId(highlightedIndex))?.scrollIntoView?.({ block: 'nearest' })\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [open, highlightedIndex])\n\n // search filter → re-anchor to the first match\n useEffect(() => {\n if (open && searchable) setHighlightedIndex(findEnabled(0, 1))\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [searchQuery])\n\n // keep the highlight in range if the option count changes while open\n useEffect(() => {\n if (open) setHighlightedIndex((i) => (i < filteredOptions.length ? i : findEnabled(0, 1)))\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [filteredOptions.length])\n\n const openMenu = () => {\n if (!disabled) setOpen(true)\n }\n const toggleOption = (opt: SelectOption | undefined) => {\n if (!opt || opt.disabled) return\n commit(\n selectedValues.includes(opt.value)\n ? selectedValues.filter((v) => v !== opt.value)\n : [...selectedValues, opt.value],\n )\n // multi-select stays open\n }\n const removeValue = (v: string) => commit(selectedValues.filter((x) => x !== v))\n const moveHighlight = (delta: number) => {\n setHighlightedIndex((cur) => {\n const start = cur < 0 ? (delta > 0 ? 0 : filteredOptions.length - 1) : cur + delta\n const found = findEnabled(start, delta)\n return found === -1 ? cur : found\n })\n }\n\n const handleTypeahead = (char: string) => {\n const t = typeahead.current\n window.clearTimeout(t.timer)\n t.buffer += char.toLowerCase()\n t.timer = window.setTimeout(() => (t.buffer = ''), 500)\n const match = filteredOptions.findIndex(\n (o) => !o.disabled && o.label.toLowerCase().startsWith(t.buffer),\n )\n if (match >= 0) setHighlightedIndex(match)\n }\n\n const handleKeyDown = (event: ReactKeyboardEvent) => {\n if (disabled) return\n switch (event.key) {\n case 'ArrowDown':\n event.preventDefault()\n open ? moveHighlight(1) : openMenu()\n break\n case 'ArrowUp':\n event.preventDefault()\n open ? moveHighlight(-1) : openMenu()\n break\n case 'Enter':\n event.preventDefault()\n if (!open) openMenu()\n else toggleOption(filteredOptions[highlightedIndex])\n break\n case ' ':\n // Space opens a closed menu (any mode); toggles only when open & not searchable\n if (!open) {\n event.preventDefault()\n openMenu()\n } else if (!searchable) {\n event.preventDefault()\n toggleOption(filteredOptions[highlightedIndex])\n }\n break\n case 'Escape':\n if (open) {\n event.preventDefault()\n event.stopPropagation() // don't let FloatingPanel's own Escape also fire closeMenu/onBlur\n closeMenu(true)\n }\n break\n case 'Tab':\n // refocus the trigger so Tab continues from the field's visual location, not the portaled\n // search input's DOM position (end of <body>); don't preventDefault — let Tab move on\n if (open) closeMenu(true)\n break\n case 'Backspace':\n // remove the last chip when the (search) input is empty or there's no search box\n if (open && (!searchable || searchQuery === '') && selectedValues.length > 0) {\n event.preventDefault()\n removeValue(selectedValues[selectedValues.length - 1])\n }\n break\n case 'Home':\n if (open) {\n event.preventDefault()\n setHighlightedIndex(findEnabled(0, 1))\n }\n break\n case 'End':\n if (open) {\n event.preventDefault()\n setHighlightedIndex(findEnabled(filteredOptions.length - 1, -1))\n }\n break\n default:\n if (\n !searchable &&\n open &&\n event.key.length === 1 &&\n !event.metaKey &&\n !event.ctrlKey &&\n !event.altKey\n ) {\n handleTypeahead(event.key)\n }\n }\n }\n\n const handleTriggerBlur = (event: FocusEvent<HTMLDivElement>) => {\n const next = event.relatedTarget as Node | null\n if (next && (popoverRef.current?.contains(next) || triggerRef.current?.contains(next))) return\n bound?.onBlur(event as unknown as FocusEvent<HTMLInputElement>)\n }\n\n const activeId = open && highlightedIndex >= 0 ? optionId(highlightedIndex) : undefined\n // chevron size per field size: sm 16 · md 14 · lg 12\n const chevronPx = size === 'sm' ? 16 : size === 'md' ? 14 : 12\n const hasValue = selectedValues.length > 0\n\n return (\n <div\n className={clsx(\n styles.field,\n styles[size],\n fullWidth && styles.fullWidth,\n resolvedError && styles.error,\n disabled && styles.disabled,\n className,\n )}\n style={style}\n >\n {label != null && (\n <span\n id={labelId}\n className={styles.label}\n onClick={() => !disabled && triggerRef.current?.focus()}\n >\n <Typography as=\"span\" variant=\"bodySmall\" color=\"muted\">\n {label}\n </Typography>\n {required && (\n <span className={styles.required} aria-hidden=\"true\">\n *\n </span>\n )}\n </span>\n )}\n\n <div\n ref={setTriggerRef}\n id={id}\n {...(name ? { name } : {})}\n role=\"combobox\"\n tabIndex={disabled ? -1 : 0}\n aria-haspopup=\"listbox\"\n aria-expanded={open}\n aria-controls={open ? listboxId : undefined}\n aria-activedescendant={searchable ? undefined : activeId}\n aria-labelledby={label != null ? labelId : undefined}\n aria-disabled={disabled || undefined}\n aria-required={required || undefined}\n aria-invalid={resolvedError || undefined}\n aria-describedby={resolvedHelperText != null ? helperId : undefined}\n className={clsx(styles.control, open && styles.open, hasValue && styles.filled)}\n onClick={() => (open ? closeMenu(false) : openMenu())}\n onKeyDown={handleKeyDown}\n onBlur={handleTriggerBlur}\n >\n {hasValue ? (\n <span className={styles.chips}>\n {selectedValues.map((v) => {\n const opt = options.find((o) => o.value === v)\n return (\n <Chip\n key={v}\n size={size}\n color={color}\n disabled={disabled}\n onDelete={() => removeValue(v)}\n deleteLabel={`Remove ${opt?.label ?? v}`}\n // the combobox owns keyboard focus — keep chip deletes out of the tab order\n deleteTabIndex={-1}\n >\n {opt?.label ?? v}\n </Chip>\n )\n })}\n </span>\n ) : (\n <span className={clsx(styles.value, styles.placeholder)}>\n <span className={styles.valueLabel}>{placeholder ?? t('select.placeholder')}</span>\n </span>\n )}\n\n {clearable && hasValue && !disabled && (\n <button\n type=\"button\"\n className={styles.clear}\n aria-label={t('multiSelect.clearAll')}\n tabIndex={-1}\n onMouseDown={(e) => e.preventDefault()}\n onClick={(e) => {\n e.stopPropagation()\n commit([])\n triggerRef.current?.focus()\n }}\n >\n <Icon name=\"CloseCircle\" size=\"sm\" />\n </button>\n )}\n\n <Icon\n name=\"ArrowDown4\"\n className={styles.chevron}\n style={{ width: chevronPx, height: chevronPx }}\n aria-hidden=\"true\"\n />\n </div>\n\n <FloatingPanel\n ref={popoverRef}\n open={open}\n triggerRef={triggerRef}\n onClose={closeMenu}\n matchTriggerWidth\n className={styles.popover}\n >\n {searchable && (\n <div className={styles.search}>\n <Icon name=\"SearchNormal\" size=\"sm\" className={styles.searchIcon} aria-hidden=\"true\" />\n <input\n ref={searchInputRef}\n className={styles.searchInput}\n type=\"text\"\n role=\"combobox\"\n aria-expanded=\"true\"\n aria-controls={listboxId}\n aria-activedescendant={activeId}\n aria-autocomplete=\"list\"\n aria-label={searchPh}\n placeholder={searchPh}\n value={searchQuery}\n spellCheck={false}\n onChange={(e) => {\n setSearchQuery(e.target.value)\n onSearchChange?.(e.target.value)\n }}\n onKeyDown={handleKeyDown}\n />\n </div>\n )}\n\n <List\n role=\"listbox\"\n id={listboxId}\n aria-labelledby={label != null ? labelId : undefined}\n aria-multiselectable=\"true\"\n size={size}\n className={styles.listbox}\n // clear the mouse highlight when the pointer leaves the list (no lingering hover)\n onMouseLeave={() => setHighlightedIndex(-1)}\n >\n {loading ? (\n <div className={styles.loading}>\n <Loader size=\"sm\" />\n <Typography as=\"span\" variant=\"bodySmall\" color=\"muted\">\n {loadingText ?? t('common.loading')}\n </Typography>\n </div>\n ) : filteredOptions.length === 0 ? (\n <div className={styles.noOptions}>\n <Typography as=\"span\" variant=\"bodySmall\" color=\"muted\">\n {noOptionsText == null\n ? t('select.noOptions')\n : typeof noOptionsText === 'function'\n ? noOptionsText(searchQuery)\n : noOptionsText}\n </Typography>\n </div>\n ) : (\n filteredOptions.map((opt, index) => {\n const isSelected = selectedValues.includes(opt.value)\n return (\n <ListItem\n key={opt.value}\n id={optionId(index)}\n role=\"option\"\n tabIndex={-1}\n aria-selected={isSelected}\n aria-current={undefined}\n clickable\n selected={isSelected}\n disabled={opt.disabled}\n icon={opt.icon}\n className={clsx(index === highlightedIndex && styles.active)}\n trailing={isSelected ? <Icon name=\"TickCircle\" size=\"sm\" /> : undefined}\n onMouseEnter={() => !opt.disabled && setHighlightedIndex(index)}\n // keep focus on the search input (menu stays open on toggle) so typing keeps working\n onMouseDown={(e) => e.preventDefault()}\n onClick={() => toggleOption(opt)}\n >\n {opt.label}\n </ListItem>\n )\n })\n )}\n </List>\n </FloatingPanel>\n\n {resolvedHelperText != null && (\n <Typography\n as=\"span\"\n id={helperId}\n variant=\"bodySmall\"\n color={resolvedError ? 'error' : 'muted'}\n className={styles.helper}\n >\n {resolvedHelperText}\n </Typography>\n )}\n </div>\n )\n})\n"],"names":["MultiSelect","forwardRef","label","options","size","error","helperText","required","fullWidth","disabled","value","defaultValue","onChange","placeholder","color","clearable","searchable","searchPlaceholder","onSearchChange","loading","loadingText","noOptionsText","name","idProp","className","style","ref","reactId","useId","id","labelId","listboxId","helperId","optionId","index","t","useT","searchPh","form","useFormContext","isFormBound","bound","externalValue","isControlled","internal","setInternal","useState","selectedValues","resolvedError","resolvedHelperText","commit","next","triggerRef","useRef","searchInputRef","typeahead","fieldBlur","open","setOpen","searchQuery","setSearchQuery","highlightedIndex","setHighlightedIndex","setTriggerRef","useCallback","node","filteredOptions","useMemo","q","o","findEnabled","start","delta","i","popoverRef","closeMenu","refocus","_a","_b","useEffect","openMenu","toggleOption","opt","v","removeValue","x","moveHighlight","cur","found","handleTypeahead","char","match","handleKeyDown","event","handleTriggerBlur","activeId","chevronPx","hasValue","jsxs","clsx","styles","jsx","Typography","Chip","Icon","FloatingPanel","List","Loader","isSelected","ListItem","e"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- "use strict";const c=require("react/jsx-runtime"),a=require("react"),m=require("@tanstack/react-router"),u=require("./access-DPUHbE-S.cjs"),y=require("./EmptyState-Bv4XXnD1.cjs"),R=require("./Button-CXmDOzPk.cjs"),i=require("./Sidebar-DcKIEfhy.cjs"),S=require("./ConfigProvider-Bszl3Wr3.cjs"),j=a.forwardRef(function({icon:l="SearchStatus",title:d,description:f,actionLabel:v,to:s,showAction:q=!0,...g},p){const n=S.useT(),t=m.useRouter({warn:!1}),F=u.useAccessKeys(),r=a.useMemo(()=>{if(s!=null)return s;if(!t)return;const h=i.buildNavTree(Object.values(t.looseRoutesById).map(o=>{var e;return{fullPath:o.fullPath,staticData:(e=o.options)==null?void 0:e.staticData}}).filter(o=>{var e;return u.hasAccess((e=o.staticData)==null?void 0:e.roles)}));return i.firstNavTo(h)??"/"},[t,s,F]),N=!!t&&r!=null,P=q&&N?c.jsx(R.Button,{onClick:()=>t.navigate({to:r}),children:v??n("notFound.action")}):void 0;return c.jsx(y.EmptyState,{ref:p,icon:l,title:d??n("notFound.title"),description:f??n("notFound.description"),action:P,...g})});exports.PageNotFound=j;
2
- //# sourceMappingURL=PageNotFound-B8_eIT8p.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PageNotFound-B8_eIT8p.cjs","sources":["../src/components/PageNotFound/PageNotFound.tsx"],"sourcesContent":["import { forwardRef, useMemo, type HTMLAttributes, type ReactNode } from 'react'\nimport { useRouter, type LinkProps } from '@tanstack/react-router'\nimport { useT } from '../../theme'\nimport { hasAccess, useAccessKeys } from '../../helpers/access'\nimport { EmptyState, type EmptyStateSize } from '../EmptyState'\nimport { Button } from '../Button'\nimport { buildNavTree, firstNavTo } from '../Sidebar/Sidebar'\nimport type { IconName } from '../../icons/names'\n\nexport interface PageNotFoundProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title'> {\n /** Hero glyph — an `IconName`, any node, or `false` to hide it. Defaults to `SearchStatus`. */\n icon?: IconName | ReactNode | false\n /** Heading. Defaults to the localized `notFound.title`. */\n title?: ReactNode\n /** Muted description. Defaults to the localized `notFound.description`. */\n description?: ReactNode\n /** Action button label. Defaults to the localized `notFound.action`. */\n actionLabel?: ReactNode\n /** Where the action navigates. Defaults to the first allowed menu page (RBAC-aware), else `/`. */\n to?: string\n /** Show the \"back home\" action button. Defaults to `true` (hidden anyway when there's no router). */\n showAction?: boolean\n /** Faded-grid hero backdrop — passed to `EmptyState`. Defaults to `true` (its default). */\n pattern?: boolean\n /** Size — passed to `EmptyState`. Defaults to `md`. */\n size?: EmptyStateSize\n}\n\n/**\n * The shared **404** page. Drop it straight into TanStack Router as the\n * `defaultNotFoundComponent` — zero props needed: the title/description/action strings come from the\n * built-in i18n (`useT`), so they translate with the panel language, and the action navigates to the\n * **first allowed menu page** (the same RBAC-aware target as `FirstRouteRedirect`), falling back to\n * `/`. Built on `EmptyState` (hero glyph + title + description + action, `pattern` on by default), so\n * it renders inside the `RootLayout` content area with the shell/sidebar intact. Lenient: with no\n * router context the `EmptyState` still renders, just without the action button. Token-only styling.\n *\n * @example\n * const router = createRouter({ routeTree, defaultNotFoundComponent: PageNotFound })\n */\nexport const PageNotFound = forwardRef<HTMLDivElement, PageNotFoundProps>(function PageNotFound(\n { icon = 'SearchStatus', title, description, actionLabel, to, showAction = true, ...props },\n ref,\n) {\n const t = useT()\n // lenient router access — returns undefined (no throw) outside a <RouterProvider>\n const router = useRouter({ warn: false })\n const accessKeys = useAccessKeys()\n\n // the first allowed menu page — same logic as FirstRouteRedirect, RBAC-aware; `/` fallback\n const resolvedTo = useMemo(() => {\n if (to != null) return to\n if (!router) return undefined\n const tree = buildNavTree(\n Object.values(router.looseRoutesById)\n .map((route) => ({ fullPath: route.fullPath, staticData: route.options?.staticData }))\n .filter((route) => hasAccess(route.staticData?.roles)),\n )\n return firstNavTo(tree) ?? '/'\n }, [router, to, accessKeys])\n\n const canNavigate = !!router && resolvedTo != null\n const action =\n showAction && canNavigate ? (\n <Button onClick={() => router.navigate({ to: resolvedTo as LinkProps['to'] })}>\n {actionLabel ?? t('notFound.action')}\n </Button>\n ) : undefined\n\n return (\n <EmptyState\n ref={ref}\n icon={icon}\n title={title ?? t('notFound.title')}\n description={description ?? t('notFound.description')}\n action={action}\n {...props}\n />\n )\n})\n"],"names":["PageNotFound","forwardRef","icon","title","description","actionLabel","to","showAction","props","ref","t","useT","router","useRouter","accessKeys","useAccessKeys","resolvedTo","useMemo","tree","buildNavTree","route","_a","hasAccess","firstNavTo","canNavigate","action","Button","jsx","EmptyState"],"mappings":"qSAwCaA,EAAeC,EAAAA,WAA8C,SACxE,CAAE,KAAAC,EAAO,eAAgB,MAAAC,EAAO,YAAAC,EAAa,YAAAC,EAAa,GAAAC,EAAI,WAAAC,EAAa,GAAM,GAAGC,CAAA,EACpFC,EACA,CACA,MAAMC,EAAIC,EAAAA,KAAA,EAEJC,EAASC,EAAAA,UAAU,CAAE,KAAM,GAAO,EAClCC,EAAaC,EAAAA,cAAA,EAGbC,EAAaC,EAAAA,QAAQ,IAAM,CAC/B,GAAIX,GAAM,KAAM,OAAOA,EACvB,GAAI,CAACM,EAAQ,OACb,MAAMM,EAAOC,EAAAA,aACX,OAAO,OAAOP,EAAO,eAAe,EACjC,IAAKQ,UAAW,OAAE,SAAUA,EAAM,SAAU,YAAYC,EAAAD,EAAM,UAAN,YAAAC,EAAe,YAAa,EACpF,OAAQD,GAAA,OAAUE,OAAAA,aAAUD,EAAAD,EAAM,aAAN,YAAAC,EAAkB,KAAK,EAAC,CAAA,EAEzD,OAAOE,EAAAA,WAAWL,CAAI,GAAK,GAC7B,EAAG,CAACN,EAAQN,EAAIQ,CAAU,CAAC,EAErBU,EAAc,CAAC,CAACZ,GAAUI,GAAc,KACxCS,EACJlB,GAAciB,QACXE,EAAAA,OAAA,CAAO,QAAS,IAAMd,EAAO,SAAS,CAAE,GAAII,EAA+B,EACzE,YAAeN,EAAE,iBAAiB,EACrC,EACE,OAEN,OACEiB,EAAAA,IAACC,EAAAA,WAAA,CACC,IAAAnB,EACA,KAAAP,EACA,MAAOC,GAASO,EAAE,gBAAgB,EAClC,YAAaN,GAAeM,EAAE,sBAAsB,EACpD,OAAAe,EACC,GAAGjB,CAAA,CAAA,CAGV,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"PageNotFound-CCFfPHgA.js","sources":["../src/components/PageNotFound/PageNotFound.tsx"],"sourcesContent":["import { forwardRef, useMemo, type HTMLAttributes, type ReactNode } from 'react'\nimport { useRouter, type LinkProps } from '@tanstack/react-router'\nimport { useT } from '../../theme'\nimport { hasAccess, useAccessKeys } from '../../helpers/access'\nimport { EmptyState, type EmptyStateSize } from '../EmptyState'\nimport { Button } from '../Button'\nimport { buildNavTree, firstNavTo } from '../Sidebar/Sidebar'\nimport type { IconName } from '../../icons/names'\n\nexport interface PageNotFoundProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title'> {\n /** Hero glyph — an `IconName`, any node, or `false` to hide it. Defaults to `SearchStatus`. */\n icon?: IconName | ReactNode | false\n /** Heading. Defaults to the localized `notFound.title`. */\n title?: ReactNode\n /** Muted description. Defaults to the localized `notFound.description`. */\n description?: ReactNode\n /** Action button label. Defaults to the localized `notFound.action`. */\n actionLabel?: ReactNode\n /** Where the action navigates. Defaults to the first allowed menu page (RBAC-aware), else `/`. */\n to?: string\n /** Show the \"back home\" action button. Defaults to `true` (hidden anyway when there's no router). */\n showAction?: boolean\n /** Faded-grid hero backdrop — passed to `EmptyState`. Defaults to `true` (its default). */\n pattern?: boolean\n /** Size — passed to `EmptyState`. Defaults to `md`. */\n size?: EmptyStateSize\n}\n\n/**\n * The shared **404** page. Drop it straight into TanStack Router as the\n * `defaultNotFoundComponent` — zero props needed: the title/description/action strings come from the\n * built-in i18n (`useT`), so they translate with the panel language, and the action navigates to the\n * **first allowed menu page** (the same RBAC-aware target as `FirstRouteRedirect`), falling back to\n * `/`. Built on `EmptyState` (hero glyph + title + description + action, `pattern` on by default), so\n * it renders inside the `RootLayout` content area with the shell/sidebar intact. Lenient: with no\n * router context the `EmptyState` still renders, just without the action button. Token-only styling.\n *\n * @example\n * const router = createRouter({ routeTree, defaultNotFoundComponent: PageNotFound })\n */\nexport const PageNotFound = forwardRef<HTMLDivElement, PageNotFoundProps>(function PageNotFound(\n { icon = 'SearchStatus', title, description, actionLabel, to, showAction = true, ...props },\n ref,\n) {\n const t = useT()\n // lenient router access — returns undefined (no throw) outside a <RouterProvider>\n const router = useRouter({ warn: false })\n const accessKeys = useAccessKeys()\n\n // the first allowed menu page — same logic as FirstRouteRedirect, RBAC-aware; `/` fallback\n const resolvedTo = useMemo(() => {\n if (to != null) return to\n if (!router) return undefined\n const tree = buildNavTree(\n Object.values(router.looseRoutesById)\n .map((route) => ({ fullPath: route.fullPath, staticData: route.options?.staticData }))\n .filter((route) => hasAccess(route.staticData?.roles)),\n )\n return firstNavTo(tree) ?? '/'\n }, [router, to, accessKeys])\n\n const canNavigate = !!router && resolvedTo != null\n const action =\n showAction && canNavigate ? (\n <Button onClick={() => router.navigate({ to: resolvedTo as LinkProps['to'] })}>\n {actionLabel ?? t('notFound.action')}\n </Button>\n ) : undefined\n\n return (\n <EmptyState\n ref={ref}\n icon={icon}\n title={title ?? t('notFound.title')}\n description={description ?? t('notFound.description')}\n action={action}\n {...props}\n />\n )\n})\n"],"names":["PageNotFound","forwardRef","icon","title","description","actionLabel","to","showAction","props","ref","t","useT","router","useRouter","accessKeys","useAccessKeys","resolvedTo","useMemo","tree","buildNavTree","route","_a","hasAccess","firstNavTo","canNavigate","action","Button","jsx","EmptyState"],"mappings":";;;;;;;;AAwCO,MAAMA,IAAeC,EAA8C,SACxE,EAAE,MAAAC,IAAO,gBAAgB,OAAAC,GAAO,aAAAC,GAAa,aAAAC,GAAa,IAAAC,GAAI,YAAAC,IAAa,IAAM,GAAGC,EAAA,GACpFC,GACA;AACA,QAAMC,IAAIC,EAAA,GAEJC,IAASC,EAAU,EAAE,MAAM,IAAO,GAClCC,IAAaC,EAAA,GAGbC,IAAaC,EAAQ,MAAM;AAC/B,QAAIX,KAAM,KAAM,QAAOA;AACvB,QAAI,CAACM,EAAQ;AACb,UAAMM,IAAOC;AAAA,MACX,OAAO,OAAOP,EAAO,eAAe,EACjC,IAAI,CAACQ;;AAAW,iBAAE,UAAUA,EAAM,UAAU,aAAYC,IAAAD,EAAM,YAAN,gBAAAC,EAAe;OAAa,EACpF,OAAO,CAACD,MAAA;;AAAU,eAAAE,GAAUD,IAAAD,EAAM,eAAN,gBAAAC,EAAkB,KAAK;AAAA,OAAC;AAAA,IAAA;AAEzD,WAAOE,EAAWL,CAAI,KAAK;AAAA,EAC7B,GAAG,CAACN,GAAQN,GAAIQ,CAAU,CAAC,GAErBU,IAAc,CAAC,CAACZ,KAAUI,KAAc,MACxCS,IACJlB,KAAciB,sBACXE,GAAA,EAAO,SAAS,MAAMd,EAAO,SAAS,EAAE,IAAII,GAA+B,GACzE,eAAeN,EAAE,iBAAiB,GACrC,IACE;AAEN,SACE,gBAAAiB;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,KAAAnB;AAAA,MACA,MAAAP;AAAA,MACA,OAAOC,KAASO,EAAE,gBAAgB;AAAA,MAClC,aAAaN,KAAeM,EAAE,sBAAsB;AAAA,MACpD,QAAAe;AAAA,MACC,GAAGjB;AAAA,IAAA;AAAA,EAAA;AAGV,CAAC;"}
@@ -1,2 +0,0 @@
1
- "use strict";const r=require("react/jsx-runtime"),N=require("react"),d=require("clsx"),U=require("./Icon-BVULqOJD.cjs"),V=require("./ConfigProvider-Bszl3Wr3.cjs"),x=(e,t)=>Array.from({length:Math.max(t-e+1,0)},(l,s)=>e+s);function W({count:e,page:t,siblingCount:l=1,boundaryCount:s=1}){if(e<=0)return[];const o=x(1,Math.min(s,e)),p=x(Math.max(e-s+1,s+1),e),m=Math.max(Math.min(t-l,e-s-l*2-1),s+2),g=Math.min(Math.max(t+l,s+l*2+2),p.length>0?p[0]-2:e-1);return[...o,...m>s+2?["start-ellipsis"]:s+1<e-s?[s+1]:[],...x(m,g),...g<e-s-1?["end-ellipsis"]:e-s>s?[e-s]:[],...p]}const X="_pagination_wk3op_3",Y="_list_wk3op_8",Z="_item_wk3op_18",b="_sm_wk3op_28",u="_md_wk3op_33",y="_lg_wk3op_38",C="_page_wk3op_45",ss="_selected_wk3op_64",es="_outlined_wk3op_80",as="_rounded_wk3op_96",ts="_arrow_wk3op_26",is="_flip_wk3op_107",ls="_ellipsis_wk3op_112",a={pagination:X,list:Y,item:Z,sm:b,md:u,lg:y,page:C,selected:ss,outlined:es,rounded:as,arrow:ts,flip:is,ellipsis:ls},P=(e,t,l)=>Math.min(Math.max(e,t),l),ns=N.forwardRef(function({count:t,page:l,defaultPage:s=1,onChange:o,siblingCount:p=1,boundaryCount:m=1,showFirstButton:g=!1,showLastButton:q=!1,hidePrevButton:$=!1,hideNextButton:z=!1,variant:A="outlined",size:w="md",color:h="accent",rounded:I=!1,disabled:k=!1,className:R,style:S,"aria-label":L="Pagination",...E},T){const j=l!==void 0,[B,D]=N.useState(s),v=Math.max(t,1),n=P(j?l:B,1,v),M=i=>{const c=P(i,1,v);c!==n&&(j||D(c),o==null||o(c))},_=V.useT(),F=W({count:t,page:n,siblingCount:p,boundaryCount:m}),G={"--tz-btn-rgb":`var(--tz-color-${h}-rgb)`,"--tz-btn-on":`var(--tz-color-${h}-contrast, #fff)`,...S},f=(i,c,H,J,K,O,Q=!1)=>K?null:r.jsx("li",{className:a.item,children:r.jsx("button",{type:"button",className:d.clsx(a.page,a.arrow),"aria-label":H,disabled:k||O,onClick:()=>M(J),children:r.jsx(U.Icon,{name:c,size:w,className:Q?a.flip:void 0})})},i);return r.jsx("nav",{ref:T,"aria-label":L,className:d.clsx(a.pagination,a[A],a[w],I&&a.rounded,R),style:G,...E,children:r.jsxs("ul",{className:a.list,children:[g&&f("first","Previous",_("pagination.first"),1,!1,n<=1),f("prev","ArrowLeft",_("pagination.previous"),n-1,$,n<=1),F.map((i,c)=>typeof i=="number"?r.jsx("li",{className:a.item,children:r.jsx("button",{type:"button",className:d.clsx(a.page,i===n&&a.selected),"aria-label":_("pagination.page",{page:i}),"aria-current":i===n?"page":void 0,disabled:k,onClick:()=>M(i),children:i})},i):r.jsx("li",{className:a.item,"aria-hidden":!0,children:r.jsx("span",{className:a.ellipsis,children:"…"})},`${i}-${c}`)),f("next","ArrowLeft",_("pagination.next"),n+1,z,n>=t,!0),q&&f("last","Next",_("pagination.last"),t,!1,n>=t)]})})});exports.Pagination=ns;
2
- //# sourceMappingURL=Pagination-BdVebW2L.cjs.map