@12-apps/ui 6.94.0 → 6.95.1

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 (272) hide show
  1. package/NATIVE.md +1 -1
  2. package/components-catalog.md +7 -0
  3. package/dist/_internal/components/data-display/Avatar/Avatar.js +2 -2
  4. package/dist/_internal/components/data-display/CardKit/use-remove-confirm.js +1 -1
  5. package/dist/_internal/components/data-display/CardKit/use-row-confirm.js +1 -1
  6. package/dist/_internal/components/data-display/Carousel/Carousel.js +3 -3
  7. package/dist/_internal/components/data-display/Chart/SpecChart.js +3 -3
  8. package/dist/_internal/components/data-display/DataViews/DataViewsGrid.js +27 -27
  9. package/dist/_internal/components/data-display/DataViews/DataViewsTableBase.js +32 -32
  10. package/dist/_internal/components/data-display/DataViews/ManageViewsDialog.js +1 -1
  11. package/dist/_internal/components/data-display/DataViews/base-list-card-geometry.js +2 -2
  12. package/dist/_internal/components/data-display/DataViews/base-list-card-layout.js +2 -2
  13. package/dist/_internal/components/data-display/DataViews/base-list-card-slots.js +2 -2
  14. package/dist/_internal/components/data-display/DataViews/base-list-card.js +4 -4
  15. package/dist/_internal/components/data-display/DataViews/data-views-category-pill.js +4 -4
  16. package/dist/_internal/components/data-display/DataViews/data-views-display-panel.js +3 -3
  17. package/dist/_internal/components/data-display/DataViews/data-views-filter-panel.js +10 -10
  18. package/dist/_internal/components/data-display/DataViews/data-views-grid-bodies.js +4 -4
  19. package/dist/_internal/components/data-display/DataViews/data-views-grid-parts.js +25 -25
  20. package/dist/_internal/components/data-display/DataViews/data-views-inline-bar.js +9 -9
  21. package/dist/_internal/components/data-display/DataViews/data-views-more-fields.js +7 -7
  22. package/dist/_internal/components/data-display/DataViews/data-views-more-filters.js +8 -8
  23. package/dist/_internal/components/data-display/DataViews/data-views-range-pill.js +2 -2
  24. package/dist/_internal/components/data-display/DataViews/data-views-shell-toolbar.js +7 -7
  25. package/dist/_internal/components/data-display/DataViews/data-views-table-parts.js +2 -2
  26. package/dist/_internal/components/data-display/DataViews/data-views-toolbar.js +6 -6
  27. package/dist/_internal/components/data-display/DataViews/list-card-rails.js +2 -2
  28. package/dist/_internal/components/data-display/DataViews/use-data-views-state.js +2 -2
  29. package/dist/_internal/components/data-display/DayRuler/DayRuler.js +3 -3
  30. package/dist/_internal/components/data-display/HoverCard/HoverCard.js +1 -1
  31. package/dist/_internal/components/data-display/Lightbox/Lightbox.js +5 -5
  32. package/dist/_internal/components/data-display/Lightbox/LightboxControls.js +2 -2
  33. package/dist/_internal/components/data-display/Lightbox/LightboxOverlay.js +3 -3
  34. package/dist/_internal/components/data-display/Lightbox/LightboxThumbnails.js +2 -2
  35. package/dist/_internal/components/data-display/RegionMap/RegionMap.js +2 -2
  36. package/dist/_internal/components/data-display/ScheduleGrid/ScheduleGrid.js +1 -1
  37. package/dist/_internal/components/data-display/Sheet/Sheet.body.js +2 -2
  38. package/dist/_internal/components/data-display/Sheet/Sheet.hooks.js +2 -2
  39. package/dist/_internal/components/data-display/Sheet/Sheet.js +5 -5
  40. package/dist/_internal/components/data-display/Sheet/Sheet.parts.js +1 -1
  41. package/dist/_internal/components/data-display/Table/Table.js +3 -3
  42. package/dist/_internal/components/data-display/index.js +39 -39
  43. package/dist/_internal/components/feedback/StackedModal/StackedModal.hooks.js +2 -2
  44. package/dist/_internal/components/feedback/StackedModal/StackedModal.js +4 -4
  45. package/dist/_internal/components/feedback/StackedModal/modal-stack.js +3 -1
  46. package/dist/_internal/components/feedback/TutorialOverlay/TutorialOverlay.js +2 -2
  47. package/dist/_internal/components/feedback/UsableModal/UsableModal.js +11 -0
  48. package/dist/_internal/components/feedback/UsableModal/UsableModal.js.map +1 -0
  49. package/dist/_internal/components/feedback/UsableModal/UsableModal.modal.js +87 -0
  50. package/dist/_internal/components/feedback/UsableModal/UsableModal.modal.js.map +1 -0
  51. package/dist/_internal/components/feedback/UsableModal/UsableModal.sheet.js +91 -0
  52. package/dist/_internal/components/feedback/UsableModal/UsableModal.sheet.js.map +1 -0
  53. package/dist/_internal/components/feedback/UsableModal/UsableModal.types.js +1 -0
  54. package/dist/_internal/components/feedback/UsableModal/UsableModal.types.js.map +1 -0
  55. package/dist/_internal/components/feedback/UsableModal/has-footer.js +8 -0
  56. package/dist/_internal/components/feedback/UsableModal/has-footer.js.map +1 -0
  57. package/dist/_internal/components/feedback/UsableModal/recover-chunk.js +10 -0
  58. package/dist/_internal/components/feedback/UsableModal/recover-chunk.js.map +1 -0
  59. package/dist/_internal/components/feedback/index.js +9 -9
  60. package/dist/_internal/components/form/AddressAutocomplete/AddressAutocomplete.hooks.js +3 -3
  61. package/dist/_internal/components/form/AddressAutocomplete/AddressAutocomplete.js +5 -5
  62. package/dist/_internal/components/form/AddressAutocomplete/AddressAutocompleteField.js +2 -2
  63. package/dist/_internal/components/form/CategorySelect/CategorySelect.js +2 -2
  64. package/dist/_internal/components/form/CodeEditor/CodeEditor.js +2 -2
  65. package/dist/_internal/components/form/Command/Command.js +2 -2
  66. package/dist/_internal/components/form/Menubar/Menubar.js +2 -2
  67. package/dist/_internal/components/form/UploadButton/UploadButton.js +2 -2
  68. package/dist/_internal/components/form/index.js +43 -43
  69. package/dist/_internal/components/form/total-form/Fields/CategoryField.js +3 -3
  70. package/dist/_internal/components/form/total-form/Fields/index.js +9 -9
  71. package/dist/_internal/components/index.js +125 -125
  72. package/dist/_internal/components/layout/SettingCard/SettingGroup.js +3 -3
  73. package/dist/_internal/components/layout/SettingCard/SettingToggle.js +3 -3
  74. package/dist/_internal/components/layout/SettingsLayout/SettingsLayout.js +3 -3
  75. package/dist/_internal/components/layout/SettingsLayout/SettingsPanel.js +2 -2
  76. package/dist/_internal/components/layout/index.js +17 -17
  77. package/dist/_internal/components/navigation/AppHeader/AppHeader.details.js +6 -6
  78. package/dist/_internal/components/navigation/NavigationMenu/NavigationMegaSection.js +2 -2
  79. package/dist/_internal/components/navigation/NavigationMenu/NavigationMenu.js +4 -4
  80. package/dist/_internal/components/navigation/NavigationMenu/NavigationStandardBody.js +2 -2
  81. package/dist/_internal/components/navigation/SectionNav/SectionNav.js +3 -3
  82. package/dist/_internal/components/navigation/index.js +19 -19
  83. package/dist/_internal/components/utility/index.js +4 -4
  84. package/dist/_internal/user-avatar/user-avatar.js +3 -3
  85. package/dist/charts.js +11 -11
  86. package/dist/{chunk-NQDOKJLI.js → chunk-2365CQJU.js} +2 -2
  87. package/dist/{chunk-4E2RQOSQ.js → chunk-24G3BWKD.js} +2 -2
  88. package/dist/{chunk-NASLJO2R.js → chunk-2KSFBZ2H.js} +5 -4
  89. package/dist/chunk-2KSFBZ2H.js.map +1 -0
  90. package/dist/{chunk-XE33EZVS.js → chunk-2SBQ47RI.js} +5 -5
  91. package/dist/{chunk-HWZETMO4.js → chunk-37SNQQ7P.js} +3 -3
  92. package/dist/{chunk-2L6TANRY.js → chunk-4RF4BALN.js} +3 -3
  93. package/dist/{chunk-X6D5JEUV.js → chunk-4RSFYS2V.js} +6 -6
  94. package/dist/{chunk-LYVTJLCF.js → chunk-56JF5PZK.js} +4 -4
  95. package/dist/{chunk-7WE432RQ.js → chunk-5HXVXW22.js} +5 -5
  96. package/dist/{chunk-N3GLX64O.js → chunk-5I75WRXT.js} +4 -4
  97. package/dist/{chunk-BP3ZKIPE.js → chunk-64UNVW6D.js} +4 -4
  98. package/dist/{chunk-NQ6P7O7C.js → chunk-6AKDAQSS.js} +2 -2
  99. package/dist/{chunk-PGJIWCQR.js → chunk-6EZQLNPK.js} +4 -4
  100. package/dist/{chunk-EE6DJPB7.js → chunk-6HXNFNOB.js} +4 -4
  101. package/dist/{chunk-4QTPERAY.js → chunk-6RW4WNGS.js} +4 -4
  102. package/dist/{chunk-GBB23QLL.js → chunk-6ZAKPYWX.js} +4 -4
  103. package/dist/{chunk-CWXX5JR3.js → chunk-75GAQL2Q.js} +5 -5
  104. package/dist/{chunk-JZRSHDNY.js → chunk-77FQFWA3.js} +6 -3
  105. package/dist/chunk-77FQFWA3.js.map +1 -0
  106. package/dist/{chunk-LY5I3ZSV.js → chunk-A2YLFKQU.js} +4 -4
  107. package/dist/{chunk-6DGNMASB.js → chunk-ALREWFRX.js} +4 -4
  108. package/dist/{chunk-F2UP5ZF4.js → chunk-BMC5KGH2.js} +4 -4
  109. package/dist/{chunk-3ODEBPGT.js → chunk-BRFL7OWI.js} +5 -5
  110. package/dist/chunk-BTMBQIED.js +7 -0
  111. package/dist/chunk-BTMBQIED.js.map +1 -0
  112. package/dist/{chunk-UIIHUWOV.js → chunk-C7IFBYIJ.js} +7 -7
  113. package/dist/{chunk-FKS2PNJF.js → chunk-CSD6SWBZ.js} +6 -6
  114. package/dist/{chunk-6LGKJVOA.js → chunk-E2UOEI7N.js} +2 -2
  115. package/dist/{chunk-K2VDRODL.js → chunk-E4NFH77Z.js} +4 -4
  116. package/dist/chunk-FRAFGRRD.js +53 -0
  117. package/dist/chunk-FRAFGRRD.js.map +1 -0
  118. package/dist/{chunk-VM4UYCD4.js → chunk-FTYOCFTV.js} +3 -3
  119. package/dist/{chunk-JVQ56E3U.js → chunk-FWTVIRZZ.js} +6 -6
  120. package/dist/{chunk-ALMGYCHY.js → chunk-I54YFYBS.js} +2 -2
  121. package/dist/chunk-IQDPMLDM.js +39 -0
  122. package/dist/chunk-IQDPMLDM.js.map +1 -0
  123. package/dist/{chunk-TSMF7K37.js → chunk-J4UA744J.js} +9 -2
  124. package/dist/chunk-J4UA744J.js.map +1 -0
  125. package/dist/{chunk-4J62V5OE.js → chunk-JIEVKHOH.js} +6 -6
  126. package/dist/{chunk-MKNW4FRR.js → chunk-JOQGKXR5.js} +5 -5
  127. package/dist/{chunk-Y3FYOKWF.js → chunk-KHDKG7XB.js} +2 -2
  128. package/dist/{chunk-TSID4257.js → chunk-KMMFN24G.js} +4 -4
  129. package/dist/{chunk-E5OBAS3U.js → chunk-LTJC7TGB.js} +4 -2
  130. package/dist/chunk-LTJC7TGB.js.map +1 -0
  131. package/dist/{chunk-LKWXU6NH.js → chunk-LV6AD6XC.js} +2 -2
  132. package/dist/{chunk-WQO5WONV.js → chunk-MWXZXCVX.js} +4 -4
  133. package/dist/{chunk-PNZH6CDD.js → chunk-NI3MC742.js} +4 -4
  134. package/dist/{chunk-BZYLTGOE.js → chunk-OKDKKBLI.js} +4 -4
  135. package/dist/{chunk-AJ6KFHEE.js → chunk-PJDAZG65.js} +2 -2
  136. package/dist/{chunk-FPNVOB52.js → chunk-RNIJL54W.js} +4 -4
  137. package/dist/{chunk-2M3W6ACW.js → chunk-S46LGAQ2.js} +4 -4
  138. package/dist/{chunk-6N2U67KF.js → chunk-T3KVZTO3.js} +4 -4
  139. package/dist/{chunk-GY53SDVL.js → chunk-U2SAW6DH.js} +4 -4
  140. package/dist/{chunk-P772HCHI.js → chunk-W676GY42.js} +4 -4
  141. package/dist/{chunk-T2G4LDU5.js → chunk-WLLUARTC.js} +2 -2
  142. package/dist/{chunk-SI5SKX52.js → chunk-WW3F7DCX.js} +2 -2
  143. package/dist/{chunk-UOKXYV3U.js → chunk-XALDXR3F.js} +2 -2
  144. package/dist/{chunk-ZM6FJCWS.js → chunk-XNAI7QGU.js} +4 -4
  145. package/dist/{chunk-LZ5PGB7U.js → chunk-XTYBJAZG.js} +21 -13
  146. package/dist/chunk-XTYBJAZG.js.map +1 -0
  147. package/dist/{chunk-JXK53XJW.js → chunk-YOLLISEY.js} +9 -9
  148. package/dist/{chunk-FKUVFPQZ.js → chunk-Z6QFIRD7.js} +4 -4
  149. package/dist/data-display/Avatar.js +2 -2
  150. package/dist/data-display/CardKit.js +1 -1
  151. package/dist/data-display/Carousel.js +3 -3
  152. package/dist/data-display/Chart.js +11 -11
  153. package/dist/data-display/DataViews.js +40 -40
  154. package/dist/data-display/DayRuler.js +3 -3
  155. package/dist/data-display/HoverCard.js +1 -1
  156. package/dist/data-display/Lightbox.js +5 -5
  157. package/dist/data-display/RegionMap.js +2 -2
  158. package/dist/data-display/ScheduleGrid.js +5 -5
  159. package/dist/data-display/Sheet.js +5 -5
  160. package/dist/data-display/Table.js +3 -3
  161. package/dist/feedback/ConfirmAction.js +3 -3
  162. package/dist/feedback/StackedModal.js +4 -4
  163. package/dist/feedback/TutorialOverlay.js +2 -2
  164. package/dist/feedback/UsableModal.js +9 -0
  165. package/dist/feedback/UsableModal.js.map +1 -0
  166. package/dist/form/AddressAutocomplete.js +5 -5
  167. package/dist/form/CategorySelect.js +2 -2
  168. package/dist/form/CodeEditor.js +2 -2
  169. package/dist/form/Command.js +2 -2
  170. package/dist/form/Menubar.js +2 -2
  171. package/dist/form/UploadButton.js +2 -2
  172. package/dist/form/total-form.js +7 -7
  173. package/dist/layout/ContentToolbar.js +3 -3
  174. package/dist/layout/SettingCard.js +7 -7
  175. package/dist/layout/SettingsLayout.js +3 -3
  176. package/dist/locales.js +4 -4
  177. package/dist/navigation/AppHeader.js +8 -8
  178. package/dist/navigation/NavigationMenu.js +4 -4
  179. package/dist/navigation/SectionNav.js +3 -3
  180. package/dist/pt-BR.js +5 -5
  181. package/dist/types/components/data-display/Sheet/Sheet.body.d.ts +2 -0
  182. package/dist/types/components/data-display/Sheet/Sheet.body.d.ts.map +1 -1
  183. package/dist/types/components/data-display/Sheet/Sheet.d.ts.map +1 -1
  184. package/dist/types/components/data-display/Sheet/Sheet.parts.d.ts.map +1 -1
  185. package/dist/types/components/data-display/Sheet/Sheet.types.d.ts +14 -0
  186. package/dist/types/components/data-display/Sheet/Sheet.types.d.ts.map +1 -1
  187. package/dist/types/components/feedback/StackedModal/StackedModal.hooks.d.ts.map +1 -1
  188. package/dist/types/components/feedback/StackedModal/modal-stack.d.ts +6 -0
  189. package/dist/types/components/feedback/StackedModal/modal-stack.d.ts.map +1 -1
  190. package/dist/types/components/feedback/UsableModal/UsableModal.d.ts +20 -0
  191. package/dist/types/components/feedback/UsableModal/UsableModal.d.ts.map +1 -0
  192. package/dist/types/components/feedback/UsableModal/UsableModal.modal.d.ts +11 -0
  193. package/dist/types/components/feedback/UsableModal/UsableModal.modal.d.ts.map +1 -0
  194. package/dist/types/components/feedback/UsableModal/UsableModal.sheet.d.ts +17 -0
  195. package/dist/types/components/feedback/UsableModal/UsableModal.sheet.d.ts.map +1 -0
  196. package/dist/types/components/feedback/UsableModal/UsableModal.types.d.ts +35 -0
  197. package/dist/types/components/feedback/UsableModal/UsableModal.types.d.ts.map +1 -0
  198. package/dist/types/components/feedback/UsableModal/has-footer.d.ts +4 -0
  199. package/dist/types/components/feedback/UsableModal/has-footer.d.ts.map +1 -0
  200. package/dist/types/components/feedback/UsableModal/index.d.ts +3 -0
  201. package/dist/types/components/feedback/UsableModal/index.d.ts.map +1 -0
  202. package/dist/types/components/feedback/UsableModal/recover-chunk.d.ts +24 -0
  203. package/dist/types/components/feedback/UsableModal/recover-chunk.d.ts.map +1 -0
  204. package/dist/user-avatar.js +3 -3
  205. package/package.json +5 -1
  206. package/src/components/data-display/Sheet/Sheet.body.tsx +4 -0
  207. package/src/components/data-display/Sheet/Sheet.md +5 -0
  208. package/src/components/data-display/Sheet/Sheet.parts.tsx +5 -3
  209. package/src/components/data-display/Sheet/Sheet.tsx +29 -9
  210. package/src/components/data-display/Sheet/Sheet.types.ts +14 -0
  211. package/src/components/feedback/StackedModal/StackedModal.hooks.ts +16 -0
  212. package/src/components/feedback/StackedModal/modal-stack.tsx +12 -2
  213. package/src/components/feedback/UsableModal/UsableModal.md +95 -0
  214. package/src/components/feedback/UsableModal/UsableModal.modal.tsx +76 -0
  215. package/src/components/feedback/UsableModal/UsableModal.sheet.tsx +65 -0
  216. package/src/components/feedback/UsableModal/UsableModal.tsx +92 -0
  217. package/src/components/feedback/UsableModal/UsableModal.types.ts +38 -0
  218. package/src/components/feedback/UsableModal/has-footer.ts +4 -0
  219. package/src/components/feedback/UsableModal/index.ts +2 -0
  220. package/src/components/feedback/UsableModal/recover-chunk.ts +61 -0
  221. package/dist/chunk-E5OBAS3U.js.map +0 -1
  222. package/dist/chunk-JZRSHDNY.js.map +0 -1
  223. package/dist/chunk-LZ5PGB7U.js.map +0 -1
  224. package/dist/chunk-NASLJO2R.js.map +0 -1
  225. package/dist/chunk-TSMF7K37.js.map +0 -1
  226. /package/dist/{chunk-NQDOKJLI.js.map → chunk-2365CQJU.js.map} +0 -0
  227. /package/dist/{chunk-4E2RQOSQ.js.map → chunk-24G3BWKD.js.map} +0 -0
  228. /package/dist/{chunk-XE33EZVS.js.map → chunk-2SBQ47RI.js.map} +0 -0
  229. /package/dist/{chunk-HWZETMO4.js.map → chunk-37SNQQ7P.js.map} +0 -0
  230. /package/dist/{chunk-2L6TANRY.js.map → chunk-4RF4BALN.js.map} +0 -0
  231. /package/dist/{chunk-X6D5JEUV.js.map → chunk-4RSFYS2V.js.map} +0 -0
  232. /package/dist/{chunk-LYVTJLCF.js.map → chunk-56JF5PZK.js.map} +0 -0
  233. /package/dist/{chunk-7WE432RQ.js.map → chunk-5HXVXW22.js.map} +0 -0
  234. /package/dist/{chunk-N3GLX64O.js.map → chunk-5I75WRXT.js.map} +0 -0
  235. /package/dist/{chunk-BP3ZKIPE.js.map → chunk-64UNVW6D.js.map} +0 -0
  236. /package/dist/{chunk-NQ6P7O7C.js.map → chunk-6AKDAQSS.js.map} +0 -0
  237. /package/dist/{chunk-PGJIWCQR.js.map → chunk-6EZQLNPK.js.map} +0 -0
  238. /package/dist/{chunk-EE6DJPB7.js.map → chunk-6HXNFNOB.js.map} +0 -0
  239. /package/dist/{chunk-4QTPERAY.js.map → chunk-6RW4WNGS.js.map} +0 -0
  240. /package/dist/{chunk-GBB23QLL.js.map → chunk-6ZAKPYWX.js.map} +0 -0
  241. /package/dist/{chunk-CWXX5JR3.js.map → chunk-75GAQL2Q.js.map} +0 -0
  242. /package/dist/{chunk-LY5I3ZSV.js.map → chunk-A2YLFKQU.js.map} +0 -0
  243. /package/dist/{chunk-6DGNMASB.js.map → chunk-ALREWFRX.js.map} +0 -0
  244. /package/dist/{chunk-F2UP5ZF4.js.map → chunk-BMC5KGH2.js.map} +0 -0
  245. /package/dist/{chunk-3ODEBPGT.js.map → chunk-BRFL7OWI.js.map} +0 -0
  246. /package/dist/{chunk-UIIHUWOV.js.map → chunk-C7IFBYIJ.js.map} +0 -0
  247. /package/dist/{chunk-FKS2PNJF.js.map → chunk-CSD6SWBZ.js.map} +0 -0
  248. /package/dist/{chunk-6LGKJVOA.js.map → chunk-E2UOEI7N.js.map} +0 -0
  249. /package/dist/{chunk-K2VDRODL.js.map → chunk-E4NFH77Z.js.map} +0 -0
  250. /package/dist/{chunk-VM4UYCD4.js.map → chunk-FTYOCFTV.js.map} +0 -0
  251. /package/dist/{chunk-JVQ56E3U.js.map → chunk-FWTVIRZZ.js.map} +0 -0
  252. /package/dist/{chunk-ALMGYCHY.js.map → chunk-I54YFYBS.js.map} +0 -0
  253. /package/dist/{chunk-4J62V5OE.js.map → chunk-JIEVKHOH.js.map} +0 -0
  254. /package/dist/{chunk-MKNW4FRR.js.map → chunk-JOQGKXR5.js.map} +0 -0
  255. /package/dist/{chunk-Y3FYOKWF.js.map → chunk-KHDKG7XB.js.map} +0 -0
  256. /package/dist/{chunk-TSID4257.js.map → chunk-KMMFN24G.js.map} +0 -0
  257. /package/dist/{chunk-LKWXU6NH.js.map → chunk-LV6AD6XC.js.map} +0 -0
  258. /package/dist/{chunk-WQO5WONV.js.map → chunk-MWXZXCVX.js.map} +0 -0
  259. /package/dist/{chunk-PNZH6CDD.js.map → chunk-NI3MC742.js.map} +0 -0
  260. /package/dist/{chunk-BZYLTGOE.js.map → chunk-OKDKKBLI.js.map} +0 -0
  261. /package/dist/{chunk-AJ6KFHEE.js.map → chunk-PJDAZG65.js.map} +0 -0
  262. /package/dist/{chunk-FPNVOB52.js.map → chunk-RNIJL54W.js.map} +0 -0
  263. /package/dist/{chunk-2M3W6ACW.js.map → chunk-S46LGAQ2.js.map} +0 -0
  264. /package/dist/{chunk-6N2U67KF.js.map → chunk-T3KVZTO3.js.map} +0 -0
  265. /package/dist/{chunk-GY53SDVL.js.map → chunk-U2SAW6DH.js.map} +0 -0
  266. /package/dist/{chunk-P772HCHI.js.map → chunk-W676GY42.js.map} +0 -0
  267. /package/dist/{chunk-T2G4LDU5.js.map → chunk-WLLUARTC.js.map} +0 -0
  268. /package/dist/{chunk-SI5SKX52.js.map → chunk-WW3F7DCX.js.map} +0 -0
  269. /package/dist/{chunk-UOKXYV3U.js.map → chunk-XALDXR3F.js.map} +0 -0
  270. /package/dist/{chunk-ZM6FJCWS.js.map → chunk-XNAI7QGU.js.map} +0 -0
  271. /package/dist/{chunk-JXK53XJW.js.map → chunk-YOLLISEY.js.map} +0 -0
  272. /package/dist/{chunk-FKUVFPQZ.js.map → chunk-Z6QFIRD7.js.map} +0 -0
