@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,7 +1,8 @@
1
- import { mount, shallow } from 'enzyme';
1
+ import { fireEvent, render } from '@testing-library/react';
2
2
  import React from 'react';
3
3
  import { BrowserRouter as Router } from 'react-router-dom';
4
- import { IconName, Icons } from '../../Icons';
4
+ import { describe, expect, it, vi } from 'vitest';
5
+ import { IconName } from '../../Icons';
5
6
  import { ButtonContext } from '../Button.model';
6
7
  import { CompositeButton } from './CompositeButton';
7
8
 
@@ -16,35 +17,38 @@ const CustomIcon: React.FC = () => (
16
17
  describe('CompositeButton', () => {
17
18
  describe('Composite context button', () => {
18
19
  it('renders the component without crashing', () => {
19
- const wrapper = shallow(<CompositeButton />);
20
+ const { container } = render(<CompositeButton />);
20
21
 
21
- expect(wrapper).toBeTruthy();
22
+ expect(container.querySelector('button')).toBeInTheDocument();
22
23
  });
23
24
 
24
25
  it('raises the onButtonClicked event', () => {
25
- const spy = jest.fn();
26
- const wrapper = mount(<CompositeButton onButtonClicked={spy} />);
26
+ const spy = vi.fn();
27
+ const { container } = render(<CompositeButton onButtonClicked={spy} />);
27
28
 
28
- wrapper.simulate('click');
29
+ const button = container.querySelector('button')!;
30
+ fireEvent.click(button);
29
31
 
30
32
  expect(spy).toHaveBeenCalledTimes(1);
31
33
  });
32
34
 
33
35
  it('creates a class based off of the className prop', () => {
34
36
  const mockClassName = 'test-class';
35
- const wrapper = mount(<CompositeButton className={mockClassName} />);
37
+ const { container } = render(
38
+ <CompositeButton className={mockClassName} />,
39
+ );
36
40
 
37
- const button = wrapper.find('button');
41
+ const button = container.querySelector('button')!;
38
42
 
39
- expect(button.hasClass(mockClassName)).toBe(true);
43
+ expect(button.classList.contains(mockClassName)).toBe(true);
40
44
  });
41
45
 
42
46
  it(`button 'type' must be 'button' by default`, () => {
43
- const wrapper = mount(<CompositeButton />);
47
+ const { container } = render(<CompositeButton />);
44
48
 
45
- const buttonType = wrapper.find('button').prop('type');
49
+ const button = container.querySelector('button')!;
46
50
 
47
- expect(buttonType).toBe('button');
51
+ expect(button.type).toBe('button');
48
52
  });
49
53
 
50
54
  it('accepts type html attribute and width/height styles', () => {
@@ -52,293 +56,290 @@ describe('CompositeButton', () => {
52
56
  const mockHeight = '75px';
53
57
  const mockWidth = '80px';
54
58
 
55
- const wrapper = mount(<CompositeButton />);
59
+ const { container, rerender } = render(<CompositeButton />);
56
60
 
57
- let buttonType = wrapper.find('button').prop('type');
58
- let buttonStyles = wrapper
59
- .find('button')
60
- .prop('style') as React.CSSProperties;
61
+ let button = container.querySelector('button')!;
61
62
 
62
- expect(buttonType).toBe('button');
63
- expect(buttonStyles.height).toBeUndefined();
64
- expect(buttonStyles.width).toBeUndefined();
63
+ expect(button.type).toBe('button');
64
+ expect(button.style.height).toBe('');
65
+ expect(button.style.width).toBe('');
65
66
 
66
- wrapper.setProps({
67
- type: mockType,
68
- height: mockHeight,
69
- width: mockWidth,
70
- });
71
- wrapper.update();
67
+ rerender(
68
+ <CompositeButton
69
+ type={mockType}
70
+ height={mockHeight}
71
+ width={mockWidth}
72
+ />,
73
+ );
72
74
 
73
- buttonType = wrapper.find('button').prop('type');
74
- buttonStyles = wrapper
75
- .find('button')
76
- .prop('style') as React.CSSProperties;
75
+ button = container.querySelector('button')!;
77
76
 
78
- expect(buttonType).toBe(mockType);
79
- expect(buttonStyles.height).toBe(mockHeight);
80
- expect(buttonStyles.width).toBe(mockWidth);
77
+ expect(button.type).toBe(mockType);
78
+ expect(button.style.height).toBe(mockHeight);
79
+ expect(button.style.width).toBe(mockWidth);
81
80
  });
82
81
 
83
82
  it('allows the button to be enabled by default', () => {
84
- const spy = jest.fn();
85
- const wrapper = mount(<CompositeButton onButtonClicked={spy} />);
83
+ const spy = vi.fn();
84
+ const { container } = render(<CompositeButton onButtonClicked={spy} />);
86
85
 
87
- const button = wrapper.find('button');
86
+ const button = container.querySelector('button')!;
88
87
 
89
- wrapper.simulate('click');
88
+ fireEvent.click(button);
90
89
 
91
- expect(button.prop('disabled')).toBe(false);
90
+ expect(button.disabled).toBe(false);
92
91
  expect(spy).toHaveBeenCalledTimes(1);
93
92
  });
94
93
 
95
94
  it('allows button to be disabled', () => {
96
- const spy = jest.fn();
97
- const wrapper = mount(
95
+ const spy = vi.fn();
96
+ const { container } = render(
98
97
  <CompositeButton disabled={true} onButtonClicked={spy} />,
99
98
  );
100
99
 
101
- const button = wrapper.find('button');
100
+ const button = container.querySelector('button')!;
102
101
 
103
- wrapper.simulate('click');
102
+ fireEvent.click(button);
104
103
 
105
- expect(button.prop('disabled')).toBe(true);
104
+ expect(button.disabled).toBe(true);
106
105
  expect(spy).not.toHaveBeenCalled();
107
106
  });
108
107
 
109
108
  it('default should have a context class', () => {
110
- const wrapper = mount(<CompositeButton />);
109
+ const { container } = render(<CompositeButton />);
111
110
 
112
- const button = wrapper.find('button');
111
+ const button = container.querySelector('button')!;
113
112
 
114
- expect(button.hasClass('context')).toBe(true);
113
+ expect(button.classList.contains('context')).toBe(true);
115
114
  });
116
115
 
117
116
  it('context button type should have a context class', () => {
118
- const wrapper = mount(
117
+ const { container } = render(
119
118
  <CompositeButton buttonContext={ButtonContext.Context} />,
120
119
  );
121
120
 
122
- const button = wrapper.find('button');
121
+ const button = container.querySelector('button')!;
123
122
 
124
- expect(button.hasClass('context')).toBe(true);
123
+ expect(button.classList.contains('context')).toBe(true);
125
124
  });
126
125
 
127
126
  it('active button type should have a active class', () => {
128
- const wrapper = mount(
127
+ const { container } = render(
129
128
  <CompositeButton buttonContext={ButtonContext.Active} />,
130
129
  );
131
130
 
132
- const button = wrapper.find('button');
131
+ const button = container.querySelector('button')!;
133
132
 
134
- expect(button.hasClass('active')).toBe(true);
133
+ expect(button.classList.contains('active')).toBe(true);
135
134
  });
136
135
 
137
136
  it(`renders value from 'text' prop`, () => {
138
137
  const mockText = 'mock-text';
139
138
 
140
- const wrapper = mount(<CompositeButton text={mockText} />);
139
+ const { container } = render(<CompositeButton text={mockText} />);
141
140
 
142
- const button = wrapper.find('button');
141
+ const button = container.querySelector('button')!;
143
142
 
144
- expect(button.text()).toBe(mockText);
143
+ expect(button.textContent).toBe(mockText);
145
144
  });
146
145
 
147
146
  it(`defaults to an empty string is 'text' prop is not set`, () => {
148
- const wrapper = mount(<CompositeButton />);
147
+ const { container } = render(<CompositeButton />);
149
148
 
150
- const button = wrapper.find('button');
149
+ const button = container.querySelector('button')!;
151
150
 
152
- expect(button.text()).toBe('');
151
+ expect(button.textContent).toBe('');
153
152
  });
154
153
 
155
154
  it('renders `customIcon` when provided', () => {
156
- const wrapper = mount(<CompositeButton customIcon={<CustomIcon />} />);
157
- const customIcon = wrapper.find(CustomIcon);
155
+ const { container } = render(
156
+ <CompositeButton customIcon={<CustomIcon />} />,
157
+ );
158
+ const customIcon = container.querySelector('svg');
158
159
 
159
- expect(customIcon.exists()).toBeTruthy();
160
+ expect(customIcon).toBeInTheDocument();
160
161
  });
161
162
 
162
163
  it('renders `customIcon` instead of `icon` when both provided', () => {
163
- const wrapper = mount(
164
+ const { container } = render(
164
165
  <CompositeButton
165
166
  customIcon={<CustomIcon />}
166
167
  icon={IconName.ChevronRight}
167
168
  />,
168
169
  );
169
- const customIcon = wrapper.find(CustomIcon);
170
+ const svgs = container.querySelectorAll('svg');
170
171
 
171
- expect(customIcon.exists()).toBeTruthy();
172
- expect(wrapper.find(Icons).exists()).toBeFalsy();
172
+ expect(svgs).toHaveLength(1);
173
173
  });
174
174
  });
175
175
 
176
176
  describe('Composite navigation button', () => {
177
177
  it('renders the component without crashing', () => {
178
- const wrapper = shallow(<CompositeButton path="/example" />);
178
+ const { container } = render(
179
+ <Router>
180
+ <CompositeButton path="/example" />
181
+ </Router>,
182
+ );
179
183
 
180
- expect(wrapper).toBeTruthy();
184
+ expect(container.querySelector('a')).toBeInTheDocument();
181
185
  });
182
186
 
183
187
  it('renders a Link component with the provided path', () => {
184
188
  const mockPath = '/example';
185
- const wrapper = mount(
189
+ const { container } = render(
186
190
  <Router>
187
191
  <CompositeButton path={mockPath} />
188
192
  </Router>,
189
193
  );
190
194
 
191
- const link = wrapper.find('Link');
195
+ const link = container.querySelector('a')!;
192
196
 
193
- expect(link.prop('to')).toBe(mockPath);
197
+ expect(link.getAttribute('href')).toBe(mockPath);
194
198
  });
195
199
 
196
200
  it('applies the provided className to the component', () => {
197
201
  const mockClassName = 'test-class';
198
- const wrapper = mount(
202
+ const { container } = render(
199
203
  <Router>
200
204
  <CompositeButton className={mockClassName} path="/example" />
201
205
  </Router>,
202
206
  );
203
207
 
204
- const link = wrapper.find('Link');
208
+ const link = container.querySelector('a')!;
205
209
 
206
- expect(link.hasClass(mockClassName)).toBe(true);
210
+ expect(link.classList.contains(mockClassName)).toBe(true);
207
211
  });
208
212
 
209
213
  it('applies the disabled class when disabled prop is true', () => {
210
- const wrapper = mount(
214
+ const { container } = render(
211
215
  <Router>
212
- <CompositeButton disabled={true} path="/example" />,
216
+ <CompositeButton disabled={true} path="/example" />
213
217
  </Router>,
214
218
  );
215
219
 
216
- const link = wrapper.find('Link');
220
+ const link = container.querySelector('a')!;
217
221
 
218
- expect(link.hasClass('disabled')).toBe(true);
222
+ expect(link.classList.contains('disabled')).toBe(true);
219
223
  });
220
224
 
221
225
  it('does not apply the disabled class when disabled prop is false', () => {
222
- const wrapper = mount(
226
+ const { container } = render(
223
227
  <Router>
224
228
  <CompositeButton disabled={false} path="/example" />
225
229
  </Router>,
226
230
  );
227
231
 
228
- const link = wrapper.find('Link');
232
+ const link = container.querySelector('a')!;
229
233
 
230
- expect(link.hasClass('disabled')).toBe(false);
234
+ expect(link.classList.contains('disabled')).toBe(false);
231
235
  });
232
236
 
233
237
  it('sets the height and width styles based on the provided props', () => {
234
238
  const mockHeight = '50px';
235
239
  const mockWidth = '100px';
236
- const wrapper = mount(
240
+ const { container } = render(
237
241
  <Router>
238
242
  <CompositeButton
239
243
  height={mockHeight}
240
244
  width={mockWidth}
241
245
  path="/example"
242
246
  />
243
- ,
244
247
  </Router>,
245
248
  );
246
249
 
247
- const link = wrapper.find('Link');
250
+ const link = container.querySelector('a')!;
248
251
 
249
- expect(link.prop('style')?.height).toBe(mockHeight);
250
- expect(link.prop('style')?.width).toBe(mockWidth);
252
+ expect(link.style.height).toBe(mockHeight);
253
+ expect(link.style.width).toBe(mockWidth);
251
254
  });
252
255
 
253
256
  it('sets the direction style to "rtl" when iconPosition is "left"', () => {
254
- const wrapper = mount(
257
+ const { container } = render(
255
258
  <Router>
256
259
  <CompositeButton iconPosition="left" path="/example" />
257
260
  </Router>,
258
261
  );
259
262
 
260
- const link = wrapper.find('Link');
263
+ const link = container.querySelector('a')!;
261
264
 
262
- expect(link.prop('style')).toEqual({
263
- direction: 'rtl',
264
- });
265
+ expect(link.style.direction).toBe('rtl');
265
266
  });
266
267
 
267
268
  it('sets the direction style to "ltr" when iconPosition is "right"', () => {
268
- const wrapper = mount(
269
+ const { container } = render(
269
270
  <Router>
270
271
  <CompositeButton iconPosition="right" path="/example" />
271
272
  </Router>,
272
273
  );
273
274
 
274
- const link = wrapper.find('Link');
275
+ const link = container.querySelector('a')!;
275
276
 
276
- expect(link.prop('style')).toEqual({
277
- direction: 'ltr',
278
- });
277
+ expect(link.style.direction).toBe('ltr');
279
278
  });
280
279
 
281
280
  it('renders the text inside a div', () => {
282
281
  const mockText = 'Example Button';
283
- const wrapper = mount(
282
+ const { container } = render(
284
283
  <Router>
285
284
  <CompositeButton text={mockText} path="/example" />
286
285
  </Router>,
287
286
  );
288
287
 
289
- const textDiv = wrapper.find('div').at(0);
288
+ const textDiv = container.querySelector('div')!;
290
289
 
291
- expect(textDiv.text()).toBe(mockText);
290
+ expect(textDiv.textContent).toBe(mockText);
292
291
  });
293
292
 
294
293
  it('renders the icon inside a div when icon prop is provided', () => {
295
294
  const mockIcon = IconName.Calendar;
296
- const wrapper = mount(
295
+ const { container } = render(
297
296
  <Router>
298
297
  <CompositeButton icon={mockIcon} path="/example" />
299
298
  </Router>,
300
299
  );
301
300
 
302
- const iconDiv = wrapper.find('div').at(1);
301
+ const svg = container.querySelector('svg');
303
302
 
304
- expect(iconDiv.find('Icons').prop('icon')).toBe(mockIcon);
303
+ expect(svg).toBeInTheDocument();
305
304
  });
306
305
 
307
306
  it('renders the Icons component with the correct default icon', () => {
308
- const wrapper = mount(
307
+ const { container } = render(
309
308
  <Router>
310
309
  <CompositeButton path="/example" />
311
310
  </Router>,
312
311
  );
313
- const iconDiv = wrapper.find('div').at(1);
314
312
 
315
- expect(iconDiv.find('Icons').prop('icon')).toBe(IconName.ChevronRight);
313
+ const svg = container.querySelector('svg');
314
+
315
+ expect(svg).toBeInTheDocument();
316
316
  });
317
317
 
318
318
  it('renders `External` icon by default when none provided and `openInNewTab: true`', () => {
319
- const wrapper = mount(
319
+ const { container } = render(
320
320
  <Router>
321
321
  <CompositeButton path="/example" openInNewTab={true} />
322
322
  </Router>,
323
323
  );
324
- const iconDiv = wrapper.find('div').at(1);
325
324
 
326
- expect(iconDiv.find('Icons').prop('icon')).toBe(IconName.External);
325
+ const svg = container.querySelector('svg');
326
+
327
+ expect(svg).toBeInTheDocument();
327
328
  });
328
329
 
329
330
  it('renders `customIcon` when provided', () => {
330
- const wrapper = mount(
331
+ const { container } = render(
331
332
  <Router>
332
333
  <CompositeButton customIcon={<CustomIcon />} path="/example" />
333
334
  </Router>,
334
335
  );
335
- const customIcon = wrapper.find(CustomIcon);
336
+ const customIcon = container.querySelector('svg');
336
337
 
337
- expect(customIcon.exists()).toBeTruthy();
338
+ expect(customIcon).toBeInTheDocument();
338
339
  });
339
340
 
340
341
  it('renders `customIcon` instead of `icon` when both provided', () => {
341
- const wrapper = mount(
342
+ const { container } = render(
342
343
  <Router>
343
344
  <CompositeButton
344
345
  customIcon={<CustomIcon />}
@@ -347,34 +348,34 @@ describe('CompositeButton', () => {
347
348
  />
348
349
  </Router>,
349
350
  );
350
- const iconDiv = wrapper.find('div').at(1);
351
351
 
352
- expect(iconDiv.find('CustomIcon').exists()).toBeTruthy();
353
- expect(iconDiv.find('Icons').exists()).toBeFalsy();
352
+ const svgs = container.querySelectorAll('svg');
353
+
354
+ expect(svgs).toHaveLength(1);
354
355
  });
355
356
 
356
357
  it('renders the default data-test-id when dataTestId prop is not provided', () => {
357
- const wrapper = mount(
358
+ const { container } = render(
358
359
  <Router>
359
360
  <CompositeButton path="/example" />
360
361
  </Router>,
361
362
  );
362
363
 
363
- const link = wrapper.find('Link');
364
+ const link = container.querySelector('a')!;
364
365
 
365
- expect(link.prop('data-test-id')).toBe('text-button');
366
+ expect(link.getAttribute('data-test-id')).toBe('text-button');
366
367
  });
367
368
 
368
369
  it('renders the provided data-test-id when dataTestId prop is provided', () => {
369
370
  const mockDataTestId = 'test-id';
370
- const wrapper = mount(
371
+ const { container } = render(
371
372
  <Router>
372
373
  <CompositeButton dataTestId={mockDataTestId} path="/example" />
373
374
  </Router>,
374
375
  );
375
- const link = wrapper.find('Link');
376
+ const link = container.querySelector('a')!;
376
377
 
377
- expect(link.prop('data-test-id')).toBe(mockDataTestId);
378
+ expect(link.getAttribute('data-test-id')).toBe(mockDataTestId);
378
379
  });
379
380
  });
380
381
  });