@okta/odyssey-react-mui 1.15.8 → 1.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +39 -0
- package/README.md +4 -0
- package/dist/Accordion.js +2 -0
- package/dist/Accordion.js.map +1 -1
- package/dist/Autocomplete.js +9 -0
- package/dist/Autocomplete.js.map +1 -1
- package/dist/Badge.js +1 -0
- package/dist/Badge.js.map +1 -1
- package/dist/Banner.js +6 -5
- package/dist/Banner.js.map +1 -1
- package/dist/Button.js +15 -11
- package/dist/Button.js.map +1 -1
- package/dist/Callout.js +45 -7
- package/dist/Callout.js.map +1 -1
- package/dist/{Tile.js → Card.js} +43 -28
- package/dist/Card.js.map +1 -0
- package/dist/DataTable/DataTable.js +68 -40
- package/dist/DataTable/DataTable.js.map +1 -1
- package/dist/DataTable/DataTableRowActions.js.map +1 -1
- package/dist/DataTable/constants.js +0 -1
- package/dist/DataTable/constants.js.map +1 -1
- package/dist/DataTable/index.js +0 -1
- package/dist/DataTable/index.js.map +1 -1
- package/dist/Dialog.js +9 -3
- package/dist/Dialog.js.map +1 -1
- package/dist/{labs/Drawer.js → Drawer.js} +5 -5
- package/dist/Drawer.js.map +1 -0
- package/dist/{DataTable/DataTableEmptyState.js → EmptyState.js} +17 -15
- package/dist/EmptyState.js.map +1 -0
- package/dist/ErrorMessageList.js +1 -1
- package/dist/ErrorMessageList.js.map +1 -1
- package/dist/FieldError.js +3 -2
- package/dist/FieldError.js.map +1 -1
- package/dist/HtmlProps.js.map +1 -1
- package/dist/MenuItem.js +1 -0
- package/dist/MenuItem.js.map +1 -1
- package/dist/OdysseyCacheProvider.js +5 -2
- package/dist/OdysseyCacheProvider.js.map +1 -1
- package/dist/OdysseyProvider.js +1 -1
- package/dist/OdysseyProvider.js.map +1 -1
- package/dist/OdysseyTranslationProvider.js +1 -6
- package/dist/OdysseyTranslationProvider.js.map +1 -1
- package/dist/{DataTable/DataTablePagination.js → Pagination/Pagination.js} +56 -59
- package/dist/Pagination/Pagination.js.map +1 -0
- package/dist/Pagination/constants.js +14 -0
- package/dist/Pagination/constants.js.map +1 -0
- package/dist/Pagination/index.js +15 -0
- package/dist/Pagination/index.js.map +1 -0
- package/dist/Pagination/usePagination.js +51 -0
- package/dist/Pagination/usePagination.js.map +1 -0
- package/dist/Radio.js +17 -5
- package/dist/Radio.js.map +1 -1
- package/dist/ScreenReaderText.js +4 -0
- package/dist/ScreenReaderText.js.map +1 -1
- package/dist/Select.js +33 -42
- package/dist/Select.js.map +1 -1
- package/dist/Status.js +5 -3
- package/dist/Status.js.map +1 -1
- package/dist/Surface.js +38 -0
- package/dist/Surface.js.map +1 -0
- package/dist/Tabs.js +22 -0
- package/dist/Tabs.js.map +1 -1
- package/dist/TextField.js +48 -0
- package/dist/TextField.js.map +1 -1
- package/dist/Toast.js +37 -34
- package/dist/Toast.js.map +1 -1
- package/dist/assertEnv.d.ts +18 -0
- package/dist/assertEnv.d.ts.map +1 -0
- package/dist/assertEnv.js +32 -0
- package/dist/icons.generated/Add.js +1 -1
- package/dist/icons.generated/Add.js.map +1 -1
- package/dist/icons.generated/AddCircle.js +1 -1
- package/dist/icons.generated/AddCircle.js.map +1 -1
- package/dist/icons.generated/Apps.js +1 -1
- package/dist/icons.generated/Apps.js.map +1 -1
- package/dist/icons.generated/ArrowBottom.js +2 -2
- package/dist/icons.generated/ArrowBottom.js.map +1 -1
- package/dist/icons.generated/ArrowDown.js +1 -1
- package/dist/icons.generated/ArrowDown.js.map +1 -1
- package/dist/icons.generated/ArrowLeft.js +1 -1
- package/dist/icons.generated/ArrowLeft.js.map +1 -1
- package/dist/icons.generated/ArrowLowerLeft.js +1 -1
- package/dist/icons.generated/ArrowLowerLeft.js.map +1 -1
- package/dist/icons.generated/ArrowLowerRight.js +1 -1
- package/dist/icons.generated/ArrowLowerRight.js.map +1 -1
- package/dist/icons.generated/ArrowRight.js +1 -1
- package/dist/icons.generated/ArrowRight.js.map +1 -1
- package/dist/icons.generated/ArrowTop.js +2 -2
- package/dist/icons.generated/ArrowTop.js.map +1 -1
- package/dist/icons.generated/ArrowUnsorted.js +1 -1
- package/dist/icons.generated/ArrowUnsorted.js.map +1 -1
- package/dist/icons.generated/ArrowUp.js +1 -1
- package/dist/icons.generated/ArrowUp.js.map +1 -1
- package/dist/icons.generated/ArrowUpperLeft.js +1 -1
- package/dist/icons.generated/ArrowUpperLeft.js.map +1 -1
- package/dist/icons.generated/ArrowUpperRight.js +1 -1
- package/dist/icons.generated/ArrowUpperRight.js.map +1 -1
- package/dist/icons.generated/Bug.js +1 -1
- package/dist/icons.generated/Bug.js.map +1 -1
- package/dist/icons.generated/Calendar.js +1 -1
- package/dist/icons.generated/Calendar.js.map +1 -1
- package/dist/icons.generated/Call.js +1 -1
- package/dist/icons.generated/Call.js.map +1 -1
- package/dist/icons.generated/Chat.js +1 -1
- package/dist/icons.generated/Chat.js.map +1 -1
- package/dist/icons.generated/Check.js +1 -1
- package/dist/icons.generated/Check.js.map +1 -1
- package/dist/icons.generated/CheckCircleFilled.js +1 -1
- package/dist/icons.generated/CheckCircleFilled.js.map +1 -1
- package/dist/icons.generated/ChevronDown.js +1 -1
- package/dist/icons.generated/ChevronDown.js.map +1 -1
- package/dist/icons.generated/ChevronLeft.js +1 -1
- package/dist/icons.generated/ChevronLeft.js.map +1 -1
- package/dist/icons.generated/ChevronRight.js +1 -1
- package/dist/icons.generated/ChevronRight.js.map +1 -1
- package/dist/icons.generated/ChevronUp.js +1 -1
- package/dist/icons.generated/ChevronUp.js.map +1 -1
- package/dist/icons.generated/Clock.js +1 -1
- package/dist/icons.generated/Clock.js.map +1 -1
- package/dist/icons.generated/Close.js +1 -1
- package/dist/icons.generated/Close.js.map +1 -1
- package/dist/icons.generated/CloseCircleFilled.js +1 -1
- package/dist/icons.generated/CloseCircleFilled.js.map +1 -1
- package/dist/icons.generated/CollapseLeft.js +1 -1
- package/dist/icons.generated/CollapseLeft.js.map +1 -1
- package/dist/icons.generated/CollapseRight.js +1 -1
- package/dist/icons.generated/CollapseRight.js.map +1 -1
- package/dist/icons.generated/Copy.js +1 -1
- package/dist/icons.generated/Copy.js.map +1 -1
- package/dist/icons.generated/Custom.js +39 -0
- package/dist/icons.generated/Custom.js.map +1 -0
- package/dist/icons.generated/DangerDiamond.js +1 -1
- package/dist/icons.generated/DangerDiamond.js.map +1 -1
- package/dist/icons.generated/DangerDiamondFilled.js +1 -1
- package/dist/icons.generated/DangerDiamondFilled.js.map +1 -1
- package/dist/icons.generated/Delete.js +1 -1
- package/dist/icons.generated/Delete.js.map +1 -1
- package/dist/icons.generated/Deny.js +1 -1
- package/dist/icons.generated/Deny.js.map +1 -1
- package/dist/icons.generated/Devices.js +1 -1
- package/dist/icons.generated/Devices.js.map +1 -1
- package/dist/icons.generated/Directory.js +1 -1
- package/dist/icons.generated/Directory.js.map +1 -1
- package/dist/icons.generated/Documentation.js +1 -1
- package/dist/icons.generated/Documentation.js.map +1 -1
- package/dist/icons.generated/Download.js +1 -1
- package/dist/icons.generated/Download.js.map +1 -1
- package/dist/icons.generated/DragIndicator.js +1 -1
- package/dist/icons.generated/DragIndicator.js.map +1 -1
- package/dist/icons.generated/Duo.js +47 -0
- package/dist/icons.generated/Duo.js.map +1 -0
- package/dist/icons.generated/Edit.js +1 -1
- package/dist/icons.generated/Edit.js.map +1 -1
- package/dist/icons.generated/Email.js +38 -0
- package/dist/icons.generated/Email.js.map +1 -0
- package/dist/icons.generated/ExpandLeft.js +1 -1
- package/dist/icons.generated/ExpandLeft.js.map +1 -1
- package/dist/icons.generated/ExpandRight.js +1 -1
- package/dist/icons.generated/ExpandRight.js.map +1 -1
- package/dist/icons.generated/ExternalLink.js +1 -1
- package/dist/icons.generated/ExternalLink.js.map +1 -1
- package/dist/icons.generated/Fido2.js +57 -0
- package/dist/icons.generated/Fido2.js.map +1 -0
- package/dist/icons.generated/Filter.js +1 -1
- package/dist/icons.generated/Filter.js.map +1 -1
- package/dist/icons.generated/Folder.js +1 -1
- package/dist/icons.generated/Folder.js.map +1 -1
- package/dist/icons.generated/Globe.js +1 -1
- package/dist/icons.generated/Globe.js.map +1 -1
- package/dist/icons.generated/GoogleAuth.js +54 -0
- package/dist/icons.generated/GoogleAuth.js.map +1 -0
- package/dist/icons.generated/Grid.js +1 -1
- package/dist/icons.generated/Grid.js.map +1 -1
- package/dist/icons.generated/Group.js +1 -1
- package/dist/icons.generated/Group.js.map +1 -1
- package/dist/icons.generated/Hide.js +1 -1
- package/dist/icons.generated/Hide.js.map +1 -1
- package/dist/icons.generated/Home.js +1 -1
- package/dist/icons.generated/Home.js.map +1 -1
- package/dist/icons.generated/Idp.js +42 -0
- package/dist/icons.generated/Idp.js.map +1 -0
- package/dist/icons.generated/InformationCircle.js +1 -1
- package/dist/icons.generated/InformationCircle.js.map +1 -1
- package/dist/icons.generated/InformationCircleFilled.js +1 -1
- package/dist/icons.generated/InformationCircleFilled.js.map +1 -1
- package/dist/icons.generated/Link.js +1 -1
- package/dist/icons.generated/Link.js.map +1 -1
- package/dist/icons.generated/List.js +1 -1
- package/dist/icons.generated/List.js.map +1 -1
- package/dist/icons.generated/Lock.js +1 -1
- package/dist/icons.generated/Lock.js.map +1 -1
- package/dist/icons.generated/More.js +1 -1
- package/dist/icons.generated/More.js.map +1 -1
- package/dist/icons.generated/Notification.js +1 -1
- package/dist/icons.generated/Notification.js.map +1 -1
- package/dist/icons.generated/OktaVerify.js +33 -0
- package/dist/icons.generated/OktaVerify.js.map +1 -0
- package/dist/icons.generated/OnPremMfa.js +39 -0
- package/dist/icons.generated/OnPremMfa.js.map +1 -0
- package/dist/icons.generated/OneTimePassword.js +49 -0
- package/dist/icons.generated/OneTimePassword.js.map +1 -0
- package/dist/icons.generated/Password.js +61 -0
- package/dist/icons.generated/Password.js.map +1 -0
- package/dist/icons.generated/Pause.js +1 -1
- package/dist/icons.generated/Pause.js.map +1 -1
- package/dist/icons.generated/QuestionCircle.js +1 -1
- package/dist/icons.generated/QuestionCircle.js.map +1 -1
- package/dist/icons.generated/QuestionCircleFilled.js +1 -1
- package/dist/icons.generated/QuestionCircleFilled.js.map +1 -1
- package/dist/icons.generated/Refresh.js +1 -1
- package/dist/icons.generated/Refresh.js.map +1 -1
- package/dist/icons.generated/Reset.js +1 -1
- package/dist/icons.generated/Reset.js.map +1 -1
- package/dist/icons.generated/Resume.js +1 -1
- package/dist/icons.generated/Resume.js.map +1 -1
- package/dist/icons.generated/Search.js +1 -1
- package/dist/icons.generated/Search.js.map +1 -1
- package/dist/icons.generated/SecurityQuestion.js +41 -0
- package/dist/icons.generated/SecurityQuestion.js.map +1 -0
- package/dist/icons.generated/Server.js +1 -1
- package/dist/icons.generated/Server.js.map +1 -1
- package/dist/icons.generated/Settings.js +1 -1
- package/dist/icons.generated/Settings.js.map +1 -1
- package/dist/icons.generated/Show.js +1 -1
- package/dist/icons.generated/Show.js.map +1 -1
- package/dist/icons.generated/SmartCard.js +49 -0
- package/dist/icons.generated/SmartCard.js.map +1 -0
- package/dist/icons.generated/Sms.js +49 -0
- package/dist/icons.generated/Sms.js.map +1 -0
- package/dist/icons.generated/Subtract.js +1 -1
- package/dist/icons.generated/Subtract.js.map +1 -1
- package/dist/icons.generated/SymantecVip.js +38 -0
- package/dist/icons.generated/SymantecVip.js.map +1 -0
- package/dist/icons.generated/Sync.js +1 -1
- package/dist/icons.generated/Sync.js.map +1 -1
- package/dist/icons.generated/ThumbsDown.js +33 -0
- package/dist/icons.generated/ThumbsDown.js.map +1 -0
- package/dist/icons.generated/ThumbsUp.js +33 -0
- package/dist/icons.generated/ThumbsUp.js.map +1 -0
- package/dist/icons.generated/Unlock.js +1 -1
- package/dist/icons.generated/Unlock.js.map +1 -1
- package/dist/icons.generated/Upload.js +1 -1
- package/dist/icons.generated/Upload.js.map +1 -1
- package/dist/icons.generated/User.js +1 -1
- package/dist/icons.generated/User.js.map +1 -1
- package/dist/icons.generated/Video.js +1 -1
- package/dist/icons.generated/Video.js.map +1 -1
- package/dist/icons.generated/VoiceCall.js +54 -0
- package/dist/icons.generated/VoiceCall.js.map +1 -0
- package/dist/icons.generated/Warning.js +1 -1
- package/dist/icons.generated/Warning.js.map +1 -1
- package/dist/icons.generated/WarningFilled.js +1 -1
- package/dist/icons.generated/WarningFilled.js.map +1 -1
- package/dist/icons.generated/Yubikey.js +31 -0
- package/dist/icons.generated/Yubikey.js.map +1 -0
- package/dist/icons.generated/index.js +18 -0
- package/dist/icons.generated/index.js.map +1 -1
- package/dist/index.d.ts +24 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +7 -2
- package/dist/index.js.map +1 -1
- package/dist/index.scss +457 -0
- package/dist/labs/DataComponents/BulkActionsMenu.js +77 -0
- package/dist/labs/DataComponents/BulkActionsMenu.js.map +1 -0
- package/dist/labs/DataComponents/DataStack.js +79 -0
- package/dist/labs/DataComponents/DataStack.js.map +1 -0
- package/dist/labs/DataComponents/DataTable.js +90 -0
- package/dist/labs/DataComponents/DataTable.js.map +1 -0
- package/dist/labs/DataComponents/DataView.js +278 -0
- package/dist/labs/DataComponents/DataView.js.map +1 -0
- package/dist/{src/DataTable/DataTableEmptyState.d.ts → labs/DataComponents/DetailPanel.js} +14 -9
- package/dist/labs/DataComponents/DetailPanel.js.map +1 -0
- package/dist/labs/DataComponents/LayoutSwitcher.js +53 -0
- package/dist/labs/DataComponents/LayoutSwitcher.js.map +1 -0
- package/dist/labs/DataComponents/RowActions.js +80 -0
- package/dist/labs/DataComponents/RowActions.js.map +1 -0
- package/dist/labs/DataComponents/StackCard.js +163 -0
- package/dist/labs/DataComponents/StackCard.js.map +1 -0
- package/dist/labs/DataComponents/StackContent.js +143 -0
- package/dist/labs/DataComponents/StackContent.js.map +1 -0
- package/dist/labs/DataComponents/TableContent.js +248 -0
- package/dist/labs/DataComponents/TableContent.js.map +1 -0
- package/dist/labs/DataComponents/TableSettings.js +96 -0
- package/dist/labs/DataComponents/TableSettings.js.map +1 -0
- package/dist/labs/DataComponents/componentTypes.js +2 -0
- package/dist/labs/DataComponents/componentTypes.js.map +1 -0
- package/dist/labs/DataComponents/constants.js +17 -0
- package/dist/labs/DataComponents/constants.js.map +1 -0
- package/dist/labs/DataComponents/dataTypes.js +2 -0
- package/dist/labs/DataComponents/dataTypes.js.map +1 -0
- package/dist/labs/DataComponents/fetchData.js +33 -0
- package/dist/labs/DataComponents/fetchData.js.map +1 -0
- package/dist/labs/DataComponents/index.js +18 -0
- package/dist/labs/DataComponents/index.js.map +1 -0
- package/dist/labs/DataComponents/tableConstants.js +146 -0
- package/dist/labs/DataComponents/tableConstants.js.map +1 -0
- package/dist/labs/DataComponents/useFilterConversion.js +58 -0
- package/dist/labs/DataComponents/useFilterConversion.js.map +1 -0
- package/dist/labs/DataFilters.js +139 -82
- package/dist/labs/DataFilters.js.map +1 -1
- package/dist/labs/DateField.js +77 -0
- package/dist/labs/DateField.js.map +1 -0
- package/dist/labs/DatePicker.js +186 -23
- package/dist/labs/DatePicker.js.map +1 -1
- package/dist/labs/{DatePicker.types.js → DatePicker.types.d.js} +1 -1
- package/dist/labs/DatePicker.types.d.js.map +1 -0
- package/dist/labs/FileUpload.js +28 -25
- package/dist/labs/FileUpload.js.map +1 -1
- package/dist/labs/FileUploadIllustration.js +1 -1
- package/dist/labs/FileUploadIllustration.js.map +1 -1
- package/dist/labs/FileUploadPreview.js +1 -0
- package/dist/labs/FileUploadPreview.js.map +1 -1
- package/dist/labs/Layout.js +49 -0
- package/dist/labs/Layout.js.map +1 -0
- package/dist/labs/NavAccordion.js +80 -0
- package/dist/labs/NavAccordion.js.map +1 -0
- package/dist/labs/PageTemplate.js +140 -0
- package/dist/labs/PageTemplate.js.map +1 -0
- package/dist/labs/SideNav.js +478 -0
- package/dist/labs/SideNav.js.map +1 -0
- package/dist/labs/Switch.js +186 -77
- package/dist/labs/Switch.js.map +1 -1
- package/dist/labs/datePickerTheme.js +138 -80
- package/dist/labs/datePickerTheme.js.map +1 -1
- package/dist/labs/index.js +5 -1
- package/dist/labs/index.js.map +1 -1
- package/dist/labs/useDatePickerTranslations.js +71 -0
- package/dist/labs/useDatePickerTranslations.js.map +1 -0
- package/dist/preset.d.ts +23 -0
- package/dist/preset.d.ts.map +1 -0
- package/dist/preset.js +35 -0
- package/dist/properties/ts/odyssey-react-mui.js +68 -10
- package/dist/properties/ts/odyssey-react-mui.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_cs.js +77 -2
- package/dist/properties/ts/odyssey-react-mui_cs.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_da.js +77 -2
- package/dist/properties/ts/odyssey-react-mui_da.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_de.js +77 -2
- package/dist/properties/ts/odyssey-react-mui_de.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_el.js +77 -2
- package/dist/properties/ts/odyssey-react-mui_el.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_es.js +77 -2
- package/dist/properties/ts/odyssey-react-mui_es.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_fi.js +77 -2
- package/dist/properties/ts/odyssey-react-mui_fi.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_fr.js +77 -2
- package/dist/properties/ts/odyssey-react-mui_fr.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_ht.js +98 -0
- package/dist/properties/ts/odyssey-react-mui_ht.js.map +1 -0
- package/dist/properties/ts/odyssey-react-mui_hu.js +77 -2
- package/dist/properties/ts/odyssey-react-mui_hu.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_id.js +77 -2
- package/dist/properties/ts/odyssey-react-mui_id.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_it.js +77 -2
- package/dist/properties/ts/odyssey-react-mui_it.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_ja.js +77 -2
- package/dist/properties/ts/odyssey-react-mui_ja.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_ko.js +77 -2
- package/dist/properties/ts/odyssey-react-mui_ko.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_ms.js +77 -2
- package/dist/properties/ts/odyssey-react-mui_ms.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_nb.js +77 -2
- package/dist/properties/ts/odyssey-react-mui_nb.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_nl_NL.js +77 -2
- package/dist/properties/ts/odyssey-react-mui_nl_NL.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_ok_PL.js +34 -3
- package/dist/properties/ts/odyssey-react-mui_ok_PL.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_ok_SK.js +34 -3
- package/dist/properties/ts/odyssey-react-mui_ok_SK.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_pl.js +77 -2
- package/dist/properties/ts/odyssey-react-mui_pl.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_pt_BR.js +77 -2
- package/dist/properties/ts/odyssey-react-mui_pt_BR.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_ro.js +77 -2
- package/dist/properties/ts/odyssey-react-mui_ro.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_ru.js +77 -2
- package/dist/properties/ts/odyssey-react-mui_ru.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_sv.js +77 -2
- package/dist/properties/ts/odyssey-react-mui_sv.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_th.js +77 -2
- package/dist/properties/ts/odyssey-react-mui_th.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_tr.js +77 -2
- package/dist/properties/ts/odyssey-react-mui_tr.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_uk.js +77 -2
- package/dist/properties/ts/odyssey-react-mui_uk.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_vi.js +77 -2
- package/dist/properties/ts/odyssey-react-mui_vi.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_zh_CN.js +77 -2
- package/dist/properties/ts/odyssey-react-mui_zh_CN.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_zh_TW.js +77 -2
- package/dist/properties/ts/odyssey-react-mui_zh_TW.js.map +1 -1
- package/dist/remUtils.js +14 -0
- package/dist/remUtils.js.map +1 -0
- package/dist/scripts/generateTestSelectorsJson.d.ts +13 -0
- package/dist/scripts/generateTestSelectorsJson.d.ts.map +1 -0
- package/dist/src/Accordion.d.ts +1 -1
- package/dist/src/Accordion.d.ts.map +1 -1
- package/dist/src/Autocomplete.d.ts +7 -1
- package/dist/src/Autocomplete.d.ts.map +1 -1
- package/dist/src/Badge.d.ts +2 -2
- package/dist/src/Badge.d.ts.map +1 -1
- package/dist/src/Banner.d.ts.map +1 -1
- package/dist/src/Button.d.ts +10 -6
- package/dist/src/Button.d.ts.map +1 -1
- package/dist/src/Callout.d.ts +38 -2
- package/dist/src/Callout.d.ts.map +1 -1
- package/dist/src/{Tile.d.ts → Card.d.ts} +6 -27
- package/dist/src/Card.d.ts.map +1 -0
- package/dist/src/DataTable/DataTable.d.ts +70 -50
- package/dist/src/DataTable/DataTable.d.ts.map +1 -1
- package/dist/src/DataTable/DataTableRowActions.d.ts +1 -1
- package/dist/src/DataTable/DataTableRowActions.d.ts.map +1 -1
- package/dist/src/DataTable/constants.d.ts +0 -1
- package/dist/src/DataTable/constants.d.ts.map +1 -1
- package/dist/src/DataTable/index.d.ts +2 -3
- package/dist/src/DataTable/index.d.ts.map +1 -1
- package/dist/src/DataTable/reorderDataRowsLocally.d.ts.map +1 -1
- package/dist/src/DataTable/useRowReordering.d.ts +3 -3
- package/dist/src/DataTable/useRowReordering.d.ts.map +1 -1
- package/dist/src/Dialog.d.ts +19 -7
- package/dist/src/Dialog.d.ts.map +1 -1
- package/dist/src/{labs/Drawer.d.ts → Drawer.d.ts} +3 -3
- package/dist/src/Drawer.d.ts.map +1 -0
- package/dist/src/EmptyState.d.ts +34 -0
- package/dist/src/EmptyState.d.ts.map +1 -0
- package/dist/src/ErrorMessageList.d.ts.map +1 -1
- package/dist/src/FieldError.d.ts.map +1 -1
- package/dist/src/HtmlProps.d.ts +1 -0
- package/dist/src/HtmlProps.d.ts.map +1 -1
- package/dist/src/MenuItem.d.ts.map +1 -1
- package/dist/src/OdysseyCacheProvider.d.ts +6 -2
- package/dist/src/OdysseyCacheProvider.d.ts.map +1 -1
- package/dist/src/OdysseyProvider.d.ts.map +1 -1
- package/dist/src/OdysseyTranslationProvider.d.ts +1 -1
- package/dist/src/OdysseyTranslationProvider.d.ts.map +1 -1
- package/dist/src/Pagination/Pagination.d.ts +70 -0
- package/dist/src/Pagination/Pagination.d.ts.map +1 -0
- package/dist/src/Pagination/constants.d.ts +13 -0
- package/dist/src/Pagination/constants.d.ts.map +1 -0
- package/dist/src/Pagination/index.d.ts +15 -0
- package/dist/src/Pagination/index.d.ts.map +1 -0
- package/dist/src/Pagination/usePagination.d.ts +23 -0
- package/dist/src/Pagination/usePagination.d.ts.map +1 -0
- package/dist/src/Radio.d.ts +2 -2
- package/dist/src/Radio.d.ts.map +1 -1
- package/dist/src/ScreenReaderText.d.ts +3 -2
- package/dist/src/ScreenReaderText.d.ts.map +1 -1
- package/dist/src/Select.d.ts.map +1 -1
- package/dist/src/Status.d.ts +7 -2
- package/dist/src/Status.d.ts.map +1 -1
- package/dist/src/{labs/DatePicker.types.d.ts → Surface.d.ts} +7 -8
- package/dist/src/Surface.d.ts.map +1 -0
- package/dist/src/Tabs.d.ts +22 -0
- package/dist/src/Tabs.d.ts.map +1 -1
- package/dist/src/TextField.d.ts +48 -0
- package/dist/src/TextField.d.ts.map +1 -1
- package/dist/src/Toast.d.ts.map +1 -1
- package/dist/src/icons.generated/Add.d.ts +1 -1
- package/dist/src/icons.generated/AddCircle.d.ts +1 -1
- package/dist/src/icons.generated/Apps.d.ts +1 -1
- package/dist/src/icons.generated/ArrowBottom.d.ts +1 -1
- package/dist/src/icons.generated/ArrowDown.d.ts +1 -1
- package/dist/src/icons.generated/ArrowLeft.d.ts +1 -1
- package/dist/src/icons.generated/ArrowLowerLeft.d.ts +1 -1
- package/dist/src/icons.generated/ArrowLowerRight.d.ts +1 -1
- package/dist/src/icons.generated/ArrowRight.d.ts +1 -1
- package/dist/src/icons.generated/ArrowTop.d.ts +1 -1
- package/dist/src/icons.generated/ArrowUnsorted.d.ts +1 -1
- package/dist/src/icons.generated/ArrowUp.d.ts +1 -1
- package/dist/src/icons.generated/ArrowUpperLeft.d.ts +1 -1
- package/dist/src/icons.generated/ArrowUpperRight.d.ts +1 -1
- package/dist/src/icons.generated/Bug.d.ts +1 -1
- package/dist/src/icons.generated/Calendar.d.ts +1 -1
- package/dist/src/icons.generated/Call.d.ts +1 -1
- package/dist/src/icons.generated/Chat.d.ts +1 -1
- package/dist/src/icons.generated/Check.d.ts +1 -1
- package/dist/src/icons.generated/CheckCircleFilled.d.ts +1 -1
- package/dist/src/icons.generated/ChevronDown.d.ts +1 -1
- package/dist/src/icons.generated/ChevronLeft.d.ts +1 -1
- package/dist/src/icons.generated/ChevronRight.d.ts +1 -1
- package/dist/src/icons.generated/ChevronUp.d.ts +1 -1
- package/dist/src/icons.generated/Clock.d.ts +1 -1
- package/dist/src/icons.generated/Close.d.ts +1 -1
- package/dist/src/icons.generated/CloseCircleFilled.d.ts +1 -1
- package/dist/src/icons.generated/CollapseLeft.d.ts +1 -1
- package/dist/src/icons.generated/CollapseRight.d.ts +1 -1
- package/dist/src/icons.generated/Copy.d.ts +1 -1
- package/dist/src/icons.generated/Custom.d.ts +16 -0
- package/dist/src/icons.generated/Custom.d.ts.map +1 -0
- package/dist/src/icons.generated/DangerDiamond.d.ts +1 -1
- package/dist/src/icons.generated/DangerDiamondFilled.d.ts +1 -1
- package/dist/src/icons.generated/Delete.d.ts +1 -1
- package/dist/src/icons.generated/Deny.d.ts +1 -1
- package/dist/src/icons.generated/Devices.d.ts +1 -1
- package/dist/src/icons.generated/Directory.d.ts +1 -1
- package/dist/src/icons.generated/Documentation.d.ts +1 -1
- package/dist/src/icons.generated/Download.d.ts +1 -1
- package/dist/src/icons.generated/DragIndicator.d.ts +1 -1
- package/dist/src/icons.generated/Duo.d.ts +16 -0
- package/dist/src/icons.generated/Duo.d.ts.map +1 -0
- package/dist/src/icons.generated/Edit.d.ts +1 -1
- package/dist/src/icons.generated/Email.d.ts +16 -0
- package/dist/src/icons.generated/Email.d.ts.map +1 -0
- package/dist/src/icons.generated/ExpandLeft.d.ts +1 -1
- package/dist/src/icons.generated/ExpandRight.d.ts +1 -1
- package/dist/src/icons.generated/ExternalLink.d.ts +1 -1
- package/dist/src/icons.generated/Fido2.d.ts +16 -0
- package/dist/src/icons.generated/Fido2.d.ts.map +1 -0
- package/dist/src/icons.generated/Filter.d.ts +1 -1
- package/dist/src/icons.generated/Folder.d.ts +1 -1
- package/dist/src/icons.generated/Globe.d.ts +1 -1
- package/dist/src/icons.generated/GoogleAuth.d.ts +16 -0
- package/dist/src/icons.generated/GoogleAuth.d.ts.map +1 -0
- package/dist/src/icons.generated/Grid.d.ts +1 -1
- package/dist/src/icons.generated/Group.d.ts +1 -1
- package/dist/src/icons.generated/Hide.d.ts +1 -1
- package/dist/src/icons.generated/Home.d.ts +1 -1
- package/dist/src/icons.generated/Idp.d.ts +16 -0
- package/dist/src/icons.generated/Idp.d.ts.map +1 -0
- package/dist/src/icons.generated/InformationCircle.d.ts +1 -1
- package/dist/src/icons.generated/InformationCircleFilled.d.ts +1 -1
- package/dist/src/icons.generated/Link.d.ts +1 -1
- package/dist/src/icons.generated/List.d.ts +1 -1
- package/dist/src/icons.generated/Lock.d.ts +1 -1
- package/dist/src/icons.generated/More.d.ts +1 -1
- package/dist/src/icons.generated/Notification.d.ts +1 -1
- package/dist/src/icons.generated/OktaVerify.d.ts +16 -0
- package/dist/src/icons.generated/OktaVerify.d.ts.map +1 -0
- package/dist/src/icons.generated/OnPremMfa.d.ts +16 -0
- package/dist/src/icons.generated/OnPremMfa.d.ts.map +1 -0
- package/dist/src/icons.generated/OneTimePassword.d.ts +16 -0
- package/dist/src/icons.generated/OneTimePassword.d.ts.map +1 -0
- package/dist/src/icons.generated/Password.d.ts +16 -0
- package/dist/src/icons.generated/Password.d.ts.map +1 -0
- package/dist/src/icons.generated/Pause.d.ts +1 -1
- package/dist/src/icons.generated/QuestionCircle.d.ts +1 -1
- package/dist/src/icons.generated/QuestionCircleFilled.d.ts +1 -1
- package/dist/src/icons.generated/Refresh.d.ts +1 -1
- package/dist/src/icons.generated/Reset.d.ts +1 -1
- package/dist/src/icons.generated/Resume.d.ts +1 -1
- package/dist/src/icons.generated/Search.d.ts +1 -1
- package/dist/src/icons.generated/SecurityQuestion.d.ts +16 -0
- package/dist/src/icons.generated/SecurityQuestion.d.ts.map +1 -0
- package/dist/src/icons.generated/Server.d.ts +1 -1
- package/dist/src/icons.generated/Settings.d.ts +1 -1
- package/dist/src/icons.generated/Show.d.ts +1 -1
- package/dist/src/icons.generated/SmartCard.d.ts +16 -0
- package/dist/src/icons.generated/SmartCard.d.ts.map +1 -0
- package/dist/src/icons.generated/Sms.d.ts +16 -0
- package/dist/src/icons.generated/Sms.d.ts.map +1 -0
- package/dist/src/icons.generated/Subtract.d.ts +1 -1
- package/dist/src/icons.generated/SymantecVip.d.ts +16 -0
- package/dist/src/icons.generated/SymantecVip.d.ts.map +1 -0
- package/dist/src/icons.generated/Sync.d.ts +1 -1
- package/dist/src/icons.generated/ThumbsDown.d.ts +16 -0
- package/dist/src/icons.generated/ThumbsDown.d.ts.map +1 -0
- package/dist/src/icons.generated/ThumbsUp.d.ts +16 -0
- package/dist/src/icons.generated/ThumbsUp.d.ts.map +1 -0
- package/dist/src/icons.generated/Unlock.d.ts +1 -1
- package/dist/src/icons.generated/Upload.d.ts +1 -1
- package/dist/src/icons.generated/User.d.ts +1 -1
- package/dist/src/icons.generated/Video.d.ts +1 -1
- package/dist/src/icons.generated/VoiceCall.d.ts +16 -0
- package/dist/src/icons.generated/VoiceCall.d.ts.map +1 -0
- package/dist/src/icons.generated/Warning.d.ts +1 -1
- package/dist/src/icons.generated/WarningFilled.d.ts +1 -1
- package/dist/src/icons.generated/Yubikey.d.ts +16 -0
- package/dist/src/icons.generated/Yubikey.d.ts.map +1 -0
- package/dist/src/icons.generated/index.d.ts +18 -0
- package/dist/src/icons.generated/index.d.ts.map +1 -1
- package/dist/src/index.d.ts +7 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/inputUtils.d.ts.map +1 -1
- package/dist/src/labs/DataComponents/BulkActionsMenu.d.ts +23 -0
- package/dist/src/labs/DataComponents/BulkActionsMenu.d.ts.map +1 -0
- package/dist/src/labs/DataComponents/DataStack.d.ts +21 -0
- package/dist/src/labs/DataComponents/DataStack.d.ts.map +1 -0
- package/dist/src/labs/DataComponents/DataTable.d.ts +17 -0
- package/dist/src/labs/DataComponents/DataTable.d.ts.map +1 -0
- package/dist/src/labs/DataComponents/DataView.d.ts +17 -0
- package/dist/src/labs/DataComponents/DataView.d.ts.map +1 -0
- package/dist/src/labs/DataComponents/DetailPanel.d.ts +20 -0
- package/dist/src/labs/DataComponents/DetailPanel.d.ts.map +1 -0
- package/dist/src/labs/DataComponents/LayoutSwitcher.d.ts +21 -0
- package/dist/src/labs/DataComponents/LayoutSwitcher.d.ts.map +1 -0
- package/dist/src/labs/DataComponents/RowActions.d.ts +31 -0
- package/dist/src/labs/DataComponents/RowActions.d.ts.map +1 -0
- package/dist/src/labs/DataComponents/StackCard.d.ts +36 -0
- package/dist/src/labs/DataComponents/StackCard.d.ts.map +1 -0
- package/dist/src/labs/DataComponents/StackContent.d.ts +64 -0
- package/dist/src/labs/DataComponents/StackContent.d.ts.map +1 -0
- package/dist/src/labs/DataComponents/TableContent.d.ts +66 -0
- package/dist/src/labs/DataComponents/TableContent.d.ts.map +1 -0
- package/dist/src/labs/DataComponents/TableSettings.d.ts +21 -0
- package/dist/src/labs/DataComponents/TableSettings.d.ts.map +1 -0
- package/dist/src/labs/DataComponents/componentTypes.d.ts +81 -0
- package/dist/src/labs/DataComponents/componentTypes.d.ts.map +1 -0
- package/dist/src/labs/DataComponents/constants.d.ts +16 -0
- package/dist/src/labs/DataComponents/constants.d.ts.map +1 -0
- package/dist/src/labs/DataComponents/dataTypes.d.ts +52 -0
- package/dist/src/labs/DataComponents/dataTypes.d.ts.map +1 -0
- package/dist/src/labs/DataComponents/fetchData.d.ts +26 -0
- package/dist/src/labs/DataComponents/fetchData.d.ts.map +1 -0
- package/dist/src/labs/DataComponents/index.d.ts +18 -0
- package/dist/src/labs/DataComponents/index.d.ts.map +1 -0
- package/dist/src/labs/DataComponents/tableConstants.d.ts +100 -0
- package/dist/src/labs/DataComponents/tableConstants.d.ts.map +1 -0
- package/dist/src/labs/DataComponents/useFilterConversion.d.ts +20 -0
- package/dist/src/labs/DataComponents/useFilterConversion.d.ts.map +1 -0
- package/dist/src/labs/DataFilters.d.ts +14 -7
- package/dist/src/labs/DataFilters.d.ts.map +1 -1
- package/dist/src/labs/DateField.d.ts +23 -0
- package/dist/src/labs/DateField.d.ts.map +1 -0
- package/dist/src/labs/DatePicker.d.ts +31 -8
- package/dist/src/labs/DatePicker.d.ts.map +1 -1
- package/dist/src/labs/FileUpload.d.ts +2 -2
- package/dist/src/labs/FileUpload.d.ts.map +1 -1
- package/dist/src/labs/FileUploadPreview.d.ts.map +1 -1
- package/dist/src/labs/GroupPicker.d.ts.map +1 -1
- package/dist/src/labs/Layout.d.ts +28 -0
- package/dist/src/labs/Layout.d.ts.map +1 -0
- package/dist/src/labs/NavAccordion.d.ts +52 -0
- package/dist/src/labs/NavAccordion.d.ts.map +1 -0
- package/dist/src/labs/PageTemplate.d.ts +57 -0
- package/dist/src/labs/PageTemplate.d.ts.map +1 -0
- package/dist/src/labs/PaginatedTable.d.ts.map +1 -1
- package/dist/src/labs/SideNav.d.ts +120 -0
- package/dist/src/labs/SideNav.d.ts.map +1 -0
- package/dist/src/labs/StaticTable.d.ts.map +1 -1
- package/dist/src/labs/Switch.d.ts +3 -7
- package/dist/src/labs/Switch.d.ts.map +1 -1
- package/dist/src/labs/datePickerTheme.d.ts.map +1 -1
- package/dist/src/labs/index.d.ts +5 -1
- package/dist/src/labs/index.d.ts.map +1 -1
- package/dist/src/labs/useDatePickerTranslations.d.ts +15 -0
- package/dist/src/labs/useDatePickerTranslations.d.ts.map +1 -0
- package/dist/src/properties/ts/odyssey-react-mui.d.ts +66 -8
- package/dist/src/properties/ts/odyssey-react-mui.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_cs.d.ts +77 -2
- package/dist/src/properties/ts/odyssey-react-mui_cs.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_da.d.ts +77 -2
- package/dist/src/properties/ts/odyssey-react-mui_da.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_de.d.ts +77 -2
- package/dist/src/properties/ts/odyssey-react-mui_de.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_el.d.ts +77 -2
- package/dist/src/properties/ts/odyssey-react-mui_el.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_es.d.ts +77 -2
- package/dist/src/properties/ts/odyssey-react-mui_es.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_fi.d.ts +77 -2
- package/dist/src/properties/ts/odyssey-react-mui_fi.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_fr.d.ts +77 -2
- package/dist/src/properties/ts/odyssey-react-mui_fr.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_ht.d.ts +98 -0
- package/dist/src/properties/ts/odyssey-react-mui_ht.d.ts.map +1 -0
- package/dist/src/properties/ts/odyssey-react-mui_hu.d.ts +77 -2
- package/dist/src/properties/ts/odyssey-react-mui_hu.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_id.d.ts +77 -2
- package/dist/src/properties/ts/odyssey-react-mui_id.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_it.d.ts +77 -2
- package/dist/src/properties/ts/odyssey-react-mui_it.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_ja.d.ts +77 -2
- package/dist/src/properties/ts/odyssey-react-mui_ja.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_ko.d.ts +77 -2
- package/dist/src/properties/ts/odyssey-react-mui_ko.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_ms.d.ts +77 -2
- package/dist/src/properties/ts/odyssey-react-mui_ms.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_nb.d.ts +77 -2
- package/dist/src/properties/ts/odyssey-react-mui_nb.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_nl_NL.d.ts +77 -2
- package/dist/src/properties/ts/odyssey-react-mui_nl_NL.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_ok_PL.d.ts +33 -2
- package/dist/src/properties/ts/odyssey-react-mui_ok_PL.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_ok_SK.d.ts +33 -2
- package/dist/src/properties/ts/odyssey-react-mui_ok_SK.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_pl.d.ts +77 -2
- package/dist/src/properties/ts/odyssey-react-mui_pl.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_pt_BR.d.ts +77 -2
- package/dist/src/properties/ts/odyssey-react-mui_pt_BR.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_ro.d.ts +77 -2
- package/dist/src/properties/ts/odyssey-react-mui_ro.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_ru.d.ts +77 -2
- package/dist/src/properties/ts/odyssey-react-mui_ru.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_sv.d.ts +77 -2
- package/dist/src/properties/ts/odyssey-react-mui_sv.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_th.d.ts +77 -2
- package/dist/src/properties/ts/odyssey-react-mui_th.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_tr.d.ts +77 -2
- package/dist/src/properties/ts/odyssey-react-mui_tr.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_uk.d.ts +77 -2
- package/dist/src/properties/ts/odyssey-react-mui_uk.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_vi.d.ts +77 -2
- package/dist/src/properties/ts/odyssey-react-mui_vi.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_zh_CN.d.ts +77 -2
- package/dist/src/properties/ts/odyssey-react-mui_zh_CN.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_zh_TW.d.ts +77 -2
- package/dist/src/properties/ts/odyssey-react-mui_zh_TW.d.ts.map +1 -1
- package/dist/src/remUtils.d.ts +24 -0
- package/dist/src/remUtils.d.ts.map +1 -0
- package/dist/src/test-selectors/featureTestSelector.d.ts +31 -0
- package/dist/src/test-selectors/featureTestSelector.d.ts.map +1 -0
- package/dist/src/test-selectors/index.d.ts +15 -0
- package/dist/src/test-selectors/index.d.ts.map +1 -0
- package/dist/src/test-selectors/odysseyTestSelectors.d.ts +120 -0
- package/dist/src/test-selectors/odysseyTestSelectors.d.ts.map +1 -0
- package/dist/src/test-selectors/querySelector.d.ts +3632 -0
- package/dist/src/test-selectors/querySelector.d.ts.map +1 -0
- package/dist/src/theme/components.d.ts +1 -1
- package/dist/src/theme/components.d.ts.map +1 -1
- package/dist/src/theme/components.types.d.ts +5 -3
- package/dist/src/theme/components.types.d.ts.map +1 -1
- package/dist/src/theme/createOdysseyMuiTheme.d.ts +1 -1
- package/dist/src/theme/createOdysseyMuiTheme.d.ts.map +1 -1
- package/dist/src/theme/mixins.d.ts.map +1 -1
- package/dist/src/theme/palette.d.ts.map +1 -1
- package/dist/src/theme/shape.d.ts.map +1 -1
- package/dist/src/theme/spacing.d.ts.map +1 -1
- package/dist/src/theme/typography.d.ts.map +1 -1
- package/dist/test-selectors/featureTestSelector.js +2 -0
- package/dist/test-selectors/featureTestSelector.js.map +1 -0
- package/dist/test-selectors/index.js +15 -0
- package/dist/test-selectors/index.js.map +1 -0
- package/dist/test-selectors/odysseyTestSelectors.js +20 -0
- package/dist/test-selectors/odysseyTestSelectors.js.map +1 -0
- package/dist/test-selectors/querySelector.js +78 -0
- package/dist/test-selectors/querySelector.js.map +1 -0
- package/dist/test-selectors/testSelectors.json +1 -0
- package/dist/theme/components.js +261 -181
- package/dist/theme/components.js.map +1 -1
- package/dist/theme/components.types.js.map +1 -1
- package/dist/tsconfig.production.tsbuildinfo +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/i18n.config.json +3 -1
- package/package.json +13 -5
- package/scripts/generateTestSelectorsJson.ts +28 -0
- package/src/Accordion.tsx +3 -0
- package/src/Autocomplete.tsx +13 -0
- package/src/Badge.tsx +4 -3
- package/src/Banner.tsx +4 -4
- package/src/Button.tsx +30 -16
- package/src/Callout.tsx +59 -12
- package/src/{Tile.tsx → Card.tsx} +63 -57
- package/src/DataTable/DataTable.tsx +195 -108
- package/src/DataTable/DataTableRowActions.tsx +1 -1
- package/src/DataTable/constants.ts +0 -1
- package/src/DataTable/index.tsx +2 -2
- package/src/Dialog.tsx +38 -13
- package/src/{labs/Drawer.tsx → Drawer.tsx} +10 -9
- package/src/{DataTable/DataTableEmptyState.tsx → EmptyState.tsx} +34 -19
- package/src/ErrorMessageList.tsx +6 -1
- package/src/FieldError.tsx +10 -5
- package/src/HtmlProps.ts +1 -0
- package/src/MenuItem.tsx +1 -0
- package/src/OdysseyCacheProvider.tsx +11 -3
- package/src/OdysseyProvider.tsx +1 -1
- package/src/OdysseyTranslationProvider.tsx +1 -17
- package/src/{DataTable/DataTablePagination.tsx → Pagination/Pagination.tsx} +107 -74
- package/src/Pagination/constants.ts +13 -0
- package/src/Pagination/index.ts +15 -0
- package/src/Pagination/usePagination.ts +49 -0
- package/src/Radio.tsx +18 -6
- package/src/ScreenReaderText.tsx +15 -3
- package/src/Select.tsx +84 -92
- package/src/Status.tsx +14 -2
- package/src/Surface.tsx +48 -0
- package/src/Tabs.tsx +24 -0
- package/src/TextField.tsx +50 -0
- package/src/Toast.tsx +44 -40
- package/src/icons.generated/Add.tsx +1 -1
- package/src/icons.generated/AddCircle.tsx +1 -1
- package/src/icons.generated/Apps.tsx +1 -1
- package/src/icons.generated/ArrowBottom.tsx +2 -2
- package/src/icons.generated/ArrowDown.tsx +1 -1
- package/src/icons.generated/ArrowLeft.tsx +1 -1
- package/src/icons.generated/ArrowLowerLeft.tsx +1 -1
- package/src/icons.generated/ArrowLowerRight.tsx +1 -1
- package/src/icons.generated/ArrowRight.tsx +1 -1
- package/src/icons.generated/ArrowTop.tsx +2 -2
- package/src/icons.generated/ArrowUnsorted.tsx +1 -1
- package/src/icons.generated/ArrowUp.tsx +1 -1
- package/src/icons.generated/ArrowUpperLeft.tsx +1 -1
- package/src/icons.generated/ArrowUpperRight.tsx +1 -1
- package/src/icons.generated/Bug.tsx +1 -1
- package/src/icons.generated/Calendar.tsx +1 -1
- package/src/icons.generated/Call.tsx +1 -1
- package/src/icons.generated/Chat.tsx +1 -1
- package/src/icons.generated/Check.tsx +1 -1
- package/src/icons.generated/CheckCircleFilled.tsx +1 -1
- package/src/icons.generated/ChevronDown.tsx +1 -1
- package/src/icons.generated/ChevronLeft.tsx +1 -1
- package/src/icons.generated/ChevronRight.tsx +1 -1
- package/src/icons.generated/ChevronUp.tsx +1 -1
- package/src/icons.generated/Clock.tsx +1 -1
- package/src/icons.generated/Close.tsx +1 -1
- package/src/icons.generated/CloseCircleFilled.tsx +1 -1
- package/src/icons.generated/CollapseLeft.tsx +1 -1
- package/src/icons.generated/CollapseRight.tsx +1 -1
- package/src/icons.generated/Copy.tsx +1 -1
- package/src/icons.generated/Custom.tsx +49 -0
- package/src/icons.generated/DangerDiamond.tsx +1 -1
- package/src/icons.generated/DangerDiamondFilled.tsx +1 -1
- package/src/icons.generated/Delete.tsx +1 -1
- package/src/icons.generated/Deny.tsx +1 -1
- package/src/icons.generated/Devices.tsx +1 -1
- package/src/icons.generated/Directory.tsx +1 -1
- package/src/icons.generated/Documentation.tsx +1 -1
- package/src/icons.generated/Download.tsx +1 -1
- package/src/icons.generated/DragIndicator.tsx +1 -1
- package/src/icons.generated/Duo.tsx +59 -0
- package/src/icons.generated/Edit.tsx +1 -1
- package/src/icons.generated/Email.tsx +48 -0
- package/src/icons.generated/ExpandLeft.tsx +1 -1
- package/src/icons.generated/ExpandRight.tsx +1 -1
- package/src/icons.generated/ExternalLink.tsx +1 -1
- package/src/icons.generated/Fido2.tsx +71 -0
- package/src/icons.generated/Filter.tsx +1 -1
- package/src/icons.generated/Folder.tsx +1 -1
- package/src/icons.generated/Globe.tsx +1 -1
- package/src/icons.generated/GoogleAuth.tsx +67 -0
- package/src/icons.generated/Grid.tsx +1 -1
- package/src/icons.generated/Group.tsx +1 -1
- package/src/icons.generated/Hide.tsx +1 -1
- package/src/icons.generated/Home.tsx +1 -1
- package/src/icons.generated/Idp.tsx +51 -0
- package/src/icons.generated/InformationCircle.tsx +1 -1
- package/src/icons.generated/InformationCircleFilled.tsx +1 -1
- package/src/icons.generated/Link.tsx +1 -1
- package/src/icons.generated/List.tsx +1 -1
- package/src/icons.generated/Lock.tsx +1 -1
- package/src/icons.generated/More.tsx +1 -1
- package/src/icons.generated/Notification.tsx +1 -1
- package/src/icons.generated/OktaVerify.tsx +43 -0
- package/src/icons.generated/OnPremMfa.tsx +49 -0
- package/src/icons.generated/OneTimePassword.tsx +63 -0
- package/src/icons.generated/Password.tsx +77 -0
- package/src/icons.generated/Pause.tsx +1 -1
- package/src/icons.generated/QuestionCircle.tsx +1 -1
- package/src/icons.generated/QuestionCircleFilled.tsx +1 -1
- package/src/icons.generated/Refresh.tsx +1 -1
- package/src/icons.generated/Reset.tsx +1 -1
- package/src/icons.generated/Resume.tsx +1 -1
- package/src/icons.generated/Search.tsx +1 -1
- package/src/icons.generated/SecurityQuestion.tsx +48 -0
- package/src/icons.generated/Server.tsx +1 -1
- package/src/icons.generated/Settings.tsx +1 -1
- package/src/icons.generated/Show.tsx +1 -1
- package/src/icons.generated/SmartCard.tsx +62 -0
- package/src/icons.generated/Sms.tsx +52 -0
- package/src/icons.generated/Subtract.tsx +1 -1
- package/src/icons.generated/SymantecVip.tsx +49 -0
- package/src/icons.generated/Sync.tsx +1 -1
- package/src/icons.generated/ThumbsDown.tsx +43 -0
- package/src/icons.generated/ThumbsUp.tsx +43 -0
- package/src/icons.generated/Unlock.tsx +1 -1
- package/src/icons.generated/Upload.tsx +1 -1
- package/src/icons.generated/User.tsx +1 -1
- package/src/icons.generated/Video.tsx +1 -1
- package/src/icons.generated/VoiceCall.tsx +59 -0
- package/src/icons.generated/Warning.tsx +1 -1
- package/src/icons.generated/WarningFilled.tsx +1 -1
- package/src/icons.generated/Yubikey.tsx +41 -0
- package/src/icons.generated/index.ts +18 -0
- package/src/index.ts +7 -2
- package/src/labs/DataComponents/BulkActionsMenu.tsx +97 -0
- package/src/labs/DataComponents/DataStack.tsx +99 -0
- package/src/labs/DataComponents/DataTable.tsx +111 -0
- package/src/labs/DataComponents/DataView.tsx +394 -0
- package/src/labs/DataComponents/DetailPanel.tsx +31 -0
- package/src/labs/DataComponents/LayoutSwitcher.tsx +73 -0
- package/src/labs/DataComponents/RowActions.tsx +122 -0
- package/src/labs/DataComponents/StackCard.tsx +256 -0
- package/src/labs/DataComponents/StackContent.tsx +254 -0
- package/src/labs/DataComponents/TableContent.tsx +390 -0
- package/src/labs/DataComponents/TableSettings.tsx +138 -0
- package/src/labs/DataComponents/componentTypes.ts +111 -0
- package/src/labs/DataComponents/constants.tsx +20 -0
- package/src/labs/DataComponents/dataTypes.ts +77 -0
- package/src/labs/DataComponents/fetchData.ts +47 -0
- package/src/labs/DataComponents/index.tsx +19 -0
- package/src/labs/DataComponents/tableConstants.tsx +162 -0
- package/src/labs/DataComponents/useFilterConversion.ts +92 -0
- package/src/labs/DataFilters.tsx +250 -162
- package/src/labs/DateField.tsx +119 -0
- package/src/labs/DatePicker.tsx +304 -31
- package/src/labs/{DatePicker.types.ts → DatePicker.types.d.ts} +0 -10
- package/src/labs/FileUpload.tsx +30 -21
- package/src/labs/FileUploadIllustration.tsx +1 -1
- package/src/labs/FileUploadPreview.tsx +1 -0
- package/src/labs/Layout.tsx +85 -0
- package/src/labs/NavAccordion.tsx +133 -0
- package/src/labs/PageTemplate.tsx +225 -0
- package/src/labs/SideNav.tsx +745 -0
- package/src/labs/Switch.tsx +240 -119
- package/src/labs/datePickerTheme.tsx +119 -83
- package/src/labs/index.ts +7 -1
- package/src/labs/useDatePickerTranslations.ts +92 -0
- package/src/properties/odyssey-react-mui.properties +76 -10
- package/src/properties/translations/odyssey-react-mui_cs.properties +92 -2
- package/src/properties/translations/odyssey-react-mui_da.properties +92 -2
- package/src/properties/translations/odyssey-react-mui_de.properties +92 -2
- package/src/properties/translations/odyssey-react-mui_el.properties +92 -2
- package/src/properties/translations/odyssey-react-mui_es.properties +92 -2
- package/src/properties/translations/odyssey-react-mui_fi.properties +92 -2
- package/src/properties/translations/odyssey-react-mui_fr.properties +92 -2
- package/src/properties/translations/odyssey-react-mui_ht.properties +112 -0
- package/src/properties/translations/odyssey-react-mui_hu.properties +92 -2
- package/src/properties/translations/odyssey-react-mui_id.properties +92 -2
- package/src/properties/translations/odyssey-react-mui_it.properties +92 -2
- package/src/properties/translations/odyssey-react-mui_ja.properties +92 -2
- package/src/properties/translations/odyssey-react-mui_ko.properties +92 -2
- package/src/properties/translations/odyssey-react-mui_ms.properties +92 -2
- package/src/properties/translations/odyssey-react-mui_nb.properties +92 -2
- package/src/properties/translations/odyssey-react-mui_nl_NL.properties +92 -2
- package/src/properties/translations/odyssey-react-mui_ok_PL.properties +33 -2
- package/src/properties/translations/odyssey-react-mui_ok_SK.properties +33 -2
- package/src/properties/translations/odyssey-react-mui_pl.properties +92 -2
- package/src/properties/translations/odyssey-react-mui_pt_BR.properties +92 -2
- package/src/properties/translations/odyssey-react-mui_ro.properties +92 -2
- package/src/properties/translations/odyssey-react-mui_ru.properties +92 -2
- package/src/properties/translations/odyssey-react-mui_sv.properties +92 -2
- package/src/properties/translations/odyssey-react-mui_th.properties +92 -2
- package/src/properties/translations/odyssey-react-mui_tr.properties +92 -2
- package/src/properties/translations/odyssey-react-mui_uk.properties +92 -2
- package/src/properties/translations/odyssey-react-mui_vi.properties +92 -2
- package/src/properties/translations/odyssey-react-mui_zh_CN.properties +92 -2
- package/src/properties/translations/odyssey-react-mui_zh_TW.properties +92 -2
- package/src/properties/ts/odyssey-react-mui.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_cs.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_da.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_de.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_el.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_es.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_fi.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_fr.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_ht.ts +1 -0
- package/src/properties/ts/odyssey-react-mui_hu.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_id.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_it.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_ja.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_ko.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_ms.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_nb.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_nl_NL.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_ok_PL.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_ok_SK.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_pl.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_pt_BR.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_ro.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_ru.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_sv.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_th.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_tr.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_uk.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_vi.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_zh_CN.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_zh_TW.ts +1 -1
- package/src/remUtils.ts +27 -0
- package/src/test-selectors/featureTestSelector.ts +41 -0
- package/src/test-selectors/index.ts +15 -0
- package/src/test-selectors/odysseyTestSelectors.ts +22 -0
- package/src/test-selectors/querySelector.ts +198 -0
- package/src/theme/components.tsx +285 -192
- package/src/theme/components.types.ts +5 -3
- package/dist/DataTable/DataTableEmptyState.js.map +0 -1
- package/dist/DataTable/DataTablePagination.js.map +0 -1
- package/dist/Tile.js.map +0 -1
- package/dist/labs/DatePicker.types.js.map +0 -1
- package/dist/labs/Drawer.js.map +0 -1
- package/dist/src/DataTable/DataTableEmptyState.d.ts.map +0 -1
- package/dist/src/DataTable/DataTablePagination.d.ts +0 -33
- package/dist/src/DataTable/DataTablePagination.d.ts.map +0 -1
- package/dist/src/Tile.d.ts.map +0 -1
- package/dist/src/labs/DatePicker.types.d.ts.map +0 -1
- package/dist/src/labs/Drawer.d.ts.map +0 -1
|
@@ -17,7 +17,7 @@ import { ArrowLeftIcon, ArrowRightIcon } from "../icons.generated/index.js";
|
|
|
17
17
|
import styled from "@emotion/styled";
|
|
18
18
|
import { useOdysseyDesignTokens } from "../OdysseyDesignTokensContext.js";
|
|
19
19
|
import { Box } from "../Box.js";
|
|
20
|
-
import {
|
|
20
|
+
import { usePagination } from "./usePagination.js";
|
|
21
21
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
22
22
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
23
23
|
const PaginationContainer = styled("div")({
|
|
@@ -60,51 +60,59 @@ const PaginationButtonContainer = styled("div")({
|
|
|
60
60
|
marginInlineStart: `0 !important`
|
|
61
61
|
}
|
|
62
62
|
});
|
|
63
|
-
const
|
|
64
|
-
|
|
65
|
-
|
|
63
|
+
const Pagination = ({
|
|
64
|
+
pageIndex,
|
|
65
|
+
pageSize,
|
|
66
|
+
onPaginationChange,
|
|
67
|
+
lastRow,
|
|
66
68
|
totalRows,
|
|
67
69
|
isDisabled,
|
|
68
|
-
variant
|
|
70
|
+
variant,
|
|
71
|
+
rowsPerPageLabel,
|
|
72
|
+
currentPageLabel,
|
|
73
|
+
previousLabel,
|
|
74
|
+
nextLabel,
|
|
75
|
+
loadMoreLabel
|
|
69
76
|
}) => {
|
|
70
77
|
const odysseyDesignTokens = useOdysseyDesignTokens();
|
|
71
|
-
const
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
const [page, setPage] = useState(pagination.pageIndex);
|
|
75
|
-
const [rowsPerPage, setRowsPerPage] = useState(pagination.pageSize);
|
|
76
|
-
const initialRowsPerPage = useRef(pagination.pageSize);
|
|
77
|
-
const firstRow = pagination.pageSize * (pagination.pageIndex - 1) + 1;
|
|
78
|
-
let lastRow = firstRow + (pagination.pageSize - 1);
|
|
79
|
-
lastRow = totalRows && lastRow > totalRows ? totalRows : lastRow;
|
|
78
|
+
const [page, setPage] = useState(pageIndex);
|
|
79
|
+
const [rowsPerPage, setRowsPerPage] = useState(pageSize);
|
|
80
|
+
const initialRowsPerPage = useRef(pageSize);
|
|
80
81
|
useEffect(() => {
|
|
81
|
-
setPage(
|
|
82
|
-
setRowsPerPage(
|
|
83
|
-
}, [
|
|
82
|
+
setPage(pageIndex);
|
|
83
|
+
setRowsPerPage(pageSize);
|
|
84
|
+
}, [pageIndex, pageSize]);
|
|
85
|
+
const {
|
|
86
|
+
totalRowsLabel
|
|
87
|
+
} = usePagination({
|
|
88
|
+
pageIndex,
|
|
89
|
+
pageSize,
|
|
90
|
+
totalRows
|
|
91
|
+
});
|
|
84
92
|
const handlePaginationChange = useCallback(() => {
|
|
85
93
|
const updatedPage = totalRows && page * totalRows > lastRow ? Math.ceil(totalRows / rowsPerPage) : page;
|
|
86
94
|
const updatedRowsPerPage = totalRows && rowsPerPage > totalRows ? totalRows : rowsPerPage;
|
|
87
|
-
|
|
95
|
+
onPaginationChange({
|
|
88
96
|
pageIndex: updatedPage,
|
|
89
97
|
pageSize: updatedRowsPerPage
|
|
90
98
|
});
|
|
91
|
-
}, [page, rowsPerPage, lastRow,
|
|
99
|
+
}, [page, rowsPerPage, lastRow, onPaginationChange, totalRows]);
|
|
92
100
|
const handlePageSubmit = useCallback(event => {
|
|
93
101
|
if (event.key === "Enter") {
|
|
94
|
-
|
|
102
|
+
onPaginationChange({
|
|
95
103
|
pageIndex: parseInt(event.currentTarget.value),
|
|
96
104
|
pageSize: rowsPerPage
|
|
97
105
|
});
|
|
98
106
|
}
|
|
99
|
-
}, [rowsPerPage,
|
|
107
|
+
}, [rowsPerPage, onPaginationChange]);
|
|
100
108
|
const handleRowsPerPageSubmit = useCallback(event => {
|
|
101
109
|
if (event.key === "Enter") {
|
|
102
|
-
|
|
110
|
+
onPaginationChange({
|
|
103
111
|
pageIndex: page,
|
|
104
112
|
pageSize: parseInt(event.currentTarget.value)
|
|
105
113
|
});
|
|
106
114
|
}
|
|
107
|
-
}, [page,
|
|
115
|
+
}, [page, onPaginationChange]);
|
|
108
116
|
const setPageFromEvent = useCallback(event => {
|
|
109
117
|
setPage(parseInt(event.target.value));
|
|
110
118
|
}, [setPage]);
|
|
@@ -112,28 +120,34 @@ const DataTablePagination = ({
|
|
|
112
120
|
setRowsPerPage(parseInt(event.target.value));
|
|
113
121
|
}, [setRowsPerPage]);
|
|
114
122
|
const handleLoadMore = useCallback(() => {
|
|
115
|
-
|
|
123
|
+
onPaginationChange({
|
|
116
124
|
pageIndex: 1,
|
|
117
125
|
pageSize: rowsPerPage + initialRowsPerPage.current
|
|
118
126
|
});
|
|
119
|
-
}, [rowsPerPage,
|
|
127
|
+
}, [rowsPerPage, onPaginationChange]);
|
|
120
128
|
const handleNextButton = useCallback(() => {
|
|
121
|
-
|
|
129
|
+
onPaginationChange({
|
|
122
130
|
pageIndex: page + 1,
|
|
123
131
|
pageSize: rowsPerPage
|
|
124
132
|
});
|
|
125
|
-
}, [
|
|
133
|
+
}, [onPaginationChange, page, rowsPerPage]);
|
|
126
134
|
const handlePreviousButton = useCallback(() => {
|
|
127
|
-
|
|
135
|
+
onPaginationChange({
|
|
128
136
|
pageIndex: page - 1,
|
|
129
137
|
pageSize: rowsPerPage
|
|
130
138
|
});
|
|
131
|
-
}, [
|
|
139
|
+
}, [onPaginationChange, page, rowsPerPage]);
|
|
132
140
|
const loadMoreIsDisabled = useMemo(() => {
|
|
133
141
|
return totalRows ? rowsPerPage >= totalRows : false;
|
|
134
142
|
}, [rowsPerPage, totalRows]);
|
|
135
143
|
const nextButtonDisabled = useMemo(() => (totalRows ? lastRow >= totalRows : false) || isDisabled, [totalRows, lastRow, isDisabled]);
|
|
136
|
-
const previousButtonDisabled = useMemo(() =>
|
|
144
|
+
const previousButtonDisabled = useMemo(() => pageIndex <= 1 || isDisabled, [pageIndex, isDisabled]);
|
|
145
|
+
const rowsPerPageInputProps = useMemo(() => ({
|
|
146
|
+
"aria-label": rowsPerPageLabel
|
|
147
|
+
}), [rowsPerPageLabel]);
|
|
148
|
+
const currentPageInputProps = useMemo(() => ({
|
|
149
|
+
"aria-label": currentPageLabel
|
|
150
|
+
}), [currentPageLabel]);
|
|
137
151
|
return variant === "paged" ? _jsxs(PaginationContainer, {
|
|
138
152
|
children: [_jsxs(PaginationSegment, {
|
|
139
153
|
odysseyDesignTokens: odysseyDesignTokens,
|
|
@@ -141,7 +155,7 @@ const DataTablePagination = ({
|
|
|
141
155
|
children: [_jsx(Paragraph, {
|
|
142
156
|
component: "span",
|
|
143
157
|
color: "textSecondary",
|
|
144
|
-
children:
|
|
158
|
+
children: rowsPerPageLabel
|
|
145
159
|
}), _jsx(PaginationInput, {
|
|
146
160
|
odysseyDesignTokens: odysseyDesignTokens,
|
|
147
161
|
type: "number",
|
|
@@ -150,27 +164,12 @@ const DataTablePagination = ({
|
|
|
150
164
|
onBlur: handlePaginationChange,
|
|
151
165
|
onKeyDown: handleRowsPerPageSubmit,
|
|
152
166
|
disabled: isDisabled,
|
|
153
|
-
inputProps:
|
|
154
|
-
"aria-label": t("table.pagination.rowsperpage")
|
|
155
|
-
}
|
|
167
|
+
inputProps: rowsPerPageInputProps
|
|
156
168
|
})]
|
|
157
169
|
}), _jsx(Paragraph, {
|
|
158
170
|
component: "span",
|
|
159
171
|
color: "textSecondary",
|
|
160
|
-
children:
|
|
161
|
-
i18nKey: "table.pagination.rowswithtotal",
|
|
162
|
-
values: {
|
|
163
|
-
firstRow,
|
|
164
|
-
lastRow,
|
|
165
|
-
totalRows
|
|
166
|
-
}
|
|
167
|
-
}) : _jsx(Trans, {
|
|
168
|
-
i18nKey: "table.pagination.rowswithouttotal",
|
|
169
|
-
values: {
|
|
170
|
-
firstRow,
|
|
171
|
-
lastRow
|
|
172
|
-
}
|
|
173
|
-
})
|
|
172
|
+
children: totalRowsLabel
|
|
174
173
|
})]
|
|
175
174
|
}), _jsxs(PaginationSegment, {
|
|
176
175
|
odysseyDesignTokens: odysseyDesignTokens,
|
|
@@ -178,7 +177,7 @@ const DataTablePagination = ({
|
|
|
178
177
|
children: [_jsx(Paragraph, {
|
|
179
178
|
component: "span",
|
|
180
179
|
color: "textSecondary",
|
|
181
|
-
children:
|
|
180
|
+
children: currentPageLabel
|
|
182
181
|
}), _jsx(PaginationInput, {
|
|
183
182
|
odysseyDesignTokens: odysseyDesignTokens,
|
|
184
183
|
type: "number",
|
|
@@ -187,23 +186,21 @@ const DataTablePagination = ({
|
|
|
187
186
|
onBlur: handlePaginationChange,
|
|
188
187
|
onKeyDown: handlePageSubmit,
|
|
189
188
|
disabled: isDisabled,
|
|
190
|
-
inputProps:
|
|
191
|
-
"aria-label": t("table.pagination.page")
|
|
192
|
-
}
|
|
189
|
+
inputProps: currentPageInputProps
|
|
193
190
|
})]
|
|
194
191
|
}), _jsxs(PaginationButtonContainer, {
|
|
195
192
|
children: [_jsx(Button, {
|
|
196
193
|
startIcon: _jsx(ArrowLeftIcon, {}),
|
|
197
194
|
variant: "floating",
|
|
198
195
|
size: "small",
|
|
199
|
-
ariaLabel:
|
|
196
|
+
ariaLabel: previousLabel,
|
|
200
197
|
onClick: handlePreviousButton,
|
|
201
198
|
isDisabled: previousButtonDisabled
|
|
202
199
|
}), _jsx(Button, {
|
|
203
200
|
endIcon: _jsx(ArrowRightIcon, {}),
|
|
204
201
|
variant: "floating",
|
|
205
202
|
size: "small",
|
|
206
|
-
ariaLabel:
|
|
203
|
+
ariaLabel: nextLabel,
|
|
207
204
|
onClick: handleNextButton,
|
|
208
205
|
isDisabled: nextButtonDisabled
|
|
209
206
|
})]
|
|
@@ -211,12 +208,12 @@ const DataTablePagination = ({
|
|
|
211
208
|
})]
|
|
212
209
|
}) : _jsx(Button, {
|
|
213
210
|
variant: "secondary",
|
|
214
|
-
label:
|
|
211
|
+
label: loadMoreLabel,
|
|
215
212
|
onClick: handleLoadMore,
|
|
216
213
|
isDisabled: loadMoreIsDisabled
|
|
217
214
|
});
|
|
218
215
|
};
|
|
219
|
-
const
|
|
220
|
-
|
|
221
|
-
export {
|
|
222
|
-
//# sourceMappingURL=
|
|
216
|
+
const MemoizedPagination = memo(Pagination);
|
|
217
|
+
MemoizedPagination.displayName = "Pagination";
|
|
218
|
+
export { MemoizedPagination as Pagination };
|
|
219
|
+
//# sourceMappingURL=Pagination.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Pagination.js","names":["memo","useCallback","useEffect","useMemo","useRef","useState","Paragraph","Button","ArrowLeftIcon","ArrowRightIcon","styled","useOdysseyDesignTokens","Box","usePagination","jsx","_jsx","jsxs","_jsxs","PaginationContainer","display","alignItems","justifyContent","PaginationSegment","shouldForwardProp","prop","odysseyDesignTokens","gap","Spacing4","Spacing2","PaginationInput","_InputBase","borderColor","HueNeutral200","borderRadius","BorderRadiusTight","height","Spacing6","width","HueNeutral400","PalettePrimaryMain","PaginationButtonContainer","marginInlineStart","Pagination","pageIndex","pageSize","onPaginationChange","lastRow","totalRows","isDisabled","variant","rowsPerPageLabel","currentPageLabel","previousLabel","nextLabel","loadMoreLabel","page","setPage","rowsPerPage","setRowsPerPage","initialRowsPerPage","totalRowsLabel","handlePaginationChange","updatedPage","Math","ceil","updatedRowsPerPage","handlePageSubmit","event","key","parseInt","currentTarget","value","handleRowsPerPageSubmit","setPageFromEvent","target","setRowsPerPageFromEvent","handleLoadMore","current","handleNextButton","handlePreviousButton","loadMoreIsDisabled","nextButtonDisabled","previousButtonDisabled","rowsPerPageInputProps","currentPageInputProps","children","component","color","type","onChange","onBlur","onKeyDown","disabled","inputProps","startIcon","size","ariaLabel","onClick","endIcon","label","MemoizedPagination","displayName"],"sources":["../../src/Pagination/Pagination.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2023-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport { InputBase } from \"@mui/material\";\nimport { memo, useCallback, useEffect, useMemo, useRef, useState } from \"react\";\nimport { Paragraph } from \"../Typography\";\nimport { Button } from \"../Button\";\nimport { ArrowLeftIcon, ArrowRightIcon } from \"../icons.generated\";\nimport styled from \"@emotion/styled\";\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"../OdysseyDesignTokensContext\";\nimport { Box } from \"../Box\";\nimport { paginationTypeValues } from \"./constants\";\nimport { usePagination } from \"./usePagination\";\n\nconst PaginationContainer = styled(\"div\")({\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n});\n\nconst PaginationSegment = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})(({ odysseyDesignTokens }: { odysseyDesignTokens: DesignTokens }) => ({\n display: \"flex\",\n alignItems: \"center\",\n gap: odysseyDesignTokens.Spacing4,\n \"& > div\": {\n display: \"flex\",\n alignItems: \"center\",\n gap: odysseyDesignTokens.Spacing2,\n },\n}));\n\nconst PaginationInput = styled(InputBase, {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})(({ odysseyDesignTokens }: { odysseyDesignTokens: DesignTokens }) => ({\n borderColor: odysseyDesignTokens.HueNeutral200,\n borderRadius: odysseyDesignTokens.BorderRadiusTight,\n height: odysseyDesignTokens.Spacing6,\n width: \"4.5714285714rem\", // This is a hardcoded value, keep as string\n \"&:hover\": {\n borderColor: odysseyDesignTokens.HueNeutral400,\n },\n \"&.Mui-focused:hover\": {\n borderColor: odysseyDesignTokens.PalettePrimaryMain,\n },\n}));\n\nconst PaginationButtonContainer = styled(\"div\")({\n \"& > *\": {\n marginInlineStart: `0 !important`,\n },\n});\n\nexport type PaginationProps = {\n /**\n * The current page index\n */\n pageIndex: number;\n /**\n * The current page size\n */\n pageSize: number;\n /**\n * Page index and page size setter\n */\n onPaginationChange: ({\n pageIndex,\n pageSize,\n }: {\n pageIndex: number;\n pageSize: number;\n }) => void;\n /**\n * The current page last row index\n */\n lastRow: number;\n /**\n * Total rows count\n */\n totalRows?: number;\n /**\n * If true, the pagination controls will be disabled\n */\n isDisabled?: boolean;\n /**\n * The type of pagination controls shown. Defaults to next/prev buttons, but can be\n * set to a simple \"Load more\" button by setting to \"loadMore\".\n */\n variant?: (typeof paginationTypeValues)[number];\n /**\n * The label that shows how many results are rendered per page\n */\n rowsPerPageLabel: string;\n /**\n * The labeled rendered for the current page index\n */\n currentPageLabel: string;\n /**\n * The label for the previous control\n */\n previousLabel: string;\n /**\n * The label for the next control\n */\n nextLabel: string;\n /**\n * If the pagination is of \"loadMore\" variant, then this is the the load more label\n */\n loadMoreLabel: string;\n};\n\nconst Pagination = ({\n pageIndex,\n pageSize,\n onPaginationChange,\n lastRow,\n totalRows,\n isDisabled,\n variant,\n rowsPerPageLabel,\n currentPageLabel,\n previousLabel,\n nextLabel,\n loadMoreLabel,\n}: PaginationProps) => {\n const odysseyDesignTokens = useOdysseyDesignTokens();\n\n const [page, setPage] = useState<number>(pageIndex);\n const [rowsPerPage, setRowsPerPage] = useState<number>(pageSize);\n const initialRowsPerPage = useRef<number>(pageSize);\n\n useEffect(() => {\n setPage(pageIndex);\n setRowsPerPage(pageSize);\n }, [pageIndex, pageSize]);\n\n const { totalRowsLabel } = usePagination({ pageIndex, pageSize, totalRows });\n\n const handlePaginationChange = useCallback(() => {\n const updatedPage =\n totalRows && page * totalRows > lastRow\n ? Math.ceil(totalRows / rowsPerPage)\n : page;\n const updatedRowsPerPage =\n totalRows && rowsPerPage > totalRows ? totalRows : rowsPerPage;\n\n onPaginationChange({\n pageIndex: updatedPage,\n pageSize: updatedRowsPerPage,\n });\n }, [page, rowsPerPage, lastRow, onPaginationChange, totalRows]);\n\n // The following handlers use React.KeyboardEvent (rather than just KeyboardEvent) becuase React.KeyboardEvent\n // is generic, while plain KeyboardEvent is not. We need this generic so we can specify the HTMLInputElement,\n // which allows us to use currentTarget.value\n const handlePageSubmit = useCallback(\n (event: React.KeyboardEvent<HTMLInputElement | HTMLTextAreaElement>) => {\n if (event.key === \"Enter\") {\n onPaginationChange({\n pageIndex: parseInt(event.currentTarget.value),\n pageSize: rowsPerPage,\n });\n }\n },\n [rowsPerPage, onPaginationChange],\n );\n\n const handleRowsPerPageSubmit = useCallback(\n (event: React.KeyboardEvent<HTMLInputElement | HTMLTextAreaElement>) => {\n if (event.key === \"Enter\") {\n onPaginationChange({\n pageIndex: page,\n pageSize: parseInt(event.currentTarget.value),\n });\n }\n },\n [page, onPaginationChange],\n );\n\n const setPageFromEvent = useCallback(\n (event: React.ChangeEvent<HTMLInputElement>) => {\n setPage(parseInt(event.target.value));\n },\n [setPage],\n );\n\n const setRowsPerPageFromEvent = useCallback(\n (event: React.ChangeEvent<HTMLInputElement>) => {\n setRowsPerPage(parseInt(event.target.value));\n },\n [setRowsPerPage],\n );\n\n const handleLoadMore = useCallback(() => {\n onPaginationChange({\n pageIndex: 1,\n pageSize: rowsPerPage + initialRowsPerPage.current,\n });\n }, [rowsPerPage, onPaginationChange]);\n\n const handleNextButton = useCallback(() => {\n onPaginationChange({ pageIndex: page + 1, pageSize: rowsPerPage });\n }, [onPaginationChange, page, rowsPerPage]);\n\n const handlePreviousButton = useCallback(() => {\n onPaginationChange({ pageIndex: page - 1, pageSize: rowsPerPage });\n }, [onPaginationChange, page, rowsPerPage]);\n\n const loadMoreIsDisabled = useMemo(() => {\n return totalRows ? rowsPerPage >= totalRows : false;\n }, [rowsPerPage, totalRows]);\n\n const nextButtonDisabled = useMemo(\n () => (totalRows ? lastRow >= totalRows : false) || isDisabled,\n [totalRows, lastRow, isDisabled],\n );\n\n const previousButtonDisabled = useMemo(\n () => pageIndex <= 1 || isDisabled,\n [pageIndex, isDisabled],\n );\n\n const rowsPerPageInputProps = useMemo(\n () => ({\n \"aria-label\": rowsPerPageLabel,\n }),\n [rowsPerPageLabel],\n );\n\n const currentPageInputProps = useMemo(\n () => ({\n \"aria-label\": currentPageLabel,\n }),\n [currentPageLabel],\n );\n\n return variant === \"paged\" ? (\n <PaginationContainer>\n <PaginationSegment odysseyDesignTokens={odysseyDesignTokens}>\n <Box>\n <Paragraph component=\"span\" color=\"textSecondary\">\n {rowsPerPageLabel}\n </Paragraph>\n <PaginationInput\n odysseyDesignTokens={odysseyDesignTokens}\n type=\"number\"\n value={rowsPerPage}\n onChange={setRowsPerPageFromEvent}\n onBlur={handlePaginationChange}\n onKeyDown={handleRowsPerPageSubmit}\n disabled={isDisabled}\n inputProps={rowsPerPageInputProps}\n />\n </Box>\n <Paragraph component=\"span\" color=\"textSecondary\">\n {totalRowsLabel}\n </Paragraph>\n </PaginationSegment>\n\n <PaginationSegment odysseyDesignTokens={odysseyDesignTokens}>\n {totalRows && (\n <Box>\n <Paragraph component=\"span\" color=\"textSecondary\">\n {currentPageLabel}\n </Paragraph>\n <PaginationInput\n odysseyDesignTokens={odysseyDesignTokens}\n type=\"number\"\n value={page}\n onChange={setPageFromEvent}\n onBlur={handlePaginationChange}\n onKeyDown={handlePageSubmit}\n disabled={isDisabled}\n inputProps={currentPageInputProps}\n />\n </Box>\n )}\n <PaginationButtonContainer>\n <Button\n startIcon={<ArrowLeftIcon />}\n variant=\"floating\"\n size=\"small\"\n ariaLabel={previousLabel}\n onClick={handlePreviousButton}\n isDisabled={previousButtonDisabled}\n />\n <Button\n endIcon={<ArrowRightIcon />}\n variant=\"floating\"\n size=\"small\"\n ariaLabel={nextLabel}\n onClick={handleNextButton}\n isDisabled={nextButtonDisabled}\n />\n </PaginationButtonContainer>\n </PaginationSegment>\n </PaginationContainer>\n ) : (\n <Button\n variant=\"secondary\"\n label={loadMoreLabel}\n onClick={handleLoadMore}\n isDisabled={loadMoreIsDisabled}\n />\n );\n};\n\nconst MemoizedPagination = memo(Pagination);\nMemoizedPagination.displayName = \"Pagination\";\n\nexport { MemoizedPagination as Pagination };\n"],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
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 paginationTypeValues = ["paged", "loadMore"];
|
|
14
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","names":["paginationTypeValues"],"sources":["../../src/Pagination/constants.ts"],"sourcesContent":["/*!\n * Copyright (c) 2023-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nexport const paginationTypeValues = [\"paged\", \"loadMore\"] as const;\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAO,MAAMA,oBAAoB,GAAG,CAAC,OAAO,EAAE,UAAU,CAAU"}
|
|
@@ -0,0 +1,15 @@
|
|
|
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
|
+
export { Pagination } from "./Pagination.js";
|
|
13
|
+
export { paginationTypeValues } from "./constants.js";
|
|
14
|
+
export { usePagination } from "./usePagination.js";
|
|
15
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["Pagination","paginationTypeValues","usePagination"],"sources":["../../src/Pagination/index.ts"],"sourcesContent":["/*!\n * Copyright (c) 2023-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nexport { Pagination, type PaginationProps } from \"./Pagination\";\nexport { paginationTypeValues } from \"./constants\";\nexport { usePagination } from \"./usePagination\";\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAVA,SAYSA,UAAU;AAAA,SACVC,oBAAoB;AAAA,SACpBC,aAAa"}
|
|
@@ -0,0 +1,51 @@
|
|
|
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 { useTranslation } from "react-i18next";
|
|
14
|
+
export const usePagination = ({
|
|
15
|
+
pageIndex,
|
|
16
|
+
pageSize,
|
|
17
|
+
totalRows
|
|
18
|
+
}) => {
|
|
19
|
+
const {
|
|
20
|
+
t
|
|
21
|
+
} = useTranslation();
|
|
22
|
+
const firstRow = pageSize * (pageIndex - 1) + 1;
|
|
23
|
+
const lastRow = firstRow + (pageSize - 1);
|
|
24
|
+
if (totalRows && lastRow > totalRows) {
|
|
25
|
+
return {
|
|
26
|
+
firstRow,
|
|
27
|
+
lastRow: totalRows,
|
|
28
|
+
totalRowsLabel: totalRows ? t("pagination.rowswithtotal", {
|
|
29
|
+
firstRow,
|
|
30
|
+
lastRow,
|
|
31
|
+
totalRows
|
|
32
|
+
}) : t("pagination.rowswithouttotal", {
|
|
33
|
+
firstRow,
|
|
34
|
+
lastRow
|
|
35
|
+
})
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
return {
|
|
39
|
+
firstRow,
|
|
40
|
+
lastRow,
|
|
41
|
+
totalRowsLabel: totalRows ? t("pagination.rowswithtotal", {
|
|
42
|
+
firstRow,
|
|
43
|
+
lastRow,
|
|
44
|
+
totalRows
|
|
45
|
+
}) : t("pagination.rowswithouttotal", {
|
|
46
|
+
firstRow,
|
|
47
|
+
lastRow
|
|
48
|
+
})
|
|
49
|
+
};
|
|
50
|
+
};
|
|
51
|
+
//# sourceMappingURL=usePagination.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usePagination.js","names":["useTranslation","usePagination","pageIndex","pageSize","totalRows","t","firstRow","lastRow","totalRowsLabel"],"sources":["../../src/Pagination/usePagination.ts"],"sourcesContent":["/*!\n * Copyright (c) 2023-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport { useTranslation } from \"react-i18next\";\n\ntype UsePaginationType = {\n pageIndex: number;\n pageSize: number;\n totalRows?: number;\n};\n\nexport const usePagination = ({\n pageIndex,\n pageSize,\n totalRows,\n}: UsePaginationType) => {\n const { t } = useTranslation();\n\n const firstRow = pageSize * (pageIndex - 1) + 1;\n const lastRow = firstRow + (pageSize - 1);\n if (totalRows && lastRow > totalRows) {\n // If the last eligible row is greater than the number of total rows,\n // show the number of total rows instead (ie, if we're showing rows\n // 180-200 but there are only 190 rows, show 180-190 instead)\n return {\n firstRow,\n lastRow: totalRows,\n totalRowsLabel: totalRows\n ? t(\"pagination.rowswithtotal\", { firstRow, lastRow, totalRows })\n : t(\"pagination.rowswithouttotal\", { firstRow, lastRow }),\n };\n }\n return {\n firstRow,\n lastRow,\n totalRowsLabel: totalRows\n ? t(\"pagination.rowswithtotal\", { firstRow, lastRow, totalRows })\n : t(\"pagination.rowswithouttotal\", { firstRow, lastRow }),\n };\n};\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,cAAc,QAAQ,eAAe;AAQ9C,OAAO,MAAMC,aAAa,GAAGA,CAAC;EAC5BC,SAAS;EACTC,QAAQ;EACRC;AACiB,CAAC,KAAK;EACvB,MAAM;IAAEC;EAAE,CAAC,GAAGL,cAAc,CAAC,CAAC;EAE9B,MAAMM,QAAQ,GAAGH,QAAQ,IAAID,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC;EAC/C,MAAMK,OAAO,GAAGD,QAAQ,IAAIH,QAAQ,GAAG,CAAC,CAAC;EACzC,IAAIC,SAAS,IAAIG,OAAO,GAAGH,SAAS,EAAE;IAIpC,OAAO;MACLE,QAAQ;MACRC,OAAO,EAAEH,SAAS;MAClBI,cAAc,EAAEJ,SAAS,GACrBC,CAAC,CAAC,0BAA0B,EAAE;QAAEC,QAAQ;QAAEC,OAAO;QAAEH;MAAU,CAAC,CAAC,GAC/DC,CAAC,CAAC,6BAA6B,EAAE;QAAEC,QAAQ;QAAEC;MAAQ,CAAC;IAC5D,CAAC;EACH;EACA,OAAO;IACLD,QAAQ;IACRC,OAAO;IACPC,cAAc,EAAEJ,SAAS,GACrBC,CAAC,CAAC,0BAA0B,EAAE;MAAEC,QAAQ;MAAEC,OAAO;MAAEH;IAAU,CAAC,CAAC,GAC/DC,CAAC,CAAC,6BAA6B,EAAE;MAAEC,QAAQ;MAAEC;IAAQ,CAAC;EAC5D,CAAC;AACH,CAAC"}
|
package/dist/Radio.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import _FormControlLabel from "@mui/material/FormControlLabel";
|
|
2
2
|
import _Radio from "@mui/material/Radio";
|
|
3
|
+
import _FormHelperText from "@mui/material/FormHelperText";
|
|
3
4
|
/*!
|
|
4
5
|
* Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.
|
|
5
6
|
* The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.")
|
|
@@ -11,14 +12,18 @@ import _Radio from "@mui/material/Radio";
|
|
|
11
12
|
*
|
|
12
13
|
* See the License for the specific language governing permissions and limitations under the License.
|
|
13
14
|
*/
|
|
14
|
-
import { memo, useCallback, useRef, useImperativeHandle } from "react";
|
|
15
|
+
import { memo, useCallback, useMemo, useRef, useImperativeHandle } from "react";
|
|
16
|
+
import { Typography } from "./Typography.js";
|
|
15
17
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
18
|
+
import { Fragment as _Fragment } from "react/jsx-runtime";
|
|
19
|
+
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
16
20
|
const Radio = ({
|
|
21
|
+
hint,
|
|
17
22
|
inputRef,
|
|
18
23
|
isChecked,
|
|
19
24
|
isDisabled,
|
|
20
25
|
isInvalid,
|
|
21
|
-
label,
|
|
26
|
+
label: labelProp,
|
|
22
27
|
name,
|
|
23
28
|
testId,
|
|
24
29
|
translate,
|
|
@@ -34,9 +39,16 @@ const Radio = ({
|
|
|
34
39
|
}
|
|
35
40
|
};
|
|
36
41
|
}, []);
|
|
37
|
-
const
|
|
38
|
-
|
|
39
|
-
|
|
42
|
+
const label = useMemo(() => _jsxs(_Fragment, {
|
|
43
|
+
children: [_jsx(Typography, {
|
|
44
|
+
component: "span",
|
|
45
|
+
children: labelProp
|
|
46
|
+
}), hint && _jsx(_FormHelperText, {
|
|
47
|
+
translate: translate,
|
|
48
|
+
children: hint
|
|
49
|
+
})]
|
|
50
|
+
}), [labelProp, hint, translate]);
|
|
51
|
+
const onChange = useCallback((event, checked) => onChangeProp?.(event, checked), [onChangeProp]);
|
|
40
52
|
const onBlur = useCallback(event => {
|
|
41
53
|
onBlurProp?.(event);
|
|
42
54
|
}, [onBlurProp]);
|
package/dist/Radio.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Radio.js","names":["memo","useCallback","useRef","useImperativeHandle","jsx","_jsx","Radio","inputRef","isChecked","isDisabled","isInvalid","label","name","testId","translate","value","onChange","onChangeProp","onBlur","onBlurProp","localInputRef","focus","current","event","checked","_FormControlLabel","className","control","_Radio","inputProps","disabled","MemoizedRadio","displayName"],"sources":["../src/Radio.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport {\n FormControlLabel,\n FormControlLabelProps as MuiFormControlLabelProps,\n Radio as MuiRadio,\n RadioProps as MuiRadioProps,\n} from \"@mui/material\";\nimport { memo, useCallback, useRef, useImperativeHandle } from \"react\";\n\nimport { FieldComponentProps } from \"./FieldComponentProps\";\nimport type { HtmlProps } from \"./HtmlProps\";\nimport { FocusHandle } from \"./inputUtils\";\n\nexport type RadioProps = {\n /**\n * The ref forwarded to the Radio\n */\n inputRef?: React.RefObject<FocusHandle>;\n /**\n * If `true`, the Radio is selected\n */\n isChecked?: boolean;\n /**\n * If `true`, the Radio has an invalid value\n */\n isInvalid?: boolean;\n /**\n * The label text for the Radio\n */\n label: string;\n /**\n * The value attribute of the Radio\n */\n value: string;\n /**\n * Callback fired when the state is changed. Provides event and checked value.\n */\n onChange?: MuiRadioProps[\"onChange\"];\n /**\n * Callback fired when the blur event happens. Provides event value.\n */\n onBlur?: MuiFormControlLabelProps[\"onBlur\"];\n} & Pick<FieldComponentProps, \"isDisabled\" | \"name\"> &\n Pick<HtmlProps, \"testId\" | \"translate\">;\n\nconst Radio = ({\n inputRef,\n isChecked,\n isDisabled,\n isInvalid,\n label,\n name,\n testId,\n translate,\n value,\n onChange: onChangeProp,\n onBlur: onBlurProp,\n}: RadioProps) => {\n const localInputRef = useRef<HTMLInputElement>(null);\n useImperativeHandle(\n inputRef,\n () => {\n return {\n focus: () => {\n localInputRef.current?.focus();\n },\n };\n },\n [],\n );\n\n const onChange = useCallback<NonNullable<MuiRadioProps[\"onChange\"]>>(\n (event, checked) =>
|
|
1
|
+
{"version":3,"file":"Radio.js","names":["memo","useCallback","useMemo","useRef","useImperativeHandle","Typography","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","Radio","hint","inputRef","isChecked","isDisabled","isInvalid","label","labelProp","name","testId","translate","value","onChange","onChangeProp","onBlur","onBlurProp","localInputRef","focus","current","children","component","_FormHelperText","event","checked","_FormControlLabel","className","control","_Radio","inputProps","disabled","MemoizedRadio","displayName"],"sources":["../src/Radio.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport {\n FormControlLabel,\n FormControlLabelProps as MuiFormControlLabelProps,\n FormHelperText,\n Radio as MuiRadio,\n RadioProps as MuiRadioProps,\n} from \"@mui/material\";\n\nimport { memo, useCallback, useMemo, useRef, useImperativeHandle } from \"react\";\n\nimport { FieldComponentProps } from \"./FieldComponentProps\";\nimport type { HtmlProps } from \"./HtmlProps\";\nimport { FocusHandle } from \"./inputUtils\";\nimport { Typography } from \"./Typography\";\n\nexport type RadioProps = {\n /**\n * The ref forwarded to the Radio\n */\n inputRef?: React.RefObject<FocusHandle>;\n /**\n * If `true`, the Radio is selected\n */\n isChecked?: boolean;\n /**\n * If `true`, the Radio has an invalid value\n */\n isInvalid?: boolean;\n /**\n * The label text for the Radio\n */\n label: string;\n /**\n * The value attribute of the Radio\n */\n value: string;\n /**\n * Callback fired when the state is changed. Provides event and checked value.\n */\n onChange?: MuiRadioProps[\"onChange\"];\n /**\n * Callback fired when the blur event happens. Provides event value.\n */\n onBlur?: MuiFormControlLabelProps[\"onBlur\"];\n} & Pick<FieldComponentProps, \"hint\" | \"id\" | \"isDisabled\" | \"name\"> &\n Pick<HtmlProps, \"testId\" | \"translate\">;\n\nconst Radio = ({\n hint,\n inputRef,\n isChecked,\n isDisabled,\n isInvalid,\n label: labelProp,\n name,\n testId,\n translate,\n value,\n onChange: onChangeProp,\n onBlur: onBlurProp,\n}: RadioProps) => {\n const localInputRef = useRef<HTMLInputElement>(null);\n useImperativeHandle(\n inputRef,\n () => {\n return {\n focus: () => {\n localInputRef.current?.focus();\n },\n };\n },\n [],\n );\n\n const label = useMemo(\n () => (\n <>\n <Typography component=\"span\">{labelProp}</Typography>\n {hint && <FormHelperText translate={translate}>{hint}</FormHelperText>}\n </>\n ),\n [labelProp, hint, translate],\n );\n\n const onChange = useCallback<NonNullable<MuiRadioProps[\"onChange\"]>>(\n (event, checked) => onChangeProp?.(event, checked),\n [onChangeProp],\n );\n\n const onBlur = useCallback<NonNullable<MuiFormControlLabelProps[\"onBlur\"]>>(\n (event) => {\n onBlurProp?.(event);\n },\n [onBlurProp],\n );\n\n return (\n <FormControlLabel\n checked={isChecked}\n className={isInvalid ? \"Mui-error\" : \"\"}\n control={\n <MuiRadio\n inputProps={{\n \"data-se\": testId,\n }}\n inputRef={localInputRef}\n onChange={onChange}\n />\n }\n disabled={isDisabled}\n label={label}\n name={name}\n translate={translate}\n value={value}\n onBlur={onBlur}\n />\n );\n};\n\nconst MemoizedRadio = memo(Radio);\nMemoizedRadio.displayName = \"Radio\";\n\nexport { MemoizedRadio as Radio };\n"],"mappings":";;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAUA,SAASA,IAAI,EAAEC,WAAW,EAAEC,OAAO,EAAEC,MAAM,EAAEC,mBAAmB,QAAQ,OAAO;AAAC,SAKvEC,UAAU;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,QAAA,IAAAC,SAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAkCnB,MAAMC,KAAK,GAAGA,CAAC;EACbC,IAAI;EACJC,QAAQ;EACRC,SAAS;EACTC,UAAU;EACVC,SAAS;EACTC,KAAK,EAAEC,SAAS;EAChBC,IAAI;EACJC,MAAM;EACNC,SAAS;EACTC,KAAK;EACLC,QAAQ,EAAEC,YAAY;EACtBC,MAAM,EAAEC;AACE,CAAC,KAAK;EAChB,MAAMC,aAAa,GAAGzB,MAAM,CAAmB,IAAI,CAAC;EACpDC,mBAAmB,CACjBU,QAAQ,EACR,MAAM;IACJ,OAAO;MACLe,KAAK,EAAEA,CAAA,KAAM;QACXD,aAAa,CAACE,OAAO,EAAED,KAAK,CAAC,CAAC;MAChC;IACF,CAAC;EACH,CAAC,EACD,EACF,CAAC;EAED,MAAMX,KAAK,GAAGhB,OAAO,CACnB,MACES,KAAA,CAAAF,SAAA;IAAAsB,QAAA,GACExB,IAAA,CAACF,UAAU;MAAC2B,SAAS,EAAC,MAAM;MAAAD,QAAA,EAAEZ;IAAS,CAAa,CAAC,EACpDN,IAAI,IAAIN,IAAA,CAAA0B,eAAA;MAAgBX,SAAS,EAAEA,SAAU;MAAAS,QAAA,EAAElB;IAAI,CAAiB,CAAC;EAAA,CACtE,CACH,EACD,CAACM,SAAS,EAAEN,IAAI,EAAES,SAAS,CAC7B,CAAC;EAED,MAAME,QAAQ,GAAGvB,WAAW,CAC1B,CAACiC,KAAK,EAAEC,OAAO,KAAKV,YAAY,GAAGS,KAAK,EAAEC,OAAO,CAAC,EAClD,CAACV,YAAY,CACf,CAAC;EAED,MAAMC,MAAM,GAAGzB,WAAW,CACvBiC,KAAK,IAAK;IACTP,UAAU,GAAGO,KAAK,CAAC;EACrB,CAAC,EACD,CAACP,UAAU,CACb,CAAC;EAED,OACEpB,IAAA,CAAA6B,iBAAA;IACED,OAAO,EAAEpB,SAAU;IACnBsB,SAAS,EAAEpB,SAAS,GAAG,WAAW,GAAG,EAAG;IACxCqB,OAAO,EACL/B,IAAA,CAAAgC,MAAA;MACEC,UAAU,EAAE;QACV,SAAS,EAAEnB;MACb,CAAE;MACFP,QAAQ,EAAEc,aAAc;MACxBJ,QAAQ,EAAEA;IAAS,CACpB,CACF;IACDiB,QAAQ,EAAEzB,UAAW;IACrBE,KAAK,EAAEA,KAAM;IACbE,IAAI,EAAEA,IAAK;IACXE,SAAS,EAAEA,SAAU;IACrBC,KAAK,EAAEA,KAAM;IACbG,MAAM,EAAEA;EAAO,CAChB,CAAC;AAEN,CAAC;AAED,MAAMgB,aAAa,GAAG1C,IAAI,CAACY,KAAK,CAAC;AACjC8B,aAAa,CAACC,WAAW,GAAG,OAAO;AAEnC,SAASD,aAAa,IAAI9B,KAAK"}
|
package/dist/ScreenReaderText.js
CHANGED
|
@@ -18,11 +18,15 @@ const style = {
|
|
|
18
18
|
...visuallyHidden
|
|
19
19
|
};
|
|
20
20
|
const ScreenReaderText = ({
|
|
21
|
+
ariaHidden,
|
|
21
22
|
children,
|
|
23
|
+
id,
|
|
22
24
|
translate
|
|
23
25
|
}) => _jsx(_Box, {
|
|
26
|
+
"aria-hidden": ariaHidden,
|
|
24
27
|
sx: style,
|
|
25
28
|
component: "span",
|
|
29
|
+
id: id,
|
|
26
30
|
translate: translate,
|
|
27
31
|
children: children
|
|
28
32
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScreenReaderText.js","names":["memo","visuallyHidden","jsx","_jsx","style","ScreenReaderText","children","translate","_Box","sx","component","MemoizedScreenReaderText","displayName"],"sources":["../src/ScreenReaderText.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport { memo, ReactNode } from \"react\";\nimport { Box } from \"@mui/material\";\nimport { visuallyHidden } from \"@mui/utils\";\nimport { HtmlProps } from \"./HtmlProps\";\n\nexport type ScreenReaderTextProps = {\n /**\n * The visually-hidden text.\n */\n children: ReactNode;\n} & Pick<HtmlProps, \"translate\">;\n\n/**\n * MUI sx expects you pass in a CSS object, not an object with CSS.\n * They seem identical, but only if you create a new object like this will MUI be happy with the type of visuallyHidden.\n * It's otherwise a regular object with CSS properties.\n */\nconst style = { ...visuallyHidden };\n\nconst ScreenReaderText = ({
|
|
1
|
+
{"version":3,"file":"ScreenReaderText.js","names":["memo","visuallyHidden","jsx","_jsx","style","ScreenReaderText","ariaHidden","children","id","translate","_Box","sx","component","MemoizedScreenReaderText","displayName"],"sources":["../src/ScreenReaderText.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport { memo, ReactNode } from \"react\";\nimport { Box } from \"@mui/material\";\nimport { visuallyHidden } from \"@mui/utils\";\nimport { HtmlProps } from \"./HtmlProps\";\n\nexport type ScreenReaderTextProps = {\n /**\n * The visually-hidden text.\n */\n children: ReactNode;\n id?: string;\n} & Pick<HtmlProps, \"ariaHidden\" | \"translate\">;\n\n/**\n * MUI sx expects you pass in a CSS object, not an object with CSS.\n * They seem identical, but only if you create a new object like this will MUI be happy with the type of visuallyHidden.\n * It's otherwise a regular object with CSS properties.\n */\nconst style = { ...visuallyHidden };\n\nconst ScreenReaderText = ({\n ariaHidden,\n children,\n id,\n translate,\n}: ScreenReaderTextProps) => (\n <Box\n aria-hidden={ariaHidden}\n sx={style}\n component=\"span\"\n id={id}\n translate={translate}\n >\n {children}\n </Box>\n);\n\nconst MemoizedScreenReaderText = memo(ScreenReaderText);\nMemoizedScreenReaderText.displayName = \"ScreenReaderText\";\n\nexport { MemoizedScreenReaderText as ScreenReaderText };\n"],"mappings":";AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,IAAI,QAAmB,OAAO;AAEvC,SAASC,cAAc,QAAQ,YAAY;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAgB5C,MAAMC,KAAK,GAAG;EAAE,GAAGH;AAAe,CAAC;AAEnC,MAAMI,gBAAgB,GAAGA,CAAC;EACxBC,UAAU;EACVC,QAAQ;EACRC,EAAE;EACFC;AACqB,CAAC,KACtBN,IAAA,CAAAO,IAAA;EACE,eAAaJ,UAAW;EACxBK,EAAE,EAAEP,KAAM;EACVQ,SAAS,EAAC,MAAM;EAChBJ,EAAE,EAAEA,EAAG;EACPC,SAAS,EAAEA,SAAU;EAAAF,QAAA,EAEpBA;AAAQ,CACN,CACN;AAED,MAAMM,wBAAwB,GAAGb,IAAI,CAACK,gBAAgB,CAAC;AACvDQ,wBAAwB,CAACC,WAAW,GAAG,kBAAkB;AAEzD,SAASD,wBAAwB,IAAIR,gBAAgB"}
|
package/dist/Select.js
CHANGED
|
@@ -80,15 +80,7 @@ const ChipsInnerContainer = styled(_Box, {
|
|
|
80
80
|
opacity: ${({
|
|
81
81
|
isInteractive
|
|
82
82
|
}) => isInteractive ? 1 : 0};
|
|
83
|
-
|
|
84
|
-
const ChipsSpacer = styled("div", {
|
|
85
|
-
shouldForwardProp: prop => prop !== "odysseyDesignTokens"
|
|
86
|
-
})`
|
|
87
|
-
display: inline-block;
|
|
88
|
-
border-color: transparent;
|
|
89
|
-
border-style: solid none;
|
|
90
|
-
border-width: 1px;
|
|
91
|
-
height: ${({
|
|
83
|
+
min-height: ${({
|
|
92
84
|
odysseyDesignTokens
|
|
93
85
|
}) => odysseyDesignTokens.Spacing6};
|
|
94
86
|
`;
|
|
@@ -151,10 +143,10 @@ const Select = ({
|
|
|
151
143
|
}
|
|
152
144
|
} = event;
|
|
153
145
|
if (controlledStateRef.current !== CONTROLLED) {
|
|
154
|
-
setInternalSelectedValues(typeof value === "string" ? value.split(",") : value);
|
|
146
|
+
setInternalSelectedValues(typeof value === "string" && hasMultipleChoices ? value.split(",") : value);
|
|
155
147
|
}
|
|
156
148
|
onChangeProp?.(event, child);
|
|
157
|
-
}, [onChangeProp]);
|
|
149
|
+
}, [hasMultipleChoices, onChangeProp]);
|
|
158
150
|
const normalizedOptions = useMemo(() => options.map(option => {
|
|
159
151
|
if (typeof option === "object") {
|
|
160
152
|
const value = option?.value === "" ? option.value : option.value || option.text;
|
|
@@ -170,45 +162,43 @@ const Select = ({
|
|
|
170
162
|
type: "option"
|
|
171
163
|
};
|
|
172
164
|
}), [options]);
|
|
165
|
+
const removeSelectedValue = useCallback(selectedValue => {
|
|
166
|
+
if (Array.isArray(internalSelectedValues)) {
|
|
167
|
+
const newValue = internalSelectedValues.filter(internalSelectedValue => internalSelectedValue !== selectedValue);
|
|
168
|
+
const syntheticEvent = {
|
|
169
|
+
target: {
|
|
170
|
+
value: newValue
|
|
171
|
+
}
|
|
172
|
+
};
|
|
173
|
+
onChange(syntheticEvent, null);
|
|
174
|
+
}
|
|
175
|
+
}, [internalSelectedValues, onChange]);
|
|
173
176
|
const Chips = useCallback(({
|
|
174
|
-
selection,
|
|
175
177
|
isInteractive
|
|
176
178
|
}) => {
|
|
177
|
-
const removeSelection = itemToRemove => {
|
|
178
|
-
if (Array.isArray(internalSelectedValues)) {
|
|
179
|
-
const newValue = internalSelectedValues.filter(item => item !== itemToRemove);
|
|
180
|
-
const syntheticEvent = {
|
|
181
|
-
target: {
|
|
182
|
-
value: newValue
|
|
183
|
-
}
|
|
184
|
-
};
|
|
185
|
-
onChange(syntheticEvent, null);
|
|
186
|
-
}
|
|
187
|
-
};
|
|
188
179
|
const stopPropagation = event => event.stopPropagation();
|
|
189
|
-
|
|
180
|
+
const hasNonInteractiveIcon = !isInteractive && controlledStateRef.current === CONTROLLED && hasMultipleChoices;
|
|
181
|
+
return Array.isArray(internalSelectedValues) && _jsx(ChipsInnerContainer, {
|
|
190
182
|
isInteractive: isInteractive,
|
|
191
183
|
odysseyDesignTokens: odysseyDesignTokens,
|
|
192
|
-
children:
|
|
193
|
-
odysseyDesignTokens: odysseyDesignTokens
|
|
194
|
-
}), selection.map(item => item?.length > 0 && _jsx(_Chip, {
|
|
184
|
+
children: internalSelectedValues.map(item => item?.length > 0 && _jsx(_Chip, {
|
|
195
185
|
label: _jsxs(_Fragment, {
|
|
196
|
-
children: [item,
|
|
186
|
+
children: [item, hasNonInteractiveIcon && _jsx(NonInteractiveIcon, {
|
|
197
187
|
odysseyDesignTokens: odysseyDesignTokens
|
|
198
188
|
})]
|
|
199
189
|
}),
|
|
200
190
|
tabIndex: -1,
|
|
201
|
-
onDelete: isInteractive && controlledStateRef.current === CONTROLLED ? () =>
|
|
191
|
+
onDelete: isInteractive && controlledStateRef.current === CONTROLLED ? () => removeSelectedValue(item) : undefined,
|
|
202
192
|
deleteIcon: _jsx(CloseCircleFilledIcon, {
|
|
203
193
|
sx: {
|
|
204
194
|
pointerEvents: "auto"
|
|
205
195
|
},
|
|
206
196
|
onMouseDown: stopPropagation
|
|
207
197
|
})
|
|
208
|
-
}, item))
|
|
198
|
+
}, item))
|
|
209
199
|
});
|
|
210
|
-
}, [controlledStateRef, hasMultipleChoices, internalSelectedValues, odysseyDesignTokens,
|
|
211
|
-
const
|
|
200
|
+
}, [controlledStateRef, hasMultipleChoices, internalSelectedValues, odysseyDesignTokens, removeSelectedValue]);
|
|
201
|
+
const renderedOptions = useMemo(() => normalizedOptions.map((option, index) => {
|
|
212
202
|
if (option.type === "heading") {
|
|
213
203
|
return _jsxs(_ListSubheader, {
|
|
214
204
|
children: [" ", option.text, " "]
|
|
@@ -220,13 +210,12 @@ const Select = ({
|
|
|
220
210
|
selected: isSelected,
|
|
221
211
|
children: [hasMultipleChoices && _jsx(_Checkbox, {
|
|
222
212
|
checked: isSelected
|
|
223
|
-
}), option.text, !hasMultipleChoices &&
|
|
213
|
+
}), option.text, !hasMultipleChoices && internalSelectedValues === option.value && _jsx(_ListItemSecondaryAction, {
|
|
224
214
|
children: _jsx(CheckIcon, {})
|
|
225
215
|
})]
|
|
226
216
|
}, normalizedKey(option.text, index.toString()));
|
|
227
217
|
}), [hasMultipleChoices, normalizedOptions, internalSelectedValues]);
|
|
228
218
|
const renderValue = useCallback(value => Array.isArray(value) && _jsx(Chips, {
|
|
229
|
-
selection: value,
|
|
230
219
|
isInteractive: false
|
|
231
220
|
}), [Chips]);
|
|
232
221
|
const renderFieldComponent = useCallback(({
|
|
@@ -239,7 +228,7 @@ const Select = ({
|
|
|
239
228
|
...inputValues,
|
|
240
229
|
"aria-describedby": ariaDescribedBy,
|
|
241
230
|
"aria-errormessage": errorMessageElementId,
|
|
242
|
-
|
|
231
|
+
displayEmpty: true,
|
|
243
232
|
id: id,
|
|
244
233
|
inputProps: {
|
|
245
234
|
"data-se": testId
|
|
@@ -252,15 +241,17 @@ const Select = ({
|
|
|
252
241
|
onChange: onChange,
|
|
253
242
|
onFocus: onFocus,
|
|
254
243
|
renderValue: hasMultipleChoices ? renderValue : undefined,
|
|
255
|
-
translate: translate
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
children: _jsx(
|
|
259
|
-
|
|
260
|
-
|
|
244
|
+
translate: translate,
|
|
245
|
+
children: renderedOptions
|
|
246
|
+
}), hasMultipleChoices && _jsx(_Fragment, {
|
|
247
|
+
children: _jsx(ChipsPositioningContainer, {
|
|
248
|
+
odysseyDesignTokens: odysseyDesignTokens,
|
|
249
|
+
children: _jsx(Chips, {
|
|
250
|
+
isInteractive: true
|
|
251
|
+
})
|
|
261
252
|
})
|
|
262
253
|
})]
|
|
263
|
-
}), [
|
|
254
|
+
}), [Chips, inputValues, hasMultipleChoices, nameOverride, odysseyDesignTokens, onBlur, onChange, onFocus, renderedOptions, renderValue, testId, translate]);
|
|
264
255
|
return _jsx(Field, {
|
|
265
256
|
ariaDescribedBy: ariaDescribedBy,
|
|
266
257
|
errorMessage: errorMessage,
|