@okta/odyssey-react-mui 1.58.0 → 1.59.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 (566) hide show
  1. package/dist/cjs/Accordion.cjs +1 -1
  2. package/dist/cjs/Autocomplete.cjs +1 -1
  3. package/dist/cjs/Badge.cjs +1 -1
  4. package/dist/cjs/Banner.cjs +1 -1
  5. package/dist/cjs/Box.cjs +1 -1
  6. package/dist/cjs/Breadcrumbs.cjs +1 -1
  7. package/dist/cjs/Buttons/BaseButton.cjs +1 -1
  8. package/dist/cjs/Buttons/BaseMenuButton.cjs +1 -1
  9. package/dist/cjs/Buttons/Button.cjs +1 -1
  10. package/dist/cjs/Buttons/MenuButton.cjs +1 -1
  11. package/dist/cjs/Buttons/MenuItem.cjs +1 -1
  12. package/dist/cjs/Callout.cjs +1 -1
  13. package/dist/cjs/Card.cjs +1 -1
  14. package/dist/cjs/CircularProgress.cjs +1 -1
  15. package/dist/cjs/ConditionalWrapper.cjs +1 -1
  16. package/dist/cjs/DataTable/DataTable.cjs +4 -2
  17. package/dist/cjs/DataTable/DataTable.cjs.map +1 -1
  18. package/dist/cjs/DataTable/DataTableRowActions.cjs +1 -1
  19. package/dist/cjs/DataTable/DataTableSettings.cjs +1 -1
  20. package/dist/cjs/DatePickers/DateField.cjs +1 -1
  21. package/dist/cjs/DatePickers/DateFieldActionBar.cjs +1 -1
  22. package/dist/cjs/DatePickers/DateFieldLocalizationProvider.cjs +1 -1
  23. package/dist/cjs/DatePickers/DatePicker.cjs +1 -1
  24. package/dist/cjs/DatePickers/TimeZonePicker.cjs +1 -1
  25. package/dist/cjs/Dialog.cjs +1 -1
  26. package/dist/cjs/Drawer.cjs +1 -1
  27. package/dist/cjs/EmptyState.cjs +1 -1
  28. package/dist/cjs/ErrorMessageList.cjs +1 -1
  29. package/dist/cjs/Field.cjs +1 -1
  30. package/dist/cjs/FieldError.cjs +1 -1
  31. package/dist/cjs/FieldHint.cjs +1 -1
  32. package/dist/cjs/FieldLabel.cjs +1 -1
  33. package/dist/cjs/Fields/Checkbox.cjs +1 -1
  34. package/dist/cjs/Fields/CheckboxGroup.cjs +1 -1
  35. package/dist/cjs/Fields/Radio.cjs +1 -1
  36. package/dist/cjs/Fields/RadioGroup.cjs +1 -1
  37. package/dist/cjs/Fieldset.cjs +1 -1
  38. package/dist/cjs/FileUploader/FileUploadIllustration.cjs +1 -1
  39. package/dist/cjs/FileUploader/FileUploadPreview.cjs +1 -1
  40. package/dist/cjs/FileUploader/FileUploader.cjs +1 -1
  41. package/dist/cjs/Form.cjs +1 -1
  42. package/dist/cjs/FullScreenOverlay.cjs +1 -1
  43. package/dist/cjs/FullScreenOverlayContext.cjs +1 -1
  44. package/dist/cjs/HintLink.cjs +1 -1
  45. package/dist/cjs/IconWithTooltip.cjs +1 -1
  46. package/dist/cjs/Link.cjs +1 -1
  47. package/dist/cjs/MuiPropsChild.cjs +1 -1
  48. package/dist/cjs/NativeSelect.cjs +1 -1
  49. package/dist/cjs/OdysseyCacheProvider.cjs +1 -1
  50. package/dist/cjs/OdysseyDesignTokensContext.cjs +3 -3
  51. package/dist/cjs/OdysseyDesignTokensContext.cjs.map +1 -1
  52. package/dist/cjs/OdysseyProvider.cjs +1 -1
  53. package/dist/cjs/OdysseyThemeProvider.cjs +27 -20
  54. package/dist/cjs/OdysseyThemeProvider.cjs.map +1 -1
  55. package/dist/cjs/OdysseyThemeProviderPropsContext.cjs +1 -1
  56. package/dist/cjs/Pagination/Pagination.cjs +1 -1
  57. package/dist/cjs/PasswordField.cjs +1 -1
  58. package/dist/cjs/ScreenReaderText.cjs +1 -1
  59. package/dist/cjs/SearchField.cjs +1 -1
  60. package/dist/cjs/Select.cjs +1 -1
  61. package/dist/cjs/Stack.cjs +1 -1
  62. package/dist/cjs/Status.cjs +1 -1
  63. package/dist/cjs/Surface.cjs +1 -1
  64. package/dist/cjs/Switch.cjs +2 -2
  65. package/dist/cjs/Tabs.cjs +1 -1
  66. package/dist/cjs/Tag.cjs +3 -2
  67. package/dist/cjs/Tag.cjs.map +1 -1
  68. package/dist/cjs/TagList.cjs +3 -1
  69. package/dist/cjs/TagList.cjs.map +1 -1
  70. package/dist/cjs/TextField.cjs +1 -1
  71. package/dist/cjs/Toast.cjs +1 -1
  72. package/dist/cjs/ToastStack.cjs +1 -1
  73. package/dist/cjs/Tooltip.cjs +1 -1
  74. package/dist/cjs/Typography.cjs +12 -12
  75. package/dist/cjs/icons.generated/Add.cjs +1 -1
  76. package/dist/cjs/icons.generated/AddCircle.cjs +1 -1
  77. package/dist/cjs/icons.generated/Apps.cjs +1 -1
  78. package/dist/cjs/icons.generated/AppsSelected.cjs +1 -1
  79. package/dist/cjs/icons.generated/ArrowBottom.cjs +1 -1
  80. package/dist/cjs/icons.generated/ArrowDown.cjs +1 -1
  81. package/dist/cjs/icons.generated/ArrowLeft.cjs +1 -1
  82. package/dist/cjs/icons.generated/ArrowLowerLeft.cjs +1 -1
  83. package/dist/cjs/icons.generated/ArrowLowerRight.cjs +1 -1
  84. package/dist/cjs/icons.generated/ArrowRight.cjs +1 -1
  85. package/dist/cjs/icons.generated/ArrowTop.cjs +1 -1
  86. package/dist/cjs/icons.generated/ArrowUnsorted.cjs +1 -1
  87. package/dist/cjs/icons.generated/ArrowUp.cjs +1 -1
  88. package/dist/cjs/icons.generated/ArrowUpperLeft.cjs +1 -1
  89. package/dist/cjs/icons.generated/ArrowUpperRight.cjs +1 -1
  90. package/dist/cjs/icons.generated/Bug.cjs +1 -1
  91. package/dist/cjs/icons.generated/Calendar.cjs +1 -1
  92. package/dist/cjs/icons.generated/Call.cjs +1 -1
  93. package/dist/cjs/icons.generated/Chat.cjs +1 -1
  94. package/dist/cjs/icons.generated/Check.cjs +1 -1
  95. package/dist/cjs/icons.generated/CheckCircleFilled.cjs +1 -1
  96. package/dist/cjs/icons.generated/ChevronDown.cjs +1 -1
  97. package/dist/cjs/icons.generated/ChevronLeft.cjs +1 -1
  98. package/dist/cjs/icons.generated/ChevronRight.cjs +1 -1
  99. package/dist/cjs/icons.generated/ChevronUp.cjs +1 -1
  100. package/dist/cjs/icons.generated/Clock.cjs +1 -1
  101. package/dist/cjs/icons.generated/Close.cjs +1 -1
  102. package/dist/cjs/icons.generated/CloseCircleFilled.cjs +1 -1
  103. package/dist/cjs/icons.generated/CollapseLeft.cjs +1 -1
  104. package/dist/cjs/icons.generated/CollapseRight.cjs +1 -1
  105. package/dist/cjs/icons.generated/Copy.cjs +1 -1
  106. package/dist/cjs/icons.generated/Custom.cjs +1 -1
  107. package/dist/cjs/icons.generated/Customizations.cjs +1 -1
  108. package/dist/cjs/icons.generated/CustomizationsSelected.cjs +1 -1
  109. package/dist/cjs/icons.generated/DangerDiamond.cjs +1 -1
  110. package/dist/cjs/icons.generated/DangerDiamondFilled.cjs +1 -1
  111. package/dist/cjs/icons.generated/Delete.cjs +1 -1
  112. package/dist/cjs/icons.generated/Deny.cjs +1 -1
  113. package/dist/cjs/icons.generated/Devices.cjs +1 -1
  114. package/dist/cjs/icons.generated/Directory.cjs +1 -1
  115. package/dist/cjs/icons.generated/DirectorySelected.cjs +1 -1
  116. package/dist/cjs/icons.generated/Documentation.cjs +1 -1
  117. package/dist/cjs/icons.generated/Download.cjs +1 -1
  118. package/dist/cjs/icons.generated/DragIndicator.cjs +1 -1
  119. package/dist/cjs/icons.generated/Duo.cjs +1 -1
  120. package/dist/cjs/icons.generated/Edit.cjs +1 -1
  121. package/dist/cjs/icons.generated/Email.cjs +1 -1
  122. package/dist/cjs/icons.generated/ExpandLeft.cjs +1 -1
  123. package/dist/cjs/icons.generated/ExpandRight.cjs +1 -1
  124. package/dist/cjs/icons.generated/ExternalLink.cjs +1 -1
  125. package/dist/cjs/icons.generated/Fido2.cjs +1 -1
  126. package/dist/cjs/icons.generated/Filter.cjs +1 -1
  127. package/dist/cjs/icons.generated/Folder.cjs +1 -1
  128. package/dist/cjs/icons.generated/Globe.cjs +1 -1
  129. package/dist/cjs/icons.generated/GoogleAuth.cjs +1 -1
  130. package/dist/cjs/icons.generated/Grid.cjs +1 -1
  131. package/dist/cjs/icons.generated/Group.cjs +1 -1
  132. package/dist/cjs/icons.generated/Happy.cjs +1 -1
  133. package/dist/cjs/icons.generated/Hide.cjs +1 -1
  134. package/dist/cjs/icons.generated/Home.cjs +1 -1
  135. package/dist/cjs/icons.generated/HomeSelected.cjs +1 -1
  136. package/dist/cjs/icons.generated/IdentityGovernance.cjs +1 -1
  137. package/dist/cjs/icons.generated/IdentityGovernanceSelected.cjs +1 -1
  138. package/dist/cjs/icons.generated/Idp.cjs +1 -1
  139. package/dist/cjs/icons.generated/InformationCircle.cjs +1 -1
  140. package/dist/cjs/icons.generated/InformationCircleFilled.cjs +1 -1
  141. package/dist/cjs/icons.generated/Link.cjs +1 -1
  142. package/dist/cjs/icons.generated/List.cjs +1 -1
  143. package/dist/cjs/icons.generated/Lock.cjs +1 -1
  144. package/dist/cjs/icons.generated/Menu.cjs +1 -1
  145. package/dist/cjs/icons.generated/More.cjs +1 -1
  146. package/dist/cjs/icons.generated/Neutral.cjs +1 -1
  147. package/dist/cjs/icons.generated/Notification.cjs +1 -1
  148. package/dist/cjs/icons.generated/OktaVerify.cjs +1 -1
  149. package/dist/cjs/icons.generated/OnPremMfa.cjs +1 -1
  150. package/dist/cjs/icons.generated/OneTimePassword.cjs +1 -1
  151. package/dist/cjs/icons.generated/Password.cjs +1 -1
  152. package/dist/cjs/icons.generated/Pause.cjs +1 -1
  153. package/dist/cjs/icons.generated/QuestionCircle.cjs +1 -1
  154. package/dist/cjs/icons.generated/QuestionCircleFilled.cjs +1 -1
  155. package/dist/cjs/icons.generated/Refresh.cjs +1 -1
  156. package/dist/cjs/icons.generated/Reports.cjs +1 -1
  157. package/dist/cjs/icons.generated/ReportsSelected.cjs +1 -1
  158. package/dist/cjs/icons.generated/Reset.cjs +1 -1
  159. package/dist/cjs/icons.generated/Resume.cjs +1 -1
  160. package/dist/cjs/icons.generated/Sad.cjs +1 -1
  161. package/dist/cjs/icons.generated/Same.cjs +1 -1
  162. package/dist/cjs/icons.generated/Search.cjs +1 -1
  163. package/dist/cjs/icons.generated/Security.cjs +1 -1
  164. package/dist/cjs/icons.generated/SecurityQuestion.cjs +1 -1
  165. package/dist/cjs/icons.generated/SecuritySelected.cjs +1 -1
  166. package/dist/cjs/icons.generated/Send.cjs +1 -1
  167. package/dist/cjs/icons.generated/Server.cjs +1 -1
  168. package/dist/cjs/icons.generated/Settings.cjs +1 -1
  169. package/dist/cjs/icons.generated/SettingsSelected.cjs +1 -1
  170. package/dist/cjs/icons.generated/Show.cjs +1 -1
  171. package/dist/cjs/icons.generated/SmartCard.cjs +1 -1
  172. package/dist/cjs/icons.generated/Sms.cjs +1 -1
  173. package/dist/cjs/icons.generated/Sparkle.cjs +1 -1
  174. package/dist/cjs/icons.generated/Subtract.cjs +1 -1
  175. package/dist/cjs/icons.generated/SymantecVip.cjs +1 -1
  176. package/dist/cjs/icons.generated/Sync.cjs +1 -1
  177. package/dist/cjs/icons.generated/ThumbsDown.cjs +1 -1
  178. package/dist/cjs/icons.generated/ThumbsUp.cjs +1 -1
  179. package/dist/cjs/icons.generated/Unlock.cjs +1 -1
  180. package/dist/cjs/icons.generated/Upload.cjs +1 -1
  181. package/dist/cjs/icons.generated/User.cjs +1 -1
  182. package/dist/cjs/icons.generated/Video.cjs +1 -1
  183. package/dist/cjs/icons.generated/VoiceCall.cjs +1 -1
  184. package/dist/cjs/icons.generated/Warning.cjs +1 -1
  185. package/dist/cjs/icons.generated/WarningFilled.cjs +1 -1
  186. package/dist/cjs/icons.generated/Workflows.cjs +1 -1
  187. package/dist/cjs/icons.generated/WorkflowsSelected.cjs +1 -1
  188. package/dist/cjs/icons.generated/Yubikey.cjs +1 -1
  189. package/dist/cjs/index.cjs.map +1 -1
  190. package/dist/cjs/labs/AppTile.cjs +1 -1
  191. package/dist/cjs/labs/DataFilters.cjs +19 -5
  192. package/dist/cjs/labs/DataFilters.cjs.map +1 -1
  193. package/dist/cjs/labs/DataTable.cjs +1 -1
  194. package/dist/cjs/labs/DataTablePagination.cjs +1 -1
  195. package/dist/cjs/labs/DataView/BulkActionsMenu.cjs +1 -1
  196. package/dist/cjs/labs/DataView/CardLayoutContent.cjs +2 -2
  197. package/dist/cjs/labs/DataView/DataCard.cjs +1 -1
  198. package/dist/cjs/labs/DataView/DataTable.cjs +1 -1
  199. package/dist/cjs/labs/DataView/DataView.cjs +9 -3
  200. package/dist/cjs/labs/DataView/DataView.cjs.map +1 -1
  201. package/dist/cjs/labs/DataView/DetailPanel.cjs +1 -1
  202. package/dist/cjs/labs/DataView/LayoutSwitcher.cjs +1 -1
  203. package/dist/cjs/labs/DataView/RowActions.cjs +1 -1
  204. package/dist/cjs/labs/DataView/TableLayoutContent.cjs +1 -1
  205. package/dist/cjs/labs/DataView/TableSettings.cjs +1 -1
  206. package/dist/cjs/labs/DataView/componentTypes.cjs.map +1 -1
  207. package/dist/cjs/labs/DataView/dataTypes.cjs.map +1 -1
  208. package/dist/cjs/labs/DatePickers/DateTimeField.cjs +1 -1
  209. package/dist/cjs/labs/DatePickers/DateTimePicker.cjs +1 -1
  210. package/dist/cjs/labs/OdysseyPickers/ComposablePicker.cjs +1 -1
  211. package/dist/cjs/labs/OdysseyPickers/Picker.cjs +1 -1
  212. package/dist/cjs/labs/OdysseyPickers/PickerVirtualizationListBox.cjs +1 -1
  213. package/dist/cjs/labs/OdysseyPickers/PickerWithOptionAdornment.cjs +1 -1
  214. package/dist/cjs/labs/OdysseyPickers/SearchDropdown.cjs +1 -1
  215. package/dist/cjs/labs/PageTemplate/DocumentationLink.cjs +1 -1
  216. package/dist/cjs/labs/PageTemplate/Layout.cjs +1 -1
  217. package/dist/cjs/labs/PageTemplate/PageTemplate.cjs +1 -1
  218. package/dist/cjs/labs/PaginatedTable.cjs +1 -1
  219. package/dist/cjs/labs/StaticTable.cjs +1 -1
  220. package/dist/cjs/labs/UserProfile.cjs +1 -1
  221. package/dist/cjs/labs/UserProfileMenuButton.cjs +1 -1
  222. package/dist/cjs/properties/ts/odyssey-react-mui.cjs +2 -0
  223. package/dist/cjs/properties/ts/odyssey-react-mui.cjs.map +1 -1
  224. package/dist/cjs/properties/ts/odyssey-react-mui_ok_PL.cjs +2 -0
  225. package/dist/cjs/properties/ts/odyssey-react-mui_ok_PL.cjs.map +1 -1
  226. package/dist/cjs/properties/ts/odyssey-react-mui_ok_SK.cjs +2 -0
  227. package/dist/cjs/properties/ts/odyssey-react-mui_ok_SK.cjs.map +1 -1
  228. package/dist/cjs/theme/components.cjs +7 -7
  229. package/dist/cjs/theme/components.cjs.map +1 -1
  230. package/dist/cjs/ui-shell/AppSwitcher/AppSwitcher.cjs +1 -1
  231. package/dist/cjs/ui-shell/InnerAppContainer.cjs +1 -1
  232. package/dist/cjs/ui-shell/NarrowUiShellContent.cjs +5 -2
  233. package/dist/cjs/ui-shell/NarrowUiShellContent.cjs.map +1 -1
  234. package/dist/cjs/ui-shell/SideNav/NavAccordion.cjs +1 -1
  235. package/dist/cjs/ui-shell/SideNav/SideNav.cjs +1 -1
  236. package/dist/cjs/ui-shell/SideNav/SideNavFooterContent.cjs +1 -1
  237. package/dist/cjs/ui-shell/SideNav/SideNavHeader.cjs +1 -1
  238. package/dist/cjs/ui-shell/SideNav/SideNavItemContent.cjs +1 -1
  239. package/dist/cjs/ui-shell/SideNav/SideNavItemLinkContent.cjs +1 -1
  240. package/dist/cjs/ui-shell/SideNav/SideNavSortableList.cjs +1 -1
  241. package/dist/cjs/ui-shell/SideNav/SideNavToggleButton.cjs +2 -2
  242. package/dist/cjs/ui-shell/SkipToContent.cjs +124 -0
  243. package/dist/cjs/ui-shell/SkipToContent.cjs.map +1 -0
  244. package/dist/cjs/ui-shell/TopNav/HamburgerMenuIcon.cjs +1 -1
  245. package/dist/cjs/ui-shell/TopNav/TopNav.cjs +1 -1
  246. package/dist/cjs/ui-shell/TopNav/TopNavLinksList.cjs +1 -1
  247. package/dist/cjs/ui-shell/TopNav/TopNavListItem.cjs +1 -1
  248. package/dist/cjs/ui-shell/UiShell.cjs +1 -1
  249. package/dist/cjs/ui-shell/UiShellLogo.cjs +1 -1
  250. package/dist/cjs/ui-shell/WideUiShellContent.cjs +5 -2
  251. package/dist/cjs/ui-shell/WideUiShellContent.cjs.map +1 -1
  252. package/dist/cjs/ui-shell/index.cjs +12 -0
  253. package/dist/cjs/ui-shell/index.cjs.map +1 -1
  254. package/dist/cjs/ui-shell/uiShellSharedConstants.cjs +2 -1
  255. package/dist/cjs/ui-shell/uiShellSharedConstants.cjs.map +1 -1
  256. package/dist/cjs/useContrastMode.cjs +38 -20
  257. package/dist/cjs/useContrastMode.cjs.map +1 -1
  258. package/dist/cjs/useThemeCache.cjs +53 -0
  259. package/dist/cjs/useThemeCache.cjs.map +1 -0
  260. package/dist/cjs/web-component/odysseyWebComponentVersion.generated.cjs +1 -1
  261. package/dist/cjs/web-component/odysseyWebComponentVersion.generated.cjs.map +1 -1
  262. package/dist/esm/Accordion.js +1 -1
  263. package/dist/esm/Autocomplete.js +1 -1
  264. package/dist/esm/Badge.js +1 -1
  265. package/dist/esm/Banner.js +1 -1
  266. package/dist/esm/Box.js +1 -1
  267. package/dist/esm/Breadcrumbs.js +1 -1
  268. package/dist/esm/Buttons/BaseButton.js +1 -1
  269. package/dist/esm/Buttons/BaseMenuButton.js +1 -1
  270. package/dist/esm/Buttons/Button.js +1 -1
  271. package/dist/esm/Buttons/MenuButton.js +1 -1
  272. package/dist/esm/Buttons/MenuItem.js +1 -1
  273. package/dist/esm/Callout.js +1 -1
  274. package/dist/esm/Card.js +1 -1
  275. package/dist/esm/CircularProgress.js +1 -1
  276. package/dist/esm/ConditionalWrapper.js +1 -1
  277. package/dist/esm/DataTable/DataTable.js +4 -2
  278. package/dist/esm/DataTable/DataTable.js.map +1 -1
  279. package/dist/esm/DataTable/DataTableRowActions.js +1 -1
  280. package/dist/esm/DataTable/DataTableSettings.js +1 -1
  281. package/dist/esm/DatePickers/DateField.js +1 -1
  282. package/dist/esm/DatePickers/DateFieldActionBar.js +1 -1
  283. package/dist/esm/DatePickers/DateFieldLocalizationProvider.js +1 -1
  284. package/dist/esm/DatePickers/DatePicker.js +1 -1
  285. package/dist/esm/DatePickers/TimeZonePicker.js +1 -1
  286. package/dist/esm/Dialog.js +1 -1
  287. package/dist/esm/Drawer.js +1 -1
  288. package/dist/esm/EmptyState.js +1 -1
  289. package/dist/esm/ErrorMessageList.js +1 -1
  290. package/dist/esm/Field.js +1 -1
  291. package/dist/esm/FieldError.js +1 -1
  292. package/dist/esm/FieldHint.js +1 -1
  293. package/dist/esm/FieldLabel.js +1 -1
  294. package/dist/esm/Fields/Checkbox.js +1 -1
  295. package/dist/esm/Fields/CheckboxGroup.js +1 -1
  296. package/dist/esm/Fields/Radio.js +1 -1
  297. package/dist/esm/Fields/RadioGroup.js +1 -1
  298. package/dist/esm/Fieldset.js +1 -1
  299. package/dist/esm/FileUploader/FileUploadIllustration.js +1 -1
  300. package/dist/esm/FileUploader/FileUploadPreview.js +1 -1
  301. package/dist/esm/FileUploader/FileUploader.js +1 -1
  302. package/dist/esm/Form.js +1 -1
  303. package/dist/esm/FullScreenOverlay.js +1 -1
  304. package/dist/esm/FullScreenOverlayContext.js +1 -1
  305. package/dist/esm/HintLink.js +1 -1
  306. package/dist/esm/IconWithTooltip.js +1 -1
  307. package/dist/esm/Link.js +1 -1
  308. package/dist/esm/MuiPropsChild.js +1 -1
  309. package/dist/esm/NativeSelect.js +1 -1
  310. package/dist/esm/OdysseyCacheProvider.js +1 -1
  311. package/dist/esm/OdysseyDesignTokensContext.js +3 -1
  312. package/dist/esm/OdysseyDesignTokensContext.js.map +1 -1
  313. package/dist/esm/OdysseyProvider.js +1 -1
  314. package/dist/esm/OdysseyThemeProvider.js +28 -21
  315. package/dist/esm/OdysseyThemeProvider.js.map +1 -1
  316. package/dist/esm/OdysseyThemeProviderPropsContext.js +1 -1
  317. package/dist/esm/Pagination/Pagination.js +1 -1
  318. package/dist/esm/PasswordField.js +1 -1
  319. package/dist/esm/ScreenReaderText.js +1 -1
  320. package/dist/esm/SearchField.js +1 -1
  321. package/dist/esm/Select.js +1 -1
  322. package/dist/esm/Stack.js +1 -1
  323. package/dist/esm/Status.js +1 -1
  324. package/dist/esm/Surface.js +1 -1
  325. package/dist/esm/Switch.js +2 -2
  326. package/dist/esm/Tabs.js +1 -1
  327. package/dist/esm/Tag.js +3 -2
  328. package/dist/esm/Tag.js.map +1 -1
  329. package/dist/esm/TagList.js +3 -1
  330. package/dist/esm/TagList.js.map +1 -1
  331. package/dist/esm/TextField.js +1 -1
  332. package/dist/esm/Toast.js +1 -1
  333. package/dist/esm/ToastStack.js +1 -1
  334. package/dist/esm/Tooltip.js +1 -1
  335. package/dist/esm/Typography.js +12 -12
  336. package/dist/esm/icons.generated/Add.js +1 -1
  337. package/dist/esm/icons.generated/AddCircle.js +1 -1
  338. package/dist/esm/icons.generated/Apps.js +1 -1
  339. package/dist/esm/icons.generated/AppsSelected.js +1 -1
  340. package/dist/esm/icons.generated/ArrowBottom.js +1 -1
  341. package/dist/esm/icons.generated/ArrowDown.js +1 -1
  342. package/dist/esm/icons.generated/ArrowLeft.js +1 -1
  343. package/dist/esm/icons.generated/ArrowLowerLeft.js +1 -1
  344. package/dist/esm/icons.generated/ArrowLowerRight.js +1 -1
  345. package/dist/esm/icons.generated/ArrowRight.js +1 -1
  346. package/dist/esm/icons.generated/ArrowTop.js +1 -1
  347. package/dist/esm/icons.generated/ArrowUnsorted.js +1 -1
  348. package/dist/esm/icons.generated/ArrowUp.js +1 -1
  349. package/dist/esm/icons.generated/ArrowUpperLeft.js +1 -1
  350. package/dist/esm/icons.generated/ArrowUpperRight.js +1 -1
  351. package/dist/esm/icons.generated/Bug.js +1 -1
  352. package/dist/esm/icons.generated/Calendar.js +1 -1
  353. package/dist/esm/icons.generated/Call.js +1 -1
  354. package/dist/esm/icons.generated/Chat.js +1 -1
  355. package/dist/esm/icons.generated/Check.js +1 -1
  356. package/dist/esm/icons.generated/CheckCircleFilled.js +1 -1
  357. package/dist/esm/icons.generated/ChevronDown.js +1 -1
  358. package/dist/esm/icons.generated/ChevronLeft.js +1 -1
  359. package/dist/esm/icons.generated/ChevronRight.js +1 -1
  360. package/dist/esm/icons.generated/ChevronUp.js +1 -1
  361. package/dist/esm/icons.generated/Clock.js +1 -1
  362. package/dist/esm/icons.generated/Close.js +1 -1
  363. package/dist/esm/icons.generated/CloseCircleFilled.js +1 -1
  364. package/dist/esm/icons.generated/CollapseLeft.js +1 -1
  365. package/dist/esm/icons.generated/CollapseRight.js +1 -1
  366. package/dist/esm/icons.generated/Copy.js +1 -1
  367. package/dist/esm/icons.generated/Custom.js +1 -1
  368. package/dist/esm/icons.generated/Customizations.js +1 -1
  369. package/dist/esm/icons.generated/CustomizationsSelected.js +1 -1
  370. package/dist/esm/icons.generated/DangerDiamond.js +1 -1
  371. package/dist/esm/icons.generated/DangerDiamondFilled.js +1 -1
  372. package/dist/esm/icons.generated/Delete.js +1 -1
  373. package/dist/esm/icons.generated/Deny.js +1 -1
  374. package/dist/esm/icons.generated/Devices.js +1 -1
  375. package/dist/esm/icons.generated/Directory.js +1 -1
  376. package/dist/esm/icons.generated/DirectorySelected.js +1 -1
  377. package/dist/esm/icons.generated/Documentation.js +1 -1
  378. package/dist/esm/icons.generated/Download.js +1 -1
  379. package/dist/esm/icons.generated/DragIndicator.js +1 -1
  380. package/dist/esm/icons.generated/Duo.js +1 -1
  381. package/dist/esm/icons.generated/Edit.js +1 -1
  382. package/dist/esm/icons.generated/Email.js +1 -1
  383. package/dist/esm/icons.generated/ExpandLeft.js +1 -1
  384. package/dist/esm/icons.generated/ExpandRight.js +1 -1
  385. package/dist/esm/icons.generated/ExternalLink.js +1 -1
  386. package/dist/esm/icons.generated/Fido2.js +1 -1
  387. package/dist/esm/icons.generated/Filter.js +1 -1
  388. package/dist/esm/icons.generated/Folder.js +1 -1
  389. package/dist/esm/icons.generated/Globe.js +1 -1
  390. package/dist/esm/icons.generated/GoogleAuth.js +1 -1
  391. package/dist/esm/icons.generated/Grid.js +1 -1
  392. package/dist/esm/icons.generated/Group.js +1 -1
  393. package/dist/esm/icons.generated/Happy.js +1 -1
  394. package/dist/esm/icons.generated/Hide.js +1 -1
  395. package/dist/esm/icons.generated/Home.js +1 -1
  396. package/dist/esm/icons.generated/HomeSelected.js +1 -1
  397. package/dist/esm/icons.generated/IdentityGovernance.js +1 -1
  398. package/dist/esm/icons.generated/IdentityGovernanceSelected.js +1 -1
  399. package/dist/esm/icons.generated/Idp.js +1 -1
  400. package/dist/esm/icons.generated/InformationCircle.js +1 -1
  401. package/dist/esm/icons.generated/InformationCircleFilled.js +1 -1
  402. package/dist/esm/icons.generated/Link.js +1 -1
  403. package/dist/esm/icons.generated/List.js +1 -1
  404. package/dist/esm/icons.generated/Lock.js +1 -1
  405. package/dist/esm/icons.generated/Menu.js +1 -1
  406. package/dist/esm/icons.generated/More.js +1 -1
  407. package/dist/esm/icons.generated/Neutral.js +1 -1
  408. package/dist/esm/icons.generated/Notification.js +1 -1
  409. package/dist/esm/icons.generated/OktaVerify.js +1 -1
  410. package/dist/esm/icons.generated/OnPremMfa.js +1 -1
  411. package/dist/esm/icons.generated/OneTimePassword.js +1 -1
  412. package/dist/esm/icons.generated/Password.js +1 -1
  413. package/dist/esm/icons.generated/Pause.js +1 -1
  414. package/dist/esm/icons.generated/QuestionCircle.js +1 -1
  415. package/dist/esm/icons.generated/QuestionCircleFilled.js +1 -1
  416. package/dist/esm/icons.generated/Refresh.js +1 -1
  417. package/dist/esm/icons.generated/Reports.js +1 -1
  418. package/dist/esm/icons.generated/ReportsSelected.js +1 -1
  419. package/dist/esm/icons.generated/Reset.js +1 -1
  420. package/dist/esm/icons.generated/Resume.js +1 -1
  421. package/dist/esm/icons.generated/Sad.js +1 -1
  422. package/dist/esm/icons.generated/Same.js +1 -1
  423. package/dist/esm/icons.generated/Search.js +1 -1
  424. package/dist/esm/icons.generated/Security.js +1 -1
  425. package/dist/esm/icons.generated/SecurityQuestion.js +1 -1
  426. package/dist/esm/icons.generated/SecuritySelected.js +1 -1
  427. package/dist/esm/icons.generated/Send.js +1 -1
  428. package/dist/esm/icons.generated/Server.js +1 -1
  429. package/dist/esm/icons.generated/Settings.js +1 -1
  430. package/dist/esm/icons.generated/SettingsSelected.js +1 -1
  431. package/dist/esm/icons.generated/Show.js +1 -1
  432. package/dist/esm/icons.generated/SmartCard.js +1 -1
  433. package/dist/esm/icons.generated/Sms.js +1 -1
  434. package/dist/esm/icons.generated/Sparkle.js +1 -1
  435. package/dist/esm/icons.generated/Subtract.js +1 -1
  436. package/dist/esm/icons.generated/SymantecVip.js +1 -1
  437. package/dist/esm/icons.generated/Sync.js +1 -1
  438. package/dist/esm/icons.generated/ThumbsDown.js +1 -1
  439. package/dist/esm/icons.generated/ThumbsUp.js +1 -1
  440. package/dist/esm/icons.generated/Unlock.js +1 -1
  441. package/dist/esm/icons.generated/Upload.js +1 -1
  442. package/dist/esm/icons.generated/User.js +1 -1
  443. package/dist/esm/icons.generated/Video.js +1 -1
  444. package/dist/esm/icons.generated/VoiceCall.js +1 -1
  445. package/dist/esm/icons.generated/Warning.js +1 -1
  446. package/dist/esm/icons.generated/WarningFilled.js +1 -1
  447. package/dist/esm/icons.generated/Workflows.js +1 -1
  448. package/dist/esm/icons.generated/WorkflowsSelected.js +1 -1
  449. package/dist/esm/icons.generated/Yubikey.js +1 -1
  450. package/dist/esm/index.js.map +1 -1
  451. package/dist/esm/labs/AppTile.js +1 -1
  452. package/dist/esm/labs/DataFilters.js +19 -5
  453. package/dist/esm/labs/DataFilters.js.map +1 -1
  454. package/dist/esm/labs/DataTable.js +1 -1
  455. package/dist/esm/labs/DataTablePagination.js +1 -1
  456. package/dist/esm/labs/DataView/BulkActionsMenu.js +1 -1
  457. package/dist/esm/labs/DataView/CardLayoutContent.js +2 -2
  458. package/dist/esm/labs/DataView/DataCard.js +1 -1
  459. package/dist/esm/labs/DataView/DataTable.js +1 -1
  460. package/dist/esm/labs/DataView/DataView.js +9 -3
  461. package/dist/esm/labs/DataView/DataView.js.map +1 -1
  462. package/dist/esm/labs/DataView/DetailPanel.js +1 -1
  463. package/dist/esm/labs/DataView/LayoutSwitcher.js +1 -1
  464. package/dist/esm/labs/DataView/RowActions.js +1 -1
  465. package/dist/esm/labs/DataView/TableLayoutContent.js +1 -1
  466. package/dist/esm/labs/DataView/TableSettings.js +1 -1
  467. package/dist/esm/labs/DataView/componentTypes.js.map +1 -1
  468. package/dist/esm/labs/DataView/dataTypes.js.map +1 -1
  469. package/dist/esm/labs/DatePickers/DateTimeField.js +1 -1
  470. package/dist/esm/labs/DatePickers/DateTimePicker.js +1 -1
  471. package/dist/esm/labs/OdysseyPickers/ComposablePicker.js +1 -1
  472. package/dist/esm/labs/OdysseyPickers/Picker.js +1 -1
  473. package/dist/esm/labs/OdysseyPickers/PickerVirtualizationListBox.js +1 -1
  474. package/dist/esm/labs/OdysseyPickers/PickerWithOptionAdornment.js +1 -1
  475. package/dist/esm/labs/OdysseyPickers/SearchDropdown.js +1 -1
  476. package/dist/esm/labs/PageTemplate/DocumentationLink.js +1 -1
  477. package/dist/esm/labs/PageTemplate/Layout.js +1 -1
  478. package/dist/esm/labs/PageTemplate/PageTemplate.js +1 -1
  479. package/dist/esm/labs/PaginatedTable.js +1 -1
  480. package/dist/esm/labs/StaticTable.js +1 -1
  481. package/dist/esm/labs/UserProfile.js +1 -1
  482. package/dist/esm/labs/UserProfileMenuButton.js +1 -1
  483. package/dist/esm/properties/ts/odyssey-react-mui.js +2 -0
  484. package/dist/esm/properties/ts/odyssey-react-mui.js.map +1 -1
  485. package/dist/esm/properties/ts/odyssey-react-mui_ok_PL.js +2 -0
  486. package/dist/esm/properties/ts/odyssey-react-mui_ok_PL.js.map +1 -1
  487. package/dist/esm/properties/ts/odyssey-react-mui_ok_SK.js +2 -0
  488. package/dist/esm/properties/ts/odyssey-react-mui_ok_SK.js.map +1 -1
  489. package/dist/esm/theme/components.js +7 -7
  490. package/dist/esm/theme/components.js.map +1 -1
  491. package/dist/esm/ui-shell/AppSwitcher/AppSwitcher.js +1 -1
  492. package/dist/esm/ui-shell/InnerAppContainer.js +1 -1
  493. package/dist/esm/ui-shell/NarrowUiShellContent.js +5 -2
  494. package/dist/esm/ui-shell/NarrowUiShellContent.js.map +1 -1
  495. package/dist/esm/ui-shell/SideNav/NavAccordion.js +1 -1
  496. package/dist/esm/ui-shell/SideNav/SideNav.js +1 -1
  497. package/dist/esm/ui-shell/SideNav/SideNavFooterContent.js +1 -1
  498. package/dist/esm/ui-shell/SideNav/SideNavHeader.js +1 -1
  499. package/dist/esm/ui-shell/SideNav/SideNavItemContent.js +1 -1
  500. package/dist/esm/ui-shell/SideNav/SideNavItemLinkContent.js +1 -1
  501. package/dist/esm/ui-shell/SideNav/SideNavSortableList.js +1 -1
  502. package/dist/esm/ui-shell/SideNav/SideNavToggleButton.js +2 -2
  503. package/dist/esm/ui-shell/SkipToContent.js +118 -0
  504. package/dist/esm/ui-shell/SkipToContent.js.map +1 -0
  505. package/dist/esm/ui-shell/TopNav/HamburgerMenuIcon.js +1 -1
  506. package/dist/esm/ui-shell/TopNav/TopNav.js +1 -1
  507. package/dist/esm/ui-shell/TopNav/TopNavLinksList.js +1 -1
  508. package/dist/esm/ui-shell/TopNav/TopNavListItem.js +1 -1
  509. package/dist/esm/ui-shell/UiShell.js +1 -1
  510. package/dist/esm/ui-shell/UiShellLogo.js +1 -1
  511. package/dist/esm/ui-shell/WideUiShellContent.js +5 -2
  512. package/dist/esm/ui-shell/WideUiShellContent.js.map +1 -1
  513. package/dist/esm/ui-shell/index.js +2 -1
  514. package/dist/esm/ui-shell/index.js.map +1 -1
  515. package/dist/esm/ui-shell/uiShellSharedConstants.js +1 -0
  516. package/dist/esm/ui-shell/uiShellSharedConstants.js.map +1 -1
  517. package/dist/esm/useContrastMode.js +37 -20
  518. package/dist/esm/useContrastMode.js.map +1 -1
  519. package/dist/esm/useThemeCache.js +46 -0
  520. package/dist/esm/useThemeCache.js.map +1 -0
  521. package/dist/esm/web-component/odysseyWebComponentVersion.generated.js +1 -1
  522. package/dist/esm/web-component/odysseyWebComponentVersion.generated.js.map +1 -1
  523. package/dist/tsconfig.production.tsbuildinfo +1 -1
  524. package/dist/types/DataTable/DataTable.d.ts +5 -1
  525. package/dist/types/DataTable/DataTable.d.ts.map +1 -1
  526. package/dist/types/OdysseyDesignTokensContext.d.ts +678 -3
  527. package/dist/types/OdysseyDesignTokensContext.d.ts.map +1 -1
  528. package/dist/types/OdysseyThemeProvider.d.ts.map +1 -1
  529. package/dist/types/Tag.d.ts +1 -1
  530. package/dist/types/Tag.d.ts.map +1 -1
  531. package/dist/types/TagList.d.ts +2 -2
  532. package/dist/types/TagList.d.ts.map +1 -1
  533. package/dist/types/i18n.generated/i18n.d.ts +4 -0
  534. package/dist/types/i18n.generated/i18n.d.ts.map +1 -1
  535. package/dist/types/i18n.generated/i18n.resources.d.ts +6 -0
  536. package/dist/types/i18n.generated/i18n.resources.d.ts.map +1 -1
  537. package/dist/types/index.d.ts +1 -0
  538. package/dist/types/index.d.ts.map +1 -1
  539. package/dist/types/labs/DataFilters.d.ts +10 -1
  540. package/dist/types/labs/DataFilters.d.ts.map +1 -1
  541. package/dist/types/labs/DataView/DataView.d.ts.map +1 -1
  542. package/dist/types/labs/DataView/componentTypes.d.ts +4 -1
  543. package/dist/types/labs/DataView/componentTypes.d.ts.map +1 -1
  544. package/dist/types/labs/DataView/dataTypes.d.ts +2 -1
  545. package/dist/types/labs/DataView/dataTypes.d.ts.map +1 -1
  546. package/dist/types/properties/ts/odyssey-react-mui.d.ts +2 -0
  547. package/dist/types/properties/ts/odyssey-react-mui.d.ts.map +1 -1
  548. package/dist/types/properties/ts/odyssey-react-mui_ok_PL.d.ts +2 -0
  549. package/dist/types/properties/ts/odyssey-react-mui_ok_PL.d.ts.map +1 -1
  550. package/dist/types/properties/ts/odyssey-react-mui_ok_SK.d.ts +2 -0
  551. package/dist/types/properties/ts/odyssey-react-mui_ok_SK.d.ts.map +1 -1
  552. package/dist/types/theme/components.d.ts.map +1 -1
  553. package/dist/types/ui-shell/NarrowUiShellContent.d.ts.map +1 -1
  554. package/dist/types/ui-shell/SkipToContent.d.ts +17 -0
  555. package/dist/types/ui-shell/SkipToContent.d.ts.map +1 -0
  556. package/dist/types/ui-shell/WideUiShellContent.d.ts.map +1 -1
  557. package/dist/types/ui-shell/index.d.ts +2 -1
  558. package/dist/types/ui-shell/index.d.ts.map +1 -1
  559. package/dist/types/ui-shell/uiShellSharedConstants.d.ts +1 -0
  560. package/dist/types/ui-shell/uiShellSharedConstants.d.ts.map +1 -1
  561. package/dist/types/useContrastMode.d.ts +6 -2
  562. package/dist/types/useContrastMode.d.ts.map +1 -1
  563. package/dist/types/useThemeCache.d.ts +28 -0
  564. package/dist/types/useThemeCache.d.ts.map +1 -0
  565. package/dist/types/web-component/odysseyWebComponentVersion.generated.d.ts +1 -1
  566. package/package.json +7 -7
