@griddo/ax 12.3.0 → 12.5.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 (294) 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/config/webpack.config.js +5 -0
  6. package/package.json +15 -29
  7. package/public/img/icons/markdown.svg +6 -0
  8. package/src/__tests__/components/ActionMenu/ActionMenu.test.tsx +12 -12
  9. package/src/__tests__/components/Breadcrumb/Breadcrumb.test.tsx +2 -2
  10. package/src/__tests__/components/Browser/Browser.test.tsx +17 -25
  11. package/src/__tests__/components/BulkSelectionOptions/BulkSelectionOptions.test.tsx +3 -3
  12. package/src/__tests__/components/CategoryCell/CategoryCell.test.tsx +3 -2
  13. package/src/__tests__/components/ConfigPanel/ConfigPanel.test.tsx +4 -4
  14. package/src/__tests__/components/ConfigPanel/Form/ConnectedField/ConnectedField.test.tsx +2 -2
  15. package/src/__tests__/components/ConfigPanel/Form/ConnectedField/NavConnectedField/NavConnectedField.test.tsx +2 -2
  16. package/src/__tests__/components/ConfigPanel/Form/ConnectedField/PageConnectedField/Field/Field.test.tsx +3 -3
  17. package/src/__tests__/components/ConfigPanel/Form/ConnectedField/PageConnectedField/PageConnectedField.test.tsx +17 -14
  18. package/src/__tests__/components/ConfigPanel/Form/ConnectedField/PageConnectedField/TemplateManager/TemplateManager.test.tsx +4 -4
  19. package/src/__tests__/components/ConfigPanel/Form/Form.test.tsx +49 -58
  20. package/src/__tests__/components/ConfigPanel/GlobalPageForm/GlobalPageForm.test.tsx +11 -11
  21. package/src/__tests__/components/ConfigPanel/Header/Header.test.tsx +51 -46
  22. package/src/__tests__/components/ConfigPanel/NavigationForm/Field/Field.test.tsx +2 -2
  23. package/src/__tests__/components/ConfigPanel/NavigationForm/NavigationForm.test.tsx +2 -2
  24. package/src/__tests__/components/ConfigPanel/PreviewForm/PreviewForm.test.tsx +4 -3
  25. package/src/__tests__/components/ContextMenu/ContextMenu.test.tsx +24 -24
  26. package/src/__tests__/components/DragAndDrop/DragAndDrop.test.tsx +6 -5
  27. package/src/__tests__/components/ElementsTooltip/ElementsTooltip.test.tsx +7 -18
  28. package/src/__tests__/components/EmptyState/EmptyState.test.tsx +11 -11
  29. package/src/__tests__/components/ErrorCenter/ErrorCenter.test.tsx +11 -11
  30. package/src/__tests__/components/FieldContainer/FieldContainer.test.tsx +4 -4
  31. package/src/__tests__/components/Fields/AnalyticsField/AnalyticsField.test.tsx +3 -3
  32. package/src/__tests__/components/Fields/AnalyticsField/PageAnalytics/PageAnalytics.test.tsx +4 -4
  33. package/src/__tests__/components/Fields/AnalyticsField/StructuredDataAnalytics/StructuredDataAnalytics.test.tsx +3 -3
  34. package/src/__tests__/components/Fields/ArrayFieldGroup/ArrayFieldGroup.test.tsx +6 -5
  35. package/src/__tests__/components/Fields/AsyncCheckGroup/AsyncCheckGroup.test.tsx +19 -18
  36. package/src/__tests__/components/Fields/AsyncSelect/AsyncSelect.test.tsx +64 -53
  37. package/src/__tests__/components/Fields/Button/Button.test.tsx +4 -3
  38. package/src/__tests__/components/Fields/CheckField/CheckField.test.tsx +5 -5
  39. package/src/__tests__/components/Fields/CheckGroup/CheckGroup.test.tsx +10 -10
  40. package/src/__tests__/components/Fields/ColorPicker/ColorPicker.test.tsx +67 -58
  41. package/src/__tests__/components/Fields/ComponentArray/ComponentArray.test.tsx +3 -3
  42. package/src/__tests__/components/Fields/ComponentArray/MixableComponentArray/MixableComponentArray.test.tsx +45 -45
  43. package/src/__tests__/components/Fields/ComponentArray/MixableComponentArray/PasteModuleButton/PasteModuleButton.test.tsx +7 -6
  44. package/src/__tests__/components/Fields/ComponentArray/SameComponentArray/SameComponentArray.test.tsx +7 -7
  45. package/src/__tests__/components/Fields/ComponentContainer/ComponentContainer.test.tsx +223 -426
  46. package/src/__tests__/components/Fields/ConditionalField/ConditionalField.test.tsx +1 -1
  47. package/src/__tests__/components/Fields/DateField/DateField.test.tsx +6 -5
  48. package/src/__tests__/components/Fields/FieldGroup/FieldGroup.test.tsx +2 -2
  49. package/src/__tests__/components/Fields/FileField/FileField.test.tsx +17 -18
  50. package/src/__tests__/components/Fields/HeadingField/HeadingField.test.tsx +2 -2
  51. package/src/__tests__/components/Fields/HiddenField/HiddenField.test.tsx +3 -3
  52. package/src/__tests__/components/Fields/ImageField/ImageField.test.tsx +280 -263
  53. package/src/__tests__/components/Fields/IntegrationsField/IntegrationsField.test.tsx +60 -57
  54. package/src/__tests__/components/Fields/MultiCheckSelect/MultiCheckSelect.test.tsx +1 -1
  55. package/src/__tests__/components/Fields/MultiCheckSelectGroup/MultiCheckSelectGroup.test.tsx +7 -6
  56. package/src/__tests__/components/Fields/NoteField/NoteField.test.tsx +10 -9
  57. package/src/__tests__/components/Fields/NumberField/NumberField.test.tsx +16 -20
  58. package/src/__tests__/components/Fields/RadioField/RadioField.test.tsx +2 -2
  59. package/src/__tests__/components/Fields/ReferenceField/ReferenceField.test.tsx +17 -16
  60. package/src/__tests__/components/Fields/RichText/RichText.test.tsx +1 -1
  61. package/src/__tests__/components/Fields/Select/Select.test.tsx +1 -1
  62. package/src/__tests__/components/Fields/SliderField/SliderField.test.tsx +5 -4
  63. package/src/__tests__/components/Fields/SummaryButton/SummaryButton.test.tsx +2 -2
  64. package/src/__tests__/components/Fields/TagField/TagField.test.tsx +9 -9
  65. package/src/__tests__/components/Fields/TextArea/TextArea.test.tsx +17 -9
  66. package/src/__tests__/components/Fields/TextField/TextField.test.tsx +8 -8
  67. package/src/__tests__/components/Fields/TimeField/HourInput/HourInput.test.tsx +7 -6
  68. package/src/__tests__/components/Fields/TimeField/TimeField.test.tsx +4 -3
  69. package/src/__tests__/components/Fields/ToggleField/ToggleField.test.tsx +16 -24
  70. package/src/__tests__/components/Fields/Tooltip/Tooltip.test.tsx +12 -6
  71. package/src/__tests__/components/Fields/TranslateButton/TranslateButton.test.tsx +13 -13
  72. package/src/__tests__/components/Fields/UniqueCheck/UniqueCheck.test.tsx +1 -1
  73. package/src/__tests__/components/Fields/UrlField/UrlField.test.tsx +20 -19
  74. package/src/__tests__/components/Fields/VisualUniqueSelection/ImageSelection/ImageSelection.test.tsx +3 -2
  75. package/src/__tests__/components/Fields/VisualUniqueSelection/ScrollableSelection/ScrollableSelection.test.tsx +4 -3
  76. package/src/__tests__/components/Fields/VisualUniqueSelection/VisualUniqueSelection.test.tsx +30 -22
  77. package/src/__tests__/components/Fields/Wysiwyg/Wysiwyg.atoms.test.tsx +11 -11
  78. package/src/__tests__/components/Fields/Wysiwyg/Wysiwyg.config.test.tsx +103 -0
  79. package/src/__tests__/components/Fields/Wysiwyg/Wysiwyg.helpers.test.tsx +13 -14
  80. package/src/__tests__/components/Fields/Wysiwyg/Wysiwyg.test.tsx +28 -28
  81. package/src/__tests__/components/FieldsBehavior/FieldsBehavior.test.tsx +22 -16
  82. package/src/__tests__/components/FloatingMenu/FloatingMenu.test.tsx +36 -35
  83. package/src/__tests__/components/FloatingPanel/FloatingPanel.test.tsx +10 -10
  84. package/src/__tests__/components/GuardModal/GuardModal.test.tsx +1 -1
  85. package/src/__tests__/components/HeadingsPreviewModal/ErrorsBanner/ErrorItem/ErrorItem.test.tsx +11 -11
  86. package/src/__tests__/components/HeadingsPreviewModal/ErrorsBanner/ErrorsBanner.test.tsx +4 -4
  87. package/src/__tests__/components/HeadingsPreviewModal/HeadingsPreviewModal.test.tsx +15 -14
  88. package/src/__tests__/components/IconAction/IconAction.test.tsx +2 -2
  89. package/src/__tests__/components/ImageDragAndDrop/CropStep/CropStep.test.tsx +3 -3
  90. package/src/__tests__/components/ImageDragAndDrop/ImageDragAndDrop.test.tsx +7 -7
  91. package/src/__tests__/components/KeywordsPreviewModal/KeywordItem/KeywordItem.test.tsx +5 -5
  92. package/src/__tests__/components/KeywordsPreviewModal/KeywordsPreviewModal.test.tsx +14 -13
  93. package/src/__tests__/components/KeywordsPreviewModal/atoms.test.tsx +13 -13
  94. package/src/__tests__/components/LanguageMenu/LanguageMenu.test.tsx +6 -6
  95. package/src/__tests__/components/Lists/Lists.test.tsx +1 -1
  96. package/src/__tests__/components/Loader/Loader.test.tsx +1 -1
  97. package/src/__tests__/components/Login/Login.test.tsx +32 -32
  98. package/src/__tests__/components/Login/RecoveryModal/RecoveryModal.test.tsx +10 -9
  99. package/src/__tests__/components/MainWrapper/AppBar/AppBar.test.tsx +21 -21
  100. package/src/__tests__/components/MenuItem/MenuItem.test.tsx +5 -5
  101. package/src/__tests__/components/Modal/Modal.test.tsx +20 -20
  102. package/src/__tests__/components/Nav/Nav.test.tsx +2 -2
  103. package/src/__tests__/components/Notification/Notification.test.tsx +2 -2
  104. package/src/__tests__/components/Pagination/Pagination.test.tsx +13 -14
  105. package/src/__tests__/components/ProfileImage/ProfileImage.test.tsx +6 -7
  106. package/src/__tests__/components/ReorderArrows/ReorderArrows.test.tsx +4 -3
  107. package/src/__tests__/components/ResizePanel/ResizePanel.test.tsx +18 -17
  108. package/src/__tests__/components/RestrictionsModal/CurrentAccessList/CurrentAccessList.test.tsx +7 -6
  109. package/src/__tests__/components/RestrictionsModal/OptionsStep/OptionsStep.test.tsx +12 -11
  110. package/src/__tests__/components/RestrictionsModal/RestrictionsModal.test.tsx +11 -10
  111. package/src/__tests__/components/RestrictionsModal/RolesList/RolesList.test.tsx +8 -8
  112. package/src/__tests__/components/RestrictionsModal/UsersList/UsersList.test.tsx +16 -15
  113. package/src/__tests__/components/SearchField/SearchField.test.tsx +13 -13
  114. package/src/__tests__/components/SideModal/SideModal.test.tsx +175 -127
  115. package/src/__tests__/components/SubNav/SubNav.test.tsx +1 -1
  116. package/src/__tests__/components/TableFilters/CategoryFilter/CategoryFilter.test.tsx +9 -8
  117. package/src/__tests__/components/TableFilters/CustomizeFilters/CustomizeFilters.test.tsx +5 -5
  118. package/src/__tests__/components/TableFilters/DateFilter/DateFilter.test.tsx +8 -8
  119. package/src/__tests__/components/TableFilters/LiveFilter/LiveFilter.test.tsx +26 -39
  120. package/src/__tests__/components/TableFilters/NameFilter/NameFilter.test.tsx +10 -10
  121. package/src/__tests__/components/TableFilters/RoleFilter/RoleFilter.test.tsx +5 -5
  122. package/src/__tests__/components/TableFilters/SiteFilter/SiteFilter.test.tsx +10 -9
  123. package/src/__tests__/components/TableFilters/StatusFilter/StatusFilter.test.tsx +70 -45
  124. package/src/__tests__/components/TableFilters/TranslationsFilter/TranslationsFilter.test.tsx +8 -8
  125. package/src/__tests__/components/TableFilters/TypeFilter/TypeFilter.test.tsx +5 -5
  126. package/src/__tests__/components/TableFilters/UsersFilter/UsersFilter.test.tsx +8 -8
  127. package/src/__tests__/components/TableList/TableList.test.tsx +4 -4
  128. package/src/__tests__/components/Tabs/Tabs.test.tsx +73 -70
  129. package/src/__tests__/components/Tag/Tag.test.tsx +3 -3
  130. package/src/__tests__/components/Toast/Toast.test.tsx +24 -26
  131. package/src/__tests__/hooks/modals.test.tsx +4 -4
  132. package/src/__tests__/hooks/users.test.tsx +6 -5
  133. package/src/__tests__/modules/FileDrive/MarkdownFormat.test.tsx +58 -0
  134. package/src/__tests__/modules/FramePreview/FramePreview.test.tsx +56 -39
  135. package/src/__tests__/modules/FramePreview/HeadingsOverlay/HeadingsOverlay.test.tsx +11 -11
  136. package/src/__tests__/modules/Settings/Integrations/Integrations.test.tsx +2 -2
  137. package/src/__tests__/modules/Settings/Social/Social.test.tsx +4 -3
  138. package/src/__tests__/modules/Sites/Sites.test.tsx +5 -4
  139. package/src/__tests__/modules/Sites/SitesList/ListView/BulkHeader/BulkHeader.test.tsx +26 -21
  140. package/src/__tests__/modules/Sites/SitesList/SitesList.test.tsx +19 -9
  141. package/src/__tests__/modules/Sites/SitesList/WelcomeModal/DataStep/DataStep.test.tsx +6 -6
  142. package/src/__tests__/modules/Sites/SitesList/WelcomeModal/FinalStep/FinalStep.test.tsx +4 -4
  143. package/src/__tests__/modules/Sites/SitesList/WelcomeModal/ImageStep/CropView/CropView.test.tsx +3 -3
  144. package/src/__tests__/modules/Sites/SitesList/WelcomeModal/ImageStep/ImageStep.test.tsx +9 -5
  145. package/src/__tests__/modules/Sites/SitesList/WelcomeModal/ImageStep/UploadView/UploadView.test.tsx +8 -6
  146. package/src/__tests__/modules/Sites/SitesList/WelcomeModal/TimezoneStep/TimezoneStep.test.tsx +7 -7
  147. package/src/__tests__/modules/Sites/SitesList/WelcomeModal/WelcomeModal.test.tsx +1 -1
  148. package/src/__tests__/modules/Sites/SitesList/WelcomeModal/WelcomeStep/WelcomeStep.test.tsx +3 -3
  149. package/src/__tests__/modules/Users/Roles/BulkHeader/BulkHeader.test.tsx +72 -67
  150. package/src/__tests__/modules/Users/Roles/Roles.test.tsx +14 -10
  151. package/src/__tests__/modules/Users/UserCreate/SiteItem/RolesModal/RoleItem/RoleItem.test.tsx +3 -3
  152. package/src/__tests__/modules/Users/UserCreate/SiteItem/RolesModal/RolesModal.test.tsx +3 -3
  153. package/src/__tests__/modules/Users/UserCreate/SiteItem/SiteItem.test.tsx +3 -3
  154. package/src/__tests__/modules/Users/UserCreate/UserCreate.test.tsx +6 -5
  155. package/src/__tests__/modules/Users/UserList/UserItem/UserItem.test.tsx +9 -9
  156. package/src/__tests__/modules/Users/UserList/UserList.test.tsx +4 -4
  157. package/src/components/Fields/Wysiwyg/config.tsx +68 -17
  158. package/src/components/Fields/Wysiwyg/helpers.tsx +2 -0
  159. package/src/components/Fields/Wysiwyg/index.tsx +41 -10
  160. package/src/components/Flag/components/index.ts +30 -0
  161. package/src/components/Flag/index.tsx +3 -5
  162. package/src/components/Icon/components/index.ts +229 -0
  163. package/src/components/Icon/index.tsx +3 -7
  164. package/src/components/ResizePanel/index.tsx +7 -2
  165. package/src/constants/index.ts +1 -1
  166. package/src/helpers/files.tsx +2 -0
  167. package/src/modules/FileDrive/FileFilters/Type/index.tsx +1 -0
  168. package/tsconfig.json +1 -1
  169. package/config/jest/cssTransform.js +0 -14
  170. package/config/jest/fileMock.js +0 -1
  171. package/config/jest/fileTransform.js +0 -40
  172. package/config/jest/reactEasyCropMock.js +0 -15
  173. package/config/jest/reactTimezoneMock.js +0 -13
  174. package/config/jest/setup.js +0 -31
  175. package/config/jest/styleMock.js +0 -1
  176. /package/config/{jest/test-utils.js → tests/test-utils.jsx} +0 -0
  177. /package/src/components/Flag/components/{Ca_ES.js → Ca_ES.jsx} +0 -0
  178. /package/src/components/Flag/components/{De_DE.js → De_DE.jsx} +0 -0
  179. /package/src/components/Flag/components/{En_GB.js → En_GB.jsx} +0 -0
  180. /package/src/components/Flag/components/{Es_ES.js → Es_ES.jsx} +0 -0
  181. /package/src/components/Flag/components/{Eu_ES.js → Eu_ES.jsx} +0 -0
  182. /package/src/components/Flag/components/{Fr_FR.js → Fr_FR.jsx} +0 -0
  183. /package/src/components/Flag/components/{It_IT.js → It_IT.jsx} +0 -0
  184. /package/src/components/Flag/components/{Pt_PT.js → Pt_PT.jsx} +0 -0
  185. /package/src/components/Icon/components/{Active.js → Active.jsx} +0 -0
  186. /package/src/components/Icon/components/{Add.js → Add.jsx} +0 -0
  187. /package/src/components/Icon/components/{AddCircle.js → AddCircle.jsx} +0 -0
  188. /package/src/components/Icon/components/{Alert.js → Alert.jsx} +0 -0
  189. /package/src/components/Icon/components/{AlignLeft.js → AlignLeft.jsx} +0 -0
  190. /package/src/components/Icon/components/{Back.js → Back.jsx} +0 -0
  191. /package/src/components/Icon/components/{BulletList.js → BulletList.jsx} +0 -0
  192. /package/src/components/Icon/components/{Button.js → Button.jsx} +0 -0
  193. /package/src/components/Icon/components/{Calendar.js → Calendar.jsx} +0 -0
  194. /package/src/components/Icon/components/{CancelEvent.js → CancelEvent.jsx} +0 -0
  195. /package/src/components/Icon/components/{Category.js → Category.jsx} +0 -0
  196. /package/src/components/Icon/components/{Change.js → Change.jsx} +0 -0
  197. /package/src/components/Icon/components/{Close.js → Close.jsx} +0 -0
  198. /package/src/components/Icon/components/{ClosePanel.js → ClosePanel.jsx} +0 -0
  199. /package/src/components/Icon/components/{CodeBody.js → CodeBody.jsx} +0 -0
  200. /package/src/components/Icon/components/{CodeHead.js → CodeHead.jsx} +0 -0
  201. /package/src/components/Icon/components/{CodeHeadBody.js → CodeHeadBody.jsx} +0 -0
  202. /package/src/components/Icon/components/{Collapsed.js → Collapsed.jsx} +0 -0
  203. /package/src/components/Icon/components/{ColorPicker.js → ColorPicker.jsx} +0 -0
  204. /package/src/components/Icon/components/{Compose.js → Compose.jsx} +0 -0
  205. /package/src/components/Icon/components/{Copy.js → Copy.jsx} +0 -0
  206. /package/src/components/Icon/components/{Copy2.js → Copy2.jsx} +0 -0
  207. /package/src/components/Icon/components/{Data.js → Data.jsx} +0 -0
  208. /package/src/components/Icon/components/{DataAdd.js → DataAdd.jsx} +0 -0
  209. /package/src/components/Icon/components/{Deactivate.js → Deactivate.jsx} +0 -0
  210. /package/src/components/Icon/components/{Delete.js → Delete.jsx} +0 -0
  211. /package/src/components/Icon/components/{Desktop.js → Desktop.jsx} +0 -0
  212. /package/src/components/Icon/components/{Disabled.js → Disabled.jsx} +0 -0
  213. /package/src/components/Icon/components/{Done.js → Done.jsx} +0 -0
  214. /package/src/components/Icon/components/{DownArrow.js → DownArrow.jsx} +0 -0
  215. /package/src/components/Icon/components/{Download.js → Download.jsx} +0 -0
  216. /package/src/components/Icon/components/{Drag.js → Drag.jsx} +0 -0
  217. /package/src/components/Icon/components/{Duplicate.js → Duplicate.jsx} +0 -0
  218. /package/src/components/Icon/components/{Edit.js → Edit.jsx} +0 -0
  219. /package/src/components/Icon/components/{Empty.js → Empty.jsx} +0 -0
  220. /package/src/components/Icon/components/{EmptyCheck.js → EmptyCheck.jsx} +0 -0
  221. /package/src/components/Icon/components/{Extend.js → Extend.jsx} +0 -0
  222. /package/src/components/Icon/components/{File.js → File.jsx} +0 -0
  223. /package/src/components/Icon/components/{Filter.js → Filter.jsx} +0 -0
  224. /package/src/components/Icon/components/{Form.js → Form.jsx} +0 -0
  225. /package/src/components/Icon/components/{FullArrowDown.js → FullArrowDown.jsx} +0 -0
  226. /package/src/components/Icon/components/{FullArrowLeft.js → FullArrowLeft.jsx} +0 -0
  227. /package/src/components/Icon/components/{FullArrowRight.js → FullArrowRight.jsx} +0 -0
  228. /package/src/components/Icon/components/{FullArrowUp.js → FullArrowUp.jsx} +0 -0
  229. /package/src/components/Icon/components/{Grid.js → Grid.jsx} +0 -0
  230. /package/src/components/Icon/components/{Grid2.js → Grid2.jsx} +0 -0
  231. /package/src/components/Icon/components/{GriddoLogo.js → GriddoLogo.jsx} +0 -0
  232. /package/src/components/Icon/components/{HeroCard.js → HeroCard.jsx} +0 -0
  233. /package/src/components/Icon/components/{Hide.js → Hide.jsx} +0 -0
  234. /package/src/components/Icon/components/{History.js → History.jsx} +0 -0
  235. /package/src/components/Icon/components/{Home.js → Home.jsx} +0 -0
  236. /package/src/components/Icon/components/{Ia.js → Ia.jsx} +0 -0
  237. /package/src/components/Icon/components/{Image.js → Image.jsx} +0 -0
  238. /package/src/components/Icon/components/{Info.js → Info.jsx} +0 -0
  239. /package/src/components/Icon/components/{Laptop.js → Laptop.jsx} +0 -0
  240. /package/src/components/Icon/components/{LeftArrow.js → LeftArrow.jsx} +0 -0
  241. /package/src/components/Icon/components/{Link.js → Link.jsx} +0 -0
  242. /package/src/components/Icon/components/{Lock.js → Lock.jsx} +0 -0
  243. /package/src/components/Icon/components/{Log.js → Log.jsx} +0 -0
  244. /package/src/components/Icon/components/{Map.js → Map.jsx} +0 -0
  245. /package/src/components/Icon/components/{Menu.js → Menu.jsx} +0 -0
  246. /package/src/components/Icon/components/{Microsoft.js → Microsoft.jsx} +0 -0
  247. /package/src/components/Icon/components/{Modified.js → Modified.jsx} +0 -0
  248. /package/src/components/Icon/components/{Modules.js → Modules.jsx} +0 -0
  249. /package/src/components/Icon/components/{More.js → More.jsx} +0 -0
  250. /package/src/components/Icon/components/{NewFolder.js → NewFolder.jsx} +0 -0
  251. /package/src/components/Icon/components/{Offline.js → Offline.jsx} +0 -0
  252. /package/src/components/Icon/components/{OfflinePending.js → OfflinePending.jsx} +0 -0
  253. /package/src/components/Icon/components/{OpenOutside.js → OpenOutside.jsx} +0 -0
  254. /package/src/components/Icon/components/{OpenPanel.js → OpenPanel.jsx} +0 -0
  255. /package/src/components/Icon/components/{OutOfSection.js → OutOfSection.jsx} +0 -0
  256. /package/src/components/Icon/components/{Page.js → Page.jsx} +0 -0
  257. /package/src/components/Icon/components/{Party.js → Party.jsx} +0 -0
  258. /package/src/components/Icon/components/{Paste.js → Paste.jsx} +0 -0
  259. /package/src/components/Icon/components/{Phone.js → Phone.jsx} +0 -0
  260. /package/src/components/Icon/components/{PhotoLibrary.js → PhotoLibrary.jsx} +0 -0
  261. /package/src/components/Icon/components/{Power.js → Power.jsx} +0 -0
  262. /package/src/components/Icon/components/{Preview.js → Preview.jsx} +0 -0
  263. /package/src/components/Icon/components/{Project.js → Project.jsx} +0 -0
  264. /package/src/components/Icon/components/{QrCode.js → QrCode.jsx} +0 -0
  265. /package/src/components/Icon/components/{Question.js → Question.jsx} +0 -0
  266. /package/src/components/Icon/components/{Refresh.js → Refresh.jsx} +0 -0
  267. /package/src/components/Icon/components/{Republish.js → Republish.jsx} +0 -0
  268. /package/src/components/Icon/components/{RightArrow.js → RightArrow.jsx} +0 -0
  269. /package/src/components/Icon/components/{Scheduled.js → Scheduled.jsx} +0 -0
  270. /package/src/components/Icon/components/{Search.js → Search.jsx} +0 -0
  271. /package/src/components/Icon/components/{SendEmail.js → SendEmail.jsx} +0 -0
  272. /package/src/components/Icon/components/{Settings.js → Settings.jsx} +0 -0
  273. /package/src/components/Icon/components/{Share.js → Share.jsx} +0 -0
  274. /package/src/components/Icon/components/{Subsection.js → Subsection.jsx} +0 -0
  275. /package/src/components/Icon/components/{Success.js → Success.jsx} +0 -0
  276. /package/src/components/Icon/components/{SuccessSolid.js → SuccessSolid.jsx} +0 -0
  277. /package/src/components/Icon/components/{Sync.js → Sync.jsx} +0 -0
  278. /package/src/components/Icon/components/{Tablet.js → Tablet.jsx} +0 -0
  279. /package/src/components/Icon/components/{Translate.js → Translate.jsx} +0 -0
  280. /package/src/components/Icon/components/{Unlink.js → Unlink.jsx} +0 -0
  281. /package/src/components/Icon/components/{UpArrow.js → UpArrow.jsx} +0 -0
  282. /package/src/components/Icon/components/{UploadFile.js → UploadFile.jsx} +0 -0
  283. /package/src/components/Icon/components/{UploadPending.js → UploadPending.jsx} +0 -0
  284. /package/src/components/Icon/components/{UrlLink.js → UrlLink.jsx} +0 -0
  285. /package/src/components/Icon/components/{User.js → User.jsx} +0 -0
  286. /package/src/components/Icon/components/{Users.js → Users.jsx} +0 -0
  287. /package/src/components/Icon/components/{Video.js → Video.jsx} +0 -0
  288. /package/src/components/Icon/components/{View.js → View.jsx} +0 -0
  289. /package/src/components/Icon/components/{Warning.js → Warning.jsx} +0 -0
  290. /package/src/components/Icon/components/{Web.js → Web.jsx} +0 -0
  291. /package/src/components/Icon/components/{Working.js → Working.jsx} +0 -0
  292. /package/src/components/Loader/components/{Circle.js → Circle.jsx} +0 -0
  293. /package/src/components/Loader/components/{Dots.js → Dots.jsx} +0 -0
  294. /package/src/components/Loader/components/{SmallCircle.js → SmallCircle.jsx} +0 -0
