@12-apps/ui 6.36.0 → 6.37.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (558) hide show
  1. package/dist/_internal/components/data-display/CardKit/CardKebab.js +3 -3
  2. package/dist/_internal/components/data-display/CardKit/use-remove-confirm.js +3 -3
  3. package/dist/_internal/components/data-display/CardKit/use-row-confirm.js +3 -3
  4. package/dist/_internal/components/data-display/DataViews/DataViewsGrid.js +36 -36
  5. package/dist/_internal/components/data-display/DataViews/DataViewsTableBase.js +48 -48
  6. package/dist/_internal/components/data-display/DataViews/DeleteViewDialog.js +3 -3
  7. package/dist/_internal/components/data-display/DataViews/ManageViewsDialog.js +4 -4
  8. package/dist/_internal/components/data-display/DataViews/SaveViewModal.js +9 -9
  9. package/dist/_internal/components/data-display/DataViews/base-card.js +2 -2
  10. package/dist/_internal/components/data-display/DataViews/base-list-card-geometry.js +7 -7
  11. package/dist/_internal/components/data-display/DataViews/base-list-card-gutters.js +2 -2
  12. package/dist/_internal/components/data-display/DataViews/base-list-card-slots.js +6 -6
  13. package/dist/_internal/components/data-display/DataViews/base-list-card.js +10 -10
  14. package/dist/_internal/components/data-display/DataViews/data-views-category-pill.js +11 -11
  15. package/dist/_internal/components/data-display/DataViews/data-views-columns.js +4 -4
  16. package/dist/_internal/components/data-display/DataViews/data-views-display-panel.js +9 -9
  17. package/dist/_internal/components/data-display/DataViews/data-views-display-tabs.js +5 -5
  18. package/dist/_internal/components/data-display/DataViews/data-views-empty.js +3 -3
  19. package/dist/_internal/components/data-display/DataViews/data-views-export.js +3 -3
  20. package/dist/_internal/components/data-display/DataViews/data-views-filter-panel.js +12 -12
  21. package/dist/_internal/components/data-display/DataViews/data-views-grid-bodies.js +10 -10
  22. package/dist/_internal/components/data-display/DataViews/data-views-grid-helpers.js +3 -3
  23. package/dist/_internal/components/data-display/DataViews/data-views-grid-parts.js +33 -33
  24. package/dist/_internal/components/data-display/DataViews/data-views-inline-bar.js +15 -15
  25. package/dist/_internal/components/data-display/DataViews/data-views-layout-context.js +4 -4
  26. package/dist/_internal/components/data-display/DataViews/data-views-more-filters.js +3 -3
  27. package/dist/_internal/components/data-display/DataViews/data-views-scope-tabs.js +5 -5
  28. package/dist/_internal/components/data-display/DataViews/data-views-select-all-strip.js +3 -3
  29. package/dist/_internal/components/data-display/DataViews/data-views-shell-toolbar.js +13 -13
  30. package/dist/_internal/components/data-display/DataViews/data-views-table-parts.js +12 -12
  31. package/dist/_internal/components/data-display/DataViews/data-views-toolbar.js +12 -12
  32. package/dist/_internal/components/data-display/DataViews/data-views-view-nav.js +3 -3
  33. package/dist/_internal/components/data-display/DataViews/list-card-rails.js +5 -5
  34. package/dist/_internal/components/data-display/DataViews/use-data-views-state.js +5 -5
  35. package/dist/_internal/components/data-display/FleetMap/FleetMap.js +2 -2
  36. package/dist/_internal/components/data-display/index.js +2 -2
  37. package/dist/_internal/components/feedback/ConfirmAction/ConfirmButton.js +3 -3
  38. package/dist/_internal/components/feedback/NotificationStatusNotice/NotificationStatusNotice.js +3 -3
  39. package/dist/_internal/components/feedback/index.js +4 -4
  40. package/dist/_internal/components/form/AddressAutocomplete/AddressAutocomplete.js +6 -6
  41. package/dist/_internal/components/form/AddressAutocomplete/AddressAutocompleteField.js +4 -4
  42. package/dist/_internal/components/form/AddressAutocomplete/AddressFallbackField.js +3 -2
  43. package/dist/_internal/components/form/AddressAutocomplete/AddressInputField.js +3 -2
  44. package/dist/_internal/components/form/AddressAutocomplete/AddressSuggestionsPaper.js +2 -1
  45. package/dist/_internal/components/form/AddressAutocomplete/AddressTextField.js +2 -1
  46. package/dist/_internal/components/form/Autocomplete/Autocomplete.js +3 -2
  47. package/dist/_internal/components/form/Autocomplete/Autocomplete.parts.js +2 -1
  48. package/dist/_internal/components/form/Button/Button.js +2 -2
  49. package/dist/_internal/components/form/Button/Button.styles.js +1 -1
  50. package/dist/_internal/components/form/CategorySelect/CategoryPanel.js +6 -6
  51. package/dist/_internal/components/form/CategorySelect/CategoryPanelFoot.js +2 -2
  52. package/dist/_internal/components/form/CategorySelect/CategoryPanelHead.js +2 -2
  53. package/dist/_internal/components/form/CategorySelect/CategoryPanelList.js +3 -3
  54. package/dist/_internal/components/form/CategorySelect/CategoryPanelSurface.js +2 -1
  55. package/dist/_internal/components/form/CategorySelect/CategoryRows.js +2 -2
  56. package/dist/_internal/components/form/CategorySelect/CategorySelect.js +10 -10
  57. package/dist/_internal/components/form/CategorySelect/CategorySelect.styles.js +1 -1
  58. package/dist/_internal/components/form/CategorySelect/CategoryTrigger.js +2 -2
  59. package/dist/_internal/components/form/CepField/CepField.js +4 -4
  60. package/dist/_internal/components/form/Checkbox/Checkbox.js +1 -1
  61. package/dist/_internal/components/form/CodeEditor/CodeEditor.helpers.js +1 -1
  62. package/dist/_internal/components/form/CodeEditor/CodeEditor.js +2 -2
  63. package/dist/_internal/components/form/Command/Command.hooks.js +1 -1
  64. package/dist/_internal/components/form/Command/Command.js +4 -4
  65. package/dist/_internal/components/form/Command/Command.parts.js +2 -1
  66. package/dist/_internal/components/form/Command/Command.styles.js +1 -1
  67. package/dist/_internal/components/form/CreatableSelect/CreatableSelect.js +2 -2
  68. package/dist/_internal/components/form/DateRangePicker/DateRangePicker.js +2 -2
  69. package/dist/_internal/components/form/DateRangePicker/DateRangePickerQuickList.js +1 -1
  70. package/dist/_internal/components/form/Form/Form.js +1 -1
  71. package/dist/_internal/components/form/HeaderActions/HeaderActions.js +1 -1
  72. package/dist/_internal/components/form/Input/Input.js +3 -2
  73. package/dist/_internal/components/form/Input/Input.styles.js +2 -1
  74. package/dist/_internal/components/form/InputOTP/InputOTP.js +2 -2
  75. package/dist/_internal/components/form/InputOTP/InputOTP.styles.js +1 -1
  76. package/dist/_internal/components/form/Label/Label.js +2 -2
  77. package/dist/_internal/components/form/Label/Label.styles.js +1 -1
  78. package/dist/_internal/components/form/Menubar/Menubar.item.js +2 -2
  79. package/dist/_internal/components/form/Menubar/Menubar.js +4 -4
  80. package/dist/_internal/components/form/Menubar/Menubar.styles.js +1 -1
  81. package/dist/_internal/components/form/Menubar/Menubar.toolbar.js +3 -3
  82. package/dist/_internal/components/form/PasswordStrength/PasswordStrength.js +1 -1
  83. package/dist/_internal/components/form/PhoneInput/PhoneInput.js +1 -1
  84. package/dist/_internal/components/form/RadioGroup/RadioGroup.animations.js +2 -1
  85. package/dist/_internal/components/form/RadioGroup/RadioGroup.js +4 -4
  86. package/dist/_internal/components/form/RadioGroup/RadioGroup.styles.js +2 -2
  87. package/dist/_internal/components/form/RadioGroup/RadioGroup.variants.js +3 -3
  88. package/dist/_internal/components/form/RichTextEditor/RichTextEditor.js +2 -2
  89. package/dist/_internal/components/form/RichTextEditor/RichTextEditorToolbar.js +2 -1
  90. package/dist/_internal/components/form/SearchPalette/SearchPalette.js +2 -2
  91. package/dist/_internal/components/form/SearchPalette/SearchPalette.parts.js +1 -1
  92. package/dist/_internal/components/form/Select/Select.js +2 -1
  93. package/dist/_internal/components/form/Slider/Slider.animations.js +2 -1
  94. package/dist/_internal/components/form/Slider/Slider.js +3 -3
  95. package/dist/_internal/components/form/Slider/Slider.styles.js +2 -2
  96. package/dist/_internal/components/form/Switch/Switch.animations.js +2 -1
  97. package/dist/_internal/components/form/Switch/Switch.js +4 -4
  98. package/dist/_internal/components/form/Switch/Switch.parts.js +3 -3
  99. package/dist/_internal/components/form/Switch/Switch.styles.js +2 -2
  100. package/dist/_internal/components/form/Textarea/Textarea.js +2 -2
  101. package/dist/_internal/components/form/Textarea/Textarea.styles.js +2 -1
  102. package/dist/_internal/components/form/Textarea/TextareaRichEditor.js +12 -11
  103. package/dist/_internal/components/form/Textarea/TextareaRichEditor.js.map +1 -1
  104. package/dist/_internal/components/form/Toggle/Toggle.js +2 -2
  105. package/dist/_internal/components/form/Toggle/Toggle.styles.js +1 -1
  106. package/dist/_internal/components/form/ToggleGroup/ToggleGroup.js +1 -1
  107. package/dist/_internal/components/form/UploadButton/UploadButton.js +2 -2
  108. package/dist/_internal/components/form/UploadButton/UploadButton.parts.js +1 -1
  109. package/dist/_internal/components/form/index.js +56 -56
  110. package/dist/_internal/components/form/total-form/Fields/CategoryField.js +11 -11
  111. package/dist/_internal/components/form/total-form/Fields/CepField.js +5 -5
  112. package/dist/_internal/components/form/total-form/Fields/SelectField.js +3 -3
  113. package/dist/_internal/components/form/total-form/Fields/TextField.js +4 -4
  114. package/dist/_internal/components/form/total-form/Fields/ToggleField.js +3 -3
  115. package/dist/_internal/components/form/total-form/Fields/index.js +21 -21
  116. package/dist/_internal/components/form/total-form/FormContainer.js +2 -2
  117. package/dist/_internal/components/form/total-form/SubmitButton.js +3 -3
  118. package/dist/_internal/components/index.js +63 -63
  119. package/dist/_internal/components/layout/Dashboard/Dashboard.js +3 -3
  120. package/dist/_internal/components/layout/Dashboard/DashboardParts.js +2 -2
  121. package/dist/_internal/components/layout/index.js +3 -3
  122. package/dist/_internal/components/navigation/AppHeader/AppHeader.details.js +3 -3
  123. package/dist/_internal/components/navigation/index.js +3 -3
  124. package/dist/_internal/social-login-button/social-login-button.js +3 -3
  125. package/dist/_internal/user-avatar/user-avatar.js +3 -3
  126. package/dist/{chunk-343OLRFT.js → chunk-2BIVCYTO.js} +4 -4
  127. package/dist/{chunk-KH25WUSX.js → chunk-2EAAWOZ2.js} +4 -4
  128. package/dist/chunk-2EAAWOZ2.js.map +1 -0
  129. package/dist/{chunk-PNLM35GU.js → chunk-2JNHWKQK.js} +5 -5
  130. package/dist/{chunk-IWOVENC3.js → chunk-2XX45PC5.js} +2 -2
  131. package/dist/{chunk-RZ2C5CAW.js → chunk-2ZIHZLF5.js} +2 -2
  132. package/dist/{chunk-ZW5K4XCQ.js → chunk-34BZXJGT.js} +6 -6
  133. package/dist/{chunk-CHFHILTM.js → chunk-35S6QI5G.js} +2 -2
  134. package/dist/{chunk-KCAW6HRO.js → chunk-3AOQBR7N.js} +2 -2
  135. package/dist/{chunk-GVLZZCSX.js → chunk-4B5XUQQS.js} +3 -3
  136. package/dist/{chunk-ADHMNIWS.js → chunk-4CXEWFKO.js} +2 -2
  137. package/dist/{chunk-J4NXTSJY.js → chunk-4JFL62K3.js} +4 -4
  138. package/dist/chunk-4JFL62K3.js.map +1 -0
  139. package/dist/{chunk-XLYFOBBT.js → chunk-4PRZLII7.js} +19 -16
  140. package/dist/chunk-4PRZLII7.js.map +1 -0
  141. package/dist/{chunk-AMTFP7QA.js → chunk-4RDJMIWL.js} +16 -13
  142. package/dist/chunk-4RDJMIWL.js.map +1 -0
  143. package/dist/{chunk-PYIASGI7.js → chunk-4RWPGWJW.js} +39 -39
  144. package/dist/chunk-4RWPGWJW.js.map +1 -0
  145. package/dist/chunk-4T6UIYJB.js +77 -0
  146. package/dist/chunk-4T6UIYJB.js.map +1 -0
  147. package/dist/{chunk-HBICO6AX.js → chunk-4WNFOBTH.js} +26 -24
  148. package/dist/chunk-4WNFOBTH.js.map +1 -0
  149. package/dist/{chunk-JJSZP3TW.js → chunk-57JLS55D.js} +5 -5
  150. package/dist/{chunk-ZZM3DOEK.js → chunk-5HDYTTE7.js} +2 -2
  151. package/dist/{chunk-GEXM6DNR.js → chunk-5KGABAQB.js} +2 -2
  152. package/dist/{chunk-3A22SBIU.js → chunk-67O4GPJJ.js} +8 -4
  153. package/dist/chunk-67O4GPJJ.js.map +1 -0
  154. package/dist/{chunk-D5X4FRYX.js → chunk-6JNQLW5L.js} +2 -2
  155. package/dist/{chunk-NSJVQ5YJ.js → chunk-6KKQHJE7.js} +9 -4
  156. package/dist/chunk-6KKQHJE7.js.map +1 -0
  157. package/dist/{chunk-D2HKCPEH.js → chunk-6LOGBWLG.js} +9 -5
  158. package/dist/chunk-6LOGBWLG.js.map +1 -0
  159. package/dist/{chunk-TOXTJ7MU.js → chunk-6RLCBNDV.js} +8 -5
  160. package/dist/chunk-6RLCBNDV.js.map +1 -0
  161. package/dist/{chunk-K7WSPGI7.js → chunk-6WLHEZXI.js} +7 -7
  162. package/dist/chunk-6WLHEZXI.js.map +1 -0
  163. package/dist/{chunk-KJK2Q35C.js → chunk-75LOTMSN.js} +2 -2
  164. package/dist/{chunk-A6AKFPIQ.js → chunk-7EH4D6FU.js} +2 -2
  165. package/dist/{chunk-6SKXV236.js → chunk-7EM4THID.js} +9 -8
  166. package/dist/chunk-7EM4THID.js.map +1 -0
  167. package/dist/{chunk-7ZG7T2YN.js → chunk-7GHYCQCJ.js} +3 -3
  168. package/dist/{chunk-U4H6MGVE.js → chunk-A5UYPUS2.js} +7 -5
  169. package/dist/chunk-A5UYPUS2.js.map +1 -0
  170. package/dist/{chunk-QIKPGMMO.js → chunk-AER4245J.js} +2 -2
  171. package/dist/{chunk-2PBT2HQH.js → chunk-AUSUCZYR.js} +25 -24
  172. package/dist/chunk-AUSUCZYR.js.map +1 -0
  173. package/dist/{chunk-4CTLEUK3.js → chunk-AYLEZM6T.js} +2 -2
  174. package/dist/{chunk-JFBEZXNL.js → chunk-BAQBUKDU.js} +2 -2
  175. package/dist/{chunk-RQ5HZDBV.js → chunk-BN742L2M.js} +14 -8
  176. package/dist/chunk-BN742L2M.js.map +1 -0
  177. package/dist/{chunk-RKI3MRKX.js → chunk-BW62QQAG.js} +2 -2
  178. package/dist/{chunk-7EQCZO56.js → chunk-C3LZ3OGJ.js} +11 -11
  179. package/dist/chunk-C3LZ3OGJ.js.map +1 -0
  180. package/dist/{chunk-UL7L6MFT.js → chunk-C55AWF3U.js} +4 -4
  181. package/dist/{chunk-ST4YYVUK.js → chunk-C5RQBTRZ.js} +7 -3
  182. package/dist/chunk-C5RQBTRZ.js.map +1 -0
  183. package/dist/{chunk-GGWICBJD.js → chunk-CPAJYJUD.js} +2 -2
  184. package/dist/{chunk-5TJRJSJY.js → chunk-CQLPDY2J.js} +3 -3
  185. package/dist/{chunk-5UTAEHSB.js → chunk-CQPFSEJB.js} +2 -2
  186. package/dist/{chunk-SN2YMCTL.js → chunk-CS3KOKL3.js} +2 -2
  187. package/dist/{chunk-2HVNPWFV.js → chunk-D6KL74KI.js} +4 -10
  188. package/dist/chunk-D6KL74KI.js.map +1 -0
  189. package/dist/{chunk-TTAP5XFX.js → chunk-DJYL2LC6.js} +8 -3
  190. package/dist/chunk-DJYL2LC6.js.map +1 -0
  191. package/dist/{chunk-TQ2557I5.js → chunk-DUNG7D4B.js} +23 -25
  192. package/dist/chunk-DUNG7D4B.js.map +1 -0
  193. package/dist/{chunk-LWRI6HGT.js → chunk-ECNJGROX.js} +21 -19
  194. package/dist/chunk-ECNJGROX.js.map +1 -0
  195. package/dist/{chunk-FXNYV5Z6.js → chunk-F6D6HXZU.js} +3 -3
  196. package/dist/{chunk-7DN4UXJ3.js → chunk-FERUQ7OB.js} +14 -14
  197. package/dist/chunk-FERUQ7OB.js.map +1 -0
  198. package/dist/{chunk-TQBRWZA4.js → chunk-FFOQZRFC.js} +2 -2
  199. package/dist/{chunk-GXCOXJS3.js → chunk-FNG33MKA.js} +3 -3
  200. package/dist/{chunk-YH37X6JT.js → chunk-FNRPQE2D.js} +26 -25
  201. package/dist/chunk-FNRPQE2D.js.map +1 -0
  202. package/dist/{chunk-5SJWDABY.js → chunk-G3XLFQ2Z.js} +44 -43
  203. package/dist/chunk-G3XLFQ2Z.js.map +1 -0
  204. package/dist/{chunk-GW64UQXI.js → chunk-GHXFCMFP.js} +2 -2
  205. package/dist/{chunk-L3B36HA5.js → chunk-GRDPGHQJ.js} +2 -2
  206. package/dist/{chunk-6SS5C74Q.js → chunk-GS3RP2QE.js} +2 -2
  207. package/dist/{chunk-B2VXP2B2.js → chunk-GZT7MLLO.js} +2 -2
  208. package/dist/{chunk-AK2HOD6B.js → chunk-H5BEWPEY.js} +2 -2
  209. package/dist/{chunk-DY4BP5WA.js → chunk-HNPWZ3W2.js} +4 -4
  210. package/dist/{chunk-SYVNWXVW.js → chunk-HU7TX7RB.js} +3 -3
  211. package/dist/{chunk-WNUZK7NS.js → chunk-HVXIOIM5.js} +10 -8
  212. package/dist/chunk-HVXIOIM5.js.map +1 -0
  213. package/dist/{chunk-WPA26LXA.js → chunk-IKLOIONQ.js} +3 -3
  214. package/dist/{chunk-BXAL7OIS.js → chunk-JC22FNFA.js} +89 -88
  215. package/dist/chunk-JC22FNFA.js.map +1 -0
  216. package/dist/{chunk-DMWSXWCZ.js → chunk-JL75FJRG.js} +4 -4
  217. package/dist/{chunk-ZAFFKQQU.js → chunk-JLQGRZMN.js} +2 -2
  218. package/dist/{chunk-ZMC3N23A.js → chunk-JSD5TFDK.js} +6 -6
  219. package/dist/{chunk-NE6XUN5Z.js → chunk-JU4MSYYH.js} +2 -2
  220. package/dist/{chunk-OWA7GPWR.js → chunk-KN5J3NEZ.js} +6 -5
  221. package/dist/chunk-KN5J3NEZ.js.map +1 -0
  222. package/dist/{chunk-4GYEIWQP.js → chunk-LNHYBA4B.js} +11 -10
  223. package/dist/chunk-LNHYBA4B.js.map +1 -0
  224. package/dist/{chunk-QY4XNTNG.js → chunk-LP3JCXER.js} +4 -4
  225. package/dist/chunk-LP3JCXER.js.map +1 -0
  226. package/dist/{chunk-YBTC4XNO.js → chunk-LT4NEKXB.js} +3 -3
  227. package/dist/{chunk-WVC3BG6J.js → chunk-LXT3X33C.js} +11 -6
  228. package/dist/chunk-LXT3X33C.js.map +1 -0
  229. package/dist/{chunk-6KL2CJBO.js → chunk-MNHIK2OR.js} +2 -2
  230. package/dist/{chunk-CWDV64TD.js → chunk-N5GVW6RO.js} +5 -4
  231. package/dist/chunk-N5GVW6RO.js.map +1 -0
  232. package/dist/{chunk-JFEEV3XI.js → chunk-NB3FGWU4.js} +2 -2
  233. package/dist/{chunk-2UCLUDEB.js → chunk-NCPWLHZT.js} +2 -2
  234. package/dist/{chunk-DZNMS2SH.js → chunk-NDNYD4FG.js} +5 -5
  235. package/dist/{chunk-5IXHJXJX.js → chunk-NIF4IXQU.js} +5 -2
  236. package/dist/chunk-NIF4IXQU.js.map +1 -0
  237. package/dist/{chunk-EFV5QJNM.js → chunk-ORRI6FMN.js} +17 -14
  238. package/dist/chunk-ORRI6FMN.js.map +1 -0
  239. package/dist/{chunk-UFLTL2RJ.js → chunk-PH36XEB3.js} +2 -2
  240. package/dist/{chunk-4LQZH4PU.js → chunk-PMOEG36E.js} +2 -2
  241. package/dist/{chunk-EXZSHZRS.js → chunk-PWZHCBG3.js} +3 -3
  242. package/dist/{chunk-EFVOT3G5.js → chunk-PZ7PU4AP.js} +2 -2
  243. package/dist/{chunk-I62ALI7F.js → chunk-Q73PTVNO.js} +2 -2
  244. package/dist/{chunk-V74PXUQN.js → chunk-QEG3P5D4.js} +9 -9
  245. package/dist/{chunk-7LIXQZBG.js → chunk-QI5CRSOW.js} +3 -3
  246. package/dist/{chunk-V3LOHY4N.js → chunk-QKPD322X.js} +2 -2
  247. package/dist/{chunk-HAQMKV5P.js → chunk-QXSW3CNN.js} +15 -9
  248. package/dist/chunk-QXSW3CNN.js.map +1 -0
  249. package/dist/{chunk-LMXWI3DD.js → chunk-QYY37ECA.js} +5 -2
  250. package/dist/chunk-QYY37ECA.js.map +1 -0
  251. package/dist/{chunk-VECWMANF.js → chunk-RDCHT2WN.js} +7 -4
  252. package/dist/chunk-RDCHT2WN.js.map +1 -0
  253. package/dist/{chunk-35ETD7ML.js → chunk-RIEV4VXF.js} +9 -5
  254. package/dist/chunk-RIEV4VXF.js.map +1 -0
  255. package/dist/{chunk-PWF32ILG.js → chunk-SJO3K7SB.js} +3 -3
  256. package/dist/{chunk-TU3EGIKB.js → chunk-SSS64KYB.js} +3 -3
  257. package/dist/{chunk-SQYC57ZN.js → chunk-SYN46YL6.js} +2 -2
  258. package/dist/{chunk-DHBYO7AO.js → chunk-TCV3N44E.js} +2 -2
  259. package/dist/{chunk-E6RYO4QZ.js → chunk-THMT3G3L.js} +21 -15
  260. package/dist/chunk-THMT3G3L.js.map +1 -0
  261. package/dist/{chunk-JCBIPBGZ.js → chunk-TU5A2CV7.js} +19 -12
  262. package/dist/chunk-TU5A2CV7.js.map +1 -0
  263. package/dist/{chunk-YESTO24O.js → chunk-TXEN3QJ4.js} +8 -3
  264. package/dist/chunk-TXEN3QJ4.js.map +1 -0
  265. package/dist/{chunk-DVGBFT6O.js → chunk-UAVSBSV5.js} +2 -2
  266. package/dist/{chunk-B7BNNSM2.js → chunk-UZ6AUTE6.js} +4 -4
  267. package/dist/{chunk-4WQ3YXQL.js → chunk-VT5HQ2AD.js} +2 -2
  268. package/dist/{chunk-IBGX6H4J.js → chunk-VURQZBFH.js} +8 -4
  269. package/dist/chunk-VURQZBFH.js.map +1 -0
  270. package/dist/{chunk-7BZTZ2WG.js → chunk-VY2BMSHN.js} +8 -7
  271. package/dist/chunk-VY2BMSHN.js.map +1 -0
  272. package/dist/{chunk-SX3MEC3Q.js → chunk-VZIB5W5L.js} +2 -2
  273. package/dist/{chunk-HC5ZSCRG.js → chunk-W5TI46QN.js} +18 -14
  274. package/dist/chunk-W5TI46QN.js.map +1 -0
  275. package/dist/{chunk-X2AKLDPW.js → chunk-WE3LJPRN.js} +2 -2
  276. package/dist/{chunk-SE6ERQY5.js → chunk-WVZBYTIK.js} +6 -2
  277. package/dist/chunk-WVZBYTIK.js.map +1 -0
  278. package/dist/{chunk-CSSCGM27.js → chunk-X3OWMTLO.js} +1 -2
  279. package/dist/chunk-X3OWMTLO.js.map +1 -0
  280. package/dist/{chunk-CMK4DJDR.js → chunk-XLTHZI5W.js} +28 -20
  281. package/dist/chunk-XLTHZI5W.js.map +1 -0
  282. package/dist/{chunk-FZ4YTEP2.js → chunk-XR46FSOH.js} +2 -2
  283. package/dist/{chunk-CJHP6E34.js → chunk-YAFBUYVW.js} +9 -6
  284. package/dist/chunk-YAFBUYVW.js.map +1 -0
  285. package/dist/{chunk-6DN4ZULV.js → chunk-YOKUDQIJ.js} +1 -2
  286. package/dist/chunk-YOKUDQIJ.js.map +1 -0
  287. package/dist/{chunk-GE2EKMDT.js → chunk-YZ2DMP23.js} +4 -4
  288. package/dist/{chunk-GE2EKMDT.js.map → chunk-YZ2DMP23.js.map} +1 -1
  289. package/dist/{chunk-65CEXQ4L.js → chunk-Z6WSW6B4.js} +11 -7
  290. package/dist/chunk-Z6WSW6B4.js.map +1 -0
  291. package/dist/{chunk-XWWFBH2G.js → chunk-ZXSWXE6U.js} +8 -5
  292. package/dist/chunk-ZXSWXE6U.js.map +1 -0
  293. package/dist/data-display/CardKit.js +4 -4
  294. package/dist/data-display/DataViews.js +54 -54
  295. package/dist/data-display/FleetMap.js +2 -2
  296. package/dist/feedback/ConfirmAction.js +3 -3
  297. package/dist/feedback/NotificationStatusNotice.js +3 -3
  298. package/dist/form/AddressAutocomplete.js +6 -6
  299. package/dist/form/Autocomplete.js +3 -2
  300. package/dist/form/Button.js +2 -2
  301. package/dist/form/CategorySelect.js +10 -10
  302. package/dist/form/CepField.js +4 -4
  303. package/dist/form/Checkbox.js +1 -1
  304. package/dist/form/CodeEditor.js +2 -2
  305. package/dist/form/Command.js +4 -4
  306. package/dist/form/CreatableSelect.js +2 -2
  307. package/dist/form/DateRangePicker.js +2 -2
  308. package/dist/form/Form.js +1 -1
  309. package/dist/form/HeaderActions.js +1 -1
  310. package/dist/form/Input.js +3 -2
  311. package/dist/form/InputOTP.js +2 -2
  312. package/dist/form/Label.js +2 -2
  313. package/dist/form/Menubar.js +4 -4
  314. package/dist/form/PasswordStrength.js +1 -1
  315. package/dist/form/PhoneInput.js +1 -1
  316. package/dist/form/RadioGroup.js +4 -4
  317. package/dist/form/RichTextEditor.js +2 -2
  318. package/dist/form/SearchPalette.js +2 -2
  319. package/dist/form/Select.js +2 -1
  320. package/dist/form/Slider.js +3 -3
  321. package/dist/form/Switch.js +4 -4
  322. package/dist/form/Textarea.js +2 -2
  323. package/dist/form/Toggle.js +2 -2
  324. package/dist/form/ToggleGroup.js +1 -1
  325. package/dist/form/UploadButton.js +2 -2
  326. package/dist/form/total-form.js +25 -25
  327. package/dist/layout/Dashboard.js +3 -3
  328. package/dist/navigation/AppHeader.js +3 -3
  329. package/dist/social-login-button.js +3 -3
  330. package/dist/types/components/form/AddressAutocomplete/AddressFallbackField.d.ts.map +1 -1
  331. package/dist/types/components/form/AddressAutocomplete/AddressInputField.d.ts.map +1 -1
  332. package/dist/types/components/form/AddressAutocomplete/AddressSuggestionsPaper.d.ts.map +1 -1
  333. package/dist/types/components/form/AddressAutocomplete/AddressTextField.d.ts.map +1 -1
  334. package/dist/types/components/form/Autocomplete/Autocomplete.parts.d.ts.map +1 -1
  335. package/dist/types/components/form/Button/Button.styles.d.ts +1 -1
  336. package/dist/types/components/form/Button/Button.styles.d.ts.map +1 -1
  337. package/dist/types/components/form/CategorySelect/CategoryPanelFoot.d.ts.map +1 -1
  338. package/dist/types/components/form/CategorySelect/CategoryPanelHead.d.ts.map +1 -1
  339. package/dist/types/components/form/CategorySelect/CategoryPanelList.d.ts.map +1 -1
  340. package/dist/types/components/form/CategorySelect/CategoryPanelSurface.d.ts.map +1 -1
  341. package/dist/types/components/form/CategorySelect/CategoryRows.d.ts.map +1 -1
  342. package/dist/types/components/form/CategorySelect/CategorySelect.styles.d.ts +26 -24
  343. package/dist/types/components/form/CategorySelect/CategorySelect.styles.d.ts.map +1 -1
  344. package/dist/types/components/form/CategorySelect/CategoryTrigger.d.ts.map +1 -1
  345. package/dist/types/components/form/Checkbox/Checkbox.d.ts.map +1 -1
  346. package/dist/types/components/form/CodeEditor/CodeEditor.helpers.d.ts +1 -1
  347. package/dist/types/components/form/CodeEditor/CodeEditor.helpers.d.ts.map +1 -1
  348. package/dist/types/components/form/CodeEditor/CodeEditor.types.d.ts +1 -1
  349. package/dist/types/components/form/CodeEditor/CodeEditor.types.d.ts.map +1 -1
  350. package/dist/types/components/form/Command/Command.d.ts.map +1 -1
  351. package/dist/types/components/form/Command/Command.hooks.d.ts +1 -1
  352. package/dist/types/components/form/Command/Command.hooks.d.ts.map +1 -1
  353. package/dist/types/components/form/Command/Command.parts.d.ts.map +1 -1
  354. package/dist/types/components/form/CreatableSelect/CreatableSelect.d.ts.map +1 -1
  355. package/dist/types/components/form/DateRangePicker/DateRangePicker.d.ts.map +1 -1
  356. package/dist/types/components/form/DateRangePicker/DateRangePickerQuickList.d.ts.map +1 -1
  357. package/dist/types/components/form/Form/Form.d.ts.map +1 -1
  358. package/dist/types/components/form/HeaderActions/HeaderActions.d.ts.map +1 -1
  359. package/dist/types/components/form/Input/Input.d.ts.map +1 -1
  360. package/dist/types/components/form/Input/Input.styles.d.ts.map +1 -1
  361. package/dist/types/components/form/Label/Label.styles.d.ts +2 -2
  362. package/dist/types/components/form/Label/Label.styles.d.ts.map +1 -1
  363. package/dist/types/components/form/Menubar/Menubar.toolbar.d.ts +1 -1
  364. package/dist/types/components/form/Menubar/Menubar.toolbar.d.ts.map +1 -1
  365. package/dist/types/components/form/PasswordStrength/PasswordStrength.d.ts.map +1 -1
  366. package/dist/types/components/form/RadioGroup/RadioGroup.animations.d.ts +3 -2
  367. package/dist/types/components/form/RadioGroup/RadioGroup.animations.d.ts.map +1 -1
  368. package/dist/types/components/form/RadioGroup/RadioGroup.styles.d.ts.map +1 -1
  369. package/dist/types/components/form/RichTextEditor/RichTextEditor.d.ts.map +1 -1
  370. package/dist/types/components/form/RichTextEditor/RichTextEditorToolbar.d.ts.map +1 -1
  371. package/dist/types/components/form/SearchPalette/SearchPalette.parts.d.ts +1 -1
  372. package/dist/types/components/form/SearchPalette/SearchPalette.parts.d.ts.map +1 -1
  373. package/dist/types/components/form/Select/Select.d.ts.map +1 -1
  374. package/dist/types/components/form/Slider/Slider.animations.d.ts +2 -1
  375. package/dist/types/components/form/Slider/Slider.animations.d.ts.map +1 -1
  376. package/dist/types/components/form/Slider/Slider.styles.d.ts.map +1 -1
  377. package/dist/types/components/form/Switch/Switch.animations.d.ts +2 -1
  378. package/dist/types/components/form/Switch/Switch.animations.d.ts.map +1 -1
  379. package/dist/types/components/form/Switch/Switch.styles.d.ts.map +1 -1
  380. package/dist/types/components/form/Textarea/Textarea.d.ts.map +1 -1
  381. package/dist/types/components/form/Textarea/Textarea.styles.d.ts +1 -1
  382. package/dist/types/components/form/Textarea/Textarea.styles.d.ts.map +1 -1
  383. package/dist/types/components/form/Toggle/Toggle.d.ts.map +1 -1
  384. package/dist/types/components/form/Toggle/Toggle.styles.d.ts.map +1 -1
  385. package/dist/types/components/form/ToggleGroup/ToggleGroup.d.ts.map +1 -1
  386. package/dist/types/components/form/UploadButton/UploadButton.parts.d.ts.map +1 -1
  387. package/dist/user-avatar.js +3 -3
  388. package/package.json +1 -1
  389. package/src/components/form/AddressAutocomplete/AddressFallbackField.tsx +5 -1
  390. package/src/components/form/AddressAutocomplete/AddressInputField.tsx +36 -29
  391. package/src/components/form/AddressAutocomplete/AddressSuggestionsPaper.tsx +4 -2
  392. package/src/components/form/AddressAutocomplete/AddressTextField.tsx +4 -3
  393. package/src/components/form/Autocomplete/Autocomplete.parts.tsx +10 -7
  394. package/src/components/form/Button/Button.styles.ts +28 -25
  395. package/src/components/form/Button/Button.tsx +2 -2
  396. package/src/components/form/CategorySelect/CategoryPanelFoot.tsx +5 -4
  397. package/src/components/form/CategorySelect/CategoryPanelHead.tsx +13 -12
  398. package/src/components/form/CategorySelect/CategoryPanelList.tsx +3 -2
  399. package/src/components/form/CategorySelect/CategoryPanelSurface.tsx +2 -1
  400. package/src/components/form/CategorySelect/CategoryRows.tsx +4 -3
  401. package/src/components/form/CategorySelect/CategorySelect.styles.ts +98 -96
  402. package/src/components/form/CategorySelect/CategoryTrigger.tsx +5 -2
  403. package/src/components/form/Checkbox/Checkbox.tsx +21 -15
  404. package/src/components/form/CodeEditor/CodeEditor.helpers.ts +0 -2
  405. package/src/components/form/CodeEditor/CodeEditor.md +1 -1
  406. package/src/components/form/CodeEditor/CodeEditor.tsx +5 -5
  407. package/src/components/form/CodeEditor/CodeEditor.types.ts +1 -1
  408. package/src/components/form/Command/Command.hooks.ts +0 -2
  409. package/src/components/form/Command/Command.parts.tsx +7 -2
  410. package/src/components/form/Command/Command.styles.ts +11 -11
  411. package/src/components/form/Command/Command.tsx +14 -5
  412. package/src/components/form/CreatableSelect/CreatableSelect.tsx +12 -8
  413. package/src/components/form/DateRangePicker/DateRangePicker.tsx +10 -8
  414. package/src/components/form/DateRangePicker/DateRangePickerQuickList.tsx +8 -4
  415. package/src/components/form/Form/Form.tsx +6 -10
  416. package/src/components/form/HeaderActions/HeaderActions.tsx +2 -1
  417. package/src/components/form/Input/Input.styles.ts +17 -16
  418. package/src/components/form/Input/Input.tsx +4 -2
  419. package/src/components/form/InputOTP/InputOTP.styles.ts +3 -3
  420. package/src/components/form/Label/Label.styles.ts +8 -8
  421. package/src/components/form/Menubar/Menubar.item.tsx +2 -2
  422. package/src/components/form/Menubar/Menubar.styles.ts +13 -13
  423. package/src/components/form/Menubar/Menubar.toolbar.tsx +4 -2
  424. package/src/components/form/PasswordStrength/PasswordStrength.tsx +19 -18
  425. package/src/components/form/PhoneInput/PhoneInput.tsx +9 -9
  426. package/src/components/form/RadioGroup/RadioGroup.animations.ts +9 -6
  427. package/src/components/form/RadioGroup/RadioGroup.styles.ts +45 -43
  428. package/src/components/form/RichTextEditor/RichTextEditor.tsx +7 -6
  429. package/src/components/form/RichTextEditor/RichTextEditorToolbar.tsx +3 -1
  430. package/src/components/form/SearchPalette/SearchPalette.parts.tsx +8 -6
  431. package/src/components/form/Select/Select.tsx +14 -12
  432. package/src/components/form/Slider/Slider.animations.ts +7 -4
  433. package/src/components/form/Slider/Slider.styles.ts +43 -42
  434. package/src/components/form/Switch/Switch.animations.ts +7 -4
  435. package/src/components/form/Switch/Switch.parts.tsx +2 -2
  436. package/src/components/form/Switch/Switch.styles.ts +26 -22
  437. package/src/components/form/Textarea/Textarea.styles.ts +13 -12
  438. package/src/components/form/Textarea/Textarea.tsx +28 -22
  439. package/src/components/form/Textarea/TextareaRichEditor.tsx +10 -10
  440. package/src/components/form/Toggle/Toggle.styles.ts +29 -26
  441. package/src/components/form/Toggle/Toggle.tsx +5 -2
  442. package/src/components/form/ToggleGroup/ToggleGroup.tsx +18 -15
  443. package/src/components/form/UploadButton/UploadButton.parts.tsx +6 -5
  444. package/dist/chunk-2HVNPWFV.js.map +0 -1
  445. package/dist/chunk-2PBT2HQH.js.map +0 -1
  446. package/dist/chunk-35ETD7ML.js.map +0 -1
  447. package/dist/chunk-3A22SBIU.js.map +0 -1
  448. package/dist/chunk-4GYEIWQP.js.map +0 -1
  449. package/dist/chunk-5IXHJXJX.js.map +0 -1
  450. package/dist/chunk-5SJWDABY.js.map +0 -1
  451. package/dist/chunk-65CEXQ4L.js.map +0 -1
  452. package/dist/chunk-6DN4ZULV.js.map +0 -1
  453. package/dist/chunk-6M33XQLZ.js +0 -70
  454. package/dist/chunk-6M33XQLZ.js.map +0 -1
  455. package/dist/chunk-6SKXV236.js.map +0 -1
  456. package/dist/chunk-7BZTZ2WG.js.map +0 -1
  457. package/dist/chunk-7DN4UXJ3.js.map +0 -1
  458. package/dist/chunk-7EQCZO56.js.map +0 -1
  459. package/dist/chunk-AMTFP7QA.js.map +0 -1
  460. package/dist/chunk-BXAL7OIS.js.map +0 -1
  461. package/dist/chunk-CJHP6E34.js.map +0 -1
  462. package/dist/chunk-CMK4DJDR.js.map +0 -1
  463. package/dist/chunk-CSSCGM27.js.map +0 -1
  464. package/dist/chunk-CWDV64TD.js.map +0 -1
  465. package/dist/chunk-D2HKCPEH.js.map +0 -1
  466. package/dist/chunk-E6RYO4QZ.js.map +0 -1
  467. package/dist/chunk-EFV5QJNM.js.map +0 -1
  468. package/dist/chunk-HAQMKV5P.js.map +0 -1
  469. package/dist/chunk-HBICO6AX.js.map +0 -1
  470. package/dist/chunk-HC5ZSCRG.js.map +0 -1
  471. package/dist/chunk-IBGX6H4J.js.map +0 -1
  472. package/dist/chunk-J4NXTSJY.js.map +0 -1
  473. package/dist/chunk-JCBIPBGZ.js.map +0 -1
  474. package/dist/chunk-K7WSPGI7.js.map +0 -1
  475. package/dist/chunk-KH25WUSX.js.map +0 -1
  476. package/dist/chunk-LMXWI3DD.js.map +0 -1
  477. package/dist/chunk-LWRI6HGT.js.map +0 -1
  478. package/dist/chunk-NSJVQ5YJ.js.map +0 -1
  479. package/dist/chunk-OWA7GPWR.js.map +0 -1
  480. package/dist/chunk-PYIASGI7.js.map +0 -1
  481. package/dist/chunk-QY4XNTNG.js.map +0 -1
  482. package/dist/chunk-RQ5HZDBV.js.map +0 -1
  483. package/dist/chunk-SE6ERQY5.js.map +0 -1
  484. package/dist/chunk-ST4YYVUK.js.map +0 -1
  485. package/dist/chunk-TOXTJ7MU.js.map +0 -1
  486. package/dist/chunk-TQ2557I5.js.map +0 -1
  487. package/dist/chunk-TTAP5XFX.js.map +0 -1
  488. package/dist/chunk-U4H6MGVE.js.map +0 -1
  489. package/dist/chunk-VECWMANF.js.map +0 -1
  490. package/dist/chunk-WNUZK7NS.js.map +0 -1
  491. package/dist/chunk-WVC3BG6J.js.map +0 -1
  492. package/dist/chunk-XLYFOBBT.js.map +0 -1
  493. package/dist/chunk-XWWFBH2G.js.map +0 -1
  494. package/dist/chunk-YESTO24O.js.map +0 -1
  495. package/dist/chunk-YH37X6JT.js.map +0 -1
  496. /package/dist/{chunk-343OLRFT.js.map → chunk-2BIVCYTO.js.map} +0 -0
  497. /package/dist/{chunk-PNLM35GU.js.map → chunk-2JNHWKQK.js.map} +0 -0
  498. /package/dist/{chunk-IWOVENC3.js.map → chunk-2XX45PC5.js.map} +0 -0
  499. /package/dist/{chunk-RZ2C5CAW.js.map → chunk-2ZIHZLF5.js.map} +0 -0
  500. /package/dist/{chunk-ZW5K4XCQ.js.map → chunk-34BZXJGT.js.map} +0 -0
  501. /package/dist/{chunk-CHFHILTM.js.map → chunk-35S6QI5G.js.map} +0 -0
  502. /package/dist/{chunk-KCAW6HRO.js.map → chunk-3AOQBR7N.js.map} +0 -0
  503. /package/dist/{chunk-GVLZZCSX.js.map → chunk-4B5XUQQS.js.map} +0 -0
  504. /package/dist/{chunk-ADHMNIWS.js.map → chunk-4CXEWFKO.js.map} +0 -0
  505. /package/dist/{chunk-JJSZP3TW.js.map → chunk-57JLS55D.js.map} +0 -0
  506. /package/dist/{chunk-ZZM3DOEK.js.map → chunk-5HDYTTE7.js.map} +0 -0
  507. /package/dist/{chunk-GEXM6DNR.js.map → chunk-5KGABAQB.js.map} +0 -0
  508. /package/dist/{chunk-D5X4FRYX.js.map → chunk-6JNQLW5L.js.map} +0 -0
  509. /package/dist/{chunk-KJK2Q35C.js.map → chunk-75LOTMSN.js.map} +0 -0
  510. /package/dist/{chunk-A6AKFPIQ.js.map → chunk-7EH4D6FU.js.map} +0 -0
  511. /package/dist/{chunk-7ZG7T2YN.js.map → chunk-7GHYCQCJ.js.map} +0 -0
  512. /package/dist/{chunk-QIKPGMMO.js.map → chunk-AER4245J.js.map} +0 -0
  513. /package/dist/{chunk-4CTLEUK3.js.map → chunk-AYLEZM6T.js.map} +0 -0
  514. /package/dist/{chunk-JFBEZXNL.js.map → chunk-BAQBUKDU.js.map} +0 -0
  515. /package/dist/{chunk-RKI3MRKX.js.map → chunk-BW62QQAG.js.map} +0 -0
  516. /package/dist/{chunk-UL7L6MFT.js.map → chunk-C55AWF3U.js.map} +0 -0
  517. /package/dist/{chunk-GGWICBJD.js.map → chunk-CPAJYJUD.js.map} +0 -0
  518. /package/dist/{chunk-5TJRJSJY.js.map → chunk-CQLPDY2J.js.map} +0 -0
  519. /package/dist/{chunk-5UTAEHSB.js.map → chunk-CQPFSEJB.js.map} +0 -0
  520. /package/dist/{chunk-SN2YMCTL.js.map → chunk-CS3KOKL3.js.map} +0 -0
  521. /package/dist/{chunk-FXNYV5Z6.js.map → chunk-F6D6HXZU.js.map} +0 -0
  522. /package/dist/{chunk-TQBRWZA4.js.map → chunk-FFOQZRFC.js.map} +0 -0
  523. /package/dist/{chunk-GXCOXJS3.js.map → chunk-FNG33MKA.js.map} +0 -0
  524. /package/dist/{chunk-GW64UQXI.js.map → chunk-GHXFCMFP.js.map} +0 -0
  525. /package/dist/{chunk-L3B36HA5.js.map → chunk-GRDPGHQJ.js.map} +0 -0
  526. /package/dist/{chunk-6SS5C74Q.js.map → chunk-GS3RP2QE.js.map} +0 -0
  527. /package/dist/{chunk-B2VXP2B2.js.map → chunk-GZT7MLLO.js.map} +0 -0
  528. /package/dist/{chunk-AK2HOD6B.js.map → chunk-H5BEWPEY.js.map} +0 -0
  529. /package/dist/{chunk-DY4BP5WA.js.map → chunk-HNPWZ3W2.js.map} +0 -0
  530. /package/dist/{chunk-SYVNWXVW.js.map → chunk-HU7TX7RB.js.map} +0 -0
  531. /package/dist/{chunk-WPA26LXA.js.map → chunk-IKLOIONQ.js.map} +0 -0
  532. /package/dist/{chunk-DMWSXWCZ.js.map → chunk-JL75FJRG.js.map} +0 -0
  533. /package/dist/{chunk-ZAFFKQQU.js.map → chunk-JLQGRZMN.js.map} +0 -0
  534. /package/dist/{chunk-ZMC3N23A.js.map → chunk-JSD5TFDK.js.map} +0 -0
  535. /package/dist/{chunk-NE6XUN5Z.js.map → chunk-JU4MSYYH.js.map} +0 -0
  536. /package/dist/{chunk-YBTC4XNO.js.map → chunk-LT4NEKXB.js.map} +0 -0
  537. /package/dist/{chunk-6KL2CJBO.js.map → chunk-MNHIK2OR.js.map} +0 -0
  538. /package/dist/{chunk-JFEEV3XI.js.map → chunk-NB3FGWU4.js.map} +0 -0
  539. /package/dist/{chunk-2UCLUDEB.js.map → chunk-NCPWLHZT.js.map} +0 -0
  540. /package/dist/{chunk-DZNMS2SH.js.map → chunk-NDNYD4FG.js.map} +0 -0
  541. /package/dist/{chunk-UFLTL2RJ.js.map → chunk-PH36XEB3.js.map} +0 -0
  542. /package/dist/{chunk-4LQZH4PU.js.map → chunk-PMOEG36E.js.map} +0 -0
  543. /package/dist/{chunk-EXZSHZRS.js.map → chunk-PWZHCBG3.js.map} +0 -0
  544. /package/dist/{chunk-EFVOT3G5.js.map → chunk-PZ7PU4AP.js.map} +0 -0
  545. /package/dist/{chunk-I62ALI7F.js.map → chunk-Q73PTVNO.js.map} +0 -0
  546. /package/dist/{chunk-V74PXUQN.js.map → chunk-QEG3P5D4.js.map} +0 -0
  547. /package/dist/{chunk-7LIXQZBG.js.map → chunk-QI5CRSOW.js.map} +0 -0
  548. /package/dist/{chunk-V3LOHY4N.js.map → chunk-QKPD322X.js.map} +0 -0
  549. /package/dist/{chunk-PWF32ILG.js.map → chunk-SJO3K7SB.js.map} +0 -0
  550. /package/dist/{chunk-TU3EGIKB.js.map → chunk-SSS64KYB.js.map} +0 -0
  551. /package/dist/{chunk-SQYC57ZN.js.map → chunk-SYN46YL6.js.map} +0 -0
  552. /package/dist/{chunk-DHBYO7AO.js.map → chunk-TCV3N44E.js.map} +0 -0
  553. /package/dist/{chunk-DVGBFT6O.js.map → chunk-UAVSBSV5.js.map} +0 -0
  554. /package/dist/{chunk-B7BNNSM2.js.map → chunk-UZ6AUTE6.js.map} +0 -0
  555. /package/dist/{chunk-4WQ3YXQL.js.map → chunk-VT5HQ2AD.js.map} +0 -0
  556. /package/dist/{chunk-SX3MEC3Q.js.map → chunk-VZIB5W5L.js.map} +0 -0
  557. /package/dist/{chunk-X2AKLDPW.js.map → chunk-WE3LJPRN.js.map} +0 -0
  558. /package/dist/{chunk-FZ4YTEP2.js.map → chunk-XR46FSOH.js.map} +0 -0