@@ -77,5 +77,5 @@ const AppSwitcher = ({
77
77
  });
78
78
  };
79
79
  const MemoizedAppSwitcher = exports.AppSwitcher = (0, _react.memo)(AppSwitcher);
80
- MemoizedAppSwitcher.displayName = "AppSwitcher::pkg=odyssey&odysseyV=1.58.0";
80
+ MemoizedAppSwitcher.displayName = "AppSwitcher::pkg=odyssey&odysseyV=1.59.0";
81
81
  //# sourceMappingURL=AppSwitcher.cjs.map
@@ -57,5 +57,5 @@ const InnerAppContainer = ({
57
57
  children: [(0, _jsxRuntime.jsx)(StyledAppContainerShadow1, {}), (0, _jsxRuntime.jsx)(StyledAppContainerShadow2, {}), (0, _jsxRuntime.jsx)(StyledAppContainerShadow3, {})]
58
58
  }) : null;
59
59
  const MemoizedInnerAppContainer = exports.InnerAppContainer = (0, _react.memo)(InnerAppContainer);
60
- MemoizedInnerAppContainer.displayName = "InnerAppContainer::pkg=odyssey&odysseyV=1.58.0";
60
+ MemoizedInnerAppContainer.displayName = "InnerAppContainer::pkg=odyssey&odysseyV=1.59.0";
61
61
  //# sourceMappingURL=InnerAppContainer.cjs.map
