@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
@@ -8,25 +8,25 @@ import {
8
8
  // src/components/form/Command/Command.styles.ts
9
9
  import { alpha } from "@mui/material/styles/index.js";
10
10
  var SIZE_MAP = {
11
- xs: { width: 400, fontPx: 12 },
12
- sm: { width: 450, fontPx: 14 },
13
- md: { width: 500, fontPx: 16 },
14
- lg: { width: 550, fontPx: 18 },
15
- xl: { width: 600, fontPx: 20 }
11
+ xs: { widthPx: 400, fontPx: 12 },
12
+ sm: { widthPx: 450, fontPx: 14 },
13
+ md: { widthPx: 500, fontPx: 16 },
14
+ lg: { widthPx: 550, fontPx: 18 },
15
+ xl: { widthPx: 600, fontPx: 20 }
16
16
  };
17
17
  var commandSizeStyles = (theme, size) => {
18
- const { width, fontPx } = SIZE_MAP[size] || SIZE_MAP.md;
19
- return { width: rem(theme, width), fontSize: rem(theme, fontPx) };
18
+ const { widthPx, fontPx } = SIZE_MAP[size] || SIZE_MAP.md;
19
+ return { width: rem(theme, widthPx), fontSize: rem(theme, fontPx) };
20
20
  };
21
21
  var emphasisStyles = (theme, color, glow, pulse) => ({
22
22
  ...glow && {
23
- boxShadow: `0 0 20px ${alpha(accentFor(theme, color).main, 0.4)}`
23
+ boxShadow: `0 0 ${rem(theme, 20)} ${alpha(accentFor(theme, color).main, 0.4)}`
24
24
  },
25
25
  ...pulse && {
26
26
  animation: "pulse 2s infinite",
27
27
  "@keyframes pulse": {
28
28
  "0%": { boxShadow: `0 0 0 0 ${alpha(accentFor(theme, color).main, 0.4)}` },
29
- "70%": { boxShadow: `0 0 0 10px ${alpha(accentFor(theme, color).main, 0)}` },
29
+ "70%": { boxShadow: `0 0 0 ${rem(theme, 10)} ${alpha(accentFor(theme, color).main, 0)}` },
30
30
  "100%": { boxShadow: `0 0 0 0 ${alpha(accentFor(theme, color).main, 0)}` }
31
31
  }
32
32
  }
@@ -36,7 +36,7 @@ var surfaceStyles = (theme, variant, color) => {
36
36
  case "glass":
37
37
  return {
38
38
  backgroundColor: alpha(theme.palette.background.paper, 0.1),
39
- backdropFilter: "blur(20px)",
39
+ backdropFilter: `blur(${rem(theme, 20)})`,
40
40
  border: `1px solid ${alpha(accentFor(theme, color).main, 0.2)}`
41
41
  };
42
42
  case "gradient":
@@ -64,4 +64,4 @@ export {
64
64
  commandSizeStyles,
65
65
  commandPaperStyles
66
66
  };
67
- //# sourceMappingURL=chunk-7EQCZO56.js.map
67
+ //# sourceMappingURL=chunk-C3LZ3OGJ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/form/Command/Command.styles.ts"],"sourcesContent":["import { alpha } from '@mui/material/styles/index.js';\nimport type { CSSObject, Theme } from '@mui/material/styles/index.js';\n\nimport type { CommandProps } from './Command.types';\nimport { accentFor, rem } from '../../../tokens/scales';\n\ntype CommandVariant = NonNullable<CommandProps['variant']>;\ntype CommandColor = NonNullable<CommandProps['color']>;\ntype CommandSize = NonNullable<CommandProps['size']>;\n\nconst SIZE_MAP: Record<CommandSize, { widthPx: number; fontPx: number }> = {\n xs: { widthPx: 400, fontPx: 12 },\n sm: { widthPx: 450, fontPx: 14 },\n md: { widthPx: 500, fontPx: 16 },\n lg: { widthPx: 550, fontPx: 18 },\n xl: { widthPx: 600, fontPx: 20 },\n};\n\n/** The paper's width and type for a size, both design px read through the type scale. */\nexport const commandSizeStyles = (theme: Theme, size: CommandSize) => {\n const { widthPx, fontPx } = SIZE_MAP[size] || SIZE_MAP.md;\n return { width: rem(theme, widthPx), fontSize: rem(theme, fontPx) };\n};\n\nconst emphasisStyles = (\n theme: Theme,\n color: CommandColor,\n glow: boolean,\n pulse: boolean,\n): CSSObject => ({\n ...(glow && {\n boxShadow: `0 0 ${rem(theme, 20)} ${alpha(accentFor(theme, color).main, 0.4)}`,\n }),\n ...(pulse && {\n animation: 'pulse 2s infinite',\n '@keyframes pulse': {\n '0%': { boxShadow: `0 0 0 0 ${alpha(accentFor(theme, color).main, 0.4)}` },\n '70%': { boxShadow: `0 0 0 ${rem(theme, 10)} ${alpha(accentFor(theme, color).main, 0)}` },\n '100%': { boxShadow: `0 0 0 0 ${alpha(accentFor(theme, color).main, 0)}` },\n },\n }),\n});\n\nconst surfaceStyles = (\n theme: Theme,\n variant: CommandVariant,\n color: CommandColor,\n): CSSObject => {\n switch (variant) {\n case 'glass':\n return {\n backgroundColor: alpha(theme.palette.background.paper, 0.1),\n backdropFilter: `blur(${rem(theme, 20)})`,\n border: `1px solid ${alpha(accentFor(theme, color).main, 0.2)}`,\n };\n case 'gradient':\n return {\n background: `linear-gradient(135deg, ${accentFor(theme, color).main}, ${accentFor(theme, color).dark})`,\n color: accentFor(theme, color).contrastText,\n };\n case 'elevated':\n return { boxShadow: theme.shadows[8] };\n case 'minimal':\n return { border: 'none', boxShadow: 'none' };\n default:\n return {};\n }\n};\n\n/**\n * Every variant shares the same transition and the same optional glow/pulse; only\n * the surface — background, border, shadow — differs.\n */\nexport const commandPaperStyles = (\n theme: Theme,\n { variant, color, glow, pulse }: {\n variant: CommandVariant;\n color: CommandColor;\n glow: boolean;\n pulse: boolean;\n },\n): CSSObject => ({\n transition: theme.transitions.create(['all'], {\n duration: theme.transitions.duration.standard,\n }),\n ...emphasisStyles(theme, color, glow, pulse),\n ...surfaceStyles(theme, variant, color),\n});\n"],"mappings":";;;;;;;;AAAA,SAAS,aAAa;AAUtB,IAAM,WAAqE;AAAA,EACzE,IAAI,EAAE,SAAS,KAAK,QAAQ,GAAG;AAAA,EAC/B,IAAI,EAAE,SAAS,KAAK,QAAQ,GAAG;AAAA,EAC/B,IAAI,EAAE,SAAS,KAAK,QAAQ,GAAG;AAAA,EAC/B,IAAI,EAAE,SAAS,KAAK,QAAQ,GAAG;AAAA,EAC/B,IAAI,EAAE,SAAS,KAAK,QAAQ,GAAG;AACjC;AAGO,IAAM,oBAAoB,CAAC,OAAc,SAAsB;AACpE,QAAM,EAAE,SAAS,OAAO,IAAI,SAAS,IAAI,KAAK,SAAS;AACvD,SAAO,EAAE,OAAO,IAAI,OAAO,OAAO,GAAG,UAAU,IAAI,OAAO,MAAM,EAAE;AACpE;AAEA,IAAM,iBAAiB,CACrB,OACA,OACA,MACA,WACe;AAAA,EACf,GAAI,QAAQ;AAAA,IACV,WAAW,OAAO,IAAI,OAAO,EAAE,CAAC,IAAI,MAAM,UAAU,OAAO,KAAK,EAAE,MAAM,GAAG,CAAC;AAAA,EAC9E;AAAA,EACA,GAAI,SAAS;AAAA,IACX,WAAW;AAAA,IACX,oBAAoB;AAAA,MAClB,MAAM,EAAE,WAAW,WAAW,MAAM,UAAU,OAAO,KAAK,EAAE,MAAM,GAAG,CAAC,GAAG;AAAA,MACzE,OAAO,EAAE,WAAW,SAAS,IAAI,OAAO,EAAE,CAAC,IAAI,MAAM,UAAU,OAAO,KAAK,EAAE,MAAM,CAAC,CAAC,GAAG;AAAA,MACxF,QAAQ,EAAE,WAAW,WAAW,MAAM,UAAU,OAAO,KAAK,EAAE,MAAM,CAAC,CAAC,GAAG;AAAA,IAC3E;AAAA,EACF;AACF;AAEA,IAAM,gBAAgB,CACpB,OACA,SACA,UACc;AACd,UAAQ,SAAS;AAAA,IACf,KAAK;AACH,aAAO;AAAA,QACL,iBAAiB,MAAM,MAAM,QAAQ,WAAW,OAAO,GAAG;AAAA,QAC1D,gBAAgB,QAAQ,IAAI,OAAO,EAAE,CAAC;AAAA,QACtC,QAAQ,aAAa,MAAM,UAAU,OAAO,KAAK,EAAE,MAAM,GAAG,CAAC;AAAA,MAC/D;AAAA,IACF,KAAK;AACH,aAAO;AAAA,QACL,YAAY,2BAA2B,UAAU,OAAO,KAAK,EAAE,IAAI,KAAK,UAAU,OAAO,KAAK,EAAE,IAAI;AAAA,QACpG,OAAO,UAAU,OAAO,KAAK,EAAE;AAAA,MACjC;AAAA,IACF,KAAK;AACH,aAAO,EAAE,WAAW,MAAM,QAAQ,CAAC,EAAE;AAAA,IACvC,KAAK;AACH,aAAO,EAAE,QAAQ,QAAQ,WAAW,OAAO;AAAA,IAC7C;AACE,aAAO,CAAC;AAAA,EACZ;AACF;AAMO,IAAM,qBAAqB,CAChC,OACA,EAAE,SAAS,OAAO,MAAM,MAAM,OAMf;AAAA,EACf,YAAY,MAAM,YAAY,OAAO,CAAC,KAAK,GAAG;AAAA,IAC5C,UAAU,MAAM,YAAY,SAAS;AAAA,EACvC,CAAC;AAAA,EACD,GAAG,eAAe,OAAO,OAAO,MAAM,KAAK;AAAA,EAC3C,GAAG,cAAc,OAAO,SAAS,KAAK;AACxC;","names":[]}
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  STACK_BREAK
3
- } from "./chunk-RZ2C5CAW.js";
3
+ } from "./chunk-2ZIHZLF5.js";
4
4
  import {
5
5
  CARD_RADIUS,
6
6
  cardSurfaceStyles,
@@ -16,10 +16,10 @@ import {
16
16
  RAIL_GAP,
17
17
  railsTemplateFor,
18
18
  useListRails
19
- } from "./chunk-JFEEV3XI.js";
19
+ } from "./chunk-NB3FGWU4.js";
20
20
  import {
21
21
  DENSITY_ROW_PADDING
22
- } from "./chunk-4LQZH4PU.js";
22
+ } from "./chunk-PMOEG36E.js";
23
23
  import {
24
24
  rem
25
25
  } from "./chunk-YKCAJ2TN.js";
@@ -189,4 +189,4 @@ export {
189
189
  actionProps,
190
190
  rowStyles
191
191
  };
192
- //# sourceMappingURL=chunk-UL7L6MFT.js.map
192
+ //# sourceMappingURL=chunk-C55AWF3U.js.map
@@ -1,3 +1,7 @@
1
+ import {
2
+ rem
3
+ } from "./chunk-YKCAJ2TN.js";
4
+
1
5
  // src/components/form/AddressAutocomplete/AddressSuggestionsPaper.tsx
2
6
  import Paper from "@mui/material/Paper/index.js";
3
7
  import { alpha, useTheme } from "@mui/material/styles/index.js";
@@ -13,8 +17,8 @@ var AddressSuggestionsPaper = (props) => {
13
17
  sx: {
14
18
  mt: 1,
15
19
  background: `linear-gradient(135deg, ${alpha(theme.palette.background.paper, 0.98)} 0%, ${alpha(theme.palette.background.paper, 0.95)} 100%)`,
16
- backdropFilter: "blur(20px)",
17
- WebkitBackdropFilter: "blur(20px)",
20
+ backdropFilter: `blur(${rem(theme, 20)})`,
21
+ WebkitBackdropFilter: `blur(${rem(theme, 20)})`,
18
22
  border: `1px solid ${alpha(theme.palette.divider, 0.18)}`
19
23
  }
20
24
  }
@@ -24,4 +28,4 @@ var AddressSuggestionsPaper = (props) => {
24
28
  export {
25
29
  AddressSuggestionsPaper
26
30
  };
27
- //# sourceMappingURL=chunk-ST4YYVUK.js.map
31
+ //# sourceMappingURL=chunk-C5RQBTRZ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/form/AddressAutocomplete/AddressSuggestionsPaper.tsx"],"sourcesContent":["import type { PaperProps } from '@mui/material/Paper/index.js';\nimport Paper from '@mui/material/Paper/index.js';\nimport { alpha, useTheme } from '@mui/material/styles/index.js';\nimport type { FC } from 'react';\nimport React from 'react';\n\nimport { rem } from '../../../tokens/relative';\n\n// The dropdown surface, frosted to match the glass field.\nexport const AddressSuggestionsPaper: FC<PaperProps> = (props) => {\n const theme = useTheme();\n\n return (\n <Paper\n {...props}\n elevation={8}\n data-testid=\"address-suggestions-dropdown\"\n sx={{\n mt: 1,\n background: `linear-gradient(135deg, ${alpha(theme.palette.background.paper, 0.98)} 0%, ${alpha(theme.palette.background.paper, 0.95)} 100%)`,\n backdropFilter: `blur(${rem(theme, 20)})`,\n WebkitBackdropFilter: `blur(${rem(theme, 20)})`,\n border: `1px solid ${alpha(theme.palette.divider, 0.18)}`,\n }}\n />\n );\n};\n"],"mappings":";;;;;AACA,OAAO,WAAW;AAClB,SAAS,OAAO,gBAAgB;AAW5B;AAJG,IAAM,0BAA0C,CAAC,UAAU;AAChE,QAAM,QAAQ,SAAS;AAEvB,SACE;AAAA,IAAC;AAAA;AAAA,MACE,GAAG;AAAA,MACJ,WAAW;AAAA,MACX,eAAY;AAAA,MACZ,IAAI;AAAA,QACF,IAAI;AAAA,QACJ,YAAY,2BAA2B,MAAM,MAAM,QAAQ,WAAW,OAAO,IAAI,CAAC,QAAQ,MAAM,MAAM,QAAQ,WAAW,OAAO,IAAI,CAAC;AAAA,QACrI,gBAAgB,QAAQ,IAAI,OAAO,EAAE,CAAC;AAAA,QACtC,sBAAsB,QAAQ,IAAI,OAAO,EAAE,CAAC;AAAA,QAC5C,QAAQ,aAAa,MAAM,MAAM,QAAQ,SAAS,IAAI,CAAC;AAAA,MACzD;AAAA;AAAA,EACF;AAEJ;","names":[]}
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-4XK6JQ4D.js";
4
4
  import {
5
5
  Form
6
- } from "./chunk-2HVNPWFV.js";
6
+ } from "./chunk-D6KL74KI.js";
7
7
 
8
8
  // src/components/form/total-form/FormContainer.tsx
9
9
  import { validateFields } from "@12-apps/forms-core";
@@ -55,4 +55,4 @@ function FormContainer({
55
55
  export {
56
56
  FormContainer
57
57
  };
58
- //# sourceMappingURL=chunk-GGWICBJD.js.map
58
+ //# sourceMappingURL=chunk-CPAJYJUD.js.map
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  GridShell
3
- } from "./chunk-V74PXUQN.js";
3
+ } from "./chunk-QEG3P5D4.js";
4
4
  import {
5
5
  useDataViewsState
6
- } from "./chunk-WPA26LXA.js";
6
+ } from "./chunk-IKLOIONQ.js";
7
7
 
