@okta/odyssey-react-mui 1.32.0 → 1.32.4

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 (458) hide show
  1. package/dist/cjs/theme/components.cjs +6 -0
  2. package/dist/cjs/theme/components.cjs.map +1 -1
  3. package/dist/cjs/ui-shell/SideNav/SideNav.cjs +2 -1
  4. package/dist/cjs/ui-shell/SideNav/SideNav.cjs.map +1 -1
  5. package/dist/cjs/ui-shell/SideNav/SideNavItemContent.cjs +36 -11
  6. package/dist/cjs/ui-shell/SideNav/SideNavItemContent.cjs.map +1 -1
  7. package/dist/cjs/ui-shell/SideNav/SideNavItemLinkContent.cjs +3 -1
  8. package/dist/cjs/ui-shell/SideNav/SideNavItemLinkContent.cjs.map +1 -1
  9. package/dist/cjs/ui-shell/SideNav/SideNavLogo.cjs +14 -2
  10. package/dist/cjs/ui-shell/SideNav/SideNavLogo.cjs.map +1 -1
  11. package/dist/cjs/ui-shell/SideNav/SideNavToggleButton.cjs +1 -1
  12. package/dist/cjs/ui-shell/SideNav/SideNavToggleButton.cjs.map +1 -1
  13. package/dist/cjs/ui-shell/SideNav/types.cjs.map +1 -1
  14. package/dist/cjs/ui-shell/UiShellContent.cjs +48 -32
  15. package/dist/cjs/ui-shell/UiShellContent.cjs.map +1 -1
  16. package/dist/cjs/ui-shell/index.cjs +9 -1
  17. package/dist/cjs/ui-shell/index.cjs.map +1 -1
  18. package/dist/cjs/useContrastMode.cjs +1 -1
  19. package/dist/cjs/useContrastMode.cjs.map +1 -1
  20. package/dist/esm/theme/components.js +6 -0
  21. package/dist/esm/theme/components.js.map +1 -1
  22. package/dist/esm/ui-shell/SideNav/SideNav.js +2 -1
  23. package/dist/esm/ui-shell/SideNav/SideNav.js.map +1 -1
  24. package/dist/esm/ui-shell/SideNav/SideNavItemContent.js +37 -12
  25. package/dist/esm/ui-shell/SideNav/SideNavItemContent.js.map +1 -1
  26. package/dist/esm/ui-shell/SideNav/SideNavItemLinkContent.js +3 -1
  27. package/dist/esm/ui-shell/SideNav/SideNavItemLinkContent.js.map +1 -1
  28. package/dist/esm/ui-shell/SideNav/SideNavLogo.js +14 -2
  29. package/dist/esm/ui-shell/SideNav/SideNavLogo.js.map +1 -1
  30. package/dist/esm/ui-shell/SideNav/SideNavToggleButton.js +1 -1
  31. package/dist/esm/ui-shell/SideNav/SideNavToggleButton.js.map +1 -1
  32. package/dist/esm/ui-shell/SideNav/types.js.map +1 -1
  33. package/dist/esm/ui-shell/UiShellContent.js +45 -31
  34. package/dist/esm/ui-shell/UiShellContent.js.map +1 -1
  35. package/dist/esm/ui-shell/index.js +1 -0
  36. package/dist/esm/ui-shell/index.js.map +1 -1
  37. package/dist/esm/useContrastMode.js +2 -2
  38. package/dist/esm/useContrastMode.js.map +1 -1
  39. package/dist/index.cjs +1 -1
  40. package/dist/index.mjs +1 -1
  41. package/dist/index.scss +1 -1
  42. package/dist/tsconfig.production.tsbuildinfo +1 -1
  43. package/dist/types/theme/components.d.ts.map +1 -1
  44. package/dist/types/ui-shell/SideNav/SideNav.d.ts.map +1 -1
  45. package/dist/types/ui-shell/SideNav/SideNavItemContent.d.ts +9 -7
  46. package/dist/types/ui-shell/SideNav/SideNavItemContent.d.ts.map +1 -1
  47. package/dist/types/ui-shell/SideNav/SideNavItemLinkContent.d.ts +1 -1
  48. package/dist/types/ui-shell/SideNav/SideNavItemLinkContent.d.ts.map +1 -1
  49. package/dist/types/ui-shell/SideNav/SideNavLogo.d.ts.map +1 -1
  50. package/dist/types/ui-shell/SideNav/types.d.ts +5 -1
  51. package/dist/types/ui-shell/SideNav/types.d.ts.map +1 -1
  52. package/dist/types/ui-shell/UiShellContent.d.ts +8 -2
  53. package/dist/types/ui-shell/UiShellContent.d.ts.map +1 -1
  54. package/dist/types/ui-shell/index.d.ts +1 -1
  55. package/dist/types/ui-shell/index.d.ts.map +1 -1
  56. package/package.json +4 -4
  57. package/.browserslistrc +0 -1
  58. package/.svgrrc.cjs +0 -13
  59. package/CHANGELOG.md +0 -1490
  60. package/babel.config.cjs +0 -112
  61. package/i18n.config.json +0 -10
  62. package/scripts/generateIconsIndex.ts +0 -49
  63. package/scripts/generateTestSelectorsJson.ts +0 -33
  64. package/scripts/properties-to-ts.ts +0 -111
  65. package/src/@types/i18next.d.ts +0 -24
  66. package/src/@types/properties.d.ts +0 -292
  67. package/src/@types/react-augment.d.ts +0 -22
  68. package/src/Accordion.tsx +0 -117
  69. package/src/Autocomplete.tsx +0 -321
  70. package/src/Badge.tsx +0 -112
  71. package/src/Banner.tsx +0 -112
  72. package/src/Box.tsx +0 -44
  73. package/src/Breadcrumbs.tsx +0 -221
  74. package/src/Buttons/BaseButton.tsx +0 -250
  75. package/src/Buttons/BaseMenuButton.tsx +0 -342
  76. package/src/Buttons/Button.tsx +0 -30
  77. package/src/Buttons/ButtonContext.tsx +0 -23
  78. package/src/Buttons/MenuButton.tsx +0 -33
  79. package/src/Buttons/MenuContext.ts +0 -25
  80. package/src/Buttons/MenuItem.tsx +0 -103
  81. package/src/Buttons/index.ts +0 -25
  82. package/src/Callout.tsx +0 -176
  83. package/src/Card.tsx +0 -186
  84. package/src/Checkbox.tsx +0 -261
  85. package/src/CheckboxGroup.tsx +0 -127
  86. package/src/CircularProgress.tsx +0 -42
  87. package/src/CssBaseline.tsx +0 -20
  88. package/src/DataTable/DataTable.tsx +0 -968
  89. package/src/DataTable/DataTableRowActions.tsx +0 -132
  90. package/src/DataTable/DataTableSettings.tsx +0 -136
  91. package/src/DataTable/constants.ts +0 -13
  92. package/src/DataTable/index.tsx +0 -28
  93. package/src/DataTable/reorderDataRowsLocally.tsx +0 -48
  94. package/src/DataTable/useRowReordering.tsx +0 -232
  95. package/src/DataTable/useScrollIndication.tsx +0 -125
  96. package/src/DatePickers/DateField.tsx +0 -267
  97. package/src/DatePickers/DateFieldActionBar.tsx +0 -65
  98. package/src/DatePickers/DateFieldLocalizationProvider.tsx +0 -46
  99. package/src/DatePickers/DatePicker.test.tsx +0 -66
  100. package/src/DatePickers/DatePicker.tsx +0 -299
  101. package/src/DatePickers/DatePicker.types.d.ts +0 -14
  102. package/src/DatePickers/TimeZonePicker.tsx +0 -59
  103. package/src/DatePickers/datePickerTheme.tsx +0 -377
  104. package/src/DatePickers/index.ts +0 -15
  105. package/src/DatePickers/useDateFieldsTranslations.ts +0 -94
  106. package/src/DatePickers/useOdysseyDateFields.ts +0 -303
  107. package/src/Dialog.tsx +0 -178
  108. package/src/Drawer.tsx +0 -255
  109. package/src/EmptyState.tsx +0 -79
  110. package/src/ErrorMessageList.tsx +0 -56
  111. package/src/Field.tsx +0 -189
  112. package/src/FieldComponentProps.ts +0 -66
  113. package/src/FieldError.tsx +0 -59
  114. package/src/FieldHint.tsx +0 -72
  115. package/src/FieldLabel.tsx +0 -67
  116. package/src/Fieldset.tsx +0 -116
  117. package/src/FieldsetContext.tsx +0 -23
  118. package/src/FileUploader/FileUploadIllustration.tsx +0 -66
  119. package/src/FileUploader/FileUploadPreview.tsx +0 -151
  120. package/src/FileUploader/FileUploader.tsx +0 -311
  121. package/src/FileUploader/index.ts +0 -13
  122. package/src/Form.tsx +0 -185
  123. package/src/FormCheckedProps.ts +0 -59
  124. package/src/HintLink.tsx +0 -28
  125. package/src/HtmlProps.ts +0 -112
  126. package/src/IconWithTooltip.tsx +0 -90
  127. package/src/Link.tsx +0 -115
  128. package/src/MuiPropsChild.tsx +0 -42
  129. package/src/MuiPropsContext.ts +0 -18
  130. package/src/NativeSelect.tsx +0 -249
  131. package/src/NullElement.tsx +0 -13
  132. package/src/OdysseyCacheProvider.test.tsx +0 -39
  133. package/src/OdysseyCacheProvider.tsx +0 -86
  134. package/src/OdysseyDesignTokensContext.tsx +0 -23
  135. package/src/OdysseyProvider.tsx +0 -92
  136. package/src/OdysseyThemeProvider.test.tsx +0 -211
  137. package/src/OdysseyThemeProvider.tsx +0 -109
  138. package/src/OdysseyTranslationProvider.test.tsx +0 -95
  139. package/src/OdysseyTranslationProvider.tsx +0 -77
  140. package/src/OdysseyTranslationProvider.types.ts +0 -47
  141. package/src/Pagination/Pagination.test.tsx +0 -327
  142. package/src/Pagination/Pagination.tsx +0 -417
  143. package/src/Pagination/constants.ts +0 -13
  144. package/src/Pagination/index.ts +0 -15
  145. package/src/Pagination/usePagination.ts +0 -45
  146. package/src/PasswordField.tsx +0 -253
  147. package/src/Radio.tsx +0 -199
  148. package/src/RadioGroup.tsx +0 -164
  149. package/src/ScreenReaderText.tsx +0 -53
  150. package/src/SearchField.tsx +0 -240
  151. package/src/Select.tsx +0 -576
  152. package/src/Stack.tsx +0 -56
  153. package/src/Status.tsx +0 -67
  154. package/src/Surface.tsx +0 -61
  155. package/src/SvgIcon.ts +0 -22
  156. package/src/Switch.tsx +0 -425
  157. package/src/Tabs.tsx +0 -259
  158. package/src/Tag.tsx +0 -317
  159. package/src/TagList.tsx +0 -55
  160. package/src/TagListContext.tsx +0 -23
  161. package/src/TextField.tsx +0 -298
  162. package/src/Toast.tsx +0 -151
  163. package/src/ToastStack.tsx +0 -43
  164. package/src/Tooltip.tsx +0 -61
  165. package/src/Typography.test.tsx +0 -26
  166. package/src/Typography.tsx +0 -474
  167. package/src/createContrastColors.ts +0 -112
  168. package/src/createUniqueAlphabeticalId.test.ts +0 -22
  169. package/src/createUniqueAlphabeticalId.ts +0 -17
  170. package/src/createUniqueId.test.ts +0 -22
  171. package/src/createUniqueId.ts +0 -17
  172. package/src/getTypedObjectKeys.ts +0 -15
  173. package/src/hexToRgb.ts +0 -40
  174. package/src/i18n.ts +0 -110
  175. package/src/icons.generated/Add.tsx +0 -44
  176. package/src/icons.generated/AddCircle.tsx +0 -46
  177. package/src/icons.generated/Apps.tsx +0 -44
  178. package/src/icons.generated/ArrowBottom.tsx +0 -46
  179. package/src/icons.generated/ArrowDown.tsx +0 -46
  180. package/src/icons.generated/ArrowLeft.tsx +0 -46
  181. package/src/icons.generated/ArrowLowerLeft.tsx +0 -46
  182. package/src/icons.generated/ArrowLowerRight.tsx +0 -46
  183. package/src/icons.generated/ArrowRight.tsx +0 -46
  184. package/src/icons.generated/ArrowTop.tsx +0 -46
  185. package/src/icons.generated/ArrowUnsorted.tsx +0 -46
  186. package/src/icons.generated/ArrowUp.tsx +0 -46
  187. package/src/icons.generated/ArrowUpperLeft.tsx +0 -46
  188. package/src/icons.generated/ArrowUpperRight.tsx +0 -46
  189. package/src/icons.generated/Bug.tsx +0 -44
  190. package/src/icons.generated/Calendar.tsx +0 -46
  191. package/src/icons.generated/Call.tsx +0 -44
  192. package/src/icons.generated/Chat.tsx +0 -44
  193. package/src/icons.generated/Check.tsx +0 -44
  194. package/src/icons.generated/CheckCircleFilled.tsx +0 -47
  195. package/src/icons.generated/ChevronDown.tsx +0 -46
  196. package/src/icons.generated/ChevronLeft.tsx +0 -46
  197. package/src/icons.generated/ChevronRight.tsx +0 -46
  198. package/src/icons.generated/ChevronUp.tsx +0 -46
  199. package/src/icons.generated/Clock.tsx +0 -44
  200. package/src/icons.generated/Close.tsx +0 -44
  201. package/src/icons.generated/CloseCircleFilled.tsx +0 -47
  202. package/src/icons.generated/CollapseLeft.tsx +0 -46
  203. package/src/icons.generated/CollapseRight.tsx +0 -46
  204. package/src/icons.generated/Copy.tsx +0 -44
  205. package/src/icons.generated/Custom.tsx +0 -50
  206. package/src/icons.generated/DangerDiamond.tsx +0 -46
  207. package/src/icons.generated/DangerDiamondFilled.tsx +0 -47
  208. package/src/icons.generated/Delete.tsx +0 -44
  209. package/src/icons.generated/Deny.tsx +0 -44
  210. package/src/icons.generated/Devices.tsx +0 -46
  211. package/src/icons.generated/Directory.tsx +0 -46
  212. package/src/icons.generated/Documentation.tsx +0 -46
  213. package/src/icons.generated/Download.tsx +0 -46
  214. package/src/icons.generated/DragIndicator.tsx +0 -46
  215. package/src/icons.generated/Duo.tsx +0 -62
  216. package/src/icons.generated/Edit.tsx +0 -44
  217. package/src/icons.generated/Email.tsx +0 -49
  218. package/src/icons.generated/ExpandLeft.tsx +0 -46
  219. package/src/icons.generated/ExpandRight.tsx +0 -46
  220. package/src/icons.generated/ExternalLink.tsx +0 -44
  221. package/src/icons.generated/Fido2.tsx +0 -72
  222. package/src/icons.generated/Filter.tsx +0 -44
  223. package/src/icons.generated/Folder.tsx +0 -44
  224. package/src/icons.generated/Globe.tsx +0 -44
  225. package/src/icons.generated/GoogleAuth.tsx +0 -70
  226. package/src/icons.generated/Grid.tsx +0 -47
  227. package/src/icons.generated/Group.tsx +0 -44
  228. package/src/icons.generated/Hide.tsx +0 -44
  229. package/src/icons.generated/Home.tsx +0 -44
  230. package/src/icons.generated/Idp.tsx +0 -54
  231. package/src/icons.generated/InformationCircle.tsx +0 -47
  232. package/src/icons.generated/InformationCircleFilled.tsx +0 -47
  233. package/src/icons.generated/Link.tsx +0 -44
  234. package/src/icons.generated/List.tsx +0 -44
  235. package/src/icons.generated/Lock.tsx +0 -44
  236. package/src/icons.generated/More.tsx +0 -44
  237. package/src/icons.generated/Notification.tsx +0 -46
  238. package/src/icons.generated/OktaVerify.tsx +0 -46
  239. package/src/icons.generated/OnPremMfa.tsx +0 -52
  240. package/src/icons.generated/OneTimePassword.tsx +0 -65
  241. package/src/icons.generated/Password.tsx +0 -80
  242. package/src/icons.generated/Pause.tsx +0 -44
  243. package/src/icons.generated/QuestionCircle.tsx +0 -46
  244. package/src/icons.generated/QuestionCircleFilled.tsx +0 -47
  245. package/src/icons.generated/Refresh.tsx +0 -46
  246. package/src/icons.generated/Reset.tsx +0 -44
  247. package/src/icons.generated/Resume.tsx +0 -44
  248. package/src/icons.generated/Search.tsx +0 -44
  249. package/src/icons.generated/SecurityQuestion.tsx +0 -51
  250. package/src/icons.generated/Server.tsx +0 -44
  251. package/src/icons.generated/Settings.tsx +0 -46
  252. package/src/icons.generated/Show.tsx +0 -44
  253. package/src/icons.generated/SmartCard.tsx +0 -65
  254. package/src/icons.generated/Sms.tsx +0 -55
  255. package/src/icons.generated/Subtract.tsx +0 -46
  256. package/src/icons.generated/SymantecVip.tsx +0 -52
  257. package/src/icons.generated/Sync.tsx +0 -44
  258. package/src/icons.generated/ThumbsDown.tsx +0 -46
  259. package/src/icons.generated/ThumbsUp.tsx +0 -46
  260. package/src/icons.generated/Unlock.tsx +0 -44
  261. package/src/icons.generated/Upload.tsx +0 -44
  262. package/src/icons.generated/User.tsx +0 -44
  263. package/src/icons.generated/Video.tsx +0 -44
  264. package/src/icons.generated/VoiceCall.tsx +0 -62
  265. package/src/icons.generated/Warning.tsx +0 -46
  266. package/src/icons.generated/WarningFilled.tsx +0 -46
  267. package/src/icons.generated/Yubikey.tsx +0 -44
  268. package/src/icons.generated/index.ts +0 -107
  269. package/src/index.ts +0 -118
  270. package/src/inputUtils.ts +0 -80
  271. package/src/labs/AppTile.tsx +0 -421
  272. package/src/labs/DataFilters.tsx +0 -871
  273. package/src/labs/DataTable.tsx +0 -877
  274. package/src/labs/DataTablePagination.tsx +0 -88
  275. package/src/labs/DataView/BulkActionsMenu.tsx +0 -98
  276. package/src/labs/DataView/CardLayoutContent.tsx +0 -272
  277. package/src/labs/DataView/DataCard.tsx +0 -357
  278. package/src/labs/DataView/DataTable.tsx +0 -128
  279. package/src/labs/DataView/DataView.test.tsx +0 -1168
  280. package/src/labs/DataView/DataView.tsx +0 -504
  281. package/src/labs/DataView/DetailPanel.tsx +0 -31
  282. package/src/labs/DataView/LayoutSwitcher.tsx +0 -72
  283. package/src/labs/DataView/RowActions.tsx +0 -125
  284. package/src/labs/DataView/TableLayoutContent.tsx +0 -500
  285. package/src/labs/DataView/TableSettings.tsx +0 -144
  286. package/src/labs/DataView/componentTypes.ts +0 -129
  287. package/src/labs/DataView/constants.tsx +0 -28
  288. package/src/labs/DataView/dataTypes.ts +0 -83
  289. package/src/labs/DataView/fetchData.ts +0 -49
  290. package/src/labs/DataView/index.ts +0 -19
  291. package/src/labs/DataView/tableConstants.tsx +0 -137
  292. package/src/labs/DataView/testSupportData.tsx +0 -301
  293. package/src/labs/DataView/useFilterConversion.ts +0 -88
  294. package/src/labs/DatePickers/DateTimeField.tsx +0 -267
  295. package/src/labs/DatePickers/DateTimePicker.test.tsx +0 -70
  296. package/src/labs/DatePickers/DateTimePicker.tsx +0 -303
  297. package/src/labs/DatePickers/dateTimePickerTheme.ts +0 -216
  298. package/src/labs/DatePickers/index.ts +0 -13
  299. package/src/labs/GroupPicker.tsx +0 -261
  300. package/src/labs/OdysseyPickers/ComposablePicker.test.tsx +0 -32
  301. package/src/labs/OdysseyPickers/ComposablePicker.tsx +0 -188
  302. package/src/labs/OdysseyPickers/Picker.tsx +0 -381
  303. package/src/labs/OdysseyPickers/PickerVirtualizationListBox.tsx +0 -192
  304. package/src/labs/OdysseyPickers/PickerWithOptionAdornment.tsx +0 -429
  305. package/src/labs/OdysseyPickers/index.ts +0 -15
  306. package/src/labs/PageTemplate/Layout.tsx +0 -85
  307. package/src/labs/PageTemplate/PageTemplate.tsx +0 -234
  308. package/src/labs/PageTemplate/index.ts +0 -14
  309. package/src/labs/PaginatedTable.tsx +0 -290
  310. package/src/labs/README.md +0 -46
  311. package/src/labs/StaticTable.tsx +0 -131
  312. package/src/labs/UserProfile.tsx +0 -104
  313. package/src/labs/UserProfileMenuButton.tsx +0 -86
  314. package/src/labs/index.ts +0 -47
  315. package/src/labs/materialReactTableTypes.tsx +0 -19
  316. package/src/properties/odyssey-react-mui.properties +0 -140
  317. package/src/properties/translations/odyssey-react-mui_cs.properties +0 -140
  318. package/src/properties/translations/odyssey-react-mui_da.properties +0 -140
  319. package/src/properties/translations/odyssey-react-mui_de.properties +0 -140
  320. package/src/properties/translations/odyssey-react-mui_el.properties +0 -140
  321. package/src/properties/translations/odyssey-react-mui_es.properties +0 -140
  322. package/src/properties/translations/odyssey-react-mui_fi.properties +0 -140
  323. package/src/properties/translations/odyssey-react-mui_fr.properties +0 -140
  324. package/src/properties/translations/odyssey-react-mui_ht.properties +0 -140
  325. package/src/properties/translations/odyssey-react-mui_hu.properties +0 -140
  326. package/src/properties/translations/odyssey-react-mui_id.properties +0 -140
  327. package/src/properties/translations/odyssey-react-mui_it.properties +0 -140
  328. package/src/properties/translations/odyssey-react-mui_ja.properties +0 -140
  329. package/src/properties/translations/odyssey-react-mui_ko.properties +0 -140
  330. package/src/properties/translations/odyssey-react-mui_ms.properties +0 -140
  331. package/src/properties/translations/odyssey-react-mui_nb.properties +0 -140
  332. package/src/properties/translations/odyssey-react-mui_nl_NL.properties +0 -140
  333. package/src/properties/translations/odyssey-react-mui_ok_PL.properties +0 -126
  334. package/src/properties/translations/odyssey-react-mui_ok_SK.properties +0 -126
  335. package/src/properties/translations/odyssey-react-mui_pl.properties +0 -140
  336. package/src/properties/translations/odyssey-react-mui_pt_BR.properties +0 -140
  337. package/src/properties/translations/odyssey-react-mui_ro.properties +0 -140
  338. package/src/properties/translations/odyssey-react-mui_ru.properties +0 -140
  339. package/src/properties/translations/odyssey-react-mui_sv.properties +0 -140
  340. package/src/properties/translations/odyssey-react-mui_th.properties +0 -140
  341. package/src/properties/translations/odyssey-react-mui_tr.properties +0 -140
  342. package/src/properties/translations/odyssey-react-mui_uk.properties +0 -140
  343. package/src/properties/translations/odyssey-react-mui_vi.properties +0 -140
  344. package/src/properties/translations/odyssey-react-mui_zh_CN.properties +0 -140
  345. package/src/properties/translations/odyssey-react-mui_zh_TW.properties +0 -140
  346. package/src/properties/ts/odyssey-react-mui.ts +0 -1
  347. package/src/properties/ts/odyssey-react-mui_cs.ts +0 -1
  348. package/src/properties/ts/odyssey-react-mui_da.ts +0 -1
  349. package/src/properties/ts/odyssey-react-mui_de.ts +0 -1
  350. package/src/properties/ts/odyssey-react-mui_el.ts +0 -1
  351. package/src/properties/ts/odyssey-react-mui_es.ts +0 -1
  352. package/src/properties/ts/odyssey-react-mui_fi.ts +0 -1
  353. package/src/properties/ts/odyssey-react-mui_fr.ts +0 -1
  354. package/src/properties/ts/odyssey-react-mui_ht.ts +0 -1
  355. package/src/properties/ts/odyssey-react-mui_hu.ts +0 -1
  356. package/src/properties/ts/odyssey-react-mui_id.ts +0 -1
  357. package/src/properties/ts/odyssey-react-mui_it.ts +0 -1
  358. package/src/properties/ts/odyssey-react-mui_ja.ts +0 -1
  359. package/src/properties/ts/odyssey-react-mui_ko.ts +0 -1
  360. package/src/properties/ts/odyssey-react-mui_ms.ts +0 -1
  361. package/src/properties/ts/odyssey-react-mui_nb.ts +0 -1
  362. package/src/properties/ts/odyssey-react-mui_nl_NL.ts +0 -1
  363. package/src/properties/ts/odyssey-react-mui_ok_PL.ts +0 -1
  364. package/src/properties/ts/odyssey-react-mui_ok_SK.ts +0 -1
  365. package/src/properties/ts/odyssey-react-mui_pl.ts +0 -1
  366. package/src/properties/ts/odyssey-react-mui_pt_BR.ts +0 -1
  367. package/src/properties/ts/odyssey-react-mui_ro.ts +0 -1
  368. package/src/properties/ts/odyssey-react-mui_ru.ts +0 -1
  369. package/src/properties/ts/odyssey-react-mui_sv.ts +0 -1
  370. package/src/properties/ts/odyssey-react-mui_th.ts +0 -1
  371. package/src/properties/ts/odyssey-react-mui_tr.ts +0 -1
  372. package/src/properties/ts/odyssey-react-mui_uk.ts +0 -1
  373. package/src/properties/ts/odyssey-react-mui_vi.ts +0 -1
  374. package/src/properties/ts/odyssey-react-mui_zh_CN.ts +0 -1
  375. package/src/properties/ts/odyssey-react-mui_zh_TW.ts +0 -1
  376. package/src/remUtils.ts +0 -27
  377. package/src/shadow-dom/index.ts +0 -13
  378. package/src/shadow-dom/shadow-dom.test.ts +0 -24
  379. package/src/shadow-dom/shadow-dom.ts +0 -54
  380. package/src/test-selectors/getByQuerySelector.ts +0 -176
  381. package/src/test-selectors/getComputedAccessibleErrorMessageText.ts +0 -52
  382. package/src/test-selectors/getComputedAccessibleText.ts +0 -36
  383. package/src/test-selectors/index.ts +0 -15
  384. package/src/test-selectors/interpolateString.ts +0 -41
  385. package/src/test-selectors/linkedHtmlSelectors.ts +0 -73
  386. package/src/test-selectors/queryOdysseySelector.ts +0 -36
  387. package/src/test-selectors/querySelector.ts +0 -249
  388. package/src/test-selectors/sanityChecks.ts +0 -53
  389. package/src/test-selectors/testSelector.ts +0 -143
  390. package/src/theme/components.tsx +0 -3275
  391. package/src/theme/components.types.ts +0 -111
  392. package/src/theme/createOdysseyMuiTheme.ts +0 -54
  393. package/src/theme/index.ts +0 -13
  394. package/src/theme/mixins.ts +0 -29
  395. package/src/theme/mixins.types.ts +0 -31
  396. package/src/theme/palette.ts +0 -112
  397. package/src/theme/palette.types.ts +0 -24
  398. package/src/theme/shape.ts +0 -31
  399. package/src/theme/spacing.ts +0 -34
  400. package/src/theme/theme.ts +0 -13
  401. package/src/theme/typography.ts +0 -137
  402. package/src/theme/typography.types.ts +0 -41
  403. package/src/theme/useContrastMode.test.tsx +0 -504
  404. package/src/ui-shell/AppSwitcher/AppSwitcher.tsx +0 -94
  405. package/src/ui-shell/AppSwitcher/AppSwitcherApp.tsx +0 -146
  406. package/src/ui-shell/AppSwitcher/OktaAura.tsx +0 -50
  407. package/src/ui-shell/AppSwitcher/index.ts +0 -13
  408. package/src/ui-shell/SideNav/CollapseIcon.tsx +0 -34
  409. package/src/ui-shell/SideNav/HandleIcon.tsx +0 -35
  410. package/src/ui-shell/SideNav/NavAccordion.tsx +0 -243
  411. package/src/ui-shell/SideNav/OktaLogo.tsx +0 -34
  412. package/src/ui-shell/SideNav/SideNav.test.tsx +0 -326
  413. package/src/ui-shell/SideNav/SideNav.tsx +0 -810
  414. package/src/ui-shell/SideNav/SideNavFooterContent.tsx +0 -85
  415. package/src/ui-shell/SideNav/SideNavHeader.tsx +0 -134
  416. package/src/ui-shell/SideNav/SideNavItemContent.tsx +0 -402
  417. package/src/ui-shell/SideNav/SideNavItemContentContext.tsx +0 -29
  418. package/src/ui-shell/SideNav/SideNavItemLinkContent.tsx +0 -90
  419. package/src/ui-shell/SideNav/SideNavLogo.tsx +0 -65
  420. package/src/ui-shell/SideNav/SideNavToggleButton.tsx +0 -272
  421. package/src/ui-shell/SideNav/SortableList/SortableItem.tsx +0 -237
  422. package/src/ui-shell/SideNav/SortableList/SortableList.tsx +0 -132
  423. package/src/ui-shell/SideNav/SortableList/SortableOverlay.tsx +0 -34
  424. package/src/ui-shell/SideNav/index.ts +0 -16
  425. package/src/ui-shell/SideNav/types.ts +0 -224
  426. package/src/ui-shell/TopNav/TopNav.tsx +0 -109
  427. package/src/ui-shell/TopNav/TopNavLinksList.tsx +0 -68
  428. package/src/ui-shell/TopNav/TopNavListItem.tsx +0 -209
  429. package/src/ui-shell/TopNav/index.ts +0 -13
  430. package/src/ui-shell/UiShell.test.tsx +0 -366
  431. package/src/ui-shell/UiShell.tsx +0 -153
  432. package/src/ui-shell/UiShellContent.tsx +0 -350
  433. package/src/ui-shell/UiShellProvider.tsx +0 -103
  434. package/src/ui-shell/bufferLatest.test.ts +0 -79
  435. package/src/ui-shell/bufferLatest.ts +0 -64
  436. package/src/ui-shell/createMessageBus.test.ts +0 -115
  437. package/src/ui-shell/createMessageBus.ts +0 -53
  438. package/src/ui-shell/createStore.test.ts +0 -103
  439. package/src/ui-shell/createStore.ts +0 -37
  440. package/src/ui-shell/index.ts +0 -21
  441. package/src/ui-shell/renderUiShell.test.tsx +0 -203
  442. package/src/ui-shell/renderUiShell.tsx +0 -158
  443. package/src/ui-shell/useHasUiShell.ts +0 -25
  444. package/src/ui-shell/useScrollState.ts +0 -59
  445. package/src/useAutocomplete.tsx +0 -184
  446. package/src/useContrastMode.tsx +0 -143
  447. package/src/useNormalizedKey.ts +0 -17
  448. package/src/useUniqueAlphabeticalId.ts +0 -21
  449. package/src/useUniqueId.ts +0 -21
  450. package/src/web-component/createReactRootElements.test.ts +0 -40
  451. package/src/web-component/createReactRootElements.ts +0 -39
  452. package/src/web-component/index.ts +0 -13
  453. package/src/web-component/renderReactInWebComponent.test.tsx +0 -128
  454. package/src/web-component/renderReactInWebComponent.ts +0 -135
  455. package/tsconfig.json +0 -16
  456. package/tsconfig.production.json +0 -13
  457. package/vitest.config.ts +0 -36
  458. package/vitest.setup.ts +0 -32
