@12-apps/ui 6.77.2 → 6.78.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 (581) hide show
  1. package/NATIVE.md +1 -1
  2. package/components-catalog.md +8 -0
  3. package/dist/_internal/components/data-display/Badge/Badge.js +3 -3
  4. package/dist/_internal/components/data-display/Badge/Badge.styles.js +3 -3
  5. package/dist/_internal/components/data-display/Badge/BadgeContent.js +3 -3
  6. package/dist/_internal/components/data-display/CardKit/CardKebab.js +5 -5
  7. package/dist/_internal/components/data-display/CardKit/use-remove-confirm.js +5 -5
  8. package/dist/_internal/components/data-display/CardKit/use-row-confirm.js +5 -5
  9. package/dist/_internal/components/data-display/Carousel/Carousel.chrome.js +3 -3
  10. package/dist/_internal/components/data-display/Carousel/Carousel.js +3 -3
  11. package/dist/_internal/components/data-display/Carousel/Carousel.parts.js +3 -3
  12. package/dist/_internal/components/data-display/Carousel/Carousel.styles.js +3 -3
  13. package/dist/_internal/components/data-display/Chart/Chart.js +3 -3
  14. package/dist/_internal/components/data-display/Chart/SpecChart.js +3 -3
  15. package/dist/_internal/components/data-display/Chart/chart-context.js +3 -3
  16. package/dist/_internal/components/data-display/Chart/chart-internals.js +3 -3
  17. package/dist/_internal/components/data-display/Chart/chart-renderers.js +3 -3
  18. package/dist/_internal/components/data-display/DataViews/DataViewsGrid.js +57 -57
  19. package/dist/_internal/components/data-display/DataViews/DataViewsTableBase.js +71 -71
  20. package/dist/_internal/components/data-display/DataViews/DeleteViewDialog.js +5 -5
  21. package/dist/_internal/components/data-display/DataViews/ManageViewsDialog.js +6 -6
  22. package/dist/_internal/components/data-display/DataViews/SaveViewModal.js +8 -8
  23. package/dist/_internal/components/data-display/DataViews/data-views-bar-controls.js +3 -3
  24. package/dist/_internal/components/data-display/DataViews/data-views-card-body.js +6 -6
  25. package/dist/_internal/components/data-display/DataViews/data-views-category-pill.js +19 -19
  26. package/dist/_internal/components/data-display/DataViews/data-views-columns.js +6 -6
  27. package/dist/_internal/components/data-display/DataViews/data-views-day-input.js +3 -3
  28. package/dist/_internal/components/data-display/DataViews/data-views-display-panel.js +6 -6
  29. package/dist/_internal/components/data-display/DataViews/data-views-empty.js +5 -5
  30. package/dist/_internal/components/data-display/DataViews/data-views-export.js +5 -5
  31. package/dist/_internal/components/data-display/DataViews/data-views-filter-panel.js +30 -30
  32. package/dist/_internal/components/data-display/DataViews/data-views-grid-bodies.js +8 -8
  33. package/dist/_internal/components/data-display/DataViews/data-views-grid-helpers.js +5 -5
  34. package/dist/_internal/components/data-display/DataViews/data-views-grid-parts.js +54 -54
  35. package/dist/_internal/components/data-display/DataViews/data-views-inline-bar.js +31 -31
  36. package/dist/_internal/components/data-display/DataViews/data-views-more-fields.js +25 -25
  37. package/dist/_internal/components/data-display/DataViews/data-views-more-filters.js +28 -28
  38. package/dist/_internal/components/data-display/DataViews/data-views-number-input.js +3 -3
  39. package/dist/_internal/components/data-display/DataViews/data-views-pagination.js +5 -5
  40. package/dist/_internal/components/data-display/DataViews/data-views-quick-chip.js +3 -3
  41. package/dist/_internal/components/data-display/DataViews/data-views-range-pill.js +6 -6
  42. package/dist/_internal/components/data-display/DataViews/data-views-search.js +3 -3
  43. package/dist/_internal/components/data-display/DataViews/data-views-select-all-strip.js +5 -5
  44. package/dist/_internal/components/data-display/DataViews/data-views-shell-toolbar.js +17 -17
  45. package/dist/_internal/components/data-display/DataViews/data-views-table-parts.js +18 -18
  46. package/dist/_internal/components/data-display/DataViews/data-views-toolbar.js +16 -16
  47. package/dist/_internal/components/data-display/DataViews/data-views-view-nav.js +5 -5
  48. package/dist/_internal/components/data-display/DataViews/use-data-views-state.js +7 -7
  49. package/dist/_internal/components/data-display/FleetMap/FleetBody.js +7 -7
  50. package/dist/_internal/components/data-display/FleetMap/FleetCanvas.js +6 -6
  51. package/dist/_internal/components/data-display/FleetMap/FleetMap.fixtures.js +2 -2
  52. package/dist/_internal/components/data-display/FleetMap/FleetMap.js +9 -9
  53. package/dist/_internal/components/data-display/LazyImage/LazyImage.js +3 -3
  54. package/dist/_internal/components/data-display/MapPreview/MapLayers.js +4 -4
  55. package/dist/_internal/components/data-display/MapPreview/MapPreview.js +5 -5
  56. package/dist/_internal/components/data-display/MapPreview/MapSearchBar.js +3 -3
  57. package/dist/_internal/components/data-display/Sheet/Sheet.body.js +3 -3
  58. package/dist/_internal/components/data-display/Sheet/Sheet.js +3 -3
  59. package/dist/_internal/components/data-display/Sheet/Sheet.styles.js +3 -3
  60. package/dist/_internal/components/data-display/index.js +10 -10
  61. package/dist/_internal/components/feedback/ConfirmAction/ConfirmButton.js +5 -5
  62. package/dist/_internal/components/feedback/NotificationStatusNotice/NotificationStatusNotice.js +5 -5
  63. package/dist/_internal/components/feedback/SequenceResolver/SequenceResolver.js +56 -0
  64. package/dist/_internal/components/feedback/SequenceResolver/SequenceResolver.metrics.js +8 -0
  65. package/dist/_internal/components/feedback/SequenceResolver/SequenceResolver.metrics.js.map +1 -0
  66. package/dist/_internal/components/feedback/SequenceResolver/SequenceResolver.parts.js +52 -0
  67. package/dist/_internal/components/feedback/SequenceResolver/SequenceResolver.parts.js.map +1 -0
  68. package/dist/_internal/components/feedback/SequenceResolver/SequenceResolver.styles.js +58 -0
  69. package/dist/_internal/components/feedback/SequenceResolver/SequenceResolver.styles.js.map +1 -0
  70. package/dist/_internal/components/feedback/SequenceResolver/SequenceResolver.types.js +1 -0
  71. package/dist/_internal/components/feedback/SequenceResolver/SequenceResolver.types.js.map +1 -0
  72. package/dist/_internal/components/feedback/SequenceResolver/sequence-model.js +28 -0
  73. package/dist/_internal/components/feedback/SequenceResolver/sequence-model.js.map +1 -0
  74. package/dist/_internal/components/feedback/SequenceResolver/useSequenceRun.js +9 -0
  75. package/dist/_internal/components/feedback/SequenceResolver/useSequenceRun.js.map +1 -0
  76. package/dist/_internal/components/feedback/TutorialOverlay/TutorialOverlay.js +2 -2
  77. package/dist/_internal/components/feedback/index.js +40 -23
  78. package/dist/_internal/components/form/AddressAutocomplete/AddressAutocomplete.hooks.js +4 -4
  79. package/dist/_internal/components/form/AddressAutocomplete/AddressAutocomplete.js +11 -11
  80. package/dist/_internal/components/form/AddressAutocomplete/AddressAutocompleteField.js +5 -5
  81. package/dist/_internal/components/form/AddressAutocomplete/AddressFallbackField.js +4 -4
  82. package/dist/_internal/components/form/AddressAutocomplete/AddressInputField.js +4 -4
  83. package/dist/_internal/components/form/AddressAutocomplete/AddressTextField.js +3 -3
  84. package/dist/_internal/components/form/Autocomplete/Autocomplete.js +4 -4
  85. package/dist/_internal/components/form/Autocomplete/Autocomplete.parts.js +3 -3
  86. package/dist/_internal/components/form/Button/Button.js +4 -4
  87. package/dist/_internal/components/form/Button/Button.styles.js +3 -3
  88. package/dist/_internal/components/form/Calendar/Calendar.js +2 -2
  89. package/dist/_internal/components/form/CategorySelect/CategoryPanel.js +8 -8
  90. package/dist/_internal/components/form/CategorySelect/CategoryPanelFoot.js +4 -4
  91. package/dist/_internal/components/form/CategorySelect/CategoryPanelHead.js +4 -4
  92. package/dist/_internal/components/form/CategorySelect/CategoryPanelList.js +5 -5
  93. package/dist/_internal/components/form/CategorySelect/CategoryRows.js +4 -4
  94. package/dist/_internal/components/form/CategorySelect/CategorySelect.js +11 -11
  95. package/dist/_internal/components/form/CategorySelect/CategorySelect.styles.js +3 -3
  96. package/dist/_internal/components/form/CategorySelect/CategoryTrigger.js +4 -4
  97. package/dist/_internal/components/form/CepField/CepField.js +6 -6
  98. package/dist/_internal/components/form/CodeEditor/CodeEditor.js +3 -3
  99. package/dist/_internal/components/form/Command/Command.js +5 -5
  100. package/dist/_internal/components/form/Command/Command.styles.js +3 -3
  101. package/dist/_internal/components/form/CreatableSelect/CreatableSelect.js +3 -3
  102. package/dist/_internal/components/form/DateRangePicker/DateRangePicker.hooks.js +5 -5
  103. package/dist/_internal/components/form/DateRangePicker/DateRangePicker.js +9 -9
  104. package/dist/_internal/components/form/DateRangePicker/DateRangePicker.range.js +4 -4
  105. package/dist/_internal/components/form/DateRangePicker/DateRangePickerFields.js +5 -5
  106. package/dist/_internal/components/form/Input/Input.factory.js +4 -4
  107. package/dist/_internal/components/form/Input/Input.js +5 -5
  108. package/dist/_internal/components/form/Input/Input.styles.js +3 -3
  109. package/dist/_internal/components/form/InputOTP/InputOTP.js +4 -4
  110. package/dist/_internal/components/form/InputOTP/InputOTP.styles.js +3 -3
  111. package/dist/_internal/components/form/Label/Label.js +3 -3
  112. package/dist/_internal/components/form/Label/Label.styles.js +3 -3
  113. package/dist/_internal/components/form/Menubar/Menubar.item.js +3 -3
  114. package/dist/_internal/components/form/Menubar/Menubar.js +5 -5
  115. package/dist/_internal/components/form/Menubar/Menubar.styles.js +3 -3
  116. package/dist/_internal/components/form/Menubar/Menubar.toolbar.js +3 -3
  117. package/dist/_internal/components/form/NumberField/NumberField.js +6 -6
  118. package/dist/_internal/components/form/PhoneInput/PhoneInput.js +3 -3
  119. package/dist/_internal/components/form/PickerSheet/PickerSheet.js +6 -6
  120. package/dist/_internal/components/form/PickerSheet/PickerSheet.parts.js +4 -4
  121. package/dist/_internal/components/form/PickerSheet/PickerSheet.styles.js +3 -3
  122. package/dist/_internal/components/form/RadioGroup/RadioGroup.js +5 -5
  123. package/dist/_internal/components/form/RadioGroup/RadioGroup.styles.js +3 -3
  124. package/dist/_internal/components/form/RadioGroup/RadioGroup.variants.js +4 -4
  125. package/dist/_internal/components/form/RichTextEditor/RichTextEditor.js +2 -2
  126. package/dist/_internal/components/form/Select/Select.js +6 -6
  127. package/dist/_internal/components/form/Select/Select.menu.js +4 -4
  128. package/dist/_internal/components/form/Select/Select.searchable.js +4 -4
  129. package/dist/_internal/components/form/Select/Select.styles.js +3 -3
  130. package/dist/_internal/components/form/Textarea/Textarea.js +3 -3
  131. package/dist/_internal/components/form/Textarea/TextareaRichEditor.js +4 -4
  132. package/dist/_internal/components/form/Toggle/Toggle.js +4 -4
  133. package/dist/_internal/components/form/Toggle/Toggle.styles.js +3 -3
  134. package/dist/_internal/components/form/ToggleGroup/ToggleGroup.js +3 -3
  135. package/dist/_internal/components/form/UploadButton/UploadButton.js +2 -2
  136. package/dist/_internal/components/form/index.js +64 -64
  137. package/dist/_internal/components/form/total-form/Fields/CategoryField.js +12 -12
  138. package/dist/_internal/components/form/total-form/Fields/CepField.js +7 -7
  139. package/dist/_internal/components/form/total-form/Fields/SelectField.js +7 -7
  140. package/dist/_internal/components/form/total-form/Fields/TextField.js +6 -6
  141. package/dist/_internal/components/form/total-form/Fields/ToggleField.js +4 -4
  142. package/dist/_internal/components/form/total-form/Fields/index.js +30 -30
  143. package/dist/_internal/components/form/total-form/SubmitButton.js +5 -5
  144. package/dist/_internal/components/index.js +165 -155
  145. package/dist/_internal/components/layout/Box/Box.js +6 -6
  146. package/dist/_internal/components/layout/ContentToolbar/ColumnsMenu.js +3 -3
  147. package/dist/_internal/components/layout/ContentToolbar/FilterTrigger.js +3 -3
  148. package/dist/_internal/components/layout/ContentToolbar/MultiSelectDropdown.js +4 -4
  149. package/dist/_internal/components/layout/ContentToolbar/MultiSelectTriggers.js +3 -3
  150. package/dist/_internal/components/layout/ContentToolbar/SavedViewsMenu.js +3 -3
  151. package/dist/_internal/components/layout/ContentToolbar/SortByDropdown.js +3 -3
  152. package/dist/_internal/components/layout/ContentToolbar/ViewSelector.js +3 -3
  153. package/dist/_internal/components/layout/Screen/Screen.js +7 -7
  154. package/dist/_internal/components/layout/SettingCard/SettingCard.js +11 -11
  155. package/dist/_internal/components/layout/SettingCard/SettingCard.parts.js +9 -9
  156. package/dist/_internal/components/layout/SettingCard/SettingCard.summary.js +10 -10
  157. package/dist/_internal/components/layout/SettingCard/SettingGrid.js +10 -10
  158. package/dist/_internal/components/layout/SettingCard/SettingGroup.js +13 -13
  159. package/dist/_internal/components/layout/SettingCard/SettingSwitch.js +11 -11
  160. package/dist/_internal/components/layout/SettingCard/SettingToggle.js +13 -13
  161. package/dist/_internal/components/layout/SettingsLayout/SettingsLayout.js +3 -3
  162. package/dist/_internal/components/layout/SettingsLayout/SettingsPanel.js +2 -2
  163. package/dist/_internal/components/layout/Stack/Stack.js +7 -7
  164. package/dist/_internal/components/layout/TableFilter/TableFilter.js +3 -3
  165. package/dist/_internal/components/layout/index.js +36 -36
  166. package/dist/_internal/components/navigation/AppHeader/AppHeader.details.js +6 -6
  167. package/dist/_internal/components/navigation/AppHeader/AppHeader.identity.js +3 -3
  168. package/dist/_internal/components/navigation/NavigationMenu/NavigationMegaSection.js +2 -2
  169. package/dist/_internal/components/navigation/NavigationMenu/NavigationMenu.js +4 -4
  170. package/dist/_internal/components/navigation/NavigationMenu/NavigationStandardBody.js +2 -2
  171. package/dist/_internal/components/navigation/Pagination/Pagination.js +4 -4
  172. package/dist/_internal/components/navigation/Pagination/PaginationParts.js +3 -3
  173. package/dist/_internal/components/navigation/SectionNav/SectionNav.bar.js +3 -3
  174. package/dist/_internal/components/navigation/SectionNav/SectionNav.js +6 -6
  175. package/dist/_internal/components/navigation/SectionNav/SectionNav.parts.js +3 -3
  176. package/dist/_internal/components/navigation/SectionNav/SectionNav.primary.js +3 -3
  177. package/dist/_internal/components/navigation/SectionNav/SectionNav.rail.js +3 -3
  178. package/dist/_internal/components/navigation/SectionNav/SectionNav.railCreate.js +3 -3
  179. package/dist/_internal/components/navigation/SectionNav/SectionNav.sheet.js +3 -3
  180. package/dist/_internal/components/navigation/SectionNav/__stories__/fixtures.js +3 -3
  181. package/dist/_internal/components/navigation/Tabs/Tabs.js +2 -2
  182. package/dist/_internal/components/navigation/Tabs/Tabs.styles.js +2 -2
  183. package/dist/_internal/components/navigation/index.js +29 -29
  184. package/dist/_internal/components/utility/WorkflowStep/WorkflowStep.helpers.js +3 -3
  185. package/dist/_internal/components/utility/WorkflowStep/WorkflowStep.js +3 -3
  186. package/dist/_internal/components/utility/WorkflowStep/WorkflowStep.parts.js +3 -3
  187. package/dist/_internal/components/utility/WorkflowStep/WorkflowStepRow.js +3 -3
  188. package/dist/_internal/components/utility/index.js +7 -7
  189. package/dist/_internal/en-US.data-display.js +2 -2
  190. package/dist/_internal/icons/Icon.js +6 -6
  191. package/dist/_internal/provider/UiProvider.js +5 -5
  192. package/dist/_internal/provider/mui-bridge.js +4 -4
  193. package/dist/_internal/provider/use-ui-theme.js +5 -5
  194. package/dist/_internal/social-login-button/social-login-button.js +5 -5
  195. package/dist/_internal/tokens/density.js +3 -3
  196. package/dist/_internal/tokens/field-height.js +2 -2
  197. package/dist/_internal/user-avatar/user-avatar.js +5 -5
  198. package/dist/charts.js +3 -3
  199. package/dist/{chunk-75FHDUJW.js → chunk-2D4WKET2.js} +5 -5
  200. package/dist/{chunk-3O2OJW4O.js → chunk-2QO3BKUQ.js} +8 -8
  201. package/dist/{chunk-HXCUKZOB.js → chunk-2VHAD4NE.js} +3 -3
  202. package/dist/{chunk-FJ3UZ4RC.js → chunk-33MMQHYU.js} +2 -2
  203. package/dist/{chunk-CBO46LJH.js → chunk-3HSLEUVW.js} +5 -5
  204. package/dist/chunk-3LUT2C5M.js +122 -0
  205. package/dist/chunk-3LUT2C5M.js.map +1 -0
  206. package/dist/{chunk-6VTOGR36.js → chunk-3XZZSHE5.js} +5 -5
  207. package/dist/{chunk-BLINEMVO.js → chunk-3YLRR4JM.js} +3 -3
  208. package/dist/{chunk-PD7MKJCM.js → chunk-4AJY7HMH.js} +5 -5
  209. package/dist/{chunk-UXQVJXQ3.js → chunk-4HUSG5MR.js} +2 -2
  210. package/dist/{chunk-7CPLKAL6.js → chunk-4M5GEKPM.js} +2 -2
  211. package/dist/{chunk-WEMI4PV7.js → chunk-4MQ6XTIJ.js} +5 -5
  212. package/dist/{chunk-7FFY4LJY.js → chunk-5463SZOH.js} +3 -3
  213. package/dist/{chunk-CAX3NFFE.js → chunk-555TUQ7E.js} +4 -4
  214. package/dist/{chunk-5KGABAQB.js → chunk-5752357K.js} +4 -4
  215. package/dist/{chunk-ZOLUUX4B.js → chunk-5J7SA4CZ.js} +4 -4
  216. package/dist/chunk-5UBP2DJ4.js +102 -0
  217. package/dist/chunk-5UBP2DJ4.js.map +1 -0
  218. package/dist/{chunk-YOXYSAUI.js → chunk-5USHYSCO.js} +2 -2
  219. package/dist/{chunk-5AQLJ4AL.js → chunk-62XVHRTX.js} +2 -2
  220. package/dist/{chunk-SO5OU2ZV.js → chunk-64AOS2WA.js} +2 -2
  221. package/dist/{chunk-75I42HHE.js → chunk-66QQ7YQN.js} +2 -2
  222. package/dist/{chunk-GG7IOJAG.js → chunk-6J7RGNSF.js} +4 -4
  223. package/dist/{chunk-GCBWZ3MX.js → chunk-6LMYQJZP.js} +2 -2
  224. package/dist/{chunk-4SQ2WCZA.js → chunk-6MOJK2QT.js} +2 -2
  225. package/dist/{chunk-Q6MZHT2F.js → chunk-6RTE4UNO.js} +5 -5
  226. package/dist/{chunk-CW5Z67NA.js → chunk-72GJRV5J.js} +2 -2
  227. package/dist/{chunk-LYB6YYTG.js → chunk-72OG3AGH.js} +2 -2
  228. package/dist/{chunk-Y46R26TE.js → chunk-7AC2UGTU.js} +3 -3
  229. package/dist/{chunk-NPSARV2I.js → chunk-7P5PNRBT.js} +8 -8
  230. package/dist/{chunk-RPKUZDRY.js → chunk-7QXEEZFO.js} +2 -2
  231. package/dist/{chunk-SUXT6QAY.js → chunk-7RG37FVT.js} +2 -2
  232. package/dist/{chunk-5F7HYYGM.js → chunk-7ZROYGUG.js} +3 -3
  233. package/dist/{chunk-LY5I3ZSV.js → chunk-A2YLFKQU.js} +4 -4
  234. package/dist/{chunk-WOUJSKQB.js → chunk-A5NXBOWS.js} +7 -7
  235. package/dist/{chunk-7TKQIZ3K.js → chunk-AAREDFH6.js} +2 -2
  236. package/dist/{chunk-X2GWR75Q.js → chunk-AEYLFBZT.js} +3 -3
  237. package/dist/{chunk-VPGDYI63.js → chunk-AKBL7S7A.js} +5 -5
  238. package/dist/{chunk-6DGNMASB.js → chunk-ALREWFRX.js} +4 -4
  239. package/dist/{chunk-NQ6P7O7C.js → chunk-ASZGMKB4.js} +2 -2
  240. package/dist/{chunk-CWCNLITK.js → chunk-AXZCCX7O.js} +2 -2
  241. package/dist/{chunk-FVL6U72V.js → chunk-B2JYQBO4.js} +2 -2
  242. package/dist/{chunk-IU2WSJ4F.js → chunk-BARTUKJU.js} +2 -2
  243. package/dist/{chunk-4JNC5AEF.js → chunk-BTGXHQX3.js} +2 -2
  244. package/dist/{chunk-VMTOLAZ5.js → chunk-BWFQEASG.js} +5 -5
  245. package/dist/{chunk-7LMR2H7O.js → chunk-C47LBKEG.js} +4 -4
  246. package/dist/{chunk-2K2Q7VGV.js → chunk-C5JCARNE.js} +2 -2
  247. package/dist/{chunk-OK3OJGJY.js → chunk-C7CIUDXZ.js} +3 -3
  248. package/dist/chunk-CHP3QIS3.js +218 -0
  249. package/dist/chunk-CHP3QIS3.js.map +1 -0
  250. package/dist/{chunk-YWXCLPCX.js → chunk-CO7GH3W7.js} +2 -2
  251. package/dist/{chunk-ARVLS57B.js → chunk-CW6Y32N2.js} +2 -2
  252. package/dist/{chunk-LZJHHMOF.js → chunk-DRJL3JHR.js} +2 -2
  253. package/dist/chunk-DTNXP7ZS.js +1 -0
  254. package/dist/chunk-DTNXP7ZS.js.map +1 -0
  255. package/dist/{chunk-7IXXASQ6.js → chunk-DXFKPY2K.js} +4 -4
  256. package/dist/chunk-E53MMMDA.js +209 -0
  257. package/dist/chunk-E53MMMDA.js.map +1 -0
  258. package/dist/{chunk-C2NNJMVY.js → chunk-EBCEDBHX.js} +3 -3
  259. package/dist/{chunk-BRHRK7BK.js → chunk-ENRB6PIN.js} +2 -2
  260. package/dist/{chunk-HHFVDOA7.js → chunk-F6IMOMA3.js} +3 -3
  261. package/dist/{chunk-YTDUIU7X.js → chunk-F6LZHF4O.js} +2 -2
  262. package/dist/{chunk-NZXRPWPW.js → chunk-FAIQCGSL.js} +5 -5
  263. package/dist/{chunk-HMWSMRLM.js → chunk-FTDGFWB5.js} +5 -5
  264. package/dist/{chunk-ZE4HF3KC.js → chunk-GFXS5PJL.js} +3 -3
  265. package/dist/{chunk-YEKPQAOW.js → chunk-GQ2T44BC.js} +2 -2
  266. package/dist/{chunk-ZAZOBTVS.js → chunk-GSXYXMCV.js} +3 -3
  267. package/dist/{chunk-IZ7JTG3Z.js → chunk-GTT5UKKO.js} +4 -4
  268. package/dist/{chunk-WDSJ6SVY.js → chunk-GXSHLMT4.js} +2 -2
  269. package/dist/chunk-HHPFWEJY.js +28 -0
  270. package/dist/chunk-HHPFWEJY.js.map +1 -0
  271. package/dist/{chunk-3EIRRLCQ.js → chunk-HTGK7QCX.js} +3 -3
  272. package/dist/{chunk-Y3LK6ZQG.js → chunk-I2KAN3YB.js} +2 -2
  273. package/dist/{chunk-M5DBOM7R.js → chunk-ICRVLGWD.js} +2 -2
  274. package/dist/{chunk-FVNY5BNV.js → chunk-IQ2U5MVO.js} +7 -7
  275. package/dist/{chunk-LABIUXDM.js → chunk-J7C7FPVO.js} +2 -2
  276. package/dist/{chunk-CYH5QQUP.js → chunk-KHIUYLKY.js} +4 -4
  277. package/dist/{chunk-PPEHBI5O.js → chunk-KXTNTDRD.js} +2 -2
  278. package/dist/{chunk-IBOFASAZ.js → chunk-LC6ND4ET.js} +2 -2
  279. package/dist/{chunk-2ONUSNPZ.js → chunk-LG52LMAM.js} +3 -3
  280. package/dist/{chunk-3Y7LSMGV.js → chunk-LH4VKUZC.js} +2 -2
  281. package/dist/{chunk-CFDWKQZT.js → chunk-LODYTVOO.js} +2 -2
  282. package/dist/{chunk-QITQFCFY.js → chunk-LUNN5GTB.js} +2 -2
  283. package/dist/{chunk-ACBHZG3Z.js → chunk-M74YHHJE.js} +5 -5
  284. package/dist/{chunk-BGGVYKVZ.js → chunk-MA6SUE7F.js} +4 -4
  285. package/dist/{chunk-AT6UKTH4.js → chunk-MHFXJRLD.js} +2 -2
  286. package/dist/{chunk-3BDMYTH6.js → chunk-MHLYX6QW.js} +4 -4
  287. package/dist/{chunk-FXECKKPW.js → chunk-MO4FFK62.js} +3 -3
  288. package/dist/{chunk-SAKSIN7E.js → chunk-MQVIYTH5.js} +2 -2
  289. package/dist/{chunk-X3DN2BE3.js → chunk-MSC43MCJ.js} +2 -2
  290. package/dist/{chunk-RHVJ3L4U.js → chunk-MWPD2BXO.js} +2 -2
  291. package/dist/{chunk-TSID4257.js → chunk-N34AOGK3.js} +7 -7
  292. package/dist/{chunk-NZBEE2PR.js → chunk-N3LW5ER5.js} +3 -3
  293. package/dist/{chunk-Q3HYEAVQ.js → chunk-N3ZOZWP5.js} +2 -2
  294. package/dist/{chunk-AO4NDR6W.js → chunk-NTO5DALI.js} +2 -2
  295. package/dist/{chunk-RVZMKGWQ.js → chunk-NYWAAXDX.js} +2 -2
  296. package/dist/{chunk-CHGUN7OF.js → chunk-O6SAU5JA.js} +2 -2
  297. package/dist/{chunk-TDWA2XFJ.js → chunk-OE3SQOZV.js} +2 -2
  298. package/dist/{chunk-VLH3IMJG.js → chunk-OFXCSLGX.js} +2 -2
  299. package/dist/{chunk-E54XIRY2.js → chunk-PIP7XII2.js} +5 -5
  300. package/dist/{chunk-SKIAWOUC.js → chunk-PTQRJEPN.js} +5 -5
  301. package/dist/{chunk-S5VIN3EB.js → chunk-Q6PRGXR2.js} +2 -2
  302. package/dist/{chunk-DQ3O252B.js → chunk-QCNUMOTL.js} +2 -2
  303. package/dist/{chunk-5IIHAYFF.js → chunk-QCQWOSSD.js} +2 -2
  304. package/dist/{chunk-Y2CHJLWD.js → chunk-QIYX33SH.js} +9 -9
  305. package/dist/{chunk-RGVNXES5.js → chunk-QQHZBJMU.js} +4 -4
  306. package/dist/{chunk-XZFTRGRW.js → chunk-QVO4SIS7.js} +2 -2
  307. package/dist/{chunk-OY437NRJ.js → chunk-QYX4567K.js} +2 -2
  308. package/dist/{chunk-7JKDB5J5.js → chunk-R53ZOW4B.js} +4 -4
  309. package/dist/{chunk-HSIUVFXE.js → chunk-RA6W37NZ.js} +2 -2
  310. package/dist/{chunk-HDTFLW42.js → chunk-REMODSVN.js} +2 -2
  311. package/dist/{chunk-R2ODLE6G.js → chunk-RIDCGFGM.js} +2 -2
  312. package/dist/{chunk-RNQ2PGBB.js → chunk-RKVS5AA6.js} +3 -3
  313. package/dist/{chunk-MKNW4FRR.js → chunk-RS576GOH.js} +7 -7
  314. package/dist/{chunk-NRADSKGH.js → chunk-SCAPSX6T.js} +2 -2
  315. package/dist/{chunk-HG2YLNGJ.js → chunk-SFVHZAGE.js} +2 -2
  316. package/dist/{chunk-5HFB4WFE.js → chunk-T743IIER.js} +3 -3
  317. package/dist/{chunk-C6LW34TV.js → chunk-THD3N4BJ.js} +2 -2
  318. package/dist/{chunk-IDRVQVDL.js → chunk-TNDTEI6D.js} +2 -2
  319. package/dist/{chunk-U2QV4TTZ.js → chunk-TR7ZA67L.js} +2 -2
  320. package/dist/chunk-TWAKMV5B.js +1 -0
  321. package/dist/chunk-TWAKMV5B.js.map +1 -0
  322. package/dist/{chunk-EP3DRILI.js → chunk-U36BXXQ7.js} +2 -2
  323. package/dist/{chunk-AJ5LXKLQ.js → chunk-U4G3KY6L.js} +6 -6
  324. package/dist/{chunk-UAFSEZ2E.js → chunk-UQUN2NGE.js} +2 -2
  325. package/dist/{chunk-6A4PTK5Q.js → chunk-V4JMZZGH.js} +5 -5
  326. package/dist/{chunk-5M7T36AT.js → chunk-VBGC7G4F.js} +3 -3
  327. package/dist/{chunk-IWJTLCTF.js → chunk-VD72JGHA.js} +3 -3
  328. package/dist/{chunk-4NG3LTRX.js → chunk-VJG43WKU.js} +2 -2
  329. package/dist/{chunk-BGSUSSAV.js → chunk-VMN6KG2U.js} +2 -2
  330. package/dist/{chunk-YRF7WFAQ.js → chunk-WA6F4NOO.js} +8 -8
  331. package/dist/{chunk-HOJL2GKW.js → chunk-WC3W36AM.js} +4 -4
  332. package/dist/{chunk-OQW4OERS.js → chunk-WNIL2KTB.js} +3 -3
  333. package/dist/{chunk-NQYC7V5N.js → chunk-WOSUYOAU.js} +5 -5
  334. package/dist/{chunk-DDNUPFPE.js → chunk-WT7VZDTI.js} +5 -5
  335. package/dist/{chunk-DOWVAC4U.js → chunk-XODBYGTH.js} +2 -2
  336. package/dist/{chunk-YNZUYZ2O.js → chunk-XRDH24J7.js} +2 -2
  337. package/dist/{chunk-DQKMOGYZ.js → chunk-XYFBJH6F.js} +4 -4
  338. package/dist/{chunk-ZCXQ4ZB6.js → chunk-XYSE2QZN.js} +2 -2
  339. package/dist/{chunk-MIUPTZS6.js → chunk-Y4KR4LT2.js} +2 -2
  340. package/dist/{chunk-D7PVIC33.js → chunk-Y7YJYUNV.js} +4 -4
  341. package/dist/{chunk-GHP5JLL3.js → chunk-YASSCBWN.js} +2 -2
  342. package/dist/{chunk-QLJU7UUI.js → chunk-YH7G44WL.js} +2 -2
  343. package/dist/chunk-YJBWDDW7.js +162 -0
  344. package/dist/chunk-YJBWDDW7.js.map +1 -0
  345. package/dist/{chunk-FS55MQ4Q.js → chunk-YNDTLBOH.js} +2 -2
  346. package/dist/{chunk-6E4L53DF.js → chunk-YZX4DVRS.js} +2 -2
  347. package/dist/{chunk-WULEQKU7.js → chunk-Z7COWR4K.js} +2 -2
  348. package/dist/{chunk-NYA26GV2.js → chunk-ZCCKIWZU.js} +2 -2
  349. package/dist/{chunk-5WUXJDFP.js → chunk-ZTPB7PVI.js} +2 -2
  350. package/dist/{chunk-NKHNUTTY.js → chunk-ZXHODKHH.js} +3 -3
  351. package/dist/{chunk-7LOCLC24.js → chunk-ZYKDUKAH.js} +2 -2
  352. package/dist/data-display/Badge.js +3 -3
  353. package/dist/data-display/CardKit.js +6 -6
  354. package/dist/data-display/Carousel.js +3 -3
  355. package/dist/data-display/Chart.js +3 -3
  356. package/dist/data-display/DataViews.js +71 -71
  357. package/dist/data-display/FleetMap.js +9 -9
  358. package/dist/data-display/LazyImage.js +3 -3
  359. package/dist/data-display/MapPreview.js +5 -5
  360. package/dist/data-display/Sheet.js +3 -3
  361. package/dist/en-US.js +6 -6
  362. package/dist/feedback/ConfirmAction.js +5 -5
  363. package/dist/feedback/NotificationStatusNotice.js +5 -5
  364. package/dist/feedback/SequenceResolver.js +56 -0
  365. package/dist/feedback/SequenceResolver.js.map +1 -0
  366. package/dist/feedback/TutorialOverlay.js +2 -2
  367. package/dist/form/AddressAutocomplete.js +11 -11
  368. package/dist/form/Autocomplete.js +4 -4
  369. package/dist/form/Button.js +4 -4
  370. package/dist/form/Calendar.js +2 -2
  371. package/dist/form/CategorySelect.js +11 -11
  372. package/dist/form/CepField.js +6 -6
  373. package/dist/form/CodeEditor.js +3 -3
  374. package/dist/form/Command.js +5 -5
  375. package/dist/form/CreatableSelect.js +3 -3
  376. package/dist/form/DateRangePicker.js +9 -9
  377. package/dist/form/Input/outlined.js +5 -5
  378. package/dist/form/Input.js +5 -5
  379. package/dist/form/InputOTP.js +4 -4
  380. package/dist/form/Label.js +3 -3
  381. package/dist/form/MenuSelect.js +4 -4
  382. package/dist/form/Menubar.js +5 -5
  383. package/dist/form/NumberField.js +6 -6
  384. package/dist/form/PhoneInput.js +3 -3
  385. package/dist/form/PickerSheet.js +6 -6
  386. package/dist/form/RadioGroup.js +5 -5
  387. package/dist/form/RichTextEditor.js +2 -2
  388. package/dist/form/Select.js +6 -6
  389. package/dist/form/Textarea.js +3 -3
  390. package/dist/form/Toggle.js +4 -4
  391. package/dist/form/ToggleGroup.js +3 -3
  392. package/dist/form/UploadButton.js +2 -2
  393. package/dist/form/total-form.js +32 -32
  394. package/dist/icons.js +6 -6
  395. package/dist/layout/Box.js +6 -6
  396. package/dist/layout/ContentToolbar.js +11 -11
  397. package/dist/layout/Screen.js +7 -7
  398. package/dist/layout/SettingCard.js +18 -18
  399. package/dist/layout/SettingsLayout.js +3 -3
  400. package/dist/layout/Stack.js +7 -7
  401. package/dist/layout/TableFilter.js +3 -3
  402. package/dist/locales.js +11 -11
  403. package/dist/navigation/AppHeader.js +8 -8
  404. package/dist/navigation/NavigationMenu.js +4 -4
  405. package/dist/navigation/Pagination.js +4 -4
  406. package/dist/navigation/SectionNav.js +6 -6
  407. package/dist/navigation/Tabs.js +2 -2
  408. package/dist/provider.js +6 -6
  409. package/dist/pt-BR.js +5 -5
  410. package/dist/social-login-button.js +5 -5
  411. package/dist/tokens.js +4 -4
  412. package/dist/types/components/feedback/SequenceResolver/SequenceResolver.d.ts +17 -0
  413. package/dist/types/components/feedback/SequenceResolver/SequenceResolver.d.ts.map +1 -0
  414. package/dist/types/components/feedback/SequenceResolver/SequenceResolver.metrics.d.ts +33 -0
  415. package/dist/types/components/feedback/SequenceResolver/SequenceResolver.metrics.d.ts.map +1 -0
  416. package/dist/types/components/feedback/SequenceResolver/SequenceResolver.parts.d.ts +61 -0
  417. package/dist/types/components/feedback/SequenceResolver/SequenceResolver.parts.d.ts.map +1 -0
  418. package/dist/types/components/feedback/SequenceResolver/SequenceResolver.styles.d.ts +51 -0
  419. package/dist/types/components/feedback/SequenceResolver/SequenceResolver.styles.d.ts.map +1 -0
  420. package/dist/types/components/feedback/SequenceResolver/SequenceResolver.types.d.ts +175 -0
  421. package/dist/types/components/feedback/SequenceResolver/SequenceResolver.types.d.ts.map +1 -0
  422. package/dist/types/components/feedback/SequenceResolver/index.d.ts +3 -0
  423. package/dist/types/components/feedback/SequenceResolver/index.d.ts.map +1 -0
  424. package/dist/types/components/feedback/SequenceResolver/sequence-model.d.ts +85 -0
  425. package/dist/types/components/feedback/SequenceResolver/sequence-model.d.ts.map +1 -0
  426. package/dist/types/components/feedback/SequenceResolver/useSequenceRun.d.ts +24 -0
  427. package/dist/types/components/feedback/SequenceResolver/useSequenceRun.d.ts.map +1 -0
  428. package/dist/types/components/feedback/index.d.ts +1 -0
  429. package/dist/types/components/feedback/index.d.ts.map +1 -1
  430. package/dist/user-avatar.js +5 -5
  431. package/dist/utility/WorkflowStep.js +3 -3
  432. package/package.json +5 -1
  433. package/src/components/feedback/SequenceResolver/SequenceResolver.md +136 -0
  434. package/src/components/feedback/SequenceResolver/SequenceResolver.metrics.ts +26 -0
  435. package/src/components/feedback/SequenceResolver/SequenceResolver.parts.tsx +307 -0
  436. package/src/components/feedback/SequenceResolver/SequenceResolver.styles.ts +238 -0
  437. package/src/components/feedback/SequenceResolver/SequenceResolver.tsx +179 -0
  438. package/src/components/feedback/SequenceResolver/SequenceResolver.types.ts +185 -0
  439. package/src/components/feedback/SequenceResolver/index.ts +14 -0
  440. package/src/components/feedback/SequenceResolver/sequence-model.ts +181 -0
  441. package/src/components/feedback/SequenceResolver/useSequenceRun.ts +205 -0
  442. package/src/components/feedback/index.ts +1 -0
  443. package/dist/chunk-6YIKVXAV.js +0 -1
  444. /package/dist/{chunk-6YIKVXAV.js.map → _internal/components/feedback/SequenceResolver/SequenceResolver.js.map} +0 -0
  445. /package/dist/{chunk-75FHDUJW.js.map → chunk-2D4WKET2.js.map} +0 -0
  446. /package/dist/{chunk-3O2OJW4O.js.map → chunk-2QO3BKUQ.js.map} +0 -0
  447. /package/dist/{chunk-HXCUKZOB.js.map → chunk-2VHAD4NE.js.map} +0 -0
  448. /package/dist/{chunk-FJ3UZ4RC.js.map → chunk-33MMQHYU.js.map} +0 -0
  449. /package/dist/{chunk-CBO46LJH.js.map → chunk-3HSLEUVW.js.map} +0 -0
  450. /package/dist/{chunk-6VTOGR36.js.map → chunk-3XZZSHE5.js.map} +0 -0
  451. /package/dist/{chunk-BLINEMVO.js.map → chunk-3YLRR4JM.js.map} +0 -0
  452. /package/dist/{chunk-PD7MKJCM.js.map → chunk-4AJY7HMH.js.map} +0 -0
  453. /package/dist/{chunk-UXQVJXQ3.js.map → chunk-4HUSG5MR.js.map} +0 -0
  454. /package/dist/{chunk-7CPLKAL6.js.map → chunk-4M5GEKPM.js.map} +0 -0
  455. /package/dist/{chunk-WEMI4PV7.js.map → chunk-4MQ6XTIJ.js.map} +0 -0
  456. /package/dist/{chunk-7FFY4LJY.js.map → chunk-5463SZOH.js.map} +0 -0
  457. /package/dist/{chunk-CAX3NFFE.js.map → chunk-555TUQ7E.js.map} +0 -0
  458. /package/dist/{chunk-5KGABAQB.js.map → chunk-5752357K.js.map} +0 -0
  459. /package/dist/{chunk-ZOLUUX4B.js.map → chunk-5J7SA4CZ.js.map} +0 -0
  460. /package/dist/{chunk-YOXYSAUI.js.map → chunk-5USHYSCO.js.map} +0 -0
  461. /package/dist/{chunk-5AQLJ4AL.js.map → chunk-62XVHRTX.js.map} +0 -0
  462. /package/dist/{chunk-SO5OU2ZV.js.map → chunk-64AOS2WA.js.map} +0 -0
  463. /package/dist/{chunk-75I42HHE.js.map → chunk-66QQ7YQN.js.map} +0 -0
  464. /package/dist/{chunk-GG7IOJAG.js.map → chunk-6J7RGNSF.js.map} +0 -0
  465. /package/dist/{chunk-GCBWZ3MX.js.map → chunk-6LMYQJZP.js.map} +0 -0
  466. /package/dist/{chunk-4SQ2WCZA.js.map → chunk-6MOJK2QT.js.map} +0 -0
  467. /package/dist/{chunk-Q6MZHT2F.js.map → chunk-6RTE4UNO.js.map} +0 -0
  468. /package/dist/{chunk-CW5Z67NA.js.map → chunk-72GJRV5J.js.map} +0 -0
  469. /package/dist/{chunk-LYB6YYTG.js.map → chunk-72OG3AGH.js.map} +0 -0
  470. /package/dist/{chunk-Y46R26TE.js.map → chunk-7AC2UGTU.js.map} +0 -0
  471. /package/dist/{chunk-NPSARV2I.js.map → chunk-7P5PNRBT.js.map} +0 -0
  472. /package/dist/{chunk-RPKUZDRY.js.map → chunk-7QXEEZFO.js.map} +0 -0
  473. /package/dist/{chunk-SUXT6QAY.js.map → chunk-7RG37FVT.js.map} +0 -0
  474. /package/dist/{chunk-5F7HYYGM.js.map → chunk-7ZROYGUG.js.map} +0 -0
  475. /package/dist/{chunk-LY5I3ZSV.js.map → chunk-A2YLFKQU.js.map} +0 -0
  476. /package/dist/{chunk-WOUJSKQB.js.map → chunk-A5NXBOWS.js.map} +0 -0
  477. /package/dist/{chunk-7TKQIZ3K.js.map → chunk-AAREDFH6.js.map} +0 -0
  478. /package/dist/{chunk-X2GWR75Q.js.map → chunk-AEYLFBZT.js.map} +0 -0
  479. /package/dist/{chunk-VPGDYI63.js.map → chunk-AKBL7S7A.js.map} +0 -0
  480. /package/dist/{chunk-6DGNMASB.js.map → chunk-ALREWFRX.js.map} +0 -0
  481. /package/dist/{chunk-NQ6P7O7C.js.map → chunk-ASZGMKB4.js.map} +0 -0
  482. /package/dist/{chunk-CWCNLITK.js.map → chunk-AXZCCX7O.js.map} +0 -0
  483. /package/dist/{chunk-FVL6U72V.js.map → chunk-B2JYQBO4.js.map} +0 -0
  484. /package/dist/{chunk-IU2WSJ4F.js.map → chunk-BARTUKJU.js.map} +0 -0
  485. /package/dist/{chunk-4JNC5AEF.js.map → chunk-BTGXHQX3.js.map} +0 -0
  486. /package/dist/{chunk-VMTOLAZ5.js.map → chunk-BWFQEASG.js.map} +0 -0
  487. /package/dist/{chunk-7LMR2H7O.js.map → chunk-C47LBKEG.js.map} +0 -0
  488. /package/dist/{chunk-2K2Q7VGV.js.map → chunk-C5JCARNE.js.map} +0 -0
  489. /package/dist/{chunk-OK3OJGJY.js.map → chunk-C7CIUDXZ.js.map} +0 -0
  490. /package/dist/{chunk-YWXCLPCX.js.map → chunk-CO7GH3W7.js.map} +0 -0
  491. /package/dist/{chunk-ARVLS57B.js.map → chunk-CW6Y32N2.js.map} +0 -0
  492. /package/dist/{chunk-LZJHHMOF.js.map → chunk-DRJL3JHR.js.map} +0 -0
  493. /package/dist/{chunk-7IXXASQ6.js.map → chunk-DXFKPY2K.js.map} +0 -0
  494. /package/dist/{chunk-C2NNJMVY.js.map → chunk-EBCEDBHX.js.map} +0 -0
  495. /package/dist/{chunk-BRHRK7BK.js.map → chunk-ENRB6PIN.js.map} +0 -0
  496. /package/dist/{chunk-HHFVDOA7.js.map → chunk-F6IMOMA3.js.map} +0 -0
  497. /package/dist/{chunk-YTDUIU7X.js.map → chunk-F6LZHF4O.js.map} +0 -0
  498. /package/dist/{chunk-NZXRPWPW.js.map → chunk-FAIQCGSL.js.map} +0 -0
  499. /package/dist/{chunk-HMWSMRLM.js.map → chunk-FTDGFWB5.js.map} +0 -0
  500. /package/dist/{chunk-ZE4HF3KC.js.map → chunk-GFXS5PJL.js.map} +0 -0
  501. /package/dist/{chunk-YEKPQAOW.js.map → chunk-GQ2T44BC.js.map} +0 -0
  502. /package/dist/{chunk-ZAZOBTVS.js.map → chunk-GSXYXMCV.js.map} +0 -0
  503. /package/dist/{chunk-IZ7JTG3Z.js.map → chunk-GTT5UKKO.js.map} +0 -0
  504. /package/dist/{chunk-WDSJ6SVY.js.map → chunk-GXSHLMT4.js.map} +0 -0
  505. /package/dist/{chunk-3EIRRLCQ.js.map → chunk-HTGK7QCX.js.map} +0 -0
  506. /package/dist/{chunk-Y3LK6ZQG.js.map → chunk-I2KAN3YB.js.map} +0 -0
  507. /package/dist/{chunk-M5DBOM7R.js.map → chunk-ICRVLGWD.js.map} +0 -0
  508. /package/dist/{chunk-FVNY5BNV.js.map → chunk-IQ2U5MVO.js.map} +0 -0
  509. /package/dist/{chunk-LABIUXDM.js.map → chunk-J7C7FPVO.js.map} +0 -0
  510. /package/dist/{chunk-CYH5QQUP.js.map → chunk-KHIUYLKY.js.map} +0 -0
  511. /package/dist/{chunk-PPEHBI5O.js.map → chunk-KXTNTDRD.js.map} +0 -0
  512. /package/dist/{chunk-IBOFASAZ.js.map → chunk-LC6ND4ET.js.map} +0 -0
  513. /package/dist/{chunk-2ONUSNPZ.js.map → chunk-LG52LMAM.js.map} +0 -0
  514. /package/dist/{chunk-3Y7LSMGV.js.map → chunk-LH4VKUZC.js.map} +0 -0
  515. /package/dist/{chunk-CFDWKQZT.js.map → chunk-LODYTVOO.js.map} +0 -0
  516. /package/dist/{chunk-QITQFCFY.js.map → chunk-LUNN5GTB.js.map} +0 -0
  517. /package/dist/{chunk-ACBHZG3Z.js.map → chunk-M74YHHJE.js.map} +0 -0
  518. /package/dist/{chunk-BGGVYKVZ.js.map → chunk-MA6SUE7F.js.map} +0 -0
  519. /package/dist/{chunk-AT6UKTH4.js.map → chunk-MHFXJRLD.js.map} +0 -0
  520. /package/dist/{chunk-3BDMYTH6.js.map → chunk-MHLYX6QW.js.map} +0 -0
  521. /package/dist/{chunk-FXECKKPW.js.map → chunk-MO4FFK62.js.map} +0 -0
  522. /package/dist/{chunk-SAKSIN7E.js.map → chunk-MQVIYTH5.js.map} +0 -0
  523. /package/dist/{chunk-X3DN2BE3.js.map → chunk-MSC43MCJ.js.map} +0 -0
  524. /package/dist/{chunk-RHVJ3L4U.js.map → chunk-MWPD2BXO.js.map} +0 -0
  525. /package/dist/{chunk-TSID4257.js.map → chunk-N34AOGK3.js.map} +0 -0
  526. /package/dist/{chunk-NZBEE2PR.js.map → chunk-N3LW5ER5.js.map} +0 -0
  527. /package/dist/{chunk-Q3HYEAVQ.js.map → chunk-N3ZOZWP5.js.map} +0 -0
  528. /package/dist/{chunk-AO4NDR6W.js.map → chunk-NTO5DALI.js.map} +0 -0
  529. /package/dist/{chunk-RVZMKGWQ.js.map → chunk-NYWAAXDX.js.map} +0 -0
  530. /package/dist/{chunk-CHGUN7OF.js.map → chunk-O6SAU5JA.js.map} +0 -0
  531. /package/dist/{chunk-TDWA2XFJ.js.map → chunk-OE3SQOZV.js.map} +0 -0
  532. /package/dist/{chunk-VLH3IMJG.js.map → chunk-OFXCSLGX.js.map} +0 -0
  533. /package/dist/{chunk-E54XIRY2.js.map → chunk-PIP7XII2.js.map} +0 -0
  534. /package/dist/{chunk-SKIAWOUC.js.map → chunk-PTQRJEPN.js.map} +0 -0
  535. /package/dist/{chunk-S5VIN3EB.js.map → chunk-Q6PRGXR2.js.map} +0 -0
  536. /package/dist/{chunk-DQ3O252B.js.map → chunk-QCNUMOTL.js.map} +0 -0
  537. /package/dist/{chunk-5IIHAYFF.js.map → chunk-QCQWOSSD.js.map} +0 -0
  538. /package/dist/{chunk-Y2CHJLWD.js.map → chunk-QIYX33SH.js.map} +0 -0
  539. /package/dist/{chunk-RGVNXES5.js.map → chunk-QQHZBJMU.js.map} +0 -0
  540. /package/dist/{chunk-XZFTRGRW.js.map → chunk-QVO4SIS7.js.map} +0 -0
  541. /package/dist/{chunk-OY437NRJ.js.map → chunk-QYX4567K.js.map} +0 -0
  542. /package/dist/{chunk-7JKDB5J5.js.map → chunk-R53ZOW4B.js.map} +0 -0
  543. /package/dist/{chunk-HSIUVFXE.js.map → chunk-RA6W37NZ.js.map} +0 -0
  544. /package/dist/{chunk-HDTFLW42.js.map → chunk-REMODSVN.js.map} +0 -0
  545. /package/dist/{chunk-R2ODLE6G.js.map → chunk-RIDCGFGM.js.map} +0 -0
  546. /package/dist/{chunk-RNQ2PGBB.js.map → chunk-RKVS5AA6.js.map} +0 -0
  547. /package/dist/{chunk-MKNW4FRR.js.map → chunk-RS576GOH.js.map} +0 -0
  548. /package/dist/{chunk-NRADSKGH.js.map → chunk-SCAPSX6T.js.map} +0 -0
  549. /package/dist/{chunk-HG2YLNGJ.js.map → chunk-SFVHZAGE.js.map} +0 -0
  550. /package/dist/{chunk-5HFB4WFE.js.map → chunk-T743IIER.js.map} +0 -0
  551. /package/dist/{chunk-C6LW34TV.js.map → chunk-THD3N4BJ.js.map} +0 -0
  552. /package/dist/{chunk-IDRVQVDL.js.map → chunk-TNDTEI6D.js.map} +0 -0
  553. /package/dist/{chunk-U2QV4TTZ.js.map → chunk-TR7ZA67L.js.map} +0 -0
  554. /package/dist/{chunk-EP3DRILI.js.map → chunk-U36BXXQ7.js.map} +0 -0
  555. /package/dist/{chunk-AJ5LXKLQ.js.map → chunk-U4G3KY6L.js.map} +0 -0
  556. /package/dist/{chunk-UAFSEZ2E.js.map → chunk-UQUN2NGE.js.map} +0 -0
  557. /package/dist/{chunk-6A4PTK5Q.js.map → chunk-V4JMZZGH.js.map} +0 -0
  558. /package/dist/{chunk-5M7T36AT.js.map → chunk-VBGC7G4F.js.map} +0 -0
  559. /package/dist/{chunk-IWJTLCTF.js.map → chunk-VD72JGHA.js.map} +0 -0
  560. /package/dist/{chunk-4NG3LTRX.js.map → chunk-VJG43WKU.js.map} +0 -0
  561. /package/dist/{chunk-BGSUSSAV.js.map → chunk-VMN6KG2U.js.map} +0 -0
  562. /package/dist/{chunk-YRF7WFAQ.js.map → chunk-WA6F4NOO.js.map} +0 -0
  563. /package/dist/{chunk-HOJL2GKW.js.map → chunk-WC3W36AM.js.map} +0 -0
  564. /package/dist/{chunk-OQW4OERS.js.map → chunk-WNIL2KTB.js.map} +0 -0
  565. /package/dist/{chunk-NQYC7V5N.js.map → chunk-WOSUYOAU.js.map} +0 -0
  566. /package/dist/{chunk-DDNUPFPE.js.map → chunk-WT7VZDTI.js.map} +0 -0
  567. /package/dist/{chunk-DOWVAC4U.js.map → chunk-XODBYGTH.js.map} +0 -0
  568. /package/dist/{chunk-YNZUYZ2O.js.map → chunk-XRDH24J7.js.map} +0 -0
  569. /package/dist/{chunk-DQKMOGYZ.js.map → chunk-XYFBJH6F.js.map} +0 -0
  570. /package/dist/{chunk-ZCXQ4ZB6.js.map → chunk-XYSE2QZN.js.map} +0 -0
  571. /package/dist/{chunk-MIUPTZS6.js.map → chunk-Y4KR4LT2.js.map} +0 -0
  572. /package/dist/{chunk-D7PVIC33.js.map → chunk-Y7YJYUNV.js.map} +0 -0
  573. /package/dist/{chunk-GHP5JLL3.js.map → chunk-YASSCBWN.js.map} +0 -0
  574. /package/dist/{chunk-QLJU7UUI.js.map → chunk-YH7G44WL.js.map} +0 -0
  575. /package/dist/{chunk-FS55MQ4Q.js.map → chunk-YNDTLBOH.js.map} +0 -0
  576. /package/dist/{chunk-6E4L53DF.js.map → chunk-YZX4DVRS.js.map} +0 -0
  577. /package/dist/{chunk-WULEQKU7.js.map → chunk-Z7COWR4K.js.map} +0 -0
  578. /package/dist/{chunk-NYA26GV2.js.map → chunk-ZCCKIWZU.js.map} +0 -0
  579. /package/dist/{chunk-5WUXJDFP.js.map → chunk-ZTPB7PVI.js.map} +0 -0
  580. /package/dist/{chunk-NKHNUTTY.js.map → chunk-ZXHODKHH.js.map} +0 -0
  581. /package/dist/{chunk-7LOCLC24.js.map → chunk-ZYKDUKAH.js.map} +0 -0
