@okta/odyssey-react-mui 1.32.4 → 1.34.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 (363) hide show
  1. package/dist/cjs/Autocomplete.cjs +1 -1
  2. package/dist/cjs/Autocomplete.cjs.map +1 -1
  3. package/dist/cjs/Breadcrumbs.cjs +23 -7
  4. package/dist/cjs/Breadcrumbs.cjs.map +1 -1
  5. package/dist/cjs/Buttons/BaseButton.cjs +1 -1
  6. package/dist/cjs/Buttons/BaseButton.cjs.map +1 -1
  7. package/dist/cjs/DatePickers/datePickerTheme.cjs +1 -1
  8. package/dist/cjs/DatePickers/datePickerTheme.cjs.map +1 -1
  9. package/dist/cjs/OdysseyProvider.cjs +2 -2
  10. package/dist/cjs/OdysseyProvider.cjs.map +1 -1
  11. package/dist/cjs/OdysseyThemeProvider.cjs +2 -2
  12. package/dist/cjs/OdysseyThemeProvider.cjs.map +1 -1
  13. package/dist/cjs/hexToRgb.cjs.map +1 -1
  14. package/dist/cjs/labs/DatePickers/DateTimePicker.cjs.map +1 -1
  15. package/dist/cjs/labs/OdysseyPickers/PickerWithOptionAdornment.cjs.map +1 -1
  16. package/dist/cjs/properties/ts/odyssey-react-mui.cjs +1 -0
  17. package/dist/cjs/properties/ts/odyssey-react-mui.cjs.map +1 -1
  18. package/dist/cjs/properties/ts/odyssey-react-mui_cs.cjs +1 -0
  19. package/dist/cjs/properties/ts/odyssey-react-mui_cs.cjs.map +1 -1
  20. package/dist/cjs/properties/ts/odyssey-react-mui_da.cjs +1 -0
  21. package/dist/cjs/properties/ts/odyssey-react-mui_da.cjs.map +1 -1
  22. package/dist/cjs/properties/ts/odyssey-react-mui_de.cjs +1 -0
  23. package/dist/cjs/properties/ts/odyssey-react-mui_de.cjs.map +1 -1
  24. package/dist/cjs/properties/ts/odyssey-react-mui_el.cjs +1 -0
  25. package/dist/cjs/properties/ts/odyssey-react-mui_el.cjs.map +1 -1
  26. package/dist/cjs/properties/ts/odyssey-react-mui_es.cjs +1 -0
  27. package/dist/cjs/properties/ts/odyssey-react-mui_es.cjs.map +1 -1
  28. package/dist/cjs/properties/ts/odyssey-react-mui_fi.cjs +1 -0
  29. package/dist/cjs/properties/ts/odyssey-react-mui_fi.cjs.map +1 -1
  30. package/dist/cjs/properties/ts/odyssey-react-mui_fr.cjs +1 -0
  31. package/dist/cjs/properties/ts/odyssey-react-mui_fr.cjs.map +1 -1
  32. package/dist/cjs/properties/ts/odyssey-react-mui_ht.cjs +1 -0
  33. package/dist/cjs/properties/ts/odyssey-react-mui_ht.cjs.map +1 -1
  34. package/dist/cjs/properties/ts/odyssey-react-mui_hu.cjs +1 -0
  35. package/dist/cjs/properties/ts/odyssey-react-mui_hu.cjs.map +1 -1
  36. package/dist/cjs/properties/ts/odyssey-react-mui_id.cjs +1 -0
  37. package/dist/cjs/properties/ts/odyssey-react-mui_id.cjs.map +1 -1
  38. package/dist/cjs/properties/ts/odyssey-react-mui_it.cjs +1 -0
  39. package/dist/cjs/properties/ts/odyssey-react-mui_it.cjs.map +1 -1
  40. package/dist/cjs/properties/ts/odyssey-react-mui_ja.cjs +1 -0
  41. package/dist/cjs/properties/ts/odyssey-react-mui_ja.cjs.map +1 -1
  42. package/dist/cjs/properties/ts/odyssey-react-mui_ko.cjs +1 -0
  43. package/dist/cjs/properties/ts/odyssey-react-mui_ko.cjs.map +1 -1
  44. package/dist/cjs/properties/ts/odyssey-react-mui_ms.cjs +1 -0
  45. package/dist/cjs/properties/ts/odyssey-react-mui_ms.cjs.map +1 -1
  46. package/dist/cjs/properties/ts/odyssey-react-mui_nb.cjs +1 -0
  47. package/dist/cjs/properties/ts/odyssey-react-mui_nb.cjs.map +1 -1
  48. package/dist/cjs/properties/ts/odyssey-react-mui_nl_NL.cjs +1 -0
  49. package/dist/cjs/properties/ts/odyssey-react-mui_nl_NL.cjs.map +1 -1
  50. package/dist/cjs/properties/ts/odyssey-react-mui_pl.cjs +1 -0
  51. package/dist/cjs/properties/ts/odyssey-react-mui_pl.cjs.map +1 -1
  52. package/dist/cjs/properties/ts/odyssey-react-mui_pt_BR.cjs +1 -0
  53. package/dist/cjs/properties/ts/odyssey-react-mui_pt_BR.cjs.map +1 -1
  54. package/dist/cjs/properties/ts/odyssey-react-mui_ro.cjs +1 -0
  55. package/dist/cjs/properties/ts/odyssey-react-mui_ro.cjs.map +1 -1
  56. package/dist/cjs/properties/ts/odyssey-react-mui_ru.cjs +1 -0
  57. package/dist/cjs/properties/ts/odyssey-react-mui_ru.cjs.map +1 -1
  58. package/dist/cjs/properties/ts/odyssey-react-mui_sv.cjs +1 -0
  59. package/dist/cjs/properties/ts/odyssey-react-mui_sv.cjs.map +1 -1
  60. package/dist/cjs/properties/ts/odyssey-react-mui_th.cjs +1 -0
  61. package/dist/cjs/properties/ts/odyssey-react-mui_th.cjs.map +1 -1
  62. package/dist/cjs/properties/ts/odyssey-react-mui_tr.cjs +1 -0
  63. package/dist/cjs/properties/ts/odyssey-react-mui_tr.cjs.map +1 -1
  64. package/dist/cjs/properties/ts/odyssey-react-mui_uk.cjs +1 -0
  65. package/dist/cjs/properties/ts/odyssey-react-mui_uk.cjs.map +1 -1
  66. package/dist/cjs/properties/ts/odyssey-react-mui_vi.cjs +1 -0
  67. package/dist/cjs/properties/ts/odyssey-react-mui_vi.cjs.map +1 -1
  68. package/dist/cjs/properties/ts/odyssey-react-mui_zh_CN.cjs +1 -0
  69. package/dist/cjs/properties/ts/odyssey-react-mui_zh_CN.cjs.map +1 -1
  70. package/dist/cjs/properties/ts/odyssey-react-mui_zh_TW.cjs +1 -0
  71. package/dist/cjs/properties/ts/odyssey-react-mui_zh_TW.cjs.map +1 -1
  72. package/dist/cjs/theme/pxToRem.cjs +21 -0
  73. package/dist/cjs/theme/pxToRem.cjs.map +1 -0
  74. package/dist/cjs/theme/theme.cjs +22 -0
  75. package/dist/cjs/theme/theme.cjs.map +1 -1
  76. package/dist/cjs/theme/useMediaQuery.cjs +34 -0
  77. package/dist/cjs/theme/useMediaQuery.cjs.map +1 -0
  78. package/dist/cjs/ui-shell/AppSwitcher/AppSwitcher.cjs +3 -3
  79. package/dist/cjs/ui-shell/AppSwitcher/AppSwitcher.cjs.map +1 -1
  80. package/dist/cjs/ui-shell/NarrowUiShellContent.cjs +353 -0
  81. package/dist/cjs/ui-shell/NarrowUiShellContent.cjs.map +1 -0
  82. package/dist/cjs/ui-shell/SideNav/SideNav.cjs +62 -44
  83. package/dist/cjs/ui-shell/SideNav/SideNav.cjs.map +1 -1
  84. package/dist/cjs/ui-shell/SideNav/SideNavHeader.cjs +8 -5
  85. package/dist/cjs/ui-shell/SideNav/SideNavHeader.cjs.map +1 -1
  86. package/dist/cjs/ui-shell/SideNav/SideNavItemContent.cjs +3 -0
  87. package/dist/cjs/ui-shell/SideNav/SideNavItemContent.cjs.map +1 -1
  88. package/dist/cjs/ui-shell/SideNav/SideNavLogo.cjs +5 -5
  89. package/dist/cjs/ui-shell/SideNav/SideNavLogo.cjs.map +1 -1
  90. package/dist/cjs/ui-shell/SideNav/SideNavToggleButton.cjs +2 -1
  91. package/dist/cjs/ui-shell/SideNav/SideNavToggleButton.cjs.map +1 -1
  92. package/dist/cjs/ui-shell/SideNav/types.cjs.map +1 -1
  93. package/dist/cjs/ui-shell/TopNav/HamburgerMenuIcon.cjs +37 -0
  94. package/dist/cjs/ui-shell/TopNav/HamburgerMenuIcon.cjs.map +1 -0
  95. package/dist/cjs/ui-shell/TopNav/TopNav.cjs +5 -5
  96. package/dist/cjs/ui-shell/TopNav/TopNav.cjs.map +1 -1
  97. package/dist/cjs/ui-shell/UiShell.cjs +43 -18
  98. package/dist/cjs/ui-shell/UiShell.cjs.map +1 -1
  99. package/dist/cjs/ui-shell/UiShellProvider.cjs +14 -4
  100. package/dist/cjs/ui-shell/UiShellProvider.cjs.map +1 -1
  101. package/dist/cjs/ui-shell/WideUiShellContent.cjs +171 -0
  102. package/dist/cjs/ui-shell/WideUiShellContent.cjs.map +1 -0
  103. package/dist/cjs/ui-shell/index.cjs +37 -9
  104. package/dist/cjs/ui-shell/index.cjs.map +1 -1
  105. package/dist/cjs/ui-shell/renderUiShell.cjs +32 -20
  106. package/dist/cjs/ui-shell/renderUiShell.cjs.map +1 -1
  107. package/dist/cjs/ui-shell/uiShellContentTypes.cjs +20 -0
  108. package/dist/cjs/ui-shell/uiShellContentTypes.cjs.map +1 -0
  109. package/dist/cjs/ui-shell/uiShellSharedConstants.cjs +23 -0
  110. package/dist/cjs/ui-shell/uiShellSharedConstants.cjs.map +1 -0
  111. package/dist/cjs/ui-shell/useMatchAppElementToUiShellAppArea.cjs +108 -0
  112. package/dist/cjs/ui-shell/useMatchAppElementToUiShellAppArea.cjs.map +1 -0
  113. package/dist/cjs/ui-shell/useScrollState.cjs +2 -4
  114. package/dist/cjs/ui-shell/useScrollState.cjs.map +1 -1
  115. package/dist/cjs/ui-shell/useUiShellBreakpoints.cjs +41 -0
  116. package/dist/cjs/ui-shell/useUiShellBreakpoints.cjs.map +1 -0
  117. package/dist/cjs/web-component/createReactRootElements.cjs.map +1 -1
  118. package/dist/cjs/web-component/renderReactInWebComponent.cjs +6 -1
  119. package/dist/cjs/web-component/renderReactInWebComponent.cjs.map +1 -1
  120. package/dist/esm/Autocomplete.js +1 -1
  121. package/dist/esm/Autocomplete.js.map +1 -1
  122. package/dist/esm/Breadcrumbs.js +23 -7
  123. package/dist/esm/Breadcrumbs.js.map +1 -1
  124. package/dist/esm/Buttons/BaseButton.js +1 -1
  125. package/dist/esm/Buttons/BaseButton.js.map +1 -1
  126. package/dist/esm/DatePickers/datePickerTheme.js +1 -1
  127. package/dist/esm/DatePickers/datePickerTheme.js.map +1 -1
  128. package/dist/esm/OdysseyProvider.js +2 -2
  129. package/dist/esm/OdysseyProvider.js.map +1 -1
  130. package/dist/esm/OdysseyThemeProvider.js +2 -2
  131. package/dist/esm/OdysseyThemeProvider.js.map +1 -1
  132. package/dist/esm/hexToRgb.js.map +1 -1
  133. package/dist/esm/labs/DatePickers/DateTimePicker.js.map +1 -1
  134. package/dist/esm/labs/OdysseyPickers/PickerWithOptionAdornment.js.map +1 -1
  135. package/dist/esm/properties/ts/odyssey-react-mui.js +1 -0
  136. package/dist/esm/properties/ts/odyssey-react-mui.js.map +1 -1
  137. package/dist/esm/properties/ts/odyssey-react-mui_cs.js +1 -0
  138. package/dist/esm/properties/ts/odyssey-react-mui_cs.js.map +1 -1
  139. package/dist/esm/properties/ts/odyssey-react-mui_da.js +1 -0
  140. package/dist/esm/properties/ts/odyssey-react-mui_da.js.map +1 -1
  141. package/dist/esm/properties/ts/odyssey-react-mui_de.js +1 -0
  142. package/dist/esm/properties/ts/odyssey-react-mui_de.js.map +1 -1
  143. package/dist/esm/properties/ts/odyssey-react-mui_el.js +1 -0
  144. package/dist/esm/properties/ts/odyssey-react-mui_el.js.map +1 -1
  145. package/dist/esm/properties/ts/odyssey-react-mui_es.js +1 -0
  146. package/dist/esm/properties/ts/odyssey-react-mui_es.js.map +1 -1
  147. package/dist/esm/properties/ts/odyssey-react-mui_fi.js +1 -0
  148. package/dist/esm/properties/ts/odyssey-react-mui_fi.js.map +1 -1
  149. package/dist/esm/properties/ts/odyssey-react-mui_fr.js +1 -0
  150. package/dist/esm/properties/ts/odyssey-react-mui_fr.js.map +1 -1
  151. package/dist/esm/properties/ts/odyssey-react-mui_ht.js +1 -0
  152. package/dist/esm/properties/ts/odyssey-react-mui_ht.js.map +1 -1
  153. package/dist/esm/properties/ts/odyssey-react-mui_hu.js +1 -0
  154. package/dist/esm/properties/ts/odyssey-react-mui_hu.js.map +1 -1
  155. package/dist/esm/properties/ts/odyssey-react-mui_id.js +1 -0
  156. package/dist/esm/properties/ts/odyssey-react-mui_id.js.map +1 -1
  157. package/dist/esm/properties/ts/odyssey-react-mui_it.js +1 -0
  158. package/dist/esm/properties/ts/odyssey-react-mui_it.js.map +1 -1
  159. package/dist/esm/properties/ts/odyssey-react-mui_ja.js +1 -0
  160. package/dist/esm/properties/ts/odyssey-react-mui_ja.js.map +1 -1
  161. package/dist/esm/properties/ts/odyssey-react-mui_ko.js +1 -0
  162. package/dist/esm/properties/ts/odyssey-react-mui_ko.js.map +1 -1
  163. package/dist/esm/properties/ts/odyssey-react-mui_ms.js +1 -0
  164. package/dist/esm/properties/ts/odyssey-react-mui_ms.js.map +1 -1
  165. package/dist/esm/properties/ts/odyssey-react-mui_nb.js +1 -0
  166. package/dist/esm/properties/ts/odyssey-react-mui_nb.js.map +1 -1
  167. package/dist/esm/properties/ts/odyssey-react-mui_nl_NL.js +1 -0
  168. package/dist/esm/properties/ts/odyssey-react-mui_nl_NL.js.map +1 -1
  169. package/dist/esm/properties/ts/odyssey-react-mui_pl.js +1 -0
  170. package/dist/esm/properties/ts/odyssey-react-mui_pl.js.map +1 -1
  171. package/dist/esm/properties/ts/odyssey-react-mui_pt_BR.js +1 -0
  172. package/dist/esm/properties/ts/odyssey-react-mui_pt_BR.js.map +1 -1
  173. package/dist/esm/properties/ts/odyssey-react-mui_ro.js +1 -0
  174. package/dist/esm/properties/ts/odyssey-react-mui_ro.js.map +1 -1
  175. package/dist/esm/properties/ts/odyssey-react-mui_ru.js +1 -0
  176. package/dist/esm/properties/ts/odyssey-react-mui_ru.js.map +1 -1
  177. package/dist/esm/properties/ts/odyssey-react-mui_sv.js +1 -0
  178. package/dist/esm/properties/ts/odyssey-react-mui_sv.js.map +1 -1
  179. package/dist/esm/properties/ts/odyssey-react-mui_th.js +1 -0
  180. package/dist/esm/properties/ts/odyssey-react-mui_th.js.map +1 -1
  181. package/dist/esm/properties/ts/odyssey-react-mui_tr.js +1 -0
  182. package/dist/esm/properties/ts/odyssey-react-mui_tr.js.map +1 -1
  183. package/dist/esm/properties/ts/odyssey-react-mui_uk.js +1 -0
  184. package/dist/esm/properties/ts/odyssey-react-mui_uk.js.map +1 -1
  185. package/dist/esm/properties/ts/odyssey-react-mui_vi.js +1 -0
  186. package/dist/esm/properties/ts/odyssey-react-mui_vi.js.map +1 -1
  187. package/dist/esm/properties/ts/odyssey-react-mui_zh_CN.js +1 -0
  188. package/dist/esm/properties/ts/odyssey-react-mui_zh_CN.js.map +1 -1
  189. package/dist/esm/properties/ts/odyssey-react-mui_zh_TW.js +1 -0
  190. package/dist/esm/properties/ts/odyssey-react-mui_zh_TW.js.map +1 -1
  191. package/dist/esm/theme/pxToRem.js +14 -0
  192. package/dist/esm/theme/pxToRem.js.map +1 -0
  193. package/dist/esm/theme/theme.js +2 -0
  194. package/dist/esm/theme/theme.js.map +1 -1
  195. package/dist/esm/theme/useMediaQuery.js +27 -0
  196. package/dist/esm/theme/useMediaQuery.js.map +1 -0
  197. package/dist/esm/ui-shell/AppSwitcher/AppSwitcher.js +2 -2
  198. package/dist/esm/ui-shell/AppSwitcher/AppSwitcher.js.map +1 -1
  199. package/dist/esm/ui-shell/NarrowUiShellContent.js +347 -0
  200. package/dist/esm/ui-shell/NarrowUiShellContent.js.map +1 -0
  201. package/dist/esm/ui-shell/SideNav/SideNav.js +61 -43
  202. package/dist/esm/ui-shell/SideNav/SideNav.js.map +1 -1
  203. package/dist/esm/ui-shell/SideNav/SideNavHeader.js +7 -4
  204. package/dist/esm/ui-shell/SideNav/SideNavHeader.js.map +1 -1
  205. package/dist/esm/ui-shell/SideNav/SideNavItemContent.js +3 -0
  206. package/dist/esm/ui-shell/SideNav/SideNavItemContent.js.map +1 -1
  207. package/dist/esm/ui-shell/SideNav/SideNavLogo.js +5 -5
  208. package/dist/esm/ui-shell/SideNav/SideNavLogo.js.map +1 -1
  209. package/dist/esm/ui-shell/SideNav/SideNavToggleButton.js +2 -1
  210. package/dist/esm/ui-shell/SideNav/SideNavToggleButton.js.map +1 -1
  211. package/dist/esm/ui-shell/SideNav/types.js.map +1 -1
  212. package/dist/esm/ui-shell/TopNav/HamburgerMenuIcon.js +32 -0
  213. package/dist/esm/ui-shell/TopNav/HamburgerMenuIcon.js.map +1 -0
  214. package/dist/esm/ui-shell/TopNav/TopNav.js +2 -2
  215. package/dist/esm/ui-shell/TopNav/TopNav.js.map +1 -1
  216. package/dist/esm/ui-shell/UiShell.js +43 -18
  217. package/dist/esm/ui-shell/UiShell.js.map +1 -1
  218. package/dist/esm/ui-shell/UiShellProvider.js +12 -3
  219. package/dist/esm/ui-shell/UiShellProvider.js.map +1 -1
  220. package/dist/esm/ui-shell/WideUiShellContent.js +165 -0
  221. package/dist/esm/ui-shell/WideUiShellContent.js.map +1 -0
  222. package/dist/esm/ui-shell/index.js +3 -1
  223. package/dist/esm/ui-shell/index.js.map +1 -1
  224. package/dist/esm/ui-shell/renderUiShell.js +32 -20
  225. package/dist/esm/ui-shell/renderUiShell.js.map +1 -1
  226. package/dist/esm/ui-shell/uiShellContentTypes.js +14 -0
  227. package/dist/esm/ui-shell/uiShellContentTypes.js.map +1 -0
  228. package/dist/esm/ui-shell/uiShellSharedConstants.js +17 -0
  229. package/dist/esm/ui-shell/uiShellSharedConstants.js.map +1 -0
  230. package/dist/esm/ui-shell/useMatchAppElementToUiShellAppArea.js +99 -0
  231. package/dist/esm/ui-shell/useMatchAppElementToUiShellAppArea.js.map +1 -0
  232. package/dist/esm/ui-shell/useScrollState.js +3 -5
  233. package/dist/esm/ui-shell/useScrollState.js.map +1 -1
  234. package/dist/esm/ui-shell/useUiShellBreakpoints.js +34 -0
  235. package/dist/esm/ui-shell/useUiShellBreakpoints.js.map +1 -0
  236. package/dist/esm/web-component/createReactRootElements.js.map +1 -1
  237. package/dist/esm/web-component/renderReactInWebComponent.js +6 -1
  238. package/dist/esm/web-component/renderReactInWebComponent.js.map +1 -1
  239. package/dist/index.cjs +1 -1
  240. package/dist/index.mjs +1 -1
  241. package/dist/index.scss +1 -1
  242. package/dist/tsconfig.production.tsbuildinfo +1 -1
  243. package/dist/types/Autocomplete.d.ts +1 -1
  244. package/dist/types/Breadcrumbs.d.ts +4 -3
  245. package/dist/types/Breadcrumbs.d.ts.map +1 -1
  246. package/dist/types/Buttons/BaseButton.d.ts +1 -1
  247. package/dist/types/OdysseyProvider.d.ts +1 -1
  248. package/dist/types/OdysseyProvider.d.ts.map +1 -1
  249. package/dist/types/OdysseyThemeProvider.d.ts.map +1 -1
  250. package/dist/types/OdysseyTranslationProvider.d.ts +1 -1
  251. package/dist/types/OdysseyTranslationProvider.d.ts.map +1 -1
  252. package/dist/types/hexToRgb.d.ts.map +1 -1
  253. package/dist/types/i18n.d.ts +28 -0
  254. package/dist/types/i18n.d.ts.map +1 -1
  255. package/dist/types/labs/DatePickers/DateTimePicker.d.ts.map +1 -1
  256. package/dist/types/properties/ts/odyssey-react-mui.d.ts +1 -0
  257. package/dist/types/properties/ts/odyssey-react-mui.d.ts.map +1 -1
  258. package/dist/types/properties/ts/odyssey-react-mui_cs.d.ts +1 -0
  259. package/dist/types/properties/ts/odyssey-react-mui_cs.d.ts.map +1 -1
  260. package/dist/types/properties/ts/odyssey-react-mui_da.d.ts +1 -0
  261. package/dist/types/properties/ts/odyssey-react-mui_da.d.ts.map +1 -1
  262. package/dist/types/properties/ts/odyssey-react-mui_de.d.ts +1 -0
  263. package/dist/types/properties/ts/odyssey-react-mui_de.d.ts.map +1 -1
  264. package/dist/types/properties/ts/odyssey-react-mui_el.d.ts +1 -0
  265. package/dist/types/properties/ts/odyssey-react-mui_el.d.ts.map +1 -1
  266. package/dist/types/properties/ts/odyssey-react-mui_es.d.ts +1 -0
  267. package/dist/types/properties/ts/odyssey-react-mui_es.d.ts.map +1 -1
  268. package/dist/types/properties/ts/odyssey-react-mui_fi.d.ts +1 -0
  269. package/dist/types/properties/ts/odyssey-react-mui_fi.d.ts.map +1 -1
  270. package/dist/types/properties/ts/odyssey-react-mui_fr.d.ts +1 -0
  271. package/dist/types/properties/ts/odyssey-react-mui_fr.d.ts.map +1 -1
  272. package/dist/types/properties/ts/odyssey-react-mui_ht.d.ts +1 -0
  273. package/dist/types/properties/ts/odyssey-react-mui_ht.d.ts.map +1 -1
  274. package/dist/types/properties/ts/odyssey-react-mui_hu.d.ts +1 -0
  275. package/dist/types/properties/ts/odyssey-react-mui_hu.d.ts.map +1 -1
  276. package/dist/types/properties/ts/odyssey-react-mui_id.d.ts +1 -0
  277. package/dist/types/properties/ts/odyssey-react-mui_id.d.ts.map +1 -1
  278. package/dist/types/properties/ts/odyssey-react-mui_it.d.ts +1 -0
  279. package/dist/types/properties/ts/odyssey-react-mui_it.d.ts.map +1 -1
  280. package/dist/types/properties/ts/odyssey-react-mui_ja.d.ts +1 -0
  281. package/dist/types/properties/ts/odyssey-react-mui_ja.d.ts.map +1 -1
  282. package/dist/types/properties/ts/odyssey-react-mui_ko.d.ts +1 -0
  283. package/dist/types/properties/ts/odyssey-react-mui_ko.d.ts.map +1 -1
  284. package/dist/types/properties/ts/odyssey-react-mui_ms.d.ts +1 -0
  285. package/dist/types/properties/ts/odyssey-react-mui_ms.d.ts.map +1 -1
  286. package/dist/types/properties/ts/odyssey-react-mui_nb.d.ts +1 -0
  287. package/dist/types/properties/ts/odyssey-react-mui_nb.d.ts.map +1 -1
  288. package/dist/types/properties/ts/odyssey-react-mui_nl_NL.d.ts +1 -0
  289. package/dist/types/properties/ts/odyssey-react-mui_nl_NL.d.ts.map +1 -1
  290. package/dist/types/properties/ts/odyssey-react-mui_pl.d.ts +1 -0
  291. package/dist/types/properties/ts/odyssey-react-mui_pl.d.ts.map +1 -1
  292. package/dist/types/properties/ts/odyssey-react-mui_pt_BR.d.ts +1 -0
  293. package/dist/types/properties/ts/odyssey-react-mui_pt_BR.d.ts.map +1 -1
  294. package/dist/types/properties/ts/odyssey-react-mui_ro.d.ts +1 -0
  295. package/dist/types/properties/ts/odyssey-react-mui_ro.d.ts.map +1 -1
  296. package/dist/types/properties/ts/odyssey-react-mui_ru.d.ts +1 -0
  297. package/dist/types/properties/ts/odyssey-react-mui_ru.d.ts.map +1 -1
  298. package/dist/types/properties/ts/odyssey-react-mui_sv.d.ts +1 -0
  299. package/dist/types/properties/ts/odyssey-react-mui_sv.d.ts.map +1 -1
  300. package/dist/types/properties/ts/odyssey-react-mui_th.d.ts +1 -0
  301. package/dist/types/properties/ts/odyssey-react-mui_th.d.ts.map +1 -1
  302. package/dist/types/properties/ts/odyssey-react-mui_tr.d.ts +1 -0
  303. package/dist/types/properties/ts/odyssey-react-mui_tr.d.ts.map +1 -1
  304. package/dist/types/properties/ts/odyssey-react-mui_uk.d.ts +1 -0
  305. package/dist/types/properties/ts/odyssey-react-mui_uk.d.ts.map +1 -1
  306. package/dist/types/properties/ts/odyssey-react-mui_vi.d.ts +1 -0
  307. package/dist/types/properties/ts/odyssey-react-mui_vi.d.ts.map +1 -1
  308. package/dist/types/properties/ts/odyssey-react-mui_zh_CN.d.ts +1 -0
  309. package/dist/types/properties/ts/odyssey-react-mui_zh_CN.d.ts.map +1 -1
  310. package/dist/types/properties/ts/odyssey-react-mui_zh_TW.d.ts +1 -0
  311. package/dist/types/properties/ts/odyssey-react-mui_zh_TW.d.ts.map +1 -1
  312. package/dist/types/theme/pxToRem.d.ts +13 -0
  313. package/dist/types/theme/pxToRem.d.ts.map +1 -0
  314. package/dist/types/theme/theme.d.ts +2 -0
  315. package/dist/types/theme/theme.d.ts.map +1 -1
  316. package/dist/types/theme/useMediaQuery.d.ts +13 -0
  317. package/dist/types/theme/useMediaQuery.d.ts.map +1 -0
  318. package/dist/types/ui-shell/AppSwitcher/AppSwitcher.d.ts.map +1 -1
  319. package/dist/types/ui-shell/NarrowUiShellContent.d.ts +17 -0
  320. package/dist/types/ui-shell/NarrowUiShellContent.d.ts.map +1 -0
  321. package/dist/types/ui-shell/SideNav/SideNav.d.ts +1 -3
  322. package/dist/types/ui-shell/SideNav/SideNav.d.ts.map +1 -1
  323. package/dist/types/ui-shell/SideNav/SideNavHeader.d.ts.map +1 -1
  324. package/dist/types/ui-shell/SideNav/SideNavItemContent.d.ts.map +1 -1
  325. package/dist/types/ui-shell/SideNav/SideNavLogo.d.ts +1 -1
  326. package/dist/types/ui-shell/SideNav/SideNavLogo.d.ts.map +1 -1
  327. package/dist/types/ui-shell/SideNav/SideNavToggleButton.d.ts.map +1 -1
  328. package/dist/types/ui-shell/SideNav/types.d.ts +7 -1
  329. package/dist/types/ui-shell/SideNav/types.d.ts.map +1 -1
  330. package/dist/types/ui-shell/TopNav/HamburgerMenuIcon.d.ts +16 -0
  331. package/dist/types/ui-shell/TopNav/HamburgerMenuIcon.d.ts.map +1 -0
  332. package/dist/types/ui-shell/TopNav/TopNav.d.ts +0 -1
  333. package/dist/types/ui-shell/TopNav/TopNav.d.ts.map +1 -1
  334. package/dist/types/ui-shell/UiShell.d.ts +12 -14
  335. package/dist/types/ui-shell/UiShell.d.ts.map +1 -1
  336. package/dist/types/ui-shell/UiShellProvider.d.ts +37 -8
  337. package/dist/types/ui-shell/UiShellProvider.d.ts.map +1 -1
  338. package/dist/types/ui-shell/WideUiShellContent.d.ts +16 -0
  339. package/dist/types/ui-shell/WideUiShellContent.d.ts.map +1 -0
  340. package/dist/types/ui-shell/index.d.ts +3 -1
  341. package/dist/types/ui-shell/index.d.ts.map +1 -1
  342. package/dist/types/ui-shell/renderUiShell.d.ts +9 -11
  343. package/dist/types/ui-shell/renderUiShell.d.ts.map +1 -1
  344. package/dist/types/ui-shell/{UiShellContent.d.ts → uiShellContentTypes.d.ts} +45 -31
  345. package/dist/types/ui-shell/uiShellContentTypes.d.ts.map +1 -0
  346. package/dist/types/ui-shell/uiShellSharedConstants.d.ts +18 -0
  347. package/dist/types/ui-shell/uiShellSharedConstants.d.ts.map +1 -0
  348. package/dist/types/ui-shell/useMatchAppElementToUiShellAppArea.d.ts +38 -0
  349. package/dist/types/ui-shell/useMatchAppElementToUiShellAppArea.d.ts.map +1 -0
  350. package/dist/types/ui-shell/useScrollState.d.ts +0 -1
  351. package/dist/types/ui-shell/useScrollState.d.ts.map +1 -1
  352. package/dist/types/ui-shell/useUiShellBreakpoints.d.ts +18 -0
  353. package/dist/types/ui-shell/useUiShellBreakpoints.d.ts.map +1 -0
  354. package/dist/types/web-component/createReactRootElements.d.ts +6 -4
  355. package/dist/types/web-component/createReactRootElements.d.ts.map +1 -1
  356. package/dist/types/web-component/renderReactInWebComponent.d.ts +12 -5
  357. package/dist/types/web-component/renderReactInWebComponent.d.ts.map +1 -1
  358. package/package.json +6 -6
  359. package/dist/cjs/ui-shell/UiShellContent.cjs +0 -242
  360. package/dist/cjs/ui-shell/UiShellContent.cjs.map +0 -1
  361. package/dist/esm/ui-shell/UiShellContent.js +0 -234
  362. package/dist/esm/ui-shell/UiShellContent.js.map +0 -1
  363. package/dist/types/ui-shell/UiShellContent.d.ts.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"UiShellContent.cjs","names":["_styled","_interopRequireDefault","require","_react","_reactErrorBoundary","_index","_index2","_index3","_OdysseyDesignTokensContext","_useScrollState","_UiShellProvider","_jsxRuntime","e","__esModule","default","fullHeightStyles","height","emptySideNavItems","StyledAppContainer","styled","shouldForwardProp","prop","appBackgroundColor","gridArea","backgroundColor","StyledBannersContainer","StyledAppSwitcherContainer","StyledSideNavContainer","StyledShellContainer","odysseyDesignTokens","HueNeutral50","display","gridGap","gridTemplateAreas","gridTemplateColumns","gridTemplateRows","width","StyledTopNavContainer","subComponentNames","exports","convertCamelCaseToKebabCase","string","replace","toLowerCase","setStylesToMatchElement","additionalStyles","appContainerElement","appContentReferenceElement","boundingRect","getBoundingClientRect","style","setProperty","y","x","Object","entries","forEach","cssPropertyName","cssPropertyValue","String","UiShellContent","hasStandardAppContentPadding","appContainerScrollingMode","initialVisibleSections","onError","console","error","optionalComponents","appSwitcherProps","sideNavProps","topNavProps","useOdysseyDesignTokens","isContentScrolled","scrollableContentRef","appContainerRef","useScrollState","sideNavContainerRef","useRef","topNavContainerRef","uiShellContext","useUiShellContext","appContainerElementStyles","useMemo","paddingBlock","Spacing5","paddingInline","Spacing8","overflowX","overflowY","useEffect","current","animationFrameId","updateStyles","cancelAnimationFrame","requestAnimationFrame","sideNavElement","addEventListener","observer","ResizeObserver","observe","disconnect","removeEventListener","jsxs","children","jsx","banners","_ScopedCssBaseline2","sx","includes","ErrorBoundary","fallback","AppSwitcher","isLoading","appIcons","selectedAppName","ref","undefined","SideNav","appName","sideNavItems","hasCustomFooter","sideNavFooter","footerComponent","footerItems","TopNav","leftSideComponent","topNavLeftSide","rightSideComponent","topNavRightSide","isScrolled","tabIndex","MemoizedUiShellContent","memo","displayName"],"sources":["../../../src/ui-shell/UiShellContent.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2024-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled from \"@emotion/styled\";\nimport {\n CSSProperties,\n memo,\n useEffect,\n useMemo,\n useRef,\n type ReactElement,\n} from \"react\";\nimport { ErrorBoundary, ErrorBoundaryProps } from \"react-error-boundary\";\n\nimport { AppSwitcher, type AppSwitcherProps } from \"./AppSwitcher/index.js\";\nimport { SideNav, type SideNavProps } from \"./SideNav/index.js\";\nimport { TopNav, type TopNavProps } from \"./TopNav/index.js\";\nimport {\n useOdysseyDesignTokens,\n type DesignTokens,\n} from \"../OdysseyDesignTokensContext.js\";\nimport { useScrollState } from \"./useScrollState.js\";\nimport { ContrastMode } from \"../useContrastMode.js\";\nimport { UiShellColors, useUiShellContext } from \"./UiShellProvider.js\";\nimport { ScopedCssBaseline } from \"@mui/material\";\n\nconst fullHeightStyles = { height: \"100%\" };\n\nconst emptySideNavItems = [] satisfies SideNavProps[\"sideNavItems\"];\n\nconst StyledAppContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"appBackgroundColor\" && prop !== \"odysseyDesignTokens\",\n})<{\n appBackgroundColor?: UiShellColors[\"appBackgroundColor\"];\n}>(({ appBackgroundColor }) => ({\n gridArea: \"app-content\",\n backgroundColor: appBackgroundColor,\n}));\n\nconst StyledBannersContainer = styled(\"div\")({\n gridArea: \"banners\",\n});\n\nconst StyledAppSwitcherContainer = styled(\"div\")({\n gridArea: \"app-switcher\",\n});\n\nconst StyledSideNavContainer = styled(\"div\")({\n gridArea: \"side-nav\",\n});\n\nconst StyledShellContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n backgroundColor: odysseyDesignTokens.HueNeutral50,\n display: \"grid\",\n gridGap: 0,\n gridTemplateAreas: `\n \"banners banners banners\"\n \"app-switcher side-nav top-nav\"\n \"app-switcher side-nav app-content\"\n `,\n gridTemplateColumns: \"auto auto 1fr\",\n gridTemplateRows: \"auto auto 1fr\",\n height: \"100vh\",\n width: \"100vw\",\n}));\n\nconst StyledTopNavContainer = styled(\"div\")({\n gridArea: \"top-nav\",\n});\n\nexport const subComponentNames = [\"TopNav\", \"SideNav\", \"AppSwitcher\"] as const;\nexport type SubComponentName = (typeof subComponentNames)[number];\n\nexport type UiShellNavComponentProps = {\n /**\n * Object that gets pass directly to the app switcher component.\n */\n appSwitcherProps?: AppSwitcherProps;\n /**\n * Object that gets pass directly to the side nav component. If `undefined` and in `initialVisibleSections`, SideNav will be initially rendered. Pass `null` to hide a previously-visible SideNav.\n */\n sideNavProps?: Omit<SideNavProps, \"footerComponent\"> | null;\n /**\n * Object that gets pass directly to the top nav component. If `undefined` and in `initialVisibleSections`, TopNav will be initially rendered. Pass `null` to hide a previously-visible TopNav.\n */\n topNavProps?: Omit<\n TopNavProps,\n \"leftSideComponent\" | \"rightSideComponent\"\n > | null;\n};\n\nexport type UiShellContentProps = {\n /**\n * Sets a custom background color for the app content area.\n */\n appBackgroundColor?: string;\n /**\n * Sets either a gray or white background color for the app content area.\n */\n appBackgroundContrastMode?: ContrastMode;\n /**\n * When passed, the app is expected to render into this element, not the Shadow DOM. UI Shell will position this element appropriately as if it was rendered in the app content area of the Shadow DOM.\n */\n appContainerElement: HTMLDivElement;\n /**\n * Controls the scrolling behavior of the app content area. Defaults to \"vertical\".\n */\n appContainerScrollingMode?: \"none\" | \"horizontal\" | \"vertical\" | \"both\";\n /**\n * defaults to `true`. If `false`, the content area will have no padding provided\n */\n hasStandardAppContentPadding?: boolean;\n /**\n * Which parts of the UI Shell should be visible initially? For example,\n * if sideNavProps is undefined, should the space for the sidenav be initially visible?\n */\n initialVisibleSections?: SubComponentName[];\n /**\n * Notifies when a React rendering error occurs. This could be useful for logging, flagging \"p0\"s, and recovering UI Shell when errors occur.\n */\n onError?: ErrorBoundaryProps[\"onError\"];\n /**\n * Components that will render as children of various other components such as the top nav or side nav.\n */\n optionalComponents?: {\n banners?: ReactElement;\n sideNavFooter?: SideNavProps[\"footerComponent\"];\n topNavLeftSide?: TopNavProps[\"leftSideComponent\"];\n topNavRightSide?: TopNavProps[\"rightSideComponent\"];\n };\n} & UiShellNavComponentProps;\n\nexport const convertCamelCaseToKebabCase = (string: string) =>\n string.replace(/([A-Z])/g, \"-$1\").toLowerCase();\n\nexport const setStylesToMatchElement = ({\n additionalStyles,\n appContainerElement,\n appContentReferenceElement,\n}: {\n additionalStyles: CSSProperties;\n appContainerElement: HTMLElement;\n appContentReferenceElement: HTMLElement;\n}) => {\n const boundingRect = appContentReferenceElement.getBoundingClientRect();\n\n appContainerElement.style.setProperty(\"position\", \"absolute\");\n appContainerElement.style.setProperty(\"top\", `${boundingRect.y}px`);\n appContainerElement.style.setProperty(\"left\", `${boundingRect.x}px`);\n appContainerElement.style.setProperty(\"width\", `${boundingRect.width}px`);\n appContainerElement.style.setProperty(\"height\", `${boundingRect.height}px`);\n\n (\n Object.entries(additionalStyles) as Array<\n [\n keyof typeof additionalStyles,\n (typeof additionalStyles)[keyof typeof additionalStyles],\n ]\n >\n ).forEach(([cssPropertyName, cssPropertyValue]) => {\n appContainerElement.style.setProperty(\n convertCamelCaseToKebabCase(cssPropertyName),\n String(cssPropertyValue),\n );\n });\n};\n\n/**\n * Our new Unified Platform UI Shell.\n *\n * This includes the top and side navigation as well as the footer and provides a spot for your app to render into.\n *\n * If an error occurs, this will revert to only showing the app.\n */\nconst UiShellContent = ({\n appContainerElement,\n hasStandardAppContentPadding = true,\n appContainerScrollingMode = \"vertical\",\n initialVisibleSections = [\"TopNav\", \"SideNav\", \"AppSwitcher\"],\n onError = console.error,\n optionalComponents,\n appSwitcherProps,\n sideNavProps,\n topNavProps,\n}: UiShellContentProps) => {\n const odysseyDesignTokens = useOdysseyDesignTokens();\n const { isContentScrolled, scrollableContentRef: appContainerRef } =\n useScrollState(appContainerElement);\n const sideNavContainerRef = useRef<HTMLDivElement>(null);\n const topNavContainerRef = useRef<HTMLDivElement>(null);\n const uiShellContext = useUiShellContext();\n\n const appContainerElementStyles = useMemo<CSSProperties>(\n () => ({\n ...(hasStandardAppContentPadding\n ? {\n paddingBlock: odysseyDesignTokens.Spacing5 ?? null,\n paddingInline: odysseyDesignTokens.Spacing8 ?? null,\n }\n : {}),\n ...(appContainerScrollingMode === \"horizontal\" ||\n appContainerScrollingMode === \"both\"\n ? {\n overflowX: \"auto\",\n }\n : {\n overflowX: \"hidden\",\n }),\n ...(appContainerScrollingMode === \"vertical\" ||\n appContainerScrollingMode === \"both\"\n ? {\n overflowY: \"auto\",\n }\n : {\n overflowY: \"hidden\",\n }),\n }),\n [\n hasStandardAppContentPadding,\n appContainerScrollingMode,\n odysseyDesignTokens,\n ],\n );\n\n useEffect(() => {\n // Once appContainerRef is rendered, we can position appContainerElement on top\n if (appContainerRef.current && appContainerElement) {\n let animationFrameId: number;\n\n const updateStyles = () => {\n cancelAnimationFrame(animationFrameId);\n animationFrameId = requestAnimationFrame(() => {\n if (appContainerRef.current) {\n setStylesToMatchElement({\n additionalStyles: appContainerElementStyles,\n appContentReferenceElement: appContainerRef.current,\n appContainerElement,\n });\n }\n });\n };\n\n // This element might have changed from `.current`, so it's important to keep track of the old one when we attach event listeners.\n const sideNavElement = sideNavContainerRef.current;\n\n sideNavElement?.addEventListener(\"transitionend\", updateStyles);\n\n // Setup a mutation observer to sync later updates\n const observer = new ResizeObserver(updateStyles);\n observer.observe(appContainerRef.current);\n\n if (sideNavElement) {\n observer.observe(sideNavElement);\n }\n\n if (topNavContainerRef.current) {\n observer.observe(topNavContainerRef.current);\n }\n\n // Set the initial styles\n updateStyles();\n\n return () => {\n observer.disconnect();\n sideNavElement?.removeEventListener(\"transitionend\", updateStyles);\n };\n }\n return () => {};\n }, [appContainerElement, appContainerElementStyles, appContainerRef]);\n\n return (\n <StyledShellContainer odysseyDesignTokens={odysseyDesignTokens}>\n <StyledBannersContainer>\n {optionalComponents?.banners}\n </StyledBannersContainer>\n\n <StyledAppSwitcherContainer>\n <ScopedCssBaseline sx={fullHeightStyles}>\n {\n /* If AppSwitcher should be initially visible and we have not yet received props, render AppSwitcher in the loading state */\n initialVisibleSections?.includes(\"AppSwitcher\") &&\n !appSwitcherProps && (\n <ErrorBoundary fallback={null} onError={onError}>\n <AppSwitcher isLoading appIcons={[]} selectedAppName=\"\" />\n </ErrorBoundary>\n )\n }\n {appSwitcherProps && (\n <ErrorBoundary fallback={null} onError={onError}>\n <AppSwitcher {...appSwitcherProps} />\n </ErrorBoundary>\n )}\n </ScopedCssBaseline>\n </StyledAppSwitcherContainer>\n\n <StyledSideNavContainer ref={sideNavContainerRef}>\n <ScopedCssBaseline sx={fullHeightStyles}>\n {\n /* If SideNav should be initially visible and we have not yet received props, render SideNav with minimal inputs */\n initialVisibleSections?.includes(\"SideNav\") &&\n sideNavProps === undefined && (\n <ErrorBoundary fallback={null} onError={onError}>\n <SideNav\n isLoading\n appName=\"\"\n sideNavItems={emptySideNavItems}\n />\n </ErrorBoundary>\n )\n }\n {sideNavProps && (\n <ErrorBoundary fallback={null} onError={onError}>\n <SideNav\n {...{\n ...sideNavProps,\n ...(sideNavProps.hasCustomFooter &&\n optionalComponents?.sideNavFooter\n ? {\n footerComponent: optionalComponents.sideNavFooter,\n footerItems: undefined,\n hasCustomFooter: sideNavProps.hasCustomFooter,\n }\n : {\n footerItems: sideNavProps.footerItems,\n hasCustomFooter: false,\n }),\n }}\n />\n </ErrorBoundary>\n )}\n </ScopedCssBaseline>\n </StyledSideNavContainer>\n <StyledTopNavContainer ref={topNavContainerRef}>\n <ScopedCssBaseline sx={fullHeightStyles}>\n {\n /* If TopNav should be initially visible and we have not yet received props, render Topnav with minimal inputs */\n initialVisibleSections?.includes(\"TopNav\") &&\n topNavProps === undefined && (\n <ErrorBoundary fallback={null} onError={onError}>\n <TopNav\n leftSideComponent={optionalComponents?.topNavLeftSide}\n rightSideComponent={optionalComponents?.topNavRightSide}\n />\n </ErrorBoundary>\n )\n }\n {topNavProps && (\n <ErrorBoundary fallback={null} onError={onError}>\n <TopNav\n {...topNavProps}\n isScrolled={isContentScrolled}\n leftSideComponent={optionalComponents?.topNavLeftSide}\n rightSideComponent={optionalComponents?.topNavRightSide}\n />\n </ErrorBoundary>\n )}\n </ScopedCssBaseline>\n </StyledTopNavContainer>\n\n <StyledAppContainer\n appBackgroundColor={uiShellContext?.appBackgroundColor}\n tabIndex={0}\n ref={appContainerRef}\n />\n </StyledShellContainer>\n );\n};\n\nconst MemoizedUiShellContent = memo(UiShellContent);\nMemoizedUiShellContent.displayName = \"UiShellContent\";\n\nexport { MemoizedUiShellContent as UiShellContent };\n"],"mappings":"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","ignoreList":[]}
