@okta/odyssey-react-mui 1.28.1 → 1.29.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -0
- package/dist/Breadcrumbs.js +1 -0
- package/dist/Breadcrumbs.js.map +1 -1
- package/dist/Buttons/MenuItem.js +1 -0
- package/dist/Buttons/MenuItem.js.map +1 -1
- package/dist/Checkbox.js +62 -35
- package/dist/Checkbox.js.map +1 -1
- package/dist/DataTable/reorderDataRowsLocally.js.map +1 -1
- package/dist/DataTable/useRowReordering.js.map +1 -1
- package/dist/HtmlProps.js.map +1 -1
- package/dist/Pagination/Pagination.js +2 -1
- package/dist/Pagination/Pagination.js.map +1 -1
- package/dist/Radio.js +65 -38
- package/dist/Radio.js.map +1 -1
- package/dist/Typography.js +20 -0
- package/dist/Typography.js.map +1 -1
- package/dist/index.scss +1 -1
- package/dist/labs/DataFilters.js +9 -5
- package/dist/labs/DataFilters.js.map +1 -1
- package/dist/labs/DataTable.js +7 -7
- package/dist/labs/DataTable.js.map +1 -1
- package/dist/labs/DataView/BulkActionsMenu.js.map +1 -1
- package/dist/labs/DataView/CardLayoutContent.js +6 -5
- package/dist/labs/DataView/CardLayoutContent.js.map +1 -1
- package/dist/labs/DataView/DataCard.js +1 -0
- package/dist/labs/DataView/DataCard.js.map +1 -1
- package/dist/labs/DataView/DataTable.js.map +1 -1
- package/dist/labs/DataView/DataView.js +2 -2
- package/dist/labs/DataView/DataView.js.map +1 -1
- package/dist/labs/DataView/DetailPanel.js.map +1 -1
- package/dist/labs/DataView/RowActions.js.map +1 -1
- package/dist/labs/DataView/TableLayoutContent.js +1 -1
- package/dist/labs/DataView/TableLayoutContent.js.map +1 -1
- package/dist/labs/DataView/TableSettings.js.map +1 -1
- package/dist/labs/DataView/componentTypes.js.map +1 -1
- package/dist/labs/DataView/dataTypes.js.map +1 -1
- package/dist/labs/DataView/fetchData.js.map +1 -1
- package/dist/labs/DataView/testSupportData.js +201 -0
- package/dist/labs/DataView/testSupportData.js.map +1 -0
- package/dist/labs/DataView/useFilterConversion.js.map +1 -1
- package/dist/labs/{DateField.js → DatePickers/DateField.js} +1 -1
- package/dist/labs/DatePickers/DateField.js.map +1 -0
- package/dist/labs/DatePickers/DateFieldActionBar.js +56 -0
- package/dist/labs/DatePickers/DateFieldActionBar.js.map +1 -0
- package/dist/labs/DatePickers/DateFieldLocalizationProvider.js +32 -0
- package/dist/labs/DatePickers/DateFieldLocalizationProvider.js.map +1 -0
- package/dist/labs/{DatePicker.js → DatePickers/DatePicker.js} +30 -73
- package/dist/labs/DatePickers/DatePicker.js.map +1 -0
- package/dist/labs/DatePickers/DatePicker.types.d.js.map +1 -0
- package/dist/labs/DatePickers/DateTimeField.js +166 -0
- package/dist/labs/DatePickers/DateTimeField.js.map +1 -0
- package/dist/labs/DatePickers/DateTimePicker.js +233 -0
- package/dist/labs/DatePickers/DateTimePicker.js.map +1 -0
- package/dist/labs/{datePickerTheme.js → DatePickers/datePickerTheme.js} +2 -2
- package/dist/labs/DatePickers/datePickerTheme.js.map +1 -0
- package/dist/labs/DatePickers/dateTimePickerTheme.js +230 -0
- package/dist/labs/DatePickers/dateTimePickerTheme.js.map +1 -0
- package/dist/labs/DatePickers/index.js +15 -0
- package/dist/labs/DatePickers/index.js.map +1 -0
- package/dist/labs/DatePickers/useDateFieldsTranslations.js.map +1 -0
- package/dist/labs/{useOdysseyDateFields.js → DatePickers/useOdysseyDateFields.js} +36 -3
- package/dist/labs/DatePickers/useOdysseyDateFields.js.map +1 -0
- package/dist/labs/PageTemplate.js +1 -1
- package/dist/labs/PageTemplate.js.map +1 -1
- package/dist/labs/SideNav/SideNav.js +40 -34
- package/dist/labs/SideNav/SideNav.js.map +1 -1
- package/dist/labs/SideNav/SideNavHeader.js +6 -4
- package/dist/labs/SideNav/SideNavHeader.js.map +1 -1
- package/dist/labs/SideNav/SideNavItemContent.js +11 -11
- package/dist/labs/SideNav/SideNavItemContent.js.map +1 -1
- package/dist/labs/SideNav/SideNavToggleButton.js +1 -1
- package/dist/labs/SideNav/SideNavToggleButton.js.map +1 -1
- package/dist/labs/SideNav/types.js.map +1 -1
- package/dist/labs/TimeZonePicker.js.map +1 -1
- package/dist/labs/index.js +1 -3
- package/dist/labs/index.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui.js +2 -0
- package/dist/properties/ts/odyssey-react-mui.js.map +1 -1
- package/dist/src/Breadcrumbs.d.ts.map +1 -1
- package/dist/src/Buttons/MenuItem.d.ts.map +1 -1
- package/dist/src/Checkbox.d.ts.map +1 -1
- package/dist/src/DataTable/reorderDataRowsLocally.d.ts +3 -3
- package/dist/src/DataTable/reorderDataRowsLocally.d.ts.map +1 -1
- package/dist/src/DataTable/useRowReordering.d.ts +10 -10
- package/dist/src/DataTable/useRowReordering.d.ts.map +1 -1
- package/dist/src/HtmlProps.d.ts +27 -0
- package/dist/src/HtmlProps.d.ts.map +1 -1
- package/dist/src/OdysseyTranslationProvider.d.ts +1 -1
- package/dist/src/OdysseyTranslationProvider.d.ts.map +1 -1
- package/dist/src/Radio.d.ts +1 -1
- package/dist/src/Radio.d.ts.map +1 -1
- package/dist/src/Typography.d.ts +11 -11
- package/dist/src/Typography.d.ts.map +1 -1
- package/dist/src/labs/DataFilters.d.ts.map +1 -1
- package/dist/src/labs/DataTable.d.ts +11 -11
- package/dist/src/labs/DataTable.d.ts.map +1 -1
- package/dist/src/labs/DataView/BulkActionsMenu.d.ts +3 -3
- package/dist/src/labs/DataView/BulkActionsMenu.d.ts.map +1 -1
- package/dist/src/labs/DataView/CardLayoutContent.d.ts +18 -15
- package/dist/src/labs/DataView/CardLayoutContent.d.ts.map +1 -1
- package/dist/src/labs/DataView/DataCard.d.ts +7 -4
- package/dist/src/labs/DataView/DataCard.d.ts.map +1 -1
- package/dist/src/labs/DataView/DataTable.d.ts +6 -2
- package/dist/src/labs/DataView/DataTable.d.ts.map +1 -1
- package/dist/src/labs/DataView/DataView.d.ts +6 -2
- package/dist/src/labs/DataView/DataView.d.ts.map +1 -1
- package/dist/src/labs/DataView/DetailPanel.d.ts +5 -5
- package/dist/src/labs/DataView/DetailPanel.d.ts.map +1 -1
- package/dist/src/labs/DataView/RowActions.d.ts +3 -3
- package/dist/src/labs/DataView/RowActions.d.ts.map +1 -1
- package/dist/src/labs/DataView/TableLayoutContent.d.ts +18 -15
- package/dist/src/labs/DataView/TableLayoutContent.d.ts.map +1 -1
- package/dist/src/labs/DataView/TableSettings.d.ts +7 -3
- package/dist/src/labs/DataView/TableSettings.d.ts.map +1 -1
- package/dist/src/labs/DataView/componentTypes.d.ts +17 -17
- package/dist/src/labs/DataView/componentTypes.d.ts.map +1 -1
- package/dist/src/labs/DataView/dataTypes.d.ts +6 -6
- package/dist/src/labs/DataView/dataTypes.d.ts.map +1 -1
- package/dist/src/labs/DataView/fetchData.d.ts +6 -6
- package/dist/src/labs/DataView/fetchData.d.ts.map +1 -1
- package/dist/src/labs/DataView/testSupportData.d.ts +33 -0
- package/dist/src/labs/DataView/testSupportData.d.ts.map +1 -0
- package/dist/src/labs/DataView/useFilterConversion.d.ts +5 -4
- package/dist/src/labs/DataView/useFilterConversion.d.ts.map +1 -1
- package/dist/src/labs/{DateField.d.ts → DatePickers/DateField.d.ts} +1 -1
- package/dist/src/labs/DatePickers/DateField.d.ts.map +1 -0
- package/dist/src/labs/DatePickers/DateFieldActionBar.d.ts +15 -0
- package/dist/src/labs/DatePickers/DateFieldActionBar.d.ts.map +1 -0
- package/dist/src/labs/DatePickers/DateFieldLocalizationProvider.d.ts +20 -0
- package/dist/src/labs/DatePickers/DateFieldLocalizationProvider.d.ts.map +1 -0
- package/dist/src/labs/DatePickers/DatePicker.d.ts +17 -0
- package/dist/src/labs/DatePickers/DatePicker.d.ts.map +1 -0
- package/dist/src/labs/DatePickers/DateTimeField.d.ts +20 -0
- package/dist/src/labs/DatePickers/DateTimeField.d.ts.map +1 -0
- package/dist/src/labs/DatePickers/DateTimePicker.d.ts +17 -0
- package/dist/src/labs/DatePickers/DateTimePicker.d.ts.map +1 -0
- package/dist/src/labs/DatePickers/datePickerTheme.d.ts +22 -0
- package/dist/src/labs/DatePickers/datePickerTheme.d.ts.map +1 -0
- package/dist/src/labs/{datePickerTheme.d.ts → DatePickers/dateTimePickerTheme.d.ts} +2 -2
- package/dist/src/labs/DatePickers/dateTimePickerTheme.d.ts.map +1 -0
- package/dist/src/labs/DatePickers/index.d.ts +15 -0
- package/dist/src/labs/DatePickers/index.d.ts.map +1 -0
- package/dist/src/labs/DatePickers/useDateFieldsTranslations.d.ts.map +1 -0
- package/dist/src/labs/{useOdysseyDateFields.d.ts → DatePickers/useOdysseyDateFields.d.ts} +49 -6
- package/dist/src/labs/DatePickers/useOdysseyDateFields.d.ts.map +1 -0
- package/dist/src/labs/SideNav/SideNav.d.ts.map +1 -1
- package/dist/src/labs/SideNav/SideNavHeader.d.ts.map +1 -1
- package/dist/src/labs/SideNav/SideNavItemContent.d.ts +1 -1
- package/dist/src/labs/SideNav/SideNavItemContent.d.ts.map +1 -1
- package/dist/src/labs/SideNav/types.d.ts +2 -2
- package/dist/src/labs/SideNav/types.d.ts.map +1 -1
- package/dist/src/labs/TimeZonePicker.d.ts +4 -1
- package/dist/src/labs/TimeZonePicker.d.ts.map +1 -1
- package/dist/src/labs/index.d.ts +1 -3
- package/dist/src/labs/index.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui.d.ts +2 -0
- package/dist/src/properties/ts/odyssey-react-mui.d.ts.map +1 -1
- package/dist/src/theme/components.d.ts.map +1 -1
- package/dist/src/theme/mixins.d.ts.map +1 -1
- package/dist/src/theme/mixins.types.d.ts +2 -0
- package/dist/src/theme/mixins.types.d.ts.map +1 -1
- package/dist/src/{labs → ui-shell}/UiShell/UiShell.d.ts +2 -2
- package/dist/src/ui-shell/UiShell/UiShell.d.ts.map +1 -0
- package/dist/src/{labs → ui-shell}/UiShell/UiShellContent.d.ts +12 -8
- package/dist/src/ui-shell/UiShell/UiShellContent.d.ts.map +1 -0
- package/dist/src/ui-shell/UiShell/bufferLatest.d.ts.map +1 -0
- package/dist/src/ui-shell/UiShell/createMessageBus.d.ts.map +1 -0
- package/dist/src/ui-shell/UiShell/createStore.d.ts.map +1 -0
- package/dist/src/ui-shell/UiShell/index.d.ts.map +1 -0
- package/dist/src/{labs → ui-shell}/UiShell/renderUiShell.d.ts +3 -4
- package/dist/src/ui-shell/UiShell/renderUiShell.d.ts.map +1 -0
- package/dist/src/{labs → ui-shell}/UiShell/useHasUiShell.d.ts +1 -0
- package/dist/src/ui-shell/UiShell/useHasUiShell.d.ts.map +1 -0
- package/dist/src/ui-shell/UiShell/useScrollState.d.ts.map +1 -0
- package/dist/src/ui-shell/index.d.ts +14 -0
- package/dist/src/ui-shell/index.d.ts.map +1 -0
- package/dist/src/{web-component → ui-shell}/renderReactInWebComponent.d.ts +3 -23
- package/dist/src/ui-shell/renderReactInWebComponent.d.ts.map +1 -0
- package/dist/src/web-component/index.d.ts +0 -1
- package/dist/src/web-component/index.d.ts.map +1 -1
- package/dist/src/web-component/shadow-dom.d.ts +23 -2
- package/dist/src/web-component/shadow-dom.d.ts.map +1 -1
- package/dist/theme/components.js +38 -4
- package/dist/theme/components.js.map +1 -1
- package/dist/theme/mixins.js +2 -1
- package/dist/theme/mixins.js.map +1 -1
- package/dist/theme/mixins.types.js.map +1 -1
- package/dist/tsconfig.production.tsbuildinfo +1 -1
- package/dist/{labs → ui-shell}/UiShell/UiShell.js +2 -0
- package/dist/ui-shell/UiShell/UiShell.js.map +1 -0
- package/dist/{labs → ui-shell}/UiShell/UiShellContent.js +19 -11
- package/dist/ui-shell/UiShell/UiShellContent.js.map +1 -0
- package/dist/ui-shell/UiShell/bufferLatest.js.map +1 -0
- package/dist/ui-shell/UiShell/createMessageBus.js.map +1 -0
- package/dist/ui-shell/UiShell/createStore.js.map +1 -0
- package/dist/ui-shell/UiShell/index.js.map +1 -0
- package/dist/{labs → ui-shell}/UiShell/renderUiShell.js +4 -2
- package/dist/ui-shell/UiShell/renderUiShell.js.map +1 -0
- package/dist/{labs → ui-shell}/UiShell/useHasUiShell.js +1 -1
- package/dist/ui-shell/UiShell/useHasUiShell.js.map +1 -0
- package/dist/ui-shell/UiShell/useScrollState.js.map +1 -0
- package/dist/ui-shell/index.js +14 -0
- package/dist/ui-shell/index.js.map +1 -0
- package/dist/{web-component → ui-shell}/renderReactInWebComponent.js +7 -17
- package/dist/ui-shell/renderReactInWebComponent.js.map +1 -0
- package/dist/web-component/index.js +0 -1
- package/dist/web-component/index.js.map +1 -1
- package/dist/web-component/shadow-dom.js +12 -2
- package/dist/web-component/shadow-dom.js.map +1 -1
- package/package.json +10 -3
- package/src/Breadcrumbs.tsx +5 -1
- package/src/Buttons/MenuItem.tsx +1 -0
- package/src/Checkbox.tsx +86 -44
- package/src/DataTable/reorderDataRowsLocally.tsx +3 -3
- package/src/DataTable/useRowReordering.tsx +16 -23
- package/src/HtmlProps.ts +27 -0
- package/src/Pagination/Pagination.tsx +2 -2
- package/src/Radio.tsx +78 -39
- package/src/Typography.tsx +26 -1
- package/src/labs/DataFilters.tsx +7 -3
- package/src/labs/DataTable.tsx +41 -33
- package/src/labs/DataView/BulkActionsMenu.tsx +4 -4
- package/src/labs/DataView/CardLayoutContent.tsx +34 -28
- package/src/labs/DataView/DataCard.tsx +13 -6
- package/src/labs/DataView/DataTable.tsx +11 -4
- package/src/labs/DataView/DataView.test.tsx +1012 -87
- package/src/labs/DataView/DataView.tsx +18 -11
- package/src/labs/DataView/DetailPanel.tsx +4 -4
- package/src/labs/DataView/RowActions.tsx +4 -4
- package/src/labs/DataView/TableLayoutContent.tsx +30 -24
- package/src/labs/DataView/TableSettings.tsx +12 -6
- package/src/labs/DataView/componentTypes.ts +17 -17
- package/src/labs/DataView/dataTypes.ts +14 -8
- package/src/labs/DataView/fetchData.ts +9 -7
- package/src/labs/DataView/testSupportData.tsx +301 -0
- package/src/labs/DataView/useFilterConversion.ts +8 -8
- package/src/labs/{DateField.tsx → DatePickers/DateField.tsx} +2 -2
- package/src/labs/DatePickers/DateFieldActionBar.tsx +65 -0
- package/src/labs/DatePickers/DateFieldLocalizationProvider.tsx +46 -0
- package/src/labs/{DatePicker.tsx → DatePickers/DatePicker.tsx} +31 -136
- package/src/labs/DatePickers/DateTimeField.tsx +271 -0
- package/src/labs/DatePickers/DateTimePicker.test.tsx +66 -0
- package/src/labs/DatePickers/DateTimePicker.tsx +303 -0
- package/src/labs/{datePickerTheme.tsx → DatePickers/datePickerTheme.tsx} +2 -2
- package/src/labs/DatePickers/dateTimePickerTheme.ts +213 -0
- package/src/labs/DatePickers/index.ts +15 -0
- package/src/labs/{useOdysseyDateFields.ts → DatePickers/useOdysseyDateFields.ts} +112 -10
- package/src/labs/PageTemplate.tsx +1 -1
- package/src/labs/SideNav/SideNav.tsx +38 -39
- package/src/labs/SideNav/SideNavHeader.tsx +6 -4
- package/src/labs/SideNav/SideNavItemContent.tsx +21 -18
- package/src/labs/SideNav/SideNavToggleButton.tsx +1 -1
- package/src/labs/SideNav/types.ts +2 -2
- package/src/labs/TimeZonePicker.tsx +5 -1
- package/src/labs/index.ts +2 -3
- package/src/properties/odyssey-react-mui.properties +2 -0
- package/src/properties/ts/odyssey-react-mui.ts +1 -1
- package/src/theme/components.tsx +45 -4
- package/src/theme/mixins.ts +1 -0
- package/src/theme/mixins.types.ts +2 -0
- package/src/{labs → ui-shell}/UiShell/UiShell.tsx +3 -0
- package/src/{labs → ui-shell}/UiShell/UiShellContent.tsx +60 -31
- package/src/{labs → ui-shell}/UiShell/renderUiShell.test.tsx +16 -22
- package/src/{labs → ui-shell}/UiShell/renderUiShell.tsx +7 -4
- package/src/{labs → ui-shell}/UiShell/useHasUiShell.ts +1 -1
- package/src/ui-shell/index.ts +14 -0
- package/src/{web-component → ui-shell}/renderReactInWebComponent.test.tsx +1 -1
- package/src/{web-component → ui-shell}/renderReactInWebComponent.ts +9 -45
- package/src/web-component/index.ts +0 -1
- package/src/web-component/shadow-dom.ts +36 -3
- package/dist/labs/DateField.js.map +0 -1
- package/dist/labs/DatePicker.js.map +0 -1
- package/dist/labs/DatePicker.types.d.js.map +0 -1
- package/dist/labs/UiShell/UiShell.js.map +0 -1
- package/dist/labs/UiShell/UiShellContent.js.map +0 -1
- package/dist/labs/UiShell/bufferLatest.js.map +0 -1
- package/dist/labs/UiShell/createMessageBus.js.map +0 -1
- package/dist/labs/UiShell/createStore.js.map +0 -1
- package/dist/labs/UiShell/index.js.map +0 -1
- package/dist/labs/UiShell/renderUiShell.js.map +0 -1
- package/dist/labs/UiShell/useHasUiShell.js.map +0 -1
- package/dist/labs/UiShell/useScrollState.js.map +0 -1
- package/dist/labs/datePickerTheme.js.map +0 -1
- package/dist/labs/useDateFieldsTranslations.js.map +0 -1
- package/dist/labs/useOdysseyDateFields.js.map +0 -1
- package/dist/src/labs/DateField.d.ts.map +0 -1
- package/dist/src/labs/DatePicker.d.ts +0 -47
- package/dist/src/labs/DatePicker.d.ts.map +0 -1
- package/dist/src/labs/UiShell/UiShell.d.ts.map +0 -1
- package/dist/src/labs/UiShell/UiShellContent.d.ts.map +0 -1
- package/dist/src/labs/UiShell/bufferLatest.d.ts.map +0 -1
- package/dist/src/labs/UiShell/createMessageBus.d.ts.map +0 -1
- package/dist/src/labs/UiShell/createStore.d.ts.map +0 -1
- package/dist/src/labs/UiShell/index.d.ts.map +0 -1
- package/dist/src/labs/UiShell/renderUiShell.d.ts.map +0 -1
- package/dist/src/labs/UiShell/useHasUiShell.d.ts.map +0 -1
- package/dist/src/labs/UiShell/useScrollState.d.ts.map +0 -1
- package/dist/src/labs/datePickerTheme.d.ts.map +0 -1
- package/dist/src/labs/useDateFieldsTranslations.d.ts.map +0 -1
- package/dist/src/labs/useOdysseyDateFields.d.ts.map +0 -1
- package/dist/src/web-component/renderReactInWebComponent.d.ts.map +0 -1
- package/dist/web-component/renderReactInWebComponent.js.map +0 -1
- /package/dist/labs/{DatePicker.types.d.js → DatePickers/DatePicker.types.d.js} +0 -0
- /package/dist/labs/{useDateFieldsTranslations.js → DatePickers/useDateFieldsTranslations.js} +0 -0
- /package/dist/src/labs/{useDateFieldsTranslations.d.ts → DatePickers/useDateFieldsTranslations.d.ts} +0 -0
- /package/dist/src/{labs → ui-shell}/UiShell/bufferLatest.d.ts +0 -0
- /package/dist/src/{labs → ui-shell}/UiShell/createMessageBus.d.ts +0 -0
- /package/dist/src/{labs → ui-shell}/UiShell/createStore.d.ts +0 -0
- /package/dist/src/{labs → ui-shell}/UiShell/index.d.ts +0 -0
- /package/dist/src/{labs → ui-shell}/UiShell/useScrollState.d.ts +0 -0
- /package/dist/{labs → ui-shell}/UiShell/bufferLatest.js +0 -0
- /package/dist/{labs → ui-shell}/UiShell/createMessageBus.js +0 -0
- /package/dist/{labs → ui-shell}/UiShell/createStore.js +0 -0
- /package/dist/{labs → ui-shell}/UiShell/index.js +0 -0
- /package/dist/{labs → ui-shell}/UiShell/useScrollState.js +0 -0
- /package/src/labs/{DatePicker.types.d.ts → DatePickers/DatePicker.types.d.ts} +0 -0
- /package/src/labs/{useDateFieldsTranslations.ts → DatePickers/useDateFieldsTranslations.ts} +0 -0
- /package/src/{labs → ui-shell}/UiShell/UiShell.test.tsx +0 -0
- /package/src/{labs → ui-shell}/UiShell/bufferLatest.test.ts +0 -0
- /package/src/{labs → ui-shell}/UiShell/bufferLatest.ts +0 -0
- /package/src/{labs → ui-shell}/UiShell/createMessageBus.test.ts +0 -0
- /package/src/{labs → ui-shell}/UiShell/createMessageBus.ts +0 -0
- /package/src/{labs → ui-shell}/UiShell/createStore.test.ts +0 -0
- /package/src/{labs → ui-shell}/UiShell/createStore.ts +0 -0
- /package/src/{labs → ui-shell}/UiShell/index.ts +0 -0
- /package/src/{labs → ui-shell}/UiShell/useScrollState.ts +0 -0
|
@@ -10,12 +10,26 @@
|
|
|
10
10
|
* See the License for the specific language governing permissions and limitations under the License.
|
|
11
11
|
*/
|
|
12
12
|
|
|
13
|
-
import {
|
|
13
|
+
import {
|
|
14
|
+
FocusEventHandler,
|
|
15
|
+
useCallback,
|
|
16
|
+
useEffect,
|
|
17
|
+
useMemo,
|
|
18
|
+
useRef,
|
|
19
|
+
useState,
|
|
20
|
+
} from "react";
|
|
14
21
|
import { DateTime } from "luxon";
|
|
15
22
|
import { useTranslation } from "react-i18next";
|
|
16
23
|
|
|
17
|
-
import { FieldComponentProps } from "
|
|
18
|
-
import {
|
|
24
|
+
import { FieldComponentProps } from "../../FieldComponentProps";
|
|
25
|
+
import {
|
|
26
|
+
ArrowLeftIcon,
|
|
27
|
+
ArrowRightIcon,
|
|
28
|
+
CalendarIcon,
|
|
29
|
+
ChevronDownIcon,
|
|
30
|
+
} from "../../icons.generated";
|
|
31
|
+
import { ComponentControlledState, getControlState } from "../../inputUtils";
|
|
32
|
+
import { TimeZoneOption, TimeZonePickerProps } from "../TimeZonePicker";
|
|
19
33
|
import { useDateFieldsTranslations } from "./useDateFieldsTranslations";
|
|
20
34
|
|
|
21
35
|
const { CONTROLLED } = ComponentControlledState;
|
|
@@ -25,11 +39,6 @@ const isValidDateTime = (dateTime: DateTime) => dateTime.isValid;
|
|
|
25
39
|
const utcDateTimeFromIsoString = (dateString: string) =>
|
|
26
40
|
DateTime.fromISO(dateString).toUTC();
|
|
27
41
|
|
|
28
|
-
export type TimeZoneOption = {
|
|
29
|
-
label: string;
|
|
30
|
-
value: string;
|
|
31
|
-
};
|
|
32
|
-
|
|
33
42
|
export type OdysseyDateFieldProps = {
|
|
34
43
|
/**
|
|
35
44
|
* default value when uncontrolled.
|
|
@@ -51,6 +60,10 @@ export type OdysseyDateFieldProps = {
|
|
|
51
60
|
* Disable specific year(s).
|
|
52
61
|
*/
|
|
53
62
|
isYearEnabled?: (date: Date) => boolean;
|
|
63
|
+
/**
|
|
64
|
+
* The label for the `input` element.
|
|
65
|
+
*/
|
|
66
|
+
label: string;
|
|
54
67
|
/**
|
|
55
68
|
* Minimum date allowed.
|
|
56
69
|
*
|
|
@@ -63,7 +76,36 @@ export type OdysseyDateFieldProps = {
|
|
|
63
76
|
* NOTE: If not a valid date string in ISO format, `maxDate` will not apply
|
|
64
77
|
*/
|
|
65
78
|
maxDate?: string;
|
|
79
|
+
/**
|
|
80
|
+
* Callback fired when the a date field loses focus
|
|
81
|
+
*/
|
|
82
|
+
onBlur?: FocusEventHandler<HTMLInputElement>;
|
|
83
|
+
/**
|
|
84
|
+
* Callback fired when the a date is selected with the calendar.
|
|
85
|
+
*/
|
|
86
|
+
onCalendarDateChange?: ({
|
|
87
|
+
value,
|
|
88
|
+
timeZone,
|
|
89
|
+
}: {
|
|
90
|
+
value: string | undefined;
|
|
91
|
+
timeZone: string;
|
|
92
|
+
}) => void;
|
|
93
|
+
/**
|
|
94
|
+
* Callback fired when the date/text input changes.
|
|
95
|
+
*/
|
|
96
|
+
onInputChange?: (value: string) => void;
|
|
97
|
+
/**
|
|
98
|
+
* a default timezone for the picker
|
|
99
|
+
*/
|
|
66
100
|
timeZone?: string;
|
|
101
|
+
/**
|
|
102
|
+
* If provided, a `TimeZonePicker` will be rendered below the DatePicker. These options will populate as the Autocomplete options
|
|
103
|
+
*/
|
|
104
|
+
timeZoneOptions?: TimeZoneOption[];
|
|
105
|
+
/**
|
|
106
|
+
* label for `TimeZonePicker`
|
|
107
|
+
*/
|
|
108
|
+
timeZonePickerLabel?: TimeZonePickerProps["label"];
|
|
67
109
|
/**
|
|
68
110
|
* value when controlled.
|
|
69
111
|
*
|
|
@@ -86,12 +128,28 @@ export const useOdysseyDateFields = ({
|
|
|
86
128
|
isYearEnabled = () => true,
|
|
87
129
|
minDate: minDateProp,
|
|
88
130
|
maxDate: maxDateProp,
|
|
131
|
+
onInputChange: onInputChangeProp,
|
|
89
132
|
timeZone = "system",
|
|
90
133
|
value,
|
|
91
|
-
}:
|
|
92
|
-
|
|
134
|
+
}: Pick<
|
|
135
|
+
OdysseyDateFieldProps,
|
|
136
|
+
| "defaultValue"
|
|
137
|
+
| "isDateEnabled"
|
|
138
|
+
| "isMonthEnabled"
|
|
139
|
+
| "isYearEnabled"
|
|
140
|
+
| "minDate"
|
|
141
|
+
| "maxDate"
|
|
142
|
+
| "onInputChange"
|
|
143
|
+
| "timeZone"
|
|
144
|
+
| "value"
|
|
145
|
+
> &
|
|
146
|
+
Pick<FieldComponentProps, "errorMessage">) => {
|
|
147
|
+
const [isOpen, setIsOpen] = useState(false);
|
|
148
|
+
const [popperElement, setPopperElement] = useState<HTMLInputElement | null>();
|
|
93
149
|
const [internalTimeZone, setInternalTimeZone] = useState(timeZone);
|
|
94
150
|
|
|
151
|
+
const internalValueRef = useRef<DateTime | null>(null);
|
|
152
|
+
|
|
95
153
|
const [validationDateRanges, setValidationDateRanges] =
|
|
96
154
|
useState<ValidationDateRanges>({
|
|
97
155
|
minDate: undefined,
|
|
@@ -183,19 +241,63 @@ export const useOdysseyDateFields = ({
|
|
|
183
241
|
return null;
|
|
184
242
|
}, [defaultValue, validationDateRanges, value]);
|
|
185
243
|
|
|
244
|
+
const onTimeZoneChange = useCallback(
|
|
245
|
+
(timeZone: string | undefined) => {
|
|
246
|
+
if (timeZone && isValidTimeZone(timeZone)) {
|
|
247
|
+
setInternalTimeZone(timeZone);
|
|
248
|
+
}
|
|
249
|
+
},
|
|
250
|
+
[isValidTimeZone, setInternalTimeZone],
|
|
251
|
+
);
|
|
252
|
+
|
|
253
|
+
const toggleCalendarVisibility = useCallback(
|
|
254
|
+
() => setIsOpen(!isOpen),
|
|
255
|
+
[isOpen, setIsOpen],
|
|
256
|
+
);
|
|
257
|
+
|
|
258
|
+
const closeCalendar = useCallback(() => {
|
|
259
|
+
setIsOpen(false);
|
|
260
|
+
}, [setIsOpen]);
|
|
261
|
+
|
|
262
|
+
const formatDayOfWeek = (date: DateTime) => date.toFormat("EEE");
|
|
263
|
+
|
|
264
|
+
const onInputChange = useCallback<(value: string) => void>(
|
|
265
|
+
(value) => {
|
|
266
|
+
onInputChangeProp?.(value);
|
|
267
|
+
},
|
|
268
|
+
[onInputChangeProp],
|
|
269
|
+
);
|
|
270
|
+
|
|
271
|
+
const commonIcons = {
|
|
272
|
+
ArrowLeftIcon: ArrowLeftIcon,
|
|
273
|
+
ArrowRightIcon: ArrowRightIcon,
|
|
274
|
+
CalendarIcon: CalendarIcon,
|
|
275
|
+
ChevronDownIcon: ChevronDownIcon,
|
|
276
|
+
};
|
|
277
|
+
|
|
186
278
|
return {
|
|
279
|
+
closeCalendar,
|
|
280
|
+
commonIcons,
|
|
187
281
|
defaultedLanguageCode,
|
|
188
282
|
formatDateTimeToUtcIsoDateString,
|
|
283
|
+
formatDayOfWeek,
|
|
189
284
|
inputValues,
|
|
190
285
|
internalTimeZone,
|
|
191
286
|
internalValueRef,
|
|
287
|
+
isOpen,
|
|
192
288
|
isValidTimeZone,
|
|
193
289
|
localeText,
|
|
194
290
|
maxDate: validationDateRanges.maxDate,
|
|
195
291
|
minDate: validationDateRanges.minDate,
|
|
292
|
+
popperElement,
|
|
293
|
+
onInputChange,
|
|
294
|
+
onTimeZoneChange,
|
|
196
295
|
setInternalTimeZone,
|
|
296
|
+
setIsOpen,
|
|
297
|
+
setPopperElement,
|
|
197
298
|
shouldDisableDate,
|
|
198
299
|
shouldDisableMonth,
|
|
199
300
|
shouldDisableYear,
|
|
301
|
+
toggleCalendarVisibility,
|
|
200
302
|
};
|
|
201
303
|
};
|
|
@@ -20,7 +20,7 @@ import {
|
|
|
20
20
|
import { DocumentationIcon } from "../icons.generated";
|
|
21
21
|
import { Heading4, Subordinate } from "../Typography";
|
|
22
22
|
import { Link } from "../Link";
|
|
23
|
-
import { useHasUiShell } from "
|
|
23
|
+
import { useHasUiShell } from "../ui-shell/UiShell/useHasUiShell";
|
|
24
24
|
|
|
25
25
|
export type PageTemplateProps = {
|
|
26
26
|
/**
|
|
@@ -39,6 +39,7 @@ import { SideNavFooterContent } from "./SideNavFooterContent";
|
|
|
39
39
|
import { SideNavItemContentContext } from "./SideNavItemContentContext";
|
|
40
40
|
import { SideNavToggleButton } from "./SideNavToggleButton";
|
|
41
41
|
import { SortableList } from "./SortableList/SortableList";
|
|
42
|
+
import { Overline } from "../../Typography";
|
|
42
43
|
// eslint-disable-next-line import/no-extraneous-dependencies
|
|
43
44
|
import { arrayMove } from "@dnd-kit/sortable";
|
|
44
45
|
|
|
@@ -62,7 +63,6 @@ const StyledCollapsibleContent = styled("div", {
|
|
|
62
63
|
position: "relative",
|
|
63
64
|
display: "inline-grid",
|
|
64
65
|
gridTemplateColumns: DEFAULT_SIDE_NAV_WIDTH,
|
|
65
|
-
// gridTemplateRows: "max-content 1fr max-content",
|
|
66
66
|
height: "100%",
|
|
67
67
|
transition: `grid-template-columns ${odysseyDesignTokens.TransitionDurationMain}, opacity 300ms`,
|
|
68
68
|
transitionTimingFunction: odysseyDesignTokens.TransitionTimingMain,
|
|
@@ -129,7 +129,7 @@ const StyledSideNav = styled("nav", {
|
|
|
129
129
|
zIndex: 2,
|
|
130
130
|
},
|
|
131
131
|
|
|
132
|
-
"&:has([data-sidenav-toggle='true']:hover), &:has([data-sidenav-toggle='true']:focus)":
|
|
132
|
+
"&:has([data-sidenav-toggle='true']:hover), &:has([data-sidenav-toggle='true']:focus-visible)":
|
|
133
133
|
{
|
|
134
134
|
...(isSideNavCollapsed && {
|
|
135
135
|
"&::after": {
|
|
@@ -177,13 +177,16 @@ const SideNavListContainer = styled("ul")(() => ({
|
|
|
177
177
|
padding: 0,
|
|
178
178
|
listStyle: "none",
|
|
179
179
|
listStyleType: "none",
|
|
180
|
+
margin: 0,
|
|
180
181
|
}));
|
|
181
182
|
|
|
182
183
|
const SideNavScrollableContainer = styled("div", {
|
|
183
184
|
shouldForwardProp: (prop) => prop !== "odysseyDesignTokens",
|
|
184
185
|
})(({ odysseyDesignTokens }: { odysseyDesignTokens: DesignTokens }) => ({
|
|
186
|
+
display: "grid",
|
|
187
|
+
gridTemplateRows: "1fr max-content",
|
|
185
188
|
flex: "1 1 100%",
|
|
186
|
-
overflowY: "
|
|
189
|
+
overflowY: "scroll",
|
|
187
190
|
paddingInline: odysseyDesignTokens.Spacing2,
|
|
188
191
|
}));
|
|
189
192
|
|
|
@@ -192,19 +195,19 @@ const SectionHeaderContainer = styled("li", {
|
|
|
192
195
|
})(({ odysseyDesignTokens }: { odysseyDesignTokens: DesignTokens }) => ({
|
|
193
196
|
paddingBlock: odysseyDesignTokens.Spacing1,
|
|
194
197
|
paddingInline: odysseyDesignTokens.Spacing4,
|
|
198
|
+
marginBlock: `${odysseyDesignTokens.Spacing3}`,
|
|
199
|
+
color: odysseyDesignTokens.HueNeutral600,
|
|
195
200
|
}));
|
|
196
201
|
|
|
197
|
-
const
|
|
202
|
+
const SideNavFooter = styled("div", {
|
|
198
203
|
shouldForwardProp: (prop) => prop !== "odysseyDesignTokens",
|
|
199
204
|
})(({ odysseyDesignTokens }: { odysseyDesignTokens: DesignTokens }) => ({
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
color: odysseyDesignTokens.HueNeutral600,
|
|
204
|
-
textTransform: "uppercase",
|
|
205
|
+
flexShrink: 0,
|
|
206
|
+
padding: odysseyDesignTokens.Spacing4,
|
|
207
|
+
backgroundColor: odysseyDesignTokens.HueNeutralWhite,
|
|
205
208
|
}));
|
|
206
209
|
|
|
207
|
-
const
|
|
210
|
+
const PersistentSideNavFooter = styled(SideNavFooter, {
|
|
208
211
|
shouldForwardProp: (prop) =>
|
|
209
212
|
prop !== "isContentScrollable" && prop !== "odysseyDesignTokens",
|
|
210
213
|
})(
|
|
@@ -215,11 +218,10 @@ const SideNavFooter = styled("div", {
|
|
|
215
218
|
isContentScrollable: boolean;
|
|
216
219
|
odysseyDesignTokens: DesignTokens;
|
|
217
220
|
}) => ({
|
|
218
|
-
flexShrink: 0,
|
|
219
221
|
transitionProperty: "box-shadow",
|
|
220
222
|
transitionDuration: odysseyDesignTokens.TransitionDurationMain,
|
|
221
223
|
transitionTiming: odysseyDesignTokens.TransitionTimingMain,
|
|
222
|
-
|
|
224
|
+
zIndex: 2,
|
|
223
225
|
// The box shadow should appear above the footer only if the scrollable region has overflow
|
|
224
226
|
...(isContentScrollable && {
|
|
225
227
|
boxShadow: "0px -8px 8px -8px rgba(39, 39, 39, 0.08)",
|
|
@@ -230,22 +232,22 @@ const SideNavFooter = styled("div", {
|
|
|
230
232
|
const SideNavFooterItemsContainer = styled("div", {
|
|
231
233
|
shouldForwardProp: (prop) => prop !== "odysseyDesignTokens",
|
|
232
234
|
})(({ odysseyDesignTokens }: { odysseyDesignTokens: DesignTokens }) => ({
|
|
233
|
-
paddingBlock: odysseyDesignTokens.Spacing4,
|
|
234
|
-
// paddingBlockEnd: odysseyDesignTokens.Spacing4,
|
|
235
|
-
paddingInline: odysseyDesignTokens.Spacing5,
|
|
236
235
|
display: "flex",
|
|
237
236
|
flexWrap: "wrap",
|
|
238
237
|
alignItems: "center",
|
|
239
238
|
fontSize: odysseyDesignTokens.TypographySizeOverline,
|
|
240
239
|
|
|
241
|
-
a: {
|
|
242
|
-
color:
|
|
240
|
+
"a, span": {
|
|
241
|
+
color: odysseyDesignTokens.HueNeutral600,
|
|
242
|
+
transition: `color ${odysseyDesignTokens.TransitionDurationMain}`,
|
|
243
|
+
|
|
244
|
+
"&:visited": {
|
|
245
|
+
color: odysseyDesignTokens.HueNeutral600,
|
|
246
|
+
},
|
|
243
247
|
|
|
244
248
|
"&:hover": {
|
|
245
249
|
textDecoration: "none",
|
|
246
|
-
|
|
247
|
-
"&:visited": {
|
|
248
|
-
color: odysseyDesignTokens.TypographyColorHeading,
|
|
250
|
+
color: odysseyDesignTokens.HueNeutral900,
|
|
249
251
|
},
|
|
250
252
|
},
|
|
251
253
|
}));
|
|
@@ -292,8 +294,8 @@ const SideNav = ({
|
|
|
292
294
|
sideNavItems,
|
|
293
295
|
}: SideNavProps) => {
|
|
294
296
|
const [isSideNavCollapsed, setSideNavCollapsed] = useState(false);
|
|
295
|
-
const [isContentScrollable, setIsContentScrollable] = useState(false);
|
|
296
297
|
const [hasContentScrolled, setHasContentScrolled] = useState(false);
|
|
298
|
+
const [isContentScrollable, setIsContentScrollable] = useState(false);
|
|
297
299
|
const scrollableContentRef = useRef<HTMLUListElement>(null);
|
|
298
300
|
const resizeObserverRef = useRef<ResizeObserver | null>(null);
|
|
299
301
|
const intersectionObserverRef = useRef<IntersectionObserver | null>(null);
|
|
@@ -596,11 +598,7 @@ const SideNav = ({
|
|
|
596
598
|
key={id}
|
|
597
599
|
odysseyDesignTokens={odysseyDesignTokens}
|
|
598
600
|
>
|
|
599
|
-
<
|
|
600
|
-
odysseyDesignTokens={odysseyDesignTokens}
|
|
601
|
-
>
|
|
602
|
-
{label}
|
|
603
|
-
</SectionHeader>
|
|
601
|
+
<Overline component="h3">{label}</Overline>
|
|
604
602
|
</SectionHeaderContainer>
|
|
605
603
|
);
|
|
606
604
|
} else if (childNavItems) {
|
|
@@ -662,22 +660,23 @@ const SideNav = ({
|
|
|
662
660
|
}
|
|
663
661
|
})}
|
|
664
662
|
</SideNavListContainer>
|
|
663
|
+
{!isLoading && footerItems && !hasCustomFooter && (
|
|
664
|
+
<SideNavFooter odysseyDesignTokens={odysseyDesignTokens}>
|
|
665
|
+
<SideNavFooterItemsContainer
|
|
666
|
+
odysseyDesignTokens={odysseyDesignTokens}
|
|
667
|
+
>
|
|
668
|
+
<SideNavFooterContent footerItems={footerItems} />
|
|
669
|
+
</SideNavFooterItemsContainer>
|
|
670
|
+
</SideNavFooter>
|
|
671
|
+
)}
|
|
665
672
|
</SideNavScrollableContainer>
|
|
666
|
-
{!isLoading &&
|
|
667
|
-
<
|
|
668
|
-
odysseyDesignTokens={odysseyDesignTokens}
|
|
673
|
+
{!isLoading && !footerItems && hasCustomFooter && (
|
|
674
|
+
<PersistentSideNavFooter
|
|
669
675
|
isContentScrollable={isContentScrollable}
|
|
676
|
+
odysseyDesignTokens={odysseyDesignTokens}
|
|
670
677
|
>
|
|
671
|
-
{
|
|
672
|
-
|
|
673
|
-
: footerItems && (
|
|
674
|
-
<SideNavFooterItemsContainer
|
|
675
|
-
odysseyDesignTokens={odysseyDesignTokens}
|
|
676
|
-
>
|
|
677
|
-
<SideNavFooterContent footerItems={footerItems} />
|
|
678
|
-
</SideNavFooterItemsContainer>
|
|
679
|
-
)}
|
|
680
|
-
</SideNavFooter>
|
|
678
|
+
{footerComponent}
|
|
679
|
+
</PersistentSideNavFooter>
|
|
681
680
|
)}
|
|
682
681
|
</StyledOpacityTransitionContainer>
|
|
683
682
|
</StyledCollapsibleContent>
|
|
@@ -20,7 +20,7 @@ import {
|
|
|
20
20
|
} from "../../OdysseyDesignTokensContext";
|
|
21
21
|
import { SideNavLogo } from "./SideNavLogo";
|
|
22
22
|
import { SideNavProps } from "./types";
|
|
23
|
-
import {
|
|
23
|
+
import { Heading5 } from "../../Typography";
|
|
24
24
|
import { TOP_NAV_HEIGHT } from "../TopNav";
|
|
25
25
|
|
|
26
26
|
const SideNavHeaderContainer = styled("div", {
|
|
@@ -39,7 +39,8 @@ const SideNavLogoContainer = styled("div", {
|
|
|
39
39
|
display: "flex",
|
|
40
40
|
alignItems: "center",
|
|
41
41
|
height: TOP_NAV_HEIGHT,
|
|
42
|
-
|
|
42
|
+
paddingBlock: odysseyDesignTokens.Spacing4,
|
|
43
|
+
paddingInline: odysseyDesignTokens.Spacing5,
|
|
43
44
|
|
|
44
45
|
"svg, img": {
|
|
45
46
|
maxHeight: "100%",
|
|
@@ -54,7 +55,8 @@ const SideNavHeadingContainer = styled("div", {
|
|
|
54
55
|
display: "flex",
|
|
55
56
|
justifyContent: "space-between",
|
|
56
57
|
alignItems: "center",
|
|
57
|
-
|
|
58
|
+
paddingBlock: odysseyDesignTokens.Spacing4,
|
|
59
|
+
paddingInline: odysseyDesignTokens.Spacing5,
|
|
58
60
|
width: "100%",
|
|
59
61
|
|
|
60
62
|
["& .MuiTypography-root"]: {
|
|
@@ -93,7 +95,7 @@ const SideNavHeader = ({
|
|
|
93
95
|
</SideNavLogoContainer>
|
|
94
96
|
|
|
95
97
|
<SideNavHeadingContainer odysseyDesignTokens={odysseyDesignTokens}>
|
|
96
|
-
<
|
|
98
|
+
<Heading5 component="h2">{isLoading ? <Skeleton /> : appName}</Heading5>
|
|
97
99
|
</SideNavHeadingContainer>
|
|
98
100
|
</SideNavHeaderContainer>
|
|
99
101
|
);
|
|
@@ -12,12 +12,13 @@
|
|
|
12
12
|
|
|
13
13
|
import styled from "@emotion/styled";
|
|
14
14
|
import {
|
|
15
|
-
|
|
16
|
-
useImperativeHandle,
|
|
17
|
-
useCallback,
|
|
15
|
+
KeyboardEventHandler,
|
|
18
16
|
memo,
|
|
19
|
-
|
|
17
|
+
MouseEventHandler,
|
|
18
|
+
useCallback,
|
|
19
|
+
useImperativeHandle,
|
|
20
20
|
useMemo,
|
|
21
|
+
useRef,
|
|
21
22
|
} from "react";
|
|
22
23
|
import { Link as NavItemLink } from "@mui/material";
|
|
23
24
|
import {
|
|
@@ -113,7 +114,7 @@ export const getBaseNavItemContentStyles = ({
|
|
|
113
114
|
color: `${odysseyDesignTokens.TypographyColorDisabled} !important`,
|
|
114
115
|
}),
|
|
115
116
|
|
|
116
|
-
"&:focus-visible
|
|
117
|
+
"&:focus-visible": {
|
|
117
118
|
outline: "none",
|
|
118
119
|
boxShadow: `inset 0 0 0 2px ${odysseyDesignTokens.PalettePrimaryMain}`,
|
|
119
120
|
},
|
|
@@ -241,25 +242,29 @@ const SideNavItemContent = ({
|
|
|
241
242
|
[],
|
|
242
243
|
);
|
|
243
244
|
|
|
244
|
-
const itemClickHandler = useCallback
|
|
245
|
-
|
|
245
|
+
const itemClickHandler = useCallback<
|
|
246
|
+
MouseEventHandler<HTMLDivElement | HTMLAnchorElement>
|
|
247
|
+
>(
|
|
248
|
+
(event) => {
|
|
246
249
|
return () => {
|
|
247
250
|
onItemSelected?.(id);
|
|
248
|
-
onClick?.();
|
|
251
|
+
onClick?.(event);
|
|
249
252
|
};
|
|
250
253
|
},
|
|
251
|
-
[onClick, onItemSelected],
|
|
254
|
+
[id, onClick, onItemSelected],
|
|
252
255
|
);
|
|
253
256
|
|
|
254
|
-
const sideNavItemContentKeyHandler = useCallback
|
|
255
|
-
|
|
257
|
+
const sideNavItemContentKeyHandler = useCallback<
|
|
258
|
+
KeyboardEventHandler<HTMLDivElement>
|
|
259
|
+
>(
|
|
260
|
+
(event) => {
|
|
256
261
|
if (event?.key === "Enter") {
|
|
257
262
|
event.preventDefault();
|
|
258
263
|
onItemSelected?.(id);
|
|
259
|
-
onClick?.();
|
|
264
|
+
onClick?.(event);
|
|
260
265
|
}
|
|
261
266
|
},
|
|
262
|
-
[onClick, onItemSelected],
|
|
267
|
+
[id, onClick, onItemSelected],
|
|
263
268
|
);
|
|
264
269
|
|
|
265
270
|
return (
|
|
@@ -298,10 +303,8 @@ const SideNavItemContent = ({
|
|
|
298
303
|
isDisabled={isDisabled}
|
|
299
304
|
tabIndex={0}
|
|
300
305
|
role="button"
|
|
301
|
-
onClick={itemClickHandler
|
|
302
|
-
onKeyDown={
|
|
303
|
-
sideNavItemContentKeyHandler(id, event)
|
|
304
|
-
}
|
|
306
|
+
onClick={itemClickHandler}
|
|
307
|
+
onKeyDown={sideNavItemContentKeyHandler}
|
|
305
308
|
isSelected={isSelected}
|
|
306
309
|
>
|
|
307
310
|
<SideNavItemLinkContent
|
|
@@ -321,7 +324,7 @@ const SideNavItemContent = ({
|
|
|
321
324
|
isSelected={isSelected}
|
|
322
325
|
href={href}
|
|
323
326
|
target={target}
|
|
324
|
-
onClick={itemClickHandler
|
|
327
|
+
onClick={itemClickHandler}
|
|
325
328
|
>
|
|
326
329
|
<SideNavItemLinkContent
|
|
327
330
|
count={count}
|
|
@@ -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 type { ReactElement } from "react";
|
|
13
|
+
import type { ReactElement, SyntheticEvent } from "react";
|
|
14
14
|
import type { HtmlProps } from "../../HtmlProps";
|
|
15
15
|
import type { statusSeverityValues } from "../../Status";
|
|
16
16
|
|
|
@@ -129,7 +129,7 @@ export type SideNavItem = {
|
|
|
129
129
|
/**
|
|
130
130
|
* Event fired when the nav item is clicked
|
|
131
131
|
*/
|
|
132
|
-
onClick
|
|
132
|
+
onClick?: (event: SyntheticEvent) => void;
|
|
133
133
|
/**
|
|
134
134
|
* The status element to display after the label
|
|
135
135
|
*/
|
|
@@ -13,7 +13,11 @@
|
|
|
13
13
|
import { memo, useCallback } from "react";
|
|
14
14
|
|
|
15
15
|
import { Autocomplete, AutocompleteProps } from "../Autocomplete";
|
|
16
|
-
|
|
16
|
+
|
|
17
|
+
export type TimeZoneOption = {
|
|
18
|
+
label: string;
|
|
19
|
+
value: string;
|
|
20
|
+
};
|
|
17
21
|
|
|
18
22
|
export type TimeZonePickerProps = {
|
|
19
23
|
label: string;
|
package/src/labs/index.ts
CHANGED
|
@@ -16,8 +16,8 @@ export type { LocalizationProviderProps } from "@mui/x-date-pickers";
|
|
|
16
16
|
|
|
17
17
|
// export * from "./AdaptablePicker";
|
|
18
18
|
export * from "./AppTile";
|
|
19
|
-
|
|
20
|
-
export * from "./
|
|
19
|
+
|
|
20
|
+
export * from "./DatePickers";
|
|
21
21
|
|
|
22
22
|
export * from "./DataView";
|
|
23
23
|
|
|
@@ -44,4 +44,3 @@ export * from "./AppSwitcher";
|
|
|
44
44
|
export * from "./SideNav/NavAccordion";
|
|
45
45
|
export * from "./SideNav";
|
|
46
46
|
export * from "./TopNav";
|
|
47
|
-
export * from "./UiShell";
|
|
@@ -76,6 +76,7 @@ fielderror.screenreader.text = Error
|
|
|
76
76
|
fieldlabel.optional.text = Optional
|
|
77
77
|
fieldlabel.required.text = Required
|
|
78
78
|
filters.clear.label = Clear filters
|
|
79
|
+
filters.submit.label = Submit
|
|
79
80
|
filters.filter.any = Any
|
|
80
81
|
filters.filter.clear = Clear filter
|
|
81
82
|
filters.filters.arialabel = Filters
|
|
@@ -117,6 +118,7 @@ table.reorder.toback = Send to back
|
|
|
117
118
|
table.reorder.tofront = Bring to front
|
|
118
119
|
table.rows.text = {{totalRows}} row
|
|
119
120
|
table.rows.text_plural = {{totalRows}} rows
|
|
121
|
+
pagination.label = Pagination
|
|
120
122
|
pagination.loadmore = Show more
|
|
121
123
|
pagination.next = Next page
|
|
122
124
|
pagination.previous = Previous page
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export const translation = {"navigation.label":"Main navigation","navigation.footer":"Navigation secondary links","navigation.drag.handle":"Drag handle","sortable.list.drag.start":"Picked up draggable item {{activeId}}","sortable.list.drag.moved.over":"Draggable item {{activeId}} was moved over droppable area {{overId}}","sortable.list.drag.nolonger.over":"Draggable item {{activeId}} is no longer over a droppable area","sortable.list.drag.end.dropped.over":"Draggable item {{activeId}} was dropped over droppable area {{overId}}","sortable.list.drag.end.dropped":"Draggable item {{activeId}} was dropped","sortable.list.drag.cancel":"Dragging was cancelled. Draggable item {{activeId}} was dropped","breadcrumbs.home.text":"Home","breadcrumbs.label.text":"Breadcrumbs","close.text":"Close","clear.text":"Clear","open.text":"Open","picker.calendar.navigation.nextmonth":"Next month","picker.calendar.navigation.previousmonth":"Previous month","picker.date.toolbar.title":"Selected date","picker.daterange.toolbar.title":"Select date range","picker.datetime.toolbar.title":"Select date & time","picker.error.invalid":"Correct the date format or select the date from the calendar.","picker.error.mindate":"Date entered is earlier than allowed dates. Select a date from the range available in the calendar.","picker.error.maxdate":"Date entered is later than the allowed dates. Select a date from the range available in the calendar.","picker.field.placeholder.day":"DD","picker.field.placeholder.hours":"hh","picker.field.placeholder.meridiem":"aa","picker.field.placeholder.minutes":"mm","picker.field.placeholder.month":"MM","picker.field.placeholder.seconds":"ss","picker.field.placeholder.year":"YYYY","picker.labels.action.apply":"Apply","picker.labels.action.cancel":"Cancel","picker.labels.action.today":"Today","picker.labels.clock.empty":"No time selected","picker.labels.clock.hours":"hours","picker.labels.clock.minutes":"minutes","picker.labels.clock.seconds":"seconds","picker.labels.clock.selected":"Selected time is","picker.labels.date.choose":"Choose date","picker.labels.date.selected":"Selected date is","picker.labels.empty":"Empty","picker.labels.field.clear":"Clear value","picker.labels.range.end":"End","picker.labels.range.enddate":"End date","picker.labels.range.endtime":"End time","picker.labels.range.start":"Start","picker.labels.range.startdate":"Start date","picker.labels.range.starttime":"Start time","picker.labels.select":"Select","picker.labels.table.date":"pick date","picker.labels.table.time":"pick time","picker.labels.time.choose":"Choose time","picker.labels.time.selected":"selected time is","picker.time.toolbar.title":"Select time","picker.view.name.day":"Day","picker.view.name.hours":"Hours","picker.view.name.meridiem":"Meridiem","picker.view.name.minutes":"Minutes","picker.view.name.month":"Month","picker.view.name.seconds":"Seconds","picker.view.name.weekday":"Week day","picker.view.name.year":"Year","picker.view.navigation.open.nextview":"Open next view","picker.view.navigation.open.previousview":"Open previous view","picker.view.navigation.switch.calendarview":"year view is open, switch to calendar view","picker.view.navigation.switch.yearview":"calendar view is open, switch to year view","fielderror.screenreader.text":"Error","fieldlabel.optional.text":"Optional","fieldlabel.required.text":"Required","filters.clear.label":"Clear filters","filters.filter.any":"Any","filters.filter.clear":"Clear filter","filters.filters.arialabel":"Filters","filters.menuitem.any":"Any {{label}}","filters.menuitem.selected":"{{selected}} selected","filters.search.label":"Search","fileupload.button.text":"Add files","fileupload.prompt.text":"Drag and drop files here or click to add files","fileupload.removefile.text":"Remove file","passwordfield.icon.label.hide":"Hide password","passwordfield.icon.label.show":"Show password","severity.error":"error","severity.info":"info","severity.success":"success","severity.warning":"warning","sidenav.toggle.expand":"Open navigation","sidenav.toggle.collapse":"Close navigation","switch.active":"Active","switch.inactive":"Inactive","table.columnvisibility.arialabel":"Show/hide columns","table.density.arialabel":"Table density","table.draghandle.arialabel":"Drag row to reorder. Or, press space or enter to start and stop reordering and esc to cancel.","table.draghandle.tooltip":"Drag row or press space/enter key to start and stop reordering","table.actions":"Actions","table.error":"Error loading data.","table.fetchedrows.text":"Fetched {{totalRows}} row","table.fetchedrows.text_plural":"Fetched {{totalRows}} total rows","table.moreactions.arialabel":"More actions","table.noresults.heading":"There are no results.","table.noresults.text":"Try a different query.","table.reorder.backward":"Send backward","table.reorder.forward":"Bring forward","table.reorder.toback":"Send to back","table.reorder.tofront":"Bring to front","table.rows.text":"{{totalRows}} row","table.rows.text_plural":"{{totalRows}} rows","pagination.loadmore":"Show more","pagination.next":"Next page","pagination.previous":"Previous page","pagination.page":"Page","pagination.rowsperpage":"Rows per page","pagination.rowswithtotal":"{{firstRow}}-{{lastRow}} of {{totalRows}} rows","pagination.rowswithouttotal":"{{firstRow}}-{{lastRow}} rows","table.actions.selectall":"Select all","table.actions.selectnone":"Select none","table.actions.selectsome":"{{selectedRowCount}} selected","table.rowexpansion.expand":"Expand","table.rowexpansion.expandall":"Expand all","table.rowexpansion.collapse":"Collapse","table.rowexpansion.collapseall":"Collapse all","dataview.layout.table":"Table","dataview.layout.grid":"Grid","dataview.layout.list":"List","topnav.helpicon":"help page","topnav.settingsicon":"settings page"};
|
|
1
|
+
export const translation = {"navigation.label":"Main navigation","navigation.footer":"Navigation secondary links","navigation.drag.handle":"Drag handle","sortable.list.drag.start":"Picked up draggable item {{activeId}}","sortable.list.drag.moved.over":"Draggable item {{activeId}} was moved over droppable area {{overId}}","sortable.list.drag.nolonger.over":"Draggable item {{activeId}} is no longer over a droppable area","sortable.list.drag.end.dropped.over":"Draggable item {{activeId}} was dropped over droppable area {{overId}}","sortable.list.drag.end.dropped":"Draggable item {{activeId}} was dropped","sortable.list.drag.cancel":"Dragging was cancelled. Draggable item {{activeId}} was dropped","breadcrumbs.home.text":"Home","breadcrumbs.label.text":"Breadcrumbs","close.text":"Close","clear.text":"Clear","open.text":"Open","picker.calendar.navigation.nextmonth":"Next month","picker.calendar.navigation.previousmonth":"Previous month","picker.date.toolbar.title":"Selected date","picker.daterange.toolbar.title":"Select date range","picker.datetime.toolbar.title":"Select date & time","picker.error.invalid":"Correct the date format or select the date from the calendar.","picker.error.mindate":"Date entered is earlier than allowed dates. Select a date from the range available in the calendar.","picker.error.maxdate":"Date entered is later than the allowed dates. Select a date from the range available in the calendar.","picker.field.placeholder.day":"DD","picker.field.placeholder.hours":"hh","picker.field.placeholder.meridiem":"aa","picker.field.placeholder.minutes":"mm","picker.field.placeholder.month":"MM","picker.field.placeholder.seconds":"ss","picker.field.placeholder.year":"YYYY","picker.labels.action.apply":"Apply","picker.labels.action.cancel":"Cancel","picker.labels.action.today":"Today","picker.labels.clock.empty":"No time selected","picker.labels.clock.hours":"hours","picker.labels.clock.minutes":"minutes","picker.labels.clock.seconds":"seconds","picker.labels.clock.selected":"Selected time is","picker.labels.date.choose":"Choose date","picker.labels.date.selected":"Selected date is","picker.labels.empty":"Empty","picker.labels.field.clear":"Clear value","picker.labels.range.end":"End","picker.labels.range.enddate":"End date","picker.labels.range.endtime":"End time","picker.labels.range.start":"Start","picker.labels.range.startdate":"Start date","picker.labels.range.starttime":"Start time","picker.labels.select":"Select","picker.labels.table.date":"pick date","picker.labels.table.time":"pick time","picker.labels.time.choose":"Choose time","picker.labels.time.selected":"selected time is","picker.time.toolbar.title":"Select time","picker.view.name.day":"Day","picker.view.name.hours":"Hours","picker.view.name.meridiem":"Meridiem","picker.view.name.minutes":"Minutes","picker.view.name.month":"Month","picker.view.name.seconds":"Seconds","picker.view.name.weekday":"Week day","picker.view.name.year":"Year","picker.view.navigation.open.nextview":"Open next view","picker.view.navigation.open.previousview":"Open previous view","picker.view.navigation.switch.calendarview":"year view is open, switch to calendar view","picker.view.navigation.switch.yearview":"calendar view is open, switch to year view","fielderror.screenreader.text":"Error","fieldlabel.optional.text":"Optional","fieldlabel.required.text":"Required","filters.clear.label":"Clear filters","filters.submit.label":"Submit","filters.filter.any":"Any","filters.filter.clear":"Clear filter","filters.filters.arialabel":"Filters","filters.menuitem.any":"Any {{label}}","filters.menuitem.selected":"{{selected}} selected","filters.search.label":"Search","fileupload.button.text":"Add files","fileupload.prompt.text":"Drag and drop files here or click to add files","fileupload.removefile.text":"Remove file","passwordfield.icon.label.hide":"Hide password","passwordfield.icon.label.show":"Show password","severity.error":"error","severity.info":"info","severity.success":"success","severity.warning":"warning","sidenav.toggle.expand":"Open navigation","sidenav.toggle.collapse":"Close navigation","switch.active":"Active","switch.inactive":"Inactive","table.columnvisibility.arialabel":"Show/hide columns","table.density.arialabel":"Table density","table.draghandle.arialabel":"Drag row to reorder. Or, press space or enter to start and stop reordering and esc to cancel.","table.draghandle.tooltip":"Drag row or press space/enter key to start and stop reordering","table.actions":"Actions","table.error":"Error loading data.","table.fetchedrows.text":"Fetched {{totalRows}} row","table.fetchedrows.text_plural":"Fetched {{totalRows}} total rows","table.moreactions.arialabel":"More actions","table.noresults.heading":"There are no results.","table.noresults.text":"Try a different query.","table.reorder.backward":"Send backward","table.reorder.forward":"Bring forward","table.reorder.toback":"Send to back","table.reorder.tofront":"Bring to front","table.rows.text":"{{totalRows}} row","table.rows.text_plural":"{{totalRows}} rows","pagination.label":"Pagination","pagination.loadmore":"Show more","pagination.next":"Next page","pagination.previous":"Previous page","pagination.page":"Page","pagination.rowsperpage":"Rows per page","pagination.rowswithtotal":"{{firstRow}}-{{lastRow}} of {{totalRows}} rows","pagination.rowswithouttotal":"{{firstRow}}-{{lastRow}} rows","table.actions.selectall":"Select all","table.actions.selectnone":"Select none","table.actions.selectsome":"{{selectedRowCount}} selected","table.rowexpansion.expand":"Expand","table.rowexpansion.expandall":"Expand all","table.rowexpansion.collapse":"Collapse","table.rowexpansion.collapseall":"Collapse all","dataview.layout.table":"Table","dataview.layout.grid":"Grid","dataview.layout.list":"List","topnav.helpicon":"help page","topnav.settingsicon":"settings page"};
|