@@ -0,0 +1,307 @@
1
+ import ChevronLeftIcon from '@mui/icons-material/ChevronLeft';
2
+ import ChevronRightIcon from '@mui/icons-material/ChevronRight';
3
+ import CheckCircleOutlineIcon from '@mui/icons-material/CheckCircleOutline';
4
+ import CloseIcon from '@mui/icons-material/Close';
5
+ import Box from '@mui/material/Box/index.js';
6
+ import ButtonBase from '@mui/material/ButtonBase/index.js';
7
+ import IconButton from '@mui/material/IconButton/index.js';
8
+ import Typography from '@mui/material/Typography/index.js';
9
+ import React, { useEffect, useRef } from 'react';
10
+
11
+ import { Alert } from '../../data-display/Alert';
12
+ import { Progress } from '../../data-display/Progress';
13
+ import { Button } from '../../form/Button';
14
+ import {
15
+ actionSx,
16
+ backButtonSx,
17
+ categoryDescriptionSx,
18
+ categoryRowSx,
19
+ categoryTextSx,
20
+ closeButtonSx,
21
+ countBadgeSx,
22
+ doneConfirmSx,
23
+ doneIconSx,
24
+ doneSx,
25
+ doneTitleSx,
26
+ footerSx,
27
+ handleSx,
28
+ headerStartSx,
29
+ headerSx,
30
+ introListSx,
31
+ stepLabelSx,
32
+ startAllSx,
33
+ tertiarySx,
34
+ titleSx,
35
+ } from './SequenceResolver.styles';
36
+ import type { SequenceAction, SequenceDone, SequenceIntro, SequenceStep } from './SequenceResolver.types';
37
+
38
+ interface HeaderProps {
39
+ touch: boolean;
40
+ label: string;
41
+ /** Absent: no back button (intro, first step, or the host turned it off). */
42
+ back?: { label: string; accessible?: string; onClick: () => void; disabled: boolean };
43
+ closeLabel: string;
44
+ onClose: () => void;
45
+ progress: number;
46
+ progressLabel: string;
47
+ testId: string;
48
+ }
49
+
50
+ /** The drag handle (phone), the header row and the progress bar. */
51
+ export function SequenceHeader(props: HeaderProps): React.JSX.Element {
52
+ const { touch, label, back, closeLabel, onClose, progress, progressLabel, testId } = props;
53
+ return (
54
+ <>
55
+ {touch ? <Box aria-hidden sx={handleSx} data-testid={`${testId}-handle`} /> : null}
56
+ <Box sx={headerSx}>
57
+ <Box sx={headerStartSx}>
58
+ {back ? (
59
+ <Button
60
+ variant="text"
61
+ color="primary"
62
+ size="md"
63
+ icon={<ChevronLeftIcon />}
64
+ aria-label={back.accessible}
65
+ onClick={back.onClick}
66
+ disabled={back.disabled}
67
+ sx={backButtonSx(touch)}
68
+ dataTestId={`${testId}-back`}
69
+ >
70
+ {back.label}
71
+ </Button>
72
+ ) : null}
73
+ <Typography component="span" sx={stepLabelSx} data-testid={`${testId}-step-label`}>
74
+ {label}
75
+ </Typography>
76
+ </Box>
77
+ <IconButton aria-label={closeLabel} onClick={onClose} sx={closeButtonSx(touch)} data-testid={`${testId}-close`}>
78
+ <CloseIcon />
79
+ </IconButton>
80
+ </Box>
81
+ <Progress
82
+ variant="linear"
83
+ size="md"
84
+ color="warning"
85
+ value={progress}
86
+ aria-label={progressLabel}
87
+ dataTestId={`${testId}-progress`}
88
+ />
89
+ </>
90
+ );
91
+ }
92
+
93
+ /**
94
+ * Moves focus to `target` (else `fallback`) whenever `screenKey` changes — and
95
+ * on mount, which happens inside the dialog's portal, before MUI's focus trap
96
+ * looks: finding focus already inside, the trap and `focusDialogOnEntered`
97
+ * both leave it there.
98
+ */
99
+ export function useFocusOnScreen(
100
+ screenKey: string,
101
+ target: React.RefObject<HTMLElement | null>,
102
+ fallback: React.RefObject<HTMLElement | null>,
103
+ ): void {
104
+ useEffect(() => {
105
+ (target.current ?? fallback.current)?.focus();
106
+ }, [screenKey, target, fallback]);
107
+ }
108
+
109
+ /**
110
+ * A button that disables itself under the pointer drops focus to the page
111
+ * behind the dialog. While busy, focus that fell out lands on the step body
112
+ * (`aria-busy`) instead, so a screen reader stays in the dialog.
113
+ */
114
+ function useKeepFocusWhileBusy(busy: boolean, body: React.RefObject<HTMLElement | null>): void {
115
+ useEffect(() => {
116
+ if (!busy) return undefined;
117
+ const rescue = (): void => {
118
+ const node = body.current;
119
+ const active = node?.ownerDocument.activeElement;
120
+ if (node && (!active || active === node.ownerDocument.body)) node.focus();
121
+ };
122
+ rescue();
123
+ const frame = requestAnimationFrame(rescue);
124
+ return () => cancelAnimationFrame(frame);
125
+ }, [busy, body]);
126
+ }
127
+
128
+ interface IntroProps {
129
+ intro: SequenceIntro;
130
+ titleId: string;
131
+ testId: string;
132
+ screenKey: string;
133
+ }
134
+
135
+ /** The kinds with their counts, and "resolve them all". */
136
+ export function SequenceIntroBody({ intro, titleId, testId, screenKey }: IntroProps): React.JSX.Element {
137
+ const titleRef = useRef<HTMLHeadingElement | null>(null);
138
+ useFocusOnScreen(screenKey, titleRef, titleRef);
139
+ const last = intro.categories.length - 1;
140
+ return (
141
+ <>
142
+ <Box sx={{ display: 'flex', flexDirection: 'column', gap: 0.5 }}>
143
+ <Typography component="h2" id={titleId} tabIndex={-1} ref={titleRef} sx={titleSx}>
144
+ {intro.title}
145
+ </Typography>
146
+ {intro.description ? (
147
+ <Typography variant="body2" color="text.secondary">
148
+ {intro.description}
149
+ </Typography>
150
+ ) : null}
151
+ </Box>
152
+ <Box component="ul" sx={introListSx}>
153
+ {intro.categories.map((category, index) => (
154
+ <li key={`${index}-${category.label}`}>
155
+ <ButtonBase
156
+ onClick={category.onPick}
157
+ sx={categoryRowSx(index === last)}
158
+ data-testid={`${testId}-category-${index}`}
159
+ >
160
+ <Box component="span" sx={countBadgeSx}>
161
+ {category.count}
162
+ </Box>
163
+ <Box component="span" sx={categoryTextSx}>
164
+ <Typography component="span" variant="body2" fontWeight={500}>
165
+ {category.label}
166
+ </Typography>
167
+ {category.description ? (
168
+ <Typography component="span" sx={categoryDescriptionSx}>
169
+ {category.description}
170
+ </Typography>
171
+ ) : null}
172
+ </Box>
173
+ <ChevronRightIcon aria-hidden sx={{ color: 'text.secondary' }} />
174
+ </ButtonBase>
175
+ </li>
176
+ ))}
177
+ </Box>
178
+ <Button
179
+ variant="solid"
180
+ color="primary"
181
+ size="lg"
182
+ fullWidth
183
+ onClick={intro.onStartAll}
184
+ dataTestId={`${testId}-start-all`}
185
+ sx={startAllSx}
186
+ >
187
+ {intro.startAllLabel}
188
+ </Button>
189
+ </>
190
+ );
191
+ }
192
+
193
+ interface StepProps {
194
+ step: SequenceStep;
195
+ /** The default secondary: skip. */
196
+ skip: SequenceAction;
197
+ busy: boolean;
198
+ error: string | null;
199
+ touch: boolean;
200
+ testId: string;
201
+ screenKey: string;
202
+ titleRef: React.RefObject<HTMLElement | null>;
203
+ }
204
+
205
+ function ActionButton({
206
+ action,
207
+ busy,
208
+ touch,
209
+ variant,
210
+ testId,
211
+ }: {
212
+ action: SequenceAction;
213
+ busy: boolean;
214
+ touch: boolean;
215
+ variant: 'solid' | 'outline' | 'text';
216
+ testId: string;
217
+ }): React.JSX.Element {
218
+ return (
219
+ <Button
220
+ variant={variant}
221
+ color={variant === 'outline' ? 'neutral' : 'primary'}
222
+ size="md"
223
+ onClick={action.onClick}
224
+ disabled={busy || action.disabled}
225
+ dataTestId={testId}
226
+ sx={variant === 'text' ? tertiarySx(touch) : actionSx(touch)}
227
+ >
228
+ {action.label}
229
+ </Button>
230
+ );
231
+ }
232
+
233
+ /** The host's body, its error, the tertiary text button and the footer. */
234
+ export function SequenceStepBody(props: StepProps): React.JSX.Element {
235
+ const { step, skip, busy, error, touch, testId, screenKey, titleRef } = props;
236
+ const bodyRef = useRef<HTMLDivElement | null>(null);
237
+ useFocusOnScreen(screenKey, titleRef, bodyRef);
238
+ useKeepFocusWhileBusy(busy, bodyRef);
239
+ const secondary = step.secondary === false ? undefined : (step.secondary ?? skip);
240
+ const hasFooter = Boolean(secondary || step.primary);
241
+ return (
242
+ <>
243
+ <Box ref={bodyRef} tabIndex={-1} aria-busy={busy} sx={{ outline: 'none', minWidth: 0 }}>
244
+ {step.content}
245
+ </Box>
246
+ {error ? (
247
+ <Alert variant="danger" announce="assertive" description={error} dataTestId={`${testId}-error`} />
248
+ ) : null}
249
+ {step.tertiary ? (
250
+ <ActionButton action={step.tertiary} busy={busy} touch={touch} variant="text" testId={`${testId}-tertiary`} />
251
+ ) : null}
252
+ {hasFooter ? (
253
+ <Box sx={footerSx(touch, step.footer ?? 'end')} data-testid={`${testId}-footer`}>
254
+ {secondary ? (
255
+ <ActionButton action={secondary} busy={busy} touch={touch} variant="outline" testId={`${testId}-secondary`} />
256
+ ) : null}
257
+ {step.primary ? (
258
+ <ActionButton action={step.primary} busy={busy} touch={touch} variant="solid" testId={`${testId}-primary`} />
259
+ ) : null}
260
+ </Box>
261
+ ) : null}
262
+ </>
263
+ );
264
+ }
265
+
266
+ interface DoneProps {
267
+ done: SequenceDone;
268
+ titleId: string;
269
+ error: string | null;
270
+ touch: boolean;
271
+ onConfirm: () => void;
272
+ testId: string;
273
+ screenKey: string;
274
+ }
275
+
276
+ /** The end screen: a check, the host's title and sentence, one button that closes. */
277
+ export function SequenceDoneBody({ done, titleId, error, touch, onConfirm, testId, screenKey }: DoneProps): React.JSX.Element {
278
+ const titleRef = useRef<HTMLHeadingElement | null>(null);
279
+ useFocusOnScreen(screenKey, titleRef, titleRef);
280
+ return (
281
+ <Box sx={doneSx} data-testid={`${testId}-done`}>
282
+ <CheckCircleOutlineIcon aria-hidden sx={doneIconSx} />
283
+ <Typography component="h2" id={titleId} tabIndex={-1} ref={titleRef} sx={doneTitleSx}>
284
+ {done.title}
285
+ </Typography>
286
+ {done.description ? (
287
+ <Typography variant="body2" color="text.secondary">
288
+ {done.description}
289
+ </Typography>
290
+ ) : null}
291
+ {error ? (
292
+ <Alert variant="danger" announce="assertive" description={error} dataTestId={`${testId}-error`} />
293
+ ) : null}
294
+ <Button
295
+ variant="solid"
296
+ color="primary"
297
+ size="md"
298
+ fullWidth={touch}
299
+ onClick={onConfirm}
300
+ dataTestId={`${testId}-done-confirm`}
301
+ sx={doneConfirmSx()}
302
+ >
303
+ {done.confirmLabel}
304
+ </Button>
305
+ </Box>
306
+ );
307
+ }
@@ -0,0 +1,238 @@
1
+ import type { SxProps, Theme } from '@mui/material/styles/index.js';
2
+
3
+ import { rem, sxRem } from '../../../tokens/relative';
4
+ import { softSignal } from '../../../tokens/surfaces';
5
+ import { SEQUENCE_METRICS } from './SequenceResolver.metrics';
6
+
7
+ /**
8
+ * The paper's column: chrome (handle, header, progress) on top, the screen's
9
+ * body below — one gap, as the prototype draws it. The body is the ONLY scroll
10
+ * region, so Back, the step label, close and the progress never scroll away
11
+ * with a long step. A title focused by script (`tabIndex={-1}`, the host's
12
+ * included) is not a control and draws no focus ring.
13
+ */
14
+ export const columnSx: SxProps<Theme> = {
15
+ display: 'flex',
16
+ flexDirection: 'column',
17
+ flex: '1 1 auto',
18
+ minHeight: 0,
19
+ gap: 2.25,
20
+ '& [tabindex="-1"]:focus': { outline: 0 },
21
+ };
22
+
23
+ /** The chrome above the body: never shrinks, never scrolls. */
24
+ export const chromeSx: SxProps<Theme> = { display: 'flex', flexDirection: 'column', gap: 2.25, flex: 'none' };
25
+
26
+ /** The screen's body: takes what the paper has left and scrolls inside it. */
27
+ export const scrollBodySx: SxProps<Theme> = {
28
+ display: 'flex',
29
+ flexDirection: 'column',
30
+ gap: 2.25,
31
+ flex: '1 1 auto',
32
+ minHeight: 0,
33
+ overflowY: 'auto',
34
+ overscrollBehavior: 'contain',
35
+ // The body's children keep their own height and the BODY scrolls: a
36
+ // shrinking child (the intro's clipped list, a host's step) would
37
+ // otherwise be crushed instead (320×568, 700×420).
38
+ '& > *': { flexShrink: 0 },
39
+ // Room inside the scroll edge for focus rings and the primary's shadow,
40
+ // which an `overflow` box would otherwise clip; the negative margin keeps
41
+ // the content where the prototype puts it.
42
+ px: 0.5,
43
+ mx: -0.5,
44
+ pb: 0.5,
45
+ };
46
+
47
+ /**
48
+ * The paper stops scrolling itself and lets its one child (the Dialog's padded
49
+ * body box around `columnSx`) shrink, so the height cap reaches the body.
50
+ * Below the sheet breakpoint the paper is also capped at 95% of the viewport.
51
+ */
52
+ export function paperSx(touch: boolean): SxProps<Theme> {
53
+ const share = SEQUENCE_METRICS.sheetMaxHeightPercent;
54
+ const column = {
55
+ overflowY: 'hidden',
56
+ '& > *': { display: 'flex', flexDirection: 'column', flex: '1 1 auto', minHeight: 0 },
57
+ } as const;
58
+ if (!touch) return column;
59
+ return {
60
+ ...column,
61
+ maxHeight: `${share}vh`,
62
+ '@supports (height: 100dvh)': { maxHeight: `${share}dvh` },
63
+ };
64
+ }
65
+
66
+ /** The end screen's button: a step down from the sentence, at the touch-target height on a phone. */
67
+ export function doneConfirmSx(): SxProps<Theme> {
68
+ return { mt: 1, minHeight: sxRem(SEQUENCE_METRICS.touchTarget) };
69
+ }
70
+
71
+ /** "All in sequence": the prototype's 48px, and taller when a long label wraps. */
72
+ export const startAllSx: SxProps<Theme> = { height: 'auto', minHeight: sxRem(SEQUENCE_METRICS.startAllHeight) };
73
+
74
+ /** A button at the touch-target height below the sheet breakpoint; its own size above it. */
75
+ export function actionSx(touch: boolean): SxProps<Theme> {
76
+ // On a phone the footer's actions share the row while both labels fit on
77
+ // one line each; one that does not takes a full row instead of wrapping
78
+ // word by word, and a label wider than the row itself wraps inside it
79
+ // rather than pushing the sheet sideways.
80
+ return touch
81
+ ? { minHeight: sxRem(SEQUENCE_METRICS.touchTarget), flex: '1 1 max-content', minWidth: 0, maxWidth: '100%' }
82
+ : {};
83
+ }
84
+
85
+ export const handleSx: SxProps<Theme> = {
86
+ alignSelf: 'center',
87
+ width: sxRem(SEQUENCE_METRICS.handle.width),
88
+ height: sxRem(SEQUENCE_METRICS.handle.height),
89
+ borderRadius: sxRem(SEQUENCE_METRICS.handle.height / 2),
90
+ bgcolor: 'divider',
91
+ flex: 'none',
92
+ };
93
+
94
+ export const headerSx: SxProps<Theme> = {
95
+ display: 'flex',
96
+ alignItems: 'center',
97
+ justifyContent: 'space-between',
98
+ gap: 1.5,
99
+ };
100
+
101
+ /** Back and the label; on a narrow sheet the label takes its own row rather than squeeze. */
102
+ export const headerStartSx: SxProps<Theme> = {
103
+ display: 'inline-flex',
104
+ flexWrap: 'wrap',
105
+ alignItems: 'center',
106
+ columnGap: 0.75,
107
+ minWidth: 0,
108
+ };
109
+
110
+ export const stepLabelSx: SxProps<Theme> = {
111
+ fontSize: sxRem(SEQUENCE_METRICS.stepLabel),
112
+ fontWeight: 500,
113
+ color: 'text.secondary',
114
+ minWidth: 0,
115
+ };
116
+
117
+ export function closeButtonSx(touch: boolean): SxProps<Theme> {
118
+ const size = touch ? SEQUENCE_METRICS.closeSize.touch : SEQUENCE_METRICS.closeSize.pointer;
119
+ return { width: sxRem(size), height: sxRem(size), color: 'text.secondary', flex: 'none' };
120
+ }
121
+
122
+ export function backButtonSx(touch: boolean): SxProps<Theme> {
123
+ return touch ? { flex: 'none', minHeight: sxRem(SEQUENCE_METRICS.touchTarget) } : { flex: 'none' };
124
+ }
125
+
126
+ export const titleSx: SxProps<Theme> = {
127
+ fontSize: sxRem(SEQUENCE_METRICS.title),
128
+ fontWeight: 500,
129
+ lineHeight: 1.25,
130
+ outline: 'none',
131
+ };
132
+
133
+ export const introListSx: SxProps<Theme> = {
134
+ display: 'flex',
135
+ flexDirection: 'column',
136
+ border: '1px solid',
137
+ borderColor: 'divider',
138
+ borderRadius: sxRem(SEQUENCE_METRICS.listRadius),
139
+ overflow: 'hidden',
140
+ m: 0,
141
+ p: 0,
142
+ listStyle: 'none',
143
+ };
144
+
145
+ export function categoryRowSx(last: boolean): SxProps<Theme> {
146
+ return {
147
+ display: 'flex',
148
+ alignItems: 'center',
149
+ gap: 1.5,
150
+ width: '100%',
151
+ minHeight: sxRem(SEQUENCE_METRICS.categoryMinHeight),
152
+ px: 1.75,
153
+ py: 1.25,
154
+ textAlign: 'left',
155
+ justifyContent: 'flex-start',
156
+ borderBottom: last ? 0 : '1px solid',
157
+ borderColor: 'divider',
158
+ '&:hover': { bgcolor: 'action.hover' },
159
+ '&.Mui-focusVisible': { bgcolor: 'action.focus' },
160
+ };
161
+ }
162
+
163
+ export const countBadgeSx: SxProps<Theme> = (theme: Theme) => ({
164
+ flex: 'none',
165
+ display: 'inline-flex',
166
+ alignItems: 'center',
167
+ justifyContent: 'center',
168
+ boxSizing: 'border-box',
169
+ minWidth: rem(theme, SEQUENCE_METRICS.countBadge),
170
+ height: rem(theme, SEQUENCE_METRICS.countBadge),
171
+ px: 0.75,
172
+ borderRadius: rem(theme, SEQUENCE_METRICS.countBadge / 2),
173
+ bgcolor: softSignal(theme, 'error'),
174
+ // The signal's deep step on its soft ground; the light step on a dark one.
175
+ color: theme.palette.mode === 'dark' ? 'error.light' : 'error.dark',
176
+ fontWeight: 500,
177
+ });
178
+
179
+ export const categoryTextSx: SxProps<Theme> = {
180
+ display: 'flex',
181
+ flexDirection: 'column',
182
+ gap: 0.25,
183
+ flex: '1 1 auto',
184
+ minWidth: 0,
185
+ };
186
+
187
+ export const categoryDescriptionSx: SxProps<Theme> = {
188
+ fontSize: sxRem(SEQUENCE_METRICS.categoryDescription),
189
+ color: 'text.secondary',
190
+ };
191
+
192
+ /**
193
+ * The step's footer, as the prototype draws each kind:
194
+ * - phone: the actions share the row (a label that does not fit takes a full
195
+ * row), no hairline;
196
+ * - pointer, `'split'`: two equal full-width columns, no hairline (limits, a purchase);
197
+ * - pointer, `'end'`: auto-width actions, right-aligned, over a hairline (restock).
198
+ */
199
+ export function footerSx(touch: boolean, layout: 'end' | 'split'): SxProps<Theme> {
200
+ if (touch) return { display: 'flex', flexWrap: 'wrap', gap: 1.25 };
201
+ if (layout === 'split') {
202
+ return { display: 'grid', gridAutoFlow: 'column', gridAutoColumns: 'minmax(0, 1fr)', gap: 1.25 };
203
+ }
204
+ return {
205
+ display: 'flex',
206
+ flexWrap: 'wrap',
207
+ justifyContent: 'flex-end',
208
+ alignItems: 'center',
209
+ gap: 1.25,
210
+ pt: 1.5,
211
+ borderTop: '1px solid',
212
+ borderColor: 'divider',
213
+ };
214
+ }
215
+
216
+ export function tertiarySx(touch: boolean): SxProps<Theme> {
217
+ return touch ? { alignSelf: 'flex-start', minHeight: sxRem(SEQUENCE_METRICS.touchTarget) } : { alignSelf: 'flex-start' };
218
+ }
219
+
220
+ export const doneSx: SxProps<Theme> = {
221
+ display: 'flex',
222
+ flexDirection: 'column',
223
+ alignItems: 'center',
224
+ gap: 1.25,
225
+ py: 1.5,
226
+ textAlign: 'center',
227
+ };
228
+
229
+ export const doneIconSx: SxProps<Theme> = {
230
+ fontSize: sxRem(SEQUENCE_METRICS.doneIcon),
231
+ color: 'success.main',
232
+ };
233
+
234
+ export const doneTitleSx: SxProps<Theme> = {
235
+ fontSize: sxRem(SEQUENCE_METRICS.doneTitle),
236
+ fontWeight: 500,
237
+ outline: 'none',
238
+ };