@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
|
@@ -7,7 +7,6 @@ import type { ItemSelectEventArgs } from '../../List';
|
|
|
7
7
|
import type { PageHeaderActionItemProps } from '../../PageHeader';
|
|
8
8
|
import {
|
|
9
9
|
type PageHeaderActionProps,
|
|
10
|
-
PageHeaderActionType,
|
|
11
10
|
type PageHeaderJsActionProps,
|
|
12
11
|
isPageHeaderNavigationAction,
|
|
13
12
|
} from '../../PageHeader/PageHeaderAction';
|
|
@@ -22,8 +21,6 @@ interface UseActionsProps<T extends Data> {
|
|
|
22
21
|
quickEditAction?: PageHeaderActionItemProps;
|
|
23
22
|
bulkEditAction?: ExplorerBulkAction<T>;
|
|
24
23
|
openBulkActionsOnStart: boolean | undefined;
|
|
25
|
-
filtersVisible: boolean;
|
|
26
|
-
hasFilters: boolean;
|
|
27
24
|
resultCount: ResultCounts;
|
|
28
25
|
activeFilterCount: number;
|
|
29
26
|
itemSelection: ItemSelectEventArgs<T>;
|
|
@@ -34,7 +31,6 @@ interface UseActionsProps<T extends Data> {
|
|
|
34
31
|
) => void;
|
|
35
32
|
onBulkActionsToggled: (expanded: boolean) => void;
|
|
36
33
|
setIsBulkOpen: (value: React.SetStateAction<boolean>) => void;
|
|
37
|
-
toggleFiltersVisible: () => void;
|
|
38
34
|
closeBulkEdit: () => void;
|
|
39
35
|
}
|
|
40
36
|
|
|
@@ -52,10 +48,6 @@ export const useActions = <T extends Data>({
|
|
|
52
48
|
openBulkActionsOnStart,
|
|
53
49
|
resultCount,
|
|
54
50
|
setIsBulkOpen,
|
|
55
|
-
hasFilters,
|
|
56
|
-
filtersVisible,
|
|
57
|
-
activeFilterCount,
|
|
58
|
-
toggleFiltersVisible,
|
|
59
51
|
quickEditAction,
|
|
60
52
|
bulkActions,
|
|
61
53
|
closeBulkEdit,
|
|
@@ -115,23 +107,6 @@ export const useActions = <T extends Data>({
|
|
|
115
107
|
const pageHeaderActions: PageHeaderActionItemProps[] = useMemo(() => {
|
|
116
108
|
const headerActions: PageHeaderActionItemProps[] = [];
|
|
117
109
|
|
|
118
|
-
if (hasFilters) {
|
|
119
|
-
headerActions.push({ kind: 'spacer' });
|
|
120
|
-
|
|
121
|
-
headerActions.push({
|
|
122
|
-
label:
|
|
123
|
-
activeFilterCount > 0 ? `Filters (${activeFilterCount})` : 'Filters',
|
|
124
|
-
icon: IconName.Filters,
|
|
125
|
-
kind: 'action',
|
|
126
|
-
actionType: filtersVisible
|
|
127
|
-
? PageHeaderActionType.Active
|
|
128
|
-
: PageHeaderActionType.Context,
|
|
129
|
-
onClick: async () => {
|
|
130
|
-
toggleFiltersVisible();
|
|
131
|
-
},
|
|
132
|
-
});
|
|
133
|
-
}
|
|
134
|
-
|
|
135
110
|
if (bulkActionItems.length > 0) {
|
|
136
111
|
headerActions.push({ kind: 'spacer' });
|
|
137
112
|
|
|
@@ -193,11 +168,8 @@ export const useActions = <T extends Data>({
|
|
|
193
168
|
return headerActions;
|
|
194
169
|
}, [
|
|
195
170
|
actions,
|
|
196
|
-
activeFilterCount,
|
|
197
171
|
bulkActionItems,
|
|
198
172
|
closeBulkEdit,
|
|
199
|
-
filtersVisible,
|
|
200
|
-
hasFilters,
|
|
201
173
|
itemSelection.items?.length,
|
|
202
174
|
onBulkActionsToggled,
|
|
203
175
|
openBulkActionsOnStart,
|
|
@@ -205,7 +177,6 @@ export const useActions = <T extends Data>({
|
|
|
205
177
|
resultCount?.filtered,
|
|
206
178
|
setIsBulkOpen,
|
|
207
179
|
setStationMessage,
|
|
208
|
-
toggleFiltersVisible,
|
|
209
180
|
]);
|
|
210
181
|
|
|
211
182
|
return {
|
|
@@ -46,7 +46,7 @@ describe('useFilters', () => {
|
|
|
46
46
|
expect(result.current.activeFilters).toEqual(defaultFilterValues);
|
|
47
47
|
});
|
|
48
48
|
|
|
49
|
-
it('should
|
|
49
|
+
it('should expose collapseFilters and not throw when called', () => {
|
|
50
50
|
const { result } = renderHook(() =>
|
|
51
51
|
useFilters({
|
|
52
52
|
stationKey,
|
|
@@ -57,29 +57,13 @@ describe('useFilters', () => {
|
|
|
57
57
|
}),
|
|
58
58
|
);
|
|
59
59
|
|
|
60
|
-
|
|
61
|
-
result.current.toggleFiltersVisible();
|
|
62
|
-
});
|
|
63
|
-
|
|
64
|
-
expect(result.current.filtersVisible).toBe(false);
|
|
65
|
-
});
|
|
60
|
+
expect(typeof result.current.collapseFilters).toBe('function');
|
|
66
61
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
stationKey,
|
|
71
|
-
globalStateOptions,
|
|
72
|
-
filterOptions,
|
|
73
|
-
defaultFilterValues,
|
|
74
|
-
onFiltersChange,
|
|
62
|
+
expect(() =>
|
|
63
|
+
act(() => {
|
|
64
|
+
result.current.collapseFilters();
|
|
75
65
|
}),
|
|
76
|
-
);
|
|
77
|
-
|
|
78
|
-
act(() => {
|
|
79
|
-
result.current.collapseFilters();
|
|
80
|
-
});
|
|
81
|
-
|
|
82
|
-
expect(result.current.filtersVisible).toBe(false);
|
|
66
|
+
).not.toThrow();
|
|
83
67
|
});
|
|
84
68
|
|
|
85
69
|
it('should update filters and call onFiltersChange', () => {
|
|
@@ -95,7 +79,7 @@ describe('useFilters', () => {
|
|
|
95
79
|
);
|
|
96
80
|
|
|
97
81
|
act(() => {
|
|
98
|
-
result.current.Filters.props.
|
|
82
|
+
result.current.Filters.props.onFiltersChange(newFilters);
|
|
99
83
|
});
|
|
100
84
|
|
|
101
85
|
expect(result.current.activeFilters).toEqual(newFilters);
|
|
@@ -115,7 +99,7 @@ describe('useFilters', () => {
|
|
|
115
99
|
);
|
|
116
100
|
|
|
117
101
|
act(() => {
|
|
118
|
-
result.current.Filters.props.
|
|
102
|
+
result.current.Filters.props.onFiltersChange(newFilters);
|
|
119
103
|
});
|
|
120
104
|
|
|
121
105
|
expect(storeState).toHaveBeenCalledWith(stationKey, 'filters', newFilters);
|
|
@@ -134,7 +118,7 @@ describe('useFilters', () => {
|
|
|
134
118
|
);
|
|
135
119
|
|
|
136
120
|
act(() => {
|
|
137
|
-
result.current.Filters.props.
|
|
121
|
+
result.current.Filters.props.onFiltersChange(emptyFilters);
|
|
138
122
|
});
|
|
139
123
|
|
|
140
124
|
expect(storeState).toHaveBeenCalledWith(stationKey, 'filters', undefined);
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import React, { useEffect, useState } from 'react';
|
|
2
|
-
import { useExpand } from '../../../hooks';
|
|
1
|
+
import React, { useCallback, useEffect, useRef, useState } from 'react';
|
|
3
2
|
import type { Data } from '../../../types';
|
|
4
3
|
import type { FilterType, FilterValues } from '../../Filters';
|
|
5
|
-
import { Filters } from '../../Filters/Filters';
|
|
4
|
+
import { Filters, type FiltersHandle } from '../../Filters/Filters';
|
|
6
5
|
import { getState, storeState } from '../../Utils/State/GlobalState';
|
|
7
6
|
import type { ExplorerStateOptions } from '../Explorer.model';
|
|
8
7
|
|
|
@@ -17,8 +16,6 @@ interface UseFiltersProps<T extends Data> {
|
|
|
17
16
|
interface UseFiltersReturnType<T extends Data> {
|
|
18
17
|
readonly Filters: JSX.Element;
|
|
19
18
|
readonly activeFilters: FilterValues<T>;
|
|
20
|
-
readonly filtersVisible: boolean;
|
|
21
|
-
readonly toggleFiltersVisible: () => void;
|
|
22
19
|
readonly collapseFilters: () => void;
|
|
23
20
|
}
|
|
24
21
|
|
|
@@ -29,7 +26,7 @@ export const useFilters = <T extends Data>({
|
|
|
29
26
|
defaultFilterValues,
|
|
30
27
|
onFiltersChange,
|
|
31
28
|
}: UseFiltersProps<T>): UseFiltersReturnType<T> => {
|
|
32
|
-
const
|
|
29
|
+
const filtersRef = useRef<FiltersHandle>(null);
|
|
33
30
|
const [activeFilters, setActiveFilters] = useState<FilterValues<T>>(
|
|
34
31
|
getState<FilterValues<T>>(stationKey, 'filters') ??
|
|
35
32
|
defaultFilterValues ??
|
|
@@ -53,26 +50,25 @@ export const useFilters = <T extends Data>({
|
|
|
53
50
|
stationKey,
|
|
54
51
|
]);
|
|
55
52
|
|
|
53
|
+
const collapseFilters = useCallback(() => {
|
|
54
|
+
filtersRef.current?.collapse();
|
|
55
|
+
}, []);
|
|
56
|
+
|
|
56
57
|
const FilterComponent = (
|
|
57
|
-
|
|
58
|
-
{
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
/>
|
|
67
|
-
)}
|
|
68
|
-
</>
|
|
58
|
+
<Filters<T>
|
|
59
|
+
ref={filtersRef}
|
|
60
|
+
options={filterOptions}
|
|
61
|
+
defaultValues={activeFilters}
|
|
62
|
+
onFiltersChange={(args) => {
|
|
63
|
+
onFiltersChange(args);
|
|
64
|
+
setActiveFilters(args);
|
|
65
|
+
}}
|
|
66
|
+
/>
|
|
69
67
|
);
|
|
70
68
|
|
|
71
69
|
return {
|
|
72
70
|
Filters: FilterComponent,
|
|
73
71
|
activeFilters,
|
|
74
|
-
|
|
75
|
-
toggleFiltersVisible: toggleExpanded,
|
|
76
|
-
collapseFilters: collapse,
|
|
72
|
+
collapseFilters,
|
|
77
73
|
};
|
|
78
74
|
};
|
|
@@ -6,7 +6,7 @@ import { Button, ButtonContext } from '../Buttons';
|
|
|
6
6
|
import { Select } from '../FormElements';
|
|
7
7
|
import type { SelectOption } from '../FormElements/Select/Select';
|
|
8
8
|
import { IconName } from '../Icons';
|
|
9
|
-
import classes from './FieldSelection.scss';
|
|
9
|
+
import classes from './FieldSelection.module.scss';
|
|
10
10
|
|
|
11
11
|
interface FieldSelectionProps {
|
|
12
12
|
name?: string;
|
|
@@ -17,7 +17,7 @@ import { NumericTextFilter } from '../SelectionTypes/NumericTextFilter/NumericTe
|
|
|
17
17
|
import { OptionsFilter } from '../SelectionTypes/OptionsFilter/OptionsFilter';
|
|
18
18
|
import { SearcheableOptionsFilter } from '../SelectionTypes/SearcheableOptionsFilter/SearcheableOptionsFilter';
|
|
19
19
|
import { renderSearcheableOptionsFilterValue } from '../SelectionTypes/SearcheableOptionsFilter/helpers';
|
|
20
|
-
import classes from './Filter.scss';
|
|
20
|
+
import classes from './Filter.module.scss';
|
|
21
21
|
|
|
22
22
|
export interface FilterProps<T extends Data> {
|
|
23
23
|
/** Focus on the element when the filter is opened. (default: true) */
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
@import '../../styles/common.scss';
|
|
2
|
+
|
|
3
|
+
.container {
|
|
4
|
+
@include boxSizing;
|
|
5
|
+
|
|
6
|
+
height: 100%;
|
|
7
|
+
width: $filter-width;
|
|
8
|
+
|
|
9
|
+
display: grid;
|
|
10
|
+
grid-template-columns: 1fr;
|
|
11
|
+
grid-auto-rows: min-content;
|
|
12
|
+
overflow-x: hidden;
|
|
13
|
+
overflow-y: auto;
|
|
14
|
+
gap: 5px;
|
|
15
|
+
padding: 5px;
|
|
16
|
+
|
|
17
|
+
transition: width 250ms cubic-bezier(0.4, 0, 0.2, 1);
|
|
18
|
+
|
|
19
|
+
background-color: var(
|
|
20
|
+
--filter-controller-background-color,
|
|
21
|
+
$filter-controller-background-color
|
|
22
|
+
);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.header {
|
|
26
|
+
display: grid;
|
|
27
|
+
grid-template-columns: auto 1fr auto;
|
|
28
|
+
align-items: center;
|
|
29
|
+
|
|
30
|
+
background-color: color-mix(
|
|
31
|
+
in srgb,
|
|
32
|
+
var(--filter-background-color, white) 50%,
|
|
33
|
+
transparent
|
|
34
|
+
);
|
|
35
|
+
|
|
36
|
+
.headerButton {
|
|
37
|
+
width: 40px;
|
|
38
|
+
height: 40px;
|
|
39
|
+
|
|
40
|
+
svg {
|
|
41
|
+
height: 100%;
|
|
42
|
+
* {
|
|
43
|
+
stroke: var(--mosaic-secondary);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.count {
|
|
49
|
+
text-align: left;
|
|
50
|
+
font-weight: bold;
|
|
51
|
+
white-space: nowrap;
|
|
52
|
+
color: var(--mosaic-neutral-1);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
.collapsed {
|
|
57
|
+
width: 50px; // 40px button + container padding (5px each side, border-box)
|
|
58
|
+
overflow-y: hidden;
|
|
59
|
+
}
|
|
@@ -1,14 +1,22 @@
|
|
|
1
1
|
import clsx from 'clsx';
|
|
2
2
|
import React, {
|
|
3
|
+
type ForwardedRef,
|
|
4
|
+
forwardRef,
|
|
3
5
|
type PropsWithChildren,
|
|
6
|
+
useCallback,
|
|
4
7
|
useEffect,
|
|
8
|
+
useImperativeHandle,
|
|
5
9
|
useRef,
|
|
6
10
|
useState,
|
|
7
11
|
} from 'react';
|
|
12
|
+
import { useExpand } from '../../hooks';
|
|
8
13
|
import type { Data } from '../../types/data';
|
|
14
|
+
import { Badge } from '../Badge';
|
|
15
|
+
import { Button, ButtonContext } from '../Buttons';
|
|
16
|
+
import { IconName } from '../Icons';
|
|
9
17
|
import { Filter } from './Filter/Filter';
|
|
10
18
|
import type { FilterType, FilterValue, FilterValues } from './Filters.model';
|
|
11
|
-
import classes from './Filters.scss';
|
|
19
|
+
import classes from './Filters.module.scss';
|
|
12
20
|
|
|
13
21
|
export interface FiltersProps<T extends Data> {
|
|
14
22
|
options?: FilterType<T>[];
|
|
@@ -17,6 +25,19 @@ export interface FiltersProps<T extends Data> {
|
|
|
17
25
|
className?: string;
|
|
18
26
|
}
|
|
19
27
|
|
|
28
|
+
/**
|
|
29
|
+
* Imperative handle exposed to consumers of the {@link Filters} component
|
|
30
|
+
* through a ref, allowing them to control the component programmatically.
|
|
31
|
+
*/
|
|
32
|
+
export interface FiltersHandle {
|
|
33
|
+
/** Collapses the currently expanded filter, if any. */
|
|
34
|
+
collapse: () => void;
|
|
35
|
+
/** Toggles the expanded state of the filter. */
|
|
36
|
+
toggleExpanded: () => void;
|
|
37
|
+
/** Returns whether any filter is currently expanded. */
|
|
38
|
+
isExpanded: boolean;
|
|
39
|
+
}
|
|
40
|
+
|
|
20
41
|
type CompositeFilters<T extends Data> = {
|
|
21
42
|
[K in keyof T]?: (FilterType<T> & { index: number })[];
|
|
22
43
|
};
|
|
@@ -31,18 +52,33 @@ type CompositeFilters<T extends Data> = {
|
|
|
31
52
|
* @example
|
|
32
53
|
* <Filter filters={[freeTextFilter, optionsFilter, customFilter]} onFiltersChange={callBackFn} />
|
|
33
54
|
*/
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
55
|
+
const FiltersComponent = <T extends Data>(
|
|
56
|
+
{
|
|
57
|
+
defaultValues: defaultFilters = {},
|
|
58
|
+
options,
|
|
59
|
+
onFiltersChange,
|
|
60
|
+
className = '',
|
|
61
|
+
}: PropsWithChildren<FiltersProps<T>>,
|
|
62
|
+
ref: ForwardedRef<FiltersHandle>,
|
|
63
|
+
): JSX.Element | null => {
|
|
64
|
+
const { collapse, toggleExpanded, isExpanded } = useExpand(true);
|
|
40
65
|
const activeFilters = useRef<FilterValues<T>>(defaultFilters);
|
|
41
66
|
const [compositeFilters, setCompositeFilters] = useState<CompositeFilters<T>>(
|
|
42
67
|
{},
|
|
43
68
|
);
|
|
44
69
|
const [activeFilterIndex, setActiveFilterIndex] = useState<number>(-1);
|
|
45
70
|
|
|
71
|
+
// Expose imperative controls to the component rendering <Filters />.
|
|
72
|
+
useImperativeHandle(
|
|
73
|
+
ref,
|
|
74
|
+
() => ({
|
|
75
|
+
collapse,
|
|
76
|
+
toggleExpanded,
|
|
77
|
+
isExpanded,
|
|
78
|
+
}),
|
|
79
|
+
[collapse, toggleExpanded, isExpanded],
|
|
80
|
+
);
|
|
81
|
+
|
|
46
82
|
useEffect(() => {
|
|
47
83
|
const compositeFiltersUpdate: CompositeFilters<T> = {};
|
|
48
84
|
|
|
@@ -119,6 +155,13 @@ export const Filters = <T extends Data>({
|
|
|
119
155
|
setActiveFilterIndex(idx);
|
|
120
156
|
};
|
|
121
157
|
|
|
158
|
+
// Reset all active filters and emit the empty set. `hasValue` in each Filter is
|
|
159
|
+
// derived from its `value`, so re-rendering with empty values hides every chip.
|
|
160
|
+
const clearAllFilters = useCallback(() => {
|
|
161
|
+
activeFilters.current = {};
|
|
162
|
+
onFiltersChange?.({});
|
|
163
|
+
}, [onFiltersChange]);
|
|
164
|
+
|
|
122
165
|
const renderFilter = (filter: FilterType<T>, index: number): JSX.Element => {
|
|
123
166
|
let value = activeFilters.current[filter.property];
|
|
124
167
|
if (Object.keys(compositeFilters).indexOf(String(filter.property)) > -1) {
|
|
@@ -149,18 +192,67 @@ export const Filters = <T extends Data>({
|
|
|
149
192
|
);
|
|
150
193
|
};
|
|
151
194
|
|
|
195
|
+
const filterCount = Object.keys(activeFilters.current).length;
|
|
196
|
+
|
|
197
|
+
// Nothing to filter by - don't render the filter panel at all.
|
|
198
|
+
if (!options?.length) {
|
|
199
|
+
return null;
|
|
200
|
+
}
|
|
201
|
+
|
|
152
202
|
return (
|
|
153
203
|
<div
|
|
154
204
|
className={clsx(
|
|
155
|
-
|
|
205
|
+
classes.container,
|
|
206
|
+
{ [classes.collapsed]: !isExpanded },
|
|
156
207
|
'filter-container',
|
|
157
208
|
className,
|
|
158
209
|
)}
|
|
159
210
|
data-test-id="filters"
|
|
160
211
|
>
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
212
|
+
<div className={classes.header}>
|
|
213
|
+
<Badge
|
|
214
|
+
content={!isExpanded && filterCount > 0 ? filterCount : undefined}
|
|
215
|
+
position="bottom-right"
|
|
216
|
+
overlap={false}
|
|
217
|
+
dataTestId="filters-count-badge"
|
|
218
|
+
max={9}
|
|
219
|
+
>
|
|
220
|
+
<Button
|
|
221
|
+
icon={IconName.Filters}
|
|
222
|
+
className={classes.headerButton}
|
|
223
|
+
buttonContext={ButtonContext.None}
|
|
224
|
+
onButtonClicked={toggleExpanded}
|
|
225
|
+
dataTestId="filters-toggle"
|
|
226
|
+
/>
|
|
227
|
+
</Badge>
|
|
228
|
+
{isExpanded && (
|
|
229
|
+
<>
|
|
230
|
+
<span className={classes.count} data-test-id="filters-count">
|
|
231
|
+
{filterCount > 0 ? `Filters (${filterCount})` : 'Filters'}
|
|
232
|
+
</span>
|
|
233
|
+
{filterCount > 0 && (
|
|
234
|
+
<Button
|
|
235
|
+
icon={IconName.RemoveAllFilters}
|
|
236
|
+
className={classes.headerButton}
|
|
237
|
+
buttonContext={ButtonContext.None}
|
|
238
|
+
onButtonClicked={clearAllFilters}
|
|
239
|
+
dataTestId="filters-clear-all"
|
|
240
|
+
/>
|
|
241
|
+
)}
|
|
242
|
+
</>
|
|
243
|
+
)}
|
|
244
|
+
</div>
|
|
245
|
+
{isExpanded &&
|
|
246
|
+
options?.map((filter: FilterType<T>, index: number) =>
|
|
247
|
+
renderFilter(filter, index),
|
|
248
|
+
)}
|
|
164
249
|
</div>
|
|
165
250
|
);
|
|
166
251
|
};
|
|
252
|
+
|
|
253
|
+
// `forwardRef` does not preserve the generic `T`, so the wrapped component is
|
|
254
|
+
// re-typed to keep the generic call signature while accepting a `ref`.
|
|
255
|
+
export const Filters = forwardRef(FiltersComponent) as <T extends Data>(
|
|
256
|
+
props: PropsWithChildren<FiltersProps<T>> &
|
|
257
|
+
React.RefAttributes<FiltersHandle>,
|
|
258
|
+
) => JSX.Element | null;
|
|
@@ -15,7 +15,7 @@ import { DateTimePicker } from '../../../DateTime/DateTimePicker';
|
|
|
15
15
|
import { IconName } from '../../../Icons';
|
|
16
16
|
import { formatDate, formatDateTime } from '../../../Utils/Transformers';
|
|
17
17
|
import type { FilterValidationResult, FilterValue } from '../../Filters.model';
|
|
18
|
-
import classes from './DateTimeFilter.scss';
|
|
18
|
+
import classes from './DateTimeFilter.module.scss';
|
|
19
19
|
|
|
20
20
|
export interface DateTimeFilterProps {
|
|
21
21
|
value?: string;
|
|
@@ -2,7 +2,7 @@ import clsx from 'clsx';
|
|
|
2
2
|
import React, { type KeyboardEventHandler, useRef, useState } from 'react';
|
|
3
3
|
import { noop } from '../../../../helpers/utils';
|
|
4
4
|
import type { FilterValidationResult, FilterValue } from '../../Filters.model';
|
|
5
|
-
import classes from './FreeTextFilter.scss';
|
|
5
|
+
import classes from './FreeTextFilter.module.scss';
|
|
6
6
|
|
|
7
7
|
export interface FreeTextFilterProps {
|
|
8
8
|
value?: FilterValue;
|
|
@@ -4,7 +4,7 @@ import { ButtonContext } from '../../../Buttons';
|
|
|
4
4
|
import { TextButton } from '../../../Buttons/TextButton/TextButton';
|
|
5
5
|
import { Checkbox } from '../../../FormElements';
|
|
6
6
|
import type { Option } from '../../Filters.model';
|
|
7
|
-
import classes from './MultiOptionFilter.scss';
|
|
7
|
+
import classes from './MultiOptionFilter.module.scss';
|
|
8
8
|
|
|
9
9
|
export interface MultiOptionFilterProps {
|
|
10
10
|
value?: string;
|
|
@@ -2,7 +2,7 @@ import clsx from 'clsx';
|
|
|
2
2
|
import React, { type KeyboardEventHandler, useState } from 'react';
|
|
3
3
|
import { noop } from '../../../../helpers/utils';
|
|
4
4
|
import type { FilterValidationResult, FilterValue } from '../../Filters.model';
|
|
5
|
-
import classes from './NumericTextFilter.scss';
|
|
5
|
+
import classes from './NumericTextFilter.module.scss';
|
|
6
6
|
|
|
7
7
|
export interface NumericTextFilterProps {
|
|
8
8
|
value?: string | number;
|
package/src/components/Filters/SelectionTypes/SearcheableOptionsFilter/SearcheableOptionsFilter.tsx
CHANGED
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
type OptionFilterProps,
|
|
12
12
|
OptionsFilter,
|
|
13
13
|
} from '../OptionsFilter/OptionsFilter';
|
|
14
|
-
import classes from './SearcheableOptionsFilter.scss';
|
|
14
|
+
import classes from './SearcheableOptionsFilter.module.scss';
|
|
15
15
|
|
|
16
16
|
interface SearcheableOptionFilterProps
|
|
17
17
|
extends Omit<OptionFilterProps, 'options'> {
|
|
@@ -2,7 +2,7 @@ import clsx from 'clsx';
|
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import type { BaseFormElement } from '../Form.models';
|
|
4
4
|
import { FormElementContainer } from '../FormElementContainer';
|
|
5
|
-
import classes from './BooleanViewField.scss';
|
|
5
|
+
import classes from './BooleanViewField.module.scss';
|
|
6
6
|
|
|
7
7
|
export interface BooleanViewFieldProps extends BaseFormElement {
|
|
8
8
|
/** Value to be displayed */
|
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
} from '../../ConfirmDialog';
|
|
8
8
|
import type { BaseFormControl, BaseInputEvents } from '../Form.models';
|
|
9
9
|
import { FormElementContainer } from '../FormElementContainer';
|
|
10
|
-
import classes from './Checkbox.scss';
|
|
10
|
+
import classes from './Checkbox.module.scss';
|
|
11
11
|
|
|
12
12
|
export interface CheckboxProps
|
|
13
13
|
extends BaseFormControl,
|
|
@@ -13,7 +13,7 @@ import { Button, ButtonContext } from '../../Buttons';
|
|
|
13
13
|
import { IconName } from '../../Icons';
|
|
14
14
|
import type { BaseFormControl, BaseInputEvents } from '../Form.models';
|
|
15
15
|
import { FormElementContainer } from '../FormElementContainer';
|
|
16
|
-
import classes from './CustomTags.scss';
|
|
16
|
+
import classes from './CustomTags.module.scss';
|
|
17
17
|
|
|
18
18
|
interface SuggestionsHook {
|
|
19
19
|
readonly suggestions: string[];
|
|
@@ -11,7 +11,7 @@ import { IconName } from '../../Icons';
|
|
|
11
11
|
import { formatDate, formatDateTime } from '../../Utils';
|
|
12
12
|
import type { BaseFormControl } from '../Form.models';
|
|
13
13
|
import { FormElementContainer } from '../FormElementContainer';
|
|
14
|
-
import classes from './DateTimeText.scss';
|
|
14
|
+
import classes from './DateTimeText.module.scss';
|
|
15
15
|
|
|
16
16
|
export interface DateTimeTextProps extends BaseFormControl {
|
|
17
17
|
/** Current value the form control has */
|
|
@@ -5,7 +5,7 @@ import { IconName, Icons } from '../../Icons';
|
|
|
5
5
|
import { ProgressBar } from '../../ProgressBar';
|
|
6
6
|
import type { BaseFormControl } from '../Form.models';
|
|
7
7
|
import { FormElementContainer } from '../FormElementContainer';
|
|
8
|
-
import classes from './FileUploadControl.scss';
|
|
8
|
+
import classes from './FileUploadControl.module.scss';
|
|
9
9
|
|
|
10
10
|
export interface FileUpload {
|
|
11
11
|
file: File;
|
|
@@ -2,7 +2,7 @@ import clsx from 'clsx';
|
|
|
2
2
|
import React, { type CSSProperties } from 'react';
|
|
3
3
|
import { InfoTooltip } from '../../InfoTooltip';
|
|
4
4
|
import type { BaseFormElement } from '../Form.models';
|
|
5
|
-
import classes from './FormElementContainer.scss';
|
|
5
|
+
import classes from './FormElementContainer.module.scss';
|
|
6
6
|
|
|
7
7
|
export type FormElementContainerProps = BaseFormElement & {
|
|
8
8
|
/** Optional error message to display */
|
|
@@ -4,7 +4,7 @@ import { useExpand } from '../../../hooks/useExpand/useExpand';
|
|
|
4
4
|
import { Button, ButtonContext } from '../../Buttons';
|
|
5
5
|
import { FormGrid } from '../../FormStation/FormGrid/FormGrid';
|
|
6
6
|
import { IconName } from '../../Icons';
|
|
7
|
-
import classes from './FormGroup.scss';
|
|
7
|
+
import classes from './FormGroup.module.scss';
|
|
8
8
|
|
|
9
9
|
export interface FormGroupProps {
|
|
10
10
|
className?: string;
|
|
@@ -2,7 +2,7 @@ import clsx from 'clsx';
|
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import type { BaseFormElement } from '../Form.models';
|
|
4
4
|
import { FormElementContainer } from '../FormElementContainer';
|
|
5
|
-
import classes from './LinkField.scss';
|
|
5
|
+
import classes from './LinkField.module.scss';
|
|
6
6
|
|
|
7
7
|
export interface LinkFieldProps extends BaseFormElement {
|
|
8
8
|
/** Value to be displayed */
|