@okta/odyssey-react-mui 1.43.0 → 1.44.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 (1311) hide show
  1. package/README.md +41 -0
  2. package/dist/cjs/@types/i18next.d.cjs.map +1 -1
  3. package/dist/cjs/@types/properties.d.cjs.map +1 -1
  4. package/dist/cjs/Accordion.cjs +1 -1
  5. package/dist/cjs/Accordion.cjs.map +1 -1
  6. package/dist/cjs/Autocomplete.cjs.map +1 -1
  7. package/dist/cjs/Badge.cjs +1 -1
  8. package/dist/cjs/Badge.cjs.map +1 -1
  9. package/dist/cjs/Banner.cjs.map +1 -1
  10. package/dist/cjs/Box.cjs +1 -1
  11. package/dist/cjs/Box.cjs.map +1 -1
  12. package/dist/cjs/Breadcrumbs.cjs +9 -9
  13. package/dist/cjs/Breadcrumbs.cjs.map +1 -1
  14. package/dist/cjs/Buttons/BaseButton.cjs +1 -1
  15. package/dist/cjs/Buttons/BaseButton.cjs.map +1 -1
  16. package/dist/cjs/Buttons/BaseMenuButton.cjs +10 -10
  17. package/dist/cjs/Buttons/BaseMenuButton.cjs.map +1 -1
  18. package/dist/cjs/Buttons/Button.cjs.map +1 -1
  19. package/dist/cjs/Buttons/MenuButton.cjs.map +1 -1
  20. package/dist/cjs/Buttons/MenuContext.cjs.map +1 -1
  21. package/dist/cjs/Buttons/MenuItem.cjs +1 -1
  22. package/dist/cjs/Buttons/MenuItem.cjs.map +1 -1
  23. package/dist/cjs/Buttons/index.cjs +1 -1
  24. package/dist/cjs/Buttons/index.cjs.map +1 -1
  25. package/dist/cjs/Callout.cjs.map +1 -1
  26. package/dist/cjs/Card.cjs +4 -4
  27. package/dist/cjs/Card.cjs.map +1 -1
  28. package/dist/cjs/Checkbox.cjs +11 -11
  29. package/dist/cjs/Checkbox.cjs.map +1 -1
  30. package/dist/cjs/CheckboxGroup.cjs.map +1 -1
  31. package/dist/cjs/CircularProgress.cjs +2 -2
  32. package/dist/cjs/CircularProgress.cjs.map +1 -1
  33. package/dist/cjs/DataTable/DataTable.cjs +58 -58
  34. package/dist/cjs/DataTable/DataTable.cjs.map +1 -1
  35. package/dist/cjs/DataTable/DataTableRowActions.cjs +4 -4
  36. package/dist/cjs/DataTable/DataTableRowActions.cjs.map +1 -1
  37. package/dist/cjs/DataTable/DataTableSettings.cjs +4 -4
  38. package/dist/cjs/DataTable/DataTableSettings.cjs.map +1 -1
  39. package/dist/cjs/DataTable/index.cjs +1 -1
  40. package/dist/cjs/DataTable/index.cjs.map +1 -1
  41. package/dist/cjs/DataTable/reorderDataRowsLocally.cjs.map +1 -1
  42. package/dist/cjs/DataTable/useRowReordering.cjs +7 -3
  43. package/dist/cjs/DataTable/useRowReordering.cjs.map +1 -1
  44. package/dist/cjs/DataTable/useScrollIndication.cjs.map +1 -1
  45. package/dist/cjs/DatePickers/DateField.cjs +2 -2
  46. package/dist/cjs/DatePickers/DateField.cjs.map +1 -1
  47. package/dist/cjs/DatePickers/DateFieldActionBar.cjs +1 -1
  48. package/dist/cjs/DatePickers/DateFieldActionBar.cjs.map +1 -1
  49. package/dist/cjs/DatePickers/DateFieldLocalizationProvider.cjs +2 -2
  50. package/dist/cjs/DatePickers/DateFieldLocalizationProvider.cjs.map +1 -1
  51. package/dist/cjs/DatePickers/DatePicker.cjs +15 -11
  52. package/dist/cjs/DatePickers/DatePicker.cjs.map +1 -1
  53. package/dist/cjs/DatePickers/datePickerTheme.cjs +1 -1
  54. package/dist/cjs/DatePickers/datePickerTheme.cjs.map +1 -1
  55. package/dist/cjs/DatePickers/useOdysseyDateFields.cjs +1 -1
  56. package/dist/cjs/DatePickers/useOdysseyDateFields.cjs.map +1 -1
  57. package/dist/cjs/Dialog.cjs +5 -4
  58. package/dist/cjs/Dialog.cjs.map +1 -1
  59. package/dist/cjs/Drawer.cjs +9 -8
  60. package/dist/cjs/Drawer.cjs.map +1 -1
  61. package/dist/cjs/EmptyState.cjs +2 -2
  62. package/dist/cjs/EmptyState.cjs.map +1 -1
  63. package/dist/cjs/ErrorMessageList.cjs +3 -3
  64. package/dist/cjs/ErrorMessageList.cjs.map +1 -1
  65. package/dist/cjs/Field.cjs +3 -3
  66. package/dist/cjs/Field.cjs.map +1 -1
  67. package/dist/cjs/FieldError.cjs.map +1 -1
  68. package/dist/cjs/FieldHint.cjs +1 -1
  69. package/dist/cjs/FieldHint.cjs.map +1 -1
  70. package/dist/cjs/FieldLabel.cjs.map +1 -1
  71. package/dist/cjs/Fieldset.cjs +2 -2
  72. package/dist/cjs/Fieldset.cjs.map +1 -1
  73. package/dist/cjs/FileUploader/FileUploadIllustration.cjs +2 -2
  74. package/dist/cjs/FileUploader/FileUploadIllustration.cjs.map +1 -1
  75. package/dist/cjs/FileUploader/FileUploadPreview.cjs +5 -5
  76. package/dist/cjs/FileUploader/FileUploadPreview.cjs.map +1 -1
  77. package/dist/cjs/FileUploader/FileUploader.cjs +6 -6
  78. package/dist/cjs/FileUploader/FileUploader.cjs.map +1 -1
  79. package/dist/cjs/Form.cjs +2 -2
  80. package/dist/cjs/Form.cjs.map +1 -1
  81. package/dist/cjs/IconWithTooltip.cjs +1 -1
  82. package/dist/cjs/IconWithTooltip.cjs.map +1 -1
  83. package/dist/cjs/Link.cjs +1 -1
  84. package/dist/cjs/Link.cjs.map +1 -1
  85. package/dist/cjs/NativeSelect.cjs +1 -1
  86. package/dist/cjs/NativeSelect.cjs.map +1 -1
  87. package/dist/cjs/OdysseyCacheProvider.cjs +5 -5
  88. package/dist/cjs/OdysseyCacheProvider.cjs.map +1 -1
  89. package/dist/cjs/OdysseyProvider.cjs.map +1 -1
  90. package/dist/cjs/OdysseyThemeProvider.cjs +4 -4
  91. package/dist/cjs/OdysseyThemeProvider.cjs.map +1 -1
  92. package/dist/cjs/OdysseyTranslationProvider.cjs +1 -1
  93. package/dist/cjs/OdysseyTranslationProvider.cjs.map +1 -1
  94. package/dist/cjs/Pagination/Pagination.cjs +24 -24
  95. package/dist/cjs/Pagination/Pagination.cjs.map +1 -1
  96. package/dist/cjs/Pagination/usePagination.cjs +1 -1
  97. package/dist/cjs/Pagination/usePagination.cjs.map +1 -1
  98. package/dist/cjs/PasswordField.cjs +3 -3
  99. package/dist/cjs/PasswordField.cjs.map +1 -1
  100. package/dist/cjs/Radio.cjs +7 -7
  101. package/dist/cjs/Radio.cjs.map +1 -1
  102. package/dist/cjs/RadioGroup.cjs.map +1 -1
  103. package/dist/cjs/ScreenReaderText.cjs +2 -2
  104. package/dist/cjs/ScreenReaderText.cjs.map +1 -1
  105. package/dist/cjs/SearchField.cjs +13 -9
  106. package/dist/cjs/SearchField.cjs.map +1 -1
  107. package/dist/cjs/Select.cjs +10 -10
  108. package/dist/cjs/Select.cjs.map +1 -1
  109. package/dist/cjs/Stack.cjs.map +1 -1
  110. package/dist/cjs/Status.cjs.map +1 -1
  111. package/dist/cjs/Surface.cjs +1 -1
  112. package/dist/cjs/Surface.cjs.map +1 -1
  113. package/dist/cjs/Switch.cjs +9 -9
  114. package/dist/cjs/Switch.cjs.map +1 -1
  115. package/dist/cjs/Tabs.cjs +4 -4
  116. package/dist/cjs/Tabs.cjs.map +1 -1
  117. package/dist/cjs/Tag.cjs +2 -2
  118. package/dist/cjs/Tag.cjs.map +1 -1
  119. package/dist/cjs/TagList.cjs +1 -1
  120. package/dist/cjs/TagList.cjs.map +1 -1
  121. package/dist/cjs/TextField.cjs +2 -2
  122. package/dist/cjs/TextField.cjs.map +1 -1
  123. package/dist/cjs/Toast.cjs +3 -3
  124. package/dist/cjs/Toast.cjs.map +1 -1
  125. package/dist/cjs/ToastStack.cjs.map +1 -1
  126. package/dist/cjs/Tooltip.cjs +1 -1
  127. package/dist/cjs/Tooltip.cjs.map +1 -1
  128. package/dist/cjs/Typography.cjs.map +1 -1
  129. package/dist/cjs/hexToRgb.cjs.map +1 -1
  130. package/dist/cjs/i18n.cjs +1 -1
  131. package/dist/cjs/i18n.cjs.map +1 -1
  132. package/dist/cjs/icons.generated/Add.cjs +4 -4
  133. package/dist/cjs/icons.generated/Add.cjs.map +1 -1
  134. package/dist/cjs/icons.generated/AddCircle.cjs +4 -4
  135. package/dist/cjs/icons.generated/AddCircle.cjs.map +1 -1
  136. package/dist/cjs/icons.generated/Apps.cjs +4 -4
  137. package/dist/cjs/icons.generated/Apps.cjs.map +1 -1
  138. package/dist/cjs/icons.generated/ArrowBottom.cjs +4 -4
  139. package/dist/cjs/icons.generated/ArrowBottom.cjs.map +1 -1
  140. package/dist/cjs/icons.generated/ArrowDown.cjs +4 -4
  141. package/dist/cjs/icons.generated/ArrowDown.cjs.map +1 -1
  142. package/dist/cjs/icons.generated/ArrowLeft.cjs +4 -4
  143. package/dist/cjs/icons.generated/ArrowLeft.cjs.map +1 -1
  144. package/dist/cjs/icons.generated/ArrowLowerLeft.cjs +4 -4
  145. package/dist/cjs/icons.generated/ArrowLowerLeft.cjs.map +1 -1
  146. package/dist/cjs/icons.generated/ArrowLowerRight.cjs +4 -4
  147. package/dist/cjs/icons.generated/ArrowLowerRight.cjs.map +1 -1
  148. package/dist/cjs/icons.generated/ArrowRight.cjs +4 -4
  149. package/dist/cjs/icons.generated/ArrowRight.cjs.map +1 -1
  150. package/dist/cjs/icons.generated/ArrowTop.cjs +4 -4
  151. package/dist/cjs/icons.generated/ArrowTop.cjs.map +1 -1
  152. package/dist/cjs/icons.generated/ArrowUnsorted.cjs +4 -4
  153. package/dist/cjs/icons.generated/ArrowUnsorted.cjs.map +1 -1
  154. package/dist/cjs/icons.generated/ArrowUp.cjs +4 -4
  155. package/dist/cjs/icons.generated/ArrowUp.cjs.map +1 -1
  156. package/dist/cjs/icons.generated/ArrowUpperLeft.cjs +4 -4
  157. package/dist/cjs/icons.generated/ArrowUpperLeft.cjs.map +1 -1
  158. package/dist/cjs/icons.generated/ArrowUpperRight.cjs +4 -4
  159. package/dist/cjs/icons.generated/ArrowUpperRight.cjs.map +1 -1
  160. package/dist/cjs/icons.generated/Bug.cjs +4 -4
  161. package/dist/cjs/icons.generated/Bug.cjs.map +1 -1
  162. package/dist/cjs/icons.generated/Calendar.cjs +4 -4
  163. package/dist/cjs/icons.generated/Calendar.cjs.map +1 -1
  164. package/dist/cjs/icons.generated/Call.cjs +4 -4
  165. package/dist/cjs/icons.generated/Call.cjs.map +1 -1
  166. package/dist/cjs/icons.generated/Chat.cjs +4 -4
  167. package/dist/cjs/icons.generated/Chat.cjs.map +1 -1
  168. package/dist/cjs/icons.generated/Check.cjs +4 -4
  169. package/dist/cjs/icons.generated/Check.cjs.map +1 -1
  170. package/dist/cjs/icons.generated/CheckCircleFilled.cjs +4 -4
  171. package/dist/cjs/icons.generated/CheckCircleFilled.cjs.map +1 -1
  172. package/dist/cjs/icons.generated/ChevronDown.cjs +4 -4
  173. package/dist/cjs/icons.generated/ChevronDown.cjs.map +1 -1
  174. package/dist/cjs/icons.generated/ChevronLeft.cjs +4 -4
  175. package/dist/cjs/icons.generated/ChevronLeft.cjs.map +1 -1
  176. package/dist/cjs/icons.generated/ChevronRight.cjs +4 -4
  177. package/dist/cjs/icons.generated/ChevronRight.cjs.map +1 -1
  178. package/dist/cjs/icons.generated/ChevronUp.cjs +4 -4
  179. package/dist/cjs/icons.generated/ChevronUp.cjs.map +1 -1
  180. package/dist/cjs/icons.generated/Clock.cjs +4 -4
  181. package/dist/cjs/icons.generated/Clock.cjs.map +1 -1
  182. package/dist/cjs/icons.generated/Close.cjs +4 -4
  183. package/dist/cjs/icons.generated/Close.cjs.map +1 -1
  184. package/dist/cjs/icons.generated/CloseCircleFilled.cjs +4 -4
  185. package/dist/cjs/icons.generated/CloseCircleFilled.cjs.map +1 -1
  186. package/dist/cjs/icons.generated/CollapseLeft.cjs +4 -4
  187. package/dist/cjs/icons.generated/CollapseLeft.cjs.map +1 -1
  188. package/dist/cjs/icons.generated/CollapseRight.cjs +4 -4
  189. package/dist/cjs/icons.generated/CollapseRight.cjs.map +1 -1
  190. package/dist/cjs/icons.generated/Copy.cjs +4 -4
  191. package/dist/cjs/icons.generated/Copy.cjs.map +1 -1
  192. package/dist/cjs/icons.generated/Custom.cjs +2 -2
  193. package/dist/cjs/icons.generated/Custom.cjs.map +1 -1
  194. package/dist/cjs/icons.generated/DangerDiamond.cjs +4 -4
  195. package/dist/cjs/icons.generated/DangerDiamond.cjs.map +1 -1
  196. package/dist/cjs/icons.generated/DangerDiamondFilled.cjs +4 -4
  197. package/dist/cjs/icons.generated/DangerDiamondFilled.cjs.map +1 -1
  198. package/dist/cjs/icons.generated/Delete.cjs +4 -4
  199. package/dist/cjs/icons.generated/Delete.cjs.map +1 -1
  200. package/dist/cjs/icons.generated/Deny.cjs +4 -4
  201. package/dist/cjs/icons.generated/Deny.cjs.map +1 -1
  202. package/dist/cjs/icons.generated/Devices.cjs +4 -4
  203. package/dist/cjs/icons.generated/Devices.cjs.map +1 -1
  204. package/dist/cjs/icons.generated/Directory.cjs +4 -4
  205. package/dist/cjs/icons.generated/Directory.cjs.map +1 -1
  206. package/dist/cjs/icons.generated/Documentation.cjs +4 -4
  207. package/dist/cjs/icons.generated/Documentation.cjs.map +1 -1
  208. package/dist/cjs/icons.generated/Download.cjs +4 -4
  209. package/dist/cjs/icons.generated/Download.cjs.map +1 -1
  210. package/dist/cjs/icons.generated/DragIndicator.cjs +4 -4
  211. package/dist/cjs/icons.generated/DragIndicator.cjs.map +1 -1
  212. package/dist/cjs/icons.generated/Duo.cjs +2 -2
  213. package/dist/cjs/icons.generated/Duo.cjs.map +1 -1
  214. package/dist/cjs/icons.generated/Edit.cjs +4 -4
  215. package/dist/cjs/icons.generated/Edit.cjs.map +1 -1
  216. package/dist/cjs/icons.generated/Email.cjs +4 -4
  217. package/dist/cjs/icons.generated/Email.cjs.map +1 -1
  218. package/dist/cjs/icons.generated/ExpandLeft.cjs +4 -4
  219. package/dist/cjs/icons.generated/ExpandLeft.cjs.map +1 -1
  220. package/dist/cjs/icons.generated/ExpandRight.cjs +4 -4
  221. package/dist/cjs/icons.generated/ExpandRight.cjs.map +1 -1
  222. package/dist/cjs/icons.generated/ExternalLink.cjs +4 -4
  223. package/dist/cjs/icons.generated/ExternalLink.cjs.map +1 -1
  224. package/dist/cjs/icons.generated/Fido2.cjs +10 -10
  225. package/dist/cjs/icons.generated/Fido2.cjs.map +1 -1
  226. package/dist/cjs/icons.generated/Filter.cjs +4 -4
  227. package/dist/cjs/icons.generated/Filter.cjs.map +1 -1
  228. package/dist/cjs/icons.generated/Folder.cjs +4 -4
  229. package/dist/cjs/icons.generated/Folder.cjs.map +1 -1
  230. package/dist/cjs/icons.generated/Globe.cjs +4 -4
  231. package/dist/cjs/icons.generated/Globe.cjs.map +1 -1
  232. package/dist/cjs/icons.generated/GoogleAuth.cjs +12 -12
  233. package/dist/cjs/icons.generated/GoogleAuth.cjs.map +1 -1
  234. package/dist/cjs/icons.generated/Grid.cjs +20 -20
  235. package/dist/cjs/icons.generated/Grid.cjs.map +1 -1
  236. package/dist/cjs/icons.generated/Group.cjs +4 -4
  237. package/dist/cjs/icons.generated/Group.cjs.map +1 -1
  238. package/dist/cjs/icons.generated/Hide.cjs +4 -4
  239. package/dist/cjs/icons.generated/Hide.cjs.map +1 -1
  240. package/dist/cjs/icons.generated/Home.cjs +4 -4
  241. package/dist/cjs/icons.generated/Home.cjs.map +1 -1
  242. package/dist/cjs/icons.generated/Idp.cjs +4 -4
  243. package/dist/cjs/icons.generated/Idp.cjs.map +1 -1
  244. package/dist/cjs/icons.generated/InformationCircle.cjs +4 -4
  245. package/dist/cjs/icons.generated/InformationCircle.cjs.map +1 -1
  246. package/dist/cjs/icons.generated/InformationCircleFilled.cjs +4 -4
  247. package/dist/cjs/icons.generated/InformationCircleFilled.cjs.map +1 -1
  248. package/dist/cjs/icons.generated/Link.cjs +4 -4
  249. package/dist/cjs/icons.generated/Link.cjs.map +1 -1
  250. package/dist/cjs/icons.generated/List.cjs +4 -4
  251. package/dist/cjs/icons.generated/List.cjs.map +1 -1
  252. package/dist/cjs/icons.generated/Lock.cjs +4 -4
  253. package/dist/cjs/icons.generated/Lock.cjs.map +1 -1
  254. package/dist/cjs/icons.generated/More.cjs +4 -4
  255. package/dist/cjs/icons.generated/More.cjs.map +1 -1
  256. package/dist/cjs/icons.generated/Notification.cjs +4 -4
  257. package/dist/cjs/icons.generated/Notification.cjs.map +1 -1
  258. package/dist/cjs/icons.generated/OktaVerify.cjs +4 -4
  259. package/dist/cjs/icons.generated/OktaVerify.cjs.map +1 -1
  260. package/dist/cjs/icons.generated/OnPremMfa.cjs +2 -2
  261. package/dist/cjs/icons.generated/OnPremMfa.cjs.map +1 -1
  262. package/dist/cjs/icons.generated/OneTimePassword.cjs +2 -2
  263. package/dist/cjs/icons.generated/OneTimePassword.cjs.map +1 -1
  264. package/dist/cjs/icons.generated/Password.cjs +2 -2
  265. package/dist/cjs/icons.generated/Password.cjs.map +1 -1
  266. package/dist/cjs/icons.generated/Pause.cjs +4 -4
  267. package/dist/cjs/icons.generated/Pause.cjs.map +1 -1
  268. package/dist/cjs/icons.generated/QuestionCircle.cjs +4 -4
  269. package/dist/cjs/icons.generated/QuestionCircle.cjs.map +1 -1
  270. package/dist/cjs/icons.generated/QuestionCircleFilled.cjs +4 -4
  271. package/dist/cjs/icons.generated/QuestionCircleFilled.cjs.map +1 -1
  272. package/dist/cjs/icons.generated/Refresh.cjs +4 -4
  273. package/dist/cjs/icons.generated/Refresh.cjs.map +1 -1
  274. package/dist/cjs/icons.generated/Reset.cjs +4 -4
  275. package/dist/cjs/icons.generated/Reset.cjs.map +1 -1
  276. package/dist/cjs/icons.generated/Resume.cjs +4 -4
  277. package/dist/cjs/icons.generated/Resume.cjs.map +1 -1
  278. package/dist/cjs/icons.generated/Search.cjs +4 -4
  279. package/dist/cjs/icons.generated/Search.cjs.map +1 -1
  280. package/dist/cjs/icons.generated/SecurityQuestion.cjs +4 -4
  281. package/dist/cjs/icons.generated/SecurityQuestion.cjs.map +1 -1
  282. package/dist/cjs/icons.generated/Send.cjs +37 -0
  283. package/dist/cjs/icons.generated/Send.cjs.map +1 -0
  284. package/dist/cjs/icons.generated/Server.cjs +4 -4
  285. package/dist/cjs/icons.generated/Server.cjs.map +1 -1
  286. package/dist/cjs/icons.generated/Settings.cjs +4 -4
  287. package/dist/cjs/icons.generated/Settings.cjs.map +1 -1
  288. package/dist/cjs/icons.generated/Show.cjs +4 -4
  289. package/dist/cjs/icons.generated/Show.cjs.map +1 -1
  290. package/dist/cjs/icons.generated/SmartCard.cjs +2 -2
  291. package/dist/cjs/icons.generated/SmartCard.cjs.map +1 -1
  292. package/dist/cjs/icons.generated/Sms.cjs +2 -2
  293. package/dist/cjs/icons.generated/Sms.cjs.map +1 -1
  294. package/dist/cjs/icons.generated/Subtract.cjs +4 -4
  295. package/dist/cjs/icons.generated/Subtract.cjs.map +1 -1
  296. package/dist/cjs/icons.generated/SymantecVip.cjs +2 -2
  297. package/dist/cjs/icons.generated/SymantecVip.cjs.map +1 -1
  298. package/dist/cjs/icons.generated/Sync.cjs +4 -4
  299. package/dist/cjs/icons.generated/Sync.cjs.map +1 -1
  300. package/dist/cjs/icons.generated/ThumbsDown.cjs +4 -4
  301. package/dist/cjs/icons.generated/ThumbsDown.cjs.map +1 -1
  302. package/dist/cjs/icons.generated/ThumbsUp.cjs +4 -4
  303. package/dist/cjs/icons.generated/ThumbsUp.cjs.map +1 -1
  304. package/dist/cjs/icons.generated/Unlock.cjs +4 -4
  305. package/dist/cjs/icons.generated/Unlock.cjs.map +1 -1
  306. package/dist/cjs/icons.generated/Upload.cjs +4 -4
  307. package/dist/cjs/icons.generated/Upload.cjs.map +1 -1
  308. package/dist/cjs/icons.generated/User.cjs +4 -4
  309. package/dist/cjs/icons.generated/User.cjs.map +1 -1
  310. package/dist/cjs/icons.generated/Video.cjs +4 -4
  311. package/dist/cjs/icons.generated/Video.cjs.map +1 -1
  312. package/dist/cjs/icons.generated/VoiceCall.cjs +4 -4
  313. package/dist/cjs/icons.generated/VoiceCall.cjs.map +1 -1
  314. package/dist/cjs/icons.generated/Warning.cjs +4 -4
  315. package/dist/cjs/icons.generated/Warning.cjs.map +1 -1
  316. package/dist/cjs/icons.generated/WarningFilled.cjs +4 -4
  317. package/dist/cjs/icons.generated/WarningFilled.cjs.map +1 -1
  318. package/dist/cjs/icons.generated/Yubikey.cjs +2 -2
  319. package/dist/cjs/icons.generated/Yubikey.cjs.map +1 -1
  320. package/dist/cjs/icons.generated/index.cjs +19 -8
  321. package/dist/cjs/icons.generated/index.cjs.map +1 -1
  322. package/dist/cjs/inputUtils.cjs.map +1 -1
  323. package/dist/cjs/labs/AppTile.cjs +21 -21
  324. package/dist/cjs/labs/AppTile.cjs.map +1 -1
  325. package/dist/cjs/labs/DataFilters.cjs +53 -53
  326. package/dist/cjs/labs/DataFilters.cjs.map +1 -1
  327. package/dist/cjs/labs/DataTable.cjs +19 -19
  328. package/dist/cjs/labs/DataTable.cjs.map +1 -1
  329. package/dist/cjs/labs/DataTablePagination.cjs +9 -9
  330. package/dist/cjs/labs/DataTablePagination.cjs.map +1 -1
  331. package/dist/cjs/labs/DataView/BulkActionsMenu.cjs +2 -2
  332. package/dist/cjs/labs/DataView/BulkActionsMenu.cjs.map +1 -1
  333. package/dist/cjs/labs/DataView/CardLayoutContent.cjs +7 -7
  334. package/dist/cjs/labs/DataView/CardLayoutContent.cjs.map +1 -1
  335. package/dist/cjs/labs/DataView/DataCard.cjs +7 -7
  336. package/dist/cjs/labs/DataView/DataCard.cjs.map +1 -1
  337. package/dist/cjs/labs/DataView/DataTable.cjs.map +1 -1
  338. package/dist/cjs/labs/DataView/DataView.cjs +16 -16
  339. package/dist/cjs/labs/DataView/DataView.cjs.map +1 -1
  340. package/dist/cjs/labs/DataView/DetailPanel.cjs.map +1 -1
  341. package/dist/cjs/labs/DataView/LayoutSwitcher.cjs +2 -2
  342. package/dist/cjs/labs/DataView/LayoutSwitcher.cjs.map +1 -1
  343. package/dist/cjs/labs/DataView/RowActions.cjs +10 -10
  344. package/dist/cjs/labs/DataView/RowActions.cjs.map +1 -1
  345. package/dist/cjs/labs/DataView/TableLayoutContent.cjs +17 -17
  346. package/dist/cjs/labs/DataView/TableLayoutContent.cjs.map +1 -1
  347. package/dist/cjs/labs/DataView/TableSettings.cjs +9 -9
  348. package/dist/cjs/labs/DataView/TableSettings.cjs.map +1 -1
  349. package/dist/cjs/labs/DataView/componentTypes.cjs.map +1 -1
  350. package/dist/cjs/labs/DataView/fetchData.cjs.map +1 -1
  351. package/dist/cjs/labs/DataView/index.cjs.map +1 -1
  352. package/dist/cjs/labs/DataView/tableConstants.cjs.map +1 -1
  353. package/dist/cjs/labs/DataView/testSupportData.cjs.map +1 -1
  354. package/dist/cjs/labs/DataView/useFilterConversion.cjs.map +1 -1
  355. package/dist/cjs/labs/DatePickers/DateTimeField.cjs +2 -2
  356. package/dist/cjs/labs/DatePickers/DateTimeField.cjs.map +1 -1
  357. package/dist/cjs/labs/DatePickers/DateTimePicker.cjs +14 -10
  358. package/dist/cjs/labs/DatePickers/DateTimePicker.cjs.map +1 -1
  359. package/dist/cjs/labs/DatePickers/dateTimePickerTheme.cjs +2 -2
  360. package/dist/cjs/labs/DatePickers/dateTimePickerTheme.cjs.map +1 -1
  361. package/dist/cjs/labs/GroupPicker.cjs +5 -5
  362. package/dist/cjs/labs/GroupPicker.cjs.map +1 -1
  363. package/dist/cjs/labs/OdysseyPickers/ComposablePicker.cjs +3 -3
  364. package/dist/cjs/labs/OdysseyPickers/ComposablePicker.cjs.map +1 -1
  365. package/dist/cjs/labs/OdysseyPickers/Picker.cjs +4 -4
  366. package/dist/cjs/labs/OdysseyPickers/Picker.cjs.map +1 -1
  367. package/dist/cjs/labs/OdysseyPickers/PickerVirtualizationListBox.cjs +7 -7
  368. package/dist/cjs/labs/OdysseyPickers/PickerVirtualizationListBox.cjs.map +1 -1
  369. package/dist/cjs/labs/OdysseyPickers/PickerWithOptionAdornment.cjs +13 -13
  370. package/dist/cjs/labs/OdysseyPickers/PickerWithOptionAdornment.cjs.map +1 -1
  371. package/dist/cjs/labs/OdysseyPickers/SearchDropdown.cjs +12 -12
  372. package/dist/cjs/labs/OdysseyPickers/SearchDropdown.cjs.map +1 -1
  373. package/dist/cjs/labs/OdysseyPickers/index.cjs.map +1 -1
  374. package/dist/cjs/labs/PageTemplate/DocumentationLink.cjs.map +1 -1
  375. package/dist/cjs/labs/PageTemplate/Layout.cjs +1 -1
  376. package/dist/cjs/labs/PageTemplate/Layout.cjs.map +1 -1
  377. package/dist/cjs/labs/PageTemplate/PageTemplate.cjs +3 -3
  378. package/dist/cjs/labs/PageTemplate/PageTemplate.cjs.map +1 -1
  379. package/dist/cjs/labs/PaginatedTable.cjs +1 -1
  380. package/dist/cjs/labs/PaginatedTable.cjs.map +1 -1
  381. package/dist/cjs/labs/StaticTable.cjs.map +1 -1
  382. package/dist/cjs/labs/UserProfile.cjs.map +1 -1
  383. package/dist/cjs/labs/UserProfileMenuButton.cjs +7 -7
  384. package/dist/cjs/labs/UserProfileMenuButton.cjs.map +1 -1
  385. package/dist/cjs/labs/index.cjs +65 -65
  386. package/dist/cjs/labs/index.cjs.map +1 -1
  387. package/dist/cjs/properties/ts/odyssey-react-mui.cjs +5 -0
  388. package/dist/cjs/properties/ts/odyssey-react-mui.cjs.map +1 -1
  389. package/dist/cjs/properties/ts/odyssey-react-mui_ok_PL.cjs +5 -0
  390. package/dist/cjs/properties/ts/odyssey-react-mui_ok_PL.cjs.map +1 -1
  391. package/dist/cjs/properties/ts/odyssey-react-mui_ok_SK.cjs +133 -129
  392. package/dist/cjs/properties/ts/odyssey-react-mui_ok_SK.cjs.map +1 -1
  393. package/dist/cjs/test-selectors/getByQuerySelector.cjs.map +1 -1
  394. package/dist/cjs/test-selectors/getComputedAccessibleText.cjs.map +1 -1
  395. package/dist/cjs/test-selectors/linkedHtmlSelectors.cjs +1 -1
  396. package/dist/cjs/test-selectors/linkedHtmlSelectors.cjs.map +1 -1
  397. package/dist/cjs/test-selectors/queryOdysseySelector.cjs +1 -1
  398. package/dist/cjs/test-selectors/queryOdysseySelector.cjs.map +1 -1
  399. package/dist/cjs/test-selectors/querySelector.cjs +1 -1
  400. package/dist/cjs/test-selectors/querySelector.cjs.map +1 -1
  401. package/dist/cjs/theme/components.cjs +2 -2
  402. package/dist/cjs/theme/components.cjs.map +1 -1
  403. package/dist/cjs/theme/components.types.cjs.map +1 -1
  404. package/dist/cjs/theme/createOdysseyMuiTheme.cjs +2 -2
  405. package/dist/cjs/theme/createOdysseyMuiTheme.cjs.map +1 -1
  406. package/dist/cjs/theme/mixins.types.cjs.map +1 -1
  407. package/dist/cjs/theme/typography.types.cjs.map +1 -1
  408. package/dist/cjs/ui-shell/AppSwitcher/AppSwitcher.cjs +2 -2
  409. package/dist/cjs/ui-shell/AppSwitcher/AppSwitcher.cjs.map +1 -1
  410. package/dist/cjs/ui-shell/AppSwitcher/AppSwitcherApp.cjs +9 -9
  411. package/dist/cjs/ui-shell/AppSwitcher/AppSwitcherApp.cjs.map +1 -1
  412. package/dist/cjs/ui-shell/AppSwitcher/OktaAura.cjs +5 -5
  413. package/dist/cjs/ui-shell/AppSwitcher/OktaAura.cjs.map +1 -1
  414. package/dist/cjs/ui-shell/InnerAppContainer.cjs.map +1 -1
  415. package/dist/cjs/ui-shell/NarrowUiShellContent.cjs +5 -5
  416. package/dist/cjs/ui-shell/NarrowUiShellContent.cjs.map +1 -1
  417. package/dist/cjs/ui-shell/SideNav/CollapseIcon.cjs +2 -2
  418. package/dist/cjs/ui-shell/SideNav/CollapseIcon.cjs.map +1 -1
  419. package/dist/cjs/ui-shell/SideNav/HandleIcon.cjs +4 -4
  420. package/dist/cjs/ui-shell/SideNav/HandleIcon.cjs.map +1 -1
  421. package/dist/cjs/ui-shell/SideNav/NavAccordion.cjs +5 -5
  422. package/dist/cjs/ui-shell/SideNav/NavAccordion.cjs.map +1 -1
  423. package/dist/cjs/ui-shell/SideNav/OktaLogo.cjs +2 -2
  424. package/dist/cjs/ui-shell/SideNav/OktaLogo.cjs.map +1 -1
  425. package/dist/cjs/ui-shell/SideNav/SideNav.cjs +22 -22
  426. package/dist/cjs/ui-shell/SideNav/SideNav.cjs.map +1 -1
  427. package/dist/cjs/ui-shell/SideNav/SideNavFooterContent.cjs +4 -4
  428. package/dist/cjs/ui-shell/SideNav/SideNavFooterContent.cjs.map +1 -1
  429. package/dist/cjs/ui-shell/SideNav/SideNavHeader.cjs +4 -4
  430. package/dist/cjs/ui-shell/SideNav/SideNavHeader.cjs.map +1 -1
  431. package/dist/cjs/ui-shell/SideNav/SideNavItemContent.cjs +22 -22
  432. package/dist/cjs/ui-shell/SideNav/SideNavItemContent.cjs.map +1 -1
  433. package/dist/cjs/ui-shell/SideNav/SideNavItemContentContext.cjs.map +1 -1
  434. package/dist/cjs/ui-shell/SideNav/SideNavItemLinkContent.cjs +5 -5
  435. package/dist/cjs/ui-shell/SideNav/SideNavItemLinkContent.cjs.map +1 -1
  436. package/dist/cjs/ui-shell/SideNav/SideNavLogo.cjs +3 -3
  437. package/dist/cjs/ui-shell/SideNav/SideNavLogo.cjs.map +1 -1
  438. package/dist/cjs/ui-shell/SideNav/SideNavToggleButton.cjs +2 -2
  439. package/dist/cjs/ui-shell/SideNav/SideNavToggleButton.cjs.map +1 -1
  440. package/dist/cjs/ui-shell/SideNav/SortableList/SortableItem.cjs +5 -5
  441. package/dist/cjs/ui-shell/SideNav/SortableList/SortableItem.cjs.map +1 -1
  442. package/dist/cjs/ui-shell/SideNav/SortableList/SortableList.cjs +9 -9
  443. package/dist/cjs/ui-shell/SideNav/SortableList/SortableList.cjs.map +1 -1
  444. package/dist/cjs/ui-shell/SideNav/SortableList/SortableOverlay.cjs.map +1 -1
  445. package/dist/cjs/ui-shell/SideNav/index.cjs +1 -1
  446. package/dist/cjs/ui-shell/SideNav/index.cjs.map +1 -1
  447. package/dist/cjs/ui-shell/SideNav/types.cjs.map +1 -1
  448. package/dist/cjs/ui-shell/TopNav/HamburgerMenuIcon.cjs +4 -4
  449. package/dist/cjs/ui-shell/TopNav/HamburgerMenuIcon.cjs.map +1 -1
  450. package/dist/cjs/ui-shell/TopNav/TopNav.cjs.map +1 -1
  451. package/dist/cjs/ui-shell/TopNav/TopNavLinksList.cjs.map +1 -1
  452. package/dist/cjs/ui-shell/TopNav/TopNavListItem.cjs.map +1 -1
  453. package/dist/cjs/ui-shell/UiShell.cjs +2 -2
  454. package/dist/cjs/ui-shell/UiShell.cjs.map +1 -1
  455. package/dist/cjs/ui-shell/UiShellProvider.cjs.map +1 -1
  456. package/dist/cjs/ui-shell/WideUiShellContent.cjs +4 -4
  457. package/dist/cjs/ui-shell/WideUiShellContent.cjs.map +1 -1
  458. package/dist/cjs/ui-shell/renderUiShell.cjs +2 -2
  459. package/dist/cjs/ui-shell/renderUiShell.cjs.map +1 -1
  460. package/dist/cjs/ui-shell/useElementAtContainerEdge.cjs.map +1 -1
  461. package/dist/cjs/ui-shell/useUiShellBreakpoints.cjs.map +1 -1
  462. package/dist/cjs/useAutocomplete.cjs +5 -5
  463. package/dist/cjs/useAutocomplete.cjs.map +1 -1
  464. package/dist/cjs/useContrastMode.cjs +1 -1
  465. package/dist/cjs/useContrastMode.cjs.map +1 -1
  466. package/dist/cjs/useSessionStorageState.cjs.map +1 -1
  467. package/dist/cjs/web-component/odysseyWebComponentVersion.generated.cjs +1 -1
  468. package/dist/cjs/web-component/odysseyWebComponentVersion.generated.cjs.map +1 -1
  469. package/dist/cjs/web-component/renderReactInWebComponent.cjs +1 -1
  470. package/dist/cjs/web-component/renderReactInWebComponent.cjs.map +1 -1
  471. package/dist/esm/@types/i18next.d.js.map +1 -1
  472. package/dist/esm/@types/properties.d.js.map +1 -1
  473. package/dist/esm/Accordion.js +1 -2
  474. package/dist/esm/Accordion.js.map +1 -1
  475. package/dist/esm/Autocomplete.js +0 -1
  476. package/dist/esm/Autocomplete.js.map +1 -1
  477. package/dist/esm/Badge.js +1 -1
  478. package/dist/esm/Badge.js.map +1 -1
  479. package/dist/esm/Banner.js +0 -1
  480. package/dist/esm/Banner.js.map +1 -1
  481. package/dist/esm/Box.js +1 -1
  482. package/dist/esm/Box.js.map +1 -1
  483. package/dist/esm/Breadcrumbs.js +10 -9
  484. package/dist/esm/Breadcrumbs.js.map +1 -1
  485. package/dist/esm/Buttons/BaseButton.js +1 -1
  486. package/dist/esm/Buttons/BaseButton.js.map +1 -1
  487. package/dist/esm/Buttons/BaseMenuButton.js +10 -10
  488. package/dist/esm/Buttons/BaseMenuButton.js.map +1 -1
  489. package/dist/esm/Buttons/Button.js.map +1 -1
  490. package/dist/esm/Buttons/MenuButton.js.map +1 -1
  491. package/dist/esm/Buttons/MenuContext.js.map +1 -1
  492. package/dist/esm/Buttons/MenuItem.js +1 -1
  493. package/dist/esm/Buttons/MenuItem.js.map +1 -1
  494. package/dist/esm/Buttons/index.js +1 -1
  495. package/dist/esm/Buttons/index.js.map +1 -1
  496. package/dist/esm/Callout.js.map +1 -1
  497. package/dist/esm/Card.js +4 -4
  498. package/dist/esm/Card.js.map +1 -1
  499. package/dist/esm/Checkbox.js +11 -11
  500. package/dist/esm/Checkbox.js.map +1 -1
  501. package/dist/esm/CheckboxGroup.js +0 -1
  502. package/dist/esm/CheckboxGroup.js.map +1 -1
  503. package/dist/esm/CircularProgress.js +2 -3
  504. package/dist/esm/CircularProgress.js.map +1 -1
  505. package/dist/esm/DataTable/DataTable.js +45 -45
  506. package/dist/esm/DataTable/DataTable.js.map +1 -1
  507. package/dist/esm/DataTable/DataTableRowActions.js +4 -5
  508. package/dist/esm/DataTable/DataTableRowActions.js.map +1 -1
  509. package/dist/esm/DataTable/DataTableSettings.js +4 -5
  510. package/dist/esm/DataTable/DataTableSettings.js.map +1 -1
  511. package/dist/esm/DataTable/index.js +1 -1
  512. package/dist/esm/DataTable/index.js.map +1 -1
  513. package/dist/esm/DataTable/reorderDataRowsLocally.js.map +1 -1
  514. package/dist/esm/DataTable/useRowReordering.js +7 -3
  515. package/dist/esm/DataTable/useRowReordering.js.map +1 -1
  516. package/dist/esm/DataTable/useScrollIndication.js.map +1 -1
  517. package/dist/esm/DatePickers/DateField.js +2 -3
  518. package/dist/esm/DatePickers/DateField.js.map +1 -1
  519. package/dist/esm/DatePickers/DateFieldActionBar.js +1 -1
  520. package/dist/esm/DatePickers/DateFieldActionBar.js.map +1 -1
  521. package/dist/esm/DatePickers/DateFieldLocalizationProvider.js +2 -2
  522. package/dist/esm/DatePickers/DateFieldLocalizationProvider.js.map +1 -1
  523. package/dist/esm/DatePickers/DatePicker.js +15 -11
  524. package/dist/esm/DatePickers/DatePicker.js.map +1 -1
  525. package/dist/esm/DatePickers/datePickerTheme.js +1 -1
  526. package/dist/esm/DatePickers/datePickerTheme.js.map +1 -1
  527. package/dist/esm/DatePickers/useOdysseyDateFields.js +1 -1
  528. package/dist/esm/DatePickers/useOdysseyDateFields.js.map +1 -1
  529. package/dist/esm/Dialog.js +5 -5
  530. package/dist/esm/Dialog.js.map +1 -1
  531. package/dist/esm/Drawer.js +9 -8
  532. package/dist/esm/Drawer.js.map +1 -1
  533. package/dist/esm/EmptyState.js +2 -2
  534. package/dist/esm/EmptyState.js.map +1 -1
  535. package/dist/esm/ErrorMessageList.js +3 -3
  536. package/dist/esm/ErrorMessageList.js.map +1 -1
  537. package/dist/esm/Field.js +3 -4
  538. package/dist/esm/Field.js.map +1 -1
  539. package/dist/esm/FieldError.js +0 -1
  540. package/dist/esm/FieldError.js.map +1 -1
  541. package/dist/esm/FieldHint.js +1 -1
  542. package/dist/esm/FieldHint.js.map +1 -1
  543. package/dist/esm/FieldLabel.js.map +1 -1
  544. package/dist/esm/Fieldset.js +2 -2
  545. package/dist/esm/Fieldset.js.map +1 -1
  546. package/dist/esm/FileUploader/FileUploadIllustration.js +2 -2
  547. package/dist/esm/FileUploader/FileUploadIllustration.js.map +1 -1
  548. package/dist/esm/FileUploader/FileUploadPreview.js +5 -5
  549. package/dist/esm/FileUploader/FileUploadPreview.js.map +1 -1
  550. package/dist/esm/FileUploader/FileUploader.js +6 -6
  551. package/dist/esm/FileUploader/FileUploader.js.map +1 -1
  552. package/dist/esm/Form.js +2 -2
  553. package/dist/esm/Form.js.map +1 -1
  554. package/dist/esm/IconWithTooltip.js +1 -1
  555. package/dist/esm/IconWithTooltip.js.map +1 -1
  556. package/dist/esm/Link.js +1 -2
  557. package/dist/esm/Link.js.map +1 -1
  558. package/dist/esm/NativeSelect.js +1 -2
  559. package/dist/esm/NativeSelect.js.map +1 -1
  560. package/dist/esm/OdysseyCacheProvider.js +1 -1
  561. package/dist/esm/OdysseyCacheProvider.js.map +1 -1
  562. package/dist/esm/OdysseyProvider.js +0 -1
  563. package/dist/esm/OdysseyProvider.js.map +1 -1
  564. package/dist/esm/OdysseyThemeProvider.js +4 -4
  565. package/dist/esm/OdysseyThemeProvider.js.map +1 -1
  566. package/dist/esm/OdysseyTranslationProvider.js +1 -1
  567. package/dist/esm/OdysseyTranslationProvider.js.map +1 -1
  568. package/dist/esm/Pagination/Pagination.js +24 -24
  569. package/dist/esm/Pagination/Pagination.js.map +1 -1
  570. package/dist/esm/Pagination/usePagination.js +1 -1
  571. package/dist/esm/Pagination/usePagination.js.map +1 -1
  572. package/dist/esm/PasswordField.js +3 -3
  573. package/dist/esm/PasswordField.js.map +1 -1
  574. package/dist/esm/Radio.js +7 -7
  575. package/dist/esm/Radio.js.map +1 -1
  576. package/dist/esm/RadioGroup.js +1 -1
  577. package/dist/esm/RadioGroup.js.map +1 -1
  578. package/dist/esm/ScreenReaderText.js +2 -3
  579. package/dist/esm/ScreenReaderText.js.map +1 -1
  580. package/dist/esm/SearchField.js +14 -9
  581. package/dist/esm/SearchField.js.map +1 -1
  582. package/dist/esm/Select.js +11 -11
  583. package/dist/esm/Select.js.map +1 -1
  584. package/dist/esm/Stack.js +0 -1
  585. package/dist/esm/Stack.js.map +1 -1
  586. package/dist/esm/Status.js +0 -1
  587. package/dist/esm/Status.js.map +1 -1
  588. package/dist/esm/Surface.js +1 -1
  589. package/dist/esm/Surface.js.map +1 -1
  590. package/dist/esm/Switch.js +9 -9
  591. package/dist/esm/Switch.js.map +1 -1
  592. package/dist/esm/Tabs.js +4 -4
  593. package/dist/esm/Tabs.js.map +1 -1
  594. package/dist/esm/Tag.js +3 -2
  595. package/dist/esm/Tag.js.map +1 -1
  596. package/dist/esm/TagList.js +1 -1
  597. package/dist/esm/TagList.js.map +1 -1
  598. package/dist/esm/TextField.js +3 -4
  599. package/dist/esm/TextField.js.map +1 -1
  600. package/dist/esm/Toast.js +4 -5
  601. package/dist/esm/Toast.js.map +1 -1
  602. package/dist/esm/ToastStack.js +0 -1
  603. package/dist/esm/ToastStack.js.map +1 -1
  604. package/dist/esm/Tooltip.js +1 -1
  605. package/dist/esm/Tooltip.js.map +1 -1
  606. package/dist/esm/Typography.js +2 -3
  607. package/dist/esm/Typography.js.map +1 -1
  608. package/dist/esm/hexToRgb.js.map +1 -1
  609. package/dist/esm/i18n.js +1 -1
  610. package/dist/esm/i18n.js.map +1 -1
  611. package/dist/esm/icons.generated/Add.js +4 -4
  612. package/dist/esm/icons.generated/Add.js.map +1 -1
  613. package/dist/esm/icons.generated/AddCircle.js +4 -4
  614. package/dist/esm/icons.generated/AddCircle.js.map +1 -1
  615. package/dist/esm/icons.generated/Apps.js +4 -4
  616. package/dist/esm/icons.generated/Apps.js.map +1 -1
  617. package/dist/esm/icons.generated/ArrowBottom.js +4 -4
  618. package/dist/esm/icons.generated/ArrowBottom.js.map +1 -1
  619. package/dist/esm/icons.generated/ArrowDown.js +4 -4
  620. package/dist/esm/icons.generated/ArrowDown.js.map +1 -1
  621. package/dist/esm/icons.generated/ArrowLeft.js +4 -4
  622. package/dist/esm/icons.generated/ArrowLeft.js.map +1 -1
  623. package/dist/esm/icons.generated/ArrowLowerLeft.js +4 -4
  624. package/dist/esm/icons.generated/ArrowLowerLeft.js.map +1 -1
  625. package/dist/esm/icons.generated/ArrowLowerRight.js +4 -4
  626. package/dist/esm/icons.generated/ArrowLowerRight.js.map +1 -1
  627. package/dist/esm/icons.generated/ArrowRight.js +4 -4
  628. package/dist/esm/icons.generated/ArrowRight.js.map +1 -1
  629. package/dist/esm/icons.generated/ArrowTop.js +4 -4
  630. package/dist/esm/icons.generated/ArrowTop.js.map +1 -1
  631. package/dist/esm/icons.generated/ArrowUnsorted.js +4 -4
  632. package/dist/esm/icons.generated/ArrowUnsorted.js.map +1 -1
  633. package/dist/esm/icons.generated/ArrowUp.js +4 -4
  634. package/dist/esm/icons.generated/ArrowUp.js.map +1 -1
  635. package/dist/esm/icons.generated/ArrowUpperLeft.js +4 -4
  636. package/dist/esm/icons.generated/ArrowUpperLeft.js.map +1 -1
  637. package/dist/esm/icons.generated/ArrowUpperRight.js +4 -4
  638. package/dist/esm/icons.generated/ArrowUpperRight.js.map +1 -1
  639. package/dist/esm/icons.generated/Bug.js +4 -4
  640. package/dist/esm/icons.generated/Bug.js.map +1 -1
  641. package/dist/esm/icons.generated/Calendar.js +4 -4
  642. package/dist/esm/icons.generated/Calendar.js.map +1 -1
  643. package/dist/esm/icons.generated/Call.js +4 -4
  644. package/dist/esm/icons.generated/Call.js.map +1 -1
  645. package/dist/esm/icons.generated/Chat.js +4 -4
  646. package/dist/esm/icons.generated/Chat.js.map +1 -1
  647. package/dist/esm/icons.generated/Check.js +4 -4
  648. package/dist/esm/icons.generated/Check.js.map +1 -1
  649. package/dist/esm/icons.generated/CheckCircleFilled.js +4 -4
  650. package/dist/esm/icons.generated/CheckCircleFilled.js.map +1 -1
  651. package/dist/esm/icons.generated/ChevronDown.js +4 -4
  652. package/dist/esm/icons.generated/ChevronDown.js.map +1 -1
  653. package/dist/esm/icons.generated/ChevronLeft.js +4 -4
  654. package/dist/esm/icons.generated/ChevronLeft.js.map +1 -1
  655. package/dist/esm/icons.generated/ChevronRight.js +4 -4
  656. package/dist/esm/icons.generated/ChevronRight.js.map +1 -1
  657. package/dist/esm/icons.generated/ChevronUp.js +4 -4
  658. package/dist/esm/icons.generated/ChevronUp.js.map +1 -1
  659. package/dist/esm/icons.generated/Clock.js +4 -4
  660. package/dist/esm/icons.generated/Clock.js.map +1 -1
  661. package/dist/esm/icons.generated/Close.js +4 -4
  662. package/dist/esm/icons.generated/Close.js.map +1 -1
  663. package/dist/esm/icons.generated/CloseCircleFilled.js +4 -4
  664. package/dist/esm/icons.generated/CloseCircleFilled.js.map +1 -1
  665. package/dist/esm/icons.generated/CollapseLeft.js +4 -4
  666. package/dist/esm/icons.generated/CollapseLeft.js.map +1 -1
  667. package/dist/esm/icons.generated/CollapseRight.js +4 -4
  668. package/dist/esm/icons.generated/CollapseRight.js.map +1 -1
  669. package/dist/esm/icons.generated/Copy.js +4 -4
  670. package/dist/esm/icons.generated/Copy.js.map +1 -1
  671. package/dist/esm/icons.generated/Custom.js +2 -2
  672. package/dist/esm/icons.generated/Custom.js.map +1 -1
  673. package/dist/esm/icons.generated/DangerDiamond.js +4 -4
  674. package/dist/esm/icons.generated/DangerDiamond.js.map +1 -1
  675. package/dist/esm/icons.generated/DangerDiamondFilled.js +4 -4
  676. package/dist/esm/icons.generated/DangerDiamondFilled.js.map +1 -1
  677. package/dist/esm/icons.generated/Delete.js +4 -4
  678. package/dist/esm/icons.generated/Delete.js.map +1 -1
  679. package/dist/esm/icons.generated/Deny.js +4 -4
  680. package/dist/esm/icons.generated/Deny.js.map +1 -1
  681. package/dist/esm/icons.generated/Devices.js +4 -4
  682. package/dist/esm/icons.generated/Devices.js.map +1 -1
  683. package/dist/esm/icons.generated/Directory.js +4 -4
  684. package/dist/esm/icons.generated/Directory.js.map +1 -1
  685. package/dist/esm/icons.generated/Documentation.js +4 -4
  686. package/dist/esm/icons.generated/Documentation.js.map +1 -1
  687. package/dist/esm/icons.generated/Download.js +4 -4
  688. package/dist/esm/icons.generated/Download.js.map +1 -1
  689. package/dist/esm/icons.generated/DragIndicator.js +4 -4
  690. package/dist/esm/icons.generated/DragIndicator.js.map +1 -1
  691. package/dist/esm/icons.generated/Duo.js +2 -2
  692. package/dist/esm/icons.generated/Duo.js.map +1 -1
  693. package/dist/esm/icons.generated/Edit.js +4 -4
  694. package/dist/esm/icons.generated/Edit.js.map +1 -1
  695. package/dist/esm/icons.generated/Email.js +4 -4
  696. package/dist/esm/icons.generated/Email.js.map +1 -1
  697. package/dist/esm/icons.generated/ExpandLeft.js +4 -4
  698. package/dist/esm/icons.generated/ExpandLeft.js.map +1 -1
  699. package/dist/esm/icons.generated/ExpandRight.js +4 -4
  700. package/dist/esm/icons.generated/ExpandRight.js.map +1 -1
  701. package/dist/esm/icons.generated/ExternalLink.js +4 -4
  702. package/dist/esm/icons.generated/ExternalLink.js.map +1 -1
  703. package/dist/esm/icons.generated/Fido2.js +10 -10
  704. package/dist/esm/icons.generated/Fido2.js.map +1 -1
  705. package/dist/esm/icons.generated/Filter.js +4 -4
  706. package/dist/esm/icons.generated/Filter.js.map +1 -1
  707. package/dist/esm/icons.generated/Folder.js +4 -4
  708. package/dist/esm/icons.generated/Folder.js.map +1 -1
  709. package/dist/esm/icons.generated/Globe.js +4 -4
  710. package/dist/esm/icons.generated/Globe.js.map +1 -1
  711. package/dist/esm/icons.generated/GoogleAuth.js +12 -12
  712. package/dist/esm/icons.generated/GoogleAuth.js.map +1 -1
  713. package/dist/esm/icons.generated/Grid.js +20 -20
  714. package/dist/esm/icons.generated/Grid.js.map +1 -1
  715. package/dist/esm/icons.generated/Group.js +4 -4
  716. package/dist/esm/icons.generated/Group.js.map +1 -1
  717. package/dist/esm/icons.generated/Hide.js +4 -4
  718. package/dist/esm/icons.generated/Hide.js.map +1 -1
  719. package/dist/esm/icons.generated/Home.js +4 -4
  720. package/dist/esm/icons.generated/Home.js.map +1 -1
  721. package/dist/esm/icons.generated/Idp.js +4 -4
  722. package/dist/esm/icons.generated/Idp.js.map +1 -1
  723. package/dist/esm/icons.generated/InformationCircle.js +4 -4
  724. package/dist/esm/icons.generated/InformationCircle.js.map +1 -1
  725. package/dist/esm/icons.generated/InformationCircleFilled.js +4 -4
  726. package/dist/esm/icons.generated/InformationCircleFilled.js.map +1 -1
  727. package/dist/esm/icons.generated/Link.js +4 -4
  728. package/dist/esm/icons.generated/Link.js.map +1 -1
  729. package/dist/esm/icons.generated/List.js +4 -4
  730. package/dist/esm/icons.generated/List.js.map +1 -1
  731. package/dist/esm/icons.generated/Lock.js +4 -4
  732. package/dist/esm/icons.generated/Lock.js.map +1 -1
  733. package/dist/esm/icons.generated/More.js +4 -4
  734. package/dist/esm/icons.generated/More.js.map +1 -1
  735. package/dist/esm/icons.generated/Notification.js +4 -4
  736. package/dist/esm/icons.generated/Notification.js.map +1 -1
  737. package/dist/esm/icons.generated/OktaVerify.js +4 -4
  738. package/dist/esm/icons.generated/OktaVerify.js.map +1 -1
  739. package/dist/esm/icons.generated/OnPremMfa.js +2 -2
  740. package/dist/esm/icons.generated/OnPremMfa.js.map +1 -1
  741. package/dist/esm/icons.generated/OneTimePassword.js +2 -2
  742. package/dist/esm/icons.generated/OneTimePassword.js.map +1 -1
  743. package/dist/esm/icons.generated/Password.js +2 -2
  744. package/dist/esm/icons.generated/Password.js.map +1 -1
  745. package/dist/esm/icons.generated/Pause.js +4 -4
  746. package/dist/esm/icons.generated/Pause.js.map +1 -1
  747. package/dist/esm/icons.generated/QuestionCircle.js +4 -4
  748. package/dist/esm/icons.generated/QuestionCircle.js.map +1 -1
  749. package/dist/esm/icons.generated/QuestionCircleFilled.js +4 -4
  750. package/dist/esm/icons.generated/QuestionCircleFilled.js.map +1 -1
  751. package/dist/esm/icons.generated/Refresh.js +4 -4
  752. package/dist/esm/icons.generated/Refresh.js.map +1 -1
  753. package/dist/esm/icons.generated/Reset.js +4 -4
  754. package/dist/esm/icons.generated/Reset.js.map +1 -1
  755. package/dist/esm/icons.generated/Resume.js +4 -4
  756. package/dist/esm/icons.generated/Resume.js.map +1 -1
  757. package/dist/esm/icons.generated/Search.js +4 -4
  758. package/dist/esm/icons.generated/Search.js.map +1 -1
  759. package/dist/esm/icons.generated/SecurityQuestion.js +4 -4
  760. package/dist/esm/icons.generated/SecurityQuestion.js.map +1 -1
  761. package/dist/esm/icons.generated/Send.js +32 -0
  762. package/dist/esm/icons.generated/Send.js.map +1 -0
  763. package/dist/esm/icons.generated/Server.js +4 -4
  764. package/dist/esm/icons.generated/Server.js.map +1 -1
  765. package/dist/esm/icons.generated/Settings.js +4 -4
  766. package/dist/esm/icons.generated/Settings.js.map +1 -1
  767. package/dist/esm/icons.generated/Show.js +4 -4
  768. package/dist/esm/icons.generated/Show.js.map +1 -1
  769. package/dist/esm/icons.generated/SmartCard.js +2 -2
  770. package/dist/esm/icons.generated/SmartCard.js.map +1 -1
  771. package/dist/esm/icons.generated/Sms.js +2 -2
  772. package/dist/esm/icons.generated/Sms.js.map +1 -1
  773. package/dist/esm/icons.generated/Subtract.js +4 -4
  774. package/dist/esm/icons.generated/Subtract.js.map +1 -1
  775. package/dist/esm/icons.generated/SymantecVip.js +2 -2
  776. package/dist/esm/icons.generated/SymantecVip.js.map +1 -1
  777. package/dist/esm/icons.generated/Sync.js +4 -4
  778. package/dist/esm/icons.generated/Sync.js.map +1 -1
  779. package/dist/esm/icons.generated/ThumbsDown.js +4 -4
  780. package/dist/esm/icons.generated/ThumbsDown.js.map +1 -1
  781. package/dist/esm/icons.generated/ThumbsUp.js +4 -4
  782. package/dist/esm/icons.generated/ThumbsUp.js.map +1 -1
  783. package/dist/esm/icons.generated/Unlock.js +4 -4
  784. package/dist/esm/icons.generated/Unlock.js.map +1 -1
  785. package/dist/esm/icons.generated/Upload.js +4 -4
  786. package/dist/esm/icons.generated/Upload.js.map +1 -1
  787. package/dist/esm/icons.generated/User.js +4 -4
  788. package/dist/esm/icons.generated/User.js.map +1 -1
  789. package/dist/esm/icons.generated/Video.js +4 -4
  790. package/dist/esm/icons.generated/Video.js.map +1 -1
  791. package/dist/esm/icons.generated/VoiceCall.js +4 -4
  792. package/dist/esm/icons.generated/VoiceCall.js.map +1 -1
  793. package/dist/esm/icons.generated/Warning.js +4 -4
  794. package/dist/esm/icons.generated/Warning.js.map +1 -1
  795. package/dist/esm/icons.generated/WarningFilled.js +4 -4
  796. package/dist/esm/icons.generated/WarningFilled.js.map +1 -1
  797. package/dist/esm/icons.generated/Yubikey.js +2 -2
  798. package/dist/esm/icons.generated/Yubikey.js.map +1 -1
  799. package/dist/esm/icons.generated/index.js +2 -1
  800. package/dist/esm/icons.generated/index.js.map +1 -1
  801. package/dist/esm/inputUtils.js.map +1 -1
  802. package/dist/esm/labs/AppTile.js +21 -21
  803. package/dist/esm/labs/AppTile.js.map +1 -1
  804. package/dist/esm/labs/DataFilters.js +53 -53
  805. package/dist/esm/labs/DataFilters.js.map +1 -1
  806. package/dist/esm/labs/DataTable.js +20 -21
  807. package/dist/esm/labs/DataTable.js.map +1 -1
  808. package/dist/esm/labs/DataTablePagination.js +9 -9
  809. package/dist/esm/labs/DataTablePagination.js.map +1 -1
  810. package/dist/esm/labs/DataView/BulkActionsMenu.js +2 -2
  811. package/dist/esm/labs/DataView/BulkActionsMenu.js.map +1 -1
  812. package/dist/esm/labs/DataView/CardLayoutContent.js +7 -7
  813. package/dist/esm/labs/DataView/CardLayoutContent.js.map +1 -1
  814. package/dist/esm/labs/DataView/DataCard.js +7 -7
  815. package/dist/esm/labs/DataView/DataCard.js.map +1 -1
  816. package/dist/esm/labs/DataView/DataTable.js.map +1 -1
  817. package/dist/esm/labs/DataView/DataView.js +16 -16
  818. package/dist/esm/labs/DataView/DataView.js.map +1 -1
  819. package/dist/esm/labs/DataView/DetailPanel.js.map +1 -1
  820. package/dist/esm/labs/DataView/LayoutSwitcher.js +2 -2
  821. package/dist/esm/labs/DataView/LayoutSwitcher.js.map +1 -1
  822. package/dist/esm/labs/DataView/RowActions.js +1 -1
  823. package/dist/esm/labs/DataView/RowActions.js.map +1 -1
  824. package/dist/esm/labs/DataView/TableLayoutContent.js +8 -8
  825. package/dist/esm/labs/DataView/TableLayoutContent.js.map +1 -1
  826. package/dist/esm/labs/DataView/TableSettings.js +3 -4
  827. package/dist/esm/labs/DataView/TableSettings.js.map +1 -1
  828. package/dist/esm/labs/DataView/componentTypes.js.map +1 -1
  829. package/dist/esm/labs/DataView/fetchData.js.map +1 -1
  830. package/dist/esm/labs/DataView/index.js.map +1 -1
  831. package/dist/esm/labs/DataView/tableConstants.js.map +1 -1
  832. package/dist/esm/labs/DataView/testSupportData.js.map +1 -1
  833. package/dist/esm/labs/DataView/useFilterConversion.js.map +1 -1
  834. package/dist/esm/labs/DatePickers/DateTimeField.js +2 -3
  835. package/dist/esm/labs/DatePickers/DateTimeField.js.map +1 -1
  836. package/dist/esm/labs/DatePickers/DateTimePicker.js +14 -10
  837. package/dist/esm/labs/DatePickers/DateTimePicker.js.map +1 -1
  838. package/dist/esm/labs/DatePickers/dateTimePickerTheme.js +3 -3
  839. package/dist/esm/labs/DatePickers/dateTimePickerTheme.js.map +1 -1
  840. package/dist/esm/labs/GroupPicker.js +5 -5
  841. package/dist/esm/labs/GroupPicker.js.map +1 -1
  842. package/dist/esm/labs/OdysseyPickers/ComposablePicker.js +3 -4
  843. package/dist/esm/labs/OdysseyPickers/ComposablePicker.js.map +1 -1
  844. package/dist/esm/labs/OdysseyPickers/Picker.js +4 -4
  845. package/dist/esm/labs/OdysseyPickers/Picker.js.map +1 -1
  846. package/dist/esm/labs/OdysseyPickers/PickerVirtualizationListBox.js +7 -7
  847. package/dist/esm/labs/OdysseyPickers/PickerVirtualizationListBox.js.map +1 -1
  848. package/dist/esm/labs/OdysseyPickers/PickerWithOptionAdornment.js +13 -13
  849. package/dist/esm/labs/OdysseyPickers/PickerWithOptionAdornment.js.map +1 -1
  850. package/dist/esm/labs/OdysseyPickers/SearchDropdown.js +12 -12
  851. package/dist/esm/labs/OdysseyPickers/SearchDropdown.js.map +1 -1
  852. package/dist/esm/labs/OdysseyPickers/index.js.map +1 -1
  853. package/dist/esm/labs/PageTemplate/DocumentationLink.js +0 -1
  854. package/dist/esm/labs/PageTemplate/DocumentationLink.js.map +1 -1
  855. package/dist/esm/labs/PageTemplate/Layout.js +1 -1
  856. package/dist/esm/labs/PageTemplate/Layout.js.map +1 -1
  857. package/dist/esm/labs/PageTemplate/PageTemplate.js +3 -3
  858. package/dist/esm/labs/PageTemplate/PageTemplate.js.map +1 -1
  859. package/dist/esm/labs/PaginatedTable.js +2 -2
  860. package/dist/esm/labs/PaginatedTable.js.map +1 -1
  861. package/dist/esm/labs/StaticTable.js +1 -1
  862. package/dist/esm/labs/StaticTable.js.map +1 -1
  863. package/dist/esm/labs/UserProfile.js.map +1 -1
  864. package/dist/esm/labs/UserProfileMenuButton.js +7 -7
  865. package/dist/esm/labs/UserProfileMenuButton.js.map +1 -1
  866. package/dist/esm/labs/index.js +9 -9
  867. package/dist/esm/labs/index.js.map +1 -1
  868. package/dist/esm/properties/ts/odyssey-react-mui.js +5 -0
  869. package/dist/esm/properties/ts/odyssey-react-mui.js.map +1 -1
  870. package/dist/esm/properties/ts/odyssey-react-mui_ok_PL.js +5 -0
  871. package/dist/esm/properties/ts/odyssey-react-mui_ok_PL.js.map +1 -1
  872. package/dist/esm/properties/ts/odyssey-react-mui_ok_SK.js +133 -129
  873. package/dist/esm/properties/ts/odyssey-react-mui_ok_SK.js.map +1 -1
  874. package/dist/esm/test-selectors/getByQuerySelector.js.map +1 -1
  875. package/dist/esm/test-selectors/getComputedAccessibleText.js +1 -1
  876. package/dist/esm/test-selectors/getComputedAccessibleText.js.map +1 -1
  877. package/dist/esm/test-selectors/linkedHtmlSelectors.js +1 -1
  878. package/dist/esm/test-selectors/linkedHtmlSelectors.js.map +1 -1
  879. package/dist/esm/test-selectors/queryOdysseySelector.js +1 -1
  880. package/dist/esm/test-selectors/queryOdysseySelector.js.map +1 -1
  881. package/dist/esm/test-selectors/querySelector.js +1 -1
  882. package/dist/esm/test-selectors/querySelector.js.map +1 -1
  883. package/dist/esm/theme/components.js +2 -2
  884. package/dist/esm/theme/components.js.map +1 -1
  885. package/dist/esm/theme/components.types.js.map +1 -1
  886. package/dist/esm/theme/createOdysseyMuiTheme.js +2 -2
  887. package/dist/esm/theme/createOdysseyMuiTheme.js.map +1 -1
  888. package/dist/esm/theme/mixins.types.js.map +1 -1
  889. package/dist/esm/theme/typography.types.js.map +1 -1
  890. package/dist/esm/ui-shell/AppSwitcher/AppSwitcher.js +2 -2
  891. package/dist/esm/ui-shell/AppSwitcher/AppSwitcher.js.map +1 -1
  892. package/dist/esm/ui-shell/AppSwitcher/AppSwitcherApp.js +9 -9
  893. package/dist/esm/ui-shell/AppSwitcher/AppSwitcherApp.js.map +1 -1
  894. package/dist/esm/ui-shell/AppSwitcher/OktaAura.js +5 -5
  895. package/dist/esm/ui-shell/AppSwitcher/OktaAura.js.map +1 -1
  896. package/dist/esm/ui-shell/InnerAppContainer.js.map +1 -1
  897. package/dist/esm/ui-shell/NarrowUiShellContent.js +5 -5
  898. package/dist/esm/ui-shell/NarrowUiShellContent.js.map +1 -1
  899. package/dist/esm/ui-shell/SideNav/CollapseIcon.js +2 -2
  900. package/dist/esm/ui-shell/SideNav/CollapseIcon.js.map +1 -1
  901. package/dist/esm/ui-shell/SideNav/HandleIcon.js +4 -4
  902. package/dist/esm/ui-shell/SideNav/HandleIcon.js.map +1 -1
  903. package/dist/esm/ui-shell/SideNav/NavAccordion.js +5 -5
  904. package/dist/esm/ui-shell/SideNav/NavAccordion.js.map +1 -1
  905. package/dist/esm/ui-shell/SideNav/OktaLogo.js +2 -2
  906. package/dist/esm/ui-shell/SideNav/OktaLogo.js.map +1 -1
  907. package/dist/esm/ui-shell/SideNav/SideNav.js +23 -23
  908. package/dist/esm/ui-shell/SideNav/SideNav.js.map +1 -1
  909. package/dist/esm/ui-shell/SideNav/SideNavFooterContent.js +4 -4
  910. package/dist/esm/ui-shell/SideNav/SideNavFooterContent.js.map +1 -1
  911. package/dist/esm/ui-shell/SideNav/SideNavHeader.js +4 -4
  912. package/dist/esm/ui-shell/SideNav/SideNavHeader.js.map +1 -1
  913. package/dist/esm/ui-shell/SideNav/SideNavItemContent.js +22 -22
  914. package/dist/esm/ui-shell/SideNav/SideNavItemContent.js.map +1 -1
  915. package/dist/esm/ui-shell/SideNav/SideNavItemContentContext.js.map +1 -1
  916. package/dist/esm/ui-shell/SideNav/SideNavItemLinkContent.js +5 -5
  917. package/dist/esm/ui-shell/SideNav/SideNavItemLinkContent.js.map +1 -1
  918. package/dist/esm/ui-shell/SideNav/SideNavLogo.js +3 -3
  919. package/dist/esm/ui-shell/SideNav/SideNavLogo.js.map +1 -1
  920. package/dist/esm/ui-shell/SideNav/SideNavToggleButton.js +3 -2
  921. package/dist/esm/ui-shell/SideNav/SideNavToggleButton.js.map +1 -1
  922. package/dist/esm/ui-shell/SideNav/SortableList/SortableItem.js +5 -5
  923. package/dist/esm/ui-shell/SideNav/SortableList/SortableItem.js.map +1 -1
  924. package/dist/esm/ui-shell/SideNav/SortableList/SortableList.js +9 -9
  925. package/dist/esm/ui-shell/SideNav/SortableList/SortableList.js.map +1 -1
  926. package/dist/esm/ui-shell/SideNav/SortableList/SortableOverlay.js.map +1 -1
  927. package/dist/esm/ui-shell/SideNav/index.js +1 -1
  928. package/dist/esm/ui-shell/SideNav/index.js.map +1 -1
  929. package/dist/esm/ui-shell/SideNav/types.js.map +1 -1
  930. package/dist/esm/ui-shell/TopNav/HamburgerMenuIcon.js +4 -4
  931. package/dist/esm/ui-shell/TopNav/HamburgerMenuIcon.js.map +1 -1
  932. package/dist/esm/ui-shell/TopNav/TopNav.js.map +1 -1
  933. package/dist/esm/ui-shell/TopNav/TopNavLinksList.js.map +1 -1
  934. package/dist/esm/ui-shell/TopNav/TopNavListItem.js.map +1 -1
  935. package/dist/esm/ui-shell/UiShell.js +2 -2
  936. package/dist/esm/ui-shell/UiShell.js.map +1 -1
  937. package/dist/esm/ui-shell/UiShellProvider.js.map +1 -1
  938. package/dist/esm/ui-shell/WideUiShellContent.js +4 -4
  939. package/dist/esm/ui-shell/WideUiShellContent.js.map +1 -1
  940. package/dist/esm/ui-shell/renderUiShell.js +2 -2
  941. package/dist/esm/ui-shell/renderUiShell.js.map +1 -1
  942. package/dist/esm/ui-shell/useElementAtContainerEdge.js +1 -1
  943. package/dist/esm/ui-shell/useElementAtContainerEdge.js.map +1 -1
  944. package/dist/esm/ui-shell/useUiShellBreakpoints.js.map +1 -1
  945. package/dist/esm/useAutocomplete.js +6 -7
  946. package/dist/esm/useAutocomplete.js.map +1 -1
  947. package/dist/esm/useContrastMode.js +1 -1
  948. package/dist/esm/useContrastMode.js.map +1 -1
  949. package/dist/esm/useSessionStorageState.js.map +1 -1
  950. package/dist/esm/web-component/odysseyWebComponentVersion.generated.js +1 -1
  951. package/dist/esm/web-component/odysseyWebComponentVersion.generated.js.map +1 -1
  952. package/dist/esm/web-component/renderReactInWebComponent.js +1 -1
  953. package/dist/esm/web-component/renderReactInWebComponent.js.map +1 -1
  954. package/dist/tsconfig.production.tsbuildinfo +1 -1
  955. package/dist/types/Accordion.d.ts +7 -7
  956. package/dist/types/Accordion.d.ts.map +1 -1
  957. package/dist/types/Autocomplete.d.ts +11 -11
  958. package/dist/types/Autocomplete.d.ts.map +1 -1
  959. package/dist/types/Badge.d.ts.map +1 -1
  960. package/dist/types/Banner.d.ts.map +1 -1
  961. package/dist/types/Box.d.ts.map +1 -1
  962. package/dist/types/Breadcrumbs.d.ts.map +1 -1
  963. package/dist/types/Buttons/BaseButton.d.ts +20 -20
  964. package/dist/types/Buttons/BaseButton.d.ts.map +1 -1
  965. package/dist/types/Buttons/BaseMenuButton.d.ts +6 -6
  966. package/dist/types/Buttons/BaseMenuButton.d.ts.map +1 -1
  967. package/dist/types/Buttons/Button.d.ts.map +1 -1
  968. package/dist/types/Buttons/MenuButton.d.ts.map +1 -1
  969. package/dist/types/Buttons/MenuContext.d.ts.map +1 -1
  970. package/dist/types/Buttons/MenuItem.d.ts +4 -4
  971. package/dist/types/Buttons/MenuItem.d.ts.map +1 -1
  972. package/dist/types/Buttons/index.d.ts +1 -1
  973. package/dist/types/Buttons/index.d.ts.map +1 -1
  974. package/dist/types/Callout.d.ts +1 -1
  975. package/dist/types/Callout.d.ts.map +1 -1
  976. package/dist/types/Card.d.ts +2 -2
  977. package/dist/types/Card.d.ts.map +1 -1
  978. package/dist/types/Checkbox.d.ts +6 -6
  979. package/dist/types/Checkbox.d.ts.map +1 -1
  980. package/dist/types/CheckboxGroup.d.ts +1 -1
  981. package/dist/types/CheckboxGroup.d.ts.map +1 -1
  982. package/dist/types/DataTable/DataTable.d.ts +42 -42
  983. package/dist/types/DataTable/DataTable.d.ts.map +1 -1
  984. package/dist/types/DataTable/DataTableRowActions.d.ts +2 -2
  985. package/dist/types/DataTable/DataTableRowActions.d.ts.map +1 -1
  986. package/dist/types/DataTable/DataTableSettings.d.ts +5 -5
  987. package/dist/types/DataTable/DataTableSettings.d.ts.map +1 -1
  988. package/dist/types/DataTable/index.d.ts +2 -2
  989. package/dist/types/DataTable/index.d.ts.map +1 -1
  990. package/dist/types/DataTable/reorderDataRowsLocally.d.ts +1 -1
  991. package/dist/types/DataTable/reorderDataRowsLocally.d.ts.map +1 -1
  992. package/dist/types/DataTable/useRowReordering.d.ts +10 -10
  993. package/dist/types/DataTable/useRowReordering.d.ts.map +1 -1
  994. package/dist/types/DataTable/useScrollIndication.d.ts +3 -3
  995. package/dist/types/DataTable/useScrollIndication.d.ts.map +1 -1
  996. package/dist/types/DatePickers/DateField.d.ts.map +1 -1
  997. package/dist/types/DatePickers/DateFieldActionBar.d.ts.map +1 -1
  998. package/dist/types/DatePickers/DateFieldLocalizationProvider.d.ts +1 -1
  999. package/dist/types/DatePickers/DateFieldLocalizationProvider.d.ts.map +1 -1
  1000. package/dist/types/DatePickers/DatePicker.d.ts +2 -2
  1001. package/dist/types/DatePickers/DatePicker.d.ts.map +1 -1
  1002. package/dist/types/DatePickers/datePickerTheme.d.ts +1 -1
  1003. package/dist/types/DatePickers/datePickerTheme.d.ts.map +1 -1
  1004. package/dist/types/DatePickers/useOdysseyDateFields.d.ts +8 -8
  1005. package/dist/types/DatePickers/useOdysseyDateFields.d.ts.map +1 -1
  1006. package/dist/types/Dialog.d.ts +20 -16
  1007. package/dist/types/Dialog.d.ts.map +1 -1
  1008. package/dist/types/Drawer.d.ts +17 -13
  1009. package/dist/types/Drawer.d.ts.map +1 -1
  1010. package/dist/types/EmptyState.d.ts +4 -4
  1011. package/dist/types/EmptyState.d.ts.map +1 -1
  1012. package/dist/types/ErrorMessageList.d.ts.map +1 -1
  1013. package/dist/types/Field.d.ts +5 -5
  1014. package/dist/types/Field.d.ts.map +1 -1
  1015. package/dist/types/FieldError.d.ts.map +1 -1
  1016. package/dist/types/FieldHint.d.ts +2 -2
  1017. package/dist/types/FieldHint.d.ts.map +1 -1
  1018. package/dist/types/FieldLabel.d.ts.map +1 -1
  1019. package/dist/types/Fieldset.d.ts +1 -1
  1020. package/dist/types/Fieldset.d.ts.map +1 -1
  1021. package/dist/types/FileUploader/FileUploadPreview.d.ts.map +1 -1
  1022. package/dist/types/FileUploader/FileUploader.d.ts.map +1 -1
  1023. package/dist/types/Form.d.ts +1 -1
  1024. package/dist/types/Form.d.ts.map +1 -1
  1025. package/dist/types/IconWithTooltip.d.ts +1 -1
  1026. package/dist/types/IconWithTooltip.d.ts.map +1 -1
  1027. package/dist/types/Link.d.ts +1 -1
  1028. package/dist/types/Link.d.ts.map +1 -1
  1029. package/dist/types/NativeSelect.d.ts +4 -4
  1030. package/dist/types/NativeSelect.d.ts.map +1 -1
  1031. package/dist/types/OdysseyCacheProvider.d.ts.map +1 -1
  1032. package/dist/types/OdysseyProvider.d.ts.map +1 -1
  1033. package/dist/types/OdysseyThemeProvider.d.ts +1 -1
  1034. package/dist/types/OdysseyThemeProvider.d.ts.map +1 -1
  1035. package/dist/types/OdysseyTranslationProvider.d.ts +2 -2
  1036. package/dist/types/OdysseyTranslationProvider.d.ts.map +1 -1
  1037. package/dist/types/Pagination/Pagination.d.ts.map +1 -1
  1038. package/dist/types/PasswordField.d.ts +1 -1
  1039. package/dist/types/PasswordField.d.ts.map +1 -1
  1040. package/dist/types/Radio.d.ts +6 -6
  1041. package/dist/types/Radio.d.ts.map +1 -1
  1042. package/dist/types/RadioGroup.d.ts +1 -1
  1043. package/dist/types/RadioGroup.d.ts.map +1 -1
  1044. package/dist/types/ScreenReaderText.d.ts.map +1 -1
  1045. package/dist/types/SearchField.d.ts +9 -9
  1046. package/dist/types/SearchField.d.ts.map +1 -1
  1047. package/dist/types/Select.d.ts +2 -2
  1048. package/dist/types/Select.d.ts.map +1 -1
  1049. package/dist/types/Stack.d.ts.map +1 -1
  1050. package/dist/types/Status.d.ts.map +1 -1
  1051. package/dist/types/Surface.d.ts.map +1 -1
  1052. package/dist/types/Switch.d.ts +5 -5
  1053. package/dist/types/Switch.d.ts.map +1 -1
  1054. package/dist/types/Tabs.d.ts +5 -5
  1055. package/dist/types/Tabs.d.ts.map +1 -1
  1056. package/dist/types/Tag.d.ts +4 -4
  1057. package/dist/types/Tag.d.ts.map +1 -1
  1058. package/dist/types/TagList.d.ts +1 -1
  1059. package/dist/types/TagList.d.ts.map +1 -1
  1060. package/dist/types/TextField.d.ts +8 -8
  1061. package/dist/types/TextField.d.ts.map +1 -1
  1062. package/dist/types/ToastStack.d.ts.map +1 -1
  1063. package/dist/types/Tooltip.d.ts.map +1 -1
  1064. package/dist/types/Typography.d.ts +6 -6
  1065. package/dist/types/Typography.d.ts.map +1 -1
  1066. package/dist/types/hexToRgb.d.ts +2 -2
  1067. package/dist/types/hexToRgb.d.ts.map +1 -1
  1068. package/dist/types/i18n.d.ts +15 -1
  1069. package/dist/types/i18n.d.ts.map +1 -1
  1070. package/dist/types/icons.generated/Add.d.ts.map +1 -1
  1071. package/dist/types/icons.generated/AddCircle.d.ts.map +1 -1
  1072. package/dist/types/icons.generated/Apps.d.ts.map +1 -1
  1073. package/dist/types/icons.generated/ArrowBottom.d.ts.map +1 -1
  1074. package/dist/types/icons.generated/ArrowDown.d.ts.map +1 -1
  1075. package/dist/types/icons.generated/ArrowLeft.d.ts.map +1 -1
  1076. package/dist/types/icons.generated/ArrowLowerLeft.d.ts.map +1 -1
  1077. package/dist/types/icons.generated/ArrowLowerRight.d.ts.map +1 -1
  1078. package/dist/types/icons.generated/ArrowRight.d.ts.map +1 -1
  1079. package/dist/types/icons.generated/ArrowTop.d.ts.map +1 -1
  1080. package/dist/types/icons.generated/ArrowUnsorted.d.ts.map +1 -1
  1081. package/dist/types/icons.generated/ArrowUp.d.ts.map +1 -1
  1082. package/dist/types/icons.generated/ArrowUpperLeft.d.ts.map +1 -1
  1083. package/dist/types/icons.generated/ArrowUpperRight.d.ts.map +1 -1
  1084. package/dist/types/icons.generated/Bug.d.ts.map +1 -1
  1085. package/dist/types/icons.generated/Calendar.d.ts.map +1 -1
  1086. package/dist/types/icons.generated/Call.d.ts.map +1 -1
  1087. package/dist/types/icons.generated/Chat.d.ts.map +1 -1
  1088. package/dist/types/icons.generated/Check.d.ts.map +1 -1
  1089. package/dist/types/icons.generated/CheckCircleFilled.d.ts.map +1 -1
  1090. package/dist/types/icons.generated/ChevronDown.d.ts.map +1 -1
  1091. package/dist/types/icons.generated/ChevronLeft.d.ts.map +1 -1
  1092. package/dist/types/icons.generated/ChevronRight.d.ts.map +1 -1
  1093. package/dist/types/icons.generated/ChevronUp.d.ts.map +1 -1
  1094. package/dist/types/icons.generated/Clock.d.ts.map +1 -1
  1095. package/dist/types/icons.generated/Close.d.ts.map +1 -1
  1096. package/dist/types/icons.generated/CloseCircleFilled.d.ts.map +1 -1
  1097. package/dist/types/icons.generated/CollapseLeft.d.ts.map +1 -1
  1098. package/dist/types/icons.generated/CollapseRight.d.ts.map +1 -1
  1099. package/dist/types/icons.generated/Copy.d.ts.map +1 -1
  1100. package/dist/types/icons.generated/Custom.d.ts.map +1 -1
  1101. package/dist/types/icons.generated/DangerDiamond.d.ts.map +1 -1
  1102. package/dist/types/icons.generated/DangerDiamondFilled.d.ts.map +1 -1
  1103. package/dist/types/icons.generated/Delete.d.ts.map +1 -1
  1104. package/dist/types/icons.generated/Deny.d.ts.map +1 -1
  1105. package/dist/types/icons.generated/Devices.d.ts.map +1 -1
  1106. package/dist/types/icons.generated/Directory.d.ts.map +1 -1
  1107. package/dist/types/icons.generated/Documentation.d.ts.map +1 -1
  1108. package/dist/types/icons.generated/Download.d.ts.map +1 -1
  1109. package/dist/types/icons.generated/DragIndicator.d.ts.map +1 -1
  1110. package/dist/types/icons.generated/Duo.d.ts.map +1 -1
  1111. package/dist/types/icons.generated/Edit.d.ts.map +1 -1
  1112. package/dist/types/icons.generated/Email.d.ts.map +1 -1
  1113. package/dist/types/icons.generated/ExpandLeft.d.ts.map +1 -1
  1114. package/dist/types/icons.generated/ExpandRight.d.ts.map +1 -1
  1115. package/dist/types/icons.generated/ExternalLink.d.ts.map +1 -1
  1116. package/dist/types/icons.generated/Fido2.d.ts.map +1 -1
  1117. package/dist/types/icons.generated/Filter.d.ts.map +1 -1
  1118. package/dist/types/icons.generated/Folder.d.ts.map +1 -1
  1119. package/dist/types/icons.generated/Globe.d.ts.map +1 -1
  1120. package/dist/types/icons.generated/GoogleAuth.d.ts.map +1 -1
  1121. package/dist/types/icons.generated/Grid.d.ts.map +1 -1
  1122. package/dist/types/icons.generated/Group.d.ts.map +1 -1
  1123. package/dist/types/icons.generated/Hide.d.ts.map +1 -1
  1124. package/dist/types/icons.generated/Home.d.ts.map +1 -1
  1125. package/dist/types/icons.generated/Idp.d.ts.map +1 -1
  1126. package/dist/types/icons.generated/InformationCircle.d.ts.map +1 -1
  1127. package/dist/types/icons.generated/InformationCircleFilled.d.ts.map +1 -1
  1128. package/dist/types/icons.generated/Link.d.ts.map +1 -1
  1129. package/dist/types/icons.generated/List.d.ts.map +1 -1
  1130. package/dist/types/icons.generated/Lock.d.ts.map +1 -1
  1131. package/dist/types/icons.generated/More.d.ts.map +1 -1
  1132. package/dist/types/icons.generated/Notification.d.ts.map +1 -1
  1133. package/dist/types/icons.generated/OktaVerify.d.ts.map +1 -1
  1134. package/dist/types/icons.generated/OnPremMfa.d.ts.map +1 -1
  1135. package/dist/types/icons.generated/OneTimePassword.d.ts.map +1 -1
  1136. package/dist/types/icons.generated/Password.d.ts.map +1 -1
  1137. package/dist/types/icons.generated/Pause.d.ts.map +1 -1
  1138. package/dist/types/icons.generated/QuestionCircle.d.ts.map +1 -1
  1139. package/dist/types/icons.generated/QuestionCircleFilled.d.ts.map +1 -1
  1140. package/dist/types/icons.generated/Refresh.d.ts.map +1 -1
  1141. package/dist/types/icons.generated/Reset.d.ts.map +1 -1
  1142. package/dist/types/icons.generated/Resume.d.ts.map +1 -1
  1143. package/dist/types/icons.generated/Search.d.ts.map +1 -1
  1144. package/dist/types/icons.generated/SecurityQuestion.d.ts.map +1 -1
  1145. package/dist/{index.js → types/icons.generated/Send.d.ts} +6 -15
  1146. package/dist/types/icons.generated/Send.d.ts.map +1 -0
  1147. package/dist/types/icons.generated/Server.d.ts.map +1 -1
  1148. package/dist/types/icons.generated/Settings.d.ts.map +1 -1
  1149. package/dist/types/icons.generated/Show.d.ts.map +1 -1
  1150. package/dist/types/icons.generated/SmartCard.d.ts.map +1 -1
  1151. package/dist/types/icons.generated/Sms.d.ts.map +1 -1
  1152. package/dist/types/icons.generated/Subtract.d.ts.map +1 -1
  1153. package/dist/types/icons.generated/SymantecVip.d.ts.map +1 -1
  1154. package/dist/types/icons.generated/Sync.d.ts.map +1 -1
  1155. package/dist/types/icons.generated/ThumbsDown.d.ts.map +1 -1
  1156. package/dist/types/icons.generated/ThumbsUp.d.ts.map +1 -1
  1157. package/dist/types/icons.generated/Unlock.d.ts.map +1 -1
  1158. package/dist/types/icons.generated/Upload.d.ts.map +1 -1
  1159. package/dist/types/icons.generated/User.d.ts.map +1 -1
  1160. package/dist/types/icons.generated/Video.d.ts.map +1 -1
  1161. package/dist/types/icons.generated/VoiceCall.d.ts.map +1 -1
  1162. package/dist/types/icons.generated/Warning.d.ts.map +1 -1
  1163. package/dist/types/icons.generated/WarningFilled.d.ts.map +1 -1
  1164. package/dist/types/icons.generated/Yubikey.d.ts.map +1 -1
  1165. package/dist/types/icons.generated/index.d.ts +2 -1
  1166. package/dist/types/icons.generated/index.d.ts.map +1 -1
  1167. package/dist/types/inputUtils.d.ts +2 -2
  1168. package/dist/types/inputUtils.d.ts.map +1 -1
  1169. package/dist/types/labs/AppTile.d.ts +7 -7
  1170. package/dist/types/labs/AppTile.d.ts.map +1 -1
  1171. package/dist/types/labs/DataFilters.d.ts +33 -33
  1172. package/dist/types/labs/DataFilters.d.ts.map +1 -1
  1173. package/dist/types/labs/DataTable.d.ts +69 -69
  1174. package/dist/types/labs/DataTable.d.ts.map +1 -1
  1175. package/dist/types/labs/DataTablePagination.d.ts +1 -1
  1176. package/dist/types/labs/DataTablePagination.d.ts.map +1 -1
  1177. package/dist/types/labs/DataView/BulkActionsMenu.d.ts +1 -1
  1178. package/dist/types/labs/DataView/BulkActionsMenu.d.ts.map +1 -1
  1179. package/dist/types/labs/DataView/CardLayoutContent.d.ts +10 -10
  1180. package/dist/types/labs/DataView/CardLayoutContent.d.ts.map +1 -1
  1181. package/dist/types/labs/DataView/DataCard.d.ts +1 -1
  1182. package/dist/types/labs/DataView/DataCard.d.ts.map +1 -1
  1183. package/dist/types/labs/DataView/DataTable.d.ts +1 -1
  1184. package/dist/types/labs/DataView/DataTable.d.ts.map +1 -1
  1185. package/dist/types/labs/DataView/DataView.d.ts.map +1 -1
  1186. package/dist/types/labs/DataView/DetailPanel.d.ts +2 -2
  1187. package/dist/types/labs/DataView/DetailPanel.d.ts.map +1 -1
  1188. package/dist/types/labs/DataView/LayoutSwitcher.d.ts.map +1 -1
  1189. package/dist/types/labs/DataView/RowActions.d.ts +1 -1
  1190. package/dist/types/labs/DataView/RowActions.d.ts.map +1 -1
  1191. package/dist/types/labs/DataView/TableLayoutContent.d.ts +9 -9
  1192. package/dist/types/labs/DataView/TableLayoutContent.d.ts.map +1 -1
  1193. package/dist/types/labs/DataView/TableSettings.d.ts +1 -1
  1194. package/dist/types/labs/DataView/TableSettings.d.ts.map +1 -1
  1195. package/dist/types/labs/DataView/componentTypes.d.ts +5 -5
  1196. package/dist/types/labs/DataView/componentTypes.d.ts.map +1 -1
  1197. package/dist/types/labs/DataView/fetchData.d.ts +2 -2
  1198. package/dist/types/labs/DataView/fetchData.d.ts.map +1 -1
  1199. package/dist/types/labs/DataView/index.d.ts +1 -1
  1200. package/dist/types/labs/DataView/index.d.ts.map +1 -1
  1201. package/dist/types/labs/DataView/tableConstants.d.ts +2 -2
  1202. package/dist/types/labs/DataView/tableConstants.d.ts.map +1 -1
  1203. package/dist/types/labs/DataView/testSupportData.d.ts +5 -5
  1204. package/dist/types/labs/DataView/testSupportData.d.ts.map +1 -1
  1205. package/dist/types/labs/DataView/useFilterConversion.d.ts +1 -1
  1206. package/dist/types/labs/DataView/useFilterConversion.d.ts.map +1 -1
  1207. package/dist/types/labs/DatePickers/DateTimeField.d.ts.map +1 -1
  1208. package/dist/types/labs/DatePickers/DateTimePicker.d.ts +2 -2
  1209. package/dist/types/labs/DatePickers/DateTimePicker.d.ts.map +1 -1
  1210. package/dist/types/labs/DatePickers/dateTimePickerTheme.d.ts.map +1 -1
  1211. package/dist/types/labs/OdysseyPickers/ComposablePicker.d.ts +1 -1
  1212. package/dist/types/labs/OdysseyPickers/ComposablePicker.d.ts.map +1 -1
  1213. package/dist/types/labs/OdysseyPickers/Picker.d.ts +2 -2
  1214. package/dist/types/labs/OdysseyPickers/Picker.d.ts.map +1 -1
  1215. package/dist/types/labs/OdysseyPickers/PickerWithOptionAdornment.d.ts.map +1 -1
  1216. package/dist/types/labs/OdysseyPickers/SearchDropdown.d.ts +2 -2
  1217. package/dist/types/labs/OdysseyPickers/SearchDropdown.d.ts.map +1 -1
  1218. package/dist/types/labs/OdysseyPickers/index.d.ts +1 -1
  1219. package/dist/types/labs/OdysseyPickers/index.d.ts.map +1 -1
  1220. package/dist/types/labs/PageTemplate/DocumentationLink.d.ts.map +1 -1
  1221. package/dist/types/labs/PageTemplate/Layout.d.ts +4 -4
  1222. package/dist/types/labs/PageTemplate/Layout.d.ts.map +1 -1
  1223. package/dist/types/labs/PageTemplate/PageTemplate.d.ts +8 -8
  1224. package/dist/types/labs/PageTemplate/PageTemplate.d.ts.map +1 -1
  1225. package/dist/types/labs/PaginatedTable.d.ts.map +1 -1
  1226. package/dist/types/labs/UserProfile.d.ts +4 -4
  1227. package/dist/types/labs/UserProfile.d.ts.map +1 -1
  1228. package/dist/types/labs/UserProfileMenuButton.d.ts.map +1 -1
  1229. package/dist/types/labs/index.d.ts +14 -14
  1230. package/dist/types/labs/index.d.ts.map +1 -1
  1231. package/dist/types/properties/ts/odyssey-react-mui.d.ts +5 -0
  1232. package/dist/types/properties/ts/odyssey-react-mui.d.ts.map +1 -1
  1233. package/dist/types/properties/ts/odyssey-react-mui_ok_PL.d.ts +5 -0
  1234. package/dist/types/properties/ts/odyssey-react-mui_ok_PL.d.ts.map +1 -1
  1235. package/dist/types/properties/ts/odyssey-react-mui_ok_SK.d.ts +5 -1
  1236. package/dist/types/properties/ts/odyssey-react-mui_ok_SK.d.ts.map +1 -1
  1237. package/dist/types/test-selectors/getByQuerySelector.d.ts +13 -13
  1238. package/dist/types/test-selectors/getByQuerySelector.d.ts.map +1 -1
  1239. package/dist/types/test-selectors/getComputedAccessibleText.d.ts +1 -1
  1240. package/dist/types/test-selectors/getComputedAccessibleText.d.ts.map +1 -1
  1241. package/dist/types/test-selectors/linkedHtmlSelectors.d.ts.map +1 -1
  1242. package/dist/types/test-selectors/queryOdysseySelector.d.ts.map +1 -1
  1243. package/dist/types/test-selectors/querySelector.d.ts +1 -1
  1244. package/dist/types/test-selectors/querySelector.d.ts.map +1 -1
  1245. package/dist/types/theme/components.d.ts +1 -1
  1246. package/dist/types/theme/components.d.ts.map +1 -1
  1247. package/dist/types/theme/components.types.d.ts +12 -12
  1248. package/dist/types/theme/components.types.d.ts.map +1 -1
  1249. package/dist/types/theme/createOdysseyMuiTheme.d.ts +1 -1
  1250. package/dist/types/theme/createOdysseyMuiTheme.d.ts.map +1 -1
  1251. package/dist/types/theme/mixins.types.d.ts +2 -2
  1252. package/dist/types/theme/mixins.types.d.ts.map +1 -1
  1253. package/dist/types/theme/typography.types.d.ts +2 -2
  1254. package/dist/types/theme/typography.types.d.ts.map +1 -1
  1255. package/dist/types/ui-shell/AppSwitcher/AppSwitcher.d.ts +1 -1
  1256. package/dist/types/ui-shell/AppSwitcher/AppSwitcher.d.ts.map +1 -1
  1257. package/dist/types/ui-shell/AppSwitcher/AppSwitcherApp.d.ts.map +1 -1
  1258. package/dist/types/ui-shell/AppSwitcher/OktaAura.d.ts.map +1 -1
  1259. package/dist/types/ui-shell/InnerAppContainer.d.ts.map +1 -1
  1260. package/dist/types/ui-shell/NarrowUiShellContent.d.ts +1 -1
  1261. package/dist/types/ui-shell/NarrowUiShellContent.d.ts.map +1 -1
  1262. package/dist/types/ui-shell/SideNav/NavAccordion.d.ts +4 -4
  1263. package/dist/types/ui-shell/SideNav/NavAccordion.d.ts.map +1 -1
  1264. package/dist/types/ui-shell/SideNav/SideNav.d.ts.map +1 -1
  1265. package/dist/types/ui-shell/SideNav/SideNavFooterContent.d.ts.map +1 -1
  1266. package/dist/types/ui-shell/SideNav/SideNavHeader.d.ts.map +1 -1
  1267. package/dist/types/ui-shell/SideNav/SideNavItemContent.d.ts +9 -9
  1268. package/dist/types/ui-shell/SideNav/SideNavItemContent.d.ts.map +1 -1
  1269. package/dist/types/ui-shell/SideNav/SideNavItemContentContext.d.ts +1 -1
  1270. package/dist/types/ui-shell/SideNav/SideNavItemContentContext.d.ts.map +1 -1
  1271. package/dist/types/ui-shell/SideNav/SideNavItemLinkContent.d.ts.map +1 -1
  1272. package/dist/types/ui-shell/SideNav/SideNavToggleButton.d.ts +1 -1
  1273. package/dist/types/ui-shell/SideNav/SideNavToggleButton.d.ts.map +1 -1
  1274. package/dist/types/ui-shell/SideNav/SortableList/SortableItem.d.ts +1 -1
  1275. package/dist/types/ui-shell/SideNav/SortableList/SortableItem.d.ts.map +1 -1
  1276. package/dist/types/ui-shell/SideNav/SortableList/SortableList.d.ts +1 -1
  1277. package/dist/types/ui-shell/SideNav/SortableList/SortableList.d.ts.map +1 -1
  1278. package/dist/types/ui-shell/SideNav/SortableList/SortableOverlay.d.ts.map +1 -1
  1279. package/dist/types/ui-shell/SideNav/index.d.ts +1 -1
  1280. package/dist/types/ui-shell/SideNav/index.d.ts.map +1 -1
  1281. package/dist/types/ui-shell/SideNav/types.d.ts +18 -18
  1282. package/dist/types/ui-shell/SideNav/types.d.ts.map +1 -1
  1283. package/dist/types/ui-shell/TopNav/HamburgerMenuIcon.d.ts.map +1 -1
  1284. package/dist/types/ui-shell/TopNav/TopNav.d.ts.map +1 -1
  1285. package/dist/types/ui-shell/TopNav/TopNavLinksList.d.ts +1 -1
  1286. package/dist/types/ui-shell/TopNav/TopNavLinksList.d.ts.map +1 -1
  1287. package/dist/types/ui-shell/TopNav/TopNavListItem.d.ts.map +1 -1
  1288. package/dist/types/ui-shell/UiShell.d.ts +2 -2
  1289. package/dist/types/ui-shell/UiShell.d.ts.map +1 -1
  1290. package/dist/types/ui-shell/UiShellProvider.d.ts +5 -5
  1291. package/dist/types/ui-shell/UiShellProvider.d.ts.map +1 -1
  1292. package/dist/types/ui-shell/WideUiShellContent.d.ts +1 -1
  1293. package/dist/types/ui-shell/WideUiShellContent.d.ts.map +1 -1
  1294. package/dist/types/ui-shell/renderUiShell.d.ts +1 -1
  1295. package/dist/types/ui-shell/renderUiShell.d.ts.map +1 -1
  1296. package/dist/types/ui-shell/useElementAtContainerEdge.d.ts +6 -6
  1297. package/dist/types/ui-shell/useElementAtContainerEdge.d.ts.map +1 -1
  1298. package/dist/types/ui-shell/useUiShellBreakpoints.d.ts +1 -1
  1299. package/dist/types/useAutocomplete.d.ts +2 -2
  1300. package/dist/types/useAutocomplete.d.ts.map +1 -1
  1301. package/dist/types/useSessionStorageState.d.ts.map +1 -1
  1302. package/dist/types/web-component/odysseyWebComponentVersion.generated.d.ts +1 -1
  1303. package/dist/types/web-component/renderReactInWebComponent.d.ts +7 -7
  1304. package/dist/types/web-component/renderReactInWebComponent.d.ts.map +1 -1
  1305. package/package.json +8 -6
  1306. package/dist/index.cjs +0 -231
  1307. package/dist/index.d.ts +0 -233
  1308. package/dist/index.d.ts.map +0 -1
  1309. package/dist/index.mjs +0 -229
  1310. package/dist/index.scss +0 -549
  1311. package/dist/tsconfig.tsbuildinfo +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"HandleIcon.js","names":["memo","jsx","_jsx","HandleIcon","width","height","viewBox","fill","xmlns","children","fillRule","clipRule","d","MemoizedHandleIcon"],"sources":["../../../../src/ui-shell/SideNav/HandleIcon.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 { memo } from \"react\";\n\nconst HandleIcon = () => {\n return (\n <svg\n width=\"32\"\n height=\"32\"\n viewBox=\"0 0 32 32\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M17.4167 6.66687L17.4167 25.3335L14.5834 25.3335L14.5834 6.66687L17.4167 6.66687Z\"\n fill=\"#6E6E6E\"\n />\n </svg>\n );\n};\nconst MemoizedHandleIcon = memo(HandleIcon);\n\nexport { MemoizedHandleIcon as HandleIcon };\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,IAAI,QAAQ,OAAO;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE7B,MAAMC,UAAU,GAAGA,CAAA,KAAM;EACvB,OACED,IAAA;IACEE,KAAK,EAAC,IAAI;IACVC,MAAM,EAAC,IAAI;IACXC,OAAO,EAAC,WAAW;IACnBC,IAAI,EAAC,MAAM;IACXC,KAAK,EAAC,4BAA4B;IAAAC,QAAA,EAElCP,IAAA;MACEQ,QAAQ,EAAC,SAAS;MAClBC,QAAQ,EAAC,SAAS;MAClBC,CAAC,EAAC,mFAAmF;MACrFL,IAAI,EAAC;IAAS,CACf;EAAC,CACC,CAAC;AAEV,CAAC;AACD,MAAMM,kBAAkB,GAAGb,IAAI,CAACG,UAAU,CAAC;AAE3C,SAASU,kBAAkB,IAAIV,UAAU","ignoreList":[]}