@@ -15,6 +15,7 @@ var _More = require("../icons.generated/More.cjs");
15
15
  var _OdysseyDesignTokensContext = require("../OdysseyDesignTokensContext.cjs");
16
16
  var _InnerAppContainer = require("./InnerAppContainer.cjs");
17
17
  var _SideNav = require("./SideNav/SideNav.cjs");
18
+ var _SkipToContent = require("./SkipToContent.cjs");
18
19
  var _HamburgerMenuIcon = require("./TopNav/HamburgerMenuIcon.cjs");
19
20
  var _UiShellLogo = require("./UiShellLogo.cjs");
20
21
  var _UiShellProvider = require("./UiShellProvider.cjs");
@@ -265,7 +266,9 @@ const NarrowUiShellContent = ({
265
266
  }), (0, _jsxRuntime.jsxs)(StyledUiShellContainer, {
266
267
  odysseyDesignTokens: odysseyDesignTokens,
267
268
  ref: parentContainerRef,
268
- children: [(0, _jsxRuntime.jsx)(StyledBannersContainer, {
269
+ children: [(0, _jsxRuntime.jsx)(_SkipToContent.SkipToContent, {
270
+ appElement: appElement
271
+ }), (0, _jsxRuntime.jsx)(StyledBannersContainer, {
269
272
  children: optionalComponents?.banners
270
273
  }), (initialVisibleSections?.includes("TopNav") || topNavProps) && (0, _jsxRuntime.jsx)(_reactErrorBoundary.ErrorBoundary, {
271
274
  fallback: null,
@@ -357,5 +360,5 @@ const NarrowUiShellContent = ({
357
360
  });
358
361
  };
359
362
  const MemoizedNarrowUiShellContent = exports.NarrowUiShellContent = (0, _react.memo)(NarrowUiShellContent);
360
- MemoizedNarrowUiShellContent.displayName = "NarrowUiShellContent::pkg=odyssey&odysseyV=1.58.0";
363
+ MemoizedNarrowUiShellContent.displayName = "NarrowUiShellContent::pkg=odyssey&odysseyV=1.59.0";
361
364
  //# sourceMappingURL=NarrowUiShellContent.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"NarrowUiShellContent.cjs","names":["_styled","_interopRequireDefault","require","_react","_reactErrorBoundary","_Button","_hexToRgb","_i18n","_Close","_More","_OdysseyDesignTokensContext","_InnerAppContainer","_SideNav","_HamburgerMenuIcon","_UiShellLogo","_UiShellProvider","_uiShellSharedConstants","_useMatchAppElementToUiShellAppArea","_useScrollState","_jsxRuntime","e","__esModule","default","StyledAppContentArea","styled","gridArea","position","height","width","StyledAppContainer","shouldForwardProp","prop","appBackgroundColor","backgroundColor","overflow","StyledBannersContainer","zIndex","UI_SHELL_BASE_Z_INDEX","StyledLeftSideContainer","isOpen","display","UI_SHELL_OVERLAY_Z_INDEX","StyledRightSideContainer","odysseyDesignTokens","HueNeutralWhite","maxWidth","SIDE_NAV_WIDTH","overflowY","right","StyledMenuLogo","alignItems","gap","Spacing3","StyledLogoContainer","TOP_NAV_HEIGHT","paddingBlock","Spacing4","maxHeight","StyledPageOverlay","hexToRgb","HueNeutral900","asFormattedString","replace","left","top","StyledSideNavContainer","StyledUiShellContainer","HueNeutral50","gridGap","gridTemplateAreas","gridTemplateColumns","gridTemplateRows","StyledTopNav","isContentScrolled","topNavBackgroundColor","boxShadow","DepthMedium","undefined","clipPath","flexDirection","justifyContent","transition","TransitionDurationMain","TransitionTimingMain","StyledTopNavMenu","minHeight","Spacing2","paddingInline","borderBottomColor","HueNeutral100","borderBottomStyle","BorderStyleMain","borderBottomWidth","BorderWidthMain","StyledTopNavSearch","NarrowUiShellContent","appElement","appElementScrollingMode","hasSideNavProps","hasStandardAppContentPadding","initialVisibleSections","logoProps","onError","console","error","optionalComponents","sideNavProps","topNavProps","t","useTranslation","useOdysseyDesignTokens","uiShellContext","useUiShellContext","useScrollState","sideNavContainerRef","useRef","topNavContainerRef","uiShellAppAreaRef","isLeftSideMenuOpen","setIsLeftSideMenuOpen","useState","isRightSideMenuOpen","setIsRightSideMenuOpen","closeSideMenus","useCallback","useEffect","unsubscribeFromCloseRightSideMenu","subscribeToCloseRightSideMenu","unsubscribeFromSideNavItemClicked","subscribeToCloseSideNavMenu","toggleLeftSideMenu","toggleRightSideMenu","handleKeyDown","event","key","document","addEventListener","removeEventListener","parentContainerRef","useMatchAppElementToUiShellAppArea","paddingMode","uiShellResizableRefs","jsxs","Fragment","children","jsx","onClick","ref","banners","includes","ErrorBoundary","fallback","sideNavBackgroundColor","isCollapsible","isCollapsed","Button","ariaLabel","startIcon","HamburgerMenuIcon","testId","variant","UiShellLogo","rightSideMenu","CloseIcon","MoreIcon","topNavLeftSide","SideNav","isLoading","sideNavItems","emptySideNavItems","appName","hasCustomFooter","sideNavFooter","footerComponent","footerItems","isObtrusive","onCollapse","tabIndex","InnerAppContainer","MemoizedNarrowUiShellContent","exports","memo","displayName"],"sources":["../../../src/ui-shell/NarrowUiShellContent.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-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 useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport { ErrorBoundary } from \"react-error-boundary\";\n\nimport type { HtmlProps } from \"../HtmlProps.js\";\n\nimport { Button } from \"../Buttons/Button.js\";\nimport { hexToRgb } from \"../hexToRgb.js\";\nimport { useTranslation } from \"../i18n.generated/i18n.js\";\nimport { CloseIcon } from \"../icons.generated/Close.js\";\nimport { MoreIcon } from \"../icons.generated/More.js\";\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"../OdysseyDesignTokensContext.js\";\nimport { InnerAppContainer } from \"./InnerAppContainer.js\";\nimport { SideNav } from \"./SideNav/SideNav.js\";\nimport { HamburgerMenuIcon } from \"./TopNav/HamburgerMenuIcon.js\";\nimport {\n UiShellContentProps,\n UiShellNavComponentProps,\n} from \"./uiShellContentTypes.js\";\nimport { UiShellLogo } from \"./UiShellLogo.js\";\nimport { UiShellColors, useUiShellContext } from \"./UiShellProvider.js\";\nimport {\n emptySideNavItems,\n SIDE_NAV_WIDTH,\n TOP_NAV_HEIGHT,\n UI_SHELL_BASE_Z_INDEX,\n UI_SHELL_OVERLAY_Z_INDEX,\n} from \"./uiShellSharedConstants.js\";\nimport { useMatchAppElementToUiShellAppArea } from \"./useMatchAppElementToUiShellAppArea.js\";\nimport { useScrollState } from \"./useScrollState.js\";\n\nconst StyledAppContentArea = styled(\"div\")({\n gridArea: \"app-content\",\n position: \"relative\",\n height: \"100%\",\n width: \"100%\",\n});\n\nconst StyledAppContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"appBackgroundColor\" && prop !== \"odysseyDesignTokens\",\n})<{\n appBackgroundColor?: UiShellColors[\"appBackgroundColor\"];\n}>(({ appBackgroundColor }) => ({\n backgroundColor: appBackgroundColor,\n height: \"100%\",\n overflow: \"hidden\",\n width: \"100%\",\n}));\n\nconst StyledBannersContainer = styled(\"div\")({\n gridArea: \"banners\",\n zIndex: UI_SHELL_BASE_Z_INDEX,\n});\n\nconst StyledLeftSideContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"isOpen\",\n})<{\n isOpen: boolean;\n}>(({ isOpen }) => ({\n display: isOpen ? \"block\" : \"none\",\n height: \"100%\",\n position: \"absolute\",\n zIndex: UI_SHELL_OVERLAY_Z_INDEX,\n}));\n\nconst StyledRightSideContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"isOpen\" && prop !== \"odysseyDesignTokens\",\n})<{\n isOpen: boolean;\n odysseyDesignTokens: DesignTokens;\n}>(({ isOpen, odysseyDesignTokens }) => ({\n backgroundColor: odysseyDesignTokens.HueNeutralWhite,\n display: isOpen ? \"block\" : \"none\",\n height: \"100%\",\n maxWidth: SIDE_NAV_WIDTH,\n overflowY: \"auto\",\n position: \"absolute\",\n right: 0,\n width: SIDE_NAV_WIDTH,\n zIndex: UI_SHELL_OVERLAY_Z_INDEX,\n}));\n\nconst StyledMenuLogo = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n alignItems: \"center\",\n display: \"inline-flex\",\n gap: odysseyDesignTokens.Spacing3,\n}));\n\nconst StyledLogoContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n height: TOP_NAV_HEIGHT,\n paddingBlock: odysseyDesignTokens.Spacing4,\n\n \"svg, img\": {\n maxHeight: \"100%\",\n width: \"auto\",\n maxWidth: \"100%\",\n },\n}));\n\nconst StyledPageOverlay = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n backgroundColor: hexToRgb(\n odysseyDesignTokens.HueNeutral900,\n ).asFormattedString.replace(/rgb\\((.+)\\)$/, \"rgba($1, 0.26)\"),\n gridArea: \"app-content\",\n height: \"100vh\",\n left: 0,\n position: \"absolute\",\n top: 0,\n width: \"100vw\",\n zIndex: UI_SHELL_BASE_Z_INDEX,\n}));\n\nconst StyledSideNavContainer = styled(\"div\")({\n height: \"100%\", // Without this value, side nav won't fill up the height if the content is too short.\n});\n\nconst StyledUiShellContainer = 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\"\n \"top-nav\"\n \"app-content\"\n `,\n gridTemplateColumns: \"1fr\",\n gridTemplateRows: \"auto auto 1fr\",\n height: \"100vh\",\n overflow: \"hidden\",\n width: \"100vw\",\n}));\n\nconst StyledTopNav = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" &&\n prop !== \"isContentScrolled\" &&\n prop !== \"topNavBackgroundColor\",\n})<{\n isContentScrolled?: boolean;\n odysseyDesignTokens: DesignTokens;\n topNavBackgroundColor?: UiShellColors[\"topNavBackgroundColor\"];\n}>(({ odysseyDesignTokens, isContentScrolled, topNavBackgroundColor }) => ({\n alignItems: \"stretch\",\n backgroundColor: odysseyDesignTokens.HueNeutralWhite || topNavBackgroundColor, // This logic doesn't make sense, but I wanted to leave it here for when we eventually make a decision on `topNavBackgroundColor`. --Kevin Ghadyani\n boxShadow: isContentScrolled ? odysseyDesignTokens.DepthMedium : undefined,\n clipPath: \"inset(0 0 -100vh 0)\",\n display: \"flex\",\n flexDirection: \"column\",\n gridArea: \"top-nav\",\n height: \"100%\",\n justifyContent: \"center\",\n position: \"relative\",\n transition: `box-shadow ${odysseyDesignTokens.TransitionDurationMain} ${odysseyDesignTokens.TransitionTimingMain}`,\n zIndex: UI_SHELL_BASE_Z_INDEX,\n}));\n\nconst StyledTopNavMenu = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" && prop !== \"topNavBackgroundColor\",\n})<{\n odysseyDesignTokens: DesignTokens;\n topNavBackgroundColor?: UiShellColors[\"topNavBackgroundColor\"];\n}>(({ odysseyDesignTokens, topNavBackgroundColor }) => ({\n alignItems: \"center\",\n display: \"flex\",\n gap: odysseyDesignTokens.Spacing3,\n height: \"100%\",\n justifyContent: \"space-between\",\n maxHeight: TOP_NAV_HEIGHT,\n minHeight: TOP_NAV_HEIGHT,\n paddingBlock: odysseyDesignTokens.Spacing2,\n paddingInline: odysseyDesignTokens.Spacing3,\n transition: `box-shadow ${odysseyDesignTokens.TransitionDurationMain} ${odysseyDesignTokens.TransitionTimingMain}`,\n\n ...(topNavBackgroundColor === odysseyDesignTokens.HueNeutralWhite &&\n ({\n borderBottomColor: odysseyDesignTokens.HueNeutral100,\n borderBottomStyle: odysseyDesignTokens.BorderStyleMain,\n borderBottomWidth: odysseyDesignTokens.BorderWidthMain,\n } as CSSProperties)),\n}));\n\nconst StyledTopNavSearch = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n paddingBlock: odysseyDesignTokens.Spacing2,\n paddingInline: odysseyDesignTokens.Spacing3,\n}));\n\nexport type NarrowUiShellContentProps = Pick<HtmlProps, \"testId\"> &\n Pick<UiShellNavComponentProps, \"logoProps\" | \"sideNavProps\" | \"topNavProps\"> &\n UiShellContentProps;\n\nconst NarrowUiShellContent = ({\n appElement,\n appElementScrollingMode,\n hasSideNavProps,\n hasStandardAppContentPadding = true,\n initialVisibleSections = [\"TopNav\", \"SideNav\", \"AppSwitcher\"],\n logoProps,\n onError = console.error,\n optionalComponents,\n sideNavProps,\n topNavProps,\n}: NarrowUiShellContentProps) => {\n const { t } = useTranslation();\n\n const odysseyDesignTokens = useOdysseyDesignTokens();\n const uiShellContext = useUiShellContext();\n\n const { isContentScrolled } = useScrollState(appElement);\n\n const sideNavContainerRef = useRef<HTMLDivElement>(null);\n const topNavContainerRef = useRef<HTMLDivElement>(null);\n const uiShellAppAreaRef = useRef<HTMLDivElement>(null);\n\n const [isLeftSideMenuOpen, setIsLeftSideMenuOpen] = useState(false);\n const [isRightSideMenuOpen, setIsRightSideMenuOpen] = useState(false);\n\n const closeSideMenus = useCallback(() => {\n setIsLeftSideMenuOpen(false);\n setIsRightSideMenuOpen(false);\n }, []);\n\n useEffect(() => {\n const unsubscribeFromCloseRightSideMenu =\n uiShellContext?.subscribeToCloseRightSideMenu(() => {\n closeSideMenus();\n });\n\n const unsubscribeFromSideNavItemClicked =\n uiShellContext?.subscribeToCloseSideNavMenu(() => {\n closeSideMenus();\n });\n\n return () => {\n unsubscribeFromCloseRightSideMenu?.();\n unsubscribeFromSideNavItemClicked?.();\n };\n }, [closeSideMenus, uiShellContext]);\n\n const toggleLeftSideMenu = useCallback(() => {\n setIsRightSideMenuOpen(false);\n setIsLeftSideMenuOpen((isLeftSideMenuOpen) => !isLeftSideMenuOpen);\n }, []);\n\n const toggleRightSideMenu = useCallback(() => {\n setIsLeftSideMenuOpen(false);\n setIsRightSideMenuOpen((isRightSideMenuOpen) => !isRightSideMenuOpen);\n }, []);\n\n useEffect(() => {\n const handleKeyDown = (event: KeyboardEvent) => {\n if (event.key === \"Escape\") {\n closeSideMenus();\n }\n };\n\n document.addEventListener(\"keydown\", handleKeyDown);\n\n return () => {\n document.removeEventListener(\"keydown\", handleKeyDown);\n };\n }, [closeSideMenus]);\n\n const { parentContainerRef } = useMatchAppElementToUiShellAppArea({\n appElement,\n appElementScrollingMode,\n paddingMode: hasStandardAppContentPadding ? \"compact\" : \"none\",\n uiShellAppAreaRef,\n uiShellResizableRefs: [\n sideNavContainerRef,\n topNavContainerRef,\n uiShellAppAreaRef,\n ],\n });\n\n return (\n <>\n {(isLeftSideMenuOpen || isRightSideMenuOpen) && (\n <StyledPageOverlay\n odysseyDesignTokens={odysseyDesignTokens}\n onClick={closeSideMenus}\n />\n )}\n\n <StyledUiShellContainer\n odysseyDesignTokens={odysseyDesignTokens}\n ref={parentContainerRef}\n >\n <StyledBannersContainer>\n {optionalComponents?.banners}\n </StyledBannersContainer>\n\n {(initialVisibleSections?.includes(\"TopNav\") || topNavProps) && (\n <ErrorBoundary fallback={null} onError={onError}>\n <StyledTopNav\n isContentScrolled={isContentScrolled}\n odysseyDesignTokens={odysseyDesignTokens}\n topNavBackgroundColor={uiShellContext?.topNavBackgroundColor}\n >\n <StyledTopNavMenu\n odysseyDesignTokens={odysseyDesignTokens}\n topNavBackgroundColor={uiShellContext?.sideNavBackgroundColor}\n >\n <StyledMenuLogo odysseyDesignTokens={odysseyDesignTokens}>\n {hasSideNavProps &&\n (sideNavProps?.isCollapsible ||\n !sideNavProps?.isCollapsed) && (\n <Button\n ariaLabel={t(\"topnav.sidenavmenu.toggle\")}\n onClick={toggleLeftSideMenu}\n startIcon={<HamburgerMenuIcon />}\n testId=\"sidenav-menu--icon\"\n variant=\"floating\"\n />\n )}\n\n <StyledLogoContainer\n odysseyDesignTokens={odysseyDesignTokens}\n >\n <UiShellLogo {...(sideNavProps?.logoProps || logoProps)} />\n </StyledLogoContainer>\n </StyledMenuLogo>\n\n {optionalComponents?.rightSideMenu && (\n <Button\n ariaLabel={t(\"topnav.usermenu.toggle\")}\n onClick={toggleRightSideMenu}\n startIcon={\n isRightSideMenuOpen ? <CloseIcon /> : <MoreIcon />\n }\n testId=\"userprofile-menu--icon\"\n variant=\"floating\"\n />\n )}\n </StyledTopNavMenu>\n\n {optionalComponents?.topNavLeftSide && (\n <StyledTopNavSearch odysseyDesignTokens={odysseyDesignTokens}>\n {optionalComponents?.topNavLeftSide}\n </StyledTopNavSearch>\n )}\n </StyledTopNav>\n </ErrorBoundary>\n )}\n\n <StyledAppContentArea>\n <StyledLeftSideContainer isOpen={isLeftSideMenuOpen}>\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 !hasSideNavProps && (\n <ErrorBoundary fallback={null} onError={onError}>\n <SideNav isLoading sideNavItems={emptySideNavItems} />\n </ErrorBoundary>\n )\n }\n\n {hasSideNavProps && sideNavProps && (\n <ErrorBoundary fallback={null} onError={onError}>\n <StyledSideNavContainer>\n <SideNav\n {...{\n ...{\n ...sideNavProps,\n // This hides the side nav logo or app name from showing up as we already have one in the narrow top nav.\n appName: undefined,\n logoProps: undefined,\n },\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 isCollapsed={false}\n isCollapsible={false}\n isObtrusive\n onCollapse={closeSideMenus}\n />\n </StyledSideNavContainer>\n </ErrorBoundary>\n )}\n </StyledLeftSideContainer>\n\n <StyledRightSideContainer\n isOpen={isRightSideMenuOpen}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n <StyledSideNavContainer>\n {optionalComponents?.rightSideMenu}\n </StyledSideNavContainer>\n </StyledRightSideContainer>\n\n <StyledAppContainer\n appBackgroundColor={uiShellContext?.appBackgroundColor}\n ref={uiShellAppAreaRef}\n tabIndex={0}\n >\n <InnerAppContainer isContentScrolled={isContentScrolled} />\n </StyledAppContainer>\n </StyledAppContentArea>\n </StyledUiShellContainer>\n </>\n );\n};\n\nconst MemoizedNarrowUiShellContent = memo(NarrowUiShellContent);\nMemoizedNarrowUiShellContent.displayName = \"NarrowUiShellContent\";\n\nexport { MemoizedNarrowUiShellContent as NarrowUiShellContent };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"NarrowUiShellContent.cjs","names":["_styled","_interopRequireDefault","require","_react","_reactErrorBoundary","_Button","_hexToRgb","_i18n","_Close","_More","_OdysseyDesignTokensContext","_InnerAppContainer","_SideNav","_SkipToContent","_HamburgerMenuIcon","_UiShellLogo","_UiShellProvider","_uiShellSharedConstants","_useMatchAppElementToUiShellAppArea","_useScrollState","_jsxRuntime","e","__esModule","default","StyledAppContentArea","styled","gridArea","position","height","width","StyledAppContainer","shouldForwardProp","prop","appBackgroundColor","backgroundColor","overflow","StyledBannersContainer","zIndex","UI_SHELL_BASE_Z_INDEX","StyledLeftSideContainer","isOpen","display","UI_SHELL_OVERLAY_Z_INDEX","StyledRightSideContainer","odysseyDesignTokens","HueNeutralWhite","maxWidth","SIDE_NAV_WIDTH","overflowY","right","StyledMenuLogo","alignItems","gap","Spacing3","StyledLogoContainer","TOP_NAV_HEIGHT","paddingBlock","Spacing4","maxHeight","StyledPageOverlay","hexToRgb","HueNeutral900","asFormattedString","replace","left","top","StyledSideNavContainer","StyledUiShellContainer","HueNeutral50","gridGap","gridTemplateAreas","gridTemplateColumns","gridTemplateRows","StyledTopNav","isContentScrolled","topNavBackgroundColor","boxShadow","DepthMedium","undefined","clipPath","flexDirection","justifyContent","transition","TransitionDurationMain","TransitionTimingMain","StyledTopNavMenu","minHeight","Spacing2","paddingInline","borderBottomColor","HueNeutral100","borderBottomStyle","BorderStyleMain","borderBottomWidth","BorderWidthMain","StyledTopNavSearch","NarrowUiShellContent","appElement","appElementScrollingMode","hasSideNavProps","hasStandardAppContentPadding","initialVisibleSections","logoProps","onError","console","error","optionalComponents","sideNavProps","topNavProps","t","useTranslation","useOdysseyDesignTokens","uiShellContext","useUiShellContext","useScrollState","sideNavContainerRef","useRef","topNavContainerRef","uiShellAppAreaRef","isLeftSideMenuOpen","setIsLeftSideMenuOpen","useState","isRightSideMenuOpen","setIsRightSideMenuOpen","closeSideMenus","useCallback","useEffect","unsubscribeFromCloseRightSideMenu","subscribeToCloseRightSideMenu","unsubscribeFromSideNavItemClicked","subscribeToCloseSideNavMenu","toggleLeftSideMenu","toggleRightSideMenu","handleKeyDown","event","key","document","addEventListener","removeEventListener","parentContainerRef","useMatchAppElementToUiShellAppArea","paddingMode","uiShellResizableRefs","jsxs","Fragment","children","jsx","onClick","ref","SkipToContent","banners","includes","ErrorBoundary","fallback","sideNavBackgroundColor","isCollapsible","isCollapsed","Button","ariaLabel","startIcon","HamburgerMenuIcon","testId","variant","UiShellLogo","rightSideMenu","CloseIcon","MoreIcon","topNavLeftSide","SideNav","isLoading","sideNavItems","emptySideNavItems","appName","hasCustomFooter","sideNavFooter","footerComponent","footerItems","isObtrusive","onCollapse","tabIndex","InnerAppContainer","MemoizedNarrowUiShellContent","exports","memo","displayName"],"sources":["../../../src/ui-shell/NarrowUiShellContent.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-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 useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport { ErrorBoundary } from \"react-error-boundary\";\n\nimport type { HtmlProps } from \"../HtmlProps.js\";\n\nimport { Button } from \"../Buttons/Button.js\";\nimport { hexToRgb } from \"../hexToRgb.js\";\nimport { useTranslation } from \"../i18n.generated/i18n.js\";\nimport { CloseIcon } from \"../icons.generated/Close.js\";\nimport { MoreIcon } from \"../icons.generated/More.js\";\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"../OdysseyDesignTokensContext.js\";\nimport { InnerAppContainer } from \"./InnerAppContainer.js\";\nimport { SideNav } from \"./SideNav/SideNav.js\";\nimport { SkipToContent } from \"./SkipToContent.js\";\nimport { HamburgerMenuIcon } from \"./TopNav/HamburgerMenuIcon.js\";\nimport {\n UiShellContentProps,\n UiShellNavComponentProps,\n} from \"./uiShellContentTypes.js\";\nimport { UiShellLogo } from \"./UiShellLogo.js\";\nimport { UiShellColors, useUiShellContext } from \"./UiShellProvider.js\";\nimport {\n emptySideNavItems,\n SIDE_NAV_WIDTH,\n TOP_NAV_HEIGHT,\n UI_SHELL_BASE_Z_INDEX,\n UI_SHELL_OVERLAY_Z_INDEX,\n} from \"./uiShellSharedConstants.js\";\nimport { useMatchAppElementToUiShellAppArea } from \"./useMatchAppElementToUiShellAppArea.js\";\nimport { useScrollState } from \"./useScrollState.js\";\n\nconst StyledAppContentArea = styled(\"div\")({\n gridArea: \"app-content\",\n position: \"relative\",\n height: \"100%\",\n width: \"100%\",\n});\n\nconst StyledAppContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"appBackgroundColor\" && prop !== \"odysseyDesignTokens\",\n})<{\n appBackgroundColor?: UiShellColors[\"appBackgroundColor\"];\n}>(({ appBackgroundColor }) => ({\n backgroundColor: appBackgroundColor,\n height: \"100%\",\n overflow: \"hidden\",\n width: \"100%\",\n}));\n\nconst StyledBannersContainer = styled(\"div\")({\n gridArea: \"banners\",\n zIndex: UI_SHELL_BASE_Z_INDEX,\n});\n\nconst StyledLeftSideContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"isOpen\",\n})<{\n isOpen: boolean;\n}>(({ isOpen }) => ({\n display: isOpen ? \"block\" : \"none\",\n height: \"100%\",\n position: \"absolute\",\n zIndex: UI_SHELL_OVERLAY_Z_INDEX,\n}));\n\nconst StyledRightSideContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"isOpen\" && prop !== \"odysseyDesignTokens\",\n})<{\n isOpen: boolean;\n odysseyDesignTokens: DesignTokens;\n}>(({ isOpen, odysseyDesignTokens }) => ({\n backgroundColor: odysseyDesignTokens.HueNeutralWhite,\n display: isOpen ? \"block\" : \"none\",\n height: \"100%\",\n maxWidth: SIDE_NAV_WIDTH,\n overflowY: \"auto\",\n position: \"absolute\",\n right: 0,\n width: SIDE_NAV_WIDTH,\n zIndex: UI_SHELL_OVERLAY_Z_INDEX,\n}));\n\nconst StyledMenuLogo = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n alignItems: \"center\",\n display: \"inline-flex\",\n gap: odysseyDesignTokens.Spacing3,\n}));\n\nconst StyledLogoContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n height: TOP_NAV_HEIGHT,\n paddingBlock: odysseyDesignTokens.Spacing4,\n\n \"svg, img\": {\n maxHeight: \"100%\",\n width: \"auto\",\n maxWidth: \"100%\",\n },\n}));\n\nconst StyledPageOverlay = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n backgroundColor: hexToRgb(\n odysseyDesignTokens.HueNeutral900,\n ).asFormattedString.replace(/rgb\\((.+)\\)$/, \"rgba($1, 0.26)\"),\n gridArea: \"app-content\",\n height: \"100vh\",\n left: 0,\n position: \"absolute\",\n top: 0,\n width: \"100vw\",\n zIndex: UI_SHELL_BASE_Z_INDEX,\n}));\n\nconst StyledSideNavContainer = styled(\"div\")({\n height: \"100%\", // Without this value, side nav won't fill up the height if the content is too short.\n});\n\nconst StyledUiShellContainer = 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\"\n \"top-nav\"\n \"app-content\"\n `,\n gridTemplateColumns: \"1fr\",\n gridTemplateRows: \"auto auto 1fr\",\n height: \"100vh\",\n overflow: \"hidden\",\n width: \"100vw\",\n}));\n\nconst StyledTopNav = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" &&\n prop !== \"isContentScrolled\" &&\n prop !== \"topNavBackgroundColor\",\n})<{\n isContentScrolled?: boolean;\n odysseyDesignTokens: DesignTokens;\n topNavBackgroundColor?: UiShellColors[\"topNavBackgroundColor\"];\n}>(({ odysseyDesignTokens, isContentScrolled, topNavBackgroundColor }) => ({\n alignItems: \"stretch\",\n backgroundColor: odysseyDesignTokens.HueNeutralWhite || topNavBackgroundColor, // This logic doesn't make sense, but I wanted to leave it here for when we eventually make a decision on `topNavBackgroundColor`. --Kevin Ghadyani\n boxShadow: isContentScrolled ? odysseyDesignTokens.DepthMedium : undefined,\n clipPath: \"inset(0 0 -100vh 0)\",\n display: \"flex\",\n flexDirection: \"column\",\n gridArea: \"top-nav\",\n height: \"100%\",\n justifyContent: \"center\",\n position: \"relative\",\n transition: `box-shadow ${odysseyDesignTokens.TransitionDurationMain} ${odysseyDesignTokens.TransitionTimingMain}`,\n zIndex: UI_SHELL_BASE_Z_INDEX,\n}));\n\nconst StyledTopNavMenu = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" && prop !== \"topNavBackgroundColor\",\n})<{\n odysseyDesignTokens: DesignTokens;\n topNavBackgroundColor?: UiShellColors[\"topNavBackgroundColor\"];\n}>(({ odysseyDesignTokens, topNavBackgroundColor }) => ({\n alignItems: \"center\",\n display: \"flex\",\n gap: odysseyDesignTokens.Spacing3,\n height: \"100%\",\n justifyContent: \"space-between\",\n maxHeight: TOP_NAV_HEIGHT,\n minHeight: TOP_NAV_HEIGHT,\n paddingBlock: odysseyDesignTokens.Spacing2,\n paddingInline: odysseyDesignTokens.Spacing3,\n transition: `box-shadow ${odysseyDesignTokens.TransitionDurationMain} ${odysseyDesignTokens.TransitionTimingMain}`,\n\n ...(topNavBackgroundColor === odysseyDesignTokens.HueNeutralWhite &&\n ({\n borderBottomColor: odysseyDesignTokens.HueNeutral100,\n borderBottomStyle: odysseyDesignTokens.BorderStyleMain,\n borderBottomWidth: odysseyDesignTokens.BorderWidthMain,\n } as CSSProperties)),\n}));\n\nconst StyledTopNavSearch = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n paddingBlock: odysseyDesignTokens.Spacing2,\n paddingInline: odysseyDesignTokens.Spacing3,\n}));\n\nexport type NarrowUiShellContentProps = Pick<HtmlProps, \"testId\"> &\n Pick<UiShellNavComponentProps, \"logoProps\" | \"sideNavProps\" | \"topNavProps\"> &\n UiShellContentProps;\n\nconst NarrowUiShellContent = ({\n appElement,\n appElementScrollingMode,\n hasSideNavProps,\n hasStandardAppContentPadding = true,\n initialVisibleSections = [\"TopNav\", \"SideNav\", \"AppSwitcher\"],\n logoProps,\n onError = console.error,\n optionalComponents,\n sideNavProps,\n topNavProps,\n}: NarrowUiShellContentProps) => {\n const { t } = useTranslation();\n\n const odysseyDesignTokens = useOdysseyDesignTokens();\n const uiShellContext = useUiShellContext();\n\n const { isContentScrolled } = useScrollState(appElement);\n\n const sideNavContainerRef = useRef<HTMLDivElement>(null);\n const topNavContainerRef = useRef<HTMLDivElement>(null);\n const uiShellAppAreaRef = useRef<HTMLDivElement>(null);\n\n const [isLeftSideMenuOpen, setIsLeftSideMenuOpen] = useState(false);\n const [isRightSideMenuOpen, setIsRightSideMenuOpen] = useState(false);\n\n const closeSideMenus = useCallback(() => {\n setIsLeftSideMenuOpen(false);\n setIsRightSideMenuOpen(false);\n }, []);\n\n useEffect(() => {\n const unsubscribeFromCloseRightSideMenu =\n uiShellContext?.subscribeToCloseRightSideMenu(() => {\n closeSideMenus();\n });\n\n const unsubscribeFromSideNavItemClicked =\n uiShellContext?.subscribeToCloseSideNavMenu(() => {\n closeSideMenus();\n });\n\n return () => {\n unsubscribeFromCloseRightSideMenu?.();\n unsubscribeFromSideNavItemClicked?.();\n };\n }, [closeSideMenus, uiShellContext]);\n\n const toggleLeftSideMenu = useCallback(() => {\n setIsRightSideMenuOpen(false);\n setIsLeftSideMenuOpen((isLeftSideMenuOpen) => !isLeftSideMenuOpen);\n }, []);\n\n const toggleRightSideMenu = useCallback(() => {\n setIsLeftSideMenuOpen(false);\n setIsRightSideMenuOpen((isRightSideMenuOpen) => !isRightSideMenuOpen);\n }, []);\n\n useEffect(() => {\n const handleKeyDown = (event: KeyboardEvent) => {\n if (event.key === \"Escape\") {\n closeSideMenus();\n }\n };\n\n document.addEventListener(\"keydown\", handleKeyDown);\n\n return () => {\n document.removeEventListener(\"keydown\", handleKeyDown);\n };\n }, [closeSideMenus]);\n\n const { parentContainerRef } = useMatchAppElementToUiShellAppArea({\n appElement,\n appElementScrollingMode,\n paddingMode: hasStandardAppContentPadding ? \"compact\" : \"none\",\n uiShellAppAreaRef,\n uiShellResizableRefs: [\n sideNavContainerRef,\n topNavContainerRef,\n uiShellAppAreaRef,\n ],\n });\n\n return (\n <>\n {(isLeftSideMenuOpen || isRightSideMenuOpen) && (\n <StyledPageOverlay\n odysseyDesignTokens={odysseyDesignTokens}\n onClick={closeSideMenus}\n />\n )}\n\n <StyledUiShellContainer\n odysseyDesignTokens={odysseyDesignTokens}\n ref={parentContainerRef}\n >\n <SkipToContent appElement={appElement} />\n\n <StyledBannersContainer>\n {optionalComponents?.banners}\n </StyledBannersContainer>\n\n {(initialVisibleSections?.includes(\"TopNav\") || topNavProps) && (\n <ErrorBoundary fallback={null} onError={onError}>\n <StyledTopNav\n isContentScrolled={isContentScrolled}\n odysseyDesignTokens={odysseyDesignTokens}\n topNavBackgroundColor={uiShellContext?.topNavBackgroundColor}\n >\n <StyledTopNavMenu\n odysseyDesignTokens={odysseyDesignTokens}\n topNavBackgroundColor={uiShellContext?.sideNavBackgroundColor}\n >\n <StyledMenuLogo odysseyDesignTokens={odysseyDesignTokens}>\n {hasSideNavProps &&\n (sideNavProps?.isCollapsible ||\n !sideNavProps?.isCollapsed) && (\n <Button\n ariaLabel={t(\"topnav.sidenavmenu.toggle\")}\n onClick={toggleLeftSideMenu}\n startIcon={<HamburgerMenuIcon />}\n testId=\"sidenav-menu--icon\"\n variant=\"floating\"\n />\n )}\n\n <StyledLogoContainer\n odysseyDesignTokens={odysseyDesignTokens}\n >\n <UiShellLogo {...(sideNavProps?.logoProps || logoProps)} />\n </StyledLogoContainer>\n </StyledMenuLogo>\n\n {optionalComponents?.rightSideMenu && (\n <Button\n ariaLabel={t(\"topnav.usermenu.toggle\")}\n onClick={toggleRightSideMenu}\n startIcon={\n isRightSideMenuOpen ? <CloseIcon /> : <MoreIcon />\n }\n testId=\"userprofile-menu--icon\"\n variant=\"floating\"\n />\n )}\n </StyledTopNavMenu>\n\n {optionalComponents?.topNavLeftSide && (\n <StyledTopNavSearch odysseyDesignTokens={odysseyDesignTokens}>\n {optionalComponents?.topNavLeftSide}\n </StyledTopNavSearch>\n )}\n </StyledTopNav>\n </ErrorBoundary>\n )}\n\n <StyledAppContentArea>\n <StyledLeftSideContainer isOpen={isLeftSideMenuOpen}>\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 !hasSideNavProps && (\n <ErrorBoundary fallback={null} onError={onError}>\n <SideNav isLoading sideNavItems={emptySideNavItems} />\n </ErrorBoundary>\n )\n }\n\n {hasSideNavProps && sideNavProps && (\n <ErrorBoundary fallback={null} onError={onError}>\n <StyledSideNavContainer>\n <SideNav\n {...{\n ...{\n ...sideNavProps,\n // This hides the side nav logo or app name from showing up as we already have one in the narrow top nav.\n appName: undefined,\n logoProps: undefined,\n },\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 isCollapsed={false}\n isCollapsible={false}\n isObtrusive\n onCollapse={closeSideMenus}\n />\n </StyledSideNavContainer>\n </ErrorBoundary>\n )}\n </StyledLeftSideContainer>\n\n <StyledRightSideContainer\n isOpen={isRightSideMenuOpen}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n <StyledSideNavContainer>\n {optionalComponents?.rightSideMenu}\n </StyledSideNavContainer>\n </StyledRightSideContainer>\n\n <StyledAppContainer\n appBackgroundColor={uiShellContext?.appBackgroundColor}\n ref={uiShellAppAreaRef}\n tabIndex={0}\n >\n <InnerAppContainer isContentScrolled={isContentScrolled} />\n </StyledAppContainer>\n </StyledAppContentArea>\n </StyledUiShellContainer>\n </>\n );\n};\n\nconst MemoizedNarrowUiShellContent = memo(NarrowUiShellContent);\nMemoizedNarrowUiShellContent.displayName = \"NarrowUiShellContent\";\n\nexport { MemoizedNarrowUiShellContent as NarrowUiShellContent };\n"],"mappings":"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","ignoreList":[]}
@@ -170,5 +170,5 @@ const NavAccordion = ({
170
170
  });
171
171
  };
172
172
  const MemoizedNavAccordion = exports.NavAccordion = (0, _react.memo)(NavAccordion);
173
- MemoizedNavAccordion.displayName = "NavAccordion::pkg=odyssey&odysseyV=1.58.0";
173
+ MemoizedNavAccordion.displayName = "NavAccordion::pkg=odyssey&odysseyV=1.59.0";
174
174
  //# sourceMappingURL=NavAccordion.cjs.map
@@ -643,5 +643,5 @@ const SideNav = ({
643
643
  });
644
644
  };
645
645
  const MemoizedSideNav = exports.SideNav = (0, _react.memo)(SideNav);
646
- MemoizedSideNav.displayName = "SideNav::pkg=odyssey&odysseyV=1.58.0";
646
+ MemoizedSideNav.displayName = "SideNav::pkg=odyssey&odysseyV=1.59.0";
647
647
  //# sourceMappingURL=SideNav.cjs.map
@@ -69,5 +69,5 @@ const SideNavFooterContent = ({
69
69
  });
70
70
  };
71
71
  const MemoizedSideNavFooterContent = exports.SideNavFooterContent = (0, _react.memo)(SideNavFooterContent);
72
- MemoizedSideNavFooterContent.displayName = "SideNavFooterContent::pkg=odyssey&odysseyV=1.58.0";
72
+ MemoizedSideNavFooterContent.displayName = "SideNavFooterContent::pkg=odyssey&odysseyV=1.59.0";
73
73
  //# sourceMappingURL=SideNavFooterContent.cjs.map
@@ -100,5 +100,5 @@ const SideNavHeader = ({
100
100
  });
101
101
  };
102
102
  const MemoizedSideNavHeader = exports.SideNavHeader = (0, _react.memo)(SideNavHeader);
103
- MemoizedSideNavHeader.displayName = "SideNavHeader::pkg=odyssey&odysseyV=1.58.0";
103
+ MemoizedSideNavHeader.displayName = "SideNavHeader::pkg=odyssey&odysseyV=1.59.0";
104
104
  //# sourceMappingURL=SideNavHeader.cjs.map
@@ -286,5 +286,5 @@ const SideNavItemContent = ({
286
286
  }, id);
287
287
  };
288
288
  const MemoizedSideNavItemContent = exports.SideNavItemContent = (0, _react.memo)(SideNavItemContent);
289
- MemoizedSideNavItemContent.displayName = "SideNavItemContent::pkg=odyssey&odysseyV=1.58.0";
289
+ MemoizedSideNavItemContent.displayName = "SideNavItemContent::pkg=odyssey&odysseyV=1.59.0";
290
290
  //# sourceMappingURL=SideNavItemContent.cjs.map
@@ -74,5 +74,5 @@ const SideNavItemLinkContent = ({
74
74
  });
75
75
  };
76
76
  const MemoizedSideNavItemLinkContent = exports.SideNavItemLinkContent = (0, _react.memo)(SideNavItemLinkContent);
77
- MemoizedSideNavItemLinkContent.displayName = "SideNavItemLinkContent::pkg=odyssey&odysseyV=1.58.0";
77
+ MemoizedSideNavItemLinkContent.displayName = "SideNavItemLinkContent::pkg=odyssey&odysseyV=1.59.0";
78
78
  //# sourceMappingURL=SideNavItemLinkContent.cjs.map
@@ -43,5 +43,5 @@ const SideNavSortableList = ({
43
43
  });
44
44
  };