@@ -1,8 +1,13 @@
1
+ import {
2
+ rem
3
+ } from "./chunk-YKCAJ2TN.js";
4
+
1
5
  // src/components/form/Command/Command.parts.tsx
2
6
  import Box from "@mui/material/Box/index.js";
3
7
  import CircularProgress from "@mui/material/CircularProgress/index.js";
4
8
  import Divider from "@mui/material/Divider/index.js";
5
9
  import Typography from "@mui/material/Typography/index.js";
10
+ import { useTheme } from "@mui/material/styles/index.js";
6
11
  import { jsx, jsxs } from "react/jsx-runtime";
7
12
  var CommandEmpty = ({
8
13
  message = "No results found",
@@ -28,25 +33,28 @@ var CommandLoading = ({
28
33
  className,
29
34
  style,
30
35
  dataTestId
31
- }) => /* @__PURE__ */ jsxs(
32
- Box,
33
- {
34
- className,
35
- "data-testid": dataTestId,
36
- sx: {
37
- p: 4,
38
- display: "flex",
39
- flexDirection: "column",
40
- alignItems: "center",
41
- gap: 2,
42
- ...style
43
- },
44
- children: [
45
- /* @__PURE__ */ jsx(CircularProgress, { size: 24 }),
46
- /* @__PURE__ */ jsx(Typography, { variant: "body2", color: "text.secondary", children: message })
47
- ]
48
- }
49
- );
36
+ }) => {
37
+ const theme = useTheme();
38
+ return /* @__PURE__ */ jsxs(
39
+ Box,
40
+ {
41
+ className,
42
+ "data-testid": dataTestId,
43
+ sx: {
44
+ p: 4,
45
+ display: "flex",
46
+ flexDirection: "column",
47
+ alignItems: "center",
48
+ gap: 2,
49
+ ...style
50
+ },
51
+ children: [
52
+ /* @__PURE__ */ jsx(CircularProgress, { size: rem(theme, 24) }),
53
+ /* @__PURE__ */ jsx(Typography, { variant: "body2", color: "text.secondary", children: message })
54
+ ]
55
+ }
56
+ );
57
+ };
50
58
  var CommandSeparator = ({
51
59
  className,
52
60
  style
@@ -57,4 +65,4 @@ export {
57
65
  CommandLoading,
58
66
  CommandSeparator
59
67
  };
60
- //# sourceMappingURL=chunk-CMK4DJDR.js.map
68
+ //# sourceMappingURL=chunk-XLTHZI5W.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/form/Command/Command.parts.tsx"],"sourcesContent":["import Box from '@mui/material/Box/index.js';\nimport CircularProgress from '@mui/material/CircularProgress/index.js';\nimport Divider from '@mui/material/Divider/index.js';\nimport Typography from '@mui/material/Typography/index.js';\nimport { useTheme } from '@mui/material/styles/index.js';\nimport React from 'react';\n\nimport type {\n CommandEmptyProps,\n CommandLoadingProps,\n CommandSeparatorProps,\n} from './Command.types';\nimport { rem } from '../../../tokens/relative';\n\nexport const CommandEmpty: React.FC<CommandEmptyProps> = ({\n message = 'No results found',\n className,\n style,\n dataTestId,\n}) => (\n <Box\n className={className}\n data-testid={dataTestId}\n sx={{\n p: 4,\n textAlign: 'center',\n color: 'text.secondary',\n ...style,\n }}\n >\n <Typography variant=\"body2\">{message}</Typography>\n </Box>\n );\n\nexport const CommandLoading: React.FC<CommandLoadingProps> = ({\n message = 'Loading...',\n className,\n style,\n dataTestId,\n}) => {\n const theme = useTheme();\n return (\n <Box\n className={className}\n data-testid={dataTestId}\n sx={{\n p: 4,\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n gap: 2,\n ...style,\n }}\n >\n <CircularProgress size={rem(theme, 24)} />\n <Typography variant=\"body2\" color=\"text.secondary\">\n {message}\n </Typography>\n </Box>\n );\n};\n\nexport const CommandSeparator: React.FC<CommandSeparatorProps> = ({\n className,\n style,\n}) => <Divider className={className} sx={{ my: 1, ...style }} />;"],"mappings":";;;;;AAAA,OAAO,SAAS;AAChB,OAAO,sBAAsB;AAC7B,OAAO,aAAa;AACpB,OAAO,gBAAgB;AACvB,SAAS,gBAAgB;AA0BnB,cAYF,YAZE;AAhBC,IAAM,eAA4C,CAAC;AAAA,EACxD,UAAU;AAAA,EACV;AAAA,EACA;AAAA,EACA;AACF,MACI;AAAA,EAAC;AAAA;AAAA,IACC;AAAA,IACA,eAAa;AAAA,IACb,IAAI;AAAA,MACF,GAAG;AAAA,MACH,WAAW;AAAA,MACX,OAAO;AAAA,MACP,GAAG;AAAA,IACL;AAAA,IAEA,8BAAC,cAAW,SAAQ,SAAS,mBAAQ;AAAA;AACvC;AAGG,IAAM,iBAAgD,CAAC;AAAA,EAC5D,UAAU;AAAA,EACV;AAAA,EACA;AAAA,EACA;AACF,MAAM;AACJ,QAAM,QAAQ,SAAS;AACvB,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,eAAa;AAAA,MACb,IAAI;AAAA,QACF,GAAG;AAAA,QACH,SAAS;AAAA,QACT,eAAe;AAAA,QACf,YAAY;AAAA,QACZ,KAAK;AAAA,QACL,GAAG;AAAA,MACL;AAAA,MAEA;AAAA,4BAAC,oBAAiB,MAAM,IAAI,OAAO,EAAE,GAAG;AAAA,QACxC,oBAAC,cAAW,SAAQ,SAAQ,OAAM,kBAC/B,mBACH;AAAA;AAAA;AAAA,EACF;AAEJ;AAEO,IAAM,mBAAoD,CAAC;AAAA,EAChE;AAAA,EACA;AACF,MAAM,oBAAC,WAAQ,WAAsB,IAAI,EAAE,IAAI,GAAG,GAAG,MAAM,GAAG;","names":[]}
@@ -6,7 +6,7 @@ import {
6
6
  } from "./chunk-6DPAWXZ3.js";
7
7
  import {
8
8
  Button
9
- } from "./chunk-KH25WUSX.js";
9
+ } from "./chunk-2EAAWOZ2.js";
10
10
  import {
11
11
  Text
12
12
  } from "./chunk-WTOYEWW6.js";
@@ -297,4 +297,4 @@ export {
297
297
  ViewHeader,
298
298
  ViewFooter
299
299
  };
300
- //# sourceMappingURL=chunk-FZ4YTEP2.js.map
300
+ //# sourceMappingURL=chunk-XR46FSOH.js.map
@@ -1,4 +1,5 @@
1
1
  import {
2
+ rem,
2
3
  sxRem
3
4
  } from "./chunk-YKCAJ2TN.js";
4
5
 
@@ -14,6 +15,7 @@ import List from "@mui/material/List/index.js";
14
15
  import ListItemButton from "@mui/material/ListItemButton/index.js";
15
16
  import Paper from "@mui/material/Paper/index.js";
16
17
  import Typography from "@mui/material/Typography/index.js";
18
+ import { useTheme } from "@mui/material/styles/index.js";
17
19
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
18
20
  function highlight(text, query) {
19
21
  const q = query.trim();
@@ -34,20 +36,21 @@ function Lead({ lead }) {
34
36
  component: "img",
35
37
  src: lead.src,
36
38
  alt: lead.alt ?? "",
37
- sx: { width: 32, height: 32, borderRadius: 1, objectFit: "cover", flexShrink: 0 }
39
+ sx: { width: sxRem(32), height: sxRem(32), borderRadius: 1, objectFit: "cover", flexShrink: 0 }
38
40
  }
39
41
  );
40
42
  }