1
+ {"version":3,"file":"HandleIcon.js","names":["memo","jsx","_jsx","HandleIcon","fill","height","viewBox","width","xmlns","children","clipRule","d","fillRule","MemoizedHandleIcon"],"sources":["../../../../src/ui-shell/SideNav/HandleIcon.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 { memo } from \"react\";\n\nconst HandleIcon = () => {\n return (\n <svg\n fill=\"none\"\n height=\"32\"\n viewBox=\"0 0 32 32\"\n width=\"32\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n clipRule=\"evenodd\"\n d=\"M17.4167 6.66687L17.4167 25.3335L14.5834 25.3335L14.5834 6.66687L17.4167 6.66687Z\"\n fill=\"#6E6E6E\"\n fillRule=\"evenodd\"\n />\n </svg>\n );\n};\nconst MemoizedHandleIcon = memo(HandleIcon);\n\nexport { MemoizedHandleIcon as HandleIcon };\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,IAAI,QAAQ,OAAO;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE7B,MAAMC,UAAU,GAAGA,CAAA,KAAM;EACvB,OACED,IAAA;IACEE,IAAI,EAAC,MAAM;IACXC,MAAM,EAAC,IAAI;IACXC,OAAO,EAAC,WAAW;IACnBC,KAAK,EAAC,IAAI;IACVC,KAAK,EAAC,4BAA4B;IAAAC,QAAA,EAElCP,IAAA;MACEQ,QAAQ,EAAC,SAAS;MAClBC,CAAC,EAAC,mFAAmF;MACrFP,IAAI,EAAC,SAAS;MACdQ,QAAQ,EAAC;IAAS,CACnB;EAAC,CACC,CAAC;AAEV,CAAC;AACD,MAAMC,kBAAkB,GAAGb,IAAI,CAACG,UAAU,CAAC;AAE3C,SAASU,kBAAkB,IAAIV,UAAU","ignoreList":[]}
@@ -18,8 +18,8 @@ import { memo } from "react";
18
18
  import { ChevronDownIcon } from "../../icons.generated/index.js";
19
19
  import { useOdysseyDesignTokens } from "../../OdysseyDesignTokensContext.js";
20
20
  import { Support } from "../../Typography.js";
21
- import { useUniqueId } from "../../useUniqueId.js";
22
21
  import { useUiShellContext } from "../../ui-shell/UiShellProvider.js";
22
+ import { useUniqueId } from "../../useUniqueId.js";
23
23
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
24
24
  const SideNavAccordionContainer = styled("div", {
25
25
  shouldForwardProp: prop => prop !== "backgroundColor" && prop !== "fontColor"
@@ -123,33 +123,33 @@ const NavAccordion = ({
123
123
  return _jsx(SideNavAccordionContainer, {
124
124
  backgroundColor: uiShellContext?.sideNavBackgroundColor,
125
125
  children: _jsxs(_Accordion, {
126
+ className: "nav-accordion",
126
127
  defaultExpanded: isDefaultExpanded,
127
128
  disabled: isDisabled,
128
129
  disableGutters: true,
129
130
  expanded: isExpanded,
130
- className: "nav-accordion",
131
131
  children: [_jsx(AccordionSummaryContainer, {
132
132
  "aria-controls": contentId,
133
133
  className: "nav-accordion-summary",
134
134
  expandIcon: _jsx(ChevronDownIcon, {}),
135
- sideNavContrastColors: uiShellContext?.sideNavContrastColors,
136
135
  id: headerId,
137
136
  isCompact: isCompact,
138
137
  isDisabled: isDisabled,
139
138
  odysseyDesignTokens: odysseyDesignTokens,
139
+ sideNavContrastColors: uiShellContext?.sideNavContrastColors,
140
140
  children: _jsxs(Support, {
141
141
  component: "div",
142
142
  translate: translate,
143
143
  children: [startIcon && startIcon, _jsx(AccordionLabelContainer, {
144
- sideNavContrastColors: uiShellContext?.sideNavContrastColors,
145
144
  isIconVisible: Boolean(startIcon),
146
145
  odysseyDesignTokens: odysseyDesignTokens,
146
+ sideNavContrastColors: uiShellContext?.sideNavContrastColors,
147
147
  children: label
148
148
  })]
149
149
  })
150
150
  }), _jsx(_AccordionDetails, {
151
- className: "nav-accordion-details",
152
151
  "aria-labelledby": headerId,
152
+ className: "nav-accordion-details",
153
153
  children: children
154
154
  })]
155
155
  })
@@ -1 +1 @@
1
- {"version":3,"file":"NavAccordion.js","names":["styled","memo","ChevronDownIcon","useOdysseyDesignTokens","Support","useUniqueId","useUiShellContext","jsx","_jsx","jsxs","_jsxs","SideNavAccordionContainer","shouldForwardProp","prop","backgroundColor","fontColor","width","color","AccordionLabelContainer","sideNavContrastColors","odysseyDesignTokens","isIconVisible","marginInlineStart","Spacing3","fontWeight","TypographyWeightHeading","TypographyColorHeading","TypographyColorDisabled","itemDisabledFontColor","AccordionSummaryContainer","_AccordionSummary","isCompact","isDisabled","borderRadius","BorderRadiusMain","paddingBlock","paddingInline","Spacing4","opacity","svg","path","fill","HueNeutral50","itemHoverBackgroundColor","outline","boxShadow","PalettePrimaryMain","focusRingColor","Spacing2","minHeight","NavAccordion","children","label","id","idOverride","isDefaultExpanded","isExpanded","translate","startIcon","headerId","contentId","uiShellContext","sideNavBackgroundColor","_Accordion","defaultExpanded","disabled","disableGutters","expanded","className","expandIcon","component","Boolean","_AccordionDetails","MemoizedNavAccordion","displayName"],"sources":["../../../../src/ui-shell/SideNav/NavAccordion.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2023-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 Accordion as MuiAccordion,\n AccordionDetails as MuiAccordionDetails,\n AccordionSummary as MuiAccordionSummary,\n AccordionProps as MuiAccordionProps,\n} from \"@mui/material\";\nimport { PropsWithChildren, ReactNode, memo } from \"react\";\n\nimport type { HtmlProps } from \"../../HtmlProps.js\";\nimport { ChevronDownIcon } from \"../../icons.generated/index.js\";\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"../../OdysseyDesignTokensContext.js\";\nimport { Support } from \"../../Typography.js\";\nimport { useUniqueId } from \"../../useUniqueId.js\";\nimport {\n UiShellColors,\n useUiShellContext,\n} from \"../../ui-shell/UiShellProvider.js\";\nimport { ContrastColors } from \"../../createContrastColors.js\";\n\nconst SideNavAccordionContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"backgroundColor\" && prop !== \"fontColor\",\n})<{\n backgroundColor?: UiShellColors[\"sideNavBackgroundColor\"];\n fontColor?: ContrastColors[\"fontColor\"];\n}>(({ backgroundColor, fontColor }) => ({\n width: \"100%\",\n\n \".MuiAccordion-root\": {\n backgroundColor: backgroundColor,\n color: fontColor || \"inherit\",\n },\n}));\n\nexport type NavAccordionProps = {\n /**\n * The label text for the AccordionSummary\n */\n label: string;\n /**\n * Defines IDs for the header and the content of the Accordion\n */\n id?: string;\n /**\n * Determines if the Accordion component use compact layout\n */\n isCompact?: boolean;\n /**\n * Whether the item is expanded by default\n */\n isDefaultExpanded?: boolean;\n /**\n * Whether the item is disabled\n */\n isDisabled?: boolean;\n /**\n * If true, expands the accordion, otherwise collapse it.\n * Setting this prop enables control over the accordion.\n */\n isExpanded?: boolean;\n /**\n * Event fired when the expansion state of the accordion is changed\n */\n onChange?: MuiAccordionProps[\"onChange\"];\n /**\n * The icon element to display at the start of the Nav Item\n */\n startIcon?: ReactNode;\n} & Pick<HtmlProps, \"testId\" | \"translate\">;\n\nconst AccordionLabelContainer = styled(\"span\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" &&\n prop !== \"isIconVisible\" &&\n prop !== \"sideNavContrastColors\",\n})<{\n sideNavContrastColors?: UiShellColors[\"sideNavContrastColors\"];\n isIconVisible: boolean;\n odysseyDesignTokens: DesignTokens;\n}>(({ sideNavContrastColors, odysseyDesignTokens, isIconVisible }) => ({\n width: \"100%\",\n marginInlineStart: isIconVisible ? odysseyDesignTokens.Spacing3 : 0,\n fontWeight: odysseyDesignTokens.TypographyWeightHeading,\n color:\n sideNavContrastColors?.fontColor ||\n odysseyDesignTokens.TypographyColorHeading,\n\n \".Mui-disabled &\": {\n color: odysseyDesignTokens.TypographyColorDisabled,\n\n ...(sideNavContrastColors?.itemDisabledFontColor && {\n color: sideNavContrastColors?.itemDisabledFontColor,\n }),\n },\n}));\n\nconst AccordionSummaryContainer = styled(MuiAccordionSummary, {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" &&\n prop !== \"isCompact\" &&\n prop !== \"isDisabled\" &&\n prop !== \"sideNavContrastColors\",\n})<{\n sideNavContrastColors?: UiShellColors[\"sideNavContrastColors\"];\n isCompact?: boolean;\n isDisabled?: boolean;\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens, sideNavContrastColors, isCompact, isDisabled }) => ({\n borderRadius: odysseyDesignTokens.BorderRadiusMain,\n paddingBlock: odysseyDesignTokens.Spacing3,\n paddingInline: odysseyDesignTokens.Spacing4,\n\n ...(isDisabled && {\n opacity: \"1 !important\",\n\n ...(sideNavContrastColors?.itemDisabledFontColor && {\n svg: {\n path: {\n fill: `${sideNavContrastColors.itemDisabledFontColor} !important`,\n },\n },\n }),\n }),\n\n ...(!isDisabled && {\n \"&:hover\": {\n backgroundColor: odysseyDesignTokens.HueNeutral50,\n },\n }),\n\n ...(!isDisabled &&\n sideNavContrastColors?.fontColor && {\n svg: {\n path: {\n fill: `${sideNavContrastColors.fontColor} !important`,\n },\n },\n }),\n\n ...(sideNavContrastColors?.itemHoverBackgroundColor && {\n ...(!isDisabled && {\n \"&:hover\": {\n backgroundColor: sideNavContrastColors.itemHoverBackgroundColor,\n },\n }),\n }),\n\n \"&:focus-visible\": {\n backgroundColor: \"unset\",\n outline: \"none\",\n boxShadow: `inset 0 0 0 2px ${odysseyDesignTokens.PalettePrimaryMain}`,\n\n ...(sideNavContrastColors?.focusRingColor && {\n boxShadow: `inset 0 0 0 2px ${sideNavContrastColors.focusRingColor}`,\n }),\n },\n\n ...(isCompact && {\n paddingBlock: odysseyDesignTokens.Spacing2,\n minHeight: \"unset\",\n }),\n}));\n\nconst NavAccordion = ({\n children,\n label,\n id: idOverride,\n isCompact,\n isDefaultExpanded,\n isDisabled,\n isExpanded,\n translate,\n startIcon,\n}: PropsWithChildren<NavAccordionProps>) => {\n const id = useUniqueId(idOverride);\n const headerId = `${id}-header`;\n const contentId = `${id}-content`;\n const odysseyDesignTokens = useOdysseyDesignTokens();\n const uiShellContext = useUiShellContext();\n\n return (\n <SideNavAccordionContainer\n backgroundColor={uiShellContext?.sideNavBackgroundColor}\n >\n <MuiAccordion\n defaultExpanded={isDefaultExpanded}\n disabled={isDisabled}\n disableGutters\n expanded={isExpanded}\n className=\"nav-accordion\"\n >\n <AccordionSummaryContainer\n aria-controls={contentId}\n className=\"nav-accordion-summary\"\n expandIcon={<ChevronDownIcon />}\n sideNavContrastColors={uiShellContext?.sideNavContrastColors}\n id={headerId}\n isCompact={isCompact}\n isDisabled={isDisabled}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n <Support component=\"div\" translate={translate}>\n {startIcon && startIcon}\n <AccordionLabelContainer\n sideNavContrastColors={uiShellContext?.sideNavContrastColors}\n isIconVisible={Boolean(startIcon)}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n {label}\n </AccordionLabelContainer>\n </Support>\n </AccordionSummaryContainer>\n <MuiAccordionDetails\n className=\"nav-accordion-details\"\n aria-labelledby={headerId}\n >\n {children}\n </MuiAccordionDetails>\n </MuiAccordion>\n </SideNavAccordionContainer>\n );\n};\n\nconst MemoizedNavAccordion = memo(NavAccordion);\nMemoizedNavAccordion.displayName = \"NavAccordion\";\n\nexport { MemoizedNavAccordion as NavAccordion };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"NavAccordion.js","names":["styled","memo","ChevronDownIcon","useOdysseyDesignTokens","Support","useUiShellContext","useUniqueId","jsx","_jsx","jsxs","_jsxs","SideNavAccordionContainer","shouldForwardProp","prop","backgroundColor","fontColor","width","color","AccordionLabelContainer","sideNavContrastColors","odysseyDesignTokens","isIconVisible","marginInlineStart","Spacing3","fontWeight","TypographyWeightHeading","TypographyColorHeading","TypographyColorDisabled","itemDisabledFontColor","AccordionSummaryContainer","_AccordionSummary","isCompact","isDisabled","borderRadius","BorderRadiusMain","paddingBlock","paddingInline","Spacing4","opacity","svg","path","fill","HueNeutral50","itemHoverBackgroundColor","outline","boxShadow","PalettePrimaryMain","focusRingColor","Spacing2","minHeight","NavAccordion","children","label","id","idOverride","isDefaultExpanded","isExpanded","translate","startIcon","headerId","contentId","uiShellContext","sideNavBackgroundColor","_Accordion","className","defaultExpanded","disabled","disableGutters","expanded","expandIcon","component","Boolean","_AccordionDetails","MemoizedNavAccordion","displayName"],"sources":["../../../../src/ui-shell/SideNav/NavAccordion.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2023-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 Accordion as MuiAccordion,\n AccordionDetails as MuiAccordionDetails,\n AccordionProps as MuiAccordionProps,\n AccordionSummary as MuiAccordionSummary,\n} from \"@mui/material\";\nimport { memo, PropsWithChildren, ReactNode } from \"react\";\n\nimport type { HtmlProps } from \"../../HtmlProps.js\";\n\nimport { ContrastColors } from \"../../createContrastColors.js\";\nimport { ChevronDownIcon } from \"../../icons.generated/index.js\";\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"../../OdysseyDesignTokensContext.js\";\nimport { Support } from \"../../Typography.js\";\nimport {\n UiShellColors,\n useUiShellContext,\n} from \"../../ui-shell/UiShellProvider.js\";\nimport { useUniqueId } from \"../../useUniqueId.js\";\n\nconst SideNavAccordionContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"backgroundColor\" && prop !== \"fontColor\",\n})<{\n backgroundColor?: UiShellColors[\"sideNavBackgroundColor\"];\n fontColor?: ContrastColors[\"fontColor\"];\n}>(({ backgroundColor, fontColor }) => ({\n width: \"100%\",\n\n \".MuiAccordion-root\": {\n backgroundColor: backgroundColor,\n color: fontColor || \"inherit\",\n },\n}));\n\nexport type NavAccordionProps = {\n /**\n * Defines IDs for the header and the content of the Accordion\n */\n id?: string;\n /**\n * Determines if the Accordion component use compact layout\n */\n isCompact?: boolean;\n /**\n * Whether the item is expanded by default\n */\n isDefaultExpanded?: boolean;\n /**\n * Whether the item is disabled\n */\n isDisabled?: boolean;\n /**\n * If true, expands the accordion, otherwise collapse it.\n * Setting this prop enables control over the accordion.\n */\n isExpanded?: boolean;\n /**\n * The label text for the AccordionSummary\n */\n label: string;\n /**\n * Event fired when the expansion state of the accordion is changed\n */\n onChange?: MuiAccordionProps[\"onChange\"];\n /**\n * The icon element to display at the start of the Nav Item\n */\n startIcon?: ReactNode;\n} & Pick<HtmlProps, \"testId\" | \"translate\">;\n\nconst AccordionLabelContainer = styled(\"span\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" &&\n prop !== \"isIconVisible\" &&\n prop !== \"sideNavContrastColors\",\n})<{\n isIconVisible: boolean;\n odysseyDesignTokens: DesignTokens;\n sideNavContrastColors?: UiShellColors[\"sideNavContrastColors\"];\n}>(({ sideNavContrastColors, odysseyDesignTokens, isIconVisible }) => ({\n width: \"100%\",\n marginInlineStart: isIconVisible ? odysseyDesignTokens.Spacing3 : 0,\n fontWeight: odysseyDesignTokens.TypographyWeightHeading,\n color:\n sideNavContrastColors?.fontColor ||\n odysseyDesignTokens.TypographyColorHeading,\n\n \".Mui-disabled &\": {\n color: odysseyDesignTokens.TypographyColorDisabled,\n\n ...(sideNavContrastColors?.itemDisabledFontColor && {\n color: sideNavContrastColors?.itemDisabledFontColor,\n }),\n },\n}));\n\nconst AccordionSummaryContainer = styled(MuiAccordionSummary, {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" &&\n prop !== \"isCompact\" &&\n prop !== \"isDisabled\" &&\n prop !== \"sideNavContrastColors\",\n})<{\n isCompact?: boolean;\n isDisabled?: boolean;\n odysseyDesignTokens: DesignTokens;\n sideNavContrastColors?: UiShellColors[\"sideNavContrastColors\"];\n}>(({ odysseyDesignTokens, sideNavContrastColors, isCompact, isDisabled }) => ({\n borderRadius: odysseyDesignTokens.BorderRadiusMain,\n paddingBlock: odysseyDesignTokens.Spacing3,\n paddingInline: odysseyDesignTokens.Spacing4,\n\n ...(isDisabled && {\n opacity: \"1 !important\",\n\n ...(sideNavContrastColors?.itemDisabledFontColor && {\n svg: {\n path: {\n fill: `${sideNavContrastColors.itemDisabledFontColor} !important`,\n },\n },\n }),\n }),\n\n ...(!isDisabled && {\n \"&:hover\": {\n backgroundColor: odysseyDesignTokens.HueNeutral50,\n },\n }),\n\n ...(!isDisabled &&\n sideNavContrastColors?.fontColor && {\n svg: {\n path: {\n fill: `${sideNavContrastColors.fontColor} !important`,\n },\n },\n }),\n\n ...(sideNavContrastColors?.itemHoverBackgroundColor && {\n ...(!isDisabled && {\n \"&:hover\": {\n backgroundColor: sideNavContrastColors.itemHoverBackgroundColor,\n },\n }),\n }),\n\n \"&:focus-visible\": {\n backgroundColor: \"unset\",\n outline: \"none\",\n boxShadow: `inset 0 0 0 2px ${odysseyDesignTokens.PalettePrimaryMain}`,\n\n ...(sideNavContrastColors?.focusRingColor && {\n boxShadow: `inset 0 0 0 2px ${sideNavContrastColors.focusRingColor}`,\n }),\n },\n\n ...(isCompact && {\n paddingBlock: odysseyDesignTokens.Spacing2,\n minHeight: \"unset\",\n }),\n}));\n\nconst NavAccordion = ({\n children,\n label,\n id: idOverride,\n isCompact,\n isDefaultExpanded,\n isDisabled,\n isExpanded,\n translate,\n startIcon,\n}: PropsWithChildren<NavAccordionProps>) => {\n const id = useUniqueId(idOverride);\n const headerId = `${id}-header`;\n const contentId = `${id}-content`;\n const odysseyDesignTokens = useOdysseyDesignTokens();\n const uiShellContext = useUiShellContext();\n\n return (\n <SideNavAccordionContainer\n backgroundColor={uiShellContext?.sideNavBackgroundColor}\n >\n <MuiAccordion\n className=\"nav-accordion\"\n defaultExpanded={isDefaultExpanded}\n disabled={isDisabled}\n disableGutters\n expanded={isExpanded}\n >\n <AccordionSummaryContainer\n aria-controls={contentId}\n className=\"nav-accordion-summary\"\n expandIcon={<ChevronDownIcon />}\n id={headerId}\n isCompact={isCompact}\n isDisabled={isDisabled}\n odysseyDesignTokens={odysseyDesignTokens}\n sideNavContrastColors={uiShellContext?.sideNavContrastColors}\n >\n <Support component=\"div\" translate={translate}>\n {startIcon && startIcon}\n <AccordionLabelContainer\n isIconVisible={Boolean(startIcon)}\n odysseyDesignTokens={odysseyDesignTokens}\n sideNavContrastColors={uiShellContext?.sideNavContrastColors}\n >\n {label}\n </AccordionLabelContainer>\n </Support>\n </AccordionSummaryContainer>\n <MuiAccordionDetails\n aria-labelledby={headerId}\n className=\"nav-accordion-details\"\n >\n {children}\n </MuiAccordionDetails>\n </MuiAccordion>\n </SideNavAccordionContainer>\n );\n};\n\nconst MemoizedNavAccordion = memo(NavAccordion);\nMemoizedNavAccordion.displayName = \"NavAccordion\";\n\nexport { MemoizedNavAccordion as NavAccordion };\n"],"mappings":";;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAOA,MAAM,MAAM,iBAAiB;AAOpC,SAASC,IAAI,QAAsC,OAAO;AAK1D,SAASC,eAAe,QAAQ,gCAAgC;AAChE,SAEEC,sBAAsB,QACjB,qCAAqC;AAC5C,SAASC,OAAO,QAAQ,qBAAqB;AAC7C,SAEEC,iBAAiB,QACZ,mCAAmC;AAC1C,SAASC,WAAW,QAAQ,sBAAsB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAEnD,MAAMC,yBAAyB,GAAGX,MAAM,CAAC,KAAK,EAAE;EAC9CY,iBAAiB,EAAGC,IAAI,IACtBA,IAAI,KAAK,iBAAiB,IAAIA,IAAI,KAAK;AAC3C,CAAC,CAAC,CAGC,CAAC;EAAEC,eAAe;EAAEC;AAAU,CAAC,MAAM;EACtCC,KAAK,EAAE,MAAM;EAEb,oBAAoB,EAAE;IACpBF,eAAe,EAAEA,eAAe;IAChCG,KAAK,EAAEF,SAAS,IAAI;EACtB;AACF,CAAC,CAAC,CAAC;AAsCH,MAAMG,uBAAuB,GAAGlB,MAAM,CAAC,MAAM,EAAE;EAC7CY,iBAAiB,EAAGC,IAAI,IACtBA,IAAI,KAAK,qBAAqB,IAC9BA,IAAI,KAAK,eAAe,IACxBA,IAAI,KAAK;AACb,CAAC,CAAC,CAIC,CAAC;EAAEM,qBAAqB;EAAEC,mBAAmB;EAAEC;AAAc,CAAC,MAAM;EACrEL,KAAK,EAAE,MAAM;EACbM,iBAAiB,EAAED,aAAa,GAAGD,mBAAmB,CAACG,QAAQ,GAAG,CAAC;EACnEC,UAAU,EAAEJ,mBAAmB,CAACK,uBAAuB;EACvDR,KAAK,EACHE,qBAAqB,EAAEJ,SAAS,IAChCK,mBAAmB,CAACM,sBAAsB;EAE5C,iBAAiB,EAAE;IACjBT,KAAK,EAAEG,mBAAmB,CAACO,uBAAuB;IAElD,IAAIR,qBAAqB,EAAES,qBAAqB,IAAI;MAClDX,KAAK,EAAEE,qBAAqB,EAAES;IAChC,CAAC;EACH;AACF,CAAC,CAAC,CAAC;AAEH,MAAMC,yBAAyB,GAAG7B,MAAM,CAAA8B,iBAAA,EAAsB;EAC5DlB,iBAAiB,EAAGC,IAAI,IACtBA,IAAI,KAAK,qBAAqB,IAC9BA,IAAI,KAAK,WAAW,IACpBA,IAAI,KAAK,YAAY,IACrBA,IAAI,KAAK;AACb,CAAC,CAAC,CAKC,CAAC;EAAEO,mBAAmB;EAAED,qBAAqB;EAAEY,SAAS;EAAEC;AAAW,CAAC,MAAM;EAC7EC,YAAY,EAAEb,mBAAmB,CAACc,gBAAgB;EAClDC,YAAY,EAAEf,mBAAmB,CAACG,QAAQ;EAC1Ca,aAAa,EAAEhB,mBAAmB,CAACiB,QAAQ;EAE3C,IAAIL,UAAU,IAAI;IAChBM,OAAO,EAAE,cAAc;IAEvB,IAAInB,qBAAqB,EAAES,qBAAqB,IAAI;MAClDW,GAAG,EAAE;QACHC,IAAI,EAAE;UACJC,IAAI,EAAE,GAAGtB,qBAAqB,CAACS,qBAAqB;QACtD;MACF;IACF,CAAC;EACH,CAAC,CAAC;EAEF,IAAI,CAACI,UAAU,IAAI;IACjB,SAAS,EAAE;MACTlB,eAAe,EAAEM,mBAAmB,CAACsB;IACvC;EACF,CAAC,CAAC;EAEF,IAAI,CAACV,UAAU,IACbb,qBAAqB,EAAEJ,SAAS,IAAI;IAClCwB,GAAG,EAAE;MACHC,IAAI,EAAE;QACJC,IAAI,EAAE,GAAGtB,qBAAqB,CAACJ,SAAS;MAC1C;IACF;EACF,CAAC,CAAC;EAEJ,IAAII,qBAAqB,EAAEwB,wBAAwB,IAAI;IACrD,IAAI,CAACX,UAAU,IAAI;MACjB,SAAS,EAAE;QACTlB,eAAe,EAAEK,qBAAqB,CAACwB;MACzC;IACF,CAAC;EACH,CAAC,CAAC;EAEF,iBAAiB,EAAE;IACjB7B,eAAe,EAAE,OAAO;IACxB8B,OAAO,EAAE,MAAM;IACfC,SAAS,EAAE,mBAAmBzB,mBAAmB,CAAC0B,kBAAkB,EAAE;IAEtE,IAAI3B,qBAAqB,EAAE4B,cAAc,IAAI;MAC3CF,SAAS,EAAE,mBAAmB1B,qBAAqB,CAAC4B,cAAc;IACpE,CAAC;EACH,CAAC;EAED,IAAIhB,SAAS,IAAI;IACfI,YAAY,EAAEf,mBAAmB,CAAC4B,QAAQ;IAC1CC,SAAS,EAAE;EACb,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,MAAMC,YAAY,GAAGA,CAAC;EACpBC,QAAQ;EACRC,KAAK;EACLC,EAAE,EAAEC,UAAU;EACdvB,SAAS;EACTwB,iBAAiB;EACjBvB,UAAU;EACVwB,UAAU;EACVC,SAAS;EACTC;AACoC,CAAC,KAAK;EAC1C,MAAML,EAAE,GAAG/C,WAAW,CAACgD,UAAU,CAAC;EAClC,MAAMK,QAAQ,GAAG,GAAGN,EAAE,SAAS;EAC/B,MAAMO,SAAS,GAAG,GAAGP,EAAE,UAAU;EACjC,MAAMjC,mBAAmB,GAAGjB,sBAAsB,CAAC,CAAC;EACpD,MAAM0D,cAAc,GAAGxD,iBAAiB,CAAC,CAAC;EAE1C,OACEG,IAAA,CAACG,yBAAyB;IACxBG,eAAe,EAAE+C,cAAc,EAAEC,sBAAuB;IAAAX,QAAA,EAExDzC,KAAA,CAAAqD,UAAA;MACEC,SAAS,EAAC,eAAe;MACzBC,eAAe,EAAEV,iBAAkB;MACnCW,QAAQ,EAAElC,UAAW;MACrBmC,cAAc;MACdC,QAAQ,EAAEZ,UAAW;MAAAL,QAAA,GAErB3C,IAAA,CAACqB,yBAAyB;QACxB,iBAAe+B,SAAU;QACzBI,SAAS,EAAC,uBAAuB;QACjCK,UAAU,EAAE7D,IAAA,CAACN,eAAe,IAAE,CAAE;QAChCmD,EAAE,EAAEM,QAAS;QACb5B,SAAS,EAAEA,SAAU;QACrBC,UAAU,EAAEA,UAAW;QACvBZ,mBAAmB,EAAEA,mBAAoB;QACzCD,qBAAqB,EAAE0C,cAAc,EAAE1C,qBAAsB;QAAAgC,QAAA,EAE7DzC,KAAA,CAACN,OAAO;UAACkE,SAAS,EAAC,KAAK;UAACb,SAAS,EAAEA,SAAU;UAAAN,QAAA,GAC3CO,SAAS,IAAIA,SAAS,EACvBlD,IAAA,CAACU,uBAAuB;YACtBG,aAAa,EAAEkD,OAAO,CAACb,SAAS,CAAE;YAClCtC,mBAAmB,EAAEA,mBAAoB;YACzCD,qBAAqB,EAAE0C,cAAc,EAAE1C,qBAAsB;YAAAgC,QAAA,EAE5DC;UAAK,CACiB,CAAC;QAAA,CACnB;MAAC,CACe,CAAC,EAC5B5C,IAAA,CAAAgE,iBAAA;QACE,mBAAiBb,QAAS;QAC1BK,SAAS,EAAC,uBAAuB;QAAAb,QAAA,EAEhCA;MAAQ,CACU,CAAC;IAAA,CACV;EAAC,CACU,CAAC;AAEhC,CAAC;AAED,MAAMsB,oBAAoB,GAAGxE,IAAI,CAACiD,YAAY,CAAC;AAC/CuB,oBAAoB,CAACC,WAAW,GAAG,cAAc;AAEjD,SAASD,oBAAoB,IAAIvB,YAAY","ignoreList":[]}
@@ -14,10 +14,10 @@ import { memo } from "react";
14
14
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
15
15
  const OktaLogo = () => {
16
16
  return _jsxs("svg", {
17
- width: "67",
17
+ fill: "none",
18
18
  height: "24",
19
19
  viewBox: "0 0 67 24",
20
- fill: "none",
20
+ width: "67",
21
21
  xmlns: "http://www.w3.org/2000/svg",
22
22
  children: [_jsx("title", {
23
23
  children: "Okta"
@@ -1 +1 @@
1
- {"version":3,"file":"OktaLogo.js","names":["memo","jsx","_jsx","jsxs","_jsxs","OktaLogo","width","height","viewBox","fill","xmlns","children","d","MemoizedOktaLogo"],"sources":["../../../../src/ui-shell/SideNav/OktaLogo.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 { memo } from \"react\";\n\nconst OktaLogo = () => {\n return (\n <svg\n width=\"67\"\n height=\"24\"\n viewBox=\"0 0 67 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <title>Okta</title>\n <path\n d=\"M55.308 20.5716C52.1058 20.5716 49.8418 18.0813 49.8418 14.8145C49.8418 11.5476 52.1058 9.0574 55.308 9.0574C58.5103 9.0574 60.7097 11.5476 60.7097 14.8145C60.7097 18.0813 58.478 20.5716 55.308 20.5716ZM54.7905 24C57.3782 24 59.5777 22.9972 60.9682 20.8947C61.2267 22.9326 62.7147 23.6763 64.5905 23.6763H66.0785V20.4418H65.4317C64.3643 20.4418 64.1058 19.9242 64.1058 18.7276V5.95153H60.6774V8.57159C59.5131 6.72814 57.3136 5.62842 54.7911 5.62842C50.2952 5.62842 46.1554 9.38051 46.1554 14.8139C46.1554 20.2473 50.2947 24 54.7905 24ZM37.1309 19.5688C37.1309 22.4797 38.942 23.6763 41.1092 23.6763H45.2813V20.4418H42.2412C40.9799 20.4418 40.7209 19.9565 40.7209 18.7276V9.18608H45.2813V5.95153H40.7209V0H37.1309V19.5688ZM20.7972 23.6763H24.3872V16.0758H25.5838L31.6969 23.6763H36.225L28.4301 14.0379L34.4139 5.9521H30.371L25.4869 12.7766H24.3872V0.00113398H20.7972V23.6763ZM9.1532 5.62842C4.13983 5.62842 0 9.38051 0 14.8139C0 20.2473 4.13983 23.9994 9.1532 23.9994C14.1666 23.9994 18.3064 20.2473 18.3064 14.8139C18.3064 9.38051 14.1666 5.62842 9.1532 5.62842ZM9.1532 20.5716C5.95096 20.5716 3.68689 18.0813 3.68689 14.8145C3.68689 11.5476 5.95096 9.0574 9.1532 9.0574C12.3554 9.0574 14.6195 11.5476 14.6195 14.8145C14.6195 18.0813 12.3554 20.5716 9.1532 20.5716Z\"\n fill=\"black\"\n />\n </svg>\n );\n};\nconst MemoizedOktaLogo = memo(OktaLogo);\n\nexport { MemoizedOktaLogo as OktaLogo };\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,IAAI,QAAQ,OAAO;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAE7B,MAAMC,QAAQ,GAAGA,CAAA,KAAM;EACrB,OACED,KAAA;IACEE,KAAK,EAAC,IAAI;IACVC,MAAM,EAAC,IAAI;IACXC,OAAO,EAAC,WAAW;IACnBC,IAAI,EAAC,MAAM;IACXC,KAAK,EAAC,4BAA4B;IAAAC,QAAA,GAElCT,IAAA;MAAAS,QAAA,EAAO;IAAI,CAAO,CAAC,EACnBT,IAAA;MACEU,CAAC,EAAC,mvCAAmvC;MACrvCH,IAAI,EAAC;IAAO,CACb,CAAC;EAAA,CACC,CAAC;AAEV,CAAC;AACD,MAAMI,gBAAgB,GAAGb,IAAI,CAACK,QAAQ,CAAC;AAEvC,SAASQ,gBAAgB,IAAIR,QAAQ","ignoreList":[]}
1
+ {"version":3,"file":"OktaLogo.js","names":["memo","jsx","_jsx","jsxs","_jsxs","OktaLogo","fill","height","viewBox","width","xmlns","children","d","MemoizedOktaLogo"],"sources":["../../../../src/ui-shell/SideNav/OktaLogo.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 { memo } from \"react\";\n\nconst OktaLogo = () => {\n return (\n <svg\n fill=\"none\"\n height=\"24\"\n viewBox=\"0 0 67 24\"\n width=\"67\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <title>Okta</title>\n <path\n d=\"M55.308 20.5716C52.1058 20.5716 49.8418 18.0813 49.8418 14.8145C49.8418 11.5476 52.1058 9.0574 55.308 9.0574C58.5103 9.0574 60.7097 11.5476 60.7097 14.8145C60.7097 18.0813 58.478 20.5716 55.308 20.5716ZM54.7905 24C57.3782 24 59.5777 22.9972 60.9682 20.8947C61.2267 22.9326 62.7147 23.6763 64.5905 23.6763H66.0785V20.4418H65.4317C64.3643 20.4418 64.1058 19.9242 64.1058 18.7276V5.95153H60.6774V8.57159C59.5131 6.72814 57.3136 5.62842 54.7911 5.62842C50.2952 5.62842 46.1554 9.38051 46.1554 14.8139C46.1554 20.2473 50.2947 24 54.7905 24ZM37.1309 19.5688C37.1309 22.4797 38.942 23.6763 41.1092 23.6763H45.2813V20.4418H42.2412C40.9799 20.4418 40.7209 19.9565 40.7209 18.7276V9.18608H45.2813V5.95153H40.7209V0H37.1309V19.5688ZM20.7972 23.6763H24.3872V16.0758H25.5838L31.6969 23.6763H36.225L28.4301 14.0379L34.4139 5.9521H30.371L25.4869 12.7766H24.3872V0.00113398H20.7972V23.6763ZM9.1532 5.62842C4.13983 5.62842 0 9.38051 0 14.8139C0 20.2473 4.13983 23.9994 9.1532 23.9994C14.1666 23.9994 18.3064 20.2473 18.3064 14.8139C18.3064 9.38051 14.1666 5.62842 9.1532 5.62842ZM9.1532 20.5716C5.95096 20.5716 3.68689 18.0813 3.68689 14.8145C3.68689 11.5476 5.95096 9.0574 9.1532 9.0574C12.3554 9.0574 14.6195 11.5476 14.6195 14.8145C14.6195 18.0813 12.3554 20.5716 9.1532 20.5716Z\"\n fill=\"black\"\n />\n </svg>\n );\n};\nconst MemoizedOktaLogo = memo(OktaLogo);\n\nexport { MemoizedOktaLogo as OktaLogo };\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,IAAI,QAAQ,OAAO;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAE7B,MAAMC,QAAQ,GAAGA,CAAA,KAAM;EACrB,OACED,KAAA;IACEE,IAAI,EAAC,MAAM;IACXC,MAAM,EAAC,IAAI;IACXC,OAAO,EAAC,WAAW;IACnBC,KAAK,EAAC,IAAI;IACVC,KAAK,EAAC,4BAA4B;IAAAC,QAAA,GAElCT,IAAA;MAAAS,QAAA,EAAO;IAAI,CAAO,CAAC,EACnBT,IAAA;MACEU,CAAC,EAAC,mvCAAmvC;MACrvCN,IAAI,EAAC;IAAO,CACb,CAAC;EAAA,CACC,CAAC;AAEV,CAAC;AACD,MAAMO,gBAAgB,GAAGb,IAAI,CAACK,QAAQ,CAAC;AAEvC,SAASQ,gBAAgB,IAAIR,QAAQ","ignoreList":[]}
@@ -11,26 +11,26 @@ import _Skeleton from "@mui/material/Skeleton";
11
11
  * See the License for the specific language governing permissions and limitations under the License.
12
12
  */
13
13
 
14
- import styled from "@emotion/styled";
15
- import { memo, useMemo, useState, useCallback, useRef, useEffect } from "react";
16
- import { useTranslation } from "react-i18next";
17
14
  import { arrayMove } from "@dnd-kit/sortable";
15
+ import styled from "@emotion/styled";
16
+ import { memo, useCallback, useEffect, useMemo, useRef, useState } from "react";
18
17
  import { ErrorBoundary } from "react-error-boundary";
19
- import { NavAccordion } from "./NavAccordion.js";
18
+ import { useTranslation } from "react-i18next";
20
19
  import { useOdysseyDesignTokens } from "../../OdysseyDesignTokensContext.js";
21
- import { useElementAtContainerEdge } from "../useElementAtContainerEdge.js";
22
20
  import { OdysseyThemeProvider } from "../../OdysseyThemeProvider.js";
21
+ import { Overline } from "../../Typography.js";
22
+ import { useUiShellContext } from "../../ui-shell/UiShellProvider.js";
23
+ import { useMountLifecycleEffect } from "../../useMountLifecycleEffect.js";
24
+ import { SIDE_NAV_VISIBILITY_TOGGLE_ICON_POSITION, SIDE_NAV_WIDTH, UI_SHELL_BASE_Z_INDEX, UI_SHELL_OVERLAY_Z_INDEX } from "../uiShellSharedConstants.js";
25
+ import { useElementAtContainerEdge } from "../useElementAtContainerEdge.js";
26
+ import { NavAccordion } from "./NavAccordion.js";
27
+ import { SideNavFooterContent } from "./SideNavFooterContent.js";
23
28
  import { SideNavHeader } from "./SideNavHeader.js";
24
29
  import { SideNavItemContent, StyledSideNavListItem } from "./SideNavItemContent.js";
25
- import { SideNavFooterContent } from "./SideNavFooterContent.js";
26
30
  import { SideNavItemContentContext } from "./SideNavItemContentContext.js";
27
31
  import { SIDE_NAV_TOGGLE_ICON_HALF_SIZE, SIDE_NAV_TOGGLE_ICON_SIZE, SideNavToggleButton } from "./SideNavToggleButton.js";
28
32
  import { SortableList } from "./SortableList/SortableList.js";
29
- import { Overline } from "../../Typography.js";
30
- import { useUiShellContext } from "../../ui-shell/UiShellProvider.js";
31
- import { SIDE_NAV_VISIBILITY_TOGGLE_ICON_POSITION, SIDE_NAV_WIDTH, UI_SHELL_BASE_Z_INDEX, UI_SHELL_OVERLAY_Z_INDEX } from "../uiShellSharedConstants.js";
32
33
  import { useIsSideNavCollapsedSessionStorage } from "./useIsSideNavCollapsedSessionStorage.js";
33
- import { useMountLifecycleEffect } from "../../useMountLifecycleEffect.js";
34
34
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
35
35
  export const SIDE_NAV_COLLAPSED_PADDING_HIGHLIGHTED = 12;
36
36
  export const SIDE_NAV_COLLAPSED_PADDING_UNHIGHLIGHTED = 2;
@@ -252,9 +252,9 @@ const LoadingItem = () => {
252
252
  return _jsxs(StyledLoadingItemContainer, {
253
253
  odysseyDesignTokens: odysseyDesignTokens,
254
254
  children: [_jsx(_Skeleton, {
255
+ height: odysseyDesignTokens.Spacing4,
255
256
  variant: "circular",
256
- width: odysseyDesignTokens.Spacing4,
257
- height: odysseyDesignTokens.Spacing4
257
+ width: odysseyDesignTokens.Spacing4
258
258
  }), _jsx(_Skeleton, {
259
259
  variant: "rounded",
260
260
  width: "100%"
@@ -487,8 +487,8 @@ const SideNav = ({
487
487
  isSideNavToggleHighlighted: isSideNavToggleHighlighted,
488
488
  odysseyDesignTokens: odysseyDesignTokens,
489
489
  children: _jsx(SideNavToggleButton, {
490
- clickAreaPadding: isSideNavCollapsed && !hasNeighbouringContentAtInlineStart ? SIDE_NAV_TOGGLE_ICON_SIZE / 2 : 0,
491
490
  ariaControls: "side-nav-expandable",
491
+ clickAreaPadding: isSideNavCollapsed && !hasNeighbouringContentAtInlineStart ? SIDE_NAV_TOGGLE_ICON_SIZE / 2 : 0,
492
492
  isSideNavCollapsed: isSideNavCollapsed,
493
493
  onClick: sideNavExpandClickHandler,
494
494
  onHighlight: onSideNavToggleButtonHighlight,
@@ -503,9 +503,9 @@ const SideNav = ({
503
503
  isSideNavCollapsed: isSideNavCollapsed,
504
504
  odysseyDesignTokens: odysseyDesignTokens,
505
505
  children: [appName || isLoading || logoProps ? _jsx(StyledSideNavHeaderContainer, {
506
+ borderColor: uiShellContext?.sideNavContrastColors?.fontColor,
506
507
  hasContentScrolled: hasContentScrolled,
507
508
  odysseyDesignTokens: odysseyDesignTokens,
508
- borderColor: uiShellContext?.sideNavContrastColors?.fontColor,
509
509
  children: isLoading && !appName && !logoProps ? _jsx(SideNavHeader, {
510
510
  isLoading: isLoading
511
511
  }) : _jsx(SideNavHeader, {
@@ -514,12 +514,12 @@ const SideNav = ({
514
514
  logoProps: logoProps
515
515
  })
516
516
  }) : _jsx("div", {}), _jsxs(StyledSideNavScrollableContainer, {
517
- odysseyDesignTokens: odysseyDesignTokens,
518
517
  "data-se": "scrollable-region",
519
518
  hasBlockStartPadding: !appName,
519
+ odysseyDesignTokens: odysseyDesignTokens,
520
520
  children: [_jsx(StyledSideNavListContainer, {
521
- role: "none",
522
521
  ref: scrollableContentRef,
522
+ role: "none",
523
523
  children: isLoading ? Array(6).fill(null).map((_, index) => _jsx(LoadingItem, {}, index)) : processedSideNavItems?.map(item => {
524
524
  const {
525
525
  childNavItems,
@@ -550,9 +550,9 @@ const SideNav = ({
550
550
  const nestedChildren = _jsx(StyledSideNavListContainer, {
551
551
  role: "presentation",
552
552
  children: isSortable ? _jsx(SortableList, {
553
- parentId: item.id,
554
553
  items: childNavItems,
555
554
  onChange: setSortedItems,
555
+ parentId: item.id,
556
556
  renderItem: sortableItem => _jsx(SortableList.Item, {
557
557
  id: sortableItem.id,
558
558
  isDisabled: sortableItem.isDisabled,
@@ -571,26 +571,26 @@ const SideNav = ({
571
571
  scrollRef: getRefIfThisIsFirstNodeWithIsSelected(item.id),
572
572
  startIcon: item.startIcon
573
573
  }), _jsx(StyledSideNavListItem, {
574
+ "aria-disabled": isDisabled,
575
+ disabled: isDisabled,
574
576
  id: `${id}-items`,
575
577
  odysseyDesignTokens: odysseyDesignTokens,
576
- disabled: isDisabled,
577
- "aria-disabled": isDisabled,
578
578
  children: nestedChildren
579
579
  })]
580
580
  }, id) : _jsx(ErrorBoundary, {
581
581
  fallback: blankElement,
582
582
  children: _jsx(StyledSideNavListItem, {
583
+ "aria-disabled": isDisabled,
584
+ disabled: isDisabled,
583
585
  id: id,
584
586
  odysseyDesignTokens: odysseyDesignTokens,
585
- disabled: isDisabled,
586
- "aria-disabled": isDisabled,
587
587
  children: _jsx(NavAccordion, {
588
- label: label,
589
588
  isCompact: isCompact,
590
589
  isDefaultExpanded: isDefaultExpanded,
590
+ isDisabled: isDisabled,
591
591
  isExpanded: isExpanded,
592
+ label: label,
592
593
  startIcon: startIcon,
593
- isDisabled: isDisabled,
594
594
  children: nestedChildren
595
595
  })
596
596
  })
@@ -1 +1 @@
1
- {"version":3,"file":"SideNav.js","names":["styled","memo","useMemo","useState","useCallback","useRef","useEffect","useTranslation","arrayMove","ErrorBoundary","NavAccordion","useOdysseyDesignTokens","useElementAtContainerEdge","OdysseyThemeProvider","SideNavHeader","SideNavItemContent","StyledSideNavListItem","SideNavFooterContent","SideNavItemContentContext","SIDE_NAV_TOGGLE_ICON_HALF_SIZE","SIDE_NAV_TOGGLE_ICON_SIZE","SideNavToggleButton","SortableList","Overline","useUiShellContext","SIDE_NAV_VISIBILITY_TOGGLE_ICON_POSITION","SIDE_NAV_WIDTH","UI_SHELL_BASE_Z_INDEX","UI_SHELL_OVERLAY_Z_INDEX","useIsSideNavCollapsedSessionStorage","useMountLifecycleEffect","jsx","_jsx","jsxs","_jsxs","SIDE_NAV_COLLAPSED_PADDING_HIGHLIGHTED","SIDE_NAV_COLLAPSED_PADDING_UNHIGHLIGHTED","StyledCollapsibleContent","shouldForwardProp","prop","odysseyDesignTokens","isSideNavCollapsed","position","display","gridTemplateColumns","height","transition","TransitionDurationMain","transitionTimingFunction","TransitionTimingMain","overflow","opacity","StyledOpacityTransitionContainer","gridTemplateRows","StyledSideNavContainer","backgroundColor","hasNeighbouringContentAtInlineStart","isAppContentWhiteBackground","isSideNavToggleHighlighted","HueNeutralWhite","width","content","pointerEvents","right","BorderWidthMain","top","userSelect","zIndex","BorderColorPrimaryControl","HueNeutral100","HueNeutral200","transform","borderRightColor","borderRightStyle","BorderStyleMain","borderRightWidth","StyledSideNavToggleButtonContainer","StyledSideNavHeaderContainer","borderColor","hasContentScrolled","flexShrink","borderBottomWidth","borderBottomStyle","borderBottomColor","concat","StyledSideNavListContainer","padding","listStyle","listStyleType","margin","StyledSideNavScrollableContainer","hasBlockStartPadding","overflowY","paddingBlockStart","Spacing2","paddingInline","StyledSectionHeaderContainer","contrastFontColor","color","HueNeutral600","marginBlock","Spacing3","paddingBlock","Spacing1","Spacing4","StyledSideNavFooter","sideNavBackgroundColor","StyledPersistentSideNavFooter","isContentScrollable","transitionProperty","transitionDuration","transitionTiming","boxShadow","StyledSideNavFooterItemsContainer","sideNavContrastColors","flexWrap","alignItems","fontSize","TypographySizeOverline","fontColor","textDecoration","HueNeutral900","StyledLoadingItemContainer","gap","getHasScrollableContent","scrollableContainer","scrollHeight","clientHeight","LoadingItem","children","_Skeleton","variant","SideNav","appName","footerComponent","footerItems","hasCustomFooter","hasSessionStorageState","isCollapsible","isCollapsed","isCompact","isLoading","isObtrusive","logoProps","onCollapse","onExpand","onSort","sideNavItems","setHasContentScrolled","setIsContentScrollable","setIsSideNavToggleHighlighted","sideNavItemsList","updateSideNavItemsList","isSideNavCollapsedLocalState","setIsSideNavCollapsedLocalState","sessionState","isSideNavCollapsedSessionState","setSessionState","setIsSideNavCollapsedSessionState","setIsSideNavCollapsed","uiShellContext","t","scrollableContentRef","resizeObserverRef","intersectionObserverRef","sideNavRef","isAtContainerInlineStart","element","current","monitoringElement","parentElement","blankElement","onMount","onUpdate","updateIsContentScrollable","resizeObserverDebounceTimer","ResizeObserver","cancelAnimationFrame","requestAnimationFrame","observe","IntersectionObserver","entries","isIntersecting","slice","sort","a","b","time","at","root","threshold","ulElement","liElement","Array","from","disconnect","scrollIntoViewRef","firstSideNavItemIdWithIsSelected","flattenedItems","flatMap","sideNavItem","nestedNavItems","firstItemWithIsSelected","find","isSelected","id","scrollIntoView","getRefIfThisIsFirstNodeWithIsSelected","itemId","undefined","sideNavItemContentProviderValue","depth","setSelectedItem","selectedItemId","updatedSideNavItems","map","item","childItem","closeSideNavMenu","processedSideNavItems","childNavItems","childProps","isDisabled","isSortable","navItem","Provider","value","onItemSelected","scrollRef","translate","sideNavExpandClickHandler","sideNavExpandKeyHandler","event","key","code","preventDefault","unsubscribe","subscribeToCloseSideNavMenu","setSortedItems","parentId","activeId","activeIndex","overIndex","sortedSideNavItems","onSideNavToggleButtonHighlight","isHighlighted","appBackgroundColor","ref","clickAreaPadding","ariaControls","onClick","onHighlight","onKeyDown","role","fill","_","index","href","isDefaultExpanded","isExpanded","isSectionHeader","label","startIcon","fallback","component","nestedChildren","items","onChange","renderItem","sortableItem","Item","disabled","MemoizedSideNav","displayName"],"sources":["../../../../src/ui-shell/SideNav/SideNav.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 memo,\n useMemo,\n useState,\n useCallback,\n useRef,\n useEffect,\n KeyboardEventHandler,\n CSSProperties,\n} from \"react\";\nimport { Skeleton } from \"@mui/material\";\nimport { useTranslation } from \"react-i18next\";\nimport { arrayMove } from \"@dnd-kit/sortable\";\nimport { UniqueIdentifier } from \"@dnd-kit/core\";\nimport { ErrorBoundary } from \"react-error-boundary\";\nimport { Property } from \"csstype\";\n\nimport { ContrastColors } from \"../../createContrastColors.js\";\nimport { NavAccordion } from \"./NavAccordion.js\";\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"../../OdysseyDesignTokensContext.js\";\nimport { useElementAtContainerEdge } from \"../useElementAtContainerEdge.js\";\nimport { OdysseyThemeProvider } from \"../../OdysseyThemeProvider.js\";\nimport type { SideNavProps } from \"./types.js\";\nimport { SideNavHeader } from \"./SideNavHeader.js\";\nimport {\n SideNavItemContent,\n StyledSideNavListItem,\n} from \"./SideNavItemContent.js\";\nimport { SideNavFooterContent } from \"./SideNavFooterContent.js\";\nimport { SideNavItemContentContext } from \"./SideNavItemContentContext.js\";\nimport {\n SIDE_NAV_TOGGLE_ICON_HALF_SIZE,\n SIDE_NAV_TOGGLE_ICON_SIZE,\n SideNavToggleButton,\n SideNavToggleButtonProps,\n} from \"./SideNavToggleButton.js\";\nimport { SortableList } from \"./SortableList/SortableList.js\";\nimport { Overline } from \"../../Typography.js\";\nimport {\n UiShellColors,\n useUiShellContext,\n} from \"../../ui-shell/UiShellProvider.js\";\nimport {\n SIDE_NAV_VISIBILITY_TOGGLE_ICON_POSITION,\n SIDE_NAV_WIDTH,\n UI_SHELL_BASE_Z_INDEX,\n UI_SHELL_OVERLAY_Z_INDEX,\n} from \"../uiShellSharedConstants.js\";\nimport { useIsSideNavCollapsedSessionStorage } from \"./useIsSideNavCollapsedSessionStorage.js\";\nimport { useMountLifecycleEffect } from \"../../useMountLifecycleEffect.js\";\n\nexport const SIDE_NAV_COLLAPSED_PADDING_HIGHLIGHTED = 12;\nexport const SIDE_NAV_COLLAPSED_PADDING_UNHIGHLIGHTED = 2;\n\nconst StyledCollapsibleContent = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" && prop !== \"isSideNavCollapsed\",\n})<{\n odysseyDesignTokens: DesignTokens;\n isSideNavCollapsed: boolean;\n}>(({ odysseyDesignTokens, isSideNavCollapsed }) => ({\n position: \"relative\",\n display: \"grid\",\n gridTemplateColumns: SIDE_NAV_WIDTH,\n height: \"100%\",\n transition: `grid-template-columns ${odysseyDesignTokens.TransitionDurationMain}, opacity 300ms`,\n transitionTimingFunction: odysseyDesignTokens.TransitionTimingMain,\n overflow: \"hidden\",\n\n ...(isSideNavCollapsed &&\n ({\n gridTemplateColumns: 0,\n opacity: 0,\n } satisfies CSSProperties)),\n}));\n\nconst StyledOpacityTransitionContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" && prop !== \"isSideNavCollapsed\",\n})(\n ({\n odysseyDesignTokens,\n isSideNavCollapsed,\n }: {\n odysseyDesignTokens: DesignTokens;\n isSideNavCollapsed: boolean;\n }) => ({\n display: \"grid\",\n gridTemplateRows: \"max-content 1fr max-content\",\n height: \"100%\",\n transition: `opacity 50ms`,\n transitionTimingFunction: odysseyDesignTokens.TransitionTimingMain,\n overflow: \"hidden\",\n\n ...(isSideNavCollapsed &&\n ({\n opacity: 0,\n } satisfies CSSProperties)),\n }),\n);\n\nconst StyledSideNavContainer = styled(\"nav\", {\n shouldForwardProp: (prop) =>\n prop !== \"backgroundColor\" &&\n prop !== \"hasNeighbouringContentAtInlineStart\" &&\n prop !== \"isAppContentWhiteBackground\" &&\n prop !== \"isSideNavCollapsed\" &&\n prop !== \"isSideNavToggleHighlighted\" &&\n prop !== \"odysseyDesignTokens\",\n})<{\n backgroundColor?: UiShellColors[\"sideNavBackgroundColor\"];\n hasNeighbouringContentAtInlineStart: boolean;\n isAppContentWhiteBackground: boolean;\n isSideNavCollapsed: boolean;\n isSideNavToggleHighlighted: boolean;\n odysseyDesignTokens: DesignTokens;\n}>(\n ({\n backgroundColor,\n hasNeighbouringContentAtInlineStart,\n isAppContentWhiteBackground,\n isSideNavCollapsed,\n isSideNavToggleHighlighted,\n odysseyDesignTokens,\n }) => ({\n // Side nav container styles\n backgroundColor: backgroundColor || odysseyDesignTokens.HueNeutralWhite,\n height: \"100%\",\n position: \"relative\",\n width: \"fit-content\",\n\n // Right-side vertical line shared\n \"&::before, &::after\": {\n content: \"''\",\n height: \"100%\",\n pointerEvents: \"none\",\n position: \"absolute\",\n right: `-${odysseyDesignTokens.BorderWidthMain}`,\n top: 0,\n transition: `opacity ${odysseyDesignTokens.TransitionDurationMain}, transform ${odysseyDesignTokens.TransitionDurationMain}, width ${odysseyDesignTokens.TransitionDurationMain}`,\n userSelect: \"none\",\n zIndex: UI_SHELL_OVERLAY_Z_INDEX,\n },\n\n // Right-side vertical line when open\n \"&::before\": {\n backgroundColor: isSideNavToggleHighlighted\n ? odysseyDesignTokens.BorderColorPrimaryControl\n : odysseyDesignTokens.HueNeutral100,\n opacity:\n isAppContentWhiteBackground ||\n (!isSideNavCollapsed && isSideNavToggleHighlighted)\n ? 1\n : 0,\n width: `calc(${odysseyDesignTokens.BorderWidthMain} * 2)`,\n },\n\n // Side nav vertical fill line when no neighboring content\n \"&::after\": {\n backgroundColor: odysseyDesignTokens.HueNeutral200,\n opacity: isSideNavCollapsed ? 1 : 0,\n transform:\n isSideNavCollapsed && !hasNeighbouringContentAtInlineStart\n ? isSideNavToggleHighlighted\n ? `translateX(calc(100% - (${odysseyDesignTokens.BorderWidthMain} * 2)))`\n : `translateX(calc(100% - ${SIDE_NAV_COLLAPSED_PADDING_HIGHLIGHTED}px))`\n : \"translateX(0)\",\n width: hasNeighbouringContentAtInlineStart\n ? 0\n : `calc(${SIDE_NAV_TOGGLE_ICON_HALF_SIZE + SIDE_NAV_COLLAPSED_PADDING_HIGHLIGHTED}px + ${odysseyDesignTokens.BorderWidthMain} * 2)`,\n\n // Right-side vertical line when collapsed\n ...((isSideNavCollapsed && isSideNavToggleHighlighted\n ? {\n borderRightColor: odysseyDesignTokens.BorderColorPrimaryControl,\n borderRightStyle:\n odysseyDesignTokens.BorderStyleMain as Property.BorderRightStyle,\n borderRightWidth: `calc(${odysseyDesignTokens.BorderWidthMain} * 2)`,\n }\n : {}) satisfies CSSProperties),\n },\n }),\n);\n\nconst StyledSideNavToggleButtonContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"hasNeighbouringContentAtInlineStart\" &&\n prop !== \"isSideNavCollapsed\" &&\n prop !== \"isSideNavToggleHighlighted\" &&\n prop !== \"odysseyDesignTokens\",\n})<{\n hasNeighbouringContentAtInlineStart: boolean;\n isSideNavCollapsed: boolean;\n isSideNavToggleHighlighted: boolean;\n odysseyDesignTokens: DesignTokens;\n}>(\n ({\n hasNeighbouringContentAtInlineStart,\n isSideNavCollapsed,\n isSideNavToggleHighlighted,\n odysseyDesignTokens,\n }) => ({\n position: \"absolute\",\n right: `${SIDE_NAV_TOGGLE_ICON_HALF_SIZE}px`,\n top: SIDE_NAV_VISIBILITY_TOGGLE_ICON_POSITION,\n width: `${SIDE_NAV_TOGGLE_ICON_SIZE}px`,\n transform:\n isSideNavCollapsed && !hasNeighbouringContentAtInlineStart\n ? isSideNavToggleHighlighted\n ? `translate3d(calc(100% + ${SIDE_NAV_TOGGLE_ICON_HALF_SIZE + SIDE_NAV_COLLAPSED_PADDING_HIGHLIGHTED}px), 0, 0)`\n : `translate3d(calc(100% + ${SIDE_NAV_TOGGLE_ICON_HALF_SIZE + SIDE_NAV_COLLAPSED_PADDING_UNHIGHLIGHTED}px), 0, 0)`\n : \"translate3d(100%, 0, 0)\",\n transition: `transform ${odysseyDesignTokens.TransitionDurationMain}`,\n zIndex: UI_SHELL_OVERLAY_Z_INDEX + 1,\n }),\n);\n\nconst StyledSideNavHeaderContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"borderColor\" &&\n prop !== \"hasContentScrolled\" &&\n prop !== \"odysseyDesignTokens\",\n})<{\n borderColor: ContrastColors[\"fontColor\"];\n hasContentScrolled: boolean;\n odysseyDesignTokens: DesignTokens;\n}>(({ borderColor, hasContentScrolled, odysseyDesignTokens }) => ({\n flexShrink: 0,\n // The bottom border should appear only if the scrollable region has been scrolled\n ...(hasContentScrolled &&\n ({\n borderBottomWidth: odysseyDesignTokens.BorderWidthMain,\n borderBottomStyle: odysseyDesignTokens.BorderStyleMain,\n borderBottomColor: odysseyDesignTokens.HueNeutral100,\n\n ...(borderColor &&\n ({\n borderBottomColor: borderColor.concat(\"15\"),\n } satisfies CSSProperties)),\n } as CSSProperties)),\n}));\n\nconst StyledSideNavListContainer = styled(\"ul\")(() => ({\n padding: 0,\n listStyle: \"none\",\n listStyleType: \"none\",\n margin: 0,\n width: \"100%\",\n}));\n\nconst StyledSideNavScrollableContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" && prop !== \"hasBlockStartPadding\",\n})<{ odysseyDesignTokens: DesignTokens; hasBlockStartPadding?: boolean }>(\n ({ odysseyDesignTokens, hasBlockStartPadding }) => ({\n display: \"inline-grid\",\n gridTemplateRows: \"1fr max-content\",\n overflowY: \"auto\",\n paddingBlockStart: hasBlockStartPadding ? odysseyDesignTokens.Spacing2 : 0,\n paddingInline: odysseyDesignTokens.Spacing2,\n }),\n);\n\nconst StyledSectionHeaderContainer = styled(\"li\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" && prop !== \"contrastFontColor\",\n})(\n ({\n contrastFontColor,\n odysseyDesignTokens,\n }: {\n contrastFontColor: ContrastColors[\"fontColor\"];\n odysseyDesignTokens: DesignTokens;\n }) => ({\n color: contrastFontColor || odysseyDesignTokens.HueNeutral600,\n marginBlock: `${odysseyDesignTokens.Spacing3}`,\n paddingBlock: odysseyDesignTokens.Spacing1,\n paddingInline: odysseyDesignTokens.Spacing4,\n }),\n);\n\nconst StyledSideNavFooter = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" && prop !== \"sideNavBackgroundColor\",\n})(\n ({\n odysseyDesignTokens,\n sideNavBackgroundColor,\n }: {\n odysseyDesignTokens: DesignTokens;\n sideNavBackgroundColor?: UiShellColors[\"sideNavBackgroundColor\"];\n }) => ({\n backgroundColor: odysseyDesignTokens.HueNeutralWhite,\n flexShrink: 0,\n padding: odysseyDesignTokens.Spacing4,\n\n ...(sideNavBackgroundColor &&\n ({\n backgroundColor: sideNavBackgroundColor,\n } satisfies CSSProperties)),\n }),\n);\n\nconst StyledPersistentSideNavFooter = styled(StyledSideNavFooter, {\n shouldForwardProp: (prop) =>\n prop !== \"isContentScrollable\" &&\n prop !== \"odysseyDesignTokens\" &&\n prop !== \"sideNavBackgroundColor\",\n})(\n ({\n isContentScrollable,\n odysseyDesignTokens,\n sideNavBackgroundColor,\n }: {\n isContentScrollable: boolean;\n odysseyDesignTokens: DesignTokens;\n sideNavBackgroundColor?: UiShellColors[\"sideNavBackgroundColor\"];\n }) => ({\n transitionProperty: \"box-shadow\",\n transitionDuration: odysseyDesignTokens.TransitionDurationMain,\n transitionTiming: odysseyDesignTokens.TransitionTimingMain,\n zIndex: UI_SHELL_BASE_Z_INDEX,\n\n // The box shadow should appear above the footer only if the scrollable region has overflow\n ...(isContentScrollable &&\n ({\n boxShadow: \"0px -8px 8px -8px rgba(39, 39, 39, 0.08)\",\n } satisfies CSSProperties)),\n\n ...(sideNavBackgroundColor &&\n ({\n backgroundColor: sideNavBackgroundColor,\n } satisfies CSSProperties)),\n }),\n);\n\nconst StyledSideNavFooterItemsContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" && prop !== \"sideNavContrastColors\",\n})<{\n odysseyDesignTokens: DesignTokens;\n sideNavContrastColors: UiShellColors[\"sideNavContrastColors\"];\n}>(({ odysseyDesignTokens, sideNavContrastColors }) => ({\n display: \"flex\",\n flexWrap: \"wrap\",\n alignItems: \"center\",\n fontSize: odysseyDesignTokens.TypographySizeOverline,\n\n \"a, span\": {\n color: odysseyDesignTokens.HueNeutral600,\n transition: `color ${odysseyDesignTokens.TransitionDurationMain}`,\n\n \"&:visited\": {\n color: odysseyDesignTokens.HueNeutral600,\n\n ...(sideNavContrastColors?.fontColor &&\n ({\n color: sideNavContrastColors?.fontColor,\n } satisfies CSSProperties)),\n },\n\n \"&:hover\": {\n textDecoration: \"none\",\n color: odysseyDesignTokens.HueNeutral900,\n\n ...(sideNavContrastColors?.fontColor &&\n ({\n color: sideNavContrastColors?.fontColor,\n } satisfies CSSProperties)),\n },\n\n ...(sideNavContrastColors?.fontColor &&\n ({\n color: sideNavContrastColors?.fontColor,\n } satisfies CSSProperties)),\n },\n}));\n\nconst StyledLoadingItemContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{ odysseyDesignTokens: DesignTokens }>(({ odysseyDesignTokens }) => ({\n alignItems: \"center\",\n display: \"flex\",\n gap: odysseyDesignTokens.Spacing2,\n paddingBlock: odysseyDesignTokens.Spacing2,\n paddingInline: odysseyDesignTokens.Spacing4,\n}));\n\nconst getHasScrollableContent = (scrollableContainer: HTMLElement) =>\n scrollableContainer.scrollHeight > scrollableContainer.clientHeight;\n\nconst LoadingItem = () => {\n const odysseyDesignTokens: DesignTokens = useOdysseyDesignTokens();\n return (\n <StyledLoadingItemContainer odysseyDesignTokens={odysseyDesignTokens}>\n <Skeleton\n variant=\"circular\"\n width={odysseyDesignTokens.Spacing4}\n height={odysseyDesignTokens.Spacing4}\n />\n <Skeleton variant=\"rounded\" width=\"100%\" />\n </StyledLoadingItemContainer>\n );\n};\n\nconst SideNav = ({\n appName,\n footerComponent,\n footerItems,\n hasCustomFooter,\n hasSessionStorageState,\n isCollapsible,\n isCollapsed = false,\n isCompact,\n isLoading,\n isObtrusive,\n logoProps,\n onCollapse,\n onExpand,\n onSort,\n sideNavItems,\n}: SideNavProps) => {\n const [hasContentScrolled, setHasContentScrolled] = useState(false);\n const [isContentScrollable, setIsContentScrollable] = useState(false);\n const [isSideNavToggleHighlighted, setIsSideNavToggleHighlighted] =\n useState(false);\n const [sideNavItemsList, updateSideNavItemsList] = useState(\n sideNavItems || [],\n );\n\n const [isSideNavCollapsedLocalState, setIsSideNavCollapsedLocalState] =\n useState(isCollapsed);\n\n const {\n sessionState: isSideNavCollapsedSessionState,\n setSessionState: setIsSideNavCollapsedSessionState,\n } = useIsSideNavCollapsedSessionStorage(isCollapsed);\n\n const isSideNavCollapsed = hasSessionStorageState\n ? isSideNavCollapsedSessionState\n : isSideNavCollapsedLocalState;\n const setIsSideNavCollapsed = hasSessionStorageState\n ? setIsSideNavCollapsedSessionState\n : setIsSideNavCollapsedLocalState;\n\n const uiShellContext = useUiShellContext();\n const odysseyDesignTokens: DesignTokens = useOdysseyDesignTokens();\n const { t } = useTranslation();\n\n const scrollableContentRef = useRef<HTMLUListElement>(null);\n const resizeObserverRef = useRef<ResizeObserver | null>(null);\n const intersectionObserverRef = useRef<IntersectionObserver | null>(null);\n const sideNavRef = useRef<HTMLDivElement>(null);\n\n const { isAtContainerInlineStart } = useElementAtContainerEdge({\n element: sideNavRef.current,\n monitoringElement: sideNavRef.current?.parentElement?.parentElement,\n });\n\n const hasNeighbouringContentAtInlineStart = !isAtContainerInlineStart;\n\n const blankElement = useMemo(() => <div />, []);\n\n // The default value (sideNavItems) passed to useState is ONLY used by the useState hook for\n // the very first value. Subsequent updates to the prop (sideNavItems) need to cause the state\n // to update!\n useEffect(() => updateSideNavItemsList(sideNavItems || []), [sideNavItems]);\n\n // In the case that you can't control the side nav, then it should use whatever state was passed (app control) rather than what's stored in session storage (user control).\n const onMount = useCallback(() => {\n if (!isCollapsible) {\n setIsSideNavCollapsed(isCollapsed);\n }\n }, [isCollapsed, isCollapsible, setIsSideNavCollapsed]);\n\n const onUpdate = useCallback(() => {\n setIsSideNavCollapsed(isCollapsed);\n }, [isCollapsed, setIsSideNavCollapsed]);\n\n useMountLifecycleEffect({\n onMount,\n onUpdate,\n });\n\n useEffect(() => {\n // This is called directly in this effect AND perhaps as a result of the ResizeObserver\n const updateIsContentScrollable = () => {\n if (\n scrollableContentRef.current &&\n scrollableContentRef.current.parentElement\n ) {\n setIsContentScrollable(\n getHasScrollableContent(scrollableContentRef.current.parentElement),\n );\n }\n };\n\n // If the window is resized, we may need to re-determine if the scrollable container has overflow\n // Setup a ResizeObserver to know if the size of the scrollableContent changes\n let resizeObserverDebounceTimer: ReturnType<typeof requestAnimationFrame>;\n if (!resizeObserverRef.current) {\n resizeObserverRef.current = new ResizeObserver(() => {\n cancelAnimationFrame(resizeObserverDebounceTimer);\n resizeObserverDebounceTimer = requestAnimationFrame(\n updateIsContentScrollable,\n );\n });\n }\n\n if (resizeObserverRef.current && scrollableContentRef.current) {\n // Observe the <ul> itself (in case it changes size due to the content expanding)\n resizeObserverRef.current.observe(scrollableContentRef.current);\n if (scrollableContentRef.current.parentElement) {\n // ALSO observe the parent (<SideNavScrollableContainer>) in case the window resizes\n resizeObserverRef.current.observe(\n scrollableContentRef.current.parentElement,\n );\n }\n }\n\n // Determine if the scrollable container has overflow or not on load\n updateIsContentScrollable();\n\n // Finally, we only want to have the border on the bottom of the header iff the user has scrolled\n // the scrollable container\n if (!intersectionObserverRef.current && scrollableContentRef.current) {\n intersectionObserverRef.current = new IntersectionObserver(\n (entries) => {\n // If isIntersecting is true, then we're at the top of the scroll container\n // If isIntersecting is false, some scrolling has occurred.\n // The entries must be sorted by time and we only really need to look at the latest one\n const isIntersecting = entries\n .slice()\n .sort((a, b) => a.time - b.time)\n .at(0)?.isIntersecting;\n setHasContentScrolled(!isIntersecting);\n },\n {\n root: scrollableContentRef.current.parentElement,\n threshold: 1.0,\n },\n );\n }\n\n if (intersectionObserverRef.current && scrollableContentRef.current) {\n const ulElement = scrollableContentRef.current;\n const [liElement] = Array.from(ulElement?.children || []);\n\n if (liElement) {\n intersectionObserverRef.current.observe(liElement);\n }\n }\n\n // Cleanup when unmounted:\n return () => {\n if (resizeObserverRef.current) {\n resizeObserverRef.current.disconnect();\n resizeObserverRef.current = null;\n }\n if (intersectionObserverRef.current) {\n intersectionObserverRef.current.disconnect();\n intersectionObserverRef.current = null;\n }\n cancelAnimationFrame(resizeObserverDebounceTimer); // Ensure timer is cleared on component unmount\n };\n }, [sideNavItemsList]);\n\n const scrollIntoViewRef = useRef<HTMLLIElement>(null);\n /**\n * Look through the sideNavItems and determine which is the first node\n * with isSelected. This should be the node we set a ref on in order to\n * call scrollIntoView in the effect\n */\n const firstSideNavItemIdWithIsSelected = useMemo(() => {\n const flattenedItems = sideNavItemsList.flatMap((sideNavItem) =>\n sideNavItem.nestedNavItems\n ? [sideNavItem, ...sideNavItem.nestedNavItems]\n : sideNavItem,\n );\n const firstItemWithIsSelected = flattenedItems.find(\n (sideNavItem) => sideNavItem.isSelected,\n );\n return firstItemWithIsSelected?.id;\n }, [sideNavItemsList]);\n /**\n * Once we've rendered and if we have an item to scroll to, do the scroll action.\n * This must rely on checking firstSideNavItemIdWithIsSelected or it will not run\n * once the actual ref is populated.\n */\n useEffect(() => {\n if (firstSideNavItemIdWithIsSelected && scrollIntoViewRef.current) {\n scrollIntoViewRef.current.scrollIntoView();\n }\n }, [firstSideNavItemIdWithIsSelected]);\n\n /**\n * We only want to put a ref on a node iff it is the first selected node.\n * This function returns the ref only if the ID provided matches the first\n * selected node, otherwise returns undefined (so that the node has no ref)\n */\n const getRefIfThisIsFirstNodeWithIsSelected = useCallback(\n (itemId: string) =>\n itemId === firstSideNavItemIdWithIsSelected\n ? scrollIntoViewRef\n : undefined,\n [firstSideNavItemIdWithIsSelected],\n );\n\n const sideNavItemContentProviderValue = useMemo(\n () => ({ isCompact, depth: 1 }),\n [isCompact],\n );\n\n const setSelectedItem = useCallback(\n (selectedItemId: string) => {\n const updatedSideNavItems = sideNavItemsList.map((item) => {\n if (item.id === selectedItemId) {\n item.isSelected = true;\n } else if (item.isSelected) {\n delete item.isSelected;\n }\n\n return item.nestedNavItems\n ? {\n ...item,\n nestedNavItems: item.nestedNavItems.map((childItem) => {\n if (childItem.id === selectedItemId) {\n childItem.isSelected = true;\n } else if (childItem.isSelected) {\n delete childItem.isSelected;\n }\n return childItem;\n }),\n }\n : item;\n });\n updateSideNavItemsList(updatedSideNavItems);\n\n if (isCollapsed || isObtrusive) {\n if (isCollapsible) {\n uiShellContext?.closeSideNavMenu();\n } else {\n onCollapse?.();\n }\n }\n },\n [\n isCollapsed,\n isCollapsible,\n isObtrusive,\n onCollapse,\n sideNavItemsList,\n uiShellContext,\n ],\n );\n\n const processedSideNavItems = useMemo(() => {\n return sideNavItemsList?.map((item) => ({\n ...item,\n childNavItems: item.nestedNavItems?.map((childProps) => ({\n id: childProps.id,\n isSelected: childProps.isSelected,\n isDisabled: childProps.isDisabled,\n isSortable: childProps.isSortable,\n navItem: (\n <SideNavItemContentContext.Provider\n key={childProps.id}\n value={{\n ...sideNavItemContentProviderValue,\n depth: 2,\n isSortable: item.isSortable,\n }}\n >\n <SideNavItemContent\n {...childProps}\n onItemSelected={setSelectedItem}\n scrollRef={getRefIfThisIsFirstNodeWithIsSelected(childProps.id)}\n translate={childProps.translate}\n />\n </SideNavItemContentContext.Provider>\n ),\n })),\n }));\n }, [\n getRefIfThisIsFirstNodeWithIsSelected,\n setSelectedItem,\n sideNavItemContentProviderValue,\n sideNavItemsList,\n ]);\n\n const sideNavExpandClickHandler = useCallback(() => {\n setIsSideNavCollapsed((isSideNavCollapsed) => {\n if (isSideNavCollapsed) {\n onExpand?.();\n } else {\n onCollapse?.();\n }\n\n return !isSideNavCollapsed;\n });\n }, [onCollapse, onExpand, setIsSideNavCollapsed]);\n\n const sideNavExpandKeyHandler = useCallback<\n KeyboardEventHandler<HTMLButtonElement>\n >(\n (event) => {\n if (event?.key === \"Enter\" || event?.code === \"Space\") {\n event.preventDefault();\n sideNavExpandClickHandler();\n }\n },\n [sideNavExpandClickHandler],\n );\n\n useEffect(() => {\n const unsubscribe = uiShellContext?.subscribeToCloseSideNavMenu(() => {\n onCollapse?.();\n setIsSideNavCollapsed(true);\n });\n\n return () => {\n unsubscribe?.();\n };\n }, [onCollapse, setIsSideNavCollapsed, uiShellContext]);\n\n const setSortedItems = useCallback(\n (\n parentId: string,\n activeId: UniqueIdentifier,\n activeIndex: number,\n overIndex: number,\n ) => {\n const sortedSideNavItems = sideNavItemsList.map((item) =>\n item.id === parentId && item.nestedNavItems\n ? {\n ...item,\n nestedNavItems: arrayMove(\n item.nestedNavItems,\n activeIndex,\n overIndex,\n ),\n }\n : item,\n );\n updateSideNavItemsList(sortedSideNavItems);\n onSort?.(sortedSideNavItems, parentId, activeId, activeIndex, overIndex);\n },\n [onSort, sideNavItemsList],\n );\n\n const onSideNavToggleButtonHighlight = useCallback<\n NonNullable<SideNavToggleButtonProps[\"onHighlight\"]>\n >((isHighlighted) => {\n setIsSideNavToggleHighlighted(isHighlighted);\n }, []);\n\n return (\n <StyledSideNavContainer\n aria-label={t(\"navigation.label\")}\n backgroundColor={uiShellContext?.sideNavBackgroundColor}\n hasNeighbouringContentAtInlineStart={hasNeighbouringContentAtInlineStart}\n id=\"side-nav-expandable\"\n isAppContentWhiteBackground={\n uiShellContext?.appBackgroundColor ===\n odysseyDesignTokens.HueNeutralWhite\n }\n isSideNavCollapsed={isSideNavCollapsed}\n isSideNavToggleHighlighted={isSideNavToggleHighlighted}\n odysseyDesignTokens={odysseyDesignTokens}\n ref={sideNavRef}\n >\n {isCollapsible && (\n <StyledSideNavToggleButtonContainer\n hasNeighbouringContentAtInlineStart={\n hasNeighbouringContentAtInlineStart\n }\n isSideNavCollapsed={isSideNavCollapsed}\n isSideNavToggleHighlighted={isSideNavToggleHighlighted}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n <SideNavToggleButton\n clickAreaPadding={\n isSideNavCollapsed && !hasNeighbouringContentAtInlineStart\n ? SIDE_NAV_TOGGLE_ICON_SIZE / 2\n : 0\n }\n ariaControls=\"side-nav-expandable\"\n isSideNavCollapsed={isSideNavCollapsed}\n onClick={sideNavExpandClickHandler}\n onHighlight={onSideNavToggleButtonHighlight}\n onKeyDown={sideNavExpandKeyHandler}\n />\n </StyledSideNavToggleButtonContainer>\n )}\n\n <OdysseyThemeProvider>\n <StyledCollapsibleContent\n data-se=\"collapsible-region\"\n isSideNavCollapsed={isSideNavCollapsed}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n <StyledOpacityTransitionContainer\n isSideNavCollapsed={isSideNavCollapsed}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n {appName || isLoading || logoProps ? (\n <StyledSideNavHeaderContainer\n hasContentScrolled={hasContentScrolled}\n odysseyDesignTokens={odysseyDesignTokens}\n borderColor={uiShellContext?.sideNavContrastColors?.fontColor}\n >\n {isLoading && !appName && !logoProps ? (\n <SideNavHeader isLoading={isLoading} />\n ) : (\n <SideNavHeader\n appName={appName}\n isLoading={isLoading}\n logoProps={logoProps}\n />\n )}\n </StyledSideNavHeaderContainer>\n ) : (\n <div />\n )}\n\n <StyledSideNavScrollableContainer\n odysseyDesignTokens={odysseyDesignTokens}\n data-se=\"scrollable-region\"\n hasBlockStartPadding={!appName}\n >\n <StyledSideNavListContainer\n role=\"none\"\n ref={scrollableContentRef}\n >\n {isLoading\n ? Array(6)\n .fill(null)\n .map((_, index) => <LoadingItem key={index} />)\n : processedSideNavItems?.map((item) => {\n const {\n childNavItems,\n href,\n id,\n isDefaultExpanded,\n isDisabled,\n isExpanded,\n isSectionHeader,\n isSortable,\n label,\n startIcon,\n } = item;\n\n if (isSectionHeader) {\n return (\n <ErrorBoundary fallback={blankElement} key={id}>\n <StyledSectionHeaderContainer\n contrastFontColor={\n uiShellContext?.sideNavContrastColors?.fontColor\n }\n id={id}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n <Overline component=\"h3\">{label}</Overline>\n </StyledSectionHeaderContainer>\n </ErrorBoundary>\n );\n } else if (childNavItems) {\n const nestedChildren = (\n <StyledSideNavListContainer role=\"presentation\">\n {isSortable ? (\n <SortableList\n parentId={item.id}\n items={childNavItems}\n onChange={setSortedItems}\n renderItem={(sortableItem) => (\n <SortableList.Item\n id={sortableItem.id}\n isDisabled={sortableItem.isDisabled}\n isSelected={sortableItem.isSelected}\n isSortable={sortableItem.isSortable}\n >\n {sortableItem.navItem}\n </SortableList.Item>\n )}\n />\n ) : (\n childNavItems.map((item) => item.navItem)\n )}\n </StyledSideNavListContainer>\n );\n\n return href ? (\n <ErrorBoundary fallback={blankElement} key={id}>\n <SideNavItemContent\n {...item}\n href={href}\n onItemSelected={setSelectedItem}\n scrollRef={getRefIfThisIsFirstNodeWithIsSelected(\n item.id,\n )}\n startIcon={item.startIcon}\n />\n\n <StyledSideNavListItem\n id={`${id}-items`}\n odysseyDesignTokens={odysseyDesignTokens}\n disabled={isDisabled}\n aria-disabled={isDisabled}\n >\n {nestedChildren}\n </StyledSideNavListItem>\n </ErrorBoundary>\n ) : (\n <ErrorBoundary fallback={blankElement} key={id}>\n <StyledSideNavListItem\n id={id}\n odysseyDesignTokens={odysseyDesignTokens}\n disabled={isDisabled}\n aria-disabled={isDisabled}\n >\n <NavAccordion\n label={label}\n isCompact={isCompact}\n isDefaultExpanded={isDefaultExpanded}\n isExpanded={isExpanded}\n startIcon={startIcon}\n isDisabled={isDisabled}\n >\n {nestedChildren}\n </NavAccordion>\n </StyledSideNavListItem>\n </ErrorBoundary>\n );\n } else {\n return (\n <ErrorBoundary fallback={blankElement} key={item.id}>\n <SideNavItemContentContext.Provider\n value={sideNavItemContentProviderValue}\n >\n <SideNavItemContent\n {...item}\n onItemSelected={setSelectedItem}\n scrollRef={getRefIfThisIsFirstNodeWithIsSelected(\n item.id,\n )}\n startIcon={item.startIcon}\n />\n </SideNavItemContentContext.Provider>\n </ErrorBoundary>\n );\n }\n })}\n </StyledSideNavListContainer>\n {!isLoading && footerItems && !hasCustomFooter && (\n <StyledSideNavFooter\n odysseyDesignTokens={odysseyDesignTokens}\n sideNavBackgroundColor={\n uiShellContext?.sideNavBackgroundColor\n }\n >\n <StyledSideNavFooterItemsContainer\n odysseyDesignTokens={odysseyDesignTokens}\n sideNavContrastColors={\n uiShellContext?.sideNavContrastColors\n }\n >\n <SideNavFooterContent footerItems={footerItems} />\n </StyledSideNavFooterItemsContainer>\n </StyledSideNavFooter>\n )}\n </StyledSideNavScrollableContainer>\n {!isLoading && !footerItems && hasCustomFooter && (\n <StyledPersistentSideNavFooter\n isContentScrollable={isContentScrollable}\n odysseyDesignTokens={odysseyDesignTokens}\n sideNavBackgroundColor={uiShellContext?.sideNavBackgroundColor}\n >\n {footerComponent}\n </StyledPersistentSideNavFooter>\n )}\n </StyledOpacityTransitionContainer>\n </StyledCollapsibleContent>\n </OdysseyThemeProvider>\n </StyledSideNavContainer>\n );\n};\n\nconst MemoizedSideNav = memo(SideNav);\nMemoizedSideNav.displayName = \"SideNav\";\n\nexport { MemoizedSideNav as SideNav };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"SideNav.js","names":["arrayMove","styled","memo","useCallback","useEffect","useMemo","useRef","useState","ErrorBoundary","useTranslation","useOdysseyDesignTokens","OdysseyThemeProvider","Overline","useUiShellContext","useMountLifecycleEffect","SIDE_NAV_VISIBILITY_TOGGLE_ICON_POSITION","SIDE_NAV_WIDTH","UI_SHELL_BASE_Z_INDEX","UI_SHELL_OVERLAY_Z_INDEX","useElementAtContainerEdge","NavAccordion","SideNavFooterContent","SideNavHeader","SideNavItemContent","StyledSideNavListItem","SideNavItemContentContext","SIDE_NAV_TOGGLE_ICON_HALF_SIZE","SIDE_NAV_TOGGLE_ICON_SIZE","SideNavToggleButton","SortableList","useIsSideNavCollapsedSessionStorage","jsx","_jsx","jsxs","_jsxs","SIDE_NAV_COLLAPSED_PADDING_HIGHLIGHTED","SIDE_NAV_COLLAPSED_PADDING_UNHIGHLIGHTED","StyledCollapsibleContent","shouldForwardProp","prop","odysseyDesignTokens","isSideNavCollapsed","position","display","gridTemplateColumns","height","transition","TransitionDurationMain","transitionTimingFunction","TransitionTimingMain","overflow","opacity","StyledOpacityTransitionContainer","gridTemplateRows","StyledSideNavContainer","backgroundColor","hasNeighbouringContentAtInlineStart","isAppContentWhiteBackground","isSideNavToggleHighlighted","HueNeutralWhite","width","content","pointerEvents","right","BorderWidthMain","top","userSelect","zIndex","BorderColorPrimaryControl","HueNeutral100","HueNeutral200","transform","borderRightColor","borderRightStyle","BorderStyleMain","borderRightWidth","StyledSideNavToggleButtonContainer","StyledSideNavHeaderContainer","borderColor","hasContentScrolled","flexShrink","borderBottomWidth","borderBottomStyle","borderBottomColor","concat","StyledSideNavListContainer","padding","listStyle","listStyleType","margin","StyledSideNavScrollableContainer","hasBlockStartPadding","overflowY","paddingBlockStart","Spacing2","paddingInline","StyledSectionHeaderContainer","contrastFontColor","color","HueNeutral600","marginBlock","Spacing3","paddingBlock","Spacing1","Spacing4","StyledSideNavFooter","sideNavBackgroundColor","StyledPersistentSideNavFooter","isContentScrollable","transitionProperty","transitionDuration","transitionTiming","boxShadow","StyledSideNavFooterItemsContainer","sideNavContrastColors","flexWrap","alignItems","fontSize","TypographySizeOverline","fontColor","textDecoration","HueNeutral900","StyledLoadingItemContainer","gap","getHasScrollableContent","scrollableContainer","scrollHeight","clientHeight","LoadingItem","children","_Skeleton","variant","SideNav","appName","footerComponent","footerItems","hasCustomFooter","hasSessionStorageState","isCollapsible","isCollapsed","isCompact","isLoading","isObtrusive","logoProps","onCollapse","onExpand","onSort","sideNavItems","setHasContentScrolled","setIsContentScrollable","setIsSideNavToggleHighlighted","sideNavItemsList","updateSideNavItemsList","isSideNavCollapsedLocalState","setIsSideNavCollapsedLocalState","sessionState","isSideNavCollapsedSessionState","setSessionState","setIsSideNavCollapsedSessionState","setIsSideNavCollapsed","uiShellContext","t","scrollableContentRef","resizeObserverRef","intersectionObserverRef","sideNavRef","isAtContainerInlineStart","element","current","monitoringElement","parentElement","blankElement","onMount","onUpdate","updateIsContentScrollable","resizeObserverDebounceTimer","ResizeObserver","cancelAnimationFrame","requestAnimationFrame","observe","IntersectionObserver","entries","isIntersecting","slice","sort","a","b","time","at","root","threshold","ulElement","liElement","Array","from","disconnect","scrollIntoViewRef","firstSideNavItemIdWithIsSelected","flattenedItems","flatMap","sideNavItem","nestedNavItems","firstItemWithIsSelected","find","isSelected","id","scrollIntoView","getRefIfThisIsFirstNodeWithIsSelected","itemId","undefined","sideNavItemContentProviderValue","depth","setSelectedItem","selectedItemId","updatedSideNavItems","map","item","childItem","closeSideNavMenu","processedSideNavItems","childNavItems","childProps","isDisabled","isSortable","navItem","Provider","value","onItemSelected","scrollRef","translate","sideNavExpandClickHandler","sideNavExpandKeyHandler","event","key","code","preventDefault","unsubscribe","subscribeToCloseSideNavMenu","setSortedItems","parentId","activeId","activeIndex","overIndex","sortedSideNavItems","onSideNavToggleButtonHighlight","isHighlighted","appBackgroundColor","ref","ariaControls","clickAreaPadding","onClick","onHighlight","onKeyDown","role","fill","_","index","href","isDefaultExpanded","isExpanded","isSectionHeader","label","startIcon","fallback","component","nestedChildren","items","onChange","renderItem","sortableItem","Item","disabled","MemoizedSideNav","displayName"],"sources":["../../../../src/ui-shell/SideNav/SideNav.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 { UniqueIdentifier } from \"@dnd-kit/core\";\nimport { arrayMove } from \"@dnd-kit/sortable\";\nimport styled from \"@emotion/styled\";\nimport { Skeleton } from \"@mui/material\";\nimport { Property } from \"csstype\";\nimport {\n CSSProperties,\n KeyboardEventHandler,\n memo,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { ErrorBoundary } from \"react-error-boundary\";\nimport { useTranslation } from \"react-i18next\";\n\nimport type { SideNavProps } from \"./types.js\";\n\nimport { ContrastColors } from \"../../createContrastColors.js\";\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"../../OdysseyDesignTokensContext.js\";\nimport { OdysseyThemeProvider } from \"../../OdysseyThemeProvider.js\";\nimport { Overline } from \"../../Typography.js\";\nimport {\n UiShellColors,\n useUiShellContext,\n} from \"../../ui-shell/UiShellProvider.js\";\nimport { useMountLifecycleEffect } from \"../../useMountLifecycleEffect.js\";\nimport {\n SIDE_NAV_VISIBILITY_TOGGLE_ICON_POSITION,\n SIDE_NAV_WIDTH,\n UI_SHELL_BASE_Z_INDEX,\n UI_SHELL_OVERLAY_Z_INDEX,\n} from \"../uiShellSharedConstants.js\";\nimport { useElementAtContainerEdge } from \"../useElementAtContainerEdge.js\";\nimport { NavAccordion } from \"./NavAccordion.js\";\nimport { SideNavFooterContent } from \"./SideNavFooterContent.js\";\nimport { SideNavHeader } from \"./SideNavHeader.js\";\nimport {\n SideNavItemContent,\n StyledSideNavListItem,\n} from \"./SideNavItemContent.js\";\nimport { SideNavItemContentContext } from \"./SideNavItemContentContext.js\";\nimport {\n SIDE_NAV_TOGGLE_ICON_HALF_SIZE,\n SIDE_NAV_TOGGLE_ICON_SIZE,\n SideNavToggleButton,\n SideNavToggleButtonProps,\n} from \"./SideNavToggleButton.js\";\nimport { SortableList } from \"./SortableList/SortableList.js\";\nimport { useIsSideNavCollapsedSessionStorage } from \"./useIsSideNavCollapsedSessionStorage.js\";\n\nexport const SIDE_NAV_COLLAPSED_PADDING_HIGHLIGHTED = 12;\nexport const SIDE_NAV_COLLAPSED_PADDING_UNHIGHLIGHTED = 2;\n\nconst StyledCollapsibleContent = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" && prop !== \"isSideNavCollapsed\",\n})<{\n isSideNavCollapsed: boolean;\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens, isSideNavCollapsed }) => ({\n position: \"relative\",\n display: \"grid\",\n gridTemplateColumns: SIDE_NAV_WIDTH,\n height: \"100%\",\n transition: `grid-template-columns ${odysseyDesignTokens.TransitionDurationMain}, opacity 300ms`,\n transitionTimingFunction: odysseyDesignTokens.TransitionTimingMain,\n overflow: \"hidden\",\n\n ...(isSideNavCollapsed &&\n ({\n gridTemplateColumns: 0,\n opacity: 0,\n } satisfies CSSProperties)),\n}));\n\nconst StyledOpacityTransitionContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" && prop !== \"isSideNavCollapsed\",\n})(\n ({\n odysseyDesignTokens,\n isSideNavCollapsed,\n }: {\n isSideNavCollapsed: boolean;\n odysseyDesignTokens: DesignTokens;\n }) => ({\n display: \"grid\",\n gridTemplateRows: \"max-content 1fr max-content\",\n height: \"100%\",\n transition: `opacity 50ms`,\n transitionTimingFunction: odysseyDesignTokens.TransitionTimingMain,\n overflow: \"hidden\",\n\n ...(isSideNavCollapsed &&\n ({\n opacity: 0,\n } satisfies CSSProperties)),\n }),\n);\n\nconst StyledSideNavContainer = styled(\"nav\", {\n shouldForwardProp: (prop) =>\n prop !== \"backgroundColor\" &&\n prop !== \"hasNeighbouringContentAtInlineStart\" &&\n prop !== \"isAppContentWhiteBackground\" &&\n prop !== \"isSideNavCollapsed\" &&\n prop !== \"isSideNavToggleHighlighted\" &&\n prop !== \"odysseyDesignTokens\",\n})<{\n backgroundColor?: UiShellColors[\"sideNavBackgroundColor\"];\n hasNeighbouringContentAtInlineStart: boolean;\n isAppContentWhiteBackground: boolean;\n isSideNavCollapsed: boolean;\n isSideNavToggleHighlighted: boolean;\n odysseyDesignTokens: DesignTokens;\n}>(\n ({\n backgroundColor,\n hasNeighbouringContentAtInlineStart,\n isAppContentWhiteBackground,\n isSideNavCollapsed,\n isSideNavToggleHighlighted,\n odysseyDesignTokens,\n }) => ({\n // Side nav container styles\n backgroundColor: backgroundColor || odysseyDesignTokens.HueNeutralWhite,\n height: \"100%\",\n position: \"relative\",\n width: \"fit-content\",\n\n // Right-side vertical line shared\n \"&::before, &::after\": {\n content: \"''\",\n height: \"100%\",\n pointerEvents: \"none\",\n position: \"absolute\",\n right: `-${odysseyDesignTokens.BorderWidthMain}`,\n top: 0,\n transition: `opacity ${odysseyDesignTokens.TransitionDurationMain}, transform ${odysseyDesignTokens.TransitionDurationMain}, width ${odysseyDesignTokens.TransitionDurationMain}`,\n userSelect: \"none\",\n zIndex: UI_SHELL_OVERLAY_Z_INDEX,\n },\n\n // Right-side vertical line when open\n \"&::before\": {\n backgroundColor: isSideNavToggleHighlighted\n ? odysseyDesignTokens.BorderColorPrimaryControl\n : odysseyDesignTokens.HueNeutral100,\n opacity:\n isAppContentWhiteBackground ||\n (!isSideNavCollapsed && isSideNavToggleHighlighted)\n ? 1\n : 0,\n width: `calc(${odysseyDesignTokens.BorderWidthMain} * 2)`,\n },\n\n // Side nav vertical fill line when no neighboring content\n \"&::after\": {\n backgroundColor: odysseyDesignTokens.HueNeutral200,\n opacity: isSideNavCollapsed ? 1 : 0,\n transform:\n isSideNavCollapsed && !hasNeighbouringContentAtInlineStart\n ? isSideNavToggleHighlighted\n ? `translateX(calc(100% - (${odysseyDesignTokens.BorderWidthMain} * 2)))`\n : `translateX(calc(100% - ${SIDE_NAV_COLLAPSED_PADDING_HIGHLIGHTED}px))`\n : \"translateX(0)\",\n width: hasNeighbouringContentAtInlineStart\n ? 0\n : `calc(${SIDE_NAV_TOGGLE_ICON_HALF_SIZE + SIDE_NAV_COLLAPSED_PADDING_HIGHLIGHTED}px + ${odysseyDesignTokens.BorderWidthMain} * 2)`,\n\n // Right-side vertical line when collapsed\n ...((isSideNavCollapsed && isSideNavToggleHighlighted\n ? {\n borderRightColor: odysseyDesignTokens.BorderColorPrimaryControl,\n borderRightStyle:\n odysseyDesignTokens.BorderStyleMain as Property.BorderRightStyle,\n borderRightWidth: `calc(${odysseyDesignTokens.BorderWidthMain} * 2)`,\n }\n : {}) satisfies CSSProperties),\n },\n }),\n);\n\nconst StyledSideNavToggleButtonContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"hasNeighbouringContentAtInlineStart\" &&\n prop !== \"isSideNavCollapsed\" &&\n prop !== \"isSideNavToggleHighlighted\" &&\n prop !== \"odysseyDesignTokens\",\n})<{\n hasNeighbouringContentAtInlineStart: boolean;\n isSideNavCollapsed: boolean;\n isSideNavToggleHighlighted: boolean;\n odysseyDesignTokens: DesignTokens;\n}>(\n ({\n hasNeighbouringContentAtInlineStart,\n isSideNavCollapsed,\n isSideNavToggleHighlighted,\n odysseyDesignTokens,\n }) => ({\n position: \"absolute\",\n right: `${SIDE_NAV_TOGGLE_ICON_HALF_SIZE}px`,\n top: SIDE_NAV_VISIBILITY_TOGGLE_ICON_POSITION,\n width: `${SIDE_NAV_TOGGLE_ICON_SIZE}px`,\n transform:\n isSideNavCollapsed && !hasNeighbouringContentAtInlineStart\n ? isSideNavToggleHighlighted\n ? `translate3d(calc(100% + ${SIDE_NAV_TOGGLE_ICON_HALF_SIZE + SIDE_NAV_COLLAPSED_PADDING_HIGHLIGHTED}px), 0, 0)`\n : `translate3d(calc(100% + ${SIDE_NAV_TOGGLE_ICON_HALF_SIZE + SIDE_NAV_COLLAPSED_PADDING_UNHIGHLIGHTED}px), 0, 0)`\n : \"translate3d(100%, 0, 0)\",\n transition: `transform ${odysseyDesignTokens.TransitionDurationMain}`,\n zIndex: UI_SHELL_OVERLAY_Z_INDEX + 1,\n }),\n);\n\nconst StyledSideNavHeaderContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"borderColor\" &&\n prop !== \"hasContentScrolled\" &&\n prop !== \"odysseyDesignTokens\",\n})<{\n borderColor: ContrastColors[\"fontColor\"];\n hasContentScrolled: boolean;\n odysseyDesignTokens: DesignTokens;\n}>(({ borderColor, hasContentScrolled, odysseyDesignTokens }) => ({\n flexShrink: 0,\n // The bottom border should appear only if the scrollable region has been scrolled\n ...(hasContentScrolled &&\n ({\n borderBottomWidth: odysseyDesignTokens.BorderWidthMain,\n borderBottomStyle: odysseyDesignTokens.BorderStyleMain,\n borderBottomColor: odysseyDesignTokens.HueNeutral100,\n\n ...(borderColor &&\n ({\n borderBottomColor: borderColor.concat(\"15\"),\n } satisfies CSSProperties)),\n } as CSSProperties)),\n}));\n\nconst StyledSideNavListContainer = styled(\"ul\")(() => ({\n padding: 0,\n listStyle: \"none\",\n listStyleType: \"none\",\n margin: 0,\n width: \"100%\",\n}));\n\nconst StyledSideNavScrollableContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" && prop !== \"hasBlockStartPadding\",\n})<{ hasBlockStartPadding?: boolean; odysseyDesignTokens: DesignTokens }>(\n ({ odysseyDesignTokens, hasBlockStartPadding }) => ({\n display: \"inline-grid\",\n gridTemplateRows: \"1fr max-content\",\n overflowY: \"auto\",\n paddingBlockStart: hasBlockStartPadding ? odysseyDesignTokens.Spacing2 : 0,\n paddingInline: odysseyDesignTokens.Spacing2,\n }),\n);\n\nconst StyledSectionHeaderContainer = styled(\"li\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" && prop !== \"contrastFontColor\",\n})(\n ({\n contrastFontColor,\n odysseyDesignTokens,\n }: {\n contrastFontColor: ContrastColors[\"fontColor\"];\n odysseyDesignTokens: DesignTokens;\n }) => ({\n color: contrastFontColor || odysseyDesignTokens.HueNeutral600,\n marginBlock: `${odysseyDesignTokens.Spacing3}`,\n paddingBlock: odysseyDesignTokens.Spacing1,\n paddingInline: odysseyDesignTokens.Spacing4,\n }),\n);\n\nconst StyledSideNavFooter = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" && prop !== \"sideNavBackgroundColor\",\n})(\n ({\n odysseyDesignTokens,\n sideNavBackgroundColor,\n }: {\n odysseyDesignTokens: DesignTokens;\n sideNavBackgroundColor?: UiShellColors[\"sideNavBackgroundColor\"];\n }) => ({\n backgroundColor: odysseyDesignTokens.HueNeutralWhite,\n flexShrink: 0,\n padding: odysseyDesignTokens.Spacing4,\n\n ...(sideNavBackgroundColor &&\n ({\n backgroundColor: sideNavBackgroundColor,\n } satisfies CSSProperties)),\n }),\n);\n\nconst StyledPersistentSideNavFooter = styled(StyledSideNavFooter, {\n shouldForwardProp: (prop) =>\n prop !== \"isContentScrollable\" &&\n prop !== \"odysseyDesignTokens\" &&\n prop !== \"sideNavBackgroundColor\",\n})(\n ({\n isContentScrollable,\n odysseyDesignTokens,\n sideNavBackgroundColor,\n }: {\n isContentScrollable: boolean;\n odysseyDesignTokens: DesignTokens;\n sideNavBackgroundColor?: UiShellColors[\"sideNavBackgroundColor\"];\n }) => ({\n transitionProperty: \"box-shadow\",\n transitionDuration: odysseyDesignTokens.TransitionDurationMain,\n transitionTiming: odysseyDesignTokens.TransitionTimingMain,\n zIndex: UI_SHELL_BASE_Z_INDEX,\n\n // The box shadow should appear above the footer only if the scrollable region has overflow\n ...(isContentScrollable &&\n ({\n boxShadow: \"0px -8px 8px -8px rgba(39, 39, 39, 0.08)\",\n } satisfies CSSProperties)),\n\n ...(sideNavBackgroundColor &&\n ({\n backgroundColor: sideNavBackgroundColor,\n } satisfies CSSProperties)),\n }),\n);\n\nconst StyledSideNavFooterItemsContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" && prop !== \"sideNavContrastColors\",\n})<{\n odysseyDesignTokens: DesignTokens;\n sideNavContrastColors: UiShellColors[\"sideNavContrastColors\"];\n}>(({ odysseyDesignTokens, sideNavContrastColors }) => ({\n display: \"flex\",\n flexWrap: \"wrap\",\n alignItems: \"center\",\n fontSize: odysseyDesignTokens.TypographySizeOverline,\n\n \"a, span\": {\n color: odysseyDesignTokens.HueNeutral600,\n transition: `color ${odysseyDesignTokens.TransitionDurationMain}`,\n\n \"&:visited\": {\n color: odysseyDesignTokens.HueNeutral600,\n\n ...(sideNavContrastColors?.fontColor &&\n ({\n color: sideNavContrastColors?.fontColor,\n } satisfies CSSProperties)),\n },\n\n \"&:hover\": {\n textDecoration: \"none\",\n color: odysseyDesignTokens.HueNeutral900,\n\n ...(sideNavContrastColors?.fontColor &&\n ({\n color: sideNavContrastColors?.fontColor,\n } satisfies CSSProperties)),\n },\n\n ...(sideNavContrastColors?.fontColor &&\n ({\n color: sideNavContrastColors?.fontColor,\n } satisfies CSSProperties)),\n },\n}));\n\nconst StyledLoadingItemContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{ odysseyDesignTokens: DesignTokens }>(({ odysseyDesignTokens }) => ({\n alignItems: \"center\",\n display: \"flex\",\n gap: odysseyDesignTokens.Spacing2,\n paddingBlock: odysseyDesignTokens.Spacing2,\n paddingInline: odysseyDesignTokens.Spacing4,\n}));\n\nconst getHasScrollableContent = (scrollableContainer: HTMLElement) =>\n scrollableContainer.scrollHeight > scrollableContainer.clientHeight;\n\nconst LoadingItem = () => {\n const odysseyDesignTokens: DesignTokens = useOdysseyDesignTokens();\n return (\n <StyledLoadingItemContainer odysseyDesignTokens={odysseyDesignTokens}>\n <Skeleton\n height={odysseyDesignTokens.Spacing4}\n variant=\"circular\"\n width={odysseyDesignTokens.Spacing4}\n />\n <Skeleton variant=\"rounded\" width=\"100%\" />\n </StyledLoadingItemContainer>\n );\n};\n\nconst SideNav = ({\n appName,\n footerComponent,\n footerItems,\n hasCustomFooter,\n hasSessionStorageState,\n isCollapsible,\n isCollapsed = false,\n isCompact,\n isLoading,\n isObtrusive,\n logoProps,\n onCollapse,\n onExpand,\n onSort,\n sideNavItems,\n}: SideNavProps) => {\n const [hasContentScrolled, setHasContentScrolled] = useState(false);\n const [isContentScrollable, setIsContentScrollable] = useState(false);\n const [isSideNavToggleHighlighted, setIsSideNavToggleHighlighted] =\n useState(false);\n const [sideNavItemsList, updateSideNavItemsList] = useState(\n sideNavItems || [],\n );\n\n const [isSideNavCollapsedLocalState, setIsSideNavCollapsedLocalState] =\n useState(isCollapsed);\n\n const {\n sessionState: isSideNavCollapsedSessionState,\n setSessionState: setIsSideNavCollapsedSessionState,\n } = useIsSideNavCollapsedSessionStorage(isCollapsed);\n\n const isSideNavCollapsed = hasSessionStorageState\n ? isSideNavCollapsedSessionState\n : isSideNavCollapsedLocalState;\n const setIsSideNavCollapsed = hasSessionStorageState\n ? setIsSideNavCollapsedSessionState\n : setIsSideNavCollapsedLocalState;\n\n const uiShellContext = useUiShellContext();\n const odysseyDesignTokens: DesignTokens = useOdysseyDesignTokens();\n const { t } = useTranslation();\n\n const scrollableContentRef = useRef<HTMLUListElement>(null);\n const resizeObserverRef = useRef<ResizeObserver | null>(null);\n const intersectionObserverRef = useRef<IntersectionObserver | null>(null);\n const sideNavRef = useRef<HTMLDivElement>(null);\n\n const { isAtContainerInlineStart } = useElementAtContainerEdge({\n element: sideNavRef.current,\n monitoringElement: sideNavRef.current?.parentElement?.parentElement,\n });\n\n const hasNeighbouringContentAtInlineStart = !isAtContainerInlineStart;\n\n const blankElement = useMemo(() => <div />, []);\n\n // The default value (sideNavItems) passed to useState is ONLY used by the useState hook for\n // the very first value. Subsequent updates to the prop (sideNavItems) need to cause the state\n // to update!\n useEffect(() => updateSideNavItemsList(sideNavItems || []), [sideNavItems]);\n\n // In the case that you can't control the side nav, then it should use whatever state was passed (app control) rather than what's stored in session storage (user control).\n const onMount = useCallback(() => {\n if (!isCollapsible) {\n setIsSideNavCollapsed(isCollapsed);\n }\n }, [isCollapsed, isCollapsible, setIsSideNavCollapsed]);\n\n const onUpdate = useCallback(() => {\n setIsSideNavCollapsed(isCollapsed);\n }, [isCollapsed, setIsSideNavCollapsed]);\n\n useMountLifecycleEffect({\n onMount,\n onUpdate,\n });\n\n useEffect(() => {\n // This is called directly in this effect AND perhaps as a result of the ResizeObserver\n const updateIsContentScrollable = () => {\n if (\n scrollableContentRef.current &&\n scrollableContentRef.current.parentElement\n ) {\n setIsContentScrollable(\n getHasScrollableContent(scrollableContentRef.current.parentElement),\n );\n }\n };\n\n // If the window is resized, we may need to re-determine if the scrollable container has overflow\n // Setup a ResizeObserver to know if the size of the scrollableContent changes\n let resizeObserverDebounceTimer: ReturnType<typeof requestAnimationFrame>;\n if (!resizeObserverRef.current) {\n resizeObserverRef.current = new ResizeObserver(() => {\n cancelAnimationFrame(resizeObserverDebounceTimer);\n resizeObserverDebounceTimer = requestAnimationFrame(\n updateIsContentScrollable,\n );\n });\n }\n\n if (resizeObserverRef.current && scrollableContentRef.current) {\n // Observe the <ul> itself (in case it changes size due to the content expanding)\n resizeObserverRef.current.observe(scrollableContentRef.current);\n if (scrollableContentRef.current.parentElement) {\n // ALSO observe the parent (<SideNavScrollableContainer>) in case the window resizes\n resizeObserverRef.current.observe(\n scrollableContentRef.current.parentElement,\n );\n }\n }\n\n // Determine if the scrollable container has overflow or not on load\n updateIsContentScrollable();\n\n // Finally, we only want to have the border on the bottom of the header iff the user has scrolled\n // the scrollable container\n if (!intersectionObserverRef.current && scrollableContentRef.current) {\n intersectionObserverRef.current = new IntersectionObserver(\n (entries) => {\n // If isIntersecting is true, then we're at the top of the scroll container\n // If isIntersecting is false, some scrolling has occurred.\n // The entries must be sorted by time and we only really need to look at the latest one\n const isIntersecting = entries\n .slice()\n .sort((a, b) => a.time - b.time)\n .at(0)?.isIntersecting;\n setHasContentScrolled(!isIntersecting);\n },\n {\n root: scrollableContentRef.current.parentElement,\n threshold: 1.0,\n },\n );\n }\n\n if (intersectionObserverRef.current && scrollableContentRef.current) {\n const ulElement = scrollableContentRef.current;\n const [liElement] = Array.from(ulElement?.children || []);\n\n if (liElement) {\n intersectionObserverRef.current.observe(liElement);\n }\n }\n\n // Cleanup when unmounted:\n return () => {\n if (resizeObserverRef.current) {\n resizeObserverRef.current.disconnect();\n resizeObserverRef.current = null;\n }\n if (intersectionObserverRef.current) {\n intersectionObserverRef.current.disconnect();\n intersectionObserverRef.current = null;\n }\n cancelAnimationFrame(resizeObserverDebounceTimer); // Ensure timer is cleared on component unmount\n };\n }, [sideNavItemsList]);\n\n const scrollIntoViewRef = useRef<HTMLLIElement>(null);\n /**\n * Look through the sideNavItems and determine which is the first node\n * with isSelected. This should be the node we set a ref on in order to\n * call scrollIntoView in the effect\n */\n const firstSideNavItemIdWithIsSelected = useMemo(() => {\n const flattenedItems = sideNavItemsList.flatMap((sideNavItem) =>\n sideNavItem.nestedNavItems\n ? [sideNavItem, ...sideNavItem.nestedNavItems]\n : sideNavItem,\n );\n const firstItemWithIsSelected = flattenedItems.find(\n (sideNavItem) => sideNavItem.isSelected,\n );\n return firstItemWithIsSelected?.id;\n }, [sideNavItemsList]);\n /**\n * Once we've rendered and if we have an item to scroll to, do the scroll action.\n * This must rely on checking firstSideNavItemIdWithIsSelected or it will not run\n * once the actual ref is populated.\n */\n useEffect(() => {\n if (firstSideNavItemIdWithIsSelected && scrollIntoViewRef.current) {\n scrollIntoViewRef.current.scrollIntoView();\n }\n }, [firstSideNavItemIdWithIsSelected]);\n\n /**\n * We only want to put a ref on a node iff it is the first selected node.\n * This function returns the ref only if the ID provided matches the first\n * selected node, otherwise returns undefined (so that the node has no ref)\n */\n const getRefIfThisIsFirstNodeWithIsSelected = useCallback(\n (itemId: string) =>\n itemId === firstSideNavItemIdWithIsSelected\n ? scrollIntoViewRef\n : undefined,\n [firstSideNavItemIdWithIsSelected],\n );\n\n const sideNavItemContentProviderValue = useMemo(\n () => ({ isCompact, depth: 1 }),\n [isCompact],\n );\n\n const setSelectedItem = useCallback(\n (selectedItemId: string) => {\n const updatedSideNavItems = sideNavItemsList.map((item) => {\n if (item.id === selectedItemId) {\n item.isSelected = true;\n } else if (item.isSelected) {\n delete item.isSelected;\n }\n\n return item.nestedNavItems\n ? {\n ...item,\n nestedNavItems: item.nestedNavItems.map((childItem) => {\n if (childItem.id === selectedItemId) {\n childItem.isSelected = true;\n } else if (childItem.isSelected) {\n delete childItem.isSelected;\n }\n return childItem;\n }),\n }\n : item;\n });\n updateSideNavItemsList(updatedSideNavItems);\n\n if (isCollapsed || isObtrusive) {\n if (isCollapsible) {\n uiShellContext?.closeSideNavMenu();\n } else {\n onCollapse?.();\n }\n }\n },\n [\n isCollapsed,\n isCollapsible,\n isObtrusive,\n onCollapse,\n sideNavItemsList,\n uiShellContext,\n ],\n );\n\n const processedSideNavItems = useMemo(() => {\n return sideNavItemsList?.map((item) => ({\n ...item,\n childNavItems: item.nestedNavItems?.map((childProps) => ({\n id: childProps.id,\n isSelected: childProps.isSelected,\n isDisabled: childProps.isDisabled,\n isSortable: childProps.isSortable,\n navItem: (\n <SideNavItemContentContext.Provider\n key={childProps.id}\n value={{\n ...sideNavItemContentProviderValue,\n depth: 2,\n isSortable: item.isSortable,\n }}\n >\n <SideNavItemContent\n {...childProps}\n onItemSelected={setSelectedItem}\n scrollRef={getRefIfThisIsFirstNodeWithIsSelected(childProps.id)}\n translate={childProps.translate}\n />\n </SideNavItemContentContext.Provider>\n ),\n })),\n }));\n }, [\n getRefIfThisIsFirstNodeWithIsSelected,\n setSelectedItem,\n sideNavItemContentProviderValue,\n sideNavItemsList,\n ]);\n\n const sideNavExpandClickHandler = useCallback(() => {\n setIsSideNavCollapsed((isSideNavCollapsed) => {\n if (isSideNavCollapsed) {\n onExpand?.();\n } else {\n onCollapse?.();\n }\n\n return !isSideNavCollapsed;\n });\n }, [onCollapse, onExpand, setIsSideNavCollapsed]);\n\n const sideNavExpandKeyHandler = useCallback<\n KeyboardEventHandler<HTMLButtonElement>\n >(\n (event) => {\n if (event?.key === \"Enter\" || event?.code === \"Space\") {\n event.preventDefault();\n sideNavExpandClickHandler();\n }\n },\n [sideNavExpandClickHandler],\n );\n\n useEffect(() => {\n const unsubscribe = uiShellContext?.subscribeToCloseSideNavMenu(() => {\n onCollapse?.();\n setIsSideNavCollapsed(true);\n });\n\n return () => {\n unsubscribe?.();\n };\n }, [onCollapse, setIsSideNavCollapsed, uiShellContext]);\n\n const setSortedItems = useCallback(\n (\n parentId: string,\n activeId: UniqueIdentifier,\n activeIndex: number,\n overIndex: number,\n ) => {\n const sortedSideNavItems = sideNavItemsList.map((item) =>\n item.id === parentId && item.nestedNavItems\n ? {\n ...item,\n nestedNavItems: arrayMove(\n item.nestedNavItems,\n activeIndex,\n overIndex,\n ),\n }\n : item,\n );\n updateSideNavItemsList(sortedSideNavItems);\n onSort?.(sortedSideNavItems, parentId, activeId, activeIndex, overIndex);\n },\n [onSort, sideNavItemsList],\n );\n\n const onSideNavToggleButtonHighlight = useCallback<\n NonNullable<SideNavToggleButtonProps[\"onHighlight\"]>\n >((isHighlighted) => {\n setIsSideNavToggleHighlighted(isHighlighted);\n }, []);\n\n return (\n <StyledSideNavContainer\n aria-label={t(\"navigation.label\")}\n backgroundColor={uiShellContext?.sideNavBackgroundColor}\n hasNeighbouringContentAtInlineStart={hasNeighbouringContentAtInlineStart}\n id=\"side-nav-expandable\"\n isAppContentWhiteBackground={\n uiShellContext?.appBackgroundColor ===\n odysseyDesignTokens.HueNeutralWhite\n }\n isSideNavCollapsed={isSideNavCollapsed}\n isSideNavToggleHighlighted={isSideNavToggleHighlighted}\n odysseyDesignTokens={odysseyDesignTokens}\n ref={sideNavRef}\n >\n {isCollapsible && (\n <StyledSideNavToggleButtonContainer\n hasNeighbouringContentAtInlineStart={\n hasNeighbouringContentAtInlineStart\n }\n isSideNavCollapsed={isSideNavCollapsed}\n isSideNavToggleHighlighted={isSideNavToggleHighlighted}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n <SideNavToggleButton\n ariaControls=\"side-nav-expandable\"\n clickAreaPadding={\n isSideNavCollapsed && !hasNeighbouringContentAtInlineStart\n ? SIDE_NAV_TOGGLE_ICON_SIZE / 2\n : 0\n }\n isSideNavCollapsed={isSideNavCollapsed}\n onClick={sideNavExpandClickHandler}\n onHighlight={onSideNavToggleButtonHighlight}\n onKeyDown={sideNavExpandKeyHandler}\n />\n </StyledSideNavToggleButtonContainer>\n )}\n\n <OdysseyThemeProvider>\n <StyledCollapsibleContent\n data-se=\"collapsible-region\"\n isSideNavCollapsed={isSideNavCollapsed}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n <StyledOpacityTransitionContainer\n isSideNavCollapsed={isSideNavCollapsed}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n {appName || isLoading || logoProps ? (\n <StyledSideNavHeaderContainer\n borderColor={uiShellContext?.sideNavContrastColors?.fontColor}\n hasContentScrolled={hasContentScrolled}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n {isLoading && !appName && !logoProps ? (\n <SideNavHeader isLoading={isLoading} />\n ) : (\n <SideNavHeader\n appName={appName}\n isLoading={isLoading}\n logoProps={logoProps}\n />\n )}\n </StyledSideNavHeaderContainer>\n ) : (\n <div />\n )}\n\n <StyledSideNavScrollableContainer\n data-se=\"scrollable-region\"\n hasBlockStartPadding={!appName}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n <StyledSideNavListContainer\n ref={scrollableContentRef}\n role=\"none\"\n >\n {isLoading\n ? Array(6)\n .fill(null)\n .map((_, index) => <LoadingItem key={index} />)\n : processedSideNavItems?.map((item) => {\n const {\n childNavItems,\n href,\n id,\n isDefaultExpanded,\n isDisabled,\n isExpanded,\n isSectionHeader,\n isSortable,\n label,\n startIcon,\n } = item;\n\n if (isSectionHeader) {\n return (\n <ErrorBoundary fallback={blankElement} key={id}>\n <StyledSectionHeaderContainer\n contrastFontColor={\n uiShellContext?.sideNavContrastColors?.fontColor\n }\n id={id}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n <Overline component=\"h3\">{label}</Overline>\n </StyledSectionHeaderContainer>\n </ErrorBoundary>\n );\n } else if (childNavItems) {\n const nestedChildren = (\n <StyledSideNavListContainer role=\"presentation\">\n {isSortable ? (\n <SortableList\n items={childNavItems}\n onChange={setSortedItems}\n parentId={item.id}\n renderItem={(sortableItem) => (\n <SortableList.Item\n id={sortableItem.id}\n isDisabled={sortableItem.isDisabled}\n isSelected={sortableItem.isSelected}\n isSortable={sortableItem.isSortable}\n >\n {sortableItem.navItem}\n </SortableList.Item>\n )}\n />\n ) : (\n childNavItems.map((item) => item.navItem)\n )}\n </StyledSideNavListContainer>\n );\n\n return href ? (\n <ErrorBoundary fallback={blankElement} key={id}>\n <SideNavItemContent\n {...item}\n href={href}\n onItemSelected={setSelectedItem}\n scrollRef={getRefIfThisIsFirstNodeWithIsSelected(\n item.id,\n )}\n startIcon={item.startIcon}\n />\n\n <StyledSideNavListItem\n aria-disabled={isDisabled}\n disabled={isDisabled}\n id={`${id}-items`}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n {nestedChildren}\n </StyledSideNavListItem>\n </ErrorBoundary>\n ) : (\n <ErrorBoundary fallback={blankElement} key={id}>\n <StyledSideNavListItem\n aria-disabled={isDisabled}\n disabled={isDisabled}\n id={id}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n <NavAccordion\n isCompact={isCompact}\n isDefaultExpanded={isDefaultExpanded}\n isDisabled={isDisabled}\n isExpanded={isExpanded}\n label={label}\n startIcon={startIcon}\n >\n {nestedChildren}\n </NavAccordion>\n </StyledSideNavListItem>\n </ErrorBoundary>\n );\n } else {\n return (\n <ErrorBoundary fallback={blankElement} key={item.id}>\n <SideNavItemContentContext.Provider\n value={sideNavItemContentProviderValue}\n >\n <SideNavItemContent\n {...item}\n onItemSelected={setSelectedItem}\n scrollRef={getRefIfThisIsFirstNodeWithIsSelected(\n item.id,\n )}\n startIcon={item.startIcon}\n />\n </SideNavItemContentContext.Provider>\n </ErrorBoundary>\n );\n }\n })}\n </StyledSideNavListContainer>\n {!isLoading && footerItems && !hasCustomFooter && (\n <StyledSideNavFooter\n odysseyDesignTokens={odysseyDesignTokens}\n sideNavBackgroundColor={\n uiShellContext?.sideNavBackgroundColor\n }\n >\n <StyledSideNavFooterItemsContainer\n odysseyDesignTokens={odysseyDesignTokens}\n sideNavContrastColors={\n uiShellContext?.sideNavContrastColors\n }\n >\n <SideNavFooterContent footerItems={footerItems} />\n </StyledSideNavFooterItemsContainer>\n </StyledSideNavFooter>\n )}\n </StyledSideNavScrollableContainer>\n {!isLoading && !footerItems && hasCustomFooter && (\n <StyledPersistentSideNavFooter\n isContentScrollable={isContentScrollable}\n odysseyDesignTokens={odysseyDesignTokens}\n sideNavBackgroundColor={uiShellContext?.sideNavBackgroundColor}\n >\n {footerComponent}\n </StyledPersistentSideNavFooter>\n )}\n </StyledOpacityTransitionContainer>\n </StyledCollapsibleContent>\n </OdysseyThemeProvider>\n </StyledSideNavContainer>\n );\n};\n\nconst MemoizedSideNav = memo(SideNav);\nMemoizedSideNav.displayName = \"SideNav\";\n\nexport { MemoizedSideNav as SideNav };\n"],"mappings":"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","ignoreList":[]}