45
45
  const MemoizedSideNavSortableList = exports.SideNavSortableList = (0, _react.memo)(SideNavSortableList);
46
- MemoizedSideNavSortableList.displayName = "SideNavSortableList::pkg=odyssey&odysseyV=1.58.0";
46
+ MemoizedSideNavSortableList.displayName = "SideNavSortableList::pkg=odyssey&odysseyV=1.59.0";
47
47
  //# sourceMappingURL=SideNavSortableList.cjs.map
@@ -87,7 +87,7 @@ const StyledChevronRightIcon = (0, _styled.default)(_ChevronRight.ChevronRightIc
87
87
  transitionProperty: "transform",
88
88
  transitionTimingFunction: "ease-in-out"
89
89
  }));
90
- StyledChevronRightIcon.displayName = "StyledChevronRightIcon::pkg=odyssey&odysseyV=1.58.0";
90
+ StyledChevronRightIcon.displayName = "StyledChevronRightIcon::pkg=odyssey&odysseyV=1.59.0";
91
91
  const defaultLocalButton = typeof window === "undefined" ? null : document.createElement("button");
92
92
  const SideNavToggleButton = ({
93
93
  ariaControls,
@@ -162,5 +162,5 @@ const SideNavToggleButton = ({
162
162
  });
163
163
  };
164
164
  const MemoizedSideNavToggleButton = exports.SideNavToggleButton = (0, _react.memo)(SideNavToggleButton);
165
- MemoizedSideNavToggleButton.displayName = "SideNavToggleButton::pkg=odyssey&odysseyV=1.58.0";
165
+ MemoizedSideNavToggleButton.displayName = "SideNavToggleButton::pkg=odyssey&odysseyV=1.59.0";
166
166
  //# sourceMappingURL=SideNavToggleButton.cjs.map
@@ -0,0 +1,124 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.SkipToContent = void 0;
7
+ var _styled = _interopRequireDefault(require("@emotion/styled"));
8
+ var _react = require("react");
9
+ var _BaseButton = require("../Buttons/BaseButton.cjs");
10
+ var _i18n = require("../i18n.generated/i18n.cjs");
11
+ var _OdysseyDesignTokensContext = require("../OdysseyDesignTokensContext.cjs");
12
+ var _uiShellSharedConstants = require("./uiShellSharedConstants.cjs");
13
+ var _jsxRuntime = require("react/jsx-runtime");
14
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
15
+ /*!
16
+ * Copyright (c) 2026-present, Okta, Inc. and/or its affiliates. All rights reserved.
17
+ * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.")
18
+ *
19
+ * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
20
+ * Unless required by applicable law or agreed to in writing, software
21
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
22
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
23
+ *
24
+ * See the License for the specific language governing permissions and limitations under the License.
25
+ */
26
+
27
+ const StyledContainer = (0, _styled.default)("div", {
28
+ shouldForwardProp: prop => prop !== "odysseyDesignTokens"
29
+ })(({
30
+ odysseyDesignTokens
31
+ }) => ({
32
+ left: odysseyDesignTokens.Spacing4,
33
+ position: "fixed",
34
+ top: odysseyDesignTokens.Spacing3,
35
+ zIndex: _uiShellSharedConstants.SKIP_LINKS_Z_INDEX,
36
+ "&:not(:focus-within)": {
37
+ clip: "rect(0 0 0 0)",
38
+ clipPath: "inset(50%)",
39
+ height: "1px",
40
+ overflow: "hidden",
41
+ pointerEvents: "none",
42
+ whiteSpace: "nowrap",
43
+ width: "1px"
44
+ }
45
+ }));
46
+ const SkipToContent = ({
47
+ appElement
48
+ }) => {
49
+ const odysseyDesignTokens = (0, _OdysseyDesignTokensContext.useOdysseyDesignTokens)();
50
+ const {
51
+ t
52
+ } = (0, _i18n.useTranslation)();
53
+ const containerRef = (0, _react.useRef)(null);
54
+ const buttonRef = (0, _react.useRef)(null);
55
+ const interceptedFromRef = (0, _react.useRef)(null);
56
+ (0, _react.useEffect)(() => {
57
+ if (appElement) {
58
+ const hasTabIndex = appElement.hasAttribute("tabindex");
59
+ const hasOutlineStyle = appElement.style.getPropertyValue("outline") !== "";
60
+ if (!hasTabIndex) {
61
+ appElement.setAttribute("tabindex", "-1");
62
+ }
63
+ if (!hasOutlineStyle) {
64
+ appElement.style.setProperty("outline", "none");
65
+ }
66
+ return () => {
67
+ if (!hasTabIndex) {
68
+ appElement.removeAttribute("tabindex");
69
+ }
70
+ if (!hasOutlineStyle) {
71
+ appElement.style.removeProperty("outline");
72
+ }
73
+ };
74
+ }
75
+ return;
76
+ }, [appElement]);
77
+ (0, _react.useEffect)(() => {
78
+ const stopInterceptor = () => {
79
+ document.removeEventListener("keydown", handleKeyDown);
80
+ document.removeEventListener("pointerdown", stopInterceptor);
81
+ };
82
+ const handleKeyDown = keyboardEvent => {
83
+ if (keyboardEvent.key === "Tab" && !keyboardEvent.shiftKey && !containerRef.current?.contains(document.activeElement)) {
84
+ interceptedFromRef.current = document.activeElement;
85
+ keyboardEvent.preventDefault();
86
+ stopInterceptor();
87
+ requestAnimationFrame(() => {
88
+ buttonRef.current?.focus();
89
+ });
90
+ }
91
+ };
92
+ document.addEventListener("keydown", handleKeyDown);
93
+ document.addEventListener("pointerdown", stopInterceptor);
94
+ return stopInterceptor;
95
+ }, []);
96
+ (0, _react.useEffect)(() => {
97
+ const resumeFromInterceptedPosition = keyboardEvent => {
98
+ if (interceptedFromRef.current && keyboardEvent.key === "Tab" && !keyboardEvent.shiftKey && containerRef.current?.contains(document.activeElement)) {
99
+ interceptedFromRef.current.focus();
100
+ interceptedFromRef.current = null;
101
+ }
102
+ };
103
+ document.addEventListener("keydown", resumeFromInterceptedPosition);
104
+ return () => {
105
+ document.removeEventListener("keydown", resumeFromInterceptedPosition);
106
+ };
107
+ }, []);
108
+ const focusMainContent = (0, _react.useCallback)(() => {
109
+ appElement?.focus();
110
+ }, [appElement]);
111
+ return (0, _jsxRuntime.jsx)(StyledContainer, {
112
+ odysseyDesignTokens: odysseyDesignTokens,
113
+ ref: containerRef,
114
+ children: (0, _jsxRuntime.jsx)(_BaseButton.BaseButton, {
115
+ buttonRef: buttonRef,
116
+ label: t("skiplinks.main"),
117
+ onClick: focusMainContent,
118
+ variant: "primary"
119
+ })
120
+ });
121
+ };
122
+ const MemoizedSkipToContent = exports.SkipToContent = (0, _react.memo)(SkipToContent);
123
+ MemoizedSkipToContent.displayName = "SkipToContent::pkg=odyssey&odysseyV=1.59.0";
124
+ //# sourceMappingURL=SkipToContent.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SkipToContent.cjs","names":["_styled","_interopRequireDefault","require","_react","_BaseButton","_i18n","_OdysseyDesignTokensContext","_uiShellSharedConstants","_jsxRuntime","e","__esModule","default","StyledContainer","styled","shouldForwardProp","prop","odysseyDesignTokens","left","Spacing4","position","top","Spacing3","zIndex","SKIP_LINKS_Z_INDEX","clip","clipPath","height","overflow","pointerEvents","whiteSpace","width","SkipToContent","appElement","useOdysseyDesignTokens","t","useTranslation","containerRef","useRef","buttonRef","interceptedFromRef","useEffect","hasTabIndex","hasAttribute","hasOutlineStyle","style","getPropertyValue","setAttribute","setProperty","removeAttribute","removeProperty","stopInterceptor","document","removeEventListener","handleKeyDown","keyboardEvent","key","shiftKey","current","contains","activeElement","preventDefault","requestAnimationFrame","focus","addEventListener","resumeFromInterceptedPosition","focusMainContent","useCallback","jsx","ref","children","BaseButton","label","onClick","variant","MemoizedSkipToContent","exports","memo","displayName"],"sources":["../../../src/ui-shell/SkipToContent.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2026-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 { memo, useCallback, useEffect, useRef } from \"react\";\n\nimport { BaseButton } from \"../Buttons/BaseButton.js\";\nimport { useTranslation } from \"../i18n.generated/i18n.js\";\nimport { FocusHandle } from \"../inputUtils.js\";\nimport {\n type DesignTokens,\n useOdysseyDesignTokens,\n} from \"../OdysseyDesignTokensContext.js\";\nimport { SKIP_LINKS_Z_INDEX } from \"./uiShellSharedConstants.js\";\n\nconst StyledContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{ odysseyDesignTokens: DesignTokens }>(({ odysseyDesignTokens }) => ({\n left: odysseyDesignTokens.Spacing4,\n position: \"fixed\",\n top: odysseyDesignTokens.Spacing3,\n zIndex: SKIP_LINKS_Z_INDEX,\n // Visually hidden when not focused — the \"sr-only\" pattern.\n // https://www.a11yproject.com/posts/how-to-hide-content/\n //\n // We found this method via the A11y Project. It fixes axe color-contrast\n // violations that `opacity: 0` triggers (axe still evaluates contrast on\n // opacity-0 elements because they occupy space in the layout). The sr-only\n // pattern collapses the element to 1×1 px and clips it, which axe — and\n // every modern screen reader — treats as fully hidden. Unlike a large\n // negative `left` offset, it also avoids any risk of a phantom scrollbar.\n \"&:not(:focus-within)\": {\n clip: \"rect(0 0 0 0)\",\n clipPath: \"inset(50%)\",\n height: \"1px\",\n overflow: \"hidden\",\n pointerEvents: \"none\",\n whiteSpace: \"nowrap\",\n width: \"1px\",\n },\n}));\n\ntype SkipToContentProps = {\n appElement: HTMLDivElement | null;\n};\n\nconst SkipToContent = ({ appElement }: SkipToContentProps) => {\n const odysseyDesignTokens = useOdysseyDesignTokens();\n const { t } = useTranslation();\n\n const containerRef = useRef<HTMLDivElement>(null);\n const buttonRef = useRef<FocusHandle>(null);\n const interceptedFromRef = useRef<HTMLElement | null>(null);\n\n useEffect(() => {\n if (appElement) {\n const hasTabIndex = appElement.hasAttribute(\"tabindex\");\n const hasOutlineStyle =\n appElement.style.getPropertyValue(\"outline\") !== \"\";\n\n if (!hasTabIndex) {\n appElement.setAttribute(\"tabindex\", \"-1\");\n }\n if (!hasOutlineStyle) {\n appElement.style.setProperty(\"outline\", \"none\");\n }\n\n return () => {\n if (!hasTabIndex) {\n appElement.removeAttribute(\"tabindex\");\n }\n if (!hasOutlineStyle) {\n appElement.style.removeProperty(\"outline\");\n }\n };\n }\n\n return;\n }, [appElement]);\n\n useEffect(() => {\n const stopInterceptor = () => {\n document.removeEventListener(\"keydown\", handleKeyDown);\n document.removeEventListener(\"pointerdown\", stopInterceptor);\n };\n\n const handleKeyDown = (keyboardEvent: globalThis.KeyboardEvent) => {\n if (\n keyboardEvent.key === \"Tab\" &&\n !keyboardEvent.shiftKey &&\n !containerRef.current?.contains(document.activeElement)\n ) {\n interceptedFromRef.current = document.activeElement as HTMLElement;\n keyboardEvent.preventDefault();\n stopInterceptor();\n\n requestAnimationFrame(() => {\n buttonRef.current?.focus();\n });\n }\n };\n\n document.addEventListener(\"keydown\", handleKeyDown);\n document.addEventListener(\"pointerdown\", stopInterceptor);\n\n return stopInterceptor;\n }, []);\n\n useEffect(() => {\n const resumeFromInterceptedPosition = (\n keyboardEvent: globalThis.KeyboardEvent,\n ) => {\n if (\n interceptedFromRef.current &&\n keyboardEvent.key === \"Tab\" &&\n !keyboardEvent.shiftKey &&\n containerRef.current?.contains(document.activeElement)\n ) {\n interceptedFromRef.current.focus();\n interceptedFromRef.current = null;\n }\n };\n\n document.addEventListener(\"keydown\", resumeFromInterceptedPosition);\n\n return () => {\n document.removeEventListener(\"keydown\", resumeFromInterceptedPosition);\n };\n }, []);\n\n const focusMainContent = useCallback(() => {\n appElement?.focus();\n }, [appElement]);\n\n return (\n <StyledContainer\n odysseyDesignTokens={odysseyDesignTokens}\n ref={containerRef}\n >\n <BaseButton\n buttonRef={buttonRef}\n label={t(\"skiplinks.main\")}\n onClick={focusMainContent}\n variant=\"primary\"\n />\n </StyledContainer>\n );\n};\n\nconst MemoizedSkipToContent = memo(SkipToContent);\nMemoizedSkipToContent.displayName = \"SkipToContent\";\n\nexport { MemoizedSkipToContent as SkipToContent };\n"],"mappings":"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","ignoreList":[]}
@@ -33,5 +33,5 @@ var _jsxRuntime = require("react/jsx-runtime");
33
33
  });
