@griddo/ax 12.3.0 → 12.4.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 (288) hide show
  1. package/config/{jest/componentsMock.js → tests/componentsMock.cjs} +4 -1
  2. package/config/tests/reactEasyCropMock.js +15 -0
  3. package/config/tests/reactTimezoneMock.js +14 -0
  4. package/config/tests/setup.ts +41 -0
  5. package/package.json +15 -29
  6. package/public/img/icons/markdown.svg +6 -0
  7. package/src/__tests__/components/ActionMenu/ActionMenu.test.tsx +12 -12
  8. package/src/__tests__/components/Breadcrumb/Breadcrumb.test.tsx +2 -2
  9. package/src/__tests__/components/Browser/Browser.test.tsx +17 -25
  10. package/src/__tests__/components/BulkSelectionOptions/BulkSelectionOptions.test.tsx +3 -3
  11. package/src/__tests__/components/CategoryCell/CategoryCell.test.tsx +3 -2
  12. package/src/__tests__/components/ConfigPanel/ConfigPanel.test.tsx +4 -4
  13. package/src/__tests__/components/ConfigPanel/Form/ConnectedField/ConnectedField.test.tsx +2 -2
  14. package/src/__tests__/components/ConfigPanel/Form/ConnectedField/NavConnectedField/NavConnectedField.test.tsx +2 -2
  15. package/src/__tests__/components/ConfigPanel/Form/ConnectedField/PageConnectedField/Field/Field.test.tsx +3 -3
  16. package/src/__tests__/components/ConfigPanel/Form/ConnectedField/PageConnectedField/PageConnectedField.test.tsx +17 -14
  17. package/src/__tests__/components/ConfigPanel/Form/ConnectedField/PageConnectedField/TemplateManager/TemplateManager.test.tsx +4 -4
  18. package/src/__tests__/components/ConfigPanel/Form/Form.test.tsx +7 -6
  19. package/src/__tests__/components/ConfigPanel/GlobalPageForm/GlobalPageForm.test.tsx +11 -11
  20. package/src/__tests__/components/ConfigPanel/Header/Header.test.tsx +11 -10
  21. package/src/__tests__/components/ConfigPanel/NavigationForm/Field/Field.test.tsx +2 -2
  22. package/src/__tests__/components/ConfigPanel/NavigationForm/NavigationForm.test.tsx +2 -2
  23. package/src/__tests__/components/ConfigPanel/PreviewForm/PreviewForm.test.tsx +4 -3
  24. package/src/__tests__/components/ContextMenu/ContextMenu.test.tsx +24 -24
  25. package/src/__tests__/components/DragAndDrop/DragAndDrop.test.tsx +6 -5
  26. package/src/__tests__/components/ElementsTooltip/ElementsTooltip.test.tsx +1 -1
  27. package/src/__tests__/components/EmptyState/EmptyState.test.tsx +2 -2
  28. package/src/__tests__/components/ErrorCenter/ErrorCenter.test.tsx +11 -11
  29. package/src/__tests__/components/FieldContainer/FieldContainer.test.tsx +4 -4
  30. package/src/__tests__/components/Fields/AnalyticsField/AnalyticsField.test.tsx +3 -3
  31. package/src/__tests__/components/Fields/AnalyticsField/PageAnalytics/PageAnalytics.test.tsx +4 -4
  32. package/src/__tests__/components/Fields/AnalyticsField/StructuredDataAnalytics/StructuredDataAnalytics.test.tsx +3 -3
  33. package/src/__tests__/components/Fields/ArrayFieldGroup/ArrayFieldGroup.test.tsx +6 -5
  34. package/src/__tests__/components/Fields/AsyncCheckGroup/AsyncCheckGroup.test.tsx +19 -18
  35. package/src/__tests__/components/Fields/AsyncSelect/AsyncSelect.test.tsx +4 -3
  36. package/src/__tests__/components/Fields/Button/Button.test.tsx +4 -3
  37. package/src/__tests__/components/Fields/CheckField/CheckField.test.tsx +5 -5
  38. package/src/__tests__/components/Fields/CheckGroup/CheckGroup.test.tsx +10 -10
  39. package/src/__tests__/components/Fields/ColorPicker/ColorPicker.test.tsx +7 -6
  40. package/src/__tests__/components/Fields/ComponentArray/ComponentArray.test.tsx +3 -3
  41. package/src/__tests__/components/Fields/ComponentArray/MixableComponentArray/MixableComponentArray.test.tsx +45 -45
  42. package/src/__tests__/components/Fields/ComponentArray/MixableComponentArray/PasteModuleButton/PasteModuleButton.test.tsx +7 -6
  43. package/src/__tests__/components/Fields/ComponentArray/SameComponentArray/SameComponentArray.test.tsx +7 -7
  44. package/src/__tests__/components/Fields/ComponentContainer/ComponentContainer.test.tsx +55 -55
  45. package/src/__tests__/components/Fields/ConditionalField/ConditionalField.test.tsx +1 -1
  46. package/src/__tests__/components/Fields/DateField/DateField.test.tsx +6 -5
  47. package/src/__tests__/components/Fields/FieldGroup/FieldGroup.test.tsx +2 -2
  48. package/src/__tests__/components/Fields/FileField/FileField.test.tsx +4 -4
  49. package/src/__tests__/components/Fields/HeadingField/HeadingField.test.tsx +2 -2
  50. package/src/__tests__/components/Fields/HiddenField/HiddenField.test.tsx +3 -3
  51. package/src/__tests__/components/Fields/ImageField/ImageField.test.tsx +8 -7
  52. package/src/__tests__/components/Fields/IntegrationsField/IntegrationsField.test.tsx +9 -8
  53. package/src/__tests__/components/Fields/MultiCheckSelect/MultiCheckSelect.test.tsx +1 -1
  54. package/src/__tests__/components/Fields/MultiCheckSelectGroup/MultiCheckSelectGroup.test.tsx +7 -6
  55. package/src/__tests__/components/Fields/NoteField/NoteField.test.tsx +1 -1
  56. package/src/__tests__/components/Fields/NumberField/NumberField.test.tsx +8 -8
  57. package/src/__tests__/components/Fields/RadioField/RadioField.test.tsx +2 -2
  58. package/src/__tests__/components/Fields/ReferenceField/ReferenceField.test.tsx +17 -16
  59. package/src/__tests__/components/Fields/RichText/RichText.test.tsx +1 -1
  60. package/src/__tests__/components/Fields/Select/Select.test.tsx +1 -1
  61. package/src/__tests__/components/Fields/SliderField/SliderField.test.tsx +5 -4
  62. package/src/__tests__/components/Fields/SummaryButton/SummaryButton.test.tsx +2 -2
  63. package/src/__tests__/components/Fields/TagField/TagField.test.tsx +9 -9
  64. package/src/__tests__/components/Fields/TextArea/TextArea.test.tsx +13 -9
  65. package/src/__tests__/components/Fields/TextField/TextField.test.tsx +8 -8
  66. package/src/__tests__/components/Fields/TimeField/HourInput/HourInput.test.tsx +7 -6
  67. package/src/__tests__/components/Fields/TimeField/TimeField.test.tsx +4 -3
  68. package/src/__tests__/components/Fields/ToggleField/ToggleField.test.tsx +2 -2
  69. package/src/__tests__/components/Fields/Tooltip/Tooltip.test.tsx +6 -6
  70. package/src/__tests__/components/Fields/TranslateButton/TranslateButton.test.tsx +13 -13
  71. package/src/__tests__/components/Fields/UniqueCheck/UniqueCheck.test.tsx +1 -1
  72. package/src/__tests__/components/Fields/UrlField/UrlField.test.tsx +20 -19
  73. package/src/__tests__/components/Fields/VisualUniqueSelection/ImageSelection/ImageSelection.test.tsx +3 -2
  74. package/src/__tests__/components/Fields/VisualUniqueSelection/ScrollableSelection/ScrollableSelection.test.tsx +4 -3
  75. package/src/__tests__/components/Fields/VisualUniqueSelection/VisualUniqueSelection.test.tsx +1 -1
  76. package/src/__tests__/components/Fields/Wysiwyg/Wysiwyg.atoms.test.tsx +11 -11
  77. package/src/__tests__/components/Fields/Wysiwyg/Wysiwyg.helpers.test.tsx +13 -14
  78. package/src/__tests__/components/Fields/Wysiwyg/Wysiwyg.test.tsx +28 -28
  79. package/src/__tests__/components/FieldsBehavior/FieldsBehavior.test.tsx +15 -14
  80. package/src/__tests__/components/FloatingMenu/FloatingMenu.test.tsx +36 -35
  81. package/src/__tests__/components/FloatingPanel/FloatingPanel.test.tsx +10 -10
  82. package/src/__tests__/components/GuardModal/GuardModal.test.tsx +1 -1
  83. package/src/__tests__/components/HeadingsPreviewModal/ErrorsBanner/ErrorItem/ErrorItem.test.tsx +11 -11
  84. package/src/__tests__/components/HeadingsPreviewModal/ErrorsBanner/ErrorsBanner.test.tsx +4 -4
  85. package/src/__tests__/components/HeadingsPreviewModal/HeadingsPreviewModal.test.tsx +15 -14
  86. package/src/__tests__/components/IconAction/IconAction.test.tsx +2 -2
  87. package/src/__tests__/components/ImageDragAndDrop/CropStep/CropStep.test.tsx +3 -3
  88. package/src/__tests__/components/ImageDragAndDrop/ImageDragAndDrop.test.tsx +7 -7
  89. package/src/__tests__/components/KeywordsPreviewModal/KeywordItem/KeywordItem.test.tsx +5 -5
  90. package/src/__tests__/components/KeywordsPreviewModal/KeywordsPreviewModal.test.tsx +14 -13
  91. package/src/__tests__/components/KeywordsPreviewModal/atoms.test.tsx +13 -13
  92. package/src/__tests__/components/LanguageMenu/LanguageMenu.test.tsx +6 -6
  93. package/src/__tests__/components/Lists/Lists.test.tsx +1 -1
  94. package/src/__tests__/components/Loader/Loader.test.tsx +1 -1
  95. package/src/__tests__/components/Login/Login.test.tsx +32 -32
  96. package/src/__tests__/components/Login/RecoveryModal/RecoveryModal.test.tsx +10 -9
  97. package/src/__tests__/components/MainWrapper/AppBar/AppBar.test.tsx +21 -21
  98. package/src/__tests__/components/MenuItem/MenuItem.test.tsx +5 -5
  99. package/src/__tests__/components/Modal/Modal.test.tsx +20 -20
  100. package/src/__tests__/components/Nav/Nav.test.tsx +2 -2
  101. package/src/__tests__/components/Notification/Notification.test.tsx +2 -2
  102. package/src/__tests__/components/Pagination/Pagination.test.tsx +13 -14
  103. package/src/__tests__/components/ProfileImage/ProfileImage.test.tsx +6 -7
  104. package/src/__tests__/components/ReorderArrows/ReorderArrows.test.tsx +4 -3
  105. package/src/__tests__/components/ResizePanel/ResizePanel.test.tsx +10 -11
  106. package/src/__tests__/components/RestrictionsModal/CurrentAccessList/CurrentAccessList.test.tsx +7 -6
  107. package/src/__tests__/components/RestrictionsModal/OptionsStep/OptionsStep.test.tsx +12 -11
  108. package/src/__tests__/components/RestrictionsModal/RestrictionsModal.test.tsx +11 -10
  109. package/src/__tests__/components/RestrictionsModal/RolesList/RolesList.test.tsx +8 -8
  110. package/src/__tests__/components/RestrictionsModal/UsersList/UsersList.test.tsx +16 -15
  111. package/src/__tests__/components/SearchField/SearchField.test.tsx +13 -13
  112. package/src/__tests__/components/SideModal/SideModal.test.tsx +25 -23
  113. package/src/__tests__/components/SubNav/SubNav.test.tsx +1 -1
  114. package/src/__tests__/components/TableFilters/CategoryFilter/CategoryFilter.test.tsx +9 -8
  115. package/src/__tests__/components/TableFilters/CustomizeFilters/CustomizeFilters.test.tsx +5 -5
  116. package/src/__tests__/components/TableFilters/DateFilter/DateFilter.test.tsx +8 -8
  117. package/src/__tests__/components/TableFilters/LiveFilter/LiveFilter.test.tsx +11 -10
  118. package/src/__tests__/components/TableFilters/NameFilter/NameFilter.test.tsx +10 -10
  119. package/src/__tests__/components/TableFilters/RoleFilter/RoleFilter.test.tsx +5 -5
  120. package/src/__tests__/components/TableFilters/SiteFilter/SiteFilter.test.tsx +10 -9
  121. package/src/__tests__/components/TableFilters/StatusFilter/StatusFilter.test.tsx +9 -9
  122. package/src/__tests__/components/TableFilters/TranslationsFilter/TranslationsFilter.test.tsx +8 -8
  123. package/src/__tests__/components/TableFilters/TypeFilter/TypeFilter.test.tsx +5 -5
  124. package/src/__tests__/components/TableFilters/UsersFilter/UsersFilter.test.tsx +8 -8
  125. package/src/__tests__/components/TableList/TableList.test.tsx +4 -4
  126. package/src/__tests__/components/Tabs/Tabs.test.tsx +8 -9
  127. package/src/__tests__/components/Tag/Tag.test.tsx +3 -3
  128. package/src/__tests__/components/Toast/Toast.test.tsx +6 -6
  129. package/src/__tests__/hooks/modals.test.tsx +4 -4
  130. package/src/__tests__/hooks/users.test.tsx +6 -5
  131. package/src/__tests__/modules/FileDrive/MarkdownFormat.test.tsx +58 -0
  132. package/src/__tests__/modules/FramePreview/FramePreview.test.tsx +40 -39
  133. package/src/__tests__/modules/FramePreview/HeadingsOverlay/HeadingsOverlay.test.tsx +11 -11
  134. package/src/__tests__/modules/Settings/Integrations/Integrations.test.tsx +2 -2
  135. package/src/__tests__/modules/Settings/Social/Social.test.tsx +4 -3
  136. package/src/__tests__/modules/Sites/Sites.test.tsx +5 -4
  137. package/src/__tests__/modules/Sites/SitesList/ListView/BulkHeader/BulkHeader.test.tsx +2 -2
  138. package/src/__tests__/modules/Sites/SitesList/SitesList.test.tsx +7 -6
  139. package/src/__tests__/modules/Sites/SitesList/WelcomeModal/DataStep/DataStep.test.tsx +6 -6
  140. package/src/__tests__/modules/Sites/SitesList/WelcomeModal/FinalStep/FinalStep.test.tsx +4 -4
  141. package/src/__tests__/modules/Sites/SitesList/WelcomeModal/ImageStep/CropView/CropView.test.tsx +3 -3
  142. package/src/__tests__/modules/Sites/SitesList/WelcomeModal/ImageStep/ImageStep.test.tsx +9 -5
  143. package/src/__tests__/modules/Sites/SitesList/WelcomeModal/ImageStep/UploadView/UploadView.test.tsx +8 -6
  144. package/src/__tests__/modules/Sites/SitesList/WelcomeModal/TimezoneStep/TimezoneStep.test.tsx +7 -7
  145. package/src/__tests__/modules/Sites/SitesList/WelcomeModal/WelcomeModal.test.tsx +1 -1
  146. package/src/__tests__/modules/Sites/SitesList/WelcomeModal/WelcomeStep/WelcomeStep.test.tsx +3 -3
  147. package/src/__tests__/modules/Users/Roles/BulkHeader/BulkHeader.test.tsx +3 -3
  148. package/src/__tests__/modules/Users/Roles/Roles.test.tsx +11 -10
  149. package/src/__tests__/modules/Users/UserCreate/SiteItem/RolesModal/RoleItem/RoleItem.test.tsx +3 -3
  150. package/src/__tests__/modules/Users/UserCreate/SiteItem/RolesModal/RolesModal.test.tsx +3 -3
  151. package/src/__tests__/modules/Users/UserCreate/SiteItem/SiteItem.test.tsx +3 -3
  152. package/src/__tests__/modules/Users/UserCreate/UserCreate.test.tsx +6 -5
  153. package/src/__tests__/modules/Users/UserList/UserItem/UserItem.test.tsx +9 -9
  154. package/src/__tests__/modules/Users/UserList/UserList.test.tsx +4 -4
  155. package/src/components/Flag/components/index.ts +30 -0
  156. package/src/components/Flag/index.tsx +3 -5
  157. package/src/components/Icon/components/index.ts +229 -0
  158. package/src/components/Icon/index.tsx +3 -7
  159. package/src/constants/index.ts +1 -1
  160. package/src/helpers/files.tsx +2 -0
  161. package/src/modules/FileDrive/FileFilters/Type/index.tsx +1 -0
  162. package/tsconfig.json +1 -1
  163. package/config/jest/cssTransform.js +0 -14
  164. package/config/jest/fileMock.js +0 -1
  165. package/config/jest/fileTransform.js +0 -40
  166. package/config/jest/reactEasyCropMock.js +0 -15
  167. package/config/jest/reactTimezoneMock.js +0 -13
  168. package/config/jest/setup.js +0 -31
  169. package/config/jest/styleMock.js +0 -1
  170. /package/config/{jest/test-utils.js → tests/test-utils.jsx} +0 -0
  171. /package/src/components/Flag/components/{Ca_ES.js → Ca_ES.jsx} +0 -0
  172. /package/src/components/Flag/components/{De_DE.js → De_DE.jsx} +0 -0
  173. /package/src/components/Flag/components/{En_GB.js → En_GB.jsx} +0 -0
  174. /package/src/components/Flag/components/{Es_ES.js → Es_ES.jsx} +0 -0
  175. /package/src/components/Flag/components/{Eu_ES.js → Eu_ES.jsx} +0 -0
  176. /package/src/components/Flag/components/{Fr_FR.js → Fr_FR.jsx} +0 -0
  177. /package/src/components/Flag/components/{It_IT.js → It_IT.jsx} +0 -0
  178. /package/src/components/Flag/components/{Pt_PT.js → Pt_PT.jsx} +0 -0
  179. /package/src/components/Icon/components/{Active.js → Active.jsx} +0 -0
  180. /package/src/components/Icon/components/{Add.js → Add.jsx} +0 -0
  181. /package/src/components/Icon/components/{AddCircle.js → AddCircle.jsx} +0 -0
  182. /package/src/components/Icon/components/{Alert.js → Alert.jsx} +0 -0
  183. /package/src/components/Icon/components/{AlignLeft.js → AlignLeft.jsx} +0 -0
  184. /package/src/components/Icon/components/{Back.js → Back.jsx} +0 -0
  185. /package/src/components/Icon/components/{BulletList.js → BulletList.jsx} +0 -0
  186. /package/src/components/Icon/components/{Button.js → Button.jsx} +0 -0
  187. /package/src/components/Icon/components/{Calendar.js → Calendar.jsx} +0 -0
  188. /package/src/components/Icon/components/{CancelEvent.js → CancelEvent.jsx} +0 -0
  189. /package/src/components/Icon/components/{Category.js → Category.jsx} +0 -0
  190. /package/src/components/Icon/components/{Change.js → Change.jsx} +0 -0
  191. /package/src/components/Icon/components/{Close.js → Close.jsx} +0 -0
  192. /package/src/components/Icon/components/{ClosePanel.js → ClosePanel.jsx} +0 -0
  193. /package/src/components/Icon/components/{CodeBody.js → CodeBody.jsx} +0 -0
  194. /package/src/components/Icon/components/{CodeHead.js → CodeHead.jsx} +0 -0
  195. /package/src/components/Icon/components/{CodeHeadBody.js → CodeHeadBody.jsx} +0 -0
  196. /package/src/components/Icon/components/{Collapsed.js → Collapsed.jsx} +0 -0
  197. /package/src/components/Icon/components/{ColorPicker.js → ColorPicker.jsx} +0 -0
  198. /package/src/components/Icon/components/{Compose.js → Compose.jsx} +0 -0
  199. /package/src/components/Icon/components/{Copy.js → Copy.jsx} +0 -0
  200. /package/src/components/Icon/components/{Copy2.js → Copy2.jsx} +0 -0
  201. /package/src/components/Icon/components/{Data.js → Data.jsx} +0 -0
  202. /package/src/components/Icon/components/{DataAdd.js → DataAdd.jsx} +0 -0
  203. /package/src/components/Icon/components/{Deactivate.js → Deactivate.jsx} +0 -0
  204. /package/src/components/Icon/components/{Delete.js → Delete.jsx} +0 -0
  205. /package/src/components/Icon/components/{Desktop.js → Desktop.jsx} +0 -0
  206. /package/src/components/Icon/components/{Disabled.js → Disabled.jsx} +0 -0
  207. /package/src/components/Icon/components/{Done.js → Done.jsx} +0 -0
  208. /package/src/components/Icon/components/{DownArrow.js → DownArrow.jsx} +0 -0
  209. /package/src/components/Icon/components/{Download.js → Download.jsx} +0 -0
  210. /package/src/components/Icon/components/{Drag.js → Drag.jsx} +0 -0
  211. /package/src/components/Icon/components/{Duplicate.js → Duplicate.jsx} +0 -0
  212. /package/src/components/Icon/components/{Edit.js → Edit.jsx} +0 -0
  213. /package/src/components/Icon/components/{Empty.js → Empty.jsx} +0 -0
  214. /package/src/components/Icon/components/{EmptyCheck.js → EmptyCheck.jsx} +0 -0
  215. /package/src/components/Icon/components/{Extend.js → Extend.jsx} +0 -0
  216. /package/src/components/Icon/components/{File.js → File.jsx} +0 -0
  217. /package/src/components/Icon/components/{Filter.js → Filter.jsx} +0 -0
  218. /package/src/components/Icon/components/{Form.js → Form.jsx} +0 -0
  219. /package/src/components/Icon/components/{FullArrowDown.js → FullArrowDown.jsx} +0 -0
  220. /package/src/components/Icon/components/{FullArrowLeft.js → FullArrowLeft.jsx} +0 -0
  221. /package/src/components/Icon/components/{FullArrowRight.js → FullArrowRight.jsx} +0 -0
  222. /package/src/components/Icon/components/{FullArrowUp.js → FullArrowUp.jsx} +0 -0
  223. /package/src/components/Icon/components/{Grid.js → Grid.jsx} +0 -0
  224. /package/src/components/Icon/components/{Grid2.js → Grid2.jsx} +0 -0
  225. /package/src/components/Icon/components/{GriddoLogo.js → GriddoLogo.jsx} +0 -0
  226. /package/src/components/Icon/components/{HeroCard.js → HeroCard.jsx} +0 -0
  227. /package/src/components/Icon/components/{Hide.js → Hide.jsx} +0 -0
  228. /package/src/components/Icon/components/{History.js → History.jsx} +0 -0
  229. /package/src/components/Icon/components/{Home.js → Home.jsx} +0 -0
  230. /package/src/components/Icon/components/{Ia.js → Ia.jsx} +0 -0
  231. /package/src/components/Icon/components/{Image.js → Image.jsx} +0 -0
  232. /package/src/components/Icon/components/{Info.js → Info.jsx} +0 -0
  233. /package/src/components/Icon/components/{Laptop.js → Laptop.jsx} +0 -0
  234. /package/src/components/Icon/components/{LeftArrow.js → LeftArrow.jsx} +0 -0
  235. /package/src/components/Icon/components/{Link.js → Link.jsx} +0 -0
  236. /package/src/components/Icon/components/{Lock.js → Lock.jsx} +0 -0
  237. /package/src/components/Icon/components/{Log.js → Log.jsx} +0 -0
  238. /package/src/components/Icon/components/{Map.js → Map.jsx} +0 -0
  239. /package/src/components/Icon/components/{Menu.js → Menu.jsx} +0 -0
  240. /package/src/components/Icon/components/{Microsoft.js → Microsoft.jsx} +0 -0
  241. /package/src/components/Icon/components/{Modified.js → Modified.jsx} +0 -0
  242. /package/src/components/Icon/components/{Modules.js → Modules.jsx} +0 -0
  243. /package/src/components/Icon/components/{More.js → More.jsx} +0 -0
  244. /package/src/components/Icon/components/{NewFolder.js → NewFolder.jsx} +0 -0
  245. /package/src/components/Icon/components/{Offline.js → Offline.jsx} +0 -0
  246. /package/src/components/Icon/components/{OfflinePending.js → OfflinePending.jsx} +0 -0
  247. /package/src/components/Icon/components/{OpenOutside.js → OpenOutside.jsx} +0 -0
  248. /package/src/components/Icon/components/{OpenPanel.js → OpenPanel.jsx} +0 -0
  249. /package/src/components/Icon/components/{OutOfSection.js → OutOfSection.jsx} +0 -0
  250. /package/src/components/Icon/components/{Page.js → Page.jsx} +0 -0
  251. /package/src/components/Icon/components/{Party.js → Party.jsx} +0 -0
  252. /package/src/components/Icon/components/{Paste.js → Paste.jsx} +0 -0
  253. /package/src/components/Icon/components/{Phone.js → Phone.jsx} +0 -0
  254. /package/src/components/Icon/components/{PhotoLibrary.js → PhotoLibrary.jsx} +0 -0
  255. /package/src/components/Icon/components/{Power.js → Power.jsx} +0 -0
  256. /package/src/components/Icon/components/{Preview.js → Preview.jsx} +0 -0
  257. /package/src/components/Icon/components/{Project.js → Project.jsx} +0 -0
  258. /package/src/components/Icon/components/{QrCode.js → QrCode.jsx} +0 -0
  259. /package/src/components/Icon/components/{Question.js → Question.jsx} +0 -0
  260. /package/src/components/Icon/components/{Refresh.js → Refresh.jsx} +0 -0
  261. /package/src/components/Icon/components/{Republish.js → Republish.jsx} +0 -0
  262. /package/src/components/Icon/components/{RightArrow.js → RightArrow.jsx} +0 -0
  263. /package/src/components/Icon/components/{Scheduled.js → Scheduled.jsx} +0 -0
  264. /package/src/components/Icon/components/{Search.js → Search.jsx} +0 -0
  265. /package/src/components/Icon/components/{SendEmail.js → SendEmail.jsx} +0 -0
  266. /package/src/components/Icon/components/{Settings.js → Settings.jsx} +0 -0
  267. /package/src/components/Icon/components/{Share.js → Share.jsx} +0 -0
  268. /package/src/components/Icon/components/{Subsection.js → Subsection.jsx} +0 -0
  269. /package/src/components/Icon/components/{Success.js → Success.jsx} +0 -0
  270. /package/src/components/Icon/components/{SuccessSolid.js → SuccessSolid.jsx} +0 -0
  271. /package/src/components/Icon/components/{Sync.js → Sync.jsx} +0 -0
  272. /package/src/components/Icon/components/{Tablet.js → Tablet.jsx} +0 -0
  273. /package/src/components/Icon/components/{Translate.js → Translate.jsx} +0 -0
  274. /package/src/components/Icon/components/{Unlink.js → Unlink.jsx} +0 -0
  275. /package/src/components/Icon/components/{UpArrow.js → UpArrow.jsx} +0 -0
  276. /package/src/components/Icon/components/{UploadFile.js → UploadFile.jsx} +0 -0
  277. /package/src/components/Icon/components/{UploadPending.js → UploadPending.jsx} +0 -0
  278. /package/src/components/Icon/components/{UrlLink.js → UrlLink.jsx} +0 -0
  279. /package/src/components/Icon/components/{User.js → User.jsx} +0 -0
  280. /package/src/components/Icon/components/{Users.js → Users.jsx} +0 -0
  281. /package/src/components/Icon/components/{Video.js → Video.jsx} +0 -0
  282. /package/src/components/Icon/components/{View.js → View.jsx} +0 -0
  283. /package/src/components/Icon/components/{Warning.js → Warning.jsx} +0 -0
  284. /package/src/components/Icon/components/{Web.js → Web.jsx} +0 -0
  285. /package/src/components/Icon/components/{Working.js → Working.jsx} +0 -0
  286. /package/src/components/Loader/components/{Circle.js → Circle.jsx} +0 -0
  287. /package/src/components/Loader/components/{Dots.js → Dots.jsx} +0 -0
  288. /package/src/components/Loader/components/{SmallCircle.js → SmallCircle.jsx} +0 -0
