@axinom/mosaic-ui 0.69.0-rc.2 → 0.69.0-rc.21

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 (326) hide show
  1. package/dist/components/Buttons/Button/Button.d.ts +3 -3
  2. package/dist/components/Buttons/Button/Button.d.ts.map +1 -1
  3. package/dist/components/Buttons/Button.model.d.ts +2 -1
  4. package/dist/components/Buttons/Button.model.d.ts.map +1 -1
  5. package/dist/components/ConfirmDialog/ConfirmDialog.d.ts.map +1 -1
  6. package/dist/components/ConfirmDialog/ConfirmDialog.models.d.ts +0 -1
  7. package/dist/components/ConfirmDialog/ConfirmDialog.models.d.ts.map +1 -1
  8. package/dist/components/DateTime/TimePicker/ScrollColumn/ScrollColumn.d.ts +2 -2
  9. package/dist/components/DateTime/TimePicker/ScrollColumn/ScrollColumn.d.ts.map +1 -1
  10. package/dist/components/DynamicDataList/DynamicDataList.d.ts +1 -1
  11. package/dist/components/DynamicDataList/DynamicDataList.d.ts.map +1 -1
  12. package/dist/components/DynamicDataList/DynamicDataList.model.d.ts +0 -1
  13. package/dist/components/DynamicDataList/DynamicDataList.model.d.ts.map +1 -1
  14. package/dist/components/DynamicDataList/DynamicListDataEntry/DynamicListDataEntry.d.ts +2 -2
  15. package/dist/components/DynamicDataList/DynamicListDataEntry/DynamicListDataEntry.d.ts.map +1 -1
  16. package/dist/components/DynamicDataList/DynamicListDataEntry/Renderers/createInputRenderer/createInputRenderer.d.ts +1 -1
  17. package/dist/components/DynamicDataList/DynamicListDataEntry/Renderers/createInputRenderer/createInputRenderer.d.ts.map +1 -1
  18. package/dist/components/DynamicDataList/DynamicListDataEntry/Renderers/createSelectRenderer/createSelectRenderer.d.ts +1 -1
  19. package/dist/components/DynamicDataList/DynamicListDataEntry/Renderers/createSelectRenderer/createSelectRenderer.d.ts.map +1 -1
  20. package/dist/components/DynamicDataList/DynamicListDataEntry/Renderers/renderers.model.d.ts +2 -0
  21. package/dist/components/DynamicDataList/DynamicListDataEntry/Renderers/renderers.model.d.ts.map +1 -1
  22. package/dist/components/DynamicDataList/DynamicListHeader/DynamicListHeader.d.ts +2 -2
  23. package/dist/components/DynamicDataList/DynamicListHeader/DynamicListHeader.d.ts.map +1 -1
  24. package/dist/components/DynamicDataList/DynamicListRow/DynamicListRow.d.ts +2 -2
  25. package/dist/components/DynamicDataList/DynamicListRow/DynamicListRow.d.ts.map +1 -1
  26. package/dist/components/DynamicDataList/helpers/DynamicListReducer/DynamicListReducer.actions.d.ts +2 -2
  27. package/dist/components/DynamicDataList/helpers/DynamicListReducer/DynamicListReducer.actions.d.ts.map +1 -1
  28. package/dist/components/DynamicDataList/helpers/DynamicListReducer/DynamicListReducer.d.ts.map +1 -1
  29. package/dist/components/DynamicDataList/helpers/DynamicListReducer/DynamicListReducer.init.d.ts.map +1 -1
  30. package/dist/components/DynamicDataList/helpers/useColumnDefs.d.ts +1 -1
  31. package/dist/components/DynamicDataList/helpers/useColumnDefs.d.ts.map +1 -1
  32. package/dist/components/DynamicDataList/helpers/useDataHandler.d.ts +1 -1
  33. package/dist/components/DynamicDataList/helpers/useDataHandler.d.ts.map +1 -1
  34. package/dist/components/DynamicDataList/helpers/useRowAnimation.d.ts.map +1 -1
  35. package/dist/components/DynamicDataList/helpers/useRowEditing.d.ts.map +1 -1
  36. package/dist/components/EmptyStation/EmptyStation.d.ts.map +1 -1
  37. package/dist/components/Explorer/BulkEdit/FormFieldsConfigConverter.d.ts.map +1 -1
  38. package/dist/components/Explorer/BulkEdit/GenerateMutation.d.ts.map +1 -1
  39. package/dist/components/Explorer/BulkEdit/helpers/FieldWrapper.d.ts.map +1 -1
  40. package/dist/components/Explorer/BulkEdit/useBulkEdit.d.ts.map +1 -1
  41. package/dist/components/Explorer/Explorer.d.ts +1 -1
  42. package/dist/components/Explorer/Explorer.d.ts.map +1 -1
  43. package/dist/components/Explorer/Explorer.model.d.ts +0 -1
  44. package/dist/components/Explorer/Explorer.model.d.ts.map +1 -1
  45. package/dist/components/Explorer/NavigationExplorer/NavigationExplorer.d.ts +1 -1
  46. package/dist/components/Explorer/NavigationExplorer/NavigationExplorer.d.ts.map +1 -1
  47. package/dist/components/Explorer/QuickEdit/useQuickEdit.d.ts.map +1 -1
  48. package/dist/components/Explorer/SelectionExplorer/SelectionExplorer.d.ts +1 -1
  49. package/dist/components/Explorer/SelectionExplorer/SelectionExplorer.d.ts.map +1 -1
  50. package/dist/components/Explorer/helpers/useActions.d.ts +0 -1
  51. package/dist/components/Explorer/helpers/useActions.d.ts.map +1 -1
  52. package/dist/components/Explorer/helpers/useDataProvider.d.ts +0 -1
  53. package/dist/components/Explorer/helpers/useDataProvider.d.ts.map +1 -1
  54. package/dist/components/Explorer/helpers/useFilters.d.ts +0 -1
  55. package/dist/components/Explorer/helpers/useFilters.d.ts.map +1 -1
  56. package/dist/components/FieldSelection/FieldSelection.d.ts +1 -0
  57. package/dist/components/FieldSelection/FieldSelection.d.ts.map +1 -1
  58. package/dist/components/Filters/Filter/Filter.d.ts +2 -2
  59. package/dist/components/Filters/Filter/Filter.d.ts.map +1 -1
  60. package/dist/components/Filters/Filters.d.ts +2 -2
  61. package/dist/components/Filters/Filters.d.ts.map +1 -1
  62. package/dist/components/Filters/Filters.model.d.ts +0 -1
  63. package/dist/components/Filters/Filters.model.d.ts.map +1 -1
  64. package/dist/components/Filters/Validators/DateRangeFilterValidator.d.ts.map +1 -1
  65. package/dist/components/Filters/Validators/NumberRangeFilterValidator.d.ts.map +1 -1
  66. package/dist/components/FormElements/DynamicDataListControl/DynamicDataListControl.d.ts +0 -1
  67. package/dist/components/FormElements/DynamicDataListControl/DynamicDataListControl.d.ts.map +1 -1
  68. package/dist/components/FormElements/DynamicDataListControl/DynamicDataListField.d.ts +2 -2
  69. package/dist/components/FormElements/DynamicDataListControl/DynamicDataListField.d.ts.map +1 -1
  70. package/dist/components/FormElements/FormGroup/FormGroup.d.ts +12 -0
  71. package/dist/components/FormElements/FormGroup/FormGroup.d.ts.map +1 -0
  72. package/dist/components/FormElements/FormGroupTitle/FormGroupTitle.d.ts +5 -0
  73. package/dist/components/FormElements/FormGroupTitle/FormGroupTitle.d.ts.map +1 -1
  74. package/dist/components/FormElements/FormikDebug/FormikDebug.d.ts +0 -1
  75. package/dist/components/FormElements/FormikDebug/FormikDebug.d.ts.map +1 -1
  76. package/dist/components/FormElements/ReadOnly/ReadOnlyField.d.ts +2 -2
  77. package/dist/components/FormElements/ReadOnly/ReadOnlyField.d.ts.map +1 -1
  78. package/dist/components/FormElements/ReadOnlyText/ReadOnlyTextField.d.ts +2 -2
  79. package/dist/components/FormElements/ReadOnlyText/ReadOnlyTextField.d.ts.map +1 -1
  80. package/dist/components/FormElements/Tags/Tags.d.ts +2 -2
  81. package/dist/components/FormElements/Tags/Tags.d.ts.map +1 -1
  82. package/dist/components/FormElements/Tags/TagsField.d.ts +2 -2
  83. package/dist/components/FormElements/Tags/TagsField.d.ts.map +1 -1
  84. package/dist/components/FormElements/formStoryHelper.d.ts.map +1 -1
  85. package/dist/components/FormElements/index.d.ts +1 -0
  86. package/dist/components/FormElements/index.d.ts.map +1 -1
  87. package/dist/components/FormElements/useFormikError.d.ts.map +1 -1
  88. package/dist/components/FormStation/Create/Create.d.ts +2 -2
  89. package/dist/components/FormStation/Create/Create.d.ts.map +1 -1
  90. package/dist/components/FormStation/Details/Details.d.ts +2 -2
  91. package/dist/components/FormStation/Details/Details.d.ts.map +1 -1
  92. package/dist/components/FormStation/FormStation.d.ts +2 -2
  93. package/dist/components/FormStation/FormStation.d.ts.map +1 -1
  94. package/dist/components/FormStation/FormStationActions/FormStationActions.d.ts +1 -1
  95. package/dist/components/FormStation/FormStationActions/FormStationActions.d.ts.map +1 -1
  96. package/dist/components/FormStation/FormStationHeader/FormStationHeader.d.ts.map +1 -1
  97. package/dist/components/FormStation/SaveOnDemand/SaveOnDemand.d.ts +0 -1
  98. package/dist/components/FormStation/SaveOnDemand/SaveOnDemand.d.ts.map +1 -1
  99. package/dist/components/FormStation/SaveOnNavigate/handleNavigationAttempt.d.ts.map +1 -1
  100. package/dist/components/FormStation/helpers/useTitle.d.ts.map +1 -1
  101. package/dist/components/InfoPanel/hooks/useCollapse.d.ts +0 -1
  102. package/dist/components/InfoPanel/hooks/useCollapse.d.ts.map +1 -1
  103. package/dist/components/InlineMenu/InlineMenu.d.ts.map +1 -1
  104. package/dist/components/List/List.d.ts +2 -2
  105. package/dist/components/List/List.d.ts.map +1 -1
  106. package/dist/components/List/List.model.d.ts +0 -1
  107. package/dist/components/List/List.model.d.ts.map +1 -1
  108. package/dist/components/List/List.stories.helper.d.ts.map +1 -1
  109. package/dist/components/List/ListHeader/ColumnLabel/ColumnLabel.d.ts +2 -2
  110. package/dist/components/List/ListHeader/ColumnLabel/ColumnLabel.d.ts.map +1 -1
  111. package/dist/components/List/ListHeader/ListHeader.d.ts +2 -2
  112. package/dist/components/List/ListHeader/ListHeader.d.ts.map +1 -1
  113. package/dist/components/List/ListRow/ListRow.d.ts +2 -4
  114. package/dist/components/List/ListRow/ListRow.d.ts.map +1 -1
  115. package/dist/components/List/ListRow/ListRowCell/ListRowCell.d.ts +0 -1
  116. package/dist/components/List/ListRow/ListRowCell/ListRowCell.d.ts.map +1 -1
  117. package/dist/components/List/ListRow/ListRowCell/renderData.d.ts.map +1 -1
  118. package/dist/components/List/ListRow/ListRowLoader.d.ts +2 -2
  119. package/dist/components/List/ListRow/ListRowLoader.d.ts.map +1 -1
  120. package/dist/components/List/ListRow/Renderers/BooleanDotRenderer/BooleanDotRenderer.d.ts +0 -1
  121. package/dist/components/List/ListRow/Renderers/BooleanDotRenderer/BooleanDotRenderer.d.ts.map +1 -1
  122. package/dist/components/List/ListRow/Renderers/DateRenderer/DateRenderer.d.ts.map +1 -1
  123. package/dist/components/List/ListRow/Renderers/ExternalLinkRenderer/ExternalLinkRenderer.d.ts.map +1 -1
  124. package/dist/components/List/ListRow/Renderers/StateRenderer/StateRenderer.d.ts +1 -1
  125. package/dist/components/List/ListRow/Renderers/StateRenderer/StateRenderer.d.ts.map +1 -1
  126. package/dist/components/List/ListRow/Renderers/TagsRenderer/TagsRenderer.d.ts +0 -1
  127. package/dist/components/List/ListRow/Renderers/TagsRenderer/TagsRenderer.d.ts.map +1 -1
  128. package/dist/components/List/ListRow/Renderers/TimestampRenderer/TimestampRenderer.d.ts.map +1 -1
  129. package/dist/components/List/ListRowRenderer/ListRowRenderer.d.ts.map +1 -1
  130. package/dist/components/List/helpers.d.ts.map +1 -1
  131. package/dist/components/List/useColumnsSize.d.ts +0 -2
  132. package/dist/components/List/useColumnsSize.d.ts.map +1 -1
  133. package/dist/components/Loaders/skeletons.d.ts +0 -1
  134. package/dist/components/Loaders/skeletons.d.ts.map +1 -1
  135. package/dist/components/Modal/useModal.d.ts.map +1 -1
  136. package/dist/components/PageHeader/PageHeaderActionsGroup/PageHeaderActionsGroupsContext.d.ts +0 -1
  137. package/dist/components/PageHeader/PageHeaderActionsGroup/PageHeaderActionsGroupsContext.d.ts.map +1 -1
  138. package/dist/components/PageHeader/helpers/useElementWidthObserver.d.ts +1 -2
  139. package/dist/components/PageHeader/helpers/useElementWidthObserver.d.ts.map +1 -1
  140. package/dist/components/Tabs/TabList/ScrollContainer/useScroll.d.ts.map +1 -1
  141. package/dist/components/Utils/Postgraphile/FilterTransformer.d.ts.map +1 -1
  142. package/dist/components/Utils/Postgraphile/SortTransformer.d.ts.map +1 -1
  143. package/dist/components/Utils/State/GlobalState.d.ts.map +1 -1
  144. package/dist/helpers/idleCallbackHelpers.d.ts +0 -1
  145. package/dist/helpers/idleCallbackHelpers.d.ts.map +1 -1
  146. package/dist/helpers/storybook.d.ts.map +1 -1
  147. package/dist/helpers/testing.d.ts +6 -21
  148. package/dist/helpers/testing.d.ts.map +1 -1
  149. package/dist/helpers/utils.d.ts +1 -2
  150. package/dist/helpers/utils.d.ts.map +1 -1
  151. package/dist/hooks/useDEBUGDetectChanges/useDEBUGDetectChanges.d.ts.map +1 -1
  152. package/dist/hooks/useDEBUGRenderCount/useDEBUGRenderCount.d.ts.map +1 -1
  153. package/dist/hooks/useDebounce/useDebounce.d.ts +1 -2
  154. package/dist/hooks/useDebounce/useDebounce.d.ts.map +1 -1
  155. package/dist/hooks/useExpand/useExpand.d.ts.map +1 -1
  156. package/dist/hooks/useReactRouterPause/utils.d.ts.map +1 -1
  157. package/dist/hooks/useResize/useResize.d.ts +0 -1
  158. package/dist/hooks/useResize/useResize.d.ts.map +1 -1
  159. package/dist/hooks/useTabTitle/useTabTitle.d.ts.map +1 -1
  160. package/dist/hooks/useValueOrOnDemand/useValueOrOnDemand.d.ts +1 -1
  161. package/dist/hooks/useValueOrOnDemand/useValueOrOnDemand.d.ts.map +1 -1
  162. package/dist/index.es.js +4 -4
  163. package/dist/index.es.js.map +1 -1
  164. package/dist/index.js +4 -4
  165. package/dist/index.js.map +1 -1
  166. package/dist/utils/ErrorMapper/ErrorMapper.d.ts.map +1 -1
  167. package/dist/utils/ErrorTypeToStationError.d.ts.map +1 -1
  168. package/dist/utils/ToolTipHelpers.d.ts.map +1 -1
  169. package/dist/validators/timestamp/timestamp.d.ts.map +1 -1
  170. package/package.json +11 -10
  171. package/src/components/Accordion/Accordion.spec.tsx +1 -1
  172. package/src/components/Accordion/AccordionItem/AccordionItem.spec.tsx +2 -2
  173. package/src/components/Actions/Action/Action.spec.tsx +189 -228
  174. package/src/components/Actions/Actions.spec.tsx +42 -32
  175. package/src/components/Buttons/Button/Button.spec.tsx +110 -115
  176. package/src/components/Buttons/Button/Button.tsx +4 -0
  177. package/src/components/Buttons/Button.model.ts +2 -0
  178. package/src/components/Buttons/CompositeButton/CompositeButton.spec.tsx +122 -121
  179. package/src/components/Buttons/TextButton/TextButton.spec.tsx +85 -90
  180. package/src/components/ConfirmDialog/ConfirmDialog.spec.tsx +75 -79
  181. package/src/components/DateTime/DatePicker/DatePicker.spec.tsx +8 -7
  182. package/src/components/DateTime/DateTimePicker.spec.tsx +43 -62
  183. package/src/components/DateTime/TimePicker/ScrollColumn/ScrollColumn.spec.tsx +19 -16
  184. package/src/components/DateTime/TimePicker/TimePicker.spec.tsx +44 -73
  185. package/src/components/DynamicDataList/DynamicDataList.spec.tsx +112 -107
  186. package/src/components/DynamicDataList/DynamicListDataEntry/DynamicListDataEntry.spec.tsx +91 -144
  187. package/src/components/DynamicDataList/DynamicListDataEntry/DynamicListDataEntry.tsx +38 -20
  188. package/src/components/DynamicDataList/DynamicListDataEntry/Renderers/createInputRenderer/createInputRenderer.spec.tsx +18 -15
  189. package/src/components/DynamicDataList/DynamicListDataEntry/Renderers/createInputRenderer/createInputRenderer.tsx +2 -0
  190. package/src/components/DynamicDataList/DynamicListDataEntry/Renderers/createSelectRenderer/createSelectRenderer.spec.tsx +53 -28
  191. package/src/components/DynamicDataList/DynamicListDataEntry/Renderers/createSelectRenderer/createSelectRenderer.tsx +2 -0
  192. package/src/components/DynamicDataList/DynamicListDataEntry/Renderers/renderers.model.ts +2 -0
  193. package/src/components/DynamicDataList/DynamicListHeader/DynamicListHeader.scss +19 -5
  194. package/src/components/DynamicDataList/DynamicListHeader/DynamicListHeader.spec.tsx +72 -76
  195. package/src/components/DynamicDataList/DynamicListRow/DynamicListRow.scss +9 -2
  196. package/src/components/DynamicDataList/DynamicListRow/DynamicListRow.spec.tsx +86 -113
  197. package/src/components/DynamicDataList/helpers/DynamicListReducer/DynamicListReducer.actions.spec.ts +1 -0
  198. package/src/components/DynamicDataList/helpers/DynamicListReducer/DynamicListReducer.init.spec.ts +1 -0
  199. package/src/components/DynamicDataList/helpers/DynamicListReducer/DynamicListReducer.spec.ts +6 -5
  200. package/src/components/EmptyStation/EmptyStation.spec.tsx +41 -37
  201. package/src/components/Explorer/BulkEdit/FormFieldsConfigConverter.spec.tsx +29 -28
  202. package/src/components/Explorer/BulkEdit/FormFieldsConfigConverter.tsx +1 -0
  203. package/src/components/Explorer/BulkEdit/GenerateMutation.spec.tsx +1 -0
  204. package/src/components/Explorer/BulkEdit/helpers/FieldWrapper.scss +1 -0
  205. package/src/components/Explorer/BulkEdit/helpers/FieldWrapper.tsx +1 -0
  206. package/src/components/Explorer/Explorer.spec.tsx +513 -825
  207. package/src/components/Explorer/NavigationExplorer/NavigationExplorer.spec.tsx +90 -131
  208. package/src/components/Explorer/QuickEdit/useQuickEdit.spec.tsx +36 -56
  209. package/src/components/Explorer/SelectionExplorer/SelectionExplorer.spec.tsx +59 -65
  210. package/src/components/Explorer/helpers/InMemoryDataProvider.spec.ts +1 -0
  211. package/src/components/Explorer/helpers/useFilters.spec.tsx +13 -11
  212. package/src/components/Explorer/helpers/useStationMessage.spec.tsx +4 -3
  213. package/src/components/Explorer/helpers/useSubtitle.spec.tsx +1 -0
  214. package/src/components/FieldSelection/FieldSelection.scss +1 -1
  215. package/src/components/FieldSelection/FieldSelection.spec.tsx +1 -1
  216. package/src/components/FieldSelection/FieldSelection.tsx +6 -2
  217. package/src/components/Filters/Filter/Filter.spec.tsx +78 -47
  218. package/src/components/Filters/Filters.spec.tsx +56 -58
  219. package/src/components/Filters/SelectionTypes/DateTimeFilter/DateTimeFilter.spec.tsx +45 -46
  220. package/src/components/Filters/SelectionTypes/FreeTextFilter/FreeTextFilter.spec.tsx +23 -23
  221. package/src/components/Filters/SelectionTypes/NumericTextFilter/NumericTextFilter.spec.tsx +37 -28
  222. package/src/components/Filters/SelectionTypes/OptionsFilter/OptionsFilter.spec.tsx +14 -12
  223. package/src/components/Filters/Validators/DateRangeFilterValidator.spec.ts +1 -0
  224. package/src/components/Filters/Validators/NumberRangeFilterValidator.spec.ts +1 -0
  225. package/src/components/FormElements/BooleanView/BooleanViewField.spec.tsx +34 -31
  226. package/src/components/FormElements/Checkbox/Checkbox.spec.tsx +129 -128
  227. package/src/components/FormElements/CustomTags/CustomTags.spec.tsx +312 -446
  228. package/src/components/FormElements/DateTimeField/DateTimeText.spec.tsx +61 -52
  229. package/src/components/FormElements/DynamicDataListControl/DynamicDataListControl.spec.tsx +19 -24
  230. package/src/components/FormElements/FileUploadControl/FileUploadControl.spec.tsx +67 -60
  231. package/src/components/FormElements/FormElementContainer/FormElementContainer.spec.tsx +13 -12
  232. package/src/components/FormElements/FormGroup/FormGroup.scss +62 -0
  233. package/src/components/FormElements/FormGroup/FormGroup.stories.tsx +25 -0
  234. package/src/components/FormElements/FormGroup/FormGroup.tsx +60 -0
  235. package/src/components/FormElements/FormGroupTitle/FormGroupTitle.tsx +5 -0
  236. package/src/components/FormElements/Link/LinkField.spec.tsx +24 -23
  237. package/src/components/FormElements/MaskedSingleLineText/MaskedSingleLineText.spec.tsx +4 -3
  238. package/src/components/FormElements/Radio/Radio.spec.tsx +170 -172
  239. package/src/components/FormElements/ReadOnly/ReadOnlyField.spec.tsx +23 -22
  240. package/src/components/FormElements/ReadOnlyText/ReadOnlyTextField.spec.tsx +23 -22
  241. package/src/components/FormElements/Select/Select.spec.tsx +30 -29
  242. package/src/components/FormElements/SingleLineText/SingleLineText.spec.tsx +46 -42
  243. package/src/components/FormElements/Tags/Tags.spec.tsx +59 -53
  244. package/src/components/FormElements/TextArea/TextArea.spec.tsx +44 -29
  245. package/src/components/FormElements/ToggleButton/ToggleButton.spec.tsx +188 -165
  246. package/src/components/FormElements/index.ts +1 -0
  247. package/src/components/FormStation/FormStation.spec.tsx +273 -198
  248. package/src/components/FormStation/FormStation.stories.tsx +15 -13
  249. package/src/components/FormStation/FormStationHeader/FormStationHeader.tsx +5 -3
  250. package/src/components/FormStation/SaveOnNavigate/SaveOnNavigate.spec.tsx +23 -20
  251. package/src/components/FormStation/SaveOnNavigate/handleNavigationAttempt.spec.ts +25 -24
  252. package/src/components/FormStation/helpers/useTitle.spec.ts +9 -7
  253. package/src/components/Hub/Hub.spec.tsx +13 -10
  254. package/src/components/Hub/Tile/Tile.spec.tsx +29 -25
  255. package/src/components/Icons/Icons.spec.tsx +25 -27
  256. package/src/components/Icons/Icons.tsx +1 -1
  257. package/src/components/InfoPanel/InfoImage/InfoImage.spec.tsx +4 -3
  258. package/src/components/InfoPanel/InfoPanel.scss +2 -0
  259. package/src/components/InfoPanel/InfoPanel.spec.tsx +4 -3
  260. package/src/components/InfoPanel/Paragraph/Paragraph.spec.tsx +4 -3
  261. package/src/components/InfoPanel/Section/Section.spec.tsx +39 -46
  262. package/src/components/InfoPanel/hooks/useCollapse.ts +9 -7
  263. package/src/components/InlineMenu/InlineMenu.spec.tsx +24 -23
  264. package/src/components/InlineMenu/InlineMenu.tsx +3 -0
  265. package/src/components/LandingPageHeader/LandingPageHeader.spec.tsx +9 -8
  266. package/src/components/LandingPageTiles/LandingPageTiles.spec.tsx +29 -28
  267. package/src/components/LandingPageTiles/TileLarge/TileLarge.spec.tsx +68 -61
  268. package/src/components/LandingPageTiles/TileSmall/TileSmall.spec.tsx +50 -32
  269. package/src/components/List/List.spec.tsx +337 -241
  270. package/src/components/List/ListCheckBox/ListCheckBox.spec.tsx +54 -48
  271. package/src/components/List/ListHeader/ColumnLabel/ColumnLabel.scss +4 -1
  272. package/src/components/List/ListHeader/ColumnLabel/ColumnLabel.spec.tsx +46 -43
  273. package/src/components/List/ListHeader/ListHeader.spec.tsx +82 -66
  274. package/src/components/List/ListRow/ListRow.spec.tsx +125 -130
  275. package/src/components/List/ListRow/ListRowCell/ListRowCell.spec.tsx +57 -100
  276. package/src/components/List/ListRow/ListRowLoader.spec.tsx +16 -12
  277. package/src/components/List/ListRow/Renderers/BooleanDotRenderer/BooleanDotRenderer.spec.tsx +12 -9
  278. package/src/components/List/ListRow/Renderers/ExternalLinkRenderer/ExternalLinkRenderer.spec.tsx +40 -35
  279. package/src/components/List/ListRow/Renderers/StateRenderer/StateRenderer.spec.tsx +14 -17
  280. package/src/components/List/ListRow/Renderers/TagsRenderer/TagsRenderer.spec.tsx +18 -17
  281. package/src/components/List/ListRow/Renderers/TagsRenderer/TagsRenderer.tsx +2 -2
  282. package/src/components/List/ListRowRenderer/ListRowRenderer.spec.tsx +82 -68
  283. package/src/components/Loaders/ImageLoader/ImageLoader.spec.tsx +88 -96
  284. package/src/components/Loaders/Loader/Loader.spec.tsx +51 -24
  285. package/src/components/Message/Message.spec.tsx +56 -44
  286. package/src/components/MessageBar/MessageBar.scss +3 -0
  287. package/src/components/MessageBar/MessageBar.spec.tsx +88 -85
  288. package/src/components/Modal/Modal.spec.tsx +92 -87
  289. package/src/components/NavigationAwareStation/NavigationAwareStation.spec.tsx +23 -22
  290. package/src/components/PageHeader/PageHeader.spec.tsx +22 -21
  291. package/src/components/PageHeader/PageHeaderAction/PageHeaderAction.spec.tsx +275 -193
  292. package/src/components/PageHeader/PageHeaderActionsGroup/PageHeaderActionsGroup.spec.tsx +39 -34
  293. package/src/components/ProgressBar/ProgressBar.spec.tsx +18 -15
  294. package/src/components/Utils/Postgraphile/CreateConnectionRenderer.spec.ts +1 -0
  295. package/src/components/Utils/Postgraphile/FilterTransformer.spec.ts +1 -0
  296. package/src/components/Utils/Postgraphile/RangeTransformer.spec.ts +1 -0
  297. package/src/components/Utils/Postgraphile/SortTransformer.spec.ts +1 -0
  298. package/src/components/Utils/Postgraphile/UpdateGQLFragmentGenerator.spec.ts +1 -0
  299. package/src/components/Utils/Postgraphile/generateArrayMutations.spec.ts +1 -0
  300. package/src/components/Utils/Postgraphile/getArrayDiff.spec.ts +1 -0
  301. package/src/components/Utils/Postgraphile/getFormDiff.spec.ts +1 -0
  302. package/src/components/Utils/State/GlobalState.spec.ts +4 -2
  303. package/src/components/Utils/Transformers/Boolean.spec.ts +1 -0
  304. package/src/components/Utils/Transformers/DateTime.spec.ts +2 -1
  305. package/src/components/Utils/Transformers/FileSize.spec.ts +1 -0
  306. package/src/components/Utils/Transformers/SortArray.spec.ts +1 -0
  307. package/src/components/Utils/Transformers/Timestamp.spec.ts +3 -2
  308. package/src/components/Utils/Transformers/TitleCase.spec.ts +1 -0
  309. package/src/components/VisualElements/ImgElement.spec.tsx +34 -35
  310. package/src/components/VisualElements/SvgElement.spec.tsx +72 -69
  311. package/src/helpers/testing.ts +9 -76
  312. package/src/hooks/useBusy/useBusy.spec.tsx +8 -9
  313. package/src/hooks/useClickOutside/useClickOutside.spec.tsx +19 -51
  314. package/src/hooks/useDebounce/useDebounce.spec.tsx +31 -26
  315. package/src/hooks/useExpand/useExpand.spec.tsx +30 -21
  316. package/src/hooks/useTabTitle/useTabTitle.spec.tsx +18 -18
  317. package/src/hooks/useValueOrOnDemand/useValueOrOnDemand.spec.tsx +31 -52
  318. package/src/styles/variables.scss +3 -1
  319. package/src/utils/ErrorMapper/ApolloClient/ApolloErrorMapper.spec.ts +1 -0
  320. package/src/utils/ErrorMapper/ErrorMapper.spec.ts +1 -0
  321. package/src/utils/ErrorTypeToStationError.spec.tsx +12 -11
  322. package/src/utils/ToolTipHelpers.spec.ts +1 -0
  323. package/src/validators/timestamp/timestamp.spec.ts +1 -0
  324. package/dist/helpers/hooksTestingHelpers.d.ts +0 -7
  325. package/dist/helpers/hooksTestingHelpers.d.ts.map +0 -1
  326. package/src/helpers/hooksTestingHelpers.tsx +0 -22