34
34
  });
35
35
  const MemoizedHamburgerMenuIcon = exports.HamburgerMenuIcon = (0, _react.memo)(HamburgerMenuIcon);
36
- MemoizedHamburgerMenuIcon.displayName = "HamburgerMenuIcon::pkg=odyssey&odysseyV=1.58.0";
36
+ MemoizedHamburgerMenuIcon.displayName = "HamburgerMenuIcon::pkg=odyssey&odysseyV=1.59.0";
37
37
  //# sourceMappingURL=HamburgerMenuIcon.cjs.map
@@ -69,5 +69,5 @@ const TopNav = ({
69
69
  });
70
70
  };
71
71
  const MemoizedTopNav = exports.TopNav = (0, _react.memo)(TopNav);
72
- MemoizedTopNav.displayName = "TopNav::pkg=odyssey&odysseyV=1.58.0";
72
+ MemoizedTopNav.displayName = "TopNav::pkg=odyssey&odysseyV=1.59.0";
73
73
  //# sourceMappingURL=TopNav.cjs.map
@@ -39,5 +39,5 @@ const TopNavLinksList = ({
39
39
  })
40
40
  });
41
41
  const MemoizedTopNavLinksList = exports.TopNavLinksList = (0, _react.memo)(TopNavLinksList);
