@okta/odyssey-react-mui 1.45.0 → 1.47.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/dist/cjs/Autocomplete.cjs +3 -33
- package/dist/cjs/Autocomplete.cjs.map +1 -1
- package/dist/cjs/Banner.cjs +2 -2
- package/dist/cjs/Banner.cjs.map +1 -1
- package/dist/cjs/Breadcrumbs.cjs +2 -2
- package/dist/cjs/Breadcrumbs.cjs.map +1 -1
- package/dist/cjs/Callout.cjs +3 -27
- package/dist/cjs/Callout.cjs.map +1 -1
- package/dist/cjs/Card.cjs +2 -2
- package/dist/cjs/Card.cjs.map +1 -1
- package/dist/cjs/Checkbox.cjs +14 -12
- package/dist/cjs/Checkbox.cjs.map +1 -1
- package/dist/cjs/DataTable/DataTable.cjs +2 -2
- package/dist/cjs/DataTable/DataTable.cjs.map +1 -1
- package/dist/cjs/DataTable/DataTableRowActions.cjs +6 -6
- package/dist/cjs/DataTable/DataTableRowActions.cjs.map +1 -1
- package/dist/cjs/DataTable/DataTableSettings.cjs +2 -2
- package/dist/cjs/DataTable/DataTableSettings.cjs.map +1 -1
- package/dist/cjs/DataTable/useRowReordering.cjs +2 -2
- package/dist/cjs/DataTable/useRowReordering.cjs.map +1 -1
- package/dist/cjs/DatePickers/DateField.cjs +2 -2
- package/dist/cjs/DatePickers/DateField.cjs.map +1 -1
- package/dist/cjs/DatePickers/DateFieldActionBar.cjs +2 -2
- package/dist/cjs/DatePickers/DateFieldActionBar.cjs.map +1 -1
- package/dist/cjs/DatePickers/DatePicker.cjs +2 -2
- package/dist/cjs/DatePickers/DatePicker.cjs.map +1 -1
- package/dist/cjs/DatePickers/useDateFieldsTranslations.cjs +2 -2
- package/dist/cjs/DatePickers/useDateFieldsTranslations.cjs.map +1 -1
- package/dist/cjs/DatePickers/useOdysseyDateFields.cjs +2 -2
- package/dist/cjs/DatePickers/useOdysseyDateFields.cjs.map +1 -1
- package/dist/cjs/Dialog.cjs +34 -31
- package/dist/cjs/Dialog.cjs.map +1 -1
- package/dist/cjs/Drawer.cjs +8 -4
- package/dist/cjs/Drawer.cjs.map +1 -1
- package/dist/cjs/Field.cjs +2 -2
- package/dist/cjs/Field.cjs.map +1 -1
- package/dist/cjs/FieldError.cjs +2 -2
- package/dist/cjs/FieldError.cjs.map +1 -1
- package/dist/cjs/FieldLabel.cjs +2 -2
- package/dist/cjs/FieldLabel.cjs.map +1 -1
- package/dist/cjs/FileUploader/FileUploadPreview.cjs +2 -2
- package/dist/cjs/FileUploader/FileUploadPreview.cjs.map +1 -1
- package/dist/cjs/FileUploader/FileUploader.cjs +2 -2
- package/dist/cjs/FileUploader/FileUploader.cjs.map +1 -1
- package/dist/cjs/FullScreenOverlay.cjs +40 -0
- package/dist/cjs/FullScreenOverlay.cjs.map +1 -0
- package/dist/cjs/FullScreenOverlayContext.cjs +72 -0
- package/dist/cjs/FullScreenOverlayContext.cjs.map +1 -0
- package/dist/cjs/OdysseyCacheProvider.cjs +12 -17
- package/dist/cjs/OdysseyCacheProvider.cjs.map +1 -1
- package/dist/cjs/OdysseyProvider.cjs +18 -10
- package/dist/cjs/OdysseyProvider.cjs.map +1 -1
- package/dist/cjs/OdysseyThemeProvider.cjs +27 -16
- package/dist/cjs/OdysseyThemeProvider.cjs.map +1 -1
- package/dist/cjs/OdysseyThemeProviderPropsContext.cjs +44 -0
- package/dist/cjs/OdysseyThemeProviderPropsContext.cjs.map +1 -0
- package/dist/cjs/Pagination/Pagination.cjs +2 -3
- package/dist/cjs/Pagination/Pagination.cjs.map +1 -1
- package/dist/cjs/Pagination/usePagination.cjs +2 -2
- package/dist/cjs/Pagination/usePagination.cjs.map +1 -1
- package/dist/cjs/PasswordField.cjs +2 -2
- package/dist/cjs/PasswordField.cjs.map +1 -1
- package/dist/cjs/Radio.cjs +22 -20
- package/dist/cjs/Radio.cjs.map +1 -1
- package/dist/cjs/SearchField.cjs +2 -2
- package/dist/cjs/SearchField.cjs.map +1 -1
- package/dist/cjs/Select.cjs +1 -37
- package/dist/cjs/Select.cjs.map +1 -1
- package/dist/cjs/Surface.cjs +3 -3
- package/dist/cjs/Surface.cjs.map +1 -1
- package/dist/cjs/Switch.cjs +2 -2
- package/dist/cjs/Switch.cjs.map +1 -1
- package/dist/cjs/Tabs.cjs +1 -21
- package/dist/cjs/Tabs.cjs.map +1 -1
- package/dist/cjs/Tag.cjs +2 -2
- package/dist/cjs/Tag.cjs.map +1 -1
- package/dist/cjs/TextField.cjs +1 -26
- package/dist/cjs/TextField.cjs.map +1 -1
- package/dist/cjs/Toast.cjs +2 -2
- package/dist/cjs/Toast.cjs.map +1 -1
- package/dist/cjs/__internal.cjs +149 -0
- package/dist/cjs/__internal.cjs.map +1 -0
- package/dist/cjs/i18n.generated/i18n.cjs +35 -0
- package/dist/cjs/i18n.generated/i18n.cjs.map +1 -0
- package/dist/cjs/i18n.generated/i18n.resources.cjs +81 -0
- package/dist/cjs/i18n.generated/i18n.resources.cjs.map +1 -0
- package/dist/{esm/shadow-dom/index.js → cjs/i18n.generated/i18n.types.cjs} +9 -4
- package/dist/cjs/i18n.generated/i18n.types.cjs.map +1 -0
- package/dist/cjs/index.cjs +49 -30
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/cjs/labs/DataFilters.cjs +4 -4
- package/dist/cjs/labs/DataFilters.cjs.map +1 -1
- package/dist/cjs/labs/DataTable.cjs +2 -2
- package/dist/cjs/labs/DataTable.cjs.map +1 -1
- package/dist/cjs/labs/DataView/BulkActionsMenu.cjs +2 -2
- package/dist/cjs/labs/DataView/BulkActionsMenu.cjs.map +1 -1
- package/dist/cjs/labs/DataView/DataCard.cjs +2 -2
- package/dist/cjs/labs/DataView/DataCard.cjs.map +1 -1
- package/dist/cjs/labs/DataView/DataView.cjs +2 -2
- package/dist/cjs/labs/DataView/DataView.cjs.map +1 -1
- package/dist/cjs/labs/DataView/LayoutSwitcher.cjs +2 -2
- package/dist/cjs/labs/DataView/LayoutSwitcher.cjs.map +1 -1
- package/dist/cjs/labs/DataView/RowActions.cjs +2 -2
- package/dist/cjs/labs/DataView/RowActions.cjs.map +1 -1
- package/dist/cjs/labs/DataView/TableLayoutContent.cjs +2 -2
- package/dist/cjs/labs/DataView/TableLayoutContent.cjs.map +1 -1
- package/dist/cjs/labs/DataView/TableSettings.cjs +2 -2
- package/dist/cjs/labs/DataView/TableSettings.cjs.map +1 -1
- package/dist/cjs/labs/DataView/fetchData.cjs +2 -2
- package/dist/cjs/labs/DataView/fetchData.cjs.map +1 -1
- package/dist/cjs/labs/DatePickers/DateTimeField.cjs +2 -2
- package/dist/cjs/labs/DatePickers/DateTimeField.cjs.map +1 -1
- package/dist/cjs/labs/DatePickers/DateTimePicker.cjs +2 -2
- package/dist/cjs/labs/DatePickers/DateTimePicker.cjs.map +1 -1
- package/dist/cjs/labs/OdysseyPickers/ComposablePicker.cjs +2 -2
- package/dist/cjs/labs/OdysseyPickers/ComposablePicker.cjs.map +1 -1
- package/dist/cjs/labs/OdysseyPickers/PickerWithOptionAdornment.cjs +4 -0
- package/dist/cjs/labs/OdysseyPickers/PickerWithOptionAdornment.cjs.map +1 -1
- package/dist/cjs/labs/PageTemplate/Layout.cjs +2 -2
- package/dist/cjs/labs/PageTemplate/Layout.cjs.map +1 -1
- package/dist/cjs/labs/PageTemplate/PageTemplate.cjs.map +1 -1
- package/dist/cjs/labs/PaginatedTable.cjs +4 -4
- package/dist/cjs/labs/PaginatedTable.cjs.map +1 -1
- package/dist/cjs/labs/StaticTable.cjs +2 -2
- package/dist/cjs/labs/StaticTable.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_cs.cjs +5 -0
- package/dist/cjs/properties/ts/odyssey-react-mui_cs.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_da.cjs +5 -0
- package/dist/cjs/properties/ts/odyssey-react-mui_da.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_de.cjs +6 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_de.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_el.cjs +5 -0
- package/dist/cjs/properties/ts/odyssey-react-mui_el.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_es.cjs +5 -0
- package/dist/cjs/properties/ts/odyssey-react-mui_es.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_eu.cjs +5 -0
- package/dist/cjs/properties/ts/odyssey-react-mui_eu.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_fi.cjs +5 -0
- package/dist/cjs/properties/ts/odyssey-react-mui_fi.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_fr.cjs +5 -0
- package/dist/cjs/properties/ts/odyssey-react-mui_fr.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_ht.cjs +5 -0
- package/dist/cjs/properties/ts/odyssey-react-mui_ht.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_hu.cjs +5 -0
- package/dist/cjs/properties/ts/odyssey-react-mui_hu.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_id.cjs +5 -0
- package/dist/cjs/properties/ts/odyssey-react-mui_id.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_it.cjs +5 -0
- package/dist/cjs/properties/ts/odyssey-react-mui_it.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_ja.cjs +5 -0
- package/dist/cjs/properties/ts/odyssey-react-mui_ja.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_ko.cjs +5 -0
- package/dist/cjs/properties/ts/odyssey-react-mui_ko.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_ms.cjs +5 -0
- package/dist/cjs/properties/ts/odyssey-react-mui_ms.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_nb.cjs +5 -0
- package/dist/cjs/properties/ts/odyssey-react-mui_nb.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_nl_NL.cjs +5 -0
- package/dist/cjs/properties/ts/odyssey-react-mui_nl_NL.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_ok_PL.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_ok_SK.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_pl.cjs +5 -0
- package/dist/cjs/properties/ts/odyssey-react-mui_pl.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_pt_BR.cjs +5 -0
- package/dist/cjs/properties/ts/odyssey-react-mui_pt_BR.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_ro.cjs +5 -0
- package/dist/cjs/properties/ts/odyssey-react-mui_ro.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_ru.cjs +5 -0
- package/dist/cjs/properties/ts/odyssey-react-mui_ru.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_sv.cjs +5 -0
- package/dist/cjs/properties/ts/odyssey-react-mui_sv.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_th.cjs +5 -0
- package/dist/cjs/properties/ts/odyssey-react-mui_th.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_tr.cjs +5 -0
- package/dist/cjs/properties/ts/odyssey-react-mui_tr.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_uk.cjs +5 -0
- package/dist/cjs/properties/ts/odyssey-react-mui_uk.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_vi.cjs +5 -0
- package/dist/cjs/properties/ts/odyssey-react-mui_vi.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_zh_CN.cjs +5 -0
- package/dist/cjs/properties/ts/odyssey-react-mui_zh_CN.cjs.map +1 -1
- package/dist/cjs/properties/ts/odyssey-react-mui_zh_TW.cjs +5 -0
- package/dist/cjs/properties/ts/odyssey-react-mui_zh_TW.cjs.map +1 -1
- package/dist/cjs/test-selectors/AutocompleteTestSelector.cjs +49 -0
- package/dist/cjs/test-selectors/AutocompleteTestSelector.cjs.map +1 -0
- package/dist/cjs/test-selectors/CalloutTestSelector.cjs +43 -0
- package/dist/cjs/test-selectors/CalloutTestSelector.cjs.map +1 -0
- package/dist/cjs/test-selectors/SelectTestSelector.cjs +55 -0
- package/dist/cjs/test-selectors/SelectTestSelector.cjs.map +1 -0
- package/dist/cjs/{OdysseyTranslationProvider.types.cjs → test-selectors/TabsTestSelector.cjs} +23 -4
- package/dist/cjs/test-selectors/TabsTestSelector.cjs.map +1 -0
- package/dist/cjs/test-selectors/TextFieldTestSelector.cjs +44 -0
- package/dist/cjs/test-selectors/TextFieldTestSelector.cjs.map +1 -0
- package/dist/cjs/test-selectors/index.cjs +11 -0
- package/dist/cjs/test-selectors/index.cjs.map +1 -1
- package/dist/cjs/test-selectors/queryOdysseySelector.cjs +10 -10
- package/dist/cjs/test-selectors/queryOdysseySelector.cjs.map +1 -1
- package/dist/cjs/theme/components.cjs +5 -5
- package/dist/cjs/theme/components.cjs.map +1 -1
- package/dist/cjs/ui-shell/NarrowUiShellContent.cjs +2 -12
- package/dist/cjs/ui-shell/NarrowUiShellContent.cjs.map +1 -1
- package/dist/cjs/ui-shell/SideNav/NavAccordion.cjs +20 -15
- package/dist/cjs/ui-shell/SideNav/NavAccordion.cjs.map +1 -1
- package/dist/cjs/ui-shell/SideNav/SideNav.cjs +137 -136
- package/dist/cjs/ui-shell/SideNav/SideNav.cjs.map +1 -1
- package/dist/cjs/ui-shell/SideNav/SideNavFooterContent.cjs +2 -2
- package/dist/cjs/ui-shell/SideNav/SideNavFooterContent.cjs.map +1 -1
- package/dist/cjs/ui-shell/SideNav/SideNavItemContent.cjs +7 -4
- package/dist/cjs/ui-shell/SideNav/SideNavItemContent.cjs.map +1 -1
- package/dist/cjs/ui-shell/SideNav/SideNavItemContentContext.cjs.map +1 -1
- package/dist/cjs/ui-shell/SideNav/SideNavItemLinkContent.cjs +3 -4
- package/dist/cjs/ui-shell/SideNav/SideNavItemLinkContent.cjs.map +1 -1
- package/dist/cjs/ui-shell/SideNav/SideNavSortableList.cjs +47 -0
- package/dist/cjs/ui-shell/SideNav/SideNavSortableList.cjs.map +1 -0
- package/dist/cjs/ui-shell/SideNav/SideNavToggleButton.cjs +2 -2
- package/dist/cjs/ui-shell/SideNav/SideNavToggleButton.cjs.map +1 -1
- package/dist/cjs/ui-shell/SideNav/SortableList/SortableItem.cjs +2 -2
- package/dist/cjs/ui-shell/SideNav/SortableList/SortableItem.cjs.map +1 -1
- package/dist/cjs/ui-shell/SideNav/SortableList/SortableList.cjs +2 -2
- package/dist/cjs/ui-shell/SideNav/SortableList/SortableList.cjs.map +1 -1
- package/dist/cjs/ui-shell/SideNav/types.cjs.map +1 -1
- package/dist/cjs/ui-shell/UiShell.cjs +4 -4
- package/dist/cjs/ui-shell/UiShell.cjs.map +1 -1
- package/dist/cjs/ui-shell/WideUiShellContent.cjs +2 -1
- package/dist/cjs/ui-shell/WideUiShellContent.cjs.map +1 -1
- package/dist/cjs/ui-shell/uiShellContentTypes.cjs +2 -1
- package/dist/cjs/ui-shell/uiShellContentTypes.cjs.map +1 -1
- package/dist/cjs/{shadow-dom/shadow-dom.cjs → web-component/createShadowDomElements.cjs} +8 -3
- package/dist/cjs/web-component/createShadowDomElements.cjs.map +1 -0
- package/dist/cjs/web-component/index.cjs +33 -0
- package/dist/cjs/web-component/index.cjs.map +1 -1
- package/dist/cjs/web-component/odysseyWebComponentVersion.generated.cjs +1 -1
- package/dist/cjs/web-component/odysseyWebComponentVersion.generated.cjs.map +1 -1
- package/dist/cjs/web-component/removeGlobalStylesFromShadowDom.cjs +35 -0
- package/dist/cjs/web-component/removeGlobalStylesFromShadowDom.cjs.map +1 -0
- package/dist/cjs/web-component/renderReactInWebComponent.cjs +5 -9
- package/dist/cjs/web-component/renderReactInWebComponent.cjs.map +1 -1
- package/dist/esm/Autocomplete.js +1 -31
- package/dist/esm/Autocomplete.js.map +1 -1
- package/dist/esm/Banner.js +1 -1
- package/dist/esm/Banner.js.map +1 -1
- package/dist/esm/Breadcrumbs.js +1 -1
- package/dist/esm/Breadcrumbs.js.map +1 -1
- package/dist/esm/Callout.js +1 -25
- package/dist/esm/Callout.js.map +1 -1
- package/dist/esm/Card.js +1 -1
- package/dist/esm/Card.js.map +1 -1
- package/dist/esm/Checkbox.js +13 -11
- package/dist/esm/Checkbox.js.map +1 -1
- package/dist/esm/DataTable/DataTable.js +1 -1
- package/dist/esm/DataTable/DataTable.js.map +1 -1
- package/dist/esm/DataTable/DataTableRowActions.js +1 -1
- package/dist/esm/DataTable/DataTableRowActions.js.map +1 -1
- package/dist/esm/DataTable/DataTableSettings.js +1 -1
- package/dist/esm/DataTable/DataTableSettings.js.map +1 -1
- package/dist/esm/DataTable/useRowReordering.js +1 -1
- package/dist/esm/DataTable/useRowReordering.js.map +1 -1
- package/dist/esm/DatePickers/DateField.js +1 -1
- package/dist/esm/DatePickers/DateField.js.map +1 -1
- package/dist/esm/DatePickers/DateFieldActionBar.js +1 -1
- package/dist/esm/DatePickers/DateFieldActionBar.js.map +1 -1
- package/dist/esm/DatePickers/DatePicker.js +1 -1
- package/dist/esm/DatePickers/DatePicker.js.map +1 -1
- package/dist/esm/DatePickers/useDateFieldsTranslations.js +1 -1
- package/dist/esm/DatePickers/useDateFieldsTranslations.js.map +1 -1
- package/dist/esm/DatePickers/useOdysseyDateFields.js +1 -1
- package/dist/esm/DatePickers/useOdysseyDateFields.js.map +1 -1
- package/dist/esm/Dialog.js +33 -30
- package/dist/esm/Dialog.js.map +1 -1
- package/dist/esm/Drawer.js +7 -3
- package/dist/esm/Drawer.js.map +1 -1
- package/dist/esm/Field.js +1 -1
- package/dist/esm/Field.js.map +1 -1
- package/dist/esm/FieldError.js +1 -1
- package/dist/esm/FieldError.js.map +1 -1
- package/dist/esm/FieldLabel.js +1 -1
- package/dist/esm/FieldLabel.js.map +1 -1
- package/dist/esm/FileUploader/FileUploadPreview.js +1 -1
- package/dist/esm/FileUploader/FileUploadPreview.js.map +1 -1
- package/dist/esm/FileUploader/FileUploader.js +1 -1
- package/dist/esm/FileUploader/FileUploader.js.map +1 -1
- package/dist/esm/FullScreenOverlay.js +35 -0
- package/dist/esm/FullScreenOverlay.js.map +1 -0
- package/dist/esm/FullScreenOverlayContext.js +66 -0
- package/dist/esm/FullScreenOverlayContext.js.map +1 -0
- package/dist/esm/OdysseyCacheProvider.js +12 -17
- package/dist/esm/OdysseyCacheProvider.js.map +1 -1
- package/dist/esm/OdysseyProvider.js +18 -10
- package/dist/esm/OdysseyProvider.js.map +1 -1
- package/dist/esm/OdysseyThemeProvider.js +27 -16
- package/dist/esm/OdysseyThemeProvider.js.map +1 -1
- package/dist/esm/OdysseyThemeProviderPropsContext.js +38 -0
- package/dist/esm/OdysseyThemeProviderPropsContext.js.map +1 -0
- package/dist/esm/Pagination/Pagination.js +1 -2
- package/dist/esm/Pagination/Pagination.js.map +1 -1
- package/dist/esm/Pagination/usePagination.js +1 -1
- package/dist/esm/Pagination/usePagination.js.map +1 -1
- package/dist/esm/PasswordField.js +1 -1
- package/dist/esm/PasswordField.js.map +1 -1
- package/dist/esm/Radio.js +22 -20
- package/dist/esm/Radio.js.map +1 -1
- package/dist/esm/SearchField.js +1 -1
- package/dist/esm/SearchField.js.map +1 -1
- package/dist/esm/Select.js +0 -36
- package/dist/esm/Select.js.map +1 -1
- package/dist/esm/Surface.js +3 -3
- package/dist/esm/Surface.js.map +1 -1
- package/dist/esm/Switch.js +1 -1
- package/dist/esm/Switch.js.map +1 -1
- package/dist/esm/Tabs.js +0 -20
- package/dist/esm/Tabs.js.map +1 -1
- package/dist/esm/Tag.js +1 -1
- package/dist/esm/Tag.js.map +1 -1
- package/dist/esm/TextField.js +0 -25
- package/dist/esm/TextField.js.map +1 -1
- package/dist/esm/Toast.js +1 -1
- package/dist/esm/Toast.js.map +1 -1
- package/dist/esm/__internal.js +24 -0
- package/dist/esm/__internal.js.map +1 -0
- package/dist/esm/i18n.generated/i18n.js +25 -0
- package/dist/esm/i18n.generated/i18n.js.map +1 -0
- package/dist/esm/i18n.generated/i18n.resources.js +75 -0
- package/dist/esm/i18n.generated/i18n.resources.js.map +1 -0
- package/dist/{assets/uiShellSharedConstants-DD9UP82e.js → esm/i18n.generated/i18n.types.js} +3 -1
- package/dist/esm/i18n.generated/i18n.types.js.map +1 -0
- package/dist/esm/index.js +4 -3
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/labs/DataFilters.js +1 -1
- package/dist/esm/labs/DataFilters.js.map +1 -1
- package/dist/esm/labs/DataTable.js +1 -1
- package/dist/esm/labs/DataTable.js.map +1 -1
- package/dist/esm/labs/DataView/BulkActionsMenu.js +1 -1
- package/dist/esm/labs/DataView/BulkActionsMenu.js.map +1 -1
- package/dist/esm/labs/DataView/DataCard.js +1 -1
- package/dist/esm/labs/DataView/DataCard.js.map +1 -1
- package/dist/esm/labs/DataView/DataView.js +1 -1
- package/dist/esm/labs/DataView/DataView.js.map +1 -1
- package/dist/esm/labs/DataView/LayoutSwitcher.js +1 -1
- package/dist/esm/labs/DataView/LayoutSwitcher.js.map +1 -1
- package/dist/esm/labs/DataView/RowActions.js +1 -1
- package/dist/esm/labs/DataView/RowActions.js.map +1 -1
- package/dist/esm/labs/DataView/TableLayoutContent.js +1 -1
- package/dist/esm/labs/DataView/TableLayoutContent.js.map +1 -1
- package/dist/esm/labs/DataView/TableSettings.js +1 -1
- package/dist/esm/labs/DataView/TableSettings.js.map +1 -1
- package/dist/esm/labs/DataView/fetchData.js +2 -2
- package/dist/esm/labs/DataView/fetchData.js.map +1 -1
- package/dist/esm/labs/DatePickers/DateTimeField.js +1 -1
- package/dist/esm/labs/DatePickers/DateTimeField.js.map +1 -1
- package/dist/esm/labs/DatePickers/DateTimePicker.js +1 -1
- package/dist/esm/labs/DatePickers/DateTimePicker.js.map +1 -1
- package/dist/esm/labs/OdysseyPickers/ComposablePicker.js +1 -1
- package/dist/esm/labs/OdysseyPickers/ComposablePicker.js.map +1 -1
- package/dist/esm/labs/OdysseyPickers/PickerWithOptionAdornment.js +4 -0
- package/dist/esm/labs/OdysseyPickers/PickerWithOptionAdornment.js.map +1 -1
- package/dist/esm/labs/PageTemplate/Layout.js +2 -2
- package/dist/esm/labs/PageTemplate/Layout.js.map +1 -1
- package/dist/esm/labs/PageTemplate/PageTemplate.js.map +1 -1
- package/dist/esm/labs/PaginatedTable.js +1 -1
- package/dist/esm/labs/PaginatedTable.js.map +1 -1
- package/dist/esm/labs/StaticTable.js +1 -1
- package/dist/esm/labs/StaticTable.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_cs.js +5 -0
- package/dist/esm/properties/ts/odyssey-react-mui_cs.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_da.js +5 -0
- package/dist/esm/properties/ts/odyssey-react-mui_da.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_de.js +6 -1
- package/dist/esm/properties/ts/odyssey-react-mui_de.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_el.js +5 -0
- package/dist/esm/properties/ts/odyssey-react-mui_el.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_es.js +5 -0
- package/dist/esm/properties/ts/odyssey-react-mui_es.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_eu.js +5 -0
- package/dist/esm/properties/ts/odyssey-react-mui_eu.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_fi.js +5 -0
- package/dist/esm/properties/ts/odyssey-react-mui_fi.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_fr.js +5 -0
- package/dist/esm/properties/ts/odyssey-react-mui_fr.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_ht.js +5 -0
- package/dist/esm/properties/ts/odyssey-react-mui_ht.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_hu.js +5 -0
- package/dist/esm/properties/ts/odyssey-react-mui_hu.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_id.js +5 -0
- package/dist/esm/properties/ts/odyssey-react-mui_id.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_it.js +5 -0
- package/dist/esm/properties/ts/odyssey-react-mui_it.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_ja.js +5 -0
- package/dist/esm/properties/ts/odyssey-react-mui_ja.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_ko.js +5 -0
- package/dist/esm/properties/ts/odyssey-react-mui_ko.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_ms.js +5 -0
- package/dist/esm/properties/ts/odyssey-react-mui_ms.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_nb.js +5 -0
- package/dist/esm/properties/ts/odyssey-react-mui_nb.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_nl_NL.js +5 -0
- package/dist/esm/properties/ts/odyssey-react-mui_nl_NL.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_ok_PL.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_ok_SK.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_pl.js +5 -0
- package/dist/esm/properties/ts/odyssey-react-mui_pl.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_pt_BR.js +5 -0
- package/dist/esm/properties/ts/odyssey-react-mui_pt_BR.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_ro.js +5 -0
- package/dist/esm/properties/ts/odyssey-react-mui_ro.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_ru.js +5 -0
- package/dist/esm/properties/ts/odyssey-react-mui_ru.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_sv.js +5 -0
- package/dist/esm/properties/ts/odyssey-react-mui_sv.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_th.js +5 -0
- package/dist/esm/properties/ts/odyssey-react-mui_th.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_tr.js +5 -0
- package/dist/esm/properties/ts/odyssey-react-mui_tr.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_uk.js +5 -0
- package/dist/esm/properties/ts/odyssey-react-mui_uk.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_vi.js +5 -0
- package/dist/esm/properties/ts/odyssey-react-mui_vi.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_zh_CN.js +5 -0
- package/dist/esm/properties/ts/odyssey-react-mui_zh_CN.js.map +1 -1
- package/dist/esm/properties/ts/odyssey-react-mui_zh_TW.js +5 -0
- package/dist/esm/properties/ts/odyssey-react-mui_zh_TW.js.map +1 -1
- package/dist/esm/test-selectors/AutocompleteTestSelector.js +43 -0
- package/dist/esm/test-selectors/AutocompleteTestSelector.js.map +1 -0
- package/dist/esm/test-selectors/CalloutTestSelector.js +37 -0
- package/dist/esm/test-selectors/CalloutTestSelector.js.map +1 -0
- package/dist/esm/test-selectors/SelectTestSelector.js +49 -0
- package/dist/esm/test-selectors/SelectTestSelector.js.map +1 -0
- package/dist/{types/shadow-dom/index.d.ts → esm/test-selectors/TabsTestSelector.js} +22 -2
- package/dist/esm/test-selectors/TabsTestSelector.js.map +1 -0
- package/dist/esm/test-selectors/TextFieldTestSelector.js +38 -0
- package/dist/esm/test-selectors/TextFieldTestSelector.js.map +1 -0
- package/dist/esm/test-selectors/index.js +1 -0
- package/dist/esm/test-selectors/index.js.map +1 -1
- package/dist/esm/test-selectors/queryOdysseySelector.js +5 -5
- package/dist/esm/test-selectors/queryOdysseySelector.js.map +1 -1
- package/dist/esm/theme/components.js +5 -5
- package/dist/esm/theme/components.js.map +1 -1
- package/dist/esm/ui-shell/NarrowUiShellContent.js +3 -13
- package/dist/esm/ui-shell/NarrowUiShellContent.js.map +1 -1
- package/dist/esm/ui-shell/SideNav/NavAccordion.js +20 -15
- package/dist/esm/ui-shell/SideNav/NavAccordion.js.map +1 -1
- package/dist/esm/ui-shell/SideNav/SideNav.js +136 -135
- package/dist/esm/ui-shell/SideNav/SideNav.js.map +1 -1
- package/dist/esm/ui-shell/SideNav/SideNavFooterContent.js +1 -1
- package/dist/esm/ui-shell/SideNav/SideNavFooterContent.js.map +1 -1
- package/dist/esm/ui-shell/SideNav/SideNavItemContent.js +7 -4
- package/dist/esm/ui-shell/SideNav/SideNavItemContent.js.map +1 -1
- package/dist/esm/ui-shell/SideNav/SideNavItemContentContext.js.map +1 -1
- package/dist/esm/ui-shell/SideNav/SideNavItemLinkContent.js +3 -4
- package/dist/esm/ui-shell/SideNav/SideNavItemLinkContent.js.map +1 -1
- package/dist/esm/ui-shell/SideNav/SideNavSortableList.js +42 -0
- package/dist/esm/ui-shell/SideNav/SideNavSortableList.js.map +1 -0
- package/dist/esm/ui-shell/SideNav/SideNavToggleButton.js +1 -1
- package/dist/esm/ui-shell/SideNav/SideNavToggleButton.js.map +1 -1
- package/dist/esm/ui-shell/SideNav/SortableList/SortableItem.js +1 -1
- package/dist/esm/ui-shell/SideNav/SortableList/SortableItem.js.map +1 -1
- package/dist/esm/ui-shell/SideNav/SortableList/SortableList.js +1 -1
- package/dist/esm/ui-shell/SideNav/SortableList/SortableList.js.map +1 -1
- package/dist/esm/ui-shell/SideNav/types.js.map +1 -1
- package/dist/esm/ui-shell/UiShell.js +4 -4
- package/dist/esm/ui-shell/UiShell.js.map +1 -1
- package/dist/esm/ui-shell/WideUiShellContent.js +2 -1
- package/dist/esm/ui-shell/WideUiShellContent.js.map +1 -1
- package/dist/esm/ui-shell/uiShellContentTypes.js +1 -0
- package/dist/esm/ui-shell/uiShellContentTypes.js.map +1 -1
- package/dist/esm/{shadow-dom/shadow-dom.js → web-component/createShadowDomElements.js} +8 -3
- package/dist/esm/web-component/createShadowDomElements.js.map +1 -0
- package/dist/esm/web-component/index.js +3 -0
- package/dist/esm/web-component/index.js.map +1 -1
- package/dist/esm/web-component/odysseyWebComponentVersion.generated.js +1 -1
- package/dist/esm/web-component/odysseyWebComponentVersion.generated.js.map +1 -1
- package/dist/esm/web-component/removeGlobalStylesFromShadowDom.js +28 -0
- package/dist/esm/web-component/removeGlobalStylesFromShadowDom.js.map +1 -0
- package/dist/esm/web-component/renderReactInWebComponent.js +5 -9
- package/dist/esm/web-component/renderReactInWebComponent.js.map +1 -1
- package/dist/tsconfig.production.tsbuildinfo +1 -1
- package/dist/types/Autocomplete.d.ts +0 -30
- package/dist/types/Autocomplete.d.ts.map +1 -1
- package/dist/types/Banner.d.ts.map +1 -1
- package/dist/types/Breadcrumbs.d.ts.map +1 -1
- package/dist/types/Callout.d.ts +0 -24
- package/dist/types/Callout.d.ts.map +1 -1
- package/dist/types/Card.d.ts.map +1 -1
- package/dist/types/Checkbox.d.ts.map +1 -1
- package/dist/types/DataTable/DataTable.d.ts.map +1 -1
- package/dist/types/DataTable/DataTableRowActions.d.ts.map +1 -1
- package/dist/types/DatePickers/DatePicker.d.ts.map +1 -1
- package/dist/types/DatePickers/useDateFieldsTranslations.d.ts.map +1 -1
- package/dist/types/DatePickers/useOdysseyDateFields.d.ts.map +1 -1
- package/dist/types/Dialog.d.ts.map +1 -1
- package/dist/types/Drawer.d.ts.map +1 -1
- package/dist/types/Field.d.ts.map +1 -1
- package/dist/types/FieldError.d.ts.map +1 -1
- package/dist/types/FieldLabel.d.ts.map +1 -1
- package/dist/types/FileUploader/FileUploader.d.ts.map +1 -1
- package/dist/types/FullScreenOverlay.d.ts +19 -0
- package/dist/types/FullScreenOverlay.d.ts.map +1 -0
- package/dist/types/FullScreenOverlayContext.d.ts +31 -0
- package/dist/types/FullScreenOverlayContext.d.ts.map +1 -0
- package/dist/types/NativeSelect.d.ts +1 -1
- package/dist/types/OdysseyCacheProvider.d.ts +10 -3
- package/dist/types/OdysseyCacheProvider.d.ts.map +1 -1
- package/dist/types/OdysseyProvider.d.ts +8 -8
- package/dist/types/OdysseyProvider.d.ts.map +1 -1
- package/dist/types/OdysseyThemeProvider.d.ts +7 -16
- package/dist/types/OdysseyThemeProvider.d.ts.map +1 -1
- package/dist/types/OdysseyThemeProviderPropsContext.d.ts +27 -0
- package/dist/types/OdysseyThemeProviderPropsContext.d.ts.map +1 -0
- package/dist/types/Pagination/Pagination.d.ts +0 -1
- package/dist/types/Pagination/Pagination.d.ts.map +1 -1
- package/dist/types/Pagination/usePagination.d.ts.map +1 -1
- package/dist/types/PasswordField.d.ts.map +1 -1
- package/dist/types/Radio.d.ts.map +1 -1
- package/dist/types/SearchField.d.ts.map +1 -1
- package/dist/types/Select.d.ts +0 -36
- package/dist/types/Select.d.ts.map +1 -1
- package/dist/types/Surface.d.ts.map +1 -1
- package/dist/types/Switch.d.ts.map +1 -1
- package/dist/types/Tabs.d.ts +0 -20
- package/dist/types/Tabs.d.ts.map +1 -1
- package/dist/types/Tag.d.ts.map +1 -1
- package/dist/types/TextField.d.ts +0 -25
- package/dist/types/TextField.d.ts.map +1 -1
- package/dist/types/Toast.d.ts.map +1 -1
- package/dist/types/__internal.d.ts +30 -0
- package/dist/types/__internal.d.ts.map +1 -0
- package/dist/types/i18n.generated/i18n.d.ts +285 -0
- package/dist/types/i18n.generated/i18n.d.ts.map +1 -0
- package/dist/types/i18n.generated/i18n.resources.d.ts +4199 -0
- package/dist/types/{i18n.d.ts.map → i18n.generated/i18n.resources.d.ts.map} +1 -1
- package/dist/types/i18n.generated/i18n.types.d.ts +30 -0
- package/dist/types/i18n.generated/i18n.types.d.ts.map +1 -0
- package/dist/types/index.d.ts +4 -3
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/labs/DataTable.d.ts.map +1 -1
- package/dist/types/labs/DataView/DataCard.d.ts.map +1 -1
- package/dist/types/labs/DataView/RowActions.d.ts.map +1 -1
- package/dist/types/labs/DataView/fetchData.d.ts.map +1 -1
- package/dist/types/labs/DatePickers/DateTimePicker.d.ts.map +1 -1
- package/dist/types/labs/OdysseyPickers/ComposablePicker.d.ts.map +1 -1
- package/dist/types/labs/OdysseyPickers/PickerWithOptionAdornment.d.ts.map +1 -1
- package/dist/types/labs/PageTemplate/PageTemplate.d.ts.map +1 -1
- package/dist/types/labs/PaginatedTable.d.ts.map +1 -1
- package/dist/types/labs/StaticTable.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui.d.ts +133 -133
- package/dist/types/properties/ts/odyssey-react-mui.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_cs.d.ts +133 -128
- package/dist/types/properties/ts/odyssey-react-mui_cs.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_da.d.ts +133 -128
- package/dist/types/properties/ts/odyssey-react-mui_da.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_de.d.ts +133 -128
- package/dist/types/properties/ts/odyssey-react-mui_de.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_el.d.ts +133 -128
- package/dist/types/properties/ts/odyssey-react-mui_el.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_es.d.ts +133 -128
- package/dist/types/properties/ts/odyssey-react-mui_es.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_eu.d.ts +133 -128
- package/dist/types/properties/ts/odyssey-react-mui_eu.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_fi.d.ts +133 -128
- package/dist/types/properties/ts/odyssey-react-mui_fi.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_fr.d.ts +133 -128
- package/dist/types/properties/ts/odyssey-react-mui_fr.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_ht.d.ts +133 -128
- package/dist/types/properties/ts/odyssey-react-mui_ht.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_hu.d.ts +133 -128
- package/dist/types/properties/ts/odyssey-react-mui_hu.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_id.d.ts +133 -128
- package/dist/types/properties/ts/odyssey-react-mui_id.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_it.d.ts +133 -128
- package/dist/types/properties/ts/odyssey-react-mui_it.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_ja.d.ts +133 -128
- package/dist/types/properties/ts/odyssey-react-mui_ja.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_ko.d.ts +133 -128
- package/dist/types/properties/ts/odyssey-react-mui_ko.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_ms.d.ts +133 -128
- package/dist/types/properties/ts/odyssey-react-mui_ms.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_nb.d.ts +133 -128
- package/dist/types/properties/ts/odyssey-react-mui_nb.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_nl_NL.d.ts +133 -128
- package/dist/types/properties/ts/odyssey-react-mui_nl_NL.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_ok_PL.d.ts +133 -133
- package/dist/types/properties/ts/odyssey-react-mui_ok_PL.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_ok_SK.d.ts +133 -133
- package/dist/types/properties/ts/odyssey-react-mui_ok_SK.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_pl.d.ts +133 -128
- package/dist/types/properties/ts/odyssey-react-mui_pl.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_pt_BR.d.ts +133 -128
- package/dist/types/properties/ts/odyssey-react-mui_pt_BR.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_ro.d.ts +133 -128
- package/dist/types/properties/ts/odyssey-react-mui_ro.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_ru.d.ts +133 -128
- package/dist/types/properties/ts/odyssey-react-mui_ru.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_sv.d.ts +133 -128
- package/dist/types/properties/ts/odyssey-react-mui_sv.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_th.d.ts +133 -128
- package/dist/types/properties/ts/odyssey-react-mui_th.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_tr.d.ts +133 -128
- package/dist/types/properties/ts/odyssey-react-mui_tr.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_uk.d.ts +133 -128
- package/dist/types/properties/ts/odyssey-react-mui_uk.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_vi.d.ts +133 -128
- package/dist/types/properties/ts/odyssey-react-mui_vi.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_zh_CN.d.ts +133 -128
- package/dist/types/properties/ts/odyssey-react-mui_zh_CN.d.ts.map +1 -1
- package/dist/types/properties/ts/odyssey-react-mui_zh_TW.d.ts +133 -128
- package/dist/types/properties/ts/odyssey-react-mui_zh_TW.d.ts.map +1 -1
- package/dist/types/test-selectors/AutocompleteTestSelector.d.ts +42 -0
- package/dist/types/test-selectors/AutocompleteTestSelector.d.ts.map +1 -0
- package/dist/types/test-selectors/CalloutTestSelector.d.ts +36 -0
- package/dist/types/test-selectors/CalloutTestSelector.d.ts.map +1 -0
- package/dist/types/test-selectors/SelectTestSelector.d.ts +48 -0
- package/dist/types/test-selectors/SelectTestSelector.d.ts.map +1 -0
- package/dist/types/test-selectors/TabsTestSelector.d.ts +32 -0
- package/dist/types/test-selectors/TabsTestSelector.d.ts.map +1 -0
- package/dist/types/test-selectors/TextFieldTestSelector.d.ts +37 -0
- package/dist/types/test-selectors/TextFieldTestSelector.d.ts.map +1 -0
- package/dist/types/test-selectors/index.d.ts +1 -0
- package/dist/types/test-selectors/index.d.ts.map +1 -1
- package/dist/types/test-selectors/queryOdysseySelector.d.ts.map +1 -1
- package/dist/types/ui-shell/NarrowUiShellContent.d.ts.map +1 -1
- package/dist/types/ui-shell/SideNav/NavAccordion.d.ts.map +1 -1
- package/dist/types/ui-shell/SideNav/SideNav.d.ts +1 -1
- package/dist/types/ui-shell/SideNav/SideNav.d.ts.map +1 -1
- package/dist/types/ui-shell/SideNav/SideNavFooterContent.d.ts.map +1 -1
- package/dist/types/ui-shell/SideNav/SideNavItemContent.d.ts +2 -1
- package/dist/types/ui-shell/SideNav/SideNavItemContent.d.ts.map +1 -1
- package/dist/types/ui-shell/SideNav/SideNavItemContentContext.d.ts +1 -0
- package/dist/types/ui-shell/SideNav/SideNavItemContentContext.d.ts.map +1 -1
- package/dist/types/ui-shell/SideNav/SideNavItemLinkContent.d.ts.map +1 -1
- package/dist/types/ui-shell/SideNav/SideNavSortableList.d.ts +41 -0
- package/dist/types/ui-shell/SideNav/SideNavSortableList.d.ts.map +1 -0
- package/dist/types/ui-shell/SideNav/types.d.ts +13 -2
- package/dist/types/ui-shell/SideNav/types.d.ts.map +1 -1
- package/dist/types/ui-shell/UiShell.d.ts.map +1 -1
- package/dist/types/ui-shell/WideUiShellContent.d.ts.map +1 -1
- package/dist/types/ui-shell/uiShellContentTypes.d.ts +4 -1
- package/dist/types/ui-shell/uiShellContentTypes.d.ts.map +1 -1
- package/dist/types/{shadow-dom/shadow-dom.d.ts → web-component/createShadowDomElements.d.ts} +6 -4
- package/dist/types/web-component/createShadowDomElements.d.ts.map +1 -0
- package/dist/types/web-component/index.d.ts +3 -0
- package/dist/types/web-component/index.d.ts.map +1 -1
- package/dist/types/web-component/odysseyWebComponentVersion.generated.d.ts +1 -1
- package/dist/{assets/useMountLifecycleEffect-CjsUCFhB.js → types/web-component/removeGlobalStylesFromShadowDom.d.ts} +9 -2
- package/dist/types/web-component/removeGlobalStylesFromShadowDom.d.ts.map +1 -0
- package/dist/types/web-component/renderReactInWebComponent.d.ts +1 -1
- package/dist/types/web-component/renderReactInWebComponent.d.ts.map +1 -1
- package/package.json +24 -15
- package/dist/appswitcher/admin-app-default.svg +0 -6
- package/dist/appswitcher/admin-app-selected.svg +0 -6
- package/dist/appswitcher/aerial-default.svg +0 -7
- package/dist/appswitcher/aerial-selected.svg +0 -7
- package/dist/appswitcher/okta-dashboard-default.svg +0 -7
- package/dist/appswitcher/okta-dashboard-selected.svg +0 -7
- package/dist/appswitcher/privileged-access-default.svg +0 -4
- package/dist/appswitcher/privileged-access-selected.svg +0 -4
- package/dist/appswitcher/workflows-default.svg +0 -5
- package/dist/appswitcher/workflows-selected.svg +0 -5
- package/dist/assets/Accordion-DLG6nIhh.js +0 -1
- package/dist/assets/Accordion.stories-VjVp52QD.js +0 -85
- package/dist/assets/AccordionSummary-xCoGLMoL.js +0 -1
- package/dist/assets/AlertTitle-DlG4YQWR.js +0 -1
- package/dist/assets/AppSwitcher-D7UlQ3S8.js +0 -21
- package/dist/assets/AppSwitcher.stories-Dv0DHDxk.js +0 -100
- package/dist/assets/AppTile _labs_.stories-CgXIqWmJ.js +0 -136
- package/dist/assets/ArrowDropDown-bSngWMh1.js +0 -1
- package/dist/assets/ArrowRight-DCIAiEpA.js +0 -1
- package/dist/assets/Autocomplete-MfScEzbR.js +0 -1
- package/dist/assets/Autocomplete-UE4wqxn0.js +0 -1
- package/dist/assets/Autocomplete.stories-CCtQosYH.js +0 -316
- package/dist/assets/Badge-DL9N0uiE.js +0 -11
- package/dist/assets/Banner-C66lWD3c.js +0 -1
- package/dist/assets/Banner.stories-D6KqnSl2.js +0 -74
- package/dist/assets/BaseButton-B5c4cgt8.js +0 -11
- package/dist/assets/BaseMenuButton-DbGGXXbP.js +0 -1
- package/dist/assets/Box-BCBP3C7Q.js +0 -1
- package/dist/assets/Box-BXOPvc0Q.js +0 -1
- package/dist/assets/Box-C2ekHaOu.js +0 -1
- package/dist/assets/Box-C_Qfmw-_.js +0 -11
- package/dist/assets/Box.stories-uaYeF2xg.js +0 -38
- package/dist/assets/Breadcrumbs-Qzfi3j0j.js +0 -6
- package/dist/assets/Breadcrumbs.stories-CHIGnsjh.js +0 -79
- package/dist/assets/Bug-m6zinguF.js +0 -1
- package/dist/assets/Button-BOzIr8Jh.js +0 -11
- package/dist/assets/Button-BqwcAVQ-.js +0 -1
- package/dist/assets/Button-Cf49fWiK.js +0 -31
- package/dist/assets/Button.stories-Db-QptTh.js +0 -271
- package/dist/assets/ButtonBase-BqXVk-1q.js +0 -74
- package/dist/assets/Calendar-CuqjwSb0.js +0 -1
- package/dist/assets/Callout-CaNoXhaj.js +0 -1
- package/dist/assets/Callout.stories-D2csAs8g.js +0 -105
- package/dist/assets/Card-B5eIV1vH.js +0 -1
- package/dist/assets/Card-Bfg-qZM7.js +0 -8
- package/dist/assets/Card.stories-BTaeWH4V.js +0 -129
- package/dist/assets/CardActionArea-yvoWcAsF.js +0 -1
- package/dist/assets/Check-BmyOKfcL.js +0 -1
- package/dist/assets/Checkbox-BTj1hXUa.js +0 -1
- package/dist/assets/Checkbox-luq82K1t.js +0 -1
- package/dist/assets/Checkbox.stories-ChhXQBH_.js +0 -96
- package/dist/assets/CheckboxGroup-Cgc2chES.js +0 -1
- package/dist/assets/CheckboxGroup.stories-DpGwHWla.js +0 -81
- package/dist/assets/ChevronDown-BnAWuc8V.js +0 -1
- package/dist/assets/ChevronRight-BB0bQIRj.js +0 -1
- package/dist/assets/ChevronUp-B9JV-jmd.js +0 -1
- package/dist/assets/Chip-BOK8DR8m.js +0 -1
- package/dist/assets/CircularProgress-DNk4kmx6.js +0 -28
- package/dist/assets/CircularProgress-Ur28_31H.js +0 -1
- package/dist/assets/CircularProgress.stories-gv9B0XLW.js +0 -44
- package/dist/assets/Clock-Byj5V_49.js +0 -1
- package/dist/assets/Close-DA7fBExu.js +0 -1
- package/dist/assets/Close-DA_Sph0R.js +0 -1
- package/dist/assets/CloseCircleFilled-D2aBlgBe.js +0 -1
- package/dist/assets/Code Styling Guidelines-CAzyRuHZ.js +0 -14
- package/dist/assets/Collapse-P1H1b4lO.js +0 -1
- package/dist/assets/Color-YHDXOIA2-CcHVwBQP.js +0 -1
- package/dist/assets/CssBaseline-C3xNeK8b.js +0 -1
- package/dist/assets/CssBaseline-CUjr0ON2.js +0 -190
- package/dist/assets/CssBaseline.stories-DgXaUmIC.js +0 -402
- package/dist/assets/Custom Theming-CKloJLS_.js +0 -136
- package/dist/assets/Custom Theming.stories-BHdYhCs2.js +0 -93
- package/dist/assets/DataFilters _labs_-D3S2uNi-.js +0 -55
- package/dist/assets/DataFilters _labs_.stories-RwWZVkCe.js +0 -31
- package/dist/assets/DataFilters-DVey1xPT.js +0 -1
- package/dist/assets/DataTable _labs_-CtXARbkP.js +0 -41
- package/dist/assets/DataTable _labs_.stories-U7XFYtR6.js +0 -21
- package/dist/assets/DataTable-CkACYzFJ.js +0 -404
- package/dist/assets/DataTable-CnCWIOTw.js +0 -21
- package/dist/assets/DataTable.stories-Db2HEmax.js +0 -438
- package/dist/assets/DataView _labs_-DZnmSNME.js +0 -332
- package/dist/assets/DataView _labs_.stories-CusuCHkc.js +0 -438
- package/dist/assets/DataView-BQBP0FCs.js +0 -101
- package/dist/assets/DatePicker-DIRg7n4d.js +0 -1
- package/dist/assets/DatePicker.stories-BPWj6DxY.js +0 -143
- package/dist/assets/DateTimePicker-CnXcHc5u.js +0 -1
- package/dist/assets/DateTimePicker.stories-nLmYctur.js +0 -168
- package/dist/assets/DefaultPropsProvider-B7tpShA7.js +0 -9
- package/dist/assets/Design Tokens-BxQ2eYvg.js +0 -4
- package/dist/assets/Dialog-BIM-1Zvj.js +0 -1
- package/dist/assets/Dialog.stories-D2UYs9Hc.js +0 -201
- package/dist/assets/DialogContent-C_FnZ5ZS.js +0 -1
- package/dist/assets/DialogTitle-CLDQZ0bg.js +0 -1
- package/dist/assets/Divider-CsWa3KCo.js +0 -1
- package/dist/assets/DocsRenderer-CFRXHY34-DEwq8OPY.js +0 -2
- package/dist/assets/Documentation-DM1hawvn.js +0 -1
- package/dist/assets/Download-Cp75oFKP.js +0 -1
- package/dist/assets/Drawer-Dg44iOBm.js +0 -27
- package/dist/assets/Drawer.stories-DRGYC84s.js +0 -95
- package/dist/assets/EmptyState-DQoihCwU.js +0 -11
- package/dist/assets/EmptyState.stories-C8kkt-lH.js +0 -11
- package/dist/assets/ExampleButton.stories-BKxnZulW.js +0 -11
- package/dist/assets/Extending Translations-BnOA8j0s.js +0 -146
- package/dist/assets/ExternalLink-DTdulgUc.js +0 -1
- package/dist/assets/Field-ilPS333M.js +0 -11
- package/dist/assets/FieldHint-Cv7aMlpU.js +0 -1
- package/dist/assets/Fieldset-CmtxEykF.js +0 -11
- package/dist/assets/Fieldset.stories-CeV3XwQn.js +0 -15
- package/dist/assets/FileUploader.stories-CmC83k5u.js +0 -58
- package/dist/assets/Filter-BAXcmMyf.js +0 -1
- package/dist/assets/Folder-Ddku_ujr.js +0 -1
- package/dist/assets/Form Field Accessibility-bATJbTW6.js +0 -18
- package/dist/assets/Form-CBnvE26F.js +0 -11
- package/dist/assets/Form.stories-Eg4GUI1C.js +0 -69
- package/dist/assets/FormControlLabel-CxCmH5hv.js +0 -1
- package/dist/assets/FormGroup-BaCH3e06.js +0 -1
- package/dist/assets/FormHelperText-ZkUAjajs.js +0 -1
- package/dist/assets/FormLabel-BLeax9q3.js +0 -1
- package/dist/assets/Generating Icons-CY4QgHRK.js +0 -16
- package/dist/assets/GlobalStyles-BxDN_5FT.js +0 -1
- package/dist/assets/Globe--OQ55RD1.js +0 -1
- package/dist/assets/Grid-B2PgWvdd.js +0 -1
- package/dist/assets/Group-W0XqkWVH.js +0 -1
- package/dist/assets/GroupPicker _labs_.stories-CP9ogL4g.js +0 -33
- package/dist/assets/Grow-CIie3qhp.js +0 -1
- package/dist/assets/Hide-RfKmYLNv.js +0 -1
- package/dist/assets/Home-BXMRmOIu.js +0 -1
- package/dist/assets/Icon _icons_.stories-CfG9aDh6.js +0 -16
- package/dist/assets/IconButton-CK9Do7vj.js +0 -1
- package/dist/assets/IconWithTooltip _icons_.stories-BriwOCod.js +0 -19
- package/dist/assets/InformationCircle-B71JRUfK.js +0 -1
- package/dist/assets/InputAdornment-CFgP75Dd.js +0 -1
- package/dist/assets/InputBase--xDu7aWm.js +0 -2
- package/dist/assets/Installing odyssey-react-mui-FI77Ty6y.js +0 -195
- package/dist/assets/Introduction-B_2OeBP6.js +0 -46
- package/dist/assets/Layout-Bojn6-Uj.js +0 -11
- package/dist/assets/Layout.stories-BN7leK7P.js +0 -217
- package/dist/assets/Legacy Migrations-eiPSj0S4.js +0 -86
- package/dist/assets/Link-ClKgpBXG.js +0 -1
- package/dist/assets/Link-DTvs7F4J.js +0 -11
- package/dist/assets/Link.stories-GP1qln9R.js +0 -43
- package/dist/assets/List-0o0OI1E9.js +0 -1
- package/dist/assets/List-W5kRT_jR.js +0 -1
- package/dist/assets/ListContext-C02XM7tn.js +0 -1
- package/dist/assets/ListItem-CcduKzQu.js +0 -1
- package/dist/assets/ListSubheader-DXKE8lW0.js +0 -1
- package/dist/assets/Menu-CGJO1mMf.js +0 -1
- package/dist/assets/MenuButton-DeZSGuxY.js +0 -9
- package/dist/assets/MenuButton-OjJFnmOD.js +0 -11
- package/dist/assets/MenuButton.stories-C8xNZymc.js +0 -246
- package/dist/assets/MenuContext-DKMyPMNY.js +0 -11
- package/dist/assets/MenuItem-CuP47MJ-.js +0 -1
- package/dist/assets/MenuItem-DjSqFwdt.js +0 -1
- package/dist/assets/MenuItem.stories-Cc5X-FtZ.js +0 -29
- package/dist/assets/MenuList-BboivbXC.js +0 -1
- package/dist/assets/Modal-CW5mOzJG.js +0 -1
- package/dist/assets/More-axx2rGKU.js +0 -1
- package/dist/assets/MuiPropsContext-DhRylJZk.js +0 -11
- package/dist/assets/NativeSelect.stories-D8Y2ITgz.js +0 -173
- package/dist/assets/OdysseyDesignTokensContext-BWQIA5ie.js +0 -11
- package/dist/assets/OdysseyProvider-BQyPcEvx.js +0 -41
- package/dist/assets/OdysseyProvider-BjO4GObW.js +0 -280
- package/dist/assets/OdysseyStorybookThemeDecorator-DginBfEq.js +0 -1
- package/dist/assets/OdysseyThemeProvider-aR5shtx6.js +0 -117
- package/dist/assets/PageHeader.stories-CtAENr0_.js +0 -90
- package/dist/assets/PageHeader.stories-WaRXuLcH.js +0 -17
- package/dist/assets/PageTemplate _labs_-CUXvNJxx.js +0 -8
- package/dist/assets/PageTemplate _labs_.stories-BVKInLfu.js +0 -306
- package/dist/assets/PageTemplate-DOXk_uAG.js +0 -21
- package/dist/assets/PaginatedTable _labs_.stories-Bet6WnQV.js +0 -65
- package/dist/assets/Pagination-CgxBDBwQ.js +0 -11
- package/dist/assets/Pagination.stories-7dUsTYEf.js +0 -17
- package/dist/assets/Paper-DbAuDGNI.js +0 -1
- package/dist/assets/PasswordField.stories-Bclv9Lsw.js +0 -129
- package/dist/assets/Picker _labs_.stories-Dzo7T9_p.js +0 -18
- package/dist/assets/PickerWithOptionAdornment _labs_.stories-C1ftphm9.js +0 -70
- package/dist/assets/PlaceholderLogo-JfVvgA23.js +0 -11
- package/dist/assets/Popper-CwLH-7YW.js +0 -1
- package/dist/assets/Portal-Bvf2g5iG.js +0 -1
- package/dist/assets/Radio-Bi1_KmSD.js +0 -1
- package/dist/assets/Radio-D85jg1Ri.js +0 -1
- package/dist/assets/Radio.stories-BrLSJa7w.js +0 -63
- package/dist/assets/RadioGroup-6XgStuIE.js +0 -10
- package/dist/assets/RadioGroup-BS6oYUQf.js +0 -1
- package/dist/assets/RadioGroup.stories-BcEJF09Q.js +0 -127
- package/dist/assets/Refresh-CPgGX1hz.js +0 -1
- package/dist/assets/Right-to-Left (RTL)-BK9_DI66.js +0 -62
- package/dist/assets/ScopedCssBaseline-FivWKbYZ.js +0 -1
- package/dist/assets/ScreenReaderText-DCDUyE9Y.js +0 -15
- package/dist/assets/ScreenReaderText-vq7_Ob_I.js +0 -1
- package/dist/assets/ScreenReaderText.stories-BZinu6VX.js +0 -8
- package/dist/assets/Search-BvCmvJcV.js +0 -1
- package/dist/assets/SearchDropdown _labs_.stories-CYbt2vgf.js +0 -53
- package/dist/assets/SearchField-jc9ws93I.js +0 -1
- package/dist/assets/SearchField.stories-3apxQKjy.js +0 -37
- package/dist/assets/Select-DVJCNQIV.js +0 -1
- package/dist/assets/Select.stories-Dnr0InYf.js +0 -293
- package/dist/assets/Server-F8KLZq7d.js +0 -1
- package/dist/assets/Settings-DjrryuBd.js +0 -1
- package/dist/assets/Shadow DOM-ErMvgTrT.js +0 -64
- package/dist/assets/Show-qQzUH4Sq.js +0 -1
- package/dist/assets/SideNav-CCPZq2Bh.js +0 -85
- package/dist/assets/SideNav-Duwk1--M.js +0 -125
- package/dist/assets/SideNav.stories-CHEyk4wu.js +0 -207
- package/dist/assets/Skeleton-BJLiCr2o.js +0 -51
- package/dist/assets/Stack-Ba8l39se.js +0 -1
- package/dist/assets/Stack.stories-CBatf2Aw.js +0 -1
- package/dist/assets/StaticTable _labs_.stories-HuypNvo4.js +0 -34
- package/dist/assets/Status-BYBMXN_H.js +0 -1
- package/dist/assets/Status.stories-C3BLGCGc.js +0 -66
- package/dist/assets/SvgIcon-BQAg6Jm7.js +0 -1
- package/dist/assets/Switch.stories-zEk8HMOP.js +0 -61
- package/dist/assets/SwitchBase-Bja5dn-O.js +0 -1
- package/dist/assets/Sync-Bmam4Lr_.js +0 -1
- package/dist/assets/Tabs-BEhcVkzW.js +0 -23
- package/dist/assets/Tabs-Buvkuz1V.js +0 -1
- package/dist/assets/Tabs-ChAj4m0g.js +0 -1
- package/dist/assets/Tabs.stories-BwOqe_a_.js +0 -100
- package/dist/assets/Tag-CjPSrGAL.js +0 -11
- package/dist/assets/Tag.stories-D1YMwKB7.js +0 -96
- package/dist/assets/TagList-BQKiA1TW.js +0 -1
- package/dist/assets/TextField-CZ0hstP2.js +0 -1
- package/dist/assets/TextField.stories-BVJr2VmB.js +0 -149
- package/dist/assets/Toast.stories-aIKtHa18.js +0 -134
- package/dist/assets/ToastManager.stories-Bst-XOOh.js +0 -269
- package/dist/assets/Tooltip-3088PjcT.js +0 -11
- package/dist/assets/Tooltip-B4GIR2eB.js +0 -1
- package/dist/assets/Tooltip.stories-GU5ZWKSu.js +0 -68
- package/dist/assets/TopNav-CWVyy01x.js +0 -11
- package/dist/assets/TopNav.stories-CIdyN7Ai.js +0 -13
- package/dist/assets/Trans-DZ9nii1x.js +0 -1
- package/dist/assets/TransitionGroup-BBx_tHs0.js +0 -9
- package/dist/assets/TransitionGroupContext-BMO0EZjQ.js +0 -9
- package/dist/assets/TransitionGroupContext-twgBS-Q3.js +0 -1
- package/dist/assets/Typography-BTrM-f_f.js +0 -9
- package/dist/assets/Typography-CiNRLenM.js +0 -1
- package/dist/assets/Typography-D7-qxuiy.js +0 -1
- package/dist/assets/Typography.stories-DOm50jIe.js +0 -139
- package/dist/assets/UiShell.stories-CcRPnzQe.js +0 -531
- package/dist/assets/UiShellProvider-D1w1Ocw9.js +0 -31
- package/dist/assets/Upload-DK3nRIto.js +0 -1
- package/dist/assets/User-BBdPovZN.js +0 -1
- package/dist/assets/UserProfile-xXh984n9.js +0 -11
- package/dist/assets/UserProfile.stories-cf7P_USw.js +0 -14
- package/dist/assets/UserProfileMenuButton.stories-DQvKwLs8.js +0 -30
- package/dist/assets/Video-DytabcyM.js +0 -1
- package/dist/assets/WarningFilled-Y3Vw7n_w.js +0 -1
- package/dist/assets/_commonjsHelpers-gnU0ypJ3.js +0 -1
- package/dist/assets/alertTitleClasses-CSPeaunQ.js +0 -1
- package/dist/assets/assertThisInitialized-B9jnkVVz.js +0 -1
- package/dist/assets/autocompleteClasses-Bi4FgC8v.js +0 -1
- package/dist/assets/axe-UFrR6cCR.js +0 -30
- package/dist/assets/axeRun-BfHtukUP.js +0 -40
- package/dist/assets/buttonBaseClasses-CSPKg76d.js +0 -1
- package/dist/assets/buttonClasses-DtIJBSf4.js +0 -1
- package/dist/assets/checkboxClasses-Dtdq1kQG.js +0 -1
- package/dist/assets/chipClasses-BMWKl3Eu.js +0 -1
- package/dist/assets/chunk-XP5HYGXS-BpfKkqn7.js +0 -1
- package/dist/assets/client-akVMpN0m.js +0 -1
- package/dist/assets/colorManipulator-O7SU8zMv.js +0 -1
- package/dist/assets/constants-CyailK6t.js +0 -11
- package/dist/assets/context-D_qJ2zXV.js +0 -1
- package/dist/assets/createChainedFunction-BO_9K8Jh.js +0 -1
- package/dist/assets/createSvgIcon-DiC7XVU3.js +0 -1
- package/dist/assets/createTheme-BmPXDA4p.js +0 -8
- package/dist/assets/createUniqueId-ByTaVY63.js +0 -1
- package/dist/assets/debounce-Be36O1Ab.js +0 -1
- package/dist/assets/emotion-react-jsx-runtime.browser.esm-B2sVIsIq.js +0 -1
- package/dist/assets/emotion-styled.browser.esm-Bcn7fuYX.js +0 -1
- package/dist/assets/entry-preview-4ElqUVRP.js +0 -2
- package/dist/assets/entry-preview-docs-BKXv92OK.js +0 -46
- package/dist/assets/fieldComponentPropsMetaData-BqbNLw6V.js +0 -11
- package/dist/assets/formControlLabelClasses-BtjP4uib.js +0 -1
- package/dist/assets/formGroupClasses-D9ChLj7o.js +0 -1
- package/dist/assets/formLabelClasses-xMgYguuN.js +0 -1
- package/dist/assets/generateUtilityClasses-DYvjsuMV.js +0 -1
- package/dist/assets/getScrollbarSize-Bqq2hMjQ.js +0 -1
- package/dist/assets/i18n-DmkmAJlT.js +0 -11
- package/dist/assets/i18next-DbMy2do-.js +0 -1
- package/dist/assets/iconUtils-Cxr8mVIA.js +0 -11
- package/dist/assets/iframe-C-RQ_TKY.js +0 -211
- package/dist/assets/index-B5xazMy1.js +0 -1
- package/dist/assets/index-B885ELRa.js +0 -1
- package/dist/assets/index-BJMTVygn.js +0 -240
- package/dist/assets/index-BJTM6NaI.js +0 -192
- package/dist/assets/index-BeeV6X6A.js +0 -1
- package/dist/assets/index-BpVuOoKb.js +0 -384
- package/dist/assets/index-BzN0w9dc.js +0 -1
- package/dist/assets/index-CDGerSbe.js +0 -1
- package/dist/assets/index-CXQShRbs.js +0 -8
- package/dist/assets/index-CpbQl8EB.js +0 -1
- package/dist/assets/index-CtY5BB1N.js +0 -1
- package/dist/assets/index-DieBXP3Z.js +0 -24
- package/dist/assets/index-DrFu-skq.js +0 -6
- package/dist/assets/index-NdkWRN8K.js +0 -9
- package/dist/assets/index.esm-D7MwfoQM.js +0 -138
- package/dist/assets/index.modern-CkASn_bb.js +0 -14
- package/dist/assets/inheritsLoose-CWawPfk8.js +0 -1
- package/dist/assets/inputAdornmentClasses-DYNxkEwO.js +0 -1
- package/dist/assets/inputBaseClasses-PAjj3ZBN.js +0 -1
- package/dist/assets/inputUtils-Dbi8XkA6.js +0 -11
- package/dist/assets/isHostComponent-DVu5iVWx.js +0 -1
- package/dist/assets/jsx-runtime-CnH95YSl.js +0 -9
- package/dist/assets/matchers-7Z3WT2CE-T3xScrR7.js +0 -14
- package/dist/assets/menuItemClasses-DFm3-Sf1.js +0 -1
- package/dist/assets/ownerDocument-DW-IO8s5.js +0 -1
- package/dist/assets/ownerWindow-HkKU3E4x.js +0 -1
- package/dist/assets/personData-CZJz4n06.js +0 -1
- package/dist/assets/personData-Ci-ru1S9.js +0 -11
- package/dist/assets/pickerComponentPropsMetadata-C9L3AhmF.js +0 -21
- package/dist/assets/popper-CMBiYTiD.js +0 -1
- package/dist/assets/preview-B-jDHJEN.js +0 -1
- package/dist/assets/preview-B8lJiyuQ.js +0 -34
- package/dist/assets/preview-BBWR9nbA.js +0 -1
- package/dist/assets/preview-BWzBA1C2.js +0 -396
- package/dist/assets/preview-BzLY45Eo.js +0 -2
- package/dist/assets/preview-CYp4EYYZ.js +0 -1
- package/dist/assets/preview-CeHM5zqH.js +0 -2
- package/dist/assets/preview-CvbIS5ZJ.js +0 -1
- package/dist/assets/preview-DGUiP6tS.js +0 -7
- package/dist/assets/preview-DHQbi4pV.js +0 -1
- package/dist/assets/preview-D_z0Z5cB.js +0 -1
- package/dist/assets/preview-MBifGIx_.js +0 -1
- package/dist/assets/queryOdysseySelector-B27JCf-A.js +0 -151
- package/dist/assets/radioClasses-f3ayyf7y.js +0 -1
- package/dist/assets/react-18-CxBTDaIe.js +0 -1
- package/dist/assets/resolveComponentProps-DMpKAZvD.js +0 -1
- package/dist/assets/tableRowClasses-inqOIkjd.js +0 -1
- package/dist/assets/test-utils-H9lH7T5D.js +0 -9
- package/dist/assets/tooltipClasses-C74HjonW.js +0 -1
- package/dist/assets/typographyClasses-D8vr2n3l.js +0 -1
- package/dist/assets/useAutocomplete-C7VK9p4p.js +0 -11
- package/dist/assets/useContrastMode-BthoHtLy.js +0 -21
- package/dist/assets/useControlled-NQulfz4l.js +0 -1
- package/dist/assets/useFormControl-BMISTZuX.js +0 -1
- package/dist/assets/useId-cMcvCE23.js +0 -1
- package/dist/assets/useId-kSseQ0DW.js +0 -1
- package/dist/assets/useIsFocusVisible-DH0qxT5e.js +0 -1
- package/dist/assets/useMobilePicker-CfUl5sFz.js +0 -6
- package/dist/assets/useOdysseyDateFields-DQkQFY7w.js +0 -61
- package/dist/assets/useScrollIndication-BJW9jXaC.js +0 -31
- package/dist/assets/useSlot-F4Qz2Wzp.js +0 -1
- package/dist/assets/useTheme-C05bJKih.js +0 -1
- package/dist/assets/useThemeProps-BG38P4ul.js +0 -1
- package/dist/assets/useThemeProps-Dy5sAWyz.js +0 -1
- package/dist/assets/useTranslation-vEf1lqoc.js +0 -1
- package/dist/assets/useUniqueId-Bsgqe1tm.js +0 -11
- package/dist/assets/utils-gq6yExow.js +0 -1
- package/dist/assets/utils-iop7lDec.js +0 -1
- package/dist/assets/v4-BOvFkHkt.js +0 -1
- package/dist/assets/visuallyHidden-Dan1xhjv.js +0 -1
- package/dist/cjs/@types/i18next.d.cjs +0 -4
- package/dist/cjs/@types/i18next.d.cjs.map +0 -1
- package/dist/cjs/@types/properties.d.cjs +0 -2
- package/dist/cjs/@types/properties.d.cjs.map +0 -1
- package/dist/cjs/OdysseyTranslationProvider.cjs +0 -55
- package/dist/cjs/OdysseyTranslationProvider.cjs.map +0 -1
- package/dist/cjs/OdysseyTranslationProvider.types.cjs.map +0 -1
- package/dist/cjs/i18n.cjs +0 -113
- package/dist/cjs/i18n.cjs.map +0 -1
- package/dist/cjs/shadow-dom/index.cjs +0 -17
- package/dist/cjs/shadow-dom/index.cjs.map +0 -1
- package/dist/cjs/shadow-dom/shadow-dom.cjs.map +0 -1
- package/dist/esm/@types/i18next.d.js +0 -14
- package/dist/esm/@types/i18next.d.js.map +0 -1
- package/dist/esm/@types/properties.d.js +0 -2
- package/dist/esm/@types/properties.d.js.map +0 -1
- package/dist/esm/OdysseyTranslationProvider.js +0 -48
- package/dist/esm/OdysseyTranslationProvider.js.map +0 -1
- package/dist/esm/OdysseyTranslationProvider.types.js +0 -14
- package/dist/esm/OdysseyTranslationProvider.types.js.map +0 -1
- package/dist/esm/i18n.js +0 -100
- package/dist/esm/i18n.js.map +0 -1
- package/dist/esm/shadow-dom/index.js.map +0 -1
- package/dist/esm/shadow-dom/shadow-dom.js.map +0 -1
- package/dist/favicon.svg +0 -1
- package/dist/iframe.html +0 -747
- package/dist/index.cjs +0 -231
- package/dist/index.d.ts +0 -233
- package/dist/index.d.ts.map +0 -1
- package/dist/index.html +0 -203
- package/dist/index.js +0 -25
- package/dist/index.json +0 -1
- package/dist/index.mjs +0 -229
- package/dist/index.scss +0 -549
- package/dist/nunito-sans-bold-italic.woff2 +0 -0
- package/dist/nunito-sans-bold.woff2 +0 -0
- package/dist/nunito-sans-italic.woff2 +0 -0
- package/dist/nunito-sans-regular.woff2 +0 -0
- package/dist/project.json +0 -1
- package/dist/sb-addons/a11y-3/manager-bundle.js +0 -220
- package/dist/sb-addons/docs-1/manager-bundle.js +0 -242
- package/dist/sb-addons/essentials-actions-5/manager-bundle.js +0 -3
- package/dist/sb-addons/essentials-backgrounds-6/manager-bundle.js +0 -12
- package/dist/sb-addons/essentials-controls-4/manager-bundle.js +0 -402
- package/dist/sb-addons/essentials-measure-9/manager-bundle.js +0 -3
- package/dist/sb-addons/essentials-outline-10/manager-bundle.js +0 -3
- package/dist/sb-addons/essentials-toolbars-8/manager-bundle.js +0 -3
- package/dist/sb-addons/essentials-viewport-7/manager-bundle.js +0 -3
- package/dist/sb-addons/interactions-11/manager-bundle.js +0 -222
- package/dist/sb-addons/links-2/manager-bundle.js +0 -3
- package/dist/sb-addons/rtl-12/manager-bundle.js +0 -3
- package/dist/sb-addons/storybook-13/manager-bundle.js +0 -3
- package/dist/sb-addons/storybook-core-core-server-presets-0/common-manager-bundle.js +0 -3
- package/dist/sb-common-assets/favicon.svg +0 -1
- package/dist/sb-common-assets/nunito-sans-bold-italic.woff2 +0 -0
- package/dist/sb-common-assets/nunito-sans-bold.woff2 +0 -0
- package/dist/sb-common-assets/nunito-sans-italic.woff2 +0 -0
- package/dist/sb-common-assets/nunito-sans-regular.woff2 +0 -0
- package/dist/sb-manager/globals-module-info.js +0 -1052
- package/dist/sb-manager/globals-runtime.js +0 -42127
- package/dist/sb-manager/globals.js +0 -48
- package/dist/sb-manager/runtime.js +0 -12048
- package/dist/tsconfig.tsbuildinfo +0 -1
- package/dist/types/OdysseyTranslationProvider.d.ts +0 -24
- package/dist/types/OdysseyTranslationProvider.d.ts.map +0 -1
- package/dist/types/OdysseyTranslationProvider.types.d.ts +0 -14
- package/dist/types/OdysseyTranslationProvider.types.d.ts.map +0 -1
- package/dist/types/i18n.d.ts +0 -3937
- package/dist/types/shadow-dom/index.d.ts.map +0 -1
- package/dist/types/shadow-dom/shadow-dom.d.ts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RowActions.js","names":["memo","useCallback","
|
|
1
|
+
{"version":3,"file":"RowActions.js","names":["memo","useCallback","MenuItem","useTranslation","ArrowBottomIcon","ArrowDownIcon","ArrowTopIcon","ArrowUpIcon","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","RowActions","isRowReorderingDisabled","row","incomingRow","rowActionMenuItems","rowIndex","totalRows","updateRowOrder","t","original","handleToFrontClick","rowId","id","newRowIndex","handleForwardClick","Math","max","handleBackwardClick","handleToBackClick","children","isDisabled","onClick","MemoizedRowActions","displayName"],"sources":["../../../../src/labs/DataView/RowActions.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2023-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport { MRT_Row, MRT_RowData } from \"material-react-table\";\nimport { Fragment, memo, ReactElement, useCallback } from \"react\";\n\nimport { Button, MenuButtonProps, MenuItem } from \"../../Buttons/index.js\";\nimport { useTranslation } from \"../../i18n.generated/i18n.js\";\nimport {\n ArrowBottomIcon,\n ArrowDownIcon,\n ArrowTopIcon,\n ArrowUpIcon,\n} from \"../../icons.generated/index.js\";\nimport { DataTableProps } from \"./DataTable.js\";\n\n// Rows coming from TableLayoutContent will be in the MRT-expected row format,\n// while rows coming from CardLayoutContent will be pure data\ntype RowOrTableRow<TData extends MRT_RowData> = MRT_Row<TData> | TData;\n\nexport type RowActionsProps<TData extends MRT_RowData> = {\n isRowReorderingDisabled?: boolean;\n row: RowOrTableRow<TData>;\n rowActionButtons?: (\n row?: TData,\n ) => ReactElement<typeof Button> | ReactElement<typeof Fragment>;\n rowActionMenuItems?: (row: TData) => MenuButtonProps[\"children\"];\n rowIndex: number;\n totalRows?: DataTableProps<TData>[\"totalRows\"];\n updateRowOrder?: ({\n newRowIndex,\n rowId,\n }: {\n newRowIndex: number;\n rowId: string;\n }) => void;\n};\n\nconst RowActions = <TData extends MRT_RowData>({\n isRowReorderingDisabled,\n row: incomingRow,\n rowActionMenuItems,\n rowIndex,\n totalRows,\n updateRowOrder,\n}: RowActionsProps<TData>) => {\n const { t } = useTranslation();\n\n const row = (\n incomingRow.original ? incomingRow.original : incomingRow\n ) as TData & { id: string };\n\n const handleToFrontClick = useCallback(() => {\n if (updateRowOrder) {\n updateRowOrder({ rowId: row.id, newRowIndex: 0 });\n }\n }, [row.id, updateRowOrder]);\n\n const handleForwardClick = useCallback(() => {\n if (updateRowOrder) {\n updateRowOrder({ rowId: row.id, newRowIndex: Math.max(0, rowIndex - 1) });\n }\n }, [row.id, rowIndex, updateRowOrder]);\n\n const handleBackwardClick = useCallback(() => {\n if (updateRowOrder) {\n updateRowOrder({ rowId: row.id, newRowIndex: rowIndex + 1 });\n }\n }, [row.id, rowIndex, updateRowOrder]);\n\n const handleToBackClick = useCallback(() => {\n if (updateRowOrder) {\n updateRowOrder({\n rowId: row.id,\n newRowIndex: totalRows ? totalRows - 1 : rowIndex,\n });\n }\n }, [row.id, rowIndex, totalRows, updateRowOrder]);\n\n return (\n <>\n {rowActionMenuItems && rowActionMenuItems(row)}\n {rowActionMenuItems && updateRowOrder && <hr />}\n {updateRowOrder && (\n <>\n <MenuItem\n isDisabled={rowIndex <= 0 || isRowReorderingDisabled}\n onClick={handleToFrontClick}\n >\n <ArrowTopIcon /> {t(\"table.reorder.tofront\")}\n </MenuItem>\n <MenuItem\n isDisabled={rowIndex <= 0 || isRowReorderingDisabled}\n onClick={handleForwardClick}\n >\n <ArrowUpIcon /> {t(\"table.reorder.forward\")}\n </MenuItem>\n <MenuItem\n isDisabled={\n (totalRows ? rowIndex >= totalRows - 1 : false) ||\n isRowReorderingDisabled\n }\n onClick={handleBackwardClick}\n >\n <ArrowDownIcon /> {t(\"table.reorder.backward\")}\n </MenuItem>\n {totalRows && (\n <MenuItem\n isDisabled={rowIndex >= totalRows - 1 || isRowReorderingDisabled}\n onClick={handleToBackClick}\n >\n <ArrowBottomIcon /> {t(\"table.reorder.toback\")}\n </MenuItem>\n )}\n </>\n )}\n </>\n );\n};\n\nconst MemoizedRowActions = memo(RowActions);\nMemoizedRowActions.displayName = \"RowActions\";\n\nexport { MemoizedRowActions as RowActions };\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -13,10 +13,10 @@
|
|
|
13
13
|
import styled from "@emotion/styled";
|
|
14
14
|
import { MRT_TableContainer, useMaterialReactTable } from "material-react-table";
|
|
15
15
|
import { memo, useCallback, useEffect, useMemo, useRef, useState } from "react";
|
|
16
|
-
import { useTranslation } from "react-i18next";
|
|
17
16
|
import { Box } from "../../Box.js";
|
|
18
17
|
import { Button, MenuButton } from "../../Buttons/index.js";
|
|
19
18
|
import { useScrollIndication } from "../../DataTable/useScrollIndication.js";
|
|
19
|
+
import { useTranslation } from "../../i18n.generated/i18n.js";
|
|
20
20
|
import { ArrowDownIcon, ArrowUnsortedIcon, ChevronDownIcon, DragIndicatorIcon, MoreIcon } from "../../icons.generated/index.js";
|
|
21
21
|
import { useOdysseyDesignTokens } from "../../OdysseyDesignTokensContext.js";
|
|
22
22
|
import { RowActions } from "./RowActions.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableLayoutContent.js","names":["styled","MRT_TableContainer","useMaterialReactTable","memo","useCallback","useEffect","useMemo","useRef","useState","useTranslation","Box","Button","MenuButton","useScrollIndication","ArrowDownIcon","ArrowUnsortedIcon","ChevronDownIcon","DragIndicatorIcon","MoreIcon","useOdysseyDesignTokens","RowActions","dataTableImmutableSettings","displayColumnDefOptions","ScrollableTableContainer","jsx","_jsx","jsxs","_jsxs","TextWrapper","whiteSpace","textOverflow","overflow","RowActionsContainer","display","TableLayoutContent","columns","data","draggingRow","emptyState","enableVirtualization","getRowId","hasRowReordering","hasRowSelection","isEmpty","isLoading","isNoResults","isRowReorderingDisabled","onReorderRows","pagination","rowReorderingUtilities","rowSelection","setRowSelection","setTableState","tableLayoutOptions","tableState","totalRows","isTableContainerScrolledToStart","setIsTableContainerScrolledToStart","isTableContainerScrolledToEnd","setIsTableContainerScrolledToEnd","tableInnerContainerWidth","setTableInnerContainerWidth","shouldUpdateScroll","tableOuterContainerRef","tableInnerContainerRef","tableContentRef","tableInnerContainer","current","tableOuterContainer","odysseyDesignTokens","t","columnIds","map","column","accessorKey","columnOrder","filter","id","rowDensityClassName","rowDensity","defaultCell","cell","value","getValue","hasTextWrapping","columnDef","enableWrapping","children","draggableTableBodyRowClassName","dragHandleStyles","dragHandleText","handleDragHandleKeyDown","handleDragHandleOnDragCapture","handleDragHandleOnDragEnd","resetDraggingAndHoveredRow","updateRowOrder","renderRowActions","row","currentIndex","index","pageIndex","pageSize","rowActionButtons","original","rowActionMenuItems","ariaLabel","buttonVariant","endIcon","menuAlignment","size","rowIndex","undefined","innerWidthStyle","width","emptyStateContainer","sx","scrollTo","clientHeight","shouldDisplayRowActions","hasColumnWithGrow","some","grow","dataTable","state","sorting","columnSorting","columnVisibility","icons","ArrowDownwardIcon","DragHandleIcon","SyncAltIcon","ExpandMoreIcon","header","muiTableBodyCellProps","align","className","muiTableHeadCellProps","visibility","isDisabled","variant","muiTableProps","ref","hasColumnResizing","muiTableContainerProps","muiTableBodyProps","tabIndex","height","enableColumnResizing","defaultColumn","Cell","enableRowActions","enableRowOrdering","Boolean","enableRowDragging","muiDetailPanelProps","paddingBlock","getIsExpanded","Spacing3","muiTableBodyRowProps","table","isDetailPanel","currentRowId","draggingRowId","hoveredRowId","getState","hoveredRow","border","backgroundColor","HueNeutralWhite","muiRowDragHandleProps","onKeyDown","event","onBlur","onDragEnd","onDragCapture","disabled","renderDetailPanel","enableRowVirtualization","currentColumn","find","sortedColumn","getIsResizing","enableSorting","hasSorting","onSortingChange","sortingUpdater","newSortVal","prevState","enableRowSelection","onRowSelectionChange","renderEmptyRowsFallback","localization","collapse","collapseAll","expand","expandAll","isScrollableEnd","isScrollableStart","MemoizedTableLayoutContent","displayName"],"sources":["../../../../src/labs/DataView/TableLayoutContent.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2024-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled, { CSSObject } from \"@emotion/styled\";\nimport {\n MRT_Row,\n MRT_RowData,\n MRT_RowSelectionState,\n MRT_TableContainer,\n MRT_TableInstance,\n MRT_TableOptions,\n useMaterialReactTable,\n} from \"material-react-table\";\nimport {\n Dispatch,\n memo,\n ReactElement,\n ReactNode,\n SetStateAction,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { Box } from \"../../Box.js\";\nimport { Button, MenuButton } from \"../../Buttons/index.js\";\nimport { useScrollIndication } from \"../../DataTable/useScrollIndication.js\";\nimport {\n ArrowDownIcon,\n ArrowUnsortedIcon,\n ChevronDownIcon,\n DragIndicatorIcon,\n MoreIcon,\n} from \"../../icons.generated/index.js\";\nimport { useOdysseyDesignTokens } from \"../../OdysseyDesignTokensContext.js\";\nimport {\n TableLayoutProps,\n TableState,\n UniversalProps,\n} from \"./componentTypes.js\";\nimport { DataTableCell } from \"./dataTypes.js\";\nimport { RowActions } from \"./RowActions.js\";\nimport {\n dataTableImmutableSettings,\n displayColumnDefOptions,\n ScrollableTableContainer,\n} from \"./tableConstants.js\";\n\nconst TextWrapper = styled(\"div\")({\n whiteSpace: \"nowrap\",\n textOverflow: \"ellipsis\",\n overflow: \"hidden\",\n});\n\nconst RowActionsContainer = styled(\"div\")({\n display: \"flex\",\n});\n\nexport type TableLayoutContentProps<TData extends MRT_RowData> = {\n columns: TableLayoutProps<TData>[\"columns\"];\n data: TData[];\n draggingRow?: MRT_Row<TData> | null;\n emptyState: ReactNode;\n enableVirtualization?: boolean;\n getRowId: UniversalProps<TData>[\"getRowId\"];\n hasRowReordering: UniversalProps<TData>[\"hasRowReordering\"];\n hasRowSelection: UniversalProps<TData>[\"hasRowSelection\"];\n isEmpty?: boolean;\n isLoading: boolean;\n isNoResults?: boolean;\n isRowReorderingDisabled?: boolean;\n onReorderRows: UniversalProps<TData>[\"onReorderRows\"];\n pagination: {\n pageIndex: number;\n pageSize: number;\n };\n rowReorderingUtilities: {\n draggableTableBodyRowClassName: ({\n currentRowId,\n draggingRowId,\n hoveredRowId,\n }: {\n currentRowId: string;\n draggingRowId?: string;\n hoveredRowId?: string;\n }) => string | undefined;\n dragHandleStyles: CSSObject;\n dragHandleText: {\n \"aria-label\": string;\n title: string;\n };\n handleDragHandleKeyDown: ({\n table,\n row,\n event,\n }: {\n event: React.KeyboardEvent<HTMLButtonElement>;\n row: MRT_Row<TData>;\n table: MRT_TableInstance<TData>;\n }) => void;\n handleDragHandleOnDragCapture: (table: MRT_TableInstance<TData>) => void;\n handleDragHandleOnDragEnd: (table: MRT_TableInstance<TData>) => void;\n resetDraggingAndHoveredRow: (table: MRT_TableInstance<TData>) => void;\n updateRowOrder: ({\n rowId,\n newRowIndex,\n }: {\n newRowIndex: number;\n rowId: string;\n }) => void;\n };\n rowSelection: MRT_RowSelectionState;\n setRowSelection: Dispatch<SetStateAction<MRT_RowSelectionState>>;\n setTableState: Dispatch<SetStateAction<TableState>>;\n tableLayoutOptions: TableLayoutProps<TData>;\n tableState: TableState;\n totalRows: UniversalProps<TData>[\"totalRows\"];\n};\n\ntype TableLayoutContentComponent = (<TData extends MRT_RowData>(\n props: TableLayoutContentProps<TData>,\n) => JSX.Element) & {\n displayName?: string;\n};\n\nconst TableLayoutContent = <TData extends MRT_RowData>({\n columns,\n data,\n draggingRow,\n emptyState,\n enableVirtualization,\n getRowId,\n hasRowReordering,\n hasRowSelection,\n isEmpty,\n isLoading,\n isNoResults,\n isRowReorderingDisabled,\n onReorderRows,\n pagination,\n rowReorderingUtilities,\n rowSelection,\n setRowSelection,\n setTableState,\n tableLayoutOptions,\n tableState,\n totalRows,\n}: TableLayoutContentProps<TData>) => {\n const [isTableContainerScrolledToStart, setIsTableContainerScrolledToStart] =\n useState(true);\n const [isTableContainerScrolledToEnd, setIsTableContainerScrolledToEnd] =\n useState(true);\n const [tableInnerContainerWidth, setTableInnerContainerWidth] =\n useState<string>(\"100%\");\n const shouldUpdateScroll = useRef<boolean>(false);\n const tableOuterContainerRef = useRef<HTMLDivElement>(null);\n const tableInnerContainerRef = useRef<HTMLDivElement>(null);\n const tableContentRef = useRef<HTMLTableElement>(null);\n\n useScrollIndication({\n setIsTableContainerScrolledToEnd: setIsTableContainerScrolledToEnd,\n setIsTableContainerScrolledToStart: setIsTableContainerScrolledToStart,\n setTableInnerContainerWidth: setTableInnerContainerWidth,\n tableInnerContainer: tableInnerContainerRef.current,\n tableOuterContainer: tableOuterContainerRef.current,\n });\n\n const odysseyDesignTokens = useOdysseyDesignTokens();\n const { t } = useTranslation();\n\n const columnIds = useMemo(() => {\n return columns.map((column) => column.accessorKey) ?? [];\n }, [columns]);\n\n const columnOrder = useMemo(\n () => [\n \"mrt-row-drag\",\n \"mrt-row-select\",\n \"mrt-row-expand\",\n ...(columnIds?.filter((id): id is string => typeof id === \"string\") ||\n []),\n \"mrt-row-actions\",\n ],\n [columnIds],\n );\n\n const rowDensityClassName = useMemo(() => {\n return tableState.rowDensity === \"spacious\"\n ? \"MuiTableBody-spacious\"\n : tableState.rowDensity === \"compact\"\n ? \"MuiTableBody-compact\"\n : \"MuiTableBody-default\";\n }, [tableState]);\n\n const defaultCell = useCallback<\n ({ cell }: { cell: DataTableCell<TData, unknown> }) => ReactElement | string\n >(({ cell }) => {\n const value = cell.getValue<string>();\n const hasTextWrapping =\n cell.column.columnDef.hasTextWrapping ||\n cell.column.columnDef.enableWrapping;\n return hasTextWrapping ? value : <TextWrapper>{value}</TextWrapper>;\n }, []);\n\n const {\n draggableTableBodyRowClassName,\n dragHandleStyles,\n dragHandleText,\n handleDragHandleKeyDown,\n handleDragHandleOnDragCapture,\n handleDragHandleOnDragEnd,\n resetDraggingAndHoveredRow,\n updateRowOrder,\n } = rowReorderingUtilities;\n\n const renderRowActions = useCallback(\n ({ row }: { row: MRT_Row<TData> }) => {\n const currentIndex =\n row.index + (pagination.pageIndex - 1) * pagination.pageSize;\n return (\n <RowActionsContainer>\n {tableLayoutOptions.rowActionButtons?.(row.original)}\n {(tableLayoutOptions.rowActionMenuItems || hasRowReordering) && (\n <MenuButton\n ariaLabel={t(\"table.moreactions.arialabel\")}\n buttonVariant=\"floating\"\n endIcon={<MoreIcon />}\n menuAlignment=\"right\"\n size=\"small\"\n >\n <RowActions\n isRowReorderingDisabled={isRowReorderingDisabled}\n row={row}\n rowActionMenuItems={\n tableLayoutOptions.rowActionMenuItems as TableLayoutProps<MRT_RowData>[\"rowActionMenuItems\"]\n }\n rowIndex={currentIndex}\n totalRows={totalRows}\n updateRowOrder={\n hasRowReordering && onReorderRows ? updateRowOrder : undefined\n }\n />\n </MenuButton>\n )}\n </RowActionsContainer>\n );\n },\n [\n hasRowReordering,\n isRowReorderingDisabled,\n onReorderRows,\n pagination.pageIndex,\n pagination.pageSize,\n t,\n tableLayoutOptions,\n totalRows,\n updateRowOrder,\n ],\n );\n\n const innerWidthStyle = useMemo(\n () => ({ width: tableInnerContainerWidth }),\n [tableInnerContainerWidth],\n );\n\n const emptyStateContainer = useCallback(\n () => <Box sx={innerWidthStyle}>{emptyState}</Box>,\n [innerWidthStyle, emptyState],\n );\n\n // Scroll to the bottom as soon as data loads after clicking the\n // loadMore pagination button\n useEffect(() => {\n if (enableVirtualization) {\n shouldUpdateScroll.current = true;\n }\n }, [enableVirtualization, pagination]);\n\n useEffect(() => {\n if (\n shouldUpdateScroll.current &&\n tableContentRef.current &&\n typeof tableInnerContainerRef.current?.scrollTo !== \"undefined\"\n ) {\n tableInnerContainerRef.current?.scrollTo(\n 0,\n tableContentRef.current.clientHeight,\n );\n shouldUpdateScroll.current = false;\n }\n }, [data]);\n\n const shouldDisplayRowActions = useMemo(\n () =>\n (hasRowReordering === true && onReorderRows) ||\n tableLayoutOptions.rowActionButtons ||\n tableLayoutOptions.rowActionMenuItems\n ? true\n : false,\n [\n hasRowReordering,\n onReorderRows,\n tableLayoutOptions.rowActionButtons,\n tableLayoutOptions.rowActionMenuItems,\n ],\n );\n\n const hasColumnWithGrow = columns.some((column) => column.grow === true);\n\n const dataTable = useMaterialReactTable<TData>({\n data: !isEmpty && !isNoResults ? data : [],\n columns,\n getRowId,\n state: {\n sorting: tableState.columnSorting,\n columnVisibility: tableState.columnVisibility,\n isLoading,\n rowSelection,\n columnOrder,\n },\n icons: {\n ArrowDownwardIcon: ArrowDownIcon,\n DragHandleIcon: DragIndicatorIcon,\n SyncAltIcon: ArrowUnsortedIcon,\n ExpandMoreIcon: ChevronDownIcon,\n },\n ...dataTableImmutableSettings,\n displayColumnDefOptions: {\n ...(displayColumnDefOptions satisfies Partial<\n MRT_TableOptions<MRT_RowData>[\"displayColumnDefOptions\"]\n >),\n \"mrt-row-actions\": {\n header: \"\",\n grow: !hasColumnWithGrow,\n muiTableBodyCellProps: {\n align: \"right\" as const,\n sx: {\n overflow: \"visible\",\n width: \"unset\",\n },\n className: \"ods-actions-cell\",\n },\n muiTableHeadCellProps: {\n align: \"right\" as const,\n sx: {\n width: \"unset\",\n },\n className: \"ods-actions-cell\",\n children: (\n <Box sx={{ display: \"flex\", visibility: \"hidden\" }}>\n {tableLayoutOptions.rowActionButtons &&\n tableLayoutOptions.rowActionButtons()}\n {((hasRowReordering === true && onReorderRows) ||\n tableLayoutOptions.rowActionMenuItems) && (\n <Box>\n <Button\n ariaLabel={t(\"table.moreactions.arialabel\")}\n endIcon={<MoreIcon />}\n isDisabled\n size=\"small\"\n variant=\"floating\"\n />\n </Box>\n )}\n </Box>\n ),\n },\n },\n },\n muiTableProps: {\n ref: tableContentRef,\n className:\n !shouldDisplayRowActions && tableLayoutOptions.hasColumnResizing\n ? hasColumnWithGrow\n ? \"ods-hide-spacer-column\"\n : \"ods-hide-spacer-column ods-column-grow\"\n : \"\",\n },\n muiTableContainerProps: {\n ref: tableInnerContainerRef,\n },\n muiTableBodyProps: () => ({\n className: rowDensityClassName,\n tabIndex: 0,\n /**\n * This is a fix for an issue related to the empty state creating a\n * vertical scrollbar when virtualization is enabled. The root cause\n * is tablebody having height: 0 when virtualization is enabled and there\n * being no data\n * https://okta.slack.com/archives/C7T2H3KNJ/p1742842106148929\n */\n sx:\n isEmpty || isNoResults\n ? {\n height: \"unset\",\n }\n : undefined,\n }),\n enableColumnResizing: tableLayoutOptions.hasColumnResizing,\n defaultColumn: {\n Cell: defaultCell,\n },\n enableRowActions:\n (hasRowReordering === true && onReorderRows) ||\n tableLayoutOptions.rowActionButtons ||\n tableLayoutOptions.rowActionMenuItems\n ? true\n : false,\n renderRowActions: ({ row }) => renderRowActions({ row }),\n enableRowOrdering: hasRowReordering && Boolean(onReorderRows),\n enableRowDragging: hasRowReordering && Boolean(onReorderRows),\n muiDetailPanelProps: ({ row }) => ({\n sx: {\n paddingBlock: row.getIsExpanded()\n ? `${odysseyDesignTokens.Spacing3} !important`\n : undefined,\n },\n }),\n muiTableBodyRowProps: ({ table, row, isDetailPanel }) => ({\n className: draggableTableBodyRowClassName({\n currentRowId: row.id,\n draggingRowId: draggingRow?.id,\n hoveredRowId: table.getState().hoveredRow?.id,\n }),\n sx: isDetailPanel\n ? {\n paddingBlock: \"0 !important\",\n border: 0,\n [\"&:hover\"]: {\n backgroundColor: `${odysseyDesignTokens.HueNeutralWhite} !important`,\n },\n }\n : {},\n }),\n muiRowDragHandleProps: ({ table, row }) => ({\n onKeyDown: (event) => handleDragHandleKeyDown({ table, row, event }),\n onBlur: () => resetDraggingAndHoveredRow(table),\n onDragEnd: () => handleDragHandleOnDragEnd(table),\n onDragCapture: () => handleDragHandleOnDragCapture(table),\n disabled: isRowReorderingDisabled,\n sx: dragHandleStyles,\n ...dragHandleText,\n }),\n renderDetailPanel: tableLayoutOptions.renderDetailPanel,\n enableRowVirtualization: enableVirtualization,\n muiTableHeadCellProps: ({ column: currentColumn }) => ({\n className: tableState.columnSorting.find(\n (sortedColumn) => sortedColumn.id === currentColumn.id,\n )\n ? \"isSorted\"\n : \"isUnsorted\",\n }),\n muiTableBodyCellProps: ({ column }) => ({\n className: column.getIsResizing() ? \"isResizing\" : \"\",\n }),\n enableSorting: tableLayoutOptions.hasSorting === true, // I don't know why this needs to be true, but it still works if undefined otherwise\n onSortingChange: (sortingUpdater) => {\n const newSortVal =\n typeof sortingUpdater === \"function\"\n ? sortingUpdater(tableState.columnSorting)\n : tableState.columnSorting;\n setTableState((prevState) => ({\n ...prevState,\n columnSorting: newSortVal,\n }));\n },\n enableRowSelection: hasRowSelection,\n onRowSelectionChange: setRowSelection,\n renderEmptyRowsFallback: emptyStateContainer,\n localization: {\n collapse: t(\"table.rowexpansion.collapse\"),\n collapseAll: t(\"table.rowexpansion.collapseall\"),\n expand: t(\"table.rowexpansion.expand\"),\n expandAll: t(\"table.rowexpansion.expandall\"),\n },\n });\n\n return (\n <ScrollableTableContainer\n isScrollableEnd={!isTableContainerScrolledToEnd}\n isScrollableStart={!isTableContainerScrolledToStart}\n odysseyDesignTokens={odysseyDesignTokens}\n ref={tableOuterContainerRef}\n >\n <MRT_TableContainer table={dataTable} />\n </ScrollableTableContainer>\n );\n};\n\nconst MemoizedTableLayoutContent = memo(\n TableLayoutContent,\n) as TableLayoutContentComponent;\nMemoizedTableLayoutContent.displayName = \"TableLayoutContent\";\n\nexport { MemoizedTableLayoutContent as TableLayoutContent };\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"TableLayoutContent.js","names":["styled","MRT_TableContainer","useMaterialReactTable","memo","useCallback","useEffect","useMemo","useRef","useState","Box","Button","MenuButton","useScrollIndication","useTranslation","ArrowDownIcon","ArrowUnsortedIcon","ChevronDownIcon","DragIndicatorIcon","MoreIcon","useOdysseyDesignTokens","RowActions","dataTableImmutableSettings","displayColumnDefOptions","ScrollableTableContainer","jsx","_jsx","jsxs","_jsxs","TextWrapper","whiteSpace","textOverflow","overflow","RowActionsContainer","display","TableLayoutContent","columns","data","draggingRow","emptyState","enableVirtualization","getRowId","hasRowReordering","hasRowSelection","isEmpty","isLoading","isNoResults","isRowReorderingDisabled","onReorderRows","pagination","rowReorderingUtilities","rowSelection","setRowSelection","setTableState","tableLayoutOptions","tableState","totalRows","isTableContainerScrolledToStart","setIsTableContainerScrolledToStart","isTableContainerScrolledToEnd","setIsTableContainerScrolledToEnd","tableInnerContainerWidth","setTableInnerContainerWidth","shouldUpdateScroll","tableOuterContainerRef","tableInnerContainerRef","tableContentRef","tableInnerContainer","current","tableOuterContainer","odysseyDesignTokens","t","columnIds","map","column","accessorKey","columnOrder","filter","id","rowDensityClassName","rowDensity","defaultCell","cell","value","getValue","hasTextWrapping","columnDef","enableWrapping","children","draggableTableBodyRowClassName","dragHandleStyles","dragHandleText","handleDragHandleKeyDown","handleDragHandleOnDragCapture","handleDragHandleOnDragEnd","resetDraggingAndHoveredRow","updateRowOrder","renderRowActions","row","currentIndex","index","pageIndex","pageSize","rowActionButtons","original","rowActionMenuItems","ariaLabel","buttonVariant","endIcon","menuAlignment","size","rowIndex","undefined","innerWidthStyle","width","emptyStateContainer","sx","scrollTo","clientHeight","shouldDisplayRowActions","hasColumnWithGrow","some","grow","dataTable","state","sorting","columnSorting","columnVisibility","icons","ArrowDownwardIcon","DragHandleIcon","SyncAltIcon","ExpandMoreIcon","header","muiTableBodyCellProps","align","className","muiTableHeadCellProps","visibility","isDisabled","variant","muiTableProps","ref","hasColumnResizing","muiTableContainerProps","muiTableBodyProps","tabIndex","height","enableColumnResizing","defaultColumn","Cell","enableRowActions","enableRowOrdering","Boolean","enableRowDragging","muiDetailPanelProps","paddingBlock","getIsExpanded","Spacing3","muiTableBodyRowProps","table","isDetailPanel","currentRowId","draggingRowId","hoveredRowId","getState","hoveredRow","border","backgroundColor","HueNeutralWhite","muiRowDragHandleProps","onKeyDown","event","onBlur","onDragEnd","onDragCapture","disabled","renderDetailPanel","enableRowVirtualization","currentColumn","find","sortedColumn","getIsResizing","enableSorting","hasSorting","onSortingChange","sortingUpdater","newSortVal","prevState","enableRowSelection","onRowSelectionChange","renderEmptyRowsFallback","localization","collapse","collapseAll","expand","expandAll","isScrollableEnd","isScrollableStart","MemoizedTableLayoutContent","displayName"],"sources":["../../../../src/labs/DataView/TableLayoutContent.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2024-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled, { CSSObject } from \"@emotion/styled\";\nimport {\n MRT_Row,\n MRT_RowData,\n MRT_RowSelectionState,\n MRT_TableContainer,\n MRT_TableInstance,\n MRT_TableOptions,\n useMaterialReactTable,\n} from \"material-react-table\";\nimport {\n Dispatch,\n memo,\n ReactElement,\n ReactNode,\n SetStateAction,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\n\nimport { Box } from \"../../Box.js\";\nimport { Button, MenuButton } from \"../../Buttons/index.js\";\nimport { useScrollIndication } from \"../../DataTable/useScrollIndication.js\";\nimport { useTranslation } from \"../../i18n.generated/i18n.js\";\nimport {\n ArrowDownIcon,\n ArrowUnsortedIcon,\n ChevronDownIcon,\n DragIndicatorIcon,\n MoreIcon,\n} from \"../../icons.generated/index.js\";\nimport { useOdysseyDesignTokens } from \"../../OdysseyDesignTokensContext.js\";\nimport {\n TableLayoutProps,\n TableState,\n UniversalProps,\n} from \"./componentTypes.js\";\nimport { DataTableCell } from \"./dataTypes.js\";\nimport { RowActions } from \"./RowActions.js\";\nimport {\n dataTableImmutableSettings,\n displayColumnDefOptions,\n ScrollableTableContainer,\n} from \"./tableConstants.js\";\n\nconst TextWrapper = styled(\"div\")({\n whiteSpace: \"nowrap\",\n textOverflow: \"ellipsis\",\n overflow: \"hidden\",\n});\n\nconst RowActionsContainer = styled(\"div\")({\n display: \"flex\",\n});\n\nexport type TableLayoutContentProps<TData extends MRT_RowData> = {\n columns: TableLayoutProps<TData>[\"columns\"];\n data: TData[];\n draggingRow?: MRT_Row<TData> | null;\n emptyState: ReactNode;\n enableVirtualization?: boolean;\n getRowId: UniversalProps<TData>[\"getRowId\"];\n hasRowReordering: UniversalProps<TData>[\"hasRowReordering\"];\n hasRowSelection: UniversalProps<TData>[\"hasRowSelection\"];\n isEmpty?: boolean;\n isLoading: boolean;\n isNoResults?: boolean;\n isRowReorderingDisabled?: boolean;\n onReorderRows: UniversalProps<TData>[\"onReorderRows\"];\n pagination: {\n pageIndex: number;\n pageSize: number;\n };\n rowReorderingUtilities: {\n draggableTableBodyRowClassName: ({\n currentRowId,\n draggingRowId,\n hoveredRowId,\n }: {\n currentRowId: string;\n draggingRowId?: string;\n hoveredRowId?: string;\n }) => string | undefined;\n dragHandleStyles: CSSObject;\n dragHandleText: {\n \"aria-label\": string;\n title: string;\n };\n handleDragHandleKeyDown: ({\n table,\n row,\n event,\n }: {\n event: React.KeyboardEvent<HTMLButtonElement>;\n row: MRT_Row<TData>;\n table: MRT_TableInstance<TData>;\n }) => void;\n handleDragHandleOnDragCapture: (table: MRT_TableInstance<TData>) => void;\n handleDragHandleOnDragEnd: (table: MRT_TableInstance<TData>) => void;\n resetDraggingAndHoveredRow: (table: MRT_TableInstance<TData>) => void;\n updateRowOrder: ({\n rowId,\n newRowIndex,\n }: {\n newRowIndex: number;\n rowId: string;\n }) => void;\n };\n rowSelection: MRT_RowSelectionState;\n setRowSelection: Dispatch<SetStateAction<MRT_RowSelectionState>>;\n setTableState: Dispatch<SetStateAction<TableState>>;\n tableLayoutOptions: TableLayoutProps<TData>;\n tableState: TableState;\n totalRows: UniversalProps<TData>[\"totalRows\"];\n};\n\ntype TableLayoutContentComponent = (<TData extends MRT_RowData>(\n props: TableLayoutContentProps<TData>,\n) => JSX.Element) & {\n displayName?: string;\n};\n\nconst TableLayoutContent = <TData extends MRT_RowData>({\n columns,\n data,\n draggingRow,\n emptyState,\n enableVirtualization,\n getRowId,\n hasRowReordering,\n hasRowSelection,\n isEmpty,\n isLoading,\n isNoResults,\n isRowReorderingDisabled,\n onReorderRows,\n pagination,\n rowReorderingUtilities,\n rowSelection,\n setRowSelection,\n setTableState,\n tableLayoutOptions,\n tableState,\n totalRows,\n}: TableLayoutContentProps<TData>) => {\n const [isTableContainerScrolledToStart, setIsTableContainerScrolledToStart] =\n useState(true);\n const [isTableContainerScrolledToEnd, setIsTableContainerScrolledToEnd] =\n useState(true);\n const [tableInnerContainerWidth, setTableInnerContainerWidth] =\n useState<string>(\"100%\");\n const shouldUpdateScroll = useRef<boolean>(false);\n const tableOuterContainerRef = useRef<HTMLDivElement>(null);\n const tableInnerContainerRef = useRef<HTMLDivElement>(null);\n const tableContentRef = useRef<HTMLTableElement>(null);\n\n useScrollIndication({\n setIsTableContainerScrolledToEnd: setIsTableContainerScrolledToEnd,\n setIsTableContainerScrolledToStart: setIsTableContainerScrolledToStart,\n setTableInnerContainerWidth: setTableInnerContainerWidth,\n tableInnerContainer: tableInnerContainerRef.current,\n tableOuterContainer: tableOuterContainerRef.current,\n });\n\n const odysseyDesignTokens = useOdysseyDesignTokens();\n const { t } = useTranslation();\n\n const columnIds = useMemo(() => {\n return columns.map((column) => column.accessorKey) ?? [];\n }, [columns]);\n\n const columnOrder = useMemo(\n () => [\n \"mrt-row-drag\",\n \"mrt-row-select\",\n \"mrt-row-expand\",\n ...(columnIds?.filter((id): id is string => typeof id === \"string\") ||\n []),\n \"mrt-row-actions\",\n ],\n [columnIds],\n );\n\n const rowDensityClassName = useMemo(() => {\n return tableState.rowDensity === \"spacious\"\n ? \"MuiTableBody-spacious\"\n : tableState.rowDensity === \"compact\"\n ? \"MuiTableBody-compact\"\n : \"MuiTableBody-default\";\n }, [tableState]);\n\n const defaultCell = useCallback<\n ({ cell }: { cell: DataTableCell<TData, unknown> }) => ReactElement | string\n >(({ cell }) => {\n const value = cell.getValue<string>();\n const hasTextWrapping =\n cell.column.columnDef.hasTextWrapping ||\n cell.column.columnDef.enableWrapping;\n return hasTextWrapping ? value : <TextWrapper>{value}</TextWrapper>;\n }, []);\n\n const {\n draggableTableBodyRowClassName,\n dragHandleStyles,\n dragHandleText,\n handleDragHandleKeyDown,\n handleDragHandleOnDragCapture,\n handleDragHandleOnDragEnd,\n resetDraggingAndHoveredRow,\n updateRowOrder,\n } = rowReorderingUtilities;\n\n const renderRowActions = useCallback(\n ({ row }: { row: MRT_Row<TData> }) => {\n const currentIndex =\n row.index + (pagination.pageIndex - 1) * pagination.pageSize;\n return (\n <RowActionsContainer>\n {tableLayoutOptions.rowActionButtons?.(row.original)}\n {(tableLayoutOptions.rowActionMenuItems || hasRowReordering) && (\n <MenuButton\n ariaLabel={t(\"table.moreactions.arialabel\")}\n buttonVariant=\"floating\"\n endIcon={<MoreIcon />}\n menuAlignment=\"right\"\n size=\"small\"\n >\n <RowActions\n isRowReorderingDisabled={isRowReorderingDisabled}\n row={row}\n rowActionMenuItems={\n tableLayoutOptions.rowActionMenuItems as TableLayoutProps<MRT_RowData>[\"rowActionMenuItems\"]\n }\n rowIndex={currentIndex}\n totalRows={totalRows}\n updateRowOrder={\n hasRowReordering && onReorderRows ? updateRowOrder : undefined\n }\n />\n </MenuButton>\n )}\n </RowActionsContainer>\n );\n },\n [\n hasRowReordering,\n isRowReorderingDisabled,\n onReorderRows,\n pagination.pageIndex,\n pagination.pageSize,\n t,\n tableLayoutOptions,\n totalRows,\n updateRowOrder,\n ],\n );\n\n const innerWidthStyle = useMemo(\n () => ({ width: tableInnerContainerWidth }),\n [tableInnerContainerWidth],\n );\n\n const emptyStateContainer = useCallback(\n () => <Box sx={innerWidthStyle}>{emptyState}</Box>,\n [innerWidthStyle, emptyState],\n );\n\n // Scroll to the bottom as soon as data loads after clicking the\n // loadMore pagination button\n useEffect(() => {\n if (enableVirtualization) {\n shouldUpdateScroll.current = true;\n }\n }, [enableVirtualization, pagination]);\n\n useEffect(() => {\n if (\n shouldUpdateScroll.current &&\n tableContentRef.current &&\n typeof tableInnerContainerRef.current?.scrollTo !== \"undefined\"\n ) {\n tableInnerContainerRef.current?.scrollTo(\n 0,\n tableContentRef.current.clientHeight,\n );\n shouldUpdateScroll.current = false;\n }\n }, [data]);\n\n const shouldDisplayRowActions = useMemo(\n () =>\n (hasRowReordering === true && onReorderRows) ||\n tableLayoutOptions.rowActionButtons ||\n tableLayoutOptions.rowActionMenuItems\n ? true\n : false,\n [\n hasRowReordering,\n onReorderRows,\n tableLayoutOptions.rowActionButtons,\n tableLayoutOptions.rowActionMenuItems,\n ],\n );\n\n const hasColumnWithGrow = columns.some((column) => column.grow === true);\n\n const dataTable = useMaterialReactTable<TData>({\n data: !isEmpty && !isNoResults ? data : [],\n columns,\n getRowId,\n state: {\n sorting: tableState.columnSorting,\n columnVisibility: tableState.columnVisibility,\n isLoading,\n rowSelection,\n columnOrder,\n },\n icons: {\n ArrowDownwardIcon: ArrowDownIcon,\n DragHandleIcon: DragIndicatorIcon,\n SyncAltIcon: ArrowUnsortedIcon,\n ExpandMoreIcon: ChevronDownIcon,\n },\n ...dataTableImmutableSettings,\n displayColumnDefOptions: {\n ...(displayColumnDefOptions satisfies Partial<\n MRT_TableOptions<MRT_RowData>[\"displayColumnDefOptions\"]\n >),\n \"mrt-row-actions\": {\n header: \"\",\n grow: !hasColumnWithGrow,\n muiTableBodyCellProps: {\n align: \"right\" as const,\n sx: {\n overflow: \"visible\",\n width: \"unset\",\n },\n className: \"ods-actions-cell\",\n },\n muiTableHeadCellProps: {\n align: \"right\" as const,\n sx: {\n width: \"unset\",\n },\n className: \"ods-actions-cell\",\n children: (\n <Box sx={{ display: \"flex\", visibility: \"hidden\" }}>\n {tableLayoutOptions.rowActionButtons &&\n tableLayoutOptions.rowActionButtons()}\n {((hasRowReordering === true && onReorderRows) ||\n tableLayoutOptions.rowActionMenuItems) && (\n <Box>\n <Button\n ariaLabel={t(\"table.moreactions.arialabel\")}\n endIcon={<MoreIcon />}\n isDisabled\n size=\"small\"\n variant=\"floating\"\n />\n </Box>\n )}\n </Box>\n ),\n },\n },\n },\n muiTableProps: {\n ref: tableContentRef,\n className:\n !shouldDisplayRowActions && tableLayoutOptions.hasColumnResizing\n ? hasColumnWithGrow\n ? \"ods-hide-spacer-column\"\n : \"ods-hide-spacer-column ods-column-grow\"\n : \"\",\n },\n muiTableContainerProps: {\n ref: tableInnerContainerRef,\n },\n muiTableBodyProps: () => ({\n className: rowDensityClassName,\n tabIndex: 0,\n /**\n * This is a fix for an issue related to the empty state creating a\n * vertical scrollbar when virtualization is enabled. The root cause\n * is tablebody having height: 0 when virtualization is enabled and there\n * being no data\n * https://okta.slack.com/archives/C7T2H3KNJ/p1742842106148929\n */\n sx:\n isEmpty || isNoResults\n ? {\n height: \"unset\",\n }\n : undefined,\n }),\n enableColumnResizing: tableLayoutOptions.hasColumnResizing,\n defaultColumn: {\n Cell: defaultCell,\n },\n enableRowActions:\n (hasRowReordering === true && onReorderRows) ||\n tableLayoutOptions.rowActionButtons ||\n tableLayoutOptions.rowActionMenuItems\n ? true\n : false,\n renderRowActions: ({ row }) => renderRowActions({ row }),\n enableRowOrdering: hasRowReordering && Boolean(onReorderRows),\n enableRowDragging: hasRowReordering && Boolean(onReorderRows),\n muiDetailPanelProps: ({ row }) => ({\n sx: {\n paddingBlock: row.getIsExpanded()\n ? `${odysseyDesignTokens.Spacing3} !important`\n : undefined,\n },\n }),\n muiTableBodyRowProps: ({ table, row, isDetailPanel }) => ({\n className: draggableTableBodyRowClassName({\n currentRowId: row.id,\n draggingRowId: draggingRow?.id,\n hoveredRowId: table.getState().hoveredRow?.id,\n }),\n sx: isDetailPanel\n ? {\n paddingBlock: \"0 !important\",\n border: 0,\n [\"&:hover\"]: {\n backgroundColor: `${odysseyDesignTokens.HueNeutralWhite} !important`,\n },\n }\n : {},\n }),\n muiRowDragHandleProps: ({ table, row }) => ({\n onKeyDown: (event) => handleDragHandleKeyDown({ table, row, event }),\n onBlur: () => resetDraggingAndHoveredRow(table),\n onDragEnd: () => handleDragHandleOnDragEnd(table),\n onDragCapture: () => handleDragHandleOnDragCapture(table),\n disabled: isRowReorderingDisabled,\n sx: dragHandleStyles,\n ...dragHandleText,\n }),\n renderDetailPanel: tableLayoutOptions.renderDetailPanel,\n enableRowVirtualization: enableVirtualization,\n muiTableHeadCellProps: ({ column: currentColumn }) => ({\n className: tableState.columnSorting.find(\n (sortedColumn) => sortedColumn.id === currentColumn.id,\n )\n ? \"isSorted\"\n : \"isUnsorted\",\n }),\n muiTableBodyCellProps: ({ column }) => ({\n className: column.getIsResizing() ? \"isResizing\" : \"\",\n }),\n enableSorting: tableLayoutOptions.hasSorting === true, // I don't know why this needs to be true, but it still works if undefined otherwise\n onSortingChange: (sortingUpdater) => {\n const newSortVal =\n typeof sortingUpdater === \"function\"\n ? sortingUpdater(tableState.columnSorting)\n : tableState.columnSorting;\n setTableState((prevState) => ({\n ...prevState,\n columnSorting: newSortVal,\n }));\n },\n enableRowSelection: hasRowSelection,\n onRowSelectionChange: setRowSelection,\n renderEmptyRowsFallback: emptyStateContainer,\n localization: {\n collapse: t(\"table.rowexpansion.collapse\"),\n collapseAll: t(\"table.rowexpansion.collapseall\"),\n expand: t(\"table.rowexpansion.expand\"),\n expandAll: t(\"table.rowexpansion.expandall\"),\n },\n });\n\n return (\n <ScrollableTableContainer\n isScrollableEnd={!isTableContainerScrolledToEnd}\n isScrollableStart={!isTableContainerScrolledToStart}\n odysseyDesignTokens={odysseyDesignTokens}\n ref={tableOuterContainerRef}\n >\n <MRT_TableContainer table={dataTable} />\n </ScrollableTableContainer>\n );\n};\n\nconst MemoizedTableLayoutContent = memo(\n TableLayoutContent,\n) as TableLayoutContentComponent;\nMemoizedTableLayoutContent.displayName = \"TableLayoutContent\";\n\nexport { MemoizedTableLayoutContent as TableLayoutContent };\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -11,8 +11,8 @@ import _Checkbox from "@mui/material/Checkbox";
|
|
|
11
11
|
* See the License for the specific language governing permissions and limitations under the License.
|
|
12
12
|
*/
|
|
13
13
|
import { memo, useCallback, useMemo } from "react";
|
|
14
|
-
import { useTranslation } from "react-i18next";
|
|
15
14
|
import { MenuButton, MenuItem } from "../../Buttons/index.js";
|
|
15
|
+
import { useTranslation } from "../../i18n.generated/i18n.js";
|
|
16
16
|
import { ListIcon, ShowIcon } from "../../icons.generated/index.js";
|
|
17
17
|
import { densityValues } from "./constants.js";
|
|
18
18
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableSettings.js","names":["memo","useCallback","useMemo","
|
|
1
|
+
{"version":3,"file":"TableSettings.js","names":["memo","useCallback","useMemo","MenuButton","MenuItem","useTranslation","ListIcon","ShowIcon","densityValues","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","TableSettings","setTableState","tableLayoutOptions","tableState","t","hasChangeableDensity","hasColumnVisibility","columns","rowDensity","columnVisibility","changeRowDensity","value","prevState","changeColumnVisibility","columnId","visibleColumns","Set","filter","column","accessorKey","map","memoizedDensityMenu","ariaLabel","endIcon","menuAlignment","shouldCloseOnSelect","children","isSelected","onClick","memoizedColumnVisibilityMenu","Boolean","enableHiding","id","_Checkbox","checked","has","header","MemoizedTableSettings","displayName"],"sources":["../../../../src/labs/DataView/TableSettings.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2023-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport { Checkbox as MuiCheckbox } from \"@mui/material\";\nimport { MRT_DensityState, MRT_RowData } from \"material-react-table\";\nimport { Dispatch, memo, SetStateAction, useCallback, useMemo } from \"react\";\n\nimport { MenuButton, MenuItem } from \"../../Buttons/index.js\";\nimport { useTranslation } from \"../../i18n.generated/i18n.js\";\nimport { ListIcon, ShowIcon } from \"../../icons.generated/index.js\";\nimport { TableLayoutProps, TableState } from \"./componentTypes.js\";\nimport { densityValues } from \"./constants.js\";\n\nexport type TableSettingsProps<TData extends MRT_RowData> = {\n setTableState: Dispatch<SetStateAction<TableState>>;\n tableLayoutOptions: TableLayoutProps<TData>;\n tableState: TableState;\n};\n\ntype TableSettingsComponent = (<TData extends MRT_RowData>(\n props: TableSettingsProps<TData>,\n) => JSX.Element) & {\n displayName?: string;\n};\n\nconst TableSettings: TableSettingsComponent = <TData extends MRT_RowData>({\n setTableState,\n tableLayoutOptions,\n tableState,\n}: TableSettingsProps<TData>) => {\n const { t } = useTranslation();\n\n const { hasChangeableDensity, hasColumnVisibility, columns } =\n tableLayoutOptions;\n const { rowDensity, columnVisibility } = tableState;\n\n const changeRowDensity = useCallback<(value: MRT_DensityState) => void>(\n (value) => {\n setTableState((prevState) => ({\n ...prevState,\n rowDensity: value,\n }));\n },\n [setTableState],\n );\n\n const changeColumnVisibility = useCallback<(columnId: string) => void>(\n (columnId) => {\n setTableState((prevState) => ({\n ...prevState,\n columnVisibility: {\n ...prevState.columnVisibility,\n [columnId]: prevState.columnVisibility\n ? prevState.columnVisibility[columnId] === false\n : false,\n },\n }));\n },\n [setTableState],\n );\n\n const visibleColumns = useMemo(\n () =>\n new Set(\n columns\n .filter((column) =>\n columnVisibility\n ? columnVisibility[column.accessorKey!] !== false\n : true,\n )\n .map((column) => column.accessorKey!),\n ),\n [columns, columnVisibility],\n );\n\n const memoizedDensityMenu = useMemo(\n () =>\n hasChangeableDensity && (\n <MenuButton\n ariaLabel={t(\"table.density.arialabel\")}\n endIcon={<ListIcon />}\n menuAlignment=\"right\"\n shouldCloseOnSelect={false}\n >\n {densityValues.map((value) => (\n <MenuItem\n isSelected={rowDensity === value}\n key={value}\n onClick={() => changeRowDensity(value)}\n >\n {t(`table.density.${value}`)}\n </MenuItem>\n ))}\n </MenuButton>\n ),\n [hasChangeableDensity, t, rowDensity, changeRowDensity],\n );\n\n const memoizedColumnVisibilityMenu = useMemo(\n () =>\n hasColumnVisibility && (\n <MenuButton\n ariaLabel={t(\"table.columnvisibility.arialabel\")}\n endIcon={<ShowIcon />}\n menuAlignment=\"right\"\n shouldCloseOnSelect={false}\n >\n {columns\n .filter((column) => Boolean(column.enableHiding !== false))\n .map((column) => (\n <MenuItem\n key={column.accessorKey}\n onClick={() => changeColumnVisibility(column.id!)}\n >\n <MuiCheckbox checked={visibleColumns.has(column.id!)} />\n {column.header}\n </MenuItem>\n ))}\n </MenuButton>\n ),\n [hasColumnVisibility, t, columns, changeColumnVisibility, visibleColumns],\n );\n\n return (\n <>\n {memoizedDensityMenu}\n {memoizedColumnVisibilityMenu}\n </>\n );\n};\n\nconst MemoizedTableSettings = memo(TableSettings) as TableSettingsComponent;\nMemoizedTableSettings.displayName = \"TableSettings\";\n\nexport { MemoizedTableSettings as TableSettings };\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
* See the License for the specific language governing permissions and limitations under the License.
|
|
11
11
|
*/
|
|
12
12
|
|
|
13
|
-
import {
|
|
13
|
+
import { translate as odysseyTranslate } from "../../i18n.generated/i18n.js";
|
|
14
14
|
export const fetchData = async ({
|
|
15
15
|
dataQueryParams,
|
|
16
16
|
errorMessageProp,
|
|
@@ -25,7 +25,7 @@ export const fetchData = async ({
|
|
|
25
25
|
const incomingData = await getData?.(dataQueryParams);
|
|
26
26
|
setData(incomingData);
|
|
27
27
|
} catch (error) {
|
|
28
|
-
setErrorMessage(typeof error === "string" ? error :
|
|
28
|
+
setErrorMessage(typeof error === "string" ? error : odysseyTranslate("table.error"));
|
|
29
29
|
} finally {
|
|
30
30
|
setIsLoading?.(false);
|
|
31
31
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchData.js","names":["
|
|
1
|
+
{"version":3,"file":"fetchData.js","names":["translate","odysseyTranslate","fetchData","dataQueryParams","errorMessageProp","getData","setData","setErrorMessage","setIsLoading","incomingData","error"],"sources":["../../../../src/labs/DataView/fetchData.ts"],"sourcesContent":["/*!\n * Copyright (c) 2024-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport { MRT_RowData } from \"material-react-table\";\nimport { Dispatch, SetStateAction } from \"react\";\n\nimport { translate as odysseyTranslate } from \"../../i18n.generated/i18n.js\";\nimport { UniversalProps } from \"./componentTypes.js\";\nimport { DataQueryParamsType } from \"./dataTypes.js\";\n\ntype DataRequestType<TData extends MRT_RowData> = {\n dataQueryParams: DataQueryParamsType;\n errorMessageProp: UniversalProps<TData>[\"errorMessage\"];\n getData: UniversalProps<TData>[\"getData\"];\n setData: Dispatch<SetStateAction<TData[]>>;\n setErrorMessage: Dispatch<\n SetStateAction<UniversalProps<TData>[\"errorMessage\"]>\n >;\n setIsLoading?: Dispatch<SetStateAction<boolean>>;\n};\n\nexport const fetchData = async <TData extends MRT_RowData>({\n dataQueryParams,\n errorMessageProp,\n getData,\n setData,\n setErrorMessage,\n setIsLoading,\n}: DataRequestType<TData>) => {\n setIsLoading?.(true);\n setErrorMessage(errorMessageProp);\n try {\n const incomingData = await getData?.(dataQueryParams);\n setData(incomingData);\n } catch (error) {\n setErrorMessage(\n typeof error === \"string\" ? error : odysseyTranslate(\"table.error\"),\n );\n } finally {\n setIsLoading?.(false);\n }\n};\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAKA,SAASA,SAAS,IAAIC,gBAAgB,QAAQ,8BAA8B;AAe5E,OAAO,MAAMC,SAAS,GAAG,MAAAA,CAAkC;EACzDC,eAAe;EACfC,gBAAgB;EAChBC,OAAO;EACPC,OAAO;EACPC,eAAe;EACfC;AACsB,CAAC,KAAK;EAC5BA,YAAY,GAAG,IAAI,CAAC;EACpBD,eAAe,CAACH,gBAAgB,CAAC;EACjC,IAAI;IACF,MAAMK,YAAY,GAAG,MAAMJ,OAAO,GAAGF,eAAe,CAAC;IACrDG,OAAO,CAACG,YAAY,CAAC;EACvB,CAAC,CAAC,OAAOC,KAAK,EAAE;IACdH,eAAe,CACb,OAAOG,KAAK,KAAK,QAAQ,GAAGA,KAAK,GAAGT,gBAAgB,CAAC,aAAa,CACpE,CAAC;EACH,CAAC,SAAS;IACRO,YAAY,GAAG,KAAK,CAAC;EACvB;AACF,CAAC","ignoreList":[]}
|
|
@@ -12,8 +12,8 @@ import _InputAdornment from "@mui/material/InputAdornment";
|
|
|
12
12
|
*/
|
|
13
13
|
import { DateTimeField as MuiDateTimeField } from "@mui/x-date-pickers";
|
|
14
14
|
import { memo, useCallback, useEffect, useImperativeHandle, useRef, useState } from "react";
|
|
15
|
-
import { useTranslation } from "react-i18next";
|
|
16
15
|
import { Field } from "../../Field.js";
|
|
16
|
+
import { useTranslation } from "../../i18n.generated/i18n.js";
|
|
17
17
|
import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
18
18
|
const useOdysseyDateError = () => {
|
|
19
19
|
const {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateTimeField.js","names":["DateTimeField","MuiDateTimeField","memo","useCallback","useEffect","useImperativeHandle","useRef","useState","useTranslation","Field","jsx","_jsx","Fragment","_Fragment","useOdysseyDateError","t","Map","formatDateTimeToUtcIsoDateString","value","toUTC","toISO","defaultValue","endAdornment","errorMessage","hasInitialFocus","hint","HintLinkComponent","id","idOverride","inputRef","isDisabled","isOptional","isReadOnly","label","minDate","maxDate","onBlur","onChange","onFocus","timezone","errorMap","displayedErrorMessage","setDisplayedErrorMessage","internalValidationError","localInputRef","focus","current","checkMinMaxValidity","hasMinError","hasMaxError","get","clearErrorMessages","undefined","validateAndCallOnChange","validationContext","validationError","hasEnteredFullYear","year","toString","length","odysseyValidationError","isValid","dateStringFromDateTime","checkFieldValidityAndSetError","event","hasVisibleAdornment","renderFieldComponent","ariaDescribedBy","errorMessageElementId","labelElementId","autoFocus","disabled","inputProps","InputProps","error","Boolean","children","_InputAdornment","position","name","readOnly","variant","fieldType","hasVisibleLabel","MemoizedDateTimeField","displayName"],"sources":["../../../../src/labs/DatePickers/DateTimeField.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 { InputAdornment } from \"@mui/material\";\nimport {\n DateTimeValidationError,\n DateTimeField as MuiDateTimeField,\n DateTimeFieldProps as MuiDateTimeFieldProps,\n} from \"@mui/x-date-pickers\";\nimport { DateTime } from \"luxon\";\nimport {\n FocusEventHandler,\n memo,\n useCallback,\n useEffect,\n useImperativeHandle,\n useRef,\n useState,\n} from \"react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { Field, RenderFieldComponentProps } from \"../../Field.js\";\nimport { TextFieldProps } from \"../../TextField.js\";\n\nexport type DateTimeFieldProps = {\n onChange?: (value: string) => void;\n} & Pick<\n MuiDateTimeFieldProps<DateTime>,\n \"defaultValue\" | \"inputRef\" | \"minDate\" | \"maxDate\" | \"timezone\" | \"value\"\n> &\n Pick<\n TextFieldProps,\n | \"endAdornment\"\n | \"errorMessage\"\n | \"hasInitialFocus\"\n | \"hint\"\n | \"HintLinkComponent\"\n | \"id\"\n | \"isDisabled\"\n | \"isOptional\"\n | \"isReadOnly\"\n | \"label\"\n | \"onBlur\"\n | \"onFocus\"\n >;\n\nconst useOdysseyDateError = () => {\n const { t } = useTranslation();\n\n return new Map<DateTimeValidationError, string>([\n [\"invalidDate\", t(\"picker.error.invalid\")],\n [\"maxDate\", t(\"picker.error.maxdate\")],\n [\"minDate\", t(\"picker.error.mindate\")],\n ]);\n};\n\nconst formatDateTimeToUtcIsoDateString = (value: DateTime) =>\n value.toUTC().toISO();\n\nconst DateTimeField = ({\n defaultValue,\n endAdornment,\n errorMessage,\n hasInitialFocus,\n hint,\n HintLinkComponent,\n id: idOverride,\n inputRef,\n isDisabled = false,\n isOptional = false,\n isReadOnly,\n label,\n minDate,\n maxDate,\n onBlur,\n onChange,\n onFocus,\n timezone,\n value,\n}: DateTimeFieldProps) => {\n const errorMap = useOdysseyDateError();\n const [displayedErrorMessage, setDisplayedErrorMessage] =\n useState(errorMessage);\n\n const internalValidationError = useRef<string | undefined>();\n const localInputRef = useRef<HTMLInputElement>(null);\n\n useImperativeHandle(inputRef, () => {\n return {\n focus: () => {\n localInputRef.current?.focus();\n },\n };\n }, []);\n\n const checkMinMaxValidity = useCallback(\n (value: DateTime) => {\n const hasMinError = minDate && value.toUTC() < minDate.toUTC();\n const hasMaxError = maxDate && value.toUTC() > maxDate.toUTC();\n\n if (hasMinError || hasMaxError) {\n if (hasMinError) {\n setDisplayedErrorMessage(errorMap.get(\"minDate\"));\n }\n\n if (hasMaxError) {\n setDisplayedErrorMessage(errorMap.get(\"maxDate\"));\n }\n\n return false;\n }\n\n return true;\n },\n [errorMap, minDate, maxDate],\n );\n\n useEffect(() => {\n if (value) {\n checkMinMaxValidity(value);\n }\n\n if (defaultValue) {\n checkMinMaxValidity(defaultValue);\n }\n }, [checkMinMaxValidity, defaultValue, minDate, maxDate, value]);\n\n const clearErrorMessages = useCallback(() => {\n setDisplayedErrorMessage(undefined);\n internalValidationError.current = undefined;\n }, [internalValidationError, setDisplayedErrorMessage]);\n\n const validateAndCallOnChange = useCallback<\n NonNullable<MuiDateTimeFieldProps<DateTime>[\"onChange\"]>\n >(\n (value, validationContext) => {\n clearErrorMessages();\n const { validationError } = validationContext;\n const hasEnteredFullYear = value?.year.toString().length === 4;\n\n if (validationError) {\n const odysseyValidationError = errorMap.get(validationError);\n\n if (odysseyValidationError) {\n internalValidationError.current = odysseyValidationError;\n\n if (value?.isValid && hasEnteredFullYear) {\n setDisplayedErrorMessage(odysseyValidationError);\n }\n }\n }\n\n if (value?.isValid && !validationError) {\n const dateStringFromDateTime = formatDateTimeToUtcIsoDateString(value);\n\n if (dateStringFromDateTime && checkMinMaxValidity(value)) {\n onChange?.(dateStringFromDateTime);\n }\n }\n },\n [checkMinMaxValidity, clearErrorMessages, errorMap, onChange],\n );\n\n const checkFieldValidityAndSetError = useCallback<\n FocusEventHandler<HTMLInputElement>\n >(\n (event) => {\n if (internalValidationError?.current && !displayedErrorMessage) {\n setDisplayedErrorMessage(internalValidationError.current);\n }\n onBlur?.(event);\n },\n [displayedErrorMessage, internalValidationError, onBlur],\n );\n\n const hasVisibleAdornment = !isReadOnly && !isDisabled;\n\n const renderFieldComponent = useCallback(\n ({\n ariaDescribedBy,\n errorMessageElementId,\n id,\n labelElementId,\n }: RenderFieldComponentProps) => (\n <MuiDateTimeField\n /* eslint-disable-next-line jsx-a11y/no-autofocus */\n autoFocus={hasInitialFocus}\n defaultValue={defaultValue}\n disabled={isDisabled}\n id={id}\n inputProps={{\n \"aria-describedby\": ariaDescribedBy,\n \"aria-errormessage\": errorMessageElementId,\n \"aria-labelledby\": labelElementId,\n }}\n InputProps={{\n error: Boolean(displayedErrorMessage || errorMessage),\n endAdornment: (\n <>\n {hasVisibleAdornment && (\n <InputAdornment position=\"end\">{endAdornment}</InputAdornment>\n )}\n </>\n ),\n }}\n inputRef={localInputRef}\n maxDate={maxDate}\n minDate={minDate}\n name={id}\n onBlur={checkFieldValidityAndSetError}\n onChange={validateAndCallOnChange}\n onFocus={onFocus}\n readOnly={isReadOnly}\n timezone={timezone}\n value={value}\n variant=\"standard\"\n />\n ),\n [\n checkFieldValidityAndSetError,\n defaultValue,\n displayedErrorMessage,\n endAdornment,\n errorMessage,\n hasInitialFocus,\n hasVisibleAdornment,\n isDisabled,\n localInputRef,\n minDate,\n maxDate,\n onFocus,\n isReadOnly,\n timezone,\n validateAndCallOnChange,\n value,\n ],\n );\n\n return (\n <Field\n errorMessage={displayedErrorMessage || errorMessage}\n fieldType=\"single\"\n hasVisibleLabel\n hint={hint}\n HintLinkComponent={HintLinkComponent}\n id={idOverride}\n isDisabled={isDisabled}\n isOptional={isOptional}\n label={label}\n renderFieldComponent={renderFieldComponent}\n />\n );\n};\n\nconst MemoizedDateTimeField = memo(DateTimeField);\nMemoizedDateTimeField.displayName = \"DateTimeField\";\n\nexport { MemoizedDateTimeField as DateTimeField };\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"DateTimeField.js","names":["DateTimeField","MuiDateTimeField","memo","useCallback","useEffect","useImperativeHandle","useRef","useState","Field","useTranslation","jsx","_jsx","Fragment","_Fragment","useOdysseyDateError","t","Map","formatDateTimeToUtcIsoDateString","value","toUTC","toISO","defaultValue","endAdornment","errorMessage","hasInitialFocus","hint","HintLinkComponent","id","idOverride","inputRef","isDisabled","isOptional","isReadOnly","label","minDate","maxDate","onBlur","onChange","onFocus","timezone","errorMap","displayedErrorMessage","setDisplayedErrorMessage","internalValidationError","localInputRef","focus","current","checkMinMaxValidity","hasMinError","hasMaxError","get","clearErrorMessages","undefined","validateAndCallOnChange","validationContext","validationError","hasEnteredFullYear","year","toString","length","odysseyValidationError","isValid","dateStringFromDateTime","checkFieldValidityAndSetError","event","hasVisibleAdornment","renderFieldComponent","ariaDescribedBy","errorMessageElementId","labelElementId","autoFocus","disabled","inputProps","InputProps","error","Boolean","children","_InputAdornment","position","name","readOnly","variant","fieldType","hasVisibleLabel","MemoizedDateTimeField","displayName"],"sources":["../../../../src/labs/DatePickers/DateTimeField.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 { InputAdornment } from \"@mui/material\";\nimport {\n DateTimeValidationError,\n DateTimeField as MuiDateTimeField,\n DateTimeFieldProps as MuiDateTimeFieldProps,\n} from \"@mui/x-date-pickers\";\nimport { DateTime } from \"luxon\";\nimport {\n FocusEventHandler,\n memo,\n useCallback,\n useEffect,\n useImperativeHandle,\n useRef,\n useState,\n} from \"react\";\n\nimport { Field, RenderFieldComponentProps } from \"../../Field.js\";\nimport { useTranslation } from \"../../i18n.generated/i18n.js\";\nimport { TextFieldProps } from \"../../TextField.js\";\n\nexport type DateTimeFieldProps = {\n onChange?: (value: string) => void;\n} & Pick<\n MuiDateTimeFieldProps<DateTime>,\n \"defaultValue\" | \"inputRef\" | \"minDate\" | \"maxDate\" | \"timezone\" | \"value\"\n> &\n Pick<\n TextFieldProps,\n | \"endAdornment\"\n | \"errorMessage\"\n | \"hasInitialFocus\"\n | \"hint\"\n | \"HintLinkComponent\"\n | \"id\"\n | \"isDisabled\"\n | \"isOptional\"\n | \"isReadOnly\"\n | \"label\"\n | \"onBlur\"\n | \"onFocus\"\n >;\n\nconst useOdysseyDateError = () => {\n const { t } = useTranslation();\n\n return new Map<DateTimeValidationError, string>([\n [\"invalidDate\", t(\"picker.error.invalid\")],\n [\"maxDate\", t(\"picker.error.maxdate\")],\n [\"minDate\", t(\"picker.error.mindate\")],\n ]);\n};\n\nconst formatDateTimeToUtcIsoDateString = (value: DateTime) =>\n value.toUTC().toISO();\n\nconst DateTimeField = ({\n defaultValue,\n endAdornment,\n errorMessage,\n hasInitialFocus,\n hint,\n HintLinkComponent,\n id: idOverride,\n inputRef,\n isDisabled = false,\n isOptional = false,\n isReadOnly,\n label,\n minDate,\n maxDate,\n onBlur,\n onChange,\n onFocus,\n timezone,\n value,\n}: DateTimeFieldProps) => {\n const errorMap = useOdysseyDateError();\n const [displayedErrorMessage, setDisplayedErrorMessage] =\n useState(errorMessage);\n\n const internalValidationError = useRef<string | undefined>();\n const localInputRef = useRef<HTMLInputElement>(null);\n\n useImperativeHandle(inputRef, () => {\n return {\n focus: () => {\n localInputRef.current?.focus();\n },\n };\n }, []);\n\n const checkMinMaxValidity = useCallback(\n (value: DateTime) => {\n const hasMinError = minDate && value.toUTC() < minDate.toUTC();\n const hasMaxError = maxDate && value.toUTC() > maxDate.toUTC();\n\n if (hasMinError || hasMaxError) {\n if (hasMinError) {\n setDisplayedErrorMessage(errorMap.get(\"minDate\"));\n }\n\n if (hasMaxError) {\n setDisplayedErrorMessage(errorMap.get(\"maxDate\"));\n }\n\n return false;\n }\n\n return true;\n },\n [errorMap, minDate, maxDate],\n );\n\n useEffect(() => {\n if (value) {\n checkMinMaxValidity(value);\n }\n\n if (defaultValue) {\n checkMinMaxValidity(defaultValue);\n }\n }, [checkMinMaxValidity, defaultValue, minDate, maxDate, value]);\n\n const clearErrorMessages = useCallback(() => {\n setDisplayedErrorMessage(undefined);\n internalValidationError.current = undefined;\n }, [internalValidationError, setDisplayedErrorMessage]);\n\n const validateAndCallOnChange = useCallback<\n NonNullable<MuiDateTimeFieldProps<DateTime>[\"onChange\"]>\n >(\n (value, validationContext) => {\n clearErrorMessages();\n const { validationError } = validationContext;\n const hasEnteredFullYear = value?.year.toString().length === 4;\n\n if (validationError) {\n const odysseyValidationError = errorMap.get(validationError);\n\n if (odysseyValidationError) {\n internalValidationError.current = odysseyValidationError;\n\n if (value?.isValid && hasEnteredFullYear) {\n setDisplayedErrorMessage(odysseyValidationError);\n }\n }\n }\n\n if (value?.isValid && !validationError) {\n const dateStringFromDateTime = formatDateTimeToUtcIsoDateString(value);\n\n if (dateStringFromDateTime && checkMinMaxValidity(value)) {\n onChange?.(dateStringFromDateTime);\n }\n }\n },\n [checkMinMaxValidity, clearErrorMessages, errorMap, onChange],\n );\n\n const checkFieldValidityAndSetError = useCallback<\n FocusEventHandler<HTMLInputElement>\n >(\n (event) => {\n if (internalValidationError?.current && !displayedErrorMessage) {\n setDisplayedErrorMessage(internalValidationError.current);\n }\n onBlur?.(event);\n },\n [displayedErrorMessage, internalValidationError, onBlur],\n );\n\n const hasVisibleAdornment = !isReadOnly && !isDisabled;\n\n const renderFieldComponent = useCallback(\n ({\n ariaDescribedBy,\n errorMessageElementId,\n id,\n labelElementId,\n }: RenderFieldComponentProps) => (\n <MuiDateTimeField\n /* eslint-disable-next-line jsx-a11y/no-autofocus */\n autoFocus={hasInitialFocus}\n defaultValue={defaultValue}\n disabled={isDisabled}\n id={id}\n inputProps={{\n \"aria-describedby\": ariaDescribedBy,\n \"aria-errormessage\": errorMessageElementId,\n \"aria-labelledby\": labelElementId,\n }}\n InputProps={{\n error: Boolean(displayedErrorMessage || errorMessage),\n endAdornment: (\n <>\n {hasVisibleAdornment && (\n <InputAdornment position=\"end\">{endAdornment}</InputAdornment>\n )}\n </>\n ),\n }}\n inputRef={localInputRef}\n maxDate={maxDate}\n minDate={minDate}\n name={id}\n onBlur={checkFieldValidityAndSetError}\n onChange={validateAndCallOnChange}\n onFocus={onFocus}\n readOnly={isReadOnly}\n timezone={timezone}\n value={value}\n variant=\"standard\"\n />\n ),\n [\n checkFieldValidityAndSetError,\n defaultValue,\n displayedErrorMessage,\n endAdornment,\n errorMessage,\n hasInitialFocus,\n hasVisibleAdornment,\n isDisabled,\n localInputRef,\n minDate,\n maxDate,\n onFocus,\n isReadOnly,\n timezone,\n validateAndCallOnChange,\n value,\n ],\n );\n\n return (\n <Field\n errorMessage={displayedErrorMessage || errorMessage}\n fieldType=\"single\"\n hasVisibleLabel\n hint={hint}\n HintLinkComponent={HintLinkComponent}\n id={idOverride}\n isDisabled={isDisabled}\n isOptional={isOptional}\n label={label}\n renderFieldComponent={renderFieldComponent}\n />\n );\n};\n\nconst MemoizedDateTimeField = memo(DateTimeField);\nMemoizedDateTimeField.displayName = \"DateTimeField\";\n\nexport { MemoizedDateTimeField as DateTimeField };\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -13,12 +13,12 @@
|
|
|
13
13
|
import styled from "@emotion/styled";
|
|
14
14
|
import { DateTimePicker as MuiDateTimePicker } from "@mui/x-date-pickers";
|
|
15
15
|
import { memo, useCallback, useEffect, useMemo, useRef } from "react";
|
|
16
|
-
import { useTranslation } from "react-i18next";
|
|
17
16
|
import { Button } from "../../Buttons/index.js";
|
|
18
17
|
import { DateFieldActionBar } from "../../DatePickers/DateFieldActionBar.js";
|
|
19
18
|
import { DateFieldLocalizationProvider } from "../../DatePickers/DateFieldLocalizationProvider.js";
|
|
20
19
|
import { TimeZonePicker } from "../../DatePickers/TimeZonePicker.js";
|
|
21
20
|
import { useOdysseyDateFields } from "../../DatePickers/useOdysseyDateFields.js";
|
|
21
|
+
import { useTranslation } from "../../i18n.generated/i18n.js";
|
|
22
22
|
import { CalendarIcon, ClockIcon } from "../../icons.generated/index.js";
|
|
23
23
|
import { useOdysseyDesignTokens } from "../../OdysseyDesignTokensContext.js";
|
|
24
24
|
import { OdysseyThemeProvider } from "../../OdysseyThemeProvider.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateTimePicker.js","names":["styled","DateTimePicker","MuiDateTimePicker","memo","useCallback","useEffect","useMemo","useRef","useTranslation","Button","DateFieldActionBar","DateFieldLocalizationProvider","TimeZonePicker","useOdysseyDateFields","CalendarIcon","ClockIcon","useOdysseyDesignTokens","OdysseyThemeProvider","pxToRem","useUniqueId","DateTimeField","dateTimePickerTheme","jsx","_jsx","jsxs","_jsxs","DateTimePickerSize","maxWidth","DatePickerContainer","div","marginBlockEnd","DatePickerWidthContainer","width","TimeZonePickerContainer","shouldForwardProp","prop","odysseyDesignTokens","marginBlockStart","Spacing3","defaultValue","defaultValueProp","errorMessage","hint","HintLinkComponent","id","idOverride","isDateEnabled","isDisabled","isOptional","isReadOnly","isMonthEnabled","isYearEnabled","label","minDate","minDateProp","maxDate","maxDateProp","onBlur","onCalendarDateChange","onInputChange","onInputChangeProp","timeZone","timeZonePickerLabel","timeZoneOptions","value","valueProp","i18n","t","inputRef","dateTimePickerId","closeCalendar","commonIcons","defaultedLanguageCode","formatDateTimeToUtcIsoDateString","formatDayOfWeek","inputValues","internalTimeZone","isOpen","localeText","onTimeZoneChange","popperElement","setPopperElement","shouldDisableDate","shouldDisableMonth","shouldDisableYear","toggleCalendarVisibility","language","containerRef","current","formatDateTimeToJsDateStringOnCalendarSelection","dateStringFromDateTime","renderDateTimeField","endAdornment","ariaLabel","onClick","size","startIcon","variant","onChange","timezone","slots","actionBar","field","muiProps","leftArrowIcon","ArrowLeftIcon","rightArrowIcon","ArrowRightIcon","switchViewIcon","ChevronDownIcon","slotProps","wrapperVariant","onAccept","onCancel","actions","popper","anchorEl","tabs","dateIcon","timeIcon","toolbar","toolbarPlaceholder","themeOverride","children","ref","dayOfWeekFormatter","disabled","fixedWeekNumber","onClose","open","readOnly","MemoizedDateTimePicker","displayName"],"sources":["../../../../src/labs/DatePickers/DateTimePicker.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2023-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled from \"@emotion/styled\";\nimport {\n DateTimePickerSlotProps,\n type DateTimePickerSlots,\n DateTimePicker as MuiDateTimePicker,\n DateTimePickerProps as MuiDateTimePickerProps,\n} from \"@mui/x-date-pickers\";\nimport { DateTime } from \"luxon\";\nimport { memo, useCallback, useEffect, useMemo, useRef } from \"react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { Button } from \"../../Buttons/index.js\";\nimport { DateFieldActionBar } from \"../../DatePickers/DateFieldActionBar.js\";\nimport { DateFieldLocalizationProvider } from \"../../DatePickers/DateFieldLocalizationProvider.js\";\nimport { TimeZonePicker } from \"../../DatePickers/TimeZonePicker.js\";\nimport {\n OdysseyDateFieldProps,\n useOdysseyDateFields,\n} from \"../../DatePickers/useOdysseyDateFields.js\";\nimport { FieldComponentProps } from \"../../FieldComponentProps.js\";\nimport { CalendarIcon, ClockIcon } from \"../../icons.generated/index.js\";\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"../../OdysseyDesignTokensContext.js\";\nimport { OdysseyThemeProvider } from \"../../OdysseyThemeProvider.js\";\nimport { pxToRem } from \"../../theme/index.js\";\nimport { useUniqueId } from \"../../useUniqueId.js\";\nimport { DateTimeField, DateTimeFieldProps } from \"./DateTimeField.js\";\nimport { dateTimePickerTheme } from \"./dateTimePickerTheme.js\";\n\nexport const DateTimePickerSize = {\n maxWidth: `${pxToRem(486)}rem`,\n};\n\nconst DatePickerContainer = styled.div({\n \".MuiFormControl-root\": {\n marginBlockEnd: 0,\n },\n});\n\nconst DatePickerWidthContainer = styled.div<{\n odysseyDesignTokens: DesignTokens;\n}>(() => ({\n \".MuiInput-root\": {\n width: \"100%\",\n maxWidth: DateTimePickerSize.maxWidth,\n },\n}));\n\nconst TimeZonePickerContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{ odysseyDesignTokens: DesignTokens }>(({ odysseyDesignTokens }) => ({\n marginBlockStart: odysseyDesignTokens.Spacing3,\n}));\n\ntype RenderDateTimeFieldProps = {\n defaultValue: DateTimeFieldProps[\"defaultValue\"];\n value: DateTimeFieldProps[\"value\"];\n} & MuiDateTimePickerProps<DateTime>;\n\nexport type DateTimePickerProps = OdysseyDateFieldProps &\n Pick<\n FieldComponentProps,\n | \"errorMessage\"\n | \"hint\"\n | \"HintLinkComponent\"\n | \"id\"\n | \"isDisabled\"\n | \"isReadOnly\"\n | \"isOptional\"\n >;\n\nconst DateTimePicker = ({\n defaultValue: defaultValueProp,\n errorMessage,\n hint,\n HintLinkComponent,\n id: idOverride,\n isDateEnabled = () => true,\n isDisabled,\n isOptional,\n isReadOnly,\n isMonthEnabled = () => true,\n isYearEnabled = () => true,\n label,\n minDate: minDateProp,\n maxDate: maxDateProp,\n onBlur,\n onCalendarDateChange,\n onInputChange: onInputChangeProp,\n timeZone,\n timeZonePickerLabel,\n timeZoneOptions,\n value: valueProp,\n}: DateTimePickerProps) => {\n const { i18n, t } = useTranslation();\n const inputRef = useRef<HTMLInputElement>(null);\n const odysseyDesignTokens = useOdysseyDesignTokens();\n const dateTimePickerId = useUniqueId(idOverride);\n\n const {\n closeCalendar,\n commonIcons,\n defaultedLanguageCode,\n formatDateTimeToUtcIsoDateString,\n formatDayOfWeek,\n inputValues,\n internalTimeZone,\n isOpen,\n localeText,\n minDate,\n maxDate,\n onInputChange,\n onTimeZoneChange,\n popperElement,\n setPopperElement,\n shouldDisableDate,\n shouldDisableMonth,\n shouldDisableYear,\n toggleCalendarVisibility,\n } = useOdysseyDateFields({\n defaultValue: defaultValueProp,\n errorMessage,\n isDateEnabled,\n isMonthEnabled,\n isYearEnabled,\n minDate: minDateProp,\n maxDate: maxDateProp,\n onInputChange: onInputChangeProp,\n timeZone,\n value: valueProp,\n });\n\n const { language } = i18n;\n const containerRef = useRef<HTMLInputElement>(null);\n\n useEffect(() => {\n setPopperElement(containerRef.current);\n }, [setPopperElement]);\n\n const formatDateTimeToJsDateStringOnCalendarSelection = useCallback<\n NonNullable<MuiDateTimePickerProps<DateTime>[\"onChange\"]>\n >(\n (value) => {\n if (value) {\n const dateStringFromDateTime = formatDateTimeToUtcIsoDateString(value);\n\n if (dateStringFromDateTime) {\n onCalendarDateChange?.({\n value: dateStringFromDateTime,\n timeZone: internalTimeZone,\n });\n }\n }\n },\n [formatDateTimeToUtcIsoDateString, internalTimeZone, onCalendarDateChange],\n );\n\n const renderDateTimeField = useCallback(\n ({ defaultValue, inputRef, value }: RenderDateTimeFieldProps) => {\n return (\n <DateTimeField\n defaultValue={defaultValue}\n endAdornment={\n <Button\n ariaLabel={t(\"picker.labels.date.choose\")}\n label=\"\"\n onClick={toggleCalendarVisibility}\n size=\"small\"\n startIcon={<commonIcons.CalendarIcon />}\n variant=\"floating\"\n />\n }\n errorMessage={errorMessage}\n hint={hint}\n HintLinkComponent={HintLinkComponent}\n id={dateTimePickerId}\n inputRef={inputRef}\n isDisabled={isDisabled}\n isOptional={isOptional}\n isReadOnly={isReadOnly}\n label={label}\n maxDate={maxDate}\n minDate={minDate}\n onBlur={onBlur}\n onChange={onInputChange}\n timezone={internalTimeZone}\n value={value}\n />\n );\n },\n [\n commonIcons,\n dateTimePickerId,\n errorMessage,\n hint,\n HintLinkComponent,\n internalTimeZone,\n isDisabled,\n isOptional,\n isReadOnly,\n label,\n onBlur,\n onInputChange,\n minDate,\n maxDate,\n t,\n toggleCalendarVisibility,\n ],\n );\n\n const slots = useMemo<DateTimePickerSlots<DateTime>>(\n () => ({\n actionBar: DateFieldActionBar,\n field: (muiProps: RenderDateTimeFieldProps) =>\n renderDateTimeField(muiProps),\n leftArrowIcon: () => <commonIcons.ArrowLeftIcon />,\n rightArrowIcon: () => <commonIcons.ArrowRightIcon />,\n switchViewIcon: () => <commonIcons.ChevronDownIcon />,\n }),\n [commonIcons, renderDateTimeField],\n );\n\n const slotProps = useMemo<DateTimePickerSlotProps<DateTime, false>>(\n () => ({\n actionBar: ({ wrapperVariant, onAccept, onCancel }) => ({\n actions:\n // This is the default behavior but felt more clear to pass them in explicitly\n wrapperVariant === \"desktop\" ? [] : [\"accept\", \"cancel\"],\n onAccept,\n onCancel,\n }),\n popper: {\n anchorEl: popperElement,\n },\n tabs: {\n dateIcon: <CalendarIcon />,\n timeIcon: <ClockIcon />,\n },\n toolbar: {\n toolbarPlaceholder: \"\",\n },\n }),\n [popperElement],\n );\n\n return (\n <OdysseyThemeProvider themeOverride={dateTimePickerTheme}>\n <DateFieldLocalizationProvider\n defaultedLanguageCode={defaultedLanguageCode}\n localeText={localeText}\n >\n <DatePickerContainer>\n <DatePickerWidthContainer\n odysseyDesignTokens={odysseyDesignTokens}\n ref={containerRef}\n >\n <MuiDateTimePicker\n dayOfWeekFormatter={formatDayOfWeek}\n defaultValue={inputValues?.defaultValue}\n disabled={isDisabled}\n fixedWeekNumber={6}\n inputRef={inputRef}\n key={language}\n label={label}\n maxDate={maxDate}\n minDate={minDate}\n onChange={formatDateTimeToJsDateStringOnCalendarSelection}\n onClose={closeCalendar}\n open={isOpen}\n readOnly={isReadOnly}\n shouldDisableDate={shouldDisableDate}\n shouldDisableMonth={shouldDisableMonth}\n shouldDisableYear={shouldDisableYear}\n slotProps={slotProps}\n slots={slots}\n timezone={internalTimeZone}\n value={inputValues?.value}\n />\n </DatePickerWidthContainer>\n </DatePickerContainer>\n\n {timeZoneOptions && timeZonePickerLabel && (\n <TimeZonePickerContainer odysseyDesignTokens={odysseyDesignTokens}>\n <TimeZonePicker\n isReadOnly={isReadOnly}\n label={timeZonePickerLabel}\n onTimeZoneChange={onTimeZoneChange}\n timeZoneOptions={timeZoneOptions}\n value={internalTimeZone}\n />\n </TimeZonePickerContainer>\n )}\n </DateFieldLocalizationProvider>\n </OdysseyThemeProvider>\n );\n};\n\nconst MemoizedDateTimePicker = memo(DateTimePicker);\nMemoizedDateTimePicker.displayName = \"DateTimePicker\";\n\nexport { MemoizedDateTimePicker as DateTimePicker };\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"DateTimePicker.js","names":["styled","DateTimePicker","MuiDateTimePicker","memo","useCallback","useEffect","useMemo","useRef","Button","DateFieldActionBar","DateFieldLocalizationProvider","TimeZonePicker","useOdysseyDateFields","useTranslation","CalendarIcon","ClockIcon","useOdysseyDesignTokens","OdysseyThemeProvider","pxToRem","useUniqueId","DateTimeField","dateTimePickerTheme","jsx","_jsx","jsxs","_jsxs","DateTimePickerSize","maxWidth","DatePickerContainer","div","marginBlockEnd","DatePickerWidthContainer","width","TimeZonePickerContainer","shouldForwardProp","prop","odysseyDesignTokens","marginBlockStart","Spacing3","defaultValue","defaultValueProp","errorMessage","hint","HintLinkComponent","id","idOverride","isDateEnabled","isDisabled","isOptional","isReadOnly","isMonthEnabled","isYearEnabled","label","minDate","minDateProp","maxDate","maxDateProp","onBlur","onCalendarDateChange","onInputChange","onInputChangeProp","timeZone","timeZonePickerLabel","timeZoneOptions","value","valueProp","i18n","t","inputRef","dateTimePickerId","closeCalendar","commonIcons","defaultedLanguageCode","formatDateTimeToUtcIsoDateString","formatDayOfWeek","inputValues","internalTimeZone","isOpen","localeText","onTimeZoneChange","popperElement","setPopperElement","shouldDisableDate","shouldDisableMonth","shouldDisableYear","toggleCalendarVisibility","language","containerRef","current","formatDateTimeToJsDateStringOnCalendarSelection","dateStringFromDateTime","renderDateTimeField","endAdornment","ariaLabel","onClick","size","startIcon","variant","onChange","timezone","slots","actionBar","field","muiProps","leftArrowIcon","ArrowLeftIcon","rightArrowIcon","ArrowRightIcon","switchViewIcon","ChevronDownIcon","slotProps","wrapperVariant","onAccept","onCancel","actions","popper","anchorEl","tabs","dateIcon","timeIcon","toolbar","toolbarPlaceholder","themeOverride","children","ref","dayOfWeekFormatter","disabled","fixedWeekNumber","onClose","open","readOnly","MemoizedDateTimePicker","displayName"],"sources":["../../../../src/labs/DatePickers/DateTimePicker.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2023-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled from \"@emotion/styled\";\nimport {\n DateTimePickerSlotProps,\n type DateTimePickerSlots,\n DateTimePicker as MuiDateTimePicker,\n DateTimePickerProps as MuiDateTimePickerProps,\n} from \"@mui/x-date-pickers\";\nimport { DateTime } from \"luxon\";\nimport { memo, useCallback, useEffect, useMemo, useRef } from \"react\";\n\nimport { Button } from \"../../Buttons/index.js\";\nimport { DateFieldActionBar } from \"../../DatePickers/DateFieldActionBar.js\";\nimport { DateFieldLocalizationProvider } from \"../../DatePickers/DateFieldLocalizationProvider.js\";\nimport { TimeZonePicker } from \"../../DatePickers/TimeZonePicker.js\";\nimport {\n OdysseyDateFieldProps,\n useOdysseyDateFields,\n} from \"../../DatePickers/useOdysseyDateFields.js\";\nimport { FieldComponentProps } from \"../../FieldComponentProps.js\";\nimport { useTranslation } from \"../../i18n.generated/i18n.js\";\nimport { CalendarIcon, ClockIcon } from \"../../icons.generated/index.js\";\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"../../OdysseyDesignTokensContext.js\";\nimport { OdysseyThemeProvider } from \"../../OdysseyThemeProvider.js\";\nimport { pxToRem } from \"../../theme/index.js\";\nimport { useUniqueId } from \"../../useUniqueId.js\";\nimport { DateTimeField, DateTimeFieldProps } from \"./DateTimeField.js\";\nimport { dateTimePickerTheme } from \"./dateTimePickerTheme.js\";\n\nexport const DateTimePickerSize = {\n maxWidth: `${pxToRem(486)}rem`,\n};\n\nconst DatePickerContainer = styled.div({\n \".MuiFormControl-root\": {\n marginBlockEnd: 0,\n },\n});\n\nconst DatePickerWidthContainer = styled.div<{\n odysseyDesignTokens: DesignTokens;\n}>(() => ({\n \".MuiInput-root\": {\n width: \"100%\",\n maxWidth: DateTimePickerSize.maxWidth,\n },\n}));\n\nconst TimeZonePickerContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{ odysseyDesignTokens: DesignTokens }>(({ odysseyDesignTokens }) => ({\n marginBlockStart: odysseyDesignTokens.Spacing3,\n}));\n\ntype RenderDateTimeFieldProps = {\n defaultValue: DateTimeFieldProps[\"defaultValue\"];\n value: DateTimeFieldProps[\"value\"];\n} & MuiDateTimePickerProps<DateTime>;\n\nexport type DateTimePickerProps = OdysseyDateFieldProps &\n Pick<\n FieldComponentProps,\n | \"errorMessage\"\n | \"hint\"\n | \"HintLinkComponent\"\n | \"id\"\n | \"isDisabled\"\n | \"isReadOnly\"\n | \"isOptional\"\n >;\n\nconst DateTimePicker = ({\n defaultValue: defaultValueProp,\n errorMessage,\n hint,\n HintLinkComponent,\n id: idOverride,\n isDateEnabled = () => true,\n isDisabled,\n isOptional,\n isReadOnly,\n isMonthEnabled = () => true,\n isYearEnabled = () => true,\n label,\n minDate: minDateProp,\n maxDate: maxDateProp,\n onBlur,\n onCalendarDateChange,\n onInputChange: onInputChangeProp,\n timeZone,\n timeZonePickerLabel,\n timeZoneOptions,\n value: valueProp,\n}: DateTimePickerProps) => {\n const { i18n, t } = useTranslation();\n const inputRef = useRef<HTMLInputElement>(null);\n const odysseyDesignTokens = useOdysseyDesignTokens();\n const dateTimePickerId = useUniqueId(idOverride);\n\n const {\n closeCalendar,\n commonIcons,\n defaultedLanguageCode,\n formatDateTimeToUtcIsoDateString,\n formatDayOfWeek,\n inputValues,\n internalTimeZone,\n isOpen,\n localeText,\n minDate,\n maxDate,\n onInputChange,\n onTimeZoneChange,\n popperElement,\n setPopperElement,\n shouldDisableDate,\n shouldDisableMonth,\n shouldDisableYear,\n toggleCalendarVisibility,\n } = useOdysseyDateFields({\n defaultValue: defaultValueProp,\n errorMessage,\n isDateEnabled,\n isMonthEnabled,\n isYearEnabled,\n minDate: minDateProp,\n maxDate: maxDateProp,\n onInputChange: onInputChangeProp,\n timeZone,\n value: valueProp,\n });\n\n const { language } = i18n;\n const containerRef = useRef<HTMLInputElement>(null);\n\n useEffect(() => {\n setPopperElement(containerRef.current);\n }, [setPopperElement]);\n\n const formatDateTimeToJsDateStringOnCalendarSelection = useCallback<\n NonNullable<MuiDateTimePickerProps<DateTime>[\"onChange\"]>\n >(\n (value) => {\n if (value) {\n const dateStringFromDateTime = formatDateTimeToUtcIsoDateString(value);\n\n if (dateStringFromDateTime) {\n onCalendarDateChange?.({\n value: dateStringFromDateTime,\n timeZone: internalTimeZone,\n });\n }\n }\n },\n [formatDateTimeToUtcIsoDateString, internalTimeZone, onCalendarDateChange],\n );\n\n const renderDateTimeField = useCallback(\n ({ defaultValue, inputRef, value }: RenderDateTimeFieldProps) => {\n return (\n <DateTimeField\n defaultValue={defaultValue}\n endAdornment={\n <Button\n ariaLabel={t(\"picker.labels.date.choose\")}\n label=\"\"\n onClick={toggleCalendarVisibility}\n size=\"small\"\n startIcon={<commonIcons.CalendarIcon />}\n variant=\"floating\"\n />\n }\n errorMessage={errorMessage}\n hint={hint}\n HintLinkComponent={HintLinkComponent}\n id={dateTimePickerId}\n inputRef={inputRef}\n isDisabled={isDisabled}\n isOptional={isOptional}\n isReadOnly={isReadOnly}\n label={label}\n maxDate={maxDate}\n minDate={minDate}\n onBlur={onBlur}\n onChange={onInputChange}\n timezone={internalTimeZone}\n value={value}\n />\n );\n },\n [\n commonIcons,\n dateTimePickerId,\n errorMessage,\n hint,\n HintLinkComponent,\n internalTimeZone,\n isDisabled,\n isOptional,\n isReadOnly,\n label,\n onBlur,\n onInputChange,\n minDate,\n maxDate,\n t,\n toggleCalendarVisibility,\n ],\n );\n\n const slots = useMemo<DateTimePickerSlots<DateTime>>(\n () => ({\n actionBar: DateFieldActionBar,\n field: (muiProps: RenderDateTimeFieldProps) =>\n renderDateTimeField(muiProps),\n leftArrowIcon: () => <commonIcons.ArrowLeftIcon />,\n rightArrowIcon: () => <commonIcons.ArrowRightIcon />,\n switchViewIcon: () => <commonIcons.ChevronDownIcon />,\n }),\n [commonIcons, renderDateTimeField],\n );\n\n const slotProps = useMemo<DateTimePickerSlotProps<DateTime, false>>(\n () => ({\n actionBar: ({ wrapperVariant, onAccept, onCancel }) => ({\n actions:\n // This is the default behavior but felt more clear to pass them in explicitly\n wrapperVariant === \"desktop\" ? [] : [\"accept\", \"cancel\"],\n onAccept,\n onCancel,\n }),\n popper: {\n anchorEl: popperElement,\n },\n tabs: {\n dateIcon: <CalendarIcon />,\n timeIcon: <ClockIcon />,\n },\n toolbar: {\n toolbarPlaceholder: \"\",\n },\n }),\n [popperElement],\n );\n\n return (\n <OdysseyThemeProvider themeOverride={dateTimePickerTheme}>\n <DateFieldLocalizationProvider\n defaultedLanguageCode={defaultedLanguageCode}\n localeText={localeText}\n >\n <DatePickerContainer>\n <DatePickerWidthContainer\n odysseyDesignTokens={odysseyDesignTokens}\n ref={containerRef}\n >\n <MuiDateTimePicker\n dayOfWeekFormatter={formatDayOfWeek}\n defaultValue={inputValues?.defaultValue}\n disabled={isDisabled}\n fixedWeekNumber={6}\n inputRef={inputRef}\n key={language}\n label={label}\n maxDate={maxDate}\n minDate={minDate}\n onChange={formatDateTimeToJsDateStringOnCalendarSelection}\n onClose={closeCalendar}\n open={isOpen}\n readOnly={isReadOnly}\n shouldDisableDate={shouldDisableDate}\n shouldDisableMonth={shouldDisableMonth}\n shouldDisableYear={shouldDisableYear}\n slotProps={slotProps}\n slots={slots}\n timezone={internalTimeZone}\n value={inputValues?.value}\n />\n </DatePickerWidthContainer>\n </DatePickerContainer>\n\n {timeZoneOptions && timeZonePickerLabel && (\n <TimeZonePickerContainer odysseyDesignTokens={odysseyDesignTokens}>\n <TimeZonePicker\n isReadOnly={isReadOnly}\n label={timeZonePickerLabel}\n onTimeZoneChange={onTimeZoneChange}\n timeZoneOptions={timeZoneOptions}\n value={internalTimeZone}\n />\n </TimeZonePickerContainer>\n )}\n </DateFieldLocalizationProvider>\n </OdysseyThemeProvider>\n );\n};\n\nconst MemoizedDateTimePicker = memo(DateTimePicker);\nMemoizedDateTimePicker.displayName = \"DateTimePicker\";\n\nexport { MemoizedDateTimePicker as DateTimePicker };\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -11,7 +11,7 @@ import _Autocomplete from "@mui/material/Autocomplete";
|
|
|
11
11
|
* See the License for the specific language governing permissions and limitations under the License.
|
|
12
12
|
*/
|
|
13
13
|
import { memo } from "react";
|
|
14
|
-
import { useTranslation } from "
|
|
14
|
+
import { useTranslation } from "../../i18n.generated/i18n.js";
|
|
15
15
|
import { useAutocomplete } from "../../useAutocomplete.js";
|
|
16
16
|
import { PickerVirtualizationListBox } from "./PickerVirtualizationListBox.js";
|
|
17
17
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComposablePicker.js","names":["memo","useTranslation","useAutocomplete","PickerVirtualizationListBox","jsx","_jsx","adornmentSizeValues","ComposablePicker","ariaDescribedBy","defaultValue","emptyOptionsText","errorMessage","errorMessageList","getIsOptionEqualToValue","getOptionLabel","groupOptionsBy","hasMultipleChoices","id","idOverride","inputValue","isCustomValueAllowed","isDisabled","isFullWidth","isLoading","isOptional","isReadOnly","isVirtualized","hint","HintLinkComponent","label","name","nameOverride","onBlur","onChange","onInputChange","onFocus","options","renderOption","renderTags","value","testId","translate","t","inputValueProp","isVirtualizedRef","renderInput","valueProps","_Autocomplete","current","ListboxComponent","clearText","closeText","disableCloseOnSelect","disabled","filterSelectedOptions","freeSolo","fullWidth","groupBy","isOptionEqualToValue","loading","multiple","noOptionsText","readOnly","MemoizedComposablePicker","displayName"],"sources":["../../../../src/labs/OdysseyPickers/ComposablePicker.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2023-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport {\n Autocomplete as MuiAutocomplete,\n AutocompleteProps as MuiAutocompleteProps,\n} from \"@mui/material\";\nimport { HTMLAttributes, Key, memo, ReactNode } from \"react\";\nimport {
|
|
1
|
+
{"version":3,"file":"ComposablePicker.js","names":["memo","useTranslation","useAutocomplete","PickerVirtualizationListBox","jsx","_jsx","adornmentSizeValues","ComposablePicker","ariaDescribedBy","defaultValue","emptyOptionsText","errorMessage","errorMessageList","getIsOptionEqualToValue","getOptionLabel","groupOptionsBy","hasMultipleChoices","id","idOverride","inputValue","isCustomValueAllowed","isDisabled","isFullWidth","isLoading","isOptional","isReadOnly","isVirtualized","hint","HintLinkComponent","label","name","nameOverride","onBlur","onChange","onInputChange","onFocus","options","renderOption","renderTags","value","testId","translate","t","inputValueProp","isVirtualizedRef","renderInput","valueProps","_Autocomplete","current","ListboxComponent","clearText","closeText","disableCloseOnSelect","disabled","filterSelectedOptions","freeSolo","fullWidth","groupBy","isOptionEqualToValue","loading","multiple","noOptionsText","readOnly","MemoizedComposablePicker","displayName"],"sources":["../../../../src/labs/OdysseyPickers/ComposablePicker.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2023-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport {\n Autocomplete as MuiAutocomplete,\n AutocompleteProps as MuiAutocompleteProps,\n} from \"@mui/material\";\nimport { HTMLAttributes, Key, memo, ReactNode } from \"react\";\n\nimport { AutocompleteProps } from \"../../Autocomplete.js\";\nimport { useTranslation } from \"../../i18n.generated/i18n.js\";\nimport { useAutocomplete } from \"../../useAutocomplete.js\";\nimport { PickerVirtualizationListBox } from \"./PickerVirtualizationListBox.js\";\n\nexport const adornmentSizeValues = [\"small\", \"large\"] as const;\nexport type AdornmentSize = (typeof adornmentSizeValues)[number];\n\nexport type BaseRenderOptionProps = HTMLAttributes<HTMLLIElement> & {\n key: Key;\n};\n\nexport type BasePickerProps<\n OptionType,\n HasMultipleChoices extends boolean | undefined,\n IsCustomValueAllowed extends boolean | undefined,\n> = AutocompleteProps<OptionType, HasMultipleChoices, IsCustomValueAllowed> & {\n adornmentSize?: AdornmentSize;\n emptyOptionsText?: MuiAutocompleteProps<\n OptionType,\n HasMultipleChoices,\n undefined,\n IsCustomValueAllowed\n >[\"noOptionsText\"];\n groupOptionsBy?: MuiAutocompleteProps<\n OptionType,\n HasMultipleChoices,\n undefined,\n IsCustomValueAllowed\n >[\"groupBy\"];\n};\n\nexport type BasePickerType = {\n displayName: string;\n <\n OptionType,\n HasMultipleChoices extends boolean | undefined,\n IsCustomValueAllowed extends boolean | undefined,\n >(\n props: BasePickerProps<\n OptionType,\n HasMultipleChoices,\n IsCustomValueAllowed\n >,\n ): ReactNode;\n};\n\nexport type ComposablePickerProps<\n OptionType,\n HasMultipleChoices extends boolean | undefined,\n IsCustomValueAllowed extends boolean | undefined,\n> = BasePickerProps<OptionType, HasMultipleChoices, IsCustomValueAllowed> & {\n getOptionLabel?: MuiAutocompleteProps<\n OptionType,\n HasMultipleChoices,\n undefined,\n IsCustomValueAllowed\n >[\"getOptionLabel\"];\n\n renderOption: MuiAutocompleteProps<\n OptionType,\n HasMultipleChoices,\n undefined,\n IsCustomValueAllowed\n >[\"renderOption\"];\n\n renderTags?: MuiAutocompleteProps<\n OptionType,\n HasMultipleChoices,\n undefined,\n IsCustomValueAllowed\n >[\"renderTags\"];\n};\n\nconst ComposablePicker = <\n OptionType,\n HasMultipleChoices extends boolean | undefined,\n IsCustomValueAllowed extends boolean | undefined,\n>({\n ariaDescribedBy,\n defaultValue,\n emptyOptionsText,\n errorMessage,\n errorMessageList,\n getIsOptionEqualToValue,\n getOptionLabel,\n groupOptionsBy,\n hasMultipleChoices,\n id: idOverride,\n inputValue,\n isCustomValueAllowed,\n isDisabled,\n isFullWidth = false,\n isLoading,\n isOptional = false,\n isReadOnly,\n isVirtualized = false,\n hint,\n HintLinkComponent,\n label,\n name: nameOverride,\n onBlur,\n onChange,\n onInputChange,\n onFocus,\n options,\n renderOption,\n renderTags,\n value,\n testId,\n translate,\n}: ComposablePickerProps<\n OptionType,\n HasMultipleChoices,\n IsCustomValueAllowed\n>) => {\n const { t } = useTranslation();\n const { inputValueProp, isVirtualizedRef, renderInput, valueProps } =\n useAutocomplete<OptionType, HasMultipleChoices, IsCustomValueAllowed>({\n ariaDescribedBy,\n defaultValue,\n errorMessage,\n errorMessageList,\n hasMultipleChoices,\n hint,\n HintLinkComponent,\n inputValue,\n isFullWidth,\n isOptional,\n isVirtualized,\n label,\n name: nameOverride,\n testId,\n value,\n });\n\n return (\n <MuiAutocomplete\n {...valueProps}\n {...inputValueProp}\n // conditionally provide the ListboxComponent if this needs to be virtualized\n {...(isVirtualizedRef.current && {\n ListboxComponent: PickerVirtualizationListBox,\n })}\n // AutoComplete is wrapped in a div within MUI which does not get the disabled attr. So this aria-disabled gets set in the div\n aria-disabled={isDisabled}\n clearText={t(\"clear.text\")}\n closeText={t(\"close.text\")}\n disableCloseOnSelect={hasMultipleChoices}\n disabled={isDisabled}\n filterSelectedOptions={true}\n freeSolo={isCustomValueAllowed}\n fullWidth={isFullWidth}\n getOptionLabel={getOptionLabel}\n groupBy={groupOptionsBy}\n id={idOverride}\n isOptionEqualToValue={getIsOptionEqualToValue}\n loading={isLoading}\n multiple={hasMultipleChoices}\n noOptionsText={emptyOptionsText}\n onBlur={onBlur}\n onChange={onChange}\n onFocus={onFocus}\n onInputChange={onInputChange}\n options={options}\n readOnly={isReadOnly}\n renderInput={renderInput}\n renderOption={renderOption}\n renderTags={renderTags}\n translate={translate}\n />\n );\n};\n\n// Need the `typeof ComposablePicker` because generics don't get passed through\nconst MemoizedComposablePicker = memo(\n ComposablePicker,\n) as typeof ComposablePicker;\n// @ts-expect-error displayName is expected to not be on `typeof ComposablePicker`\nMemoizedComposablePicker.displayName = \"ComposablePicker\";\n\nexport { MemoizedComposablePicker as ComposablePicker };\n"],"mappings":";AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAMA,SAA8BA,IAAI,QAAmB,OAAO;AAG5D,SAASC,cAAc,QAAQ,8BAA8B;AAC7D,SAASC,eAAe,QAAQ,0BAA0B;AAC1D,SAASC,2BAA2B,QAAQ,kCAAkC;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE/E,OAAO,MAAMC,mBAAmB,GAAG,CAAC,OAAO,EAAE,OAAO,CAAU;AAqE9D,MAAMC,gBAAgB,GAAGA,CAIvB;EACAC,eAAe;EACfC,YAAY;EACZC,gBAAgB;EAChBC,YAAY;EACZC,gBAAgB;EAChBC,uBAAuB;EACvBC,cAAc;EACdC,cAAc;EACdC,kBAAkB;EAClBC,EAAE,EAAEC,UAAU;EACdC,UAAU;EACVC,oBAAoB;EACpBC,UAAU;EACVC,WAAW,GAAG,KAAK;EACnBC,SAAS;EACTC,UAAU,GAAG,KAAK;EAClBC,UAAU;EACVC,aAAa,GAAG,KAAK;EACrBC,IAAI;EACJC,iBAAiB;EACjBC,KAAK;EACLC,IAAI,EAAEC,YAAY;EAClBC,MAAM;EACNC,QAAQ;EACRC,aAAa;EACbC,OAAO;EACPC,OAAO;EACPC,YAAY;EACZC,UAAU;EACVC,KAAK;EACLC,MAAM;EACNC;AAKF,CAAC,KAAK;EACJ,MAAM;IAAEC;EAAE,CAAC,GAAGzC,cAAc,CAAC,CAAC;EAC9B,MAAM;IAAE0C,cAAc;IAAEC,gBAAgB;IAAEC,WAAW;IAAEC;EAAW,CAAC,GACjE5C,eAAe,CAAuD;IACpEM,eAAe;IACfC,YAAY;IACZE,YAAY;IACZC,gBAAgB;IAChBI,kBAAkB;IAClBW,IAAI;IACJC,iBAAiB;IACjBT,UAAU;IACVG,WAAW;IACXE,UAAU;IACVE,aAAa;IACbG,KAAK;IACLC,IAAI,EAAEC,YAAY;IAClBS,MAAM;IACND;EACF,CAAC,CAAC;EAEJ,OACElC,IAAA,CAAA0C,aAAA;IAAA,GACMD,UAAU;IAAA,GACVH,cAAc;IAAA,IAEbC,gBAAgB,CAACI,OAAO,IAAI;MAC/BC,gBAAgB,EAAE9C;IACpB,CAAC;IAED,iBAAekB,UAAW;IAC1B6B,SAAS,EAAER,CAAC,CAAC,YAAY,CAAE;IAC3BS,SAAS,EAAET,CAAC,CAAC,YAAY,CAAE;IAC3BU,oBAAoB,EAAEpC,kBAAmB;IACzCqC,QAAQ,EAAEhC,UAAW;IACrBiC,qBAAqB,EAAE,IAAK;IAC5BC,QAAQ,EAAEnC,oBAAqB;IAC/BoC,SAAS,EAAElC,WAAY;IACvBR,cAAc,EAAEA,cAAe;IAC/B2C,OAAO,EAAE1C,cAAe;IACxBE,EAAE,EAAEC,UAAW;IACfwC,oBAAoB,EAAE7C,uBAAwB;IAC9C8C,OAAO,EAAEpC,SAAU;IACnBqC,QAAQ,EAAE5C,kBAAmB;IAC7B6C,aAAa,EAAEnD,gBAAiB;IAChCsB,MAAM,EAAEA,MAAO;IACfC,QAAQ,EAAEA,QAAS;IACnBE,OAAO,EAAEA,OAAQ;IACjBD,aAAa,EAAEA,aAAc;IAC7BE,OAAO,EAAEA,OAAQ;IACjB0B,QAAQ,EAAErC,UAAW;IACrBoB,WAAW,EAAEA,WAAY;IACzBR,YAAY,EAAEA,YAAa;IAC3BC,UAAU,EAAEA,UAAW;IACvBG,SAAS,EAAEA;EAAU,CACtB,CAAC;AAEN,CAAC;AAGD,MAAMsB,wBAAwB,GAAG/D,IAAI,CACnCO,gBACF,CAA4B;AAE5BwD,wBAAwB,CAACC,WAAW,GAAG,kBAAkB;AAEzD,SAASD,wBAAwB,IAAIxD,gBAAgB","ignoreList":[]}
|
|
@@ -15,6 +15,7 @@ import { Fragment, memo, useCallback } from "react";
|
|
|
15
15
|
import { Box } from "../../Box.js";
|
|
16
16
|
import { useOdysseyDesignTokens } from "../../OdysseyDesignTokensContext.js";
|
|
17
17
|
import { Tag } from "../../Tag.js";
|
|
18
|
+
import { pxToRem } from "../../theme/index.js";
|
|
18
19
|
import { Heading6 } from "../../Typography.js";
|
|
19
20
|
import { ComposablePicker } from "./ComposablePicker.js";
|
|
20
21
|
import { Option, OptionDescriptionComponent, OptionLabelContainer, OptionMetadataComponent } from "./Picker.js";
|
|
@@ -57,6 +58,9 @@ const OptionAdornmentContainer = styled("div", {
|
|
|
57
58
|
height: "auto",
|
|
58
59
|
maxHeight: odysseyDesignTokens.Spacing4,
|
|
59
60
|
marginInlineEnd: odysseyDesignTokens.Spacing2,
|
|
61
|
+
"&:has(> img)": {
|
|
62
|
+
height: `${pxToRem(16)}rem`
|
|
63
|
+
},
|
|
60
64
|
svg: {
|
|
61
65
|
display: "flex",
|
|
62
66
|
width: "100%",
|