@axinom/mosaic-ui 0.72.0-rc.8 → 0.72.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/components/Badge/Badge.d.ts +13 -0
- package/dist/cjs/components/Badge/Badge.d.ts.map +1 -0
- package/dist/cjs/components/Badge/Badge.model.d.ts +42 -0
- package/dist/cjs/components/Badge/Badge.model.d.ts.map +1 -0
- package/dist/cjs/components/Badge/index.d.ts +3 -0
- package/dist/cjs/components/Badge/index.d.ts.map +1 -0
- package/dist/cjs/components/Explorer/Explorer.d.ts.map +1 -1
- package/dist/cjs/components/Explorer/helpers/useActions.d.ts +1 -4
- package/dist/cjs/components/Explorer/helpers/useActions.d.ts.map +1 -1
- package/dist/cjs/components/Explorer/helpers/useFilters.d.ts +0 -2
- package/dist/cjs/components/Explorer/helpers/useFilters.d.ts.map +1 -1
- package/dist/cjs/components/Filters/Filters.d.ts +12 -10
- package/dist/cjs/components/Filters/Filters.d.ts.map +1 -1
- package/dist/cjs/components/Filters/index.d.ts +1 -0
- package/dist/cjs/components/Filters/index.d.ts.map +1 -1
- package/dist/cjs/components/Icons/Icons.d.ts.map +1 -1
- package/dist/cjs/components/Icons/Icons.models.d.ts +17 -16
- package/dist/cjs/components/Icons/Icons.models.d.ts.map +1 -1
- package/dist/cjs/components/index.d.ts +1 -0
- package/dist/cjs/components/index.d.ts.map +1 -1
- package/dist/cjs/index.js +4 -4
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/components/Badge/Badge.d.ts +13 -0
- package/dist/esm/components/Badge/Badge.d.ts.map +1 -0
- package/dist/esm/components/Badge/Badge.model.d.ts +42 -0
- package/dist/esm/components/Badge/Badge.model.d.ts.map +1 -0
- package/dist/esm/components/Badge/index.d.ts +3 -0
- package/dist/esm/components/Badge/index.d.ts.map +1 -0
- package/dist/esm/components/Explorer/Explorer.d.ts.map +1 -1
- package/dist/esm/components/Explorer/helpers/useActions.d.ts +1 -4
- package/dist/esm/components/Explorer/helpers/useActions.d.ts.map +1 -1
- package/dist/esm/components/Explorer/helpers/useFilters.d.ts +0 -2
- package/dist/esm/components/Explorer/helpers/useFilters.d.ts.map +1 -1
- package/dist/esm/components/Filters/Filters.d.ts +12 -10
- package/dist/esm/components/Filters/Filters.d.ts.map +1 -1
- package/dist/esm/components/Filters/index.d.ts +1 -0
- package/dist/esm/components/Filters/index.d.ts.map +1 -1
- package/dist/esm/components/Icons/Icons.d.ts.map +1 -1
- package/dist/esm/components/Icons/Icons.models.d.ts +17 -16
- package/dist/esm/components/Icons/Icons.models.d.ts.map +1 -1
- package/dist/esm/components/index.d.ts +1 -0
- package/dist/esm/components/index.d.ts.map +1 -1
- package/dist/esm/index.js +4 -4
- package/dist/esm/index.js.map +1 -1
- package/package.json +5 -10
- package/src/components/Accordion/Accordion.tsx +1 -1
- package/src/components/Accordion/AccordionItem/AccordionItem.tsx +1 -1
- package/src/components/Actions/Action/Action.tsx +1 -1
- package/src/components/Actions/Actions.tsx +1 -1
- package/src/components/Badge/Badge.model.ts +46 -0
- package/src/components/Badge/Badge.scss +62 -0
- package/src/components/Badge/Badge.spec.tsx +40 -0
- package/src/components/Badge/Badge.stories.tsx +43 -0
- package/src/components/Badge/Badge.tsx +59 -0
- package/src/components/Badge/index.ts +2 -0
- package/src/components/Buttons/Button/Button.tsx +1 -1
- package/src/components/Buttons/CompositeButton/CompositeButton.tsx +1 -1
- package/src/components/Buttons/TextButton/TextButton.tsx +1 -1
- package/src/components/ConfirmDialog/ConfirmDialog.stories.tsx +1 -1
- package/src/components/ConfirmDialog/ConfirmDialog.tsx +1 -1
- package/src/components/DateTime/DatePicker/DatePicker.tsx +1 -1
- package/src/components/DateTime/DateTimePicker.tsx +1 -1
- package/src/components/DateTime/TimePicker/ScrollColumn/ScrollColumn.tsx +1 -1
- package/src/components/DateTime/TimePicker/TimePicker.tsx +1 -1
- package/src/components/DynamicDataList/DynamicDataList.tsx +1 -1
- package/src/components/DynamicDataList/DynamicListDataEntry/DynamicListDataEntry.tsx +1 -1
- package/src/components/DynamicDataList/DynamicListDataEntry/Renderers/createInputRenderer/createInputRenderer.tsx +1 -1
- package/src/components/DynamicDataList/DynamicListDataEntry/Renderers/createSelectRenderer/createSelectRenderer.tsx +1 -1
- package/src/components/DynamicDataList/DynamicListHeader/DynamicListHeader.tsx +1 -1
- package/src/components/DynamicDataList/DynamicListRow/DynamicListRow.tsx +1 -1
- package/src/components/EmptyStation/EmptyStation.tsx +1 -1
- package/src/components/Explorer/BulkEdit/helpers/FieldWrapper.tsx +1 -1
- package/src/components/Explorer/Explorer.tsx +41 -56
- package/src/components/Explorer/helpers/useActions.ts +0 -29
- package/src/components/Explorer/helpers/useFilters.spec.tsx +9 -25
- package/src/components/Explorer/helpers/useFilters.tsx +17 -21
- package/src/components/FieldSelection/FieldSelection.tsx +1 -1
- package/src/components/Filters/Filter/Filter.tsx +1 -1
- package/src/components/Filters/Filters.module.scss +59 -0
- package/src/components/Filters/Filters.tsx +103 -11
- package/src/components/Filters/SelectionTypes/DateTimeFilter/{DateTimeFilter.scss → DateTimeFilter.module.scss} +1 -1
- package/src/components/Filters/SelectionTypes/DateTimeFilter/DateTimeFilter.tsx +1 -1
- package/src/components/Filters/SelectionTypes/FreeTextFilter/FreeTextFilter.tsx +1 -1
- package/src/components/Filters/SelectionTypes/MultiOptionFilter/MultiOptionFilter.tsx +1 -1
- package/src/components/Filters/SelectionTypes/NumericTextFilter/NumericTextFilter.tsx +1 -1
- package/src/components/Filters/SelectionTypes/OptionsFilter/OptionsFilter.tsx +1 -1
- package/src/components/Filters/SelectionTypes/SearcheableOptionsFilter/SearcheableOptionsFilter.tsx +1 -1
- package/src/components/Filters/index.ts +1 -0
- package/src/components/FormElements/BooleanView/BooleanViewField.tsx +1 -1
- package/src/components/FormElements/Checkbox/Checkbox.tsx +1 -1
- package/src/components/FormElements/CustomTags/CustomTags.tsx +1 -1
- package/src/components/FormElements/DateTimeField/DateTimeText.tsx +1 -1
- package/src/components/FormElements/Divider/Divider.tsx +1 -1
- package/src/components/FormElements/FileUploadControl/FileUploadControl.tsx +1 -1
- package/src/components/FormElements/FormElementContainer/FormElementContainer.tsx +1 -1
- package/src/components/FormElements/FormGroup/FormGroup.stories.tsx +1 -1
- package/src/components/FormElements/FormGroup/FormGroup.tsx +1 -1
- package/src/components/FormElements/FormGroupTitle/FormGroupTitle.tsx +1 -1
- package/src/components/FormElements/FormikDebug/FormikDebug.tsx +1 -1
- package/src/components/FormElements/Link/LinkField.tsx +1 -1
- package/src/components/FormElements/Radio/Radio.tsx +1 -1
- package/src/components/FormElements/ReadOnly/ReadOnlyField.tsx +1 -1
- package/src/components/FormElements/ReadOnlyText/ReadOnlyTextField.tsx +1 -1
- package/src/components/FormElements/Select/Select.tsx +1 -1
- package/src/components/FormElements/SingleLineText/SingleLineText.tsx +1 -1
- package/src/components/FormElements/Tags/Tags.tsx +1 -1
- package/src/components/FormElements/TextArea/TextArea.tsx +1 -1
- package/src/components/FormElements/ToggleButton/ToggleButton.tsx +1 -1
- package/src/components/FormStation/FormGrid/FormGrid.tsx +1 -1
- package/src/components/FormStation/FormStation.tsx +1 -1
- package/src/components/FormStation/FormStationContentWrapper/FormStationContentWrapper.tsx +1 -1
- package/src/components/Hub/Hub.tsx +1 -1
- package/src/components/Hub/Tile/Tile.tsx +1 -1
- package/src/components/Icons/Icons.models.ts +1 -0
- package/src/components/Icons/Icons.stories.tsx +1 -1
- package/src/components/Icons/Icons.tsx +11 -1
- package/src/components/InfoPanel/InfoImage/InfoImage.tsx +1 -1
- package/src/components/InfoPanel/InfoPanel.tsx +1 -1
- package/src/components/InfoPanel/Paragraph/Paragraph.tsx +1 -1
- package/src/components/InfoPanel/Section/Section.tsx +1 -1
- package/src/components/InfoTooltip/InfoTooltip.tsx +1 -1
- package/src/components/InlineMenu/InlineMenu.stories.tsx +1 -1
- package/src/components/InlineMenu/InlineMenu.tsx +2 -2
- package/src/components/LandingPageHeader/LandingPageHeader.tsx +1 -1
- package/src/components/LandingPageTiles/LandingPageTiles.tsx +1 -1
- package/src/components/LandingPageTiles/TileLarge/TileLarge.tsx +1 -1
- package/src/components/LandingPageTiles/TileSmall/TileSmall.tsx +1 -1
- package/src/components/List/List.tsx +1 -1
- package/src/components/List/ListCheckBox/ListCheckBox.tsx +1 -1
- package/src/components/List/ListHeader/ColumnLabel/ColumnLabel.tsx +1 -1
- package/src/components/List/ListHeader/ListHeader.tsx +1 -1
- package/src/components/List/ListRow/ListRow.tsx +1 -1
- package/src/components/List/ListRow/ListRowCell/ListRowCell.tsx +1 -1
- package/src/components/List/ListRow/ListRowLoader.tsx +1 -1
- package/src/components/List/ListRow/Renderers/BooleanDotRenderer/BooleanDotRenderer.tsx +1 -1
- package/src/components/List/ListRow/Renderers/ExternalLinkRenderer/ExternalLinkRenderer.tsx +1 -1
- package/src/components/List/ListRow/Renderers/StateRenderer/StateRenderer.tsx +1 -1
- package/src/components/List/ListRow/Renderers/TagsRenderer/TagsRenderer.tsx +1 -1
- package/src/components/Loaders/ImageLoader/ImageLoader.tsx +1 -1
- package/src/components/Loaders/Loader/Loader.tsx +1 -1
- package/src/components/Message/Message.tsx +1 -1
- package/src/components/MessageBar/MessageBar.tsx +1 -1
- package/src/components/Modal/Modal.stories.tsx +1 -1
- package/src/components/Modal/Modal.tsx +1 -1
- package/src/components/PageHeader/PageHeader.tsx +1 -1
- package/src/components/PageHeader/PageHeaderAction/PageHeaderAction.tsx +1 -1
- package/src/components/PageHeader/PageHeaderActionsGroup/PageHeaderActionsGroup.tsx +1 -1
- package/src/components/ProgressBar/ProgressBar.tsx +1 -1
- package/src/components/Tabs/Tab/CustomTab.tsx +1 -1
- package/src/components/Tabs/TabList/CustomTabList.tsx +1 -1
- package/src/components/Tabs/TabList/ScrollContainer/ScrollContainer.tsx +1 -1
- package/src/components/Tabs/TabPanel/CustomTabPanel.tsx +1 -1
- package/src/components/index.ts +1 -0
- package/src/docs/Intro.mdx +1 -1
- package/src/hooks/useResize/ResizeIndicator.tsx +1 -1
- package/src/components/Filters/Filters.scss +0 -20
- /package/src/components/Accordion/{Accordion.scss → Accordion.module.scss} +0 -0
- /package/src/components/Accordion/AccordionItem/{AccordionItem.scss → AccordionItem.module.scss} +0 -0
- /package/src/components/Actions/Action/{Action.scss → Action.module.scss} +0 -0
- /package/src/components/Actions/{Actions.scss → Actions.module.scss} +0 -0
- /package/src/components/Buttons/Button/{Button.scss → Button.module.scss} +0 -0
- /package/src/components/Buttons/CompositeButton/{CompositeButton.scss → CompositeButton.module.scss} +0 -0
- /package/src/components/Buttons/TextButton/{TextButton.scss → TextButton.module.scss} +0 -0
- /package/src/components/ConfirmDialog/{ConfirmDialog.scss → ConfirmDialog.module.scss} +0 -0
- /package/src/components/DateTime/DatePicker/{Calendar.scss → Calendar.module.scss} +0 -0
- /package/src/components/DateTime/DatePicker/{DatePicker.scss → DatePicker.module.scss} +0 -0
- /package/src/components/DateTime/{DateTimePicker.scss → DateTimePicker.module.scss} +0 -0
- /package/src/components/DateTime/TimePicker/ScrollColumn/{ScrollColumn.scss → ScrollColumn.module.scss} +0 -0
- /package/src/components/DateTime/TimePicker/{TimePicker.scss → TimePicker.module.scss} +0 -0
- /package/src/components/DynamicDataList/{DynamicDataList.scss → DynamicDataList.module.scss} +0 -0
- /package/src/components/DynamicDataList/DynamicListDataEntry/{DynamicListDataEntry.scss → DynamicListDataEntry.module.scss} +0 -0
- /package/src/components/DynamicDataList/DynamicListDataEntry/Renderers/createInputRenderer/{createInputRenderer.scss → createInputRenderer.module.scss} +0 -0
- /package/src/components/DynamicDataList/DynamicListDataEntry/Renderers/createSelectRenderer/{createSelectRenderer.scss → createSelectRenderer.module.scss} +0 -0
- /package/src/components/DynamicDataList/DynamicListHeader/{DynamicListHeader.scss → DynamicListHeader.module.scss} +0 -0
- /package/src/components/DynamicDataList/DynamicListRow/{DynamicListRow.scss → DynamicListRow.module.scss} +0 -0
- /package/src/components/EmptyStation/{EmptyStation.scss → EmptyStation.module.scss} +0 -0
- /package/src/components/Explorer/BulkEdit/helpers/{FieldWrapper.scss → FieldWrapper.module.scss} +0 -0
- /package/src/components/Explorer/{Explorer.scss → Explorer.module.scss} +0 -0
- /package/src/components/FieldSelection/{FieldSelection.scss → FieldSelection.module.scss} +0 -0
- /package/src/components/Filters/Filter/{Filter.scss → Filter.module.scss} +0 -0
- /package/src/components/Filters/SelectionTypes/FreeTextFilter/{FreeTextFilter.scss → FreeTextFilter.module.scss} +0 -0
- /package/src/components/Filters/SelectionTypes/MultiOptionFilter/{MultiOptionFilter.scss → MultiOptionFilter.module.scss} +0 -0
- /package/src/components/Filters/SelectionTypes/NumericTextFilter/{NumericTextFilter.scss → NumericTextFilter.module.scss} +0 -0
- /package/src/components/Filters/SelectionTypes/OptionsFilter/{OptionsFilter.scss → OptionsFilter.module.scss} +0 -0
- /package/src/components/Filters/SelectionTypes/SearcheableOptionsFilter/{SearcheableOptionsFilter.scss → SearcheableOptionsFilter.module.scss} +0 -0
- /package/src/components/FormElements/BooleanView/{BooleanViewField.scss → BooleanViewField.module.scss} +0 -0
- /package/src/components/FormElements/Checkbox/{Checkbox.scss → Checkbox.module.scss} +0 -0
- /package/src/components/FormElements/CustomTags/{CustomTags.scss → CustomTags.module.scss} +0 -0
- /package/src/components/FormElements/DateTimeField/{DateTimeText.scss → DateTimeText.module.scss} +0 -0
- /package/src/components/FormElements/Divider/{Divider.scss → Divider.module.scss} +0 -0
- /package/src/components/FormElements/FileUploadControl/{FileUploadControl.scss → FileUploadControl.module.scss} +0 -0
- /package/src/components/FormElements/FormElementContainer/{FormElementContainer.scss → FormElementContainer.module.scss} +0 -0
- /package/src/components/FormElements/FormGroup/{FormGroup.scss → FormGroup.module.scss} +0 -0
- /package/src/components/FormElements/FormGroupTitle/{FormGroupTitle.scss → FormGroupTitle.module.scss} +0 -0
- /package/src/components/FormElements/FormikDebug/{FormikDebug.scss → FormikDebug.module.scss} +0 -0
- /package/src/components/FormElements/Link/{LinkField.scss → LinkField.module.scss} +0 -0
- /package/src/components/FormElements/Radio/{Radio.scss → Radio.module.scss} +0 -0
- /package/src/components/FormElements/ReadOnly/{ReadOnlyField.scss → ReadOnlyField.module.scss} +0 -0
- /package/src/components/FormElements/ReadOnlyText/{ReadOnlyTextField.scss → ReadOnlyTextField.module.scss} +0 -0
- /package/src/components/FormElements/Select/{Select.scss → Select.module.scss} +0 -0
- /package/src/components/FormElements/SingleLineText/{SingleLineText.scss → SingleLineText.module.scss} +0 -0
- /package/src/components/FormElements/Tags/{Tags.scss → Tags.module.scss} +0 -0
- /package/src/components/FormElements/TextArea/{TextArea.scss → TextArea.module.scss} +0 -0
- /package/src/components/FormElements/ToggleButton/{ToggleButton.scss → ToggleButton.module.scss} +0 -0
- /package/src/components/FormStation/FormGrid/{FormGrid.scss → FormGrid.module.scss} +0 -0
- /package/src/components/FormStation/{FormStation.scss → FormStation.module.scss} +0 -0
- /package/src/components/FormStation/FormStationContentWrapper/{FormStationContentWrapper.scss → FormStationContentWrapper.module.scss} +0 -0
- /package/src/components/Hub/{Hub.scss → Hub.module.scss} +0 -0
- /package/src/components/Hub/Tile/{Tile.scss → Tile.module.scss} +0 -0
- /package/src/components/Icons/{Icons.scss → Icons.module.scss} +0 -0
- /package/src/components/InfoPanel/InfoImage/{InfoImage.scss → InfoImage.module.scss} +0 -0
- /package/src/components/InfoPanel/{InfoPanel.scss → InfoPanel.module.scss} +0 -0
- /package/src/components/InfoPanel/Paragraph/{Paragraph.scss → Paragraph.module.scss} +0 -0
- /package/src/components/InfoPanel/Section/{Section.scss → Section.module.scss} +0 -0
- /package/src/components/InfoTooltip/{InfoTooltip.scss → InfoTooltip.module.scss} +0 -0
- /package/src/components/InlineMenu/{InlineMenu.scss → InlineMenu.module.scss} +0 -0
- /package/src/components/LandingPageHeader/{LandingPageHeader.scss → LandingPageHeader.module.scss} +0 -0
- /package/src/components/LandingPageTiles/{LandingPageTiles.scss → LandingPageTiles.module.scss} +0 -0
- /package/src/components/LandingPageTiles/TileLarge/{TileLarge.scss → TileLarge.module.scss} +0 -0
- /package/src/components/LandingPageTiles/TileSmall/{TileSmall.scss → TileSmall.module.scss} +0 -0
- /package/src/components/List/{List.scss → List.module.scss} +0 -0
- /package/src/components/List/ListCheckBox/{ListCheckBox.scss → ListCheckBox.module.scss} +0 -0
- /package/src/components/List/ListHeader/ColumnLabel/{ColumnLabel.scss → ColumnLabel.module.scss} +0 -0
- /package/src/components/List/ListHeader/{ListHeader.scss → ListHeader.module.scss} +0 -0
- /package/src/components/List/ListRow/{ListRow.scss → ListRow.module.scss} +0 -0
- /package/src/components/List/ListRow/ListRowCell/{ListRowCell.scss → ListRowCell.module.scss} +0 -0
- /package/src/components/List/ListRow/Renderers/BooleanDotRenderer/{BooleanDotRenderer.scss → BooleanDotRenderer.module.scss} +0 -0
- /package/src/components/List/ListRow/Renderers/ExternalLinkRenderer/{ExternalLinkRenderer.scss → ExternalLinkRenderer.module.scss} +0 -0
- /package/src/components/List/ListRow/Renderers/StateRenderer/{StateRenderer.scss → StateRenderer.module.scss} +0 -0
- /package/src/components/List/ListRow/Renderers/TagsRenderer/{TagsRenderer.scss → TagsRenderer.module.scss} +0 -0
- /package/src/components/Loaders/ImageLoader/{ImageLoader.scss → ImageLoader.module.scss} +0 -0
- /package/src/components/Loaders/Loader/{Loader.scss → Loader.module.scss} +0 -0
- /package/src/components/Message/{Message.scss → Message.module.scss} +0 -0
- /package/src/components/MessageBar/{MessageBar.scss → MessageBar.module.scss} +0 -0
- /package/src/components/Modal/{Modal.scss → Modal.module.scss} +0 -0
- /package/src/components/PageHeader/{PageHeader.scss → PageHeader.module.scss} +0 -0
- /package/src/components/PageHeader/PageHeaderAction/{PageHeaderAction.scss → PageHeaderAction.module.scss} +0 -0
- /package/src/components/PageHeader/PageHeaderActionsGroup/{PageHeaderActionsGroup.scss → PageHeaderActionsGroup.module.scss} +0 -0
- /package/src/components/ProgressBar/{ProgressBar.scss → ProgressBar.module.scss} +0 -0
- /package/src/components/Tabs/Tab/{CustomTab.scss → CustomTab.module.scss} +0 -0
- /package/src/components/Tabs/TabList/{CustomTabList.scss → CustomTabList.module.scss} +0 -0
- /package/src/components/Tabs/TabList/ScrollContainer/{ScrollContainer.scss → ScrollContainer.module.scss} +0 -0
- /package/src/components/Tabs/TabPanel/{CustomTabPanel.scss → CustomTabPanel.module.scss} +0 -0
- /package/src/docs/{intro.scss → intro.module.scss} +0 -0
- /package/src/hooks/useResize/{ResizeIndicator.scss → ResizeIndicator.module.scss} +0 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@axinom/mosaic-ui",
|
|
3
|
-
"version": "0.72.0
|
|
3
|
+
"version": "0.72.0",
|
|
4
4
|
"description": "UI components for building Axinom Mosaic applications",
|
|
5
5
|
"author": "Axinom",
|
|
6
6
|
"license": "PROPRIETARY",
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"build-storybook": "storybook build"
|
|
42
42
|
},
|
|
43
43
|
"dependencies": {
|
|
44
|
-
"@axinom/mosaic-core": "^0.4.34
|
|
44
|
+
"@axinom/mosaic-core": "^0.4.34",
|
|
45
45
|
"@faker-js/faker": "^7.4.0",
|
|
46
46
|
"@geoffcox/react-splitter": "^2.1.2",
|
|
47
47
|
"@mui/base": "5.0.0-beta.40",
|
|
@@ -78,10 +78,8 @@
|
|
|
78
78
|
"@storybook/addon-a11y": "10.4.2",
|
|
79
79
|
"@storybook/addon-docs": "^10.4.2",
|
|
80
80
|
"@storybook/addon-links": "^10.4.2",
|
|
81
|
-
"@storybook/addon-webpack5-compiler-babel": "^4.0.1",
|
|
82
|
-
"@storybook/preset-scss": "^1.0.3",
|
|
83
81
|
"@storybook/react": "^10.4.2",
|
|
84
|
-
"@storybook/react-
|
|
82
|
+
"@storybook/react-vite": "^10.4.2",
|
|
85
83
|
"@testing-library/jest-dom": "^5.16.5",
|
|
86
84
|
"@testing-library/react": "^12.1.5",
|
|
87
85
|
"@testing-library/react-hooks": "^8.0.1",
|
|
@@ -90,9 +88,7 @@
|
|
|
90
88
|
"@types/react-calendar": "^3.1.2",
|
|
91
89
|
"@types/react-router-dom": "^5.3.3",
|
|
92
90
|
"@types/react-transition-group": "^4.2.3",
|
|
93
|
-
"babel-loader": "^8.3.0",
|
|
94
91
|
"cross-env": "^7.0.3",
|
|
95
|
-
"css-loader": "^6.5.1",
|
|
96
92
|
"formik": "^2.1.4",
|
|
97
93
|
"jsdom": "^25.0.0",
|
|
98
94
|
"prettier": "^2.8.8",
|
|
@@ -108,15 +104,14 @@
|
|
|
108
104
|
"rollup-plugin-typescript2": "^0.29.0",
|
|
109
105
|
"rollup-plugin-visualizer": "^5.8.3",
|
|
110
106
|
"sass": "^1.57.1",
|
|
111
|
-
"sass-loader": "^12.3.0",
|
|
112
107
|
"storybook": "^10.4.2",
|
|
113
|
-
"style-loader": "^3.3.1",
|
|
114
108
|
"typescript": "^5.9.3",
|
|
115
109
|
"typescript-plugin-css-modules": "^5.0.2",
|
|
110
|
+
"vite": "^6",
|
|
116
111
|
"vitest": "^4.0.18"
|
|
117
112
|
},
|
|
118
113
|
"publishConfig": {
|
|
119
114
|
"access": "public"
|
|
120
115
|
},
|
|
121
|
-
"gitHead": "
|
|
116
|
+
"gitHead": "083814ceecc8fa2672930b9ffbf21b544a8b89c8"
|
|
122
117
|
}
|
|
@@ -8,7 +8,7 @@ import React, {
|
|
|
8
8
|
import { useExpand } from '../../hooks/useExpand/useExpand';
|
|
9
9
|
import { Button, ButtonContext } from '../Buttons';
|
|
10
10
|
import { IconName } from '../Icons';
|
|
11
|
-
import classes from './Accordion.scss';
|
|
11
|
+
import classes from './Accordion.module.scss';
|
|
12
12
|
import {
|
|
13
13
|
AccordionItem,
|
|
14
14
|
type AccordionItemProps,
|
|
@@ -2,7 +2,7 @@ import clsx from 'clsx';
|
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import { Button, ButtonContext } from '../../Buttons';
|
|
4
4
|
import { IconName } from '../../Icons';
|
|
5
|
-
import classes from './AccordionItem.scss';
|
|
5
|
+
import classes from './AccordionItem.module.scss';
|
|
6
6
|
|
|
7
7
|
export interface AccordionItemProps {
|
|
8
8
|
header: JSX.Element;
|
|
@@ -3,7 +3,7 @@ import React from 'react';
|
|
|
3
3
|
import { useBusy } from '../../hooks/useBusy/useBusy';
|
|
4
4
|
import { Action } from './Action/Action';
|
|
5
5
|
import type { ActionData, ContextActionData } from './Actions.models';
|
|
6
|
-
import classes from './Actions.scss';
|
|
6
|
+
import classes from './Actions.module.scss';
|
|
7
7
|
|
|
8
8
|
export interface ActionsProps {
|
|
9
9
|
/** Array of Actions to be rendered */
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The corner of the wrapped component that the badge attaches to.
|
|
3
|
+
*/
|
|
4
|
+
export type BadgePosition =
|
|
5
|
+
| 'top-left'
|
|
6
|
+
| 'top-right'
|
|
7
|
+
| 'bottom-left'
|
|
8
|
+
| 'bottom-right';
|
|
9
|
+
|
|
10
|
+
export interface BadgeProps {
|
|
11
|
+
/**
|
|
12
|
+
* The value shown inside the badge, typically a notification counter.
|
|
13
|
+
* When `null`, `undefined` or an empty string, the badge is not rendered
|
|
14
|
+
* (only the children are shown).
|
|
15
|
+
*/
|
|
16
|
+
content?: string | number;
|
|
17
|
+
/**
|
|
18
|
+
* The corner of the wrapped component the badge attaches to.
|
|
19
|
+
*
|
|
20
|
+
* @default 'top-right'
|
|
21
|
+
*/
|
|
22
|
+
position?: BadgePosition;
|
|
23
|
+
/**
|
|
24
|
+
* When `true`, the badge sits on the corner and half-overflows outside the
|
|
25
|
+
* bounds of the wrapped component (typical for notification counters). When
|
|
26
|
+
* `false`, the badge sits flush inside the corner.
|
|
27
|
+
*
|
|
28
|
+
* @default true
|
|
29
|
+
*/
|
|
30
|
+
overlap?: boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Caps a numeric `content`. When the number is greater than `max`, `${max}+`
|
|
33
|
+
* is displayed (e.g. `max={99}` renders `99+` for `100`). Ignored when
|
|
34
|
+
* `content` is a string.
|
|
35
|
+
*/
|
|
36
|
+
max?: number;
|
|
37
|
+
/**
|
|
38
|
+
* The element the badge attaches to. The badge is positioned relative to
|
|
39
|
+
* this content.
|
|
40
|
+
*/
|
|
41
|
+
children?: React.ReactNode;
|
|
42
|
+
/** Value for the `data-test-id` attribute on the badge element. */
|
|
43
|
+
dataTestId?: string;
|
|
44
|
+
/** CSS Class name for additional styles. */
|
|
45
|
+
className?: string;
|
|
46
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
@import '../../styles/common.scss';
|
|
2
|
+
|
|
3
|
+
.container {
|
|
4
|
+
@include boxSizing;
|
|
5
|
+
|
|
6
|
+
position: relative;
|
|
7
|
+
display: inline-flex;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.badge {
|
|
11
|
+
position: absolute;
|
|
12
|
+
z-index: 1;
|
|
13
|
+
|
|
14
|
+
display: inline-flex;
|
|
15
|
+
align-items: center;
|
|
16
|
+
justify-content: center;
|
|
17
|
+
|
|
18
|
+
height: 18px;
|
|
19
|
+
min-width: 18px;
|
|
20
|
+
padding: 0 6px;
|
|
21
|
+
border-radius: 9px;
|
|
22
|
+
|
|
23
|
+
background-color: var(--mosaic-primary);
|
|
24
|
+
color: #fff;
|
|
25
|
+
|
|
26
|
+
font-size: 11px;
|
|
27
|
+
white-space: nowrap;
|
|
28
|
+
pointer-events: none;
|
|
29
|
+
|
|
30
|
+
&.topRight {
|
|
31
|
+
top: 0;
|
|
32
|
+
right: 0;
|
|
33
|
+
}
|
|
34
|
+
&.topLeft {
|
|
35
|
+
top: 0;
|
|
36
|
+
left: 0;
|
|
37
|
+
}
|
|
38
|
+
&.bottomRight {
|
|
39
|
+
right: 0;
|
|
40
|
+
bottom: 0;
|
|
41
|
+
}
|
|
42
|
+
&.bottomLeft {
|
|
43
|
+
bottom: 0;
|
|
44
|
+
left: 0;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
// Sit ON the corner, half-overflowing the parent bounds (notification style).
|
|
48
|
+
&.overlap {
|
|
49
|
+
&.topRight {
|
|
50
|
+
transform: translate(50%, -50%);
|
|
51
|
+
}
|
|
52
|
+
&.topLeft {
|
|
53
|
+
transform: translate(-50%, -50%);
|
|
54
|
+
}
|
|
55
|
+
&.bottomRight {
|
|
56
|
+
transform: translate(50%, 50%);
|
|
57
|
+
}
|
|
58
|
+
&.bottomLeft {
|
|
59
|
+
transform: translate(-50%, 50%);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { render } from '@testing-library/react';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { describe, expect, it } from 'vitest';
|
|
4
|
+
import { Badge } from './Badge';
|
|
5
|
+
|
|
6
|
+
describe('Badge', () => {
|
|
7
|
+
it('renders the component without crashing', () => {
|
|
8
|
+
const { container } = render(<Badge content={5}>child</Badge>);
|
|
9
|
+
expect(container.querySelector('.badge-container')).toBeInTheDocument();
|
|
10
|
+
});
|
|
11
|
+
|
|
12
|
+
it('renders the children', () => {
|
|
13
|
+
const { getByText } = render(
|
|
14
|
+
<Badge content={5}>
|
|
15
|
+
<span>icon</span>
|
|
16
|
+
</Badge>,
|
|
17
|
+
);
|
|
18
|
+
expect(getByText('icon')).toBeInTheDocument();
|
|
19
|
+
});
|
|
20
|
+
|
|
21
|
+
it('displays the content', () => {
|
|
22
|
+
const { container } = render(<Badge content={5} />);
|
|
23
|
+
expect(container.querySelector('.badge')?.textContent).toBe('5');
|
|
24
|
+
});
|
|
25
|
+
|
|
26
|
+
it('caps numeric content with max', () => {
|
|
27
|
+
const { container } = render(<Badge content={1000} max={99} />);
|
|
28
|
+
expect(container.querySelector('.badge')?.textContent).toBe('99+');
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
it('does not render the badge when content is empty', () => {
|
|
32
|
+
const { container } = render(<Badge content="">child</Badge>);
|
|
33
|
+
expect(container.querySelector('.badge')).not.toBeInTheDocument();
|
|
34
|
+
});
|
|
35
|
+
|
|
36
|
+
it('applies the position class', () => {
|
|
37
|
+
const { container } = render(<Badge content={1} position="bottom-left" />);
|
|
38
|
+
expect(container.querySelector('.bottomLeft')).toBeInTheDocument();
|
|
39
|
+
});
|
|
40
|
+
});
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { Meta, StoryObj } from '@storybook/react';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { Badge } from './Badge';
|
|
4
|
+
|
|
5
|
+
const SampleBox: React.FC = () => (
|
|
6
|
+
<div
|
|
7
|
+
style={{
|
|
8
|
+
width: 64,
|
|
9
|
+
height: 64,
|
|
10
|
+
borderRadius: 8,
|
|
11
|
+
backgroundColor: '#e0e0e0',
|
|
12
|
+
}}
|
|
13
|
+
/>
|
|
14
|
+
);
|
|
15
|
+
|
|
16
|
+
const meta: Meta<typeof Badge> = {
|
|
17
|
+
title: 'Other Components/Badge',
|
|
18
|
+
component: Badge,
|
|
19
|
+
decorators: [
|
|
20
|
+
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
|
|
21
|
+
(Story) => (
|
|
22
|
+
<div style={{ padding: 40 }}>
|
|
23
|
+
<Story />
|
|
24
|
+
</div>
|
|
25
|
+
),
|
|
26
|
+
],
|
|
27
|
+
args: {
|
|
28
|
+
content: 5,
|
|
29
|
+
position: 'top-right',
|
|
30
|
+
children: <SampleBox />,
|
|
31
|
+
},
|
|
32
|
+
};
|
|
33
|
+
export default meta;
|
|
34
|
+
|
|
35
|
+
export const Default: StoryObj<typeof Badge> = {};
|
|
36
|
+
|
|
37
|
+
export const MultiDigitCapped: StoryObj<typeof Badge> = {
|
|
38
|
+
args: { content: 1000, max: 99 },
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
export const BottomLeftFlush: StoryObj<typeof Badge> = {
|
|
42
|
+
args: { position: 'bottom-left', overlap: false },
|
|
43
|
+
};
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import clsx from 'clsx';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import type { BadgePosition, BadgeProps } from './Badge.model';
|
|
4
|
+
import classes from './Badge.scss';
|
|
5
|
+
|
|
6
|
+
const positionClasses: Record<BadgePosition, string> = {
|
|
7
|
+
'top-left': classes.topLeft,
|
|
8
|
+
'top-right': classes.topRight,
|
|
9
|
+
'bottom-left': classes.bottomLeft,
|
|
10
|
+
'bottom-right': classes.bottomRight,
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* A small badge that attaches to a corner of the element it wraps, typically
|
|
15
|
+
* used to display a notification counter.
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* <Badge content={5} position="top-right">
|
|
19
|
+
* <Icons icon={IconName.Bell} />
|
|
20
|
+
* </Badge>
|
|
21
|
+
*/
|
|
22
|
+
export const Badge: React.FC<BadgeProps> = ({
|
|
23
|
+
content,
|
|
24
|
+
position = 'top-right',
|
|
25
|
+
overlap = true,
|
|
26
|
+
max,
|
|
27
|
+
children,
|
|
28
|
+
dataTestId,
|
|
29
|
+
className = '',
|
|
30
|
+
}) => {
|
|
31
|
+
const displayContent =
|
|
32
|
+
typeof content === 'number' && typeof max === 'number' && content > max
|
|
33
|
+
? `${max}+`
|
|
34
|
+
: content;
|
|
35
|
+
|
|
36
|
+
const hasContent =
|
|
37
|
+
displayContent !== undefined &&
|
|
38
|
+
displayContent !== null &&
|
|
39
|
+
displayContent !== '';
|
|
40
|
+
|
|
41
|
+
return (
|
|
42
|
+
<span className={clsx(classes.container, 'badge-container', className)}>
|
|
43
|
+
{children}
|
|
44
|
+
{hasContent && (
|
|
45
|
+
<span
|
|
46
|
+
className={clsx(
|
|
47
|
+
classes.badge,
|
|
48
|
+
positionClasses[position],
|
|
49
|
+
overlap && classes.overlap,
|
|
50
|
+
'badge',
|
|
51
|
+
)}
|
|
52
|
+
data-test-id={dataTestId ?? 'badge'}
|
|
53
|
+
>
|
|
54
|
+
{displayContent}
|
|
55
|
+
</span>
|
|
56
|
+
)}
|
|
57
|
+
</span>
|
|
58
|
+
);
|
|
59
|
+
};
|
|
@@ -9,7 +9,7 @@ import type {
|
|
|
9
9
|
ContextButtonProps,
|
|
10
10
|
NavigationButtonProps,
|
|
11
11
|
} from './Button.model';
|
|
12
|
-
import classes from './Button.scss';
|
|
12
|
+
import classes from './Button.module.scss';
|
|
13
13
|
|
|
14
14
|
const ButtonElement: React.ForwardRefRenderFunction<
|
|
15
15
|
HTMLButtonElement | HTMLAnchorElement,
|
|
@@ -9,7 +9,7 @@ import type {
|
|
|
9
9
|
CompositeJsButtonProps,
|
|
10
10
|
CompositeNavigationButtonProps,
|
|
11
11
|
} from './CompositeButton.model';
|
|
12
|
-
import classes from './CompositeButton.scss';
|
|
12
|
+
import classes from './CompositeButton.module.scss';
|
|
13
13
|
|
|
14
14
|
/**
|
|
15
15
|
* Button which can render an text together with an icon.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Meta, StoryObj } from '@storybook/react';
|
|
2
2
|
import React, { useState } from 'react';
|
|
3
|
-
import classes from '../../../.storybook/static/css/confirm-dialog.scss';
|
|
3
|
+
import classes from '../../../.storybook/static/css/confirm-dialog.module.scss';
|
|
4
4
|
import { useExpand } from '../../hooks/useExpand/useExpand';
|
|
5
5
|
import { Icons } from '../Icons/Icons';
|
|
6
6
|
import { IconName } from '../Icons/Icons.models';
|
|
@@ -8,7 +8,7 @@ import type {
|
|
|
8
8
|
ConfirmationMode,
|
|
9
9
|
ConfirmationPlacement,
|
|
10
10
|
} from './ConfirmDialog.models';
|
|
11
|
-
import classes from './ConfirmDialog.scss';
|
|
11
|
+
import classes from './ConfirmDialog.module.scss';
|
|
12
12
|
|
|
13
13
|
// Popper needs useState not useRef to know when the state of the component changes. More info here: https://www.youtube.com/watch?v=cIUfTktVZRM
|
|
14
14
|
interface useConfirmationDelayProps {
|
|
@@ -3,7 +3,7 @@ import React from 'react';
|
|
|
3
3
|
import Calendar from 'react-calendar';
|
|
4
4
|
import { noop } from '../../../helpers/utils';
|
|
5
5
|
import { IconName, Icons } from '../../Icons';
|
|
6
|
-
import classes from './DatePicker.scss';
|
|
6
|
+
import classes from './DatePicker.module.scss';
|
|
7
7
|
|
|
8
8
|
export interface DatePickerProps {
|
|
9
9
|
/** Current Value */
|
|
@@ -3,7 +3,7 @@ import { DateTime } from 'luxon';
|
|
|
3
3
|
import React, { useState } from 'react';
|
|
4
4
|
import { noop } from '../../helpers/utils';
|
|
5
5
|
import { DatePicker } from './DatePicker/DatePicker';
|
|
6
|
-
import classes from './DateTimePicker.scss';
|
|
6
|
+
import classes from './DateTimePicker.module.scss';
|
|
7
7
|
import { TimePicker } from './TimePicker/TimePicker';
|
|
8
8
|
|
|
9
9
|
export interface DateTimePickerProps {
|
|
@@ -8,7 +8,7 @@ import React, {
|
|
|
8
8
|
} from 'react';
|
|
9
9
|
import { noop } from '../../../../helpers/utils';
|
|
10
10
|
import { IconName, Icons } from '../../../Icons';
|
|
11
|
-
import classes from './ScrollColumn.scss';
|
|
11
|
+
import classes from './ScrollColumn.module.scss';
|
|
12
12
|
|
|
13
13
|
export interface ScrollColumnProps<T> {
|
|
14
14
|
/** Array of options to select from */
|
|
@@ -2,7 +2,7 @@ import type { DateTime } from 'luxon';
|
|
|
2
2
|
import React, { useState } from 'react';
|
|
3
3
|
import { noop } from '../../../helpers/utils';
|
|
4
4
|
import { ScrollColumn } from './ScrollColumn/ScrollColumn';
|
|
5
|
-
import classes from './TimePicker.scss';
|
|
5
|
+
import classes from './TimePicker.module.scss';
|
|
6
6
|
|
|
7
7
|
export interface TimePickerProps {
|
|
8
8
|
/** Current value */
|
|
@@ -14,7 +14,7 @@ import { uuid } from '../../utils/GenerateId';
|
|
|
14
14
|
import type { ActionData } from '../Actions';
|
|
15
15
|
import type { ObjectSchemaDefinition } from '../FormStation';
|
|
16
16
|
import type { DynamicListColumn } from './DynamicDataList.model';
|
|
17
|
-
import classes from './DynamicDataList.scss';
|
|
17
|
+
import classes from './DynamicDataList.module.scss';
|
|
18
18
|
import {
|
|
19
19
|
DynamicListDataEntry,
|
|
20
20
|
DynamicListDataEntryMode,
|
|
@@ -14,7 +14,7 @@ import { Button, ButtonContext } from '../../Buttons';
|
|
|
14
14
|
import type { ObjectSchemaDefinition } from '../../FormStation';
|
|
15
15
|
import { IconName, Icons } from '../../Icons';
|
|
16
16
|
import type { DynamicListColumn } from '../DynamicDataList.model';
|
|
17
|
-
import classes from './DynamicListDataEntry.scss';
|
|
17
|
+
import classes from './DynamicListDataEntry.module.scss';
|
|
18
18
|
|
|
19
19
|
export enum DynamicListDataEntryMode {
|
|
20
20
|
Add,
|
|
@@ -2,7 +2,7 @@ import React, { type ChangeEvent } from 'react';
|
|
|
2
2
|
import type { DynamicListDataEntryRenderer } from '../../../../DynamicDataList/DynamicDataList.model';
|
|
3
3
|
import { SingleLineText } from '../../../../FormElements';
|
|
4
4
|
import type { CreateInputRendererConfig } from '../renderers.model';
|
|
5
|
-
import classes from './createInputRenderer.scss';
|
|
5
|
+
import classes from './createInputRenderer.module.scss';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* Creates a simple component that can be used as an input field
|
|
@@ -2,7 +2,7 @@ import React, { type ChangeEvent } from 'react';
|
|
|
2
2
|
import type { DynamicListDataEntryRenderer } from '../../../../DynamicDataList/DynamicDataList.model';
|
|
3
3
|
import { Select } from '../../../../FormElements';
|
|
4
4
|
import type { CreateSelectRendererConfig } from '../renderers.model';
|
|
5
|
-
import classes from './createSelectRenderer.scss';
|
|
5
|
+
import classes from './createSelectRenderer.module.scss';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* Creates a simple component that can be used as an input field
|
|
@@ -3,7 +3,7 @@ import React, { type PropsWithChildren } from 'react';
|
|
|
3
3
|
import { useResize } from '../../../hooks/useResize/useResize';
|
|
4
4
|
import type { Data } from '../../../types/data';
|
|
5
5
|
import type { DynamicListColumn } from '../DynamicDataList.model';
|
|
6
|
-
import classes from './DynamicListHeader.scss';
|
|
6
|
+
import classes from './DynamicListHeader.module.scss';
|
|
7
7
|
|
|
8
8
|
// TODO: Remove this data type, generic should actually be column type
|
|
9
9
|
export interface DynamicListHeaderProps<T extends Data> {
|
|
@@ -9,7 +9,7 @@ import { Button, ButtonContext } from '../../Buttons';
|
|
|
9
9
|
import { IconName, Icons } from '../../Icons';
|
|
10
10
|
import { InlineMenu } from '../../InlineMenu';
|
|
11
11
|
import type { DynamicListColumn } from '../DynamicDataList.model';
|
|
12
|
-
import classes from './DynamicListRow.scss';
|
|
12
|
+
import classes from './DynamicListRow.module.scss';
|
|
13
13
|
|
|
14
14
|
export interface DynamicListRowProps<T extends Data> {
|
|
15
15
|
/** The column definition */
|
|
@@ -3,7 +3,7 @@ import React, { type PropsWithChildren } from 'react';
|
|
|
3
3
|
import { MessageBar, type MessageBarProps } from '../MessageBar';
|
|
4
4
|
import { PageHeader, type PageHeaderProps } from '../PageHeader';
|
|
5
5
|
import type { StationError } from '../models';
|
|
6
|
-
import classes from './EmptyStation.scss';
|
|
6
|
+
import classes from './EmptyStation.module.scss';
|
|
7
7
|
|
|
8
8
|
export type EmptyStationProps = PageHeaderProps & {
|
|
9
9
|
/** If set, creates a MessageBar component with an 'error' type message */
|
|
@@ -4,7 +4,7 @@ import type { Data } from '../../../../types';
|
|
|
4
4
|
import { Button, ButtonContext } from '../../../Buttons';
|
|
5
5
|
import { IconName } from '../../../Icons';
|
|
6
6
|
import type { BulkEditFieldConfig } from '../BulkEdit.model';
|
|
7
|
-
import classes from './FieldWrapper.scss';
|
|
7
|
+
import classes from './FieldWrapper.module.scss';
|
|
8
8
|
|
|
9
9
|
interface FieldWrapperProps {
|
|
10
10
|
name: string;
|
|
@@ -36,7 +36,7 @@ import type {
|
|
|
36
36
|
QuickEditConfig,
|
|
37
37
|
QuickEditRegistration,
|
|
38
38
|
} from './Explorer.model';
|
|
39
|
-
import classes from './Explorer.scss';
|
|
39
|
+
import classes from './Explorer.module.scss';
|
|
40
40
|
import { useQuickEdit } from './QuickEdit/useQuickEdit';
|
|
41
41
|
import { useActions } from './helpers/useActions';
|
|
42
42
|
import { useDataProvider } from './helpers/useDataProvider';
|
|
@@ -262,13 +262,7 @@ export const Explorer = React.forwardRef(function Explorer<T extends Data>(
|
|
|
262
262
|
listRef.current?.resetSelection();
|
|
263
263
|
}, []);
|
|
264
264
|
|
|
265
|
-
const {
|
|
266
|
-
activeFilters,
|
|
267
|
-
Filters,
|
|
268
|
-
filtersVisible,
|
|
269
|
-
toggleFiltersVisible,
|
|
270
|
-
collapseFilters,
|
|
271
|
-
} = useFilters<T>({
|
|
265
|
+
const { activeFilters, Filters, collapseFilters } = useFilters<T>({
|
|
272
266
|
stationKey,
|
|
273
267
|
globalStateOptions,
|
|
274
268
|
filterOptions,
|
|
@@ -416,8 +410,6 @@ export const Explorer = React.forwardRef(function Explorer<T extends Data>(
|
|
|
416
410
|
quickEditAction,
|
|
417
411
|
bulkEditAction,
|
|
418
412
|
openBulkActionsOnStart,
|
|
419
|
-
filtersVisible,
|
|
420
|
-
hasFilters: filterOptions !== undefined,
|
|
421
413
|
resultCount,
|
|
422
414
|
activeFilterCount: Object.keys(activeFilters).length,
|
|
423
415
|
itemSelection,
|
|
@@ -426,7 +418,6 @@ export const Explorer = React.forwardRef(function Explorer<T extends Data>(
|
|
|
426
418
|
setStationMessage,
|
|
427
419
|
onBulkActionsToggled,
|
|
428
420
|
setIsBulkOpen,
|
|
429
|
-
toggleFiltersVisible,
|
|
430
421
|
closeBulkEdit,
|
|
431
422
|
});
|
|
432
423
|
|
|
@@ -461,51 +452,45 @@ export const Explorer = React.forwardRef(function Explorer<T extends Data>(
|
|
|
461
452
|
/>
|
|
462
453
|
{StationMessage}
|
|
463
454
|
{Filters}
|
|
464
|
-
<
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
}
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
onSortChanged(sortData);
|
|
504
|
-
setSortOrder(sortData);
|
|
505
|
-
}}
|
|
506
|
-
inlineMenuActions={inlineMenuActions && inlineMenuActionsHandler}
|
|
507
|
-
/>
|
|
508
|
-
</div>
|
|
455
|
+
<List<T>
|
|
456
|
+
ref={listRef}
|
|
457
|
+
columns={columns}
|
|
458
|
+
data={data}
|
|
459
|
+
isLoading={isLoading}
|
|
460
|
+
isError={Boolean(stationMessage?.type === 'error')}
|
|
461
|
+
handleRetry={false}
|
|
462
|
+
minimumWidth={minimumWidth}
|
|
463
|
+
columnGap={columnGap}
|
|
464
|
+
rowGap={rowGap}
|
|
465
|
+
headerRowHeight={headerRowHeight}
|
|
466
|
+
listRowHeight={listRowHeight}
|
|
467
|
+
listRowActionSize={listRowActionSize}
|
|
468
|
+
headerRowActionSize={headerRowActionSize}
|
|
469
|
+
horizontalTextAlign={horizontalTextAlign}
|
|
470
|
+
verticalTextAlign={verticalTextAlign}
|
|
471
|
+
textWrap={textWrap}
|
|
472
|
+
keyProperty={keyProperty}
|
|
473
|
+
showActionButton={
|
|
474
|
+
Boolean(generateItemLink) ||
|
|
475
|
+
Boolean(onItemClicked) ||
|
|
476
|
+
listSelectionMode !== ListSelectMode.None
|
|
477
|
+
} // or hard code to `true`?
|
|
478
|
+
selectionMode={listSelectionMode}
|
|
479
|
+
enableSelectAll={enableSelectAll}
|
|
480
|
+
enableSelectAllDeselect={enableSelectAll && !hasMoreData}
|
|
481
|
+
loadingTriggerOffset={loadingTriggerOffset}
|
|
482
|
+
defaultSortOrder={sortOrder}
|
|
483
|
+
generateItemLink={!isQuickEditMode ? generateItemLink : undefined}
|
|
484
|
+
onItemClicked={onItemClickedHandler}
|
|
485
|
+
onItemSelected={itemSelectedHandler}
|
|
486
|
+
onRequestMoreData={onRequestMoreData}
|
|
487
|
+
onSortChanged={(sortData: SortData<T>) => {
|
|
488
|
+
listRef.current?.resetSelection();
|
|
489
|
+
onSortChanged(sortData);
|
|
490
|
+
setSortOrder(sortData);
|
|
491
|
+
}}
|
|
492
|
+
inlineMenuActions={inlineMenuActions && inlineMenuActionsHandler}
|
|
493
|
+
/>
|
|
509
494
|
</div>
|
|
510
495
|
{isQuickEditMode && (
|
|
511
496
|
<QuickEditContextProvider>{quickEditStation}</QuickEditContextProvider>
|