42
- MemoizedTopNavLinksList.displayName = "TopNavLinksList::pkg=odyssey&odysseyV=1.58.0";
42
+ MemoizedTopNavLinksList.displayName = "TopNavLinksList::pkg=odyssey&odysseyV=1.59.0";
43
43
  //# sourceMappingURL=TopNavLinksList.cjs.map
@@ -133,5 +133,5 @@ const TopNavListItem = ({
133
133
  });
134
134
  };
135
135
  const MemoizedTopNavListItem = exports.TopNavListItem = (0, _react.memo)(TopNavListItem);
136
- MemoizedTopNavListItem.displayName = "TopNavListItem::pkg=odyssey&odysseyV=1.58.0";
136
+ MemoizedTopNavListItem.displayName = "TopNavListItem::pkg=odyssey&odysseyV=1.59.0";
137
137
  //# sourceMappingURL=TopNavListItem.cjs.map
@@ -120,5 +120,5 @@ const UiShell = ({
120
120
  });
121
121
  };
122
122
  const MemoizedUiShell = exports.UiShell = (0, _react.memo)(UiShell);
123
- MemoizedUiShell.displayName = "UiShell::pkg=odyssey&odysseyV=1.58.0";
123
+ MemoizedUiShell.displayName = "UiShell::pkg=odyssey&odysseyV=1.59.0";
124
124
  //# sourceMappingURL=UiShell.cjs.map