@@ -1,6 +1,7 @@
1
- import { mount, shallow } from 'enzyme';
1
+ import { fireEvent, render } from '@testing-library/react';
2
2
  import React from 'react';
3
3
  import { act } from 'react-dom/test-utils';
4
+ import { describe, expect, it, vi } from 'vitest';
4
5
  import { noop } from '../../../../../helpers/utils';
5
6
  import { CreateInputRendererConfig } from '../renderers.model';
6
7
  import { createInputRenderer } from './createInputRenderer';
@@ -39,30 +40,32 @@ const RendererWrapper: React.FC<RendererWrapperProps> = ({
39
40
 
40
41
  describe('createInputRenderer', () => {
41
42
  it('renders the component without crashing', () => {
42
- const wrapper = shallow(<RendererWrapper />);
43
- expect(wrapper).toBeTruthy();
43
+ const { container } = render(<RendererWrapper />);
44
+ expect(container).toBeTruthy();
44
45
  });
45
46
 
46
47
  it(`sets 'input' value to current value`, () => {
47
48
  const mockValue = 'test-value';
48
- const wrapper = mount(<RendererWrapper currentValue={mockValue} />);
49
+ const { container } = render(<RendererWrapper currentValue={mockValue} />);
49
50
 
50
- const input = wrapper.find('input');
51
+ const input = container.querySelector('input') as HTMLInputElement;
51
52
 
52
- expect(input.getDOMNode<HTMLInputElement>().value).toBe(mockValue);
53
+ expect(input.value).toBe(mockValue);
53
54
  });
54
55
 
55
56
  it(`emits 'onValueChange' with the new value when 'input' value has changed`, () => {
56
- const onValueChangeSpy = jest.fn();
57
+ const onValueChangeSpy = vi.fn();
57
58
  const mockValueUpdated = 'updated-test-value';
58
- const wrapper = mount(<RendererWrapper onValueChange={onValueChangeSpy} />);
59
+ const { container } = render(
60
+ <RendererWrapper onValueChange={onValueChangeSpy} />,
61
+ );
59
62
 
60
- const input = wrapper.find('input');
63
+ const input = container.querySelector('input') as HTMLInputElement;
61
64
 
62
- expect(input.getDOMNode<HTMLInputElement>().value).toBe('');
65
+ expect(input.value).toBe('');
63
66
 
64
67
  act(() => {
65
- input.simulate('change', { target: { value: mockValueUpdated } });
68
+ fireEvent.change(input, { target: { value: mockValueUpdated } });
66
69
  });
67
70
 
68
71
  expect(onValueChangeSpy).toHaveBeenCalledTimes(1);
@@ -70,21 +73,21 @@ describe('createInputRenderer', () => {
70
73
  });
71
74
 
72
75
  it(`formats the value when a 'transformer' is set`, () => {
73
- const onValueChangeSpy = jest.fn();
76
+ const onValueChangeSpy = vi.fn();
74
77
  const mockStringifiedNumber = '5';
75
78
  const stringToNumberTransformer = (value: string): number => Number(value);
76
79
 
77
- const wrapper = mount(
80
+ const { container } = render(
78
81
  <RendererWrapper
79
82
  onValueChange={onValueChangeSpy}
80
83
  transform={stringToNumberTransformer}
81
84
  />,
82
85
  );
83
86
 
84
- const input = wrapper.find('input');
87
+ const input = container.querySelector('input') as HTMLInputElement;
85
88
 
86
89
  act(() => {
87
- input.simulate('change', {
90
+ fireEvent.change(input, {
88
91
  target: { value: mockStringifiedNumber },
89
92
  });
90
93
  });
@@ -14,6 +14,7 @@ export const createInputRenderer = ({
14
14
  name = '',
15
15
  placeholder,
16
16
  type = 'text',
17
+ autofocus = false,
17
18
  transform = (value: string) => value,
18
19
  }: CreateInputRendererConfig = {}): DynamicListDataEntryRenderer => {
19
20
  const inputRenderer = (
@@ -38,6 +39,7 @@ export const createInputRenderer = ({
38
39
  error={error}
39
40
  className={classes.container}
40
41
  value={(currentValue as string) ?? ''}
42
+ autoFocus={autofocus}
41
43
  />
42
44
  );
43
45
  };
@@ -1,8 +1,8 @@
1
- import { mount, shallow } from 'enzyme';
1
+ import { fireEvent, render, waitFor } from '@testing-library/react';
2
2
  import React from 'react';
3
3
  import { act } from 'react-dom/test-utils';
4
+ import { describe, expect, it, vi } from 'vitest';
4
5
  import { noop } from '../../../../../helpers/utils';
5
- import { Select } from '../../../../FormElements';
6
6
  import { CreateSelectRendererConfig } from '../renderers.model';
7
7
  import { createSelectRenderer } from './createSelectRenderer';
8
8
 
@@ -39,67 +39,92 @@ const RendererWrapper: React.FC<RendererWrapperProps> = ({
39
39
 
40
40
  describe('createSelectRenderer', () => {
41
41
  it('renders the component without crashing', () => {
42
- const wrapper = shallow(<RendererWrapper />);
43
- expect(wrapper).toBeTruthy();
42
+ const { container } = render(<RendererWrapper />);
43
+ expect(container).toBeTruthy();
44
44
  });
45
45
 
46
46
  it(`sets 'select' value to current value`, () => {
47
47
  const mockOptions = [{ value: 'test-value', label: 'Test Value' }];
48
- const wrapper = mount(
48
+ const { container } = render(
49
49
  <RendererWrapper
50
50
  currentValue={mockOptions[0].value}
51
51
  options={mockOptions}
52
52
  />,
53
53
  );
54
54
 
55
- const input = wrapper.find('[role="combobox"]');
55
+ const input = container.querySelector(
56
+ '[role="combobox"]',
57
+ ) as HTMLInputElement;
56
58
 
57
- expect(input.prop('value')).toBe(mockOptions[0].label);
59
+ expect(input.value).toBe(mockOptions[0].label);
58
60
  });
59
61
 
60
- it(`emits 'onValueChange' with the new value when a new option has been selected`, () => {
61
- const onValueChangeSpy = jest.fn();
62
+ it(`emits 'onValueChange' with the new value when a new option has been selected`, async () => {
63
+ const onValueChangeSpy = vi.fn();
62
64
  const mockValueUpdated = 'updated-test-value';
63
- const wrapper = mount(<RendererWrapper onValueChange={onValueChangeSpy} />);
65
+ const mockOptions = [{ value: mockValueUpdated, label: 'Updated Value' }];
66
+ const { container } = render(
67
+ <RendererWrapper
68
+ onValueChange={onValueChangeSpy}
69
+ options={mockOptions}
70
+ />,
71
+ );
72
+
73
+ const input = container.querySelector('[role="combobox"]') as HTMLElement;
74
+
75
+ act(() => {
76
+ fireEvent.mouseDown(input);
77
+ });
64
78
 
65
- const select = wrapper.find(Select);
66
- expect(select.prop('value')).toBe('');
79
+ const option = await waitFor(() => {
80
+ const options = document.querySelectorAll('[role="option"]');
81
+ const el = Array.from(options).find(
82
+ (opt) => opt.textContent === 'Updated Value',
83
+ ) as HTMLElement;
84
+ expect(el).toBeInTheDocument();
85
+ return el;
86
+ });
67
87
 
68
88
  act(() => {
69
- select.prop('onChange')?.({
70
- // @ts-expect-error not full event args object
71
- currentTarget: { value: mockValueUpdated },
72
- });
73
- wrapper.update();
89
+ fireEvent.click(option);
74
90
  });
75
91
 
76
- expect(onValueChangeSpy).toHaveBeenCalledTimes(1);
77
92
  expect(onValueChangeSpy).toHaveBeenCalledWith(mockValueUpdated);
78
93
  });
79
94
 
80
- it(`formats the value when a 'transformer' is set`, () => {
81
- const onValueChangeSpy = jest.fn();
95
+ it(`formats the value when a 'transformer' is set`, async () => {
96
+ const onValueChangeSpy = vi.fn();
82
97
  const mockStringifiedNumber = '5';
83
98
  const stringToNumberTransformer = (value: string): number => Number(value);
99
+ const mockOptions = [{ value: mockStringifiedNumber, label: 'Five' }];
84
100
 
85
- const wrapper = mount(
101
+ const { container } = render(
86
102
  <RendererWrapper
87
103
  onValueChange={onValueChangeSpy}
88
104
  transform={stringToNumberTransformer}
105
+ options={mockOptions}
89
106
  />,
90
107
  );
91
108
 
92
- const select = wrapper.find(Select);
109
+ const input = container.querySelector('[role="combobox"]') as HTMLElement;
110
+
111
+ act(() => {
112
+ fireEvent.mouseDown(input);
113
+ });
114
+
115
+ const option = await waitFor(() => {
116
+ const options = document.querySelectorAll('[role="option"]');
117
+ const el = Array.from(options).find(
118
+ (opt) => opt.textContent === 'Five',
119
+ ) as HTMLElement;
120
+ expect(el).toBeInTheDocument();
121
+ return el;
122
+ });
93
123
 
94
124
  act(() => {
95
- select.prop('onChange')?.({
96
- // @ts-expect-error not full event args object
97
- currentTarget: { value: mockStringifiedNumber },
98
- });
99
- wrapper.update();
125
+ fireEvent.click(option);
100
126
  });
101
127
 
102
- expect(onValueChangeSpy).toHaveBeenCalledTimes(1);
103
128
  expect(onValueChangeSpy).toHaveBeenCalledWith(
104
129
  Number(mockStringifiedNumber),
105
130
  );
@@ -22,6 +22,7 @@ export const createSelectRenderer = ({
22
22
  options = [],
23
23
  defaultValue,
24
24
  transform = (value: string) => value,
25
+ autofocus = false,
25
26
  }: CreateSelectRendererConfig = {}): DynamicListDataEntryRenderer => {
26
27
  const selectRenderer = (
27
28
  currentValue: unknown,
@@ -49,6 +50,7 @@ export const createSelectRenderer = ({
49
50
  className={classes.container}
50
51
  value={(currentValue as string) ?? ''}
51
52
  options={options}
53
+ autoFocus={autofocus}
52
54
  />
53
55
  );
54
56
  };
@@ -9,6 +9,8 @@ export interface BaseRendererConfig {
9
9
  placeholder?: string;
10
10
  /** Optional transformer that will change the final value to match the return value */
11
11
  transform?: (value: string) => unknown;
12
+ /** Optional autofocus on render (default: false) */
13
+ autofocus?: boolean;
12
14
  }
13
15
 
14
16
  export interface CreateInputRendererConfig extends BaseRendererConfig {
@@ -13,7 +13,8 @@
13
13
  grid-auto-rows: var(--dynamic-list-row-height, $dynamic-list-row-height);
14
14
  column-gap: var(--dynamic-list-column-gap, $dynamic-list-column-gap);
15
15
 
16
- border-bottom: solid 1px var(--dynamic-list-header-border-color, $dynamic-list-header-border-color);
16
+ border-bottom: solid 1px
17
+ var(--dynamic-list-header-border-color, $dynamic-list-header-border-color);
17
18
 
18
19
  justify-items: left;
19
20
  align-items: center;
@@ -36,7 +37,14 @@
36
37
  height: 100%;
37
38
 
38
39
  z-index: 1;
39
- border-right: var(--explorer-list-row-border, 1px solid var(--dynamic-list-header-resize-border-color, $dynamic-list-header-resize-border-color));
40
+ border-right: var(
41
+ --explorer-list-row-border,
42
+ 1px solid
43
+ var(
44
+ --dynamic-list-header-resize-border-color,
45
+ $dynamic-list-header-resize-border-color
46
+ )
47
+ );
40
48
  position: absolute;
41
49
  right: 0;
42
50
 
@@ -61,11 +69,17 @@
61
69
  }
62
70
 
63
71
  p {
64
- color: var(--input-color, $input-color);
65
- font-size: var(--label-font-size, $label-font-size);
72
+ color: var(--explorer-column-label-color, $explorer-column-label-color);
73
+ font-size: var(
74
+ --explorer-column-label-font-size,
75
+ $explorer-column-label-font-size
76
+ );
66
77
  font-weight: bold;
67
78
 
68
- white-space: nowrap;
79
+ display: -webkit-box;
80
+ -webkit-box-orient: vertical;
81
+ -webkit-line-clamp: 2;
82
+
69
83
  text-overflow: ellipsis;
70
84
  overflow: hidden;
71
85
  }
@@ -1,5 +1,6 @@
1
- import { mount, shallow } from 'enzyme';
1
+ import { fireEvent, render } from '@testing-library/react';
2
2
  import React from 'react';
3
+ import { describe, expect, it, vi } from 'vitest';
3
4
  import { DynamicListColumn } from '../DynamicDataList.model';
4
5
  import { DynamicListHeader, DynamicListHeaderProps } from './DynamicListHeader';
5
6
 
@@ -34,19 +35,19 @@ const defaultProps: DynamicListHeaderProps<DynamicListHeaderTestData> = {
34
35
  verticalTextAlign: 'center',
35
36
  positionKey: 'position',
36
37
  allowReordering: undefined,
37
- onColumnSizesChanged: jest.fn(),
38
- onResetColumnSizes: jest.fn(),
38
+ onColumnSizesChanged: vi.fn(),
39
+ onResetColumnSizes: vi.fn(),
39
40
  };
40
41
 
41
42
  describe('DynamicListHeader', () => {
42
43
  it('renders the component without crashing', () => {
43
- const wrapper = shallow(<DynamicListHeader {...defaultProps} />);
44
+ const { container } = render(<DynamicListHeader {...defaultProps} />);
44
45
 
45
- expect(wrapper).toBeTruthy();
46
+ expect(container).toBeTruthy();
46
47
  });
47
48
 
48
49
  it('header should not be draggable', () => {
49
- const wrapper = shallow(
50
+ const { container } = render(
50
51
  <DynamicListHeader
51
52
  {...defaultProps}
52
53
  columns={defaultColumns}
@@ -54,72 +55,59 @@ describe('DynamicListHeader', () => {
54
55
  />,
55
56
  );
56
57
 
57
- const draggableAttribute = wrapper.find('.container').prop('draggable');
58
+ const draggableAttribute = (
59
+ container.querySelector('.container') as HTMLElement
60
+ )?.getAttribute('draggable');
58
61
 
59
- expect(draggableAttribute).toBeUndefined();
62
+ expect(draggableAttribute).toBeNull();
60
63
  });
61
64
 
62
65
  it('most styling props, except gridTemplateColumns, should be undefined by default', () => {
63
- const wrapper = shallow(
66
+ const { container } = render(
64
67
  <DynamicListHeader
65
68
  columns={defaultColumns}
66
69
  columnSizes={defaultProps.columnSizes}
67
- onColumnSizesChanged={jest.fn()}
68
- onResetColumnSizes={jest.fn()}
70
+ onColumnSizesChanged={vi.fn()}
71
+ onResetColumnSizes={vi.fn()}
69
72
  />,
70
73
  );
71
74
 
72
- const header = wrapper.find('.container');
75
+ const header = container.querySelector('.container') as HTMLElement;
73
76
 
74
- expect(header.prop('style')).toHaveProperty('gridColumnGap', undefined);
75
- expect(header.prop('style')).toHaveProperty('alignItems', undefined);
76
- expect(header.prop('style')).toHaveProperty('gridAutoRows', undefined);
77
- expect(header.prop('style')).toHaveProperty(
78
- 'gridTemplateColumns',
79
- defaultProps.columnSizes,
80
- );
81
- expect(header.prop('style')).toHaveProperty('justifyItems', undefined);
77
+ expect(header.style.gridColumnGap).toBe('');
78
+ expect(header.style.alignItems).toBe('');
79
+ expect(header.style.gridAutoRows).toBe('');
80
+ expect(header.style.gridTemplateColumns).toBe(defaultProps.columnSizes);
81
+ expect(header.style.justifyItems).toBe('');
82
82
  });
83
83
 
84
84
  it('sets styling props when passed in', () => {
85
- const wrapper = shallow(<DynamicListHeader {...defaultProps} />);
85
+ const { container } = render(<DynamicListHeader {...defaultProps} />);
86
86
 
87
- const header = wrapper.find('.container');
87
+ const header = container.querySelector('.container') as HTMLElement;
88
88
 
89
- expect(header.prop('style')).toHaveProperty(
90
- 'gridColumnGap',
91
- defaultProps.columnGap,
92
- );
93
- expect(header.prop('style')).toHaveProperty(
94
- 'alignItems',
95
- defaultProps.verticalTextAlign,
96
- );
97
- expect(header.prop('style')).toHaveProperty(
98
- 'gridAutoRows',
99
- defaultProps.rowHeight,
100
- );
101
- expect(header.prop('style')).toHaveProperty(
102
- 'gridTemplateColumns',
103
- defaultProps.columnSizes,
104
- );
105
- expect(header.prop('style')).toHaveProperty(
106
- 'justifyItems',
107
- defaultProps.horizontalTextAlign,
108
- );
89
+ expect(header.style.gridColumnGap).toBe(defaultProps.columnGap);
90
+ expect(header.style.alignItems).toBe(defaultProps.verticalTextAlign);
91
+ expect(header.style.gridAutoRows).toBe(defaultProps.rowHeight);
92
+ expect(header.style.gridTemplateColumns).toBe(defaultProps.columnSizes);
93
+ expect(header.style.justifyItems).toBe(defaultProps.horizontalTextAlign);
109
94
  });
110
95
 
111
96
  it('renders a label for every column if set', () => {
112
- const wrapper = shallow(<DynamicListHeader {...defaultProps} />);
97
+ const { container } = render(<DynamicListHeader {...defaultProps} />);
113
98
 
114
- const columns = wrapper.find('.column').slice(0, -1); // remove the last column, which is the action column
99
+ const columns = Array.from(container.querySelectorAll('.column')).slice(
100
+ 0,
101
+ -1,
102
+ ); // remove the last column, which is the action column
115
103
 
116
104
  columns.forEach((column, idx) => {
117
- expect(column.text()).toEqual(defaultColumns[idx].label);
105
+ expect(column.textContent).toEqual(defaultColumns[idx].label);
118
106
  });
119
107
  });
120
108
 
121
109
  it(`renders the position column if 'showPositionColumn' is set to true`, () => {
122
- const wrapper = shallow(
110
+ const { container } = render(
123
111
  <DynamicListHeader
124
112
  {...defaultProps}
125
113
  columnSizes={''}
@@ -131,16 +119,16 @@ describe('DynamicListHeader', () => {
131
119
  />,
132
120
  );
133
121
 
134
- const position = wrapper.find('.position');
122
+ const position = container.querySelector('.position');
135
123
 
136
- expect(position.exists()).toBe(true);
137
- expect(position.text()).toBe('Position');
124
+ expect(position).toBeInTheDocument();
125
+ expect(position?.textContent).toBe('Position');
138
126
  });
139
127
 
140
128
  it(`sets the position label if set`, () => {
141
129
  const mockLabel = 'test-label';
142
130
 
143
- const wrapper = shallow(
131
+ const { container } = render(
144
132
  <DynamicListHeader
145
133
  {...defaultProps}
146
134
  columnSizes={''}
@@ -152,14 +140,14 @@ describe('DynamicListHeader', () => {
152
140
  />,
153
141
  );
154
142
 
155
- const position = wrapper.find('.position');
143
+ const position = container.querySelector('.position');
156
144
 
157
- expect(position.exists()).toBe(true);
158
- expect(position.text()).toBe(mockLabel);
145
+ expect(position).toBeInTheDocument();
146
+ expect(position?.textContent).toBe(mockLabel);
159
147
  });
160
148
 
161
149
  it(`doesn't render the position column if a 'positionKey' isn't set`, () => {
162
- const wrapper = shallow(
150
+ const { container } = render(
163
151
  <DynamicListHeader
164
152
  {...defaultProps}
165
153
  columnSizes={''}
@@ -168,13 +156,13 @@ describe('DynamicListHeader', () => {
168
156
  />,
169
157
  );
170
158
 
171
- const position = wrapper.find('.position');
159
+ const position = container.querySelector('.position');
172
160
 
173
- expect(position.exists()).toBe(false);
161
+ expect(position).not.toBeInTheDocument();
174
162
  });
175
163
 
176
164
  it(`doesn't render the position column if 'allowReordering' is false`, () => {
177
- const wrapper = shallow(
165
+ const { container } = render(
178
166
  <DynamicListHeader
179
167
  {...defaultProps}
180
168
  columnSizes={''}
@@ -184,27 +172,29 @@ describe('DynamicListHeader', () => {
184
172
  />,
185
173
  );
186
174
 
187
- const position = wrapper.find('.position');
175
+ const position = container.querySelector('.position');
188
176
 
189
- expect(position.exists()).toBe(false);
177
+ expect(position).not.toBeInTheDocument();
190
178
  });
191
179
 
192
180
  describe('Column Resizing', () => {
193
181
  it('calls onResetColumnSizes when the reset button is clicked', () => {
194
- const spy = jest.fn();
195
- const wrapper = shallow(
182
+ const spy = vi.fn();
183
+ const { container } = render(
196
184
  <DynamicListHeader {...defaultProps} onResetColumnSizes={spy} />,
197
185
  );
198
186
 
199
- const resetButton = wrapper.find('.resizeHandle').first();
200
- resetButton.simulate('doubleClick');
187
+ const resetButton = container.querySelector(
188
+ '.resizeHandle',
189
+ ) as HTMLElement;
190
+ fireEvent.doubleClick(resetButton);
201
191
 
202
192
  expect(spy).toHaveBeenCalledTimes(1);
203
193
  });
204
194
 
205
195
  it('calls onResetColumnSizes when the reset button is clicked also on non-resizable column', () => {
206
- const spy = jest.fn();
207
- const wrapper = shallow(
196
+ const spy = vi.fn();
197
+ const { container } = render(
208
198
  <DynamicListHeader
209
199
  {...defaultProps}
210
200
  columns={[
@@ -215,27 +205,33 @@ describe('DynamicListHeader', () => {
215
205
  />,
216
206
  );
217
207
 
218
- const resetButton = wrapper.find('.resizeHandle').first();
219
- resetButton.simulate('doubleClick');
208
+ const resetButton = container.querySelector(
209
+ '.resizeHandle',
210
+ ) as HTMLElement;
211
+ fireEvent.doubleClick(resetButton);
220
212
 
221
213
  expect(spy).toHaveBeenCalledTimes(1);
222
214
  });
223
215
 
224
216
  it('calls onColumnSizesChanged when the column is resized', () => {
225
- const spy = jest.fn();
226
- const wrapper = mount(
217
+ const spy = vi.fn();
218
+ const { container } = render(
227
219
  <DynamicListHeader {...defaultProps} onColumnSizesChanged={spy} />,
228
220
  );
229
221
 
230
- const resizeHandle = wrapper.find('.resizeHandle').first();
231
- resizeHandle.invoke('onMouseDown')!({
232
- preventDefault: jest.fn(),
233
- } as any);
222
+ const resizeHandle = container.querySelector(
223
+ '.resizeHandle',
224
+ ) as HTMLElement;
225
+
226
+ fireEvent.mouseDown(resizeHandle, {
227
+ preventDefault: vi.fn(),
228
+ });
234
229
 
235
- window.dispatchEvent(
236
- new Event('mousemove', {
230
+ fireEvent(
231
+ window,
232
+ new MouseEvent('mousemove', {
237
233
  clientX: 100,
238
- } as any),
234
+ }),
239
235
  );
240
236
 
241
237
  window.dispatchEvent(new Event('mouseup', {} as any));
@@ -34,6 +34,7 @@
34
34
 
35
35
  &:hover .editable {
36
36
  border: 1px solid var(--input-hover-color, $input-hover-color);
37
+ padding: 0 12px;
37
38
  }
38
39
 
39
40
  .column {
@@ -79,10 +80,16 @@
79
80
  }
80
81
 
81
82
  .dragIcon {
82
- stroke: var(--dynamic-list-row-disabled-drag-icon-color, $dynamic-list-row-disabled-drag-icon-color);
83
+ stroke: var(
84
+ --dynamic-list-row-disabled-drag-icon-color,
85
+ $dynamic-list-row-disabled-drag-icon-color
86
+ );
83
87
 
84
88
  rect {
85
- fill: var(--dynamic-list-row-disabled-drag-icon-color, $dynamic-list-row-disabled-drag-icon-color);
89
+ fill: var(
90
+ --dynamic-list-row-disabled-drag-icon-color,
91
+ $dynamic-list-row-disabled-drag-icon-color
92
+ );
86
93
  }
87
94
  }
88
95
  }