@12-apps/ui 6.86.1 → 6.87.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 (942) hide show
  1. package/NATIVE.md +1 -1
  2. package/components-catalog.md +16 -2
  3. package/dist/_internal/components/data-display/Alert/Alert.js +3 -3
  4. package/dist/_internal/components/data-display/AlertDialog/AlertDialog.js +3 -3
  5. package/dist/_internal/components/data-display/AlertDialog/AlertDialog.parts.js +2 -2
  6. package/dist/_internal/components/data-display/AsyncStateContainer/AsyncStateContainer.js +8 -8
  7. package/dist/_internal/components/data-display/Avatar/Avatar.js +4 -4
  8. package/dist/_internal/components/data-display/Avatar/Avatar.view.js +2 -2
  9. package/dist/_internal/components/data-display/Badge/Badge.js +1 -1
  10. package/dist/_internal/components/data-display/Badge/Badge.styles.js +1 -1
  11. package/dist/_internal/components/data-display/Badge/BadgeContent.js +1 -1
  12. package/dist/_internal/components/data-display/CardKit/CardKebab.js +3 -3
  13. package/dist/_internal/components/data-display/CardKit/card-actions-context.js +4 -4
  14. package/dist/_internal/components/data-display/CardKit/use-remove-confirm.js +14 -14
  15. package/dist/_internal/components/data-display/CardKit/use-row-confirm.js +10 -10
  16. package/dist/_internal/components/data-display/Carousel/Carousel.chrome.js +1 -1
  17. package/dist/_internal/components/data-display/Carousel/Carousel.js +5 -5
  18. package/dist/_internal/components/data-display/Carousel/Carousel.parts.js +1 -1
  19. package/dist/_internal/components/data-display/Carousel/Carousel.styles.js +1 -1
  20. package/dist/_internal/components/data-display/Chart/Chart.js +4 -4
  21. package/dist/_internal/components/data-display/Chart/SpecChart.js +8 -8
  22. package/dist/_internal/components/data-display/Chart/chart-context.js +1 -1
  23. package/dist/_internal/components/data-display/Chart/chart-internals.js +1 -1
  24. package/dist/_internal/components/data-display/Chart/chart-renderers.js +3 -3
  25. package/dist/_internal/components/data-display/Chart/chart-spec.js +2 -2
  26. package/dist/_internal/components/data-display/DataGrid/DataGrid.js +2 -2
  27. package/dist/_internal/components/data-display/DataViews/DataViewsGrid.js +59 -59
  28. package/dist/_internal/components/data-display/DataViews/DataViewsTableBase.js +81 -81
  29. package/dist/_internal/components/data-display/DataViews/DeleteViewDialog.js +5 -5
  30. package/dist/_internal/components/data-display/DataViews/ManageViewsDialog.js +11 -11
  31. package/dist/_internal/components/data-display/DataViews/SaveViewModal.js +9 -9
  32. package/dist/_internal/components/data-display/DataViews/base-card.js +3 -3
  33. package/dist/_internal/components/data-display/DataViews/base-list-card-geometry.js +1 -1
  34. package/dist/_internal/components/data-display/DataViews/base-list-card-layout.js +1 -1
  35. package/dist/_internal/components/data-display/DataViews/base-list-card.js +6 -6
  36. package/dist/_internal/components/data-display/DataViews/data-views-card-body.js +4 -4
  37. package/dist/_internal/components/data-display/DataViews/data-views-category-pill.js +16 -16
  38. package/dist/_internal/components/data-display/DataViews/data-views-columns.js +4 -4
  39. package/dist/_internal/components/data-display/DataViews/data-views-display-panel.js +5 -5
  40. package/dist/_internal/components/data-display/DataViews/data-views-empty.js +3 -3
  41. package/dist/_internal/components/data-display/DataViews/data-views-export.js +3 -3
  42. package/dist/_internal/components/data-display/DataViews/data-views-filter-panel.js +25 -25
  43. package/dist/_internal/components/data-display/DataViews/data-views-grid-bodies.js +8 -8
  44. package/dist/_internal/components/data-display/DataViews/data-views-grid-helpers.js +3 -3
  45. package/dist/_internal/components/data-display/DataViews/data-views-grid-parts.js +54 -54
  46. package/dist/_internal/components/data-display/DataViews/data-views-inline-bar.js +29 -29
  47. package/dist/_internal/components/data-display/DataViews/data-views-more-fields.js +24 -24
  48. package/dist/_internal/components/data-display/DataViews/data-views-more-filters.js +27 -27
  49. package/dist/_internal/components/data-display/DataViews/data-views-pagination.js +3 -3
  50. package/dist/_internal/components/data-display/DataViews/data-views-range-pill.js +5 -5
  51. package/dist/_internal/components/data-display/DataViews/data-views-select-all-strip.js +3 -3
  52. package/dist/_internal/components/data-display/DataViews/data-views-shell-toolbar.js +15 -15
  53. package/dist/_internal/components/data-display/DataViews/data-views-table-parts.js +25 -25
  54. package/dist/_internal/components/data-display/DataViews/data-views-toolbar.js +14 -14
  55. package/dist/_internal/components/data-display/DataViews/data-views-view-nav.js +3 -3
  56. package/dist/_internal/components/data-display/DataViews/use-data-views-state.js +6 -6
  57. package/dist/_internal/components/data-display/DayRuler/DayRuler.js +33 -0
  58. package/dist/_internal/components/data-display/DayRuler/DayRuler.keyboard.js +12 -0
  59. package/dist/_internal/components/data-display/DayRuler/DayRuler.keyboard.js.map +1 -0
  60. package/dist/_internal/components/data-display/DayRuler/DayRuler.metrics.js +8 -0
  61. package/dist/_internal/components/data-display/DayRuler/DayRuler.metrics.js.map +1 -0
  62. package/dist/_internal/components/data-display/DayRuler/DayRuler.parts.js +30 -0
  63. package/dist/_internal/components/data-display/DayRuler/DayRuler.parts.js.map +1 -0
  64. package/dist/_internal/components/data-display/DayRuler/DayRuler.styles.js +54 -0
  65. package/dist/_internal/components/data-display/DayRuler/DayRuler.styles.js.map +1 -0
  66. package/dist/_internal/components/data-display/DayRuler/DayRuler.types.js +1 -0
  67. package/dist/_internal/components/data-display/DayRuler/DayRuler.types.js.map +1 -0
  68. package/dist/_internal/components/data-display/DayRuler/day-ruler-model.js +26 -0
  69. package/dist/_internal/components/data-display/DayRuler/day-ruler-model.js.map +1 -0
  70. package/dist/_internal/components/data-display/DayRuler/useRulerDrag.js +11 -0
  71. package/dist/_internal/components/data-display/DayRuler/useRulerDrag.js.map +1 -0
  72. package/dist/_internal/components/data-display/DayRuler/useTextFits.js +8 -0
  73. package/dist/_internal/components/data-display/DayRuler/useTextFits.js.map +1 -0
  74. package/dist/_internal/components/data-display/EmptyState/EmptyState.js +2 -2
  75. package/dist/_internal/components/data-display/ErrorState/ErrorState.js +2 -2
  76. package/dist/_internal/components/data-display/FleetMap/FleetBody.js +15 -15
  77. package/dist/_internal/components/data-display/FleetMap/FleetCanvas.js +9 -9
  78. package/dist/_internal/components/data-display/FleetMap/FleetMap.js +21 -21
  79. package/dist/_internal/components/data-display/FleetMap/FleetRoster.js +3 -3
  80. package/dist/_internal/components/data-display/HoverCard/HoverCard.js +3 -3
  81. package/dist/_internal/components/data-display/LazyImage/LazyImage.js +4 -4
  82. package/dist/_internal/components/data-display/Lightbox/Lightbox.js +7 -7
  83. package/dist/_internal/components/data-display/Lightbox/LightboxControls.js +2 -2
  84. package/dist/_internal/components/data-display/Lightbox/LightboxOverlay.js +3 -3
  85. package/dist/_internal/components/data-display/Lightbox/LightboxThumbnails.js +2 -2
  86. package/dist/_internal/components/data-display/LoadingState/LoadingState.js +5 -5
  87. package/dist/_internal/components/data-display/MapPreview/MapLayers.js +3 -3
  88. package/dist/_internal/components/data-display/MapPreview/MapMarkers.js +2 -2
  89. package/dist/_internal/components/data-display/MapPreview/MapPreview.js +8 -8
  90. package/dist/_internal/components/data-display/RegionMap/RegionMap.js +5 -5
  91. package/dist/_internal/components/data-display/RegionMap/RegionMapDrawing.js +2 -2
  92. package/dist/_internal/components/data-display/RegionMap/RegionMapList.js +1 -1
  93. package/dist/_internal/components/data-display/ScheduleGrid/ScheduleGrid.js +30 -0
  94. package/dist/_internal/components/data-display/ScheduleGrid/ScheduleGrid.js.map +1 -0
  95. package/dist/_internal/components/data-display/ScheduleGrid/ScheduleGrid.keyboard.js +11 -0
  96. package/dist/_internal/components/data-display/ScheduleGrid/ScheduleGrid.keyboard.js.map +1 -0
  97. package/dist/_internal/components/data-display/ScheduleGrid/ScheduleGrid.metrics.js +10 -0
  98. package/dist/_internal/components/data-display/ScheduleGrid/ScheduleGrid.metrics.js.map +1 -0
  99. package/dist/_internal/components/data-display/ScheduleGrid/ScheduleGrid.parts.js +25 -0
  100. package/dist/_internal/components/data-display/ScheduleGrid/ScheduleGrid.parts.js.map +1 -0
  101. package/dist/_internal/components/data-display/ScheduleGrid/ScheduleGrid.styles.js +59 -0
  102. package/dist/_internal/components/data-display/ScheduleGrid/ScheduleGrid.styles.js.map +1 -0
  103. package/dist/_internal/components/data-display/ScheduleGrid/ScheduleGrid.types.js +1 -0
  104. package/dist/_internal/components/data-display/ScheduleGrid/ScheduleGrid.types.js.map +1 -0
  105. package/dist/_internal/components/data-display/ScheduleGrid/ScheduleNameCell.js +18 -0
  106. package/dist/_internal/components/data-display/ScheduleGrid/ScheduleNameCell.js.map +1 -0
  107. package/dist/_internal/components/data-display/ScheduleGrid/drag-session.js +10 -0
  108. package/dist/_internal/components/data-display/ScheduleGrid/drag-session.js.map +1 -0
  109. package/dist/_internal/components/data-display/ScheduleGrid/schedule-grid-model.js +18 -0
  110. package/dist/_internal/components/data-display/ScheduleGrid/schedule-grid-model.js.map +1 -0
  111. package/dist/_internal/components/data-display/ScheduleGrid/schedule-name.styles.js +25 -0
  112. package/dist/_internal/components/data-display/ScheduleGrid/schedule-name.styles.js.map +1 -0
  113. package/dist/_internal/components/data-display/ScheduleGrid/schedule-tones.js +26 -0
  114. package/dist/_internal/components/data-display/ScheduleGrid/schedule-tones.js.map +1 -0
  115. package/dist/_internal/components/data-display/ScheduleGrid/useAnnouncer.js +8 -0
  116. package/dist/_internal/components/data-display/ScheduleGrid/useAnnouncer.js.map +1 -0
  117. package/dist/_internal/components/data-display/ScheduleGrid/useGridDrag.js +10 -0
  118. package/dist/_internal/components/data-display/ScheduleGrid/useGridDrag.js.map +1 -0
  119. package/dist/_internal/components/data-display/ScheduleGrid/useSidewaysScroll.js +9 -0
  120. package/dist/_internal/components/data-display/ScheduleGrid/useSidewaysScroll.js.map +1 -0
  121. package/dist/_internal/components/data-display/SectionOnboarding/SectionOnboarding.js +4 -4
  122. package/dist/_internal/components/data-display/Sheet/Sheet.body.js +4 -4
  123. package/dist/_internal/components/data-display/Sheet/Sheet.hooks.js +2 -2
  124. package/dist/_internal/components/data-display/Sheet/Sheet.js +7 -7
  125. package/dist/_internal/components/data-display/Sheet/Sheet.parts.js +2 -2
  126. package/dist/_internal/components/data-display/Sheet/Sheet.styles.js +1 -1
  127. package/dist/_internal/components/data-display/StatCard/StatCard.js +3 -3
  128. package/dist/_internal/components/data-display/Stepper/Stepper.js +2 -2
  129. package/dist/_internal/components/data-display/Table/Table.js +4 -4
  130. package/dist/_internal/components/data-display/Table/TableParts.hooks.js +2 -2
  131. package/dist/_internal/components/data-display/Table/TableParts.js +2 -2
  132. package/dist/_internal/components/data-display/Timeline/Timeline.js +2 -2
  133. package/dist/_internal/components/data-display/index.js +152 -123
  134. package/dist/_internal/components/feedback/ConfirmAction/ConfirmAction.js +5 -5
  135. package/dist/_internal/components/feedback/ConfirmAction/ConfirmAction.parts.js +4 -4
  136. package/dist/_internal/components/feedback/ConfirmAction/ConfirmButton.js +8 -8
  137. package/dist/_internal/components/feedback/ConfirmAction/with-confirmation.js +5 -5
  138. package/dist/_internal/components/feedback/Dialog/Dialog.js +2 -2
  139. package/dist/_internal/components/feedback/Modal/Modal.js +2 -2
  140. package/dist/_internal/components/feedback/NotificationStatusNotice/NotificationStatusNotice.js +6 -6
  141. package/dist/_internal/components/feedback/SequenceResolver/SequenceResolver.header.js +38 -0
  142. package/dist/_internal/components/feedback/SequenceResolver/SequenceResolver.header.js.map +1 -0
  143. package/dist/_internal/components/feedback/SequenceResolver/SequenceResolver.header.styles.js +14 -0
  144. package/dist/_internal/components/feedback/SequenceResolver/SequenceResolver.header.styles.js.map +1 -0
  145. package/dist/_internal/components/feedback/SequenceResolver/SequenceResolver.js +16 -13
  146. package/dist/_internal/components/feedback/SequenceResolver/SequenceResolver.metrics.js +1 -1
  147. package/dist/_internal/components/feedback/SequenceResolver/SequenceResolver.overview.js +40 -0
  148. package/dist/_internal/components/feedback/SequenceResolver/SequenceResolver.overview.js.map +1 -0
  149. package/dist/_internal/components/feedback/SequenceResolver/SequenceResolver.parts.js +8 -15
  150. package/dist/_internal/components/feedback/SequenceResolver/SequenceResolver.styles.js +10 -2
  151. package/dist/_internal/components/feedback/SequenceResolver/sequence-model.js +7 -1
  152. package/dist/_internal/components/feedback/SequenceResolver/useSequenceRun.js +2 -2
  153. package/dist/_internal/components/feedback/Sonner/Sonner.js +2 -2
  154. package/dist/_internal/components/feedback/StackedModal/StackedModal.js +4 -4
  155. package/dist/_internal/components/feedback/StackedModal/StackedModal.parts.js +2 -2
  156. package/dist/_internal/components/feedback/Toast/Toast.js +2 -2
  157. package/dist/_internal/components/feedback/TutorialOverlay/TutorialOverlay.js +2 -2
  158. package/dist/_internal/components/feedback/index.js +49 -46
  159. package/dist/_internal/components/form/AddressAutocomplete/AddressAutocomplete.js +5 -5
  160. package/dist/_internal/components/form/AddressAutocomplete/AddressAutocompleteField.js +3 -3
  161. package/dist/_internal/components/form/AddressAutocomplete/AddressSuggestionsPaper.js +1 -1
  162. package/dist/_internal/components/form/Autocomplete/Autocomplete.js +2 -2
  163. package/dist/_internal/components/form/Button/Button.js +2 -2
  164. package/dist/_internal/components/form/Calendar/Calendar.band.js +18 -0
  165. package/dist/_internal/components/form/Calendar/Calendar.band.js.map +1 -0
  166. package/dist/_internal/components/form/Calendar/Calendar.js +10 -8
  167. package/dist/_internal/components/form/Calendar/CalendarDay.js +4 -1
  168. package/dist/_internal/components/form/Calendar/CalendarDayCell.js +4 -2
  169. package/dist/_internal/components/form/Calendar/CalendarMonth.js +5 -3
  170. package/dist/_internal/components/form/Calendar/CalendarSelectorsMonth.js +8 -6
  171. package/dist/_internal/components/form/CategorySelect/CategoryPanel.js +5 -5
  172. package/dist/_internal/components/form/CategorySelect/CategoryPanelList.js +3 -3
  173. package/dist/_internal/components/form/CategorySelect/CategoryRows.js +2 -2
  174. package/dist/_internal/components/form/CategorySelect/CategorySelect.js +9 -9
  175. package/dist/_internal/components/form/Command/Command.hooks.js +2 -2
  176. package/dist/_internal/components/form/Command/Command.js +6 -6
  177. package/dist/_internal/components/form/Command/Command.parts.js +2 -2
  178. package/dist/_internal/components/form/Command/Command.styles.js +1 -1
  179. package/dist/_internal/components/form/DateRangePicker/DateRangePicker.hooks.js +3 -3
  180. package/dist/_internal/components/form/DateRangePicker/DateRangePicker.js +15 -14
  181. package/dist/_internal/components/form/DateRangePicker/DateRangePicker.range.js +2 -2
  182. package/dist/_internal/components/form/DateRangePicker/DateRangePickerFields.js +3 -3
  183. package/dist/_internal/components/form/Label/Label.js +1 -1
  184. package/dist/_internal/components/form/Label/Label.styles.js +1 -1
  185. package/dist/_internal/components/form/Menubar/Menubar.item.js +1 -1
  186. package/dist/_internal/components/form/Menubar/Menubar.js +5 -5
  187. package/dist/_internal/components/form/Menubar/Menubar.styles.js +1 -1
  188. package/dist/_internal/components/form/Menubar/Menubar.toolbar.js +3 -3
  189. package/dist/_internal/components/form/PickerSheet/PickerSheet.js +4 -4
  190. package/dist/_internal/components/form/RichTextEditor/RichTextEditor.dom.js +2 -2
  191. package/dist/_internal/components/form/RichTextEditor/RichTextEditor.format.js +3 -3
  192. package/dist/_internal/components/form/RichTextEditor/RichTextEditor.hooks.js +4 -4
  193. package/dist/_internal/components/form/RichTextEditor/RichTextEditor.js +5 -5
  194. package/dist/_internal/components/form/Switch/Switch.js +4 -4
  195. package/dist/_internal/components/form/Switch/Switch.parts.js +3 -3
  196. package/dist/_internal/components/form/Switch/Switch.styles.js +2 -2
  197. package/dist/_internal/components/form/index.js +89 -88
  198. package/dist/_internal/components/form/total-form/Fields/CategoryField.js +10 -10
  199. package/dist/_internal/components/form/total-form/Fields/index.js +17 -17
  200. package/dist/_internal/components/form/total-form/FormErrorSnackbar.js +3 -3
  201. package/dist/_internal/components/form/total-form/SubmitButton.js +3 -3
  202. package/dist/_internal/components/index.js +372 -339
  203. package/dist/_internal/components/layout/Box/Box.js +1 -1
  204. package/dist/_internal/components/layout/Card/Card.js +2 -2
  205. package/dist/_internal/components/layout/ContentToolbar/ColumnsMenu.js +2 -2
  206. package/dist/_internal/components/layout/ContentToolbar/FilterTrigger.js +3 -3
  207. package/dist/_internal/components/layout/ContentToolbar/MultiSelectDropdown.js +2 -2
  208. package/dist/_internal/components/layout/ContentToolbar/ViewSelector.js +2 -2
  209. package/dist/_internal/components/layout/Dashboard/Dashboard.js +2 -2
  210. package/dist/_internal/components/layout/Drawer/Drawer.js +2 -2
  211. package/dist/_internal/components/layout/Screen/Screen.js +1 -1
  212. package/dist/_internal/components/layout/ScrollArea/ScrollArea.js +3 -3
  213. package/dist/_internal/components/layout/SettingCard/SettingCard.js +6 -6
  214. package/dist/_internal/components/layout/SettingCard/SettingCard.parts.js +4 -4
  215. package/dist/_internal/components/layout/SettingCard/SettingCard.summary.js +5 -5
  216. package/dist/_internal/components/layout/SettingCard/SettingGrid.js +5 -5
  217. package/dist/_internal/components/layout/SettingCard/SettingGroup.js +12 -12
  218. package/dist/_internal/components/layout/SettingCard/SettingSwitch.js +11 -11
  219. package/dist/_internal/components/layout/SettingCard/SettingToggle.js +12 -12
  220. package/dist/_internal/components/layout/SettingsLayout/SettingsLayout.js +7 -7
  221. package/dist/_internal/components/layout/SettingsLayout/SettingsPanel.js +4 -4
  222. package/dist/_internal/components/layout/SettingsLayout/SettingsSectionChips.js +2 -2
  223. package/dist/_internal/components/layout/Skeleton/Skeleton.js +2 -2
  224. package/dist/_internal/components/layout/Stack/Stack.js +1 -1
  225. package/dist/_internal/components/layout/TableFilter/TableFilter.js +2 -2
  226. package/dist/_internal/components/layout/index.js +65 -65
  227. package/dist/_internal/components/navigation/AppHeader/AppHeader.details.js +11 -11
  228. package/dist/_internal/components/navigation/AppHeader/AppHeader.identity.js +3 -3
  229. package/dist/_internal/components/navigation/Breadcrumbs/Breadcrumbs.js +2 -2
  230. package/dist/_internal/components/navigation/CommandPalette/CommandPalette.helpers.js +2 -2
  231. package/dist/_internal/components/navigation/CommandPalette/CommandPalette.hooks.js +3 -3
  232. package/dist/_internal/components/navigation/CommandPalette/CommandPalette.js +5 -5
  233. package/dist/_internal/components/navigation/CommandPalette/CommandPaletteResults.js +2 -2
  234. package/dist/_internal/components/navigation/NavigationMenu/NavigationMegaSection.js +3 -3
  235. package/dist/_internal/components/navigation/NavigationMenu/NavigationMenu.js +6 -6
  236. package/dist/_internal/components/navigation/NavigationMenu/NavigationMenuItem.js +2 -2
  237. package/dist/_internal/components/navigation/NavigationMenu/NavigationStandardBody.js +4 -4
  238. package/dist/_internal/components/navigation/Pagination/Pagination.js +2 -2
  239. package/dist/_internal/components/navigation/SectionNav/SectionNav.bar.js +5 -5
  240. package/dist/_internal/components/navigation/SectionNav/SectionNav.js +6 -6
  241. package/dist/_internal/components/navigation/SectionNav/SectionNav.parts.js +1 -1
  242. package/dist/_internal/components/navigation/SectionNav/SectionNav.primary.js +1 -1
  243. package/dist/_internal/components/navigation/SectionNav/SectionNav.rail.js +1 -1
  244. package/dist/_internal/components/navigation/SectionNav/SectionNav.railCreate.js +1 -1
  245. package/dist/_internal/components/navigation/SectionNav/SectionNav.sheet.js +4 -4
  246. package/dist/_internal/components/navigation/SectionNav/__stories__/fixtures.js +1 -1
  247. package/dist/_internal/components/navigation/index.js +43 -43
  248. package/dist/_internal/components/typography/Code/Code.js +2 -2
  249. package/dist/_internal/components/typography/index.js +6 -6
  250. package/dist/_internal/components/utility/AnimatedIcon/AnimatedIcon.js +2 -2
  251. package/dist/_internal/components/utility/InfiniteScroll/InfiniteScroll.js +3 -3
  252. package/dist/_internal/components/utility/InfiniteScroll/InfiniteScroll.parts.js +2 -2
  253. package/dist/_internal/components/utility/InstallPrompt/InstallPrompt.js +2 -2
  254. package/dist/_internal/components/utility/WorkflowStep/WorkflowStep.helpers.js +3 -3
  255. package/dist/_internal/components/utility/WorkflowStep/WorkflowStep.js +6 -6
  256. package/dist/_internal/components/utility/WorkflowStep/WorkflowStep.parts.js +4 -4
  257. package/dist/_internal/components/utility/WorkflowStep/WorkflowStepRow.js +5 -5
  258. package/dist/_internal/components/utility/index.js +23 -23
  259. package/dist/_internal/en-US.labels.js +1 -1
  260. package/dist/_internal/en-US.navigation.js +1 -1
  261. package/dist/_internal/icons/Icon.js +1 -1
  262. package/dist/_internal/provider/UiProvider.js +1 -1
  263. package/dist/_internal/provider/mui-bridge.js +1 -1
  264. package/dist/_internal/provider/use-ui-theme.js +1 -1
  265. package/dist/_internal/pt-BR.labels.js +1 -1
  266. package/dist/_internal/pt-BR.navigation.js +1 -1
  267. package/dist/_internal/social-login-button/social-login-button.js +6 -6
  268. package/dist/_internal/user-avatar/user-avatar.js +9 -9
  269. package/dist/charts.js +18 -18
  270. package/dist/{chunk-DYRZRY2T.js → chunk-2CRNOJGL.js} +7 -7
  271. package/dist/{chunk-L5KPBMMF.js → chunk-2ENMRK3U.js} +2 -2
  272. package/dist/{chunk-FZEDQNUN.js → chunk-2KBATUOZ.js} +4 -4
  273. package/dist/{chunk-33AVAYCR.js → chunk-2L6TANRY.js} +5 -5
  274. package/dist/{chunk-ENJOBJPK.js → chunk-2MT6VSS2.js} +2 -2
  275. package/dist/{chunk-VKTF3GAP.js → chunk-2MYSXWZQ.js} +9 -9
  276. package/dist/{chunk-CHP3QIS3.js → chunk-2ORD2FMN.js} +37 -3
  277. package/dist/{chunk-CHP3QIS3.js.map → chunk-2ORD2FMN.js.map} +1 -1
  278. package/dist/{chunk-7QKFMMWK.js → chunk-2Q2DUGH7.js} +2 -2
  279. package/dist/chunk-2SRWPNQ7.js +60 -0
  280. package/dist/chunk-2SRWPNQ7.js.map +1 -0
  281. package/dist/{chunk-VQ6V5TO7.js → chunk-2UNZG4JK.js} +3 -3
  282. package/dist/chunk-35HMJQLO.js +26 -0
  283. package/dist/chunk-35HMJQLO.js.map +1 -0
  284. package/dist/{chunk-Q7XLTN2D.js → chunk-3B4NXP4N.js} +4 -4
  285. package/dist/{chunk-UT545JBQ.js → chunk-3EIRRLCQ.js} +2 -2
  286. package/dist/{chunk-MSJP2AEN.js → chunk-3EKY63LD.js} +2 -2
  287. package/dist/{chunk-B32554CQ.js → chunk-3KMP2F4R.js} +18 -18
  288. package/dist/chunk-3R6BR22L.js +72 -0
  289. package/dist/chunk-3R6BR22L.js.map +1 -0
  290. package/dist/{chunk-D3W5A4N6.js → chunk-3STNOYYO.js} +3 -3
  291. package/dist/{chunk-TVDHA7BT.js → chunk-3Y6NO5XL.js} +8 -8
  292. package/dist/{chunk-ABQZFK7M.js → chunk-44PBCQ7E.js} +6 -6
  293. package/dist/chunk-4HK4FVMV.js +106 -0
  294. package/dist/chunk-4HK4FVMV.js.map +1 -0
  295. package/dist/{chunk-VYQZ5U3N.js → chunk-4NG3LTRX.js} +2 -2
  296. package/dist/{chunk-PGHSNG33.js → chunk-4PZZJ2AE.js} +5 -5
  297. package/dist/{chunk-TRAMTVIO.js → chunk-4QTPERAY.js} +2 -2
  298. package/dist/{chunk-W2RXXF7K.js → chunk-4XBAEKQQ.js} +4 -4
  299. package/dist/{chunk-KR4TN3OF.js → chunk-4ZQQUICR.js} +2 -2
  300. package/dist/{chunk-XCUHGPPZ.js → chunk-55PFFAAY.js} +2 -2
  301. package/dist/{chunk-LYVTJLCF.js → chunk-56JF5PZK.js} +4 -4
  302. package/dist/{chunk-XOXXG7Q5.js → chunk-57FIUJJJ.js} +18 -1
  303. package/dist/chunk-57FIUJJJ.js.map +1 -0
  304. package/dist/{chunk-IYDXKLCE.js → chunk-5BVAUUWL.js} +5 -5
  305. package/dist/{chunk-6OISIUZM.js → chunk-5F7HYYGM.js} +2 -2
  306. package/dist/{chunk-TMUGBHHG.js → chunk-5QUH53HV.js} +6 -6
  307. package/dist/{chunk-DAFFZED3.js → chunk-5YVMFK7Y.js} +2 -2
  308. package/dist/{chunk-TI4FGQYV.js → chunk-62PTREG5.js} +2 -2
  309. package/dist/{chunk-3DPPDGOF.js → chunk-62SXUU5U.js} +5 -5
  310. package/dist/{chunk-BP3ZKIPE.js → chunk-64UNVW6D.js} +4 -4
  311. package/dist/{chunk-SSCEX5NY.js → chunk-656DBMWT.js} +3 -2
  312. package/dist/{chunk-SSCEX5NY.js.map → chunk-656DBMWT.js.map} +1 -1
  313. package/dist/{chunk-QADTI63U.js → chunk-6ATXOJVQ.js} +4 -4
  314. package/dist/{chunk-7W5X3KQ2.js → chunk-6BQ3YKLD.js} +2 -2
  315. package/dist/chunk-6D5AMANO.js +50 -0
  316. package/dist/chunk-6D5AMANO.js.map +1 -0
  317. package/dist/{chunk-VPH3TENY.js → chunk-6DGNMASB.js} +2 -2
  318. package/dist/chunk-6HZYRKOB.js +94 -0
  319. package/dist/chunk-6HZYRKOB.js.map +1 -0
  320. package/dist/{chunk-NOF2FF4K.js → chunk-7CPLKAL6.js} +4 -4
  321. package/dist/{chunk-ABRVOPC2.js → chunk-7FFY4LJY.js} +2 -2
  322. package/dist/{chunk-DVX4HDNP.js → chunk-7IBFGOLF.js} +3 -3
  323. package/dist/chunk-7RXL4ONS.js +1 -0
  324. package/dist/chunk-7RXL4ONS.js.map +1 -0
  325. package/dist/{chunk-EOQ6EKTS.js → chunk-7XSCEHGA.js} +7 -7
  326. package/dist/{chunk-QCYQL3ST.js → chunk-7XUQJJPK.js} +2 -2
  327. package/dist/chunk-7ZQ3KQ7J.js +49 -0
  328. package/dist/chunk-7ZQ3KQ7J.js.map +1 -0
  329. package/dist/{chunk-7VUXSNVZ.js → chunk-A4B27HYU.js} +2 -2
  330. package/dist/chunk-AC7K7IJE.js +28 -0
  331. package/dist/chunk-AC7K7IJE.js.map +1 -0
  332. package/dist/{chunk-EOIRU62W.js → chunk-AD6GRJFV.js} +3 -3
  333. package/dist/{chunk-CAOL4AIB.js → chunk-AEAVVKGY.js} +2 -2
  334. package/dist/{chunk-HHPFWEJY.js → chunk-ALDS5ISD.js} +14 -2
  335. package/dist/chunk-ALDS5ISD.js.map +1 -0
  336. package/dist/{chunk-HI7JPDD6.js → chunk-AMLHEKSV.js} +5 -5
  337. package/dist/{chunk-UTUYXH72.js → chunk-AN37BIIO.js} +9 -9
  338. package/dist/{chunk-ABVIMFSD.js → chunk-AWUB3T7C.js} +2 -2
  339. package/dist/{chunk-ALOEOGQV.js → chunk-AXGQB24R.js} +2 -2
  340. package/dist/chunk-B3SL5FP2.js +94 -0
  341. package/dist/chunk-B3SL5FP2.js.map +1 -0
  342. package/dist/{chunk-ZO2GZRZS.js → chunk-B5SBDLRS.js} +3 -3
  343. package/dist/{chunk-CARUHKZW.js → chunk-B7GGLFJB.js} +8 -8
  344. package/dist/{chunk-C347NNZJ.js → chunk-B7ZAEZJW.js} +2 -2
  345. package/dist/chunk-BK3YLYL6.js +62 -0
  346. package/dist/chunk-BK3YLYL6.js.map +1 -0
  347. package/dist/{chunk-WXZCNHBX.js → chunk-BQBEN44R.js} +19 -65
  348. package/dist/chunk-BQBEN44R.js.map +1 -0
  349. package/dist/{chunk-GANJRIT3.js → chunk-C3MXURP3.js} +2 -2
  350. package/dist/{chunk-7YJYIMWP.js → chunk-CTN4BRAH.js} +3 -3
  351. package/dist/{chunk-ZANWHTXH.js → chunk-CVB26LLB.js} +2 -2
  352. package/dist/{chunk-PGYYDSNX.js → chunk-CW5Z67NA.js} +2 -2
  353. package/dist/{chunk-CY4XIZNW.js → chunk-D3B4V44W.js} +2 -2
  354. package/dist/{chunk-U2DRE36S.js → chunk-D3SIZ2CX.js} +9 -9
  355. package/dist/chunk-D6JKCCRQ.js +120 -0
  356. package/dist/chunk-D6JKCCRQ.js.map +1 -0
  357. package/dist/chunk-DJNKSDQH.js +1 -0
  358. package/dist/chunk-DJNKSDQH.js.map +1 -0
  359. package/dist/{chunk-YGLAGY74.js → chunk-DM57YWZH.js} +2 -2
  360. package/dist/{chunk-NASLJO2R.js → chunk-DRJGHTQU.js} +2 -2
  361. package/dist/{chunk-BLZDSCIZ.js → chunk-DYHOBKPU.js} +6 -6
  362. package/dist/{chunk-FCLON3MO.js → chunk-EE6DJPB7.js} +6 -6
  363. package/dist/chunk-EEK2NK4W.js +281 -0
  364. package/dist/chunk-EEK2NK4W.js.map +1 -0
  365. package/dist/{chunk-ANUO67JQ.js → chunk-EIMFA7KP.js} +2 -2
  366. package/dist/{chunk-C5RQBTRZ.js → chunk-EIOGJBJ5.js} +25 -5
  367. package/dist/chunk-EIOGJBJ5.js.map +1 -0
  368. package/dist/{chunk-AKE6KVQG.js → chunk-EVIQUBC6.js} +4 -4
  369. package/dist/{chunk-A5CKUJP2.js → chunk-EXKEPOL7.js} +7 -7
  370. package/dist/{chunk-ULAZDF6D.js → chunk-FF22F7FA.js} +2 -2
  371. package/dist/{chunk-LIN4A2BW.js → chunk-FKS2PNJF.js} +9 -9
  372. package/dist/{chunk-ZYZPSBNQ.js → chunk-G3G5W4OF.js} +3 -3
  373. package/dist/{chunk-N5OEDOJT.js → chunk-GBB23QLL.js} +3 -3
  374. package/dist/{chunk-KTXJQ4YJ.js → chunk-GBVNY2LG.js} +6 -6
  375. package/dist/{chunk-MW7P2C2C.js → chunk-GCR6VE5S.js} +2 -2
  376. package/dist/{chunk-KYTFGW4R.js → chunk-GMIMHQ6H.js} +2 -2
  377. package/dist/chunk-GONPUJIE.js +92 -0
  378. package/dist/chunk-GONPUJIE.js.map +1 -0
  379. package/dist/{chunk-KRPDBVUB.js → chunk-GS3QDXDP.js} +4 -4
  380. package/dist/chunk-H2UUMZQR.js +74 -0
  381. package/dist/chunk-H2UUMZQR.js.map +1 -0
  382. package/dist/{chunk-WNNA6YYE.js → chunk-H5R2EZYI.js} +4 -4
  383. package/dist/{chunk-JZQYVGPV.js → chunk-HED2CZDZ.js} +4 -4
  384. package/dist/{chunk-JVOEVTCZ.js → chunk-HQCZT6TO.js} +5 -5
  385. package/dist/{chunk-67ADHGA2.js → chunk-HWJ3FLZY.js} +6 -6
  386. package/dist/{chunk-Z445LLFN.js → chunk-I44XL4Z4.js} +7 -6
  387. package/dist/chunk-I44XL4Z4.js.map +1 -0
  388. package/dist/{chunk-LXIPBHNJ.js → chunk-I5SIHPOG.js} +2 -2
  389. package/dist/{chunk-NCI74EOS.js → chunk-I62SKY4E.js} +7 -7
  390. package/dist/{chunk-GOQOVKUZ.js → chunk-I6CP3ZTP.js} +3 -3
  391. package/dist/chunk-I7CVC2DW.js +229 -0
  392. package/dist/chunk-I7CVC2DW.js.map +1 -0
  393. package/dist/{chunk-OKRITX4S.js → chunk-ICHM2LQA.js} +8 -8
  394. package/dist/{chunk-4LUWZ6UE.js → chunk-IMMPY4Q7.js} +4 -4
  395. package/dist/{chunk-FZUAB2KS.js → chunk-INFBO356.js} +2 -2
  396. package/dist/chunk-IP424VZD.js +208 -0
  397. package/dist/chunk-IP424VZD.js.map +1 -0
  398. package/dist/{chunk-EXVCVXFX.js → chunk-IQ5MBELJ.js} +7 -7
  399. package/dist/{chunk-FRUDRDJX.js → chunk-IZ7JTG3Z.js} +4 -4
  400. package/dist/{chunk-5ZOJLYD2.js → chunk-JE6RZ5L6.js} +4 -4
  401. package/dist/{chunk-KF3Q3C3P.js → chunk-JJFLCEJJ.js} +2 -2
  402. package/dist/chunk-JO6D7YGN.js +111 -0
  403. package/dist/chunk-JO6D7YGN.js.map +1 -0
  404. package/dist/{chunk-XW44IFYE.js → chunk-K2VDRODL.js} +2 -2
  405. package/dist/{chunk-CFDWKQZT.js → chunk-KILA7LCC.js} +4 -4
  406. package/dist/{chunk-IMYKJTVX.js → chunk-KLLHCPA2.js} +2 -2
  407. package/dist/{chunk-5UBP2DJ4.js → chunk-KZ5F52D6.js} +39 -5
  408. package/dist/chunk-KZ5F52D6.js.map +1 -0
  409. package/dist/{chunk-FORQEHRQ.js → chunk-L5GZZUTY.js} +2 -2
  410. package/dist/{chunk-N557OEZR.js → chunk-L62HC3UB.js} +2 -2
  411. package/dist/chunk-LE5JYNR7.js +58 -0
  412. package/dist/chunk-LE5JYNR7.js.map +1 -0
  413. package/dist/{chunk-OPY2AGAU.js → chunk-LR56OANO.js} +6 -6
  414. package/dist/{chunk-V6KQ5R4T.js → chunk-LSGZLFKX.js} +6 -6
  415. package/dist/{chunk-QJLOWBFW.js → chunk-LXTNWQWF.js} +2 -2
  416. package/dist/{chunk-W5WYTVLS.js → chunk-LY5I3ZSV.js} +4 -4
  417. package/dist/{chunk-T77OVQEO.js → chunk-LZKS3NER.js} +2 -2
  418. package/dist/{chunk-ZAPP32GD.js → chunk-M7HYNXCU.js} +2 -2
  419. package/dist/{chunk-FQMLTCXT.js → chunk-MAHY7PK3.js} +4 -4
  420. package/dist/chunk-MAYAJXO6.js +104 -0
  421. package/dist/chunk-MAYAJXO6.js.map +1 -0
  422. package/dist/{chunk-D34PZJH3.js → chunk-MBMZNSBP.js} +2 -2
  423. package/dist/{chunk-HUXAIQC5.js → chunk-MJDSXQV7.js} +2 -2
  424. package/dist/{chunk-NTRWUDP6.js → chunk-MKVDHR3B.js} +2 -2
  425. package/dist/{chunk-PEVBSNCD.js → chunk-MLAIXRVL.js} +2 -2
  426. package/dist/chunk-MQVYJVKV.js +32 -0
  427. package/dist/chunk-MQVYJVKV.js.map +1 -0
  428. package/dist/{chunk-5U7LBO2V.js → chunk-MUHRPJQT.js} +4 -4
  429. package/dist/{chunk-COK65GX2.js → chunk-N2KHISGH.js} +2 -2
  430. package/dist/{chunk-UQ5GJPVZ.js → chunk-N3C4J6Z2.js} +3 -3
  431. package/dist/{chunk-P4Q7JK4L.js → chunk-NQ6P7O7C.js} +2 -2
  432. package/dist/{chunk-QVDEGBME.js → chunk-NQCTANF3.js} +7 -7
  433. package/dist/{chunk-I2LMLQGQ.js → chunk-NQUYBJKJ.js} +2 -2
  434. package/dist/{chunk-LOHQLARB.js → chunk-NTCWIMIU.js} +4 -4
  435. package/dist/{chunk-Q4GAPZDA.js → chunk-O2MR6U7Q.js} +5 -5
  436. package/dist/{chunk-2FQF4CNE.js → chunk-OPP6USJC.js} +2 -2
  437. package/dist/{chunk-GLR5MSU3.js → chunk-OY437NRJ.js} +2 -2
  438. package/dist/{chunk-CJUK32UH.js → chunk-OZYUE2BI.js} +4 -4
  439. package/dist/{chunk-HNEZWVDR.js → chunk-P5C4DTO4.js} +3 -3
  440. package/dist/{chunk-6EZQLNPK.js → chunk-PGJIWCQR.js} +4 -4
  441. package/dist/{chunk-TJUWSQYQ.js → chunk-PSIUFPXA.js} +18 -1
  442. package/dist/{chunk-TJUWSQYQ.js.map → chunk-PSIUFPXA.js.map} +1 -1
  443. package/dist/{chunk-3LUT2C5M.js → chunk-QMRR35W2.js} +19 -11
  444. package/dist/chunk-QMRR35W2.js.map +1 -0
  445. package/dist/chunk-QQFFE3CQ.js +90 -0
  446. package/dist/chunk-QQFFE3CQ.js.map +1 -0
  447. package/dist/{chunk-6PTP5NID.js → chunk-R2ODLE6G.js} +2 -2
  448. package/dist/{chunk-PJNIJIE6.js → chunk-RCTHCXS6.js} +2 -2
  449. package/dist/{chunk-YBAK2WN5.js → chunk-RFMQBIE6.js} +4 -4
  450. package/dist/{chunk-EYFDIUVR.js → chunk-RZTUMBRD.js} +2 -2
  451. package/dist/{chunk-SGFRSRAL.js → chunk-S5VIN3EB.js} +4 -4
  452. package/dist/{chunk-TIM4PXWN.js → chunk-SB2SEGR6.js} +3 -3
  453. package/dist/{chunk-5CP6VW5H.js → chunk-SFNVAM7I.js} +6 -6
  454. package/dist/{chunk-MVNFUIJS.js → chunk-SKIAWOUC.js} +4 -4
  455. package/dist/{chunk-KES3HNSU.js → chunk-T7NEXLW6.js} +2 -2
  456. package/dist/{chunk-EWFBDAB7.js → chunk-TOLCZ4XT.js} +2 -2
  457. package/dist/{chunk-HBH7V3IP.js → chunk-TOOEEQ46.js} +2 -2
  458. package/dist/{chunk-L7HNQRFS.js → chunk-TSID4257.js} +8 -8
  459. package/dist/chunk-TTRWOI6Z.js +1 -0
  460. package/dist/chunk-TTRWOI6Z.js.map +1 -0
  461. package/dist/{chunk-5CP5Z3YU.js → chunk-TYGVNTUP.js} +2 -2
  462. package/dist/{chunk-ZVZTQF7E.js → chunk-UBMH5MED.js} +9 -9
  463. package/dist/chunk-UIHPFELH.js +228 -0
  464. package/dist/chunk-UIHPFELH.js.map +1 -0
  465. package/dist/{chunk-WTOA52EQ.js → chunk-UKNMPGEM.js} +2 -2
  466. package/dist/{chunk-UXOFA3ZP.js → chunk-UNCDOLF5.js} +7 -7
  467. package/dist/{chunk-UYKIUUWP.js → chunk-V2QTL6VI.js} +2 -2
  468. package/dist/{chunk-6GICMRDX.js → chunk-VMTOLAZ5.js} +5 -5
  469. package/dist/{chunk-4QGMUHAU.js → chunk-VQ7YNAK2.js} +2 -2
  470. package/dist/{chunk-P772HCHI.js → chunk-W676GY42.js} +4 -4
  471. package/dist/chunk-WCETCAZO.js +140 -0
  472. package/dist/chunk-WCETCAZO.js.map +1 -0
  473. package/dist/{chunk-B32XH7NK.js → chunk-WHOD6LVN.js} +3 -3
  474. package/dist/{chunk-52RHAAIH.js → chunk-WLC56R2I.js} +7 -7
  475. package/dist/{chunk-T2G4LDU5.js → chunk-WLLUARTC.js} +2 -2
  476. package/dist/{chunk-X4J576GR.js → chunk-WTACWJSF.js} +2 -2
  477. package/dist/{chunk-5S5K73I6.js → chunk-WUBMJSBR.js} +2 -2
  478. package/dist/{chunk-MK6UXAWY.js → chunk-X2GWR75Q.js} +2 -2
  479. package/dist/{chunk-2VRJ577J.js → chunk-X3EB67O2.js} +4 -4
  480. package/dist/{chunk-HKGKQKQT.js → chunk-X5OGIT2F.js} +52 -20
  481. package/dist/chunk-X5OGIT2F.js.map +1 -0
  482. package/dist/{chunk-56GWNA5V.js → chunk-X6D5JEUV.js} +12 -5
  483. package/dist/chunk-X6D5JEUV.js.map +1 -0
  484. package/dist/{chunk-KRYOT3KB.js → chunk-XALFZ25A.js} +4 -4
  485. package/dist/{chunk-BNBWUXT3.js → chunk-XEKJ7L7I.js} +2 -2
  486. package/dist/{chunk-D72GD4XC.js → chunk-XHIBFBNP.js} +8 -4
  487. package/dist/chunk-XHIBFBNP.js.map +1 -0
  488. package/dist/{chunk-QAH3XILB.js → chunk-XNIHDUOP.js} +3 -3
  489. package/dist/{chunk-65KJLPF5.js → chunk-XRVXQJNB.js} +3 -3
  490. package/dist/{chunk-K6WY2CHG.js → chunk-XZFTRGRW.js} +2 -2
  491. package/dist/{chunk-LLPPIO3K.js → chunk-Y4ZWPOUV.js} +2 -2
  492. package/dist/{chunk-OQN2FHEL.js → chunk-Y6IIWGZB.js} +3 -3
  493. package/dist/{chunk-WMAS6DZR.js → chunk-YAQE7QVC.js} +4 -4
  494. package/dist/{chunk-POUNFTG3.js → chunk-YDIC6LSP.js} +9 -3
  495. package/dist/chunk-YDIC6LSP.js.map +1 -0
  496. package/dist/chunk-YE44HUFF.js +72 -0
  497. package/dist/chunk-YE44HUFF.js.map +1 -0
  498. package/dist/{chunk-PVIQDBUN.js → chunk-YFG6XXBB.js} +2 -2
  499. package/dist/{chunk-UBVKMM3V.js → chunk-YGQ2DLIM.js} +2 -2
  500. package/dist/{chunk-XQJPR57I.js → chunk-YKONJEI4.js} +3 -3
  501. package/dist/{chunk-COKPPU42.js → chunk-YLZXIR6B.js} +11 -11
  502. package/dist/chunk-YMYJO2CZ.js +32 -0
  503. package/dist/chunk-YMYJO2CZ.js.map +1 -0
  504. package/dist/{chunk-V4CWJ7Q6.js → chunk-YNZUYZ2O.js} +3 -3
  505. package/dist/{chunk-HJJR2WGL.js → chunk-YOXYSAUI.js} +4 -4
  506. package/dist/chunk-YSUJCKEE.js +341 -0
  507. package/dist/chunk-YSUJCKEE.js.map +1 -0
  508. package/dist/{chunk-CPZGFIFH.js → chunk-YWBPASB2.js} +3 -3
  509. package/dist/{chunk-2DDCRHJE.js → chunk-Z7CBLQQR.js} +4 -4
  510. package/dist/{chunk-H7CZRKN7.js → chunk-ZCNR4DN5.js} +6 -6
  511. package/dist/{chunk-4V37DAMA.js → chunk-ZDAAHCIS.js} +6 -6
  512. package/dist/{chunk-2SBQ47RI.js → chunk-ZF2LZVDO.js} +7 -7
  513. package/dist/{chunk-G76PIGF7.js → chunk-ZHQAVW2V.js} +3 -2
  514. package/dist/chunk-ZHQAVW2V.js.map +1 -0
  515. package/dist/{chunk-4IG73U2X.js → chunk-ZIA774ZW.js} +2 -2
  516. package/dist/{chunk-E5OBAS3U.js → chunk-ZLIES3XR.js} +2 -2
  517. package/dist/data-display/Alert.js +3 -3
  518. package/dist/data-display/AlertDialog.js +3 -3
  519. package/dist/data-display/AsyncStateContainer.js +8 -8
  520. package/dist/data-display/Avatar.js +4 -4
  521. package/dist/data-display/Badge.js +1 -1
  522. package/dist/data-display/CardKit.js +21 -21
  523. package/dist/data-display/Carousel.js +5 -5
  524. package/dist/data-display/Chart.js +18 -18
  525. package/dist/data-display/DataGrid.js +2 -2
  526. package/dist/data-display/DataViews.js +92 -92
  527. package/dist/data-display/DayRuler.js +33 -0
  528. package/dist/data-display/DayRuler.js.map +1 -0
  529. package/dist/data-display/EmptyState.js +2 -2
  530. package/dist/data-display/ErrorState.js +2 -2
  531. package/dist/data-display/FleetMap.js +21 -21
  532. package/dist/data-display/HoverCard.js +3 -3
  533. package/dist/data-display/LazyImage.js +4 -4
  534. package/dist/data-display/Lightbox.js +7 -7
  535. package/dist/data-display/LoadingState.js +5 -5
  536. package/dist/data-display/MapPreview.js +8 -8
  537. package/dist/data-display/RegionMap.js +6 -6
  538. package/dist/data-display/ScheduleGrid.js +30 -0
  539. package/dist/data-display/ScheduleGrid.js.map +1 -0
  540. package/dist/data-display/SectionOnboarding.js +4 -4
  541. package/dist/data-display/Sheet.js +7 -7
  542. package/dist/data-display/StatCard.js +3 -3
  543. package/dist/data-display/Stepper.js +2 -2
  544. package/dist/data-display/Table.js +4 -4
  545. package/dist/data-display/Timeline.js +2 -2
  546. package/dist/en-US.js +2 -2
  547. package/dist/feedback/ConfirmAction.js +11 -11
  548. package/dist/feedback/Dialog.js +2 -2
  549. package/dist/feedback/Modal.js +2 -2
  550. package/dist/feedback/NotificationStatusNotice.js +6 -6
  551. package/dist/feedback/SequenceResolver.js +16 -13
  552. package/dist/feedback/Sonner.js +2 -2
  553. package/dist/feedback/StackedModal.js +4 -4
  554. package/dist/feedback/Toast.js +2 -2
  555. package/dist/feedback/TutorialOverlay.js +2 -2
  556. package/dist/form/AddressAutocomplete.js +5 -5
  557. package/dist/form/Autocomplete.js +2 -2
  558. package/dist/form/Button.js +2 -2
  559. package/dist/form/Calendar.js +10 -8
  560. package/dist/form/CategorySelect.js +9 -9
  561. package/dist/form/Command.js +6 -6
  562. package/dist/form/DateRangePicker.js +15 -14
  563. package/dist/form/Label.js +1 -1
  564. package/dist/form/Menubar.js +5 -5
  565. package/dist/form/PickerSheet.js +4 -4
  566. package/dist/form/RichTextEditor.js +5 -5
  567. package/dist/form/Switch.js +4 -4
  568. package/dist/form/total-form.js +21 -21
  569. package/dist/icons.js +1 -1
  570. package/dist/layout/Box.js +1 -1
  571. package/dist/layout/Card.js +2 -2
  572. package/dist/layout/ContentToolbar.js +8 -8
  573. package/dist/layout/Dashboard.js +2 -2
  574. package/dist/layout/Drawer.js +2 -2
  575. package/dist/layout/Screen.js +1 -1
  576. package/dist/layout/ScrollArea.js +3 -3
  577. package/dist/layout/SettingCard.js +18 -18
  578. package/dist/layout/SettingsLayout.js +8 -8
  579. package/dist/layout/Skeleton.js +2 -2
  580. package/dist/layout/Stack.js +1 -1
  581. package/dist/layout/TableFilter.js +2 -2
  582. package/dist/locales.js +28 -28
  583. package/dist/native/chunks/{chunk-FXA5DLKR.js → chunk-4G634E3Q.js} +3 -3
  584. package/dist/native/chunks/{chunk-QHW7JEPZ.js → chunk-E5UA5XVN.js} +18 -1
  585. package/dist/native/chunks/chunk-E5UA5XVN.js.map +1 -0
  586. package/dist/native/chunks/{chunk-IN3XZ7EK.js → chunk-WLG3KT2V.js} +2 -2
  587. package/dist/native/data-display/Avatar.js +1 -1
  588. package/dist/native/data-display/Badge.js +1 -1
  589. package/dist/native/data-display/Chip.js +1 -1
  590. package/dist/native/data-display/EmptyState.js +3 -3
  591. package/dist/native/data-display/ErrorState.js +2 -2
  592. package/dist/native/data-display/FleetMap.js +3 -3
  593. package/dist/native/data-display/LoadingState.js +1 -1
  594. package/dist/native/feedback/Dialog.js +1 -1
  595. package/dist/native/form/Button.js +2 -2
  596. package/dist/native/form/Checkbox.js +1 -1
  597. package/dist/native/form/Input.js +1 -1
  598. package/dist/native/form/Switch.js +1 -1
  599. package/dist/navigation/AppHeader.js +15 -15
  600. package/dist/navigation/Breadcrumbs.js +2 -2
  601. package/dist/navigation/CommandPalette.js +5 -5
  602. package/dist/navigation/NavigationMenu.js +6 -6
  603. package/dist/navigation/Pagination.js +2 -2
  604. package/dist/navigation/SectionNav.js +6 -6
  605. package/dist/provider.js +1 -1
  606. package/dist/pt-BR.js +24 -24
  607. package/dist/social-login-button.js +6 -6
  608. package/dist/tokens.js +6 -6
  609. package/dist/types/components/data-display/DayRuler/DayRuler.d.ts +13 -0
  610. package/dist/types/components/data-display/DayRuler/DayRuler.d.ts.map +1 -0
  611. package/dist/types/components/data-display/DayRuler/DayRuler.keyboard.d.ts +31 -0
  612. package/dist/types/components/data-display/DayRuler/DayRuler.keyboard.d.ts.map +1 -0
  613. package/dist/types/components/data-display/DayRuler/DayRuler.metrics.d.ts +86 -0
  614. package/dist/types/components/data-display/DayRuler/DayRuler.metrics.d.ts.map +1 -0
  615. package/dist/types/components/data-display/DayRuler/DayRuler.parts.d.ts +37 -0
  616. package/dist/types/components/data-display/DayRuler/DayRuler.parts.d.ts.map +1 -0
  617. package/dist/types/components/data-display/DayRuler/DayRuler.styles.d.ts +45 -0
  618. package/dist/types/components/data-display/DayRuler/DayRuler.styles.d.ts.map +1 -0
  619. package/dist/types/components/data-display/DayRuler/DayRuler.types.d.ts +105 -0
  620. package/dist/types/components/data-display/DayRuler/DayRuler.types.d.ts.map +1 -0
  621. package/dist/types/components/data-display/DayRuler/day-ruler-model.d.ts +26 -0
  622. package/dist/types/components/data-display/DayRuler/day-ruler-model.d.ts.map +1 -0
  623. package/dist/types/components/data-display/DayRuler/index.d.ts +4 -0
  624. package/dist/types/components/data-display/DayRuler/index.d.ts.map +1 -0
  625. package/dist/types/components/data-display/DayRuler/useRulerDrag.d.ts +45 -0
  626. package/dist/types/components/data-display/DayRuler/useRulerDrag.d.ts.map +1 -0
  627. package/dist/types/components/data-display/DayRuler/useTextFits.d.ts +14 -0
  628. package/dist/types/components/data-display/DayRuler/useTextFits.d.ts.map +1 -0
  629. package/dist/types/components/data-display/ScheduleGrid/ScheduleGrid.d.ts +15 -0
  630. package/dist/types/components/data-display/ScheduleGrid/ScheduleGrid.d.ts.map +1 -0
  631. package/dist/types/components/data-display/ScheduleGrid/ScheduleGrid.keyboard.d.ts +32 -0
  632. package/dist/types/components/data-display/ScheduleGrid/ScheduleGrid.keyboard.d.ts.map +1 -0
  633. package/dist/types/components/data-display/ScheduleGrid/ScheduleGrid.metrics.d.ts +105 -0
  634. package/dist/types/components/data-display/ScheduleGrid/ScheduleGrid.metrics.d.ts.map +1 -0
  635. package/dist/types/components/data-display/ScheduleGrid/ScheduleGrid.parts.d.ts +51 -0
  636. package/dist/types/components/data-display/ScheduleGrid/ScheduleGrid.parts.d.ts.map +1 -0
  637. package/dist/types/components/data-display/ScheduleGrid/ScheduleGrid.styles.d.ts +75 -0
  638. package/dist/types/components/data-display/ScheduleGrid/ScheduleGrid.styles.d.ts.map +1 -0
  639. package/dist/types/components/data-display/ScheduleGrid/ScheduleGrid.types.d.ts +136 -0
  640. package/dist/types/components/data-display/ScheduleGrid/ScheduleGrid.types.d.ts.map +1 -0
  641. package/dist/types/components/data-display/ScheduleGrid/ScheduleNameCell.d.ts +33 -0
  642. package/dist/types/components/data-display/ScheduleGrid/ScheduleNameCell.d.ts.map +1 -0
  643. package/dist/types/components/data-display/ScheduleGrid/drag-session.d.ts +47 -0
  644. package/dist/types/components/data-display/ScheduleGrid/drag-session.d.ts.map +1 -0
  645. package/dist/types/components/data-display/ScheduleGrid/index.d.ts +4 -0
  646. package/dist/types/components/data-display/ScheduleGrid/index.d.ts.map +1 -0
  647. package/dist/types/components/data-display/ScheduleGrid/schedule-grid-model.d.ts +18 -0
  648. package/dist/types/components/data-display/ScheduleGrid/schedule-grid-model.d.ts.map +1 -0
  649. package/dist/types/components/data-display/ScheduleGrid/schedule-name.styles.d.ts +16 -0
  650. package/dist/types/components/data-display/ScheduleGrid/schedule-name.styles.d.ts.map +1 -0
  651. package/dist/types/components/data-display/ScheduleGrid/schedule-tones.d.ts +32 -0
  652. package/dist/types/components/data-display/ScheduleGrid/schedule-tones.d.ts.map +1 -0
  653. package/dist/types/components/data-display/ScheduleGrid/useAnnouncer.d.ts +13 -0
  654. package/dist/types/components/data-display/ScheduleGrid/useAnnouncer.d.ts.map +1 -0
  655. package/dist/types/components/data-display/ScheduleGrid/useGridDrag.d.ts +56 -0
  656. package/dist/types/components/data-display/ScheduleGrid/useGridDrag.d.ts.map +1 -0
  657. package/dist/types/components/data-display/ScheduleGrid/useSidewaysScroll.d.ts +26 -0
  658. package/dist/types/components/data-display/ScheduleGrid/useSidewaysScroll.d.ts.map +1 -0
  659. package/dist/types/components/data-display/index.d.ts +2 -0
  660. package/dist/types/components/data-display/index.d.ts.map +1 -1
  661. package/dist/types/components/feedback/SequenceResolver/SequenceResolver.d.ts.map +1 -1
  662. package/dist/types/components/feedback/SequenceResolver/SequenceResolver.header.d.ts +33 -0
  663. package/dist/types/components/feedback/SequenceResolver/SequenceResolver.header.d.ts.map +1 -0
  664. package/dist/types/components/feedback/SequenceResolver/SequenceResolver.header.styles.d.ts +17 -0
  665. package/dist/types/components/feedback/SequenceResolver/SequenceResolver.header.styles.d.ts.map +1 -0
  666. package/dist/types/components/feedback/SequenceResolver/SequenceResolver.metrics.d.ts +12 -0
  667. package/dist/types/components/feedback/SequenceResolver/SequenceResolver.metrics.d.ts.map +1 -1
  668. package/dist/types/components/feedback/SequenceResolver/SequenceResolver.overview.d.ts +22 -0
  669. package/dist/types/components/feedback/SequenceResolver/SequenceResolver.overview.d.ts.map +1 -0
  670. package/dist/types/components/feedback/SequenceResolver/SequenceResolver.parts.d.ts +6 -18
  671. package/dist/types/components/feedback/SequenceResolver/SequenceResolver.parts.d.ts.map +1 -1
  672. package/dist/types/components/feedback/SequenceResolver/SequenceResolver.styles.d.ts +17 -0
  673. package/dist/types/components/feedback/SequenceResolver/SequenceResolver.styles.d.ts.map +1 -1
  674. package/dist/types/components/feedback/SequenceResolver/SequenceResolver.types.d.ts +56 -1
  675. package/dist/types/components/feedback/SequenceResolver/SequenceResolver.types.d.ts.map +1 -1
  676. package/dist/types/components/feedback/SequenceResolver/index.d.ts +1 -1
  677. package/dist/types/components/feedback/SequenceResolver/index.d.ts.map +1 -1
  678. package/dist/types/components/feedback/SequenceResolver/sequence-model.d.ts +27 -3
  679. package/dist/types/components/feedback/SequenceResolver/sequence-model.d.ts.map +1 -1
  680. package/dist/types/components/feedback/SequenceResolver/useSequenceRun.d.ts +9 -0
  681. package/dist/types/components/feedback/SequenceResolver/useSequenceRun.d.ts.map +1 -1
  682. package/dist/types/components/form/AddressAutocomplete/AddressAutocompleteField.d.ts.map +1 -1
  683. package/dist/types/components/form/AddressAutocomplete/AddressSuggestionsPaper.d.ts +11 -1
  684. package/dist/types/components/form/AddressAutocomplete/AddressSuggestionsPaper.d.ts.map +1 -1
  685. package/dist/types/components/form/Calendar/Calendar.band.d.ts +44 -0
  686. package/dist/types/components/form/Calendar/Calendar.band.d.ts.map +1 -0
  687. package/dist/types/components/form/Calendar/CalendarDay.d.ts +2 -0
  688. package/dist/types/components/form/Calendar/CalendarDay.d.ts.map +1 -1
  689. package/dist/types/components/form/Calendar/CalendarDayCell.d.ts.map +1 -1
  690. package/dist/types/components/form/Calendar/CalendarMonth.d.ts +3 -2
  691. package/dist/types/components/form/Calendar/CalendarMonth.d.ts.map +1 -1
  692. package/dist/types/components/navigation/CommandPalette/CommandPalette.d.ts.map +1 -1
  693. package/dist/types/copy/labels.d.ts +34 -0
  694. package/dist/types/copy/labels.d.ts.map +1 -1
  695. package/dist/types/copy/navigation.d.ts +2 -0
  696. package/dist/types/copy/navigation.d.ts.map +1 -1
  697. package/dist/types/en-US.labels.d.ts.map +1 -1
  698. package/dist/types/en-US.navigation.d.ts.map +1 -1
  699. package/dist/types/pt-BR.labels.d.ts.map +1 -1
  700. package/dist/types/pt-BR.navigation.d.ts.map +1 -1
  701. package/dist/types-native/copy/labels.d.ts +34 -0
  702. package/dist/types-native/copy/labels.d.ts.map +1 -1
  703. package/dist/types-native/en-US.labels.d.ts.map +1 -1
  704. package/dist/typography/Code.js +2 -2
  705. package/dist/user-avatar.js +9 -9
  706. package/dist/utility/AnimatedIcon.js +2 -2
  707. package/dist/utility/InfiniteScroll.js +3 -3
  708. package/dist/utility/InstallPrompt.js +2 -2
  709. package/dist/utility/WorkflowStep.js +6 -6
  710. package/package.json +9 -1
  711. package/src/components/data-display/DayRuler/DayRuler.keyboard.ts +94 -0
  712. package/src/components/data-display/DayRuler/DayRuler.md +84 -0
  713. package/src/components/data-display/DayRuler/DayRuler.metrics.ts +47 -0
  714. package/src/components/data-display/DayRuler/DayRuler.parts.tsx +272 -0
  715. package/src/components/data-display/DayRuler/DayRuler.styles.ts +288 -0
  716. package/src/components/data-display/DayRuler/DayRuler.tsx +130 -0
  717. package/src/components/data-display/DayRuler/DayRuler.types.ts +107 -0
  718. package/src/components/data-display/DayRuler/day-ruler-model.ts +83 -0
  719. package/src/components/data-display/DayRuler/index.ts +9 -0
  720. package/src/components/data-display/DayRuler/useRulerDrag.ts +167 -0
  721. package/src/components/data-display/DayRuler/useTextFits.ts +41 -0
  722. package/src/components/data-display/ScheduleGrid/ScheduleGrid.keyboard.ts +138 -0
  723. package/src/components/data-display/ScheduleGrid/ScheduleGrid.md +140 -0
  724. package/src/components/data-display/ScheduleGrid/ScheduleGrid.metrics.ts +75 -0
  725. package/src/components/data-display/ScheduleGrid/ScheduleGrid.parts.tsx +357 -0
  726. package/src/components/data-display/ScheduleGrid/ScheduleGrid.styles.ts +386 -0
  727. package/src/components/data-display/ScheduleGrid/ScheduleGrid.tsx +142 -0
  728. package/src/components/data-display/ScheduleGrid/ScheduleGrid.types.ts +144 -0
  729. package/src/components/data-display/ScheduleGrid/ScheduleNameCell.tsx +66 -0
  730. package/src/components/data-display/ScheduleGrid/drag-session.ts +120 -0
  731. package/src/components/data-display/ScheduleGrid/index.ts +12 -0
  732. package/src/components/data-display/ScheduleGrid/schedule-grid-model.ts +39 -0
  733. package/src/components/data-display/ScheduleGrid/schedule-name.styles.ts +96 -0
  734. package/src/components/data-display/ScheduleGrid/schedule-tones.ts +126 -0
  735. package/src/components/data-display/ScheduleGrid/useAnnouncer.ts +32 -0
  736. package/src/components/data-display/ScheduleGrid/useGridDrag.ts +137 -0
  737. package/src/components/data-display/ScheduleGrid/useSidewaysScroll.ts +126 -0
  738. package/src/components/data-display/index.ts +2 -0
  739. package/src/components/feedback/SequenceResolver/SequenceResolver.header.styles.ts +65 -0
  740. package/src/components/feedback/SequenceResolver/SequenceResolver.header.tsx +153 -0
  741. package/src/components/feedback/SequenceResolver/SequenceResolver.md +43 -2
  742. package/src/components/feedback/SequenceResolver/SequenceResolver.metrics.ts +12 -0
  743. package/src/components/feedback/SequenceResolver/SequenceResolver.overview.tsx +74 -0
  744. package/src/components/feedback/SequenceResolver/SequenceResolver.parts.tsx +37 -83
  745. package/src/components/feedback/SequenceResolver/SequenceResolver.styles.ts +47 -0
  746. package/src/components/feedback/SequenceResolver/SequenceResolver.tsx +152 -35
  747. package/src/components/feedback/SequenceResolver/SequenceResolver.types.ts +58 -1
  748. package/src/components/feedback/SequenceResolver/index.ts +2 -0
  749. package/src/components/feedback/SequenceResolver/sequence-model.ts +66 -5
  750. package/src/components/feedback/SequenceResolver/useSequenceRun.ts +28 -10
  751. package/src/components/form/AddressAutocomplete/AddressAutocompleteField.tsx +17 -4
  752. package/src/components/form/AddressAutocomplete/AddressSuggestionsPaper.tsx +32 -3
  753. package/src/components/form/Calendar/Calendar.band.ts +118 -0
  754. package/src/components/form/Calendar/CalendarDay.tsx +73 -23
  755. package/src/components/form/Calendar/CalendarDayCell.tsx +2 -0
  756. package/src/components/form/Calendar/CalendarMonth.tsx +14 -4
  757. package/src/components/navigation/CommandPalette/CommandPalette.md +1 -0
  758. package/src/components/navigation/CommandPalette/CommandPalette.tsx +4 -2
  759. package/src/copy/labels.ts +36 -0
  760. package/src/copy/navigation.ts +2 -0
  761. package/src/en-US.labels.ts +17 -0
  762. package/src/en-US.navigation.ts +1 -0
  763. package/src/pt-BR.labels.ts +17 -0
  764. package/src/pt-BR.navigation.ts +1 -0
  765. package/dist/chunk-3LUT2C5M.js.map +0 -1
  766. package/dist/chunk-56GWNA5V.js.map +0 -1
  767. package/dist/chunk-5UBP2DJ4.js.map +0 -1
  768. package/dist/chunk-ABRUOINB.js +0 -1
  769. package/dist/chunk-C5RQBTRZ.js.map +0 -1
  770. package/dist/chunk-D72GD4XC.js.map +0 -1
  771. package/dist/chunk-G76PIGF7.js.map +0 -1
  772. package/dist/chunk-HHPFWEJY.js.map +0 -1
  773. package/dist/chunk-HKGKQKQT.js.map +0 -1
  774. package/dist/chunk-POUNFTG3.js.map +0 -1
  775. package/dist/chunk-WXZCNHBX.js.map +0 -1
  776. package/dist/chunk-XOXXG7Q5.js.map +0 -1
  777. package/dist/chunk-Z445LLFN.js.map +0 -1
  778. package/dist/chunk-ZHYLOB7Q.js +0 -162
  779. package/dist/chunk-ZHYLOB7Q.js.map +0 -1
  780. package/dist/native/chunks/chunk-QHW7JEPZ.js.map +0 -1
  781. /package/dist/{chunk-ABRUOINB.js.map → _internal/components/data-display/DayRuler/DayRuler.js.map} +0 -0
  782. /package/dist/{chunk-DYRZRY2T.js.map → chunk-2CRNOJGL.js.map} +0 -0
  783. /package/dist/{chunk-L5KPBMMF.js.map → chunk-2ENMRK3U.js.map} +0 -0
  784. /package/dist/{chunk-FZEDQNUN.js.map → chunk-2KBATUOZ.js.map} +0 -0
  785. /package/dist/{chunk-33AVAYCR.js.map → chunk-2L6TANRY.js.map} +0 -0
  786. /package/dist/{chunk-ENJOBJPK.js.map → chunk-2MT6VSS2.js.map} +0 -0
  787. /package/dist/{chunk-VKTF3GAP.js.map → chunk-2MYSXWZQ.js.map} +0 -0
  788. /package/dist/{chunk-7QKFMMWK.js.map → chunk-2Q2DUGH7.js.map} +0 -0
  789. /package/dist/{chunk-VQ6V5TO7.js.map → chunk-2UNZG4JK.js.map} +0 -0
  790. /package/dist/{chunk-Q7XLTN2D.js.map → chunk-3B4NXP4N.js.map} +0 -0
  791. /package/dist/{chunk-UT545JBQ.js.map → chunk-3EIRRLCQ.js.map} +0 -0
  792. /package/dist/{chunk-MSJP2AEN.js.map → chunk-3EKY63LD.js.map} +0 -0
  793. /package/dist/{chunk-B32554CQ.js.map → chunk-3KMP2F4R.js.map} +0 -0
  794. /package/dist/{chunk-D3W5A4N6.js.map → chunk-3STNOYYO.js.map} +0 -0
  795. /package/dist/{chunk-TVDHA7BT.js.map → chunk-3Y6NO5XL.js.map} +0 -0
  796. /package/dist/{chunk-ABQZFK7M.js.map → chunk-44PBCQ7E.js.map} +0 -0
  797. /package/dist/{chunk-VYQZ5U3N.js.map → chunk-4NG3LTRX.js.map} +0 -0
  798. /package/dist/{chunk-PGHSNG33.js.map → chunk-4PZZJ2AE.js.map} +0 -0
  799. /package/dist/{chunk-TRAMTVIO.js.map → chunk-4QTPERAY.js.map} +0 -0
  800. /package/dist/{chunk-W2RXXF7K.js.map → chunk-4XBAEKQQ.js.map} +0 -0
  801. /package/dist/{chunk-KR4TN3OF.js.map → chunk-4ZQQUICR.js.map} +0 -0
  802. /package/dist/{chunk-XCUHGPPZ.js.map → chunk-55PFFAAY.js.map} +0 -0
  803. /package/dist/{chunk-LYVTJLCF.js.map → chunk-56JF5PZK.js.map} +0 -0
  804. /package/dist/{chunk-IYDXKLCE.js.map → chunk-5BVAUUWL.js.map} +0 -0
  805. /package/dist/{chunk-6OISIUZM.js.map → chunk-5F7HYYGM.js.map} +0 -0
  806. /package/dist/{chunk-TMUGBHHG.js.map → chunk-5QUH53HV.js.map} +0 -0
  807. /package/dist/{chunk-DAFFZED3.js.map → chunk-5YVMFK7Y.js.map} +0 -0
  808. /package/dist/{chunk-TI4FGQYV.js.map → chunk-62PTREG5.js.map} +0 -0
  809. /package/dist/{chunk-3DPPDGOF.js.map → chunk-62SXUU5U.js.map} +0 -0
  810. /package/dist/{chunk-BP3ZKIPE.js.map → chunk-64UNVW6D.js.map} +0 -0
  811. /package/dist/{chunk-QADTI63U.js.map → chunk-6ATXOJVQ.js.map} +0 -0
  812. /package/dist/{chunk-7W5X3KQ2.js.map → chunk-6BQ3YKLD.js.map} +0 -0
  813. /package/dist/{chunk-VPH3TENY.js.map → chunk-6DGNMASB.js.map} +0 -0
  814. /package/dist/{chunk-NOF2FF4K.js.map → chunk-7CPLKAL6.js.map} +0 -0
  815. /package/dist/{chunk-ABRVOPC2.js.map → chunk-7FFY4LJY.js.map} +0 -0
  816. /package/dist/{chunk-DVX4HDNP.js.map → chunk-7IBFGOLF.js.map} +0 -0
  817. /package/dist/{chunk-EOQ6EKTS.js.map → chunk-7XSCEHGA.js.map} +0 -0
  818. /package/dist/{chunk-QCYQL3ST.js.map → chunk-7XUQJJPK.js.map} +0 -0
  819. /package/dist/{chunk-7VUXSNVZ.js.map → chunk-A4B27HYU.js.map} +0 -0
  820. /package/dist/{chunk-EOIRU62W.js.map → chunk-AD6GRJFV.js.map} +0 -0
  821. /package/dist/{chunk-CAOL4AIB.js.map → chunk-AEAVVKGY.js.map} +0 -0
  822. /package/dist/{chunk-HI7JPDD6.js.map → chunk-AMLHEKSV.js.map} +0 -0
  823. /package/dist/{chunk-UTUYXH72.js.map → chunk-AN37BIIO.js.map} +0 -0
  824. /package/dist/{chunk-ABVIMFSD.js.map → chunk-AWUB3T7C.js.map} +0 -0
  825. /package/dist/{chunk-ALOEOGQV.js.map → chunk-AXGQB24R.js.map} +0 -0
  826. /package/dist/{chunk-ZO2GZRZS.js.map → chunk-B5SBDLRS.js.map} +0 -0
  827. /package/dist/{chunk-CARUHKZW.js.map → chunk-B7GGLFJB.js.map} +0 -0
  828. /package/dist/{chunk-C347NNZJ.js.map → chunk-B7ZAEZJW.js.map} +0 -0
  829. /package/dist/{chunk-GANJRIT3.js.map → chunk-C3MXURP3.js.map} +0 -0
  830. /package/dist/{chunk-7YJYIMWP.js.map → chunk-CTN4BRAH.js.map} +0 -0
  831. /package/dist/{chunk-ZANWHTXH.js.map → chunk-CVB26LLB.js.map} +0 -0
  832. /package/dist/{chunk-PGYYDSNX.js.map → chunk-CW5Z67NA.js.map} +0 -0
  833. /package/dist/{chunk-CY4XIZNW.js.map → chunk-D3B4V44W.js.map} +0 -0
  834. /package/dist/{chunk-U2DRE36S.js.map → chunk-D3SIZ2CX.js.map} +0 -0
  835. /package/dist/{chunk-YGLAGY74.js.map → chunk-DM57YWZH.js.map} +0 -0
  836. /package/dist/{chunk-NASLJO2R.js.map → chunk-DRJGHTQU.js.map} +0 -0
  837. /package/dist/{chunk-BLZDSCIZ.js.map → chunk-DYHOBKPU.js.map} +0 -0
  838. /package/dist/{chunk-FCLON3MO.js.map → chunk-EE6DJPB7.js.map} +0 -0
  839. /package/dist/{chunk-ANUO67JQ.js.map → chunk-EIMFA7KP.js.map} +0 -0
  840. /package/dist/{chunk-AKE6KVQG.js.map → chunk-EVIQUBC6.js.map} +0 -0
  841. /package/dist/{chunk-A5CKUJP2.js.map → chunk-EXKEPOL7.js.map} +0 -0
  842. /package/dist/{chunk-ULAZDF6D.js.map → chunk-FF22F7FA.js.map} +0 -0
  843. /package/dist/{chunk-LIN4A2BW.js.map → chunk-FKS2PNJF.js.map} +0 -0
  844. /package/dist/{chunk-ZYZPSBNQ.js.map → chunk-G3G5W4OF.js.map} +0 -0
  845. /package/dist/{chunk-N5OEDOJT.js.map → chunk-GBB23QLL.js.map} +0 -0
  846. /package/dist/{chunk-KTXJQ4YJ.js.map → chunk-GBVNY2LG.js.map} +0 -0
  847. /package/dist/{chunk-MW7P2C2C.js.map → chunk-GCR6VE5S.js.map} +0 -0
  848. /package/dist/{chunk-KYTFGW4R.js.map → chunk-GMIMHQ6H.js.map} +0 -0
  849. /package/dist/{chunk-KRPDBVUB.js.map → chunk-GS3QDXDP.js.map} +0 -0
  850. /package/dist/{chunk-WNNA6YYE.js.map → chunk-H5R2EZYI.js.map} +0 -0
  851. /package/dist/{chunk-JZQYVGPV.js.map → chunk-HED2CZDZ.js.map} +0 -0
  852. /package/dist/{chunk-JVOEVTCZ.js.map → chunk-HQCZT6TO.js.map} +0 -0
  853. /package/dist/{chunk-67ADHGA2.js.map → chunk-HWJ3FLZY.js.map} +0 -0
  854. /package/dist/{chunk-LXIPBHNJ.js.map → chunk-I5SIHPOG.js.map} +0 -0
  855. /package/dist/{chunk-NCI74EOS.js.map → chunk-I62SKY4E.js.map} +0 -0
  856. /package/dist/{chunk-GOQOVKUZ.js.map → chunk-I6CP3ZTP.js.map} +0 -0
  857. /package/dist/{chunk-OKRITX4S.js.map → chunk-ICHM2LQA.js.map} +0 -0
  858. /package/dist/{chunk-4LUWZ6UE.js.map → chunk-IMMPY4Q7.js.map} +0 -0
  859. /package/dist/{chunk-FZUAB2KS.js.map → chunk-INFBO356.js.map} +0 -0
  860. /package/dist/{chunk-EXVCVXFX.js.map → chunk-IQ5MBELJ.js.map} +0 -0
  861. /package/dist/{chunk-FRUDRDJX.js.map → chunk-IZ7JTG3Z.js.map} +0 -0
  862. /package/dist/{chunk-5ZOJLYD2.js.map → chunk-JE6RZ5L6.js.map} +0 -0
  863. /package/dist/{chunk-KF3Q3C3P.js.map → chunk-JJFLCEJJ.js.map} +0 -0
  864. /package/dist/{chunk-XW44IFYE.js.map → chunk-K2VDRODL.js.map} +0 -0
  865. /package/dist/{chunk-CFDWKQZT.js.map → chunk-KILA7LCC.js.map} +0 -0
  866. /package/dist/{chunk-IMYKJTVX.js.map → chunk-KLLHCPA2.js.map} +0 -0
  867. /package/dist/{chunk-FORQEHRQ.js.map → chunk-L5GZZUTY.js.map} +0 -0
  868. /package/dist/{chunk-N557OEZR.js.map → chunk-L62HC3UB.js.map} +0 -0
  869. /package/dist/{chunk-OPY2AGAU.js.map → chunk-LR56OANO.js.map} +0 -0
  870. /package/dist/{chunk-V6KQ5R4T.js.map → chunk-LSGZLFKX.js.map} +0 -0
  871. /package/dist/{chunk-QJLOWBFW.js.map → chunk-LXTNWQWF.js.map} +0 -0
  872. /package/dist/{chunk-W5WYTVLS.js.map → chunk-LY5I3ZSV.js.map} +0 -0
  873. /package/dist/{chunk-T77OVQEO.js.map → chunk-LZKS3NER.js.map} +0 -0
  874. /package/dist/{chunk-ZAPP32GD.js.map → chunk-M7HYNXCU.js.map} +0 -0
  875. /package/dist/{chunk-FQMLTCXT.js.map → chunk-MAHY7PK3.js.map} +0 -0
  876. /package/dist/{chunk-D34PZJH3.js.map → chunk-MBMZNSBP.js.map} +0 -0
  877. /package/dist/{chunk-HUXAIQC5.js.map → chunk-MJDSXQV7.js.map} +0 -0
  878. /package/dist/{chunk-NTRWUDP6.js.map → chunk-MKVDHR3B.js.map} +0 -0
  879. /package/dist/{chunk-PEVBSNCD.js.map → chunk-MLAIXRVL.js.map} +0 -0
  880. /package/dist/{chunk-5U7LBO2V.js.map → chunk-MUHRPJQT.js.map} +0 -0
  881. /package/dist/{chunk-COK65GX2.js.map → chunk-N2KHISGH.js.map} +0 -0
  882. /package/dist/{chunk-UQ5GJPVZ.js.map → chunk-N3C4J6Z2.js.map} +0 -0
  883. /package/dist/{chunk-P4Q7JK4L.js.map → chunk-NQ6P7O7C.js.map} +0 -0
  884. /package/dist/{chunk-QVDEGBME.js.map → chunk-NQCTANF3.js.map} +0 -0
  885. /package/dist/{chunk-I2LMLQGQ.js.map → chunk-NQUYBJKJ.js.map} +0 -0
  886. /package/dist/{chunk-LOHQLARB.js.map → chunk-NTCWIMIU.js.map} +0 -0
  887. /package/dist/{chunk-Q4GAPZDA.js.map → chunk-O2MR6U7Q.js.map} +0 -0
  888. /package/dist/{chunk-2FQF4CNE.js.map → chunk-OPP6USJC.js.map} +0 -0
  889. /package/dist/{chunk-GLR5MSU3.js.map → chunk-OY437NRJ.js.map} +0 -0
  890. /package/dist/{chunk-CJUK32UH.js.map → chunk-OZYUE2BI.js.map} +0 -0
  891. /package/dist/{chunk-HNEZWVDR.js.map → chunk-P5C4DTO4.js.map} +0 -0
  892. /package/dist/{chunk-6EZQLNPK.js.map → chunk-PGJIWCQR.js.map} +0 -0
  893. /package/dist/{chunk-6PTP5NID.js.map → chunk-R2ODLE6G.js.map} +0 -0
  894. /package/dist/{chunk-PJNIJIE6.js.map → chunk-RCTHCXS6.js.map} +0 -0
  895. /package/dist/{chunk-YBAK2WN5.js.map → chunk-RFMQBIE6.js.map} +0 -0
  896. /package/dist/{chunk-EYFDIUVR.js.map → chunk-RZTUMBRD.js.map} +0 -0
  897. /package/dist/{chunk-SGFRSRAL.js.map → chunk-S5VIN3EB.js.map} +0 -0
  898. /package/dist/{chunk-TIM4PXWN.js.map → chunk-SB2SEGR6.js.map} +0 -0
  899. /package/dist/{chunk-5CP6VW5H.js.map → chunk-SFNVAM7I.js.map} +0 -0
  900. /package/dist/{chunk-MVNFUIJS.js.map → chunk-SKIAWOUC.js.map} +0 -0
  901. /package/dist/{chunk-KES3HNSU.js.map → chunk-T7NEXLW6.js.map} +0 -0
  902. /package/dist/{chunk-EWFBDAB7.js.map → chunk-TOLCZ4XT.js.map} +0 -0
  903. /package/dist/{chunk-HBH7V3IP.js.map → chunk-TOOEEQ46.js.map} +0 -0
  904. /package/dist/{chunk-L7HNQRFS.js.map → chunk-TSID4257.js.map} +0 -0
  905. /package/dist/{chunk-5CP5Z3YU.js.map → chunk-TYGVNTUP.js.map} +0 -0
  906. /package/dist/{chunk-ZVZTQF7E.js.map → chunk-UBMH5MED.js.map} +0 -0
  907. /package/dist/{chunk-WTOA52EQ.js.map → chunk-UKNMPGEM.js.map} +0 -0
  908. /package/dist/{chunk-UXOFA3ZP.js.map → chunk-UNCDOLF5.js.map} +0 -0
  909. /package/dist/{chunk-UYKIUUWP.js.map → chunk-V2QTL6VI.js.map} +0 -0
  910. /package/dist/{chunk-6GICMRDX.js.map → chunk-VMTOLAZ5.js.map} +0 -0
  911. /package/dist/{chunk-4QGMUHAU.js.map → chunk-VQ7YNAK2.js.map} +0 -0
  912. /package/dist/{chunk-P772HCHI.js.map → chunk-W676GY42.js.map} +0 -0
  913. /package/dist/{chunk-B32XH7NK.js.map → chunk-WHOD6LVN.js.map} +0 -0
  914. /package/dist/{chunk-52RHAAIH.js.map → chunk-WLC56R2I.js.map} +0 -0
  915. /package/dist/{chunk-T2G4LDU5.js.map → chunk-WLLUARTC.js.map} +0 -0
  916. /package/dist/{chunk-X4J576GR.js.map → chunk-WTACWJSF.js.map} +0 -0
  917. /package/dist/{chunk-5S5K73I6.js.map → chunk-WUBMJSBR.js.map} +0 -0
  918. /package/dist/{chunk-MK6UXAWY.js.map → chunk-X2GWR75Q.js.map} +0 -0
  919. /package/dist/{chunk-2VRJ577J.js.map → chunk-X3EB67O2.js.map} +0 -0
  920. /package/dist/{chunk-KRYOT3KB.js.map → chunk-XALFZ25A.js.map} +0 -0
  921. /package/dist/{chunk-BNBWUXT3.js.map → chunk-XEKJ7L7I.js.map} +0 -0
  922. /package/dist/{chunk-QAH3XILB.js.map → chunk-XNIHDUOP.js.map} +0 -0
  923. /package/dist/{chunk-65KJLPF5.js.map → chunk-XRVXQJNB.js.map} +0 -0
  924. /package/dist/{chunk-K6WY2CHG.js.map → chunk-XZFTRGRW.js.map} +0 -0
  925. /package/dist/{chunk-LLPPIO3K.js.map → chunk-Y4ZWPOUV.js.map} +0 -0
  926. /package/dist/{chunk-OQN2FHEL.js.map → chunk-Y6IIWGZB.js.map} +0 -0
  927. /package/dist/{chunk-WMAS6DZR.js.map → chunk-YAQE7QVC.js.map} +0 -0
  928. /package/dist/{chunk-PVIQDBUN.js.map → chunk-YFG6XXBB.js.map} +0 -0
  929. /package/dist/{chunk-UBVKMM3V.js.map → chunk-YGQ2DLIM.js.map} +0 -0
  930. /package/dist/{chunk-XQJPR57I.js.map → chunk-YKONJEI4.js.map} +0 -0
  931. /package/dist/{chunk-COKPPU42.js.map → chunk-YLZXIR6B.js.map} +0 -0
  932. /package/dist/{chunk-V4CWJ7Q6.js.map → chunk-YNZUYZ2O.js.map} +0 -0
  933. /package/dist/{chunk-HJJR2WGL.js.map → chunk-YOXYSAUI.js.map} +0 -0
  934. /package/dist/{chunk-CPZGFIFH.js.map → chunk-YWBPASB2.js.map} +0 -0
  935. /package/dist/{chunk-2DDCRHJE.js.map → chunk-Z7CBLQQR.js.map} +0 -0
  936. /package/dist/{chunk-H7CZRKN7.js.map → chunk-ZCNR4DN5.js.map} +0 -0
  937. /package/dist/{chunk-4V37DAMA.js.map → chunk-ZDAAHCIS.js.map} +0 -0
  938. /package/dist/{chunk-2SBQ47RI.js.map → chunk-ZF2LZVDO.js.map} +0 -0
  939. /package/dist/{chunk-4IG73U2X.js.map → chunk-ZIA774ZW.js.map} +0 -0
  940. /package/dist/{chunk-E5OBAS3U.js.map → chunk-ZLIES3XR.js.map} +0 -0
  941. /package/dist/native/chunks/{chunk-FXA5DLKR.js.map → chunk-4G634E3Q.js.map} +0 -0
  942. /package/dist/native/chunks/{chunk-IN3XZ7EK.js.map → chunk-WLG3KT2V.js.map} +0 -0