@@ -72,5 +72,5 @@ const UiShellLogo = ({
72
72
  });
73
73
  };
74
74
  const MemoizedUiShellLogo = exports.UiShellLogo = (0, _react.memo)(UiShellLogo);
75
- MemoizedUiShellLogo.displayName = "UiShellLogo::pkg=odyssey&odysseyV=1.58.0";
75
+ MemoizedUiShellLogo.displayName = "UiShellLogo::pkg=odyssey&odysseyV=1.59.0";
76
76
  //# sourceMappingURL=UiShellLogo.cjs.map
@@ -11,6 +11,7 @@ var _OdysseyDesignTokensContext = require("../OdysseyDesignTokensContext.cjs");
11
11
  var _AppSwitcher = require("./AppSwitcher/AppSwitcher.cjs");
12
12
  var _InnerAppContainer = require("./InnerAppContainer.cjs");
13
13
  var _SideNav = require("./SideNav/SideNav.cjs");
14
+ var _SkipToContent = require("./SkipToContent.cjs");
14
15
  var _TopNav = require("./TopNav/TopNav.cjs");
15
16
  var _uiShellContentTypes = require("./uiShellContentTypes.cjs");
16
17
  var _UiShellProvider = require("./UiShellProvider.cjs");
@@ -103,7 +104,9 @@ const WideUiShellContent = ({
103
104
  return (0, _jsxRuntime.jsxs)(StyledShellContainer, {
104
105
  odysseyDesignTokens: odysseyDesignTokens,
105
106
  ref: parentContainerRef,
106
- children: [(0, _jsxRuntime.jsx)(StyledBannersContainer, {
107
+ children: [(0, _jsxRuntime.jsx)(_SkipToContent.SkipToContent, {
108
+ appElement: appElement
109
+ }), (0, _jsxRuntime.jsx)(StyledBannersContainer, {
107
110
  children: optionalComponents?.banners
108
111
  }), (0, _jsxRuntime.jsxs)(StyledAppSwitcherContainer, {
109
112
  children: [initialVisibleSections?.includes("AppSwitcher") && !appSwitcherProps && (0, _jsxRuntime.jsx)(_reactErrorBoundary.ErrorBoundary, {
@@ -174,5 +177,5 @@ const WideUiShellContent = ({
174
177
  });
175
178
  };
176
179
  const MemoizedWideUiShellContent = exports.WideUiShellContent = (0, _react.memo)(WideUiShellContent);
177
- MemoizedWideUiShellContent.displayName = "WideUiShellContent::pkg=odyssey&odysseyV=1.58.0";
180
+ MemoizedWideUiShellContent.displayName = "WideUiShellContent::pkg=odyssey&odysseyV=1.59.0";
178
181
  //# sourceMappingURL=WideUiShellContent.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"WideUiShellContent.cjs","names":["_styled","_interopRequireDefault","require","_react","_reactErrorBoundary","_OdysseyDesignTokensContext","_AppSwitcher","_InnerAppContainer","_SideNav","_TopNav","_uiShellContentTypes","_UiShellProvider","_uiShellSharedConstants","_useMatchAppElementToUiShellAppArea","_useScrollState","_jsxRuntime","e","__esModule","default","appSwitcherDefaultAppIcons","StyledAppContainer","styled","shouldForwardProp","prop","appBackgroundColor","backgroundColor","gridArea","position","StyledAppSwitcherContainer","StyledBannersContainer","StyledSideNavContainer","StyledShellContainer","odysseyDesignTokens","HueNeutral50","display","gridGap","gridTemplateAreas","gridTemplateColumns","gridTemplateRows","height","width","StyledTopNavContainer","WideUiShellContent","appElement","appElementScrollingMode","appSwitcherProps","hasStandardAppContentPadding","hasSideNavProps","initialVisibleSections","onError","console","error","optionalComponents","sideNavProps","topNavProps","useOdysseyDesignTokens","uiShellContext","useUiShellContext","isContentScrolled","useScrollState","sideNavContainerRef","useRef","topNavContainerRef","uiShellAppAreaRef","parentContainerRef","useMatchAppElementToUiShellAppArea","paddingMode","uiShellResizableRefs","jsxs","ref","children","jsx","banners","includes","ErrorBoundary","fallback","AppSwitcher","appIcons","isLoading","selectedAppName","TURN_OFF_APP_SWITCHER","SideNav","sideNavItems","emptySideNavItems","hasCustomFooter","sideNavFooter","footerComponent","footerItems","undefined","TopNav","leftSideComponent","topNavLeftSide","rightSideComponent","topNavRightSide","tabIndex","InnerAppContainer","MemoizedWideUiShellContent","exports","memo","displayName"],"sources":["../../../src/ui-shell/WideUiShellContent.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 { memo, useRef } from \"react\";\nimport { ErrorBoundary } from \"react-error-boundary\";\n\nimport {\n type DesignTokens,\n useOdysseyDesignTokens,\n} from \"../OdysseyDesignTokensContext.js\";\nimport { AppSwitcher } from \"./AppSwitcher/AppSwitcher.js\";\nimport { AppSwitcherAppIconData } from \"./AppSwitcher/AppSwitcherApp.js\";\nimport { InnerAppContainer } from \"./InnerAppContainer.js\";\nimport { SideNav } from \"./SideNav/SideNav.js\";\nimport { TopNav } from \"./TopNav/TopNav.js\";\nimport {\n TURN_OFF_APP_SWITCHER,\n UiShellContentProps,\n UiShellNavComponentProps,\n} from \"./uiShellContentTypes.js\";\nimport { UiShellColors, useUiShellContext } from \"./UiShellProvider.js\";\nimport { emptySideNavItems } from \"./uiShellSharedConstants.js\";\nimport { useMatchAppElementToUiShellAppArea } from \"./useMatchAppElementToUiShellAppArea.js\";\nimport { useScrollState } from \"./useScrollState.js\";\n\nconst appSwitcherDefaultAppIcons = [] satisfies AppSwitcherAppIconData[];\n\nconst StyledAppContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"appBackgroundColor\" && prop !== \"odysseyDesignTokens\",\n})<{\n appBackgroundColor?: UiShellColors[\"appBackgroundColor\"];\n}>(({ appBackgroundColor }) => ({\n backgroundColor: appBackgroundColor,\n gridArea: \"app-content\",\n position: \"relative\",\n}));\n\nconst StyledAppSwitcherContainer = styled(\"div\")({\n gridArea: \"app-switcher\",\n});\n\nconst StyledBannersContainer = styled(\"div\")({\n gridArea: \"banners\",\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 type WideUiShellContentProps = UiShellNavComponentProps &\n UiShellContentProps;\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 WideUiShellContent = ({\n appElement,\n appElementScrollingMode,\n appSwitcherProps,\n hasStandardAppContentPadding = true,\n hasSideNavProps,\n initialVisibleSections = [\"TopNav\", \"SideNav\", \"AppSwitcher\"],\n onError = console.error,\n optionalComponents,\n sideNavProps,\n topNavProps,\n}: WideUiShellContentProps) => {\n const odysseyDesignTokens = useOdysseyDesignTokens();\n const uiShellContext = useUiShellContext();\n\n const { isContentScrolled } = useScrollState(appElement);\n\n const sideNavContainerRef = useRef<HTMLDivElement>(null);\n const topNavContainerRef = useRef<HTMLDivElement>(null);\n const uiShellAppAreaRef = useRef<HTMLDivElement>(null);\n\n const { parentContainerRef } = useMatchAppElementToUiShellAppArea({\n appElement,\n appElementScrollingMode,\n paddingMode: hasStandardAppContentPadding ? \"comfortable\" : \"none\",\n uiShellAppAreaRef,\n uiShellResizableRefs: [\n sideNavContainerRef,\n topNavContainerRef,\n uiShellAppAreaRef,\n ],\n });\n\n return (\n <StyledShellContainer\n odysseyDesignTokens={odysseyDesignTokens}\n ref={parentContainerRef}\n >\n <StyledBannersContainer>\n {optionalComponents?.banners}\n </StyledBannersContainer>\n\n <StyledAppSwitcherContainer>\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\n appIcons={appSwitcherDefaultAppIcons}\n isLoading\n selectedAppName=\"\"\n />\n </ErrorBoundary>\n )\n }\n\n {appSwitcherProps && appSwitcherProps !== TURN_OFF_APP_SWITCHER && (\n <ErrorBoundary fallback={null} onError={onError}>\n <AppSwitcher {...appSwitcherProps} />\n </ErrorBoundary>\n )}\n </StyledAppSwitcherContainer>\n\n <StyledSideNavContainer ref={sideNavContainerRef}>\n {\n /* If SideNav should be initially visible and we have not yet received props, render SideNav with minimal inputs */\n initialVisibleSections?.includes(\"SideNav\") && !hasSideNavProps && (\n <ErrorBoundary fallback={null} onError={onError}>\n <SideNav isLoading sideNavItems={emptySideNavItems} />\n </ErrorBoundary>\n )\n }\n\n {hasSideNavProps && 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 </StyledSideNavContainer>\n\n <StyledTopNavContainer ref={topNavContainerRef}>\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\n {topNavProps && (\n <ErrorBoundary fallback={null} onError={onError}>\n <TopNav\n {...topNavProps}\n leftSideComponent={optionalComponents?.topNavLeftSide}\n rightSideComponent={optionalComponents?.topNavRightSide}\n />\n </ErrorBoundary>\n )}\n </StyledTopNavContainer>\n\n <StyledAppContainer\n appBackgroundColor={uiShellContext?.appBackgroundColor}\n ref={uiShellAppAreaRef}\n tabIndex={0}\n >\n <InnerAppContainer isContentScrolled={isContentScrolled} />\n </StyledAppContainer>\n </StyledShellContainer>\n );\n};\n\nconst MemoizedWideUiShellContent = memo(WideUiShellContent);\nMemoizedWideUiShellContent.displayName = \"WideUiShellContent\";\n\nexport { MemoizedWideUiShellContent as WideUiShellContent };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"WideUiShellContent.cjs","names":["_styled","_interopRequireDefault","require","_react","_reactErrorBoundary","_OdysseyDesignTokensContext","_AppSwitcher","_InnerAppContainer","_SideNav","_SkipToContent","_TopNav","_uiShellContentTypes","_UiShellProvider","_uiShellSharedConstants","_useMatchAppElementToUiShellAppArea","_useScrollState","_jsxRuntime","e","__esModule","default","appSwitcherDefaultAppIcons","StyledAppContainer","styled","shouldForwardProp","prop","appBackgroundColor","backgroundColor","gridArea","position","StyledAppSwitcherContainer","StyledBannersContainer","StyledSideNavContainer","StyledShellContainer","odysseyDesignTokens","HueNeutral50","display","gridGap","gridTemplateAreas","gridTemplateColumns","gridTemplateRows","height","width","StyledTopNavContainer","WideUiShellContent","appElement","appElementScrollingMode","appSwitcherProps","hasStandardAppContentPadding","hasSideNavProps","initialVisibleSections","onError","console","error","optionalComponents","sideNavProps","topNavProps","useOdysseyDesignTokens","uiShellContext","useUiShellContext","isContentScrolled","useScrollState","sideNavContainerRef","useRef","topNavContainerRef","uiShellAppAreaRef","parentContainerRef","useMatchAppElementToUiShellAppArea","paddingMode","uiShellResizableRefs","jsxs","ref","children","jsx","SkipToContent","banners","includes","ErrorBoundary","fallback","AppSwitcher","appIcons","isLoading","selectedAppName","TURN_OFF_APP_SWITCHER","SideNav","sideNavItems","emptySideNavItems","hasCustomFooter","sideNavFooter","footerComponent","footerItems","undefined","TopNav","leftSideComponent","topNavLeftSide","rightSideComponent","topNavRightSide","tabIndex","InnerAppContainer","MemoizedWideUiShellContent","exports","memo","displayName"],"sources":["../../../src/ui-shell/WideUiShellContent.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 { memo, useRef } from \"react\";\nimport { ErrorBoundary } from \"react-error-boundary\";\n\nimport {\n type DesignTokens,\n useOdysseyDesignTokens,\n} from \"../OdysseyDesignTokensContext.js\";\nimport { AppSwitcher } from \"./AppSwitcher/AppSwitcher.js\";\nimport { AppSwitcherAppIconData } from \"./AppSwitcher/AppSwitcherApp.js\";\nimport { InnerAppContainer } from \"./InnerAppContainer.js\";\nimport { SideNav } from \"./SideNav/SideNav.js\";\nimport { SkipToContent } from \"./SkipToContent.js\";\nimport { TopNav } from \"./TopNav/TopNav.js\";\nimport {\n TURN_OFF_APP_SWITCHER,\n UiShellContentProps,\n UiShellNavComponentProps,\n} from \"./uiShellContentTypes.js\";\nimport { UiShellColors, useUiShellContext } from \"./UiShellProvider.js\";\nimport { emptySideNavItems } from \"./uiShellSharedConstants.js\";\nimport { useMatchAppElementToUiShellAppArea } from \"./useMatchAppElementToUiShellAppArea.js\";\nimport { useScrollState } from \"./useScrollState.js\";\n\nconst appSwitcherDefaultAppIcons = [] satisfies AppSwitcherAppIconData[];\n\nconst StyledAppContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"appBackgroundColor\" && prop !== \"odysseyDesignTokens\",\n})<{\n appBackgroundColor?: UiShellColors[\"appBackgroundColor\"];\n}>(({ appBackgroundColor }) => ({\n backgroundColor: appBackgroundColor,\n gridArea: \"app-content\",\n position: \"relative\",\n}));\n\nconst StyledAppSwitcherContainer = styled(\"div\")({\n gridArea: \"app-switcher\",\n});\n\nconst StyledBannersContainer = styled(\"div\")({\n gridArea: \"banners\",\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 type WideUiShellContentProps = UiShellNavComponentProps &\n UiShellContentProps;\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 WideUiShellContent = ({\n appElement,\n appElementScrollingMode,\n appSwitcherProps,\n hasStandardAppContentPadding = true,\n hasSideNavProps,\n initialVisibleSections = [\"TopNav\", \"SideNav\", \"AppSwitcher\"],\n onError = console.error,\n optionalComponents,\n sideNavProps,\n topNavProps,\n}: WideUiShellContentProps) => {\n const odysseyDesignTokens = useOdysseyDesignTokens();\n const uiShellContext = useUiShellContext();\n\n const { isContentScrolled } = useScrollState(appElement);\n\n const sideNavContainerRef = useRef<HTMLDivElement>(null);\n const topNavContainerRef = useRef<HTMLDivElement>(null);\n const uiShellAppAreaRef = useRef<HTMLDivElement>(null);\n\n const { parentContainerRef } = useMatchAppElementToUiShellAppArea({\n appElement,\n appElementScrollingMode,\n paddingMode: hasStandardAppContentPadding ? \"comfortable\" : \"none\",\n uiShellAppAreaRef,\n uiShellResizableRefs: [\n sideNavContainerRef,\n topNavContainerRef,\n uiShellAppAreaRef,\n ],\n });\n\n return (\n <StyledShellContainer\n odysseyDesignTokens={odysseyDesignTokens}\n ref={parentContainerRef}\n >\n <SkipToContent appElement={appElement} />\n\n <StyledBannersContainer>\n {optionalComponents?.banners}\n </StyledBannersContainer>\n\n <StyledAppSwitcherContainer>\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\n appIcons={appSwitcherDefaultAppIcons}\n isLoading\n selectedAppName=\"\"\n />\n </ErrorBoundary>\n )\n }\n\n {appSwitcherProps && appSwitcherProps !== TURN_OFF_APP_SWITCHER && (\n <ErrorBoundary fallback={null} onError={onError}>\n <AppSwitcher {...appSwitcherProps} />\n </ErrorBoundary>\n )}\n </StyledAppSwitcherContainer>\n\n <StyledSideNavContainer ref={sideNavContainerRef}>\n {\n /* If SideNav should be initially visible and we have not yet received props, render SideNav with minimal inputs */\n initialVisibleSections?.includes(\"SideNav\") && !hasSideNavProps && (\n <ErrorBoundary fallback={null} onError={onError}>\n <SideNav isLoading sideNavItems={emptySideNavItems} />\n </ErrorBoundary>\n )\n }\n\n {hasSideNavProps && 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 </StyledSideNavContainer>\n\n <StyledTopNavContainer ref={topNavContainerRef}>\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\n {topNavProps && (\n <ErrorBoundary fallback={null} onError={onError}>\n <TopNav\n {...topNavProps}\n leftSideComponent={optionalComponents?.topNavLeftSide}\n rightSideComponent={optionalComponents?.topNavRightSide}\n />\n </ErrorBoundary>\n )}\n </StyledTopNavContainer>\n\n <StyledAppContainer\n appBackgroundColor={uiShellContext?.appBackgroundColor}\n ref={uiShellAppAreaRef}\n tabIndex={0}\n >\n <InnerAppContainer isContentScrolled={isContentScrolled} />\n </StyledAppContainer>\n </StyledShellContainer>\n );\n};\n\nconst MemoizedWideUiShellContent = memo(WideUiShellContent);\nMemoizedWideUiShellContent.displayName = \"WideUiShellContent\";\n\nexport { MemoizedWideUiShellContent as WideUiShellContent };\n"],"mappings":"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","ignoreList":[]}
@@ -98,6 +98,18 @@ Object.keys(_types).forEach(function (key) {
98
98
  }
99
99
  });
100
100
  });
101
+ var _SkipToContent = require("./SkipToContent.cjs");
102
+ Object.keys(_SkipToContent).forEach(function (key) {
103
+ if (key === "default" || key === "__esModule") return;
104
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
105
+ if (key in exports && exports[key] === _SkipToContent[key]) return;
106
+ Object.defineProperty(exports, key, {
107
+ enumerable: true,
108
+ get: function () {
109
+ return _SkipToContent[key];
110
+ }
111
+ });
112
+ });
101
113
  var _TopNav = require("./TopNav/TopNav.cjs");
102
114
  Object.keys(_TopNav).forEach(function (key) {
103
115
  if (key === "default" || key === "__esModule") return;