@12-apps/ui 6.78.3 → 6.79.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 (1003) hide show
  1. package/dist/_internal/components/data-display/Alert/Alert.js +3 -3
  2. package/dist/_internal/components/data-display/AlertDialog/AlertDialog.js +2 -1
  3. package/dist/_internal/components/data-display/AsyncStateContainer/AsyncStateContainer.js +3 -3
  4. package/dist/_internal/components/data-display/Avatar/Avatar.js +4 -4
  5. package/dist/_internal/components/data-display/Avatar/Avatar.view.js +2 -2
  6. package/dist/_internal/components/data-display/CardKit/card-actions-context.js +4 -4
  7. package/dist/_internal/components/data-display/CardKit/use-remove-confirm.js +11 -10
  8. package/dist/_internal/components/data-display/CardKit/use-row-confirm.js +7 -6
  9. package/dist/_internal/components/data-display/Carousel/Carousel.chrome.js +5 -2
  10. package/dist/_internal/components/data-display/Carousel/Carousel.js +7 -4
  11. package/dist/_internal/components/data-display/Carousel/Carousel.parts.js +4 -1
  12. package/dist/_internal/components/data-display/Chart/Chart.js +3 -3
  13. package/dist/_internal/components/data-display/Chart/SpecChart.js +6 -6
  14. package/dist/_internal/components/data-display/Chart/chart-renderers.js +2 -2
  15. package/dist/_internal/components/data-display/Chart/chart-spec.js +2 -2
  16. package/dist/_internal/components/data-display/DataGrid/DataGrid.js +2 -2
  17. package/dist/_internal/components/data-display/DataViews/DataViewsGrid.js +50 -49
  18. package/dist/_internal/components/data-display/DataViews/DataViewsTableBase.js +70 -69
  19. package/dist/_internal/components/data-display/DataViews/DeleteViewDialog.js +4 -3
  20. package/dist/_internal/components/data-display/DataViews/ManageViewsDialog.js +9 -8
  21. package/dist/_internal/components/data-display/DataViews/SaveViewModal.js +8 -7
  22. package/dist/_internal/components/data-display/DataViews/base-card.js +5 -5
  23. package/dist/_internal/components/data-display/DataViews/base-list-card-geometry.js +3 -3
  24. package/dist/_internal/components/data-display/DataViews/base-list-card-gutters.js +3 -3
  25. package/dist/_internal/components/data-display/DataViews/base-list-card-layout.js +3 -3
  26. package/dist/_internal/components/data-display/DataViews/base-list-card-slots.js +2 -2
  27. package/dist/_internal/components/data-display/DataViews/base-list-card.js +10 -10
  28. package/dist/_internal/components/data-display/DataViews/data-views-category-pill.js +15 -14
  29. package/dist/_internal/components/data-display/DataViews/data-views-filter-panel.js +21 -20
  30. package/dist/_internal/components/data-display/DataViews/data-views-grid-bodies.js +6 -6
  31. package/dist/_internal/components/data-display/DataViews/data-views-grid-parts.js +45 -44
  32. package/dist/_internal/components/data-display/DataViews/data-views-inline-bar.js +22 -21
  33. package/dist/_internal/components/data-display/DataViews/data-views-more-fields.js +19 -18
  34. package/dist/_internal/components/data-display/DataViews/data-views-more-filters.js +20 -19
  35. package/dist/_internal/components/data-display/DataViews/data-views-pagination.js +3 -3
  36. package/dist/_internal/components/data-display/DataViews/data-views-range-pill.js +2 -2
  37. package/dist/_internal/components/data-display/DataViews/data-views-shell-toolbar.js +9 -8
  38. package/dist/_internal/components/data-display/DataViews/data-views-table-parts.js +22 -21
  39. package/dist/_internal/components/data-display/DataViews/data-views-toolbar.js +8 -7
  40. package/dist/_internal/components/data-display/DataViews/list-card-rails.js +2 -2
  41. package/dist/_internal/components/data-display/DataViews/use-data-views-state.js +4 -4
  42. package/dist/_internal/components/data-display/EmptyState/EmptyState.js +2 -2
  43. package/dist/_internal/components/data-display/FleetMap/FleetBody.js +11 -8
  44. package/dist/_internal/components/data-display/FleetMap/FleetCanvas.js +10 -7
  45. package/dist/_internal/components/data-display/FleetMap/FleetMap.fixtures.js +1 -1
  46. package/dist/_internal/components/data-display/FleetMap/FleetMap.js +15 -12
  47. package/dist/_internal/components/data-display/HoverCard/HoverCard.js +2 -2
  48. package/dist/_internal/components/data-display/InteractiveTooltip/InteractiveTooltip.js +2 -2
  49. package/dist/_internal/components/data-display/LazyImage/LazyImage.hooks.js +1 -1
  50. package/dist/_internal/components/data-display/LazyImage/LazyImage.js +3 -2
  51. package/dist/_internal/components/data-display/Lightbox/Lightbox.js +6 -6
  52. package/dist/_internal/components/data-display/MapPreview/MapControlBar.js +5 -1
  53. package/dist/_internal/components/data-display/MapPreview/MapLayers.js +7 -3
  54. package/dist/_internal/components/data-display/MapPreview/MapMarkers.js +5 -1
  55. package/dist/_internal/components/data-display/MapPreview/MapPreview.helpers.js +6 -1
  56. package/dist/_internal/components/data-display/MapPreview/MapPreview.js +9 -6
  57. package/dist/_internal/components/data-display/Progress/Progress.js +2 -2
  58. package/dist/_internal/components/data-display/SectionOnboarding/SectionOnboarding.js +6 -4
  59. package/dist/_internal/components/data-display/Sheet/Sheet.hooks.js +2 -2
  60. package/dist/_internal/components/data-display/Sheet/Sheet.js +4 -4
  61. package/dist/_internal/components/data-display/Stepper/Stepper.js +3 -1
  62. package/dist/_internal/components/data-display/Table/Table.helpers.js +1 -1
  63. package/dist/_internal/components/data-display/Table/Table.js +6 -4
  64. package/dist/_internal/components/data-display/Table/TableParts.hooks.js +4 -2
  65. package/dist/_internal/components/data-display/Table/TableParts.js +4 -2
  66. package/dist/_internal/components/data-display/Timeline/Timeline.js +4 -2
  67. package/dist/_internal/components/data-display/Timeline/TimelineRow.js +1 -1
  68. package/dist/_internal/components/data-display/index.js +69 -64
  69. package/dist/_internal/components/feedback/ConfirmAction/ConfirmAction.js +4 -3
  70. package/dist/_internal/components/feedback/ConfirmAction/ConfirmAction.parts.js +3 -2
  71. package/dist/_internal/components/feedback/ConfirmAction/ConfirmButton.js +5 -4
  72. package/dist/_internal/components/feedback/ConfirmAction/with-confirmation.js +4 -3
  73. package/dist/_internal/components/feedback/Dialog/Dialog.js +3 -2
  74. package/dist/_internal/components/feedback/NotificationStatusNotice/NotificationStatusNotice.js +4 -4
  75. package/dist/_internal/components/feedback/SequenceResolver/SequenceResolver.js +12 -11
  76. package/dist/_internal/components/feedback/SequenceResolver/SequenceResolver.parts.js +6 -6
  77. package/dist/_internal/components/feedback/Sonner/Sonner.js +3 -2
  78. package/dist/_internal/components/feedback/Sonner/SonnerToast.js +1 -1
  79. package/dist/_internal/components/feedback/StackedModal/StackedModal.js +7 -6
  80. package/dist/_internal/components/feedback/StackedModal/StackedModal.parts.js +2 -1
  81. package/dist/_internal/components/feedback/Toast/Toast.js +2 -1
  82. package/dist/_internal/components/feedback/TutorialOverlay/TutorialOverlay.js +3 -2
  83. package/dist/_internal/components/feedback/TutorialOverlay/TutorialStepBody.js +2 -1
  84. package/dist/_internal/components/feedback/index.js +33 -31
  85. package/dist/_internal/components/form/AddressAutocomplete/AddressAutocomplete.helpers.js +3 -1
  86. package/dist/_internal/components/form/AddressAutocomplete/AddressAutocomplete.hooks.js +8 -6
  87. package/dist/_internal/components/form/AddressAutocomplete/AddressAutocomplete.js +12 -10
  88. package/dist/_internal/components/form/AddressAutocomplete/AddressAutocompleteField.js +4 -2
  89. package/dist/_internal/components/form/AddressAutocomplete/useAddressPredictions.js +4 -2
  90. package/dist/_internal/components/form/AddressAutocomplete/useAddressSelection.js +1 -1
  91. package/dist/_internal/components/form/AddressAutocomplete/useCurrentLocation.js +1 -1
  92. package/dist/_internal/components/form/AddressAutocomplete/useGoogleMapsAPI.js +1 -1
  93. package/dist/_internal/components/form/Autocomplete/Autocomplete.js +2 -2
  94. package/dist/_internal/components/form/Calendar/Calendar.hooks.js +2 -2
  95. package/dist/_internal/components/form/Calendar/Calendar.js +6 -6
  96. package/dist/_internal/components/form/Calendar/CalendarDay.js +1 -1
  97. package/dist/_internal/components/form/Calendar/CalendarDayCell.js +2 -2
  98. package/dist/_internal/components/form/Calendar/CalendarMonth.js +3 -3
  99. package/dist/_internal/components/form/CategorySelect/CategoryPanel.js +5 -5
  100. package/dist/_internal/components/form/CategorySelect/CategoryPanelList.js +3 -3
  101. package/dist/_internal/components/form/CategorySelect/CategoryRows.js +2 -2
  102. package/dist/_internal/components/form/CategorySelect/CategorySelect.js +9 -9
  103. package/dist/_internal/components/form/Checkbox/Checkbox.js +2 -2
  104. package/dist/_internal/components/form/CodeEditor/CodeEditor.js +3 -3
  105. package/dist/_internal/components/form/DateRangePicker/DateRangePicker.js +9 -9
  106. package/dist/_internal/components/form/InputOTP/InputOTP.js +2 -2
  107. package/dist/_internal/components/form/Menubar/Menubar.js +2 -2
  108. package/dist/_internal/components/form/PhoneInput/PhoneInput.hooks.js +2 -2
  109. package/dist/_internal/components/form/PhoneInput/PhoneInput.js +3 -3
  110. package/dist/_internal/components/form/PhoneInput/countries.js +7 -3
  111. package/dist/_internal/components/form/PickerSheet/PickerSheet.js +4 -4
  112. package/dist/_internal/components/form/RichTextEditor/RichTextEditor.dom.js +2 -1
  113. package/dist/_internal/components/form/RichTextEditor/RichTextEditor.format.js +3 -2
  114. package/dist/_internal/components/form/RichTextEditor/RichTextEditor.hooks.js +4 -3
  115. package/dist/_internal/components/form/RichTextEditor/RichTextEditor.js +7 -5
  116. package/dist/_internal/components/form/RichTextEditor/RichTextEditorToolbar.js +1 -1
  117. package/dist/_internal/components/form/Switch/Switch.js +4 -4
  118. package/dist/_internal/components/form/Switch/Switch.parts.js +3 -3
  119. package/dist/_internal/components/form/Switch/Switch.styles.js +2 -2
  120. package/dist/_internal/components/form/Textarea/Textarea.js +1 -1
  121. package/dist/_internal/components/form/Textarea/TextareaRichEditor.js +4 -1
  122. package/dist/_internal/components/form/Textarea/TextareaRichEditor.js.map +1 -1
  123. package/dist/_internal/components/form/UploadButton/UploadButton.hooks.js +2 -1
  124. package/dist/_internal/components/form/UploadButton/UploadButton.js +3 -2
  125. package/dist/_internal/components/form/index.js +48 -45
  126. package/dist/_internal/components/form/total-form/Fields/CategoryField.js +10 -10
  127. package/dist/_internal/components/form/total-form/Fields/index.js +13 -13
  128. package/dist/_internal/components/form/total-form/FormErrorSnackbar.js +3 -2
  129. package/dist/_internal/components/index.js +196 -188
  130. package/dist/_internal/components/layout/Card/Card.js +2 -2
  131. package/dist/_internal/components/layout/ContentToolbar/FilterTrigger.js +2 -1
  132. package/dist/_internal/components/layout/ContentToolbar/ViewSelector.js +2 -1
  133. package/dist/_internal/components/layout/Dashboard/Dashboard.js +2 -1
  134. package/dist/_internal/components/layout/ScrollArea/ScrollArea.js +3 -3
  135. package/dist/_internal/components/layout/SettingCard/SettingCard.js +4 -4
  136. package/dist/_internal/components/layout/SettingCard/SettingCard.summary.js +3 -3
  137. package/dist/_internal/components/layout/SettingCard/SettingGroup.js +10 -10
  138. package/dist/_internal/components/layout/SettingCard/SettingSwitch.js +8 -8
  139. package/dist/_internal/components/layout/SettingCard/SettingToggle.js +10 -10
  140. package/dist/_internal/components/layout/SettingsLayout/SettingsLayout.js +6 -6
  141. package/dist/_internal/components/layout/SettingsLayout/SettingsPanel.js +3 -3
  142. package/dist/_internal/components/layout/SettingsLayout/SettingsSectionChips.js +2 -2
  143. package/dist/_internal/components/layout/index.js +34 -33
  144. package/dist/_internal/components/navigation/AppHeader/AppHeader.details.js +8 -7
  145. package/dist/_internal/components/navigation/CommandPalette/CommandPalette.helpers.js +2 -1
  146. package/dist/_internal/components/navigation/CommandPalette/CommandPalette.hooks.js +3 -2
  147. package/dist/_internal/components/navigation/CommandPalette/CommandPalette.js +6 -4
  148. package/dist/_internal/components/navigation/CommandPalette/CommandPaletteResults.js +3 -1
  149. package/dist/_internal/components/navigation/NavigationMenu/NavigationMegaSection.js +4 -4
  150. package/dist/_internal/components/navigation/NavigationMenu/NavigationMenu.js +7 -6
  151. package/dist/_internal/components/navigation/NavigationMenu/NavigationMenu.shell.js +1 -1
  152. package/dist/_internal/components/navigation/NavigationMenu/NavigationMenuItem.js +2 -2
  153. package/dist/_internal/components/navigation/NavigationMenu/NavigationStandardBody.js +5 -4
  154. package/dist/_internal/components/navigation/Pagination/Pagination.js +2 -2
  155. package/dist/_internal/components/navigation/SectionNav/SectionNav.bar.js +2 -2
  156. package/dist/_internal/components/navigation/SectionNav/SectionNav.js +4 -4
  157. package/dist/_internal/components/navigation/index.js +29 -26
  158. package/dist/_internal/components/typography/Code/Code.js +2 -1
  159. package/dist/_internal/components/typography/index.js +2 -1
  160. package/dist/_internal/components/utility/InstallPrompt/InstallPrompt.js +2 -2
  161. package/dist/_internal/components/utility/WorkflowStep/WorkflowStep.helpers.js +7 -3
  162. package/dist/_internal/components/utility/WorkflowStep/WorkflowStep.js +6 -4
  163. package/dist/_internal/components/utility/WorkflowStep/WorkflowStep.parts.js +4 -2
  164. package/dist/_internal/components/utility/WorkflowStep/WorkflowStepRow.js +5 -3
  165. package/dist/_internal/components/utility/index.js +8 -6
  166. package/dist/_internal/copy/labels.js +1 -0
  167. package/dist/_internal/en-US.data-display.js +1 -1
  168. package/dist/_internal/en-US.feedback.js +1 -1
  169. package/dist/_internal/en-US.form.js +1 -1
  170. package/dist/_internal/en-US.labels.js +8 -0
  171. package/dist/_internal/en-US.navigation.js +1 -1
  172. package/dist/_internal/en-US.utility.js +1 -1
  173. package/dist/_internal/pt-BR.data-display.js +1 -1
  174. package/dist/_internal/pt-BR.feedback.js +1 -1
  175. package/dist/_internal/pt-BR.form.js +1 -1
  176. package/dist/_internal/pt-BR.labels.js +8 -0
  177. package/dist/_internal/pt-BR.labels.js.map +1 -0
  178. package/dist/_internal/pt-BR.navigation.js +1 -1
  179. package/dist/_internal/pt-BR.utility.js +1 -1
  180. package/dist/_internal/social-login-button/social-login-button.js +4 -4
  181. package/dist/_internal/user-avatar/user-avatar.js +8 -7
  182. package/dist/_internal/utils/resolve-labels.js +8 -0
  183. package/dist/_internal/utils/resolve-labels.js.map +1 -0
  184. package/dist/charts.js +11 -11
  185. package/dist/{chunk-2ILXXBMG.js → chunk-25HBYY4O.js} +12 -6
  186. package/dist/chunk-25HBYY4O.js.map +1 -0
  187. package/dist/{chunk-OPP6USJC.js → chunk-2FQF4CNE.js} +2 -2
  188. package/dist/{chunk-BWFQEASG.js → chunk-2P5ZBBTL.js} +5 -5
  189. package/dist/{chunk-QVO4SIS7.js → chunk-3W2B7IZG.js} +2 -2
  190. package/dist/{chunk-PMRLFNBT.js → chunk-3XLSA3YB.js} +4 -4
  191. package/dist/{chunk-7P5PNRBT.js → chunk-3YCV4EP7.js} +6 -6
  192. package/dist/{chunk-AYP6ICAY.js → chunk-44FY2YZL.js} +11 -10
  193. package/dist/chunk-44FY2YZL.js.map +1 -0
  194. package/dist/chunk-47IAX6PI.js +119 -0
  195. package/dist/chunk-47IAX6PI.js.map +1 -0
  196. package/dist/{chunk-Q6PRGXR2.js → chunk-4HBCWKIX.js} +4 -4
  197. package/dist/{chunk-HN3PZTUK.js → chunk-4MKVGSHX.js} +5 -5
  198. package/dist/{chunk-EERUSI52.js → chunk-4N3I7ZHQ.js} +2 -2
  199. package/dist/{chunk-O6SAU5JA.js → chunk-4OTJ66ID.js} +4 -4
  200. package/dist/{chunk-LG52LMAM.js → chunk-556LO6KA.js} +3 -3
  201. package/dist/{chunk-LBZEPWYK.js → chunk-5GLOEGOM.js} +4 -4
  202. package/dist/{chunk-KZXOIRUP.js → chunk-5MAD6ZEI.js} +43 -12
  203. package/dist/chunk-5MAD6ZEI.js.map +1 -0
  204. package/dist/{chunk-XICRCPEQ.js → chunk-5U7LBO2V.js} +5 -4
  205. package/dist/chunk-5U7LBO2V.js.map +1 -0
  206. package/dist/{chunk-JE6RZ5L6.js → chunk-5ZOJLYD2.js} +4 -4
  207. package/dist/{chunk-GSXYXMCV.js → chunk-66BRUS2M.js} +2 -2
  208. package/dist/{chunk-ALREWFRX.js → chunk-6DGNMASB.js} +4 -4
  209. package/dist/{chunk-MA6SUE7F.js → chunk-6EZQLNPK.js} +5 -3
  210. package/dist/chunk-6EZQLNPK.js.map +1 -0
  211. package/dist/{chunk-VRPCZ3IE.js → chunk-6JKECOZ2.js} +7 -6
  212. package/dist/chunk-6JKECOZ2.js.map +1 -0
  213. package/dist/{chunk-XKSA4L2X.js → chunk-6MGYPTAL.js} +11 -3
  214. package/dist/chunk-6MGYPTAL.js.map +1 -0
  215. package/dist/{chunk-5752357K.js → chunk-6N2U67KF.js} +4 -4
  216. package/dist/{chunk-UZOG6HNN.js → chunk-6SFJIW54.js} +5 -4
  217. package/dist/chunk-6SFJIW54.js.map +1 -0
  218. package/dist/{chunk-VD72JGHA.js → chunk-73OYC22L.js} +2 -2
  219. package/dist/{chunk-6PU3JYVY.js → chunk-775LIZXS.js} +4 -4
  220. package/dist/{chunk-C5JCARNE.js → chunk-7HKXTRTK.js} +7 -4
  221. package/dist/chunk-7HKXTRTK.js.map +1 -0
  222. package/dist/{chunk-S4JXSC4D.js → chunk-7HZ6TJRH.js} +6 -6
  223. package/dist/{chunk-33LAPBYB.js → chunk-7S25RDE4.js} +9 -5
  224. package/dist/chunk-7S25RDE4.js.map +1 -0
  225. package/dist/{chunk-CSD6SWBZ.js → chunk-A3Z7ZXLM.js} +6 -6
  226. package/dist/{chunk-LI6XSM5D.js → chunk-A6V7KE45.js} +3 -3
  227. package/dist/{chunk-YJBWDDW7.js → chunk-AAWVAQI2.js} +12 -12
  228. package/dist/{chunk-44PBCQ7E.js → chunk-ABQZFK7M.js} +6 -6
  229. package/dist/{chunk-EIMFA7KP.js → chunk-ANUO67JQ.js} +2 -2
  230. package/dist/{chunk-PTQRJEPN.js → chunk-AOBQ3KYY.js} +2 -2
  231. package/dist/{chunk-LODYTVOO.js → chunk-B25SHVWP.js} +4 -4
  232. package/dist/{chunk-GTT5UKKO.js → chunk-BDJIP4HG.js} +4 -4
  233. package/dist/{chunk-RS576GOH.js → chunk-BIUT3K6A.js} +4 -4
  234. package/dist/{chunk-4NQXHPQR.js → chunk-BJ7NWZWO.js} +11 -2
  235. package/dist/chunk-BJ7NWZWO.js.map +1 -0
  236. package/dist/{chunk-A5NXBOWS.js → chunk-BLHSLB5D.js} +5 -5
  237. package/dist/{chunk-DYHOBKPU.js → chunk-BLZDSCIZ.js} +6 -6
  238. package/dist/{chunk-E53MMMDA.js → chunk-BX6CF2UG.js} +3 -3
  239. package/dist/{chunk-WVZBYTIK.js → chunk-C465AAD5.js} +29 -19
  240. package/dist/chunk-C465AAD5.js.map +1 -0
  241. package/dist/{chunk-7HA7UH7O.js → chunk-C4OETF7K.js} +4 -4
  242. package/dist/{chunk-64AOS2WA.js → chunk-CAHN7AMY.js} +5 -5
  243. package/dist/{chunk-Z24VOTA7.js → chunk-CCWE6DBC.js} +4 -2
  244. package/dist/{chunk-Z24VOTA7.js.map → chunk-CCWE6DBC.js.map} +1 -1
  245. package/dist/{chunk-YLSDFW5O.js → chunk-CN4JS57H.js} +35 -5
  246. package/dist/chunk-CN4JS57H.js.map +1 -0
  247. package/dist/{chunk-MSC43MCJ.js → chunk-CRFOAKQL.js} +5 -5
  248. package/dist/{chunk-IQ2U5MVO.js → chunk-CSQWPDQV.js} +9 -9
  249. package/dist/{chunk-B2JYQBO4.js → chunk-CXTRDTNM.js} +11 -6
  250. package/dist/chunk-CXTRDTNM.js.map +1 -0
  251. package/dist/{chunk-TTCVYY2B.js → chunk-CYKINZKO.js} +22 -7
  252. package/dist/chunk-CYKINZKO.js.map +1 -0
  253. package/dist/{chunk-FT6HBP5E.js → chunk-DE7E2GBP.js} +11 -8
  254. package/dist/chunk-DE7E2GBP.js.map +1 -0
  255. package/dist/{chunk-QWVETTIY.js → chunk-DJMVBIFD.js} +21 -12
  256. package/dist/chunk-DJMVBIFD.js.map +1 -0
  257. package/dist/{chunk-3HLKTBEO.js → chunk-DQ22UKMZ.js} +4 -2
  258. package/dist/{chunk-3HLKTBEO.js.map → chunk-DQ22UKMZ.js.map} +1 -1
  259. package/dist/{chunk-INGPH3YQ.js → chunk-DVRNW33K.js} +28 -5
  260. package/dist/chunk-DVRNW33K.js.map +1 -0
  261. package/dist/{chunk-VQYR64QB.js → chunk-DX5PLJKN.js} +8 -3
  262. package/dist/chunk-DX5PLJKN.js.map +1 -0
  263. package/dist/{chunk-7XSCEHGA.js → chunk-EOQ6EKTS.js} +7 -7
  264. package/dist/{chunk-UGH2DDST.js → chunk-ETSASQXI.js} +4 -2
  265. package/dist/chunk-ETSASQXI.js.map +1 -0
  266. package/dist/{chunk-3VXS7O3X.js → chunk-EVYLJ5JB.js} +17 -3
  267. package/dist/chunk-EVYLJ5JB.js.map +1 -0
  268. package/dist/chunk-FB4GLQQO.js +102 -0
  269. package/dist/chunk-FB4GLQQO.js.map +1 -0
  270. package/dist/{chunk-WC3W36AM.js → chunk-FKUVFPQZ.js} +26 -12
  271. package/dist/chunk-FKUVFPQZ.js.map +1 -0
  272. package/dist/{chunk-VEKTKCSB.js → chunk-FLJ3RIRP.js} +5 -5
  273. package/dist/{chunk-LH4VKUZC.js → chunk-FLTXJWOC.js} +13 -7
  274. package/dist/chunk-FLTXJWOC.js.map +1 -0
  275. package/dist/{chunk-2ARVNCVU.js → chunk-FZUAB2KS.js} +8 -6
  276. package/dist/chunk-FZUAB2KS.js.map +1 -0
  277. package/dist/{chunk-PY3RW5LC.js → chunk-G2IVONJD.js} +24 -10
  278. package/dist/chunk-G2IVONJD.js.map +1 -0
  279. package/dist/{chunk-Z5WUSI47.js → chunk-G3JFESKD.js} +6 -6
  280. package/dist/{chunk-XRDH24J7.js → chunk-G6ET2DRL.js} +2 -2
  281. package/dist/{chunk-KIL3OVLI.js → chunk-G76PIGF7.js} +6 -2
  282. package/dist/chunk-G76PIGF7.js.map +1 -0
  283. package/dist/{chunk-XQWUVQ2F.js → chunk-GHGZI7PK.js} +6 -2
  284. package/dist/chunk-GHGZI7PK.js.map +1 -0
  285. package/dist/{chunk-4MQ6XTIJ.js → chunk-GJMWQUAD.js} +24 -13
  286. package/dist/chunk-GJMWQUAD.js.map +1 -0
  287. package/dist/{chunk-U4G3KY6L.js → chunk-GMU5AA3R.js} +8 -7
  288. package/dist/chunk-GMU5AA3R.js.map +1 -0
  289. package/dist/{chunk-ZFBFQK2Y.js → chunk-GPPUKDA6.js} +11 -12
  290. package/dist/chunk-GPPUKDA6.js.map +1 -0
  291. package/dist/{chunk-O36MIQIO.js → chunk-GPQ22MPR.js} +2 -2
  292. package/dist/{chunk-GRMBCJS6.js → chunk-H6R2L7VI.js} +4 -4
  293. package/dist/{chunk-AMLHEKSV.js → chunk-HI7JPDD6.js} +5 -5
  294. package/dist/{chunk-H3AQQOTI.js → chunk-HKGKQKQT.js} +9 -2
  295. package/dist/chunk-HKGKQKQT.js.map +1 -0
  296. package/dist/{chunk-CW6Y32N2.js → chunk-I2CT4XIP.js} +6 -6
  297. package/dist/{chunk-N34AOGK3.js → chunk-I3OKAQ5L.js} +7 -7
  298. package/dist/{chunk-AEYLFBZT.js → chunk-I4NDZFTB.js} +2 -2
  299. package/dist/{chunk-5J7SA4CZ.js → chunk-IASPZGYB.js} +28 -10
  300. package/dist/chunk-IASPZGYB.js.map +1 -0
  301. package/dist/{chunk-2ZRZTGWP.js → chunk-ISW5K72V.js} +5 -5
  302. package/dist/{chunk-KARMRTTM.js → chunk-J2RUDZVJ.js} +7 -7
  303. package/dist/{chunk-FTPTPASD.js → chunk-JBYFBPI6.js} +2 -5
  304. package/dist/{chunk-FTPTPASD.js.map → chunk-JBYFBPI6.js.map} +1 -1
  305. package/dist/{chunk-4M5GEKPM.js → chunk-JL4I7OQE.js} +4 -4
  306. package/dist/chunk-JQLQOIB3.js +1 -0
  307. package/dist/chunk-JQLQOIB3.js.map +1 -0
  308. package/dist/{chunk-NBXG3SQ3.js → chunk-JSY234NY.js} +5 -5
  309. package/dist/{chunk-HQCZT6TO.js → chunk-JVOEVTCZ.js} +5 -5
  310. package/dist/{chunk-MBMZNSBP.js → chunk-JW7MN4DG.js} +3 -3
  311. package/dist/{chunk-ZPACE34U.js → chunk-K53XSVQO.js} +10 -10
  312. package/dist/{chunk-RUF7TOAZ.js → chunk-KE74C2SM.js} +3 -2
  313. package/dist/{chunk-RUF7TOAZ.js.map → chunk-KE74C2SM.js.map} +1 -1
  314. package/dist/{chunk-GBVNY2LG.js → chunk-KTXJQ4YJ.js} +6 -6
  315. package/dist/{chunk-FCVPVEAS.js → chunk-KYE7I6NT.js} +7 -7
  316. package/dist/{chunk-MM7BPTVV.js → chunk-KYT5G4K7.js} +2 -2
  317. package/dist/{chunk-4VRDFZ4G.js → chunk-KYTFGW4R.js} +7 -3
  318. package/dist/chunk-KYTFGW4R.js.map +1 -0
  319. package/dist/chunk-L35TCXFA.js +74 -0
  320. package/dist/chunk-L35TCXFA.js.map +1 -0
  321. package/dist/{chunk-3V3Z4EML.js → chunk-L4FWEI2P.js} +5 -5
  322. package/dist/{chunk-7VRCGWQL.js → chunk-L7N4AFZD.js} +6 -5
  323. package/dist/chunk-L7N4AFZD.js.map +1 -0
  324. package/dist/{chunk-2TSGRQ2J.js → chunk-LHJJZ462.js} +4 -2
  325. package/dist/chunk-LHJJZ462.js.map +1 -0
  326. package/dist/{chunk-SV6IQ2YO.js → chunk-LIWONEAU.js} +6 -4
  327. package/dist/chunk-LIWONEAU.js.map +1 -0
  328. package/dist/chunk-LL2BWQPM.js +11 -0
  329. package/dist/chunk-LL2BWQPM.js.map +1 -0
  330. package/dist/{chunk-XYFBJH6F.js → chunk-LR473BUT.js} +19 -9
  331. package/dist/chunk-LR473BUT.js.map +1 -0
  332. package/dist/{chunk-56JF5PZK.js → chunk-LYVTJLCF.js} +4 -4
  333. package/dist/{chunk-M3DSPEZ3.js → chunk-M3ZNQTS5.js} +5 -5
  334. package/dist/{chunk-AYJ44VTJ.js → chunk-MBY7DWGT.js} +15 -13
  335. package/dist/chunk-MBY7DWGT.js.map +1 -0
  336. package/dist/{chunk-GBKIGUNP.js → chunk-MGDCGNLC.js} +3 -3
  337. package/dist/{chunk-BGYLL467.js → chunk-N3W6FZOC.js} +4 -4
  338. package/dist/{chunk-BWFUZ4N2.js → chunk-NA3M7KDE.js} +4 -4
  339. package/dist/{chunk-MTGEJRE4.js → chunk-NNKIM73H.js} +17 -4
  340. package/dist/chunk-NNKIM73H.js.map +1 -0
  341. package/dist/{chunk-OHXAJUO5.js → chunk-NPPO7G2B.js} +5 -3
  342. package/dist/{chunk-OHXAJUO5.js.map → chunk-NPPO7G2B.js.map} +1 -1
  343. package/dist/{chunk-FIOBPQL2.js → chunk-NUUX4BBR.js} +10 -3
  344. package/dist/chunk-NUUX4BBR.js.map +1 -0
  345. package/dist/{chunk-7JOLSD2W.js → chunk-P3QFJJJY.js} +3 -3
  346. package/dist/{chunk-RCTHCXS6.js → chunk-PJNIJIE6.js} +2 -2
  347. package/dist/{chunk-DXFKPY2K.js → chunk-PU3FQG7T.js} +4 -4
  348. package/dist/{chunk-6ATXOJVQ.js → chunk-QADTI63U.js} +4 -4
  349. package/dist/{chunk-FRGNTTPA.js → chunk-QDRHIK2R.js} +15 -10
  350. package/dist/chunk-QDRHIK2R.js.map +1 -0
  351. package/dist/{chunk-SUZXPDUQ.js → chunk-QJLOWBFW.js} +12 -6
  352. package/dist/chunk-QJLOWBFW.js.map +1 -0
  353. package/dist/chunk-QNAB53N3.js +1 -0
  354. package/dist/chunk-QNAB53N3.js.map +1 -0
  355. package/dist/{chunk-7ZROYGUG.js → chunk-QOTMQLMW.js} +2 -2
  356. package/dist/{chunk-NQCTANF3.js → chunk-QVDEGBME.js} +7 -7
  357. package/dist/{chunk-HEBZ7Q7O.js → chunk-QVYBRD6U.js} +7 -6
  358. package/dist/chunk-QVYBRD6U.js.map +1 -0
  359. package/dist/{chunk-VNVV6Y2X.js → chunk-RECD3XOL.js} +4 -2
  360. package/dist/chunk-RECD3XOL.js.map +1 -0
  361. package/dist/{chunk-JJVIZR6C.js → chunk-RIPG3QIN.js} +24 -13
  362. package/dist/chunk-RIPG3QIN.js.map +1 -0
  363. package/dist/{chunk-T743IIER.js → chunk-RNQA7MDM.js} +8 -4
  364. package/dist/chunk-RNQA7MDM.js.map +1 -0
  365. package/dist/{chunk-YNDTLBOH.js → chunk-RQMYEPRR.js} +2 -2
  366. package/dist/{chunk-3JDP5OUR.js → chunk-RQY5ONSF.js} +6 -2
  367. package/dist/chunk-RQY5ONSF.js.map +1 -0
  368. package/dist/{chunk-Y7YJYUNV.js → chunk-RRSLH2FV.js} +10 -3
  369. package/dist/chunk-RRSLH2FV.js.map +1 -0
  370. package/dist/{chunk-3Z3WIQ5M.js → chunk-RZ3QMKM7.js} +5 -5
  371. package/dist/{chunk-WA6F4NOO.js → chunk-SMANO5OD.js} +4 -4
  372. package/dist/{chunk-5M2NWXN4.js → chunk-SRNBD6EV.js} +2 -2
  373. package/dist/{chunk-7SYYGXC7.js → chunk-SSCEX5NY.js} +6 -2
  374. package/dist/chunk-SSCEX5NY.js.map +1 -0
  375. package/dist/{chunk-PU3HEWSG.js → chunk-SYSR2K2M.js} +13 -4
  376. package/dist/chunk-SYSR2K2M.js.map +1 -0
  377. package/dist/{chunk-R53ZOW4B.js → chunk-TGMMUKOF.js} +3 -3
  378. package/dist/{chunk-SB2SEGR6.js → chunk-TIM4PXWN.js} +3 -3
  379. package/dist/{chunk-555TUQ7E.js → chunk-TPGFR24B.js} +5 -5
  380. package/dist/{chunk-MHLYX6QW.js → chunk-TRAMTVIO.js} +5 -5
  381. package/dist/{chunk-QO7UJXXO.js → chunk-TVMSXL3R.js} +2 -2
  382. package/dist/{chunk-OE3SQOZV.js → chunk-U6XXAVBO.js} +13 -7
  383. package/dist/chunk-U6XXAVBO.js.map +1 -0
  384. package/dist/{chunk-CZV6NVCA.js → chunk-UG4EMHMW.js} +10 -7
  385. package/dist/chunk-UG4EMHMW.js.map +1 -0
  386. package/dist/{chunk-VEBNL5MG.js → chunk-UGYBN6OO.js} +2 -2
  387. package/dist/{chunk-AG3DY5TH.js → chunk-UHQZ5XPW.js} +5 -4
  388. package/dist/chunk-UHQZ5XPW.js.map +1 -0
  389. package/dist/{chunk-2QO3BKUQ.js → chunk-UJT6AQHL.js} +4 -4
  390. package/dist/{chunk-FTDGFWB5.js → chunk-UK3DSFMK.js} +5 -5
  391. package/dist/{chunk-NYWAAXDX.js → chunk-URAXAKUI.js} +3 -3
  392. package/dist/{chunk-XODBYGTH.js → chunk-V37QIB7B.js} +2 -2
  393. package/dist/{chunk-7K23NEZO.js → chunk-V45JGJ3W.js} +8 -8
  394. package/dist/{chunk-RA6W37NZ.js → chunk-V64USPG3.js} +11 -8
  395. package/dist/chunk-V64USPG3.js.map +1 -0
  396. package/dist/{chunk-HZK4DRGF.js → chunk-V7INHV5V.js} +6 -4
  397. package/dist/chunk-V7INHV5V.js.map +1 -0
  398. package/dist/{chunk-RZCXYKY4.js → chunk-VFVATUC6.js} +6 -2
  399. package/dist/chunk-VFVATUC6.js.map +1 -0
  400. package/dist/{chunk-2MYSXWZQ.js → chunk-VKTF3GAP.js} +9 -9
  401. package/dist/{chunk-ICRVLGWD.js → chunk-VMU52I5D.js} +8 -2
  402. package/dist/chunk-VMU52I5D.js.map +1 -0
  403. package/dist/{chunk-KHIUYLKY.js → chunk-VQ6UB4MN.js} +8 -8
  404. package/dist/{chunk-LTTYUSJ2.js → chunk-VTDZUO2J.js} +4 -2
  405. package/dist/chunk-VTDZUO2J.js.map +1 -0
  406. package/dist/{chunk-4HUSG5MR.js → chunk-VZVAP2ZR.js} +2 -2
  407. package/dist/{chunk-4XBAEKQQ.js → chunk-W2RXXF7K.js} +4 -4
  408. package/dist/chunk-W5PRZHLU.js +74 -0
  409. package/dist/chunk-W5PRZHLU.js.map +1 -0
  410. package/dist/{chunk-A2YLFKQU.js → chunk-W5WYTVLS.js} +2 -2
  411. package/dist/{chunk-EUACQR6N.js → chunk-WE43PZ4P.js} +7 -5
  412. package/dist/chunk-WE43PZ4P.js.map +1 -0
  413. package/dist/{chunk-RHKQ2RSY.js → chunk-WUW6NDXC.js} +15 -15
  414. package/dist/{chunk-EBCEDBHX.js → chunk-XDDKRACZ.js} +3 -3
  415. package/dist/{chunk-SLSED46V.js → chunk-Y3DV7LGC.js} +2 -1
  416. package/dist/{chunk-SLSED46V.js.map → chunk-Y3DV7LGC.js.map} +1 -1
  417. package/dist/{chunk-ASZGMKB4.js → chunk-Y3TD7HOY.js} +2 -2
  418. package/dist/{chunk-HBHBRRSW.js → chunk-YBAK2WN5.js} +7 -7
  419. package/dist/{chunk-LOLYI6PS.js → chunk-YCZGYYUX.js} +11 -8
  420. package/dist/chunk-YCZGYYUX.js.map +1 -0
  421. package/dist/{chunk-KT3TF2LT.js → chunk-YJ6UQDA6.js} +7 -5
  422. package/dist/chunk-YJ6UQDA6.js.map +1 -0
  423. package/dist/{chunk-6RTE4UNO.js → chunk-YV4O7KDR.js} +1 -1
  424. package/dist/{chunk-Z5V5E3JW.js → chunk-ZIHSCBMN.js} +10 -10
  425. package/dist/data-display/Alert.js +3 -3
  426. package/dist/data-display/AlertDialog.js +2 -1
  427. package/dist/data-display/AsyncStateContainer.js +3 -3
  428. package/dist/data-display/Avatar.js +4 -4
  429. package/dist/data-display/CardKit.js +18 -17
  430. package/dist/data-display/Carousel.js +7 -4
  431. package/dist/data-display/Chart.js +11 -11
  432. package/dist/data-display/DataGrid.js +2 -2
  433. package/dist/data-display/DataViews.js +86 -85
  434. package/dist/data-display/EmptyState.js +2 -2
  435. package/dist/data-display/FleetMap.js +15 -12
  436. package/dist/data-display/HoverCard.js +2 -2
  437. package/dist/data-display/InteractiveTooltip.js +2 -2
  438. package/dist/data-display/LazyImage.js +3 -2
  439. package/dist/data-display/Lightbox.js +6 -6
  440. package/dist/data-display/MapPreview.js +9 -6
  441. package/dist/data-display/Progress.js +2 -2
  442. package/dist/data-display/SectionOnboarding.js +6 -4
  443. package/dist/data-display/Sheet.js +4 -4
  444. package/dist/data-display/Stepper.js +3 -1
  445. package/dist/data-display/Table.js +6 -4
  446. package/dist/data-display/Timeline.js +4 -2
  447. package/dist/en-US.js +16 -12
  448. package/dist/feedback/ConfirmAction.js +9 -8
  449. package/dist/feedback/Dialog.js +3 -2
  450. package/dist/feedback/NotificationStatusNotice.js +4 -4
  451. package/dist/feedback/SequenceResolver.js +12 -11
  452. package/dist/feedback/Sonner.js +3 -2
  453. package/dist/feedback/StackedModal.js +7 -6
  454. package/dist/feedback/Toast.js +2 -1
  455. package/dist/feedback/TutorialOverlay.js +3 -2
  456. package/dist/form/AddressAutocomplete.js +12 -10
  457. package/dist/form/Autocomplete.js +2 -2
  458. package/dist/form/Calendar.js +6 -6
  459. package/dist/form/CategorySelect.js +9 -9
  460. package/dist/form/Checkbox.js +2 -2
  461. package/dist/form/CodeEditor.js +3 -3
  462. package/dist/form/DateRangePicker.js +9 -9
  463. package/dist/form/InputOTP.js +2 -2
  464. package/dist/form/Menubar.js +2 -2
  465. package/dist/form/PhoneInput.js +3 -3
  466. package/dist/form/PickerSheet.js +4 -4
  467. package/dist/form/RichTextEditor.js +7 -5
  468. package/dist/form/Switch.js +4 -4
  469. package/dist/form/Textarea.js +1 -1
  470. package/dist/form/UploadButton.js +3 -2
  471. package/dist/form/total-form.js +18 -17
  472. package/dist/layout/Card.js +2 -2
  473. package/dist/layout/ContentToolbar.js +11 -10
  474. package/dist/layout/Dashboard.js +2 -1
  475. package/dist/layout/ScrollArea.js +3 -3
  476. package/dist/layout/SettingCard.js +17 -17
  477. package/dist/layout/SettingsLayout.js +6 -6
  478. package/dist/locales.js +36 -28
  479. package/dist/locales.js.map +1 -1
  480. package/dist/native/chunks/{chunk-BXNZHDXK.js → chunk-4SP3BDPZ.js} +12 -5
  481. package/dist/native/chunks/chunk-4SP3BDPZ.js.map +1 -0
  482. package/dist/native/chunks/{chunk-AVHGS66L.js → chunk-FGAX5BRS.js} +2 -2
  483. package/dist/native/chunks/chunk-SPK34J7Y.js +74 -0
  484. package/dist/native/chunks/chunk-SPK34J7Y.js.map +1 -0
  485. package/dist/native/data-display/Badge.js +9 -3
  486. package/dist/native/data-display/Badge.js.map +1 -1
  487. package/dist/native/data-display/Chip.js +9 -1
  488. package/dist/native/data-display/Chip.js.map +1 -1
  489. package/dist/native/data-display/EmptyState.js +3 -2
  490. package/dist/native/data-display/ErrorState.js +2 -1
  491. package/dist/native/data-display/ErrorState.js.map +1 -1
  492. package/dist/native/data-display/FleetMap.js +3 -2
  493. package/dist/native/data-display/FleetMap.js.map +1 -1
  494. package/dist/native/feedback/Dialog.js +20 -3
  495. package/dist/native/feedback/Dialog.js.map +1 -1
  496. package/dist/native/form/Button.js +2 -1
  497. package/dist/native/form/Checkbox.js +6 -1
  498. package/dist/native/form/Checkbox.js.map +1 -1
  499. package/dist/native/form/Input.js +11 -3
  500. package/dist/native/form/Input.js.map +1 -1
  501. package/dist/native/form/Switch.js +5 -1
  502. package/dist/native/form/Switch.js.map +1 -1
  503. package/dist/navigation/AppHeader.js +10 -9
  504. package/dist/navigation/CommandPalette.js +6 -4
  505. package/dist/navigation/NavigationMenu.js +7 -6
  506. package/dist/navigation/Pagination.js +2 -2
  507. package/dist/navigation/SectionNav.js +5 -5
  508. package/dist/pt-BR.js +10 -6
  509. package/dist/social-login-button.js +4 -4
  510. package/dist/types/components/data-display/AlertDialog/AlertDialog.d.ts.map +1 -1
  511. package/dist/types/components/data-display/AlertDialog/AlertDialog.types.d.ts +5 -0
  512. package/dist/types/components/data-display/AlertDialog/AlertDialog.types.d.ts.map +1 -1
  513. package/dist/types/components/data-display/Carousel/Carousel.chrome.d.ts.map +1 -1
  514. package/dist/types/components/data-display/Carousel/Carousel.parts.d.ts.map +1 -1
  515. package/dist/types/components/data-display/Carousel/Carousel.types.d.ts +2 -0
  516. package/dist/types/components/data-display/Carousel/Carousel.types.d.ts.map +1 -1
  517. package/dist/types/components/data-display/LazyImage/LazyImage.d.ts.map +1 -1
  518. package/dist/types/components/data-display/LazyImage/LazyImage.types.d.ts +10 -0
  519. package/dist/types/components/data-display/LazyImage/LazyImage.types.d.ts.map +1 -1
  520. package/dist/types/components/data-display/MapPreview/MapControlBar.d.ts.map +1 -1
  521. package/dist/types/components/data-display/MapPreview/MapLayers.d.ts +1 -1
  522. package/dist/types/components/data-display/MapPreview/MapLayers.d.ts.map +1 -1
  523. package/dist/types/components/data-display/MapPreview/MapMarkers.d.ts +2 -0
  524. package/dist/types/components/data-display/MapPreview/MapMarkers.d.ts.map +1 -1
  525. package/dist/types/components/data-display/MapPreview/MapPreview.d.ts.map +1 -1
  526. package/dist/types/components/data-display/MapPreview/MapPreview.helpers.d.ts +7 -1
  527. package/dist/types/components/data-display/MapPreview/MapPreview.helpers.d.ts.map +1 -1
  528. package/dist/types/components/data-display/Stepper/Stepper.d.ts.map +1 -1
  529. package/dist/types/components/data-display/Stepper/Stepper.types.d.ts +4 -0
  530. package/dist/types/components/data-display/Stepper/Stepper.types.d.ts.map +1 -1
  531. package/dist/types/components/data-display/Table/Table.d.ts.map +1 -1
  532. package/dist/types/components/data-display/Table/Table.helpers.d.ts.map +1 -1
  533. package/dist/types/components/data-display/Table/Table.types.d.ts +11 -0
  534. package/dist/types/components/data-display/Table/Table.types.d.ts.map +1 -1
  535. package/dist/types/components/data-display/Table/TableParts.d.ts +2 -1
  536. package/dist/types/components/data-display/Table/TableParts.d.ts.map +1 -1
  537. package/dist/types/components/data-display/Table/TableParts.hooks.d.ts +2 -2
  538. package/dist/types/components/data-display/Table/TableParts.hooks.d.ts.map +1 -1
  539. package/dist/types/components/data-display/Timeline/Timeline.d.ts.map +1 -1
  540. package/dist/types/components/data-display/Timeline/Timeline.types.d.ts +3 -0
  541. package/dist/types/components/data-display/Timeline/Timeline.types.d.ts.map +1 -1
  542. package/dist/types/components/data-display/Timeline/TimelineRow.d.ts +2 -0
  543. package/dist/types/components/data-display/Timeline/TimelineRow.d.ts.map +1 -1
  544. package/dist/types/components/feedback/Dialog/Dialog.base.d.ts +10 -0
  545. package/dist/types/components/feedback/Dialog/Dialog.base.d.ts.map +1 -1
  546. package/dist/types/components/feedback/Dialog/Dialog.d.ts.map +1 -1
  547. package/dist/types/components/feedback/Sonner/Sonner.d.ts +6 -0
  548. package/dist/types/components/feedback/Sonner/Sonner.d.ts.map +1 -1
  549. package/dist/types/components/feedback/Sonner/SonnerToast.d.ts.map +1 -1
  550. package/dist/types/components/feedback/StackedModal/StackedModal.d.ts.map +1 -1
  551. package/dist/types/components/feedback/StackedModal/StackedModal.parts.d.ts +2 -0
  552. package/dist/types/components/feedback/StackedModal/StackedModal.parts.d.ts.map +1 -1
  553. package/dist/types/components/feedback/StackedModal/StackedModal.types.d.ts +5 -0
  554. package/dist/types/components/feedback/StackedModal/StackedModal.types.d.ts.map +1 -1
  555. package/dist/types/components/feedback/Toast/Toast.d.ts.map +1 -1
  556. package/dist/types/components/feedback/Toast/Toast.types.d.ts +5 -0
  557. package/dist/types/components/feedback/Toast/Toast.types.d.ts.map +1 -1
  558. package/dist/types/components/feedback/TutorialOverlay/TutorialOverlay.d.ts.map +1 -1
  559. package/dist/types/components/feedback/TutorialOverlay/TutorialStepBody.d.ts.map +1 -1
  560. package/dist/types/components/form/AddressAutocomplete/AddressAutocomplete.d.ts.map +1 -1
  561. package/dist/types/components/form/AddressAutocomplete/AddressAutocomplete.helpers.d.ts +1 -1
  562. package/dist/types/components/form/AddressAutocomplete/AddressAutocomplete.helpers.d.ts.map +1 -1
  563. package/dist/types/components/form/AddressAutocomplete/AddressAutocomplete.hooks.d.ts +3 -1
  564. package/dist/types/components/form/AddressAutocomplete/AddressAutocomplete.hooks.d.ts.map +1 -1
  565. package/dist/types/components/form/AddressAutocomplete/AddressAutocompleteField.d.ts.map +1 -1
  566. package/dist/types/components/form/AddressAutocomplete/useAddressPredictions.d.ts +2 -1
  567. package/dist/types/components/form/AddressAutocomplete/useAddressPredictions.d.ts.map +1 -1
  568. package/dist/types/components/form/AddressAutocomplete/useAddressSelection.d.ts +3 -1
  569. package/dist/types/components/form/AddressAutocomplete/useAddressSelection.d.ts.map +1 -1
  570. package/dist/types/components/form/AddressAutocomplete/useCurrentLocation.d.ts +3 -1
  571. package/dist/types/components/form/AddressAutocomplete/useCurrentLocation.d.ts.map +1 -1
  572. package/dist/types/components/form/AddressAutocomplete/useGoogleMapsAPI.d.ts +4 -1
  573. package/dist/types/components/form/AddressAutocomplete/useGoogleMapsAPI.d.ts.map +1 -1
  574. package/dist/types/components/form/Button/Button.native.loading.d.ts +2 -1
  575. package/dist/types/components/form/Button/Button.native.loading.d.ts.map +1 -1
  576. package/dist/types/components/form/Calendar/CalendarDay.d.ts.map +1 -1
  577. package/dist/types/components/form/Calendar/CalendarMonth.d.ts.map +1 -1
  578. package/dist/types/components/form/PhoneInput/PhoneInput.d.ts.map +1 -1
  579. package/dist/types/components/form/PhoneInput/PhoneInput.types.d.ts +1 -0
  580. package/dist/types/components/form/PhoneInput/PhoneInput.types.d.ts.map +1 -1
  581. package/dist/types/components/form/PhoneInput/countries.d.ts +6 -0
  582. package/dist/types/components/form/PhoneInput/countries.d.ts.map +1 -1
  583. package/dist/types/components/form/RichTextEditor/RichTextEditor.d.ts.map +1 -1
  584. package/dist/types/components/form/RichTextEditor/RichTextEditor.dom.d.ts +1 -1
  585. package/dist/types/components/form/RichTextEditor/RichTextEditor.dom.d.ts.map +1 -1
  586. package/dist/types/components/form/RichTextEditor/RichTextEditor.format.d.ts +2 -1
  587. package/dist/types/components/form/RichTextEditor/RichTextEditor.format.d.ts.map +1 -1
  588. package/dist/types/components/form/RichTextEditor/RichTextEditor.hooks.d.ts +2 -1
  589. package/dist/types/components/form/RichTextEditor/RichTextEditor.hooks.d.ts.map +1 -1
  590. package/dist/types/components/form/RichTextEditor/RichTextEditor.types.d.ts +7 -1
  591. package/dist/types/components/form/RichTextEditor/RichTextEditor.types.d.ts.map +1 -1
  592. package/dist/types/components/form/RichTextEditor/RichTextEditorToolbar.d.ts +2 -0
  593. package/dist/types/components/form/RichTextEditor/RichTextEditorToolbar.d.ts.map +1 -1
  594. package/dist/types/components/form/Textarea/TextareaRichEditor.d.ts.map +1 -1
  595. package/dist/types/components/form/UploadButton/UploadButton.hooks.d.ts.map +1 -1
  596. package/dist/types/components/layout/ContentToolbar/ContentToolbar.types.d.ts +14 -0
  597. package/dist/types/components/layout/ContentToolbar/ContentToolbar.types.d.ts.map +1 -1
  598. package/dist/types/components/layout/ContentToolbar/FilterTrigger.d.ts +1 -1
  599. package/dist/types/components/layout/ContentToolbar/FilterTrigger.d.ts.map +1 -1
  600. package/dist/types/components/layout/ContentToolbar/ViewSelector.d.ts +1 -1
  601. package/dist/types/components/layout/ContentToolbar/ViewSelector.d.ts.map +1 -1
  602. package/dist/types/components/layout/Dashboard/Dashboard.d.ts +1 -1
  603. package/dist/types/components/layout/Dashboard/Dashboard.d.ts.map +1 -1
  604. package/dist/types/components/layout/Dashboard/Dashboard.types.d.ts +5 -0
  605. package/dist/types/components/layout/Dashboard/Dashboard.types.d.ts.map +1 -1
  606. package/dist/types/components/navigation/CommandPalette/CommandPalette.d.ts.map +1 -1
  607. package/dist/types/components/navigation/CommandPalette/CommandPalette.helpers.d.ts +1 -1
  608. package/dist/types/components/navigation/CommandPalette/CommandPalette.helpers.d.ts.map +1 -1
  609. package/dist/types/components/navigation/CommandPalette/CommandPalette.hooks.d.ts +2 -1
  610. package/dist/types/components/navigation/CommandPalette/CommandPalette.hooks.d.ts.map +1 -1
  611. package/dist/types/components/navigation/CommandPalette/CommandPaletteResults.d.ts.map +1 -1
  612. package/dist/types/components/navigation/NavigationMenu/NavigationMenu.d.ts.map +1 -1
  613. package/dist/types/components/navigation/NavigationMenu/NavigationMenu.shell.d.ts +1 -0
  614. package/dist/types/components/navigation/NavigationMenu/NavigationMenu.shell.d.ts.map +1 -1
  615. package/dist/types/components/navigation/NavigationMenu/NavigationMenu.types.d.ts +11 -0
  616. package/dist/types/components/navigation/NavigationMenu/NavigationMenu.types.d.ts.map +1 -1
  617. package/dist/types/components/navigation/NavigationMenu/NavigationMenuItem.d.ts.map +1 -1
  618. package/dist/types/components/navigation/NavigationMenu/NavigationStandardBody.d.ts +4 -0
  619. package/dist/types/components/navigation/NavigationMenu/NavigationStandardBody.d.ts.map +1 -1
  620. package/dist/types/components/typography/Code/Code.d.ts.map +1 -1
  621. package/dist/types/components/typography/Code/Code.types.d.ts +4 -0
  622. package/dist/types/components/typography/Code/Code.types.d.ts.map +1 -1
  623. package/dist/types/components/utility/WorkflowStep/WorkflowStep.d.ts.map +1 -1
  624. package/dist/types/components/utility/WorkflowStep/WorkflowStep.helpers.d.ts +4 -1
  625. package/dist/types/components/utility/WorkflowStep/WorkflowStep.helpers.d.ts.map +1 -1
  626. package/dist/types/components/utility/WorkflowStep/WorkflowStep.parts.d.ts.map +1 -1
  627. package/dist/types/components/utility/WorkflowStep/WorkflowStep.types.d.ts +9 -0
  628. package/dist/types/components/utility/WorkflowStep/WorkflowStep.types.d.ts.map +1 -1
  629. package/dist/types/components/utility/WorkflowStep/WorkflowStepRow.d.ts +1 -0
  630. package/dist/types/components/utility/WorkflowStep/WorkflowStepRow.d.ts.map +1 -1
  631. package/dist/types/copy/data-display.d.ts +24 -0
  632. package/dist/types/copy/data-display.d.ts.map +1 -1
  633. package/dist/types/copy/feedback.d.ts +4 -0
  634. package/dist/types/copy/feedback.d.ts.map +1 -1
  635. package/dist/types/copy/form.d.ts +58 -0
  636. package/dist/types/copy/form.d.ts.map +1 -1
  637. package/dist/types/copy/labels.d.ts +108 -0
  638. package/dist/types/copy/labels.d.ts.map +1 -0
  639. package/dist/types/copy/navigation.d.ts +12 -0
  640. package/dist/types/copy/navigation.d.ts.map +1 -1
  641. package/dist/types/copy/utility.d.ts +8 -1
  642. package/dist/types/copy/utility.d.ts.map +1 -1
  643. package/dist/types/copy.d.ts +1 -0
  644. package/dist/types/copy.d.ts.map +1 -1
  645. package/dist/types/en-US.d.ts +1 -0
  646. package/dist/types/en-US.d.ts.map +1 -1
  647. package/dist/types/en-US.data-display.d.ts +2 -2
  648. package/dist/types/en-US.data-display.d.ts.map +1 -1
  649. package/dist/types/en-US.feedback.d.ts +1 -1
  650. package/dist/types/en-US.feedback.d.ts.map +1 -1
  651. package/dist/types/en-US.form.d.ts +4 -4
  652. package/dist/types/en-US.form.d.ts.map +1 -1
  653. package/dist/types/en-US.labels.d.ts +9 -0
  654. package/dist/types/en-US.labels.d.ts.map +1 -0
  655. package/dist/types/en-US.navigation.d.ts +1 -1
  656. package/dist/types/en-US.navigation.d.ts.map +1 -1
  657. package/dist/types/en-US.utility.d.ts +1 -1
  658. package/dist/types/en-US.utility.d.ts.map +1 -1
  659. package/dist/types/locales.d.ts +2 -1
  660. package/dist/types/locales.d.ts.map +1 -1
  661. package/dist/types/pt-BR.d.ts +1 -0
  662. package/dist/types/pt-BR.d.ts.map +1 -1
  663. package/dist/types/pt-BR.data-display.d.ts +2 -2
  664. package/dist/types/pt-BR.data-display.d.ts.map +1 -1
  665. package/dist/types/pt-BR.feedback.d.ts +1 -1
  666. package/dist/types/pt-BR.feedback.d.ts.map +1 -1
  667. package/dist/types/pt-BR.form.d.ts +4 -4
  668. package/dist/types/pt-BR.form.d.ts.map +1 -1
  669. package/dist/types/pt-BR.labels.d.ts +8 -0
  670. package/dist/types/pt-BR.labels.d.ts.map +1 -0
  671. package/dist/types/pt-BR.navigation.d.ts +1 -1
  672. package/dist/types/pt-BR.navigation.d.ts.map +1 -1
  673. package/dist/types/pt-BR.utility.d.ts +1 -1
  674. package/dist/types/pt-BR.utility.d.ts.map +1 -1
  675. package/dist/types/user-avatar/user-avatar.d.ts +6 -1
  676. package/dist/types/user-avatar/user-avatar.d.ts.map +1 -1
  677. package/dist/types/utils/resolve-labels.d.ts +9 -0
  678. package/dist/types/utils/resolve-labels.d.ts.map +1 -0
  679. package/dist/types-native/components/data-display/Badge/Badge.native.d.ts +1 -0
  680. package/dist/types-native/components/data-display/Badge/Badge.native.d.ts.map +1 -1
  681. package/dist/types-native/components/data-display/Badge/Badge.types.native.d.ts +2 -0
  682. package/dist/types-native/components/data-display/Badge/Badge.types.native.d.ts.map +1 -1
  683. package/dist/types-native/components/data-display/Badge/BadgeContent.native.d.ts +2 -1
  684. package/dist/types-native/components/data-display/Badge/BadgeContent.native.d.ts.map +1 -1
  685. package/dist/types-native/components/data-display/Chip/Chip.native.d.ts +1 -0
  686. package/dist/types-native/components/data-display/Chip/Chip.native.d.ts.map +1 -1
  687. package/dist/types-native/components/data-display/Chip/Chip.types.native.d.ts +2 -0
  688. package/dist/types-native/components/data-display/Chip/Chip.types.native.d.ts.map +1 -1
  689. package/dist/types-native/components/feedback/Dialog/Dialog.base.d.ts +10 -0
  690. package/dist/types-native/components/feedback/Dialog/Dialog.base.d.ts.map +1 -1
  691. package/dist/types-native/components/feedback/Dialog/Dialog.native.d.ts.map +1 -1
  692. package/dist/types-native/components/feedback/Dialog/DialogParts.native.d.ts +1 -1
  693. package/dist/types-native/components/feedback/Dialog/DialogParts.native.d.ts.map +1 -1
  694. package/dist/types-native/components/form/Button/Button.native.d.ts +1 -0
  695. package/dist/types-native/components/form/Button/Button.native.d.ts.map +1 -1
  696. package/dist/types-native/components/form/Button/Button.native.loading.d.ts +2 -1
  697. package/dist/types-native/components/form/Button/Button.native.loading.d.ts.map +1 -1
  698. package/dist/types-native/components/form/Button/Button.types.native.d.ts +2 -0
  699. package/dist/types-native/components/form/Button/Button.types.native.d.ts.map +1 -1
  700. package/dist/types-native/components/form/Checkbox/Checkbox.native.d.ts +1 -0
  701. package/dist/types-native/components/form/Checkbox/Checkbox.native.d.ts.map +1 -1
  702. package/dist/types-native/components/form/Checkbox/Checkbox.types.native.d.ts +2 -0
  703. package/dist/types-native/components/form/Checkbox/Checkbox.types.native.d.ts.map +1 -1
  704. package/dist/types-native/components/form/Input/Input.native.d.ts +1 -0
  705. package/dist/types-native/components/form/Input/Input.native.d.ts.map +1 -1
  706. package/dist/types-native/components/form/Input/Input.types.native.d.ts +2 -0
  707. package/dist/types-native/components/form/Input/Input.types.native.d.ts.map +1 -1
  708. package/dist/types-native/components/form/Switch/Switch.native.d.ts +1 -0
  709. package/dist/types-native/components/form/Switch/Switch.native.d.ts.map +1 -1
  710. package/dist/types-native/components/form/Switch/Switch.types.native.d.ts +2 -0
  711. package/dist/types-native/components/form/Switch/Switch.types.native.d.ts.map +1 -1
  712. package/dist/types-native/copy/data-display.d.ts +119 -0
  713. package/dist/types-native/copy/data-display.d.ts.map +1 -0
  714. package/dist/types-native/copy/labels.d.ts +108 -0
  715. package/dist/types-native/copy/labels.d.ts.map +1 -0
  716. package/dist/types-native/en-US.labels.d.ts +9 -0
  717. package/dist/types-native/en-US.labels.d.ts.map +1 -0
  718. package/dist/typography/Code.js +2 -1
  719. package/dist/user-avatar.js +8 -7
  720. package/dist/utility/InstallPrompt.js +2 -2
  721. package/dist/utility/WorkflowStep.js +6 -4
  722. package/package.json +2 -2
  723. package/src/components/data-display/AlertDialog/AlertDialog.tsx +3 -1
  724. package/src/components/data-display/AlertDialog/AlertDialog.types.ts +6 -0
  725. package/src/components/data-display/Badge/Badge.native.tsx +2 -0
  726. package/src/components/data-display/Badge/Badge.types.native.ts +2 -0
  727. package/src/components/data-display/Badge/BadgeContent.native.tsx +4 -1
  728. package/src/components/data-display/Carousel/Carousel.chrome.tsx +1 -0
  729. package/src/components/data-display/Carousel/Carousel.parts.tsx +13 -9
  730. package/src/components/data-display/Carousel/Carousel.types.ts +2 -0
  731. package/src/components/data-display/Chip/Chip.native.tsx +9 -1
  732. package/src/components/data-display/Chip/Chip.types.native.ts +2 -0
  733. package/src/components/data-display/LazyImage/LazyImage.hooks.ts +1 -1
  734. package/src/components/data-display/LazyImage/LazyImage.tsx +4 -4
  735. package/src/components/data-display/LazyImage/LazyImage.types.ts +12 -0
  736. package/src/components/data-display/MapPreview/MapControlBar.tsx +7 -3
  737. package/src/components/data-display/MapPreview/MapLayers.tsx +2 -2
  738. package/src/components/data-display/MapPreview/MapMarkers.tsx +13 -4
  739. package/src/components/data-display/MapPreview/MapPreview.helpers.ts +13 -2
  740. package/src/components/data-display/MapPreview/MapPreview.tsx +7 -3
  741. package/src/components/data-display/Stepper/Stepper.tsx +41 -7
  742. package/src/components/data-display/Stepper/Stepper.types.ts +4 -0
  743. package/src/components/data-display/Table/Table.helpers.ts +1 -0
  744. package/src/components/data-display/Table/Table.tsx +4 -5
  745. package/src/components/data-display/Table/Table.types.ts +12 -0
  746. package/src/components/data-display/Table/TableParts.hooks.tsx +8 -1
  747. package/src/components/data-display/Table/TableParts.tsx +19 -5
  748. package/src/components/data-display/Timeline/Timeline.tsx +6 -1
  749. package/src/components/data-display/Timeline/Timeline.types.ts +3 -0
  750. package/src/components/data-display/Timeline/TimelineRow.tsx +11 -4
  751. package/src/components/feedback/Dialog/Dialog.base.ts +10 -0
  752. package/src/components/feedback/Dialog/Dialog.native.tsx +2 -0
  753. package/src/components/feedback/Dialog/Dialog.tsx +5 -1
  754. package/src/components/feedback/Dialog/DialogParts.native.tsx +17 -3
  755. package/src/components/feedback/Sonner/Sonner.tsx +16 -6
  756. package/src/components/feedback/Sonner/SonnerToast.tsx +4 -2
  757. package/src/components/feedback/StackedModal/StackedModal.parts.tsx +24 -3
  758. package/src/components/feedback/StackedModal/StackedModal.tsx +2 -1
  759. package/src/components/feedback/StackedModal/StackedModal.types.ts +5 -0
  760. package/src/components/feedback/Toast/Toast.tsx +5 -2
  761. package/src/components/feedback/Toast/Toast.types.ts +5 -0
  762. package/src/components/feedback/TutorialOverlay/TutorialOverlay.tsx +3 -1
  763. package/src/components/feedback/TutorialOverlay/TutorialStepBody.tsx +12 -3
  764. package/src/components/form/AddressAutocomplete/AddressAutocomplete.helpers.ts +12 -6
  765. package/src/components/form/AddressAutocomplete/AddressAutocomplete.hooks.ts +15 -2
  766. package/src/components/form/AddressAutocomplete/AddressAutocomplete.tsx +1 -0
  767. package/src/components/form/AddressAutocomplete/AddressAutocompleteField.tsx +9 -3
  768. package/src/components/form/AddressAutocomplete/useAddressPredictions.ts +6 -3
  769. package/src/components/form/AddressAutocomplete/useAddressSelection.ts +8 -4
  770. package/src/components/form/AddressAutocomplete/useCurrentLocation.ts +12 -8
  771. package/src/components/form/AddressAutocomplete/useGoogleMapsAPI.ts +8 -4
  772. package/src/components/form/Button/Button.native.loading.tsx +11 -2
  773. package/src/components/form/Button/Button.native.tsx +2 -2
  774. package/src/components/form/Button/Button.types.native.ts +2 -0
  775. package/src/components/form/Calendar/Calendar.md +7 -0
  776. package/src/components/form/Calendar/CalendarDay.tsx +13 -2
  777. package/src/components/form/Calendar/CalendarMonth.tsx +11 -2
  778. package/src/components/form/Checkbox/Checkbox.native.tsx +5 -2
  779. package/src/components/form/Checkbox/Checkbox.types.native.ts +2 -0
  780. package/src/components/form/Input/Input.native.tsx +13 -4
  781. package/src/components/form/Input/Input.types.native.ts +2 -0
  782. package/src/components/form/PhoneInput/PhoneInput.md +2 -2
  783. package/src/components/form/PhoneInput/PhoneInput.tsx +21 -10
  784. package/src/components/form/PhoneInput/PhoneInput.types.ts +1 -0
  785. package/src/components/form/PhoneInput/countries.ts +18 -1
  786. package/src/components/form/RichTextEditor/RichTextEditor.dom.ts +5 -3
  787. package/src/components/form/RichTextEditor/RichTextEditor.format.ts +3 -1
  788. package/src/components/form/RichTextEditor/RichTextEditor.hooks.ts +4 -1
  789. package/src/components/form/RichTextEditor/RichTextEditor.tsx +10 -4
  790. package/src/components/form/RichTextEditor/RichTextEditor.types.ts +7 -1
  791. package/src/components/form/RichTextEditor/RichTextEditorToolbar.tsx +29 -19
  792. package/src/components/form/Switch/Switch.native.tsx +4 -3
  793. package/src/components/form/Switch/Switch.types.native.ts +2 -0
  794. package/src/components/form/Textarea/TextareaRichEditor.tsx +2 -1
  795. package/src/components/form/UploadButton/UploadButton.hooks.ts +16 -6
  796. package/src/components/layout/ContentToolbar/ContentToolbar.types.ts +14 -0
  797. package/src/components/layout/ContentToolbar/FilterTrigger.tsx +10 -1
  798. package/src/components/layout/ContentToolbar/ViewSelector.tsx +15 -5
  799. package/src/components/layout/Dashboard/Dashboard.tsx +3 -1
  800. package/src/components/layout/Dashboard/Dashboard.types.ts +5 -0
  801. package/src/components/navigation/CommandPalette/CommandPalette.helpers.ts +6 -2
  802. package/src/components/navigation/CommandPalette/CommandPalette.hooks.ts +9 -1
  803. package/src/components/navigation/CommandPalette/CommandPalette.tsx +16 -6
  804. package/src/components/navigation/CommandPalette/CommandPaletteResults.tsx +3 -1
  805. package/src/components/navigation/NavigationMenu/NavigationMenu.shell.tsx +7 -4
  806. package/src/components/navigation/NavigationMenu/NavigationMenu.tsx +4 -0
  807. package/src/components/navigation/NavigationMenu/NavigationMenu.types.ts +13 -0
  808. package/src/components/navigation/NavigationMenu/NavigationMenuItem.tsx +2 -0
  809. package/src/components/navigation/NavigationMenu/NavigationStandardBody.tsx +24 -4
  810. package/src/components/typography/Code/Code.tsx +28 -6
  811. package/src/components/typography/Code/Code.types.ts +4 -0
  812. package/src/components/utility/WorkflowStep/WorkflowStep.helpers.ts +9 -1
  813. package/src/components/utility/WorkflowStep/WorkflowStep.parts.tsx +3 -2
  814. package/src/components/utility/WorkflowStep/WorkflowStep.tsx +3 -1
  815. package/src/components/utility/WorkflowStep/WorkflowStep.types.ts +10 -0
  816. package/src/components/utility/WorkflowStep/WorkflowStepRow.tsx +3 -0
  817. package/src/copy/data-display.ts +19 -0
  818. package/src/copy/feedback.ts +4 -0
  819. package/src/copy/form.ts +58 -0
  820. package/src/copy/labels.ts +120 -0
  821. package/src/copy/navigation.ts +12 -0
  822. package/src/copy/utility.ts +8 -1
  823. package/src/copy.ts +1 -0
  824. package/src/en-US.data-display.ts +9 -2
  825. package/src/en-US.feedback.ts +3 -1
  826. package/src/en-US.form.ts +27 -4
  827. package/src/en-US.labels.ts +76 -0
  828. package/src/en-US.navigation.ts +5 -1
  829. package/src/en-US.ts +1 -0
  830. package/src/en-US.utility.ts +3 -1
  831. package/src/locales.ts +4 -0
  832. package/src/pt-BR.data-display.ts +9 -2
  833. package/src/pt-BR.feedback.ts +3 -1
  834. package/src/pt-BR.form.ts +40 -4
  835. package/src/pt-BR.labels.ts +75 -0
  836. package/src/pt-BR.navigation.ts +5 -1
  837. package/src/pt-BR.ts +1 -0
  838. package/src/pt-BR.utility.ts +3 -1
  839. package/src/user-avatar/user-avatar.tsx +11 -2
  840. package/src/utils/resolve-labels.ts +12 -0
  841. package/dist/chunk-2ARVNCVU.js.map +0 -1
  842. package/dist/chunk-2ILXXBMG.js.map +0 -1
  843. package/dist/chunk-2TSGRQ2J.js.map +0 -1
  844. package/dist/chunk-33LAPBYB.js.map +0 -1
  845. package/dist/chunk-3JDP5OUR.js.map +0 -1
  846. package/dist/chunk-3VXS7O3X.js.map +0 -1
  847. package/dist/chunk-4MQ6XTIJ.js.map +0 -1
  848. package/dist/chunk-4NQXHPQR.js.map +0 -1
  849. package/dist/chunk-4VRDFZ4G.js.map +0 -1
  850. package/dist/chunk-5J7SA4CZ.js.map +0 -1
  851. package/dist/chunk-7QXEEZFO.js +0 -92
  852. package/dist/chunk-7QXEEZFO.js.map +0 -1
  853. package/dist/chunk-7SYYGXC7.js.map +0 -1
  854. package/dist/chunk-7VRCGWQL.js.map +0 -1
  855. package/dist/chunk-AG3DY5TH.js.map +0 -1
  856. package/dist/chunk-AYJ44VTJ.js.map +0 -1
  857. package/dist/chunk-AYP6ICAY.js.map +0 -1
  858. package/dist/chunk-B2JYQBO4.js.map +0 -1
  859. package/dist/chunk-BWZKLKDT.js +0 -1
  860. package/dist/chunk-C5JCARNE.js.map +0 -1
  861. package/dist/chunk-CZV6NVCA.js.map +0 -1
  862. package/dist/chunk-EUACQR6N.js.map +0 -1
  863. package/dist/chunk-FIOBPQL2.js.map +0 -1
  864. package/dist/chunk-FRGNTTPA.js.map +0 -1
  865. package/dist/chunk-FT6HBP5E.js.map +0 -1
  866. package/dist/chunk-H3AQQOTI.js.map +0 -1
  867. package/dist/chunk-HEBZ7Q7O.js.map +0 -1
  868. package/dist/chunk-HZK4DRGF.js.map +0 -1
  869. package/dist/chunk-ICRVLGWD.js.map +0 -1
  870. package/dist/chunk-INGPH3YQ.js.map +0 -1
  871. package/dist/chunk-JJVIZR6C.js.map +0 -1
  872. package/dist/chunk-KIL3OVLI.js.map +0 -1
  873. package/dist/chunk-KT3TF2LT.js.map +0 -1
  874. package/dist/chunk-KZXOIRUP.js.map +0 -1
  875. package/dist/chunk-LH4VKUZC.js.map +0 -1
  876. package/dist/chunk-LOLYI6PS.js.map +0 -1
  877. package/dist/chunk-LTTYUSJ2.js.map +0 -1
  878. package/dist/chunk-MA6SUE7F.js.map +0 -1
  879. package/dist/chunk-MTGEJRE4.js.map +0 -1
  880. package/dist/chunk-OE3SQOZV.js.map +0 -1
  881. package/dist/chunk-PU3HEWSG.js.map +0 -1
  882. package/dist/chunk-PY3RW5LC.js.map +0 -1
  883. package/dist/chunk-QWVETTIY.js.map +0 -1
  884. package/dist/chunk-RA6W37NZ.js.map +0 -1
  885. package/dist/chunk-RZCXYKY4.js.map +0 -1
  886. package/dist/chunk-SUZXPDUQ.js.map +0 -1
  887. package/dist/chunk-SV6IQ2YO.js.map +0 -1
  888. package/dist/chunk-T743IIER.js.map +0 -1
  889. package/dist/chunk-TTCVYY2B.js.map +0 -1
  890. package/dist/chunk-U4G3KY6L.js.map +0 -1
  891. package/dist/chunk-UGH2DDST.js.map +0 -1
  892. package/dist/chunk-UZOG6HNN.js.map +0 -1
  893. package/dist/chunk-VNOFFVRQ.js +0 -113
  894. package/dist/chunk-VNOFFVRQ.js.map +0 -1
  895. package/dist/chunk-VNVV6Y2X.js.map +0 -1
  896. package/dist/chunk-VQYR64QB.js.map +0 -1
  897. package/dist/chunk-VRPCZ3IE.js.map +0 -1
  898. package/dist/chunk-WC3W36AM.js.map +0 -1
  899. package/dist/chunk-WVZBYTIK.js.map +0 -1
  900. package/dist/chunk-XICRCPEQ.js.map +0 -1
  901. package/dist/chunk-XKSA4L2X.js.map +0 -1
  902. package/dist/chunk-XQWUVQ2F.js.map +0 -1
  903. package/dist/chunk-XYFBJH6F.js.map +0 -1
  904. package/dist/chunk-Y7YJYUNV.js.map +0 -1
  905. package/dist/chunk-YICNA5LG.js +0 -1
  906. package/dist/chunk-YLSDFW5O.js.map +0 -1
  907. package/dist/chunk-ZFBFQK2Y.js.map +0 -1
  908. package/dist/native/chunks/chunk-BXNZHDXK.js.map +0 -1
  909. /package/dist/{chunk-BWZKLKDT.js.map → _internal/copy/labels.js.map} +0 -0
  910. /package/dist/{chunk-YICNA5LG.js.map → _internal/en-US.labels.js.map} +0 -0
  911. /package/dist/{chunk-OPP6USJC.js.map → chunk-2FQF4CNE.js.map} +0 -0
  912. /package/dist/{chunk-BWFQEASG.js.map → chunk-2P5ZBBTL.js.map} +0 -0
  913. /package/dist/{chunk-QVO4SIS7.js.map → chunk-3W2B7IZG.js.map} +0 -0
  914. /package/dist/{chunk-PMRLFNBT.js.map → chunk-3XLSA3YB.js.map} +0 -0
  915. /package/dist/{chunk-7P5PNRBT.js.map → chunk-3YCV4EP7.js.map} +0 -0
  916. /package/dist/{chunk-Q6PRGXR2.js.map → chunk-4HBCWKIX.js.map} +0 -0
  917. /package/dist/{chunk-HN3PZTUK.js.map → chunk-4MKVGSHX.js.map} +0 -0
  918. /package/dist/{chunk-EERUSI52.js.map → chunk-4N3I7ZHQ.js.map} +0 -0
  919. /package/dist/{chunk-O6SAU5JA.js.map → chunk-4OTJ66ID.js.map} +0 -0
  920. /package/dist/{chunk-LG52LMAM.js.map → chunk-556LO6KA.js.map} +0 -0
  921. /package/dist/{chunk-LBZEPWYK.js.map → chunk-5GLOEGOM.js.map} +0 -0
  922. /package/dist/{chunk-JE6RZ5L6.js.map → chunk-5ZOJLYD2.js.map} +0 -0
  923. /package/dist/{chunk-GSXYXMCV.js.map → chunk-66BRUS2M.js.map} +0 -0
  924. /package/dist/{chunk-ALREWFRX.js.map → chunk-6DGNMASB.js.map} +0 -0
  925. /package/dist/{chunk-5752357K.js.map → chunk-6N2U67KF.js.map} +0 -0
  926. /package/dist/{chunk-VD72JGHA.js.map → chunk-73OYC22L.js.map} +0 -0
  927. /package/dist/{chunk-6PU3JYVY.js.map → chunk-775LIZXS.js.map} +0 -0
  928. /package/dist/{chunk-S4JXSC4D.js.map → chunk-7HZ6TJRH.js.map} +0 -0
  929. /package/dist/{chunk-CSD6SWBZ.js.map → chunk-A3Z7ZXLM.js.map} +0 -0
  930. /package/dist/{chunk-LI6XSM5D.js.map → chunk-A6V7KE45.js.map} +0 -0
  931. /package/dist/{chunk-YJBWDDW7.js.map → chunk-AAWVAQI2.js.map} +0 -0
  932. /package/dist/{chunk-44PBCQ7E.js.map → chunk-ABQZFK7M.js.map} +0 -0
  933. /package/dist/{chunk-EIMFA7KP.js.map → chunk-ANUO67JQ.js.map} +0 -0
  934. /package/dist/{chunk-PTQRJEPN.js.map → chunk-AOBQ3KYY.js.map} +0 -0
  935. /package/dist/{chunk-LODYTVOO.js.map → chunk-B25SHVWP.js.map} +0 -0
  936. /package/dist/{chunk-GTT5UKKO.js.map → chunk-BDJIP4HG.js.map} +0 -0
  937. /package/dist/{chunk-RS576GOH.js.map → chunk-BIUT3K6A.js.map} +0 -0
  938. /package/dist/{chunk-A5NXBOWS.js.map → chunk-BLHSLB5D.js.map} +0 -0
  939. /package/dist/{chunk-DYHOBKPU.js.map → chunk-BLZDSCIZ.js.map} +0 -0
  940. /package/dist/{chunk-E53MMMDA.js.map → chunk-BX6CF2UG.js.map} +0 -0
  941. /package/dist/{chunk-7HA7UH7O.js.map → chunk-C4OETF7K.js.map} +0 -0
  942. /package/dist/{chunk-64AOS2WA.js.map → chunk-CAHN7AMY.js.map} +0 -0
  943. /package/dist/{chunk-MSC43MCJ.js.map → chunk-CRFOAKQL.js.map} +0 -0
  944. /package/dist/{chunk-IQ2U5MVO.js.map → chunk-CSQWPDQV.js.map} +0 -0
  945. /package/dist/{chunk-7XSCEHGA.js.map → chunk-EOQ6EKTS.js.map} +0 -0
  946. /package/dist/{chunk-VEKTKCSB.js.map → chunk-FLJ3RIRP.js.map} +0 -0
  947. /package/dist/{chunk-Z5WUSI47.js.map → chunk-G3JFESKD.js.map} +0 -0
  948. /package/dist/{chunk-XRDH24J7.js.map → chunk-G6ET2DRL.js.map} +0 -0
  949. /package/dist/{chunk-O36MIQIO.js.map → chunk-GPQ22MPR.js.map} +0 -0
  950. /package/dist/{chunk-GRMBCJS6.js.map → chunk-H6R2L7VI.js.map} +0 -0
  951. /package/dist/{chunk-AMLHEKSV.js.map → chunk-HI7JPDD6.js.map} +0 -0
  952. /package/dist/{chunk-CW6Y32N2.js.map → chunk-I2CT4XIP.js.map} +0 -0
  953. /package/dist/{chunk-N34AOGK3.js.map → chunk-I3OKAQ5L.js.map} +0 -0
  954. /package/dist/{chunk-AEYLFBZT.js.map → chunk-I4NDZFTB.js.map} +0 -0
  955. /package/dist/{chunk-2ZRZTGWP.js.map → chunk-ISW5K72V.js.map} +0 -0
  956. /package/dist/{chunk-KARMRTTM.js.map → chunk-J2RUDZVJ.js.map} +0 -0
  957. /package/dist/{chunk-4M5GEKPM.js.map → chunk-JL4I7OQE.js.map} +0 -0
  958. /package/dist/{chunk-NBXG3SQ3.js.map → chunk-JSY234NY.js.map} +0 -0
  959. /package/dist/{chunk-HQCZT6TO.js.map → chunk-JVOEVTCZ.js.map} +0 -0
  960. /package/dist/{chunk-MBMZNSBP.js.map → chunk-JW7MN4DG.js.map} +0 -0
  961. /package/dist/{chunk-ZPACE34U.js.map → chunk-K53XSVQO.js.map} +0 -0
  962. /package/dist/{chunk-GBVNY2LG.js.map → chunk-KTXJQ4YJ.js.map} +0 -0
  963. /package/dist/{chunk-FCVPVEAS.js.map → chunk-KYE7I6NT.js.map} +0 -0
  964. /package/dist/{chunk-MM7BPTVV.js.map → chunk-KYT5G4K7.js.map} +0 -0
  965. /package/dist/{chunk-3V3Z4EML.js.map → chunk-L4FWEI2P.js.map} +0 -0
  966. /package/dist/{chunk-56JF5PZK.js.map → chunk-LYVTJLCF.js.map} +0 -0
  967. /package/dist/{chunk-M3DSPEZ3.js.map → chunk-M3ZNQTS5.js.map} +0 -0
  968. /package/dist/{chunk-GBKIGUNP.js.map → chunk-MGDCGNLC.js.map} +0 -0
  969. /package/dist/{chunk-BGYLL467.js.map → chunk-N3W6FZOC.js.map} +0 -0
  970. /package/dist/{chunk-BWFUZ4N2.js.map → chunk-NA3M7KDE.js.map} +0 -0
  971. /package/dist/{chunk-7JOLSD2W.js.map → chunk-P3QFJJJY.js.map} +0 -0
  972. /package/dist/{chunk-RCTHCXS6.js.map → chunk-PJNIJIE6.js.map} +0 -0
  973. /package/dist/{chunk-DXFKPY2K.js.map → chunk-PU3FQG7T.js.map} +0 -0
  974. /package/dist/{chunk-6ATXOJVQ.js.map → chunk-QADTI63U.js.map} +0 -0
  975. /package/dist/{chunk-7ZROYGUG.js.map → chunk-QOTMQLMW.js.map} +0 -0
  976. /package/dist/{chunk-NQCTANF3.js.map → chunk-QVDEGBME.js.map} +0 -0
  977. /package/dist/{chunk-YNDTLBOH.js.map → chunk-RQMYEPRR.js.map} +0 -0
  978. /package/dist/{chunk-3Z3WIQ5M.js.map → chunk-RZ3QMKM7.js.map} +0 -0
  979. /package/dist/{chunk-WA6F4NOO.js.map → chunk-SMANO5OD.js.map} +0 -0
  980. /package/dist/{chunk-5M2NWXN4.js.map → chunk-SRNBD6EV.js.map} +0 -0
  981. /package/dist/{chunk-R53ZOW4B.js.map → chunk-TGMMUKOF.js.map} +0 -0
  982. /package/dist/{chunk-SB2SEGR6.js.map → chunk-TIM4PXWN.js.map} +0 -0
  983. /package/dist/{chunk-555TUQ7E.js.map → chunk-TPGFR24B.js.map} +0 -0
  984. /package/dist/{chunk-MHLYX6QW.js.map → chunk-TRAMTVIO.js.map} +0 -0
  985. /package/dist/{chunk-QO7UJXXO.js.map → chunk-TVMSXL3R.js.map} +0 -0
  986. /package/dist/{chunk-VEBNL5MG.js.map → chunk-UGYBN6OO.js.map} +0 -0
  987. /package/dist/{chunk-2QO3BKUQ.js.map → chunk-UJT6AQHL.js.map} +0 -0
  988. /package/dist/{chunk-FTDGFWB5.js.map → chunk-UK3DSFMK.js.map} +0 -0
  989. /package/dist/{chunk-NYWAAXDX.js.map → chunk-URAXAKUI.js.map} +0 -0
  990. /package/dist/{chunk-XODBYGTH.js.map → chunk-V37QIB7B.js.map} +0 -0
  991. /package/dist/{chunk-7K23NEZO.js.map → chunk-V45JGJ3W.js.map} +0 -0
  992. /package/dist/{chunk-2MYSXWZQ.js.map → chunk-VKTF3GAP.js.map} +0 -0
  993. /package/dist/{chunk-KHIUYLKY.js.map → chunk-VQ6UB4MN.js.map} +0 -0
  994. /package/dist/{chunk-4HUSG5MR.js.map → chunk-VZVAP2ZR.js.map} +0 -0
  995. /package/dist/{chunk-4XBAEKQQ.js.map → chunk-W2RXXF7K.js.map} +0 -0
  996. /package/dist/{chunk-A2YLFKQU.js.map → chunk-W5WYTVLS.js.map} +0 -0
  997. /package/dist/{chunk-RHKQ2RSY.js.map → chunk-WUW6NDXC.js.map} +0 -0
  998. /package/dist/{chunk-EBCEDBHX.js.map → chunk-XDDKRACZ.js.map} +0 -0
  999. /package/dist/{chunk-ASZGMKB4.js.map → chunk-Y3TD7HOY.js.map} +0 -0
  1000. /package/dist/{chunk-HBHBRRSW.js.map → chunk-YBAK2WN5.js.map} +0 -0
  1001. /package/dist/{chunk-6RTE4UNO.js.map → chunk-YV4O7KDR.js.map} +0 -0
  1002. /package/dist/{chunk-Z5V5E3JW.js.map → chunk-ZIHSCBMN.js.map} +0 -0
  1003. /package/dist/native/chunks/{chunk-AVHGS66L.js.map → chunk-FGAX5BRS.js.map} +0 -0