@@ -1,234 +0,0 @@
1
- import _ScopedCssBaseline from "@mui/material/ScopedCssBaseline";
2
- /*!
3
- * Copyright (c) 2024-present, Okta, Inc. and/or its affiliates. All rights reserved.
4
- * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.")
5
- *
6
- * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
7
- * Unless required by applicable law or agreed to in writing, software
8
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
9
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
- *
11
- * See the License for the specific language governing permissions and limitations under the License.
12
- */
13
-
14
- import styled from "@emotion/styled";
15
- import { memo, useEffect, useMemo, useRef } from "react";
16
- import { ErrorBoundary } from "react-error-boundary";
17
- import { AppSwitcher } from "./AppSwitcher/index.js";
18
- import { SideNav } from "./SideNav/index.js";
19
- import { TopNav } from "./TopNav/index.js";
20
- import { useOdysseyDesignTokens } from "../OdysseyDesignTokensContext.js";
21
- import { useScrollState } from "./useScrollState.js";
22
- import { useUiShellContext } from "./UiShellProvider.js";
23
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
24
- const fullHeightStyles = {
25
- height: "100%"
26
- };
27
- const emptySideNavItems = [];
28
- const StyledAppContainer = styled("div", {
29
- shouldForwardProp: prop => prop !== "appBackgroundColor" && prop !== "odysseyDesignTokens"
30
- })(({
31
- appBackgroundColor
32
- }) => ({
33
- gridArea: "app-content",
34
- backgroundColor: appBackgroundColor
35
- }));
36
- const StyledBannersContainer = styled("div")({
37
- gridArea: "banners"
38
- });
39
- const StyledAppSwitcherContainer = styled("div")({
40
- gridArea: "app-switcher"
41
- });
42
- const StyledSideNavContainer = styled("div")({
43
- gridArea: "side-nav"
44
- });
45
- const StyledShellContainer = styled("div", {
46
- shouldForwardProp: prop => prop !== "odysseyDesignTokens"
47
- })(({
48
- odysseyDesignTokens
49
- }) => ({
50
- backgroundColor: odysseyDesignTokens.HueNeutral50,
51
- display: "grid",
52
- gridGap: 0,
53
- gridTemplateAreas: `
54
- "banners banners banners"
55
- "app-switcher side-nav top-nav"
56
- "app-switcher side-nav app-content"
57
- `,
58
- gridTemplateColumns: "auto auto 1fr",
59
- gridTemplateRows: "auto auto 1fr",
60
- height: "100vh",
61
- width: "100vw"
62
- }));
63
- const StyledTopNavContainer = styled("div")({
64
- gridArea: "top-nav"
65
- });
66
- export const subComponentNames = ["TopNav", "SideNav", "AppSwitcher"];
67
- export const convertCamelCaseToKebabCase = string => string.replace(/([A-Z])/g, "-$1").toLowerCase();
68
- export const setStylesToMatchElement = ({
69
- additionalStyles,
70
- appContainerElement,
71
- appContentReferenceElement
72
- }) => {
73
- const boundingRect = appContentReferenceElement.getBoundingClientRect();
74
- appContainerElement.style.setProperty("position", "absolute");
75
- appContainerElement.style.setProperty("top", `${boundingRect.y}px`);
76
- appContainerElement.style.setProperty("left", `${boundingRect.x}px`);
77
- appContainerElement.style.setProperty("width", `${boundingRect.width}px`);
78
- appContainerElement.style.setProperty("height", `${boundingRect.height}px`);
79
- Object.entries(additionalStyles).forEach(([cssPropertyName, cssPropertyValue]) => {
80
- appContainerElement.style.setProperty(convertCamelCaseToKebabCase(cssPropertyName), String(cssPropertyValue));
81
- });
82
- };
83
- const UiShellContent = ({
84
- appContainerElement,
85
- hasStandardAppContentPadding = true,
86
- appContainerScrollingMode = "vertical",
87
- initialVisibleSections = ["TopNav", "SideNav", "AppSwitcher"],
88
- onError = console.error,
89
- optionalComponents,
90
- appSwitcherProps,
91
- sideNavProps,
92
- topNavProps
93
- }) => {
94
- const odysseyDesignTokens = useOdysseyDesignTokens();
95
- const {
96
- isContentScrolled,
97
- scrollableContentRef: appContainerRef
98
- } = useScrollState(appContainerElement);
99
- const sideNavContainerRef = useRef(null);
100
- const topNavContainerRef = useRef(null);
101
- const uiShellContext = useUiShellContext();
102
- const appContainerElementStyles = useMemo(() => ({
103
- ...(hasStandardAppContentPadding ? {
104
- paddingBlock: odysseyDesignTokens.Spacing5 ?? null,
105
- paddingInline: odysseyDesignTokens.Spacing8 ?? null
106
- } : {}),
107
- ...(appContainerScrollingMode === "horizontal" || appContainerScrollingMode === "both" ? {
108
- overflowX: "auto"
109
- } : {
110
- overflowX: "hidden"
111
- }),
112
- ...(appContainerScrollingMode === "vertical" || appContainerScrollingMode === "both" ? {
113
- overflowY: "auto"
114
- } : {
115
- overflowY: "hidden"
116
- })
117
- }), [hasStandardAppContentPadding, appContainerScrollingMode, odysseyDesignTokens]);
118
- useEffect(() => {
119
- if (appContainerRef.current && appContainerElement) {
120
- let animationFrameId;
121
- const updateStyles = () => {
122
- cancelAnimationFrame(animationFrameId);
123
- animationFrameId = requestAnimationFrame(() => {
124
- if (appContainerRef.current) {
125
- setStylesToMatchElement({
126
- additionalStyles: appContainerElementStyles,
127
- appContentReferenceElement: appContainerRef.current,
128
- appContainerElement
129
- });
130
- }
131
- });
132
- };
133
- const sideNavElement = sideNavContainerRef.current;
134
- sideNavElement?.addEventListener("transitionend", updateStyles);
135
- const observer = new ResizeObserver(updateStyles);
136
- observer.observe(appContainerRef.current);
137
- if (sideNavElement) {
138
- observer.observe(sideNavElement);
139
- }
140
- if (topNavContainerRef.current) {
141
- observer.observe(topNavContainerRef.current);
142
- }
143
- updateStyles();
144
- return () => {
145
- observer.disconnect();
146
- sideNavElement?.removeEventListener("transitionend", updateStyles);
147
- };
148
- }
149
- return () => {};
150
- }, [appContainerElement, appContainerElementStyles, appContainerRef]);
151
- return _jsxs(StyledShellContainer, {
152
- odysseyDesignTokens: odysseyDesignTokens,
153
- children: [_jsx(StyledBannersContainer, {
154
- children: optionalComponents?.banners
155
- }), _jsx(StyledAppSwitcherContainer, {
156
- children: _jsxs(_ScopedCssBaseline, {
157
- sx: fullHeightStyles,
158
- children: [initialVisibleSections?.includes("AppSwitcher") && !appSwitcherProps && _jsx(ErrorBoundary, {
159
- fallback: null,
160
- onError: onError,
161
- children: _jsx(AppSwitcher, {
162
- isLoading: true,
163
- appIcons: [],
164
- selectedAppName: ""
165
- })
166
- }), appSwitcherProps && _jsx(ErrorBoundary, {
167
- fallback: null,
168
- onError: onError,
169
- children: _jsx(AppSwitcher, {
170
- ...appSwitcherProps
171
- })
172
- })]
173
- })
174
- }), _jsx(StyledSideNavContainer, {
175
- ref: sideNavContainerRef,
176
- children: _jsxs(_ScopedCssBaseline, {
177
- sx: fullHeightStyles,
178
- children: [initialVisibleSections?.includes("SideNav") && sideNavProps === undefined && _jsx(ErrorBoundary, {
179
- fallback: null,
180
- onError: onError,
181
- children: _jsx(SideNav, {
182
- isLoading: true,
183
- appName: "",
184
- sideNavItems: emptySideNavItems
185
- })
186
- }), sideNavProps && _jsx(ErrorBoundary, {
187
- fallback: null,
188
- onError: onError,
189
- children: _jsx(SideNav, {
190
- ...sideNavProps,
191
- ...(sideNavProps.hasCustomFooter && optionalComponents?.sideNavFooter ? {
192
- footerComponent: optionalComponents.sideNavFooter,
193
- footerItems: undefined,
194
- hasCustomFooter: sideNavProps.hasCustomFooter
195
- } : {
196
- footerItems: sideNavProps.footerItems,
197
- hasCustomFooter: false
198
- })
199
- })
200
- })]
201
- })
202
- }), _jsx(StyledTopNavContainer, {
203
- ref: topNavContainerRef,
204
- children: _jsxs(_ScopedCssBaseline, {
205
- sx: fullHeightStyles,
206
- children: [initialVisibleSections?.includes("TopNav") && topNavProps === undefined && _jsx(ErrorBoundary, {
207
- fallback: null,
208
- onError: onError,
209
- children: _jsx(TopNav, {
210
- leftSideComponent: optionalComponents?.topNavLeftSide,
211
- rightSideComponent: optionalComponents?.topNavRightSide
212
- })
213
- }), topNavProps && _jsx(ErrorBoundary, {
214
- fallback: null,
215
- onError: onError,
216
- children: _jsx(TopNav, {
217
- ...topNavProps,
218
- isScrolled: isContentScrolled,
219
- leftSideComponent: optionalComponents?.topNavLeftSide,
220
- rightSideComponent: optionalComponents?.topNavRightSide
221
- })
222
- })]
223
- })
224
- }), _jsx(StyledAppContainer, {
225
- appBackgroundColor: uiShellContext?.appBackgroundColor,
226
- tabIndex: 0,
227
- ref: appContainerRef
228
- })]
229
- });
230
- };
231
- const MemoizedUiShellContent = memo(UiShellContent);
232
- MemoizedUiShellContent.displayName = "UiShellContent";
233
- export { MemoizedUiShellContent as UiShellContent };
234
- //# sourceMappingURL=UiShellContent.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"UiShellContent.js","names":["styled","memo","useEffect","useMemo","useRef","ErrorBoundary","AppSwitcher","SideNav","TopNav","useOdysseyDesignTokens","useScrollState","useUiShellContext","jsx","_jsx","jsxs","_jsxs","fullHeightStyles","height","emptySideNavItems","StyledAppContainer","shouldForwardProp","prop","appBackgroundColor","gridArea","backgroundColor","StyledBannersContainer","StyledAppSwitcherContainer","StyledSideNavContainer","StyledShellContainer","odysseyDesignTokens","HueNeutral50","display","gridGap","gridTemplateAreas","gridTemplateColumns","gridTemplateRows","width","StyledTopNavContainer","subComponentNames","convertCamelCaseToKebabCase","string","replace","toLowerCase","setStylesToMatchElement","additionalStyles","appContainerElement","appContentReferenceElement","boundingRect","getBoundingClientRect","style","setProperty","y","x","Object","entries","forEach","cssPropertyName","cssPropertyValue","String","UiShellContent","hasStandardAppContentPadding","appContainerScrollingMode","initialVisibleSections","onError","console","error","optionalComponents","appSwitcherProps","sideNavProps","topNavProps","isContentScrolled","scrollableContentRef","appContainerRef","sideNavContainerRef","topNavContainerRef","uiShellContext","appContainerElementStyles","paddingBlock","Spacing5","paddingInline","Spacing8","overflowX","overflowY","current","animationFrameId","updateStyles","cancelAnimationFrame","requestAnimationFrame","sideNavElement","addEventListener","observer","ResizeObserver","observe","disconnect","removeEventListener","children","banners","_ScopedCssBaseline","sx","includes","fallback","isLoading","appIcons","selectedAppName","ref","undefined","appName","sideNavItems","hasCustomFooter","sideNavFooter","footerComponent","footerItems","leftSideComponent","topNavLeftSide","rightSideComponent","topNavRightSide","isScrolled","tabIndex","MemoizedUiShellContent","displayName"],"sources":["../../../src/ui-shell/UiShellContent.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2024-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled from \"@emotion/styled\";\nimport {\n CSSProperties,\n memo,\n useEffect,\n useMemo,\n useRef,\n type ReactElement,\n} from \"react\";\nimport { ErrorBoundary, ErrorBoundaryProps } from \"react-error-boundary\";\n\nimport { AppSwitcher, type AppSwitcherProps } from \"./AppSwitcher/index.js\";\nimport { SideNav, type SideNavProps } from \"./SideNav/index.js\";\nimport { TopNav, type TopNavProps } from \"./TopNav/index.js\";\nimport {\n useOdysseyDesignTokens,\n type DesignTokens,\n} from \"../OdysseyDesignTokensContext.js\";\nimport { useScrollState } from \"./useScrollState.js\";\nimport { ContrastMode } from \"../useContrastMode.js\";\nimport { UiShellColors, useUiShellContext } from \"./UiShellProvider.js\";\nimport { ScopedCssBaseline } from \"@mui/material\";\n\nconst fullHeightStyles = { height: \"100%\" };\n\nconst emptySideNavItems = [] satisfies SideNavProps[\"sideNavItems\"];\n\nconst StyledAppContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"appBackgroundColor\" && prop !== \"odysseyDesignTokens\",\n})<{\n appBackgroundColor?: UiShellColors[\"appBackgroundColor\"];\n}>(({ appBackgroundColor }) => ({\n gridArea: \"app-content\",\n backgroundColor: appBackgroundColor,\n}));\n\nconst StyledBannersContainer = styled(\"div\")({\n gridArea: \"banners\",\n});\n\nconst StyledAppSwitcherContainer = styled(\"div\")({\n gridArea: \"app-switcher\",\n});\n\nconst StyledSideNavContainer = styled(\"div\")({\n gridArea: \"side-nav\",\n});\n\nconst StyledShellContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n backgroundColor: odysseyDesignTokens.HueNeutral50,\n display: \"grid\",\n gridGap: 0,\n gridTemplateAreas: `\n \"banners banners banners\"\n \"app-switcher side-nav top-nav\"\n \"app-switcher side-nav app-content\"\n `,\n gridTemplateColumns: \"auto auto 1fr\",\n gridTemplateRows: \"auto auto 1fr\",\n height: \"100vh\",\n width: \"100vw\",\n}));\n\nconst StyledTopNavContainer = styled(\"div\")({\n gridArea: \"top-nav\",\n});\n\nexport const subComponentNames = [\"TopNav\", \"SideNav\", \"AppSwitcher\"] as const;\nexport type SubComponentName = (typeof subComponentNames)[number];\n\nexport type UiShellNavComponentProps = {\n /**\n * Object that gets pass directly to the app switcher component.\n */\n appSwitcherProps?: AppSwitcherProps;\n /**\n * Object that gets pass directly to the side nav component. If `undefined` and in `initialVisibleSections`, SideNav will be initially rendered. Pass `null` to hide a previously-visible SideNav.\n */\n sideNavProps?: Omit<SideNavProps, \"footerComponent\"> | null;\n /**\n * Object that gets pass directly to the top nav component. If `undefined` and in `initialVisibleSections`, TopNav will be initially rendered. Pass `null` to hide a previously-visible TopNav.\n */\n topNavProps?: Omit<\n TopNavProps,\n \"leftSideComponent\" | \"rightSideComponent\"\n > | null;\n};\n\nexport type UiShellContentProps = {\n /**\n * Sets a custom background color for the app content area.\n */\n appBackgroundColor?: string;\n /**\n * Sets either a gray or white background color for the app content area.\n */\n appBackgroundContrastMode?: ContrastMode;\n /**\n * When passed, the app is expected to render into this element, not the Shadow DOM. UI Shell will position this element appropriately as if it was rendered in the app content area of the Shadow DOM.\n */\n appContainerElement: HTMLDivElement;\n /**\n * Controls the scrolling behavior of the app content area. Defaults to \"vertical\".\n */\n appContainerScrollingMode?: \"none\" | \"horizontal\" | \"vertical\" | \"both\";\n /**\n * defaults to `true`. If `false`, the content area will have no padding provided\n */\n hasStandardAppContentPadding?: boolean;\n /**\n * Which parts of the UI Shell should be visible initially? For example,\n * if sideNavProps is undefined, should the space for the sidenav be initially visible?\n */\n initialVisibleSections?: SubComponentName[];\n /**\n * Notifies when a React rendering error occurs. This could be useful for logging, flagging \"p0\"s, and recovering UI Shell when errors occur.\n */\n onError?: ErrorBoundaryProps[\"onError\"];\n /**\n * Components that will render as children of various other components such as the top nav or side nav.\n */\n optionalComponents?: {\n banners?: ReactElement;\n sideNavFooter?: SideNavProps[\"footerComponent\"];\n topNavLeftSide?: TopNavProps[\"leftSideComponent\"];\n topNavRightSide?: TopNavProps[\"rightSideComponent\"];\n };\n} & UiShellNavComponentProps;\n\nexport const convertCamelCaseToKebabCase = (string: string) =>\n string.replace(/([A-Z])/g, \"-$1\").toLowerCase();\n\nexport const setStylesToMatchElement = ({\n additionalStyles,\n appContainerElement,\n appContentReferenceElement,\n}: {\n additionalStyles: CSSProperties;\n appContainerElement: HTMLElement;\n appContentReferenceElement: HTMLElement;\n}) => {\n const boundingRect = appContentReferenceElement.getBoundingClientRect();\n\n appContainerElement.style.setProperty(\"position\", \"absolute\");\n appContainerElement.style.setProperty(\"top\", `${boundingRect.y}px`);\n appContainerElement.style.setProperty(\"left\", `${boundingRect.x}px`);\n appContainerElement.style.setProperty(\"width\", `${boundingRect.width}px`);\n appContainerElement.style.setProperty(\"height\", `${boundingRect.height}px`);\n\n (\n Object.entries(additionalStyles) as Array<\n [\n keyof typeof additionalStyles,\n (typeof additionalStyles)[keyof typeof additionalStyles],\n ]\n >\n ).forEach(([cssPropertyName, cssPropertyValue]) => {\n appContainerElement.style.setProperty(\n convertCamelCaseToKebabCase(cssPropertyName),\n String(cssPropertyValue),\n );\n });\n};\n\n/**\n * Our new Unified Platform UI Shell.\n *\n * This includes the top and side navigation as well as the footer and provides a spot for your app to render into.\n *\n * If an error occurs, this will revert to only showing the app.\n */\nconst UiShellContent = ({\n appContainerElement,\n hasStandardAppContentPadding = true,\n appContainerScrollingMode = \"vertical\",\n initialVisibleSections = [\"TopNav\", \"SideNav\", \"AppSwitcher\"],\n onError = console.error,\n optionalComponents,\n appSwitcherProps,\n sideNavProps,\n topNavProps,\n}: UiShellContentProps) => {\n const odysseyDesignTokens = useOdysseyDesignTokens();\n const { isContentScrolled, scrollableContentRef: appContainerRef } =\n useScrollState(appContainerElement);\n const sideNavContainerRef = useRef<HTMLDivElement>(null);\n const topNavContainerRef = useRef<HTMLDivElement>(null);\n const uiShellContext = useUiShellContext();\n\n const appContainerElementStyles = useMemo<CSSProperties>(\n () => ({\n ...(hasStandardAppContentPadding\n ? {\n paddingBlock: odysseyDesignTokens.Spacing5 ?? null,\n paddingInline: odysseyDesignTokens.Spacing8 ?? null,\n }\n : {}),\n ...(appContainerScrollingMode === \"horizontal\" ||\n appContainerScrollingMode === \"both\"\n ? {\n overflowX: \"auto\",\n }\n : {\n overflowX: \"hidden\",\n }),\n ...(appContainerScrollingMode === \"vertical\" ||\n appContainerScrollingMode === \"both\"\n ? {\n overflowY: \"auto\",\n }\n : {\n overflowY: \"hidden\",\n }),\n }),\n [\n hasStandardAppContentPadding,\n appContainerScrollingMode,\n odysseyDesignTokens,\n ],\n );\n\n useEffect(() => {\n // Once appContainerRef is rendered, we can position appContainerElement on top\n if (appContainerRef.current && appContainerElement) {\n let animationFrameId: number;\n\n const updateStyles = () => {\n cancelAnimationFrame(animationFrameId);\n animationFrameId = requestAnimationFrame(() => {\n if (appContainerRef.current) {\n setStylesToMatchElement({\n additionalStyles: appContainerElementStyles,\n appContentReferenceElement: appContainerRef.current,\n appContainerElement,\n });\n }\n });\n };\n\n // This element might have changed from `.current`, so it's important to keep track of the old one when we attach event listeners.\n const sideNavElement = sideNavContainerRef.current;\n\n sideNavElement?.addEventListener(\"transitionend\", updateStyles);\n\n // Setup a mutation observer to sync later updates\n const observer = new ResizeObserver(updateStyles);\n observer.observe(appContainerRef.current);\n\n if (sideNavElement) {\n observer.observe(sideNavElement);\n }\n\n if (topNavContainerRef.current) {\n observer.observe(topNavContainerRef.current);\n }\n\n // Set the initial styles\n updateStyles();\n\n return () => {\n observer.disconnect();\n sideNavElement?.removeEventListener(\"transitionend\", updateStyles);\n };\n }\n return () => {};\n }, [appContainerElement, appContainerElementStyles, appContainerRef]);\n\n return (\n <StyledShellContainer odysseyDesignTokens={odysseyDesignTokens}>\n <StyledBannersContainer>\n {optionalComponents?.banners}\n </StyledBannersContainer>\n\n <StyledAppSwitcherContainer>\n <ScopedCssBaseline sx={fullHeightStyles}>\n {\n /* If AppSwitcher should be initially visible and we have not yet received props, render AppSwitcher in the loading state */\n initialVisibleSections?.includes(\"AppSwitcher\") &&\n !appSwitcherProps && (\n <ErrorBoundary fallback={null} onError={onError}>\n <AppSwitcher isLoading appIcons={[]} selectedAppName=\"\" />\n </ErrorBoundary>\n )\n }\n {appSwitcherProps && (\n <ErrorBoundary fallback={null} onError={onError}>\n <AppSwitcher {...appSwitcherProps} />\n </ErrorBoundary>\n )}\n </ScopedCssBaseline>\n </StyledAppSwitcherContainer>\n\n <StyledSideNavContainer ref={sideNavContainerRef}>\n <ScopedCssBaseline sx={fullHeightStyles}>\n {\n /* If SideNav should be initially visible and we have not yet received props, render SideNav with minimal inputs */\n initialVisibleSections?.includes(\"SideNav\") &&\n sideNavProps === undefined && (\n <ErrorBoundary fallback={null} onError={onError}>\n <SideNav\n isLoading\n appName=\"\"\n sideNavItems={emptySideNavItems}\n />\n </ErrorBoundary>\n )\n }\n {sideNavProps && (\n <ErrorBoundary fallback={null} onError={onError}>\n <SideNav\n {...{\n ...sideNavProps,\n ...(sideNavProps.hasCustomFooter &&\n optionalComponents?.sideNavFooter\n ? {\n footerComponent: optionalComponents.sideNavFooter,\n footerItems: undefined,\n hasCustomFooter: sideNavProps.hasCustomFooter,\n }\n : {\n footerItems: sideNavProps.footerItems,\n hasCustomFooter: false,\n }),\n }}\n />\n </ErrorBoundary>\n )}\n </ScopedCssBaseline>\n </StyledSideNavContainer>\n <StyledTopNavContainer ref={topNavContainerRef}>\n <ScopedCssBaseline sx={fullHeightStyles}>\n {\n /* If TopNav should be initially visible and we have not yet received props, render Topnav with minimal inputs */\n initialVisibleSections?.includes(\"TopNav\") &&\n topNavProps === undefined && (\n <ErrorBoundary fallback={null} onError={onError}>\n <TopNav\n leftSideComponent={optionalComponents?.topNavLeftSide}\n rightSideComponent={optionalComponents?.topNavRightSide}\n />\n </ErrorBoundary>\n )\n }\n {topNavProps && (\n <ErrorBoundary fallback={null} onError={onError}>\n <TopNav\n {...topNavProps}\n isScrolled={isContentScrolled}\n leftSideComponent={optionalComponents?.topNavLeftSide}\n rightSideComponent={optionalComponents?.topNavRightSide}\n />\n </ErrorBoundary>\n )}\n </ScopedCssBaseline>\n </StyledTopNavContainer>\n\n <StyledAppContainer\n appBackgroundColor={uiShellContext?.appBackgroundColor}\n tabIndex={0}\n ref={appContainerRef}\n />\n </StyledShellContainer>\n );\n};\n\nconst MemoizedUiShellContent = memo(UiShellContent);\nMemoizedUiShellContent.displayName = \"UiShellContent\";\n\nexport { MemoizedUiShellContent as UiShellContent };\n"],"mappings":"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","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"UiShellContent.d.ts","sourceRoot":"","sources":["../../../src/ui-shell/UiShellContent.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EACL,aAAa,EAKb,KAAK,YAAY,EAClB,MAAM,OAAO,CAAC;AACf,OAAO,EAAiB,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAEzE,OAAO,EAAe,KAAK,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC5E,OAAO,EAAW,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAU,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAM7D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAqDrD,eAAO,MAAM,iBAAiB,+CAAgD,CAAC;AAC/E,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAElE,MAAM,MAAM,wBAAwB,GAAG;IACrC;;OAEG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC;;OAEG;IACH,YAAY,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,iBAAiB,CAAC,GAAG,IAAI,CAAC;IAC5D;;OAEG;IACH,WAAW,CAAC,EAAE,IAAI,CAChB,WAAW,EACX,mBAAmB,GAAG,oBAAoB,CAC3C,GAAG,IAAI,CAAC;CACV,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;OAEG;IACH,yBAAyB,CAAC,EAAE,YAAY,CAAC;IACzC;;OAEG;IACH,mBAAmB,EAAE,cAAc,CAAC;IACpC;;OAEG;IACH,yBAAyB,CAAC,EAAE,MAAM,GAAG,YAAY,GAAG,UAAU,GAAG,MAAM,CAAC;IACxE;;OAEG;IACH,4BAA4B,CAAC,EAAE,OAAO,CAAC;IACvC;;;OAGG;IACH,sBAAsB,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC5C;;OAEG;IACH,OAAO,CAAC,EAAE,kBAAkB,CAAC,SAAS,CAAC,CAAC;IACxC;;OAEG;IACH,kBAAkB,CAAC,EAAE;QACnB,OAAO,CAAC,EAAE,YAAY,CAAC;QACvB,aAAa,CAAC,EAAE,YAAY,CAAC,iBAAiB,CAAC,CAAC;QAChD,cAAc,CAAC,EAAE,WAAW,CAAC,mBAAmB,CAAC,CAAC;QAClD,eAAe,CAAC,EAAE,WAAW,CAAC,oBAAoB,CAAC,CAAC;KACrD,CAAC;CACH,GAAG,wBAAwB,CAAC;AAE7B,eAAO,MAAM,2BAA2B,WAAY,MAAM,WACT,CAAC;AAElD,eAAO,MAAM,uBAAuB,2EAIjC;IACD,gBAAgB,EAAE,aAAa,CAAC;IAChC,mBAAmB,EAAE,WAAW,CAAC;IACjC,0BAA0B,EAAE,WAAW,CAAC;CACzC,SAsBA,CAAC;AA2MF,QAAA,MAAM,sBAAsB,4NAxLzB,mBAAmB,sDAwL6B,CAAC;AAGpD,OAAO,EAAE,sBAAsB,IAAI,cAAc,EAAE,CAAC"}