@@ -1,7 +1,7 @@
1
1
  import * as React from "react";
2
2
 
3
3
  import { ThemeProvider } from "styled-components";
4
- import { mock } from "jest-mock-extended";
4
+ import { mock } from "vitest-mock-extended";
5
5
 
6
6
  import { render, screen, cleanup, fireEvent } from "@testing-library/react";
7
7
  import { parseTheme } from "@ax/helpers";
@@ -10,299 +10,250 @@ import globalTheme from "@ax/themes/theme.json";
10
10
  import ComponentContainer, { IComponentContainerProps } from "@ax/components/Fields/ComponentContainer";
11
11
 
12
12
  afterEach(cleanup);
13
- const defaultProps = mock<IComponentContainerProps>();
14
13
 
15
- describe("ComponentContainer component rendering", () => {
16
- afterEach(() => {
17
- jest.resetAllMocks();
14
+ // Cada test construye sus propios props. Antes había un único `mock<...>()` a
15
+ // nivel de módulo que los tests iban mutando, así que cada uno heredaba lo que
16
+ // hubieran dejado los anteriores: reordenarlos o lanzar uno suelto los rompía.
17
+ const makeProps = (overrides: Partial<IComponentContainerProps> = {}): IComponentContainerProps =>
18
+ Object.assign(mock<IComponentContainerProps>(), overrides);
19
+
20
+ const makeActions = (): IComponentContainerProps["actions"] => ({
21
+ addComponentAction: vi.fn(),
22
+ deleteModuleAction: vi.fn(),
23
+ duplicateModuleAction: vi.fn(),
24
+ copyModuleAction: vi.fn(),
25
+ replaceModuleAction: vi.fn(),
26
+ });
27
+
28
+ const renderContainer = (props: IComponentContainerProps) =>
29
+ render(
30
+ <ThemeProvider theme={parseTheme(globalTheme)}>
31
+ <ComponentContainer {...props} />
32
+ </ThemeProvider>,
33
+ );
34
+
35
+ const linkValue = {
36
+ component: "Link",
37
+ text: "Link 1",
38
+ style: "primary",
39
+ url: {
40
+ url: "",
41
+ linkTo: null,
42
+ newTab: false,
43
+ noFollow: false,
44
+ size: null,
45
+ icon: null,
46
+ linkContainer: null,
47
+ },
48
+ editorID: 5,
49
+ parentEditorID: 4,
50
+ };
51
+
52
+ const basicContent = {
53
+ component: "BasicContent",
54
+ title: {
55
+ content: "Title",
56
+ tag: "h1",
57
+ },
58
+ anchorID: null,
59
+ verticalSpacing: "medium",
60
+ layout: "L001",
61
+ theme: "default",
62
+ moduleOrder: null,
63
+ subtitle:
64
+ "Lorem ipsum dolor sit amet, consectetur adipiscsdcdscing elit. Morbi dignissim ut nibh eget porttitor. Nunc eleifend mollis arcu.sdcsdc",
65
+ content:
66
+ "<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi dignissim ut nibh eget porttitor. Nunc eleifend mollis arcu. Lorem ipsum d</p>",
67
+ primaryLink: linkValue,
68
+ secondaryLink: {
69
+ component: "Link",
70
+ editorID: 6,
71
+ parentEditorID: 4,
72
+ },
73
+ additionalContent: {
74
+ image: {
75
+ component: "LinkableImage",
76
+ editorID: 7,
77
+ parentEditorID: 4,
78
+ },
79
+ video: {
80
+ component: "Video",
81
+ editorID: 8,
82
+ parentEditorID: 4,
83
+ },
84
+ },
85
+ editorID: 4,
86
+ parentEditorID: 3,
87
+ };
88
+
89
+ const sectionContent = {
90
+ component: "Section",
91
+ name: "Main Content",
92
+ modules: [basicContent],
93
+ sectionPosition: 2,
94
+ editorID: 3,
95
+ parentEditorID: 1,
96
+ key: "mainContent",
97
+ };
98
+
99
+ const imageVideoValue = {
100
+ image: { component: "LinkableImage", editorID: 2, parentEditorID: 1 },
101
+ video: { component: "Video", editorID: 3, parentEditorID: 1 },
102
+ };
103
+
104
+ const imageVideoWithThumbnail = {
105
+ image: { component: "LinkableImage", editorID: 2, parentEditorID: 1 },
106
+ video: {
107
+ component: "Video",
108
+ editorID: 3,
109
+ parentEditorID: 1,
110
+ thumbnail: { component: "Image", editorID: 4, parentEditorID: 3 },
111
+ url: "",
112
+ },
113
+ };
114
+
115
+ // Los cinco últimos tests comparten escenario y solo se diferencian en el
116
+ // tamaño del array y en si el contenedor es un array.
117
+ const floatingMenuProps = (overrides: Partial<IComponentContainerProps> = {}): IComponentContainerProps =>
118
+ makeProps({
119
+ title: "a title",
120
+ text: "texto a mostrar",
121
+ moduleTitle: "module title",
122
+ whiteList: ["LinkImage", "Video"],
123
+ isArray: false,
124
+ arrayLength: 2,
125
+ theme: "griddo-alt-theme",
126
+ editorID: 1,
127
+ disabled: false,
128
+ value: imageVideoWithThumbnail,
129
+ actionReplace: vi.fn(),
130
+ actions: makeActions(),
131
+ canDuplicate: true,
132
+ canReplace: true,
133
+ parentKey: "title",
134
+ objKey: "component",
135
+ selectedContent: basicContent,
136
+ ...overrides,
18
137
  });
138
+
139
+ describe("ComponentContainer component rendering", () => {
19
140
  test("should render the ComponentContainer", () => {
20
- defaultProps.text = "texto";
21
- defaultProps.editorID = 1;
22
- defaultProps.whiteList = ["BasicContent", "CardCollection"];
23
- defaultProps.arrayLength = 10;
24
- defaultProps.theme = "default";
25
- defaultProps.isArray = true;
26
- defaultProps.disabled = false;
27
- render(
28
- <ThemeProvider theme={parseTheme(globalTheme)}>
29
- <ComponentContainer {...defaultProps} />
30
- </ThemeProvider>,
141
+ renderContainer(
142
+ makeProps({
143
+ text: "texto",
144
+ editorID: 1,
145
+ whiteList: ["BasicContent", "CardCollection"],
146
+ arrayLength: 10,
147
+ theme: "default",
148
+ isArray: true,
149
+ disabled: false,
150
+ }),
31
151
  );
32
152
 
33
153
  expect(screen.getAllByTestId("component-container")).toBeTruthy();
34
154
  });
155
+
35
156
  test("should render the EmptyContainer with whitelist value", () => {
36
- // biome-ignore lint/suspicious/noTsIgnore: TODO: fix this
37
- // @ts-ignore
38
- defaultProps.text = undefined;
39
- // biome-ignore lint/suspicious/noTsIgnore: TODO: fix this
40
- // @ts-ignore
41
- defaultProps.editorID = undefined;
42
- defaultProps.whiteList = ["BasicContent", "CardCollection"];
43
- defaultProps.isArray = false;
44
- defaultProps.arrayLength = 10;
45
- defaultProps.theme = "default";
46
- defaultProps.value = {};
47
- defaultProps.actionReplace = jest.fn();
48
- defaultProps.actions = {
49
- addComponentAction: jest.fn(),
50
- deleteModuleAction: jest.fn(),
51
- duplicateModuleAction: jest.fn(),
52
- copyModuleAction: jest.fn(),
53
- replaceModuleAction: jest.fn(),
54
- };
55
- defaultProps.canDuplicate = true;
56
- defaultProps.canReplace = true;
57
- defaultProps.objKey = "component";
58
- defaultProps.selectedContent = {
59
- component: "Section",
60
- name: "Main Content",
61
- modules: [
62
- {
63
- component: "BasicContent",
64
- title: {
65
- content: "Title",
66
- tag: "h1",
67
- },
68
- anchorID: null,
69
- verticalSpacing: "medium",
70
- layout: "L001",
71
- theme: "default",
72
- moduleOrder: null,
73
- subtitle:
74
- "Lorem ipsum dolor sit amet, consectetur adipiscsdcdscing elit. Morbi dignissim ut nibh eget porttitor. Nunc eleifend mollis arcu.sdcsdc",
75
- content:
76
- "<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi dignissim ut nibh eget porttitor. Nunc eleifend mollis arcu. Lorem ipsum d</p>",
77
- primaryLink: {
78
- component: "Link",
79
- text: "Link 1",
80
- style: "primary",
81
- url: {
82
- url: "",
83
- linkTo: null,
84
- newTab: false,
85
- noFollow: false,
86
- size: null,
87
- icon: null,
88
- linkContainer: null,
89
- },
90
- editorID: 5,
91
- parentEditorID: 4,
92
- },
93
- secondaryLink: {
94
- component: "Link",
95
- editorID: 6,
96
- parentEditorID: 4,
97
- },
98
- additionalContent: {
99
- image: {
100
- component: "LinkableImage",
101
- editorID: 7,
102
- parentEditorID: 4,
103
- },
104
- video: {
105
- component: "Video",
106
- editorID: 8,
107
- parentEditorID: 4,
108
- },
109
- },
110
- editorID: 4,
111
- parentEditorID: 3,
112
- },
113
- ],
114
- sectionPosition: 2,
115
- editorID: 3,
116
- parentEditorID: 1,
117
- key: "mainContent",
118
- };
119
- render(
120
- <ThemeProvider theme={parseTheme(globalTheme)}>
121
- <ComponentContainer {...defaultProps} />
122
- </ThemeProvider>,
157
+ renderContainer(
158
+ makeProps({
159
+ text: undefined,
160
+ editorID: undefined,
161
+ whiteList: ["BasicContent", "CardCollection"],
162
+ isArray: false,
163
+ arrayLength: 10,
164
+ theme: "default",
165
+ disabled: false,
166
+ value: {},
167
+ actionReplace: vi.fn(),
168
+ actions: makeActions(),
169
+ canDuplicate: true,
170
+ canReplace: true,
171
+ objKey: "component",
172
+ selectedContent: sectionContent,
173
+ }),
123
174
  );
175
+
124
176
  expect(screen.getAllByTestId("field-multiple-options")).toBeTruthy();
125
177
  });
178
+
126
179
  test("should render the EmptyContainer with title", () => {
127
- defaultProps.title = "a title";
128
- defaultProps.whiteList = ["BasicContent", "CardCollection"];
129
- defaultProps.isArray = false;
130
- defaultProps.arrayLength = 10;
131
- defaultProps.theme = "default";
132
- defaultProps.value = {};
133
- defaultProps.actionReplace = jest.fn();
134
- defaultProps.actions = {
135
- addComponentAction: jest.fn(),
136
- deleteModuleAction: jest.fn(),
137
- duplicateModuleAction: jest.fn(),
138
- copyModuleAction: jest.fn(),
139
- replaceModuleAction: jest.fn(),
140
- };
141
- defaultProps.canDuplicate = true;
142
- defaultProps.canReplace = true;
143
- defaultProps.objKey = "component";
144
- render(
145
- <ThemeProvider theme={parseTheme(globalTheme)}>
146
- <ComponentContainer {...defaultProps} />
147
- </ThemeProvider>,
180
+ renderContainer(
181
+ makeProps({
182
+ title: "a title",
183
+ text: undefined,
184
+ editorID: undefined,
185
+ whiteList: ["BasicContent", "CardCollection"],
186
+ isArray: false,
187
+ arrayLength: 10,
188
+ theme: "default",
189
+ disabled: false,
190
+ value: {},
191
+ actionReplace: vi.fn(),
192
+ actions: makeActions(),
193
+ canDuplicate: true,
194
+ canReplace: true,
195
+ objKey: "component",
196
+ selectedContent: sectionContent,
197
+ }),
148
198
  );
199
+
149
200
  expect(screen.getAllByTestId("field-multiple-options")).toBeTruthy();
150
201
  });
202
+
151
203
  test("should render the icon with the container text", () => {
152
- defaultProps.text = "texto a mostrar";
153
- defaultProps.editorID = 1;
154
- defaultProps.whiteList = ["BasicContent", "CardCollection"];
155
- defaultProps.isArray = false;
156
- defaultProps.disabled = false;
157
- defaultProps.arrayLength = 10;
158
- defaultProps.theme = "default";
159
- defaultProps.value = {
160
- component: "Link",
161
- text: "Link 1",
162
- style: "primary",
163
- url: {
164
- url: "",
165
- linkTo: null,
166
- newTab: false,
167
- noFollow: false,
168
- size: null,
169
- icon: null,
170
- linkContainer: null,
171
- },
172
- editorID: 5,
173
- parentEditorID: 4,
174
- };
175
- defaultProps.actions = {
176
- addComponentAction: jest.fn(),
177
- deleteModuleAction: jest.fn(),
178
- duplicateModuleAction: jest.fn(),
179
- copyModuleAction: jest.fn(),
180
- replaceModuleAction: jest.fn(),
181
- };
182
- defaultProps.parentKey = "title";
183
- defaultProps.objKey = "content";
184
- defaultProps.selectedContent = {
185
- component: "BasicContent",
186
- title: {
187
- content: "Title",
188
- tag: "h1",
189
- },
190
- anchorID: null,
191
- verticalSpacing: "medium",
192
- layout: "L001",
193
- theme: "default",
194
- moduleOrder: null,
195
- subtitle:
196
- "Lorem ipsum dolor sit amet, consectetur adipiscsdcdscing elit. Morbi dignissim ut nibh eget porttitor. Nunc eleifend mollis arcu.sdcsdc",
197
- content:
198
- "<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi dignissim ut nibh eget porttitor. Nunc eleifend mollis arcu. Lorem ipsum d</p>",
199
- primaryLink: {
200
- component: "Link",
201
- text: "Link 1",
202
- style: "primary",
203
- url: {
204
- url: "",
205
- linkTo: null,
206
- newTab: false,
207
- noFollow: false,
208
- size: null,
209
- icon: null,
210
- linkContainer: null,
211
- },
212
- editorID: 5,
213
- parentEditorID: 4,
214
- },
215
- secondaryLink: {
216
- component: "Link",
217
- editorID: 6,
218
- parentEditorID: 4,
219
- },
220
- additionalContent: {
221
- image: {
222
- component: "LinkableImage",
223
- editorID: 7,
224
- parentEditorID: 4,
225
- },
226
- video: {
227
- component: "Video",
228
- editorID: 8,
229
- parentEditorID: 4,
230
- },
231
- },
232
- editorID: 4,
233
- parentEditorID: 3,
234
- };
235
- render(
236
- <ThemeProvider theme={parseTheme(globalTheme)}>
237
- <ComponentContainer {...defaultProps} />
238
- </ThemeProvider>,
204
+ renderContainer(
205
+ makeProps({
206
+ title: "a title",
207
+ text: "texto a mostrar",
208
+ editorID: 1,
209
+ whiteList: ["BasicContent", "CardCollection"],
210
+ isArray: false,
211
+ disabled: false,
212
+ arrayLength: 10,
213
+ theme: "default",
214
+ value: linkValue,
215
+ actionReplace: vi.fn(),
216
+ actions: makeActions(),
217
+ canDuplicate: true,
218
+ canReplace: true,
219
+ parentKey: "title",
220
+ objKey: "content",
221
+ selectedContent: basicContent,
222
+ }),
239
223
  );
224
+
240
225
  expect(screen.getByTestId("icon-wrapper")).toBeTruthy();
241
226
  expect(screen.findByText("texto a mostrar")).toBeTruthy();
242
227
  });
243
228
 
244
229
  test("should render the title", () => {
245
- defaultProps.text = "texto a mostrar";
246
- defaultProps.moduleTitle = "module title";
247
- defaultProps.editorID = 1;
248
- defaultProps.whiteList = [];
249
- defaultProps.isArray = false;
250
- defaultProps.disabled = false;
251
- defaultProps.arrayLength = 10;
252
- defaultProps.theme = "default";
253
- defaultProps.value = {
254
- component: "Link",
255
- text: "Link 1",
256
- style: "primary",
257
- url: {
258
- url: "",
259
- linkTo: null,
260
- newTab: false,
261
- noFollow: false,
262
- size: null,
263
- icon: null,
264
- linkContainer: null,
265
- },
266
- editorID: 5,
267
- parentEditorID: 4,
268
- };
269
-
270
- render(
271
- <ThemeProvider theme={parseTheme(globalTheme)}>
272
- <ComponentContainer {...defaultProps} />
273
- </ThemeProvider>,
230
+ renderContainer(
231
+ makeProps({
232
+ title: "a title",
233
+ text: "texto a mostrar",
234
+ moduleTitle: "module title",
235
+ editorID: 1,
236
+ whiteList: [],
237
+ isArray: false,
238
+ disabled: false,
239
+ arrayLength: 10,
240
+ theme: "default",
241
+ value: linkValue,
242
+ actionReplace: vi.fn(),
243
+ actions: makeActions(),
244
+ canDuplicate: true,
245
+ canReplace: true,
246
+ parentKey: "title",
247
+ objKey: "content",
248
+ selectedContent: basicContent,
249
+ }),
274
250
  );
251
+
275
252
  expect(screen.findByText("module title")).toBeTruthy();
276
253
  });
277
254
 
278
255
  test("should render the SideModal when click EmptyContainer", () => {
279
- defaultProps.title = "a title";
280
- defaultProps.whiteList = ["LinkImage", "Video"];
281
- defaultProps.isArray = false;
282
- defaultProps.arrayLength = 2;
283
- defaultProps.theme = "griddo-alt-theme";
284
- defaultProps.editorID = 1;
285
- defaultProps.value = {
286
- image: { component: "LinkableImage", editorID: 2, parentEditorID: 1 },
287
- video: { component: "Video", editorID: 3, parentEditorID: 1 },
288
- };
289
- defaultProps.actionReplace = jest.fn();
290
- defaultProps.actions = {
291
- addComponentAction: jest.fn(),
292
- deleteModuleAction: jest.fn(),
293
- duplicateModuleAction: jest.fn(),
294
- copyModuleAction: jest.fn(),
295
- replaceModuleAction: jest.fn(),
296
- };
297
- defaultProps.canDuplicate = true;
298
- defaultProps.canReplace = true;
299
- defaultProps.objKey = "component";
300
-
301
- render(
302
- <ThemeProvider theme={parseTheme(globalTheme)}>
303
- <ComponentContainer {...defaultProps} />
304
- </ThemeProvider>,
305
- );
256
+ renderContainer(floatingMenuProps({ value: imageVideoValue }));
306
257
 
307
258
  const multipleOptionsField = screen.getByTestId("field-multiple-options");
308
259
  expect(multipleOptionsField).toBeTruthy();
@@ -312,33 +263,7 @@ describe("ComponentContainer component rendering", () => {
312
263
  });
313
264
 
314
265
  test("should render component options on SideModal", () => {
315
- defaultProps.title = "a title";
316
- defaultProps.whiteList = ["LinkImage", "Video"];
317
- defaultProps.isArray = false;
318
- defaultProps.arrayLength = 2;
319
- defaultProps.theme = "griddo-alt-theme";
320
- defaultProps.editorID = 1;
321
- defaultProps.value = {
322
- image: { component: "LinkableImage", editorID: 2, parentEditorID: 1 },
323
- video: { component: "Video", editorID: 3, parentEditorID: 1 },
324
- };
325
- defaultProps.actionReplace = jest.fn();
326
- defaultProps.actions = {
327
- addComponentAction: jest.fn(),
328
- deleteModuleAction: jest.fn(),
329
- duplicateModuleAction: jest.fn(),
330
- copyModuleAction: jest.fn(),
331
- replaceModuleAction: jest.fn(),
332
- };
333
- defaultProps.canDuplicate = true;
334
- defaultProps.canReplace = true;
335
- defaultProps.objKey = "component";
336
-
337
- render(
338
- <ThemeProvider theme={parseTheme(globalTheme)}>
339
- <ComponentContainer {...defaultProps} />
340
- </ThemeProvider>,
341
- );
266
+ renderContainer(floatingMenuProps({ value: imageVideoValue }));
342
267
 
343
268
  const multipleOptionsField = screen.getByTestId("field-multiple-options");
344
269
  expect(multipleOptionsField).toBeTruthy();
@@ -351,39 +276,7 @@ describe("ComponentContainer component rendering", () => {
351
276
  });
352
277
 
353
278
  test("should render the FloatingMenu with options when click Component Container", async () => {
354
- defaultProps.title = "a title";
355
- defaultProps.whiteList = ["LinkImage", "Video"];
356
- defaultProps.isArray = false;
357
- defaultProps.arrayLength = 2;
358
- defaultProps.theme = "griddo-alt-theme";
359
- defaultProps.editorID = 1;
360
- defaultProps.value = {
361
- image: { component: "LinkableImage", editorID: 2, parentEditorID: 1 },
362
- video: {
363
- component: "Video",
364
- editorID: 3,
365
- parentEditorID: 1,
366
- thumbnail: { component: "Image", editorID: 4, parentEditorID: 3 },
367
- url: "",
368
- },
369
- };
370
- defaultProps.actionReplace = jest.fn();
371
- defaultProps.actions = {
372
- addComponentAction: jest.fn(),
373
- deleteModuleAction: jest.fn(),
374
- duplicateModuleAction: jest.fn(),
375
- copyModuleAction: jest.fn(),
376
- replaceModuleAction: jest.fn(),
377
- };
378
- defaultProps.canDuplicate = true;
379
- defaultProps.canReplace = true;
380
- defaultProps.objKey = "component";
381
-
382
- render(
383
- <ThemeProvider theme={parseTheme(globalTheme)}>
384
- <ComponentContainer {...defaultProps} />
385
- </ThemeProvider>,
386
- );
279
+ renderContainer(floatingMenuProps());
387
280
 
388
281
  const component = screen.getByTestId("component-container");
389
282
  fireEvent.mouseOver(component);
@@ -397,39 +290,7 @@ test("should render the FloatingMenu with options when click Component Container
397
290
  });
398
291
 
399
292
  test("should render the SideModal with options when click the replace action", async () => {
400
- defaultProps.title = "a title";
401
- defaultProps.whiteList = ["LinkImage", "Video"];
402
- defaultProps.isArray = false;
403
- defaultProps.arrayLength = 2;
404
- defaultProps.theme = "griddo-alt-theme";
405
- defaultProps.editorID = 1;
406
- defaultProps.value = {
407
- image: { component: "LinkableImage", editorID: 2, parentEditorID: 1 },
408
- video: {
409
- component: "Video",
410
- editorID: 3,
411
- parentEditorID: 1,
412
- thumbnail: { component: "Image", editorID: 4, parentEditorID: 3 },
413
- url: "",
414
- },
415
- };
416
- defaultProps.actionReplace = jest.fn();
417
- defaultProps.actions = {
418
- addComponentAction: jest.fn(),
419
- deleteModuleAction: jest.fn(),
420
- duplicateModuleAction: jest.fn(),
421
- copyModuleAction: jest.fn(),
422
- replaceModuleAction: jest.fn(),
423
- };
424
- defaultProps.canDuplicate = true;
425
- defaultProps.canReplace = true;
426
- defaultProps.objKey = "component";
427
-
428
- render(
429
- <ThemeProvider theme={parseTheme(globalTheme)}>
430
- <ComponentContainer {...defaultProps} />
431
- </ThemeProvider>,
432
- );
293
+ renderContainer(floatingMenuProps());
433
294
 
434
295
  const component = screen.getByTestId("component-container");
435
296
  fireEvent.mouseOver(component);
@@ -451,78 +312,14 @@ test("should render the SideModal with options when click the replace action", a
451
312
  });
452
313
 
453
314
  test("should not render the drag handle if arrays length is lower than two", async () => {
454
- defaultProps.title = "a title";
455
- defaultProps.whiteList = ["LinkImage", "Video"];
456
- defaultProps.isArray = false;
457
- defaultProps.arrayLength = 1;
458
- defaultProps.theme = "griddo-alt-theme";
459
- defaultProps.editorID = 1;
460
- defaultProps.value = {
461
- image: { component: "LinkableImage", editorID: 2, parentEditorID: 1 },
462
- video: {
463
- component: "Video",
464
- editorID: 3,
465
- parentEditorID: 1,
466
- thumbnail: { component: "Image", editorID: 4, parentEditorID: 3 },
467
- url: "",
468
- },
469
- };
470
- defaultProps.actionReplace = jest.fn();
471
- defaultProps.actions = {
472
- addComponentAction: jest.fn(),
473
- deleteModuleAction: jest.fn(),
474
- duplicateModuleAction: jest.fn(),
475
- copyModuleAction: jest.fn(),
476
- replaceModuleAction: jest.fn(),
477
- };
478
- defaultProps.canDuplicate = true;
479
- defaultProps.canReplace = true;
480
- defaultProps.objKey = "component";
481
-
482
- render(
483
- <ThemeProvider theme={parseTheme(globalTheme)}>
484
- <ComponentContainer {...defaultProps} />
485
- </ThemeProvider>,
486
- );
315
+ renderContainer(floatingMenuProps({ arrayLength: 1 }));
487
316
 
488
317
  const handleWrapper = screen.queryByTestId("handle-wrapper");
489
318
  expect(handleWrapper).toBeFalsy();
490
319
  });
491
320
 
492
321
  test("should render the drag handle if arrays length is greater than two", async () => {
493
- defaultProps.title = "a title";
494
- defaultProps.whiteList = ["LinkImage", "Video"];
495
- defaultProps.isArray = true;
496
- defaultProps.arrayLength = 3;
497
- defaultProps.theme = "griddo-alt-theme";
498
- defaultProps.editorID = 1;
499
- defaultProps.value = {
500
- image: { component: "LinkableImage", editorID: 2, parentEditorID: 1 },
501
- video: {
502
- component: "Video",
503
- editorID: 3,
504
- parentEditorID: 1,
505
- thumbnail: { component: "Image", editorID: 4, parentEditorID: 3 },
506
- url: "",
507
- },
508
- };
509
- defaultProps.actionReplace = jest.fn();
510
- defaultProps.actions = {
511
- addComponentAction: jest.fn(),
512
- deleteModuleAction: jest.fn(),
513
- duplicateModuleAction: jest.fn(),
514
- copyModuleAction: jest.fn(),
515
- replaceModuleAction: jest.fn(),
516
- };
517
- defaultProps.canDuplicate = true;
518
- defaultProps.canReplace = true;
519
- defaultProps.objKey = "component";
520
-
521
- render(
522
- <ThemeProvider theme={parseTheme(globalTheme)}>
523
- <ComponentContainer {...defaultProps} />
524
- </ThemeProvider>,
525
- );
322
+ renderContainer(floatingMenuProps({ isArray: true, arrayLength: 3 }));
526
323
 
527
324
  const handleWrapper = screen.getByTestId("handle-wrapper");
528
325
  expect(handleWrapper).toBeTruthy();