8
8
  // src/components/data-display/DataViews/DataViewsGrid.tsx
9
9
  import { useEffect, useRef } from "react";
@@ -27,4 +27,4 @@ function DataViewsGrid(props) {
27
27
  export {
28
28
  DataViewsGrid
29
29
  };
30
- //# sourceMappingURL=chunk-5TJRJSJY.js.map
30
+ //# sourceMappingURL=chunk-CQLPDY2J.js.map
@@ -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";
@@ -80,4 +80,4 @@ function DataViewsEmpty({
80
80
  export {
81
81
  DataViewsEmpty
82
82
  };
83
- //# sourceMappingURL=chunk-5UTAEHSB.js.map
83
+ //# sourceMappingURL=chunk-CQPFSEJB.js.map
@@ -6,7 +6,7 @@ import {
6
6
  } from "./chunk-NPP44TQG.js";
7
7
  import {
8
8
  CategorySelect
9
- } from "./chunk-ZW5K4XCQ.js";
9
+ } from "./chunk-34BZXJGT.js";
10
10
 
11
11
  // src/components/data-display/DataViews/data-views-category-pill.tsx
12
12
  import { jsx } from "react/jsx-runtime";
@@ -79,4 +79,4 @@ export {
79
79
  emitPillDiff,
80
80
  PillControl
81
81
  };
82
- //# sourceMappingURL=chunk-SN2YMCTL.js.map
82
+ //# sourceMappingURL=chunk-CS3KOKL3.js.map
@@ -25,15 +25,9 @@ var spacingMap = {
25
25
  lg: 4,
26
26
  xl: 5
27
27
  };
28
- var maxWidthMap = {
29
- sm: "600px",
30
- md: "900px",
31
- lg: "1200px",
32
- xl: "1536px",
33
- full: "100%"
34
- };
28
+ var formMaxWidth = (theme, maxWidth) => maxWidth === "full" ? "100%" : rem(theme, theme.breakpoints.values[maxWidth]);
35
29
  var Form = React.forwardRef(
36
- ({ variant = "vertical", maxWidth = "full", spacing = "md", children, dataTestId, ...props }, ref) => /* @__PURE__ */ jsx(StyledForm, { ref, variant, role: "form", "data-testid": dataTestId, ...props, children: /* @__PURE__ */ jsx(Box, { sx: { maxWidth: maxWidthMap[maxWidth], width: "100%" }, children: variant === "inline" ? children : /* @__PURE__ */ jsx(Stack, { spacing: spacingMap[spacing], children }) }) })
30
+ ({ variant = "vertical", maxWidth = "full", spacing = "md", children, dataTestId, ...props }, ref) => /* @__PURE__ */ jsx(StyledForm, { ref, variant, role: "form", "data-testid": dataTestId, ...props, children: /* @__PURE__ */ jsx(Box, { sx: { maxWidth: (theme) => formMaxWidth(theme, maxWidth), width: "100%" }, children: variant === "inline" ? children : /* @__PURE__ */ jsx(Stack, { spacing: spacingMap[spacing], children }) }) })
37
31
  );
38
32
  Form.displayName = "Form";
39
33
  var StyledFormField = styled(Box, {
@@ -42,7 +36,7 @@ var StyledFormField = styled(Box, {
42
36
  ({ theme, variant }) => ({
43
37
  display: variant === "horizontal" ? "grid" : "flex",
44
38
  flexDirection: variant === "horizontal" ? void 0 : "column",
45
- gridTemplateColumns: variant === "horizontal" ? "200px 1fr" : void 0,
39
+ gridTemplateColumns: variant === "horizontal" ? `${rem(theme, 200)} 1fr` : void 0,
46
40
  columnGap: variant === "horizontal" ? theme.spacing(1) : void 0,
47
41
  alignItems: variant === "horizontal" ? "center" : void 0
48
42
  })
@@ -113,4 +107,4 @@ export {
113
107
  FormControl,
114
108
  FormMessage
115
109
  };
116
- //# sourceMappingURL=chunk-2HVNPWFV.js.map
110
+ //# sourceMappingURL=chunk-D6KL74KI.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/form/Form/Form.tsx"],"sourcesContent":["import Box from '@mui/material/Box/index.js';\nimport Stack from '@mui/material/Stack/index.js';\nimport { styled, type Theme } from '@mui/material/styles/index.js';\nimport React from 'react';\n\nimport type {\n FormControlProps,\n FormFieldProps,\n FormLabelProps,\n FormMessageProps,\n FormProps,\n} from './Form.types';\nimport { rem } from '../../../tokens/relative';\n\nconst StyledForm = styled('form', {\n shouldForwardProp: (prop) => prop !== 'variant',\n})<{ variant?: FormProps['variant'] }>(({ theme, variant }) => ({\n width: '100%',\n ...(variant === 'inline' && {\n display: 'flex',\n gap: theme.spacing(2),\n alignItems: 'flex-start',\n }),\n}));\n\nconst spacingMap = {\n xs: 1,\n sm: 2,\n md: 3,\n lg: 4,\n xl: 5,\n};\n\n/** A form's width cap: the theme's breakpoint of that name, through the type scale; `full` is uncapped. */\nconst formMaxWidth = (theme: Theme, maxWidth: NonNullable<FormProps['maxWidth']>): string =>\n maxWidth === 'full' ? '100%' : rem(theme, theme.breakpoints.values[maxWidth]);\n\nexport const Form = React.forwardRef<HTMLFormElement, FormProps>(\n ({ variant = 'vertical', maxWidth = 'full', spacing = 'md', children, dataTestId, ...props }, ref) => (\n <StyledForm ref={ref} variant={variant} role=\"form\" data-testid={dataTestId} {...props}>\n <Box sx={{ maxWidth: (theme) => formMaxWidth(theme, maxWidth), width: '100%' }}>\n {variant === 'inline' ? (\n children\n ) : (\n <Stack spacing={spacingMap[spacing]}>{children}</Stack>\n )}\n </Box>\n </StyledForm>\n ),\n);\n\nForm.displayName = 'Form';\n\n/**\n * NO ROW GAP HERE, and that is the fix rather than an omission.\n *\n * `FormLabel` already carries `marginBottom: theme.spacing(0.5)` — 4px — and it\n * carries it because it has to: every OTHER user of it (`CepField`,\n * `CategorySelect`, `CreatableSelect`, the three `total-form` fields, five of\n * `@12-apps/discounts`' builders and the host's own `currency-field`) puts a\n * bare `FormLabel` straight inside a `FormControl`, which is a plain block box\n * with no gap of its own. There, the label's own margin is the ONLY thing\n * between the label and the control.\n *\n * A `gap: theme.spacing(1)` here was a second mechanism for that one job, and in\n * a column the two ADD: 8px + 4px put `FormField` at 12px where every one of\n * those siblings sits at 4px. Measured in Chromium at 320x568 on a consuming\n * app's six-field delivery address form, the 8px a row it added pushed the\n * submit button from 561px to 609px — 41px below the fold of the smallest\n * supported phone, i.e. a checkout whose primary action is off-screen.\n *\n * That claim is about `FormLabel`'s own callers, not about the whole package:\n * `Textarea` labels its control through MUI's `InputLabel` at\n * `theme.spacing(1)` and still draws 8px. It composes nothing out of\n * `FormLabel`, so it is a separate inconsistency rather than a reason to keep\n * a second spacing here.\n *\n * ## The `columnGap` is scaffolding, and currently unreachable\n *\n * `FormFieldProps` has no `variant` and `FormField` passes none, so `variant`\n * is ALWAYS undefined and every branch below resolves to the vertical shape.\n * `Form` accepts `variant=\"horizontal\"` and `Form.md` documents it as \"labels\n * beside inputs\", but nothing carries that variant down to the field — so a\n * horizontal form draws vertical rows today. That gap is older than this\n * change and fixing it is a feature, not a spacing fix.\n *\n * The branch is kept, scoped to the COLUMN axis, so that whoever does wire it\n * up inherits the right answer: with the label beside the control, a horizontal\n * gap and a vertical margin are orthogonal and nothing double-counts. A `gap`\n * shorthand there would put the 8px back on the row axis the moment a field\n * wrapped.\n */\nconst StyledFormField = styled(Box, {\n shouldForwardProp: (prop) => prop !== 'variant',\n})<{ variant?: 'vertical' | 'horizontal' }>(\n ({ theme, variant }) => ({\n display: variant === 'horizontal' ? 'grid' : 'flex',\n flexDirection: variant === 'horizontal' ? undefined : 'column',\n gridTemplateColumns: variant === 'horizontal' ? `${rem(theme, 200)} 1fr` : undefined,\n columnGap: variant === 'horizontal' ? theme.spacing(1) : undefined,\n alignItems: variant === 'horizontal' ? 'center' : undefined,\n }),\n);\n\nexport const FormField: React.FC<FormFieldProps> = ({\n name,\n label,\n required,\n error,\n helperText,\n children,\n dataTestId,\n}) => (\n <StyledFormField data-testid={dataTestId}>\n {label && (\n <FormLabel required={required} error={!!error} htmlFor={name} dataTestId={dataTestId ? `${dataTestId}-label` : undefined}>\n {label}\n </FormLabel>\n )}\n <FormControl fullWidth dataTestId={dataTestId ? `${dataTestId}-control` : undefined}>\n {children}\n {(error || helperText) && <FormMessage error={!!error} dataTestId={dataTestId ? `${dataTestId}-message` : undefined}>{error || helperText}</FormMessage>}\n </FormControl>\n </StyledFormField>\n );\n\nconst StyledFormLabel = styled('label', {\n shouldForwardProp: (prop) => prop !== 'error',\n})<{ error?: boolean }>(({ theme, error }) => ({\n fontSize: rem(theme, 14),\n fontWeight: 500,\n color: error ? theme.palette.error.main : theme.palette.text.primary,\n marginBottom: theme.spacing(0.5),\n display: 'block',\n '&::after': {\n content: '\" *\"',\n color: theme.palette.error.main,\n display: 'var(--required-display, none)',\n },\n}));\n\nexport const FormLabel: React.FC<FormLabelProps> = ({ required, error, children, htmlFor, dataTestId }) => (\n <StyledFormLabel\n error={error}\n htmlFor={htmlFor}\n data-testid={dataTestId}\n style={{ '--required-display': required ? 'inline' : 'none' } as React.CSSProperties}\n >\n {children}\n </StyledFormLabel>\n );\n\nconst StyledFormControl = styled(Box, {\n shouldForwardProp: (prop) => prop !== 'fullWidth',\n})<{ fullWidth?: boolean }>(({ fullWidth }) => ({\n width: fullWidth ? '100%' : 'auto',\n position: 'relative',\n}));\n\nexport const FormControl: React.FC<FormControlProps> = ({ fullWidth = true, children, dataTestId }) =>\n // Don't pass error prop to the DOM element\n <StyledFormControl fullWidth={fullWidth} data-testid={dataTestId}>{children}</StyledFormControl>\n;\n\nconst StyledFormMessage = styled('span', {\n shouldForwardProp: (prop) => prop !== 'error',\n})<{ error?: boolean }>(({ theme, error }) => ({\n fontSize: rem(theme, 12),\n marginTop: theme.spacing(0.5),\n color: error ? theme.palette.error.main : theme.palette.text.secondary,\n display: 'block',\n}));\n\nexport const FormMessage: React.FC<FormMessageProps> = ({ error, children, dataTestId }) => <StyledFormMessage error={error} data-testid={dataTestId}>{children}</StyledFormMessage>;\n"],"mappings":";;;;;AAAA,OAAO,SAAS;AAChB,OAAO,WAAW;AAClB,SAAS,cAA0B;AACnC,OAAO,WAAW;AAyCN,cA2EN,YA3EM;AA9BZ,IAAM,aAAa,OAAO,QAAQ;AAAA,EAChC,mBAAmB,CAAC,SAAS,SAAS;AACxC,CAAC,EAAsC,CAAC,EAAE,OAAO,QAAQ,OAAO;AAAA,EAC9D,OAAO;AAAA,EACP,GAAI,YAAY,YAAY;AAAA,IAC1B,SAAS;AAAA,IACT,KAAK,MAAM,QAAQ,CAAC;AAAA,IACpB,YAAY;AAAA,EACd;AACF,EAAE;AAEF,IAAM,aAAa;AAAA,EACjB,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN;AAGA,IAAM,eAAe,CAAC,OAAc,aAClC,aAAa,SAAS,SAAS,IAAI,OAAO,MAAM,YAAY,OAAO,QAAQ,CAAC;AAEvE,IAAM,OAAO,MAAM;AAAA,EACxB,CAAC,EAAE,UAAU,YAAY,WAAW,QAAQ,UAAU,MAAM,UAAU,YAAY,GAAG,MAAM,GAAG,QAC1F,oBAAC,cAAW,KAAU,SAAkB,MAAK,QAAO,eAAa,YAAa,GAAG,OAC/E,8BAAC,OAAI,IAAI,EAAE,UAAU,CAAC,UAAU,aAAa,OAAO,QAAQ,GAAG,OAAO,OAAO,GAC1E,sBAAY,WACX,WAEA,oBAAC,SAAM,SAAS,WAAW,OAAO,GAAI,UAAS,GAEnD,GACF;AAEN;AAEA,KAAK,cAAc;AAyCnB,IAAM,kBAAkB,OAAO,KAAK;AAAA,EAClC,mBAAmB,CAAC,SAAS,SAAS;AACxC,CAAC;AAAA,EACC,CAAC,EAAE,OAAO,QAAQ,OAAO;AAAA,IACvB,SAAS,YAAY,eAAe,SAAS;AAAA,IAC7C,eAAe,YAAY,eAAe,SAAY;AAAA,IACtD,qBAAqB,YAAY,eAAe,GAAG,IAAI,OAAO,GAAG,CAAC,SAAS;AAAA,IAC3E,WAAW,YAAY,eAAe,MAAM,QAAQ,CAAC,IAAI;AAAA,IACzD,YAAY,YAAY,eAAe,WAAW;AAAA,EACpD;AACF;AAEO,IAAM,YAAsC,CAAC;AAAA,EAClD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MACI,qBAAC,mBAAgB,eAAa,YAC3B;AAAA,WACC,oBAAC,aAAU,UAAoB,OAAO,CAAC,CAAC,OAAO,SAAS,MAAM,YAAY,aAAa,GAAG,UAAU,WAAW,QAC5G,iBACH;AAAA,EAEF,qBAAC,eAAY,WAAS,MAAC,YAAY,aAAa,GAAG,UAAU,aAAa,QACvE;AAAA;AAAA,KACC,SAAS,eAAe,oBAAC,eAAY,OAAO,CAAC,CAAC,OAAO,YAAY,aAAa,GAAG,UAAU,aAAa,QAAY,mBAAS,YAAW;AAAA,KAC5I;AAAA,GACF;AAGJ,IAAM,kBAAkB,OAAO,SAAS;AAAA,EACtC,mBAAmB,CAAC,SAAS,SAAS;AACxC,CAAC,EAAuB,CAAC,EAAE,OAAO,MAAM,OAAO;AAAA,EAC7C,UAAU,IAAI,OAAO,EAAE;AAAA,EACvB,YAAY;AAAA,EACZ,OAAO,QAAQ,MAAM,QAAQ,MAAM,OAAO,MAAM,QAAQ,KAAK;AAAA,EAC7D,cAAc,MAAM,QAAQ,GAAG;AAAA,EAC/B,SAAS;AAAA,EACT,YAAY;AAAA,IACV,SAAS;AAAA,IACT,OAAO,MAAM,QAAQ,MAAM;AAAA,IAC3B,SAAS;AAAA,EACX;AACF,EAAE;AAEK,IAAM,YAAsC,CAAC,EAAE,UAAU,OAAO,UAAU,SAAS,WAAW,MACjG;AAAA,EAAC;AAAA;AAAA,IACC;AAAA,IACA;AAAA,IACA,eAAa;AAAA,IACb,OAAO,EAAE,sBAAsB,WAAW,WAAW,OAAO;AAAA,IAE3D;AAAA;AACH;AAGJ,IAAM,oBAAoB,OAAO,KAAK;AAAA,EACpC,mBAAmB,CAAC,SAAS,SAAS;AACxC,CAAC,EAA2B,CAAC,EAAE,UAAU,OAAO;AAAA,EAC9C,OAAO,YAAY,SAAS;AAAA,EAC5B,UAAU;AACZ,EAAE;AAEK,IAAM,cAA0C,CAAC,EAAE,YAAY,MAAM,UAAU,WAAW;AAAA;AAAA,EAE9F,oBAAC,qBAAkB,WAAsB,eAAa,YAAa,UAAS;AAAA;AAG/E,IAAM,oBAAoB,OAAO,QAAQ;AAAA,EACvC,mBAAmB,CAAC,SAAS,SAAS;AACxC,CAAC,EAAuB,CAAC,EAAE,OAAO,MAAM,OAAO;AAAA,EAC7C,UAAU,IAAI,OAAO,EAAE;AAAA,EACvB,WAAW,MAAM,QAAQ,GAAG;AAAA,EAC5B,OAAO,QAAQ,MAAM,QAAQ,MAAM,OAAO,MAAM,QAAQ,KAAK;AAAA,EAC7D,SAAS;AACX,EAAE;AAEK,IAAM,cAA0C,CAAC,EAAE,OAAO,UAAU,WAAW,MAAM,oBAAC,qBAAkB,OAAc,eAAa,YAAa,UAAS;","names":[]}
@@ -3,12 +3,16 @@ import {
3
3
  } from "./chunk-YMGHTZA6.js";
4
4
  import {
5
5
  MenubarItemView
6
- } from "./chunk-QY4XNTNG.js";
6
+ } from "./chunk-LP3JCXER.js";
7
+ import {
8
+ rem
9
+ } from "./chunk-YKCAJ2TN.js";
7
10
 
8
11
  // src/components/form/Menubar/Menubar.toolbar.tsx
9
12
  import Box from "@mui/material/Box/index.js";
10
13
  import CircularProgress from "@mui/material/CircularProgress/index.js";
11
14
  import Toolbar from "@mui/material/Toolbar/index.js";
15
+ import { useTheme } from "@mui/material/styles/index.js";
12
16
  import { jsx, jsxs } from "react/jsx-runtime";
13
17
  var MenubarToolbar = ({
14
18
  ariaLabel,
@@ -29,6 +33,7 @@ var MenubarToolbar = ({
29
33
  onFocus,
30
34
  onBlur
31
35
  }) => {
36
+ const theme = useTheme();
32
37
  const isVertical = orientation === "vertical";
33
38
  return /* @__PURE__ */ jsxs(
34
39
  Toolbar,
@@ -44,7 +49,7 @@ var MenubarToolbar = ({
44
49
  },
45
50
  children: [
46
51
  logo && /* @__PURE__ */ jsx(Box, { sx: { mr: 2, display: "flex", alignItems: "center" }, children: logo }),
47
- loading ? /* @__PURE__ */ jsx(CircularProgress, { size: 20, color: "inherit" }) : /* @__PURE__ */ jsx(
52
+ loading ? /* @__PURE__ */ jsx(CircularProgress, { size: rem(theme, 20), color: "inherit" }) : /* @__PURE__ */ jsx(
48
53
  Box,
49
54
  {
50
55
  sx: {
@@ -82,4 +87,4 @@ var MenubarToolbar = ({
82
87
  export {
83
88
  MenubarToolbar
84
89
  };
85
- //# sourceMappingURL=chunk-TTAP5XFX.js.map
90
+ //# sourceMappingURL=chunk-DJYL2LC6.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/form/Menubar/Menubar.toolbar.tsx"],"sourcesContent":["import Box from '@mui/material/Box/index.js';\nimport CircularProgress from '@mui/material/CircularProgress/index.js';\nimport Toolbar from '@mui/material/Toolbar/index.js';\nimport { useTheme, type CSSObject } from '@mui/material/styles/index.js';\nimport React from 'react';\n\nimport { MenubarItemView } from './Menubar.item';\nimport { MenubarSeparator } from './Menubar.separator';\nimport type { MenubarItem, MenubarProps } from './Menubar.types';\nimport { rem } from '../../../tokens/relative';\n\nexport interface MenubarToolbarProps {\n ariaLabel: string;\n barSx: CSSObject;\n items: MenubarItem[];\n size: NonNullable<MenubarProps['size']>;\n orientation: NonNullable<MenubarProps['orientation']>;\n disabled: boolean;\n loading: boolean;\n logo?: React.ReactNode;\n endContent?: React.ReactNode;\n fullWidth: boolean;\n activeMenu: string | null;\n menuRefs: React.MutableRefObject<{ [key: string]: HTMLElement | null }>;\n onOpen: (itemId: string, anchorEl: HTMLElement) => void;\n onActivate: (item: MenubarItem) => void;\n onClose: () => void;\n onFocus?: React.FocusEventHandler;\n onBlur?: React.FocusEventHandler;\n}\n\n/**\n * The bar's contents: an optional logo, the entries themselves, and whatever the\n * caller hangs off the end. Shared by both orientations — only the element\n * wrapping it differs.\n */\nexport const MenubarToolbar: React.FC<MenubarToolbarProps> = ({\n ariaLabel,\n barSx,\n items,\n size,\n orientation,\n disabled,\n loading,\n logo,\n endContent,\n fullWidth,\n activeMenu,\n menuRefs,\n onOpen,\n onActivate,\n onClose,\n onFocus,\n onBlur,\n}) => {\n const theme = useTheme();\n const isVertical = orientation === 'vertical';\n\n return (\n <Toolbar\n role=\"toolbar\"\n aria-label={ariaLabel}\n sx={{\n ...barSx,\n width: fullWidth ? '100%' : 'auto',\n flexDirection: isVertical ? 'column' : 'row',\n alignItems: isVertical ? 'flex-start' : 'center',\n gap: 1,\n }}\n >\n {logo && <Box sx={{ mr: 2, display: 'flex', alignItems: 'center' }}>{logo}</Box>}\n\n {loading ? (\n <CircularProgress size={rem(theme, 20)} color=\"inherit\" />\n ) : (\n <Box\n sx={{\n display: 'flex',\n flexDirection: isVertical ? 'column' : 'row',\n gap: isVertical ? 0.5 : 1,\n flex: 1,\n }}\n >\n {items.map((item) =>\n item.divider ? (\n <MenubarSeparator key={item.id} orientation={orientation} />\n ) : (\n <MenubarItemView\n key={item.id}\n item={item}\n size={size}\n disabled={disabled}\n isOpen={activeMenu === item.id}\n anchorEl={menuRefs.current[item.id] ?? null}\n onOpen={onOpen}\n onActivate={onActivate}\n onClose={onClose}\n onFocus={onFocus}\n onBlur={onBlur}\n />\n ),\n )}\n </Box>\n )}\n\n {endContent && <Box sx={{ ml: 'auto' }}>{endContent}</Box>}\n </Toolbar>\n );\n};\n"],"mappings":";;;;;;;;;;;AAAA,OAAO,SAAS;AAChB,OAAO,sBAAsB;AAC7B,OAAO,aAAa;AACpB,SAAS,gBAAgC;AAwDrC,SAWW,KAXX;AAvBG,IAAM,iBAAgD,CAAC;AAAA,EAC5D;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAAM;AACJ,QAAM,QAAQ,SAAS;AACvB,QAAM,aAAa,gBAAgB;AAEnC,SACE;AAAA,IAAC;AAAA;AAAA,MACC,MAAK;AAAA,MACL,cAAY;AAAA,MACZ,IAAI;AAAA,QACF,GAAG;AAAA,QACH,OAAO,YAAY,SAAS;AAAA,QAC5B,eAAe,aAAa,WAAW;AAAA,QACvC,YAAY,aAAa,eAAe;AAAA,QACxC,KAAK;AAAA,MACP;AAAA,MAEC;AAAA,gBAAQ,oBAAC,OAAI,IAAI,EAAE,IAAI,GAAG,SAAS,QAAQ,YAAY,SAAS,GAAI,gBAAK;AAAA,QAEzE,UACC,oBAAC,oBAAiB,MAAM,IAAI,OAAO,EAAE,GAAG,OAAM,WAAU,IAExD;AAAA,UAAC;AAAA;AAAA,YACC,IAAI;AAAA,cACF,SAAS;AAAA,cACT,eAAe,aAAa,WAAW;AAAA,cACvC,KAAK,aAAa,MAAM;AAAA,cACxB,MAAM;AAAA,YACR;AAAA,YAEC,gBAAM;AAAA,cAAI,CAAC,SACV,KAAK,UACH,oBAAC,oBAA+B,eAAT,KAAK,EAA8B,IAE1D;AAAA,gBAAC;AAAA;AAAA,kBAEC;AAAA,kBACA;AAAA,kBACA;AAAA,kBACA,QAAQ,eAAe,KAAK;AAAA,kBAC5B,UAAU,SAAS,QAAQ,KAAK,EAAE,KAAK;AAAA,kBACvC;AAAA,kBACA;AAAA,kBACA;AAAA,kBACA;AAAA,kBACA;AAAA;AAAA,gBAVK,KAAK;AAAA,cAWZ;AAAA,YAEJ;AAAA;AAAA,QACF;AAAA,QAGD,cAAc,oBAAC,OAAI,IAAI,EAAE,IAAI,OAAO,GAAI,sBAAW;AAAA;AAAA;AAAA,EACtD;AAEJ;","names":[]}
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  getColorFromTheme,
3
3
  textareaEmphasisStyles
4
- } from "./chunk-AMTFP7QA.js";
4
+ } from "./chunk-4RDJMIWL.js";
5
5
  import {
6
6
  fieldBorder
7
7
  } from "./chunk-CGO452DC.js";
@@ -15,7 +15,9 @@ import {
15
15
  FIELD_BORDER_WIDTH
16
16
  } from "./chunk-PZBK3F52.js";
17
17
  import {
18
- rem
18
+ rem,
19
+ rems,
20
+ sxRem
19
21
  } from "./chunk-YKCAJ2TN.js";
20
22
 
21
23
  // src/components/form/Textarea/Textarea.tsx
@@ -23,7 +25,7 @@ import Box from "@mui/material/Box/index.js";
23
25
  import FormHelperText from "@mui/material/FormHelperText/index.js";
24
26
  import InputLabel from "@mui/material/InputLabel/index.js";
25
27
  import TextareaAutosize from "@mui/material/TextareaAutosize/index.js";
26
- import { alpha, styled } from "@mui/material/styles/index.js";
28
+ import { alpha, styled, useTheme } from "@mui/material/styles/index.js";
27
29
  import { lazy, Suspense, useState } from "react";
28
30
  import { jsx, jsxs } from "react/jsx-runtime";
29
31
  var TextareaRichEditor = lazy(async () => ({
@@ -47,11 +49,11 @@ var StyledTextarea = styled(TextareaAutosize, {
47
49
  const colorPalette = getColorFromTheme(theme, customColor);
48
50
  const errorColor = theme.palette.error;
49
51
  const sizeMap = {
50
- xs: { padding: "6px 8px", fontSize: rem(theme, 12), minHeight: "60px" },
51
- sm: { padding: "8px 10px", fontSize: rem(theme, 14), minHeight: "80px" },
52
- md: { padding: "10px 12px", fontSize: rem(theme, 16), minHeight: "100px" },
53
- lg: { padding: "12px 14px", fontSize: rem(theme, 18), minHeight: "120px" },
54
- xl: { padding: "14px 16px", fontSize: rem(theme, 20), minHeight: "140px" }
52
+ xs: { padding: rems(theme, 6, 8), fontSize: rem(theme, 12), minHeight: rem(theme, 60) },
53
+ sm: { padding: rems(theme, 8, 10), fontSize: rem(theme, 14), minHeight: rem(theme, 80) },
54
+ md: { padding: rems(theme, 10, 12), fontSize: rem(theme, 16), minHeight: rem(theme, 100) },
55
+ lg: { padding: rems(theme, 12, 14), fontSize: rem(theme, 18), minHeight: rem(theme, 120) },
56
+ xl: { padding: rems(theme, 14, 16), fontSize: rem(theme, 20), minHeight: rem(theme, 140) }
55
57
  };
56
58
  const baseStyles = {
57
59
  width: "100%",
@@ -77,7 +79,7 @@ var StyledTextarea = styled(TextareaAutosize, {
77
79
  "&:focus": {
78
80
  borderColor: error ? errorColor.main : colorPalette.main,
79
81
  backgroundColor: theme.palette.background.paper,
80
- boxShadow: `inset 0 0 0 1px ${error ? errorColor.main : colorPalette.main}, 0 0 0 3px ${alpha(error ? errorColor.main : colorPalette.main, 0.1)}`
82
+ boxShadow: `inset 0 0 0 ${FIELD_BORDER_WIDTH}px ${error ? errorColor.main : colorPalette.main}, 0 0 0 ${rem(theme, 3)} ${alpha(error ? errorColor.main : colorPalette.main, 0.1)}`
81
83
  }
82
84
  };
83
85
  return {
@@ -93,14 +95,13 @@ var StyledLabel = styled(InputLabel, {
93
95
  color: error ? theme.palette.error.main : theme.palette.text.primary,
94
96
  ...glass && {
95
97
  backgroundColor: alpha(theme.palette.background.paper, 0.1),
96
- backdropFilter: "blur(10px)",
97
- padding: "4px 8px",
98
- borderRadius: "4px",
98
+ backdropFilter: `blur(${rem(theme, 10)})`,
99
+ padding: rems(theme, 4, 8),
100
+ borderRadius: rem(theme, 4),
99
101
  border: `1px solid ${fieldEdge(theme)}`,
100
102
  display: "inline-block"
101
103
  }
102
104
  }));
103
- var ICON_GUTTER = "40px";
104
105
  var TEXTAREA_DEFAULTS = {
105
106
  variant: "default",
106
107
  color: "primary",
@@ -133,8 +134,8 @@ var TextareaIcon = ({ icon, iconPosition }) => /* @__PURE__ */ jsx(
133
134
  {
134
135
  sx: {
135
136
  position: "absolute",
136
- top: "12px",
137
- ...iconPosition === "start" ? { left: "12px" } : { right: "12px" },
137
+ top: sxRem(12),
138
+ ...iconPosition === "start" ? { left: sxRem(12) } : { right: sxRem(12) },
138
139
  color: "text.secondary",
139
140
  pointerEvents: "none",
140
141
  zIndex: 1
@@ -148,6 +149,10 @@ function RichVariant({
148
149
  }) {
149
150
  return /* @__PURE__ */ jsx(TextareaShell, { ...shell, children: /* @__PURE__ */ jsx(Suspense, { fallback: null, children: /* @__PURE__ */ jsx(TextareaRichEditor, { ...editor }) }) });
150
151
  }
152
+ function withIconGutter(theme, style, hasIcon, iconPosition) {
153
+ if (!hasIcon) return { ...style };
154
+ return { ...style, [iconPosition === "start" ? "paddingLeft" : "paddingRight"]: rem(theme, 40) };
155
+ }
151
156
  var Textarea = (textareaProps) => {
152
157
  const {
153
158
  variant,
@@ -170,18 +175,11 @@ var Textarea = (textareaProps) => {
170
175
  ...props
171
176
  } = { ...TEXTAREA_DEFAULTS, ...definedProps(textareaProps) };
172
177
  const { richEditorCopy } = textareaProps;
178
+ const theme = useTheme();
173
179
  const [richTextValue, setRichTextValue] = useState("");
174
180
  const hasIcon = Boolean(icon);
175
181
  const testId = dataTestId || dataTestIdCamelCase;
176
- const textareaStyle = {
177
- ...style,
178
- // Same gap either side; only which side it applies to changes. The previous
179
- // version had `iconPosition === 'start' ? '40px' : '40px'`, a ternary whose
180
- // two branches were identical.
181
- ...hasIcon && {
182
- [iconPosition === "start" ? "paddingLeft" : "paddingRight"]: ICON_GUTTER
183
- }
184
- };
182
+ const textareaStyle = withIconGutter(theme, style, hasIcon, iconPosition);
185
183
  if (variant === "rich" && richEditorCopy) {
186
184
  return /* @__PURE__ */ jsx(
187
185
  RichVariant,
@@ -227,4 +225,4 @@ Textarea.displayName = "Textarea";
227
225
  export {
228
226
  Textarea
229
227
  };
230
- //# sourceMappingURL=chunk-TQ2557I5.js.map
228
+ //# sourceMappingURL=chunk-DUNG7D4B.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/form/Textarea/Textarea.tsx"],"sourcesContent":["import Box from '@mui/material/Box/index.js';\nimport FormHelperText from '@mui/material/FormHelperText/index.js';\nimport InputLabel from '@mui/material/InputLabel/index.js';\nimport TextareaAutosize from '@mui/material/TextareaAutosize/index.js';\nimport { alpha, styled, useTheme } from '@mui/material/styles/index.js';\nimport type { Theme } from '@mui/material/styles/index.js';\nimport React, { lazy, Suspense, useState } from 'react';\n\nimport {\n getColorFromTheme,\n textareaEmphasisStyles } from './Textarea.styles';\n\n/**\n * The rich editor is LOADED ON DEMAND, not imported (12-51 follow-up).\n *\n * It renders only for `variant === 'rich'`, but a static import made every\n * consumer of a plain `<Textarea>` pay for it — 387 lines of toolbar plus the\n * MUI `Tooltip`, `IconButton` and `Divider` its formatting buttons need. That\n * is not theoretical: an adopting storefront imports this entry for a one-line\n * order note, and `Tooltip` (8.7 KiB) reached its EAGER chunk through here\n * while nothing on that critical path renders a tooltip at all.\n *\n * `variant` is a prop, so the branch cannot be decided at build time and no\n * amount of tree-shaking removes it. A lazy boundary is what expresses \"only\n * the rich variant pays\", and it costs the rich variant one microtask it can\n * afford — it is a text editor a user has already chosen to open, never a\n * first-paint element.\n */\nconst TextareaRichEditor = lazy(async () => ({\n default: (await import('./TextareaRichEditor')).TextareaRichEditor }));\nimport type { TextareaProps } from './Textarea.types';\n\nimport { fieldEdge } from '../../../tokens/field-edge';\nimport { fieldRadius } from '../../../tokens/field-radius';\nimport { FIELD_BORDER_WIDTH, fieldBorder } from '../../../tokens/field-height';\nimport { rem, rems, sxRem } from '../../../tokens/relative';\n\n// Interface for styled component props\ninterface StyledTextareaProps {\n customVariant?: string;\n customColor?: string;\n customSize?: string;\n glow?: boolean;\n glass?: boolean;\n gradient?: boolean;\n error?: boolean;\n theme?: Theme;\n}\n\n// Glow animation for enhanced visual effects\nconst StyledTextarea = styled(TextareaAutosize, {\n shouldForwardProp: (prop) =>\n !['customVariant', 'customColor', 'customSize', 'glow', 'glass', 'gradient', 'error'].includes(\n prop as string,\n ) })<StyledTextareaProps>(({\n theme,\n customVariant,\n customColor = 'primary',\n customSize = 'md',\n glow,\n glass,\n gradient,\n error }) => {\n if (!theme) return {};\n const colorPalette = getColorFromTheme(theme, customColor);\n const errorColor = theme.palette.error;\n\n const sizeMap = {\n xs: { padding: rems(theme, 6, 8), fontSize: rem(theme, 12), minHeight: rem(theme, 60) },\n sm: { padding: rems(theme, 8, 10), fontSize: rem(theme, 14), minHeight: rem(theme, 80) },\n md: { padding: rems(theme, 10, 12), fontSize: rem(theme, 16), minHeight: rem(theme, 100) },\n lg: { padding: rems(theme, 12, 14), fontSize: rem(theme, 18), minHeight: rem(theme, 120) },\n xl: { padding: rems(theme, 14, 16), fontSize: rem(theme, 20), minHeight: rem(theme, 140) } };\n\n const baseStyles = {\n width: '100%',\n fontFamily: theme.typography.fontFamily,\n borderRadius: fieldRadius(theme),\n border: error ? `${FIELD_BORDER_WIDTH}px solid ${errorColor.main}` : fieldBorder(theme),\n backgroundColor: theme.palette.background.paper,\n color: theme.palette.text.primary,\n transition: 'all 0.3s ease',\n resize: customVariant === 'resizable' ? 'vertical' : 'none',\n outline: 'none',\n ...sizeMap[customSize as keyof typeof sizeMap],\n\n '&::placeholder': {\n color: theme.palette.text.secondary,\n opacity: 0.7 },\n\n '&:hover': {\n borderColor: error ? errorColor.dark : colorPalette.main,\n backgroundColor: alpha(theme.palette.background.paper, 0.8) },\n\n // Focus is two pixels, like every other field's: the second is an inset\n // shadow, so the 1px resting border can thicken without the box moving.\n '&:focus': {\n borderColor: error ? errorColor.main : colorPalette.main,\n backgroundColor: theme.palette.background.paper,\n boxShadow: `inset 0 0 0 ${FIELD_BORDER_WIDTH}px ${error ? errorColor.main : colorPalette.main}, 0 0 0 ${rem(theme, 3)} ${alpha(error ? errorColor.main : colorPalette.main, 0.1)}` } };\n\n // Glass morphism effect\n return {\n ...baseStyles,\n ...textareaEmphasisStyles({ theme, colorPalette, glass, gradient, glow }) };\n});\n\nconst StyledLabel = styled(InputLabel, {\n shouldForwardProp: (prop) => !['glass', 'error'].includes(prop as string) })<{ glass?: boolean; error?: boolean }>(({ theme, glass, error }) => ({\n marginBottom: theme.spacing(1),\n fontWeight: 500,\n color: error ? theme.palette.error.main : theme.palette.text.primary,\n ...(glass && {\n backgroundColor: alpha(theme.palette.background.paper, 0.1),\n backdropFilter: `blur(${rem(theme, 10)})`,\n padding: rems(theme, 4, 8),\n borderRadius: rem(theme, 4),\n border: `1px solid ${fieldEdge(theme)}`,\n display: 'inline-block' }) }));\n\n// IconWrapper - replaced with inline Box component for better TypeScript compatibility\n// const IconWrapper = styled(Box)<{ position: 'start' | 'end' }>(({ theme, position }) => {\n// const positionStyles = position === 'start' ? { left: '12px' } : { right: '12px' };\n// return {\n// position: 'absolute' as const,\n// top: '12px',\n// ...positionStyles,\n// color: theme.palette.text.secondary,\n// pointerEvents: 'none' as const,\n// zIndex: 1,\n// };\n// });\n\n// Rich text toolbar styling\n\nconst TEXTAREA_DEFAULTS = {\n variant: 'default',\n color: 'primary',\n size: 'md',\n error: false,\n glassLabel: false,\n glow: false,\n glass: false,\n gradient: false,\n iconPosition: 'start',\n minRows: 3 } satisfies Partial<TextareaProps>;\n\n// Strips explicitly-undefined props before the merge, so `prop={undefined}`\n// still falls back to the default as a destructuring default would.\nconst definedProps = (props: TextareaProps): Partial<TextareaProps> =>\n Object.fromEntries(\n Object.entries(props).filter(([, value]) => value !== undefined),\n ) as Partial<TextareaProps>;\n\n// Label above, helper text below — identical for the plain and rich variants,\n// which previously duplicated both.\nconst TextareaShell: React.FC<{\n testId?: string;\n label?: React.ReactNode;\n glassLabel: boolean;\n error: boolean;\n helperText?: React.ReactNode;\n children: React.ReactNode;\n}> = ({ testId, label, glassLabel, error, helperText, children }) => (\n <Box\n sx={{ position: 'relative', width: '100%' }}\n data-testid={testId ? `${testId}-wrapper` : undefined}\n >\n {label && (\n <StyledLabel glass={glassLabel} error={error}>\n {label}\n </StyledLabel>\n )}\n\n {children}\n\n {helperText && (\n <FormHelperText error={error} sx={{ mt: 1 }}>\n {helperText}\n </FormHelperText>\n )}\n </Box>\n);\n\nconst TextareaIcon: React.FC<{\n icon?: React.ReactNode;\n iconPosition: 'start' | 'end';\n}> = ({ icon, iconPosition }) => (\n <Box\n sx={{\n position: 'absolute',\n top: sxRem(12),\n ...(iconPosition === 'start' ? { left: sxRem(12) } : { right: sxRem(12) }),\n color: 'text.secondary',\n pointerEvents: 'none',\n zIndex: 1 }}\n >\n {icon}\n </Box>\n);\n\n/**\n * The rich variant, kept out of the main component's body.\n *\n * Two reasons rather than one: the `Suspense` boundary and its props belong\n * together with the lazy import above, and the component that renders every\n * OTHER variant stays inside the size the complexity gate allows without\n * anything being suppressed.\n */\nfunction RichVariant({\n shell,\n editor }: {\n shell: Omit<React.ComponentProps<typeof TextareaShell>, 'children'>;\n editor: React.ComponentProps<typeof TextareaRichEditor>;\n}): React.JSX.Element {\n return (\n <TextareaShell {...shell}>\n {/*\n `null` rather than a spinner: the editor resolves from the same document\n the caller is already rendering, so a fallback would flash for a frame\n and read as a glitch rather than as loading.\n */}\n <Suspense fallback={null}>\n <TextareaRichEditor {...editor} />\n </Suspense>\n </TextareaShell>\n );\n}\n\n// Same gap either side; only which side it applies to changes. The previous\n// version had `iconPosition === 'start' ? '40px' : '40px'`, a ternary whose\n// two branches were identical. The icon's gutter is 40px at the design scale.\nfunction withIconGutter(\n theme: Theme,\n style: React.CSSProperties | undefined,\n hasIcon: boolean,\n iconPosition: TextareaProps['iconPosition'],\n): React.CSSProperties {\n if (!hasIcon) return { ...style };\n return { ...style, [iconPosition === 'start' ? 'paddingLeft' : 'paddingRight']: rem(theme, 40) };\n}\n\nexport const Textarea: React.FC<TextareaProps> = (textareaProps) => {\n const {\n variant,\n color,\n size,\n error,\n helperText,\n label,\n glassLabel,\n glow,\n glass,\n gradient,\n icon,\n iconPosition,\n minRows,\n maxRows,\n style,\n 'data-testid': dataTestId,\n dataTestId: dataTestIdCamelCase,\n ...props\n } = { ...TEXTAREA_DEFAULTS, ...definedProps(textareaProps) };\n\n // Read off the props rather than the merged object: the spread widens every\n // key to optional, which would lose what the variant union already proved.\n const { richEditorCopy } = textareaProps;\n\n const theme = useTheme();\n const [richTextValue, setRichTextValue] = useState('');\n const hasIcon = Boolean(icon);\n const testId = dataTestId || dataTestIdCamelCase;\n\n const textareaStyle = withIconGutter(theme, style, hasIcon, iconPosition);\n\n // If rich text variant, use the rich text editor\n if (variant === 'rich' && richEditorCopy) {\n return (\n <RichVariant\n shell={{ testId, label, glassLabel, error, helperText }}\n editor={{\n copy: richEditorCopy,\n value: richTextValue,\n onChange: setRichTextValue,\n placeholder: props.placeholder,\n error,\n glass,\n color,\n characterLimit: props.maxLength }}\n />\n );\n }\n\n return (\n <TextareaShell testId={testId} label={label} glassLabel={glassLabel} error={error} helperText={helperText}>\n <Box sx={{ position: 'relative' }}>\n {hasIcon && <TextareaIcon icon={icon} iconPosition={iconPosition} />}\n\n <StyledTextarea\n customVariant={variant}\n customColor={color}\n customSize={size}\n glow={glow}\n glass={glass}\n gradient={gradient}\n error={error}\n minRows={variant === 'autosize' ? minRows : undefined}\n maxRows={variant === 'autosize' ? maxRows : undefined}\n style={textareaStyle}\n aria-label={label || props['aria-label']}\n data-testid={testId}\n {...props}\n />\n </Box>\n </TextareaShell>\n );\n};\n\nTextarea.displayName = 'Textarea';\n"],"mappings":"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","names":[]}
@@ -8,7 +8,9 @@ import {
8
8
  getStrengthLabel
9
9
  } from "./chunk-SAIO6EBW.js";
10
10
  import {
11
- rem
11
+ rem,
12
+ rems,
13
+ sxRem
12
14
  } from "./chunk-YKCAJ2TN.js";
13
15
 
14
16
  // src/components/form/PasswordStrength/PasswordStrength.tsx
@@ -34,9 +36,9 @@ var pulseAnimation = keyframes`
34
36
  opacity: 0.7;
35
37
  }
36
38
  `;
37
- var slideInAnimation = keyframes`
39
+ var slideInAnimation = (theme) => keyframes`
38
40
  from {
39
- transform: translateX(-10px);
41
+ transform: translateX(${rem(theme, -10)});
40
42
  opacity: 0;
41
43
  }
42
44
  to {
@@ -50,8 +52,8 @@ var StrengthContainer = styled(Box, {
50
52
  width: "100%",
51
53
  padding: theme.spacing(2),
52
54
  background: `linear-gradient(135deg, ${alpha(theme.palette.background.paper, 0.8)} 0%, ${alpha(theme.palette.background.paper, 0.6)} 100%)`,
53
- backdropFilter: "blur(10px)",
54
- WebkitBackdropFilter: "blur(10px)",
55
+ backdropFilter: `blur(${rem(theme, 10)})`,
56
+ WebkitBackdropFilter: `blur(${rem(theme, 10)})`,
55
57
  border: `1px solid ${alpha(theme.palette.divider, 0.18)}`,
56
58
  borderRadius: theme.shape.borderRadius * 2,
57
59
  transition: animated ? "all 0.3s ease" : "none"
@@ -71,14 +73,14 @@ var StrengthBar = styled(LinearProgress, {
71
73
  return `linear-gradient(90deg, ${color} 0%, ${alpha(color, 0.8)} 100%)`;
72
74
  };
73
75
  return {
74
- height: 8,
75
- borderRadius: 4,
76
+ height: rem(theme, 8),
77
+ borderRadius: rem(theme, 4),
76
78
  backgroundColor: alpha(theme.palette.action.disabled, 0.1),
77
79
  "& .MuiLinearProgress-bar": {
78
- borderRadius: 4,
80
+ borderRadius: rem(theme, 4),
79
81
  background: getGradient(),
80
82
  transition: animated ? "all 0.3s ease" : "none",
81
- boxShadow: `0 2px 8px ${alpha(getColor(), 0.3)}`
83
+ boxShadow: `0 ${rems(theme, 2, 8)} ${alpha(getColor(), 0.3)}`
82
84
  }
83
85
  };
84
86
  });
@@ -92,7 +94,7 @@ var RequirementItem = styled(Box, {
92
94
  borderRadius: theme.shape.borderRadius,
93
95
  background: met ? alpha(theme.palette.success.main, 0.08) : alpha(theme.palette.action.disabled, 0.04),
94
96
  transition: animated ? "all 0.3s ease" : "none",
95
- animation: animated ? `${slideInAnimation} 0.3s ease` : "none",
97
+ animation: animated ? `${slideInAnimation(theme)} 0.3s ease` : "none",
96
98
  "& svg": {
97
99
  fontSize: rem(theme, 16),
98
100
  color: met ? theme.palette.success.main : theme.palette.text.disabled
@@ -127,11 +129,11 @@ var Step = styled(Box, {
127
129
  })(
128
130
  ({ theme, active, completed, animated }) => ({
129
131
  flex: 1,
130
- height: 6,
131
- borderRadius: 3,
132
+ height: rem(theme, 6),
133
+ borderRadius: rem(theme, 3),
132
134
  background: completed ? `linear-gradient(90deg, ${theme.palette.success.main} 0%, ${theme.palette.success.light} 100%)` : active ? `linear-gradient(90deg, ${theme.palette.warning.main} 0%, ${theme.palette.warning.light} 100%)` : alpha(theme.palette.action.disabled, 0.2),
133
135
  transition: animated ? "all 0.3s ease" : "none",
134
- boxShadow: completed ? `0 2px 8px ${alpha(theme.palette.success.main, 0.3)}` : "none"
136
+ boxShadow: completed ? `0 ${rems(theme, 2, 8)} ${alpha(theme.palette.success.main, 0.3)}` : "none"
135
137
  })
136
138
  );
137
139
  var StrengthIndicator = ({ variant, strength, animated }) => {
@@ -142,8 +144,8 @@ var StrengthIndicator = ({ variant, strength, animated }) => {
142
144
  Box,
143
145
  {
144
146
  sx: {
145
- width: 80,
146
- height: 80,
147
+ width: sxRem(80),
148
+ height: sxRem(80),
147
149
  borderRadius: "50%",
148
150
  background: `conic-gradient(
149
151
  ${theme.palette.success.main} 0deg ${strength * 3.6}deg,
@@ -152,14 +154,14 @@ var StrengthIndicator = ({ variant, strength, animated }) => {
152
154
  display: "flex",
153
155
  alignItems: "center",
154
156
  justifyContent: "center",
155
- boxShadow: `0 4px 12px ${alpha(theme.palette.success.main, strength / 200)}`
157
+ boxShadow: `0 ${rems(theme, 4, 12)} ${alpha(theme.palette.success.main, strength / 200)}`
156
158
  },
157
159
  children: /* @__PURE__ */ jsx(
158
160
  Box,
159
161
  {
160
162
  sx: {
161
- width: 64,
162
- height: 64,
163
+ width: sxRem(64),
164
+ height: sxRem(64),
163
165
  borderRadius: "50%",
164
166
  background: theme.palette.background.paper,
165
167
  display: "flex",
@@ -294,4 +296,4 @@ export {
294
296
  PasswordStrength,
295
297
  PasswordStrength_default
296
298
  };
297
- //# sourceMappingURL=chunk-LWRI6HGT.js.map
299
+ //# sourceMappingURL=chunk-ECNJGROX.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/form/PasswordStrength/PasswordStrength.tsx"],"sourcesContent":["import CheckIcon from '@mui/icons-material/Check';\nimport CloseIcon from '@mui/icons-material/Close';\n\nimport Box from '@mui/material/Box/index.js';\nimport Chip from '@mui/material/Chip/index.js';\nimport Fade from '@mui/material/Fade/index.js';\nimport LinearProgress from '@mui/material/LinearProgress/index.js';\nimport Stack from '@mui/material/Stack/index.js';\nimport Typography from '@mui/material/Typography/index.js';\nimport type { Theme } from '@mui/material/styles/index.js';\nimport { alpha, keyframes, styled, useTheme } from '@mui/material/styles/index.js';\nimport type { FC} from 'react';\nimport React, { useMemo } from 'react';\n\nimport type { RequirementChecks } from './PasswordStrength.helpers';\nimport {\n buildSuggestions,\n calculatePasswordStrength,\n defaultRequirements,\n evaluateRequirements,\n getStrengthIcon,\n getStrengthLabel,\n SuggestionsList } from './PasswordStrength.helpers';\nimport type { PasswordRequirements, PasswordStrengthProps } from './PasswordStrength.types';\nimport type { PasswordStrengthCopy } from '../../../copy';\nimport { rem, rems, sxRem } from '../../../tokens/relative';\n\ninterface RequirementIconProps {\n met: boolean;\n}\n const RequirementIcon: FC<RequirementIconProps> = ({ met }) => {\n return met ? (\n <CheckIcon data-testid=\"check-icon\" />\n ) : (\n <CloseIcon data-testid=\"close-icon\" />\n );\n};\n\n// Default requirements\n// Animation keyframes\nconst pulseAnimation = keyframes`\n 0%, 100% {\n opacity: 1;\n }\n 50% {\n opacity: 0.7;\n }\n`;\n\nconst slideInAnimation = (theme: Theme) => keyframes`\n from {\n transform: translateX(${rem(theme, -10)});\n opacity: 0;\n }\n to {\n transform: translateX(0);\n opacity: 1;\n }\n`;\n\n// Styled components\nconst StrengthContainer = styled(Box, {\n shouldForwardProp: (prop) => prop !== 'animated' })<{ animated?: boolean }>(({ theme, animated }) => ({\n width: '100%',\n padding: theme.spacing(2),\n background: `linear-gradient(135deg, ${alpha(theme.palette.background.paper, 0.8)} 0%, ${alpha(theme.palette.background.paper, 0.6)} 100%)`,\n backdropFilter: `blur(${rem(theme, 10)})`,\n WebkitBackdropFilter: `blur(${rem(theme, 10)})`,\n border: `1px solid ${alpha(theme.palette.divider, 0.18)}`,\n borderRadius: theme.shape.borderRadius * 2,\n transition: animated ? 'all 0.3s ease' : 'none' }));\n\nconst StrengthBar = styled(LinearProgress, {\n shouldForwardProp: (prop) => prop !== 'strength' && prop !== 'animated' })<{ strength: number; animated?: boolean }>(({ theme, strength, animated }) => {\n const getColor = () => {\n if (strength <= 20) return theme.palette.error.main;\n if (strength <= 40) return theme.palette.warning.main;\n if (strength <= 60) return theme.palette.info.main;\n if (strength <= 80) return theme.palette.success.light;\n return theme.palette.success.main;\n };\n\n const getGradient = () => {\n const color = getColor();\n return `linear-gradient(90deg, ${color} 0%, ${alpha(color, 0.8)} 100%)`;\n };\n\n return {\n height: rem(theme, 8),\n borderRadius: rem(theme, 4),\n backgroundColor: alpha(theme.palette.action.disabled, 0.1),\n '& .MuiLinearProgress-bar': {\n borderRadius: rem(theme, 4),\n background: getGradient(),\n transition: animated ? 'all 0.3s ease' : 'none',\n boxShadow: `0 ${rems(theme, 2, 8)} ${alpha(getColor(), 0.3)}` } };\n});\n\nconst RequirementItem = styled(Box, {\n shouldForwardProp: (prop) => prop !== 'met' && prop !== 'animated' })<{ met: boolean; animated?: boolean }>(({ theme, met, animated }) => ({\n display: 'flex',\n alignItems: 'center',\n gap: theme.spacing(1),\n padding: theme.spacing(0.75, 1),\n borderRadius: theme.shape.borderRadius,\n background: met\n ? alpha(theme.palette.success.main, 0.08)\n : alpha(theme.palette.action.disabled, 0.04),\n transition: animated ? 'all 0.3s ease' : 'none',\n animation: animated ? `${slideInAnimation(theme)} 0.3s ease` : 'none',\n '& svg': {\n fontSize: rem(theme, 16),\n color: met ? theme.palette.success.main : theme.palette.text.disabled } }));\n\nconst StrengthLabel = styled(Chip, {\n shouldForwardProp: (prop) => prop !== 'strength' && prop !== 'animated' })<{ strength: number; animated?: boolean }>(({ theme, strength, animated }) => {\n const getColor = () => {\n if (strength <= 20) return theme.palette.error;\n if (strength <= 40) return theme.palette.warning;\n if (strength <= 60) return theme.palette.info;\n if (strength <= 80) return theme.palette.success;\n return theme.palette.success;\n };\n\n const palette = getColor();\n\n return {\n background: alpha(palette.main, 0.1),\n color: palette.main,\n border: `1px solid ${alpha(palette.main, 0.3)}`,\n fontWeight: 600,\n animation: animated ? `${pulseAnimation} 2s ease infinite` : 'none' };\n});\n\nconst StepsContainer = styled(Box)(({ theme }) => ({\n display: 'flex',\n gap: theme.spacing(1),\n marginTop: theme.spacing(2) }));\n\nconst Step = styled(Box, {\n shouldForwardProp: (prop) => prop !== 'active' && prop !== 'completed' && prop !== 'animated' })<{ active: boolean; completed: boolean; animated?: boolean }>(\n ({ theme, active, completed, animated }) => ({\n flex: 1,\n height: rem(theme, 6),\n borderRadius: rem(theme, 3),\n background: completed\n ? `linear-gradient(90deg, ${theme.palette.success.main} 0%, ${theme.palette.success.light} 100%)`\n : active\n ? `linear-gradient(90deg, ${theme.palette.warning.main} 0%, ${theme.palette.warning.light} 100%)`\n : alpha(theme.palette.action.disabled, 0.2),\n transition: animated ? 'all 0.3s ease' : 'none',\n boxShadow: completed ? `0 ${rems(theme, 2, 8)} ${alpha(theme.palette.success.main, 0.3)}` : 'none' }),\n);\n\n// The three indicator variants, out of the component body so the render keeps\n// only its own layout branches.\nconst StrengthIndicator: React.FC<{\n variant: PasswordStrengthProps['variant'];\n strength: number;\n animated: boolean;\n}> = ({ variant, strength, animated }) => {\n const theme = useTheme();\n\n switch (variant) {\n case 'circular':\n return (\n <Box sx={{ position: 'relative', display: 'inline-flex' }}>\n <Box\n sx={{\n width: sxRem(80),\n height: sxRem(80),\n borderRadius: '50%',\n background: `conic-gradient(\n ${theme.palette.success.main} 0deg ${strength * 3.6}deg,\n ${alpha(theme.palette.action.disabled, 0.1)} ${strength * 3.6}deg 360deg\n )`,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n boxShadow: `0 ${rems(theme, 4, 12)} ${alpha(theme.palette.success.main, strength / 200)}` }}\n >\n <Box\n sx={{\n width: sxRem(64),\n height: sxRem(64),\n borderRadius: '50%',\n background: theme.palette.background.paper,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n flexDirection: 'column' }}\n >\n <Typography variant=\"h6\" fontWeight=\"bold\">\n {strength}%\n </Typography>\n </Box>\n </Box>\n </Box>\n );\n\n case 'steps': {\n const steps = 5;\n const activeStep = Math.ceil((strength / 100) * steps);\n return (\n <StepsContainer>\n {Array.from({ length: steps }, (_, i) => (\n <Step key={i} active={i === activeStep - 1} completed={i < activeStep - 1} animated={animated} />\n ))}\n </StepsContainer>\n );\n }\n\n default:\n return <StrengthBar variant=\"determinate\" value={strength} strength={strength} animated={animated} />;\n }\n};\n\nconst StrengthHeading: React.FC<{\n copy: PasswordStrengthCopy;\n strength: number;\n hasValue: boolean;\n animated: boolean;\n}> = ({ copy, strength, hasValue, animated }) => (\n <Box sx={{ display: 'flex', justifyContent: 'space-between', alignItems: 'center' }}>\n <Typography variant=\"body2\" color=\"text.secondary\">\n {copy.strengthHeading}\n </Typography>\n {hasValue && (\n <Fade in={true}>\n <StrengthLabel\n label={getStrengthLabel(strength, copy.bands)}\n icon={getStrengthIcon(strength)}\n size=\"small\"\n strength={strength}\n animated={animated}\n />\n </Fade>\n )}\n </Box>\n);\n\n// One row per enabled requirement. Previously five near-identical JSX blocks,\n// each with its own `requirements.x &&` guard.\n//\n// `forwardRef` because it is `Fade`'s child: Fade hands it a ref and reads\n// `scrollTop` off that node on enter, so a component that drops the ref throws\n// the moment the first character is typed. Only the ref: Fade's injected\n// `style` (opacity/visibility) is still dropped, so the list stays visible.\nconst RequirementsList = React.forwardRef<\n HTMLDivElement,\n {\n copy: PasswordStrengthCopy;\n requirements: PasswordRequirements;\n checks: RequirementChecks;\n animated: boolean;\n }\n>(({ copy, requirements, checks, animated }, ref) => {\n const rows: ReadonlyArray<[unknown, keyof RequirementChecks, React.ReactNode]> = [\n [requirements.minLength, 'length', copy.requirements.minLength(requirements.minLength ?? 0)],\n [requirements.uppercase, 'uppercase', copy.requirements.uppercase],\n [requirements.lowercase, 'lowercase', copy.requirements.lowercase],\n [requirements.numbers, 'numbers', copy.requirements.numbers],\n [requirements.special, 'special', copy.requirements.special],\n ];\n\n return (\n <Stack ref={ref} spacing={1}>\n <Typography variant=\"caption\" color=\"text.secondary\" fontWeight=\"medium\">\n {copy.requirementsHeading}\n </Typography>\n {rows\n .filter(([enabled]) => Boolean(enabled))\n .map(([, key, label]) => (\n <RequirementItem key={key} met={checks[key]} animated={animated}>\n <RequirementIcon met={checks[key]} />\n <Typography variant=\"caption\">{label}</Typography>\n </RequirementItem>\n ))}\n </Stack>\n );\n});\nRequirementsList.displayName = 'RequirementsList';\n\n// The visible sections. Kept apart from PasswordStrength itself so the exported\n// component is just prop defaults plus the three memos, and every display guard\n// lives in one place.\nconst PasswordStrengthBody: React.FC<{\n value: string;\n strength: number;\n copy: PasswordStrengthCopy;\n requirements: PasswordRequirements;\n requirementChecks: RequirementChecks;\n suggestions: string[];\n showStrengthLabel: boolean;\n showRequirements: boolean;\n showSuggestions: boolean;\n variant: PasswordStrengthProps['variant'];\n animated: boolean;\n}> = ({\n copy,\n value,\n strength,\n requirements,\n requirementChecks,\n suggestions,\n showStrengthLabel,\n showRequirements,\n showSuggestions,\n variant,\n animated }) => (\n <Stack spacing={2}>\n {showStrengthLabel && (\n <StrengthHeading\n copy={copy}\n strength={strength}\n hasValue={value.length > 0}\n animated={animated}\n />\n )}\n\n <StrengthIndicator variant={variant} strength={strength} animated={animated} />\n\n {showRequirements && (\n <Fade in={value.length > 0}>\n <RequirementsList\n copy={copy}\n requirements={requirements}\n checks={requirementChecks}\n animated={animated}\n />\n </Fade>\n )}\n\n {showSuggestions && suggestions.length > 0 && value.length > 0 && (\n <Fade in={true}>\n <SuggestionsList suggestions={suggestions} heading={copy.suggestionsHeading} />\n </Fade>\n )}\n </Stack>\n);\n\n// Main component\nexport const PasswordStrength: FC<PasswordStrengthProps> = ({\n copy,\n value = '',\n showRequirements = true,\n requirements = defaultRequirements,\n showStrengthLabel = true,\n showSuggestions = false,\n variant = 'linear',\n animated = true,\n 'data-testid': dataTestId }) => {\n\n const strength = useMemo(\n () => calculatePasswordStrength(value, requirements),\n [value, requirements],\n );\n\n const requirementChecks = useMemo(\n () => evaluateRequirements(value, requirements),\n [value, requirements],\n );\n\n const suggestions = useMemo(\n () => buildSuggestions(requirementChecks, copy.suggestions, requirements.minLength ?? 0),\n [requirementChecks, copy.suggestions, requirements.minLength],\n );\n\n return (\n <StrengthContainer animated={animated} data-testid={dataTestId}>\n <PasswordStrengthBody\n copy={copy}\n value={value}\n strength={strength}\n requirements={requirements}\n requirementChecks={requirementChecks}\n suggestions={suggestions}\n showStrengthLabel={showStrengthLabel}\n showRequirements={showRequirements}\n showSuggestions={showSuggestions}\n variant={variant}\n animated={animated}\n />\n </StrengthContainer>\n );\n};\n\n// Export default\nexport default PasswordStrength;\n"],"mappings":"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","names":[]}