@@ -1,6 +1,12 @@
1
1
  import {
2
2
  tableRowHeight
3
- } from "./chunk-SLSED46V.js";
3
+ } from "./chunk-Y3DV7LGC.js";
4
+ import {
5
+ resolveLabels
6
+ } from "./chunk-LL2BWQPM.js";
7
+ import {
8
+ EN_US_UI_LABELS
9
+ } from "./chunk-W5PRZHLU.js";
4
10
  import {
5
11
  FIELD_BORDER_WIDTH
6
12
  } from "./chunk-O6MJWHU5.js";
@@ -9,7 +15,7 @@ import {
9
15
  } from "./chunk-YKCAJ2TN.js";
10
16
 
11
17
  // src/components/data-display/Table/TableParts.hooks.tsx
12
- import { useCallback as useCallback2 } from "react";
18
+ import { useCallback as useCallback2, useMemo } from "react";
13
19
 
14
20
  // src/components/data-display/Table/TableParts.tsx
15
21
  import Checkbox from "@mui/material/Checkbox/index.js";
@@ -26,7 +32,7 @@ var ariaSortFor = (canSort, isSorted, direction) => {
26
32
  return direction === "asc" ? "ascending" : "descending";
27
33
  };
28
34
  var columnLength = (theme, value) => typeof value === "number" ? rem(theme, value) : value;
