@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.
Files changed (245) hide show
  1. package/dist/cjs/components/Badge/Badge.d.ts +13 -0
  2. package/dist/cjs/components/Badge/Badge.d.ts.map +1 -0
  3. package/dist/cjs/components/Badge/Badge.model.d.ts +42 -0
  4. package/dist/cjs/components/Badge/Badge.model.d.ts.map +1 -0
  5. package/dist/cjs/components/Badge/index.d.ts +3 -0
  6. package/dist/cjs/components/Badge/index.d.ts.map +1 -0
  7. package/dist/cjs/components/Explorer/Explorer.d.ts.map +1 -1
  8. package/dist/cjs/components/Explorer/helpers/useActions.d.ts +1 -4
  9. package/dist/cjs/components/Explorer/helpers/useActions.d.ts.map +1 -1
  10. package/dist/cjs/components/Explorer/helpers/useFilters.d.ts +0 -2
  11. package/dist/cjs/components/Explorer/helpers/useFilters.d.ts.map +1 -1
  12. package/dist/cjs/components/Filters/Filters.d.ts +12 -10
  13. package/dist/cjs/components/Filters/Filters.d.ts.map +1 -1
  14. package/dist/cjs/components/Filters/index.d.ts +1 -0
  15. package/dist/cjs/components/Filters/index.d.ts.map +1 -1
  16. package/dist/cjs/components/Icons/Icons.d.ts.map +1 -1
  17. package/dist/cjs/components/Icons/Icons.models.d.ts +17 -16
  18. package/dist/cjs/components/Icons/Icons.models.d.ts.map +1 -1
  19. package/dist/cjs/components/index.d.ts +1 -0
  20. package/dist/cjs/components/index.d.ts.map +1 -1
  21. package/dist/cjs/index.js +4 -4
  22. package/dist/cjs/index.js.map +1 -1
  23. package/dist/esm/components/Badge/Badge.d.ts +13 -0
  24. package/dist/esm/components/Badge/Badge.d.ts.map +1 -0
  25. package/dist/esm/components/Badge/Badge.model.d.ts +42 -0
  26. package/dist/esm/components/Badge/Badge.model.d.ts.map +1 -0
  27. package/dist/esm/components/Badge/index.d.ts +3 -0
  28. package/dist/esm/components/Badge/index.d.ts.map +1 -0
  29. package/dist/esm/components/Explorer/Explorer.d.ts.map +1 -1
  30. package/dist/esm/components/Explorer/helpers/useActions.d.ts +1 -4
  31. package/dist/esm/components/Explorer/helpers/useActions.d.ts.map +1 -1
  32. package/dist/esm/components/Explorer/helpers/useFilters.d.ts +0 -2
  33. package/dist/esm/components/Explorer/helpers/useFilters.d.ts.map +1 -1
  34. package/dist/esm/components/Filters/Filters.d.ts +12 -10
  35. package/dist/esm/components/Filters/Filters.d.ts.map +1 -1
  36. package/dist/esm/components/Filters/index.d.ts +1 -0
  37. package/dist/esm/components/Filters/index.d.ts.map +1 -1
  38. package/dist/esm/components/Icons/Icons.d.ts.map +1 -1
  39. package/dist/esm/components/Icons/Icons.models.d.ts +17 -16
  40. package/dist/esm/components/Icons/Icons.models.d.ts.map +1 -1
  41. package/dist/esm/components/index.d.ts +1 -0
  42. package/dist/esm/components/index.d.ts.map +1 -1
  43. package/dist/esm/index.js +4 -4
  44. package/dist/esm/index.js.map +1 -1
  45. package/package.json +5 -10
  46. package/src/components/Accordion/Accordion.tsx +1 -1
  47. package/src/components/Accordion/AccordionItem/AccordionItem.tsx +1 -1
  48. package/src/components/Actions/Action/Action.tsx +1 -1
  49. package/src/components/Actions/Actions.tsx +1 -1
  50. package/src/components/Badge/Badge.model.ts +46 -0
  51. package/src/components/Badge/Badge.scss +62 -0
  52. package/src/components/Badge/Badge.spec.tsx +40 -0
  53. package/src/components/Badge/Badge.stories.tsx +43 -0
  54. package/src/components/Badge/Badge.tsx +59 -0
  55. package/src/components/Badge/index.ts +2 -0
  56. package/src/components/Buttons/Button/Button.tsx +1 -1
  57. package/src/components/Buttons/CompositeButton/CompositeButton.tsx +1 -1
  58. package/src/components/Buttons/TextButton/TextButton.tsx +1 -1
  59. package/src/components/ConfirmDialog/ConfirmDialog.stories.tsx +1 -1
  60. package/src/components/ConfirmDialog/ConfirmDialog.tsx +1 -1
  61. package/src/components/DateTime/DatePicker/DatePicker.tsx +1 -1
  62. package/src/components/DateTime/DateTimePicker.tsx +1 -1
  63. package/src/components/DateTime/TimePicker/ScrollColumn/ScrollColumn.tsx +1 -1
  64. package/src/components/DateTime/TimePicker/TimePicker.tsx +1 -1
  65. package/src/components/DynamicDataList/DynamicDataList.tsx +1 -1
  66. package/src/components/DynamicDataList/DynamicListDataEntry/DynamicListDataEntry.tsx +1 -1
  67. package/src/components/DynamicDataList/DynamicListDataEntry/Renderers/createInputRenderer/createInputRenderer.tsx +1 -1
  68. package/src/components/DynamicDataList/DynamicListDataEntry/Renderers/createSelectRenderer/createSelectRenderer.tsx +1 -1
  69. package/src/components/DynamicDataList/DynamicListHeader/DynamicListHeader.tsx +1 -1
  70. package/src/components/DynamicDataList/DynamicListRow/DynamicListRow.tsx +1 -1
  71. package/src/components/EmptyStation/EmptyStation.tsx +1 -1
  72. package/src/components/Explorer/BulkEdit/helpers/FieldWrapper.tsx +1 -1
  73. package/src/components/Explorer/Explorer.tsx +41 -56
  74. package/src/components/Explorer/helpers/useActions.ts +0 -29
  75. package/src/components/Explorer/helpers/useFilters.spec.tsx +9 -25
  76. package/src/components/Explorer/helpers/useFilters.tsx +17 -21
  77. package/src/components/FieldSelection/FieldSelection.tsx +1 -1
  78. package/src/components/Filters/Filter/Filter.tsx +1 -1
  79. package/src/components/Filters/Filters.module.scss +59 -0
  80. package/src/components/Filters/Filters.tsx +103 -11
  81. package/src/components/Filters/SelectionTypes/DateTimeFilter/{DateTimeFilter.scss → DateTimeFilter.module.scss} +1 -1
  82. package/src/components/Filters/SelectionTypes/DateTimeFilter/DateTimeFilter.tsx +1 -1
  83. package/src/components/Filters/SelectionTypes/FreeTextFilter/FreeTextFilter.tsx +1 -1
  84. package/src/components/Filters/SelectionTypes/MultiOptionFilter/MultiOptionFilter.tsx +1 -1
  85. package/src/components/Filters/SelectionTypes/NumericTextFilter/NumericTextFilter.tsx +1 -1
  86. package/src/components/Filters/SelectionTypes/OptionsFilter/OptionsFilter.tsx +1 -1
  87. package/src/components/Filters/SelectionTypes/SearcheableOptionsFilter/SearcheableOptionsFilter.tsx +1 -1
  88. package/src/components/Filters/index.ts +1 -0
  89. package/src/components/FormElements/BooleanView/BooleanViewField.tsx +1 -1
  90. package/src/components/FormElements/Checkbox/Checkbox.tsx +1 -1
  91. package/src/components/FormElements/CustomTags/CustomTags.tsx +1 -1
  92. package/src/components/FormElements/DateTimeField/DateTimeText.tsx +1 -1
  93. package/src/components/FormElements/Divider/Divider.tsx +1 -1
  94. package/src/components/FormElements/FileUploadControl/FileUploadControl.tsx +1 -1
  95. package/src/components/FormElements/FormElementContainer/FormElementContainer.tsx +1 -1
  96. package/src/components/FormElements/FormGroup/FormGroup.stories.tsx +1 -1
  97. package/src/components/FormElements/FormGroup/FormGroup.tsx +1 -1
  98. package/src/components/FormElements/FormGroupTitle/FormGroupTitle.tsx +1 -1
  99. package/src/components/FormElements/FormikDebug/FormikDebug.tsx +1 -1
  100. package/src/components/FormElements/Link/LinkField.tsx +1 -1
  101. package/src/components/FormElements/Radio/Radio.tsx +1 -1
  102. package/src/components/FormElements/ReadOnly/ReadOnlyField.tsx +1 -1
  103. package/src/components/FormElements/ReadOnlyText/ReadOnlyTextField.tsx +1 -1
  104. package/src/components/FormElements/Select/Select.tsx +1 -1
  105. package/src/components/FormElements/SingleLineText/SingleLineText.tsx +1 -1
  106. package/src/components/FormElements/Tags/Tags.tsx +1 -1
  107. package/src/components/FormElements/TextArea/TextArea.tsx +1 -1
  108. package/src/components/FormElements/ToggleButton/ToggleButton.tsx +1 -1
  109. package/src/components/FormStation/FormGrid/FormGrid.tsx +1 -1
  110. package/src/components/FormStation/FormStation.tsx +1 -1
  111. package/src/components/FormStation/FormStationContentWrapper/FormStationContentWrapper.tsx +1 -1
  112. package/src/components/Hub/Hub.tsx +1 -1
  113. package/src/components/Hub/Tile/Tile.tsx +1 -1
  114. package/src/components/Icons/Icons.models.ts +1 -0
  115. package/src/components/Icons/Icons.stories.tsx +1 -1
  116. package/src/components/Icons/Icons.tsx +11 -1
  117. package/src/components/InfoPanel/InfoImage/InfoImage.tsx +1 -1
  118. package/src/components/InfoPanel/InfoPanel.tsx +1 -1
  119. package/src/components/InfoPanel/Paragraph/Paragraph.tsx +1 -1
  120. package/src/components/InfoPanel/Section/Section.tsx +1 -1
  121. package/src/components/InfoTooltip/InfoTooltip.tsx +1 -1
  122. package/src/components/InlineMenu/InlineMenu.stories.tsx +1 -1
  123. package/src/components/InlineMenu/InlineMenu.tsx +2 -2
  124. package/src/components/LandingPageHeader/LandingPageHeader.tsx +1 -1
  125. package/src/components/LandingPageTiles/LandingPageTiles.tsx +1 -1
  126. package/src/components/LandingPageTiles/TileLarge/TileLarge.tsx +1 -1
  127. package/src/components/LandingPageTiles/TileSmall/TileSmall.tsx +1 -1
  128. package/src/components/List/List.tsx +1 -1
  129. package/src/components/List/ListCheckBox/ListCheckBox.tsx +1 -1
  130. package/src/components/List/ListHeader/ColumnLabel/ColumnLabel.tsx +1 -1
  131. package/src/components/List/ListHeader/ListHeader.tsx +1 -1
  132. package/src/components/List/ListRow/ListRow.tsx +1 -1
  133. package/src/components/List/ListRow/ListRowCell/ListRowCell.tsx +1 -1
  134. package/src/components/List/ListRow/ListRowLoader.tsx +1 -1
  135. package/src/components/List/ListRow/Renderers/BooleanDotRenderer/BooleanDotRenderer.tsx +1 -1
  136. package/src/components/List/ListRow/Renderers/ExternalLinkRenderer/ExternalLinkRenderer.tsx +1 -1
  137. package/src/components/List/ListRow/Renderers/StateRenderer/StateRenderer.tsx +1 -1
  138. package/src/components/List/ListRow/Renderers/TagsRenderer/TagsRenderer.tsx +1 -1
  139. package/src/components/Loaders/ImageLoader/ImageLoader.tsx +1 -1
  140. package/src/components/Loaders/Loader/Loader.tsx +1 -1
  141. package/src/components/Message/Message.tsx +1 -1
  142. package/src/components/MessageBar/MessageBar.tsx +1 -1
  143. package/src/components/Modal/Modal.stories.tsx +1 -1
  144. package/src/components/Modal/Modal.tsx +1 -1
  145. package/src/components/PageHeader/PageHeader.tsx +1 -1
  146. package/src/components/PageHeader/PageHeaderAction/PageHeaderAction.tsx +1 -1
  147. package/src/components/PageHeader/PageHeaderActionsGroup/PageHeaderActionsGroup.tsx +1 -1
  148. package/src/components/ProgressBar/ProgressBar.tsx +1 -1
  149. package/src/components/Tabs/Tab/CustomTab.tsx +1 -1
  150. package/src/components/Tabs/TabList/CustomTabList.tsx +1 -1
  151. package/src/components/Tabs/TabList/ScrollContainer/ScrollContainer.tsx +1 -1
  152. package/src/components/Tabs/TabPanel/CustomTabPanel.tsx +1 -1
  153. package/src/components/index.ts +1 -0
  154. package/src/docs/Intro.mdx +1 -1
  155. package/src/hooks/useResize/ResizeIndicator.tsx +1 -1
  156. package/src/components/Filters/Filters.scss +0 -20
  157. /package/src/components/Accordion/{Accordion.scss → Accordion.module.scss} +0 -0
  158. /package/src/components/Accordion/AccordionItem/{AccordionItem.scss → AccordionItem.module.scss} +0 -0
  159. /package/src/components/Actions/Action/{Action.scss → Action.module.scss} +0 -0
  160. /package/src/components/Actions/{Actions.scss → Actions.module.scss} +0 -0
  161. /package/src/components/Buttons/Button/{Button.scss → Button.module.scss} +0 -0
  162. /package/src/components/Buttons/CompositeButton/{CompositeButton.scss → CompositeButton.module.scss} +0 -0
  163. /package/src/components/Buttons/TextButton/{TextButton.scss → TextButton.module.scss} +0 -0
  164. /package/src/components/ConfirmDialog/{ConfirmDialog.scss → ConfirmDialog.module.scss} +0 -0
  165. /package/src/components/DateTime/DatePicker/{Calendar.scss → Calendar.module.scss} +0 -0
  166. /package/src/components/DateTime/DatePicker/{DatePicker.scss → DatePicker.module.scss} +0 -0
  167. /package/src/components/DateTime/{DateTimePicker.scss → DateTimePicker.module.scss} +0 -0
  168. /package/src/components/DateTime/TimePicker/ScrollColumn/{ScrollColumn.scss → ScrollColumn.module.scss} +0 -0
  169. /package/src/components/DateTime/TimePicker/{TimePicker.scss → TimePicker.module.scss} +0 -0
  170. /package/src/components/DynamicDataList/{DynamicDataList.scss → DynamicDataList.module.scss} +0 -0
  171. /package/src/components/DynamicDataList/DynamicListDataEntry/{DynamicListDataEntry.scss → DynamicListDataEntry.module.scss} +0 -0
  172. /package/src/components/DynamicDataList/DynamicListDataEntry/Renderers/createInputRenderer/{createInputRenderer.scss → createInputRenderer.module.scss} +0 -0
  173. /package/src/components/DynamicDataList/DynamicListDataEntry/Renderers/createSelectRenderer/{createSelectRenderer.scss → createSelectRenderer.module.scss} +0 -0
  174. /package/src/components/DynamicDataList/DynamicListHeader/{DynamicListHeader.scss → DynamicListHeader.module.scss} +0 -0
  175. /package/src/components/DynamicDataList/DynamicListRow/{DynamicListRow.scss → DynamicListRow.module.scss} +0 -0
  176. /package/src/components/EmptyStation/{EmptyStation.scss → EmptyStation.module.scss} +0 -0
  177. /package/src/components/Explorer/BulkEdit/helpers/{FieldWrapper.scss → FieldWrapper.module.scss} +0 -0
  178. /package/src/components/Explorer/{Explorer.scss → Explorer.module.scss} +0 -0
  179. /package/src/components/FieldSelection/{FieldSelection.scss → FieldSelection.module.scss} +0 -0
  180. /package/src/components/Filters/Filter/{Filter.scss → Filter.module.scss} +0 -0
  181. /package/src/components/Filters/SelectionTypes/FreeTextFilter/{FreeTextFilter.scss → FreeTextFilter.module.scss} +0 -0
  182. /package/src/components/Filters/SelectionTypes/MultiOptionFilter/{MultiOptionFilter.scss → MultiOptionFilter.module.scss} +0 -0
  183. /package/src/components/Filters/SelectionTypes/NumericTextFilter/{NumericTextFilter.scss → NumericTextFilter.module.scss} +0 -0
  184. /package/src/components/Filters/SelectionTypes/OptionsFilter/{OptionsFilter.scss → OptionsFilter.module.scss} +0 -0
  185. /package/src/components/Filters/SelectionTypes/SearcheableOptionsFilter/{SearcheableOptionsFilter.scss → SearcheableOptionsFilter.module.scss} +0 -0
  186. /package/src/components/FormElements/BooleanView/{BooleanViewField.scss → BooleanViewField.module.scss} +0 -0
  187. /package/src/components/FormElements/Checkbox/{Checkbox.scss → Checkbox.module.scss} +0 -0
  188. /package/src/components/FormElements/CustomTags/{CustomTags.scss → CustomTags.module.scss} +0 -0
  189. /package/src/components/FormElements/DateTimeField/{DateTimeText.scss → DateTimeText.module.scss} +0 -0
  190. /package/src/components/FormElements/Divider/{Divider.scss → Divider.module.scss} +0 -0
  191. /package/src/components/FormElements/FileUploadControl/{FileUploadControl.scss → FileUploadControl.module.scss} +0 -0
  192. /package/src/components/FormElements/FormElementContainer/{FormElementContainer.scss → FormElementContainer.module.scss} +0 -0
  193. /package/src/components/FormElements/FormGroup/{FormGroup.scss → FormGroup.module.scss} +0 -0
  194. /package/src/components/FormElements/FormGroupTitle/{FormGroupTitle.scss → FormGroupTitle.module.scss} +0 -0
  195. /package/src/components/FormElements/FormikDebug/{FormikDebug.scss → FormikDebug.module.scss} +0 -0
  196. /package/src/components/FormElements/Link/{LinkField.scss → LinkField.module.scss} +0 -0
  197. /package/src/components/FormElements/Radio/{Radio.scss → Radio.module.scss} +0 -0
  198. /package/src/components/FormElements/ReadOnly/{ReadOnlyField.scss → ReadOnlyField.module.scss} +0 -0
  199. /package/src/components/FormElements/ReadOnlyText/{ReadOnlyTextField.scss → ReadOnlyTextField.module.scss} +0 -0
  200. /package/src/components/FormElements/Select/{Select.scss → Select.module.scss} +0 -0
  201. /package/src/components/FormElements/SingleLineText/{SingleLineText.scss → SingleLineText.module.scss} +0 -0
  202. /package/src/components/FormElements/Tags/{Tags.scss → Tags.module.scss} +0 -0
  203. /package/src/components/FormElements/TextArea/{TextArea.scss → TextArea.module.scss} +0 -0
  204. /package/src/components/FormElements/ToggleButton/{ToggleButton.scss → ToggleButton.module.scss} +0 -0
  205. /package/src/components/FormStation/FormGrid/{FormGrid.scss → FormGrid.module.scss} +0 -0
  206. /package/src/components/FormStation/{FormStation.scss → FormStation.module.scss} +0 -0
  207. /package/src/components/FormStation/FormStationContentWrapper/{FormStationContentWrapper.scss → FormStationContentWrapper.module.scss} +0 -0
  208. /package/src/components/Hub/{Hub.scss → Hub.module.scss} +0 -0
  209. /package/src/components/Hub/Tile/{Tile.scss → Tile.module.scss} +0 -0
  210. /package/src/components/Icons/{Icons.scss → Icons.module.scss} +0 -0
  211. /package/src/components/InfoPanel/InfoImage/{InfoImage.scss → InfoImage.module.scss} +0 -0
  212. /package/src/components/InfoPanel/{InfoPanel.scss → InfoPanel.module.scss} +0 -0
  213. /package/src/components/InfoPanel/Paragraph/{Paragraph.scss → Paragraph.module.scss} +0 -0
  214. /package/src/components/InfoPanel/Section/{Section.scss → Section.module.scss} +0 -0
  215. /package/src/components/InfoTooltip/{InfoTooltip.scss → InfoTooltip.module.scss} +0 -0
  216. /package/src/components/InlineMenu/{InlineMenu.scss → InlineMenu.module.scss} +0 -0
  217. /package/src/components/LandingPageHeader/{LandingPageHeader.scss → LandingPageHeader.module.scss} +0 -0
  218. /package/src/components/LandingPageTiles/{LandingPageTiles.scss → LandingPageTiles.module.scss} +0 -0
  219. /package/src/components/LandingPageTiles/TileLarge/{TileLarge.scss → TileLarge.module.scss} +0 -0
  220. /package/src/components/LandingPageTiles/TileSmall/{TileSmall.scss → TileSmall.module.scss} +0 -0
  221. /package/src/components/List/{List.scss → List.module.scss} +0 -0
  222. /package/src/components/List/ListCheckBox/{ListCheckBox.scss → ListCheckBox.module.scss} +0 -0
  223. /package/src/components/List/ListHeader/ColumnLabel/{ColumnLabel.scss → ColumnLabel.module.scss} +0 -0
  224. /package/src/components/List/ListHeader/{ListHeader.scss → ListHeader.module.scss} +0 -0
  225. /package/src/components/List/ListRow/{ListRow.scss → ListRow.module.scss} +0 -0
  226. /package/src/components/List/ListRow/ListRowCell/{ListRowCell.scss → ListRowCell.module.scss} +0 -0
  227. /package/src/components/List/ListRow/Renderers/BooleanDotRenderer/{BooleanDotRenderer.scss → BooleanDotRenderer.module.scss} +0 -0
  228. /package/src/components/List/ListRow/Renderers/ExternalLinkRenderer/{ExternalLinkRenderer.scss → ExternalLinkRenderer.module.scss} +0 -0
  229. /package/src/components/List/ListRow/Renderers/StateRenderer/{StateRenderer.scss → StateRenderer.module.scss} +0 -0
  230. /package/src/components/List/ListRow/Renderers/TagsRenderer/{TagsRenderer.scss → TagsRenderer.module.scss} +0 -0
  231. /package/src/components/Loaders/ImageLoader/{ImageLoader.scss → ImageLoader.module.scss} +0 -0
  232. /package/src/components/Loaders/Loader/{Loader.scss → Loader.module.scss} +0 -0
  233. /package/src/components/Message/{Message.scss → Message.module.scss} +0 -0
  234. /package/src/components/MessageBar/{MessageBar.scss → MessageBar.module.scss} +0 -0
  235. /package/src/components/Modal/{Modal.scss → Modal.module.scss} +0 -0
  236. /package/src/components/PageHeader/{PageHeader.scss → PageHeader.module.scss} +0 -0
  237. /package/src/components/PageHeader/PageHeaderAction/{PageHeaderAction.scss → PageHeaderAction.module.scss} +0 -0
  238. /package/src/components/PageHeader/PageHeaderActionsGroup/{PageHeaderActionsGroup.scss → PageHeaderActionsGroup.module.scss} +0 -0
  239. /package/src/components/ProgressBar/{ProgressBar.scss → ProgressBar.module.scss} +0 -0
  240. /package/src/components/Tabs/Tab/{CustomTab.scss → CustomTab.module.scss} +0 -0
  241. /package/src/components/Tabs/TabList/{CustomTabList.scss → CustomTabList.module.scss} +0 -0
  242. /package/src/components/Tabs/TabList/ScrollContainer/{ScrollContainer.scss → ScrollContainer.module.scss} +0 -0
  243. /package/src/components/Tabs/TabPanel/{CustomTabPanel.scss → CustomTabPanel.module.scss} +0 -0
  244. /package/src/docs/{intro.scss → intro.module.scss} +0 -0
  245. /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 toggle filter visibility', () => {
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
- act(() => {
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
- it('should collapse filters', () => {
68
- const { result } = renderHook(() =>
69
- useFilters({
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.children.props.onFiltersChange(newFilters);
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.children.props.onFiltersChange(newFilters);
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.children.props.onFiltersChange(emptyFilters);
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 { isExpanded, toggleExpanded, collapse } = useExpand(true);
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
- {isExpanded && (
59
- <Filters<T>
60
- options={filterOptions}
61
- defaultValues={activeFilters}
62
- onFiltersChange={(args) => {
63
- onFiltersChange(args);
64
- setActiveFilters(args);
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
- filtersVisible: isExpanded,
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
- export const Filters = <T extends Data>({
35
- defaultValues: defaultFilters = {},
36
- options,
37
- onFiltersChange,
38
- className = '',
39
- }: PropsWithChildren<FiltersProps<T>>): JSX.Element => {
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
- { [classes.container]: options },
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
- {options?.map((filter: FilterType<T>, index: number) =>
162
- renderFilter(filter, index),
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;
@@ -1,5 +1,5 @@
1
1
  @import '../../../../styles/common.scss';
2
- @import '../../Filter/Filter.scss';
2
+ @import '../../Filter/Filter.module.scss';
3
3
 
4
4
  .container {
5
5
  display: grid;
@@ -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;
@@ -1,7 +1,7 @@
1
1
  import clsx from 'clsx';
2
2
  import React from 'react';
3
3
  import type { Option } from '../../Filters.model';
4
- import classes from './OptionsFilter.scss';
4
+ import classes from './OptionsFilter.module.scss';
5
5
 
6
6
  export interface OptionFilterProps {
7
7
  value?: string;
@@ -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'> {
@@ -1,3 +1,4 @@
1
1
  export { Filters } from './Filters';
2
+ export type { FiltersHandle, FiltersProps } from './Filters';
2
3
  export * from './Filters.model';
3
4
  export * from './Validators';
@@ -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 */
@@ -1,6 +1,6 @@
1
1
  import clsx from 'clsx';
2
2
  import React from 'react';
3
- import classes from './Divider.scss';
3
+ import classes from './Divider.module.scss';
4
4
 
5
5
  export interface DividerProps {
6
6
  className?: string;
@@ -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 */
@@ -1,5 +1,5 @@
1
1
  import { faker } from '@faker-js/faker';
2
- import { Meta, StoryObj } from '@storybook/react';
2
+ import type { Meta, StoryObj } from '@storybook/react';
3
3
  import { createGroups } from '../../../helpers/storybook';
4
4
  import { FormGroup } from './FormGroup';
5
5
 
@@ -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;
@@ -1,6 +1,6 @@
1
1
  import clsx from 'clsx';
2
2
  import React from 'react';
3
- import classes from './FormGroupTitle.scss';
3
+ import classes from './FormGroupTitle.module.scss';
4
4
 
5
5
  export interface FormGroupTitleProps {
6
6
  className?: string;
@@ -1,6 +1,6 @@
1
1
  import { useFormikContext } from 'formik';
2
2
  import React from 'react';
3
- import classes from './FormikDebug.scss';
3
+ import classes from './FormikDebug.module.scss';
4
4
 
5
5
  export const FormikDebug = (): JSX.Element => {
6
6
  const ctx = useFormikContext();
@@ -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 */