package/src/Accordion.tsx DELETED
@@ -1,117 +0,0 @@
1
- /*!
2
- * Copyright (c) 2023-present, Okta, Inc. and/or its affiliates. All rights reserved.
3
- * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.")
4
- *
5
- * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
6
- * Unless required by applicable law or agreed to in writing, software
7
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
8
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9
- *
10
- * See the License for the specific language governing permissions and limitations under the License.
11
- */
12
-
13
- import { ReactNode, memo } from "react";
14
- import type { HtmlProps } from "./HtmlProps.js";
15
- import {
16
- Accordion as MuiAccordion,
17
- AccordionDetails as MuiAccordionDetails,
18
- AccordionSummary as MuiAccordionSummary,
19
- AccordionProps as MuiAccordionProps,
20
- } from "@mui/material";
21
- import { ChevronDownIcon } from "./icons.generated/index.js";
22
- import { Support } from "./Typography.js";
23
- import { useUniqueId } from "./useUniqueId.js";
24
-
25
- export const accordionVariantValues = ["default", "borderless"] as const;
26
-
27
- export type AccordionProps = {
28
- /**
29
- * The content of the Accordion itself
30
- */
31
- children: ReactNode;
32
- /**
33
- * Defines IDs for the header and the content of the Accordion
34
- */
35
- id?: string;
36
- /**
37
- * The label text for the AccordionSummary
38
- */
39
- label: string;
40
- /**
41
- * Whether the item is expanded by default
42
- */
43
- isDefaultExpanded?: boolean;
44
- /**
45
- * Whether the item is disabled
46
- */
47
- isDisabled?: boolean;
48
- /**
49
- * Whether the item is expanded
50
- */
51
- isExpanded?: boolean;
52
- /**
53
- * Event fired when the expansion state of the accordion is changed
54
- */
55
- /**
56
- * Visual style for the accordion (default or borderless)
57
- */
58
- variant?: (typeof accordionVariantValues)[number];
59
- onChange?: MuiAccordionProps["onChange"];
60
- } & (
61
- | {
62
- isExpanded: boolean;
63
- isDefaultExpanded?: never;
64
- }
65
- | {
66
- isDefaultExpanded?: boolean;
67
- isExpanded?: never;
68
- }
69
- ) &
70
- Pick<HtmlProps, "testId" | "translate">;
71
-
72
- const Accordion = ({
73
- children,
74
- label,
75
- id: idOverride,
76
- isDefaultExpanded,
77
- isDisabled,
78
- isExpanded,
79
- onChange,
80
- testId,
81
- translate,
82
- variant = "default",
83
- }: AccordionProps) => {
84
- const id = useUniqueId(idOverride);
85
- const headerId = `${id}-header`;
86
- const contentId = `${id}-content`;
87
-
88
- return (
89
- <MuiAccordion
90
- data-se={testId}
91
- data-ods-variant={variant}
92
- defaultExpanded={isDefaultExpanded}
93
- disabled={isDisabled}
94
- disableGutters
95
- expanded={isExpanded}
96
- onChange={onChange}
97
- >
98
- <MuiAccordionSummary
99
- aria-controls={contentId}
100
- expandIcon={<ChevronDownIcon />}
101
- id={headerId}
102
- >
103
- <Support component="div" translate={translate}>
104
- {label}
105
- </Support>
106
- </MuiAccordionSummary>
107
- <MuiAccordionDetails aria-labelledby={headerId}>
108
- {children}
109
- </MuiAccordionDetails>
110
- </MuiAccordion>
111
- );
112
- };
113
-
114
- const MemoizedAccordion = memo(Accordion);
115
- MemoizedAccordion.displayName = "Accordion";
116
-
117
- export { MemoizedAccordion as Accordion };
@@ -1,321 +0,0 @@
1
- /*!
2
- * Copyright (c) 2023-present, Okta, Inc. and/or its affiliates. All rights reserved.
3
- * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.")
4
- *
5
- * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
6
- * Unless required by applicable law or agreed to in writing, software
7
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
8
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9
- *
10
- * See the License for the specific language governing permissions and limitations under the License.
11
- */
12
-
13
- import { memo } from "react";
14
- import { useTranslation } from "react-i18next";
15
- import {
16
- Autocomplete as MuiAutocomplete,
17
- AutocompleteProps as MuiAutocompleteProps,
18
- UseAutocompleteProps as MuiUseAutocompleteProps,
19
- } from "@mui/material";
20
-
21
- import { FieldComponentProps } from "./FieldComponentProps.js";
22
- import type { HtmlProps } from "./HtmlProps.js";
23
- import { PickerVirtualizationListBox } from "./labs/OdysseyPickers/PickerVirtualizationListBox.js";
24
- import { useAutocomplete } from "./useAutocomplete.js";
25
- import { TestSelector } from "./test-selectors/index.js";
26
-
27
- export const AutocompleteTestSelector = {
28
- accessibleText: {
29
- errorMessage: "errorMessage",
30
- hint: "description",
31
- label: "label",
32
- },
33
- children: {
34
- list: {
35
- children: {
36
- listItem: {
37
- elementSelector: {
38
- method: "ByRole",
39
- options: {
40
- label: "name",
41
- },
42
- role: "option",
43
- },
44
- },
45
- },
46
- isControlledElement: true,
47
- },
48
- },
49
- elementSelector: {
50
- method: "ByRole",
51
- options: {
52
- label: "name",
53
- },
54
- role: "combobox",
55
- },
56
- } as const satisfies TestSelector;
57
- // type SetItemSize = (size: number) => void;
58
-
59
- export type AutocompleteProps<
60
- OptionType,
61
- HasMultipleChoices extends boolean | undefined,
62
- IsCustomValueAllowed extends boolean | undefined,
63
- > = {
64
- /**
65
- * The default value. Use when the component is not controlled.
66
- */
67
- defaultValue?: MuiUseAutocompleteProps<
68
- OptionType,
69
- HasMultipleChoices,
70
- undefined,
71
- IsCustomValueAllowed
72
- >["defaultValue"];
73
- /**
74
- * Used to determine the string value for a given option. It's used to fill the input (and the list box options if renderOption is not provided). If used in free solo mode, it must accept both the type of the options and a string.
75
- *
76
- * `function(option: Value) => string`
77
- */
78
- getOptionLabel?: MuiUseAutocompleteProps<
79
- OptionType,
80
- HasMultipleChoices,
81
- undefined,
82
- IsCustomValueAllowed
83
- >["getOptionLabel"];
84
-
85
- /** Used to determine if the option represents the given value. Uses strict equality by default if none provided.
86
- * Both arguments need to be handled, an option can only match with one value.
87
- * option: the option to test
88
- * value: the value to test against
89
- *
90
- * You will need to implement this function if your `option` items are objects.
91
- */
92
- getIsOptionEqualToValue?: (option: OptionType, value: OptionType) => boolean;
93
- /**
94
- * Enables multiple choice selection
95
- */
96
- hasMultipleChoices?: MuiAutocompleteProps<
97
- OptionType,
98
- HasMultipleChoices,
99
- undefined,
100
- IsCustomValueAllowed
101
- >["multiple"];
102
- /**
103
- * The value for the input
104
- */
105
- inputValue?: MuiUseAutocompleteProps<
106
- OptionType,
107
- HasMultipleChoices,
108
- undefined,
109
- IsCustomValueAllowed
110
- >["inputValue"];
111
- /**
112
- * Allows the input of custom values
113
- */
114
- isCustomValueAllowed?: MuiAutocompleteProps<
115
- OptionType,
116
- HasMultipleChoices,
117
- undefined,
118
- IsCustomValueAllowed
119
- >["freeSolo"];
120
- /**
121
- * Disables the Autocomplete input
122
- */
123
- isDisabled?: MuiAutocompleteProps<
124
- OptionType,
125
- HasMultipleChoices,
126
- undefined,
127
- IsCustomValueAllowed
128
- >["disabled"];
129
- /**
130
- * Displays a loading indicator
131
- */
132
- isLoading?: MuiAutocompleteProps<
133
- OptionType,
134
- HasMultipleChoices,
135
- undefined,
136
- IsCustomValueAllowed
137
- >["loading"];
138
- /**
139
- * Makes the Autocomplete input read-only
140
- */
141
- isReadOnly?: MuiAutocompleteProps<
142
- OptionType,
143
- HasMultipleChoices,
144
- undefined,
145
- IsCustomValueAllowed
146
- >["readOnly"];
147
- /**
148
- * If this component is required to display a virtualized list of options,
149
- * then this value needs to be set to true.
150
- * It is recommended if you're options are on the order of 10's of hundreds or more.
151
- */
152
- isVirtualized?: boolean;
153
- /**
154
- * The label text for the autocomplete input
155
- */
156
- label: string;
157
- /**
158
- * The text to display when no options are available
159
- *
160
- * default: "No Options"
161
- */
162
- noOptionsText?: string;
163
- /**
164
- * Callback fired when the autocomplete loses focus.
165
- */
166
- onBlur?: MuiAutocompleteProps<
167
- OptionType,
168
- HasMultipleChoices,
169
- undefined,
170
- IsCustomValueAllowed
171
- >["onBlur"];
172
- /**
173
- * Callback fired when a selection is made.
174
- */
175
- onChange?: MuiUseAutocompleteProps<
176
- OptionType,
177
- HasMultipleChoices,
178
- undefined,
179
- IsCustomValueAllowed
180
- >["onChange"];
181
- /**
182
- * Callback fired when the textbox receives typed characters.
183
- */
184
- onInputChange?: MuiAutocompleteProps<
185
- OptionType,
186
- HasMultipleChoices,
187
- undefined,
188
- IsCustomValueAllowed
189
- >["onInputChange"];
190
- /**
191
- * Callback fired when the autocomplete gains focus.
192
- */
193
- onFocus?: MuiAutocompleteProps<
194
- OptionType,
195
- HasMultipleChoices,
196
- undefined,
197
- IsCustomValueAllowed
198
- >["onFocus"];
199
- /**
200
- * The options for the Autocomplete input
201
- */
202
- options: ReadonlyArray<OptionType>;
203
- /**
204
- * The value of the Autocomplete input
205
- */
206
- value?: MuiUseAutocompleteProps<
207
- OptionType,
208
- HasMultipleChoices,
209
- undefined,
210
- IsCustomValueAllowed
211
- >["value"];
212
- } & Pick<
213
- FieldComponentProps,
214
- | "errorMessage"
215
- | "errorMessageList"
216
- | "hint"
217
- | "HintLinkComponent"
218
- | "id"
219
- | "isFullWidth"
220
- | "isOptional"
221
- | "name"
222
- > &
223
- Pick<HtmlProps, "ariaDescribedBy" | "testId" | "translate">;
224
-
225
- const Autocomplete = <
226
- OptionType,
227
- HasMultipleChoices extends boolean | undefined,
228
- IsCustomValueAllowed extends boolean | undefined,
229
- >({
230
- ariaDescribedBy,
231
- defaultValue,
232
- errorMessage,
233
- errorMessageList,
234
- getOptionLabel,
235
- hasMultipleChoices,
236
- id: idOverride,
237
- inputValue,
238
- isCustomValueAllowed,
239
- isDisabled,
240
- isFullWidth = false,
241
- isLoading,
242
- isOptional = false,
243
- isReadOnly,
244
- isVirtualized = false,
245
- hint,
246
- HintLinkComponent,
247
- label,
248
- name: nameOverride,
249
- noOptionsText,
250
- onBlur,
251
- onChange,
252
- onInputChange,
253
- onFocus,
254
- options,
255
- value,
256
- getIsOptionEqualToValue,
257
- testId,
258
- translate,
259
- }: AutocompleteProps<OptionType, HasMultipleChoices, IsCustomValueAllowed>) => {
260
- const { t } = useTranslation();
261
- const { inputValueProp, isVirtualizedRef, renderInput, valueProps } =
262
- useAutocomplete<OptionType, HasMultipleChoices, IsCustomValueAllowed>({
263
- ariaDescribedBy,
264
- defaultValue,
265
- errorMessage,
266
- errorMessageList,
267
- hasMultipleChoices,
268
- hint,
269
- HintLinkComponent,
270
- inputValue,
271
- isFullWidth,
272
- isOptional,
273
- isVirtualized,
274
- label,
275
- name: nameOverride,
276
- testId,
277
- value,
278
- });
279
-
280
- return (
281
- <MuiAutocomplete
282
- {...valueProps}
283
- {...inputValueProp}
284
- // conditionally provide the ListboxComponent if this needs to be virtualized
285
- {...(isVirtualizedRef.current && {
286
- ListboxComponent: PickerVirtualizationListBox,
287
- })}
288
- // AutoComplete is wrapped in a div within MUI which does not get the disabled attr. So this aria-disabled gets set in the div
289
- aria-disabled={isDisabled}
290
- clearText={t("clear.text")}
291
- closeText={t("close.text")}
292
- disableCloseOnSelect={hasMultipleChoices}
293
- disabled={isDisabled}
294
- freeSolo={isCustomValueAllowed}
295
- filterSelectedOptions={true}
296
- getOptionLabel={getOptionLabel}
297
- id={idOverride}
298
- fullWidth={isFullWidth}
299
- loading={isLoading}
300
- multiple={hasMultipleChoices}
301
- noOptionsText={noOptionsText}
302
- onBlur={onBlur}
303
- onChange={onChange}
304
- onInputChange={onInputChange}
305
- onFocus={onFocus}
306
- openText={t("open.text")}
307
- options={options}
308
- readOnly={isReadOnly}
309
- renderInput={renderInput}
310
- isOptionEqualToValue={getIsOptionEqualToValue}
311
- translate={translate}
312
- />
313
- );
314
- };
315
-
316
- // Need the `typeof Autocomplete` because generics don't get passed through
317
- const MemoizedAutocomplete = memo(Autocomplete) as typeof Autocomplete;
318
- // @ts-expect-error displayName is expected to not be on `typeof Autocomplete`
319
- MemoizedAutocomplete.displayName = "Autocomplete";
320
-
321
- export { MemoizedAutocomplete as Autocomplete };
package/src/Badge.tsx DELETED
@@ -1,112 +0,0 @@
1
- /*!
2
- * Copyright (c) 2023-present, Okta, Inc. and/or its affiliates. All rights reserved.
3
- * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.")
4
- *
5
- * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
6
- * Unless required by applicable law or agreed to in writing, software
7
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
8
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9
- *
10
- * See the License for the specific language governing permissions and limitations under the License.
11
- */
12
-
13
- import { CSSProperties, memo, useMemo } from "react";
14
-
15
- import {
16
- useOdysseyDesignTokens,
17
- DesignTokens,
18
- } from "./OdysseyDesignTokensContext.js";
19
- import { Box } from "./Box.js";
20
- import type { HtmlProps } from "./HtmlProps.js";
21
-
22
- export const badgeContentMaxValues = [
23
- 10, 20, 30, 40, 50, 60, 70, 80, 90, 100,
24
- ] as const;
25
- export const badgeTypeValues = ["default", "attention", "danger"] as const;
26
-
27
- export type BadgeProps = {
28
- badgeContent: number;
29
- badgeContentMax?: (typeof badgeContentMaxValues)[number];
30
- type?: (typeof badgeTypeValues)[number];
31
- } & Pick<HtmlProps, "testId" | "translate">;
32
-
33
- const badgeTypeColors = (odysseyTokens: DesignTokens) => ({
34
- default: {
35
- background: odysseyTokens.HueNeutral200,
36
- font: odysseyTokens.TypographyColorBody,
37
- },
38
- attention: {
39
- background: odysseyTokens.PalettePrimaryMain,
40
- font: odysseyTokens.TypographyColorInverse,
41
- },
42
- danger: {
43
- background: odysseyTokens.PaletteDangerMain,
44
- font: odysseyTokens.TypographyColorInverse,
45
- },
46
- });
47
-
48
- const Badge = ({
49
- badgeContent,
50
- badgeContentMax = 100,
51
- testId,
52
- translate,
53
- type = "default",
54
- }: BadgeProps) => {
55
- const odysseyDesignTokens = useOdysseyDesignTokens();
56
-
57
- const renderBadge = useMemo(() => {
58
- const greaterThanZeroContentMax = badgeContentMax > 0 ? badgeContentMax : 1;
59
- const threeDigitLimitedMax =
60
- greaterThanZeroContentMax > 999 ? 999 : greaterThanZeroContentMax;
61
- const isOverContentMax = badgeContent > threeDigitLimitedMax;
62
- const overContentMaxMessage = `${greaterThanZeroContentMax}+`;
63
- const formattedContent = isOverContentMax
64
- ? overContentMaxMessage
65
- : badgeContent.toString();
66
-
67
- const badgeStyles: CSSProperties = {
68
- display: "inline-flex",
69
- alignItems: "center",
70
- justifyContent: "center",
71
- minWidth: `calc(${odysseyDesignTokens.Spacing4} + ${odysseyDesignTokens.Spacing1})`,
72
- height: `calc(${odysseyDesignTokens.Spacing4} + ${odysseyDesignTokens.Spacing1})`,
73
- minHeight: `calc(${odysseyDesignTokens.Spacing4} + ${odysseyDesignTokens.Spacing1})`,
74
- // 6px horizontal padding per design requirements
75
- padding: "0 6px",
76
- backgroundColor: badgeTypeColors(odysseyDesignTokens)[type].background,
77
- color: badgeTypeColors(odysseyDesignTokens)[type].font,
78
- borderRadius:
79
- formattedContent.length > 1
80
- ? `${odysseyDesignTokens.BorderRadiusOuter}`
81
- : "50%",
82
- fontSize: `${odysseyDesignTokens.TypographyScale0}`,
83
- fontFamily: `${odysseyDesignTokens.TypographyFamilyMono}`,
84
- fontWeight: `${odysseyDesignTokens.TypographyWeightBodyBold}`,
85
- lineHeight: 1,
86
- transitionDuration: `${odysseyDesignTokens.TransitionDurationMain}`,
87
- transitionProperty: `background-color, color`,
88
- };
89
-
90
- const hasNotificationCount = badgeContent && badgeContent > 0;
91
-
92
- return hasNotificationCount ? (
93
- <Box sx={badgeStyles} testId={testId} translate={translate}>
94
- {formattedContent}
95
- </Box>
96
- ) : null;
97
- }, [
98
- badgeContent,
99
- badgeContentMax,
100
- odysseyDesignTokens,
101
- testId,
102
- translate,
103
- type,
104
- ]);
105
-
106
- return renderBadge;
107
- };
108
-
109
- const MemoizedBadge = memo(Badge);
110
- MemoizedBadge.displayName = "Badge";
111
-
112
- export { MemoizedBadge as Badge };
package/src/Banner.tsx DELETED
@@ -1,112 +0,0 @@
1
- /*!
2
- * Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.
3
- * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.")
4
- *
5
- * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
6
- * Unless required by applicable law or agreed to in writing, software
7
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
8
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9
- *
10
- * See the License for the specific language governing permissions and limitations under the License.
11
- */
12
-
13
- import { memo } from "react";
14
- import { useTranslation } from "react-i18next";
15
- import { Alert, AlertColor, AlertTitle, AlertProps } from "@mui/material";
16
-
17
- import type { HtmlProps } from "./HtmlProps.js";
18
- import { Link, LinkProps } from "./Link.js";
19
- import { ScreenReaderText } from "./ScreenReaderText.js";
20
-
21
- export const bannerRoleValues = ["status", "alert"] as const;
22
- export const bannerSeverityValues: AlertColor[] = [
23
- "success",
24
- "info",
25
- "warning",
26
- "error",
27
- ];
28
-
29
- export type BannerProps = {
30
- /**
31
- * The function that's fired when the user clicks the close button. If undefined,
32
- * the close button will not be shown.
33
- */
34
- onClose?: AlertProps["onClose"];
35
- /**
36
- * Sets the ARIA role of the alert
37
- * ("status" for something that dynamically updates, "alert" for errors, null for something
38
- * unchanging)
39
- */
40
- role?: (typeof bannerRoleValues)[number];
41
- /**
42
- * Determine the color and icon of the alert
43
- */
44
- severity: (typeof bannerSeverityValues)[number];
45
- /**
46
- * The text content of the alert
47
- */
48
- text: string;
49
- } & Pick<HtmlProps, "testId" | "translate"> &
50
- (
51
- | {
52
- linkRel?: LinkProps["rel"];
53
- linkTarget?: LinkProps["target"];
54
- linkText: string;
55
- /**
56
- * If defined, the Banner will include a link to the URL
57
- */
58
- linkUrl: LinkProps["href"];
59
- }
60
- | {
61
- linkRel?: never;
62
- linkTarget?: never;
63
- linkText?: never;
64
- linkUrl?: never;
65
- }
66
- );
67
-
68
- const Banner = ({
69
- linkRel,
70
- linkTarget,
71
- linkText,
72
- linkUrl,
73
- onClose,
74
- role,
75
- severity,
76
- text,
77
- testId,
78
- translate,
79
- }: BannerProps) => {
80
- const { t } = useTranslation();
81
-
82
- return (
83
- <Alert
84
- data-se={testId}
85
- onClose={onClose}
86
- role={role}
87
- severity={severity}
88
- variant="banner"
89
- >
90
- <ScreenReaderText translate={translate}>
91
- {t(`severity.${severity}`)}
92
- </ScreenReaderText>
93
- <AlertTitle translate={translate}>{text}</AlertTitle>
94
- {linkUrl && (
95
- <Link
96
- href={linkUrl}
97
- rel={linkRel}
98
- target={linkTarget}
99
- translate={translate}
100
- variant="monochrome"
101
- >
102
- {linkText}
103
- </Link>
104
- )}
105
- </Alert>
106
- );
107
- };
108
-
109
- const MemoizedBanner = memo(Banner);
110
- MemoizedBanner.displayName = "Banner";
111
-
112
- export { MemoizedBanner as Banner };
package/src/Box.tsx DELETED
@@ -1,44 +0,0 @@
1
- /*!
2
- * Copyright (c) 2023-present, Okta, Inc. and/or its affiliates. All rights reserved.
3
- * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.")
4
- *
5
- * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
6
- * Unless required by applicable law or agreed to in writing, software
7
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
8
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9
- *
10
- * See the License for the specific language governing permissions and limitations under the License.
11
- */
12
-
13
- import { Box as MuiBox, BoxProps as MuiBoxProps } from "@mui/material";
14
- import { AriaRole, ReactNode, forwardRef, memo } from "react";
15
-
16
- import type { HtmlProps } from "./HtmlProps.js";
17
-
18
- export type BoxProps = {
19
- children?: ReactNode;
20
- component?: MuiBoxProps["component"];
21
- id?: MuiBoxProps["id"];
22
- role?: AriaRole;
23
- sx?: MuiBoxProps["sx"];
24
- } & Pick<HtmlProps, "testId" | "translate">;
25
-
26
- const Box = forwardRef<HTMLElement, BoxProps>(
27
- ({ children, component, id, role, sx, testId, translate }, ref) => (
28
- <MuiBox
29
- ref={ref}
30
- children={children}
31
- component={component}
32
- data-se={testId}
33
- id={id}
34
- role={role}
35
- sx={sx}
36
- translate={translate}
37
- />
38
- ),
39
- );
40
-
41
- const MemoizedBox = memo(Box);
42
- MemoizedBox.displayName = "Box";
43
-
44
- export { MemoizedBox as Box };