@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
@@ -13,7 +13,14 @@ import type { SequenceItem, SequenceSummary } from './SequenceResolver.types';
13
13
 
14
14
  /** How a visited step was left. */
15
15
  export type Visit<I extends SequenceItem, R> =
16
- | { item: I; outcome: 'resolved'; result: R; alsoResolved?: number }
16
+ | {
17
+ item: I;
18
+ outcome: 'resolved';
19
+ result: R;
20
+ alsoResolved?: number;
21
+ /** The step said `canGoBack: false` when it was answered: the answer has no inverse, so Back stops here. */
22
+ final?: true;
23
+ }
17
24
  | { item: I; outcome: 'skipped' };
18
25
 
19
26
  export interface RunState<I extends SequenceItem, R> {
@@ -47,9 +54,17 @@ function dedupe<I extends SequenceItem>(items: readonly I[], skip: ReadonlySet<s
47
54
  return out;
48
55
  }
49
56
 
50
- /** A fresh run over `queue` (a repeated key counts once). */
51
- export function startRun<I extends SequenceItem, R>(queue: readonly I[]): RunState<I, R> {
52
- return { visits: [], ahead: dedupe(queue, new Set()), held: [] };
57
+ /**
58
+ * A fresh run over `queue` (a repeated key counts once). With `initialKey` the
59
+ * run opens at that entry; the entries before it follow it, in queue order —
60
+ * nothing is passed over (a click on one problem's block opens the run there).
61
+ */
62
+ export function startRun<I extends SequenceItem, R>(queue: readonly I[], initialKey?: string): RunState<I, R> {
63
+ const ahead = dedupe(queue, new Set());
64
+ const at = initialKey === undefined ? -1 : ahead.findIndex((item) => item.key === initialKey);
65
+ const first = ahead[at];
66
+ if (at <= 0 || !first) return { visits: [], ahead, held: [] };
67
+ return { visits: [], ahead: [first, ...ahead.slice(0, at), ...ahead.slice(at + 1)], held: [] };
53
68
  }
54
69
 
55
70
  /**
@@ -106,9 +121,12 @@ export function resolveRun<I extends SequenceItem, R>(
106
121
  result: R,
107
122
  item: I | undefined = state.ahead[0],
108
123
  alsoResolved = 0,
124
+ final = false,
109
125
  ): RunState<I, R> {
110
126
  if (!item || !state.ahead.some((entry) => entry.key === item.key)) return state;
111
- const visit: Visit<I, R> = alsoResolved > 0 ? { item, outcome: 'resolved', result, alsoResolved } : { item, outcome: 'resolved', result };
127
+ const visit: Visit<I, R> = { item, outcome: 'resolved', result };
128
+ if (alsoResolved > 0) visit.alsoResolved = alsoResolved;
129
+ if (final) visit.final = true;
112
130
  return {
113
131
  visits: [...state.visits, visit],
114
132
  ahead: state.ahead.filter((entry) => entry.key !== item.key),
@@ -154,6 +172,49 @@ export function backRun<I extends SequenceItem, R>(state: RunState<I, R>, key?:
154
172
  };
155
173
  }
156
174
 
175
+ /** True when Back may return from the step on screen: a previous step exists and its answer has an inverse. */
176
+ export function canReturn<I extends SequenceItem, R>(state: RunState<I, R>): boolean {
177
+ const last = previousOf(state);
178
+ return last !== undefined && !(last.outcome === 'resolved' && last.final);
179
+ }
180
+
181
+ /**
182
+ * The step a jump to `keys` (one category of the overview) lands on: the
183
+ * first of them still AHEAD, in run order; else the first one passed over
184
+ * (skipped, or left by an earlier jump). An answered key is never a target.
185
+ */
186
+ export function jumpTargetOf<I extends SequenceItem, R>(state: RunState<I, R>, keys: readonly string[]): string | undefined {
187
+ const wanted = new Set(keys);
188
+ const ahead = state.ahead.find((item) => wanted.has(item.key));
189
+ if (ahead) return ahead.key;
190
+ return state.visits.find((visit) => visit.outcome === 'skipped' && wanted.has(visit.item.key))?.item.key;
191
+ }
192
+
193
+ /**
194
+ * Jump to `key` ("Ver todos" → a category's Resolver, or `api.jumpTo`).
195
+ *
196
+ * The step on screen is recorded as PASSED OVER — Back from the target returns
197
+ * to it at once, with nothing to undo — and the target goes first; the rest
198
+ * stays in run order. A target that was passed over before is taken back out
199
+ * of the history. The step already on screen, an answered key or an unknown
200
+ * one leaves the run as it is.
201
+ */
202
+ export function jumpRun<I extends SequenceItem, R>(state: RunState<I, R>, key: string): RunState<I, R> {
203
+ const [current] = state.ahead;
204
+ if (current?.key === key) return state;
205
+ const passed = state.visits.findIndex((visit) => visit.outcome === 'skipped' && visit.item.key === key);
206
+ const target = state.ahead.find((item) => item.key === key) ?? state.visits[passed]?.item;
207
+ if (!target) return state;
208
+ const visits = passed >= 0 ? state.visits.filter((_, index) => index !== passed) : [...state.visits];
209
+ const rest = state.ahead.filter((item) => item.key !== key && item.key !== current?.key);
210
+ const pins = current ? leaving(state, current.key) : { pinned: state.pinned, held: state.held };
211
+ return {
212
+ visits: current ? [...visits, { item: current, outcome: 'skipped' }] : visits,
213
+ ahead: [target, ...rest],
214
+ ...pins,
215
+ };
216
+ }
217
+
157
218
  /** Where the run stands. */
158
219
  export function summaryOf<I extends SequenceItem, R>(state: RunState<I, R>): SequenceSummary {
159
220
  const resolved = state.visits.filter((visit) => visit.outcome === 'resolved').length;
@@ -2,7 +2,9 @@ import { useCallback, useRef, useState } from 'react';
2
2
 
3
3
  import {
4
4
  backRun,
5
+ canReturn,
5
6
  currentOf,
7
+ jumpRun,
6
8
  pinRun,
7
9
  previousOf,
8
10
  resolveRun,
@@ -19,9 +21,16 @@ interface RunInputs<I extends SequenceItem, R> {
19
21
  /** True while the run is on screen: open, and past the intro. */
20
22
  active: boolean;
21
23
  queue: readonly I[];
24
+ /** The key a fresh run opens at (its step goes first; nothing is passed over). */
25
+ initialKey?: string;
22
26
  onBack?: (item: I, result: R) => Promise<void> | void;
23
27
  /** The message for a rejection that carries none. */
24
28
  failed: string;
29
+ /**
30
+ * Read when an answer is recorded: false when the step on screen said
31
+ * `canGoBack: false` (its answer has no inverse, so Back stops at it).
32
+ */
33
+ stepAllowsBack: () => boolean;
25
34
  }
26
35
 
27
36
  export interface SequenceRun<I extends SequenceItem, R> {
@@ -31,6 +40,8 @@ export interface SequenceRun<I extends SequenceItem, R> {
31
40
  resolve: (result: R | PromiseLike<R>, options?: SequenceResolveOptions) => void;
32
41
  skip: () => void;
33
42
  back: () => void;
43
+ /** Jump to `key`: the step on screen is passed over and the target shows (see `jumpRun`). */
44
+ jumpTo: (key: string) => void;
34
45
  }
35
46
 
36
47
  interface Tracked<I extends SequenceItem, R> {
@@ -138,15 +149,15 @@ function useAsyncGate(failed: string): AsyncGate {
138
149
  * no frame ever shows a step the queue has already dropped.
139
150
  */
140
151
  function useTrackedRun<I extends SequenceItem, R>(
141
- inputs: { open: boolean; active: boolean; queue: readonly I[] },
152
+ inputs: { open: boolean; active: boolean; queue: readonly I[]; initialKey?: string },
142
153
  onRestart: () => void,
143
154
  ): { run: RunState<I, R>; update: (step: (run: RunState<I, R>) => RunState<I, R>) => void } {
144
- const { open, active, queue } = inputs;
145
- const [tracked, setTracked] = useState<Tracked<I, R>>(() => ({ run: startRun(queue), queue, active, open }));
155
+ const { open, active, queue, initialKey } = inputs;
156
+ const [tracked, setTracked] = useState<Tracked<I, R>>(() => ({ run: startRun(queue, initialKey), queue, active, open }));
146
157
  let current = tracked;
147
158
  if (active !== tracked.active || open !== tracked.open || queue !== tracked.queue) {
148
159
  const restart = (active && !tracked.active) || (open && !tracked.open);
149
- current = { run: restart ? startRun(queue) : syncRun(tracked.run, queue), queue, active, open };
160
+ current = { run: restart ? startRun(queue, initialKey) : syncRun(tracked.run, queue), queue, active, open };
150
161
  if (restart) onRestart();
151
162
  setTracked(current);
152
163
  }
@@ -158,24 +169,25 @@ function useTrackedRun<I extends SequenceItem, R>(
158
169
 
159
170
  /** The run's state and its verbs — the index/back/skip/done logic, once (FUT-3671). */
160
171
  export function useSequenceRun<I extends SequenceItem, R>(inputs: RunInputs<I, R>): SequenceRun<I, R> {
161
- const { open, active, queue, onBack, failed } = inputs;
172
+ const { open, active, queue, initialKey, onBack, failed, stepAllowsBack } = inputs;
162
173
  const gate = useAsyncGate(failed);
163
- const { run, update } = useTrackedRun<I, R>({ open, active, queue }, gate.reset);
174
+ const { run, update } = useTrackedRun<I, R>({ open, active, queue, initialKey }, gate.reset);
164
175
  const { settle, isPending, clearError } = gate;
165
176
 
166
177
  const onScreen = currentOf(run);
167
178
  const resolve = (result: R | PromiseLike<R>, options?: SequenceResolveOptions): void => {
168
179
  const also = options?.alsoResolved ?? 0;
169
180
  if (isPending() || !onScreen) return;
181
+ const final = !stepAllowsBack();
170
182
  if (isThenable(result)) {
171
183
  // The host's refetch may drop the entry before its write returns: keep
172
184
  // it on screen meanwhile, and answer THIS entry when it does.
173
185
  update((prev) => pinRun(prev, onScreen.key));
174
- settle(result, 'resolve', onScreen.key, (value) => update((prev) => resolveRun(prev, value, onScreen, also)));
186
+ settle(result, 'resolve', onScreen.key, (value) => update((prev) => resolveRun(prev, value, onScreen, also, final)));
175
187
  return;
176
188
  }
177
189
  clearError();
178
- update((prev) => resolveRun(prev, result, onScreen, also));
190
+ update((prev) => resolveRun(prev, result, onScreen, also, final));
179
191
  };
180
192
 
181
193
  const skip = (): void => {
@@ -186,7 +198,7 @@ export function useSequenceRun<I extends SequenceItem, R>(inputs: RunInputs<I, R
186
198
 
187
199
  const back = (): void => {
188
200
  const last = previousOf(run);
189
- if (isPending() || !last) return;
201
+ if (isPending() || !last || !canReturn(run)) return;
190
202
  if (last.outcome === 'resolved' && onBack) {
191
203
  // `new Promise` so a handler that throws synchronously lands in the same
192
204
  // rejection path as one that rejects.
@@ -198,8 +210,14 @@ export function useSequenceRun<I extends SequenceItem, R>(inputs: RunInputs<I, R
198
210
  update((prev) => backRun(prev, last.item.key));
199
211
  };
200
212
 
213
+ const jumpTo = (key: string): void => {
214
+ if (isPending()) return;
215
+ clearError();
216
+ update((prev) => jumpRun(prev, key));
217
+ };
218
+
201
219
  // An error belongs to the screen it was raised on: once a queue change (or
202
220
  // anything else) moves the run to another step, it no longer shows.
203
221
  const error = gate.error && gate.error.screen === screenOf(onScreen) ? gate.error.message : null;
204
- return { run, busy: gate.busy !== null, error, resolve, skip, back };
222
+ return { run, busy: gate.busy !== null, error, resolve, skip, back, jumpTo };
205
223
  }
@@ -15,10 +15,22 @@ import {
15
15
  import type { AddressAutocompleteState } from './AddressAutocomplete.hooks';
16
16
  import { AddressInputField } from './AddressInputField';
17
17
  import { AddressOption } from './AddressOption';
18
- import { AddressSuggestionsPaper } from './AddressSuggestionsPaper';
18
+ import { AddressSuggestionsPaper, type AddressSuggestionsPaperProps } from './AddressSuggestionsPaper';
19
19
 
20
20
  export type AddressAutocompleteFieldProps = ResolvedAddressProps & AddressAutocompleteState;
21
21
 
22
+ // What the open list says when it is empty. A failed lookup is not an empty
23
+ // answer: the field's helper text and the alert below already say what went
24
+ // wrong.
25
+ const emptyTextFor = (
26
+ text: { typeToSearch: string; noAddressesFound: string },
27
+ inputValue: string,
28
+ apiError: string | null | undefined,
29
+ ): string | undefined => {
30
+ if (apiError) return undefined;
31
+ return inputValue.length <= MIN_QUERY_LENGTH ? text.typeToSearch : text.noAddressesFound;
32
+ };
33
+
22
34
  // The live field, rendered once Google Maps (or the mock stand-in) is ready.
23
35
  export const AddressAutocompleteField: FC<AddressAutocompleteFieldProps> = ({
24
36
  copy,
@@ -42,6 +54,9 @@ export const AddressAutocompleteField: FC<AddressAutocompleteFieldProps> = ({
42
54
  handleGetCurrentLocation,
43
55
  }) => {
44
56
  const text = resolveLabels(EN_US_ADDRESS_AUTOCOMPLETE_COPY, copy);
57
+ const paperProps: AddressSuggestionsPaperProps = {
58
+ emptyText: emptyTextFor(text, inputValue, apiError),
59
+ };
45
60
  return (
46
61
  <Box data-testid="address-autocomplete-container">
47
62
  <Autocomplete
@@ -57,9 +72,7 @@ export const AddressAutocompleteField: FC<AddressAutocompleteFieldProps> = ({
57
72
  getOptionLabel={addressOptionLabel}
58
73
  isOptionEqualToValue={isSameAddressOption}
59
74
  PaperComponent={AddressSuggestionsPaper}
60
- noOptionsText={
61
- inputValue.length <= MIN_QUERY_LENGTH ? text.typeToSearch : text.noAddressesFound
62
- }
75
+ slotProps={{ paper: paperProps }}
63
76
  renderOption={({ key, ...optionProps }, option, state) => (
64
77
  <AddressOption
65
78
  key={key}
@@ -1,14 +1,30 @@
1
1
  import type { PaperProps } from '@mui/material/Paper/index.js';
2
+ import Box from '@mui/material/Box/index.js';
2
3
  import Paper from '@mui/material/Paper/index.js';
3
4
  import { alpha, useTheme } from '@mui/material/styles/index.js';
4
5
  import type { FC } from 'react';
5
- import React from 'react';
6
+ import React, { Children } from 'react';
6
7
 
7
8
  import { rem } from '../../../tokens/relative';
8
9
 
10
+ export interface AddressSuggestionsPaperProps extends PaperProps {
11
+ /**
12
+ * Said when the list is open with nothing in it. MUI never renders its own
13
+ * `noOptionsText` for a `freeSolo` field, so an empty list was a blank strip
14
+ * (FUT-4162): the paper says it instead, exactly when MUI gave it no content
15
+ * (no suggestions and no loading row).
16
+ */
17
+ emptyText?: React.ReactNode;
18
+ }
19
+
9
20
  // The dropdown surface, frosted to match the glass field.
10
- export const AddressSuggestionsPaper: FC<PaperProps> = (props) => {
21
+ export const AddressSuggestionsPaper: FC<AddressSuggestionsPaperProps> = ({
22
+ emptyText,
23
+ children,
24
+ ...props
25
+ }) => {
11
26
  const theme = useTheme();
27
+ const empty = Children.toArray(children).length === 0;
12
28
 
13
29
  return (
14
30
  <Paper
@@ -22,6 +38,19 @@ export const AddressSuggestionsPaper: FC<PaperProps> = (props) => {
22
38
  WebkitBackdropFilter: `blur(${rem(theme, 20)})`,
23
39
  border: `1px solid ${alpha(theme.palette.divider, 0.18)}`,
24
40
  }}
25
- />
41
+ >
42
+ {children}
43
+ {empty && emptyText && (
44
+ <Box
45
+ role="presentation"
46
+ data-testid="address-suggestions-empty"
47
+ // Keeps the input focused, as MUI's own no-options row does.
48
+ onMouseDown={(event) => event.preventDefault()}
49
+ sx={{ px: 2, py: 1.5, color: 'text.secondary' }}
50
+ >
51
+ {emptyText}
52
+ </Box>
53
+ )}
54
+ </Paper>
26
55
  );
27
56
  };
@@ -0,0 +1,118 @@
1
+ import type { Theme } from '@mui/material/styles/index.js';
2
+
3
+ import { alpha, blend, darken, decomposeColor, getContrastRatio, getLuminance, lighten } from '../../../tokens/color';
4
+
5
+ import { isSameDay } from './Calendar.dates';
6
+ import type { DateRange, DayRenderArgs, SelectionMode } from './Calendar.types';
7
+
8
+ /**
9
+ * WHERE A DAY SITS ON THE RANGE BAND (FUT-4162).
10
+ *
11
+ * A selected range is ONE band behind its days, not a tile per day: the grid
12
+ * has no column gap and each day paints its share of the band. A day strictly
13
+ * inside the range paints all of it (`full`); the first and last day paint the
14
+ * half that faces the rest of the range (`after` / `before`), so the band runs
15
+ * into the round endpoint and stops at its centre. A range of one day, or no
16
+ * range, paints none.
17
+ *
18
+ * While only the start is chosen, the hovered day stands in for the end, the
19
+ * same preview `isDateInRange` draws.
20
+ */
21
+ export type DayBand = 'none' | 'full' | 'after' | 'before';
22
+
23
+ // The other end of the range: its end, or while only the start is chosen, the
24
+ // hovered day standing in for it.
25
+ const otherEnd = (range: DateRange, hoveredDate: Date | null, isDisabled: (date: Date) => boolean) =>
26
+ range.end ?? (hoveredDate && !isDisabled(hoveredDate) ? hoveredDate : null);
27
+
28
+ // The half an endpoint paints: towards the rest of the range.
29
+ const endpointBand = (date: Date, start: Date, other: Date): DayBand => {
30
+ const [first, last] = start < other ? [start, other] : [other, start];
31
+ if (isSameDay(date, first)) return 'after';
32
+ if (isSameDay(date, last)) return 'before';
33
+ return 'none';
34
+ };
35
+
36
+ export const bandFor = ({
37
+ args,
38
+ selectionMode,
39
+ range,
40
+ hoveredDate,
41
+ isDisabled,
42
+ }: {
43
+ args: DayRenderArgs;
44
+ selectionMode: SelectionMode;
45
+ range: DateRange;
46
+ hoveredDate: Date | null;
47
+ isDisabled: (date: Date) => boolean;
48
+ }): DayBand => {
49
+ if (selectionMode !== 'range') return 'none';
50
+ if (args.inRange) return 'full';
51
+
52
+ const other = otherEnd(range, hoveredDate, isDisabled);
53
+ if (!range.start || !other || isSameDay(range.start, other)) return 'none';
54
+ return endpointBand(args.date, range.start, other);
55
+ };
56
+
57
+ /**
58
+ * The band: the brand at a quarter strength, so it reads as the brand's tint on
59
+ * any ground (on white it is the brand three quarters of the way to white).
60
+ */
61
+ export const BAND_OPACITY = 0.25;
62
+
63
+ export const bandColor = (theme: Theme): string => alpha(theme.palette.primary.main, BAND_OPACITY);
64
+
65
+ /**
66
+ * WCAG AA for body text, plus a margin: `getLuminance` rounds to three
67
+ * places, which can move a ratio by about a hundredth either way.
68
+ */
69
+ const ENDPOINT_MIN_CONTRAST = 4.55;
70
+ const STEP = 0.01;
71
+
72
+ // The ink as it reads ON the fill: MUI's dark ink is 87% black, so it is laid
73
+ // over the fill before it is measured, rather than taken as solid black.
74
+ const readsAt = (ink: string, fill: string): number => {
75
+ const [, , , opacity = 1] = decomposeColor(ink).values;
76
+ return getContrastRatio(opacity < 1 ? blend(fill, ink, opacity) : ink, fill);
77
+ };
78
+
79
+ // Light ink (white) wants a darker fill; dark ink a lighter one.
80
+ const awayFromInk = (ink: string): ((color: string, coefficient: number) => string) =>
81
+ getLuminance(ink) > 0.5 ? darken : lighten;
82
+
83
+ /**
84
+ * An endpoint's fill: the brand, moved away from its own ink JUST far enough
85
+ * for that ink to read at AA (FUT-4162).
86
+ *
87
+ * The ink is the palette's `primary.contrastText`, which MUI picks at 3:1, so
88
+ * a brand can ship an ink that reads at 3 to 4.5:1 on it — the default indigo
89
+ * is 4.47:1 under white. Rather than change the ink (every other component
90
+ * shares it), the fill gives way: darker under white ink, lighter under dark
91
+ * ink. A brand that already passes is returned unchanged; the default indigo
92
+ * moves by one percent, which no one can see.
93
+ */
94
+ export const endpointFill = (theme: Theme): string => {
95
+ const { main, contrastText } = theme.palette.primary;
96
+ try {
97
+ if (readsAt(contrastText, main) >= ENDPOINT_MIN_CONTRAST) return main;
98
+ const move = awayFromInk(contrastText);
99
+ for (let coefficient = STEP; coefficient < 1; coefficient += STEP) {
100
+ const fill = move(main, coefficient);
101
+ if (readsAt(contrastText, fill) >= ENDPOINT_MIN_CONTRAST) return fill;
102
+ }
103
+ return move(main, 1);
104
+ } catch {
105
+ // A colour format the helpers cannot decompose: the brand as it is.
106
+ return main;
107
+ }
108
+ };
109
+
110
+ /** A hovered endpoint: one more step the same way, so it only gains contrast. */
111
+ export const endpointHoverFill = (theme: Theme): string => {
112
+ const fill = endpointFill(theme);
113
+ try {
114
+ return awayFromInk(theme.palette.primary.contrastText)(fill, 0.15);
115
+ } catch {
116
+ return fill;
117
+ }
118
+ };
@@ -5,14 +5,20 @@ import React from 'react';
5
5
 
6
6
  import { rem, sxRem } from '../../../tokens/relative';
7
7
 
8
+ import type { DayBand } from './Calendar.band';
9
+ import { bandColor, endpointFill, endpointHoverFill } from './Calendar.band';
8
10
  import type { DayRenderArgs } from './Calendar.types';
9
11
 
10
12
  /**
11
- * A day cell's LARGEST edge, 40 design px through the theme's type scale. The
12
- * cell is a square that fills its grid column up to this size, so the month
13
- * shrinks with its container instead of holding a fixed 304px floor (FUT-3861).
13
+ * A column's width: the 304 design px a month asked for when its seven 40px
14
+ * cells sat 4px apart, shared by seven columns that now touch (FUT-4162). The
15
+ * cell fills its column up to this size, so the month shrinks with its
16
+ * container instead of holding a fixed 304px floor (FUT-3861).
14
17
  */
15
- const CELL_SIZE = sxRem(40);
18
+ const COLUMN_SIZE = sxRem(304 / 7);
19
+
20
+ /** 304/7 wide to 40 tall: the day's face is a 40 design px circle at full size. */
21
+ const CELL_RATIO = '38 / 35';
16
22
 
17
23
  interface DayState extends DayRenderArgs {
18
24
  outside: boolean;
@@ -42,12 +48,24 @@ const dayClassNames = (state: DayState, custom?: string): string =>
42
48
  const isEndpoint = (day: DayRenderArgs): boolean =>
43
49
  day.selected || day.rangeStart || day.rangeEnd;
44
50
 
45
- const backgroundFor = (day: DayRenderArgs): string => {
46
- if (isEndpoint(day)) return 'primary.main';
47
- if (day.inRange || day.hovered) return 'primary.light';
48
- return 'transparent';
51
+ // The band's share of the cell (see `Calendar.band.ts`): all of it, or the
52
+ // half that faces the rest of the range.
53
+ const BAND_IMAGE: Record<Exclude<DayBand, 'none'>, (band: string) => string> = {
54
+ full: (band) => `linear-gradient(${band}, ${band})`,
55
+ after: (band) => `linear-gradient(to right, transparent 50%, ${band} 50%)`,
56
+ before: (band) => `linear-gradient(to left, transparent 50%, ${band} 50%)`,
57
+ };
58
+
59
+ // A gradient's `to right` is physical; a right-to-left grid starts a range on
60
+ // its right, so the two halves trade places there.
61
+ const inDirection = (band: Exclude<DayBand, 'none'>, theme: Theme): Exclude<DayBand, 'none'> => {
62
+ if (theme.direction !== 'rtl' || band === 'full') return band;
63
+ return band === 'after' ? 'before' : 'after';
49
64
  };
50
65
 
66
+ const faceBackgroundFor = (day: DayRenderArgs): ((theme: Theme) => string) | string =>
67
+ isEndpoint(day) ? endpointFill : 'transparent';
68
+
51
69
  const colorFor = (day: DayRenderArgs, visible: boolean): string => {
52
70
  if (isEndpoint(day)) return 'primary.contrastText';
53
71
  if (day.disabled) return 'text.disabled';
@@ -57,35 +75,65 @@ const colorFor = (day: DayRenderArgs, visible: boolean): string => {
57
75
  return 'text.primary';
58
76
  };
59
77
 
60
- const hoverBackgroundFor = (day: DayRenderArgs): string | undefined => {
78
+ const hoverBackgroundFor = (day: DayRenderArgs): ((theme: Theme) => string) | string | undefined => {
61
79
  if (day.disabled) return undefined;
62
- return day.selected ? 'primary.dark' : 'action.hover';
80
+ return isEndpoint(day) ? endpointHoverFill : 'action.hover';
63
81
  };
64
82
 
65
- const dayCellSx = (day: DayRenderArgs, visible: boolean): SxProps<Theme> => ({
83
+ // The band reaches the cell's edges so neighbouring days join; where a week
84
+ // row ends, it rounds off instead of stopping square: half the cell each way
85
+ // is a half-round cap on a cell as tall as it is wide.
86
+ const BAND_RADIUS = '50%';
87
+
88
+ /**
89
+ * One cell: the band, painted on the button across its whole column, and the
90
+ * day's round face, a `::before` circle behind the number. The face is a
91
+ * pseudo-element so the button's own content stays the bare day number a host's
92
+ * tests query (`getByText('27')` is the cell, as it always was).
93
+ */
94
+ const dayCellSx = (day: DayRenderArgs, band: DayBand, visible: boolean): SxProps<Theme> => ({
95
+ position: 'relative',
96
+ isolation: 'isolate',
66
97
  display: 'flex',
67
98
  alignItems: 'center',
68
99
  justifyContent: 'center',
69
- // 40 is the size it ASKS for, so the month's intrinsic width stays 304 and a
70
- // shrink-wrapping parent (the picker is inline-flex) still sizes to it; the
71
- // column's `minmax(0, 1fr)` and this `maxWidth` let it give way below that.
72
- width: CELL_SIZE,
100
+ // The column it ASKS for keeps the month's intrinsic width at 304 (FUT-3861),
101
+ // now that the seven columns carry no gap between them; `maxWidth` and the
102
+ // column's `minmax(0, 1fr)` let it give way below that, and the ratio keeps
103
+ // it 40 tall at full size and shrinking with it.
104
+ width: COLUMN_SIZE,
73
105
  maxWidth: '100%',
74
- aspectRatio: '1 / 1',
75
- justifySelf: 'center',
106
+ aspectRatio: CELL_RATIO,
107
+ justifySelf: 'stretch',
76
108
  boxSizing: 'border-box',
77
109
  padding: 0,
78
110
  border: 'none',
79
- borderRadius: 1,
111
+ background: 'none',
112
+ backgroundImage: band === 'none' ? 'none' : (theme: Theme) => BAND_IMAGE[inDirection(band, theme)](bandColor(theme)),
80
113
  cursor: day.disabled ? 'not-allowed' : 'pointer',
81
- backgroundColor: backgroundFor(day),
82
114
  color: colorFor(day, visible),
83
115
  opacity: !day.inCurrentMonth && visible ? 0.5 : 1,
84
- fontWeight: day.today ? 'bold' : 'normal',
85
- '&:hover': {
116
+ fontWeight: day.today || isEndpoint(day) ? 'bold' : 'normal',
117
+ '&:nth-of-type(7n + 1)': { borderStartStartRadius: BAND_RADIUS, borderEndStartRadius: BAND_RADIUS },
118
+ '&:nth-of-type(7n)': { borderStartEndRadius: BAND_RADIUS, borderEndEndRadius: BAND_RADIUS },
119
+ '&::before': {
120
+ content: '""',
121
+ position: 'absolute',
122
+ inset: 0,
123
+ margin: 'auto',
124
+ zIndex: -1,
125
+ // A circle as tall as the cell: 40 design px at full size (FUT-3861).
126
+ height: '100%',
127
+ aspectRatio: '1 / 1',
128
+ maxWidth: '100%',
129
+ borderRadius: '50%',
130
+ backgroundColor: faceBackgroundFor(day),
131
+ },
132
+ '&:hover::before': {
86
133
  backgroundColor: hoverBackgroundFor(day),
87
134
  },
88
- '&:focus': {
135
+ '&:focus': { outline: 'none' },
136
+ '&:focus::before': {
89
137
  outline: (theme: Theme) => `${rem(theme, 2)} solid`,
90
138
  outlineColor: 'primary.main',
91
139
  outlineOffset: sxRem(1),
@@ -94,6 +142,7 @@ const dayCellSx = (day: DayRenderArgs, visible: boolean): SxProps<Theme> => ({
94
142
 
95
143
  export interface CalendarDayProps {
96
144
  day: DayRenderArgs;
145
+ band: DayBand;
97
146
  focused: boolean;
98
147
  showOutsideDays: boolean;
99
148
  dayClassName?: (args: DayRenderArgs) => string;
@@ -104,6 +153,7 @@ export interface CalendarDayProps {
104
153
 
105
154
  export const CalendarDay: FC<CalendarDayProps> = ({
106
155
  day,
156
+ band,
107
157
  focused,
108
158
  showOutsideDays,
109
159
  dayClassName,
@@ -127,7 +177,7 @@ export const CalendarDay: FC<CalendarDayProps> = ({
127
177
  onClick={() => onSelect(day.date)}
128
178
  onMouseEnter={() => onHover(day.date)}
129
179
  onMouseLeave={onHoverEnd}
130
- sx={dayCellSx(day, visible)}
180
+ sx={dayCellSx(day, band, visible)}
131
181
  >
132
182
  {day.selected && (
133
183
  <Box component="span" data-testid="calendar-selected-date" sx={{ display: 'none' }} />
@@ -1,6 +1,7 @@
1
1
  import type { FC } from 'react';
2
2
  import React from 'react';
3
3
 
4
+ import { bandFor } from './Calendar.band';
4
5
  import { isSameDay } from './Calendar.dates';
5
6
  import { buildDayArgs } from './Calendar.selection';
6
7
  import type { CalendarProps, DateRange, MonthMatrixDay, SelectionMode } from './Calendar.types';
@@ -41,6 +42,7 @@ export const CalendarDayCell: FC<DayCellContext & { day: MonthMatrixDay }> = ({
41
42
  return (
42
43
  <CalendarDay
43
44
  day={args}
45
+ band={bandFor({ args, ...context })}
44
46
  focused={isSameDay(args.date, focusedDate)}
45
47
  showOutsideDays={showOutsideDays}
46
48
  dayClassName={dayClassName}
@@ -17,12 +17,22 @@ import { CalendarDayCell } from './CalendarDayCell';
17
17
  const SPACER_WIDTH = sxRem(32);
18
18
 
19
19
  // `minmax(0, 1fr)`, not `1fr`: a bare `1fr` keeps each column at least its
20
- // content's width, which is what held the grid at 304px (FUT-3861).
21
- const GRID_SX = { display: 'grid', gridTemplateColumns: 'repeat(7, minmax(0, 1fr))', gap: 0.5 } as const;
20
+ // content's width, which is what held the grid at 304px (FUT-3861). No column
21
+ // gap: a selected range is one band across the days, and a gap cut it into
22
+ // tiles (FUT-4162). Rows keep theirs. Items centre in their column: the built-in
23
+ // day stretches across it, a host's `renderDay` cell sits in its middle.
24
+ const GRID_SX = {
25
+ display: 'grid',
26
+ justifyItems: 'center',
27
+ gridTemplateColumns: 'repeat(7, minmax(0, 1fr))',
28
+ columnGap: 0,
29
+ rowGap: 0.5,
30
+ } as const;
22
31
 
23
32
  /**
24
- * A month takes the room it is given, from nothing up to seven full cells and
25
- * their gaps (7 × 40 + 6 × 4 design px). Months side by side keep a 280 basis,
33
+ * A month takes the room it is given, from nothing up to seven full columns
34
+ * (304 design px: what 7 × 40 cells and 6 × 4 gaps came to before the gaps
35
+ * went, FUT-4162). Months side by side keep a 280 basis,
26
36
  * so a multi-month calendar still wraps rather than squeezing every month.
27
37
  */
28
38
  export const MONTH_SX = { flex: `1 1 ${sxRem(280)}`, minWidth: 0, maxWidth: sxRem(304) } as const;
@@ -88,6 +88,7 @@ function App() {
88
88
  | `showRecent` | `boolean` | `false` | Whether to show recent commands section |
89
89
  | `recentCommands` | `string[]` | - | Array of recent command IDs |
90
90
  | `onCommandExecute` | `(command: Command) => void` | - | Callback fired when a command is executed |
91
+ | `copy` | `CommandPaletteCopy` | - | **Required.** The palette's words (`PT_BR_COMMAND_PALETTE_COPY`, `EN_US_COMMAND_PALETTE_COPY`). `closeSearch` names the search row's ✕ for a screen reader; a pack without it falls back to "Close search" |
91
92
 
92
93
  ### Command Interface
93
94