@@ -10,7 +10,7 @@ afterEach(cleanup);
10
10
  const renderCropView = (props = {}) =>
11
11
  render(
12
12
  <ThemeProvider theme={parseTheme(globalTheme)}>
13
- <CropView imageSrc="data:image/jpeg;base64,abc" onConfirm={jest.fn()} onUploadNew={jest.fn()} {...props} />
13
+ <CropView imageSrc="data:image/jpeg;base64,abc" onConfirm={vi.fn()} onUploadNew={vi.fn()} {...props} />
14
14
  </ThemeProvider>,
15
15
  );
16
16
 
@@ -36,14 +36,14 @@ describe("CropView rendering", () => {
36
36
 
37
37
  describe("CropView events", () => {
38
38
  it("should call onConfirm with cropped area when Next step is clicked", () => {
39
- const onConfirm = jest.fn();
39
+ const onConfirm = vi.fn();
40
40
  renderCropView({ onConfirm });
41
41
  fireEvent.click(screen.getByText("Next step"));
42
42
  expect(onConfirm).toHaveBeenCalledWith({ x: 0, y: 0, width: 100, height: 100 });
43
43
  });
44
44
 
45
45
  it("should call onUploadNew when Upload new image is clicked", () => {
46
- const onUploadNew = jest.fn();
46
+ const onUploadNew = vi.fn();
47
47
  renderCropView({ onUploadNew });
48
48
  fireEvent.click(screen.getByText("Upload new image"));
49
49
  expect(onUploadNew).toHaveBeenCalledTimes(1);
@@ -10,7 +10,7 @@ afterEach(cleanup);
10
10
  const renderImageStep = (props = {}) =>
11
11
  render(
12
12
  <ThemeProvider theme={parseTheme(globalTheme)}>
13
- <ImageStep onCropConfirmed={jest.fn()} onSkip={jest.fn()} {...props} />
13
+ <ImageStep onCropConfirmed={vi.fn()} onSkip={vi.fn()} {...props} />
14
14
  </ThemeProvider>,
15
15
  );
16
16
 
@@ -27,11 +27,13 @@ describe("ImageStep rendering", () => {
27
27
  const mockResult = "data:image/jpeg;base64,abc123";
28
28
  const mockFileReader = {
29
29
  onload: null as any,
30
- readAsDataURL: jest.fn(function (this: any) {
30
+ readAsDataURL: vi.fn(function (this: any) {
31
31
  this.onload({ target: { result: mockResult } });
32
32
  }),
33
33
  };
34
- jest.spyOn(global, "FileReader" as any).mockImplementation(() => mockFileReader);
34
+ vi.spyOn(global, "FileReader" as any).mockImplementation(function () {
35
+ return mockFileReader;
36
+ });
35
37
 
36
38
  const fileInput = document.querySelector('input[type="file"]') as HTMLInputElement;
37
39
  const validFile = new File(["content"], "photo.jpg", { type: "image/jpeg" });
@@ -50,11 +52,13 @@ describe("ImageStep rendering", () => {
50
52
  const mockResult = "data:image/jpeg;base64,abc123";
51
53
  const mockFileReader = {
52
54
  onload: null as any,
53
- readAsDataURL: jest.fn(function (this: any) {
55
+ readAsDataURL: vi.fn(function (this: any) {
54
56
  this.onload({ target: { result: mockResult } });
55
57
  }),
56
58
  };
57
- jest.spyOn(global, "FileReader" as any).mockImplementation(() => mockFileReader);
59
+ vi.spyOn(global, "FileReader" as any).mockImplementation(function () {
60
+ return mockFileReader;
61
+ });
58
62
 
59
63
  const fileInput = document.querySelector('input[type="file"]') as HTMLInputElement;
60
64
  await act(async () => {
@@ -10,7 +10,7 @@ afterEach(cleanup);
10
10
  const renderUploadView = (props = {}) =>
11
11
  render(
12
12
  <ThemeProvider theme={parseTheme(globalTheme)}>
13
- <UploadView onImageLoaded={jest.fn()} onSkip={jest.fn()} {...props} />
13
+ <UploadView onImageLoaded={vi.fn()} onSkip={vi.fn()} {...props} />
14
14
  </ThemeProvider>,
15
15
  );
16
16
 
@@ -47,23 +47,25 @@ describe("UploadView rendering", () => {
47
47
 
48
48
  describe("UploadView events", () => {
49
49
  it("should call onSkip when skip button is clicked", () => {
50
- const onSkip = jest.fn();
50
+ const onSkip = vi.fn();
51
51
  renderUploadView({ onSkip });
52
52
  fireEvent.click(screen.getByText("Skip profile picture"));
53
53
  expect(onSkip).toHaveBeenCalledTimes(1);
54
54
  });
55
55
 
56
56
  it("should call onImageLoaded with data URL for valid file", () => {
57
- const onImageLoaded = jest.fn();
57
+ const onImageLoaded = vi.fn();
58
58
  const mockResult = "data:image/jpeg;base64,abc123";
59
59
 
60
60
  const mockFileReader = {
61
61
  onload: null as any,
62
- readAsDataURL: jest.fn(function (this: any) {
62
+ readAsDataURL: vi.fn(function (this: any) {
63
63
  this.onload({ target: { result: mockResult } });
64
64
  }),
65
65
  };
66
- jest.spyOn(global, "FileReader" as any).mockImplementation(() => mockFileReader);
66
+ vi.spyOn(global, "FileReader" as any).mockImplementation(function () {
67
+ return mockFileReader;
68
+ });
67
69
 
68
70
  renderUploadView({ onImageLoaded });
69
71
  const fileInput = document.querySelector('input[type="file"]') as HTMLInputElement;
@@ -74,7 +76,7 @@ describe("UploadView events", () => {
74
76
  });
75
77
 
76
78
  it("should not call onImageLoaded for invalid file format", () => {
77
- const onImageLoaded = jest.fn();
79
+ const onImageLoaded = vi.fn();
78
80
  renderUploadView({ onImageLoaded });
79
81
  const fileInput = document.querySelector('input[type="file"]') as HTMLInputElement;
80
82
  const invalidFile = new File(["content"], "document.pdf", { type: "application/pdf" });
@@ -8,7 +8,7 @@ import globalTheme from "@ax/themes/theme.json";
8
8
  import { cleanup, fireEvent, render, screen } from "@testing-library/react";
9
9
  import { ThemeProvider } from "styled-components";
10
10
 
11
- // react-timezone-map-select is mocked globally via jest.config.ts moduleNameMapper
11
+ // react-timezone-map-select is mocked globally via the alias in vitest.config.ts
12
12
 
13
13
  const defaultForm: IUserFormState = {
14
14
  name: "John Doe",
@@ -23,9 +23,9 @@ const renderTimezoneStep = (props = {}) =>
23
23
  <ThemeProvider theme={parseTheme(globalTheme)}>
24
24
  <TimezoneStep
25
25
  form={defaultForm}
26
- setForm={jest.fn()}
27
- onClickNext={jest.fn()}
28
- onClickBack={jest.fn()}
26
+ setForm={vi.fn()}
27
+ onClickNext={vi.fn()}
28
+ onClickBack={vi.fn()}
29
29
  isSaving={false}
30
30
  {...props}
31
31
  />
@@ -71,21 +71,21 @@ describe("TimezoneStep rendering", () => {
71
71
 
72
72
  describe("TimezoneStep events", () => {
73
73
  it("should call onClickBack when Back button is clicked", () => {
74
- const onClickBack = jest.fn();
74
+ const onClickBack = vi.fn();
75
75
  renderTimezoneStep({ onClickBack });
76
76
  fireEvent.click(screen.getByText("Back"));
77
77
  expect(onClickBack).toHaveBeenCalledTimes(1);
78
78
  });
79
79
 
80
80
  it("should call onClickNext when Save profile button is clicked", () => {
81
- const onClickNext = jest.fn();
81
+ const onClickNext = vi.fn();
82
82
  renderTimezoneStep({ onClickNext });
83
83
  fireEvent.click(screen.getByText("Save profile"));
84
84
  expect(onClickNext).toHaveBeenCalledTimes(1);
85
85
  });
86
86
 
87
87
  it("should not call onClickNext when isSaving is true", () => {
88
- const onClickNext = jest.fn();
88
+ const onClickNext = vi.fn();
89
89
  renderTimezoneStep({ onClickNext, isSaving: true });
90
90
  const saveButton = screen.getByText("Saving...").closest("button");
91
91
  saveButton && fireEvent.click(saveButton);
@@ -25,7 +25,7 @@ const renderWelcomeModal = (props = {}, storeData = initialStore) => {
25
25
  return render(
26
26
  <Provider store={store}>
27
27
  <ThemeProvider theme={parseTheme(globalTheme)}>
28
- <WelcomeModal isOpen={true} toggleModal={jest.fn()} {...props} />
28
+ <WelcomeModal isOpen={true} toggleModal={vi.fn()} {...props} />
29
29
  </ThemeProvider>
30
30
  </Provider>,
31
31
  );
@@ -10,7 +10,7 @@ afterEach(cleanup);
10
10
  const renderWelcomeStep = (props = {}) =>
11
11
  render(
12
12
  <ThemeProvider theme={parseTheme(globalTheme)}>
13
- <WelcomeStep onSkip={jest.fn()} onClickNext={jest.fn()} {...props} />
13
+ <WelcomeStep onSkip={vi.fn()} onClickNext={vi.fn()} {...props} />
14
14
  </ThemeProvider>,
15
15
  );
16
16
 
@@ -24,14 +24,14 @@ describe("WelcomeStep rendering", () => {
24
24
 
25
25
  describe("WelcomeStep events", () => {
26
26
  it("should call onSkip when skip button is clicked", () => {
27
- const onSkip = jest.fn();
27
+ const onSkip = vi.fn();
28
28
  renderWelcomeStep({ onSkip });
29
29
  fireEvent.click(screen.getByText("Skip, I\u2019ll do it later"));
30
30
  expect(onSkip).toHaveBeenCalledTimes(1);
31
31
  });
32
32
 
33
33
  it("should call onClickNext when complete profile button is clicked", () => {
34
- const onClickNext = jest.fn();
34
+ const onClickNext = vi.fn();
35
35
  renderWelcomeStep({ onClickNext });
36
36
  fireEvent.click(screen.getByText("Complete profile"));
37
37
  expect(onClickNext).toHaveBeenCalledTimes(1);
@@ -3,7 +3,7 @@ import React from "react";
3
3
  import { ThemeProvider } from "styled-components";
4
4
  import { render, screen, cleanup, act, fireEvent } from "@testing-library/react";
5
5
  import "@testing-library/jest-dom";
6
- import { CalledWithMock, mock } from "jest-mock-extended";
6
+ import { CalledWithMock, mock } from "vitest-mock-extended";
7
7
 
8
8
  import { parseTheme } from "@ax/helpers";
9
9
 
@@ -117,7 +117,7 @@ describe("BulkHeader module events", () => {
117
117
  defaultProps.showBulk = true;
118
118
  defaultProps.isSiteView = false;
119
119
  defaultProps.checkState.isAllSelected = true;
120
- const activateRolesMock = jest.fn();
120
+ const activateRolesMock = vi.fn();
121
121
 
122
122
  defaultProps.activateRoles = activateRolesMock as CalledWithMock<void, [active: boolean]> &
123
123
  ((active: boolean) => void);
@@ -138,7 +138,7 @@ describe("BulkHeader module events", () => {
138
138
  it("should call activate role on click option", async () => {
139
139
  defaultProps.showBulk = true;
140
140
  defaultProps.checkState.isAllSelected = true;
141
- const activateRolesMock = jest.fn();
141
+ const activateRolesMock = vi.fn();
142
142
 
143
143
  defaultProps.activateRoles = activateRolesMock as CalledWithMock<void, [active: boolean]> &
144
144
  ((active: boolean) => void);
@@ -1,9 +1,10 @@
1
+ import type { MockedFunction } from "vitest";
1
2
  import React from "react";
2
3
  import axios from "axios";
3
4
 
4
5
  import { ThemeProvider } from "styled-components";
5
6
  import { parseTheme } from "@ax/helpers";
6
- import { CalledWithMock, mock } from "jest-mock-extended";
7
+ import { CalledWithMock, mock } from "vitest-mock-extended";
7
8
  import configureStore from "redux-mock-store";
8
9
  import thunk from "redux-thunk";
9
10
  import { Router } from "react-router-dom";
@@ -13,20 +14,20 @@ import { history } from "@ax/routes";
13
14
  import globalTheme from "@ax/themes/theme.json";
14
15
  import Roles, { IRolesProps } from "@ax/modules/Users/Roles";
15
16
 
16
- import { render, cleanup, screen, act, fireEvent } from "./../../../../../config/jest/test-utils";
17
+ import { render, cleanup, screen, act, fireEvent } from "./../../../../../config/tests/test-utils";
17
18
  import { rolesDataMock, usersDataMock } from "./../../../../__mocks__/store/Roles";
18
19
  import { rolesDataResponse } from "./../../../../__mocks__/axios/Roles";
19
20
 
20
21
  afterEach(cleanup);
21
22
 
22
- jest.mock("axios");
23
- const mockedAxios = axios as jest.MockedFunction<typeof axios>;
23
+ vi.mock("axios");
24
+ const mockedAxios = axios as MockedFunction<typeof axios>;
24
25
  const defaultProps = mock<IRolesProps>();
25
26
 
26
27
  describe("Roles module rendering", () => {
27
28
  it("should render component", async () => {
28
29
  mockedAxios.mockResolvedValue(rolesDataResponse);
29
- window.HTMLElement.prototype.scrollIntoView = jest.fn();
30
+ window.HTMLElement.prototype.scrollIntoView = vi.fn();
30
31
  const initialStore = {
31
32
  app: { isLoading: false },
32
33
  users: { roles: rolesDataMock },
@@ -60,7 +61,7 @@ describe("Roles module rendering", () => {
60
61
 
61
62
  it("should render role items", async () => {
62
63
  mockedAxios.mockResolvedValue(rolesDataResponse);
63
- window.HTMLElement.prototype.scrollIntoView = jest.fn();
64
+ window.HTMLElement.prototype.scrollIntoView = vi.fn();
64
65
  const initialStore = {
65
66
  app: { isLoading: false },
66
67
  users: { roles: rolesDataMock },
@@ -92,7 +93,7 @@ describe("Roles module rendering", () => {
92
93
 
93
94
  it("should render tag colors", async () => {
94
95
  mockedAxios.mockResolvedValue(rolesDataResponse);
95
- window.HTMLElement.prototype.scrollIntoView = jest.fn();
96
+ window.HTMLElement.prototype.scrollIntoView = vi.fn();
96
97
  const initialStore = {
97
98
  app: { isLoading: false },
98
99
  users: { roles: rolesDataMock },
@@ -426,9 +427,9 @@ describe("Roles module events", () => {
426
427
 
427
428
  it("should render FullArrowDown icon if is filtered by descending name", async () => {
428
429
  mockedAxios.mockResolvedValue(rolesDataResponse);
429
- window.HTMLElement.prototype.scrollIntoView = jest.fn();
430
- const getRolesMock = jest.fn();
431
- const activateRolesMock = jest.fn();
430
+ window.HTMLElement.prototype.scrollIntoView = vi.fn();
431
+ const getRolesMock = vi.fn();
432
+ const activateRolesMock = vi.fn();
432
433
  defaultProps.getRoles = getRolesMock as CalledWithMock<Promise<void>, [params?: IGetRoles | undefined]>;
433
434
  defaultProps.activateRoles = activateRolesMock as CalledWithMock<Promise<boolean>, [params: IActivateRole]> &
434
435
  ((params: IActivateRole) => Promise<boolean>);
@@ -7,8 +7,8 @@ import { parseTheme } from "@ax/helpers";
7
7
  import globalTheme from "@ax/themes/theme.json";
8
8
  import RoleItem, { IRoleItemProps } from "./../../../../../../../modules/Users/UserCreate/SiteItem/RolesModal/RoleItem";
9
9
 
10
- const onClickMock = jest.fn();
11
- const onChangeMock = jest.fn();
10
+ const onClickMock = vi.fn();
11
+ const onChangeMock = vi.fn();
12
12
  const defaultProps: IRoleItemProps = {
13
13
  role: {
14
14
  id: 1,
@@ -25,7 +25,7 @@ const defaultProps: IRoleItemProps = {
25
25
  };
26
26
 
27
27
  afterEach(() => {
28
- jest.clearAllMocks();
28
+ vi.clearAllMocks();
29
29
  cleanup();
30
30
  });
31
31
 
@@ -7,8 +7,8 @@ import { parseTheme } from "@ax/helpers";
7
7
  import globalTheme from "@ax/themes/theme.json";
8
8
  import RolesModal, { IRolesModalProps } from "./../../../../../../modules/Users/UserCreate/SiteItem/RolesModal";
9
9
 
10
- const addRolesMock = jest.fn();
11
- const toggleModalMock = jest.fn();
10
+ const addRolesMock = vi.fn();
11
+ const toggleModalMock = vi.fn();
12
12
  const defaultProps: IRolesModalProps = {
13
13
  roles: [
14
14
  {
@@ -47,7 +47,7 @@ const defaultProps: IRolesModalProps = {
47
47
  };
48
48
 
49
49
  afterEach(() => {
50
- jest.clearAllMocks();
50
+ vi.clearAllMocks();
51
51
  cleanup();
52
52
  });
53
53
 
@@ -7,8 +7,8 @@ import { parseTheme } from "@ax/helpers";
7
7
  import globalTheme from "@ax/themes/theme.json";
8
8
  import SiteItem, { ISiteItemProps } from "./../../../../../modules/Users/UserCreate/SiteItem";
9
9
 
10
- const itemOnChangeMock = jest.fn();
11
- const addRolesMock = jest.fn();
10
+ const itemOnChangeMock = vi.fn();
11
+ const addRolesMock = vi.fn();
12
12
  const defaultProps: ISiteItemProps = {
13
13
  item: { id: 1, name: "Site 1", onChange: itemOnChangeMock },
14
14
  sites: [1, 2, 3],
@@ -38,7 +38,7 @@ const defaultProps: ISiteItemProps = {
38
38
  };
39
39
 
40
40
  afterEach(() => {
41
- jest.clearAllMocks();
41
+ vi.clearAllMocks();
42
42
  cleanup();
43
43
  });
44
44
 
@@ -1,12 +1,13 @@
1
+ import type { MockedFunction } from "vitest";
1
2
  import React from "react";
2
3
  import axios, { AxiosResponse } from "axios";
3
4
  import { ThemeProvider } from "styled-components";
4
5
  import configureStore from "redux-mock-store";
5
6
  import thunk from "redux-thunk";
6
7
  import { Router } from "react-router-dom";
7
- import { mock } from "jest-mock-extended";
8
+ import { mock } from "vitest-mock-extended";
8
9
  import "@testing-library/jest-dom";
9
- import { render, cleanup, screen, act } from "./../../../../../config/jest/test-utils";
10
+ import { render, cleanup, screen, act } from "./../../../../../config/tests/test-utils";
10
11
  import userEvent from "@testing-library/user-event";
11
12
  import { createMemoryHistory } from "history";
12
13
 
@@ -21,8 +22,8 @@ import {
21
22
  appStoreMock,
22
23
  } from "../../../../__mocks__/store/UsersCreate";
23
24
 
24
- jest.mock("axios");
25
- const mockedAxios = axios as jest.MockedFunction<typeof axios>;
25
+ vi.mock("axios");
26
+ const mockedAxios = axios as MockedFunction<typeof axios>;
26
27
 
27
28
  const middlewares: any = [thunk];
28
29
  const mockStore = configureStore(middlewares);
@@ -35,7 +36,7 @@ const history = createMemoryHistory();
35
36
 
36
37
  afterEach(() => {
37
38
  cleanup();
38
- jest.clearAllMocks();
39
+ vi.clearAllMocks();
39
40
  });
40
41
 
41
42
  describe("UserCreate module rendering", () => {
@@ -14,7 +14,7 @@ import configureStore from "redux-mock-store";
14
14
  import thunk from "redux-thunk";
15
15
  import { ThemeProvider } from "styled-components";
16
16
 
17
- import { act, cleanup, render, screen, waitFor } from "./../../../../../../config/jest/test-utils";
17
+ import { act, cleanup, render, screen, waitFor } from "./../../../../../../config/tests/test-utils";
18
18
  import { defaultStore } from "./../../../../../__mocks__/store/GenericStore";
19
19
  import {
20
20
  appStoreMock,
@@ -33,13 +33,13 @@ const history = createMemoryHistory();
33
33
 
34
34
  let mockedAxios: MockAdapter;
35
35
 
36
- const onChangeMock = jest.fn();
37
- const onClickMock = jest.fn();
38
- const deleteUserMock = jest.fn();
39
- const resendInvitationMock = jest.fn();
40
- const getUsersMock = jest.fn();
41
- const removeUserFromSiteMock = jest.fn();
42
- const toggleDeleteToastMock = jest.fn();
36
+ const onChangeMock = vi.fn();
37
+ const onClickMock = vi.fn();
38
+ const deleteUserMock = vi.fn();
39
+ const resendInvitationMock = vi.fn();
40
+ const getUsersMock = vi.fn();
41
+ const removeUserFromSiteMock = vi.fn();
42
+ const toggleDeleteToastMock = vi.fn();
43
43
  const defaultProps: IUserItemProps = {
44
44
  user: {
45
45
  id: 171,
@@ -186,7 +186,7 @@ beforeAll(() => {
186
186
 
187
187
  afterEach(() => {
188
188
  cleanup();
189
- jest.clearAllMocks();
189
+ vi.clearAllMocks();
190
190
  });
191
191
 
192
192
  describe("UserItem module rendering", () => {
@@ -9,13 +9,13 @@ import userEvent from "@testing-library/user-event";
9
9
  import axios from "axios";
10
10
  import MockAdapter from "axios-mock-adapter";
11
11
  import { createMemoryHistory } from "history";
12
- import { mock } from "jest-mock-extended";
12
+ import { mock } from "vitest-mock-extended";
13
13
  import type { Middleware } from "redux";
14
14
  import configureStore from "redux-mock-store";
15
15
  import thunk from "redux-thunk";
16
16
  import { ThemeProvider } from "styled-components";
17
17
 
18
- import { act, cleanup, fireEvent, render, screen } from "./../../../../../config/jest/test-utils";
18
+ import { act, cleanup, fireEvent, render, screen } from "./../../../../../config/tests/test-utils";
19
19
  import {
20
20
  deletedUserResponse,
21
21
  removeUserSiteResponse,
@@ -46,12 +46,12 @@ let mockedAxios: MockAdapter;
46
46
 
47
47
  beforeAll(() => {
48
48
  mockedAxios = new MockAdapter(axios);
49
- window.HTMLElement.prototype.scrollIntoView = jest.fn();
49
+ window.HTMLElement.prototype.scrollIntoView = vi.fn();
50
50
  });
51
51
 
52
52
  afterEach(() => {
53
53
  cleanup();
54
- jest.clearAllMocks();
54
+ vi.clearAllMocks();
55
55
  mockedAxios.reset();
56
56
  });
57
57
 
@@ -0,0 +1,30 @@
1
+ import type { ComponentType } from "react";
2
+
3
+ import Ca_ES from "./Ca_ES";
4
+ import De_DE from "./De_DE";
5
+ import En_GB from "./En_GB";
6
+ import Es_ES from "./Es_ES";
7
+ import Eu_ES from "./Eu_ES";
8
+ import Fr_FR from "./Fr_FR";
9
+ import It_IT from "./It_IT";
10
+ import Pt_PT from "./Pt_PT";
11
+
12
+ /**
13
+ * Static registry of every flag. Replaces the dynamic `require()` this
14
+ * component used to do: a template-literal require only resolves through
15
+ * webpack's CommonJS context modules, so it breaks under ESM.
16
+ *
17
+ * When adding a flag, import it above and register it here.
18
+ */
19
+ const flags: Record<string, ComponentType<any>> = {
20
+ Ca_ES,
21
+ De_DE,
22
+ En_GB,
23
+ Es_ES,
24
+ Eu_ES,
25
+ Fr_FR,
26
+ It_IT,
27
+ Pt_PT,
28
+ };
29
+
30
+ export default flags;
@@ -1,5 +1,7 @@
1
1
  import React from "react";
2
2
 
3
+ import flags from "./components";
4
+
3
5
  const getImage = (name: string) => {
4
6
  const simpleIcons: any = {
5
7
  es: "Es_ES",
@@ -11,11 +13,7 @@ const getImage = (name: string) => {
11
13
  };
12
14
  const filename = simpleIcons[name?.toLowerCase()] || name;
13
15
 
14
- try {
15
- return require(`./components/${filename}`).default;
16
- } catch (err) {
17
- return null;
18
- }
16
+ return flags[filename] ?? null;
19
17
  };
20
18
  const Flag = (props: IProps) => {
21
19
  const name = props.name.charAt(0).toUpperCase() + props.name.slice(1);