@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
|
@@ -50,7 +50,13 @@ import {
|
|
|
50
50
|
} from "../../OdysseyDesignTokensContext";
|
|
51
51
|
import styled from "@emotion/styled";
|
|
52
52
|
|
|
53
|
-
export type DataViewProps = UniversalProps &
|
|
53
|
+
export type DataViewProps<TData extends MRT_RowData> = UniversalProps<TData> &
|
|
54
|
+
ViewProps<TData, DataLayout>;
|
|
55
|
+
type DataViewComponent = (<TData extends MRT_RowData>(
|
|
56
|
+
props: DataViewProps<TData>,
|
|
57
|
+
) => JSX.Element) & {
|
|
58
|
+
displayName?: string;
|
|
59
|
+
};
|
|
54
60
|
|
|
55
61
|
const DataViewContainer = styled("div", {
|
|
56
62
|
shouldForwardProp: (prop) => prop !== "odysseyDesignTokens",
|
|
@@ -87,7 +93,7 @@ const MetaTextContainer = styled("div", {
|
|
|
87
93
|
marginInlineEnd: odysseyDesignTokens.Spacing2,
|
|
88
94
|
}));
|
|
89
95
|
|
|
90
|
-
const DataView = ({
|
|
96
|
+
const DataView = <TData extends MRT_RowData>({
|
|
91
97
|
additionalActionButton,
|
|
92
98
|
additionalActionMenuItems,
|
|
93
99
|
availableLayouts = allAvailableLayouts,
|
|
@@ -127,7 +133,7 @@ const DataView = ({
|
|
|
127
133
|
maxPages,
|
|
128
134
|
maxResultsPerPage,
|
|
129
135
|
onPaginationChange,
|
|
130
|
-
}: DataViewProps) => {
|
|
136
|
+
}: DataViewProps<TData>) => {
|
|
131
137
|
const odysseyDesignTokens = useOdysseyDesignTokens();
|
|
132
138
|
const { t } = useTranslation();
|
|
133
139
|
|
|
@@ -135,23 +141,23 @@ const DataView = ({
|
|
|
135
141
|
initialLayout ?? availableLayouts[0],
|
|
136
142
|
);
|
|
137
143
|
|
|
138
|
-
const [data, setData] = useState<
|
|
144
|
+
const [data, setData] = useState<TData[]>([]);
|
|
139
145
|
const [isLoading, setIsLoading] = useState<boolean>(isLoadingProp ?? true);
|
|
140
146
|
const [isEmpty, setIsEmpty] = useState<boolean>(isEmptyProp ?? true);
|
|
141
147
|
const [isNoResults, setIsNoResults] = useState<boolean>(
|
|
142
148
|
isNoResultsProp ?? false,
|
|
143
149
|
);
|
|
144
150
|
const [errorMessage, setErrorMessage] =
|
|
145
|
-
useState<UniversalProps["errorMessage"]>(errorMessageProp);
|
|
151
|
+
useState<UniversalProps<TData>["errorMessage"]>(errorMessageProp);
|
|
146
152
|
|
|
147
153
|
const [search, setSearch] = useState<string>("");
|
|
148
154
|
|
|
149
155
|
const [initialFilters, setInitialFilters] =
|
|
150
|
-
useState<UniversalProps["filters"]>(filtersProp);
|
|
156
|
+
useState<UniversalProps<TData>["filters"]>(filtersProp);
|
|
151
157
|
const [filters, setFilters] =
|
|
152
|
-
useState<UniversalProps["filters"]>(filtersProp);
|
|
158
|
+
useState<UniversalProps<TData>["filters"]>(filtersProp);
|
|
153
159
|
|
|
154
|
-
const [draggingRow, setDraggingRow] = useState<MRT_Row<
|
|
160
|
+
const [draggingRow, setDraggingRow] = useState<MRT_Row<TData> | null>();
|
|
155
161
|
|
|
156
162
|
const [rowSelection, setRowSelection] = useState<MRT_RowSelectionState>({});
|
|
157
163
|
|
|
@@ -204,7 +210,7 @@ const DataView = ({
|
|
|
204
210
|
],
|
|
205
211
|
);
|
|
206
212
|
|
|
207
|
-
const getRowId = getRowIdProp ? getRowIdProp : (row:
|
|
213
|
+
const getRowId = getRowIdProp ? getRowIdProp : (row: TData) => row.id;
|
|
208
214
|
|
|
209
215
|
// Update pagination state if props change
|
|
210
216
|
useEffect(() => {
|
|
@@ -246,13 +252,14 @@ const DataView = ({
|
|
|
246
252
|
pagination.pageIndex === currentPage &&
|
|
247
253
|
pagination.pageSize === resultsPerPage &&
|
|
248
254
|
search === "" &&
|
|
249
|
-
filters === initialFilters &&
|
|
255
|
+
(!hasFilters || filters === initialFilters) &&
|
|
250
256
|
data.length === 0,
|
|
251
257
|
);
|
|
252
258
|
}, [
|
|
253
259
|
currentPage,
|
|
254
260
|
data,
|
|
255
261
|
filters,
|
|
262
|
+
hasFilters,
|
|
256
263
|
initialFilters,
|
|
257
264
|
pagination,
|
|
258
265
|
resultsPerPage,
|
|
@@ -488,7 +495,7 @@ const DataView = ({
|
|
|
488
495
|
);
|
|
489
496
|
};
|
|
490
497
|
|
|
491
|
-
const MemoizedDataView = memo(DataView);
|
|
498
|
+
const MemoizedDataView = memo(DataView) as DataViewComponent;
|
|
492
499
|
MemoizedDataView.displayName = "DataView";
|
|
493
500
|
|
|
494
501
|
export { MemoizedDataView as DataView };
|
|
@@ -12,14 +12,14 @@
|
|
|
12
12
|
|
|
13
13
|
import { memo } from "react";
|
|
14
14
|
import { CardLayoutProps } from "./componentTypes";
|
|
15
|
-
import {
|
|
15
|
+
import { MRT_RowData } from "material-react-table";
|
|
16
16
|
|
|
17
|
-
const DetailPanel = ({
|
|
17
|
+
const DetailPanel = <TData extends MRT_RowData>({
|
|
18
18
|
row,
|
|
19
19
|
renderDetailPanel,
|
|
20
20
|
}: {
|
|
21
|
-
row:
|
|
22
|
-
renderDetailPanel: CardLayoutProps["renderDetailPanel"];
|
|
21
|
+
row: TData;
|
|
22
|
+
renderDetailPanel: CardLayoutProps<TData>["renderDetailPanel"];
|
|
23
23
|
}) => {
|
|
24
24
|
if (!renderDetailPanel) return null;
|
|
25
25
|
return renderDetailPanel({ row });
|
|
@@ -23,7 +23,7 @@ import {
|
|
|
23
23
|
import { Button, MenuButtonProps, MenuItem } from "../../Buttons";
|
|
24
24
|
import { DataTableProps } from "./DataTable";
|
|
25
25
|
|
|
26
|
-
export type RowActionsProps = {
|
|
26
|
+
export type RowActionsProps<TData extends MRT_RowData> = {
|
|
27
27
|
isRowReorderingDisabled?: boolean;
|
|
28
28
|
row: MRT_Row<MRT_RowData> | MRT_RowData;
|
|
29
29
|
rowActionButtons?: (
|
|
@@ -31,7 +31,7 @@ export type RowActionsProps = {
|
|
|
31
31
|
) => ReactElement<typeof Button> | ReactElement<typeof Fragment>;
|
|
32
32
|
rowActionMenuItems?: (row: MRT_RowData) => MenuButtonProps["children"];
|
|
33
33
|
rowIndex: number;
|
|
34
|
-
totalRows?: DataTableProps["totalRows"];
|
|
34
|
+
totalRows?: DataTableProps<TData>["totalRows"];
|
|
35
35
|
updateRowOrder?: ({
|
|
36
36
|
newRowIndex,
|
|
37
37
|
rowId,
|
|
@@ -41,14 +41,14 @@ export type RowActionsProps = {
|
|
|
41
41
|
}) => void;
|
|
42
42
|
};
|
|
43
43
|
|
|
44
|
-
const RowActions = ({
|
|
44
|
+
const RowActions = <TData extends MRT_RowData>({
|
|
45
45
|
isRowReorderingDisabled,
|
|
46
46
|
row,
|
|
47
47
|
rowActionMenuItems,
|
|
48
48
|
rowIndex,
|
|
49
49
|
totalRows,
|
|
50
50
|
updateRowOrder,
|
|
51
|
-
}: RowActionsProps) => {
|
|
51
|
+
}: RowActionsProps<TData>) => {
|
|
52
52
|
const { t } = useTranslation();
|
|
53
53
|
|
|
54
54
|
const handleToFrontClick = useCallback(() => {
|
|
@@ -64,20 +64,20 @@ const RowActionsContainer = styled("div")(() => ({
|
|
|
64
64
|
display: "flex",
|
|
65
65
|
}));
|
|
66
66
|
|
|
67
|
-
export type TableLayoutContentProps = {
|
|
68
|
-
columns: TableLayoutProps["columns"];
|
|
67
|
+
export type TableLayoutContentProps<TData extends MRT_RowData> = {
|
|
68
|
+
columns: TableLayoutProps<TData>["columns"];
|
|
69
69
|
data: MRT_RowData[];
|
|
70
|
-
draggingRow?: MRT_Row<
|
|
70
|
+
draggingRow?: MRT_Row<TData> | null;
|
|
71
71
|
emptyState: ReactNode;
|
|
72
72
|
enableVirtualization?: boolean;
|
|
73
|
-
getRowId: UniversalProps["getRowId"];
|
|
74
|
-
hasRowReordering: UniversalProps["hasRowReordering"];
|
|
75
|
-
hasRowSelection: UniversalProps["hasRowSelection"];
|
|
73
|
+
getRowId: UniversalProps<TData>["getRowId"];
|
|
74
|
+
hasRowReordering: UniversalProps<TData>["hasRowReordering"];
|
|
75
|
+
hasRowSelection: UniversalProps<TData>["hasRowSelection"];
|
|
76
76
|
isEmpty?: boolean;
|
|
77
77
|
isLoading: boolean;
|
|
78
78
|
isNoResults?: boolean;
|
|
79
79
|
isRowReorderingDisabled?: boolean;
|
|
80
|
-
onReorderRows: UniversalProps["onReorderRows"];
|
|
80
|
+
onReorderRows: UniversalProps<TData>["onReorderRows"];
|
|
81
81
|
pagination: {
|
|
82
82
|
pageIndex: number;
|
|
83
83
|
pageSize: number;
|
|
@@ -102,15 +102,13 @@ export type TableLayoutContentProps = {
|
|
|
102
102
|
row,
|
|
103
103
|
event,
|
|
104
104
|
}: {
|
|
105
|
-
table: MRT_TableInstance<
|
|
106
|
-
row: MRT_Row<
|
|
105
|
+
table: MRT_TableInstance<TData>;
|
|
106
|
+
row: MRT_Row<TData>;
|
|
107
107
|
event: React.KeyboardEvent<HTMLButtonElement>;
|
|
108
108
|
}) => void;
|
|
109
|
-
handleDragHandleOnDragCapture: (
|
|
110
|
-
|
|
111
|
-
) => void;
|
|
112
|
-
handleDragHandleOnDragEnd: (table: MRT_TableInstance<MRT_RowData>) => void;
|
|
113
|
-
resetDraggingAndHoveredRow: (table: MRT_TableInstance<MRT_RowData>) => void;
|
|
109
|
+
handleDragHandleOnDragCapture: (table: MRT_TableInstance<TData>) => void;
|
|
110
|
+
handleDragHandleOnDragEnd: (table: MRT_TableInstance<TData>) => void;
|
|
111
|
+
resetDraggingAndHoveredRow: (table: MRT_TableInstance<TData>) => void;
|
|
114
112
|
updateRowOrder: ({
|
|
115
113
|
rowId,
|
|
116
114
|
newRowIndex,
|
|
@@ -122,12 +120,18 @@ export type TableLayoutContentProps = {
|
|
|
122
120
|
rowSelection: MRT_RowSelectionState;
|
|
123
121
|
setRowSelection: Dispatch<SetStateAction<MRT_RowSelectionState>>;
|
|
124
122
|
setTableState: Dispatch<SetStateAction<TableState>>;
|
|
125
|
-
tableLayoutOptions: TableLayoutProps
|
|
123
|
+
tableLayoutOptions: TableLayoutProps<TData>;
|
|
126
124
|
tableState: TableState;
|
|
127
|
-
totalRows: UniversalProps["totalRows"];
|
|
125
|
+
totalRows: UniversalProps<TData>["totalRows"];
|
|
128
126
|
};
|
|
129
127
|
|
|
130
|
-
|
|
128
|
+
type TableLayoutContentComponent = (<TData extends MRT_RowData>(
|
|
129
|
+
props: TableLayoutContentProps<TData>,
|
|
130
|
+
) => JSX.Element) & {
|
|
131
|
+
displayName?: string;
|
|
132
|
+
};
|
|
133
|
+
|
|
134
|
+
const TableLayoutContent = <TData extends MRT_RowData>({
|
|
131
135
|
columns,
|
|
132
136
|
data,
|
|
133
137
|
draggingRow,
|
|
@@ -149,7 +153,7 @@ const TableLayoutContent = ({
|
|
|
149
153
|
tableLayoutOptions,
|
|
150
154
|
tableState,
|
|
151
155
|
totalRows,
|
|
152
|
-
}: TableLayoutContentProps) => {
|
|
156
|
+
}: TableLayoutContentProps<TData>) => {
|
|
153
157
|
const [isTableContainerScrolledToStart, setIsTableContainerScrolledToStart] =
|
|
154
158
|
useState(true);
|
|
155
159
|
const [isTableContainerScrolledToEnd, setIsTableContainerScrolledToEnd] =
|
|
@@ -197,7 +201,7 @@ const TableLayoutContent = ({
|
|
|
197
201
|
}, [tableState]);
|
|
198
202
|
|
|
199
203
|
const defaultCell = useCallback<
|
|
200
|
-
({ cell }: { cell: DataTableCell<
|
|
204
|
+
({ cell }: { cell: DataTableCell<TData, unknown> }) => ReactElement | string
|
|
201
205
|
>(({ cell }) => {
|
|
202
206
|
const value = cell.getValue<string>();
|
|
203
207
|
const hasTextWrapping =
|
|
@@ -218,7 +222,7 @@ const TableLayoutContent = ({
|
|
|
218
222
|
} = rowReorderingUtilities;
|
|
219
223
|
|
|
220
224
|
const renderRowActions = useCallback(
|
|
221
|
-
({ row }: { row: MRT_Row<
|
|
225
|
+
({ row }: { row: MRT_Row<TData> }) => {
|
|
222
226
|
const currentIndex =
|
|
223
227
|
row.index + (pagination.pageIndex - 1) * pagination.pageSize;
|
|
224
228
|
return (
|
|
@@ -309,8 +313,8 @@ const TableLayoutContent = ({
|
|
|
309
313
|
|
|
310
314
|
const hasColumnWithGrow = columns.some((column) => column.grow === true);
|
|
311
315
|
|
|
312
|
-
const dataTable = useMaterialReactTable({
|
|
313
|
-
data: !isEmpty && !isNoResults ? data : [],
|
|
316
|
+
const dataTable = useMaterialReactTable<TData>({
|
|
317
|
+
data: (!isEmpty && !isNoResults ? data : []) as TData[],
|
|
314
318
|
columns,
|
|
315
319
|
getRowId,
|
|
316
320
|
state: {
|
|
@@ -383,7 +387,7 @@ const TableLayoutContent = ({
|
|
|
383
387
|
},
|
|
384
388
|
muiTableBodyProps: () => ({
|
|
385
389
|
className: rowDensityClassName,
|
|
386
|
-
tabIndex:
|
|
390
|
+
tabIndex: 0,
|
|
387
391
|
}),
|
|
388
392
|
enableColumnResizing: tableLayoutOptions.hasColumnResizing,
|
|
389
393
|
defaultColumn: {
|
|
@@ -476,7 +480,9 @@ const TableLayoutContent = ({
|
|
|
476
480
|
);
|
|
477
481
|
};
|
|
478
482
|
|
|
479
|
-
const MemoizedTableLayoutContent = memo(
|
|
483
|
+
const MemoizedTableLayoutContent = memo(
|
|
484
|
+
TableLayoutContent,
|
|
485
|
+
) as TableLayoutContentComponent;
|
|
480
486
|
MemoizedTableLayoutContent.displayName = "TableLayoutContent";
|
|
481
487
|
|
|
482
488
|
export { MemoizedTableLayoutContent as TableLayoutContent };
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
|
|
13
13
|
import { Dispatch, SetStateAction, memo, useCallback, useMemo } from "react";
|
|
14
14
|
import { Checkbox as MuiCheckbox } from "@mui/material";
|
|
15
|
-
import { MRT_DensityState } from "material-react-table";
|
|
15
|
+
import { MRT_DensityState, MRT_RowData } from "material-react-table";
|
|
16
16
|
import { useTranslation } from "react-i18next";
|
|
17
17
|
|
|
18
18
|
import { densityValues } from "./constants";
|
|
@@ -20,17 +20,23 @@ import { ListIcon, ShowIcon } from "../../icons.generated";
|
|
|
20
20
|
import { MenuButton, MenuItem } from "../../Buttons";
|
|
21
21
|
import { TableLayoutProps, TableState } from "./componentTypes";
|
|
22
22
|
|
|
23
|
-
export type TableSettingsProps = {
|
|
23
|
+
export type TableSettingsProps<TData extends MRT_RowData> = {
|
|
24
24
|
setTableState: Dispatch<SetStateAction<TableState>>;
|
|
25
|
-
tableLayoutOptions: TableLayoutProps
|
|
25
|
+
tableLayoutOptions: TableLayoutProps<TData>;
|
|
26
26
|
tableState: TableState;
|
|
27
27
|
};
|
|
28
28
|
|
|
29
|
-
|
|
29
|
+
type TableSettingsComponent = (<TData extends MRT_RowData>(
|
|
30
|
+
props: TableSettingsProps<TData>,
|
|
31
|
+
) => JSX.Element) & {
|
|
32
|
+
displayName?: string;
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
const TableSettings: TableSettingsComponent = <TData extends MRT_RowData>({
|
|
30
36
|
setTableState,
|
|
31
37
|
tableLayoutOptions,
|
|
32
38
|
tableState,
|
|
33
|
-
}: TableSettingsProps) => {
|
|
39
|
+
}: TableSettingsProps<TData>) => {
|
|
34
40
|
const { t } = useTranslation();
|
|
35
41
|
|
|
36
42
|
const { hasChangeableDensity, hasColumnVisibility, columns } =
|
|
@@ -132,7 +138,7 @@ const TableSettings = ({
|
|
|
132
138
|
);
|
|
133
139
|
};
|
|
134
140
|
|
|
135
|
-
const MemoizedTableSettings = memo(TableSettings);
|
|
141
|
+
const MemoizedTableSettings = memo(TableSettings) as TableSettingsComponent;
|
|
136
142
|
MemoizedTableSettings.displayName = "TableSettings";
|
|
137
143
|
|
|
138
144
|
export { MemoizedTableSettings as TableSettings };
|
|
@@ -28,11 +28,11 @@ import {
|
|
|
28
28
|
DataRowSelectionState,
|
|
29
29
|
DataTableColumn,
|
|
30
30
|
} from "./dataTypes";
|
|
31
|
-
import { DataTableRowActionsProps } from "../../DataTable/DataTableRowActions";
|
|
32
31
|
import { MenuButtonProps } from "../..";
|
|
33
32
|
import { paginationTypeValues } from "../DataTablePagination";
|
|
34
33
|
import { DataCardProps } from "./DataCard";
|
|
35
34
|
import { type PaginationProps } from "../../Pagination";
|
|
35
|
+
import { RowActionsProps } from "./RowActions";
|
|
36
36
|
|
|
37
37
|
export type DataLayout = (typeof availableLayouts)[number];
|
|
38
38
|
export type CardLayout = (typeof availableCardLayouts)[number];
|
|
@@ -40,7 +40,7 @@ export type CardLayout = (typeof availableCardLayouts)[number];
|
|
|
40
40
|
export type AvailableLayouts = DataLayout[];
|
|
41
41
|
export type AvailableCardLayouts = CardLayout[];
|
|
42
42
|
|
|
43
|
-
export type UniversalProps = {
|
|
43
|
+
export type UniversalProps<TData extends MRT_RowData> = {
|
|
44
44
|
additionalActionButton?: ReactNode;
|
|
45
45
|
additionalActionMenuItems?: ReactNode;
|
|
46
46
|
bulkActionMenuItems?: (
|
|
@@ -50,15 +50,15 @@ export type UniversalProps = {
|
|
|
50
50
|
emptyPlaceholder?: ReactNode;
|
|
51
51
|
enableVirtualization?: boolean;
|
|
52
52
|
errorMessage?: string;
|
|
53
|
-
filters?: Array<DataFilter | DataTableColumn<
|
|
53
|
+
filters?: Array<DataFilter | DataTableColumn<TData> | string>;
|
|
54
54
|
getData: ({
|
|
55
55
|
page,
|
|
56
56
|
resultsPerPage,
|
|
57
57
|
search,
|
|
58
58
|
filters,
|
|
59
59
|
sort,
|
|
60
|
-
}: DataGetDataType) =>
|
|
61
|
-
getRowId?: MRT_TableOptions<
|
|
60
|
+
}: DataGetDataType) => TData[] | Promise<TData[]>;
|
|
61
|
+
getRowId?: MRT_TableOptions<TData>["getRowId"];
|
|
62
62
|
hasFilters?: boolean;
|
|
63
63
|
hasPagination?: boolean;
|
|
64
64
|
hasRowReordering?: boolean;
|
|
@@ -96,30 +96,30 @@ export type UniversalProps = {
|
|
|
96
96
|
"hasPageInput" | "hasRowCountInput" | "hasRowCountLabel"
|
|
97
97
|
>;
|
|
98
98
|
|
|
99
|
-
export type TableLayoutProps = {
|
|
100
|
-
columns: DataTableColumn<
|
|
99
|
+
export type TableLayoutProps<TData extends MRT_RowData> = {
|
|
100
|
+
columns: DataTableColumn<TData>[];
|
|
101
101
|
hasChangeableDensity?: boolean;
|
|
102
102
|
hasColumnResizing?: boolean;
|
|
103
103
|
hasColumnVisibility?: boolean;
|
|
104
104
|
hasSorting?: boolean;
|
|
105
105
|
initialDensity?: MRT_DensityState;
|
|
106
|
-
renderDetailPanel?: MRT_TableOptions<
|
|
107
|
-
rowActionButtons?:
|
|
108
|
-
rowActionMenuItems?:
|
|
106
|
+
renderDetailPanel?: MRT_TableOptions<TData>["renderDetailPanel"];
|
|
107
|
+
rowActionButtons?: RowActionsProps<TData>["rowActionButtons"];
|
|
108
|
+
rowActionMenuItems?: RowActionsProps<TData>["rowActionMenuItems"];
|
|
109
109
|
};
|
|
110
110
|
|
|
111
|
-
export type CardLayoutProps = {
|
|
112
|
-
itemProps: (row:
|
|
111
|
+
export type CardLayoutProps<TData extends MRT_RowData> = {
|
|
112
|
+
itemProps: (row: TData) => Omit<DataCardProps<TData>, "row">;
|
|
113
113
|
maxGridColumns?: number;
|
|
114
|
-
renderDetailPanel?: (props: { row:
|
|
115
|
-
rowActionMenuItems?:
|
|
114
|
+
renderDetailPanel?: (props: { row: TData }) => ReactNode;
|
|
115
|
+
rowActionMenuItems?: RowActionsProps<TData>["rowActionMenuItems"];
|
|
116
116
|
};
|
|
117
117
|
|
|
118
|
-
export type ViewProps<L extends DataLayout> = {
|
|
118
|
+
export type ViewProps<TData extends MRT_RowData, L extends DataLayout> = {
|
|
119
119
|
availableLayouts?: L[];
|
|
120
120
|
initialLayout?: L;
|
|
121
|
-
cardLayoutOptions?: CardLayoutProps
|
|
122
|
-
tableLayoutOptions?: TableLayoutProps
|
|
121
|
+
cardLayoutOptions?: CardLayoutProps<TData>;
|
|
122
|
+
tableLayoutOptions?: TableLayoutProps<TData>;
|
|
123
123
|
};
|
|
124
124
|
|
|
125
125
|
export type TableState = {
|
|
@@ -29,7 +29,10 @@ export type DataQueryParamsType = {
|
|
|
29
29
|
sort?: MRT_SortingState;
|
|
30
30
|
};
|
|
31
31
|
|
|
32
|
-
export type DataTableColumn<
|
|
32
|
+
export type DataTableColumn<
|
|
33
|
+
TData extends MRT_RowData,
|
|
34
|
+
TValue = unknown,
|
|
35
|
+
> = MRT_ColumnDef<TData, TValue> & {
|
|
33
36
|
/**
|
|
34
37
|
* @deprecated use hasTextWrapping instead of enableWrapping
|
|
35
38
|
*/
|
|
@@ -37,21 +40,24 @@ export type DataTableColumn<T extends MRT_RowData> = MRT_ColumnDef<T> & {
|
|
|
37
40
|
hasTextWrapping?: boolean;
|
|
38
41
|
};
|
|
39
42
|
|
|
40
|
-
export type DataTableColumnInstance<
|
|
41
|
-
MRT_Column<
|
|
43
|
+
export type DataTableColumnInstance<TData extends MRT_RowData, TValue> = Omit<
|
|
44
|
+
MRT_Column<TData, TValue>,
|
|
42
45
|
"columnDef"
|
|
43
46
|
> & {
|
|
44
|
-
columnDef: DataTableColumn<
|
|
47
|
+
columnDef: DataTableColumn<TData, TValue>;
|
|
45
48
|
};
|
|
46
49
|
|
|
47
|
-
export type DataTableCell<
|
|
48
|
-
MRT_Cell<
|
|
50
|
+
export type DataTableCell<TData extends MRT_RowData, TValue> = Omit<
|
|
51
|
+
MRT_Cell<TData>,
|
|
49
52
|
"column"
|
|
50
53
|
> & {
|
|
51
|
-
column: DataTableColumnInstance<
|
|
54
|
+
column: DataTableColumnInstance<TData, TValue>;
|
|
52
55
|
};
|
|
53
56
|
|
|
54
|
-
export type DataColumns
|
|
57
|
+
export type DataColumns<
|
|
58
|
+
TData extends MRT_RowData,
|
|
59
|
+
TValue = unknown,
|
|
60
|
+
> = DataTableColumn<TData, TValue>[];
|
|
55
61
|
|
|
56
62
|
export type DataRow = MRT_RowData;
|
|
57
63
|
|
|
@@ -17,23 +17,25 @@ import { t } from "i18next";
|
|
|
17
17
|
import { DataQueryParamsType } from "./dataTypes";
|
|
18
18
|
import { UniversalProps } from "./componentTypes";
|
|
19
19
|
|
|
20
|
-
type DataRequestType = {
|
|
20
|
+
type DataRequestType<TData extends MRT_RowData> = {
|
|
21
21
|
dataQueryParams: DataQueryParamsType;
|
|
22
|
-
errorMessageProp: UniversalProps["errorMessage"];
|
|
23
|
-
getData: UniversalProps["getData"];
|
|
24
|
-
setData: Dispatch<SetStateAction<
|
|
25
|
-
setErrorMessage: Dispatch<
|
|
22
|
+
errorMessageProp: UniversalProps<TData>["errorMessage"];
|
|
23
|
+
getData: UniversalProps<TData>["getData"];
|
|
24
|
+
setData: Dispatch<SetStateAction<TData[]>>;
|
|
25
|
+
setErrorMessage: Dispatch<
|
|
26
|
+
SetStateAction<UniversalProps<TData>["errorMessage"]>
|
|
27
|
+
>;
|
|
26
28
|
setIsLoading?: Dispatch<SetStateAction<boolean>>;
|
|
27
29
|
};
|
|
28
30
|
|
|
29
|
-
export const fetchData = async ({
|
|
31
|
+
export const fetchData = async <TData extends MRT_RowData>({
|
|
30
32
|
dataQueryParams,
|
|
31
33
|
errorMessageProp,
|
|
32
34
|
getData,
|
|
33
35
|
setData,
|
|
34
36
|
setErrorMessage,
|
|
35
37
|
setIsLoading,
|
|
36
|
-
}: DataRequestType) => {
|
|
38
|
+
}: DataRequestType<TData>) => {
|
|
37
39
|
setIsLoading?.(true);
|
|
38
40
|
setErrorMessage(errorMessageProp);
|
|
39
41
|
try {
|