41
43
  if (lead.kind === "avatar") {
42
- return /* @__PURE__ */ jsx(Avatar, { src: lead.src, alt: lead.alt ?? "", sx: { width: 32, height: 32, fontSize: sxRem(13.6) }, children: lead.fallback });
44
+ return /* @__PURE__ */ jsx(Avatar, { src: lead.src, alt: lead.alt ?? "", sx: { width: sxRem(32), height: sxRem(32), fontSize: sxRem(13.6) }, children: lead.fallback });
43
45
  }
44
- return /* @__PURE__ */ jsx(Box, { sx: { display: "flex", width: 32, justifyContent: "center", flexShrink: 0, color: "text.secondary" }, children: lead.node });
46
+ return /* @__PURE__ */ jsx(Box, { sx: { display: "flex", width: sxRem(32), justifyContent: "center", flexShrink: 0, color: "text.secondary" }, children: lead.node });
45
47
  }
46
48
  function ghostRemainder(topPrimary, query) {
47
49
  if (!query || !topPrimary) return "";
48
50
  return topPrimary.toLowerCase().startsWith(query.toLowerCase()) && topPrimary.length > query.length ? topPrimary.slice(query.length) : "";
49
51
  }
50
52
  function PaletteInput(props) {
53
+ const theme = useTheme();
51
54
  return /* @__PURE__ */ jsxs(Box, { sx: { display: "flex", alignItems: "center", gap: 1.25, px: 2, py: 1.5 }, children: [
52
55
  /* @__PURE__ */ jsx(SearchIcon, { fontSize: "small", sx: { color: "text.secondary", flexShrink: 0 } }),
53
56
  /* @__PURE__ */ jsxs(Box, { sx: { position: "relative", flex: 1, minWidth: 0 }, children: [
@@ -90,7 +93,7 @@ function PaletteInput(props) {
90
93
  }
91
94
  )
92
95
  ] }),
93
- props.isLoading && /* @__PURE__ */ jsx(CircularProgress, { size: 18, sx: { flexShrink: 0 } })
96
+ props.isLoading && /* @__PURE__ */ jsx(CircularProgress, { size: rem(theme, 18), sx: { flexShrink: 0 } })
94
97
  ] });