@@ -80,9 +80,10 @@ const PaletteSearch: React.FC<{
80
80
  placeholder?: string;
81
81
  value: string;
82
82
  dataTestId?: string;
83
+ closeLabel: string;
83
84
  onChange: (event: React.ChangeEvent<HTMLInputElement>) => void;
84
85
  onClose: () => void;
85
- }> = ({ inputRef, placeholder, value, dataTestId, onChange, onClose }) => (
86
+ }> = ({ inputRef, placeholder, value, dataTestId, closeLabel, onChange, onClose }) => (
86
87
  <SearchContainer>
87
88
  <SearchIcon sx={{ color: 'text.secondary', mr: 1 }} />
88
89
  <SearchInput
@@ -96,7 +97,7 @@ const PaletteSearch: React.FC<{
96
97
  spellCheck="false"
97
98
  inputProps={{ 'data-testid': `${dataTestId}-input` }}
98
99
  />
99
- <IconButton size="small" onClick={onClose} sx={{ ml: 1 }}>
100
+ <IconButton size="small" onClick={onClose} aria-label={closeLabel} sx={{ ml: 1 }}>
100
101
  <CloseIcon fontSize="small" />
101
102
  </IconButton>
102
103
  </SearchContainer>
@@ -190,6 +191,7 @@ export const CommandPalette: FC<CommandPaletteProps> = ({
190
191
  placeholder={placeholder ?? text.placeholder}
191
192
  value={searchQuery}
192
193
  dataTestId={dataTestId}
194
+ closeLabel={text.closeSearch}
193
195
  onChange={handleSearchChange}
194
196
  onClose={onClose}
195
197
  />
@@ -214,6 +214,40 @@ export interface DateRangePickerLabels {
214
214
  calendar: string;
215
215
  }
216
216
 
217
+ /** `ScheduleGrid`'s cell names and the sentences its live region reads after a keyboard copy or move. */
218
+ export interface ScheduleGridLabels {
219
+ /** An empty cell's button: schedule this row on this day. */
220
+ createCell(row: string, column: string): string;
221
+ /** A blocked cell with no label of its own. */
222
+ blockedCell(row: string, column: string): string;
223
+ /** After Shift+←/→ copied a block to the next or previous day. */
224
+ copied(block: string, column: string): string;
225
+ /** After Alt+←/→ moved a block to the next or previous day. */
226
+ moved(block: string, row: string, column: string): string;
227
+ /** A keyboard copy or move whose day is taken, closed or outside the grid. */
228
+ refused: string;
229
+ /** Shift/Alt+←/→ on a block that is not `copyable` / `movable`: the block is fixed, not the day. */
230
+ notMovable: string;
231
+ /** The grid's busy state. */
232
+ loading: string;
233
+ }
234
+
235
+ /** `DayRuler`'s track names and the sentences its live region reads after a keyboard move or resize. */
236
+ export interface DayRulerLabels {
237
+ /** A row's empty track: Enter schedules this row. */
238
+ createTrack(row: string): string;
239
+ /** After Alt+←/→ moved a block; `range` is "20:45–00:45". */
240
+ moved(block: string, range: string): string;
241
+ /** After Shift(+Alt)+←/→ changed a block's end or start. */
242
+ resized(block: string, range: string): string;
243
+ /** A keyboard move or resize past the ruler's ends or under the shortest length. */
244
+ refused: string;
245
+ /** Shift/Alt+←/→ on a block that is not `movable` / `resizable`: the block is fixed. */
246
+ notMovable: string;
247
+ /** The ruler's busy state. */
248
+ loading: string;
249
+ }
250
+
217
251
  /**
218
252
  * `Calendar`'s month/year caption (`captionLayout="selectors"`): the two
219
253
  * selector buttons, the month arrows and the two pick grids. The month and
@@ -264,5 +298,7 @@ export interface UiLabels {
264
298
  infiniteScroll: InfiniteScrollLabels;
265
299
  socialLogin: SocialLoginLabels;
266
300
  dateRangePicker: DateRangePickerLabels;
301
+ scheduleGrid: ScheduleGridLabels;
302
+ dayRuler: DayRulerLabels;
267
303
  calendar: CalendarLabels;
268
304
  }
@@ -28,6 +28,8 @@ export interface CommandPaletteCopy {
28
28
  noCommandsFound?: (query: string) => string;
29
29
  /** The group header of a command that names no `category`. */
30
30
  general?: string;
31
+ /** The search row's ✕, as a screen reader names it (FUT-4162). */
32
+ closeSearch?: string;
31
33
  }
32
34
 
33
35
  /**
@@ -144,6 +144,23 @@ export const EN_US_UI_LABELS: UiLabels = {
144
144
  dateRangePicker: {
145
145
  calendar: "Calendar",
146
146
  },
147
+ scheduleGrid: {
148
+ createCell: (row, column) => `Schedule ${row}, ${column}`,
149
+ blockedCell: (row, column) => `${row}, ${column}: closed`,
150
+ copied: (block, column) => `${block} copied to ${column}`,
151
+ moved: (block, row, column) => `${block} moved to ${row}, ${column}`,
152
+ refused: "Not there: that day is taken or closed",
153
+ notMovable: "This shift cannot be changed here",
154
+ loading: "Loading the schedule",
155
+ },
156
+ dayRuler: {
157
+ createTrack: (row) => `Schedule ${row}`,
158
+ moved: (block, range) => `${block} now ${range}`,
159
+ resized: (block, range) => `${block} now ${range}`,
160
+ refused: "It cannot go further",
161
+ notMovable: "This shift cannot be changed here",
162
+ loading: "Loading the day",
163
+ },
147
164
  calendar: {
148
165
  chooseMonth: (month) => `${month}, choose month`,
149
166
  chooseYear: (year) => `${year}, choose year`,
@@ -20,6 +20,7 @@ export const EN_US_COMMAND_PALETTE_COPY: Required<CommandPaletteCopy> = {
20
20
  commandCount: (count) => `${count} commands`,
21
21
  noCommandsFound: (query) => `No commands found for "${query}"`,
22
22
  general: "General",
23
+ closeSearch: "Close search",
23
24
  };
24
25
 
25
26
  export const EN_US_BREADCRUMB_COPY: BreadcrumbCopy = {
@@ -143,6 +143,23 @@ export const PT_BR_UI_LABELS: UiLabels = {
143
143
  dateRangePicker: {
144
144
  calendar: "Calendário",
145
145
  },
146
+ scheduleGrid: {
147
+ createCell: (row, column) => `Agendar ${row}, ${column}`,
148
+ blockedCell: (row, column) => `${row}, ${column}: fechado`,
149
+ copied: (block, column) => `${block} copiado para ${column}`,
150
+ moved: (block, row, column) => `${block} movido para ${row}, ${column}`,
151
+ refused: "Não dá para pôr aí: o dia está ocupado ou fechado",
152
+ notMovable: "Este turno não muda por aqui",
153
+ loading: "Carregando a escala",
154
+ },
155
+ dayRuler: {
156
+ createTrack: (row) => `Agendar ${row}`,
157
+ moved: (block, range) => `${block} agora ${range}`,
158
+ resized: (block, range) => `${block} agora ${range}`,
159
+ refused: "Não dá para ir além",
160
+ notMovable: "Este turno não muda por aqui",
161
+ loading: "Carregando o dia",
162
+ },
146
163
  calendar: {
147
164
  chooseMonth: (month) => `${month}, escolher mês`,
148
165
  chooseYear: (year) => `${year}, escolher ano`,
@@ -18,6 +18,7 @@ export const PT_BR_COMMAND_PALETTE_COPY: Required<CommandPaletteCopy> = {
18
18
  commandCount: (count) => (count === 1 ? "1 comando" : `${count} comandos`),
19
19
  noCommandsFound: (query) => `Nenhum comando encontrado para "${query}"`,
20
20
  general: "Geral",
21
+ closeSearch: "Fechar busca",
21
22
  };
22
23
 
23
24
  export const PT_BR_BREADCRUMB_COPY: BreadcrumbCopy = {
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/feedback/SequenceResolver/useSequenceRun.ts"],"sourcesContent":["import { useCallback, useRef, useState } from 'react';\n\nimport {\n backRun,\n currentOf,\n pinRun,\n previousOf,\n resolveRun,\n skipRun,\n startRun,\n syncRun,\n type RunState,\n} from './sequence-model';\nimport type { SequenceItem, SequenceResolveOptions } from './SequenceResolver.types';\n\ninterface RunInputs<I extends SequenceItem, R> {\n /** The resolver is open. Opening it, intro or not, starts a fresh run. */\n open: boolean;\n /** True while the run is on screen: open, and past the intro. */\n active: boolean;\n queue: readonly I[];\n onBack?: (item: I, result: R) => Promise<void> | void;\n /** The message for a rejection that carries none. */\n failed: string;\n}\n\nexport interface SequenceRun<I extends SequenceItem, R> {\n run: RunState<I, R>;\n busy: boolean;\n error: string | null;\n resolve: (result: R | PromiseLike<R>, options?: SequenceResolveOptions) => void;\n skip: () => void;\n back: () => void;\n}\n\ninterface Tracked<I extends SequenceItem, R> {\n run: RunState<I, R>;\n /** The queue `run` was last reconciled with, by reference. */\n queue: readonly I[];\n active: boolean;\n open: boolean;\n}\n\n/** The screen key an error belongs to: the step's key, or the end screen's. */\nconst END_SCREEN = '\\u0000end';\nconst screenOf = (item: SequenceItem | undefined): string => item?.key ?? END_SCREEN;\n\n/** A rejection's message, and the screen it was raised on. */\ninterface GateError {\n message: string;\n screen: string;\n}\n\nfunction isThenable<R>(value: R | PromiseLike<R>): value is PromiseLike<R> {\n return typeof (value as { then?: unknown } | null)?.then === 'function';\n}\n\nfunction messageOf(reason: unknown, fallback: string): string {\n if (reason instanceof Error && reason.message) return reason.message;\n if (typeof reason === 'string' && reason) return reason;\n return fallback;\n}\n\n/** What the pending work is: an answer being written, or Back's inverse. */\ntype Work = 'resolve' | 'back';\n\ninterface AsyncGate {\n /** The pending work, or `null` when idle. */\n busy: Work | null;\n error: GateError | null;\n /** True from the moment work starts — read before React re-renders with `busy`. */\n isPending: () => boolean;\n clearError: () => void;\n /** Run `work`; on success apply `onDone`, on failure keep the screen and show why. */\n settle: <T>(work: PromiseLike<T>, kind: Work, screen: string, onDone: (value: T) => void) => void;\n /** Forget pending work (a restart): whatever settles later touches nothing. */\n reset: () => void;\n}\n\n/**\n * `busy` while a promise settles, the rejection's message as `error`, and\n * nothing double-fired. Refs, not state, for the guard: a second tap in the\n * same frame reads them before React has re-rendered with `busy`, and a\n * promise settling after a restart must not touch the new run.\n */\nfunction useAsyncGate(failed: string): AsyncGate {\n const [busy, setBusy] = useState<Work | null>(null);\n const [error, setError] = useState<GateError | null>(null);\n const pending = useRef(false);\n const generation = useRef(0);\n\n const settle = useCallback(\n <T,>(work: PromiseLike<T>, kind: Work, screen: string, onDone: (value: T) => void) => {\n const mine = generation.current;\n pending.current = true;\n setBusy(kind);\n setError(null);\n const finish = (): boolean => {\n if (mine !== generation.current) return false;\n pending.current = false;\n setBusy(null);\n return true;\n };\n work.then(\n (value) => {\n if (finish()) onDone(value);\n },\n (reason: unknown) => {\n if (finish()) setError({ message: messageOf(reason, failed), screen });\n },\n );\n },\n [failed],\n );\n\n const reset = (): void => {\n generation.current += 1;\n pending.current = false;\n if (busy) setBusy(null);\n if (error) setError(null);\n };\n\n return {\n busy,\n error,\n isPending: () => pending.current,\n clearError: () => setError(null),\n settle,\n reset,\n };\n}\n\n/**\n * The run, restarted from the queue each time the resolver OPENS (intro or\n * not — a closed-and-reopened resolver never reports the previous run) and\n * each time it becomes ACTIVE (the intro is dropped). While active, each new queue\n * is reconciled into it during render (`syncRun`) rather than in an effect, so\n * no frame ever shows a step the queue has already dropped.\n */\nfunction useTrackedRun<I extends SequenceItem, R>(\n inputs: { open: boolean; active: boolean; queue: readonly I[] },\n onRestart: () => void,\n): { run: RunState<I, R>; update: (step: (run: RunState<I, R>) => RunState<I, R>) => void } {\n const { open, active, queue } = inputs;\n const [tracked, setTracked] = useState<Tracked<I, R>>(() => ({ run: startRun(queue), queue, active, open }));\n let current = tracked;\n if (active !== tracked.active || open !== tracked.open || queue !== tracked.queue) {\n const restart = (active && !tracked.active) || (open && !tracked.open);\n current = { run: restart ? startRun(queue) : syncRun(tracked.run, queue), queue, active, open };\n if (restart) onRestart();\n setTracked(current);\n }\n const update = useCallback((step: (run: RunState<I, R>) => RunState<I, R>) => {\n setTracked((prev) => ({ ...prev, run: step(prev.run) }));\n }, []);\n return { run: current.run, update };\n}\n\n/** The run's state and its verbs — the index/back/skip/done logic, once (FUT-3671). */\nexport function useSequenceRun<I extends SequenceItem, R>(inputs: RunInputs<I, R>): SequenceRun<I, R> {\n const { open, active, queue, onBack, failed } = inputs;\n const gate = useAsyncGate(failed);\n const { run, update } = useTrackedRun<I, R>({ open, active, queue }, gate.reset);\n const { settle, isPending, clearError } = gate;\n\n const onScreen = currentOf(run);\n const resolve = (result: R | PromiseLike<R>, options?: SequenceResolveOptions): void => {\n const also = options?.alsoResolved ?? 0;\n if (isPending() || !onScreen) return;\n if (isThenable(result)) {\n // The host's refetch may drop the entry before its write returns: keep\n // it on screen meanwhile, and answer THIS entry when it does.\n update((prev) => pinRun(prev, onScreen.key));\n settle(result, 'resolve', onScreen.key, (value) => update((prev) => resolveRun(prev, value, onScreen, also)));\n return;\n }\n clearError();\n update((prev) => resolveRun(prev, result, onScreen, also));\n };\n\n const skip = (): void => {\n if (isPending() || !onScreen) return;\n clearError();\n update((prev) => skipRun(prev, onScreen.key));\n };\n\n const back = (): void => {\n const last = previousOf(run);\n if (isPending() || !last) return;\n if (last.outcome === 'resolved' && onBack) {\n // `new Promise` so a handler that throws synchronously lands in the same\n // rejection path as one that rejects.\n const undo = new Promise<void>((done) => done(onBack(last.item, last.result)));\n settle(undo, 'back', screenOf(onScreen), () => update((prev) => backRun(prev, last.item.key)));\n return;\n }\n clearError();\n update((prev) => backRun(prev, last.item.key));\n };\n\n // An error belongs to the screen it was raised on: once a queue change (or\n // anything else) moves the run to another step, it no longer shows.\n const error = gate.error && gate.error.screen === screenOf(onScreen) ? gate.error.message : null;\n return { run, busy: gate.busy !== null, error, resolve, skip, back };\n}\n"],"mappings":"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","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/form/AddressAutocomplete/AddressAutocompleteField.tsx"],"sourcesContent":["import { EN_US_ADDRESS_AUTOCOMPLETE_COPY } from '../../../en-US.form';\nimport { resolveLabels } from '../../../utils/resolve-labels';\nimport Alert from '@mui/material/Alert/index.js';\nimport Autocomplete from '@mui/material/Autocomplete/index.js';\nimport Box from '@mui/material/Box/index.js';\nimport type { FC } from 'react';\nimport React from 'react';\n\nimport {\n addressOptionLabel,\n isSameAddressOption,\n MIN_QUERY_LENGTH,\n type ResolvedAddressProps,\n} from './AddressAutocomplete.helpers';\nimport type { AddressAutocompleteState } from './AddressAutocomplete.hooks';\nimport { AddressInputField } from './AddressInputField';\nimport { AddressOption } from './AddressOption';\nimport { AddressSuggestionsPaper } from './AddressSuggestionsPaper';\n\nexport type AddressAutocompleteFieldProps = ResolvedAddressProps & AddressAutocompleteState;\n\n// The live field, rendered once Google Maps (or the mock stand-in) is ready.\nexport const AddressAutocompleteField: FC<AddressAutocompleteFieldProps> = ({\n copy,\n variant,\n label,\n placeholder,\n icon,\n floating,\n error,\n helperText,\n disabled,\n required,\n fullWidth,\n getCurrentLocation,\n inputValue,\n options,\n loading,\n apiError,\n handleInputChange,\n handleSelect,\n handleGetCurrentLocation,\n}) => {\n const text = resolveLabels(EN_US_ADDRESS_AUTOCOMPLETE_COPY, copy);\n return (\n <Box data-testid=\"address-autocomplete-container\">\n <Autocomplete\n freeSolo\n options={options}\n inputValue={inputValue}\n onInputChange={handleInputChange}\n onChange={handleSelect}\n loading={loading}\n loadingText={text.loadingSuggestions}\n disabled={disabled}\n fullWidth={fullWidth}\n getOptionLabel={addressOptionLabel}\n isOptionEqualToValue={isSameAddressOption}\n PaperComponent={AddressSuggestionsPaper}\n noOptionsText={\n inputValue.length <= MIN_QUERY_LENGTH ? text.typeToSearch : text.noAddressesFound\n }\n renderOption={({ key, ...optionProps }, option, state) => (\n <AddressOption\n key={key}\n optionProps={optionProps}\n option={option}\n index={state.index}\n />\n )}\n renderInput={(params) => (\n <AddressInputField\n copy={copy}\n params={params}\n addressVariant={variant}\n label={floating ? undefined : label}\n placeholder={placeholder}\n icon={icon}\n error={error || !!apiError}\n helperText={apiError || helperText}\n required={required}\n disabled={disabled}\n loading={loading}\n showCurrentLocation={getCurrentLocation && !loading}\n onGetCurrentLocation={handleGetCurrentLocation}\n />\n )}\n />\n {apiError && (\n <Alert severity=\"warning\" sx={{ mt: 1 }}>\n {apiError}\n </Alert>\n )}\n </Box>\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAEA,OAAO,WAAW;AAClB,OAAO,kBAAkB;AACzB,OAAO,SAAS;AAyCd,SAkBM,KAlBN;AAvBK,IAAM,2BAA8D,CAAC;AAAA,EAC1E;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAAM;AACJ,QAAM,OAAO,cAAc,iCAAiC,IAAI;AAChE,SACA,qBAAC,OAAI,eAAY,kCACf;AAAA;AAAA,MAAC;AAAA;AAAA,QACC,UAAQ;AAAA,QACR;AAAA,QACA;AAAA,QACA,eAAe;AAAA,QACf,UAAU;AAAA,QACV;AAAA,QACA,aAAa,KAAK;AAAA,QAClB;AAAA,QACA;AAAA,QACA,gBAAgB;AAAA,QAChB,sBAAsB;AAAA,QACtB,gBAAgB;AAAA,QAChB,eACE,WAAW,UAAU,mBAAmB,KAAK,eAAe,KAAK;AAAA,QAEnE,cAAc,CAAC,EAAE,KAAK,GAAG,YAAY,GAAG,QAAQ,UAC9C;AAAA,UAAC;AAAA;AAAA,YAEC;AAAA,YACA;AAAA,YACA,OAAO,MAAM;AAAA;AAAA,UAHR;AAAA,QAIP;AAAA,QAEF,aAAa,CAAC,WACZ;AAAA,UAAC;AAAA;AAAA,YACC;AAAA,YACA;AAAA,YACA,gBAAgB;AAAA,YAChB,OAAO,WAAW,SAAY;AAAA,YAC9B;AAAA,YACA;AAAA,YACA,OAAO,SAAS,CAAC,CAAC;AAAA,YAClB,YAAY,YAAY;AAAA,YACxB;AAAA,YACA;AAAA,YACA;AAAA,YACA,qBAAqB,sBAAsB,CAAC;AAAA,YAC5C,sBAAsB;AAAA;AAAA,QACxB;AAAA;AAAA,IAEJ;AAAA,IACC,YACC,oBAAC,SAAM,UAAS,WAAU,IAAI,EAAE,IAAI,EAAE,GACnC,oBACH;AAAA,KAEJ;AAEF;","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/feedback/SequenceResolver/sequence-model.ts"],"sourcesContent":["import type { SequenceItem, SequenceSummary } from './SequenceResolver.types';\n\n/**\n * THE RUN, as pure data: what was answered or passed over, and what is ahead.\n *\n * The queue is the host's live data, not a snapshot. An answer can resolve\n * other entries with it (one limit saved for every sibling of a product), a\n * refetch can drop the entry just answered, and a realtime push can add one —\n * so the run is NOT an index into the queue. It keeps the visited steps in the\n * order they were visited, and the steps still ahead in the order the queue\n * gave them; `syncRun` reconciles the second list with each new queue.\n */\n\n/** How a visited step was left. */\nexport type Visit<I extends SequenceItem, R> =\n | { item: I; outcome: 'resolved'; result: R; alsoResolved?: number }\n | { item: I; outcome: 'skipped' };\n\nexport interface RunState<I extends SequenceItem, R> {\n /** Every step left behind, oldest first. Back pops the last one. */\n visits: Visit<I, R>[];\n /** The steps still ahead; the first is on screen. Empty means the end screen. */\n ahead: I[];\n /**\n * The step whose answer is being written, kept ahead even while the queue\n * lacks it (the host's refetch may drop it before the write returns).\n * Cleared when the run leaves it.\n */\n pinned?: string;\n /**\n * The steps Back returned to, kept ahead while the queue lacks them (the\n * host's inverse ran, its refetch has not put the entry back yet). A SET:\n * two Backs before one refetch hold both. A key leaves it when the queue\n * confirms the entry or the run leaves the step.\n */\n held: readonly string[];\n}\n\nfunction dedupe<I extends SequenceItem>(items: readonly I[], skip: ReadonlySet<string>): I[] {\n const seen = new Set(skip);\n const out: I[] = [];\n for (const item of items) {\n if (seen.has(item.key)) continue;\n seen.add(item.key);\n out.push(item);\n }\n return out;\n}\n\n/** A fresh run over `queue` (a repeated key counts once). */\nexport function startRun<I extends SequenceItem, R>(queue: readonly I[]): RunState<I, R> {\n return { visits: [], ahead: dedupe(queue, new Set()), held: [] };\n}\n\n/**\n * The run against a new queue.\n *\n * - A step ahead that the queue no longer has is dropped — it was resolved\n * elsewhere (siblings answered together, another device) — unless it is\n * `pinned` or `held`.\n * - A held key the queue has again is released: the host confirmed it.\n * - A queue entry the run has not seen is appended, in queue order.\n * - The entries kept are refreshed from the queue (same key, newer data).\n * - Visited steps are history and never change.\n */\nexport function syncRun<I extends SequenceItem, R>(\n state: RunState<I, R>,\n queue: readonly I[],\n): RunState<I, R> {\n const fresh = new Map(queue.map((item) => [item.key, item] as const));\n const kept = state.ahead.flatMap((item) => {\n const next = fresh.get(item.key);\n if (next) return [next];\n return item.key === state.pinned || state.held.includes(item.key) ? [item] : [];\n });\n const known = new Set([...state.visits.map((visit) => visit.item.key), ...kept.map((item) => item.key)]);\n const held = state.held.filter((key) => !fresh.has(key));\n return { ...state, ahead: [...kept, ...dedupe(queue, known)], held };\n}\n\n/** Keep `key` ahead whatever the queue says, until the run moves on (see {@link RunState.pinned}). */\nexport function pinRun<I extends SequenceItem, R>(state: RunState<I, R>, key: string): RunState<I, R> {\n return { ...state, pinned: key };\n}\n\n/** The step on screen, or `undefined` at the end. */\nexport function currentOf<I extends SequenceItem, R>(state: RunState<I, R>): I | undefined {\n return state.ahead[0];\n}\n\n/** The pins once the run leaves `key`: neither the write pin nor the held set keeps it. */\nfunction leaving<I extends SequenceItem, R>(state: RunState<I, R>, key: string): Pick<RunState<I, R>, 'pinned' | 'held'> {\n return {\n pinned: state.pinned === key ? undefined : state.pinned,\n held: state.held.filter((held) => held !== key),\n };\n}\n\n/**\n * Answer `item` — the step that was on screen when the answer began (a pending\n * write keeps it there, see {@link RunState.pinned}). An item no longer ahead\n * was already answered (a double call): a no-op, as at the end.\n */\nexport function resolveRun<I extends SequenceItem, R>(\n state: RunState<I, R>,\n result: R,\n item: I | undefined = state.ahead[0],\n alsoResolved = 0,\n): RunState<I, R> {\n if (!item || !state.ahead.some((entry) => entry.key === item.key)) return state;\n const visit: Visit<I, R> = alsoResolved > 0 ? { item, outcome: 'resolved', result, alsoResolved } : { item, outcome: 'resolved', result };\n return {\n visits: [...state.visits, visit],\n ahead: state.ahead.filter((entry) => entry.key !== item.key),\n ...leaving(state, item.key),\n };\n}\n\n/**\n * Pass over the step on screen. Given the `key` that was on screen when the\n * skip began, a step that has moved on since (a double call) is left alone. At\n * the end it is a no-op.\n */\nexport function skipRun<I extends SequenceItem, R>(state: RunState<I, R>, key?: string): RunState<I, R> {\n const [item, ...rest] = state.ahead;\n if (!item || (key !== undefined && item.key !== key)) return state;\n return { visits: [...state.visits, { item, outcome: 'skipped' }], ahead: rest, ...leaving(state, item.key) };\n}\n\n/** The step Back would return to, or `undefined` on the first one. */\nexport function previousOf<I extends SequenceItem, R>(state: RunState<I, R>): Visit<I, R> | undefined {\n return state.visits[state.visits.length - 1];\n}\n\n/**\n * Return to the previous step: it is on screen again, ahead of the rest, and\n * held until the queue confirms it. Given the `key` Back began from, a step\n * already returned to (a double call) is left alone.\n */\nexport function backRun<I extends SequenceItem, R>(state: RunState<I, R>, key?: string): RunState<I, R> {\n const last = previousOf(state);\n if (!last || (key !== undefined && last.item.key !== key)) return state;\n const ahead = state.ahead.filter((item) => item.key !== last.item.key);\n // The step being left keeps no write pin: `pinned` is for a write in flight\n // on the step ON SCREEN, and a failed one must not hold an entry the\n // host's refetch has since dropped (it was applied server-side).\n const leftKey = state.ahead[0]?.key;\n return {\n ...state,\n pinned: state.pinned === leftKey ? undefined : state.pinned,\n visits: state.visits.slice(0, -1),\n ahead: [last.item, ...ahead],\n held: [...state.held.filter((held) => held !== last.item.key), last.item.key],\n };\n}\n\n/** Where the run stands. */\nexport function summaryOf<I extends SequenceItem, R>(state: RunState<I, R>): SequenceSummary {\n const resolved = state.visits.filter((visit) => visit.outcome === 'resolved').length;\n const alsoResolved = state.visits.reduce(\n (sum, visit) => sum + (visit.outcome === 'resolved' ? Math.max(0, visit.alsoResolved ?? 0) : 0),\n 0,\n );\n return {\n alsoResolved,\n resolved,\n skipped: state.visits.length - resolved,\n total: state.visits.length + state.ahead.length,\n };\n}\n\n/** 1-based position of the step on screen (`total + 1` never happens: at the end it is `total`). */\nexport function positionOf<I extends SequenceItem, R>(state: RunState<I, R>): number {\n return Math.min(state.visits.length + 1, state.visits.length + state.ahead.length);\n}\n\n/** How far along, 0..100. An empty run is complete. */\nexport function progressOf<I extends SequenceItem, R>(state: RunState<I, R>): number {\n const total = state.visits.length + state.ahead.length;\n return total === 0 ? 100 : Math.round((state.visits.length / total) * 100);\n}\n"],"mappings":";AAsCA,SAAS,OAA+B,OAAqB,MAAgC;AAC3F,QAAM,OAAO,IAAI,IAAI,IAAI;AACzB,QAAM,MAAW,CAAC;AAClB,aAAW,QAAQ,OAAO;AACxB,QAAI,KAAK,IAAI,KAAK,GAAG,EAAG;AACxB,SAAK,IAAI,KAAK,GAAG;AACjB,QAAI,KAAK,IAAI;AAAA,EACf;AACA,SAAO;AACT;AAGO,SAAS,SAAoC,OAAqC;AACvF,SAAO,EAAE,QAAQ,CAAC,GAAG,OAAO,OAAO,OAAO,oBAAI,IAAI,CAAC,GAAG,MAAM,CAAC,EAAE;AACjE;AAaO,SAAS,QACd,OACA,OACgB;AAChB,QAAM,QAAQ,IAAI,IAAI,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,KAAK,IAAI,CAAU,CAAC;AACpE,QAAM,OAAO,MAAM,MAAM,QAAQ,CAAC,SAAS;AACzC,UAAM,OAAO,MAAM,IAAI,KAAK,GAAG;AAC/B,QAAI,KAAM,QAAO,CAAC,IAAI;AACtB,WAAO,KAAK,QAAQ,MAAM,UAAU,MAAM,KAAK,SAAS,KAAK,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC;AAAA,EAChF,CAAC;AACD,QAAM,QAAQ,oBAAI,IAAI,CAAC,GAAG,MAAM,OAAO,IAAI,CAAC,UAAU,MAAM,KAAK,GAAG,GAAG,GAAG,KAAK,IAAI,CAAC,SAAS,KAAK,GAAG,CAAC,CAAC;AACvG,QAAM,OAAO,MAAM,KAAK,OAAO,CAAC,QAAQ,CAAC,MAAM,IAAI,GAAG,CAAC;AACvD,SAAO,EAAE,GAAG,OAAO,OAAO,CAAC,GAAG,MAAM,GAAG,OAAO,OAAO,KAAK,CAAC,GAAG,KAAK;AACrE;AAGO,SAAS,OAAkC,OAAuB,KAA6B;AACpG,SAAO,EAAE,GAAG,OAAO,QAAQ,IAAI;AACjC;AAGO,SAAS,UAAqC,OAAsC;AACzF,SAAO,MAAM,MAAM,CAAC;AACtB;AAGA,SAAS,QAAmC,OAAuB,KAAsD;AACvH,SAAO;AAAA,IACL,QAAQ,MAAM,WAAW,MAAM,SAAY,MAAM;AAAA,IACjD,MAAM,MAAM,KAAK,OAAO,CAAC,SAAS,SAAS,GAAG;AAAA,EAChD;AACF;AAOO,SAAS,WACd,OACA,QACA,OAAsB,MAAM,MAAM,CAAC,GACnC,eAAe,GACC;AAChB,MAAI,CAAC,QAAQ,CAAC,MAAM,MAAM,KAAK,CAAC,UAAU,MAAM,QAAQ,KAAK,GAAG,EAAG,QAAO;AAC1E,QAAM,QAAqB,eAAe,IAAI,EAAE,MAAM,SAAS,YAAY,QAAQ,aAAa,IAAI,EAAE,MAAM,SAAS,YAAY,OAAO;AACxI,SAAO;AAAA,IACL,QAAQ,CAAC,GAAG,MAAM,QAAQ,KAAK;AAAA,IAC/B,OAAO,MAAM,MAAM,OAAO,CAAC,UAAU,MAAM,QAAQ,KAAK,GAAG;AAAA,IAC3D,GAAG,QAAQ,OAAO,KAAK,GAAG;AAAA,EAC5B;AACF;AAOO,SAAS,QAAmC,OAAuB,KAA8B;AACtG,QAAM,CAAC,MAAM,GAAG,IAAI,IAAI,MAAM;AAC9B,MAAI,CAAC,QAAS,QAAQ,UAAa,KAAK,QAAQ,IAAM,QAAO;AAC7D,SAAO,EAAE,QAAQ,CAAC,GAAG,MAAM,QAAQ,EAAE,MAAM,SAAS,UAAU,CAAC,GAAG,OAAO,MAAM,GAAG,QAAQ,OAAO,KAAK,GAAG,EAAE;AAC7G;AAGO,SAAS,WAAsC,OAAgD;AACpG,SAAO,MAAM,OAAO,MAAM,OAAO,SAAS,CAAC;AAC7C;AAOO,SAAS,QAAmC,OAAuB,KAA8B;AACtG,QAAM,OAAO,WAAW,KAAK;AAC7B,MAAI,CAAC,QAAS,QAAQ,UAAa,KAAK,KAAK,QAAQ,IAAM,QAAO;AAClE,QAAM,QAAQ,MAAM,MAAM,OAAO,CAAC,SAAS,KAAK,QAAQ,KAAK,KAAK,GAAG;AAIrE,QAAM,UAAU,MAAM,MAAM,CAAC,GAAG;AAChC,SAAO;AAAA,IACL,GAAG;AAAA,IACH,QAAQ,MAAM,WAAW,UAAU,SAAY,MAAM;AAAA,IACrD,QAAQ,MAAM,OAAO,MAAM,GAAG,EAAE;AAAA,IAChC,OAAO,CAAC,KAAK,MAAM,GAAG,KAAK;AAAA,IAC3B,MAAM,CAAC,GAAG,MAAM,KAAK,OAAO,CAAC,SAAS,SAAS,KAAK,KAAK,GAAG,GAAG,KAAK,KAAK,GAAG;AAAA,EAC9E;AACF;AAGO,SAAS,UAAqC,OAAwC;AAC3F,QAAM,WAAW,MAAM,OAAO,OAAO,CAAC,UAAU,MAAM,YAAY,UAAU,EAAE;AAC9E,QAAM,eAAe,MAAM,OAAO;AAAA,IAChC,CAAC,KAAK,UAAU,OAAO,MAAM,YAAY,aAAa,KAAK,IAAI,GAAG,MAAM,gBAAgB,CAAC,IAAI;AAAA,IAC7F;AAAA,EACF;AACA,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA,SAAS,MAAM,OAAO,SAAS;AAAA,IAC/B,OAAO,MAAM,OAAO,SAAS,MAAM,MAAM;AAAA,EAC3C;AACF;AAGO,SAAS,WAAsC,OAA+B;AACnF,SAAO,KAAK,IAAI,MAAM,OAAO,SAAS,GAAG,MAAM,OAAO,SAAS,MAAM,MAAM,MAAM;AACnF;AAGO,SAAS,WAAsC,OAA+B;AACnF,QAAM,QAAQ,MAAM,OAAO,SAAS,MAAM,MAAM;AAChD,SAAO,UAAU,IAAI,MAAM,KAAK,MAAO,MAAM,OAAO,SAAS,QAAS,GAAG;AAC3E;","names":[]}
@@ -1 +0,0 @@
1
- //# sourceMappingURL=chunk-ABRUOINB.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/form/AddressAutocomplete/AddressSuggestionsPaper.tsx"],"sourcesContent":["import type { PaperProps } from '@mui/material/Paper/index.js';\nimport Paper from '@mui/material/Paper/index.js';\nimport { alpha, useTheme } from '@mui/material/styles/index.js';\nimport type { FC } from 'react';\nimport React from 'react';\n\nimport { rem } from '../../../tokens/relative';\n\n// The dropdown surface, frosted to match the glass field.\nexport const AddressSuggestionsPaper: FC<PaperProps> = (props) => {\n const theme = useTheme();\n\n return (\n <Paper\n {...props}\n elevation={8}\n data-testid=\"address-suggestions-dropdown\"\n sx={{\n mt: 1,\n background: `linear-gradient(135deg, ${alpha(theme.palette.background.paper, 0.98)} 0%, ${alpha(theme.palette.background.paper, 0.95)} 100%)`,\n backdropFilter: `blur(${rem(theme, 20)})`,\n WebkitBackdropFilter: `blur(${rem(theme, 20)})`,\n border: `1px solid ${alpha(theme.palette.divider, 0.18)}`,\n }}\n />\n );\n};\n"],"mappings":";;;;;AACA,OAAO,WAAW;AAClB,SAAS,OAAO,gBAAgB;AAW5B;AAJG,IAAM,0BAA0C,CAAC,UAAU;AAChE,QAAM,QAAQ,SAAS;AAEvB,SACE;AAAA,IAAC;AAAA;AAAA,MACE,GAAG;AAAA,MACJ,WAAW;AAAA,MACX,eAAY;AAAA,MACZ,IAAI;AAAA,QACF,IAAI;AAAA,QACJ,YAAY,2BAA2B,MAAM,MAAM,QAAQ,WAAW,OAAO,IAAI,CAAC,QAAQ,MAAM,MAAM,QAAQ,WAAW,OAAO,IAAI,CAAC;AAAA,QACrI,gBAAgB,QAAQ,IAAI,OAAO,EAAE,CAAC;AAAA,QACtC,sBAAsB,QAAQ,IAAI,OAAO,EAAE,CAAC;AAAA,QAC5C,QAAQ,aAAa,MAAM,MAAM,QAAQ,SAAS,IAAI,CAAC;AAAA,MACzD;AAAA;AAAA,EACF;AAEJ;","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/form/Calendar/CalendarDayCell.tsx"],"sourcesContent":["import type { FC } from 'react';\nimport React from 'react';\n\nimport { isSameDay } from './Calendar.dates';\nimport { buildDayArgs } from './Calendar.selection';\nimport type { CalendarProps, DateRange, MonthMatrixDay, SelectionMode } from './Calendar.types';\nimport { CalendarDay } from './CalendarDay';\n\n// Everything a cell needs that is the same for every cell in the calendar.\nexport interface DayCellContext {\n selectionMode: SelectionMode;\n value: Date | null;\n range: DateRange;\n hoveredDate: Date | null;\n focusedDate: Date;\n today: Date;\n showOutsideDays: boolean;\n isDisabled: (date: Date) => boolean;\n renderDay?: CalendarProps['renderDay'];\n dayClassName?: CalendarProps['dayClassName'];\n onSelect: (date: Date) => void;\n onHover: (date: Date) => void;\n onHoverEnd: () => void;\n}\n\nexport const CalendarDayCell: FC<DayCellContext & { day: MonthMatrixDay }> = ({\n day,\n focusedDate,\n showOutsideDays,\n renderDay,\n dayClassName,\n onSelect,\n onHover,\n onHoverEnd,\n ...context\n}) => {\n const args = buildDayArgs({ day, ...context });\n\n if (renderDay) return <>{renderDay(args)}</>;\n\n return (\n <CalendarDay\n day={args}\n focused={isSameDay(args.date, focusedDate)}\n showOutsideDays={showOutsideDays}\n dayClassName={dayClassName}\n onSelect={onSelect}\n onHover={onHover}\n onHoverEnd={onHoverEnd}\n />\n );\n};\n"],"mappings":";;;;;;;;;;;AAsCwB;AAbjB,IAAM,kBAAgE,CAAC;AAAA,EAC5E;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM,OAAO,aAAa,EAAE,KAAK,GAAG,QAAQ,CAAC;AAE7C,MAAI,UAAW,QAAO,gCAAG,oBAAU,IAAI,GAAE;AAEzC,SACE;AAAA,IAAC;AAAA;AAAA,MACC,KAAK;AAAA,MACL,SAAS,UAAU,KAAK,MAAM,WAAW;AAAA,MACzC;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA,EACF;AAEJ;","names":[]}
@@ -1 +0,0 @@
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":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/feedback/SequenceResolver/SequenceResolver.metrics.ts"],"sourcesContent":["/**\n * THE RESOLVER'S NUMBERS — the approved prototype's, in px. The web reads\n * them through `rem`/`sxRem` so a density mode scales them (FUT-3671).\n */\nexport const SEQUENCE_METRICS = {\n /** Below this width the dialog is the inset bottom sheet, and targets are 44px+. */\n sheetBreakpoint: 'sm',\n /** The sheet never grows past this share of the viewport; the paper scrolls inside it. */\n sheetMaxHeightPercent: 95,\n /** The smallest a control may be below the sheet breakpoint, and the end screen's button everywhere. */\n touchTarget: 44,\n /** The intro's \"all in sequence\" button, at least. */\n startAllHeight: 48,\n /** Header icon button: 40px on a pointer, 44px on a phone. */\n closeSize: { pointer: 40, touch: 44 },\n /** The drag handle — decoration only, the sheet does not drag. */\n handle: { width: 40, height: 4 },\n title: 22,\n stepLabel: 13,\n categoryDescription: 13,\n categoryMinHeight: 56,\n countBadge: 32,\n listRadius: 12,\n doneIcon: 44,\n doneTitle: 20,\n} as const;\n"],"mappings":";AAIO,IAAM,mBAAmB;AAAA;AAAA,EAE9B,iBAAiB;AAAA;AAAA,EAEjB,uBAAuB;AAAA;AAAA,EAEvB,aAAa;AAAA;AAAA,EAEb,gBAAgB;AAAA;AAAA,EAEhB,WAAW,EAAE,SAAS,IAAI,OAAO,GAAG;AAAA;AAAA,EAEpC,QAAQ,EAAE,OAAO,IAAI,QAAQ,EAAE;AAAA,EAC/B,OAAO;AAAA,EACP,WAAW;AAAA,EACX,qBAAqB;AAAA,EACrB,mBAAmB;AAAA,EACnB,YAAY;AAAA,EACZ,YAAY;AAAA,EACZ,UAAU;AAAA,EACV,WAAW;AACb;","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/form/Calendar/CalendarDay.tsx"],"sourcesContent":["import type { SxProps, Theme } from '@mui/material/styles/index.js';\nimport Box from '@mui/material/Box/index.js';\nimport type { FC } from 'react';\nimport React from 'react';\n\nimport { rem, sxRem } from '../../../tokens/relative';\n\nimport type { DayRenderArgs } from './Calendar.types';\n\n/**\n * A day cell's LARGEST edge, 40 design px through the theme's type scale. The\n * cell is a square that fills its grid column up to this size, so the month\n * shrinks with its container instead of holding a fixed 304px floor (FUT-3861).\n */\nconst CELL_SIZE = sxRem(40);\n\ninterface DayState extends DayRenderArgs {\n outside: boolean;\n focused: boolean;\n}\n\n// Order matters: these land on the element in the order listed.\nconst CLASS_FLAGS: Array<[keyof DayState, string]> = [\n ['selected', 'selected'],\n ['inRange', 'in-range'],\n ['rangeStart', 'range-start'],\n ['rangeEnd', 'range-end'],\n ['disabled', 'disabled'],\n ['today', 'today'],\n ['outside', 'outside'],\n ['hovered', 'hovered'],\n ['focused', 'focused'],\n];\n\nconst dayClassNames = (state: DayState, custom?: string): string =>\n [\n 'calendar-day',\n ...CLASS_FLAGS.filter(([flag]) => state[flag]).map(([, name]) => name),\n ...(custom ? [custom] : []),\n ].join(' ');\n\nconst isEndpoint = (day: DayRenderArgs): boolean =>\n day.selected || day.rangeStart || day.rangeEnd;\n\nconst backgroundFor = (day: DayRenderArgs): string => {\n if (isEndpoint(day)) return 'primary.main';\n if (day.inRange || day.hovered) return 'primary.light';\n return 'transparent';\n};\n\nconst colorFor = (day: DayRenderArgs, visible: boolean): string => {\n if (isEndpoint(day)) return 'primary.contrastText';\n if (day.disabled) return 'text.disabled';\n // Outside days that are switched off still occupy the grid, they just have\n // nothing to show.\n if (!visible) return 'transparent';\n return 'text.primary';\n};\n\nconst hoverBackgroundFor = (day: DayRenderArgs): string | undefined => {\n if (day.disabled) return undefined;\n return day.selected ? 'primary.dark' : 'action.hover';\n};\n\nconst dayCellSx = (day: DayRenderArgs, visible: boolean): SxProps<Theme> => ({\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n // 40 is the size it ASKS for, so the month's intrinsic width stays 304 and a\n // shrink-wrapping parent (the picker is inline-flex) still sizes to it; the\n // column's `minmax(0, 1fr)` and this `maxWidth` let it give way below that.\n width: CELL_SIZE,\n maxWidth: '100%',\n aspectRatio: '1 / 1',\n justifySelf: 'center',\n boxSizing: 'border-box',\n padding: 0,\n border: 'none',\n borderRadius: 1,\n cursor: day.disabled ? 'not-allowed' : 'pointer',\n backgroundColor: backgroundFor(day),\n color: colorFor(day, visible),\n opacity: !day.inCurrentMonth && visible ? 0.5 : 1,\n fontWeight: day.today ? 'bold' : 'normal',\n '&:hover': {\n backgroundColor: hoverBackgroundFor(day),\n },\n '&:focus': {\n outline: (theme: Theme) => `${rem(theme, 2)} solid`,\n outlineColor: 'primary.main',\n outlineOffset: sxRem(1),\n },\n});\n\nexport interface CalendarDayProps {\n day: DayRenderArgs;\n focused: boolean;\n showOutsideDays: boolean;\n dayClassName?: (args: DayRenderArgs) => string;\n onSelect: (date: Date) => void;\n onHover: (date: Date) => void;\n onHoverEnd: () => void;\n}\n\nexport const CalendarDay: FC<CalendarDayProps> = ({\n day,\n focused,\n showOutsideDays,\n dayClassName,\n onSelect,\n onHover,\n onHoverEnd,\n}) => {\n const visible = day.inCurrentMonth || showOutsideDays;\n const state: DayState = { ...day, outside: !day.inCurrentMonth, focused };\n\n return (\n <Box\n component=\"button\"\n role=\"gridcell\"\n tabIndex={focused ? 0 : -1}\n aria-selected={day.selected}\n aria-disabled={day.disabled}\n aria-current={day.today ? 'date' : undefined}\n className={dayClassNames(state, dayClassName?.(day))}\n data-testid={`calendar-date-${day.date.getDate()}`}\n onClick={() => onSelect(day.date)}\n onMouseEnter={() => onHover(day.date)}\n onMouseLeave={onHoverEnd}\n sx={dayCellSx(day, visible)}\n >\n {day.selected && (\n <Box component=\"span\" data-testid=\"calendar-selected-date\" sx={{ display: 'none' }} />\n )}\n {day.today && (\n <Box component=\"span\" data-testid=\"calendar-today\" sx={{ display: 'none' }} />\n )}\n {visible ? day.date.getDate() : ''}\n </Box>\n );\n};\n"],"mappings":"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","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/form/Calendar/CalendarMonth.tsx"],"sourcesContent":["import ChevronLeft from '@mui/icons-material/ChevronLeft';\nimport ChevronRight from '@mui/icons-material/ChevronRight';\nimport Box from '@mui/material/Box/index.js';\nimport IconButton from '@mui/material/IconButton/index.js';\nimport Typography from '@mui/material/Typography/index.js';\nimport type { FC } from 'react';\nimport React from 'react';\n\nimport { sxRem } from '../../../tokens/relative';\n\nimport { getMonthName } from './Calendar.dates';\nimport type { CalendarProps, MonthMatrix } from './Calendar.types';\nimport type { DayCellContext } from './CalendarDayCell';\nimport { CalendarDayCell } from './CalendarDayCell';\n\n/** The nav spacer's width and the weekday row's height, 32 design px through the type scale. */\nconst SPACER_WIDTH = sxRem(32);\n\n// `minmax(0, 1fr)`, not `1fr`: a bare `1fr` keeps each column at least its\n// content's width, which is what held the grid at 304px (FUT-3861).\nconst GRID_SX = { display: 'grid', gridTemplateColumns: 'repeat(7, minmax(0, 1fr))', gap: 0.5 } as const;\n\n/**\n * A month takes the room it is given, from nothing up to seven full cells and\n * their gaps (7 × 40 + 6 × 4 design px). Months side by side keep a 280 basis,\n * so a multi-month calendar still wraps rather than squeezing every month.\n */\nexport const MONTH_SX = { flex: `1 1 ${sxRem(280)}`, minWidth: 0, maxWidth: sxRem(304) } as const;\n\n// Only the outermost months carry arrows; the ones between get a spacer so their\n// titles stay centred.\nconst MonthNavHeader: FC<{\n title: React.ReactNode;\n showPrevious: boolean;\n showNext: boolean;\n onPreviousMonth: () => void;\n onNextMonth: () => void;\n}> = ({ title, showPrevious, showNext, onPreviousMonth, onNextMonth }) => (\n <Box\n sx={{ display: 'flex', alignItems: 'center', justifyContent: 'space-between', mb: 2 }}\n data-testid=\"calendar-header\"\n >\n {showPrevious && (\n <IconButton onClick={onPreviousMonth} size=\"small\" data-testid=\"calendar-prev-month\">\n <ChevronLeft />\n </IconButton>\n )}\n\n <Typography\n variant=\"h6\"\n component=\"h2\"\n sx={{ fontWeight: 'bold', flex: 1, textAlign: 'center' }}\n >\n {title}\n </Typography>\n\n {showNext && (\n <IconButton onClick={onNextMonth} size=\"small\" data-testid=\"calendar-next-month\">\n <ChevronRight />\n </IconButton>\n )}\n\n {!showPrevious && !showNext && <Box sx={{ width: SPACER_WIDTH }} />}\n </Box>\n);\n\nconst WeekdayHeader: FC<{ weekdayNames: string[] }> = ({ weekdayNames }) => (\n <Box sx={{ ...GRID_SX, mb: 1 }}>\n {weekdayNames.map((weekday, index) => (\n <Box\n // Narrow weekday names repeat within a week ('S', 'T'), so position is\n // the only stable key here.\n key={`weekday-${index}`}\n role=\"columnheader\"\n data-testid={`calendar-weekday-${index}`}\n sx={{\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n height: SPACER_WIDTH,\n fontSize: sxRem(14),\n fontWeight: 'bold',\n color: 'text.secondary',\n }}\n >\n {weekday}\n </Box>\n ))}\n </Box>\n);\n\n/** The weekday row and the day grid under a month's caption. */\nexport const MonthDays: FC<{\n matrix: MonthMatrix;\n monthIndex: number;\n weekdayNames: string[];\n dayContext: DayCellContext;\n}> = ({ matrix, monthIndex, weekdayNames, dayContext }) => (\n <>\n <WeekdayHeader weekdayNames={weekdayNames} />\n\n <Box\n role=\"grid\"\n aria-labelledby={`month-${monthIndex}`}\n data-testid=\"calendar-grid\"\n sx={GRID_SX}\n >\n {matrix.weeks.flat().map((day) => (\n <CalendarDayCell key={day.key} day={day} {...dayContext} />\n ))}\n </Box>\n </>\n);\n\nexport interface CalendarMonthProps {\n matrix: MonthMatrix;\n monthIndex: number;\n monthsToShow: number;\n locale: string;\n weekdayNames: string[];\n renderHeader?: CalendarProps['renderHeader'];\n onPreviousMonth: () => void;\n onNextMonth: () => void;\n dayContext: DayCellContext;\n}\n\nexport const CalendarMonth: FC<CalendarMonthProps> = ({\n matrix,\n monthIndex,\n monthsToShow,\n locale,\n weekdayNames,\n renderHeader,\n onPreviousMonth,\n onNextMonth,\n dayContext,\n}) => {\n const monthName = getMonthName(matrix.month, matrix.year, locale);\n const title = renderHeader ? renderHeader({ month: matrix.month, year: matrix.year }) : monthName;\n\n return (\n /* The month is addressable by its position, because in a multi-month\n calendar every day number appears once PER MONTH — `calendar-date-5` is\n January's 5th and February's. Without a per-month hook a test can only\n reach a day positionally, which is exactly what the flakiness gate\n refuses. Additive: `calendar-grid` below is unchanged. */\n <Box sx={MONTH_SX} data-testid={`calendar-month-${monthIndex}`}>\n <MonthNavHeader\n title={title}\n showPrevious={monthIndex === 0}\n showNext={monthIndex === monthsToShow - 1}\n onPreviousMonth={onPreviousMonth}\n onNextMonth={onNextMonth}\n />\n\n <MonthDays\n matrix={matrix}\n monthIndex={monthIndex}\n weekdayNames={weekdayNames}\n dayContext={dayContext}\n />\n </Box>\n );\n};\n"],"mappings":"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","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/feedback/SequenceResolver/SequenceResolver.parts.tsx"],"sourcesContent":["import ChevronLeftIcon from '@mui/icons-material/ChevronLeft';\nimport ChevronRightIcon from '@mui/icons-material/ChevronRight';\nimport CheckCircleOutlineIcon from '@mui/icons-material/CheckCircleOutline';\nimport CloseIcon from '@mui/icons-material/Close';\nimport Box from '@mui/material/Box/index.js';\nimport ButtonBase from '@mui/material/ButtonBase/index.js';\nimport IconButton from '@mui/material/IconButton/index.js';\nimport Typography from '@mui/material/Typography/index.js';\nimport React, { useEffect, useRef } from 'react';\n\nimport { Alert } from '../../data-display/Alert';\nimport { Progress } from '../../data-display/Progress';\nimport { Button } from '../../form/Button';\nimport {\n actionSx,\n backButtonSx,\n categoryDescriptionSx,\n categoryRowSx,\n categoryTextSx,\n closeButtonSx,\n countBadgeSx,\n doneConfirmSx,\n doneIconSx,\n doneSx,\n doneTitleSx,\n footerSx,\n handleSx,\n headerStartSx,\n headerSx,\n introListSx,\n stepLabelSx,\n startAllSx,\n tertiarySx,\n titleSx,\n} from './SequenceResolver.styles';\nimport type { SequenceAction, SequenceDone, SequenceIntro, SequenceStep } from './SequenceResolver.types';\n\ninterface HeaderProps {\n touch: boolean;\n label: string;\n /** Absent: no back button (intro, first step, or the host turned it off). */\n back?: { label: string; accessible?: string; onClick: () => void; disabled: boolean };\n closeLabel: string;\n onClose: () => void;\n progress: number;\n progressLabel: string;\n testId: string;\n}\n\n/** The drag handle (phone), the header row and the progress bar. */\nexport function SequenceHeader(props: HeaderProps): React.JSX.Element {\n const { touch, label, back, closeLabel, onClose, progress, progressLabel, testId } = props;\n return (\n <>\n {touch ? <Box aria-hidden sx={handleSx} data-testid={`${testId}-handle`} /> : null}\n <Box sx={headerSx}>\n <Box sx={headerStartSx}>\n {back ? (\n <Button\n variant=\"text\"\n color=\"primary\"\n size=\"md\"\n icon={<ChevronLeftIcon />}\n aria-label={back.accessible}\n onClick={back.onClick}\n disabled={back.disabled}\n sx={backButtonSx(touch)}\n dataTestId={`${testId}-back`}\n >\n {back.label}\n </Button>\n ) : null}\n <Typography component=\"span\" sx={stepLabelSx} data-testid={`${testId}-step-label`}>\n {label}\n </Typography>\n </Box>\n <IconButton aria-label={closeLabel} onClick={onClose} sx={closeButtonSx(touch)} data-testid={`${testId}-close`}>\n <CloseIcon />\n </IconButton>\n </Box>\n <Progress\n variant=\"linear\"\n size=\"md\"\n color=\"warning\"\n value={progress}\n aria-label={progressLabel}\n dataTestId={`${testId}-progress`}\n />\n </>\n );\n}\n\n/**\n * Moves focus to `target` (else `fallback`) whenever `screenKey` changes — and\n * on mount, which happens inside the dialog's portal, before MUI's focus trap\n * looks: finding focus already inside, the trap and `focusDialogOnEntered`\n * both leave it there.\n */\nexport function useFocusOnScreen(\n screenKey: string,\n target: React.RefObject<HTMLElement | null>,\n fallback: React.RefObject<HTMLElement | null>,\n): void {\n useEffect(() => {\n (target.current ?? fallback.current)?.focus();\n }, [screenKey, target, fallback]);\n}\n\n/**\n * A button that disables itself under the pointer drops focus to the page\n * behind the dialog. While busy, focus that fell out lands on the step body\n * (`aria-busy`) instead, so a screen reader stays in the dialog.\n */\nfunction useKeepFocusWhileBusy(busy: boolean, body: React.RefObject<HTMLElement | null>): void {\n useEffect(() => {\n if (!busy) return undefined;\n const rescue = (): void => {\n const node = body.current;\n const active = node?.ownerDocument.activeElement;\n if (node && (!active || active === node.ownerDocument.body)) node.focus();\n };\n rescue();\n const frame = requestAnimationFrame(rescue);\n return () => cancelAnimationFrame(frame);\n }, [busy, body]);\n}\n\ninterface IntroProps {\n intro: SequenceIntro;\n titleId: string;\n testId: string;\n screenKey: string;\n}\n\n/** The kinds with their counts, and \"resolve them all\". */\nexport function SequenceIntroBody({ intro, titleId, testId, screenKey }: IntroProps): React.JSX.Element {\n const titleRef = useRef<HTMLHeadingElement | null>(null);\n useFocusOnScreen(screenKey, titleRef, titleRef);\n const last = intro.categories.length - 1;\n return (\n <>\n <Box sx={{ display: 'flex', flexDirection: 'column', gap: 0.5 }}>\n <Typography component=\"h2\" id={titleId} tabIndex={-1} ref={titleRef} sx={titleSx}>\n {intro.title}\n </Typography>\n {intro.description ? (\n <Typography variant=\"body2\" color=\"text.secondary\">\n {intro.description}\n </Typography>\n ) : null}\n </Box>\n <Box component=\"ul\" sx={introListSx}>\n {intro.categories.map((category, index) => (\n <li key={`${index}-${category.label}`}>\n <ButtonBase\n onClick={category.onPick}\n sx={categoryRowSx(index === last)}\n data-testid={`${testId}-category-${index}`}\n >\n <Box component=\"span\" sx={countBadgeSx}>\n {category.count}\n </Box>\n <Box component=\"span\" sx={categoryTextSx}>\n <Typography component=\"span\" variant=\"body2\" fontWeight={500}>\n {category.label}\n </Typography>\n {category.description ? (\n <Typography component=\"span\" sx={categoryDescriptionSx}>\n {category.description}\n </Typography>\n ) : null}\n </Box>\n <ChevronRightIcon aria-hidden sx={{ color: 'text.secondary' }} />\n </ButtonBase>\n </li>\n ))}\n </Box>\n <Button\n variant=\"solid\"\n color=\"primary\"\n size=\"lg\"\n fullWidth\n onClick={intro.onStartAll}\n dataTestId={`${testId}-start-all`}\n sx={startAllSx}\n >\n {intro.startAllLabel}\n </Button>\n </>\n );\n}\n\ninterface StepProps {\n step: SequenceStep;\n /** The default secondary: skip. */\n skip: SequenceAction;\n busy: boolean;\n error: string | null;\n touch: boolean;\n testId: string;\n screenKey: string;\n titleRef: React.RefObject<HTMLElement | null>;\n}\n\nfunction ActionButton({\n action,\n busy,\n touch,\n variant,\n testId,\n}: {\n action: SequenceAction;\n busy: boolean;\n touch: boolean;\n variant: 'solid' | 'outline' | 'text';\n testId: string;\n}): React.JSX.Element {\n return (\n <Button\n variant={variant}\n color={variant === 'outline' ? 'neutral' : 'primary'}\n size=\"md\"\n onClick={action.onClick}\n disabled={busy || action.disabled}\n dataTestId={testId}\n sx={variant === 'text' ? tertiarySx(touch) : actionSx(touch)}\n >\n {action.label}\n </Button>\n );\n}\n\n/** The host's body, its error, the tertiary text button and the footer. */\nexport function SequenceStepBody(props: StepProps): React.JSX.Element {\n const { step, skip, busy, error, touch, testId, screenKey, titleRef } = props;\n const bodyRef = useRef<HTMLDivElement | null>(null);\n useFocusOnScreen(screenKey, titleRef, bodyRef);\n useKeepFocusWhileBusy(busy, bodyRef);\n const secondary = step.secondary === false ? undefined : (step.secondary ?? skip);\n const hasFooter = Boolean(secondary || step.primary);\n return (\n <>\n <Box ref={bodyRef} tabIndex={-1} aria-busy={busy} sx={{ outline: 'none', minWidth: 0 }}>\n {step.content}\n </Box>\n {error ? (\n <Alert variant=\"danger\" announce=\"assertive\" description={error} dataTestId={`${testId}-error`} />\n ) : null}\n {step.tertiary ? (\n <ActionButton action={step.tertiary} busy={busy} touch={touch} variant=\"text\" testId={`${testId}-tertiary`} />\n ) : null}\n {hasFooter ? (\n <Box sx={footerSx(touch, step.footer ?? 'end')} data-testid={`${testId}-footer`}>\n {secondary ? (\n <ActionButton action={secondary} busy={busy} touch={touch} variant=\"outline\" testId={`${testId}-secondary`} />\n ) : null}\n {step.primary ? (\n <ActionButton action={step.primary} busy={busy} touch={touch} variant=\"solid\" testId={`${testId}-primary`} />\n ) : null}\n </Box>\n ) : null}\n </>\n );\n}\n\ninterface DoneProps {\n done: SequenceDone;\n titleId: string;\n error: string | null;\n touch: boolean;\n onConfirm: () => void;\n testId: string;\n screenKey: string;\n}\n\n/** The end screen: a check, the host's title and sentence, one button that closes. */\nexport function SequenceDoneBody({ done, titleId, error, touch, onConfirm, testId, screenKey }: DoneProps): React.JSX.Element {\n const titleRef = useRef<HTMLHeadingElement | null>(null);\n useFocusOnScreen(screenKey, titleRef, titleRef);\n return (\n <Box sx={doneSx} data-testid={`${testId}-done`}>\n <CheckCircleOutlineIcon aria-hidden sx={doneIconSx} />\n <Typography component=\"h2\" id={titleId} tabIndex={-1} ref={titleRef} sx={doneTitleSx}>\n {done.title}\n </Typography>\n {done.description ? (\n <Typography variant=\"body2\" color=\"text.secondary\">\n {done.description}\n </Typography>\n ) : null}\n {error ? (\n <Alert variant=\"danger\" announce=\"assertive\" description={error} dataTestId={`${testId}-error`} />\n ) : null}\n <Button\n variant=\"solid\"\n color=\"primary\"\n size=\"md\"\n fullWidth={touch}\n onClick={onConfirm}\n dataTestId={`${testId}-done-confirm`}\n sx={doneConfirmSx()}\n >\n {done.confirmLabel}\n </Button>\n </Box>\n );\n}\n"],"mappings":"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","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/en-US.labels.ts"],"sourcesContent":["/**\n * The en-US labels pack — and, unlike the other en-US packs, the components'\n * own fallback: each `labels` prop is optional, and this is what a host that\n * passes nothing has always rendered, kept word for word (including the\n * lower-case `close`/`loading` names tests already query by).\n */\nimport type { UiLabels } from './copy/labels';\n\nexport const EN_US_UI_LABELS: UiLabels = {\n common: {\n loading: \"loading\",\n close: \"close\",\n delete: \"delete\",\n },\n stepper: {\n step: (position, label) => `Step ${position}: ${label}`,\n optional: \"optional\",\n completed: \"completed\",\n current: \"current\",\n },\n timeline: {\n expandDetails: \"Expand item details\",\n collapseDetails: \"Collapse item details\",\n item: (title) => `Timeline item: ${title}`,\n },\n lazyImage: {\n loadingAlt: (alt) => `${alt} (loading)`,\n fallbackAlt: (alt) => `${alt} (fallback)`,\n },\n sonner: {\n hiddenCount: (count) => `+${count} more`,\n },\n richTextEditor: {\n placeholder: \"Start typing...\",\n ariaLabel: \"Rich text editor\",\n listItem: \"List item\",\n bold: \"Bold\",\n italic: \"Italic\",\n underline: \"Underline\",\n strikethrough: \"Strikethrough\",\n numberedList: \"Numbered List\",\n bulletedList: \"Bulleted List\",\n insertLink: \"Insert Link\",\n insertImage: \"Insert Image\",\n codeBlock: \"Code Block\",\n quote: \"Quote\",\n linkPrompt: \"Enter URL:\",\n imagePrompt: \"Enter image URL:\",\n },\n table: {\n sortBy: (header) => `Sort by ${header}`,\n selectRow: (rowNumber) => `select row ${rowNumber}`,\n selectAllRows: \"select all\",\n },\n code: {\n copy: \"Copy code\",\n copied: \"Copied!\",\n },\n contentToolbar: {\n gridView: \"Grid View\",\n listView: \"List View\",\n openFilters: \"Open filters\",\n closeFilters: \"Close filters\",\n filters: \"Filters\",\n all: \"All\",\n search: \"Search…\",\n noResults: \"No results\",\n },\n dashboard: {\n breadcrumb: \"breadcrumb\",\n moreFilters: \"More filters\",\n },\n navigationMenu: {\n collapse: \"Collapse\",\n expand: \"Expand\",\n },\n workflowStep: {\n step: (position, title) => `Step ${position}: ${title}`,\n progress: (position, total) => `Step ${position} of ${total}`,\n },\n alertDialog: {\n cancel: \"Cancel\",\n confirm: \"Confirm\",\n },\n avatar: {\n name: \"Avatar\",\n },\n emptyState: {\n refresh: \"Refresh\",\n create: \"Create New\",\n },\n errorState: {\n retry: \"Retry\",\n },\n loadingState: {\n skeleton: \"Loading content\",\n spinner: \"Loading\",\n },\n stackedModal: {\n loading: \"Loading...\",\n },\n command: {\n placeholder: \"Type a command or search...\",\n empty: \"No results found\",\n loading: \"Loading...\",\n },\n formErrorSnackbar: {\n message: \"Please fix the highlighted fields and try again.\",\n },\n columnsMenu: {\n title: \"Columns\",\n toggle: \"Toggle columns\",\n },\n drawer: {\n close: \"Close drawer\",\n },\n settingsLayout: {\n navigation: \"Settings\",\n searchPlaceholder: \"Search settings\",\n emptySearch: \"No settings match your search.\",\n back: \"Back\",\n },\n tableFilter: {\n filters: \"Filters\",\n keywordPlaceholder: \"Press Enter to filter\",\n keywordLabel: \"Filter by keyword\",\n },\n appHeader: {\n disclose: (title) => `${title} details`,\n },\n breadcrumbs: {\n navigation: \"breadcrumb navigation\",\n },\n animatedIcon: {\n name: (variant) => `Animated ${variant} icon`,\n },\n infiniteScroll: {\n loadFailed: \"An error occurred while loading more items\",\n },\n socialLogin: {\n title: \"Sign in to continue\",\n divider: \"or\",\n },\n dateRangePicker: {\n calendar: \"Calendar\",\n },\n calendar: {\n chooseMonth: (month) => `${month}, choose month`,\n chooseYear: (year) => `${year}, choose year`,\n previousMonth: \"Previous month\",\n nextMonth: \"Next month\",\n months: \"Months\",\n years: \"Years\",\n },\n};\n"],"mappings":"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","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/navigation/CommandPalette/CommandPalette.tsx"],"sourcesContent":["import { EN_US_COMMAND_PALETTE_COPY } from '../../../en-US.navigation';\nimport { resolveLabels } from '../../../utils/resolve-labels';\nimport CloseIcon from '@mui/icons-material/Close';\nimport EnterIcon from '@mui/icons-material/KeyboardReturn';\nimport SearchIcon from '@mui/icons-material/Search';\nimport Box from '@mui/material/Box/index.js';\nimport Dialog from '@mui/material/Dialog/index.js';\nimport DialogContent from '@mui/material/DialogContent/index.js';\nimport IconButton from '@mui/material/IconButton/index.js';\nimport InputBase from '@mui/material/InputBase/index.js';\nimport Paper from '@mui/material/Paper/index.js';\nimport Slide from '@mui/material/Slide/index.js';\nimport Typography from '@mui/material/Typography/index.js';\nimport { alpha, styled, useTheme } from '@mui/material/styles/index.js';\nimport type { TransitionProps } from '@mui/material/transitions/index.js';\nimport type { FC} from 'react';\nimport React, { } from 'react';\n\nimport { useCommandPalette } from './CommandPalette.hooks';\nimport { PaletteResults } from './CommandPaletteResults';\nimport { ShortcutChip } from './ShortcutChip';\nimport type { CommandPaletteProps } from './CommandPalette.types';\nimport type { CommandPaletteCopy } from '../../../copy';\nimport { scrim } from '../../../tokens/ink';\nimport { rem, sxRem } from '../../../tokens/relative';\n\n// Styled components\nconst StyledDialog = styled(Dialog)(({ theme }) => ({\n '& .MuiBackdrop-root': {\n backgroundColor: scrim(theme, 0.6),\n backdropFilter: `blur(${rem(theme, 4)})` },\n '& .MuiDialog-paper': {\n position: 'fixed',\n top: '20%',\n margin: 0,\n maxHeight: 'none',\n background: 'transparent',\n boxShadow: 'none',\n overflow: 'visible' } }));\n\nconst PaletteContainer = styled(Paper)(({ theme }) => ({\n width: '100%',\n // 640 is the desktop width (FUT-3347); below it the palette takes the dialog's\n // own width, which already keeps MUI's 32px gutters, so a phone sees it whole.\n maxWidth: `min(${rem(theme, 640)}, 100%)`,\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 borderRadius: theme.shape.borderRadius * 2,\n overflow: 'hidden',\n boxShadow: theme.shadows[24] }));\n\nconst SearchContainer = styled(Box)(({ theme }) => ({\n display: 'flex',\n alignItems: 'center',\n padding: theme.spacing(2),\n borderBottom: `1px solid ${alpha(theme.palette.divider, 0.12)}`,\n background: alpha(theme.palette.background.default, 0.4) }));\n\nconst SearchInput = styled(InputBase)(({ theme }) => ({\n flex: 1,\n fontSize: rem(theme, 18),\n fontWeight: 400,\n '& input': {\n padding: theme.spacing(0, 1),\n '&::placeholder': {\n color: theme.palette.text.secondary,\n opacity: 0.8 } } }));\n\nconst Transition = React.forwardRef<unknown, TransitionProps & { children: React.ReactElement }>(\n function Transition(props, ref) {\n return <Slide direction=\"down\" ref={ref} {...props} />;\n },\n);\n\n// Main component\nconst PaletteSearch: React.FC<{\n inputRef: React.Ref<HTMLInputElement>;\n placeholder?: string;\n value: string;\n dataTestId?: string;\n onChange: (event: React.ChangeEvent<HTMLInputElement>) => void;\n onClose: () => void;\n}> = ({ inputRef, placeholder, value, dataTestId, onChange, onClose }) => (\n <SearchContainer>\n <SearchIcon sx={{ color: 'text.secondary', mr: 1 }} />\n <SearchInput\n ref={inputRef}\n placeholder={placeholder}\n value={value}\n onChange={onChange}\n autoComplete=\"off\"\n autoCorrect=\"off\"\n autoCapitalize=\"off\"\n spellCheck=\"false\"\n inputProps={{ 'data-testid': `${dataTestId}-input` }}\n />\n <IconButton size=\"small\" onClick={onClose} sx={{ ml: 1 }}>\n <CloseIcon fontSize=\"small\" />\n </IconButton>\n </SearchContainer>\n);\n\nconst PaletteFooter: React.FC<{ commandCount: number; copy: CommandPaletteCopy }> = ({\n commandCount,\n copy,\n}) => {\n const theme = useTheme();\n const text = resolveLabels(EN_US_COMMAND_PALETTE_COPY, copy);\n\n return (\n <Box\n sx={{\n display: 'flex',\n // Wraps the count under the hints on a phone; one row on desktop.\n flexWrap: 'wrap',\n gap: 1,\n justifyContent: 'space-between',\n alignItems: 'center',\n padding: 1,\n borderTop: `1px solid ${alpha(theme.palette.divider, 0.12)}`,\n background: alpha(theme.palette.background.default, 0.4) }}\n >\n <Box sx={{ display: 'flex', flexWrap: 'wrap', gap: 1 }}>\n <ShortcutChip\n icon={<EnterIcon sx={{ fontSize: sxRem(12) }} />}\n label={copy.execute}\n size=\"small\"\n />\n <ShortcutChip label={copy.navigate} size=\"small\" />\n <ShortcutChip label={copy.close} size=\"small\" />\n </Box>\n <Typography variant=\"caption\" color=\"text.secondary\">\n {text.commandCount(commandCount)}\n </Typography>\n </Box>\n );\n};\n\nexport const CommandPalette: FC<CommandPaletteProps> = ({\n copy,\n open,\n onClose,\n commands,\n placeholder,\n width,\n maxHeight,\n showRecent = true,\n recentCommands = [],\n onCommandExecute,\n dataTestId = 'command-palette' }) => {\n const text = resolveLabels(EN_US_COMMAND_PALETTE_COPY, copy);\n const {\n searchQuery,\n setSearchQuery,\n selectedIndex,\n setSelectedIndex,\n searchInputRef,\n listRef,\n filteredCommands,\n groupedCommands,\n executeCommand,\n recentCommandIds } = useCommandPalette({\n open,\n commands,\n showRecent,\n recentCommands,\n onCommandExecute,\n onClose,\n generalLabel: text.general });\n\n const handleSearchChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n setSearchQuery(event.target.value);\n };\n\n return (\n <StyledDialog\n open={open}\n onClose={onClose}\n TransitionComponent={Transition}\n maxWidth={false}\n fullWidth\n data-testid={dataTestId}\n >\n <DialogContent sx={{ overflow: 'visible', p: 0 }}>\n <PaletteContainer elevation={24} sx={{ width: width ?? sxRem(640), maxHeight: maxHeight ?? sxRem(400) }}>\n <PaletteSearch\n inputRef={searchInputRef}\n placeholder={placeholder ?? text.placeholder}\n value={searchQuery}\n dataTestId={dataTestId}\n onChange={handleSearchChange}\n onClose={onClose}\n />\n\n <PaletteResults\n copy={copy}\n listRef={listRef}\n dataTestId={dataTestId}\n searchQuery={searchQuery}\n showRecent={showRecent}\n commands={commands}\n recentCommandIds={recentCommandIds}\n filteredCommands={filteredCommands}\n groupedCommands={groupedCommands}\n selectedIndex={selectedIndex}\n onSelect={setSelectedIndex}\n onExecute={executeCommand}\n />\n\n <PaletteFooter copy={copy} commandCount={filteredCommands.length} />\n </PaletteContainer>\n </DialogContent>\n </StyledDialog>\n );\n};\n\n// Export default\nexport default CommandPalette;\n"],"mappings":"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","names":["Transition"]}
@@ -1,162 +0,0 @@
1
- import {
2
- useSequenceRun
3
- } from "./chunk-3LUT2C5M.js";
4
- import {
5
- currentOf,
6
- positionOf,
7
- progressOf,
8
- summaryOf
9
- } from "./chunk-5UBP2DJ4.js";
10
- import {
11
- SequenceDoneBody,
12
- SequenceHeader,
13
- SequenceIntroBody,
14
- SequenceStepBody
15
- } from "./chunk-WXZCNHBX.js";
16
- import {
17
- chromeSx,
18
- columnSx,
19
- paperSx,
20
- scrollBodySx
21
- } from "./chunk-CHP3QIS3.js";
22
- import {
23
- SEQUENCE_METRICS
24
- } from "./chunk-HHPFWEJY.js";
25
- import {
26
- Dialog
27
- } from "./chunk-DAFFZED3.js";
28
-
29
- // src/components/feedback/SequenceResolver/SequenceResolver.tsx
30
- import Box from "@mui/material/Box/index.js";
31
- import { useTheme } from "@mui/material/styles/index.js";
32
- import useMediaQuery from "@mui/material/useMediaQuery/index.js";
33
- import { useCallback, useId, useRef } from "react";
34
- import { jsx, jsxs } from "react/jsx-runtime";
35
- function headerLabelOf(props, run, current) {
36
- const { labels } = props;
37
- if (props.intro) return labels.introStep;
38
- if (!current) return labels.doneStep;
39
- return labels.step(positionOf(run), summaryOf(run).total, current);
40
- }
41
- function backOf(props, state) {
42
- const { intro, labels, canGoBack = true } = props;
43
- if (intro || !canGoBack || state.run.visits.length === 0) return void 0;
44
- return { label: labels.back, accessible: labels.backAccessible, onClick: state.back, disabled: state.busy };
45
- }
46
- function escapeCloses(close) {
47
- return (event) => {
48
- if (event.key !== "Escape" || event.defaultPrevented) return;
49
- event.stopPropagation();
50
- close();
51
- };
52
- }
53
- function SequenceBody(body) {
54
- const { props, state, current, api, titleId, stepTitleRef, touch, testId, close } = body;
55
- if (props.intro) {
56
- return /* @__PURE__ */ jsx(SequenceIntroBody, { intro: props.intro, titleId, testId, screenKey: "intro" });
57
- }
58
- if (current) {
59
- return /* @__PURE__ */ jsx(
60
- SequenceStepBody,
61
- {
62
- step: props.renderStep(current, api),
63
- skip: { label: props.labels.skip, onClick: state.skip },
64
- busy: state.busy,
65
- error: state.error,
66
- touch,
67
- testId,
68
- screenKey: `step:${current.key}`,
69
- titleRef: stepTitleRef
70
- }
71
- );
72
- }
73
- const summary = summaryOf(state.run);
74
- return /* @__PURE__ */ jsx(
75
- SequenceDoneBody,
76
- {
77
- done: typeof props.done === "function" ? props.done(summary) : props.done,
78
- titleId,
79
- error: state.error,
80
- touch,
81
- onConfirm: close,
82
- testId,
83
- screenKey: "done"
84
- }
85
- );
86
- }
87
- function SequenceResolver(props) {
88
- const { open, onClose, intro, labels } = props;
89
- const testId = props.dataTestId ?? "sequence-resolver";
90
- const theme = useTheme();
91
- const touch = useMediaQuery(theme.breakpoints.down(SEQUENCE_METRICS.sheetBreakpoint));
92
- const titleId = `${useId()}-title`;
93
- const stepTitleRef = useRef(null);
94
- const titleRef = useCallback((node) => {
95
- stepTitleRef.current = node;
96
- }, []);
97
- const state = useSequenceRun({
98
- open,
99
- active: open && !intro,
100
- queue: props.queue,
101
- onBack: props.onBack,
102
- failed: labels.failed
103
- });
104
- const { run, busy } = state;
105
- const current = intro ? void 0 : currentOf(run);
106
- const close = () => onClose(summaryOf(run));
107
- const api = {
108
- resolve: state.resolve,
109
- skip: state.skip,
110
- back: state.back,
111
- busy,
112
- titleProps: { id: titleId, tabIndex: -1, ref: titleRef }
113
- };
114
- return /* @__PURE__ */ jsx(
115
- Dialog,
116
- {
117
- open,
118
- onClose: close,
119
- persistent: true,
120
- variant: touch ? "bottom-sheet" : "default",
121
- size: "sm",
122
- "aria-labelledby": titleId,
123
- onKeyDown: escapeCloses(close),
124
- slotProps: { paper: { sx: paperSx(touch) } },
125
- dataTestId: testId,
126
- children: /* @__PURE__ */ jsxs(Box, { sx: columnSx, children: [
127
- /* @__PURE__ */ jsx(Box, { sx: chromeSx, children: /* @__PURE__ */ jsx(
128
- SequenceHeader,
129
- {
130
- touch,
131
- label: headerLabelOf(props, run, current),
132
- back: backOf(props, state),
133
- closeLabel: labels.close,
134
- onClose: close,
135
- progress: intro ? 0 : progressOf(run),
136
- progressLabel: labels.progress,
137
- testId
138
- }
139
- ) }),
140
- /* @__PURE__ */ jsx(Box, { sx: scrollBodySx, "data-testid": `${testId}-body`, children: /* @__PURE__ */ jsx(
141
- SequenceBody,
142
- {
143
- props,
144
- state,
145
- current,
146
- api,
147
- titleId,
148
- stepTitleRef,
149
- touch,
150
- testId,
151
- close
152
- }
153
- ) })
154
- ] })
155
- }
156
- );
157
- }
158
-
159
- export {
160
- SequenceResolver
161
- };
162
- //# sourceMappingURL=chunk-ZHYLOB7Q.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/feedback/SequenceResolver/SequenceResolver.tsx"],"sourcesContent":["'use client';\n\nimport Box from '@mui/material/Box/index.js';\nimport { useTheme } from '@mui/material/styles/index.js';\nimport useMediaQuery from '@mui/material/useMediaQuery/index.js';\nimport React, { useCallback, useId, useRef } from 'react';\n\nimport { Dialog } from '../Dialog';\nimport { currentOf, positionOf, progressOf, summaryOf, type RunState } from './sequence-model';\nimport { SequenceDoneBody, SequenceHeader, SequenceIntroBody, SequenceStepBody } from './SequenceResolver.parts';\nimport { SEQUENCE_METRICS } from './SequenceResolver.metrics';\nimport { chromeSx, columnSx, paperSx, scrollBodySx } from './SequenceResolver.styles';\nimport type { SequenceItem, SequenceResolverProps, SequenceStepApi } from './SequenceResolver.types';\nimport { useSequenceRun, type SequenceRun } from './useSequenceRun';\n\n/** What the header's label says on the screen showing. */\nfunction headerLabelOf<I extends SequenceItem, R>(\n props: SequenceResolverProps<I, R>,\n run: RunState<I, R>,\n current: I | undefined,\n): string {\n const { labels } = props;\n if (props.intro) return labels.introStep;\n if (!current) return labels.doneStep;\n return labels.step(positionOf(run), summaryOf(run).total, current);\n}\n\n/** The header's back button, once a previous step exists and the host allows it. */\nfunction backOf<I extends SequenceItem, R>(props: SequenceResolverProps<I, R>, state: SequenceRun<I, R>) {\n const { intro, labels, canGoBack = true } = props;\n if (intro || !canGoBack || state.run.visits.length === 0) return undefined;\n return { label: labels.back, accessible: labels.backAccessible, onClick: state.back, disabled: state.busy };\n}\n\n/**\n * Esc closes. `persistent` turns MUI's own Esc off together with the veil's\n * click (the prototype's veil does nothing), so Esc is put back here; a popup\n * inside a step that handles its own Esc stops it before it gets here.\n */\nfunction escapeCloses(close: () => void) {\n return (event: React.KeyboardEvent): void => {\n if (event.key !== 'Escape' || event.defaultPrevented) return;\n event.stopPropagation();\n close();\n };\n}\n\ninterface BodyProps<I extends SequenceItem, R> {\n props: SequenceResolverProps<I, R>;\n state: SequenceRun<I, R>;\n current: I | undefined;\n api: SequenceStepApi<R>;\n titleId: string;\n stepTitleRef: React.RefObject<HTMLElement | null>;\n touch: boolean;\n testId: string;\n close: () => void;\n}\n\n/** The intro, the step on screen, or the end screen. */\nfunction SequenceBody<I extends SequenceItem, R>(body: BodyProps<I, R>): React.JSX.Element {\n const { props, state, current, api, titleId, stepTitleRef, touch, testId, close } = body;\n if (props.intro) {\n return <SequenceIntroBody intro={props.intro} titleId={titleId} testId={testId} screenKey=\"intro\" />;\n }\n if (current) {\n return (\n <SequenceStepBody\n step={props.renderStep(current, api)}\n skip={{ label: props.labels.skip, onClick: state.skip }}\n busy={state.busy}\n error={state.error}\n touch={touch}\n testId={testId}\n screenKey={`step:${current.key}`}\n titleRef={stepTitleRef}\n />\n );\n }\n const summary = summaryOf(state.run);\n return (\n <SequenceDoneBody\n done={typeof props.done === 'function' ? props.done(summary) : props.done}\n titleId={titleId}\n error={state.error}\n touch={touch}\n onConfirm={close}\n testId={testId}\n screenKey=\"done\"\n />\n );\n}\n\n/**\n * Resolve a queue of problems one at a time, in ONE dialog whose body is\n * replaced step by step: a header with \"‹ Back\", the step's label and close,\n * a progress bar, the host's step, and an end screen (FUT-3671).\n *\n * A centred `Dialog` from the `sm` breakpoint up; the `Dialog` inset\n * bottom-sheet variant below it, never taller than 95% of the viewport. Either\n * way the paper scrolls inside the viewport, so a long step is never cut off.\n *\n * The component owns the run — which step is on screen, what was answered or\n * skipped, where Back returns to — and nothing about the domain: every step\n * body, every word and every server call is the host's.\n */\nexport function SequenceResolver<I extends SequenceItem, R = unknown>(\n props: SequenceResolverProps<I, R>,\n): React.JSX.Element {\n const { open, onClose, intro, labels } = props;\n const testId = props.dataTestId ?? 'sequence-resolver';\n const theme = useTheme();\n const touch = useMediaQuery(theme.breakpoints.down(SEQUENCE_METRICS.sheetBreakpoint));\n const titleId = `${useId()}-title`;\n const stepTitleRef = useRef<HTMLElement | null>(null);\n const titleRef = useCallback((node: HTMLElement | null) => {\n stepTitleRef.current = node;\n }, []);\n\n const state = useSequenceRun<I, R>({\n open,\n active: open && !intro,\n queue: props.queue,\n onBack: props.onBack,\n failed: labels.failed,\n });\n const { run, busy } = state;\n const current = intro ? undefined : currentOf(run);\n const close = (): void => onClose(summaryOf(run));\n const api: SequenceStepApi<R> = {\n resolve: state.resolve,\n skip: state.skip,\n back: state.back,\n busy,\n titleProps: { id: titleId, tabIndex: -1, ref: titleRef },\n };\n\n return (\n <Dialog\n open={open}\n onClose={close}\n persistent\n variant={touch ? 'bottom-sheet' : 'default'}\n size=\"sm\"\n aria-labelledby={titleId}\n onKeyDown={escapeCloses(close)}\n slotProps={{ paper: { sx: paperSx(touch) } }}\n dataTestId={testId}\n >\n <Box sx={columnSx}>\n <Box sx={chromeSx}>\n <SequenceHeader\n touch={touch}\n label={headerLabelOf(props, run, current)}\n back={backOf(props, state)}\n closeLabel={labels.close}\n onClose={close}\n progress={intro ? 0 : progressOf(run)}\n progressLabel={labels.progress}\n testId={testId}\n />\n </Box>\n <Box sx={scrollBodySx} data-testid={`${testId}-body`}>\n <SequenceBody\n props={props}\n state={state}\n current={current}\n api={api}\n titleId={titleId}\n stepTitleRef={stepTitleRef}\n touch={touch}\n testId={testId}\n close={close}\n />\n </Box>\n </Box>\n </Dialog>\n );\n}\n"],"mappings":"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","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/en-US.labels.ts"],"sourcesContent":["/**\n * The en-US labels pack — and, unlike the other en-US packs, the components'\n * own fallback: each `labels` prop is optional, and this is what a host that\n * passes nothing has always rendered, kept word for word (including the\n * lower-case `close`/`loading` names tests already query by).\n */\nimport type { UiLabels } from './copy/labels';\n\nexport const EN_US_UI_LABELS: UiLabels = {\n common: {\n loading: \"loading\",\n close: \"close\",\n delete: \"delete\",\n },\n stepper: {\n step: (position, label) => `Step ${position}: ${label}`,\n optional: \"optional\",\n completed: \"completed\",\n current: \"current\",\n },\n timeline: {\n expandDetails: \"Expand item details\",\n collapseDetails: \"Collapse item details\",\n item: (title) => `Timeline item: ${title}`,\n },\n lazyImage: {\n loadingAlt: (alt) => `${alt} (loading)`,\n fallbackAlt: (alt) => `${alt} (fallback)`,\n },\n sonner: {\n hiddenCount: (count) => `+${count} more`,\n },\n richTextEditor: {\n placeholder: \"Start typing...\",\n ariaLabel: \"Rich text editor\",\n listItem: \"List item\",\n bold: \"Bold\",\n italic: \"Italic\",\n underline: \"Underline\",\n strikethrough: \"Strikethrough\",\n numberedList: \"Numbered List\",\n bulletedList: \"Bulleted List\",\n insertLink: \"Insert Link\",\n insertImage: \"Insert Image\",\n codeBlock: \"Code Block\",\n quote: \"Quote\",\n linkPrompt: \"Enter URL:\",\n imagePrompt: \"Enter image URL:\",\n },\n table: {\n sortBy: (header) => `Sort by ${header}`,\n selectRow: (rowNumber) => `select row ${rowNumber}`,\n selectAllRows: \"select all\",\n },\n code: {\n copy: \"Copy code\",\n copied: \"Copied!\",\n },\n contentToolbar: {\n gridView: \"Grid View\",\n listView: \"List View\",\n openFilters: \"Open filters\",\n closeFilters: \"Close filters\",\n filters: \"Filters\",\n all: \"All\",\n search: \"Search…\",\n noResults: \"No results\",\n },\n dashboard: {\n breadcrumb: \"breadcrumb\",\n moreFilters: \"More filters\",\n },\n navigationMenu: {\n collapse: \"Collapse\",\n expand: \"Expand\",\n },\n workflowStep: {\n step: (position, title) => `Step ${position}: ${title}`,\n progress: (position, total) => `Step ${position} of ${total}`,\n },\n alertDialog: {\n cancel: \"Cancel\",\n confirm: \"Confirm\",\n },\n avatar: {\n name: \"Avatar\",\n },\n emptyState: {\n refresh: \"Refresh\",\n create: \"Create New\",\n },\n errorState: {\n retry: \"Retry\",\n },\n loadingState: {\n skeleton: \"Loading content\",\n spinner: \"Loading\",\n },\n stackedModal: {\n loading: \"Loading...\",\n },\n command: {\n placeholder: \"Type a command or search...\",\n empty: \"No results found\",\n loading: \"Loading...\",\n },\n formErrorSnackbar: {\n message: \"Please fix the highlighted fields and try again.\",\n },\n columnsMenu: {\n title: \"Columns\",\n toggle: \"Toggle columns\",\n },\n drawer: {\n close: \"Close drawer\",\n },\n settingsLayout: {\n navigation: \"Settings\",\n searchPlaceholder: \"Search settings\",\n emptySearch: \"No settings match your search.\",\n back: \"Back\",\n },\n tableFilter: {\n filters: \"Filters\",\n keywordPlaceholder: \"Press Enter to filter\",\n keywordLabel: \"Filter by keyword\",\n },\n appHeader: {\n disclose: (title) => `${title} details`,\n },\n breadcrumbs: {\n navigation: \"breadcrumb navigation\",\n },\n animatedIcon: {\n name: (variant) => `Animated ${variant} icon`,\n },\n infiniteScroll: {\n loadFailed: \"An error occurred while loading more items\",\n },\n socialLogin: {\n title: \"Sign in to continue\",\n divider: \"or\",\n },\n dateRangePicker: {\n calendar: \"Calendar\",\n },\n calendar: {\n chooseMonth: (month) => `${month}, choose month`,\n chooseYear: (year) => `${year}, choose year`,\n previousMonth: \"Previous month\",\n nextMonth: \"Next month\",\n months: \"Months\",\n years: \"Years\",\n },\n};\n"],"mappings":"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","names":[]}