@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
|
@@ -0,0 +1,478 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.
|
|
3
|
+
* The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.")
|
|
4
|
+
*
|
|
5
|
+
* You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
|
|
6
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
7
|
+
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
8
|
+
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
9
|
+
*
|
|
10
|
+
* See the License for the specific language governing permissions and limitations under the License.
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
import styled from "@emotion/styled";
|
|
14
|
+
import { memo, useMemo, useState, useCallback } from "react";
|
|
15
|
+
import { Box } from "../Box.js";
|
|
16
|
+
import { Button } from "../Button.js";
|
|
17
|
+
import { CollapseLeftIcon, ExpandLeftIcon } from "../icons.generated/index.js";
|
|
18
|
+
import { Link } from "../Link.js";
|
|
19
|
+
import { NavAccordion } from "./NavAccordion.js";
|
|
20
|
+
import { useOdysseyDesignTokens } from "../OdysseyDesignTokensContext.js";
|
|
21
|
+
import { Status } from "../Status.js";
|
|
22
|
+
import { Heading6 } from "../Typography.js";
|
|
23
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
24
|
+
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
25
|
+
import { Fragment as _Fragment } from "react/jsx-runtime";
|
|
26
|
+
const SideNavCollapsedContainer = styled("div", {
|
|
27
|
+
shouldForwardProp: prop => prop !== "odysseyDesignTokens" && prop !== "isSideNavCollapsed"
|
|
28
|
+
})(({
|
|
29
|
+
odysseyDesignTokens,
|
|
30
|
+
isSideNavCollapsed
|
|
31
|
+
}) => ({
|
|
32
|
+
backgroundColor: odysseyDesignTokens.HueNeutral300,
|
|
33
|
+
paddingTop: odysseyDesignTokens.Spacing5,
|
|
34
|
+
cursor: "pointer",
|
|
35
|
+
width: isSideNavCollapsed ? "auto" : 0,
|
|
36
|
+
opacity: isSideNavCollapsed ? 1 : 0,
|
|
37
|
+
visibility: isSideNavCollapsed ? "visible" : "hidden",
|
|
38
|
+
transitionProperty: "opacity",
|
|
39
|
+
transitionDuration: odysseyDesignTokens.TransitionDurationMain,
|
|
40
|
+
transitionTimingFunction: odysseyDesignTokens.TransitionTimingMain
|
|
41
|
+
}));
|
|
42
|
+
const SideNavExpandContainer = styled("div", {
|
|
43
|
+
shouldForwardProp: prop => prop !== "odysseyDesignTokens" && prop !== "isSideNavCollapsed"
|
|
44
|
+
})(({
|
|
45
|
+
odysseyDesignTokens,
|
|
46
|
+
isSideNavCollapsed
|
|
47
|
+
}) => ({
|
|
48
|
+
backgroundColor: odysseyDesignTokens.HueNeutralWhite,
|
|
49
|
+
flexDirection: "column",
|
|
50
|
+
display: "flex",
|
|
51
|
+
opacity: isSideNavCollapsed ? 0 : 1,
|
|
52
|
+
visibility: isSideNavCollapsed ? "hidden" : "visible",
|
|
53
|
+
width: isSideNavCollapsed ? "0" : "100%",
|
|
54
|
+
transitionProperty: "opacity, width",
|
|
55
|
+
transitionDuration: odysseyDesignTokens.TransitionDurationMain,
|
|
56
|
+
transitionTimingFunction: odysseyDesignTokens.TransitionTimingMain
|
|
57
|
+
}));
|
|
58
|
+
const SideNavHeaderContainer = styled("div", {
|
|
59
|
+
shouldForwardProp: prop => prop !== "odysseyDesignTokens"
|
|
60
|
+
})(({
|
|
61
|
+
odysseyDesignTokens
|
|
62
|
+
}) => ({
|
|
63
|
+
display: "flex",
|
|
64
|
+
justifyContent: "space-between",
|
|
65
|
+
alignItems: "center",
|
|
66
|
+
paddingLeft: odysseyDesignTokens.Spacing4,
|
|
67
|
+
paddingRight: odysseyDesignTokens.Spacing4,
|
|
68
|
+
paddingTop: odysseyDesignTokens.Spacing3,
|
|
69
|
+
paddingBottom: odysseyDesignTokens.Spacing3
|
|
70
|
+
}));
|
|
71
|
+
const CollapseIcon = ({
|
|
72
|
+
onClick
|
|
73
|
+
}) => {
|
|
74
|
+
const odysseyDesignTokens = useOdysseyDesignTokens();
|
|
75
|
+
const collapseButtonStyles = useMemo(() => ({
|
|
76
|
+
"& > button": {
|
|
77
|
+
height: odysseyDesignTokens.Spacing6,
|
|
78
|
+
width: odysseyDesignTokens.Spacing6,
|
|
79
|
+
color: odysseyDesignTokens.HueNeutral400
|
|
80
|
+
}
|
|
81
|
+
}), [odysseyDesignTokens]);
|
|
82
|
+
return _jsx(Box, {
|
|
83
|
+
sx: collapseButtonStyles,
|
|
84
|
+
children: _jsx(Button, {
|
|
85
|
+
tabIndex: 0,
|
|
86
|
+
variant: "secondary",
|
|
87
|
+
onClick: onClick,
|
|
88
|
+
startIcon: _jsx(CollapseLeftIcon, {}),
|
|
89
|
+
ariaLabel: "collapse side navigation"
|
|
90
|
+
})
|
|
91
|
+
});
|
|
92
|
+
};
|
|
93
|
+
const SideNavHeader = ({
|
|
94
|
+
navHeaderText,
|
|
95
|
+
isCollapsible,
|
|
96
|
+
onCollapse
|
|
97
|
+
}) => {
|
|
98
|
+
const odysseyDesignTokens = useOdysseyDesignTokens();
|
|
99
|
+
const sideNavHeaderStyles = useMemo(() => ({
|
|
100
|
+
marginTop: odysseyDesignTokens.Spacing2
|
|
101
|
+
}), [odysseyDesignTokens]);
|
|
102
|
+
return _jsxs(SideNavHeaderContainer, {
|
|
103
|
+
odysseyDesignTokens: odysseyDesignTokens,
|
|
104
|
+
children: [_jsx(Box, {
|
|
105
|
+
sx: sideNavHeaderStyles,
|
|
106
|
+
children: _jsx(Heading6, {
|
|
107
|
+
children: navHeaderText
|
|
108
|
+
})
|
|
109
|
+
}), isCollapsible && _jsx(CollapseIcon, {
|
|
110
|
+
onClick: onCollapse
|
|
111
|
+
})]
|
|
112
|
+
});
|
|
113
|
+
};
|
|
114
|
+
const SideNavListContainer = styled.ul({
|
|
115
|
+
padding: 0,
|
|
116
|
+
listStyle: "none",
|
|
117
|
+
listStyleType: "none"
|
|
118
|
+
});
|
|
119
|
+
const SectionHeader = styled("li", {
|
|
120
|
+
shouldForwardProp: prop => prop !== "odysseyDesignTokens"
|
|
121
|
+
})(({
|
|
122
|
+
odysseyDesignTokens
|
|
123
|
+
}) => ({
|
|
124
|
+
fontSize: odysseyDesignTokens.TypographySizeOverline,
|
|
125
|
+
fontWeight: odysseyDesignTokens.TypographyWeightHeadingBold,
|
|
126
|
+
color: odysseyDesignTokens.HueNeutral600,
|
|
127
|
+
paddingTop: odysseyDesignTokens.Spacing3,
|
|
128
|
+
paddingBottom: odysseyDesignTokens.Spacing3,
|
|
129
|
+
paddingLeft: odysseyDesignTokens.Spacing4,
|
|
130
|
+
textTransform: "uppercase"
|
|
131
|
+
}));
|
|
132
|
+
const SideNavItemLabelContainer = styled("div", {
|
|
133
|
+
shouldForwardProp: prop => prop !== "odysseyDesignTokens" && prop !== "isIconVisible"
|
|
134
|
+
})(({
|
|
135
|
+
odysseyDesignTokens,
|
|
136
|
+
isIconVisible
|
|
137
|
+
}) => ({
|
|
138
|
+
width: "100%",
|
|
139
|
+
display: "flex",
|
|
140
|
+
flexWrap: "wrap",
|
|
141
|
+
alignItems: "center",
|
|
142
|
+
fontSize: odysseyDesignTokens.TypographyScale0,
|
|
143
|
+
fontWeight: odysseyDesignTokens.TypographyWeightHeading,
|
|
144
|
+
marginLeft: isIconVisible ? odysseyDesignTokens.Spacing2 : 0,
|
|
145
|
+
"& a": {
|
|
146
|
+
color: `${odysseyDesignTokens.TypographyColorHeading} !important`,
|
|
147
|
+
fontSize: odysseyDesignTokens.TypographyScale0
|
|
148
|
+
},
|
|
149
|
+
"& a:hover": {
|
|
150
|
+
textDecoration: "none",
|
|
151
|
+
cursor: "pointer"
|
|
152
|
+
}
|
|
153
|
+
}));
|
|
154
|
+
const SideNavListItemContainer = styled("li", {
|
|
155
|
+
shouldForwardProp: prop => prop !== "odysseyDesignTokens" && prop !== "isSelected" && prop !== "isDisabled"
|
|
156
|
+
})(({
|
|
157
|
+
odysseyDesignTokens,
|
|
158
|
+
isSelected,
|
|
159
|
+
isDisabled
|
|
160
|
+
}) => ({
|
|
161
|
+
display: "flex",
|
|
162
|
+
alignItems: "center",
|
|
163
|
+
cursor: isDisabled ? "default" : "pointer",
|
|
164
|
+
pointerEvents: isDisabled ? "none" : "auto",
|
|
165
|
+
backgroundColor: isSelected ? odysseyDesignTokens.HueNeutral50 : "unset",
|
|
166
|
+
margin: `${odysseyDesignTokens.Spacing1} 0`,
|
|
167
|
+
"&:last-child": {
|
|
168
|
+
marginBottom: odysseyDesignTokens.Spacing2
|
|
169
|
+
},
|
|
170
|
+
"& a": {
|
|
171
|
+
display: "flex",
|
|
172
|
+
alignItems: "center",
|
|
173
|
+
width: "100%",
|
|
174
|
+
minHeight: "48px",
|
|
175
|
+
padding: `${odysseyDesignTokens.Spacing3} ${odysseyDesignTokens.Spacing4}`,
|
|
176
|
+
color: `${odysseyDesignTokens.TypographyColorHeading} !important`,
|
|
177
|
+
pointerEvents: isDisabled ? "none" : "auto"
|
|
178
|
+
},
|
|
179
|
+
"& a:hover": {
|
|
180
|
+
textDecoration: "none",
|
|
181
|
+
cursor: isDisabled ? "default" : "pointer",
|
|
182
|
+
backgroundColor: !isDisabled ? odysseyDesignTokens.HueNeutral50 : "inherit"
|
|
183
|
+
},
|
|
184
|
+
"& a:focus-visible": {
|
|
185
|
+
outlineOffset: 0,
|
|
186
|
+
borderRadius: 0,
|
|
187
|
+
outlineWidth: odysseyDesignTokens.FocusOutlineWidthMain,
|
|
188
|
+
backgroundColor: !isDisabled ? odysseyDesignTokens.HueNeutral50 : "inherit"
|
|
189
|
+
}
|
|
190
|
+
}));
|
|
191
|
+
const SideNavFooterContainer = styled("div", {
|
|
192
|
+
shouldForwardProp: prop => prop !== "odysseyDesignTokens"
|
|
193
|
+
})(({
|
|
194
|
+
odysseyDesignTokens
|
|
195
|
+
}) => ({
|
|
196
|
+
paddingTop: odysseyDesignTokens.Spacing2,
|
|
197
|
+
paddingBottom: odysseyDesignTokens.Spacing2,
|
|
198
|
+
display: "flex",
|
|
199
|
+
justifyContent: "center",
|
|
200
|
+
flexWrap: "wrap",
|
|
201
|
+
alignItems: "center",
|
|
202
|
+
fontSize: odysseyDesignTokens.TypographySizeOverline,
|
|
203
|
+
"& a": {
|
|
204
|
+
color: `${odysseyDesignTokens.TypographyColorHeading} !important`
|
|
205
|
+
},
|
|
206
|
+
"& a:hover": {
|
|
207
|
+
textDecoration: "none"
|
|
208
|
+
},
|
|
209
|
+
"& a:visited": {
|
|
210
|
+
color: odysseyDesignTokens.TypographyColorHeading
|
|
211
|
+
}
|
|
212
|
+
}));
|
|
213
|
+
const SideNavItemLinkContent = ({
|
|
214
|
+
label,
|
|
215
|
+
startIcon,
|
|
216
|
+
endIcon,
|
|
217
|
+
severity,
|
|
218
|
+
statusLabel
|
|
219
|
+
}) => {
|
|
220
|
+
const odysseyDesignTokens = useOdysseyDesignTokens();
|
|
221
|
+
const sideNavItemContentStyles = useMemo(() => ({
|
|
222
|
+
marginLeft: odysseyDesignTokens.Spacing2
|
|
223
|
+
}), [odysseyDesignTokens]);
|
|
224
|
+
return _jsxs(_Fragment, {
|
|
225
|
+
children: [startIcon && startIcon, _jsxs(SideNavItemLabelContainer, {
|
|
226
|
+
odysseyDesignTokens: odysseyDesignTokens,
|
|
227
|
+
isIconVisible: Boolean(startIcon),
|
|
228
|
+
children: [label, severity && _jsx(Box, {
|
|
229
|
+
sx: sideNavItemContentStyles,
|
|
230
|
+
children: _jsx(Status, {
|
|
231
|
+
severity: severity,
|
|
232
|
+
label: statusLabel || ""
|
|
233
|
+
})
|
|
234
|
+
})]
|
|
235
|
+
}), endIcon && endIcon]
|
|
236
|
+
});
|
|
237
|
+
};
|
|
238
|
+
const SideNavItemContent = ({
|
|
239
|
+
id,
|
|
240
|
+
label,
|
|
241
|
+
href,
|
|
242
|
+
target,
|
|
243
|
+
startIcon,
|
|
244
|
+
severity,
|
|
245
|
+
statusLabel,
|
|
246
|
+
endIcon,
|
|
247
|
+
onClick,
|
|
248
|
+
isSelected,
|
|
249
|
+
isDisabled
|
|
250
|
+
}) => {
|
|
251
|
+
const odysseyDesignTokens = useOdysseyDesignTokens();
|
|
252
|
+
const NavItemContentClickContainer = styled("div", {
|
|
253
|
+
shouldForwardProp: prop => prop !== "odysseyDesignTokens"
|
|
254
|
+
})(() => ({
|
|
255
|
+
display: "flex",
|
|
256
|
+
alignItems: "center",
|
|
257
|
+
width: "100%",
|
|
258
|
+
minHeight: "48px",
|
|
259
|
+
padding: `${odysseyDesignTokens.Spacing3} ${odysseyDesignTokens.Spacing4}`,
|
|
260
|
+
color: `${isDisabled ? odysseyDesignTokens.TypographyColorDisabled : odysseyDesignTokens.TypographyColorHeading} !important`,
|
|
261
|
+
"&:focus-visible": {
|
|
262
|
+
borderRadius: 0,
|
|
263
|
+
outlineColor: odysseyDesignTokens.FocusOutlineColorPrimary,
|
|
264
|
+
outlineStyle: odysseyDesignTokens.FocusOutlineStyle,
|
|
265
|
+
outlineWidth: odysseyDesignTokens.FocusOutlineWidthMain,
|
|
266
|
+
backgroundColor: odysseyDesignTokens.HueNeutral50,
|
|
267
|
+
textDecoration: "none"
|
|
268
|
+
}
|
|
269
|
+
}));
|
|
270
|
+
const sideNavItemContentKeyHandler = useCallback(event => {
|
|
271
|
+
if (event?.key === "Enter") {
|
|
272
|
+
event.preventDefault();
|
|
273
|
+
onClick?.();
|
|
274
|
+
}
|
|
275
|
+
}, [onClick]);
|
|
276
|
+
const sideNavItemContent = useMemo(() => {
|
|
277
|
+
return _jsx(SideNavListItemContainer, {
|
|
278
|
+
id: id,
|
|
279
|
+
disabled: isDisabled,
|
|
280
|
+
"aria-disabled": isDisabled,
|
|
281
|
+
isDisabled: isDisabled,
|
|
282
|
+
isSelected: isSelected,
|
|
283
|
+
odysseyDesignTokens: odysseyDesignTokens,
|
|
284
|
+
children: isDisabled ? _jsx(NavItemContentClickContainer, {
|
|
285
|
+
children: _jsx(SideNavItemLinkContent, {
|
|
286
|
+
label: label,
|
|
287
|
+
startIcon: startIcon,
|
|
288
|
+
endIcon: endIcon,
|
|
289
|
+
statusLabel: statusLabel,
|
|
290
|
+
severity: severity
|
|
291
|
+
})
|
|
292
|
+
}) : !href ? _jsx(NavItemContentClickContainer, {
|
|
293
|
+
role: "button",
|
|
294
|
+
tabIndex: 0,
|
|
295
|
+
onClick: onClick,
|
|
296
|
+
onKeyDown: sideNavItemContentKeyHandler,
|
|
297
|
+
children: _jsx(SideNavItemLinkContent, {
|
|
298
|
+
label: label,
|
|
299
|
+
startIcon: startIcon,
|
|
300
|
+
endIcon: endIcon,
|
|
301
|
+
statusLabel: statusLabel,
|
|
302
|
+
severity: severity
|
|
303
|
+
})
|
|
304
|
+
}) : _jsx(Link, {
|
|
305
|
+
href: href,
|
|
306
|
+
target: target,
|
|
307
|
+
onClick: onClick,
|
|
308
|
+
children: _jsx(SideNavItemLinkContent, {
|
|
309
|
+
label: label,
|
|
310
|
+
startIcon: startIcon,
|
|
311
|
+
endIcon: endIcon,
|
|
312
|
+
statusLabel: statusLabel,
|
|
313
|
+
severity: severity
|
|
314
|
+
})
|
|
315
|
+
})
|
|
316
|
+
}, id);
|
|
317
|
+
}, [id, label, href, target, startIcon, severity, statusLabel, endIcon, onClick, isSelected, isDisabled, NavItemContentClickContainer, sideNavItemContentKeyHandler, odysseyDesignTokens]);
|
|
318
|
+
return sideNavItemContent;
|
|
319
|
+
};
|
|
320
|
+
const SideNavFooterContent = footerItems => {
|
|
321
|
+
const odysseyDesignTokens = useOdysseyDesignTokens();
|
|
322
|
+
const footerContent = useMemo(() => {
|
|
323
|
+
return footerItems?.map((item, index) => _jsxs(Box, {
|
|
324
|
+
sx: {
|
|
325
|
+
display: "flex"
|
|
326
|
+
},
|
|
327
|
+
children: [item.href ? _jsx(Link, {
|
|
328
|
+
href: item.href,
|
|
329
|
+
children: item.label
|
|
330
|
+
}, item.id) : _jsx(Box, {
|
|
331
|
+
component: "span",
|
|
332
|
+
children: item.label
|
|
333
|
+
}, item.id), index < footerItems.length - 1 && _jsx(Box, {
|
|
334
|
+
sx: {
|
|
335
|
+
marginLeft: odysseyDesignTokens.Spacing4,
|
|
336
|
+
marginRight: odysseyDesignTokens.Spacing4,
|
|
337
|
+
color: odysseyDesignTokens.HueNeutral300
|
|
338
|
+
},
|
|
339
|
+
children: "|"
|
|
340
|
+
}, `${item.id}-separator`)]
|
|
341
|
+
}, `${item.id}-wrapper`));
|
|
342
|
+
}, [footerItems, odysseyDesignTokens]);
|
|
343
|
+
return footerContent;
|
|
344
|
+
};
|
|
345
|
+
const SideNav = ({
|
|
346
|
+
navHeaderText,
|
|
347
|
+
isCollapsible,
|
|
348
|
+
onCollapse,
|
|
349
|
+
onExpand,
|
|
350
|
+
sideNavItems,
|
|
351
|
+
footerItems
|
|
352
|
+
}) => {
|
|
353
|
+
const [isSideNavCollapsed, setSideNavCollapsed] = useState(false);
|
|
354
|
+
const odysseyDesignTokens = useOdysseyDesignTokens();
|
|
355
|
+
const processedSideNavItems = useMemo(() => sideNavItems.map(item => ({
|
|
356
|
+
...item,
|
|
357
|
+
children: item.children?.map(childProps => _jsx(SideNavItemContent, {
|
|
358
|
+
...childProps
|
|
359
|
+
}, childProps.id))
|
|
360
|
+
})), [sideNavItems]);
|
|
361
|
+
const sideNavCollapseHandler = useCallback(() => {
|
|
362
|
+
setSideNavCollapsed(!isSideNavCollapsed);
|
|
363
|
+
onCollapse?.();
|
|
364
|
+
}, [isSideNavCollapsed, setSideNavCollapsed, onCollapse]);
|
|
365
|
+
const sideNavExpandClickHandler = useCallback(() => {
|
|
366
|
+
setSideNavCollapsed(!isSideNavCollapsed);
|
|
367
|
+
onExpand?.();
|
|
368
|
+
}, [isSideNavCollapsed, setSideNavCollapsed, onExpand]);
|
|
369
|
+
const sideNavExpandKeyHandler = useCallback(event => {
|
|
370
|
+
if (event?.key === "Enter" || event?.code === "Space") {
|
|
371
|
+
event.preventDefault();
|
|
372
|
+
setSideNavCollapsed(!isSideNavCollapsed);
|
|
373
|
+
onExpand?.();
|
|
374
|
+
}
|
|
375
|
+
}, [isSideNavCollapsed, setSideNavCollapsed, onExpand]);
|
|
376
|
+
const sideNavStyles = useMemo(() => ({
|
|
377
|
+
display: "flex",
|
|
378
|
+
height: "100vh"
|
|
379
|
+
}), []);
|
|
380
|
+
const sideNavHeaderContainerStyles = useMemo(() => ({
|
|
381
|
+
position: "sticky",
|
|
382
|
+
top: 0
|
|
383
|
+
}), []);
|
|
384
|
+
const sideNavListContainerStyles = useMemo(() => ({
|
|
385
|
+
flex: 1,
|
|
386
|
+
overflowY: "auto"
|
|
387
|
+
}), []);
|
|
388
|
+
const sideNavFooterContainerStyles = useMemo(() => ({
|
|
389
|
+
position: "sticky",
|
|
390
|
+
bottom: 0,
|
|
391
|
+
paddingTop: odysseyDesignTokens.Spacing2
|
|
392
|
+
}), [odysseyDesignTokens]);
|
|
393
|
+
const expandLeftIconStyles = useMemo(() => ({
|
|
394
|
+
fontSize: "1em",
|
|
395
|
+
margin: `0 ${odysseyDesignTokens.Spacing1}`
|
|
396
|
+
}), [odysseyDesignTokens]);
|
|
397
|
+
return _jsxs(Box, {
|
|
398
|
+
sx: sideNavStyles,
|
|
399
|
+
children: [_jsx(SideNavCollapsedContainer, {
|
|
400
|
+
tabIndex: 0,
|
|
401
|
+
role: "button",
|
|
402
|
+
odysseyDesignTokens: odysseyDesignTokens,
|
|
403
|
+
isSideNavCollapsed: isSideNavCollapsed,
|
|
404
|
+
onClick: sideNavExpandClickHandler,
|
|
405
|
+
onKeyDown: sideNavExpandKeyHandler,
|
|
406
|
+
"data-testid": "collapsed-region",
|
|
407
|
+
"data-aria-label": "expand side navigation",
|
|
408
|
+
children: _jsx(ExpandLeftIcon, {
|
|
409
|
+
sx: expandLeftIconStyles
|
|
410
|
+
})
|
|
411
|
+
}), _jsxs(SideNavExpandContainer, {
|
|
412
|
+
odysseyDesignTokens: odysseyDesignTokens,
|
|
413
|
+
isSideNavCollapsed: isSideNavCollapsed,
|
|
414
|
+
"data-testid": "expanded-region",
|
|
415
|
+
children: [_jsx(Box, {
|
|
416
|
+
sx: sideNavHeaderContainerStyles,
|
|
417
|
+
children: _jsx(SideNavHeader, {
|
|
418
|
+
navHeaderText: navHeaderText,
|
|
419
|
+
isCollapsible: isCollapsible,
|
|
420
|
+
onCollapse: sideNavCollapseHandler
|
|
421
|
+
})
|
|
422
|
+
}), _jsx(Box, {
|
|
423
|
+
sx: sideNavListContainerStyles,
|
|
424
|
+
children: _jsx(SideNavListContainer, {
|
|
425
|
+
children: processedSideNavItems?.map(item => {
|
|
426
|
+
const {
|
|
427
|
+
id,
|
|
428
|
+
label,
|
|
429
|
+
isSectionHeader,
|
|
430
|
+
startIcon,
|
|
431
|
+
children,
|
|
432
|
+
isDefaultExpanded,
|
|
433
|
+
isDisabled,
|
|
434
|
+
isExpanded
|
|
435
|
+
} = item;
|
|
436
|
+
if (isSectionHeader) {
|
|
437
|
+
return _jsx(SectionHeader, {
|
|
438
|
+
id: id,
|
|
439
|
+
odysseyDesignTokens: odysseyDesignTokens,
|
|
440
|
+
children: label
|
|
441
|
+
}, id);
|
|
442
|
+
} else if (children) {
|
|
443
|
+
return _jsx(SideNavListItemContainer, {
|
|
444
|
+
id: id,
|
|
445
|
+
odysseyDesignTokens: odysseyDesignTokens,
|
|
446
|
+
children: _jsx(NavAccordion, {
|
|
447
|
+
label: label,
|
|
448
|
+
isDefaultExpanded: isDefaultExpanded,
|
|
449
|
+
isExpanded: isExpanded,
|
|
450
|
+
startIcon: startIcon,
|
|
451
|
+
isDisabled: isDisabled,
|
|
452
|
+
children: _jsx(SideNavListContainer, {
|
|
453
|
+
id: `${id}-list`,
|
|
454
|
+
children: children
|
|
455
|
+
})
|
|
456
|
+
})
|
|
457
|
+
}, id);
|
|
458
|
+
} else {
|
|
459
|
+
return _jsx(SideNavItemContent, {
|
|
460
|
+
...item
|
|
461
|
+
}, item.id);
|
|
462
|
+
}
|
|
463
|
+
})
|
|
464
|
+
})
|
|
465
|
+
}), footerItems && _jsx(Box, {
|
|
466
|
+
sx: sideNavFooterContainerStyles,
|
|
467
|
+
children: _jsx(SideNavFooterContainer, {
|
|
468
|
+
odysseyDesignTokens: odysseyDesignTokens,
|
|
469
|
+
children: SideNavFooterContent(footerItems)
|
|
470
|
+
})
|
|
471
|
+
})]
|
|
472
|
+
})]
|
|
473
|
+
});
|
|
474
|
+
};
|
|
475
|
+
const MemoizedSideNav = memo(SideNav);
|
|
476
|
+
MemoizedSideNav.displayName = "SideNav";
|
|
477
|
+
export { MemoizedSideNav as SideNav };
|
|
478
|
+
//# sourceMappingURL=SideNav.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SideNav.js","names":["styled","memo","useMemo","useState","useCallback","Box","Button","CollapseLeftIcon","ExpandLeftIcon","Link","NavAccordion","useOdysseyDesignTokens","Status","Heading6","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","SideNavCollapsedContainer","shouldForwardProp","prop","odysseyDesignTokens","isSideNavCollapsed","backgroundColor","HueNeutral300","paddingTop","Spacing5","cursor","width","opacity","visibility","transitionProperty","transitionDuration","TransitionDurationMain","transitionTimingFunction","TransitionTimingMain","SideNavExpandContainer","HueNeutralWhite","flexDirection","display","SideNavHeaderContainer","justifyContent","alignItems","paddingLeft","Spacing4","paddingRight","Spacing3","paddingBottom","CollapseIcon","onClick","collapseButtonStyles","height","Spacing6","color","HueNeutral400","sx","children","tabIndex","variant","startIcon","ariaLabel","SideNavHeader","navHeaderText","isCollapsible","onCollapse","sideNavHeaderStyles","marginTop","Spacing2","SideNavListContainer","ul","padding","listStyle","listStyleType","SectionHeader","fontSize","TypographySizeOverline","fontWeight","TypographyWeightHeadingBold","HueNeutral600","textTransform","SideNavItemLabelContainer","isIconVisible","flexWrap","TypographyScale0","TypographyWeightHeading","marginLeft","TypographyColorHeading","textDecoration","SideNavListItemContainer","isSelected","isDisabled","pointerEvents","HueNeutral50","margin","Spacing1","marginBottom","minHeight","outlineOffset","borderRadius","outlineWidth","FocusOutlineWidthMain","SideNavFooterContainer","SideNavItemLinkContent","label","endIcon","severity","statusLabel","sideNavItemContentStyles","Boolean","SideNavItemContent","id","href","target","NavItemContentClickContainer","TypographyColorDisabled","outlineColor","FocusOutlineColorPrimary","outlineStyle","FocusOutlineStyle","sideNavItemContentKeyHandler","event","key","preventDefault","sideNavItemContent","disabled","role","onKeyDown","SideNavFooterContent","footerItems","footerContent","map","item","index","component","length","marginRight","SideNav","onExpand","sideNavItems","setSideNavCollapsed","processedSideNavItems","childProps","sideNavCollapseHandler","sideNavExpandClickHandler","sideNavExpandKeyHandler","code","sideNavStyles","sideNavHeaderContainerStyles","position","top","sideNavListContainerStyles","flex","overflowY","sideNavFooterContainerStyles","bottom","expandLeftIconStyles","isSectionHeader","isDefaultExpanded","isExpanded","MemoizedSideNav","displayName"],"sources":["../../src/labs/SideNav.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled from \"@emotion/styled\";\nimport {\n memo,\n useMemo,\n useState,\n ReactElement,\n ReactNode,\n useCallback,\n KeyboardEvent,\n} from \"react\";\n\nimport { Box } from \"../Box\";\nimport { Button } from \"../Button\";\nimport type { HtmlProps } from \"../HtmlProps\";\nimport { CollapseLeftIcon, ExpandLeftIcon } from \"../icons.generated\";\nimport { Link } from \"../Link\";\nimport { NavAccordion } from \"./NavAccordion\";\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"../OdysseyDesignTokensContext\";\nimport { Status, statusSeverityValues } from \"../Status\";\nimport { Heading6 } from \"../Typography\";\n\nexport type SideNavItem = {\n id: string;\n label: string;\n /**\n * The icon element to display at the end of the Nav Item\n */\n endIcon?: ReactElement;\n /**\n * Whether the item is disabled. When set to true the nav item is set to Disabled color,\n * the link/item is not clickable, and item with children is not expandable.\n */\n isDisabled?: boolean;\n /**\n * Whether the item is active/selected\n */\n isSelected?: boolean;\n /**\n * Event fired when the nav item is clicked\n */\n onClick?(): void;\n /**\n * The status element to display after the label\n */\n severity?: (typeof statusSeverityValues)[number];\n /**\n * The icon element to display at the start of the Nav Item\n */\n startIcon?: ReactElement;\n /**\n * The label to display inside the status\n */\n statusLabel?: string;\n /**\n * The link target prop. e.g., \"_blank\"\n */\n target?: string;\n} & (\n | {\n /**\n * Determines if the side nav item is a section header\n */\n isSectionHeader: true;\n href?: never;\n children?: never;\n isDefaultExpanded?: never;\n isExpanded?: never;\n }\n | {\n /**\n * link added to the nav item. if it is undefined, static text will be displayed.\n * fires onClick event when it is passed\n */\n href: string;\n children?: never;\n isSectionHeader?: never;\n isDefaultExpanded?: never;\n isExpanded?: never;\n }\n | {\n /**\n * An array of side nav items to be displayed as children within Accordion\n */\n children?: SideNavItem[];\n /**\n * Whether the accordion (nav item with children) is expanded by default\n */\n isDefaultExpanded?: boolean;\n /**\n * If true, expands the accordion, otherwise collapse it.\n * Setting this prop enables control over the accordion.\n */\n isExpanded?: boolean;\n isSectionHeader?: never;\n href?: never;\n }\n);\n\nexport type SideNavFooterItem = {\n href?: string;\n id: string;\n label: string;\n};\n\nexport type SideNavProps = {\n /**\n * Side Nav header text that is usually reserved to show the App name\n */\n navHeaderText: string;\n /**\n * Determines whether the side nav is collapsible\n */\n isCollapsible?: boolean;\n /**\n * Footer items in the side nav\n */\n footerItems?: SideNavFooterItem[];\n /**\n * Triggers when the side nav is collapsed\n */\n onCollapse?(): void;\n /**\n * Triggers when the side nav is expanded\n */\n onExpand?(): void;\n /**\n * Nav items in the side nav\n */\n sideNavItems: SideNavItem[];\n} & Pick<HtmlProps, \"testId\">;\n\nconst SideNavCollapsedContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" && prop !== \"isSideNavCollapsed\",\n})(\n ({\n odysseyDesignTokens,\n isSideNavCollapsed,\n }: {\n odysseyDesignTokens: DesignTokens;\n isSideNavCollapsed: boolean;\n }) => ({\n backgroundColor: odysseyDesignTokens.HueNeutral300,\n paddingTop: odysseyDesignTokens.Spacing5,\n cursor: \"pointer\",\n width: isSideNavCollapsed ? \"auto\" : 0,\n opacity: isSideNavCollapsed ? 1 : 0,\n visibility: isSideNavCollapsed ? \"visible\" : \"hidden\",\n transitionProperty: \"opacity\",\n transitionDuration: odysseyDesignTokens.TransitionDurationMain,\n transitionTimingFunction: odysseyDesignTokens.TransitionTimingMain,\n }),\n);\n\nconst SideNavExpandContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" && prop !== \"isSideNavCollapsed\",\n})(\n ({\n odysseyDesignTokens,\n isSideNavCollapsed,\n }: {\n odysseyDesignTokens: DesignTokens;\n isSideNavCollapsed: boolean;\n }) => ({\n backgroundColor: odysseyDesignTokens.HueNeutralWhite,\n flexDirection: \"column\",\n display: \"flex\",\n opacity: isSideNavCollapsed ? 0 : 1,\n visibility: isSideNavCollapsed ? \"hidden\" : \"visible\",\n width: isSideNavCollapsed ? \"0\" : \"100%\",\n transitionProperty: \"opacity, width\",\n transitionDuration: odysseyDesignTokens.TransitionDurationMain,\n transitionTimingFunction: odysseyDesignTokens.TransitionTimingMain,\n }),\n);\n\nconst SideNavHeaderContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})(({ odysseyDesignTokens }: { odysseyDesignTokens: DesignTokens }) => ({\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n paddingLeft: odysseyDesignTokens.Spacing4,\n paddingRight: odysseyDesignTokens.Spacing4,\n paddingTop: odysseyDesignTokens.Spacing3,\n paddingBottom: odysseyDesignTokens.Spacing3,\n}));\n\nconst CollapseIcon = ({ onClick }: { onClick?(): void }): ReactElement => {\n const odysseyDesignTokens = useOdysseyDesignTokens();\n\n const collapseButtonStyles = useMemo(\n () => ({\n \"& > button\": {\n height: odysseyDesignTokens.Spacing6,\n width: odysseyDesignTokens.Spacing6,\n color: odysseyDesignTokens.HueNeutral400,\n },\n }),\n [odysseyDesignTokens],\n );\n\n return (\n <Box sx={collapseButtonStyles}>\n <Button\n tabIndex={0}\n variant=\"secondary\"\n onClick={onClick}\n startIcon={<CollapseLeftIcon />}\n ariaLabel=\"collapse side navigation\"\n />\n </Box>\n );\n};\n\nconst SideNavHeader = ({\n navHeaderText,\n isCollapsible,\n onCollapse,\n}: Pick<\n SideNavProps,\n \"navHeaderText\" | \"isCollapsible\" | \"onCollapse\"\n>): ReactNode => {\n const odysseyDesignTokens = useOdysseyDesignTokens();\n\n const sideNavHeaderStyles = useMemo(\n () => ({\n marginTop: odysseyDesignTokens.Spacing2,\n }),\n [odysseyDesignTokens],\n );\n\n return (\n <SideNavHeaderContainer odysseyDesignTokens={odysseyDesignTokens}>\n <Box sx={sideNavHeaderStyles}>\n <Heading6>{navHeaderText}</Heading6>\n </Box>\n {isCollapsible && <CollapseIcon onClick={onCollapse} />}\n </SideNavHeaderContainer>\n );\n};\n\nconst SideNavListContainer = styled.ul({\n padding: 0,\n listStyle: \"none\",\n listStyleType: \"none\",\n});\n\nconst SectionHeader = styled(\"li\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})(({ odysseyDesignTokens }: { odysseyDesignTokens: DesignTokens }) => ({\n fontSize: odysseyDesignTokens.TypographySizeOverline,\n fontWeight: odysseyDesignTokens.TypographyWeightHeadingBold,\n color: odysseyDesignTokens.HueNeutral600,\n paddingTop: odysseyDesignTokens.Spacing3,\n paddingBottom: odysseyDesignTokens.Spacing3,\n paddingLeft: odysseyDesignTokens.Spacing4,\n textTransform: \"uppercase\",\n}));\n\nconst SideNavItemLabelContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" && prop !== \"isIconVisible\",\n})<{\n odysseyDesignTokens: DesignTokens;\n isIconVisible: boolean;\n}>(({ odysseyDesignTokens, isIconVisible }) => ({\n width: \"100%\",\n display: \"flex\",\n flexWrap: \"wrap\",\n alignItems: \"center\",\n fontSize: odysseyDesignTokens.TypographyScale0,\n fontWeight: odysseyDesignTokens.TypographyWeightHeading,\n marginLeft: isIconVisible ? odysseyDesignTokens.Spacing2 : 0,\n \"& a\": {\n color: `${odysseyDesignTokens.TypographyColorHeading} !important`,\n fontSize: odysseyDesignTokens.TypographyScale0,\n },\n \"& a:hover\": {\n textDecoration: \"none\",\n cursor: \"pointer\",\n },\n}));\n\nconst SideNavListItemContainer = styled(\"li\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" &&\n prop !== \"isSelected\" &&\n prop !== \"isDisabled\",\n})<{\n odysseyDesignTokens: DesignTokens;\n isSelected?: boolean;\n disabled?: boolean;\n isDisabled?: boolean;\n}>(({ odysseyDesignTokens, isSelected, isDisabled }) => ({\n display: \"flex\",\n alignItems: \"center\",\n cursor: isDisabled ? \"default\" : \"pointer\",\n pointerEvents: isDisabled ? \"none\" : \"auto\",\n backgroundColor: isSelected ? odysseyDesignTokens.HueNeutral50 : \"unset\",\n margin: `${odysseyDesignTokens.Spacing1} 0`,\n \"&:last-child\": {\n marginBottom: odysseyDesignTokens.Spacing2,\n },\n \"& a\": {\n display: \"flex\",\n alignItems: \"center\",\n width: \"100%\",\n minHeight: \"48px\",\n padding: `${odysseyDesignTokens.Spacing3} ${odysseyDesignTokens.Spacing4}`,\n color: `${odysseyDesignTokens.TypographyColorHeading} !important`,\n pointerEvents: isDisabled ? \"none\" : \"auto\",\n },\n \"& a:hover\": {\n textDecoration: \"none\",\n cursor: isDisabled ? \"default\" : \"pointer\",\n backgroundColor: !isDisabled ? odysseyDesignTokens.HueNeutral50 : \"inherit\",\n },\n \"& a:focus-visible\": {\n outlineOffset: 0,\n borderRadius: 0,\n outlineWidth: odysseyDesignTokens.FocusOutlineWidthMain,\n backgroundColor: !isDisabled ? odysseyDesignTokens.HueNeutral50 : \"inherit\",\n },\n}));\n\nconst SideNavFooterContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})(({ odysseyDesignTokens }: { odysseyDesignTokens: DesignTokens }) => ({\n paddingTop: odysseyDesignTokens.Spacing2,\n paddingBottom: odysseyDesignTokens.Spacing2,\n display: \"flex\",\n justifyContent: \"center\",\n flexWrap: \"wrap\",\n alignItems: \"center\",\n fontSize: odysseyDesignTokens.TypographySizeOverline,\n \"& a\": {\n color: `${odysseyDesignTokens.TypographyColorHeading} !important`,\n },\n \"& a:hover\": {\n textDecoration: \"none\",\n },\n \"& a:visited\": {\n color: odysseyDesignTokens.TypographyColorHeading,\n },\n}));\n\nconst SideNavItemLinkContent = ({\n label,\n startIcon,\n endIcon,\n severity,\n statusLabel,\n}: Pick<\n SideNavItem,\n \"label\" | \"startIcon\" | \"endIcon\" | \"severity\" | \"statusLabel\"\n>): ReactNode => {\n const odysseyDesignTokens = useOdysseyDesignTokens();\n\n const sideNavItemContentStyles = useMemo(\n () => ({\n marginLeft: odysseyDesignTokens.Spacing2,\n }),\n [odysseyDesignTokens],\n );\n\n return (\n <>\n {startIcon && startIcon}\n <SideNavItemLabelContainer\n odysseyDesignTokens={odysseyDesignTokens}\n isIconVisible={Boolean(startIcon)}\n >\n {label}\n {severity && (\n <Box sx={sideNavItemContentStyles}>\n <Status severity={severity} label={statusLabel || \"\"} />\n </Box>\n )}\n </SideNavItemLabelContainer>\n {endIcon && endIcon}\n </>\n );\n};\n\nconst SideNavItemContent = ({\n id,\n label,\n href,\n target,\n startIcon,\n severity,\n statusLabel,\n endIcon,\n onClick,\n isSelected,\n isDisabled,\n}: Pick<\n SideNavItem,\n | \"id\"\n | \"label\"\n | \"href\"\n | \"target\"\n | \"startIcon\"\n | \"severity\"\n | \"statusLabel\"\n | \"endIcon\"\n | \"onClick\"\n | \"isSelected\"\n | \"isDisabled\"\n>) => {\n const odysseyDesignTokens = useOdysseyDesignTokens();\n\n const NavItemContentClickContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n })(() => ({\n display: \"flex\",\n alignItems: \"center\",\n width: \"100%\",\n minHeight: \"48px\",\n padding: `${odysseyDesignTokens.Spacing3} ${odysseyDesignTokens.Spacing4}`,\n color: `${isDisabled ? odysseyDesignTokens.TypographyColorDisabled : odysseyDesignTokens.TypographyColorHeading} !important`,\n \"&:focus-visible\": {\n borderRadius: 0,\n outlineColor: odysseyDesignTokens.FocusOutlineColorPrimary,\n outlineStyle: odysseyDesignTokens.FocusOutlineStyle,\n outlineWidth: odysseyDesignTokens.FocusOutlineWidthMain,\n backgroundColor: odysseyDesignTokens.HueNeutral50,\n textDecoration: \"none\",\n },\n }));\n\n const sideNavItemContentKeyHandler = useCallback(\n (event: KeyboardEvent<HTMLDivElement>) => {\n if (event?.key === \"Enter\") {\n event.preventDefault();\n onClick?.();\n }\n },\n [onClick],\n );\n\n const sideNavItemContent = useMemo(() => {\n return (\n <SideNavListItemContainer\n id={id}\n key={id}\n disabled={isDisabled}\n aria-disabled={isDisabled}\n isDisabled={isDisabled}\n isSelected={isSelected}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n {\n // Use Link for nav items with links and div for disabled or non-link items\n isDisabled ? (\n <NavItemContentClickContainer>\n <SideNavItemLinkContent\n label={label}\n startIcon={startIcon}\n endIcon={endIcon}\n statusLabel={statusLabel}\n severity={severity}\n />\n </NavItemContentClickContainer>\n ) : !href ? (\n <NavItemContentClickContainer\n role=\"button\"\n tabIndex={0}\n onClick={onClick}\n onKeyDown={sideNavItemContentKeyHandler}\n >\n <SideNavItemLinkContent\n label={label}\n startIcon={startIcon}\n endIcon={endIcon}\n statusLabel={statusLabel}\n severity={severity}\n />\n </NavItemContentClickContainer>\n ) : (\n <Link href={href} target={target} onClick={onClick}>\n <SideNavItemLinkContent\n label={label}\n startIcon={startIcon}\n endIcon={endIcon}\n statusLabel={statusLabel}\n severity={severity}\n />\n </Link>\n )\n }\n </SideNavListItemContainer>\n );\n }, [\n id,\n label,\n href,\n target,\n startIcon,\n severity,\n statusLabel,\n endIcon,\n onClick,\n isSelected,\n isDisabled,\n NavItemContentClickContainer,\n sideNavItemContentKeyHandler,\n odysseyDesignTokens,\n ]);\n\n return sideNavItemContent;\n};\n\nconst SideNavFooterContent = (footerItems: SideNavFooterItem[]): ReactNode => {\n const odysseyDesignTokens = useOdysseyDesignTokens();\n\n const footerContent = useMemo(() => {\n return footerItems?.map((item, index) => (\n <Box\n key={`${item.id}-wrapper`}\n sx={{\n display: \"flex\",\n }}\n >\n {item.href ? (\n <Link key={item.id} href={item.href}>\n {item.label}\n </Link>\n ) : (\n <Box component=\"span\" key={item.id}>\n {item.label}\n </Box>\n )}\n {index < footerItems.length - 1 && (\n <Box\n key={`${item.id}-separator`}\n sx={{\n marginLeft: odysseyDesignTokens.Spacing4,\n marginRight: odysseyDesignTokens.Spacing4,\n color: odysseyDesignTokens.HueNeutral300,\n }}\n >\n |\n </Box>\n )}\n </Box>\n ));\n }, [footerItems, odysseyDesignTokens]);\n\n return footerContent;\n};\n\nconst SideNav = ({\n navHeaderText,\n isCollapsible,\n onCollapse,\n onExpand,\n sideNavItems,\n footerItems,\n}: SideNavProps) => {\n const [isSideNavCollapsed, setSideNavCollapsed] = useState(false);\n const odysseyDesignTokens = useOdysseyDesignTokens();\n\n const processedSideNavItems = useMemo(\n () =>\n sideNavItems.map((item) => ({\n ...item,\n children: item.children?.map((childProps) => (\n <SideNavItemContent key={childProps.id} {...childProps} />\n )),\n })),\n [sideNavItems],\n );\n\n const sideNavCollapseHandler = useCallback(() => {\n setSideNavCollapsed(!isSideNavCollapsed);\n onCollapse?.();\n }, [isSideNavCollapsed, setSideNavCollapsed, onCollapse]);\n\n const sideNavExpandClickHandler = useCallback(() => {\n setSideNavCollapsed(!isSideNavCollapsed);\n onExpand?.();\n }, [isSideNavCollapsed, setSideNavCollapsed, onExpand]);\n\n const sideNavExpandKeyHandler = useCallback(\n (event: KeyboardEvent<HTMLDivElement>) => {\n if (event?.key === \"Enter\" || event?.code === \"Space\") {\n event.preventDefault();\n setSideNavCollapsed(!isSideNavCollapsed);\n onExpand?.();\n }\n },\n [isSideNavCollapsed, setSideNavCollapsed, onExpand],\n );\n\n const sideNavStyles = useMemo(\n () => ({\n display: \"flex\",\n height: \"100vh\",\n }),\n [],\n );\n\n const sideNavHeaderContainerStyles = useMemo(\n () => ({\n position: \"sticky\",\n top: 0,\n }),\n [],\n );\n\n const sideNavListContainerStyles = useMemo(\n () => ({\n flex: 1,\n overflowY: \"auto\",\n }),\n [],\n );\n\n const sideNavFooterContainerStyles = useMemo(\n () => ({\n position: \"sticky\",\n bottom: 0,\n paddingTop: odysseyDesignTokens.Spacing2,\n }),\n [odysseyDesignTokens],\n );\n\n const expandLeftIconStyles = useMemo(\n () => ({\n fontSize: \"1em\",\n margin: `0 ${odysseyDesignTokens.Spacing1}`,\n }),\n [odysseyDesignTokens],\n );\n\n return (\n <Box sx={sideNavStyles}>\n <SideNavCollapsedContainer\n tabIndex={0}\n role=\"button\"\n odysseyDesignTokens={odysseyDesignTokens}\n isSideNavCollapsed={isSideNavCollapsed}\n onClick={sideNavExpandClickHandler}\n onKeyDown={sideNavExpandKeyHandler}\n data-testid=\"collapsed-region\"\n data-aria-label=\"expand side navigation\"\n >\n <ExpandLeftIcon sx={expandLeftIconStyles} />\n </SideNavCollapsedContainer>\n <SideNavExpandContainer\n odysseyDesignTokens={odysseyDesignTokens}\n isSideNavCollapsed={isSideNavCollapsed}\n data-testid=\"expanded-region\"\n >\n <Box sx={sideNavHeaderContainerStyles}>\n <SideNavHeader\n navHeaderText={navHeaderText}\n isCollapsible={isCollapsible}\n onCollapse={sideNavCollapseHandler}\n />\n </Box>\n <Box sx={sideNavListContainerStyles}>\n <SideNavListContainer>\n {processedSideNavItems?.map((item) => {\n const {\n id,\n label,\n isSectionHeader,\n startIcon,\n children,\n isDefaultExpanded,\n isDisabled,\n isExpanded,\n } = item;\n\n if (isSectionHeader) {\n return (\n <SectionHeader\n id={id}\n key={id}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n {label}\n </SectionHeader>\n );\n } else if (children) {\n return (\n <SideNavListItemContainer\n id={id}\n key={id}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n <NavAccordion\n label={label}\n isDefaultExpanded={isDefaultExpanded}\n isExpanded={isExpanded}\n startIcon={startIcon}\n isDisabled={isDisabled}\n >\n <SideNavListContainer id={`${id}-list`}>\n {children}\n </SideNavListContainer>\n </NavAccordion>\n </SideNavListItemContainer>\n );\n } else {\n return <SideNavItemContent key={item.id} {...item} />;\n }\n })}\n </SideNavListContainer>\n </Box>\n {footerItems && (\n <Box sx={sideNavFooterContainerStyles}>\n <SideNavFooterContainer odysseyDesignTokens={odysseyDesignTokens}>\n {SideNavFooterContent(footerItems)}\n </SideNavFooterContainer>\n </Box>\n )}\n </SideNavExpandContainer>\n </Box>\n );\n};\n\nconst MemoizedSideNav = memo(SideNav);\nMemoizedSideNav.displayName = \"SideNav\";\n\nexport { MemoizedSideNav as SideNav };\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAOA,MAAM,MAAM,iBAAiB;AACpC,SACEC,IAAI,EACJC,OAAO,EACPC,QAAQ,EAGRC,WAAW,QAEN,OAAO;AAAC,SAENC,GAAG;AAAA,SACHC,MAAM;AAAA,SAENC,gBAAgB,EAAEC,cAAc;AAAA,SAChCC,IAAI;AAAA,SACJC,YAAY;AAAA,SAGnBC,sBAAsB;AAAA,SAEfC,MAAM;AAAA,SACNC,QAAQ;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAAA,SAAAC,QAAA,IAAAC,SAAA;AAgHjB,MAAMC,yBAAyB,GAAGpB,MAAM,CAAC,KAAK,EAAE;EAC9CqB,iBAAiB,EAAGC,IAAI,IACtBA,IAAI,KAAK,qBAAqB,IAAIA,IAAI,KAAK;AAC/C,CAAC,CAAC,CACA,CAAC;EACCC,mBAAmB;EACnBC;AAIF,CAAC,MAAM;EACLC,eAAe,EAAEF,mBAAmB,CAACG,aAAa;EAClDC,UAAU,EAAEJ,mBAAmB,CAACK,QAAQ;EACxCC,MAAM,EAAE,SAAS;EACjBC,KAAK,EAAEN,kBAAkB,GAAG,MAAM,GAAG,CAAC;EACtCO,OAAO,EAAEP,kBAAkB,GAAG,CAAC,GAAG,CAAC;EACnCQ,UAAU,EAAER,kBAAkB,GAAG,SAAS,GAAG,QAAQ;EACrDS,kBAAkB,EAAE,SAAS;EAC7BC,kBAAkB,EAAEX,mBAAmB,CAACY,sBAAsB;EAC9DC,wBAAwB,EAAEb,mBAAmB,CAACc;AAChD,CAAC,CACH,CAAC;AAED,MAAMC,sBAAsB,GAAGtC,MAAM,CAAC,KAAK,EAAE;EAC3CqB,iBAAiB,EAAGC,IAAI,IACtBA,IAAI,KAAK,qBAAqB,IAAIA,IAAI,KAAK;AAC/C,CAAC,CAAC,CACA,CAAC;EACCC,mBAAmB;EACnBC;AAIF,CAAC,MAAM;EACLC,eAAe,EAAEF,mBAAmB,CAACgB,eAAe;EACpDC,aAAa,EAAE,QAAQ;EACvBC,OAAO,EAAE,MAAM;EACfV,OAAO,EAAEP,kBAAkB,GAAG,CAAC,GAAG,CAAC;EACnCQ,UAAU,EAAER,kBAAkB,GAAG,QAAQ,GAAG,SAAS;EACrDM,KAAK,EAAEN,kBAAkB,GAAG,GAAG,GAAG,MAAM;EACxCS,kBAAkB,EAAE,gBAAgB;EACpCC,kBAAkB,EAAEX,mBAAmB,CAACY,sBAAsB;EAC9DC,wBAAwB,EAAEb,mBAAmB,CAACc;AAChD,CAAC,CACH,CAAC;AAED,MAAMK,sBAAsB,GAAG1C,MAAM,CAAC,KAAK,EAAE;EAC3CqB,iBAAiB,EAAGC,IAAI,IAAKA,IAAI,KAAK;AACxC,CAAC,CAAC,CAAC,CAAC;EAAEC;AAA2D,CAAC,MAAM;EACtEkB,OAAO,EAAE,MAAM;EACfE,cAAc,EAAE,eAAe;EAC/BC,UAAU,EAAE,QAAQ;EACpBC,WAAW,EAAEtB,mBAAmB,CAACuB,QAAQ;EACzCC,YAAY,EAAExB,mBAAmB,CAACuB,QAAQ;EAC1CnB,UAAU,EAAEJ,mBAAmB,CAACyB,QAAQ;EACxCC,aAAa,EAAE1B,mBAAmB,CAACyB;AACrC,CAAC,CAAC,CAAC;AAEH,MAAME,YAAY,GAAGA,CAAC;EAAEC;AAA8B,CAAC,KAAmB;EACxE,MAAM5B,mBAAmB,GAAGZ,sBAAsB,CAAC,CAAC;EAEpD,MAAMyC,oBAAoB,GAAGlD,OAAO,CAClC,OAAO;IACL,YAAY,EAAE;MACZmD,MAAM,EAAE9B,mBAAmB,CAAC+B,QAAQ;MACpCxB,KAAK,EAAEP,mBAAmB,CAAC+B,QAAQ;MACnCC,KAAK,EAAEhC,mBAAmB,CAACiC;IAC7B;EACF,CAAC,CAAC,EACF,CAACjC,mBAAmB,CACtB,CAAC;EAED,OACER,IAAA,CAACV,GAAG;IAACoD,EAAE,EAAEL,oBAAqB;IAAAM,QAAA,EAC5B3C,IAAA,CAACT,MAAM;MACLqD,QAAQ,EAAE,CAAE;MACZC,OAAO,EAAC,WAAW;MACnBT,OAAO,EAAEA,OAAQ;MACjBU,SAAS,EAAE9C,IAAA,CAACR,gBAAgB,IAAE,CAAE;MAChCuD,SAAS,EAAC;IAA0B,CACrC;EAAC,CACC,CAAC;AAEV,CAAC;AAED,MAAMC,aAAa,GAAGA,CAAC;EACrBC,aAAa;EACbC,aAAa;EACbC;AAIF,CAAC,KAAgB;EACf,MAAM3C,mBAAmB,GAAGZ,sBAAsB,CAAC,CAAC;EAEpD,MAAMwD,mBAAmB,GAAGjE,OAAO,CACjC,OAAO;IACLkE,SAAS,EAAE7C,mBAAmB,CAAC8C;EACjC,CAAC,CAAC,EACF,CAAC9C,mBAAmB,CACtB,CAAC;EAED,OACEN,KAAA,CAACyB,sBAAsB;IAACnB,mBAAmB,EAAEA,mBAAoB;IAAAmC,QAAA,GAC/D3C,IAAA,CAACV,GAAG;MAACoD,EAAE,EAAEU,mBAAoB;MAAAT,QAAA,EAC3B3C,IAAA,CAACF,QAAQ;QAAA6C,QAAA,EAAEM;MAAa,CAAW;IAAC,CACjC,CAAC,EACLC,aAAa,IAAIlD,IAAA,CAACmC,YAAY;MAACC,OAAO,EAAEe;IAAW,CAAE,CAAC;EAAA,CACjC,CAAC;AAE7B,CAAC;AAED,MAAMI,oBAAoB,GAAGtE,MAAM,CAACuE,EAAE,CAAC;EACrCC,OAAO,EAAE,CAAC;EACVC,SAAS,EAAE,MAAM;EACjBC,aAAa,EAAE;AACjB,CAAC,CAAC;AAEF,MAAMC,aAAa,GAAG3E,MAAM,CAAC,IAAI,EAAE;EACjCqB,iBAAiB,EAAGC,IAAI,IAAKA,IAAI,KAAK;AACxC,CAAC,CAAC,CAAC,CAAC;EAAEC;AAA2D,CAAC,MAAM;EACtEqD,QAAQ,EAAErD,mBAAmB,CAACsD,sBAAsB;EACpDC,UAAU,EAAEvD,mBAAmB,CAACwD,2BAA2B;EAC3DxB,KAAK,EAAEhC,mBAAmB,CAACyD,aAAa;EACxCrD,UAAU,EAAEJ,mBAAmB,CAACyB,QAAQ;EACxCC,aAAa,EAAE1B,mBAAmB,CAACyB,QAAQ;EAC3CH,WAAW,EAAEtB,mBAAmB,CAACuB,QAAQ;EACzCmC,aAAa,EAAE;AACjB,CAAC,CAAC,CAAC;AAEH,MAAMC,yBAAyB,GAAGlF,MAAM,CAAC,KAAK,EAAE;EAC9CqB,iBAAiB,EAAGC,IAAI,IACtBA,IAAI,KAAK,qBAAqB,IAAIA,IAAI,KAAK;AAC/C,CAAC,CAAC,CAGC,CAAC;EAAEC,mBAAmB;EAAE4D;AAAc,CAAC,MAAM;EAC9CrD,KAAK,EAAE,MAAM;EACbW,OAAO,EAAE,MAAM;EACf2C,QAAQ,EAAE,MAAM;EAChBxC,UAAU,EAAE,QAAQ;EACpBgC,QAAQ,EAAErD,mBAAmB,CAAC8D,gBAAgB;EAC9CP,UAAU,EAAEvD,mBAAmB,CAAC+D,uBAAuB;EACvDC,UAAU,EAAEJ,aAAa,GAAG5D,mBAAmB,CAAC8C,QAAQ,GAAG,CAAC;EAC5D,KAAK,EAAE;IACLd,KAAK,EAAG,GAAEhC,mBAAmB,CAACiE,sBAAuB,aAAY;IACjEZ,QAAQ,EAAErD,mBAAmB,CAAC8D;EAChC,CAAC;EACD,WAAW,EAAE;IACXI,cAAc,EAAE,MAAM;IACtB5D,MAAM,EAAE;EACV;AACF,CAAC,CAAC,CAAC;AAEH,MAAM6D,wBAAwB,GAAG1F,MAAM,CAAC,IAAI,EAAE;EAC5CqB,iBAAiB,EAAGC,IAAI,IACtBA,IAAI,KAAK,qBAAqB,IAC9BA,IAAI,KAAK,YAAY,IACrBA,IAAI,KAAK;AACb,CAAC,CAAC,CAKC,CAAC;EAAEC,mBAAmB;EAAEoE,UAAU;EAAEC;AAAW,CAAC,MAAM;EACvDnD,OAAO,EAAE,MAAM;EACfG,UAAU,EAAE,QAAQ;EACpBf,MAAM,EAAE+D,UAAU,GAAG,SAAS,GAAG,SAAS;EAC1CC,aAAa,EAAED,UAAU,GAAG,MAAM,GAAG,MAAM;EAC3CnE,eAAe,EAAEkE,UAAU,GAAGpE,mBAAmB,CAACuE,YAAY,GAAG,OAAO;EACxEC,MAAM,EAAG,GAAExE,mBAAmB,CAACyE,QAAS,IAAG;EAC3C,cAAc,EAAE;IACdC,YAAY,EAAE1E,mBAAmB,CAAC8C;EACpC,CAAC;EACD,KAAK,EAAE;IACL5B,OAAO,EAAE,MAAM;IACfG,UAAU,EAAE,QAAQ;IACpBd,KAAK,EAAE,MAAM;IACboE,SAAS,EAAE,MAAM;IACjB1B,OAAO,EAAG,GAAEjD,mBAAmB,CAACyB,QAAS,IAAGzB,mBAAmB,CAACuB,QAAS,EAAC;IAC1ES,KAAK,EAAG,GAAEhC,mBAAmB,CAACiE,sBAAuB,aAAY;IACjEK,aAAa,EAAED,UAAU,GAAG,MAAM,GAAG;EACvC,CAAC;EACD,WAAW,EAAE;IACXH,cAAc,EAAE,MAAM;IACtB5D,MAAM,EAAE+D,UAAU,GAAG,SAAS,GAAG,SAAS;IAC1CnE,eAAe,EAAE,CAACmE,UAAU,GAAGrE,mBAAmB,CAACuE,YAAY,GAAG;EACpE,CAAC;EACD,mBAAmB,EAAE;IACnBK,aAAa,EAAE,CAAC;IAChBC,YAAY,EAAE,CAAC;IACfC,YAAY,EAAE9E,mBAAmB,CAAC+E,qBAAqB;IACvD7E,eAAe,EAAE,CAACmE,UAAU,GAAGrE,mBAAmB,CAACuE,YAAY,GAAG;EACpE;AACF,CAAC,CAAC,CAAC;AAEH,MAAMS,sBAAsB,GAAGvG,MAAM,CAAC,KAAK,EAAE;EAC3CqB,iBAAiB,EAAGC,IAAI,IAAKA,IAAI,KAAK;AACxC,CAAC,CAAC,CAAC,CAAC;EAAEC;AAA2D,CAAC,MAAM;EACtEI,UAAU,EAAEJ,mBAAmB,CAAC8C,QAAQ;EACxCpB,aAAa,EAAE1B,mBAAmB,CAAC8C,QAAQ;EAC3C5B,OAAO,EAAE,MAAM;EACfE,cAAc,EAAE,QAAQ;EACxByC,QAAQ,EAAE,MAAM;EAChBxC,UAAU,EAAE,QAAQ;EACpBgC,QAAQ,EAAErD,mBAAmB,CAACsD,sBAAsB;EACpD,KAAK,EAAE;IACLtB,KAAK,EAAG,GAAEhC,mBAAmB,CAACiE,sBAAuB;EACvD,CAAC;EACD,WAAW,EAAE;IACXC,cAAc,EAAE;EAClB,CAAC;EACD,aAAa,EAAE;IACblC,KAAK,EAAEhC,mBAAmB,CAACiE;EAC7B;AACF,CAAC,CAAC,CAAC;AAEH,MAAMgB,sBAAsB,GAAGA,CAAC;EAC9BC,KAAK;EACL5C,SAAS;EACT6C,OAAO;EACPC,QAAQ;EACRC;AAIF,CAAC,KAAgB;EACf,MAAMrF,mBAAmB,GAAGZ,sBAAsB,CAAC,CAAC;EAEpD,MAAMkG,wBAAwB,GAAG3G,OAAO,CACtC,OAAO;IACLqF,UAAU,EAAEhE,mBAAmB,CAAC8C;EAClC,CAAC,CAAC,EACF,CAAC9C,mBAAmB,CACtB,CAAC;EAED,OACEN,KAAA,CAAAE,SAAA;IAAAuC,QAAA,GACGG,SAAS,IAAIA,SAAS,EACvB5C,KAAA,CAACiE,yBAAyB;MACxB3D,mBAAmB,EAAEA,mBAAoB;MACzC4D,aAAa,EAAE2B,OAAO,CAACjD,SAAS,CAAE;MAAAH,QAAA,GAEjC+C,KAAK,EACLE,QAAQ,IACP5F,IAAA,CAACV,GAAG;QAACoD,EAAE,EAAEoD,wBAAyB;QAAAnD,QAAA,EAChC3C,IAAA,CAACH,MAAM;UAAC+F,QAAQ,EAAEA,QAAS;UAACF,KAAK,EAAEG,WAAW,IAAI;QAAG,CAAE;MAAC,CACrD,CACN;IAAA,CACwB,CAAC,EAC3BF,OAAO,IAAIA,OAAO;EAAA,CACnB,CAAC;AAEP,CAAC;AAED,MAAMK,kBAAkB,GAAGA,CAAC;EAC1BC,EAAE;EACFP,KAAK;EACLQ,IAAI;EACJC,MAAM;EACNrD,SAAS;EACT8C,QAAQ;EACRC,WAAW;EACXF,OAAO;EACPvD,OAAO;EACPwC,UAAU;EACVC;AAcF,CAAC,KAAK;EACJ,MAAMrE,mBAAmB,GAAGZ,sBAAsB,CAAC,CAAC;EAEpD,MAAMwG,4BAA4B,GAAGnH,MAAM,CAAC,KAAK,EAAE;IACjDqB,iBAAiB,EAAGC,IAAI,IAAKA,IAAI,KAAK;EACxC,CAAC,CAAC,CAAC,OAAO;IACRmB,OAAO,EAAE,MAAM;IACfG,UAAU,EAAE,QAAQ;IACpBd,KAAK,EAAE,MAAM;IACboE,SAAS,EAAE,MAAM;IACjB1B,OAAO,EAAG,GAAEjD,mBAAmB,CAACyB,QAAS,IAAGzB,mBAAmB,CAACuB,QAAS,EAAC;IAC1ES,KAAK,EAAG,GAAEqC,UAAU,GAAGrE,mBAAmB,CAAC6F,uBAAuB,GAAG7F,mBAAmB,CAACiE,sBAAuB,aAAY;IAC5H,iBAAiB,EAAE;MACjBY,YAAY,EAAE,CAAC;MACfiB,YAAY,EAAE9F,mBAAmB,CAAC+F,wBAAwB;MAC1DC,YAAY,EAAEhG,mBAAmB,CAACiG,iBAAiB;MACnDnB,YAAY,EAAE9E,mBAAmB,CAAC+E,qBAAqB;MACvD7E,eAAe,EAAEF,mBAAmB,CAACuE,YAAY;MACjDL,cAAc,EAAE;IAClB;EACF,CAAC,CAAC,CAAC;EAEH,MAAMgC,4BAA4B,GAAGrH,WAAW,CAC7CsH,KAAoC,IAAK;IACxC,IAAIA,KAAK,EAAEC,GAAG,KAAK,OAAO,EAAE;MAC1BD,KAAK,CAACE,cAAc,CAAC,CAAC;MACtBzE,OAAO,GAAG,CAAC;IACb;EACF,CAAC,EACD,CAACA,OAAO,CACV,CAAC;EAED,MAAM0E,kBAAkB,GAAG3H,OAAO,CAAC,MAAM;IACvC,OACEa,IAAA,CAAC2E,wBAAwB;MACvBsB,EAAE,EAAEA,EAAG;MAEPc,QAAQ,EAAElC,UAAW;MACrB,iBAAeA,UAAW;MAC1BA,UAAU,EAAEA,UAAW;MACvBD,UAAU,EAAEA,UAAW;MACvBpE,mBAAmB,EAAEA,mBAAoB;MAAAmC,QAAA,EAIvCkC,UAAU,GACR7E,IAAA,CAACoG,4BAA4B;QAAAzD,QAAA,EAC3B3C,IAAA,CAACyF,sBAAsB;UACrBC,KAAK,EAAEA,KAAM;UACb5C,SAAS,EAAEA,SAAU;UACrB6C,OAAO,EAAEA,OAAQ;UACjBE,WAAW,EAAEA,WAAY;UACzBD,QAAQ,EAAEA;QAAS,CACpB;MAAC,CAC0B,CAAC,GAC7B,CAACM,IAAI,GACPlG,IAAA,CAACoG,4BAA4B;QAC3BY,IAAI,EAAC,QAAQ;QACbpE,QAAQ,EAAE,CAAE;QACZR,OAAO,EAAEA,OAAQ;QACjB6E,SAAS,EAAEP,4BAA6B;QAAA/D,QAAA,EAExC3C,IAAA,CAACyF,sBAAsB;UACrBC,KAAK,EAAEA,KAAM;UACb5C,SAAS,EAAEA,SAAU;UACrB6C,OAAO,EAAEA,OAAQ;UACjBE,WAAW,EAAEA,WAAY;UACzBD,QAAQ,EAAEA;QAAS,CACpB;MAAC,CAC0B,CAAC,GAE/B5F,IAAA,CAACN,IAAI;QAACwG,IAAI,EAAEA,IAAK;QAACC,MAAM,EAAEA,MAAO;QAAC/D,OAAO,EAAEA,OAAQ;QAAAO,QAAA,EACjD3C,IAAA,CAACyF,sBAAsB;UACrBC,KAAK,EAAEA,KAAM;UACb5C,SAAS,EAAEA,SAAU;UACrB6C,OAAO,EAAEA,OAAQ;UACjBE,WAAW,EAAEA,WAAY;UACzBD,QAAQ,EAAEA;QAAS,CACpB;MAAC,CACE;IACP,GA5CEK,EA8CmB,CAAC;EAE/B,CAAC,EAAE,CACDA,EAAE,EACFP,KAAK,EACLQ,IAAI,EACJC,MAAM,EACNrD,SAAS,EACT8C,QAAQ,EACRC,WAAW,EACXF,OAAO,EACPvD,OAAO,EACPwC,UAAU,EACVC,UAAU,EACVuB,4BAA4B,EAC5BM,4BAA4B,EAC5BlG,mBAAmB,CACpB,CAAC;EAEF,OAAOsG,kBAAkB;AAC3B,CAAC;AAED,MAAMI,oBAAoB,GAAIC,WAAgC,IAAgB;EAC5E,MAAM3G,mBAAmB,GAAGZ,sBAAsB,CAAC,CAAC;EAEpD,MAAMwH,aAAa,GAAGjI,OAAO,CAAC,MAAM;IAClC,OAAOgI,WAAW,EAAEE,GAAG,CAAC,CAACC,IAAI,EAAEC,KAAK,KAClCrH,KAAA,CAACZ,GAAG;MAEFoD,EAAE,EAAE;QACFhB,OAAO,EAAE;MACX,CAAE;MAAAiB,QAAA,GAED2E,IAAI,CAACpB,IAAI,GACRlG,IAAA,CAACN,IAAI;QAAewG,IAAI,EAAEoB,IAAI,CAACpB,IAAK;QAAAvD,QAAA,EACjC2E,IAAI,CAAC5B;MAAK,GADF4B,IAAI,CAACrB,EAEV,CAAC,GAEPjG,IAAA,CAACV,GAAG;QAACkI,SAAS,EAAC,MAAM;QAAA7E,QAAA,EAClB2E,IAAI,CAAC5B;MAAK,GADc4B,IAAI,CAACrB,EAE3B,CACN,EACAsB,KAAK,GAAGJ,WAAW,CAACM,MAAM,GAAG,CAAC,IAC7BzH,IAAA,CAACV,GAAG;QAEFoD,EAAE,EAAE;UACF8B,UAAU,EAAEhE,mBAAmB,CAACuB,QAAQ;UACxC2F,WAAW,EAAElH,mBAAmB,CAACuB,QAAQ;UACzCS,KAAK,EAAEhC,mBAAmB,CAACG;QAC7B,CAAE;QAAAgC,QAAA,EACH;MAED,GARQ,GAAE2E,IAAI,CAACrB,EAAG,YAQb,CACN;IAAA,GAzBK,GAAEqB,IAAI,CAACrB,EAAG,UA0Bb,CACN,CAAC;EACJ,CAAC,EAAE,CAACkB,WAAW,EAAE3G,mBAAmB,CAAC,CAAC;EAEtC,OAAO4G,aAAa;AACtB,CAAC;AAED,MAAMO,OAAO,GAAGA,CAAC;EACf1E,aAAa;EACbC,aAAa;EACbC,UAAU;EACVyE,QAAQ;EACRC,YAAY;EACZV;AACY,CAAC,KAAK;EAClB,MAAM,CAAC1G,kBAAkB,EAAEqH,mBAAmB,CAAC,GAAG1I,QAAQ,CAAC,KAAK,CAAC;EACjE,MAAMoB,mBAAmB,GAAGZ,sBAAsB,CAAC,CAAC;EAEpD,MAAMmI,qBAAqB,GAAG5I,OAAO,CACnC,MACE0I,YAAY,CAACR,GAAG,CAAEC,IAAI,KAAM;IAC1B,GAAGA,IAAI;IACP3E,QAAQ,EAAE2E,IAAI,CAAC3E,QAAQ,EAAE0E,GAAG,CAAEW,UAAU,IACtChI,IAAA,CAACgG,kBAAkB;MAAA,GAAyBgC;IAAU,GAA7BA,UAAU,CAAC/B,EAAqB,CAC1D;EACH,CAAC,CAAC,CAAC,EACL,CAAC4B,YAAY,CACf,CAAC;EAED,MAAMI,sBAAsB,GAAG5I,WAAW,CAAC,MAAM;IAC/CyI,mBAAmB,CAAC,CAACrH,kBAAkB,CAAC;IACxC0C,UAAU,GAAG,CAAC;EAChB,CAAC,EAAE,CAAC1C,kBAAkB,EAAEqH,mBAAmB,EAAE3E,UAAU,CAAC,CAAC;EAEzD,MAAM+E,yBAAyB,GAAG7I,WAAW,CAAC,MAAM;IAClDyI,mBAAmB,CAAC,CAACrH,kBAAkB,CAAC;IACxCmH,QAAQ,GAAG,CAAC;EACd,CAAC,EAAE,CAACnH,kBAAkB,EAAEqH,mBAAmB,EAAEF,QAAQ,CAAC,CAAC;EAEvD,MAAMO,uBAAuB,GAAG9I,WAAW,CACxCsH,KAAoC,IAAK;IACxC,IAAIA,KAAK,EAAEC,GAAG,KAAK,OAAO,IAAID,KAAK,EAAEyB,IAAI,KAAK,OAAO,EAAE;MACrDzB,KAAK,CAACE,cAAc,CAAC,CAAC;MACtBiB,mBAAmB,CAAC,CAACrH,kBAAkB,CAAC;MACxCmH,QAAQ,GAAG,CAAC;IACd;EACF,CAAC,EACD,CAACnH,kBAAkB,EAAEqH,mBAAmB,EAAEF,QAAQ,CACpD,CAAC;EAED,MAAMS,aAAa,GAAGlJ,OAAO,CAC3B,OAAO;IACLuC,OAAO,EAAE,MAAM;IACfY,MAAM,EAAE;EACV,CAAC,CAAC,EACF,EACF,CAAC;EAED,MAAMgG,4BAA4B,GAAGnJ,OAAO,CAC1C,OAAO;IACLoJ,QAAQ,EAAE,QAAQ;IAClBC,GAAG,EAAE;EACP,CAAC,CAAC,EACF,EACF,CAAC;EAED,MAAMC,0BAA0B,GAAGtJ,OAAO,CACxC,OAAO;IACLuJ,IAAI,EAAE,CAAC;IACPC,SAAS,EAAE;EACb,CAAC,CAAC,EACF,EACF,CAAC;EAED,MAAMC,4BAA4B,GAAGzJ,OAAO,CAC1C,OAAO;IACLoJ,QAAQ,EAAE,QAAQ;IAClBM,MAAM,EAAE,CAAC;IACTjI,UAAU,EAAEJ,mBAAmB,CAAC8C;EAClC,CAAC,CAAC,EACF,CAAC9C,mBAAmB,CACtB,CAAC;EAED,MAAMsI,oBAAoB,GAAG3J,OAAO,CAClC,OAAO;IACL0E,QAAQ,EAAE,KAAK;IACfmB,MAAM,EAAG,KAAIxE,mBAAmB,CAACyE,QAAS;EAC5C,CAAC,CAAC,EACF,CAACzE,mBAAmB,CACtB,CAAC;EAED,OACEN,KAAA,CAACZ,GAAG;IAACoD,EAAE,EAAE2F,aAAc;IAAA1F,QAAA,GACrB3C,IAAA,CAACK,yBAAyB;MACxBuC,QAAQ,EAAE,CAAE;MACZoE,IAAI,EAAC,QAAQ;MACbxG,mBAAmB,EAAEA,mBAAoB;MACzCC,kBAAkB,EAAEA,kBAAmB;MACvC2B,OAAO,EAAE8F,yBAA0B;MACnCjB,SAAS,EAAEkB,uBAAwB;MACnC,eAAY,kBAAkB;MAC9B,mBAAgB,wBAAwB;MAAAxF,QAAA,EAExC3C,IAAA,CAACP,cAAc;QAACiD,EAAE,EAAEoG;MAAqB,CAAE;IAAC,CACnB,CAAC,EAC5B5I,KAAA,CAACqB,sBAAsB;MACrBf,mBAAmB,EAAEA,mBAAoB;MACzCC,kBAAkB,EAAEA,kBAAmB;MACvC,eAAY,iBAAiB;MAAAkC,QAAA,GAE7B3C,IAAA,CAACV,GAAG;QAACoD,EAAE,EAAE4F,4BAA6B;QAAA3F,QAAA,EACpC3C,IAAA,CAACgD,aAAa;UACZC,aAAa,EAAEA,aAAc;UAC7BC,aAAa,EAAEA,aAAc;UAC7BC,UAAU,EAAE8E;QAAuB,CACpC;MAAC,CACC,CAAC,EACNjI,IAAA,CAACV,GAAG;QAACoD,EAAE,EAAE+F,0BAA2B;QAAA9F,QAAA,EAClC3C,IAAA,CAACuD,oBAAoB;UAAAZ,QAAA,EAClBoF,qBAAqB,EAAEV,GAAG,CAAEC,IAAI,IAAK;YACpC,MAAM;cACJrB,EAAE;cACFP,KAAK;cACLqD,eAAe;cACfjG,SAAS;cACTH,QAAQ;cACRqG,iBAAiB;cACjBnE,UAAU;cACVoE;YACF,CAAC,GAAG3B,IAAI;YAER,IAAIyB,eAAe,EAAE;cACnB,OACE/I,IAAA,CAAC4D,aAAa;gBACZqC,EAAE,EAAEA,EAAG;gBAEPzF,mBAAmB,EAAEA,mBAAoB;gBAAAmC,QAAA,EAExC+C;cAAK,GAHDO,EAIQ,CAAC;YAEpB,CAAC,MAAM,IAAItD,QAAQ,EAAE;cACnB,OACE3C,IAAA,CAAC2E,wBAAwB;gBACvBsB,EAAE,EAAEA,EAAG;gBAEPzF,mBAAmB,EAAEA,mBAAoB;gBAAAmC,QAAA,EAEzC3C,IAAA,CAACL,YAAY;kBACX+F,KAAK,EAAEA,KAAM;kBACbsD,iBAAiB,EAAEA,iBAAkB;kBACrCC,UAAU,EAAEA,UAAW;kBACvBnG,SAAS,EAAEA,SAAU;kBACrB+B,UAAU,EAAEA,UAAW;kBAAAlC,QAAA,EAEvB3C,IAAA,CAACuD,oBAAoB;oBAAC0C,EAAE,EAAG,GAAEA,EAAG,OAAO;oBAAAtD,QAAA,EACpCA;kBAAQ,CACW;gBAAC,CACX;cAAC,GAbVsD,EAcmB,CAAC;YAE/B,CAAC,MAAM;cACL,OAAOjG,IAAA,CAACgG,kBAAkB;gBAAA,GAAmBsB;cAAI,GAAjBA,IAAI,CAACrB,EAAe,CAAC;YACvD;UACF,CAAC;QAAC,CACkB;MAAC,CACpB,CAAC,EACLkB,WAAW,IACVnH,IAAA,CAACV,GAAG;QAACoD,EAAE,EAAEkG,4BAA6B;QAAAjG,QAAA,EACpC3C,IAAA,CAACwF,sBAAsB;UAAChF,mBAAmB,EAAEA,mBAAoB;UAAAmC,QAAA,EAC9DuE,oBAAoB,CAACC,WAAW;QAAC,CACZ;MAAC,CACtB,CACN;IAAA,CACqB,CAAC;EAAA,CACtB,CAAC;AAEV,CAAC;AAED,MAAM+B,eAAe,GAAGhK,IAAI,CAACyI,OAAO,CAAC;AACrCuB,eAAe,CAACC,WAAW,GAAG,SAAS;AAEvC,SAASD,eAAe,IAAIvB,OAAO"}
|