package/dist/locales.js CHANGED
@@ -1,4 +1,8 @@
1
1
  import "./chunk-QNAB53N3.js";
2
+ import {
3
+ PT_BR_CHROME_COPY,
4
+ PT_BR_TUTORIAL_COPY
5
+ } from "./chunk-VTDZUO2J.js";
2
6
  import {
3
7
  PT_BR_CAROUSEL_COPY,
4
8
  PT_BR_DATA_GRID_COPY,
@@ -39,10 +43,6 @@ import {
39
43
  PT_BR_SOCIAL_LOGIN_COPY,
40
44
  PT_BR_UPLOAD_BUTTON_COPY
41
45
  } from "./chunk-CN4JS57H.js";
42
- import {
43
- PT_BR_CHROME_COPY,
44
- PT_BR_TUTORIAL_COPY
45
- } from "./chunk-VTDZUO2J.js";
46
46
  import "./chunk-JQLQOIB3.js";
47
47
  import {
48
48
  EN_US_BREADCRUMB_COPY,
@@ -1,4 +1,7 @@
1
1
  import "../chunk-5CUKSNWG.js";
2
+ import {
3
+ AppHeaderDetails
4
+ } from "../chunk-I54YFYBS.js";
2
5
  import {
3
6
  AppHeader,
4
7
  AppHeader_default
@@ -15,16 +18,13 @@ import {
15
18
  highlightOf,
16
19
  initialsOf
17
20
  } from "../chunk-IQU4HKND.js";
18
- import {
19
- AppHeaderDetails
20
- } from "../chunk-ALMGYCHY.js";
21
- import "../chunk-LZ5PGB7U.js";
22
- import "../chunk-E5OBAS3U.js";
21
+ import "../chunk-XTYBJAZG.js";
22
+ import "../chunk-LTJC7TGB.js";
23
23
  import "../chunk-3ROCD7XF.js";
24
- import "../chunk-NASLJO2R.js";
25
- import "../chunk-LYVTJLCF.js";
26
- import "../chunk-CRN4KKNI.js";
24
+ import "../chunk-2KSFBZ2H.js";
25
+ import "../chunk-56JF5PZK.js";
27
26
  import "../chunk-IM4DMKH4.js";
27
+ import "../chunk-CRN4KKNI.js";
28
28
  import "../chunk-TJUWSQYQ.js";
29
29
  import "../chunk-DAFFZED3.js";
30
30
  import "../chunk-5UX5QAFJ.js";
@@ -1,12 +1,12 @@
1
1
  import "../chunk-I53WONUS.js";
2
2
  import {
3
3
  NavigationMenu
4
- } from "../chunk-VM4UYCD4.js";
5
- import "../chunk-4QTPERAY.js";
6
- import "../chunk-PNZH6CDD.js";
7
- import "../chunk-JBYFBPI6.js";
4
+ } from "../chunk-FTYOCFTV.js";
5
+ import "../chunk-6RW4WNGS.js";
6
+ import "../chunk-NI3MC742.js";
8
7
  import "../chunk-MUHRPJQT.js";
9
8
  import "../chunk-3L5OZCGA.js";
9
+ import "../chunk-JBYFBPI6.js";
10
10
  import "../chunk-3AIRFAI3.js";
11
11
  import "../chunk-XOXXG7Q5.js";
12
12
  import "../chunk-XJAD6E3V.js";
@@ -1,13 +1,13 @@
1
1
  import "../chunk-R26KYJHK.js";
2
2
  import {
3
3
  SectionNav
4
- } from "../chunk-2M3W6ACW.js";
5
- import "../chunk-SNWCT6JN.js";
6
- import "../chunk-ILJ3FXIC.js";
4
+ } from "../chunk-S46LGAQ2.js";
7
5
  import {
8
6
  sectionNavBarInset
9
7
  } from "../chunk-F7LBTMCA.js";
10
8
  import "../chunk-XCUHGPPZ.js";
9
+ import "../chunk-SNWCT6JN.js";
10
+ import "../chunk-ILJ3FXIC.js";
11
11
  import {
12
12
  RaisedActionButton
13
13
  } from "../chunk-UKUGSU3Y.js";
package/dist/pt-BR.js CHANGED
@@ -1,4 +1,9 @@
1
1
  import "./chunk-QNAB53N3.js";
2
+ import {
3
+ PT_BR_CHROME_COPY,
4
+ PT_BR_NOTIFICATION_UNBLOCK_COPY,
5
+ PT_BR_TUTORIAL_COPY
6
+ } from "./chunk-VTDZUO2J.js";
2
7
  import {
3
8
  PT_BR_CAROUSEL_COPY,
4
9
  PT_BR_DATA_GRID_COPY,
@@ -39,11 +44,6 @@ import {
39
44
  PT_BR_SOCIAL_LOGIN_COPY,
40
45
  PT_BR_UPLOAD_BUTTON_COPY
41
46
  } from "./chunk-CN4JS57H.js";
42
- import {
43
- PT_BR_CHROME_COPY,
44
- PT_BR_NOTIFICATION_UNBLOCK_COPY,
45
- PT_BR_TUTORIAL_COPY
46
- } from "./chunk-VTDZUO2J.js";
47
47
  import {
48
48
  PT_BR_UI_LABELS
49
49
  } from "./chunk-TJUWSQYQ.js";
@@ -2,6 +2,8 @@ import React from 'react';
2
2
  import type { SheetProps } from './Sheet.types';
3
3
  export interface SheetBodyProps extends Pick<SheetProps, 'title' | 'description' | 'showCloseButton' | 'closeLabel' | 'showHandle' | 'header' | 'footer' | 'loading' | 'color' | 'children' | 'onClick' | 'onFocus' | 'onBlur'> {
4
4
  testId: string;
5
+ /** The title's element id, which a dialog sheet's `aria-labelledby` names. */
6
+ titleId?: string;
5
7
  isDragging: boolean;
6
8
  isVerticalSheet: boolean;
7
9
  isDraggableVariant: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"Sheet.body.d.ts","sourceRoot":"","sources":["../../../../../src/components/data-display/Sheet/Sheet.body.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAIhD,MAAM,WAAW,cAAe,SAAQ,IAAI,CAC1C,UAAU,EACR,OAAO,GACP,aAAa,GACb,iBAAiB,GACjB,YAAY,GACZ,YAAY,GACZ,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,OAAO,GACP,UAAU,GACV,SAAS,GACT,SAAS,GACT,QAAQ,CACX;IACC,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,OAAO,CAAC;IACpB,eAAe,EAAE,OAAO,CAAC;IACzB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,WAAW,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;CAC/D;AA6BD;;;;GAIG;AACH,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAqE9C,CAAC"}
1
+ {"version":3,"file":"Sheet.body.d.ts","sourceRoot":"","sources":["../../../../../src/components/data-display/Sheet/Sheet.body.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAIhD,MAAM,WAAW,cAAe,SAAQ,IAAI,CAC1C,UAAU,EACR,OAAO,GACP,aAAa,GACb,iBAAiB,GACjB,YAAY,GACZ,YAAY,GACZ,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,OAAO,GACP,UAAU,GACV,SAAS,GACT,SAAS,GACT,QAAQ,CACX;IACC,MAAM,EAAE,MAAM,CAAC;IACf,8EAA8E;IAC9E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IACpB,eAAe,EAAE,OAAO,CAAC;IACzB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,WAAW,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;CAC/D;AA6BD;;;;GAIG;AACH,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAuE9C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Sheet.d.ts","sourceRoot":"","sources":["../../../../../src/components/data-display/Sheet/Sheet.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAa1B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEhD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAqFrF,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,UAAU,CA6EtC,CAAC"}
1
+ {"version":3,"file":"Sheet.d.ts","sourceRoot":"","sources":["../../../../../src/components/data-display/Sheet/Sheet.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAgB,MAAM,OAAO,CAAC;AAarC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEhD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AA0GrF,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,UAAU,CA4EtC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Sheet.parts.d.ts","sourceRoot":"","sources":["../../../../../src/components/data-display/Sheet/Sheet.parts.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,OAAO,KAAK,EACV,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,eAAe,CAAC;AAsEvB,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA6DlD,CAAC;AAOF,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAgBpD,CAAC;AAQF,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA0BlD,CAAC;AAOF,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAyBpD,CAAC"}
1
+ {"version":3,"file":"Sheet.parts.d.ts","sourceRoot":"","sources":["../../../../../src/components/data-display/Sheet/Sheet.parts.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,OAAO,KAAK,EACV,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,eAAe,CAAC;AAsEvB,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA+DlD,CAAC;AAOF,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAgBpD,CAAC;AAQF,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA0BlD,CAAC;AAOF,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAyBpD,CAAC"}
@@ -61,6 +61,18 @@ export interface SheetProps {
61
61
  elevation?: number;
62
62
  /** Slide in and out (default). `false` opens and closes at once. */
63
63
  animated?: boolean;
64
+ /**
65
+ * The drawer's stacking level, its veil one below. For a sheet opened over a
66
+ * `StackedModal` stack (1300 and up), which the drawer's default (1200) would
67
+ * slide under.
68
+ */
69
+ zIndex?: number;
70
+ /**
71
+ * Announce the panel as a modal dialog named by its `title`: `role="dialog"`,
72
+ * `aria-modal` and `aria-labelledby`. Off by default — a sheet used as a side
73
+ * panel or a menu is not a dialog.
74
+ */
75
+ asDialog?: boolean;
64
76
  dataTestId?: string;
65
77
  }
66
78
  export interface SheetHeaderProps {
@@ -79,6 +91,8 @@ export interface SheetHeaderProps {
79
91
  className?: string;
80
92
  style?: CSSProperties;
81
93
  children?: ReactNode;
94
+ /** The title's element id, for a sheet that names itself as a dialog (`asDialog`). */
95
+ titleId?: string;
82
96
  dataTestId?: string;
83
97
  }
84
98
  export interface SheetContentProps {
@@ -1 +1 @@
1
- {"version":3,"file":"Sheet.types.d.ts","sourceRoot":"","sources":["../../../../../src/components/data-display/Sheet/Sheet.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Sheet.types.d.ts","sourceRoot":"","sources":["../../../../../src/components/data-display/Sheet/Sheet.types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"StackedModal.hooks.d.ts","sourceRoot":"","sources":["../../../../../src/components/feedback/StackedModal/StackedModal.hooks.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AA0F3D,UAAU,kBAAkB;IAC1B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,UAAU,WAAW;IACnB,SAAS,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAC5C,SAAS,EAAE,cAAc,CAAC;IAC1B,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,GAAG,eAAe,KAAK,IAAI,CAAC;CACjF;AAED;;;;GAIG;AACH,eAAO,MAAM,cAAc,GAAI,SAAS,kBAAkB,KAAG,WAyC5D,CAAC"}
1
+ {"version":3,"file":"StackedModal.hooks.d.ts","sourceRoot":"","sources":["../../../../../src/components/feedback/StackedModal/StackedModal.hooks.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AA0G3D,UAAU,kBAAkB;IAC1B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,UAAU,WAAW;IACnB,SAAS,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAC5C,SAAS,EAAE,cAAc,CAAC;IAC1B,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,GAAG,eAAe,KAAK,IAAI,CAAC;CACjF;AAED;;;;GAIG;AACH,eAAO,MAAM,cAAc,GAAI,SAAS,kBAAkB,KAAG,WAyC5D,CAAC"}
@@ -1,5 +1,11 @@
1
1
  import type { FC, ReactNode } from 'react';
2
2
  import type { ModalStackContextValue } from './StackedModal.types';
3
+ /**
4
+ * Whether a `ModalStackProvider` is above this point. A component that opens a
5
+ * `StackedModal` on its own (`UsableModal`) brings a provider only when the
6
+ * host has none, so its panel still joins a stack the host already keeps.
7
+ */
8
+ export declare const useInModalStack: () => boolean;
3
9
  export declare const useModalStack: () => ModalStackContextValue;
4
10
  export declare const ModalStackProvider: FC<{
5
11
  children: ReactNode;
@@ -1 +1 @@
1
- {"version":3,"file":"modal-stack.d.ts","sourceRoot":"","sources":["../../../../../src/components/feedback/StackedModal/modal-stack.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAG3C,OAAO,KAAK,EAA6B,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AA0B9F,eAAO,MAAM,aAAa,QAAO,sBAMhC,CAAC;AAyCF,eAAO,MAAM,kBAAkB,EAAE,EAAE,CAAC;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,CAiD1D,CAAC"}
1
+ {"version":3,"file":"modal-stack.d.ts","sourceRoot":"","sources":["../../../../../src/components/feedback/StackedModal/modal-stack.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAG3C,OAAO,KAAK,EAA6B,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AA6B9F;;;;GAIG;AACH,eAAO,MAAM,eAAe,QAAO,OAAqD,CAAC;AAEzF,eAAO,MAAM,aAAa,QAAO,sBAMhC,CAAC;AAyCF,eAAO,MAAM,kBAAkB,EAAE,EAAE,CAAC;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,CAiD1D,CAAC"}
@@ -0,0 +1,20 @@
1
+ import type { UsableModalProps } from './UsableModal.types';
2
+ /**
3
+ * How long a closed surface stays mounted: longer than its own way out — the
4
+ * drawer's slide-down (225 ms) and the stacked modal's leaving its stack
5
+ * (300 ms) — so neither is cut off.
6
+ */
7
+ export declare const SURFACE_EXIT_MS = 400;
8
+ /**
9
+ * A modal that is a `StackedModal` on a computer and a bottom `Sheet` on a
10
+ * phone, behind one API: title, body, a pinned footer, and the ways out.
11
+ *
12
+ * Nothing is fetched until the first open: until then it renders nothing.
13
+ * Closing hands the surface `open={false}`, so it runs its own way out — the
14
+ * slide-out, and the stacked modal leaving its stack — and then it unmounts
15
+ * (`SURFACE_EXIT_MS`). While the
16
+ * chunk loads the screen shows no placeholder: a modal that blinks a spinner
17
+ * before its content is worse than one that appears a frame later.
18
+ */
19
+ export declare function UsableModal({ layout, ...props }: UsableModalProps): React.JSX.Element | null;
20
+ //# sourceMappingURL=UsableModal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UsableModal.d.ts","sourceRoot":"","sources":["../../../../../src/components/feedback/UsableModal/UsableModal.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAqB,gBAAgB,EAA2B,MAAM,qBAAqB,CAAC;AA+BxG;;;;GAIG;AACH,eAAO,MAAM,eAAe,MAAM,CAAC;AA8BnC;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,EAAE,MAAe,EAAE,GAAG,KAAK,EAAE,EAAE,gBAAgB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,IAAI,CASrG"}
@@ -0,0 +1,11 @@
1
+ import type { UsableModalSurfaceProps } from './UsableModal.types';
2
+ /**
3
+ * The computer's surface: a `StackedModal`, loaded only when this layout is the
4
+ * one drawn (`./UsableModal`).
5
+ *
6
+ * The footer is pinned at the bottom of the panel's scroll, not handed to
7
+ * `StackedModal`'s `actions`: those sit in the header from `sm` up, and a
8
+ * screen's acts belong under what they act on.
9
+ */
10
+ export declare function UsableModalStacked(props: UsableModalSurfaceProps): React.JSX.Element;
11
+ //# sourceMappingURL=UsableModal.modal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UsableModal.modal.d.ts","sourceRoot":"","sources":["../../../../../src/components/feedback/UsableModal/UsableModal.modal.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAEnE;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAMpF"}
@@ -0,0 +1,17 @@
1
+ import type { UsableModalSurfaceProps } from './UsableModal.types';
2
+ /**
3
+ * The phone's surface: a bottom `Sheet`, loaded only when this layout is the one
4
+ * drawn (`./UsableModal`). Its height is a ceiling, not a height: a short body
5
+ * gives a short sheet, and a long one grows to `sheetCeiling` and scrolls above
6
+ * the pinned footer.
7
+ *
8
+ * It is a named modal dialog (`asDialog`), like the stacked surface. And it
9
+ * takes the level a panel pushed onto the stack would take (`BASE + depth *
10
+ * STEP`): above any `StackedModal` already open — a drawer's default (1200) is
11
+ * under the stack's 1300 and up, and a sheet opened from a panel would slide in
12
+ * behind it, invisible, holding the focus — and never above the menus its own
13
+ * body opens. With no stack that is 1300, MUI's `zIndex.modal`, the level a
14
+ * Select's or a Popover's menu opens at; portalled later, the menu is on top.
15
+ */
16
+ export declare function UsableModalSheet({ open, onClose, title, children, footer, closeLabel, dataTestId, }: UsableModalSurfaceProps): React.JSX.Element;
17
+ //# sourceMappingURL=UsableModal.sheet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UsableModal.sheet.d.ts","sourceRoot":"","sources":["../../../../../src/components/feedback/UsableModal/UsableModal.sheet.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAUnE;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,CAAC,EAC/B,IAAI,EACJ,OAAO,EACP,KAAK,EACL,QAAQ,EACR,MAAM,EACN,UAAU,EACV,UAAU,GACX,EAAE,uBAAuB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAuB7C"}
@@ -0,0 +1,35 @@
1
+ import type { ReactNode } from 'react';
2
+ import type { PanelSize, PanelWidth } from '../StackedModal/StackedModal.types';
3
+ /** Which surface draws the modal: chosen by the viewport, or fixed by the host. */
4
+ export type UsableModalLayout = 'auto' | 'modal' | 'sheet';
5
+ export interface UsableModalProps {
6
+ /** Controls the visibility of the modal. */
7
+ open: boolean;
8
+ /** Fired by every way out: the ✕, Esc, the backdrop, a swipe down on the sheet. */
9
+ onClose: () => void;
10
+ /** Names the dialog: the stacked modal's bar, the sheet's header. */
11
+ title: string;
12
+ /** The body. It scrolls; the footer does not. */
13
+ children?: ReactNode;
14
+ /** The pinned action bar at the bottom of either surface — the screen's acts. */
15
+ footer?: ReactNode;
16
+ /** The ✕'s accessible name — it carries a glyph only. Defaults to `common.close` (`EN_US_UI_LABELS`). */
17
+ closeLabel?: string;
18
+ /** The stacked modal's back arrow, shown when it opens over another panel. REQUIRED. */
19
+ backLabel: string;
20
+ /**
21
+ * `auto` (default): a bottom `Sheet` below the theme's `sm` breakpoint, a
22
+ * `StackedModal` from `sm` up. `modal` and `sheet` fix one surface, for a host
23
+ * that already knows (a test, a kiosk).
24
+ */
25
+ layout?: UsableModalLayout;
26
+ /** The stacked modal's viewport share (`StackedModal`'s `size`). */
27
+ size?: PanelSize;
28
+ /** An exact width for the stacked modal (`StackedModal`'s `panelWidth`). */
29
+ panelWidth?: PanelWidth;
30
+ /** Base test id: the surface carries it, and `-footer` marks the action bar. */
31
+ dataTestId?: string;
32
+ }
33
+ /** What each lazily loaded surface receives: the host's props, layout already decided. */
34
+ export type UsableModalSurfaceProps = Omit<UsableModalProps, 'layout'>;
35
+ //# sourceMappingURL=UsableModal.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UsableModal.types.d.ts","sourceRoot":"","sources":["../../../../../src/components/feedback/UsableModal/UsableModal.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAEhF,mFAAmF;AACnF,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;AAE3D,MAAM,WAAW,gBAAgB;IAC/B,4CAA4C;IAC5C,IAAI,EAAE,OAAO,CAAC;IACd,mFAAmF;IACnF,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,qEAAqE;IACrE,KAAK,EAAE,MAAM,CAAC;IACd,iDAAiD;IACjD,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,iFAAiF;IACjF,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,yGAAyG;IACzG,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,wFAAwF;IACxF,SAAS,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B,oEAAoE;IACpE,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,4EAA4E;IAC5E,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,gFAAgF;IAChF,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,0FAA0F;AAC1F,MAAM,MAAM,uBAAuB,GAAG,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { ReactNode } from 'react';
2
+ /** A footer worth a bar: `null`, `false` and `undefined` draw none, on either surface. */
3
+ export declare const hasFooter: (footer: ReactNode) => boolean;
4
+ //# sourceMappingURL=has-footer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"has-footer.d.ts","sourceRoot":"","sources":["../../../../../src/components/feedback/UsableModal/has-footer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,0FAA0F;AAC1F,eAAO,MAAM,SAAS,GAAI,QAAQ,SAAS,KAAG,OAAsE,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { UsableModal } from './UsableModal';
2
+ export type { UsableModalLayout, UsableModalProps } from './UsableModal.types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/feedback/UsableModal/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,24 @@
1
+ import type { ComponentType } from 'react';
2
+ /**
3
+ * How long a reload counts as spent. Inside it, a chunk still missing after the
4
+ * reload is not a deploy but a broken build: render nothing rather than loop.
5
+ * Past it, a missing chunk is the NEXT deploy — a tab open for days meets one a
6
+ * day — and earns its own reload; a flag kept for the tab's life would leave
7
+ * the modal silently dead after the second deploy.
8
+ */
9
+ export declare const RELOAD_SPENT_MS: number;
10
+ type Module<P> = {
11
+ default: ComponentType<P>;
12
+ };
13
+ /**
14
+ * A lazy loader that survives a deploy. Every deploy replaces a host's hashed
15
+ * chunks, so a tab opened before it asks for a file that is gone. The import is
16
+ * tried twice; then the page reloads ONCE onto the current build (the same
17
+ * answer as a host's own route loader); if that already happened in this tab
18
+ * in the last `RELOAD_SPENT_MS`,
19
+ * the modal renders nothing rather than handing the failure to the host's
20
+ * error boundary and losing the whole page for opening a modal.
21
+ */
22
+ export declare function recoverChunk<P>(load: () => Promise<Module<P>>): () => Promise<Module<P>>;
23
+ export {};
24
+ //# sourceMappingURL=recover-chunk.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recover-chunk.d.ts","sourceRoot":"","sources":["../../../../../src/components/feedback/UsableModal/recover-chunk.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAK3C;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,QAAgB,CAAC;AAE7C,KAAK,MAAM,CAAC,CAAC,IAAI;IAAE,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,CAAA;CAAE,CAAC;AAuB/C;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAcxF"}
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  UserAvatar,
3
3
  UserMenu
4
- } from "./chunk-6LGKJVOA.js";
4
+ } from "./chunk-E2UOEI7N.js";
5
5
  import "./chunk-DQ22UKMZ.js";
6
6
  import "./chunk-UDQSIRAP.js";
7
- import "./chunk-4J62V5OE.js";
8
- import "./chunk-3ZVUNSFF.js";
7
+ import "./chunk-JIEVKHOH.js";
9
8
  import "./chunk-7XSCEHGA.js";
10
9
  import "./chunk-MTEQEPNY.js";
11
10
  import "./chunk-6ZZGK5DT.js";
11
+ import "./chunk-3ZVUNSFF.js";
12
12
  import "./chunk-VUHLNYAE.js";
13
13
  import "./chunk-2GSIEDGN.js";
14
14
  import "./chunk-4XBAEKQQ.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@12-apps/ui",
3
- "version": "6.94.0",
3
+ "version": "6.95.1",
4
4
  "license": "MIT",
5
5
  "packageManager": "pnpm@10.34.5",
6
6
  "type": "module",
@@ -348,6 +348,10 @@
348
348
  "types": "./dist/types/components/feedback/TutorialOverlay/index.d.ts",
349
349
  "default": "./dist/feedback/TutorialOverlay.js"
350
350
  },
351
+ "./feedback/UsableModal": {
352
+ "types": "./dist/types/components/feedback/UsableModal/index.d.ts",
353
+ "default": "./dist/feedback/UsableModal.js"
354
+ },
351
355
  "./form/AddressAutocomplete": {
352
356
  "types": "./dist/types/components/form/AddressAutocomplete/index.d.ts",
353
357
  "default": "./dist/form/AddressAutocomplete.js"
@@ -24,6 +24,8 @@ export interface SheetBodyProps extends Pick<
24
24
  | 'onBlur'
25
25
  > {
26
26
  testId: string;
27
+ /** The title's element id, which a dialog sheet's `aria-labelledby` names. */
28
+ titleId?: string;
27
29
  isDragging: boolean;
28
30
  isVerticalSheet: boolean;
29
31
  isDraggableVariant: boolean;
@@ -79,6 +81,7 @@ export const SheetBody: React.FC<SheetBodyProps> = (props) => {
79
81
  onFocus,
80
82
  onBlur,
81
83
  testId,
84
+ titleId,
82
85
  isDragging,
83
86
  isVerticalSheet,
84
87
  isDraggableVariant,
@@ -115,6 +118,7 @@ export const SheetBody: React.FC<SheetBodyProps> = (props) => {
115
118
  showHandle={showHandle && isVerticalSheet}
116
119
  isDraggable={isDraggableVariant && isVerticalSheet}
117
120
  onDragStart={onDragStart}
121
+ titleId={titleId}
118
122
  dataTestId={`${testId}-header`}
119
123
  >
120
124
  {header}
@@ -43,6 +43,11 @@ A vertical sheet's **width** is one rule rather than one per preset: `min(100%,
43
43
  - **elevation** (number): Shadow depth level (0-24)
44
44
  - **animated** (boolean, default true): `false` opens and closes the panel at once, with no slide, and shows and hides its veil with no fade (`SheetOverlay` takes the same prop)
45
45
 
46
+ ### Stacking and announcing
47
+
48
+ - **zIndex** (number): The drawer's stacking level, its veil one below. A sheet opened over a `StackedModal` stack (1300 and up) passes one above it; the drawer's default (1200) would slide in under the panels.
49
+ - **asDialog** (boolean): Announce the panel as a modal dialog named by its `title` — `role="dialog"`, `aria-modal` and `aria-labelledby`. Off by default: a sheet used as a side panel or a menu is not a dialog.
50
+
46
51
  ### Interactive Behavior
47
52
 
48
53
  - **swipeable** (boolean): Enable swipe gestures for touch devices (default: true)
@@ -103,6 +103,7 @@ export const SheetHeader: React.FC<SheetHeaderProps> = (props) => {
103
103
  className,
104
104
  style,
105
105
  children,
106
+ titleId,
106
107
  dataTestId,
107
108
  } = withDefaults(props, HEADER_DEFAULTS);
108
109
 
@@ -125,7 +126,7 @@ export const SheetHeader: React.FC<SheetHeaderProps> = (props) => {
125
126
  <Box sx={{ display: 'flex', alignItems: 'flex-start', justifyContent: 'space-between' }}>
126
127
  <Box sx={{ flex: 1 }}>
127
128
  {title && (
128
- <Typography variant="h6" sx={{ fontWeight: 600 }} data-testid={`${dataTestId}-title`}>
129
+ <Typography id={titleId} variant="h6" sx={{ fontWeight: 600 }} data-testid={`${dataTestId}-title`}>
129
130
  {title}
130
131
  </Typography>
131
132
  )}
@@ -137,12 +138,13 @@ export const SheetHeader: React.FC<SheetHeaderProps> = (props) => {
137
138
  {children}
138
139
  </Box>
139
140
 
141
+ {/* MUI's medium IconButton: 40px, the tap floor. `small` was 34px (FUT-4394). */}
140
142
  {showCloseButton && (
141
143
  <IconButton
142
144
  onClick={onClose}
143
145
  aria-label={closeLabel}
144
- size="small"
145
- sx={{ ml: 1, mt: -0.5 }}
146
+ size="medium"
147
+ sx={{ ml: 1, mt: -1, mr: -1 }}
146
148
  data-testid={`${dataTestId}-close-button`}
147
149
  >
148
150
  <CloseIcon data-testid={`${dataTestId}-close-icon`} />
@@ -2,7 +2,7 @@ import Drawer from '@mui/material/Drawer/index.js';
2
2
  import SwipeableDrawer from '@mui/material/SwipeableDrawer/index.js';
3
3
  import { useTheme } from '@mui/material/styles/index.js';
4
4
  import type { BackdropProps } from '@mui/material/Backdrop/index.js';
5
- import React from 'react';
5
+ import React, { useId } from 'react';
6
6
 
7
7
  import { withDefaults } from '../../../utils/withDefaults';
8
8
 
@@ -102,9 +102,31 @@ const orientationOf = ({ position, variant }: ResolvedSheetProps) => {
102
102
  };
103
103
  };
104
104
 
105
+ /** The paper's dialog attributes: named only when it is a dialog AND has a title to be named by. */
106
+ const dialogAriaOf = ({ asDialog, title }: ResolvedSheetProps, titleId: string) =>
107
+ asDialog ? { role: 'dialog', 'aria-modal': true, ...(title ? { 'aria-labelledby': titleId } : {}) } : {};
108
+
109
+ /** The drawer at a caller's stacking level, or MUI's own. */
110
+ const stackedAt = (zIndex: number | undefined) => (zIndex === undefined ? {} : { sx: { zIndex } });
111
+
112
+ /**
113
+ * The drawer's modal: kept mounted, its own Escape off (the hook's listener
114
+ * honours `closeOnEscape`), and an invisible backdrop that catches the tap.
115
+ */
116
+ const modalPropsOf = (testId: string | undefined) => ({
117
+ keepMounted: true,
118
+ disableEscapeKeyDown: true,
119
+ BackdropComponent: ClickCatcher,
120
+ BackdropProps: { 'data-testid': testId ? `${testId}-click-catcher` : undefined } as Partial<BackdropProps>,
121
+ });
122
+
123
+ /** The veil one below the drawer it dims. */
124
+ const veilStyleOf = (zIndex: number | undefined) => (zIndex === undefined ? undefined : { zIndex: zIndex - 1 });
125
+
105
126
  export const Sheet: React.FC<SheetProps> = (props) => {
106
127
  const resolved = withDefaults(props, DEFAULTS) as ResolvedSheetProps;
107
- const { position, variant, showOverlay, swipeable, className, dataTestId } = resolved;
128
+ const { position, variant, showOverlay, swipeable, className, dataTestId, zIndex, asDialog } = resolved;
129
+ const titleId = useId();
108
130
 
109
131
  const theme = useTheme();
110
132
  const orientation = orientationOf(resolved);
@@ -125,6 +147,7 @@ export const Sheet: React.FC<SheetProps> = (props) => {
125
147
  anchor: position,
126
148
  open: isOpen,
127
149
  className,
150
+ ...stackedAt(zIndex),
128
151
  ...(resolved.animated === false ? { transitionDuration: 0 } : {}),
129
152
  // A tap outside obeys `closeOnOverlayClick`. A swipe-to-dismiss (no
130
153
  // reason: SwipeableDrawer calls `onClose()` bare) closes. Escape is the
@@ -134,14 +157,10 @@ export const Sheet: React.FC<SheetProps> = (props) => {
134
157
  reason === 'backdropClick' ? handleOverlayClick() : handleClose(),
135
158
  PaperProps: {
136
159
  ref: sheetRef,
160
+ ...dialogAriaOf(resolved, titleId),
137
161
  sx: panelSx({ ...resolved, ...orientation, theme, currentHeight, isDragging, isAnimating }),
138
162
  },
139
- ModalProps: {
140
- keepMounted: true,
141
- disableEscapeKeyDown: true,
142
- BackdropComponent: ClickCatcher,
143
- BackdropProps: { 'data-testid': testId ? `${testId}-click-catcher` : undefined } as Partial<BackdropProps>,
144
- },
163
+ ModalProps: modalPropsOf(testId),
145
164
  };
146
165
 
147
166
  const body = (
@@ -149,6 +168,7 @@ export const Sheet: React.FC<SheetProps> = (props) => {
149
168
  {...resolved}
150
169
  {...orientation}
151
170
  testId={testId}
171
+ titleId={asDialog ? titleId : undefined}
152
172
  isDragging={isDragging}
153
173
  onClose={handleClose}
154
174
  onDragStart={handleDragStart}
@@ -162,7 +182,7 @@ export const Sheet: React.FC<SheetProps> = (props) => {
162
182
  return (
163
183
  <>
164
184
  {showOverlay && isOpen && (
165
- <SheetOverlay open={isOpen} onClick={handleOverlayClick} blur={variant === 'glass'} animated={resolved.animated} />
185
+ <SheetOverlay open onClick={handleOverlayClick} blur={variant === 'glass'} animated={resolved.animated} style={veilStyleOf(zIndex)} />
166
186
  )}
167
187
 
168
188
  {isSwipeable ? (
@@ -62,6 +62,18 @@ export interface SheetProps {
62
62
  elevation?: number;
63
63
  /** Slide in and out (default). `false` opens and closes at once. */
64
64
  animated?: boolean;
65
+ /**
66
+ * The drawer's stacking level, its veil one below. For a sheet opened over a
67
+ * `StackedModal` stack (1300 and up), which the drawer's default (1200) would
68
+ * slide under.
69
+ */
70
+ zIndex?: number;
71
+ /**
72
+ * Announce the panel as a modal dialog named by its `title`: `role="dialog"`,
73
+ * `aria-modal` and `aria-labelledby`. Off by default — a sheet used as a side
74
+ * panel or a menu is not a dialog.
75
+ */
76
+ asDialog?: boolean;
65
77
  dataTestId?: string;
66
78
  }
67
79
 
@@ -81,6 +93,8 @@ export interface SheetHeaderProps {
81
93
  className?: string;
82
94
  style?: CSSProperties;
83
95
  children?: ReactNode;
96
+ /** The title's element id, for a sheet that names itself as a dialog (`asDialog`). */
97
+ titleId?: string;
84
98
  dataTestId?: string;
85
99
  }
86
100
 
@@ -91,6 +91,22 @@ const useStackRegistration = (open: boolean, modalId: string): void => {
91
91
  const timer = window.setTimeout(() => popModal(modalId), ROLE_TRANSITION_MS);
92
92
  return () => window.clearTimeout(timer);
93
93
  }, [open, modalId, popModal, isModalInStack]);
94
+
95
+ // A panel unmounted while open, or before its slide-out timer fired, still
96
+ // leaves the stack: otherwise its entry stays `primary` and the panel below
97
+ // is stuck as `secondary` (no Esc, no backdrop, a back arrow to nowhere).
98
+ // `popModal(id)` filters by id, so popping one already gone is a no-op, and
99
+ // it is a stable callback, so this runs on unmount (or an id change) only.
100
+ // The registration flag goes with the entry: StrictMode runs this cleanup and
101
+ // then the effects again on the SAME instance, and a flag left `true` would
102
+ // skip the re-push and leave an open panel out of its stack.
103
+ useEffect(
104
+ () => () => {
105
+ popModal(modalId);
106
+ hasRegisteredRef.current = false;
107
+ },
108
+ [modalId, popModal],
109
+ );
94
110
  };
95
111
 
96
112
  interface PanelChromeOptions {