@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.
- package/dist/cjs/theme/components.cjs +6 -0
- package/dist/cjs/theme/components.cjs.map +1 -1
- package/dist/cjs/ui-shell/SideNav/SideNav.cjs +2 -1
- package/dist/cjs/ui-shell/SideNav/SideNav.cjs.map +1 -1
- package/dist/cjs/ui-shell/SideNav/SideNavItemContent.cjs +36 -11
- package/dist/cjs/ui-shell/SideNav/SideNavItemContent.cjs.map +1 -1
- package/dist/cjs/ui-shell/SideNav/SideNavItemLinkContent.cjs +3 -1
- package/dist/cjs/ui-shell/SideNav/SideNavItemLinkContent.cjs.map +1 -1
- package/dist/cjs/ui-shell/SideNav/SideNavLogo.cjs +14 -2
- package/dist/cjs/ui-shell/SideNav/SideNavLogo.cjs.map +1 -1
- package/dist/cjs/ui-shell/SideNav/SideNavToggleButton.cjs +1 -1
- package/dist/cjs/ui-shell/SideNav/SideNavToggleButton.cjs.map +1 -1
- package/dist/cjs/ui-shell/SideNav/types.cjs.map +1 -1
- package/dist/cjs/ui-shell/UiShellContent.cjs +48 -32
- package/dist/cjs/ui-shell/UiShellContent.cjs.map +1 -1
- package/dist/cjs/ui-shell/index.cjs +9 -1
- package/dist/cjs/ui-shell/index.cjs.map +1 -1
- package/dist/cjs/useContrastMode.cjs +1 -1
- package/dist/cjs/useContrastMode.cjs.map +1 -1
- package/dist/esm/theme/components.js +6 -0
- package/dist/esm/theme/components.js.map +1 -1
- package/dist/esm/ui-shell/SideNav/SideNav.js +2 -1
- package/dist/esm/ui-shell/SideNav/SideNav.js.map +1 -1
- package/dist/esm/ui-shell/SideNav/SideNavItemContent.js +37 -12
- package/dist/esm/ui-shell/SideNav/SideNavItemContent.js.map +1 -1
- package/dist/esm/ui-shell/SideNav/SideNavItemLinkContent.js +3 -1
- package/dist/esm/ui-shell/SideNav/SideNavItemLinkContent.js.map +1 -1
- package/dist/esm/ui-shell/SideNav/SideNavLogo.js +14 -2
- package/dist/esm/ui-shell/SideNav/SideNavLogo.js.map +1 -1
- package/dist/esm/ui-shell/SideNav/SideNavToggleButton.js +1 -1
- package/dist/esm/ui-shell/SideNav/SideNavToggleButton.js.map +1 -1
- package/dist/esm/ui-shell/SideNav/types.js.map +1 -1
- package/dist/esm/ui-shell/UiShellContent.js +45 -31
- package/dist/esm/ui-shell/UiShellContent.js.map +1 -1
- package/dist/esm/ui-shell/index.js +1 -0
- package/dist/esm/ui-shell/index.js.map +1 -1
- package/dist/esm/useContrastMode.js +2 -2
- package/dist/esm/useContrastMode.js.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.scss +1 -1
- package/dist/tsconfig.production.tsbuildinfo +1 -1
- package/dist/types/theme/components.d.ts.map +1 -1
- package/dist/types/ui-shell/SideNav/SideNav.d.ts.map +1 -1
- package/dist/types/ui-shell/SideNav/SideNavItemContent.d.ts +9 -7
- package/dist/types/ui-shell/SideNav/SideNavItemContent.d.ts.map +1 -1
- package/dist/types/ui-shell/SideNav/SideNavItemLinkContent.d.ts +1 -1
- package/dist/types/ui-shell/SideNav/SideNavItemLinkContent.d.ts.map +1 -1
- package/dist/types/ui-shell/SideNav/SideNavLogo.d.ts.map +1 -1
- package/dist/types/ui-shell/SideNav/types.d.ts +5 -1
- package/dist/types/ui-shell/SideNav/types.d.ts.map +1 -1
- package/dist/types/ui-shell/UiShellContent.d.ts +8 -2
- package/dist/types/ui-shell/UiShellContent.d.ts.map +1 -1
- package/dist/types/ui-shell/index.d.ts +1 -1
- package/dist/types/ui-shell/index.d.ts.map +1 -1
- package/package.json +4 -4
- package/.browserslistrc +0 -1
- package/.svgrrc.cjs +0 -13
- package/CHANGELOG.md +0 -1490
- package/babel.config.cjs +0 -112
- package/i18n.config.json +0 -10
- package/scripts/generateIconsIndex.ts +0 -49
- package/scripts/generateTestSelectorsJson.ts +0 -33
- package/scripts/properties-to-ts.ts +0 -111
- package/src/@types/i18next.d.ts +0 -24
- package/src/@types/properties.d.ts +0 -292
- package/src/@types/react-augment.d.ts +0 -22
- package/src/Accordion.tsx +0 -117
- package/src/Autocomplete.tsx +0 -321
- package/src/Badge.tsx +0 -112
- package/src/Banner.tsx +0 -112
- package/src/Box.tsx +0 -44
- package/src/Breadcrumbs.tsx +0 -221
- package/src/Buttons/BaseButton.tsx +0 -250
- package/src/Buttons/BaseMenuButton.tsx +0 -342
- package/src/Buttons/Button.tsx +0 -30
- package/src/Buttons/ButtonContext.tsx +0 -23
- package/src/Buttons/MenuButton.tsx +0 -33
- package/src/Buttons/MenuContext.ts +0 -25
- package/src/Buttons/MenuItem.tsx +0 -103
- package/src/Buttons/index.ts +0 -25
- package/src/Callout.tsx +0 -176
- package/src/Card.tsx +0 -186
- package/src/Checkbox.tsx +0 -261
- package/src/CheckboxGroup.tsx +0 -127
- package/src/CircularProgress.tsx +0 -42
- package/src/CssBaseline.tsx +0 -20
- package/src/DataTable/DataTable.tsx +0 -968
- package/src/DataTable/DataTableRowActions.tsx +0 -132
- package/src/DataTable/DataTableSettings.tsx +0 -136
- package/src/DataTable/constants.ts +0 -13
- package/src/DataTable/index.tsx +0 -28
- package/src/DataTable/reorderDataRowsLocally.tsx +0 -48
- package/src/DataTable/useRowReordering.tsx +0 -232
- package/src/DataTable/useScrollIndication.tsx +0 -125
- package/src/DatePickers/DateField.tsx +0 -267
- package/src/DatePickers/DateFieldActionBar.tsx +0 -65
- package/src/DatePickers/DateFieldLocalizationProvider.tsx +0 -46
- package/src/DatePickers/DatePicker.test.tsx +0 -66
- package/src/DatePickers/DatePicker.tsx +0 -299
- package/src/DatePickers/DatePicker.types.d.ts +0 -14
- package/src/DatePickers/TimeZonePicker.tsx +0 -59
- package/src/DatePickers/datePickerTheme.tsx +0 -377
- package/src/DatePickers/index.ts +0 -15
- package/src/DatePickers/useDateFieldsTranslations.ts +0 -94
- package/src/DatePickers/useOdysseyDateFields.ts +0 -303
- package/src/Dialog.tsx +0 -178
- package/src/Drawer.tsx +0 -255
- package/src/EmptyState.tsx +0 -79
- package/src/ErrorMessageList.tsx +0 -56
- package/src/Field.tsx +0 -189
- package/src/FieldComponentProps.ts +0 -66
- package/src/FieldError.tsx +0 -59
- package/src/FieldHint.tsx +0 -72
- package/src/FieldLabel.tsx +0 -67
- package/src/Fieldset.tsx +0 -116
- package/src/FieldsetContext.tsx +0 -23
- package/src/FileUploader/FileUploadIllustration.tsx +0 -66
- package/src/FileUploader/FileUploadPreview.tsx +0 -151
- package/src/FileUploader/FileUploader.tsx +0 -311
- package/src/FileUploader/index.ts +0 -13
- package/src/Form.tsx +0 -185
- package/src/FormCheckedProps.ts +0 -59
- package/src/HintLink.tsx +0 -28
- package/src/HtmlProps.ts +0 -112
- package/src/IconWithTooltip.tsx +0 -90
- package/src/Link.tsx +0 -115
- package/src/MuiPropsChild.tsx +0 -42
- package/src/MuiPropsContext.ts +0 -18
- package/src/NativeSelect.tsx +0 -249
- package/src/NullElement.tsx +0 -13
- package/src/OdysseyCacheProvider.test.tsx +0 -39
- package/src/OdysseyCacheProvider.tsx +0 -86
- package/src/OdysseyDesignTokensContext.tsx +0 -23
- package/src/OdysseyProvider.tsx +0 -92
- package/src/OdysseyThemeProvider.test.tsx +0 -211
- package/src/OdysseyThemeProvider.tsx +0 -109
- package/src/OdysseyTranslationProvider.test.tsx +0 -95
- package/src/OdysseyTranslationProvider.tsx +0 -77
- package/src/OdysseyTranslationProvider.types.ts +0 -47
- package/src/Pagination/Pagination.test.tsx +0 -327
- package/src/Pagination/Pagination.tsx +0 -417
- package/src/Pagination/constants.ts +0 -13
- package/src/Pagination/index.ts +0 -15
- package/src/Pagination/usePagination.ts +0 -45
- package/src/PasswordField.tsx +0 -253
- package/src/Radio.tsx +0 -199
- package/src/RadioGroup.tsx +0 -164
- package/src/ScreenReaderText.tsx +0 -53
- package/src/SearchField.tsx +0 -240
- package/src/Select.tsx +0 -576
- package/src/Stack.tsx +0 -56
- package/src/Status.tsx +0 -67
- package/src/Surface.tsx +0 -61
- package/src/SvgIcon.ts +0 -22
- package/src/Switch.tsx +0 -425
- package/src/Tabs.tsx +0 -259
- package/src/Tag.tsx +0 -317
- package/src/TagList.tsx +0 -55
- package/src/TagListContext.tsx +0 -23
- package/src/TextField.tsx +0 -298
- package/src/Toast.tsx +0 -151
- package/src/ToastStack.tsx +0 -43
- package/src/Tooltip.tsx +0 -61
- package/src/Typography.test.tsx +0 -26
- package/src/Typography.tsx +0 -474
- package/src/createContrastColors.ts +0 -112
- package/src/createUniqueAlphabeticalId.test.ts +0 -22
- package/src/createUniqueAlphabeticalId.ts +0 -17
- package/src/createUniqueId.test.ts +0 -22
- package/src/createUniqueId.ts +0 -17
- package/src/getTypedObjectKeys.ts +0 -15
- package/src/hexToRgb.ts +0 -40
- package/src/i18n.ts +0 -110
- package/src/icons.generated/Add.tsx +0 -44
- package/src/icons.generated/AddCircle.tsx +0 -46
- package/src/icons.generated/Apps.tsx +0 -44
- package/src/icons.generated/ArrowBottom.tsx +0 -46
- package/src/icons.generated/ArrowDown.tsx +0 -46
- package/src/icons.generated/ArrowLeft.tsx +0 -46
- package/src/icons.generated/ArrowLowerLeft.tsx +0 -46
- package/src/icons.generated/ArrowLowerRight.tsx +0 -46
- package/src/icons.generated/ArrowRight.tsx +0 -46
- package/src/icons.generated/ArrowTop.tsx +0 -46
- package/src/icons.generated/ArrowUnsorted.tsx +0 -46
- package/src/icons.generated/ArrowUp.tsx +0 -46
- package/src/icons.generated/ArrowUpperLeft.tsx +0 -46
- package/src/icons.generated/ArrowUpperRight.tsx +0 -46
- package/src/icons.generated/Bug.tsx +0 -44
- package/src/icons.generated/Calendar.tsx +0 -46
- package/src/icons.generated/Call.tsx +0 -44
- package/src/icons.generated/Chat.tsx +0 -44
- package/src/icons.generated/Check.tsx +0 -44
- package/src/icons.generated/CheckCircleFilled.tsx +0 -47
- package/src/icons.generated/ChevronDown.tsx +0 -46
- package/src/icons.generated/ChevronLeft.tsx +0 -46
- package/src/icons.generated/ChevronRight.tsx +0 -46
- package/src/icons.generated/ChevronUp.tsx +0 -46
- package/src/icons.generated/Clock.tsx +0 -44
- package/src/icons.generated/Close.tsx +0 -44
- package/src/icons.generated/CloseCircleFilled.tsx +0 -47
- package/src/icons.generated/CollapseLeft.tsx +0 -46
- package/src/icons.generated/CollapseRight.tsx +0 -46
- package/src/icons.generated/Copy.tsx +0 -44
- package/src/icons.generated/Custom.tsx +0 -50
- package/src/icons.generated/DangerDiamond.tsx +0 -46
- package/src/icons.generated/DangerDiamondFilled.tsx +0 -47
- package/src/icons.generated/Delete.tsx +0 -44
- package/src/icons.generated/Deny.tsx +0 -44
- package/src/icons.generated/Devices.tsx +0 -46
- package/src/icons.generated/Directory.tsx +0 -46
- package/src/icons.generated/Documentation.tsx +0 -46
- package/src/icons.generated/Download.tsx +0 -46
- package/src/icons.generated/DragIndicator.tsx +0 -46
- package/src/icons.generated/Duo.tsx +0 -62
- package/src/icons.generated/Edit.tsx +0 -44
- package/src/icons.generated/Email.tsx +0 -49
- package/src/icons.generated/ExpandLeft.tsx +0 -46
- package/src/icons.generated/ExpandRight.tsx +0 -46
- package/src/icons.generated/ExternalLink.tsx +0 -44
- package/src/icons.generated/Fido2.tsx +0 -72
- package/src/icons.generated/Filter.tsx +0 -44
- package/src/icons.generated/Folder.tsx +0 -44
- package/src/icons.generated/Globe.tsx +0 -44
- package/src/icons.generated/GoogleAuth.tsx +0 -70
- package/src/icons.generated/Grid.tsx +0 -47
- package/src/icons.generated/Group.tsx +0 -44
- package/src/icons.generated/Hide.tsx +0 -44
- package/src/icons.generated/Home.tsx +0 -44
- package/src/icons.generated/Idp.tsx +0 -54
- package/src/icons.generated/InformationCircle.tsx +0 -47
- package/src/icons.generated/InformationCircleFilled.tsx +0 -47
- package/src/icons.generated/Link.tsx +0 -44
- package/src/icons.generated/List.tsx +0 -44
- package/src/icons.generated/Lock.tsx +0 -44
- package/src/icons.generated/More.tsx +0 -44
- package/src/icons.generated/Notification.tsx +0 -46
- package/src/icons.generated/OktaVerify.tsx +0 -46
- package/src/icons.generated/OnPremMfa.tsx +0 -52
- package/src/icons.generated/OneTimePassword.tsx +0 -65
- package/src/icons.generated/Password.tsx +0 -80
- package/src/icons.generated/Pause.tsx +0 -44
- package/src/icons.generated/QuestionCircle.tsx +0 -46
- package/src/icons.generated/QuestionCircleFilled.tsx +0 -47
- package/src/icons.generated/Refresh.tsx +0 -46
- package/src/icons.generated/Reset.tsx +0 -44
- package/src/icons.generated/Resume.tsx +0 -44
- package/src/icons.generated/Search.tsx +0 -44
- package/src/icons.generated/SecurityQuestion.tsx +0 -51
- package/src/icons.generated/Server.tsx +0 -44
- package/src/icons.generated/Settings.tsx +0 -46
- package/src/icons.generated/Show.tsx +0 -44
- package/src/icons.generated/SmartCard.tsx +0 -65
- package/src/icons.generated/Sms.tsx +0 -55
- package/src/icons.generated/Subtract.tsx +0 -46
- package/src/icons.generated/SymantecVip.tsx +0 -52
- package/src/icons.generated/Sync.tsx +0 -44
- package/src/icons.generated/ThumbsDown.tsx +0 -46
- package/src/icons.generated/ThumbsUp.tsx +0 -46
- package/src/icons.generated/Unlock.tsx +0 -44
- package/src/icons.generated/Upload.tsx +0 -44
- package/src/icons.generated/User.tsx +0 -44
- package/src/icons.generated/Video.tsx +0 -44
- package/src/icons.generated/VoiceCall.tsx +0 -62
- package/src/icons.generated/Warning.tsx +0 -46
- package/src/icons.generated/WarningFilled.tsx +0 -46
- package/src/icons.generated/Yubikey.tsx +0 -44
- package/src/icons.generated/index.ts +0 -107
- package/src/index.ts +0 -118
- package/src/inputUtils.ts +0 -80
- package/src/labs/AppTile.tsx +0 -421
- package/src/labs/DataFilters.tsx +0 -871
- package/src/labs/DataTable.tsx +0 -877
- package/src/labs/DataTablePagination.tsx +0 -88
- package/src/labs/DataView/BulkActionsMenu.tsx +0 -98
- package/src/labs/DataView/CardLayoutContent.tsx +0 -272
- package/src/labs/DataView/DataCard.tsx +0 -357
- package/src/labs/DataView/DataTable.tsx +0 -128
- package/src/labs/DataView/DataView.test.tsx +0 -1168
- package/src/labs/DataView/DataView.tsx +0 -504
- package/src/labs/DataView/DetailPanel.tsx +0 -31
- package/src/labs/DataView/LayoutSwitcher.tsx +0 -72
- package/src/labs/DataView/RowActions.tsx +0 -125
- package/src/labs/DataView/TableLayoutContent.tsx +0 -500
- package/src/labs/DataView/TableSettings.tsx +0 -144
- package/src/labs/DataView/componentTypes.ts +0 -129
- package/src/labs/DataView/constants.tsx +0 -28
- package/src/labs/DataView/dataTypes.ts +0 -83
- package/src/labs/DataView/fetchData.ts +0 -49
- package/src/labs/DataView/index.ts +0 -19
- package/src/labs/DataView/tableConstants.tsx +0 -137
- package/src/labs/DataView/testSupportData.tsx +0 -301
- package/src/labs/DataView/useFilterConversion.ts +0 -88
- package/src/labs/DatePickers/DateTimeField.tsx +0 -267
- package/src/labs/DatePickers/DateTimePicker.test.tsx +0 -70
- package/src/labs/DatePickers/DateTimePicker.tsx +0 -303
- package/src/labs/DatePickers/dateTimePickerTheme.ts +0 -216
- package/src/labs/DatePickers/index.ts +0 -13
- package/src/labs/GroupPicker.tsx +0 -261
- package/src/labs/OdysseyPickers/ComposablePicker.test.tsx +0 -32
- package/src/labs/OdysseyPickers/ComposablePicker.tsx +0 -188
- package/src/labs/OdysseyPickers/Picker.tsx +0 -381
- package/src/labs/OdysseyPickers/PickerVirtualizationListBox.tsx +0 -192
- package/src/labs/OdysseyPickers/PickerWithOptionAdornment.tsx +0 -429
- package/src/labs/OdysseyPickers/index.ts +0 -15
- package/src/labs/PageTemplate/Layout.tsx +0 -85
- package/src/labs/PageTemplate/PageTemplate.tsx +0 -234
- package/src/labs/PageTemplate/index.ts +0 -14
- package/src/labs/PaginatedTable.tsx +0 -290
- package/src/labs/README.md +0 -46
- package/src/labs/StaticTable.tsx +0 -131
- package/src/labs/UserProfile.tsx +0 -104
- package/src/labs/UserProfileMenuButton.tsx +0 -86
- package/src/labs/index.ts +0 -47
- package/src/labs/materialReactTableTypes.tsx +0 -19
- package/src/properties/odyssey-react-mui.properties +0 -140
- package/src/properties/translations/odyssey-react-mui_cs.properties +0 -140
- package/src/properties/translations/odyssey-react-mui_da.properties +0 -140
- package/src/properties/translations/odyssey-react-mui_de.properties +0 -140
- package/src/properties/translations/odyssey-react-mui_el.properties +0 -140
- package/src/properties/translations/odyssey-react-mui_es.properties +0 -140
- package/src/properties/translations/odyssey-react-mui_fi.properties +0 -140
- package/src/properties/translations/odyssey-react-mui_fr.properties +0 -140
- package/src/properties/translations/odyssey-react-mui_ht.properties +0 -140
- package/src/properties/translations/odyssey-react-mui_hu.properties +0 -140
- package/src/properties/translations/odyssey-react-mui_id.properties +0 -140
- package/src/properties/translations/odyssey-react-mui_it.properties +0 -140
- package/src/properties/translations/odyssey-react-mui_ja.properties +0 -140
- package/src/properties/translations/odyssey-react-mui_ko.properties +0 -140
- package/src/properties/translations/odyssey-react-mui_ms.properties +0 -140
- package/src/properties/translations/odyssey-react-mui_nb.properties +0 -140
- package/src/properties/translations/odyssey-react-mui_nl_NL.properties +0 -140
- package/src/properties/translations/odyssey-react-mui_ok_PL.properties +0 -126
- package/src/properties/translations/odyssey-react-mui_ok_SK.properties +0 -126
- package/src/properties/translations/odyssey-react-mui_pl.properties +0 -140
- package/src/properties/translations/odyssey-react-mui_pt_BR.properties +0 -140
- package/src/properties/translations/odyssey-react-mui_ro.properties +0 -140
- package/src/properties/translations/odyssey-react-mui_ru.properties +0 -140
- package/src/properties/translations/odyssey-react-mui_sv.properties +0 -140
- package/src/properties/translations/odyssey-react-mui_th.properties +0 -140
- package/src/properties/translations/odyssey-react-mui_tr.properties +0 -140
- package/src/properties/translations/odyssey-react-mui_uk.properties +0 -140
- package/src/properties/translations/odyssey-react-mui_vi.properties +0 -140
- package/src/properties/translations/odyssey-react-mui_zh_CN.properties +0 -140
- package/src/properties/translations/odyssey-react-mui_zh_TW.properties +0 -140
- package/src/properties/ts/odyssey-react-mui.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_cs.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_da.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_de.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_el.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_es.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_fi.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_fr.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_ht.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_hu.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_id.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_it.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_ja.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_ko.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_ms.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_nb.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_nl_NL.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_ok_PL.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_ok_SK.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_pl.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_pt_BR.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_ro.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_ru.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_sv.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_th.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_tr.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_uk.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_vi.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_zh_CN.ts +0 -1
- package/src/properties/ts/odyssey-react-mui_zh_TW.ts +0 -1
- package/src/remUtils.ts +0 -27
- package/src/shadow-dom/index.ts +0 -13
- package/src/shadow-dom/shadow-dom.test.ts +0 -24
- package/src/shadow-dom/shadow-dom.ts +0 -54
- package/src/test-selectors/getByQuerySelector.ts +0 -176
- package/src/test-selectors/getComputedAccessibleErrorMessageText.ts +0 -52
- package/src/test-selectors/getComputedAccessibleText.ts +0 -36
- package/src/test-selectors/index.ts +0 -15
- package/src/test-selectors/interpolateString.ts +0 -41
- package/src/test-selectors/linkedHtmlSelectors.ts +0 -73
- package/src/test-selectors/queryOdysseySelector.ts +0 -36
- package/src/test-selectors/querySelector.ts +0 -249
- package/src/test-selectors/sanityChecks.ts +0 -53
- package/src/test-selectors/testSelector.ts +0 -143
- package/src/theme/components.tsx +0 -3275
- package/src/theme/components.types.ts +0 -111
- package/src/theme/createOdysseyMuiTheme.ts +0 -54
- package/src/theme/index.ts +0 -13
- package/src/theme/mixins.ts +0 -29
- package/src/theme/mixins.types.ts +0 -31
- package/src/theme/palette.ts +0 -112
- package/src/theme/palette.types.ts +0 -24
- package/src/theme/shape.ts +0 -31
- package/src/theme/spacing.ts +0 -34
- package/src/theme/theme.ts +0 -13
- package/src/theme/typography.ts +0 -137
- package/src/theme/typography.types.ts +0 -41
- package/src/theme/useContrastMode.test.tsx +0 -504
- package/src/ui-shell/AppSwitcher/AppSwitcher.tsx +0 -94
- package/src/ui-shell/AppSwitcher/AppSwitcherApp.tsx +0 -146
- package/src/ui-shell/AppSwitcher/OktaAura.tsx +0 -50
- package/src/ui-shell/AppSwitcher/index.ts +0 -13
- package/src/ui-shell/SideNav/CollapseIcon.tsx +0 -34
- package/src/ui-shell/SideNav/HandleIcon.tsx +0 -35
- package/src/ui-shell/SideNav/NavAccordion.tsx +0 -243
- package/src/ui-shell/SideNav/OktaLogo.tsx +0 -34
- package/src/ui-shell/SideNav/SideNav.test.tsx +0 -326
- package/src/ui-shell/SideNav/SideNav.tsx +0 -810
- package/src/ui-shell/SideNav/SideNavFooterContent.tsx +0 -85
- package/src/ui-shell/SideNav/SideNavHeader.tsx +0 -134
- package/src/ui-shell/SideNav/SideNavItemContent.tsx +0 -402
- package/src/ui-shell/SideNav/SideNavItemContentContext.tsx +0 -29
- package/src/ui-shell/SideNav/SideNavItemLinkContent.tsx +0 -90
- package/src/ui-shell/SideNav/SideNavLogo.tsx +0 -65
- package/src/ui-shell/SideNav/SideNavToggleButton.tsx +0 -272
- package/src/ui-shell/SideNav/SortableList/SortableItem.tsx +0 -237
- package/src/ui-shell/SideNav/SortableList/SortableList.tsx +0 -132
- package/src/ui-shell/SideNav/SortableList/SortableOverlay.tsx +0 -34
- package/src/ui-shell/SideNav/index.ts +0 -16
- package/src/ui-shell/SideNav/types.ts +0 -224
- package/src/ui-shell/TopNav/TopNav.tsx +0 -109
- package/src/ui-shell/TopNav/TopNavLinksList.tsx +0 -68
- package/src/ui-shell/TopNav/TopNavListItem.tsx +0 -209
- package/src/ui-shell/TopNav/index.ts +0 -13
- package/src/ui-shell/UiShell.test.tsx +0 -366
- package/src/ui-shell/UiShell.tsx +0 -153
- package/src/ui-shell/UiShellContent.tsx +0 -350
- package/src/ui-shell/UiShellProvider.tsx +0 -103
- package/src/ui-shell/bufferLatest.test.ts +0 -79
- package/src/ui-shell/bufferLatest.ts +0 -64
- package/src/ui-shell/createMessageBus.test.ts +0 -115
- package/src/ui-shell/createMessageBus.ts +0 -53
- package/src/ui-shell/createStore.test.ts +0 -103
- package/src/ui-shell/createStore.ts +0 -37
- package/src/ui-shell/index.ts +0 -21
- package/src/ui-shell/renderUiShell.test.tsx +0 -203
- package/src/ui-shell/renderUiShell.tsx +0 -158
- package/src/ui-shell/useHasUiShell.ts +0 -25
- package/src/ui-shell/useScrollState.ts +0 -59
- package/src/useAutocomplete.tsx +0 -184
- package/src/useContrastMode.tsx +0 -143
- package/src/useNormalizedKey.ts +0 -17
- package/src/useUniqueAlphabeticalId.ts +0 -21
- package/src/useUniqueId.ts +0 -21
- package/src/web-component/createReactRootElements.test.ts +0 -40
- package/src/web-component/createReactRootElements.ts +0 -39
- package/src/web-component/index.ts +0 -13
- package/src/web-component/renderReactInWebComponent.test.tsx +0 -128
- package/src/web-component/renderReactInWebComponent.ts +0 -135
- package/tsconfig.json +0 -16
- package/tsconfig.production.json +0 -13
- package/vitest.config.ts +0 -36
- package/vitest.setup.ts +0 -32
package/src/Typography.tsx
DELETED
|
@@ -1,474 +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 {
|
|
14
|
-
ElementType,
|
|
15
|
-
ReactNode,
|
|
16
|
-
memo,
|
|
17
|
-
useMemo,
|
|
18
|
-
useRef,
|
|
19
|
-
useImperativeHandle,
|
|
20
|
-
} from "react";
|
|
21
|
-
import {
|
|
22
|
-
Typography as MuiTypography,
|
|
23
|
-
TypographyProps as MuiTypographyProps,
|
|
24
|
-
} from "@mui/material";
|
|
25
|
-
|
|
26
|
-
import { HtmlProps } from "./HtmlProps.js";
|
|
27
|
-
import { FocusHandle } from "./inputUtils.js";
|
|
28
|
-
|
|
29
|
-
export type TypographyVariantValue =
|
|
30
|
-
| "h1"
|
|
31
|
-
| "h2"
|
|
32
|
-
| "h3"
|
|
33
|
-
| "h4"
|
|
34
|
-
| "h5"
|
|
35
|
-
| "h6"
|
|
36
|
-
| "body"
|
|
37
|
-
| "legend"
|
|
38
|
-
| "overline"
|
|
39
|
-
| "subordinate"
|
|
40
|
-
| "support";
|
|
41
|
-
|
|
42
|
-
export const typographyVariantMapping: Record<
|
|
43
|
-
TypographyVariantValue,
|
|
44
|
-
MuiTypographyProps["variant"]
|
|
45
|
-
> = {
|
|
46
|
-
h1: "h1",
|
|
47
|
-
h2: "h2",
|
|
48
|
-
h3: "h3",
|
|
49
|
-
h4: "h4",
|
|
50
|
-
h5: "h5",
|
|
51
|
-
h6: "h6",
|
|
52
|
-
body: "body1",
|
|
53
|
-
legend: "legend",
|
|
54
|
-
overline: "overline",
|
|
55
|
-
subordinate: "subtitle1",
|
|
56
|
-
support: "subtitle2",
|
|
57
|
-
} as const;
|
|
58
|
-
|
|
59
|
-
export const typographyColorValues = [
|
|
60
|
-
"primary",
|
|
61
|
-
"textPrimary",
|
|
62
|
-
"secondary",
|
|
63
|
-
"textSecondary",
|
|
64
|
-
"error",
|
|
65
|
-
] as const;
|
|
66
|
-
|
|
67
|
-
export type TypographyProps = {
|
|
68
|
-
/**
|
|
69
|
-
* The text content of the component.
|
|
70
|
-
*/
|
|
71
|
-
children: ReactNode;
|
|
72
|
-
/**
|
|
73
|
-
* The color of the text.
|
|
74
|
-
*/
|
|
75
|
-
color?: (typeof typographyColorValues)[number];
|
|
76
|
-
/**
|
|
77
|
-
* The HTML element the component should render, if different from the default.
|
|
78
|
-
*/
|
|
79
|
-
component?: ElementType;
|
|
80
|
-
/**
|
|
81
|
-
* The ref forwarded to the Typography
|
|
82
|
-
*/
|
|
83
|
-
typographyRef?: React.RefObject<FocusHandle>;
|
|
84
|
-
/**
|
|
85
|
-
* The variant of Typography to render.
|
|
86
|
-
*/
|
|
87
|
-
variant?: keyof typeof typographyVariantMapping;
|
|
88
|
-
} & Pick<
|
|
89
|
-
HtmlProps,
|
|
90
|
-
| "ariaCurrent"
|
|
91
|
-
| "ariaDescribedBy"
|
|
92
|
-
| "ariaLabel"
|
|
93
|
-
| "ariaLabelledBy"
|
|
94
|
-
| "testId"
|
|
95
|
-
| "translate"
|
|
96
|
-
>;
|
|
97
|
-
|
|
98
|
-
const Typography = ({
|
|
99
|
-
ariaCurrent,
|
|
100
|
-
ariaDescribedBy,
|
|
101
|
-
ariaLabel,
|
|
102
|
-
ariaLabelledBy,
|
|
103
|
-
children,
|
|
104
|
-
color,
|
|
105
|
-
component: componentProp,
|
|
106
|
-
testId,
|
|
107
|
-
translate,
|
|
108
|
-
typographyRef,
|
|
109
|
-
variant = "body",
|
|
110
|
-
}: TypographyProps) => {
|
|
111
|
-
const component = useMemo(() => {
|
|
112
|
-
if (!componentProp) {
|
|
113
|
-
if (
|
|
114
|
-
variant === "body" ||
|
|
115
|
-
variant === "subordinate" ||
|
|
116
|
-
variant === "support" ||
|
|
117
|
-
variant === "overline"
|
|
118
|
-
) {
|
|
119
|
-
return "p";
|
|
120
|
-
} else {
|
|
121
|
-
return variant;
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
return componentProp;
|
|
125
|
-
}, [componentProp, variant]);
|
|
126
|
-
|
|
127
|
-
const localTypographyRef = useRef<HTMLElement>(null);
|
|
128
|
-
useImperativeHandle(typographyRef, () => {
|
|
129
|
-
return {
|
|
130
|
-
focus: () => {
|
|
131
|
-
localTypographyRef.current?.focus();
|
|
132
|
-
},
|
|
133
|
-
};
|
|
134
|
-
}, []);
|
|
135
|
-
|
|
136
|
-
return (
|
|
137
|
-
<MuiTypography
|
|
138
|
-
aria-current={ariaCurrent}
|
|
139
|
-
aria-describedby={ariaDescribedBy}
|
|
140
|
-
aria-label={ariaLabel}
|
|
141
|
-
aria-labelledby={ariaLabelledBy}
|
|
142
|
-
children={children}
|
|
143
|
-
color={color}
|
|
144
|
-
component={component}
|
|
145
|
-
data-se={testId}
|
|
146
|
-
ref={localTypographyRef}
|
|
147
|
-
tabIndex={-1}
|
|
148
|
-
translate={translate}
|
|
149
|
-
variant={typographyVariantMapping[variant]}
|
|
150
|
-
/>
|
|
151
|
-
);
|
|
152
|
-
};
|
|
153
|
-
|
|
154
|
-
const MemoizedTypography = memo(Typography);
|
|
155
|
-
MemoizedTypography.displayName = "Typography";
|
|
156
|
-
|
|
157
|
-
const Heading1 = ({
|
|
158
|
-
ariaCurrent,
|
|
159
|
-
ariaDescribedBy,
|
|
160
|
-
ariaLabel,
|
|
161
|
-
ariaLabelledBy,
|
|
162
|
-
children,
|
|
163
|
-
color,
|
|
164
|
-
component,
|
|
165
|
-
testId,
|
|
166
|
-
translate,
|
|
167
|
-
}: TypographyProps) => (
|
|
168
|
-
<Typography
|
|
169
|
-
ariaCurrent={ariaCurrent}
|
|
170
|
-
ariaDescribedBy={ariaDescribedBy}
|
|
171
|
-
ariaLabel={ariaLabel}
|
|
172
|
-
ariaLabelledBy={ariaLabelledBy}
|
|
173
|
-
children={children}
|
|
174
|
-
color={color}
|
|
175
|
-
component={component}
|
|
176
|
-
testId={testId}
|
|
177
|
-
translate={translate}
|
|
178
|
-
variant="h1"
|
|
179
|
-
/>
|
|
180
|
-
);
|
|
181
|
-
|
|
182
|
-
const MemoizedHeading1 = memo(Heading1);
|
|
183
|
-
MemoizedHeading1.displayName = "Heading1";
|
|
184
|
-
|
|
185
|
-
const Heading2 = ({
|
|
186
|
-
ariaCurrent,
|
|
187
|
-
ariaDescribedBy,
|
|
188
|
-
ariaLabel,
|
|
189
|
-
ariaLabelledBy,
|
|
190
|
-
children,
|
|
191
|
-
color,
|
|
192
|
-
component,
|
|
193
|
-
testId,
|
|
194
|
-
translate,
|
|
195
|
-
}: TypographyProps) => (
|
|
196
|
-
<Typography
|
|
197
|
-
ariaCurrent={ariaCurrent}
|
|
198
|
-
ariaDescribedBy={ariaDescribedBy}
|
|
199
|
-
ariaLabel={ariaLabel}
|
|
200
|
-
ariaLabelledBy={ariaLabelledBy}
|
|
201
|
-
children={children}
|
|
202
|
-
color={color}
|
|
203
|
-
component={component}
|
|
204
|
-
testId={testId}
|
|
205
|
-
translate={translate}
|
|
206
|
-
variant="h2"
|
|
207
|
-
/>
|
|
208
|
-
);
|
|
209
|
-
|
|
210
|
-
const MemoizedHeading2 = memo(Heading2);
|
|
211
|
-
MemoizedHeading2.displayName = "Heading2";
|
|
212
|
-
|
|
213
|
-
const Heading3 = ({
|
|
214
|
-
ariaCurrent,
|
|
215
|
-
ariaDescribedBy,
|
|
216
|
-
ariaLabel,
|
|
217
|
-
ariaLabelledBy,
|
|
218
|
-
children,
|
|
219
|
-
color,
|
|
220
|
-
component,
|
|
221
|
-
testId,
|
|
222
|
-
translate,
|
|
223
|
-
}: TypographyProps) => (
|
|
224
|
-
<Typography
|
|
225
|
-
ariaCurrent={ariaCurrent}
|
|
226
|
-
ariaDescribedBy={ariaDescribedBy}
|
|
227
|
-
ariaLabel={ariaLabel}
|
|
228
|
-
ariaLabelledBy={ariaLabelledBy}
|
|
229
|
-
children={children}
|
|
230
|
-
color={color}
|
|
231
|
-
component={component}
|
|
232
|
-
testId={testId}
|
|
233
|
-
translate={translate}
|
|
234
|
-
variant="h3"
|
|
235
|
-
/>
|
|
236
|
-
);
|
|
237
|
-
|
|
238
|
-
const MemoizedHeading3 = memo(Heading3);
|
|
239
|
-
MemoizedHeading3.displayName = "Heading3";
|
|
240
|
-
|
|
241
|
-
const Heading4 = ({
|
|
242
|
-
ariaCurrent,
|
|
243
|
-
ariaDescribedBy,
|
|
244
|
-
ariaLabel,
|
|
245
|
-
ariaLabelledBy,
|
|
246
|
-
children,
|
|
247
|
-
color,
|
|
248
|
-
component,
|
|
249
|
-
testId,
|
|
250
|
-
translate,
|
|
251
|
-
}: TypographyProps) => (
|
|
252
|
-
<Typography
|
|
253
|
-
ariaCurrent={ariaCurrent}
|
|
254
|
-
ariaDescribedBy={ariaDescribedBy}
|
|
255
|
-
ariaLabel={ariaLabel}
|
|
256
|
-
ariaLabelledBy={ariaLabelledBy}
|
|
257
|
-
children={children}
|
|
258
|
-
color={color}
|
|
259
|
-
component={component}
|
|
260
|
-
testId={testId}
|
|
261
|
-
translate={translate}
|
|
262
|
-
variant="h4"
|
|
263
|
-
/>
|
|
264
|
-
);
|
|
265
|
-
|
|
266
|
-
const MemoizedHeading4 = memo(Heading4);
|
|
267
|
-
MemoizedHeading4.displayName = "Heading4";
|
|
268
|
-
|
|
269
|
-
const Heading5 = ({
|
|
270
|
-
ariaCurrent,
|
|
271
|
-
ariaDescribedBy,
|
|
272
|
-
ariaLabel,
|
|
273
|
-
ariaLabelledBy,
|
|
274
|
-
children,
|
|
275
|
-
color,
|
|
276
|
-
component,
|
|
277
|
-
testId,
|
|
278
|
-
translate,
|
|
279
|
-
}: TypographyProps) => (
|
|
280
|
-
<Typography
|
|
281
|
-
ariaCurrent={ariaCurrent}
|
|
282
|
-
ariaDescribedBy={ariaDescribedBy}
|
|
283
|
-
ariaLabel={ariaLabel}
|
|
284
|
-
ariaLabelledBy={ariaLabelledBy}
|
|
285
|
-
children={children}
|
|
286
|
-
color={color}
|
|
287
|
-
component={component}
|
|
288
|
-
testId={testId}
|
|
289
|
-
translate={translate}
|
|
290
|
-
variant="h5"
|
|
291
|
-
/>
|
|
292
|
-
);
|
|
293
|
-
|
|
294
|
-
const MemoizedHeading5 = memo(Heading5);
|
|
295
|
-
MemoizedHeading5.displayName = "Heading5";
|
|
296
|
-
|
|
297
|
-
const Heading6 = ({
|
|
298
|
-
ariaCurrent,
|
|
299
|
-
ariaDescribedBy,
|
|
300
|
-
ariaLabel,
|
|
301
|
-
ariaLabelledBy,
|
|
302
|
-
children,
|
|
303
|
-
color,
|
|
304
|
-
component,
|
|
305
|
-
testId,
|
|
306
|
-
translate,
|
|
307
|
-
}: TypographyProps) => (
|
|
308
|
-
<Typography
|
|
309
|
-
ariaCurrent={ariaCurrent}
|
|
310
|
-
ariaDescribedBy={ariaDescribedBy}
|
|
311
|
-
ariaLabel={ariaLabel}
|
|
312
|
-
ariaLabelledBy={ariaLabelledBy}
|
|
313
|
-
children={children}
|
|
314
|
-
color={color}
|
|
315
|
-
component={component}
|
|
316
|
-
testId={testId}
|
|
317
|
-
translate={translate}
|
|
318
|
-
variant="h6"
|
|
319
|
-
/>
|
|
320
|
-
);
|
|
321
|
-
|
|
322
|
-
const MemoizedHeading6 = memo(Heading6);
|
|
323
|
-
MemoizedHeading6.displayName = "Heading6";
|
|
324
|
-
|
|
325
|
-
const Paragraph = ({
|
|
326
|
-
ariaCurrent,
|
|
327
|
-
ariaDescribedBy,
|
|
328
|
-
ariaLabel,
|
|
329
|
-
ariaLabelledBy,
|
|
330
|
-
children,
|
|
331
|
-
color,
|
|
332
|
-
component,
|
|
333
|
-
testId,
|
|
334
|
-
translate,
|
|
335
|
-
}: TypographyProps) => (
|
|
336
|
-
<Typography
|
|
337
|
-
ariaCurrent={ariaCurrent}
|
|
338
|
-
ariaDescribedBy={ariaDescribedBy}
|
|
339
|
-
ariaLabel={ariaLabel}
|
|
340
|
-
ariaLabelledBy={ariaLabelledBy}
|
|
341
|
-
children={children}
|
|
342
|
-
color={color}
|
|
343
|
-
component={component}
|
|
344
|
-
testId={testId}
|
|
345
|
-
translate={translate}
|
|
346
|
-
variant="body"
|
|
347
|
-
/>
|
|
348
|
-
);
|
|
349
|
-
|
|
350
|
-
const MemoizedParagraph = memo(Paragraph);
|
|
351
|
-
MemoizedParagraph.displayName = "Paragraph";
|
|
352
|
-
|
|
353
|
-
const Subordinate = ({
|
|
354
|
-
ariaCurrent,
|
|
355
|
-
ariaDescribedBy,
|
|
356
|
-
ariaLabel,
|
|
357
|
-
ariaLabelledBy,
|
|
358
|
-
children,
|
|
359
|
-
color,
|
|
360
|
-
component,
|
|
361
|
-
testId,
|
|
362
|
-
translate,
|
|
363
|
-
}: TypographyProps) => (
|
|
364
|
-
<Typography
|
|
365
|
-
ariaCurrent={ariaCurrent}
|
|
366
|
-
ariaDescribedBy={ariaDescribedBy}
|
|
367
|
-
ariaLabel={ariaLabel}
|
|
368
|
-
ariaLabelledBy={ariaLabelledBy}
|
|
369
|
-
children={children}
|
|
370
|
-
color={color}
|
|
371
|
-
component={component}
|
|
372
|
-
testId={testId}
|
|
373
|
-
translate={translate}
|
|
374
|
-
variant="subordinate"
|
|
375
|
-
/>
|
|
376
|
-
);
|
|
377
|
-
|
|
378
|
-
const MemoizedSubordinate = memo(Subordinate);
|
|
379
|
-
MemoizedSubordinate.displayName = "Subordinate";
|
|
380
|
-
|
|
381
|
-
const Support = ({
|
|
382
|
-
ariaCurrent,
|
|
383
|
-
ariaDescribedBy,
|
|
384
|
-
ariaLabel,
|
|
385
|
-
ariaLabelledBy,
|
|
386
|
-
children,
|
|
387
|
-
color,
|
|
388
|
-
component,
|
|
389
|
-
testId,
|
|
390
|
-
translate,
|
|
391
|
-
}: TypographyProps) => (
|
|
392
|
-
<Typography
|
|
393
|
-
ariaCurrent={ariaCurrent}
|
|
394
|
-
ariaDescribedBy={ariaDescribedBy}
|
|
395
|
-
ariaLabel={ariaLabel}
|
|
396
|
-
ariaLabelledBy={ariaLabelledBy}
|
|
397
|
-
children={children}
|
|
398
|
-
color={color}
|
|
399
|
-
component={component}
|
|
400
|
-
testId={testId}
|
|
401
|
-
translate={translate}
|
|
402
|
-
variant="support"
|
|
403
|
-
/>
|
|
404
|
-
);
|
|
405
|
-
|
|
406
|
-
const MemoizedSupport = memo(Support);
|
|
407
|
-
MemoizedSupport.displayName = "Support";
|
|
408
|
-
|
|
409
|
-
const Legend = ({
|
|
410
|
-
ariaDescribedBy,
|
|
411
|
-
ariaLabel,
|
|
412
|
-
ariaLabelledBy,
|
|
413
|
-
children,
|
|
414
|
-
color,
|
|
415
|
-
component,
|
|
416
|
-
testId,
|
|
417
|
-
translate,
|
|
418
|
-
}: TypographyProps) => (
|
|
419
|
-
<Typography
|
|
420
|
-
ariaDescribedBy={ariaDescribedBy}
|
|
421
|
-
ariaLabel={ariaLabel}
|
|
422
|
-
ariaLabelledBy={ariaLabelledBy}
|
|
423
|
-
children={children}
|
|
424
|
-
color={color}
|
|
425
|
-
component={component}
|
|
426
|
-
testId={testId}
|
|
427
|
-
translate={translate}
|
|
428
|
-
variant="legend"
|
|
429
|
-
/>
|
|
430
|
-
);
|
|
431
|
-
|
|
432
|
-
const MemoizedLegend = memo(Legend);
|
|
433
|
-
MemoizedLegend.displayName = "Legend";
|
|
434
|
-
|
|
435
|
-
const Overline = ({
|
|
436
|
-
ariaDescribedBy,
|
|
437
|
-
ariaLabel,
|
|
438
|
-
ariaLabelledBy,
|
|
439
|
-
children,
|
|
440
|
-
color,
|
|
441
|
-
component,
|
|
442
|
-
testId,
|
|
443
|
-
translate,
|
|
444
|
-
}: TypographyProps) => (
|
|
445
|
-
<Typography
|
|
446
|
-
ariaDescribedBy={ariaDescribedBy}
|
|
447
|
-
ariaLabel={ariaLabel}
|
|
448
|
-
ariaLabelledBy={ariaLabelledBy}
|
|
449
|
-
children={children}
|
|
450
|
-
color={color}
|
|
451
|
-
component={component}
|
|
452
|
-
testId={testId}
|
|
453
|
-
translate={translate}
|
|
454
|
-
variant="overline"
|
|
455
|
-
/>
|
|
456
|
-
);
|
|
457
|
-
|
|
458
|
-
const MemoizedOverline = memo(Overline);
|
|
459
|
-
MemoizedOverline.displayName = "Overline";
|
|
460
|
-
|
|
461
|
-
export {
|
|
462
|
-
MemoizedTypography as Typography,
|
|
463
|
-
MemoizedHeading1 as Heading1,
|
|
464
|
-
MemoizedHeading2 as Heading2,
|
|
465
|
-
MemoizedHeading3 as Heading3,
|
|
466
|
-
MemoizedHeading4 as Heading4,
|
|
467
|
-
MemoizedHeading5 as Heading5,
|
|
468
|
-
MemoizedHeading6 as Heading6,
|
|
469
|
-
MemoizedLegend as Legend,
|
|
470
|
-
MemoizedOverline as Overline,
|
|
471
|
-
MemoizedParagraph as Paragraph,
|
|
472
|
-
MemoizedSubordinate as Subordinate,
|
|
473
|
-
MemoizedSupport as Support,
|
|
474
|
-
};
|
|
@@ -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 {
|
|
14
|
-
hexToRgb,
|
|
15
|
-
isValidHexString,
|
|
16
|
-
rgbComponentsToString,
|
|
17
|
-
} from "./hexToRgb.js";
|
|
18
|
-
import { DesignTokens } from "./OdysseyDesignTokensContext.js";
|
|
19
|
-
|
|
20
|
-
export type ContrastColors = {
|
|
21
|
-
focusRingColor: string | undefined;
|
|
22
|
-
fontColor: string | undefined;
|
|
23
|
-
itemDisabledFontColor: string | undefined;
|
|
24
|
-
itemHoverBackgroundColor: string | undefined;
|
|
25
|
-
itemSelectedBackgroundColor: string | undefined;
|
|
26
|
-
};
|
|
27
|
-
|
|
28
|
-
// 128 is a magic number. This feels like roughly where we should switch from dark to light.
|
|
29
|
-
const LUMINANCE_THRESHOLD = 128;
|
|
30
|
-
const LUMINANCE_EDGE_MIN = 108;
|
|
31
|
-
const LUMINANCE_EDGE_MAX = 142;
|
|
32
|
-
|
|
33
|
-
const BLACK_FONT_COLOR = "#000000";
|
|
34
|
-
const WHITE_FONT_COLOR = "#FFFFFF";
|
|
35
|
-
|
|
36
|
-
export const generateContrastColors = (
|
|
37
|
-
backgroundColor: string,
|
|
38
|
-
odysseyDesignTokens: DesignTokens,
|
|
39
|
-
) => {
|
|
40
|
-
// Convert hex to RGB
|
|
41
|
-
const rgbFromHex = isValidHexString(backgroundColor)
|
|
42
|
-
? hexToRgb(backgroundColor)
|
|
43
|
-
: hexToRgb(odysseyDesignTokens.HueNeutralWhite);
|
|
44
|
-
|
|
45
|
-
const { red, green, blue } = rgbFromHex;
|
|
46
|
-
|
|
47
|
-
// Calculate relative luminance
|
|
48
|
-
// @see https://contrastchecker.online/color-relative-luminance-calculator#:~:text=For%20the%20sRGB%20colorspace%2C%20the,%2B0.055)%2F1.055)%20%5E%202.4
|
|
49
|
-
// returns a number between 0(black) and 255(white)
|
|
50
|
-
const luminance = 0.2126 * red + 0.7152 * green + 0.0722 * blue;
|
|
51
|
-
|
|
52
|
-
// Luminance values between LUMINANCE_EDGE_MIN-LUMINANCE_EDGE_MAX can cause contrast ration issues
|
|
53
|
-
// Using #000000 helps in these cases
|
|
54
|
-
const luminanceValueInEdgeRange =
|
|
55
|
-
luminance > LUMINANCE_EDGE_MIN && luminance < LUMINANCE_EDGE_MAX;
|
|
56
|
-
|
|
57
|
-
// Determine if the color is light or dark.
|
|
58
|
-
const isLight = luminance > LUMINANCE_THRESHOLD;
|
|
59
|
-
|
|
60
|
-
const fontColor = luminanceValueInEdgeRange
|
|
61
|
-
? BLACK_FONT_COLOR
|
|
62
|
-
: isLight
|
|
63
|
-
? odysseyDesignTokens.TypographyColorBody
|
|
64
|
-
: WHITE_FONT_COLOR;
|
|
65
|
-
|
|
66
|
-
const calculatedFontColorInRgb = hexToRgb(fontColor);
|
|
67
|
-
const lightFontColorInRgb = hexToRgb(WHITE_FONT_COLOR);
|
|
68
|
-
const darkFontColorInRgb = hexToRgb(
|
|
69
|
-
luminanceValueInEdgeRange
|
|
70
|
-
? BLACK_FONT_COLOR
|
|
71
|
-
: odysseyDesignTokens.TypographyColorBody,
|
|
72
|
-
);
|
|
73
|
-
|
|
74
|
-
const calculatedFontRgbComponentsString = rgbComponentsToString({
|
|
75
|
-
red: calculatedFontColorInRgb?.red,
|
|
76
|
-
green: calculatedFontColorInRgb?.green,
|
|
77
|
-
blue: calculatedFontColorInRgb?.blue,
|
|
78
|
-
});
|
|
79
|
-
|
|
80
|
-
const lightFontRgbComponentsString = rgbComponentsToString({
|
|
81
|
-
red: lightFontColorInRgb?.red,
|
|
82
|
-
green: lightFontColorInRgb?.green,
|
|
83
|
-
blue: lightFontColorInRgb?.blue,
|
|
84
|
-
});
|
|
85
|
-
|
|
86
|
-
const darkFontRgbComponentsString = rgbComponentsToString({
|
|
87
|
-
red: darkFontColorInRgb?.red,
|
|
88
|
-
green: darkFontColorInRgb?.green,
|
|
89
|
-
blue: darkFontColorInRgb?.blue,
|
|
90
|
-
});
|
|
91
|
-
|
|
92
|
-
const getHighlightColor: (
|
|
93
|
-
luminanceValueInEdgeRange: boolean,
|
|
94
|
-
isLight: boolean,
|
|
95
|
-
) => string = (luminanceValueInEdgeRange, isLight) => {
|
|
96
|
-
if (luminanceValueInEdgeRange) {
|
|
97
|
-
return isLight
|
|
98
|
-
? darkFontRgbComponentsString
|
|
99
|
-
: lightFontRgbComponentsString;
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
return calculatedFontRgbComponentsString;
|
|
103
|
-
};
|
|
104
|
-
|
|
105
|
-
return {
|
|
106
|
-
fontColor,
|
|
107
|
-
focusRingColor: `rgba(${calculatedFontRgbComponentsString}, .8)`,
|
|
108
|
-
itemDisabledFontColor: `rgba(${calculatedFontRgbComponentsString}, .4)`,
|
|
109
|
-
itemHoverBackgroundColor: `rgba(${getHighlightColor(luminanceValueInEdgeRange, isLight)}, .1)`,
|
|
110
|
-
itemSelectedBackgroundColor: `rgba(${getHighlightColor(luminanceValueInEdgeRange, isLight)}, .15)`,
|
|
111
|
-
};
|
|
112
|
-
};
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Copyright (c) 2021-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 { createUniqueAlphabeticalId } from "./createUniqueAlphabeticalId.js";
|
|
14
|
-
|
|
15
|
-
describe("createUniqueAlphabeticalId", () => {
|
|
16
|
-
test("only has lowercase letters", () => {
|
|
17
|
-
const uniqueAlphabeticalId = createUniqueAlphabeticalId();
|
|
18
|
-
|
|
19
|
-
expect(uniqueAlphabeticalId.match(/[a-z]/)).not.toBeNull();
|
|
20
|
-
expect(uniqueAlphabeticalId.toLowerCase()).toBe(uniqueAlphabeticalId);
|
|
21
|
-
});
|
|
22
|
-
});
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Copyright (c) 2021-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
|
-
// This is a random number chosen to shrink down the unique ID to an arbitrary length.
|
|
14
|
-
export const uniqueIdLength = 6;
|
|
15
|
-
|
|
16
|
-
export const createUniqueAlphabeticalId = () =>
|
|
17
|
-
Math.random().toString(36).replace(/[\d.]/g, "");
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Copyright (c) 2021-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 { createUniqueId, uniqueIdLength } from "./createUniqueId.js";
|
|
14
|
-
|
|
15
|
-
describe("createUniqueId", () => {
|
|
16
|
-
test("returns a nice id string", () => {
|
|
17
|
-
const result = createUniqueId();
|
|
18
|
-
|
|
19
|
-
expect(typeof result).toBe("string");
|
|
20
|
-
expect(result).toHaveLength(uniqueIdLength);
|
|
21
|
-
});
|
|
22
|
-
});
|
package/src/createUniqueId.ts
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Copyright (c) 2021-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
|
-
// This is a random number chosen to shrink down the unique ID to an arbitrary length.
|
|
14
|
-
export const uniqueIdLength = 6;
|
|
15
|
-
|
|
16
|
-
export const createUniqueId = () =>
|
|
17
|
-
Math.random().toString(36).slice(-uniqueIdLength);
|
|
@@ -1,15 +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
|
-
export const getTypedObjectKeys: <ObjectType>(
|
|
14
|
-
object: ObjectType,
|
|
15
|
-
) => Array<keyof ObjectType> = Object.keys;
|