95
98
  }
96
99
  function FilterChips(props) {
@@ -207,7 +210,7 @@ function PaletteBody(view) {
207
210
  }
208
211
  var PALETTE_CARD_SX = {
209
212
  width: "100%",
210
- maxWidth: 640,
213
+ maxWidth: sxRem(640),
211
214
  maxHeight: "100%",
212
215
  borderRadius: 2,
213
216
  overflow: "hidden",
@@ -261,4 +264,4 @@ export {
261
264
  PaletteScrollArea,
262
265
  createKeyDownHandler
263
266
  };
264
- //# sourceMappingURL=chunk-CJHP6E34.js.map
267
+ //# sourceMappingURL=chunk-YAFBUYVW.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/form/SearchPalette/SearchPalette.parts.tsx"],"sourcesContent":["import KeyboardReturnIcon from '@mui/icons-material/KeyboardReturn';\nimport SearchIcon from '@mui/icons-material/Search';\nimport Avatar from '@mui/material/Avatar/index.js';\nimport Box from '@mui/material/Box/index.js';\nimport Chip from '@mui/material/Chip/index.js';\nimport CircularProgress from '@mui/material/CircularProgress/index.js';\nimport InputBase from '@mui/material/InputBase/index.js';\nimport List from '@mui/material/List/index.js';\nimport ListItemButton from '@mui/material/ListItemButton/index.js';\nimport Paper from '@mui/material/Paper/index.js';\nimport Typography from '@mui/material/Typography/index.js';\nimport { useTheme } from '@mui/material/styles/index.js';\nimport React from 'react';\n\nimport type { SearchFilterChip, SearchResultLead } from './SearchPalette.types';\nimport { rem, sxRem } from '../../../tokens/relative';\n\n/** Bold the first case-insensitive occurrence of `query` within `text`. */\nexport function highlight(text: string, query: string): React.ReactNode {\n const q = query.trim();\n const at = q ? text.toLowerCase().indexOf(q.toLowerCase()) : -1;\n if (at < 0) return text;\n return (\n <>\n {text.slice(0, at)}\n <Box component=\"span\" sx={{ fontWeight: 700 }}>\n {text.slice(at, at + q.length)}\n </Box>\n {text.slice(at + q.length)}\n </>\n );\n}\n\n/** The leading visual of a result row (image / avatar / icon). */\nexport function Lead({ lead }: { lead: SearchResultLead | undefined }): React.JSX.Element | null {\n if (!lead) return null;\n if (lead.kind === 'image') {\n return (\n <Box\n component=\"img\"\n src={lead.src}\n alt={lead.alt ?? ''}\n sx={{ width: sxRem(32), height: sxRem(32), borderRadius: 1, objectFit: 'cover', flexShrink: 0 }}\n />\n );\n }\n if (lead.kind === 'avatar') {\n return (\n <Avatar src={lead.src} alt={lead.alt ?? ''} sx={{ width: sxRem(32), height: sxRem(32), fontSize: sxRem(13.6) }}>\n {lead.fallback}\n </Avatar>\n );\n }\n return (\n <Box sx={{ display: 'flex', width: sxRem(32), justifyContent: 'center', flexShrink: 0, color: 'text.secondary' }}>\n {lead.node}\n </Box>\n );\n}\n\n/** Compute the ghost-completion remainder of the top result for `query`. */\nexport function ghostRemainder(topPrimary: string | undefined, query: string): string {\n if (!query || !topPrimary) return '';\n return topPrimary.toLowerCase().startsWith(query.toLowerCase()) && topPrimary.length > query.length\n ? topPrimary.slice(query.length)\n : '';\n}\n\n/** The search input row: leading icon, ghost overlay, the field, and a spinner. */\nexport function PaletteInput(props: {\n value: string;\n ghost: string;\n isLoading: boolean;\n autoFocus: boolean;\n placeholder: string;\n inputAriaLabel?: string;\n hasQuery: boolean;\n onChange: (v: string) => void;\n onKeyDown: (e: React.KeyboardEvent) => void;\n}): React.JSX.Element {\n const theme = useTheme();\n return (\n <Box sx={{ display: 'flex', alignItems: 'center', gap: 1.25, px: 2, py: 1.5 }}>\n <SearchIcon fontSize=\"small\" sx={{ color: 'text.secondary', flexShrink: 0 }} />\n <Box sx={{ position: 'relative', flex: 1, minWidth: 0 }}>\n {props.ghost && (\n <Box\n aria-hidden\n sx={{\n position: 'absolute',\n inset: 0,\n display: 'flex',\n alignItems: 'center',\n pointerEvents: 'none',\n whiteSpace: 'pre',\n overflow: 'hidden',\n fontSize: sxRem(16),\n }}\n >\n <Box component=\"span\" sx={{ visibility: 'hidden' }}>\n {props.value}\n </Box>\n <Box component=\"span\" sx={{ color: 'text.secondary', opacity: 0.6 }}>\n {props.ghost}\n </Box>\n </Box>\n )}\n <InputBase\n fullWidth\n autoFocus={props.autoFocus}\n value={props.value}\n onChange={(e) => props.onChange(e.target.value)}\n onKeyDown={props.onKeyDown}\n placeholder={props.placeholder}\n inputProps={{\n role: 'combobox',\n 'aria-expanded': props.hasQuery,\n 'aria-label': props.inputAriaLabel,\n 'aria-autocomplete': 'list',\n }}\n sx={{ fontSize: sxRem(16) }}\n />\n </Box>\n {props.isLoading && <CircularProgress size={rem(theme, 18)} sx={{ flexShrink: 0 }} />}\n </Box>\n );\n}\n\n/** The toggleable filter-chip row. */\nexport function FilterChips(props: {\n filters: SearchFilterChip[];\n activeFilterIds: string[];\n onToggleFilter?: (id: string) => void;\n}): React.JSX.Element {\n return (\n <Box\n data-testid=\"search-palette-filters\"\n sx={{\n display: 'flex',\n flexWrap: 'wrap',\n gap: 1,\n px: 2,\n pb: 1.5,\n borderBottom: (theme) => `1px solid ${theme.palette.divider}`,\n }}\n >\n {props.filters.map((chip) => {\n const active = props.activeFilterIds.includes(chip.id);\n return (\n <Chip\n key={chip.id}\n label={chip.label}\n icon={chip.icon as React.ReactElement | undefined}\n onClick={() => props.onToggleFilter?.(chip.id)}\n variant={active ? 'filled' : 'outlined'}\n color={active ? 'primary' : 'default'}\n size=\"small\"\n aria-pressed={active}\n data-testid={`search-palette-filter-${chip.id}`}\n sx={{ borderRadius: 2 }}\n />\n );\n })}\n </Box>\n );\n}\n\n/** One rich result row. */\nexport function ResultRow(props: {\n index: number;\n active: boolean;\n query: string;\n lead: SearchResultLead | undefined;\n primary: string;\n secondary: string | undefined;\n trailing: React.ReactNode | undefined;\n onSelect: () => void;\n onHover: () => void;\n}): React.JSX.Element {\n return (\n <ListItemButton\n role=\"option\"\n aria-selected={props.active}\n selected={props.active}\n onMouseEnter={props.onHover}\n onMouseDown={(e) => e.preventDefault()}\n onClick={props.onSelect}\n data-testid={`search-palette-result-${props.index}`}\n sx={{ gap: 1.25, px: 2, py: 1 }}\n >\n <Lead lead={props.lead} />\n <Box sx={{ minWidth: 0, flex: 1 }}>\n <Typography variant=\"body2\" noWrap sx={{ color: 'text.primary' }}>\n {highlight(props.primary, props.query)}\n </Typography>\n {props.secondary && (\n <Typography variant=\"caption\" noWrap sx={{ display: 'block', color: 'text.secondary' }}>\n {props.secondary}\n </Typography>\n )}\n </Box>\n {props.trailing != null && (\n <Box sx={{ flexShrink: 0, color: 'text.secondary', fontSize: sxRem(12) }}>{props.trailing}</Box>\n )}\n </ListItemButton>\n );\n}\n\n/** The \"see all results — Press ENTER\" footer row. */\nexport function SubmitAllFooter(props: {\n label: string;\n keyLabel: string;\n selected: boolean;\n onSelect: () => void;\n onHover: () => void;\n}): React.JSX.Element {\n return (\n <ListItemButton\n selected={props.selected}\n onMouseEnter={props.onHover}\n onMouseDown={(e) => e.preventDefault()}\n onClick={props.onSelect}\n data-testid=\"search-palette-submit-all\"\n sx={{ gap: 1.25, px: 2, py: 1, borderTop: (theme) => `1px solid ${theme.palette.divider}` }}\n >\n <SearchIcon fontSize=\"small\" sx={{ color: 'text.secondary', flexShrink: 0 }} />\n <Typography variant=\"body2\" sx={{ flex: 1, minWidth: 0 }} noWrap>\n {props.label}\n </Typography>\n <Box sx={{ display: 'flex', alignItems: 'center', gap: 0.5, color: 'text.secondary' }}>\n <Typography variant=\"caption\">{props.keyLabel}</Typography>\n <KeyboardReturnIcon sx={{ fontSize: sxRem(14) }} />\n </Box>\n </ListItemButton>\n );\n}\n\n/** Resolved view state shared by the body renderer. */\nexport interface BodyView<T> {\n hasQuery: boolean;\n emptyQueryContent: React.ReactNode;\n visible: T[];\n isLoading: boolean;\n noResultsLabel: string;\n showFooter: boolean;\n footerIndex: number;\n activeIndex: number;\n trimmed: string;\n submitAllLabel: (q: string) => string;\n submitKeyLabel: string;\n getKey: (item: T) => string;\n getPrimary: (item: T) => string;\n getSecondary?: (item: T) => string | undefined;\n getLead?: (item: T) => SearchResultLead | undefined;\n getTrailing?: (item: T) => React.ReactNode | undefined;\n onSelect: (item: T) => void;\n onSubmitAll?: (query: string) => void;\n setActiveIndex: (i: number) => void;\n}\n\n/** The results list (or the empty-query slot / no-results message) + footer. */\nexport function PaletteBody<T>(view: BodyView<T>): React.JSX.Element | null {\n if (!view.hasQuery) {\n return view.emptyQueryContent ? (\n <Box data-testid=\"search-palette-empty-query\">{view.emptyQueryContent}</Box>\n ) : null;\n }\n const empty = view.visible.length === 0;\n return (\n <>\n {!empty && (\n <List dense disablePadding role=\"listbox\" data-testid=\"search-palette-results\">\n {view.visible.map((item, index) => (\n <ResultRow\n key={view.getKey(item)}\n index={index}\n active={index === view.activeIndex}\n query={view.trimmed}\n lead={view.getLead?.(item)}\n primary={view.getPrimary(item)}\n secondary={view.getSecondary?.(item)}\n trailing={view.getTrailing?.(item)}\n onSelect={() => view.onSelect(item)}\n onHover={() => view.setActiveIndex(index)}\n />\n ))}\n </List>\n )}\n {empty && !view.isLoading && (\n <Box sx={{ px: 2, py: 1.5 }} data-testid=\"search-palette-no-results\">\n <Typography variant=\"body2\" color=\"text.secondary\">\n {view.noResultsLabel}\n </Typography>\n </Box>\n )}\n {view.showFooter && (\n <SubmitAllFooter\n label={view.submitAllLabel(view.trimmed)}\n keyLabel={view.submitKeyLabel}\n selected={view.activeIndex === view.footerIndex}\n onSelect={() => view.onSubmitAll?.(view.trimmed)}\n onHover={() => view.setActiveIndex(view.footerIndex)}\n />\n )}\n </>\n );\n}\n\n/**\n * The palette card: a flex column capped at the height its container allows, so\n * the input and the filter chips stay pinned while only the results scroll and a\n * long result set can never push the palette past the bottom of the viewport.\n */\nexport const PALETTE_CARD_SX = {\n width: '100%',\n maxWidth: sxRem(640),\n maxHeight: '100%',\n borderRadius: 2,\n overflow: 'hidden',\n display: 'flex',\n flexDirection: 'column',\n} as const;\n\n/** The scrolling region of the card — the results, and nothing above them. */\nexport function PaletteScrollArea({ children }: { children: React.ReactNode }): React.JSX.Element {\n return (\n <Box sx={{ minHeight: 0, overflowY: 'auto', overscrollBehavior: 'contain' }}>{children}</Box>\n );\n}\n\nexport { Paper };\n\n/** Context for the keydown handler builder. */\nexport interface KeyCtx<T> {\n rowCount: number;\n activeIndex: number;\n footerIndex: number;\n visible: T[];\n hasQuery: boolean;\n ghost: string;\n top: T | undefined;\n trimmed: string;\n getPrimary: (item: T) => string;\n onChange: (v: string) => void;\n onSelect: (item: T) => void;\n onSubmitAll?: (query: string) => void;\n onClose?: () => void;\n setActiveIndex: React.Dispatch<React.SetStateAction<number>>;\n}\n\n/** Build the input's keydown handler (nav / select / ghost-accept / close). */\nexport function createKeyDownHandler<T>(ctx: KeyCtx<T>): (e: React.KeyboardEvent) => void {\n const move = (delta: number): void =>\n ctx.setActiveIndex((i) => Math.min(Math.max(i + delta, 0), Math.max(ctx.rowCount - 1, 0)));\n const commit = (): void => {\n if (!ctx.hasQuery) return;\n if (ctx.activeIndex === ctx.footerIndex) {\n ctx.onSubmitAll?.(ctx.trimmed);\n return;\n }\n const item = ctx.visible[ctx.activeIndex];\n if (item) ctx.onSelect(item);\n };\n // A lookup keeps the handler itself flat (low complexity). Tab/→ is special —\n // it must only swallow the event when there is a ghost to accept, otherwise\n // Tab keeps its native focus behavior.\n const actions: Record<string, (() => void) | undefined> = {\n ArrowDown: () => move(1),\n ArrowUp: () => move(-1),\n Enter: commit,\n Escape: () => ctx.onClose?.(),\n };\n return (e) => {\n if ((e.key === 'Tab' || e.key === 'ArrowRight') && ctx.ghost && ctx.top) {\n e.preventDefault();\n ctx.onChange(ctx.getPrimary(ctx.top));\n return;\n }\n const action = actions[e.key];\n if (!action) return;\n e.preventDefault();\n action();\n };\n}\n"],"mappings":"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","names":[]}
@@ -12,7 +12,6 @@ var COMMAND_DEFAULTS = {
12
12
  pulse: false,
13
13
  loading: false,
14
14
  disabled: false,
15
- maxHeight: 400,
16
15
  emptyMessage: "No results found",
17
16
  showCategories: true,
18
17
  showShortcuts: true,
@@ -136,4 +135,4 @@ export {
136
135
  resolveCommandProps,
137
136
  useCommandPalette
138
137
  };
139
- //# sourceMappingURL=chunk-6DN4ZULV.js.map
138
+ //# sourceMappingURL=chunk-YOKUDQIJ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/form/Command/Command.hooks.ts"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';\n\nimport type { CommandItem, CommandProps } from './Command.types';\n\ntype CommandDefaultedKeys =\n | 'open'\n | 'items'\n | 'placeholder'\n | 'value'\n | 'variant'\n | 'size'\n | 'color'\n | 'glow'\n | 'pulse'\n | 'loading'\n | 'disabled'\n | 'emptyMessage'\n | 'showCategories'\n | 'showShortcuts'\n | 'showDescriptions'\n | 'autoFocus'\n | 'closeOnSelect';\n\ntype ResolvedCommandProps = CommandProps &\n Required<Pick<CommandProps, CommandDefaultedKeys>>;\n\nconst COMMAND_DEFAULTS: Pick<CommandProps, CommandDefaultedKeys> = {\n open: false,\n items: [],\n placeholder: 'Type a command or search...',\n value: '',\n variant: 'default',\n size: 'md',\n color: 'primary',\n glow: false,\n pulse: false,\n loading: false,\n disabled: false,\n emptyMessage: 'No results found',\n showCategories: true,\n showShortcuts: true,\n showDescriptions: true,\n autoFocus: true,\n closeOnSelect: true,\n};\n\n// Strips explicitly-undefined props before the merge, so `size={undefined}` still\n// falls back to the default exactly as a destructuring default would.\nconst definedProps = (props: CommandProps): Partial<CommandProps> =>\n Object.fromEntries(\n Object.entries(props).filter(([, value]) => value !== undefined),\n ) as Partial<CommandProps>;\n\nexport const resolveCommandProps = (props: CommandProps): ResolvedCommandProps =>\n ({ ...COMMAND_DEFAULTS, ...definedProps(props) }) as ResolvedCommandProps;\n\n/** An item matches on its label, its description, or any of its keywords. */\nconst matches = (item: CommandItem, search: string): boolean => {\n const searchTargets = [\n item.label.toLowerCase(),\n item.description?.toLowerCase(),\n ...(item.keywords || []).map((k) => k.toLowerCase()),\n ];\n return searchTargets.some((target) => target?.includes(search));\n};\n\nconst useFilteredItems = (\n items: CommandItem[],\n search: string,\n customFilter: CommandProps['customFilter'],\n) =>\n useMemo(() => {\n if (!search) return items;\n\n if (customFilter) {\n return items.filter((item) => customFilter(item, search));\n }\n\n const searchLower = search.toLowerCase();\n return items.filter((item) => matches(item, searchLower));\n }, [items, search, customFilter]);\n\n/**\n * Kept as it was: the ref is never attached to an element, so this focus call has\n * always been a no-op. The input does get focus — CommandInput passes `autoFocus`\n * straight to its TextField — so removing it is a behaviour question, not a\n * cleanup, and is left alone here.\n */\nconst useAutoFocus = (open: boolean, autoFocus: boolean) => {\n const inputRef = useRef<HTMLInputElement>(null);\n\n useEffect(() => {\n if (open && autoFocus) {\n window.setTimeout(() => inputRef.current?.focus(), 100);\n }\n }, [open, autoFocus]);\n};\n\ninterface NavigationArgs {\n items: CommandItem[];\n selectedIndex: number;\n setSelectedIndex: React.Dispatch<React.SetStateAction<number>>;\n onSelect: (item: CommandItem) => void;\n onClose: () => void;\n}\n\n/** Arrows wrap around the list; Enter takes the highlighted item, Escape closes. */\nconst useKeyboardNavigation = ({\n items,\n selectedIndex,\n setSelectedIndex,\n onSelect,\n onClose,\n}: NavigationArgs) =>\n useCallback(\n (e: React.KeyboardEvent) => {\n const step = (delta: number) => {\n e.preventDefault();\n setSelectedIndex((prev) => (prev + delta + items.length) % items.length);\n };\n\n switch (e.key) {\n case 'ArrowDown':\n return step(1);\n case 'ArrowUp':\n return step(-1);\n case 'Enter':\n e.preventDefault();\n if (items[selectedIndex]) {\n onSelect(items[selectedIndex]);\n }\n return;\n case 'Escape':\n e.preventDefault();\n onClose();\n return;\n default:\n return;\n }\n },\n [items, selectedIndex, setSelectedIndex, onSelect, onClose],\n );\n\nexport const useCommandPalette = (props: ResolvedCommandProps) => {\n const { open, items, value, autoFocus, customFilter } = props;\n const { onValueChange, onSelect, onOpenChange, closeOnSelect } = props;\n\n const [internalValue, setInternalValue] = useState(value);\n const [selectedIndex, setSelectedIndex] = useState(0);\n useAutoFocus(open, autoFocus);\n\n useEffect(() => {\n setInternalValue(value);\n }, [value]);\n\n const handleValueChange = useCallback(\n (newValue: string) => {\n setInternalValue(newValue);\n onValueChange?.(newValue);\n setSelectedIndex(0);\n },\n [onValueChange],\n );\n\n const filteredItems = useFilteredItems(items, internalValue, customFilter);\n\n // Arrow keys and Enter address the enabled items only, so a disabled row never\n // becomes the highlighted one.\n const selectableItems = useMemo(\n () => filteredItems.filter((item) => !item.disabled),\n [filteredItems],\n );\n\n const handleSelect = useCallback(\n (item: CommandItem) => {\n if (item.disabled) return;\n\n item.action?.();\n onSelect?.(item);\n\n if (closeOnSelect) {\n onOpenChange?.(false);\n setInternalValue('');\n }\n },\n [onSelect, onOpenChange, closeOnSelect],\n );\n\n const handleKeyDown = useKeyboardNavigation({\n items: selectableItems,\n selectedIndex,\n setSelectedIndex,\n onSelect: handleSelect,\n onClose: () => onOpenChange?.(false),\n });\n\n return {\n internalValue,\n filteredItems,\n highlightedId: selectableItems[selectedIndex]?.id,\n handleValueChange,\n handleSelect,\n handleKeyDown,\n };\n};\n"],"mappings":"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","names":[]}
@@ -67,19 +67,19 @@ var otpSlotSx = (theme, flags) => {
67
67
  borderRadius: fieldRadius(theme),
68
68
  ...glass && {
69
69
  backgroundColor: alpha(theme.palette.background.paper, 0.1),
70
- backdropFilter: "blur(20px)",
70
+ backdropFilter: `blur(${rem(theme, 20)})`,
71
71
  "& fieldset": { border: `1px solid ${fieldEdge(theme)}` }
72
72
  },
73
73
  ...gradient && {
74
74
  "&.Mui-focused fieldset": {
75
75
  background: `linear-gradient(135deg, ${palette.main}, ${palette.light})`,
76
- borderWidth: "2px"
76
+ borderWidth: rem(theme, 2)
77
77
  }
78
78
  },
79
79
  "& input": { textAlign: "center", padding: 0, fontWeight: "inherit" },
80
80
  ...!glass && { "& fieldset": { borderColor: fieldEdge(theme) } },
81
81
  "&:hover fieldset": { borderColor: palette.main },
82
- "&.Mui-focused fieldset": { borderColor: palette.main, borderWidth: "2px" }
82
+ "&.Mui-focused fieldset": { borderColor: palette.main, borderWidth: rem(theme, 2) }
83
83
  }
84
84
  };
85
85
  };
@@ -87,4 +87,4 @@ var otpSlotSx = (theme, flags) => {
87
87
  export {
88
88
  otpSlotSx
89
89
  };
90
- //# sourceMappingURL=chunk-GE2EKMDT.js.map
90
+ //# sourceMappingURL=chunk-YZ2DMP23.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/form/InputOTP/InputOTP.styles.ts"],"sourcesContent":["import { alpha } from '@mui/material/styles/index.js';\nimport type { CSSObject, Theme } from '@mui/material/styles/index.js';\n\nimport { fieldEdge } from '../../../tokens/field-edge';\nimport { fieldRadius } from '../../../tokens/field-radius';\nimport { asFieldSize, fieldHeight } from '../../../tokens/field-height';\nimport { absoluteInk, controlNeutral } from '../../../tokens/ink';\nimport { rem } from '../../../tokens/relative';\n\ninterface ColorPalette {\n main: string;\n dark?: string;\n light?: string;\n contrastText?: string;\n}\n\n/** `neutral` is not a MUI palette entry, so it is built from the grey ramp. */\nconst neutralPalette = (theme: Theme): ColorPalette => controlNeutral(theme);\n\n/** `danger` is this component's name for the error palette. */\nconst namedPalette = (theme: Theme, color: string): ColorPalette => {\n const colorMap: Record<string, ColorPalette> = {\n primary: theme.palette.primary,\n secondary: theme.palette.secondary,\n success: theme.palette.success,\n warning: theme.palette.warning,\n info: theme.palette.info,\n danger: theme.palette.error,\n };\n\n return colorMap[color] || theme.palette.primary;\n};\n\nconst getColorFromTheme = (theme: Theme, color: string): ColorPalette => {\n if (color === 'neutral') {\n return neutralPalette(theme);\n }\n\n const palette = namedPalette(theme, color);\n const { primary } = theme.palette;\n\n return {\n main: palette.main || primary.main,\n dark: palette.dark || palette.main || primary.dark,\n light: palette.light || palette.main || primary.light,\n contrastText: palette.contrastText || absoluteInk(theme).white,\n };\n};\n\ntype SizeKey = 'xs' | 'sm' | 'md' | 'lg' | 'xl';\n\n/** Each slot's type, in design px. Its side is the theme's field height for the size (a square). */\nconst SIZES: Record<SizeKey, { fontPx: number }> = {\n xs: { fontPx: 12 },\n sm: { fontPx: 14 },\n md: { fontPx: 16 },\n lg: { fontPx: 18 },\n xl: { fontPx: 20 },\n};\n\nexport interface OtpSlotFlags {\n customColor?: string;\n customSize?: string;\n glass?: boolean;\n gradient?: boolean;\n}\n\nexport const otpSlotSx = (theme: Theme, flags: OtpSlotFlags): CSSObject => {\n const { customColor = 'primary', customSize = 'md', glass, gradient } = flags;\n const palette = getColorFromTheme(theme, customColor);\n const { fontPx } = SIZES[customSize as SizeKey] ?? SIZES.md;\n // A slot is a field: a square of the theme's field height for its size.\n const side = fieldHeight(theme, asFieldSize(customSize));\n\n return {\n width: side,\n height: side,\n '& .MuiOutlinedInput-root': {\n width: side,\n height: side,\n fontSize: rem(theme, fontPx),\n fontWeight: 600,\n textAlign: 'center',\n borderRadius: fieldRadius(theme),\n ...(glass && {\n backgroundColor: alpha(theme.palette.background.paper, 0.1),\n backdropFilter: 'blur(20px)',\n '& fieldset': { border: `1px solid ${fieldEdge(theme)}` },\n }),\n ...(gradient && {\n '&.Mui-focused fieldset': {\n background: `linear-gradient(135deg, ${palette.main}, ${palette.light})`,\n borderWidth: '2px',\n },\n }),\n '& input': { textAlign: 'center', padding: 0, fontWeight: 'inherit' },\n ...(!glass && { '& fieldset': { borderColor: fieldEdge(theme) } }),\n '&:hover fieldset': { borderColor: palette.main },\n '&.Mui-focused fieldset': { borderColor: palette.main, borderWidth: '2px' },\n },\n };\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,SAAS,aAAa;AAiBtB,IAAM,iBAAiB,CAAC,UAA+B,eAAe,KAAK;AAG3E,IAAM,eAAe,CAAC,OAAc,UAAgC;AAClE,QAAM,WAAyC;AAAA,IAC7C,SAAS,MAAM,QAAQ;AAAA,IACvB,WAAW,MAAM,QAAQ;AAAA,IACzB,SAAS,MAAM,QAAQ;AAAA,IACvB,SAAS,MAAM,QAAQ;AAAA,IACvB,MAAM,MAAM,QAAQ;AAAA,IACpB,QAAQ,MAAM,QAAQ;AAAA,EACxB;AAEA,SAAO,SAAS,KAAK,KAAK,MAAM,QAAQ;AAC1C;AAEA,IAAM,oBAAoB,CAAC,OAAc,UAAgC;AACvE,MAAI,UAAU,WAAW;AACvB,WAAO,eAAe,KAAK;AAAA,EAC7B;AAEA,QAAM,UAAU,aAAa,OAAO,KAAK;AACzC,QAAM,EAAE,QAAQ,IAAI,MAAM;AAE1B,SAAO;AAAA,IACL,MAAM,QAAQ,QAAQ,QAAQ;AAAA,IAC9B,MAAM,QAAQ,QAAQ,QAAQ,QAAQ,QAAQ;AAAA,IAC9C,OAAO,QAAQ,SAAS,QAAQ,QAAQ,QAAQ;AAAA,IAChD,cAAc,QAAQ,gBAAgB,YAAY,KAAK,EAAE;AAAA,EAC3D;AACF;AAKA,IAAM,QAA6C;AAAA,EACjD,IAAI,EAAE,QAAQ,GAAG;AAAA,EACjB,IAAI,EAAE,QAAQ,GAAG;AAAA,EACjB,IAAI,EAAE,QAAQ,GAAG;AAAA,EACjB,IAAI,EAAE,QAAQ,GAAG;AAAA,EACjB,IAAI,EAAE,QAAQ,GAAG;AACnB;AASO,IAAM,YAAY,CAAC,OAAc,UAAmC;AACzE,QAAM,EAAE,cAAc,WAAW,aAAa,MAAM,OAAO,SAAS,IAAI;AACxE,QAAM,UAAU,kBAAkB,OAAO,WAAW;AACpD,QAAM,EAAE,OAAO,IAAI,MAAM,UAAqB,KAAK,MAAM;AAEzD,QAAM,OAAO,YAAY,OAAO,YAAY,UAAU,CAAC;AAEvD,SAAO;AAAA,IACL,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,4BAA4B;AAAA,MAC1B,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,UAAU,IAAI,OAAO,MAAM;AAAA,MAC3B,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,cAAc,YAAY,KAAK;AAAA,MAC/B,GAAI,SAAS;AAAA,QACX,iBAAiB,MAAM,MAAM,QAAQ,WAAW,OAAO,GAAG;AAAA,QAC1D,gBAAgB;AAAA,QAChB,cAAc,EAAE,QAAQ,aAAa,UAAU,KAAK,CAAC,GAAG;AAAA,MAC1D;AAAA,MACA,GAAI,YAAY;AAAA,QACd,0BAA0B;AAAA,UACxB,YAAY,2BAA2B,QAAQ,IAAI,KAAK,QAAQ,KAAK;AAAA,UACrE,aAAa;AAAA,QACf;AAAA,MACF;AAAA,MACA,WAAW,EAAE,WAAW,UAAU,SAAS,GAAG,YAAY,UAAU;AAAA,MACpE,GAAI,CAAC,SAAS,EAAE,cAAc,EAAE,aAAa,UAAU,KAAK,EAAE,EAAE;AAAA,MAChE,oBAAoB,EAAE,aAAa,QAAQ,KAAK;AAAA,MAChD,0BAA0B,EAAE,aAAa,QAAQ,MAAM,aAAa,MAAM;AAAA,IAC5E;AAAA,EACF;AACF;","names":[]}
1
+ {"version":3,"sources":["../src/components/form/InputOTP/InputOTP.styles.ts"],"sourcesContent":["import { alpha } from '@mui/material/styles/index.js';\nimport type { CSSObject, Theme } from '@mui/material/styles/index.js';\n\nimport { fieldEdge } from '../../../tokens/field-edge';\nimport { fieldRadius } from '../../../tokens/field-radius';\nimport { asFieldSize, fieldHeight } from '../../../tokens/field-height';\nimport { absoluteInk, controlNeutral } from '../../../tokens/ink';\nimport { rem } from '../../../tokens/relative';\n\ninterface ColorPalette {\n main: string;\n dark?: string;\n light?: string;\n contrastText?: string;\n}\n\n/** `neutral` is not a MUI palette entry, so it is built from the grey ramp. */\nconst neutralPalette = (theme: Theme): ColorPalette => controlNeutral(theme);\n\n/** `danger` is this component's name for the error palette. */\nconst namedPalette = (theme: Theme, color: string): ColorPalette => {\n const colorMap: Record<string, ColorPalette> = {\n primary: theme.palette.primary,\n secondary: theme.palette.secondary,\n success: theme.palette.success,\n warning: theme.palette.warning,\n info: theme.palette.info,\n danger: theme.palette.error,\n };\n\n return colorMap[color] || theme.palette.primary;\n};\n\nconst getColorFromTheme = (theme: Theme, color: string): ColorPalette => {\n if (color === 'neutral') {\n return neutralPalette(theme);\n }\n\n const palette = namedPalette(theme, color);\n const { primary } = theme.palette;\n\n return {\n main: palette.main || primary.main,\n dark: palette.dark || palette.main || primary.dark,\n light: palette.light || palette.main || primary.light,\n contrastText: palette.contrastText || absoluteInk(theme).white,\n };\n};\n\ntype SizeKey = 'xs' | 'sm' | 'md' | 'lg' | 'xl';\n\n/** Each slot's type, in design px. Its side is the theme's field height for the size (a square). */\nconst SIZES: Record<SizeKey, { fontPx: number }> = {\n xs: { fontPx: 12 },\n sm: { fontPx: 14 },\n md: { fontPx: 16 },\n lg: { fontPx: 18 },\n xl: { fontPx: 20 },\n};\n\nexport interface OtpSlotFlags {\n customColor?: string;\n customSize?: string;\n glass?: boolean;\n gradient?: boolean;\n}\n\nexport const otpSlotSx = (theme: Theme, flags: OtpSlotFlags): CSSObject => {\n const { customColor = 'primary', customSize = 'md', glass, gradient } = flags;\n const palette = getColorFromTheme(theme, customColor);\n const { fontPx } = SIZES[customSize as SizeKey] ?? SIZES.md;\n // A slot is a field: a square of the theme's field height for its size.\n const side = fieldHeight(theme, asFieldSize(customSize));\n\n return {\n width: side,\n height: side,\n '& .MuiOutlinedInput-root': {\n width: side,\n height: side,\n fontSize: rem(theme, fontPx),\n fontWeight: 600,\n textAlign: 'center',\n borderRadius: fieldRadius(theme),\n ...(glass && {\n backgroundColor: alpha(theme.palette.background.paper, 0.1),\n backdropFilter: `blur(${rem(theme, 20)})`,\n '& fieldset': { border: `1px solid ${fieldEdge(theme)}` },\n }),\n ...(gradient && {\n '&.Mui-focused fieldset': {\n background: `linear-gradient(135deg, ${palette.main}, ${palette.light})`,\n borderWidth: rem(theme, 2),\n },\n }),\n '& input': { textAlign: 'center', padding: 0, fontWeight: 'inherit' },\n ...(!glass && { '& fieldset': { borderColor: fieldEdge(theme) } }),\n '&:hover fieldset': { borderColor: palette.main },\n '&.Mui-focused fieldset': { borderColor: palette.main, borderWidth: rem(theme, 2) },\n },\n };\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,SAAS,aAAa;AAiBtB,IAAM,iBAAiB,CAAC,UAA+B,eAAe,KAAK;AAG3E,IAAM,eAAe,CAAC,OAAc,UAAgC;AAClE,QAAM,WAAyC;AAAA,IAC7C,SAAS,MAAM,QAAQ;AAAA,IACvB,WAAW,MAAM,QAAQ;AAAA,IACzB,SAAS,MAAM,QAAQ;AAAA,IACvB,SAAS,MAAM,QAAQ;AAAA,IACvB,MAAM,MAAM,QAAQ;AAAA,IACpB,QAAQ,MAAM,QAAQ;AAAA,EACxB;AAEA,SAAO,SAAS,KAAK,KAAK,MAAM,QAAQ;AAC1C;AAEA,IAAM,oBAAoB,CAAC,OAAc,UAAgC;AACvE,MAAI,UAAU,WAAW;AACvB,WAAO,eAAe,KAAK;AAAA,EAC7B;AAEA,QAAM,UAAU,aAAa,OAAO,KAAK;AACzC,QAAM,EAAE,QAAQ,IAAI,MAAM;AAE1B,SAAO;AAAA,IACL,MAAM,QAAQ,QAAQ,QAAQ;AAAA,IAC9B,MAAM,QAAQ,QAAQ,QAAQ,QAAQ,QAAQ;AAAA,IAC9C,OAAO,QAAQ,SAAS,QAAQ,QAAQ,QAAQ;AAAA,IAChD,cAAc,QAAQ,gBAAgB,YAAY,KAAK,EAAE;AAAA,EAC3D;AACF;AAKA,IAAM,QAA6C;AAAA,EACjD,IAAI,EAAE,QAAQ,GAAG;AAAA,EACjB,IAAI,EAAE,QAAQ,GAAG;AAAA,EACjB,IAAI,EAAE,QAAQ,GAAG;AAAA,EACjB,IAAI,EAAE,QAAQ,GAAG;AAAA,EACjB,IAAI,EAAE,QAAQ,GAAG;AACnB;AASO,IAAM,YAAY,CAAC,OAAc,UAAmC;AACzE,QAAM,EAAE,cAAc,WAAW,aAAa,MAAM,OAAO,SAAS,IAAI;AACxE,QAAM,UAAU,kBAAkB,OAAO,WAAW;AACpD,QAAM,EAAE,OAAO,IAAI,MAAM,UAAqB,KAAK,MAAM;AAEzD,QAAM,OAAO,YAAY,OAAO,YAAY,UAAU,CAAC;AAEvD,SAAO;AAAA,IACL,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,4BAA4B;AAAA,MAC1B,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,UAAU,IAAI,OAAO,MAAM;AAAA,MAC3B,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,cAAc,YAAY,KAAK;AAAA,MAC/B,GAAI,SAAS;AAAA,QACX,iBAAiB,MAAM,MAAM,QAAQ,WAAW,OAAO,GAAG;AAAA,QAC1D,gBAAgB,QAAQ,IAAI,OAAO,EAAE,CAAC;AAAA,QACtC,cAAc,EAAE,QAAQ,aAAa,UAAU,KAAK,CAAC,GAAG;AAAA,MAC1D;AAAA,MACA,GAAI,YAAY;AAAA,QACd,0BAA0B;AAAA,UACxB,YAAY,2BAA2B,QAAQ,IAAI,KAAK,QAAQ,KAAK;AAAA,UACrE,aAAa,IAAI,OAAO,CAAC;AAAA,QAC3B;AAAA,MACF;AAAA,MACA,WAAW,EAAE,WAAW,UAAU,SAAS,GAAG,YAAY,UAAU;AAAA,MACpE,GAAI,CAAC,SAAS,EAAE,cAAc,EAAE,aAAa,UAAU,KAAK,EAAE,EAAE;AAAA,MAChE,oBAAoB,EAAE,aAAa,QAAQ,KAAK;AAAA,MAChD,0BAA0B,EAAE,aAAa,QAAQ,MAAM,aAAa,IAAI,OAAO,CAAC,EAAE;AAAA,IACpF;AAAA,EACF;AACF;","names":[]}
@@ -1,20 +1,24 @@
1
+ import {
2
+ rem
3
+ } from "./chunk-YKCAJ2TN.js";
4
+
1
5
  // src/components/form/RadioGroup/RadioGroup.animations.ts
2
6
  import { keyframes } from "@mui/material/styles/index.js";
3
- var glowAnimation = keyframes`
7
+ var glowAnimation = (theme) => keyframes`
4
8
  0% {
5
- box-shadow: 0 0 5px currentColor;
9
+ box-shadow: 0 0 ${rem(theme, 5)} currentColor;
6
10
  }
7
11
  50% {
8
- box-shadow: 0 0 15px currentColor, 0 0 25px currentColor;
12
+ box-shadow: 0 0 ${rem(theme, 15)} currentColor, 0 0 ${rem(theme, 25)} currentColor;
9
13
  }
10
14
  100% {
11
- box-shadow: 0 0 5px currentColor;
15
+ box-shadow: 0 0 ${rem(theme, 5)} currentColor;
12
16
  }
13
17
  `;
14
- var slideAnimation = keyframes`
18
+ var slideAnimation = (theme) => keyframes`
15
19
  from {
16
20
  opacity: 0;
17
- transform: translateX(-20px);
21
+ transform: translateX(${rem(theme, -20)});
18
22
  }
19
23
  to {
20
24
  opacity: 1;
@@ -49,4 +53,4 @@ export {
49
53
  scaleAnimation,
50
54
  rippleAnimation
51
55
  };
52
- //# sourceMappingURL=chunk-65CEXQ4L.js.map
56
+ //# sourceMappingURL=chunk-Z6WSW6B4.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/form/RadioGroup/RadioGroup.animations.ts"],"sourcesContent":["import { keyframes } from '@mui/material/styles/index.js';\nimport type { Theme } from '@mui/material/styles/index.js';\n\nimport { rem } from '../../../tokens/relative';\n\nexport const glowAnimation = (theme: Theme) => keyframes`\n 0% {\n box-shadow: 0 0 ${rem(theme, 5)} currentColor;\n }\n 50% {\n box-shadow: 0 0 ${rem(theme, 15)} currentColor, 0 0 ${rem(theme, 25)} currentColor;\n }\n 100% {\n box-shadow: 0 0 ${rem(theme, 5)} currentColor;\n }\n`;\n\nexport const slideAnimation = (theme: Theme) => keyframes`\n from {\n opacity: 0;\n transform: translateX(${rem(theme, -20)});\n }\n to {\n opacity: 1;\n transform: translateX(0);\n }\n`;\n\nexport const scaleAnimation = keyframes`\n 0% {\n transform: scale(0.95);\n }\n 50% {\n transform: scale(1.05);\n }\n 100% {\n transform: scale(1);\n }\n`;\n\nexport const rippleAnimation = keyframes`\n 0% {\n transform: scale(0);\n opacity: 1;\n }\n 100% {\n transform: scale(4);\n opacity: 0;\n }\n`;\n\n"],"mappings":";;;;;AAAA,SAAS,iBAAiB;AAKnB,IAAM,gBAAgB,CAAC,UAAiB;AAAA;AAAA,sBAEzB,IAAI,OAAO,CAAC,CAAC;AAAA;AAAA;AAAA,sBAGb,IAAI,OAAO,EAAE,CAAC,sBAAsB,IAAI,OAAO,EAAE,CAAC;AAAA;AAAA;AAAA,sBAGlD,IAAI,OAAO,CAAC,CAAC;AAAA;AAAA;AAI5B,IAAM,iBAAiB,CAAC,UAAiB;AAAA;AAAA;AAAA,4BAGpB,IAAI,OAAO,GAAG,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQpC,IAAM,iBAAiB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYvB,IAAM,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;","names":[]}
@@ -17,7 +17,10 @@ import {
17
17
  rowNameSx,
18
18
  rowSx,
19
19
  sectionHeadSx
20
- } from "./chunk-BXAL7OIS.js";
20
+ } from "./chunk-JC22FNFA.js";
21
+ import {
22
+ sxRem
23
+ } from "./chunk-YKCAJ2TN.js";
21
24
 
22
25
  // src/components/form/CategorySelect/CategoryRows.tsx
23
26
  import Box from "@mui/material/Box/index.js";
@@ -54,7 +57,7 @@ function RowDisclosure({
54
57
  copy
55
58
  }) {
56
59
  if (!branch) {
57
- return /* @__PURE__ */ jsx(Box, { sx: { width: METRICS.chevronButton, flex: "0 0 auto" } });
60
+ return /* @__PURE__ */ jsx(Box, { sx: { width: sxRem(METRICS.chevronButtonPx), flex: "0 0 auto" } });
58
61
  }
59
62
  return /* @__PURE__ */ jsx(
60
63
  Box,
@@ -77,7 +80,7 @@ function RowControl({
77
80
  checkState,
78
81
  single
79
82
  }) {
80
- if (!checkState) return /* @__PURE__ */ jsx(Box, { sx: { width: METRICS.boxSize, flex: "0 0 auto" } });
83
+ if (!checkState) return /* @__PURE__ */ jsx(Box, { sx: { width: sxRem(METRICS.boxSizePx), flex: "0 0 auto" } });
81
84
  if (single) return /* @__PURE__ */ jsx(CategoryRadio, { on: checkState === "on" });
82
85
  return /* @__PURE__ */ jsx(CategoryCheckbox, { state: checkState });
83
86
  }
@@ -110,7 +113,7 @@ function CategoryTreeRow({
110
113
  "aria-selected": checkState ? checkState === "on" : void 0,
111
114
  "aria-expanded": branch ? expanded : void 0,
112
115
  "data-testid": rowTestId(dataTestId, depth, option.id),
113
- sx: (theme) => ({ ...rowSx(theme, active, sheet), ...rowIndent(depth) }),
116
+ sx: (theme) => ({ ...rowSx(theme, active, sheet), ...rowIndent(theme, depth) }),
114
117
  onClick: onActivate,
115
118
  children: [
116
119
  /* @__PURE__ */ jsx(
@@ -145,4 +148,4 @@ export {
145
148
  CategoryTreeRow,
146
149
  CategorySectionHeading
147
150
  };
148
- //# sourceMappingURL=chunk-XWWFBH2G.js.map
151
+ //# sourceMappingURL=chunk-ZXSWXE6U.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/form/CategorySelect/CategoryRows.tsx"],"sourcesContent":["'use client';\n\nimport Box from '@mui/material/Box/index.js';\n\nimport type { CategorySelectCopy } from '../../../copy';\nimport { CheckGlyph, DisclosureGlyph } from './CategoryIcons';\nimport { highlightSegments, type CategoryCheckState } from './category-tree';\nimport {\n checkboxBarSx,\n checkboxSx,\n chevronButtonSx,\n markSx,\n METRICS,\n radioSx,\n rowIndent,\n rowMetaSx,\n rowNameSx,\n rowSx,\n sectionHeadSx,\n} from './CategorySelect.styles';\nimport type { CategorySelectOption } from './CategorySelect.types';\nimport { sxRem } from '../../../tokens/relative';\n\n/** A label with the search hit marked. */\nexport function HighlightedName({\n text,\n query,\n}: {\n text: string;\n query: string;\n}): React.JSX.Element {\n const segments = highlightSegments(text, query);\n return (\n <>\n {segments.map((segment, index) =>\n segment.match ? (\n <Box component=\"mark\" key={`${segment.text}-${index}`} sx={markSx}>\n {segment.text}\n </Box>\n ) : (\n <span key={`${segment.text}-${index}`}>{segment.text}</span>\n ),\n )}\n </>\n );\n}\n\n/** Tri-state checkbox. `partial` draws the bar the prototype uses for \"some\". */\nexport function CategoryCheckbox({ state }: { state: CategoryCheckState }): React.JSX.Element {\n return (\n <Box sx={(theme) => checkboxSx(theme, state)} aria-hidden=\"true\">\n {state === 'on' && <CheckGlyph />}\n {state === 'partial' && <Box sx={checkboxBarSx} />}\n </Box>\n );\n}\n\nexport function CategoryRadio({ on }: { on: boolean }): React.JSX.Element {\n return <Box sx={(theme) => radioSx(theme, on)} aria-hidden=\"true\" />;\n}\n\ninterface CategoryTreeRowProps {\n option: CategorySelectOption;\n query: string;\n /** 0 for a top-level category; each level below indents one more step. */\n depth: number;\n /** True when there is something under this row to fold. */\n branch: boolean;\n expanded: boolean;\n active: boolean;\n sheet: boolean;\n /** Absent where the row cannot be picked — a category acting as a frame. */\n checkState?: CategoryCheckState;\n /** Single-select draws a radio for the control: choosing a row is exclusive. */\n single: boolean;\n selectedCount: number;\n showCounts: boolean;\n onToggleExpanded: () => void;\n onActivate: () => void;\n dataTestId: string;\n copy: CategorySelectCopy;\n}\n\n/** The trailing number: how many leaves are picked below, else the item count. */\nfunction rowMeta(\n selectedCount: number,\n showCounts: boolean,\n count: number | undefined,\n): { text: string; selected: boolean } | null {\n if (selectedCount > 0) return { text: String(selectedCount), selected: true };\n if (showCounts && count !== undefined) return { text: String(count), selected: false };\n return null;\n}\n\n/** The disclosure chevron, or the space it would have taken on a leaf row. */\nfunction RowDisclosure({\n option,\n expanded,\n branch,\n onToggleExpanded,\n dataTestId,\n copy,\n}: Pick<\n CategoryTreeRowProps,\n 'option' | 'expanded' | 'branch' | 'onToggleExpanded' | 'dataTestId' | 'copy'\n>): React.JSX.Element {\n if (!branch) {\n return <Box sx={{ width: sxRem(METRICS.chevronButtonPx), flex: '0 0 auto' }} />;\n }\n return (\n <Box\n component=\"button\"\n type=\"button\"\n tabIndex={-1}\n aria-label={expanded ? copy.collapseCategory(option.name) : copy.expandCategory(option.name)}\n data-testid={`${dataTestId}-expand-${option.id}`}\n sx={(theme) => chevronButtonSx(theme, expanded)}\n onClick={(event: React.MouseEvent) => {\n event.stopPropagation();\n onToggleExpanded();\n }}\n >\n <DisclosureGlyph />\n </Box>\n );\n}\n\n/** The row's selection control, or the space it would have taken on a frame. */\nfunction RowControl({\n checkState,\n single,\n}: Pick<CategoryTreeRowProps, 'checkState' | 'single'>): React.JSX.Element {\n if (!checkState) return <Box sx={{ width: sxRem(METRICS.boxSizePx), flex: '0 0 auto' }} />;\n // Single-select commits the moment a row is chosen, so the control is a radio\n // there: a checkbox would promise the accumulation this mode does not do.\n if (single) return <CategoryRadio on={checkState === 'on'} />;\n return <CategoryCheckbox state={checkState} />;\n}\n\n/**\n * The test id a row answers to.\n *\n * Keyed on DEPTH rather than on whether the row has children, because that is\n * what the ids meant when the tree was two levels and specs were written against\n * them: `-category-<id>` is a top-level row — childless or not — and `-option-`\n * is anything filed under one.\n */\nfunction rowTestId(dataTestId: string, depth: number, id: string): string {\n return depth === 0 ? `${dataTestId}-category-${id}` : `${dataTestId}-option-${id}`;\n}\n\n/**\n * One row of the tree: disclosure chevron, optional control, name, meta.\n *\n * The chevron is its OWN button inside the row — clicking it only folds, while\n * clicking the row does the row's job (expand as a frame, or mark when the row\n * is selectable). A LEAF has neither a fold nor a frame to be: it draws no\n * chevron, and it always carries the control, because it is what you pick.\n */\nexport function CategoryTreeRow({\n option,\n query,\n depth,\n branch,\n expanded,\n active,\n sheet,\n checkState,\n single,\n selectedCount,\n showCounts,\n onToggleExpanded,\n onActivate,\n dataTestId,\n copy,\n}: CategoryTreeRowProps): React.JSX.Element {\n const meta = rowMeta(selectedCount, showCounts, option.count);\n return (\n <Box\n component=\"div\"\n role={checkState ? 'option' : 'button'}\n aria-selected={checkState ? checkState === 'on' : undefined}\n aria-expanded={branch ? expanded : undefined}\n data-testid={rowTestId(dataTestId, depth, option.id)}\n sx={(theme) => ({ ...rowSx(theme, active, sheet), ...rowIndent(theme, depth) })}\n onClick={onActivate}\n >\n <RowDisclosure\n option={option}\n expanded={expanded}\n branch={branch}\n onToggleExpanded={onToggleExpanded}\n dataTestId={dataTestId}\n copy={copy}\n />\n <RowControl checkState={checkState} single={single} />\n <Box component=\"span\" sx={(theme) => rowNameSx(theme, depth === 0)}>\n <HighlightedName text={option.name} query={query} />\n </Box>\n {meta && (\n <Box component=\"span\" sx={(theme) => rowMetaSx(theme, meta.selected)}>\n {meta.text}\n </Box>\n )}\n </Box>\n );\n}\n\n/** The category as a non-interactive heading (single-select, leaf-only). */\nexport function CategorySectionHeading({\n option,\n query,\n}: {\n option: CategorySelectOption;\n query: string;\n}): React.JSX.Element {\n return (\n <Box sx={sectionHeadSx}>\n <HighlightedName text={option.name} query={query} />\n </Box>\n );\n}\n"],"mappings":"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","names":[]}
@@ -10,7 +10,7 @@ import {
10
10
  } from "../chunk-JOKWTRWL.js";
11
11
  import {
12
12
  CardKebab
13
- } from "../chunk-X2AKLDPW.js";
13
+ } from "../chunk-WE3LJPRN.js";
14
14
  import {
15
15
  useRowConfirm
16
16
  } from "../chunk-U4QUDFPJ.js";
@@ -25,7 +25,7 @@ import "../chunk-WVML3ENZ.js";
25
25
  import "../chunk-VFHGILXI.js";
26
26
  import "../chunk-XCBQXSTR.js";
27
27
  import "../chunk-FWPFCK4D.js";
28
- import "../chunk-KCAW6HRO.js";
28
+ import "../chunk-3AOQBR7N.js";
29
29
  import "../chunk-4WCDMCIS.js";
30
30
  import "../chunk-BJZOBG24.js";
31
31
  import "../chunk-EMYESBIT.js";
@@ -38,8 +38,8 @@ import "../chunk-OG6LYQ7C.js";
38
38
  import "../chunk-P2UIXDEG.js";
39
39
  import "../chunk-6DPAWXZ3.js";
40
40
  import "../chunk-BA4RHQ3B.js";
41
- import "../chunk-KH25WUSX.js";
42
- import "../chunk-HBICO6AX.js";
41
+ import "../chunk-2EAAWOZ2.js";
42
+ import "../chunk-4WNFOBTH.js";
43
43
  import "../chunk-LN46DSMF.js";
44
44
  import "../chunk-TAMIZE4Q.js";
45
45
  import "../chunk-TYJR4GOF.js";