29
- var HeaderCell = ({ column, sortable, sortConfig, onSort }) => {
35
+ var HeaderCell = ({ column, sortable, sortConfig, onSort, labels }) => {
30
36
  const theme = useTheme();
31
37
  const canSort = Boolean(sortable) && column.sortable !== false;
32
38
  const isSorted = sortConfig?.key === column.key;
@@ -46,7 +52,7 @@ var HeaderCell = ({ column, sortable, sortConfig, onSort }) => {
46
52
  direction: isSorted ? sortConfig?.direction : "asc",
47
53
  onClick: () => onSort(column.key),
48
54
  "data-testid": "sort-indicator",
49
- "aria-label": `Sort by ${column.label}`,
55
+ "aria-label": labels.sortBy(column.label),
50
56
  children: column.label
51
57
  }
52
58
  ) : column.label
@@ -62,8 +68,10 @@ var EnhancedTableHeader = React.memo(({
62
68
  selectable,
63
69
  selectedRows = [],
64
70
  onSelectAll,
71
+ labels: labelOverrides,
65
72
  headRef
66
73
  }) => {
74
+ const labels = resolveLabels(EN_US_UI_LABELS.table, labelOverrides);
67
75
  const handleSort = useCallback(
68
76
  (columnKey) => {
69
77
  if (!sortable || !onSortChange) return;
@@ -86,12 +94,13 @@ var EnhancedTableHeader = React.memo(({
86
94
  indeterminate: selectedRows.length > 0 && selectedRows.length < data.length,
87
95
  checked: selectedRows.length === data.length && data.length > 0,
88
96
  onChange: handleSelectAll,
89
- inputProps: { "aria-label": "select all" }
97
+ inputProps: { "aria-label": labels.selectAllRows }
90
98
  }
91
99
  ) }),
92
100
  columns.map((column) => /* @__PURE__ */ jsx(
93
101
  HeaderCell,
94
102
  {
103
+ labels,
95
104
  column,
96
105
  sortable,
97
106
  sortConfig,
@@ -141,6 +150,7 @@ var TableDataRow = ({
141
150
  onRowBlur,
142
151
  onSelect,
143
152
  virtualised,
153
+ labels,
144
154
  renderCell
145
155
  }) => {
146
156
  const theme = useTheme();
@@ -164,7 +174,7 @@ var TableDataRow = ({
164
174
  checked: selected,
165
175
  onChange: (event) => onSelect(event, rowKey),
166
176
  onClick: (event) => event.stopPropagation(),
167
- inputProps: { "aria-label": `select row ${index + 1}` }
177
+ inputProps: { "aria-label": labels.selectRow(index + 1) }
168
178
  }
169
179
  )
170
180
  ) }),
@@ -237,8 +247,10 @@ var useTableRowRenderer = ({
237
247
  renderRow,
238
248
  renderCell,
239
249
  virtualised,
240
- rowHeight
250
+ rowHeight,
251
+ labels: labelOverrides
241
252
  }) => {
253
+ const labels = useMemo(() => resolveLabels(EN_US_UI_LABELS.table, labelOverrides), [labelOverrides]);
242
254
  const getRowKey = useRowKey(rowKeyExtractor);
243
255
  const isRowSelected = useCallback2(
244
256
  (rowKey) => selectedRows.includes(rowKey),
@@ -265,7 +277,8 @@ var useTableRowRenderer = ({
265
277
  onRowBlur,
266
278
  onSelect: handleRowSelection,
267
279
  virtualised,
268
- renderCell
280
+ renderCell,
281
+ labels
269
282
  },
270
283
  rowKey
271
284
  );
@@ -282,7 +295,8 @@ var useTableRowRenderer = ({
282
295
  renderCell,
283
296
  rowHeight,
284
297
  selectable,
285
- virtualised
298
+ virtualised,
299
+ labels
286
300
  ]
287
301
  );
288
302
  return renderTableRow;
@@ -294,4 +308,4 @@ export {
294
308
  TableDataRow,
295
309
  EnhancedTableBody
296
310
  };
297
- //# sourceMappingURL=chunk-PY3RW5LC.js.map
311
+ //# sourceMappingURL=chunk-G2IVONJD.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/data-display/Table/TableParts.hooks.tsx","../src/components/data-display/Table/TableParts.tsx"],"sourcesContent":["import { EN_US_UI_LABELS } from '../../../en-US.labels';\nimport { resolveLabels } from '../../../utils/resolve-labels';\nimport type React from 'react';\nimport { useCallback, useMemo } from 'react';\n\nimport { TableDataRow } from './TableParts';\nimport type { TableBodyProps } from './Table.types';\n\n// Row identity, selection and the row element itself. Split out of\n// EnhancedTableBody so that component is just the virtualised/plain choice.\n// A row's identity: the caller's extractor, else its id, else its position.\nconst useRowKey = (rowKeyExtractor: TableBodyProps['rowKeyExtractor']) =>\n useCallback(\n (rowData: Record<string, unknown>, index: number): string | number =>\n rowKeyExtractor ? rowKeyExtractor(rowData, index) : (rowData.id as string | number) || index,\n [rowKeyExtractor],\n );\n\nconst useRowSelection = ({\n selectedRows,\n onSelectionChange,\n}: {\n selectedRows: Array<string | number>;\n onSelectionChange: TableBodyProps['onSelectionChange'];\n}) =>\n useCallback(\n (event: React.MouseEvent | React.ChangeEvent, rowKey: string | number) => {\n // Stop propagation so selecting does not also fire the row click.\n event.stopPropagation();\n if (!onSelectionChange) return;\n onSelectionChange(rowKey, !selectedRows.includes(rowKey));\n },\n [onSelectionChange, selectedRows],\n );\n\ntype RowRendererProps = Pick<\n TableBodyProps,\n | 'columns'\n | 'onRowClick'\n | 'onRowFocus'\n | 'onRowBlur'\n | 'onSelectionChange'\n | 'rowKeyExtractor'\n | 'selectable'\n | 'renderRow'\n | 'renderCell'\n | 'rowHeight'\n | 'labels'\n> & {\n selectedRows: Array<string | number>;\n /** Whether the rows are a virtual window's, drawn at exactly `rowHeight`. */\n virtualised: boolean;\n};\n\nexport const useTableRowRenderer = ({\n columns,\n selectedRows,\n onRowClick,\n onRowFocus,\n onRowBlur,\n onSelectionChange,\n rowKeyExtractor,\n selectable,\n renderRow,\n renderCell,\n virtualised,\n rowHeight,\n labels: labelOverrides,\n}: RowRendererProps) => {\n const labels = useMemo(() => resolveLabels(EN_US_UI_LABELS.table, labelOverrides), [labelOverrides]);\n const getRowKey = useRowKey(rowKeyExtractor);\n const isRowSelected = useCallback(\n (rowKey: string | number) => selectedRows.includes(rowKey),\n [selectedRows],\n );\n const handleRowSelection = useRowSelection({ selectedRows, onSelectionChange });\n\n const renderTableRow = useCallback(\n (rowData: Record<string, unknown>, index: number) => {\n const rowKey = getRowKey(rowData, index);\n const selected = isRowSelected(rowKey);\n\n if (renderRow) return renderRow(rowData, index, selected);\n\n return (\n <TableDataRow\n key={rowKey}\n rowData={rowData}\n rowKey={rowKey}\n index={index}\n columns={columns}\n selected={selected}\n selectable={selectable}\n rowHeight={rowHeight}\n onRowClick={onRowClick}\n onRowFocus={onRowFocus}\n onRowBlur={onRowBlur}\n onSelect={handleRowSelection}\n virtualised={virtualised}\n renderCell={renderCell}\n labels={labels}\n />\n );\n },\n [\n columns,\n getRowKey,\n isRowSelected,\n handleRowSelection,\n onRowClick,\n onRowFocus,\n onRowBlur,\n renderRow,\n renderCell,\n rowHeight,\n selectable,\n virtualised,\n labels,\n ],\n );\n\n return renderTableRow;\n};\n","import { EN_US_UI_LABELS } from '../../../en-US.labels';\nimport { resolveLabels } from '../../../utils/resolve-labels';\nimport Checkbox from '@mui/material/Checkbox/index.js';\nimport TableBody from '@mui/material/TableBody/index.js';\nimport TableCell from '@mui/material/TableCell/index.js';\nimport TableHead from '@mui/material/TableHead/index.js';\nimport TableRow from '@mui/material/TableRow/index.js';\nimport TableSortLabel from '@mui/material/TableSortLabel/index.js';\nimport { useTheme, type Theme } from '@mui/material/styles/index.js';\nimport React, { useCallback } from 'react';\n\nimport { FIELD_BORDER_WIDTH } from '../../../tokens/field-height.core';\nimport { rem } from '../../../tokens/relative';\n\nimport { tableRowHeight } from './Table.helpers';\nimport { useTableRowRenderer } from './TableParts.hooks';\nimport type {\n ColumnConfig,\n TableBodyProps,\n TableHeaderProps,\n TableLabels,\n VirtualWindow,\n} from './Table.types';\n\n// Mirrors the visible sort indicator for assistive technology; undefined when\n// the column is not sorted, which is what removes the attribute entirely.\nconst ariaSortFor = (\n canSort: boolean,\n isSorted: boolean,\n direction?: 'asc' | 'desc',\n): 'ascending' | 'descending' | undefined => {\n if (!canSort || !isSorted) return undefined;\n\n return direction === 'asc' ? 'ascending' : 'descending';\n};\n\n/** A column's `width`/`minWidth` as CSS: a number is design px, a string as given. */\nconst columnLength = (theme: Theme, value: number | string | undefined): string | undefined =>\n typeof value === 'number' ? rem(theme, value) : value;\n\n// One header cell. Sorting is offered when the table is sortable and the column\n// has not opted out; aria-sort mirrors the visible indicator.\nconst HeaderCell: React.FC<{\n labels: TableLabels;\n column: ColumnConfig;\n sortable?: boolean;\n sortConfig?: { key: string; direction: 'asc' | 'desc' };\n onSort: (columnKey: string) => void;\n}> = ({ column, sortable, sortConfig, onSort, labels }) => {\n const theme = useTheme();\n const canSort = Boolean(sortable) && column.sortable !== false;\n const isSorted = sortConfig?.key === column.key;\n\n return (\n <TableCell\n align={column.align || 'left'}\n style={{\n minWidth: columnLength(theme, column.minWidth),\n width: columnLength(theme, column.width),\n }}\n aria-sort={ariaSortFor(canSort, isSorted, sortConfig?.direction)}\n >\n {canSort ? (\n <TableSortLabel\n active={isSorted}\n direction={isSorted ? sortConfig?.direction : 'asc'}\n onClick={() => onSort(column.key)}\n data-testid=\"sort-indicator\"\n aria-label={labels.sortBy(column.label)}\n >\n {column.label}\n </TableSortLabel>\n ) : (\n column.label\n )}\n </TableCell>\n );\n};\n\nexport const EnhancedTableHeader: React.FC<TableHeaderProps> = React.memo(({\n columns,\n data,\n sortable,\n sortConfig,\n onSortChange,\n selectable,\n selectedRows = [],\n onSelectAll,\n labels: labelOverrides,\n headRef }) => {\n const labels = resolveLabels(EN_US_UI_LABELS.table, labelOverrides);\n const handleSort = useCallback(\n (columnKey: string) => {\n if (!sortable || !onSortChange) return;\n \n const direction = \n sortConfig?.key === columnKey && sortConfig.direction === 'asc' ? 'desc' : 'asc';\n onSortChange(columnKey, direction);\n },\n [sortable, onSortChange, sortConfig]\n );\n\n const handleSelectAll = useCallback(\n (event: React.ChangeEvent<globalThis.HTMLInputElement>) => {\n if (!onSelectAll) return;\n onSelectAll(event.target.checked);\n },\n [onSelectAll]\n );\n\n return (\n <TableHead ref={headRef}>\n <TableRow>\n {selectable && (\n <TableCell padding=\"checkbox\">\n <Checkbox\n indeterminate={selectedRows.length > 0 && selectedRows.length < data.length}\n checked={selectedRows.length === data.length && data.length > 0}\n onChange={handleSelectAll}\n inputProps={{ 'aria-label': labels.selectAllRows }}\n />\n </TableCell>\n )}\n {columns.map((column) => (\n <HeaderCell\n key={column.key}\n labels={labels}\n column={column}\n sortable={sortable}\n sortConfig={sortConfig}\n onSort={handleSort}\n />\n ))}\n </TableRow>\n </TableHead>\n );\n});\n\nEnhancedTableHeader.displayName = 'EnhancedTableHeader';\n\n/** How a virtual cell's wrapper places its content along the row, per `align`. */\nconst JUSTIFY: Record<NonNullable<ColumnConfig['align']>, React.CSSProperties['justifyContent']> = {\n left: 'flex-start',\n center: 'center',\n right: 'flex-end',\n};\n\n/**\n * A virtual cell's content (FUT-2668). The cell has no vertical padding, and\n * this fills its content box — the pitch less the cell's bottom rule, the one\n * hairline every variant draws — so the cell's border box is exactly the pitch\n * whatever it holds. Centred vertically, placed by the column's `align`, and\n * clipped rather than allowed to grow the row.\n */\nconst VirtualCellContent: React.FC<{\n rowHeight: number;\n align: NonNullable<ColumnConfig['align']>;\n children: React.ReactNode;\n}> = ({ rowHeight, align, children }) => {\n const theme = useTheme();\n return (\n <div\n style={{\n height: `calc(${rem(theme, rowHeight)} - ${FIELD_BORDER_WIDTH}px)`,\n display: 'flex',\n alignItems: 'center',\n justifyContent: JUSTIFY[align],\n overflow: 'hidden',\n }}\n >\n {children}\n </div>\n );\n};\n\n/** What one cell shows: the caller's `renderCell`, else the column's `render`, else the value. */\nconst cellContent = (\n column: ColumnConfig,\n rowData: Record<string, unknown>,\n index: number,\n renderCell: TableBodyProps['renderCell'],\n): React.ReactNode => {\n const value = rowData[column.key];\n if (renderCell) return renderCell(value, column, rowData, index);\n return column.render ? column.render(value, rowData) : (value as React.ReactNode);\n};\n\n// One data row. Split out of the memoised renderTableRow callback so the\n// callback stays a short dispatch and the row markup is readable on its own.\n// A virtualised row stays in the table's flow at `rowHeight`, and each of its\n// cells holds its content in a `VirtualCellContent` (FUT-2668); a plain row is\n// drawn as MUI draws it.\nexport const TableDataRow: React.FC<{\n rowData: Record<string, unknown>;\n rowKey: string | number;\n index: number;\n columns: ColumnConfig[];\n selected: boolean;\n selectable?: boolean;\n /** Design px; 52 when unset (`tableRowHeight`). */\n rowHeight?: number;\n onRowClick?: TableBodyProps['onRowClick'];\n onRowFocus?: TableBodyProps['onRowFocus'];\n onRowBlur?: TableBodyProps['onRowBlur'];\n onSelect: (event: React.MouseEvent | React.ChangeEvent, rowKey: string | number) => void;\n /** Whether the row is one of a virtual window's. */\n virtualised: boolean;\n renderCell?: TableBodyProps['renderCell'];\n labels: TableLabels;\n}> = ({\n rowData,\n rowKey,\n index,\n columns,\n selected,\n selectable,\n rowHeight,\n onRowClick,\n onRowFocus,\n onRowBlur,\n onSelect,\n virtualised,\n labels,\n renderCell }) => {\n const theme = useTheme();\n const pitch = tableRowHeight(rowHeight);\n const fit = (align: NonNullable<ColumnConfig['align']>, content: React.ReactNode) =>\n virtualised ? (\n <VirtualCellContent rowHeight={pitch} align={align}>\n {content}\n </VirtualCellContent>\n ) : (\n content\n );\n\n return (\n <TableRow\n key={String(rowKey)}\n selected={selected}\n className={selected ? 'selected' : ''}\n onClick={(event: React.MouseEvent<globalThis.HTMLTableRowElement>) => onRowClick?.(event, rowData)}\n onFocus={(event: React.FocusEvent<globalThis.HTMLTableRowElement>) => onRowFocus?.(event, rowData)}\n onBlur={(event: React.FocusEvent<globalThis.HTMLTableRowElement>) => onRowBlur?.(event, rowData)}\n style={virtualised ? { height: rem(theme, pitch) } : undefined}\n >\n {selectable && (\n <TableCell padding=\"checkbox\">\n {fit(\n 'left',\n <Checkbox\n checked={selected}\n onChange={(event) => onSelect(event, rowKey)}\n onClick={(event) => event.stopPropagation()}\n inputProps={{ 'aria-label': labels.selectRow(index + 1) }}\n />,\n )}\n </TableCell>\n )}\n {columns.map((column) => (\n <TableCell key={column.key} align={column.align || 'left'}>\n {fit(column.align || 'left', cellContent(column, rowData, index, renderCell))}\n </TableCell>\n ))}\n </TableRow>\n );\n};\n\n/**\n * A stand-in for the rows outside the window, `heightPx` design px tall. A bare\n * `<tr>` and `<td>` with no padding or border: none of MUI's row or cell\n * classes, so hover, striping and cell padding never reach it. Not rendered at\n * all when there is nothing to stand in for.\n */\nconst SpacerRow: React.FC<{ heightPx: number; colSpan: number }> = ({ heightPx, colSpan }) => {\n const theme = useTheme();\n if (heightPx <= 0) return null;\n return (\n <tr aria-hidden=\"true\" style={{ height: rem(theme, heightPx) }}>\n <td colSpan={colSpan} style={{ padding: 0, border: 0 }} />\n </tr>\n );\n};\n\n// Only the rows in view are rendered, in the table's own flow between two\n// spacer rows standing in for the rest (FUT-2668) — an absolutely positioned\n// `<tr>` is blockified and leaves the column grid. Every height is design px,\n// drawn through `rem`. The `<tbody>` sits directly in the `<table>`; the one\n// scroll container wraps the whole table, header included (FUT-2658).\nconst VirtualisedBody: React.FC<{\n visibleItems: VirtualWindow;\n colSpan: number;\n renderTableRow: (rowData: Record<string, unknown>, index: number) => React.ReactNode;\n}> = ({ visibleItems, colSpan, renderTableRow }) => (\n <TableBody>\n <SpacerRow heightPx={visibleItems.offsetY} colSpan={colSpan} />\n {visibleItems.items.map((rowData, index) =>\n renderTableRow(rowData, visibleItems.startIndex + index)\n )}\n <SpacerRow heightPx={visibleItems.trailingPx} colSpan={colSpan} />\n </TableBody>\n);\n\nconst PlainBody: React.FC<{\n data: TableBodyProps['data'];\n renderTableRow: (rowData: Record<string, unknown>, index: number) => React.ReactNode;\n}> = ({ data, renderTableRow }) => (\n\n <TableBody>\n {data.map((rowData, index) => renderTableRow(rowData, index))}\n </TableBody>\n);\n\n// Enhanced Table Body Component \nexport const EnhancedTableBody: React.FC<TableBodyProps> = React.memo((props) => {\n const { data, virtualWindow } = props;\n // The row renderer takes the body's own props; its `rowHeight` stays the\n // caller's design px, and the row resolves the default where it draws it.\n const renderTableRow = useTableRowRenderer({\n ...props,\n selectedRows: props.selectedRows ?? [],\n virtualised: Boolean(virtualWindow),\n });\n\n if (virtualWindow) {\n return (\n <VirtualisedBody\n visibleItems={virtualWindow}\n colSpan={props.columns.length + (props.selectable ? 1 : 0)}\n renderTableRow={renderTableRow}\n />\n );\n }\n\n return (\n <PlainBody data={data} renderTableRow={renderTableRow} />\n );\n});\n\nEnhancedTableBody.displayName = 'EnhancedTableBody';\n\n// Main Table Component\n"],"mappings":"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","names":["useCallback","jsx","useCallback"]}
@@ -1,3 +1,8 @@
1
+ import {
2
+ resolveTooltipProps,
3
+ useHoverOpen,
4
+ usePinnedTooltip
5
+ } from "./chunk-QYJ25FWM.js";
1
6
  import {
2
7
  arrowColor,
3
8
  emphasisStyles,
@@ -5,11 +10,6 @@ import {
5
10
  tooltipCap,
6
11
  variantStyles
7
12
  } from "./chunk-BCWL7HUO.js";
8
- import {
9
- resolveTooltipProps,
10
- useHoverOpen,
11
- usePinnedTooltip
12
- } from "./chunk-QYJ25FWM.js";
13
13
 
14
14
  // src/components/data-display/InteractiveTooltip/InteractiveTooltip.tsx
15
15
  import MuiTooltip from "@mui/material/Tooltip/index.js";
@@ -96,4 +96,4 @@ InteractiveTooltip.displayName = "InteractiveTooltip";
96
96
  export {
97
97
  InteractiveTooltip
98
98
  };
99
- //# sourceMappingURL=chunk-Z5WUSI47.js.map
99
+ //# sourceMappingURL=chunk-G3JFESKD.js.map
@@ -8,7 +8,7 @@ import {
8
8
  } from "./chunk-L7BRU4UF.js";
9
9
  import {
10
10
  Alert
11
- } from "./chunk-NQCTANF3.js";
11
+ } from "./chunk-QVDEGBME.js";
12
12
  import {
13
13
  Button
14
14
  } from "./chunk-5USHYSCO.js";
@@ -106,4 +106,4 @@ NotificationStatusNotice.displayName = "NotificationStatusNotice";
106
106
  export {
107
107
  NotificationStatusNotice
108
108
  };
109
- //# sourceMappingURL=chunk-XRDH24J7.js.map
109
+ //# sourceMappingURL=chunk-G6ET2DRL.js.map
@@ -4,7 +4,11 @@ var PT_BR_COMMAND_PALETTE_COPY = {
4
4
  navigate: "\u2191\u2193 Navegar",
5
5
  close: "ESC Fechar",
6
6
  recent: "Recentes",
7
- tryAnotherTerm: "Tente outro termo"
7
+ tryAnotherTerm: "Tente outro termo",
8
+ placeholder: "Digite um comando ou pesquise...",
9
+ commandCount: (count) => count === 1 ? "1 comando" : `${count} comandos`,
10
+ noCommandsFound: (query) => `Nenhum comando encontrado para "${query}"`,
11
+ general: "Geral"
8
12
  };
9
13
  var PT_BR_BREADCRUMB_COPY = {
10
14
  showMore: "Mostrar mais",
@@ -21,4 +25,4 @@ export {
21
25
  PT_BR_BREADCRUMB_COPY,
22
26
  PT_BR_SECTION_NAV_COPY
23
27
  };
24
- //# sourceMappingURL=chunk-KIL3OVLI.js.map
28
+ //# sourceMappingURL=chunk-G76PIGF7.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/pt-BR.navigation.ts"],"sourcesContent":["/**\n * The pt-BR pack for the navigation family. Split out of `pt-BR.ts`, which is a\n * barrel over this folder — see that file for why.\n */\nimport type {\n BreadcrumbCopy,\n CommandPaletteCopy,\n SectionNavCopy,\n} from './copy';\n\nexport const PT_BR_COMMAND_PALETTE_COPY: Required<CommandPaletteCopy> = {\n execute: \"Executar\",\n navigate: \"↑↓ Navegar\",\n close: \"ESC Fechar\",\n recent: \"Recentes\",\n tryAnotherTerm: \"Tente outro termo\",\n placeholder: \"Digite um comando ou pesquise...\",\n commandCount: (count) => (count === 1 ? \"1 comando\" : `${count} comandos`),\n noCommandsFound: (query) => `Nenhum comando encontrado para \"${query}\"`,\n general: \"Geral\",\n};\n\nexport const PT_BR_BREADCRUMB_COPY: BreadcrumbCopy = {\n showMore: \"Mostrar mais\",\n moreItems: \"Mais itens\",\n};\n\nexport const PT_BR_SECTION_NAV_COPY: SectionNavCopy = {\n close: \"Fechar\",\n badge: (count) => (count === 1 ? \"1 pendente\" : `${count} pendentes`),\n attention: \"Precisa de atenção\",\n};\n"],"mappings":";AAUO,IAAM,6BAA2D;AAAA,EACtE,SAAS;AAAA,EACT,UAAU;AAAA,EACV,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,gBAAgB;AAAA,EAChB,aAAa;AAAA,EACb,cAAc,CAAC,UAAW,UAAU,IAAI,cAAc,GAAG,KAAK;AAAA,EAC9D,iBAAiB,CAAC,UAAU,mCAAmC,KAAK;AAAA,EACpE,SAAS;AACX;AAEO,IAAM,wBAAwC;AAAA,EACnD,UAAU;AAAA,EACV,WAAW;AACb;AAEO,IAAM,yBAAyC;AAAA,EACpD,OAAO;AAAA,EACP,OAAO,CAAC,UAAW,UAAU,IAAI,eAAe,GAAG,KAAK;AAAA,EACxD,WAAW;AACb;","names":[]}
@@ -11,6 +11,9 @@ import {
11
11
  DashboardContext,
12
12
  useDashboardContext
13
13
  } from "./chunk-CUMSPE6B.js";
14
+ import {
15
+ EN_US_UI_LABELS
16
+ } from "./chunk-W5PRZHLU.js";
14
17
  import {
15
18
  sxRem
16
19
  } from "./chunk-YKCAJ2TN.js";
@@ -82,6 +85,7 @@ Dashboard.displayName = "Dashboard";
82
85
  var DashboardBreadcrumb = ({
83
86
  items,
84
87
  renderLink,
88
+ ariaLabel = EN_US_UI_LABELS.dashboard.breadcrumb,
85
89
  className
86
90
  }) => {
87
91
  const { testIdPrefix } = useDashboardContext();
@@ -90,7 +94,7 @@ var DashboardBreadcrumb = ({
90
94
  {
91
95
  separator: /* @__PURE__ */ jsx(NavigateNextIcon, { fontSize: "small" }),
92
96
  className,
93
- "aria-label": "breadcrumb",
97
+ "aria-label": ariaLabel,
94
98
  "data-testid": `${testIdPrefix}-breadcrumb`,
95
99
  sx: { fontSize: sxRem(14), color: "text.secondary" },
96
100
  children: items.map((item, index) => {
@@ -210,4 +214,4 @@ export {
210
214
  markDashboardSlot,
211
215
  Dashboard
212
216
  };
213
- //# sourceMappingURL=chunk-XQWUVQ2F.js.map
217
+ //# sourceMappingURL=chunk-GHGZI7PK.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/layout/Dashboard/Dashboard.tsx"],"sourcesContent":["'use client';\n\nimport ExpandLessIcon from '@mui/icons-material/ExpandLess';\nimport ExpandMoreIcon from '@mui/icons-material/ExpandMore';\nimport FilterIcon from '@mui/icons-material/FilterListRounded';\nimport NavigateNextIcon from '@mui/icons-material/NavigateNext';\nimport Box from '@mui/material/Box/index.js';\nimport MuiBreadcrumbs from '@mui/material/Breadcrumbs/index.js';\nimport Button from '@mui/material/Button/index.js';\nimport Collapse from '@mui/material/Collapse/index.js';\nimport MuiLink from '@mui/material/Link/index.js';\nimport Typography from '@mui/material/Typography/index.js';\nimport { styled } from '@mui/material/styles/index.js';\nimport React, { useMemo, useState } from 'react';\n\nimport { DashboardContext, useDashboardContext } from './DashboardContext';\nimport {\n DashboardAction,\n DashboardActions,\n DashboardExport,\n DashboardFilterToggle,\n DashboardInfo,\n DashboardSettings,\n DashboardSpacer,\n} from './DashboardParts';\nimport type {\n DashboardBodyProps,\n DashboardBreadcrumbProps,\n DashboardFiltersProps,\n DashboardHeaderProps,\n DashboardMoreFiltersProps,\n DashboardProps,\n} from './Dashboard.types';\nimport { EN_US_UI_LABELS } from '../../../en-US.labels';\nimport { sxRem } from '../../../tokens/relative';\n\n/**\n * Ordered slot keys. The root reorders composed children into this sequence so\n * authoring order in JSX never matters — a `<Dashboard.Filters>` placed above\n * a `<Dashboard.Header>` still renders below it.\n */\nconst SLOT_ORDER = ['breadcrumb', 'header', 'filters', 'body'] as const;\n/** A slot a component can occupy in the canonical Dashboard order. */\nexport type DashboardSlot = (typeof SLOT_ORDER)[number];\n\n/** Marker attached to each sub-component so the root can rank it by slot. */\ntype SlottedComponent = { dashboardSlot?: DashboardSlot };\n\n/**\n * Tag a component with the Dashboard slot it occupies so the root ranks it in\n * canonical order. The root inspects only its DIRECT children's `type`, so a\n * page that wraps a `<Dashboard.Header>` (or any part) in its own component MUST\n * mark that wrapper — otherwise it counts as an unrecognised child and sinks\n * below the body. Returns the component for convenient inline use.\n *\n * @example\n * ```tsx\n * function ProductsHeader(props) {\n * return <Dashboard.Header title=\"Products\">{/* … *\\/}</Dashboard.Header>;\n * }\n * markDashboardSlot(ProductsHeader, 'header');\n * ```\n */\nexport function markDashboardSlot<T>(component: T, slot: DashboardSlot): T {\n (component as SlottedComponent).dashboardSlot = slot;\n return component;\n}\n\nconst Root = styled(Box)(({ theme }) => ({\n display: 'flex',\n flexDirection: 'column',\n gap: theme.spacing(2),\n width: '100%',\n}));\n\nfunction slotRank(node: React.ReactNode): number {\n if (React.isValidElement(node)) {\n const slot = (node.type as SlottedComponent).dashboardSlot;\n if (slot) {\n const rank = SLOT_ORDER.indexOf(slot);\n if (rank >= 0) {\n return rank;\n }\n }\n }\n // Unknown / arbitrary children keep their relative position after the\n // recognised slots.\n return SLOT_ORDER.length;\n}\n\n/**\n * Composable page shell. `<Dashboard>` provides shared state through context\n * and renders whichever sub-components you compose — nothing is implied. Drop\n * in only the parts you need; omit `<Dashboard.Filters>` and there is simply no\n * filter UI.\n *\n * @example\n * ```tsx\n * <Dashboard activeFilterCount={2}>\n * <Dashboard.Breadcrumb items={[{ label: 'Admin', href: '/admin' }, { label: 'Products' }]} />\n * <Dashboard.Header title=\"Products\">\n * <Dashboard.Info>What this page does…</Dashboard.Info>\n * <Dashboard.FilterToggle />\n * <Dashboard.Settings>In development</Dashboard.Settings>\n * <Dashboard.Spacer />\n * <Dashboard.Export onExport={handleExport} />\n * <Dashboard.Action><Button variant=\"contained\">New product</Button></Dashboard.Action>\n * </Dashboard.Header>\n * <Dashboard.Filters>{/* search + pills *\\/}</Dashboard.Filters>\n * <Dashboard.Body>{table}</Dashboard.Body>\n * </Dashboard>\n * ```\n */\nexport const Dashboard = ({\n children,\n defaultFiltersVisible = true,\n activeFilterCount = 0,\n testIdPrefix = 'dashboard',\n className,\n}: DashboardProps): React.JSX.Element => {\n const [filtersVisible, setFiltersVisible] = useState(defaultFiltersVisible);\n const [moreFiltersOpen, setMoreFiltersOpen] = useState(false);\n\n const value = useMemo(\n () => ({\n filtersVisible,\n toggleFilters: () => setFiltersVisible((v) => !v),\n moreFiltersOpen,\n toggleMoreFilters: () => setMoreFiltersOpen((v) => !v),\n activeFilterCount,\n testIdPrefix,\n }),\n [filtersVisible, moreFiltersOpen, activeFilterCount, testIdPrefix],\n );\n\n // Stable sort recognised slots into canonical order, preserving the original\n // order of anything unrecognised.\n const ordered = useMemo(() => {\n const arr = React.Children.toArray(children);\n return arr\n .map((node, index) => ({ node, index, rank: slotRank(node) }))\n .sort((a, b) => (a.rank === b.rank ? a.index - b.index : a.rank - b.rank))\n .map((entry) => entry.node);\n }, [children]);\n\n return (\n <DashboardContext.Provider value={value}>\n <Root className={className} data-testid={testIdPrefix}>\n {ordered}\n </Root>\n </DashboardContext.Provider>\n );\n};\n\nDashboard.displayName = 'Dashboard';\n\n/* -------------------------------------------------------------------------- */\n/* Breadcrumb */\n/* -------------------------------------------------------------------------- */\n\nconst DashboardBreadcrumb = ({\n items,\n renderLink,\n ariaLabel = EN_US_UI_LABELS.dashboard.breadcrumb,\n className,\n}: DashboardBreadcrumbProps): React.JSX.Element => {\n const { testIdPrefix } = useDashboardContext();\n return (\n <MuiBreadcrumbs\n separator={<NavigateNextIcon fontSize=\"small\" />}\n className={className}\n aria-label={ariaLabel}\n data-testid={`${testIdPrefix}-breadcrumb`}\n sx={{ fontSize: sxRem(14), color: 'text.secondary' }}\n >\n {items.map((item, index) => {\n const isLast = index === items.length - 1;\n if (isLast || !item.href) {\n return (\n <Typography\n key={`${item.label}-${index}`}\n component=\"span\"\n sx={{ fontSize: sxRem(14), color: isLast ? 'text.primary' : 'text.secondary' }}\n aria-current={isLast ? 'page' : undefined}\n >\n {item.label}\n </Typography>\n );\n }\n const linkContent = item.label;\n if (renderLink) {\n return <React.Fragment key={`${item.label}-${index}`}>{renderLink(item, linkContent)}</React.Fragment>;\n }\n return (\n <MuiLink\n key={`${item.label}-${index}`}\n href={item.href}\n underline=\"hover\"\n color=\"inherit\"\n sx={{ fontSize: sxRem(14) }}\n >\n {linkContent}\n </MuiLink>\n );\n })}\n </MuiBreadcrumbs>\n );\n};\nDashboardBreadcrumb.displayName = 'Dashboard.Breadcrumb';\n(DashboardBreadcrumb as SlottedComponent).dashboardSlot = 'breadcrumb';\n\n/* -------------------------------------------------------------------------- */\n/* Header + action parts */\n/* -------------------------------------------------------------------------- */\n\nconst DashboardHeader = ({ title, children, className }: DashboardHeaderProps): React.JSX.Element => {\n const { testIdPrefix } = useDashboardContext();\n return (\n <Box\n className={className}\n data-testid={`${testIdPrefix}-header`}\n sx={{ display: 'flex', alignItems: 'center', gap: 1, flexWrap: 'wrap', minHeight: sxRem(40) }}\n >\n <Typography variant=\"h5\" component=\"h1\" sx={{ fontWeight: 600, mr: 0.5 }}>\n {title}\n </Typography>\n {children}\n </Box>\n );\n};\nDashboardHeader.displayName = 'Dashboard.Header';\n(DashboardHeader as SlottedComponent).dashboardSlot = 'header';\n\n/** Flexible spacer — everything composed after it is pushed to the right. */\n/* -------------------------------------------------------------------------- */\n/* Filters */\n/* -------------------------------------------------------------------------- */\n\nconst DashboardFilters = ({ children, className }: DashboardFiltersProps): React.JSX.Element => {\n const { filtersVisible, testIdPrefix } = useDashboardContext();\n return (\n <Collapse in={filtersVisible} unmountOnExit data-testid={`${testIdPrefix}-filters`}>\n <Box\n className={className}\n sx={{\n display: 'flex',\n flexDirection: 'column',\n gap: 1.5,\n p: 2,\n borderRadius: 1,\n border: 1,\n borderColor: 'divider',\n bgcolor: 'action.hover',\n }}\n >\n {children}\n </Box>\n </Collapse>\n );\n};\nDashboardFilters.displayName = 'Dashboard.Filters';\n(DashboardFilters as SlottedComponent).dashboardSlot = 'filters';\n\nconst DashboardMoreFilters = ({ children, label = 'More filters' }: DashboardMoreFiltersProps): React.JSX.Element => {\n const { moreFiltersOpen, toggleMoreFilters, testIdPrefix } = useDashboardContext();\n return (\n <Box>\n <Button\n variant=\"text\"\n size=\"small\"\n startIcon={<FilterIcon fontSize=\"small\" />}\n endIcon={moreFiltersOpen ? <ExpandLessIcon fontSize=\"small\" /> : <ExpandMoreIcon fontSize=\"small\" />}\n onClick={toggleMoreFilters}\n aria-expanded={moreFiltersOpen}\n data-testid={`${testIdPrefix}-more-filters-toggle`}\n >\n {label}\n </Button>\n <Collapse in={moreFiltersOpen} unmountOnExit data-testid={`${testIdPrefix}-more-filters-panel`}>\n <Box sx={{ mt: 1.5, p: 2, borderRadius: 1, border: 1, borderColor: 'divider', bgcolor: 'background.paper' }}>\n {children}\n </Box>\n </Collapse>\n </Box>\n );\n};\nDashboardMoreFilters.displayName = 'Dashboard.MoreFilters';\n\n/* -------------------------------------------------------------------------- */\n/* Body */\n/* -------------------------------------------------------------------------- */\n\nconst DashboardBody = ({ children, className }: DashboardBodyProps): React.JSX.Element => {\n const { testIdPrefix } = useDashboardContext();\n return (\n <Box className={className} data-testid={`${testIdPrefix}-body`}>\n {children}\n </Box>\n );\n};\nDashboardBody.displayName = 'Dashboard.Body';\n(DashboardBody as SlottedComponent).dashboardSlot = 'body';\n\n/* -------------------------------------------------------------------------- */\n/* Attach sub-components as dot-notation parts */\n/* -------------------------------------------------------------------------- */\n\nDashboard.Breadcrumb = DashboardBreadcrumb;\nDashboard.Header = DashboardHeader;\nDashboard.Spacer = DashboardSpacer;\nDashboard.Info = DashboardInfo;\nDashboard.FilterToggle = DashboardFilterToggle;\nDashboard.Settings = DashboardSettings;\nDashboard.Export = DashboardExport;\nDashboard.Action = DashboardAction;\nDashboard.Actions = DashboardActions;\nDashboard.Filters = DashboardFilters;\nDashboard.MoreFilters = DashboardMoreFilters;\nDashboard.Body = DashboardBody;\n"],"mappings":"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","names":[]}
@@ -1,9 +1,10 @@
1
1
  import {
2
2
  usePhoneInput
3
- } from "./chunk-BGYLL467.js";
3
+ } from "./chunk-N3W6FZOC.js";
4
4
  import {
5
- countries
6
- } from "./chunk-3JDP5OUR.js";
5
+ countriesByDisplayName,
6
+ countryDisplayName
7
+ } from "./chunk-RQY5ONSF.js";
7
8
  import {
8
9
  fieldControlStyles,
9
10
  fieldTextFieldStyles
@@ -31,6 +32,7 @@ import MenuItem from "@mui/material/MenuItem/index.js";
31
32
  import TextField from "@mui/material/TextField/index.js";
32
33
  import Typography from "@mui/material/Typography/index.js";
33
34
  import { alpha, styled, useTheme } from "@mui/material/styles/index.js";
35
+ import { useMemo } from "react";
34
36
  import { jsx, jsxs } from "react/jsx-runtime";
35
37
  var FieldTextField = styled(TextField)(({ theme }) => fieldTextFieldStyles(theme));
36
38
  var GlassTextField = styled(TextField)(({ theme }) => ({
@@ -139,11 +141,10 @@ var PhoneField = ({
139
141
  );
140
142
  var PHONE_INPUT_DEFAULTS = {
141
143
  variant: "outlined",
142
- label: "Phone Number",
143
- placeholder: "Enter phone number",
144
144
  icon: /* @__PURE__ */ jsx(PhoneIcon, {}),
145
145
  defaultValue: "",
146
- countryCode: "US",
146
+ // The owner's market: a host that names no country starts at Brazil.
147
+ countryCode: "BR",
147
148
  floating: false,
148
149
  error: false,
149
150
  disabled: false,
@@ -153,6 +154,10 @@ var PHONE_INPUT_DEFAULTS = {
153
154
  var definedProps = (props) => Object.fromEntries(
154
155
  Object.entries(props).filter(([, value]) => value !== void 0)
155
156
  );
157
+ var copyDefaults = (copy) => ({
158
+ label: copy.label ?? "Phone Number",
159
+ placeholder: copy.placeholder ?? "Enter phone number"
160
+ });
156
161
  var CountryAdornment = ({ country, menuOpen, onOpen, onOpenViaKeyboard, selectCountryLabel }) => /* @__PURE__ */ jsx(InputAdornment, { position: "start", "data-testid": "phone-input-start-adornment", children: /* @__PURE__ */ jsxs(
157
162
  CountrySelector,
158
163
  {
@@ -201,8 +206,9 @@ var ValidityAdornment = ({
201
206
  }
202
207
  ) });
203
208
  };
204
- var CountryPicker = ({ anchorEl, selectedCode, onClose, onSelect }) => {
209
+ var CountryPicker = ({ anchorEl, selectedCode, onClose, onSelect, countryName }) => {
205
210
  const theme = useTheme();
211
+ const listed = useMemo(() => countriesByDisplayName(countryName), [countryName]);
206
212
  return /* @__PURE__ */ jsx(
207
213
  CountryMenu,
208
214
  {
@@ -218,7 +224,7 @@ var CountryPicker = ({ anchorEl, selectedCode, onClose, onSelect }) => {
218
224
  horizontal: "left"
219
225
  },
220
226
  "data-testid": "country-menu",
221
- children: countries.map((country) => /* @__PURE__ */ jsxs(
227
+ children: listed.map((country) => /* @__PURE__ */ jsxs(
222
228
  MenuItem,
223
229
  {
224
230
  onClick: () => onSelect(country),
@@ -234,7 +240,7 @@ var CountryPicker = ({ anchorEl, selectedCode, onClose, onSelect }) => {
234
240
  /* @__PURE__ */ jsx(
235
241
  ListItemText,
236
242
  {
237
- primary: country.name,
243
+ primary: country.displayName,
238
244
  secondary: country.dial,
239
245
  primaryTypographyProps: { fontSize: rem(theme, 14.4) },
240
246
  secondaryTypographyProps: { fontSize: rem(theme, 12.8) }
@@ -280,7 +286,11 @@ var PhoneInput = (props) => {
280
286
  disabled,
281
287
  required,
282
288
  fullWidth
283
- } = { ...PHONE_INPUT_DEFAULTS, ...definedProps(props) };
289
+ } = {
290
+ ...PHONE_INPUT_DEFAULTS,
291
+ ...copyDefaults(copy),
292
+ ...definedProps(props)
293
+ };
284
294
  const {
285
295
  value,
286
296
  selectedCountry,
@@ -302,7 +312,7 @@ var PhoneInput = (props) => {
302
312
  value,
303
313
  isFocused,
304
314
  helper,
305
- countryName: selectedCountry?.name,
315
+ countryName: selectedCountry && countryDisplayName(selectedCountry, copy.countryName),
306
316
  copy
307
317
  });
308
318
  const TextFieldComponent = variant === "glass" ? GlassTextField : FieldTextField;
@@ -337,7 +347,8 @@ var PhoneInput = (props) => {
337
347
  anchorEl,
338
348
  selectedCode: selectedCountry?.code,
339
349
  onClose: handleCountryClose,
340
- onSelect: handleCountrySelect
350
+ onSelect: handleCountrySelect,
351
+ countryName: copy.countryName
341
352
  }
342
353
  )
343
354
  ] });
@@ -348,4 +359,4 @@ export {
348
359
  PhoneInput,
349
360
  PhoneInput_default
350
361
  };
351
- //# sourceMappingURL=chunk-4MQ6XTIJ.js.map
362
+ //# sourceMappingURL=chunk-GJMWQUAD.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/form/PhoneInput/PhoneInput.tsx"],"sourcesContent":["import ArrowDropDown from '@mui/icons-material/ArrowDropDown';\nimport PhoneIcon from '@mui/icons-material/Phone';\nimport Box from '@mui/material/Box/index.js';\nimport InputAdornment from '@mui/material/InputAdornment/index.js';\nimport ListItemIcon from '@mui/material/ListItemIcon/index.js';\nimport ListItemText from '@mui/material/ListItemText/index.js';\nimport Menu from '@mui/material/Menu/index.js';\nimport MenuItem from '@mui/material/MenuItem/index.js';\nimport TextField from '@mui/material/TextField/index.js';\nimport Typography from '@mui/material/Typography/index.js';\nimport { alpha, styled, useTheme } from '@mui/material/styles/index.js';\nimport type { FC} from 'react';\nimport React, { useMemo } from 'react';\n\nimport { countriesByDisplayName, countryDisplayName } from './countries';\nimport { usePhoneInput } from './PhoneInput.hooks';\nimport type { CountryData,PhoneInputProps } from './PhoneInput.types';\nimport type { PhoneInputCopy } from '../../../copy';\n\nimport { fieldEdge } from '../../../tokens/field-edge';\nimport { fieldRadius } from '../../../tokens/field-radius';\nimport { fieldControlStyles, fieldTextFieldStyles } from '../../../tokens/field-height';\nimport { rem, sxRem } from '../../../tokens/relative';\n\n// Country data with expanded support\n\n// Styled components\n/** The plain variant: MUI's own field, on the theme's field radius. */\nconst FieldTextField = styled(TextField)(({ theme }) => fieldTextFieldStyles(theme));\n\nconst GlassTextField = styled(TextField)(({ theme }) => ({\n ...fieldControlStyles(theme),\n '& .MuiOutlinedInput-root': {\n borderRadius: fieldRadius(theme),\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 ${fieldEdge(theme)}`,\n transition: theme.transitions.create(['border-color', 'box-shadow', 'background']),\n '&:hover': {\n background: `linear-gradient(135deg, ${alpha(theme.palette.background.paper, 0.9)} 0%, ${alpha(theme.palette.background.paper, 0.7)} 100%)`,\n borderColor: theme.palette.primary.main },\n '&.Mui-focused': {\n background: theme.palette.background.paper,\n boxShadow: `0 0 0 ${rem(theme, 2)} ${alpha(theme.palette.primary.main, 0.25)}` },\n '& fieldset': {\n border: 'none' } },\n '& .MuiInputLabel-root': {\n '&.Mui-focused': {\n color: theme.palette.primary.main } } }));\n\nconst CountrySelector = styled(Box)(({ theme }) => ({\n display: 'flex',\n alignItems: 'center',\n padding: theme.spacing(0.5, 1),\n borderRadius: theme.shape.borderRadius,\n cursor: 'pointer',\n transition: theme.transitions.create(['background-color']),\n '&:hover': {\n backgroundColor: alpha(theme.palette.primary.main, 0.08) } }));\n\nconst CountryMenu = styled(Menu)(({ theme }) => ({\n '& .MuiPaper-root': {\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 maxHeight: rem(theme, 400) } }));\n\n// Helper functions with enhanced validation\n// The text field itself with its two adornments. Split out so PhoneInput is\n// prop defaults, the hook call and composition.\nconst PhoneField: React.FC<{\n TextFieldComponent: React.ElementType;\n variant: PhoneInputProps['variant'];\n label?: React.ReactNode;\n placeholder?: string;\n value: string;\n validation: { hasError: boolean; helperText?: React.ReactNode };\n disabled: boolean;\n required: boolean;\n fullWidth: boolean;\n icon?: React.ReactNode;\n isValid: boolean;\n selectedCountry?: CountryData;\n anchorEl: HTMLElement | null;\n onChange: (event: React.ChangeEvent<HTMLInputElement>) => void;\n onFocus: () => void;\n onBlur: () => void;\n onCountryOpen: (event: React.MouseEvent<HTMLElement>) => void;\n onCountryOpenViaKeyboard: (element: HTMLElement) => void;\n copy: PhoneInputCopy;\n}> = ({\n TextFieldComponent,\n copy,\n variant,\n label,\n placeholder,\n value,\n validation,\n disabled,\n required,\n fullWidth,\n icon,\n isValid,\n selectedCountry,\n anchorEl,\n onChange,\n onFocus,\n onBlur,\n onCountryOpen,\n onCountryOpenViaKeyboard }) => (\n <TextFieldComponent\n variant={variant === 'glass' ? 'outlined' : variant}\n label={label}\n placeholder={placeholder}\n value={value}\n onChange={onChange}\n onFocus={onFocus}\n onBlur={onBlur}\n error={validation.hasError}\n helperText={validation.helperText}\n disabled={disabled}\n required={required}\n fullWidth={fullWidth}\n type=\"tel\"\n data-testid=\"phone-input-field\"\n InputProps={{\n startAdornment: (\n <CountryAdornment\n selectCountryLabel={copy.selectCountry}\n country={selectedCountry}\n menuOpen={Boolean(anchorEl)}\n onOpen={onCountryOpen}\n onOpenViaKeyboard={onCountryOpenViaKeyboard}\n />\n ),\n endAdornment: <ValidityAdornment icon={icon} isValid={isValid} /> }}\n sx={{\n '& input': {\n letterSpacing: sxRem(0.5) } }}\n />\n);\n\nconst PHONE_INPUT_DEFAULTS = {\n variant: 'outlined',\n icon: <PhoneIcon />,\n defaultValue: '',\n // The owner's market: a host that names no country starts at Brazil.\n countryCode: 'BR',\n floating: false,\n error: false,\n disabled: false,\n required: false,\n fullWidth: true } satisfies Partial<PhoneInputProps>;\n\n// Drops explicitly-undefined props before the merge, so `prop={undefined}` falls\n// back to the default exactly as a destructuring default would. Eleven separate\n// destructuring defaults were most of this component's branch count.\nconst definedProps = (props: PhoneInputProps): Partial<PhoneInputProps> =>\n Object.fromEntries(\n Object.entries(props).filter(([, value]) => value !== undefined),\n ) as Partial<PhoneInputProps>;\n\n// The label and placeholder a host passes as props win; then the copy pack's;\n// then the English the field has always shown.\nconst copyDefaults = (copy: PhoneInputCopy): Pick<PhoneInputProps, 'label' | 'placeholder'> => ({\n label: copy.label ?? 'Phone Number',\n placeholder: copy.placeholder ?? 'Enter phone number' });\n\nconst CountryAdornment: React.FC<{\n country?: CountryData;\n menuOpen: boolean;\n onOpen: (event: React.MouseEvent<HTMLElement>) => void;\n onOpenViaKeyboard: (element: HTMLElement) => void;\n selectCountryLabel: string;\n}> = ({ country, menuOpen, onOpen, onOpenViaKeyboard, selectCountryLabel }) => (\n <InputAdornment position=\"start\" data-testid=\"phone-input-start-adornment\">\n <CountrySelector\n onClick={onOpen}\n role=\"button\"\n aria-label={selectCountryLabel}\n aria-expanded={menuOpen}\n tabIndex={0}\n data-testid=\"country-selector\"\n onKeyDown={(e) => {\n if (e.key !== 'Enter' && e.key !== ' ') return;\n e.preventDefault();\n onOpenViaKeyboard(e.currentTarget as HTMLElement);\n }}\n >\n <Typography variant=\"h6\" component=\"span\" sx={{ mr: 0.5 }} data-testid=\"country-flag\">\n {country?.flag}\n </Typography>\n <Typography\n variant=\"body2\"\n color=\"text.secondary\"\n sx={{ mr: 0.5 }}\n data-testid=\"country-dial-code\"\n >\n {country?.dial}\n </Typography>\n <ArrowDropDown fontSize=\"small\" data-testid=\"country-dropdown-icon\" />\n </CountrySelector>\n </InputAdornment>\n);\n\n// The trailing icon turns green once the number validates.\nconst ValidityAdornment: React.FC<{ icon?: React.ReactNode; isValid: boolean }> = ({\n icon,\n isValid }) => {\n const theme = useTheme();\n\n if (!icon) return null;\n\n return (\n <InputAdornment position=\"end\" data-testid=\"phone-input-end-adornment\">\n <Box\n sx={{\n color: isValid ? theme.palette.success.main : theme.palette.text.secondary,\n transition: 'color 0.3s ease' }}\n data-testid=\"phone-input-icon\"\n >\n {icon}\n </Box>\n </InputAdornment>\n );\n};\n\nconst CountryPicker: React.FC<{\n anchorEl: HTMLElement | null;\n selectedCode?: CountryData['code'];\n onClose: () => void;\n onSelect: (country: CountryData) => void;\n countryName?: PhoneInputCopy['countryName'];\n}> = ({ anchorEl, selectedCode, onClose, onSelect, countryName }) => {\n const theme = useTheme();\n const listed = useMemo(() => countriesByDisplayName(countryName), [countryName]);\n\n return (\n <CountryMenu\n anchorEl={anchorEl}\n open={Boolean(anchorEl)}\n onClose={onClose}\n anchorOrigin={{\n vertical: 'bottom',\n horizontal: 'left' }}\n transformOrigin={{\n vertical: 'top',\n horizontal: 'left' }}\n data-testid=\"country-menu\"\n >\n {listed.map((country) => (\n <MenuItem\n key={country.code}\n onClick={() => onSelect(country)}\n selected={country.code === selectedCode}\n data-testid={`country-option-${country.code}`}\n sx={{\n '&:hover': {\n background: `linear-gradient(135deg, ${alpha(theme.palette.primary.main, 0.1)} 0%, ${alpha(theme.palette.primary.main, 0.05)} 100%)` } }}\n >\n <ListItemIcon sx={{ minWidth: sxRem(36) }}>\n <Typography variant=\"h5\" component=\"span\">\n {country.flag}\n </Typography>\n </ListItemIcon>\n <ListItemText\n primary={country.displayName}\n secondary={country.dial}\n primaryTypographyProps={{ fontSize: rem(theme, 14.4) }}\n secondaryTypographyProps={{ fontSize: rem(theme, 12.8) }}\n />\n </MenuItem>\n ))}\n </CountryMenu>\n );\n};\n\n// The field shows an error either because the caller says so, or because what\n// has been typed does not validate and the user has moved on.\nconst resolveValidation = ({\n error,\n errorMessage,\n isValid,\n value,\n isFocused,\n helper,\n countryName,\n copy }: {\n error: boolean;\n errorMessage?: string;\n isValid: boolean;\n value: string;\n isFocused: boolean;\n helper?: React.ReactNode;\n countryName?: string;\n copy: PhoneInputCopy;\n}) => {\n const looksInvalid = !isValid && value !== '' && !isFocused;\n\n return {\n hasError: error || looksInvalid,\n helperText:\n errorMessage ||\n (looksInvalid ? copy.invalidNumber(countryName || copy.unknownCountry) : helper) };\n};\n\nexport const PhoneInput: FC<PhoneInputProps> = (props) => {\n const { copy } = props;\n const {\n variant,\n label,\n placeholder,\n icon,\n defaultValue,\n countryCode: initialCountryCode,\n floating,\n onChange,\n helper,\n error,\n errorMessage,\n disabled,\n required,\n fullWidth } = {\n ...PHONE_INPUT_DEFAULTS,\n ...copyDefaults(copy),\n ...definedProps(props) };\n const {\n value,\n selectedCountry,\n anchorEl,\n isValid,\n isFocused,\n setIsFocused,\n setAnchorEl,\n handleCountryClick,\n handleCountryClose,\n handleCountrySelect,\n handleChange,\n handleBlur } = usePhoneInput({ defaultValue, initialCountryCode, onChange });\n\n const validation = resolveValidation({\n error,\n errorMessage,\n isValid,\n value,\n isFocused,\n helper,\n countryName: selectedCountry && countryDisplayName(selectedCountry, copy.countryName),\n copy });\n\n const TextFieldComponent = variant === 'glass' ? GlassTextField : FieldTextField;\n\n return (\n <Box data-testid=\"phone-input-container\">\n <PhoneField\n copy={copy}\n TextFieldComponent={TextFieldComponent}\n variant={variant}\n label={floating ? undefined : label}\n placeholder={placeholder}\n value={value}\n validation={validation}\n disabled={disabled}\n required={required}\n fullWidth={fullWidth}\n icon={icon}\n isValid={isValid}\n selectedCountry={selectedCountry}\n anchorEl={anchorEl}\n onChange={handleChange}\n onFocus={() => setIsFocused(true)}\n onBlur={handleBlur}\n onCountryOpen={handleCountryClick}\n onCountryOpenViaKeyboard={setAnchorEl}\n />\n\n <CountryPicker\n anchorEl={anchorEl}\n selectedCode={selectedCountry?.code}\n onClose={handleCountryClose}\n onSelect={handleCountrySelect}\n countryName={copy.countryName}\n />\n </Box>\n );\n};\n\n// Export default\nexport default PhoneInput;\n"],"mappings":"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","names":[]}
@@ -1,15 +1,15 @@
1
+ import {
2
+ useAddressAutocomplete
3
+ } from "./chunk-FKUVFPQZ.js";
1
4
  import {
2
5
  AddressFallbackField
3
6
  } from "./chunk-BARTUKJU.js";
4
7
  import {
5
8
  AddressAutocompleteField
6
- } from "./chunk-7QXEEZFO.js";
7
- import {
8
- useAddressAutocomplete
9
- } from "./chunk-WC3W36AM.js";
9
+ } from "./chunk-FB4GLQQO.js";
10
10
  import {
11
11
  resolveAddressProps
12
- } from "./chunk-MTGEJRE4.js";
12
+ } from "./chunk-NNKIM73H.js";
13
13
 
14
14
  // src/components/form/AddressAutocomplete/AddressAutocomplete.tsx
15
15
  import LocationIcon from "@mui/icons-material/LocationOn";
@@ -22,7 +22,8 @@ var AddressAutocomplete = (componentProps) => {
22
22
  defaultValue,
23
23
  googleMapsApiKey,
24
24
  restrictions,
25
- onSelect
25
+ onSelect,
26
+ copy: resolved.copy
26
27
  });
27
28
  if (!state.isLoaded || state.mapsError) {
28
29
  return /* @__PURE__ */ jsx(AddressFallbackField, { ...fieldProps, mapsError: state.mapsError });
@@ -35,4 +36,4 @@ export {
35
36
  AddressAutocomplete,
36
37
  AddressAutocomplete_default
37
38
  };
38
- //# sourceMappingURL=chunk-U4G3KY6L.js.map
39
+ //# sourceMappingURL=chunk-GMU5AA3R.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/form/AddressAutocomplete/AddressAutocomplete.tsx"],"sourcesContent":["import LocationIcon from '@mui/icons-material/LocationOn';\nimport type { FC } from 'react';\nimport React from 'react';\n\nimport { resolveAddressProps } from './AddressAutocomplete.helpers';\nimport { useAddressAutocomplete } from './AddressAutocomplete.hooks';\nimport type { AddressAutocompleteProps } from './AddressAutocomplete.types';\nimport { AddressAutocompleteField } from './AddressAutocompleteField';\nimport { AddressFallbackField } from './AddressFallbackField';\n\nexport const AddressAutocomplete: FC<AddressAutocompleteProps> = (componentProps) => {\n const resolved = resolveAddressProps(componentProps);\n const { defaultValue, googleMapsApiKey, restrictions, onSelect, icon = <LocationIcon /> } =\n resolved;\n const fieldProps = { ...resolved, icon };\n\n const state = useAddressAutocomplete({\n defaultValue,\n googleMapsApiKey,\n restrictions,\n onSelect,\n copy: resolved.copy,\n });\n\n // Until the API answers there is nothing to autocomplete against, so the field\n // stands in disabled — spinning, or explaining why it never loaded.\n if (!state.isLoaded || state.mapsError) {\n return <AddressFallbackField {...fieldProps} mapsError={state.mapsError} />;\n }\n\n return <AddressAutocompleteField {...fieldProps} {...state} />;\n};\n\nexport default AddressAutocomplete;\n"],"mappings":";;;;;;;;;;;;;;AAAA,OAAO,kBAAkB;AAYgD;AAFlE,IAAM,sBAAoD,CAAC,mBAAmB;AACnF,QAAM,WAAW,oBAAoB,cAAc;AACnD,QAAM,EAAE,cAAc,kBAAkB,cAAc,UAAU,OAAO,oBAAC,gBAAa,EAAG,IACtF;AACF,QAAM,aAAa,EAAE,GAAG,UAAU,KAAK;AAEvC,QAAM,QAAQ,uBAAuB;AAAA,IACnC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,MAAM,SAAS;AAAA,EACjB,CAAC;AAID,MAAI,CAAC,MAAM,YAAY,MAAM,WAAW;AACtC,WAAO,oBAAC,wBAAsB,GAAG,YAAY,WAAW,MAAM,WAAW;AAAA,EAC3E;AAEA,SAAO,oBAAC,4BAA0B,GAAG,YAAa,GAAG,OAAO;AAC9D;AAEA,IAAO,8BAAQ;","names":[]}
@@ -1,6 +1,9 @@
1
1
  import {
2
2
  SonnerToast
3
- } from "./chunk-OHXAJUO5.js";
3
+ } from "./chunk-NPPO7G2B.js";
4
+ import {
5
+ EN_US_UI_LABELS
6
+ } from "./chunk-W5PRZHLU.js";
4
7
  import {
5
8
  rem,
6
9
  sxRem
@@ -39,7 +42,7 @@ var trackPromiseWithToasts = async (promiseToResolve, options, toasts) => {
39
42
  throw err;
40
43
  }
41
44
  };
42
- var SonnerProvider = ({ children, dismissLabel }) => {
45
+ var SonnerProvider = ({ children, dismissLabel, hiddenCountLabel }) => {
43
46
  const [toasts, setToasts] = useState([]);
44
47
  const toastCounter = useRef(0);
45
48
  const dismiss = useCallback((id) => {
@@ -90,7 +93,7 @@ var SonnerProvider = ({ children, dismissLabel }) => {
90
93
  useRegisterGlobalToast(contextValue);
91
94
  return /* @__PURE__ */ jsxs(SonnerContext.Provider, { value: contextValue, children: [
92
95
  children,
93
- /* @__PURE__ */ jsx(SonnerToaster, { toasts, onDismiss: dismiss })
96
+ /* @__PURE__ */ jsx(SonnerToaster, { toasts, onDismiss: dismiss, hiddenCountLabel })
94
97
  ] });
95
98
  };
96
99
  var useSonner = () => {
@@ -100,7 +103,7 @@ var useSonner = () => {
100
103
  }
101
104
  return context;
102
105
  };
103
- var SonnerToaster = ({ toasts, onDismiss }) => {
106
+ var SonnerToaster = ({ toasts, onDismiss, hiddenCountLabel = EN_US_UI_LABELS.sonner.hiddenCount }) => {
104
107
  const MAX_VISIBLE_TOASTS = 5;
105
108
  const visibleToasts = toasts.slice(-MAX_VISIBLE_TOASTS);
106
109
  const hiddenCount = Math.max(0, toasts.length - MAX_VISIBLE_TOASTS);
@@ -120,7 +123,7 @@ var SonnerToaster = ({ toasts, onDismiss }) => {
120
123
  overflowX: "hidden"
121
124
  },
122
125
  children: [
123
- hiddenCount > 0 && /* @__PURE__ */ jsxs(
126
+ hiddenCount > 0 && /* @__PURE__ */ jsx(
124
127
  Box,
125
128
  {
126
129
  sx: {
@@ -131,11 +134,7 @@ var SonnerToaster = ({ toasts, onDismiss }) => {
131
134
  color: "text.secondary",
132
135
  pointerEvents: "none"
133
136
  },
134
- children: [
135
- "+",
136
- hiddenCount,
137
- " more"
138
- ]
137
+ children: hiddenCountLabel(hiddenCount)
139
138
  }
140
139
  ),
141
140
  visibleToasts.map((toast2) => /* @__PURE__ */ jsx(Box, { sx: { pointerEvents: "auto" }, children: /* @__PURE__ */ jsx(SonnerToast, { ...toast2, onDismiss }) }, toast2.id))
@@ -219,7 +218,7 @@ var createToastInstance = () => {
219
218
  return methods;
220
219
  };
221
220
  var toast = createToastInstance();
222
- var Toaster = ({ children, dismissLabel }) => /* @__PURE__ */ jsx(SonnerProvider, { dismissLabel, children });
221
+ var Toaster = ({ children, dismissLabel, hiddenCountLabel }) => /* @__PURE__ */ jsx(SonnerProvider, { dismissLabel, hiddenCountLabel, children });
223
222
 
224
223
  export {
225
224
  SonnerProvider,
@@ -228,4 +227,4 @@ export {
228
227
  toast,
229
228
  Toaster
230
229
  };
231
- //# sourceMappingURL=chunk-ZFBFQK2Y.js.map
230
+ //# sourceMappingURL=chunk-GPPUKDA6.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/feedback/Sonner/Sonner.tsx"],"sourcesContent":["import { EN_US_UI_LABELS } from '../../../en-US.labels';\nimport Box from '@mui/material/Box/index.js';\nimport Portal from '@mui/material/Portal/index.js';\nimport React, { createContext, useCallback, useContext, useRef,useState, useMemo } from 'react';\n\nimport { rem, sxRem } from '../../../tokens/relative';\n\nimport type { SonnerContextType, SonnerItem,SonnerProps } from './Sonner.types';\n\nconst SonnerContext = createContext<SonnerContextType | null>(null);\n\nconst DEFAULT_DURATION_MS = 4000;\n\nconst buildToastItem = (\n toast: Omit<SonnerProps, 'id'>,\n id: string,\n type?: SonnerProps['type'],\n): SonnerItem => ({\n ...toast,\n id,\n type: type || toast.type || 'default',\n createdAt: Date.now(),\n visible: true });\n\n// Persistent toasts and `duration: 0` stay until dismissed explicitly.\nconst scheduleAutoDismiss = (\n toast: Omit<SonnerProps, 'id'>,\n id: string,\n dismiss: (id?: string) => void,\n) => {\n if (toast.persistent || toast.duration === 0) return;\n\n window.setTimeout(() => dismiss(id), toast.duration ?? DEFAULT_DURATION_MS);\n};\n\nconst EXIT_TRANSITION_MS = 300;\n\ntype SonnerPromiseOptions<T> = {\n loading: React.ReactNode;\n success: React.ReactNode | ((data: T) => React.ReactNode);\n error: React.ReactNode | ((error: Error) => React.ReactNode);\n};\n\nconst resolveMessage = <T,>(\n message: React.ReactNode | ((value: T) => React.ReactNode),\n value: T,\n): React.ReactNode => (typeof message === 'function' ? message(value) : message);\n\n// Shows a pinned loading toast for the life of a promise, then swaps it for a\n// success or error one. Takes the shortcuts it needs rather than reaching for\n// context, so it is testable on its own.\nconst trackPromiseWithToasts = async <T,>(\n promiseToResolve: Promise<T>,\n options: SonnerPromiseOptions<T>,\n toasts: {\n loading: (message: React.ReactNode) => string;\n success: (message: React.ReactNode) => string;\n error: (message: React.ReactNode) => string;\n dismiss: (id?: string) => void;\n },\n): Promise<T> => {\n const toastId = toasts.loading(options.loading);\n\n try {\n const data = await promiseToResolve;\n toasts.dismiss(toastId);\n toasts.success(resolveMessage(options.success, data));\n return data;\n } catch (err) {\n toasts.dismiss(toastId);\n toasts.error(resolveMessage(options.error, err instanceof Error ? err : new Error(String(err))));\n throw err;\n }\n};\n\nexport const SonnerProvider: React.FC<{\n children: React.ReactNode;\n /**\n * The dismiss button's accessible name, for every toast this provider\n * raises. REQUIRED and mounted ONCE — the shortcut helpers\n * (`sonner.success(…)`) take a message and nothing else by design, so the\n * word cannot be a per-call argument without changing what they are for.\n */\n dismissLabel: string;\n /**\n * The \"+N more\" line when more toasts are queued than fit. Defaults to the\n * labels pack's `sonner.hiddenCount`.\n */\n hiddenCountLabel?: (hiddenCount: number) => string;\n}> = ({ children, dismissLabel, hiddenCountLabel }) => {\n const [toasts, setToasts] = useState<SonnerItem[]>([]);\n const toastCounter = useRef(0);\n\n // Hide first, then drop after the exit transition. Passing no id targets every\n // toast; the two branches only differ in which toasts they match, so that is\n // the only thing that varies here.\n const dismiss = useCallback((id?: string) => {\n const matches = (toast: SonnerItem) => id === undefined || toast.id === id;\n\n setToasts((prev) =>\n prev.map((toast) => (matches(toast) ? { ...toast, visible: false } : toast)),\n );\n\n window.setTimeout(() => {\n setToasts((prev) => prev.filter((toast) => !matches(toast)));\n }, EXIT_TRANSITION_MS);\n }, []);\n\n const addToast = useCallback(\n (toast: Omit<SonnerProps, 'id'>, type?: SonnerProps['type']): string => {\n const id = `sonner-${++toastCounter.current}`;\n setToasts((prev) => [...prev, buildToastItem(toast, id, type)]);\n scheduleAutoDismiss(toast, id, dismiss);\n return id;\n },\n [dismiss],\n );\n\n // The six shortcuts differ only by the type they tag and, for loading, by\n // pinning persistent. Built from one factory rather than six near-identical\n // useCallback blocks.\n const makeShortcut = useCallback(\n (type: SonnerProps['type'], extra?: Partial<SonnerProps>) =>\n (message: React.ReactNode, options?: Partial<SonnerProps>) =>\n addToast({ dismissLabel, ...options, ...extra, title: message }, type),\n [addToast],\n );\n\n const toast = useMemo(() => makeShortcut('default'), [makeShortcut]);\n const success = useMemo(() => makeShortcut('success'), [makeShortcut]);\n const error = useMemo(() => makeShortcut('error'), [makeShortcut]);\n const warning = useMemo(() => makeShortcut('warning'), [makeShortcut]);\n const info = useMemo(() => makeShortcut('info'), [makeShortcut]);\n const loading = useMemo(\n () => makeShortcut('loading', { persistent: true }),\n [makeShortcut],\n );\n\n const promise = useCallback(\n <T,>(promiseToResolve: Promise<T>, options: SonnerPromiseOptions<T>): Promise<T> =>\n trackPromiseWithToasts(promiseToResolve, options, { loading, success, error, dismiss }),\n [loading, success, error, dismiss],\n );\n\n const contextValue: SonnerContextType = {\n toast,\n success,\n error,\n warning,\n info,\n loading,\n dismiss,\n promise };\n\n // Register this context globally for imperative API\n useRegisterGlobalToast(contextValue);\n\n return (\n <SonnerContext.Provider value={contextValue}>\n {children}\n <SonnerToaster toasts={toasts} onDismiss={dismiss} hiddenCountLabel={hiddenCountLabel} />\n </SonnerContext.Provider>\n );\n};\n\nexport const useSonner = (): SonnerContextType => {\n const context = useContext(SonnerContext);\n if (!context) {\n throw new Error('useSonner must be used within a SonnerProvider');\n }\n return context;\n};\n\n// A caller-supplied icon always wins; otherwise the type picks one.\nimport { SonnerToast } from './SonnerToast';\n\nconst SonnerToaster: React.FC<{\n toasts: SonnerItem[];\n onDismiss: (id: string) => void;\n hiddenCountLabel?: (hiddenCount: number) => string;\n}> = ({ toasts, onDismiss, hiddenCountLabel = EN_US_UI_LABELS.sonner.hiddenCount }) => {\n // Limit visible toasts to prevent overflow\n const MAX_VISIBLE_TOASTS = 5;\n const visibleToasts = toasts.slice(-MAX_VISIBLE_TOASTS);\n const hiddenCount = Math.max(0, toasts.length - MAX_VISIBLE_TOASTS);\n\n return (\n <Portal>\n <Box\n sx={{\n position: 'fixed',\n top: sxRem(16),\n right: sxRem(16),\n zIndex: 9999,\n display: 'flex',\n flexDirection: 'column',\n pointerEvents: 'none',\n maxHeight: (theme) => `calc(100vh - ${rem(theme, 32)})`,\n overflowY: 'auto',\n overflowX: 'hidden' }}\n >\n {hiddenCount > 0 && (\n <Box\n sx={{\n p: 1,\n mb: 0.5,\n textAlign: 'center',\n fontSize: sxRem(12),\n color: 'text.secondary',\n pointerEvents: 'none' }}\n >\n {hiddenCountLabel(hiddenCount)}\n </Box>\n )}\n {visibleToasts.map((toast) => (\n <Box key={toast.id} sx={{ pointerEvents: 'auto' }}>\n <SonnerToast {...toast} onDismiss={onDismiss} />\n </Box>\n ))}\n </Box>\n </Portal>\n );\n};\n\n// Global toast instance for imperative API\nlet globalToastContext: SonnerContextType | null = null;\n\n// Hook to register the global context (used internally by SonnerProvider)\nexport const useRegisterGlobalToast = (context: SonnerContextType) => {\n React.useEffect(() => {\n globalToastContext = context;\n return () => {\n globalToastContext = null;\n };\n }, [context]);\n};\n\n// Create a production-ready toast instance for imperative usage\nconst createToastInstance = (): SonnerContextType => {\n const warnNoProvider = () => {\n // Use a more React-appropriate warning mechanism\n if (typeof window !== 'undefined' && window.console && window.console.warn) {\n window.console.warn('Sonner: No SonnerProvider found. Please wrap your app with SonnerProvider.');\n }\n };\n\n const methods: SonnerContextType = {\n toast: (message: React.ReactNode, options?: Partial<SonnerProps>) => {\n if (!globalToastContext) {\n warnNoProvider();\n return 'no-provider';\n }\n return globalToastContext.toast(message, options);\n },\n success: (message: React.ReactNode, options?: Partial<SonnerProps>) => {\n if (!globalToastContext) {\n warnNoProvider();\n return 'no-provider';\n }\n return globalToastContext.success(message, options);\n },\n error: (message: React.ReactNode, options?: Partial<SonnerProps>) => {\n if (!globalToastContext) {\n warnNoProvider();\n return 'no-provider';\n }\n return globalToastContext.error(message, options);\n },\n warning: (message: React.ReactNode, options?: Partial<SonnerProps>) => {\n if (!globalToastContext) {\n warnNoProvider();\n return 'no-provider';\n }\n return globalToastContext.warning(message, options);\n },\n info: (message: React.ReactNode, options?: Partial<SonnerProps>) => {\n if (!globalToastContext) {\n warnNoProvider();\n return 'no-provider';\n }\n return globalToastContext.info(message, options);\n },\n loading: (message: React.ReactNode, options?: Partial<SonnerProps>) => {\n if (!globalToastContext) {\n warnNoProvider();\n return 'no-provider';\n }\n return globalToastContext.loading(message, options);\n },\n dismiss: (id?: string) => {\n if (!globalToastContext) {\n warnNoProvider();\n return;\n }\n globalToastContext.dismiss(id);\n },\n promise: async <T,>(\n promiseToResolve: Promise<T>,\n options: {\n loading: React.ReactNode;\n success: React.ReactNode | ((data: T) => React.ReactNode);\n error: React.ReactNode | ((error: Error) => React.ReactNode);\n },\n ): Promise<T> => {\n if (!globalToastContext) {\n warnNoProvider();\n throw new Error('No SonnerProvider found');\n }\n return globalToastContext.promise(promiseToResolve, options);\n } };\n\n return methods;\n};\n\n// Export toast instance for imperative API usage\nexport const toast = createToastInstance();\n\n// Export Toaster as alias for SonnerProvider for stories compatibility\nexport const Toaster: React.FC<{\n children?: React.ReactNode;\n position?: string;\n theme?: string;\n expand?: boolean;\n richColors?: boolean;\n closeButton?: boolean;\n dismissLabel: string;\n hiddenCountLabel?: (hiddenCount: number) => string;\n}> = ({ children, dismissLabel, hiddenCountLabel }) => (\n <SonnerProvider dismissLabel={dismissLabel} hiddenCountLabel={hiddenCountLabel}>\n {children}\n </SonnerProvider>\n);\n"],"mappings":"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","names":["toast"]}