@griddo/ax 12.3.0-beta.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.
- package/config/__tests__/webpack5-migration.test.js +442 -0
- package/config/{jest/componentsMock.js → tests/componentsMock.cjs} +4 -1
- package/config/tests/reactEasyCropMock.js +15 -0
- package/config/tests/reactTimezoneMock.js +14 -0
- package/config/tests/setup.ts +41 -0
- package/config/webpack.config.js +183 -189
- package/config/webpackDevServer.config.js +63 -93
- package/config/webpackSchemas.config.js +6 -1
- package/package.json +33 -53
- package/public/img/icons/markdown.svg +6 -0
- package/scripts/build.js +4 -0
- package/scripts/start.js +38 -9
- package/src/__tests__/components/ActionMenu/ActionMenu.test.tsx +12 -12
- package/src/__tests__/components/Breadcrumb/Breadcrumb.test.tsx +2 -2
- package/src/__tests__/components/Browser/Browser.test.tsx +17 -25
- package/src/__tests__/components/BulkSelectionOptions/BulkSelectionOptions.test.tsx +3 -3
- package/src/__tests__/components/CategoryCell/CategoryCell.test.tsx +3 -2
- package/src/__tests__/components/ConfigPanel/ConfigPanel.test.tsx +4 -4
- package/src/__tests__/components/ConfigPanel/Form/ConnectedField/ConnectedField.test.tsx +2 -2
- package/src/__tests__/components/ConfigPanel/Form/ConnectedField/NavConnectedField/NavConnectedField.test.tsx +2 -2
- package/src/__tests__/components/ConfigPanel/Form/ConnectedField/PageConnectedField/Field/Field.test.tsx +3 -3
- package/src/__tests__/components/ConfigPanel/Form/ConnectedField/PageConnectedField/PageConnectedField.test.tsx +17 -14
- package/src/__tests__/components/ConfigPanel/Form/ConnectedField/PageConnectedField/TemplateManager/TemplateManager.test.tsx +4 -4
- package/src/__tests__/components/ConfigPanel/Form/Form.test.tsx +7 -6
- package/src/__tests__/components/ConfigPanel/GlobalPageForm/GlobalPageForm.test.tsx +11 -11
- package/src/__tests__/components/ConfigPanel/Header/Header.test.tsx +11 -10
- package/src/__tests__/components/ConfigPanel/NavigationForm/Field/Field.test.tsx +2 -2
- package/src/__tests__/components/ConfigPanel/NavigationForm/NavigationForm.test.tsx +2 -2
- package/src/__tests__/components/ConfigPanel/PreviewForm/PreviewForm.test.tsx +4 -3
- package/src/__tests__/components/ContextMenu/ContextMenu.test.tsx +24 -24
- package/src/__tests__/components/DragAndDrop/DragAndDrop.test.tsx +6 -5
- package/src/__tests__/components/ElementsTooltip/ElementsTooltip.test.tsx +1 -1
- package/src/__tests__/components/EmptyState/EmptyState.test.tsx +2 -2
- package/src/__tests__/components/ErrorCenter/ErrorCenter.test.tsx +11 -11
- package/src/__tests__/components/FieldContainer/FieldContainer.test.tsx +4 -4
- package/src/__tests__/components/Fields/AnalyticsField/AnalyticsField.test.tsx +3 -3
- package/src/__tests__/components/Fields/AnalyticsField/PageAnalytics/PageAnalytics.test.tsx +4 -4
- package/src/__tests__/components/Fields/AnalyticsField/StructuredDataAnalytics/StructuredDataAnalytics.test.tsx +3 -3
- package/src/__tests__/components/Fields/ArrayFieldGroup/ArrayFieldGroup.test.tsx +6 -5
- package/src/__tests__/components/Fields/AsyncCheckGroup/AsyncCheckGroup.test.tsx +19 -18
- package/src/__tests__/components/Fields/AsyncSelect/AsyncSelect.test.tsx +4 -3
- package/src/__tests__/components/Fields/Button/Button.test.tsx +4 -3
- package/src/__tests__/components/Fields/CheckField/CheckField.test.tsx +5 -5
- package/src/__tests__/components/Fields/CheckGroup/CheckGroup.test.tsx +10 -10
- package/src/__tests__/components/Fields/ColorPicker/ColorPicker.test.tsx +7 -6
- package/src/__tests__/components/Fields/ComponentArray/ComponentArray.test.tsx +3 -3
- package/src/__tests__/components/Fields/ComponentArray/MixableComponentArray/MixableComponentArray.test.tsx +45 -45
- package/src/__tests__/components/Fields/ComponentArray/MixableComponentArray/PasteModuleButton/PasteModuleButton.test.tsx +7 -6
- package/src/__tests__/components/Fields/ComponentArray/SameComponentArray/SameComponentArray.test.tsx +7 -7
- package/src/__tests__/components/Fields/ComponentContainer/ComponentContainer.test.tsx +55 -55
- package/src/__tests__/components/Fields/ConditionalField/ConditionalField.test.tsx +1 -1
- package/src/__tests__/components/Fields/DateField/DateField.test.tsx +6 -5
- package/src/__tests__/components/Fields/FieldGroup/FieldGroup.test.tsx +2 -2
- package/src/__tests__/components/Fields/FileField/FileField.test.tsx +4 -4
- package/src/__tests__/components/Fields/HeadingField/HeadingField.test.tsx +2 -2
- package/src/__tests__/components/Fields/HiddenField/HiddenField.test.tsx +3 -3
- package/src/__tests__/components/Fields/ImageField/ImageField.test.tsx +8 -7
- package/src/__tests__/components/Fields/IntegrationsField/IntegrationsField.test.tsx +9 -8
- package/src/__tests__/components/Fields/MultiCheckSelect/MultiCheckSelect.test.tsx +1 -1
- package/src/__tests__/components/Fields/MultiCheckSelectGroup/MultiCheckSelectGroup.test.tsx +7 -6
- package/src/__tests__/components/Fields/NoteField/NoteField.test.tsx +1 -1
- package/src/__tests__/components/Fields/NumberField/NumberField.test.tsx +8 -8
- package/src/__tests__/components/Fields/RadioField/RadioField.test.tsx +2 -2
- package/src/__tests__/components/Fields/ReferenceField/ReferenceField.test.tsx +17 -16
- package/src/__tests__/components/Fields/RichText/RichText.test.tsx +1 -1
- package/src/__tests__/components/Fields/Select/Select.test.tsx +1 -1
- package/src/__tests__/components/Fields/SliderField/SliderField.test.tsx +5 -4
- package/src/__tests__/components/Fields/SummaryButton/SummaryButton.test.tsx +2 -2
- package/src/__tests__/components/Fields/TagField/TagField.test.tsx +9 -9
- package/src/__tests__/components/Fields/TextArea/TextArea.test.tsx +13 -9
- package/src/__tests__/components/Fields/TextField/TextField.test.tsx +8 -8
- package/src/__tests__/components/Fields/TimeField/HourInput/HourInput.test.tsx +7 -6
- package/src/__tests__/components/Fields/TimeField/TimeField.test.tsx +4 -3
- package/src/__tests__/components/Fields/ToggleField/ToggleField.test.tsx +2 -2
- package/src/__tests__/components/Fields/Tooltip/Tooltip.test.tsx +6 -6
- package/src/__tests__/components/Fields/TranslateButton/TranslateButton.test.tsx +13 -13
- package/src/__tests__/components/Fields/UniqueCheck/UniqueCheck.test.tsx +1 -1
- package/src/__tests__/components/Fields/UrlField/UrlField.test.tsx +20 -19
- package/src/__tests__/components/Fields/VisualUniqueSelection/ImageSelection/ImageSelection.test.tsx +3 -2
- package/src/__tests__/components/Fields/VisualUniqueSelection/ScrollableSelection/ScrollableSelection.test.tsx +4 -3
- package/src/__tests__/components/Fields/VisualUniqueSelection/VisualUniqueSelection.test.tsx +1 -1
- package/src/__tests__/components/Fields/Wysiwyg/Wysiwyg.atoms.test.tsx +11 -11
- package/src/__tests__/components/Fields/Wysiwyg/Wysiwyg.helpers.test.tsx +13 -14
- package/src/__tests__/components/Fields/Wysiwyg/Wysiwyg.test.tsx +28 -28
- package/src/__tests__/components/FieldsBehavior/FieldsBehavior.test.tsx +15 -14
- package/src/__tests__/components/FloatingMenu/FloatingMenu.test.tsx +36 -35
- package/src/__tests__/components/FloatingPanel/FloatingPanel.test.tsx +10 -10
- package/src/__tests__/components/GuardModal/GuardModal.test.tsx +1 -1
- package/src/__tests__/components/HeadingsPreviewModal/ErrorsBanner/ErrorItem/ErrorItem.test.tsx +11 -11
- package/src/__tests__/components/HeadingsPreviewModal/ErrorsBanner/ErrorsBanner.test.tsx +4 -4
- package/src/__tests__/components/HeadingsPreviewModal/HeadingsPreviewModal.test.tsx +15 -14
- package/src/__tests__/components/IconAction/IconAction.test.tsx +2 -2
- package/src/__tests__/components/ImageDragAndDrop/CropStep/CropStep.test.tsx +3 -3
- package/src/__tests__/components/ImageDragAndDrop/ImageDragAndDrop.test.tsx +7 -7
- package/src/__tests__/components/KeywordsPreviewModal/KeywordItem/KeywordItem.test.tsx +5 -5
- package/src/__tests__/components/KeywordsPreviewModal/KeywordsPreviewModal.test.tsx +14 -13
- package/src/__tests__/components/KeywordsPreviewModal/atoms.test.tsx +13 -13
- package/src/__tests__/components/LanguageMenu/LanguageMenu.test.tsx +6 -6
- package/src/__tests__/components/Lists/Lists.test.tsx +1 -1
- package/src/__tests__/components/Loader/Loader.test.tsx +1 -1
- package/src/__tests__/components/Login/Login.test.tsx +32 -32
- package/src/__tests__/components/Login/RecoveryModal/RecoveryModal.test.tsx +10 -9
- package/src/__tests__/components/MainWrapper/AppBar/AppBar.test.tsx +21 -21
- package/src/__tests__/components/MenuItem/MenuItem.test.tsx +5 -5
- package/src/__tests__/components/Modal/Modal.test.tsx +20 -20
- package/src/__tests__/components/Nav/Nav.test.tsx +2 -2
- package/src/__tests__/components/Notification/Notification.test.tsx +2 -2
- package/src/__tests__/components/Pagination/Pagination.test.tsx +13 -14
- package/src/__tests__/components/ProfileImage/ProfileImage.test.tsx +6 -7
- package/src/__tests__/components/ReorderArrows/ReorderArrows.test.tsx +4 -3
- package/src/__tests__/components/ResizePanel/ResizePanel.test.tsx +10 -11
- package/src/__tests__/components/RestrictionsModal/CurrentAccessList/CurrentAccessList.test.tsx +7 -6
- package/src/__tests__/components/RestrictionsModal/OptionsStep/OptionsStep.test.tsx +12 -11
- package/src/__tests__/components/RestrictionsModal/RestrictionsModal.test.tsx +11 -10
- package/src/__tests__/components/RestrictionsModal/RolesList/RolesList.test.tsx +8 -8
- package/src/__tests__/components/RestrictionsModal/UsersList/UsersList.test.tsx +16 -15
- package/src/__tests__/components/SearchField/SearchField.test.tsx +13 -13
- package/src/__tests__/components/SideModal/SideModal.test.tsx +25 -23
- package/src/__tests__/components/SubNav/SubNav.test.tsx +1 -1
- package/src/__tests__/components/TableFilters/CategoryFilter/CategoryFilter.test.tsx +9 -8
- package/src/__tests__/components/TableFilters/CustomizeFilters/CustomizeFilters.test.tsx +5 -5
- package/src/__tests__/components/TableFilters/DateFilter/DateFilter.test.tsx +8 -8
- package/src/__tests__/components/TableFilters/LiveFilter/LiveFilter.test.tsx +11 -10
- package/src/__tests__/components/TableFilters/NameFilter/NameFilter.test.tsx +10 -10
- package/src/__tests__/components/TableFilters/RoleFilter/RoleFilter.test.tsx +5 -5
- package/src/__tests__/components/TableFilters/SiteFilter/SiteFilter.test.tsx +10 -9
- package/src/__tests__/components/TableFilters/StatusFilter/StatusFilter.test.tsx +9 -9
- package/src/__tests__/components/TableFilters/TranslationsFilter/TranslationsFilter.test.tsx +8 -8
- package/src/__tests__/components/TableFilters/TypeFilter/TypeFilter.test.tsx +5 -5
- package/src/__tests__/components/TableFilters/UsersFilter/UsersFilter.test.tsx +8 -8
- package/src/__tests__/components/TableList/TableList.test.tsx +4 -4
- package/src/__tests__/components/Tabs/Tabs.test.tsx +8 -9
- package/src/__tests__/components/Tag/Tag.test.tsx +3 -3
- package/src/__tests__/components/Toast/Toast.test.tsx +6 -6
- package/src/__tests__/gainup-trace.test.ts +67 -0
- package/src/__tests__/hooks/modals.test.tsx +4 -4
- package/src/__tests__/hooks/users.test.tsx +6 -5
- package/src/__tests__/modules/FileDrive/MarkdownFormat.test.tsx +58 -0
- package/src/__tests__/modules/FramePreview/FramePreview.test.tsx +40 -39
- package/src/__tests__/modules/FramePreview/HeadingsOverlay/HeadingsOverlay.test.tsx +11 -11
- package/src/__tests__/modules/Settings/Integrations/Integrations.test.tsx +2 -2
- package/src/__tests__/modules/Settings/Social/Social.test.tsx +4 -3
- package/src/__tests__/modules/Sites/Sites.test.tsx +5 -4
- package/src/__tests__/modules/Sites/SitesList/ListView/BulkHeader/BulkHeader.test.tsx +2 -2
- package/src/__tests__/modules/Sites/SitesList/SitesList.test.tsx +7 -6
- package/src/__tests__/modules/Sites/SitesList/WelcomeModal/DataStep/DataStep.test.tsx +6 -6
- package/src/__tests__/modules/Sites/SitesList/WelcomeModal/FinalStep/FinalStep.test.tsx +4 -4
- package/src/__tests__/modules/Sites/SitesList/WelcomeModal/ImageStep/CropView/CropView.test.tsx +3 -3
- package/src/__tests__/modules/Sites/SitesList/WelcomeModal/ImageStep/ImageStep.test.tsx +9 -5
- package/src/__tests__/modules/Sites/SitesList/WelcomeModal/ImageStep/UploadView/UploadView.test.tsx +8 -6
- package/src/__tests__/modules/Sites/SitesList/WelcomeModal/TimezoneStep/TimezoneStep.test.tsx +7 -7
- package/src/__tests__/modules/Sites/SitesList/WelcomeModal/WelcomeModal.test.tsx +1 -1
- package/src/__tests__/modules/Sites/SitesList/WelcomeModal/WelcomeStep/WelcomeStep.test.tsx +3 -3
- package/src/__tests__/modules/Users/Roles/BulkHeader/BulkHeader.test.tsx +3 -3
- package/src/__tests__/modules/Users/Roles/Roles.test.tsx +11 -10
- package/src/__tests__/modules/Users/UserCreate/SiteItem/RolesModal/RoleItem/RoleItem.test.tsx +3 -3
- package/src/__tests__/modules/Users/UserCreate/SiteItem/RolesModal/RolesModal.test.tsx +3 -3
- package/src/__tests__/modules/Users/UserCreate/SiteItem/SiteItem.test.tsx +3 -3
- package/src/__tests__/modules/Users/UserCreate/UserCreate.test.tsx +6 -5
- package/src/__tests__/modules/Users/UserList/UserItem/UserItem.test.tsx +9 -9
- package/src/__tests__/modules/Users/UserList/UserList.test.tsx +4 -4
- package/src/components/Flag/components/index.ts +30 -0
- package/src/components/Flag/index.tsx +3 -5
- package/src/components/Icon/components/index.ts +229 -0
- package/src/components/Icon/index.tsx +3 -7
- package/src/constants/index.ts +1 -1
- package/src/helpers/files.tsx +2 -0
- package/src/modules/App/Routing/NavMenu/index.tsx +4 -2
- package/src/modules/FileDrive/FileFilters/Type/index.tsx +1 -0
- package/tsconfig.json +1 -1
- package/config/jest/cssTransform.js +0 -14
- package/config/jest/fileMock.js +0 -1
- package/config/jest/fileTransform.js +0 -40
- package/config/jest/reactEasyCropMock.js +0 -15
- package/config/jest/reactTimezoneMock.js +0 -13
- package/config/jest/setup.js +0 -31
- package/config/jest/styleMock.js +0 -1
- package/config/pnpTs.js +0 -15
- package/src/__tests__/aiup-trace.test.ts +0 -23
- /package/config/{jest/test-utils.js → tests/test-utils.jsx} +0 -0
- /package/src/components/Flag/components/{Ca_ES.js → Ca_ES.jsx} +0 -0
- /package/src/components/Flag/components/{De_DE.js → De_DE.jsx} +0 -0
- /package/src/components/Flag/components/{En_GB.js → En_GB.jsx} +0 -0
- /package/src/components/Flag/components/{Es_ES.js → Es_ES.jsx} +0 -0
- /package/src/components/Flag/components/{Eu_ES.js → Eu_ES.jsx} +0 -0
- /package/src/components/Flag/components/{Fr_FR.js → Fr_FR.jsx} +0 -0
- /package/src/components/Flag/components/{It_IT.js → It_IT.jsx} +0 -0
- /package/src/components/Flag/components/{Pt_PT.js → Pt_PT.jsx} +0 -0
- /package/src/components/Icon/components/{Active.js → Active.jsx} +0 -0
- /package/src/components/Icon/components/{Add.js → Add.jsx} +0 -0
- /package/src/components/Icon/components/{AddCircle.js → AddCircle.jsx} +0 -0
- /package/src/components/Icon/components/{Alert.js → Alert.jsx} +0 -0
- /package/src/components/Icon/components/{AlignLeft.js → AlignLeft.jsx} +0 -0
- /package/src/components/Icon/components/{Back.js → Back.jsx} +0 -0
- /package/src/components/Icon/components/{BulletList.js → BulletList.jsx} +0 -0
- /package/src/components/Icon/components/{Button.js → Button.jsx} +0 -0
- /package/src/components/Icon/components/{Calendar.js → Calendar.jsx} +0 -0
- /package/src/components/Icon/components/{CancelEvent.js → CancelEvent.jsx} +0 -0
- /package/src/components/Icon/components/{Category.js → Category.jsx} +0 -0
- /package/src/components/Icon/components/{Change.js → Change.jsx} +0 -0
- /package/src/components/Icon/components/{Close.js → Close.jsx} +0 -0
- /package/src/components/Icon/components/{ClosePanel.js → ClosePanel.jsx} +0 -0
- /package/src/components/Icon/components/{CodeBody.js → CodeBody.jsx} +0 -0
- /package/src/components/Icon/components/{CodeHead.js → CodeHead.jsx} +0 -0
- /package/src/components/Icon/components/{CodeHeadBody.js → CodeHeadBody.jsx} +0 -0
- /package/src/components/Icon/components/{Collapsed.js → Collapsed.jsx} +0 -0
- /package/src/components/Icon/components/{ColorPicker.js → ColorPicker.jsx} +0 -0
- /package/src/components/Icon/components/{Compose.js → Compose.jsx} +0 -0
- /package/src/components/Icon/components/{Copy.js → Copy.jsx} +0 -0
- /package/src/components/Icon/components/{Copy2.js → Copy2.jsx} +0 -0
- /package/src/components/Icon/components/{Data.js → Data.jsx} +0 -0
- /package/src/components/Icon/components/{DataAdd.js → DataAdd.jsx} +0 -0
- /package/src/components/Icon/components/{Deactivate.js → Deactivate.jsx} +0 -0
- /package/src/components/Icon/components/{Delete.js → Delete.jsx} +0 -0
- /package/src/components/Icon/components/{Desktop.js → Desktop.jsx} +0 -0
- /package/src/components/Icon/components/{Disabled.js → Disabled.jsx} +0 -0
- /package/src/components/Icon/components/{Done.js → Done.jsx} +0 -0
- /package/src/components/Icon/components/{DownArrow.js → DownArrow.jsx} +0 -0
- /package/src/components/Icon/components/{Download.js → Download.jsx} +0 -0
- /package/src/components/Icon/components/{Drag.js → Drag.jsx} +0 -0
- /package/src/components/Icon/components/{Duplicate.js → Duplicate.jsx} +0 -0
- /package/src/components/Icon/components/{Edit.js → Edit.jsx} +0 -0
- /package/src/components/Icon/components/{Empty.js → Empty.jsx} +0 -0
- /package/src/components/Icon/components/{EmptyCheck.js → EmptyCheck.jsx} +0 -0
- /package/src/components/Icon/components/{Extend.js → Extend.jsx} +0 -0
- /package/src/components/Icon/components/{File.js → File.jsx} +0 -0
- /package/src/components/Icon/components/{Filter.js → Filter.jsx} +0 -0
- /package/src/components/Icon/components/{Form.js → Form.jsx} +0 -0
- /package/src/components/Icon/components/{FullArrowDown.js → FullArrowDown.jsx} +0 -0
- /package/src/components/Icon/components/{FullArrowLeft.js → FullArrowLeft.jsx} +0 -0
- /package/src/components/Icon/components/{FullArrowRight.js → FullArrowRight.jsx} +0 -0
- /package/src/components/Icon/components/{FullArrowUp.js → FullArrowUp.jsx} +0 -0
- /package/src/components/Icon/components/{Grid.js → Grid.jsx} +0 -0
- /package/src/components/Icon/components/{Grid2.js → Grid2.jsx} +0 -0
- /package/src/components/Icon/components/{GriddoLogo.js → GriddoLogo.jsx} +0 -0
- /package/src/components/Icon/components/{HeroCard.js → HeroCard.jsx} +0 -0
- /package/src/components/Icon/components/{Hide.js → Hide.jsx} +0 -0
- /package/src/components/Icon/components/{History.js → History.jsx} +0 -0
- /package/src/components/Icon/components/{Home.js → Home.jsx} +0 -0
- /package/src/components/Icon/components/{Ia.js → Ia.jsx} +0 -0
- /package/src/components/Icon/components/{Image.js → Image.jsx} +0 -0
- /package/src/components/Icon/components/{Info.js → Info.jsx} +0 -0
- /package/src/components/Icon/components/{Laptop.js → Laptop.jsx} +0 -0
- /package/src/components/Icon/components/{LeftArrow.js → LeftArrow.jsx} +0 -0
- /package/src/components/Icon/components/{Link.js → Link.jsx} +0 -0
- /package/src/components/Icon/components/{Lock.js → Lock.jsx} +0 -0
- /package/src/components/Icon/components/{Log.js → Log.jsx} +0 -0
- /package/src/components/Icon/components/{Map.js → Map.jsx} +0 -0
- /package/src/components/Icon/components/{Menu.js → Menu.jsx} +0 -0
- /package/src/components/Icon/components/{Microsoft.js → Microsoft.jsx} +0 -0
- /package/src/components/Icon/components/{Modified.js → Modified.jsx} +0 -0
- /package/src/components/Icon/components/{Modules.js → Modules.jsx} +0 -0
- /package/src/components/Icon/components/{More.js → More.jsx} +0 -0
- /package/src/components/Icon/components/{NewFolder.js → NewFolder.jsx} +0 -0
- /package/src/components/Icon/components/{Offline.js → Offline.jsx} +0 -0
- /package/src/components/Icon/components/{OfflinePending.js → OfflinePending.jsx} +0 -0
- /package/src/components/Icon/components/{OpenOutside.js → OpenOutside.jsx} +0 -0
- /package/src/components/Icon/components/{OpenPanel.js → OpenPanel.jsx} +0 -0
- /package/src/components/Icon/components/{OutOfSection.js → OutOfSection.jsx} +0 -0
- /package/src/components/Icon/components/{Page.js → Page.jsx} +0 -0
- /package/src/components/Icon/components/{Party.js → Party.jsx} +0 -0
- /package/src/components/Icon/components/{Paste.js → Paste.jsx} +0 -0
- /package/src/components/Icon/components/{Phone.js → Phone.jsx} +0 -0
- /package/src/components/Icon/components/{PhotoLibrary.js → PhotoLibrary.jsx} +0 -0
- /package/src/components/Icon/components/{Power.js → Power.jsx} +0 -0
- /package/src/components/Icon/components/{Preview.js → Preview.jsx} +0 -0
- /package/src/components/Icon/components/{Project.js → Project.jsx} +0 -0
- /package/src/components/Icon/components/{QrCode.js → QrCode.jsx} +0 -0
- /package/src/components/Icon/components/{Question.js → Question.jsx} +0 -0
- /package/src/components/Icon/components/{Refresh.js → Refresh.jsx} +0 -0
- /package/src/components/Icon/components/{Republish.js → Republish.jsx} +0 -0
- /package/src/components/Icon/components/{RightArrow.js → RightArrow.jsx} +0 -0
- /package/src/components/Icon/components/{Scheduled.js → Scheduled.jsx} +0 -0
- /package/src/components/Icon/components/{Search.js → Search.jsx} +0 -0
- /package/src/components/Icon/components/{SendEmail.js → SendEmail.jsx} +0 -0
- /package/src/components/Icon/components/{Settings.js → Settings.jsx} +0 -0
- /package/src/components/Icon/components/{Share.js → Share.jsx} +0 -0
- /package/src/components/Icon/components/{Subsection.js → Subsection.jsx} +0 -0
- /package/src/components/Icon/components/{Success.js → Success.jsx} +0 -0
- /package/src/components/Icon/components/{SuccessSolid.js → SuccessSolid.jsx} +0 -0
- /package/src/components/Icon/components/{Sync.js → Sync.jsx} +0 -0
- /package/src/components/Icon/components/{Tablet.js → Tablet.jsx} +0 -0
- /package/src/components/Icon/components/{Translate.js → Translate.jsx} +0 -0
- /package/src/components/Icon/components/{Unlink.js → Unlink.jsx} +0 -0
- /package/src/components/Icon/components/{UpArrow.js → UpArrow.jsx} +0 -0
- /package/src/components/Icon/components/{UploadFile.js → UploadFile.jsx} +0 -0
- /package/src/components/Icon/components/{UploadPending.js → UploadPending.jsx} +0 -0
- /package/src/components/Icon/components/{UrlLink.js → UrlLink.jsx} +0 -0
- /package/src/components/Icon/components/{User.js → User.jsx} +0 -0
- /package/src/components/Icon/components/{Users.js → Users.jsx} +0 -0
- /package/src/components/Icon/components/{Video.js → Video.jsx} +0 -0
- /package/src/components/Icon/components/{View.js → View.jsx} +0 -0
- /package/src/components/Icon/components/{Warning.js → Warning.jsx} +0 -0
- /package/src/components/Icon/components/{Web.js → Web.jsx} +0 -0
- /package/src/components/Icon/components/{Working.js → Working.jsx} +0 -0
- /package/src/components/Loader/components/{Circle.js → Circle.jsx} +0 -0
- /package/src/components/Loader/components/{Dots.js → Dots.jsx} +0 -0
- /package/src/components/Loader/components/{SmallCircle.js → SmallCircle.jsx} +0 -0
package/src/__tests__/components/HeadingsPreviewModal/ErrorsBanner/ErrorItem/ErrorItem.test.tsx
CHANGED
|
@@ -19,9 +19,9 @@ const mockError: IHeadingError = {
|
|
|
19
19
|
|
|
20
20
|
const defaultProps = {
|
|
21
21
|
error: mockError,
|
|
22
|
-
onSelectHeading:
|
|
23
|
-
onDelete:
|
|
24
|
-
onNavigateHeading:
|
|
22
|
+
onSelectHeading: vi.fn(() => vi.fn()),
|
|
23
|
+
onDelete: vi.fn(),
|
|
24
|
+
onNavigateHeading: vi.fn(),
|
|
25
25
|
parentIsOpen: true,
|
|
26
26
|
};
|
|
27
27
|
|
|
@@ -75,7 +75,7 @@ describe("ErrorItem component rendering", () => {
|
|
|
75
75
|
|
|
76
76
|
describe("ErrorItem component events", () => {
|
|
77
77
|
it("should call onSelectHeading when the open button is clicked", () => {
|
|
78
|
-
const onSelectHeadingMock =
|
|
78
|
+
const onSelectHeadingMock = vi.fn(() => vi.fn());
|
|
79
79
|
renderComponent({ ...defaultProps, onSelectHeading: onSelectHeadingMock });
|
|
80
80
|
|
|
81
81
|
const buttons = screen.getAllByRole("button");
|
|
@@ -95,7 +95,7 @@ describe("ErrorItem component events", () => {
|
|
|
95
95
|
});
|
|
96
96
|
|
|
97
97
|
it("should call onSelectHeading with first heading ID when next button is clicked", () => {
|
|
98
|
-
const onSelectHeadingMock =
|
|
98
|
+
const onSelectHeadingMock = vi.fn(() => vi.fn());
|
|
99
99
|
renderComponent({ ...defaultProps, onSelectHeading: onSelectHeadingMock });
|
|
100
100
|
|
|
101
101
|
const buttons = screen.getAllByRole("button");
|
|
@@ -116,7 +116,7 @@ describe("ErrorItem component events", () => {
|
|
|
116
116
|
});
|
|
117
117
|
|
|
118
118
|
it("should call onSelectHeading with previous heading ID when prev button is clicked", () => {
|
|
119
|
-
const onSelectHeadingMock =
|
|
119
|
+
const onSelectHeadingMock = vi.fn(() => vi.fn());
|
|
120
120
|
renderComponent({ ...defaultProps, onSelectHeading: onSelectHeadingMock });
|
|
121
121
|
|
|
122
122
|
const buttons = screen.getAllByRole("button");
|
|
@@ -124,27 +124,27 @@ describe("ErrorItem component events", () => {
|
|
|
124
124
|
fireEvent.click(buttons[3]);
|
|
125
125
|
fireEvent.click(buttons[3]);
|
|
126
126
|
|
|
127
|
-
|
|
127
|
+
vi.clearAllMocks();
|
|
128
128
|
fireEvent.click(buttons[2]);
|
|
129
129
|
|
|
130
130
|
expect(onSelectHeadingMock).toBeCalledWith(mockError.headingIds[0]);
|
|
131
131
|
});
|
|
132
132
|
|
|
133
133
|
it("should not navigate prev when already at the first heading", () => {
|
|
134
|
-
const onSelectHeadingMock =
|
|
134
|
+
const onSelectHeadingMock = vi.fn(() => vi.fn());
|
|
135
135
|
renderComponent({ ...defaultProps, onSelectHeading: onSelectHeadingMock });
|
|
136
136
|
|
|
137
137
|
const buttons = screen.getAllByRole("button");
|
|
138
138
|
// Open sets currentIndex to 0, then try to go prev
|
|
139
139
|
fireEvent.click(buttons[0]);
|
|
140
|
-
|
|
140
|
+
vi.clearAllMocks();
|
|
141
141
|
fireEvent.click(buttons[2]);
|
|
142
142
|
|
|
143
143
|
expect(onSelectHeadingMock).not.toBeCalled();
|
|
144
144
|
});
|
|
145
145
|
|
|
146
146
|
it("should not navigate next when already at the last heading", () => {
|
|
147
|
-
const onSelectHeadingMock =
|
|
147
|
+
const onSelectHeadingMock = vi.fn(() => vi.fn());
|
|
148
148
|
renderComponent({ ...defaultProps, onSelectHeading: onSelectHeadingMock });
|
|
149
149
|
|
|
150
150
|
const buttons = screen.getAllByRole("button");
|
|
@@ -152,7 +152,7 @@ describe("ErrorItem component events", () => {
|
|
|
152
152
|
fireEvent.click(buttons[3]);
|
|
153
153
|
fireEvent.click(buttons[3]);
|
|
154
154
|
fireEvent.click(buttons[3]);
|
|
155
|
-
|
|
155
|
+
vi.clearAllMocks();
|
|
156
156
|
|
|
157
157
|
// Fourth click should be a no-op
|
|
158
158
|
fireEvent.click(buttons[3]);
|
|
@@ -19,9 +19,9 @@ const mockError: IHeadingError = {
|
|
|
19
19
|
|
|
20
20
|
const defaultProps = {
|
|
21
21
|
errors: [mockError],
|
|
22
|
-
onSelectHeading:
|
|
22
|
+
onSelectHeading: vi.fn(() => vi.fn()),
|
|
23
23
|
isOpen: false,
|
|
24
|
-
setIsOpen:
|
|
24
|
+
setIsOpen: vi.fn(),
|
|
25
25
|
resetKey: 0,
|
|
26
26
|
};
|
|
27
27
|
|
|
@@ -70,7 +70,7 @@ describe("ErrorsBanner component rendering", () => {
|
|
|
70
70
|
|
|
71
71
|
describe("ErrorsBanner component events", () => {
|
|
72
72
|
it("should call setIsOpen with true when toggle is clicked and isOpen is false", () => {
|
|
73
|
-
const setIsOpenMock =
|
|
73
|
+
const setIsOpenMock = vi.fn();
|
|
74
74
|
renderComponent({ ...defaultProps, isOpen: false, setIsOpen: setIsOpenMock });
|
|
75
75
|
|
|
76
76
|
const buttons = screen.getAllByRole("button");
|
|
@@ -80,7 +80,7 @@ describe("ErrorsBanner component events", () => {
|
|
|
80
80
|
});
|
|
81
81
|
|
|
82
82
|
it("should call setIsOpen with false when toggle is clicked and isOpen is true", () => {
|
|
83
|
-
const setIsOpenMock =
|
|
83
|
+
const setIsOpenMock = vi.fn();
|
|
84
84
|
renderComponent({ ...defaultProps, isOpen: true, setIsOpen: setIsOpenMock });
|
|
85
85
|
|
|
86
86
|
const buttons = screen.getAllByRole("button");
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { Mock } from "vitest";
|
|
1
2
|
import React from "react";
|
|
2
3
|
|
|
3
4
|
import { ThemeProvider } from "styled-components";
|
|
@@ -10,9 +11,9 @@ import HeadingsPreviewModal from "@ax/components/HeadingsPreviewModal";
|
|
|
10
11
|
import * as headingsUtils from "@ax/components/HeadingsPreviewModal/utils";
|
|
11
12
|
import globalTheme from "@ax/themes/theme.json";
|
|
12
13
|
|
|
13
|
-
|
|
14
|
-
...
|
|
15
|
-
parseHeadingsTree:
|
|
14
|
+
vi.mock("@ax/components/HeadingsPreviewModal/utils", async () => ({
|
|
15
|
+
...(await vi.importActual("@ax/components/HeadingsPreviewModal/utils")),
|
|
16
|
+
parseHeadingsTree: vi.fn().mockReturnValue([]),
|
|
16
17
|
}));
|
|
17
18
|
|
|
18
19
|
afterEach(cleanup);
|
|
@@ -39,9 +40,9 @@ const browserRef = { current: document.createElement("div") } as React.RefObject
|
|
|
39
40
|
const defaultProps = {
|
|
40
41
|
isOpen: false,
|
|
41
42
|
browserRef: { current: null } as React.RefObject<HTMLDivElement>,
|
|
42
|
-
toggleModal:
|
|
43
|
+
toggleModal: vi.fn(),
|
|
43
44
|
headingsFilter: "all" as const,
|
|
44
|
-
setHeadingsFilter:
|
|
45
|
+
setHeadingsFilter: vi.fn(),
|
|
45
46
|
};
|
|
46
47
|
|
|
47
48
|
const renderComponent = (props = defaultProps) =>
|
|
@@ -71,7 +72,7 @@ describe("HeadingsPreviewModal component rendering", () => {
|
|
|
71
72
|
});
|
|
72
73
|
|
|
73
74
|
it("should render heading items when open with headings", () => {
|
|
74
|
-
(headingsUtils.parseHeadingsTree as
|
|
75
|
+
(headingsUtils.parseHeadingsTree as Mock).mockReturnValueOnce(mockHeadings);
|
|
75
76
|
|
|
76
77
|
renderComponent({ ...defaultProps, isOpen: true, browserRef });
|
|
77
78
|
|
|
@@ -84,7 +85,7 @@ describe("HeadingsPreviewModal component rendering", () => {
|
|
|
84
85
|
});
|
|
85
86
|
|
|
86
87
|
it("should render filter buttons when open with headings", () => {
|
|
87
|
-
(headingsUtils.parseHeadingsTree as
|
|
88
|
+
(headingsUtils.parseHeadingsTree as Mock).mockReturnValueOnce(mockHeadings);
|
|
88
89
|
|
|
89
90
|
renderComponent({ ...defaultProps, isOpen: true, browserRef });
|
|
90
91
|
|
|
@@ -105,7 +106,7 @@ describe("HeadingsPreviewModal component rendering", () => {
|
|
|
105
106
|
|
|
106
107
|
it("should render the errors banner when there are SEO errors", () => {
|
|
107
108
|
const headingsWithoutH1: HeadingNode[] = [createHeadingNode("h2", "Subtitle", 2)];
|
|
108
|
-
(headingsUtils.parseHeadingsTree as
|
|
109
|
+
(headingsUtils.parseHeadingsTree as Mock).mockReturnValueOnce(headingsWithoutH1);
|
|
109
110
|
|
|
110
111
|
renderComponent({ ...defaultProps, isOpen: true, browserRef });
|
|
111
112
|
|
|
@@ -114,7 +115,7 @@ describe("HeadingsPreviewModal component rendering", () => {
|
|
|
114
115
|
});
|
|
115
116
|
|
|
116
117
|
it("should not render the errors banner when there are no SEO errors", () => {
|
|
117
|
-
(headingsUtils.parseHeadingsTree as
|
|
118
|
+
(headingsUtils.parseHeadingsTree as Mock).mockReturnValueOnce(mockHeadings);
|
|
118
119
|
|
|
119
120
|
renderComponent({ ...defaultProps, isOpen: true, browserRef });
|
|
120
121
|
|
|
@@ -125,7 +126,7 @@ describe("HeadingsPreviewModal component rendering", () => {
|
|
|
125
126
|
|
|
126
127
|
describe("HeadingsPreviewModal component events", () => {
|
|
127
128
|
it("should call toggleModal when close button is clicked", () => {
|
|
128
|
-
const toggleModalMock =
|
|
129
|
+
const toggleModalMock = vi.fn();
|
|
129
130
|
|
|
130
131
|
renderComponent({ ...defaultProps, isOpen: true, toggleModal: toggleModalMock });
|
|
131
132
|
|
|
@@ -135,8 +136,8 @@ describe("HeadingsPreviewModal component events", () => {
|
|
|
135
136
|
});
|
|
136
137
|
|
|
137
138
|
it("should call setHeadingsFilter when a filter button is clicked", () => {
|
|
138
|
-
const setHeadingsFilterMock =
|
|
139
|
-
(headingsUtils.parseHeadingsTree as
|
|
139
|
+
const setHeadingsFilterMock = vi.fn();
|
|
140
|
+
(headingsUtils.parseHeadingsTree as Mock).mockReturnValueOnce(mockHeadings);
|
|
140
141
|
|
|
141
142
|
renderComponent({ ...defaultProps, isOpen: true, browserRef, setHeadingsFilter: setHeadingsFilterMock });
|
|
142
143
|
|
|
@@ -148,7 +149,7 @@ describe("HeadingsPreviewModal component events", () => {
|
|
|
148
149
|
});
|
|
149
150
|
|
|
150
151
|
it("should select a heading item when clicked", () => {
|
|
151
|
-
(headingsUtils.parseHeadingsTree as
|
|
152
|
+
(headingsUtils.parseHeadingsTree as Mock).mockReturnValueOnce(mockHeadings);
|
|
152
153
|
|
|
153
154
|
renderComponent({ ...defaultProps, isOpen: true, browserRef });
|
|
154
155
|
|
|
@@ -162,7 +163,7 @@ describe("HeadingsPreviewModal component events", () => {
|
|
|
162
163
|
});
|
|
163
164
|
|
|
164
165
|
it("should deselect a heading item when clicked again", () => {
|
|
165
|
-
(headingsUtils.parseHeadingsTree as
|
|
166
|
+
(headingsUtils.parseHeadingsTree as Mock).mockReturnValueOnce(mockHeadings);
|
|
166
167
|
|
|
167
168
|
renderComponent({ ...defaultProps, isOpen: true, browserRef });
|
|
168
169
|
|
|
@@ -47,7 +47,7 @@ describe("IconAction component rendering", () => {
|
|
|
47
47
|
|
|
48
48
|
describe("onClick events", () => {
|
|
49
49
|
test("onClick been called if enabled", () => {
|
|
50
|
-
const onClickMock =
|
|
50
|
+
const onClickMock = vi.fn();
|
|
51
51
|
const defaultProps: IIconActionProps = {
|
|
52
52
|
icon: "delete",
|
|
53
53
|
size: "m",
|
|
@@ -68,7 +68,7 @@ describe("onClick events", () => {
|
|
|
68
68
|
});
|
|
69
69
|
|
|
70
70
|
test("onClick not to be called if disabled", () => {
|
|
71
|
-
const onClickMock =
|
|
71
|
+
const onClickMock = vi.fn();
|
|
72
72
|
const defaultProps: IIconActionProps = {
|
|
73
73
|
icon: "delete",
|
|
74
74
|
size: "m",
|
|
@@ -10,7 +10,7 @@ afterEach(cleanup);
|
|
|
10
10
|
const renderCropStep = (props = {}) =>
|
|
11
11
|
render(
|
|
12
12
|
<ThemeProvider theme={parseTheme(globalTheme)}>
|
|
13
|
-
<CropStep imageSrc="data:image/jpeg;base64,abc" onConfirm={
|
|
13
|
+
<CropStep imageSrc="data:image/jpeg;base64,abc" onConfirm={vi.fn()} onCancel={vi.fn()} {...props} />
|
|
14
14
|
</ThemeProvider>,
|
|
15
15
|
);
|
|
16
16
|
|
|
@@ -46,14 +46,14 @@ describe("CropStep rendering", () => {
|
|
|
46
46
|
|
|
47
47
|
describe("CropStep events", () => {
|
|
48
48
|
it("should call onConfirm with cropped area when Done is clicked", () => {
|
|
49
|
-
const onConfirm =
|
|
49
|
+
const onConfirm = vi.fn();
|
|
50
50
|
renderCropStep({ onConfirm });
|
|
51
51
|
fireEvent.click(screen.getByText("Done"));
|
|
52
52
|
expect(onConfirm).toHaveBeenCalledWith({ x: 0, y: 0, width: 100, height: 100 });
|
|
53
53
|
});
|
|
54
54
|
|
|
55
55
|
it("should call onCancel when Upload new image is clicked", () => {
|
|
56
|
-
const onCancel =
|
|
56
|
+
const onCancel = vi.fn();
|
|
57
57
|
renderCropStep({ onCancel });
|
|
58
58
|
fireEvent.click(screen.getByText("Upload new image"));
|
|
59
59
|
expect(onCancel).toHaveBeenCalledTimes(1);
|
|
@@ -10,13 +10,13 @@ import configureStore from "redux-mock-store";
|
|
|
10
10
|
import thunk from "redux-thunk";
|
|
11
11
|
import { ThemeProvider } from "styled-components";
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
vi.mock("@ax/containers/Gallery", () => ({
|
|
14
14
|
galleryActions: {
|
|
15
|
-
uploadError:
|
|
16
|
-
resetError:
|
|
17
|
-
uploadImage:
|
|
18
|
-
replaceImage:
|
|
19
|
-
setUploadSuccess:
|
|
15
|
+
uploadError: vi.fn(() => ({ type: "UPLOAD_ERROR" })),
|
|
16
|
+
resetError: vi.fn(() => ({ type: "RESET_ERROR" })),
|
|
17
|
+
uploadImage: vi.fn(() => async () => null),
|
|
18
|
+
replaceImage: vi.fn(() => async () => null),
|
|
19
|
+
setUploadSuccess: vi.fn(() => ({ type: "SET_UPLOAD_SUCCESS" })),
|
|
20
20
|
},
|
|
21
21
|
}));
|
|
22
22
|
|
|
@@ -38,7 +38,7 @@ const renderImageDragAndDrop = (props = {}, storeData = initialStore) => {
|
|
|
38
38
|
return render(
|
|
39
39
|
<Provider store={store}>
|
|
40
40
|
<ThemeProvider theme={parseTheme(globalTheme)}>
|
|
41
|
-
<ImageDragAndDrop siteID="global" handleUpload={
|
|
41
|
+
<ImageDragAndDrop siteID="global" handleUpload={vi.fn()} {...props} />
|
|
42
42
|
</ThemeProvider>
|
|
43
43
|
</Provider>,
|
|
44
44
|
);
|
|
@@ -14,8 +14,8 @@ const defaultProps = {
|
|
|
14
14
|
keyword: "seo",
|
|
15
15
|
count: 3,
|
|
16
16
|
isSelected: false,
|
|
17
|
-
onClick:
|
|
18
|
-
deleteKeyword:
|
|
17
|
+
onClick: vi.fn(),
|
|
18
|
+
deleteKeyword: vi.fn(),
|
|
19
19
|
};
|
|
20
20
|
|
|
21
21
|
const renderComponent = (props = defaultProps) =>
|
|
@@ -49,7 +49,7 @@ describe("KeywordItem component rendering", () => {
|
|
|
49
49
|
|
|
50
50
|
describe("KeywordItem component events", () => {
|
|
51
51
|
it("should call onClick when the keyword item is clicked", () => {
|
|
52
|
-
const onClickMock =
|
|
52
|
+
const onClickMock = vi.fn();
|
|
53
53
|
renderComponent({ ...defaultProps, onClick: onClickMock });
|
|
54
54
|
|
|
55
55
|
// The keyword item is a div with role="button"; the icon-action is a <button> inside it
|
|
@@ -61,7 +61,7 @@ describe("KeywordItem component events", () => {
|
|
|
61
61
|
});
|
|
62
62
|
|
|
63
63
|
it("should call deleteKeyword directly when count is zero and delete is clicked", () => {
|
|
64
|
-
const deleteKeywordMock =
|
|
64
|
+
const deleteKeywordMock = vi.fn();
|
|
65
65
|
renderComponent({ ...defaultProps, count: 0, deleteKeyword: deleteKeywordMock });
|
|
66
66
|
|
|
67
67
|
const deleteButton = screen.getByTestId("icon-action-component");
|
|
@@ -81,7 +81,7 @@ describe("KeywordItem component events", () => {
|
|
|
81
81
|
});
|
|
82
82
|
|
|
83
83
|
it("should not call onClick when delete button is clicked (stopPropagation)", () => {
|
|
84
|
-
const onClickMock =
|
|
84
|
+
const onClickMock = vi.fn();
|
|
85
85
|
renderComponent({ ...defaultProps, count: 0, onClick: onClickMock });
|
|
86
86
|
|
|
87
87
|
const deleteButton = screen.getByTestId("icon-action-component");
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { Mock } from "vitest";
|
|
1
2
|
import React from "react";
|
|
2
3
|
|
|
3
4
|
import { ThemeProvider } from "styled-components";
|
|
@@ -9,9 +10,9 @@ import KeywordsPreviewModal from "@ax/components/KeywordsPreviewModal";
|
|
|
9
10
|
import * as keywordsUtils from "@ax/components/KeywordsPreviewModal/utils";
|
|
10
11
|
import globalTheme from "@ax/themes/theme.json";
|
|
11
12
|
|
|
12
|
-
|
|
13
|
-
...
|
|
14
|
-
countKeywords:
|
|
13
|
+
vi.mock("@ax/components/KeywordsPreviewModal/utils", async () => ({
|
|
14
|
+
...(await vi.importActual("@ax/components/KeywordsPreviewModal/utils")),
|
|
15
|
+
countKeywords: vi.fn().mockReturnValue({}),
|
|
15
16
|
}));
|
|
16
17
|
|
|
17
18
|
afterEach(cleanup);
|
|
@@ -21,12 +22,12 @@ const browserRef = { current: document.createElement("div") } as React.RefObject
|
|
|
21
22
|
const defaultProps = {
|
|
22
23
|
isOpen: false,
|
|
23
24
|
browserRef: { current: null } as React.RefObject<HTMLDivElement>,
|
|
24
|
-
toggleModal:
|
|
25
|
+
toggleModal: vi.fn(),
|
|
25
26
|
keywords: ["seo", "react"],
|
|
26
27
|
keywordsFilter: [] as string[],
|
|
27
|
-
setKeywordsFilter:
|
|
28
|
-
addKeywords:
|
|
29
|
-
deleteKeyword:
|
|
28
|
+
setKeywordsFilter: vi.fn(),
|
|
29
|
+
addKeywords: vi.fn(),
|
|
30
|
+
deleteKeyword: vi.fn(),
|
|
30
31
|
};
|
|
31
32
|
|
|
32
33
|
const renderComponent = (props = defaultProps) =>
|
|
@@ -51,7 +52,7 @@ describe("KeywordsPreviewModal component rendering", () => {
|
|
|
51
52
|
});
|
|
52
53
|
|
|
53
54
|
it("should render keyword items when open with keywords", () => {
|
|
54
|
-
(keywordsUtils.countKeywords as
|
|
55
|
+
(keywordsUtils.countKeywords as Mock).mockReturnValueOnce({ seo: 3, react: 1 });
|
|
55
56
|
|
|
56
57
|
renderComponent({ ...defaultProps, isOpen: true, browserRef });
|
|
57
58
|
|
|
@@ -60,7 +61,7 @@ describe("KeywordsPreviewModal component rendering", () => {
|
|
|
60
61
|
});
|
|
61
62
|
|
|
62
63
|
it("should render keyword count for each keyword item", () => {
|
|
63
|
-
(keywordsUtils.countKeywords as
|
|
64
|
+
(keywordsUtils.countKeywords as Mock).mockReturnValueOnce({ seo: 3 });
|
|
64
65
|
|
|
65
66
|
renderComponent({ ...defaultProps, isOpen: true, browserRef });
|
|
66
67
|
|
|
@@ -84,7 +85,7 @@ describe("KeywordsPreviewModal component rendering", () => {
|
|
|
84
85
|
|
|
85
86
|
describe("KeywordsPreviewModal component events", () => {
|
|
86
87
|
it("should call toggleModal when close button is clicked", () => {
|
|
87
|
-
const toggleModalMock =
|
|
88
|
+
const toggleModalMock = vi.fn();
|
|
88
89
|
|
|
89
90
|
renderComponent({ ...defaultProps, isOpen: true, toggleModal: toggleModalMock });
|
|
90
91
|
|
|
@@ -94,7 +95,7 @@ describe("KeywordsPreviewModal component events", () => {
|
|
|
94
95
|
});
|
|
95
96
|
|
|
96
97
|
it("should call setKeywordsFilter with empty array when filter tag is deleted", () => {
|
|
97
|
-
const setKeywordsFilterMock =
|
|
98
|
+
const setKeywordsFilterMock = vi.fn();
|
|
98
99
|
|
|
99
100
|
renderComponent({
|
|
100
101
|
...defaultProps,
|
|
@@ -109,8 +110,8 @@ describe("KeywordsPreviewModal component events", () => {
|
|
|
109
110
|
});
|
|
110
111
|
|
|
111
112
|
it("should call setKeywordsFilter with the clicked keyword when a keyword item is clicked", () => {
|
|
112
|
-
const setKeywordsFilterMock =
|
|
113
|
-
(keywordsUtils.countKeywords as
|
|
113
|
+
const setKeywordsFilterMock = vi.fn();
|
|
114
|
+
(keywordsUtils.countKeywords as Mock).mockReturnValueOnce({ seo: 3 });
|
|
114
115
|
|
|
115
116
|
renderComponent({ ...defaultProps, isOpen: true, browserRef, setKeywordsFilter: setKeywordsFilterMock });
|
|
116
117
|
|
|
@@ -15,25 +15,25 @@ const renderWithTheme = (ui: React.ReactElement) =>
|
|
|
15
15
|
|
|
16
16
|
describe("AddKeywordsModal component rendering", () => {
|
|
17
17
|
it("should render the modal when isOpen is true", () => {
|
|
18
|
-
renderWithTheme(<AddKeywordsModal isOpen={true} toggleModal={
|
|
18
|
+
renderWithTheme(<AddKeywordsModal isOpen={true} toggleModal={vi.fn()} addNewKeyword={vi.fn()} />);
|
|
19
19
|
|
|
20
20
|
expect(screen.getByTestId("modal-wrapper")).toBeTruthy();
|
|
21
21
|
});
|
|
22
22
|
|
|
23
23
|
it("should not render the modal when isOpen is false", () => {
|
|
24
|
-
renderWithTheme(<AddKeywordsModal isOpen={false} toggleModal={
|
|
24
|
+
renderWithTheme(<AddKeywordsModal isOpen={false} toggleModal={vi.fn()} addNewKeyword={vi.fn()} />);
|
|
25
25
|
|
|
26
26
|
expect(screen.queryByTestId("modal-wrapper")).toBeNull();
|
|
27
27
|
});
|
|
28
28
|
|
|
29
29
|
it("should render the New keyword title", () => {
|
|
30
|
-
renderWithTheme(<AddKeywordsModal isOpen={true} toggleModal={
|
|
30
|
+
renderWithTheme(<AddKeywordsModal isOpen={true} toggleModal={vi.fn()} addNewKeyword={vi.fn()} />);
|
|
31
31
|
|
|
32
32
|
expect(screen.getByText("New keyword")).toBeTruthy();
|
|
33
33
|
});
|
|
34
34
|
|
|
35
35
|
it("should render the Create keyword button disabled when no keywords are entered", () => {
|
|
36
|
-
renderWithTheme(<AddKeywordsModal isOpen={true} toggleModal={
|
|
36
|
+
renderWithTheme(<AddKeywordsModal isOpen={true} toggleModal={vi.fn()} addNewKeyword={vi.fn()} />);
|
|
37
37
|
|
|
38
38
|
const createButton = screen.getByText("Create keyword").closest("button");
|
|
39
39
|
expect(createButton).toBeDisabled();
|
|
@@ -42,9 +42,9 @@ describe("AddKeywordsModal component rendering", () => {
|
|
|
42
42
|
|
|
43
43
|
describe("AddKeywordsModal component events", () => {
|
|
44
44
|
it("should call toggleModal when Cancel button is clicked", () => {
|
|
45
|
-
const toggleModalMock =
|
|
45
|
+
const toggleModalMock = vi.fn();
|
|
46
46
|
|
|
47
|
-
renderWithTheme(<AddKeywordsModal isOpen={true} toggleModal={toggleModalMock} addNewKeyword={
|
|
47
|
+
renderWithTheme(<AddKeywordsModal isOpen={true} toggleModal={toggleModalMock} addNewKeyword={vi.fn()} />);
|
|
48
48
|
|
|
49
49
|
const cancelButton = screen.getByText("Cancel").closest("button");
|
|
50
50
|
expect(cancelButton).toBeTruthy();
|
|
@@ -55,19 +55,19 @@ describe("AddKeywordsModal component events", () => {
|
|
|
55
55
|
|
|
56
56
|
describe("DeleteKeywordsModal component rendering", () => {
|
|
57
57
|
it("should render the modal when isOpen is true", () => {
|
|
58
|
-
renderWithTheme(<DeleteKeywordsModal isOpen={true} toggleModal={
|
|
58
|
+
renderWithTheme(<DeleteKeywordsModal isOpen={true} toggleModal={vi.fn()} deleteKeyword={vi.fn()} />);
|
|
59
59
|
|
|
60
60
|
expect(screen.getByTestId("modal-wrapper")).toBeTruthy();
|
|
61
61
|
});
|
|
62
62
|
|
|
63
63
|
it("should not render the modal when isOpen is false", () => {
|
|
64
|
-
renderWithTheme(<DeleteKeywordsModal isOpen={false} toggleModal={
|
|
64
|
+
renderWithTheme(<DeleteKeywordsModal isOpen={false} toggleModal={vi.fn()} deleteKeyword={vi.fn()} />);
|
|
65
65
|
|
|
66
66
|
expect(screen.queryByTestId("modal-wrapper")).toBeNull();
|
|
67
67
|
});
|
|
68
68
|
|
|
69
69
|
it("should render the Delete keyword title", () => {
|
|
70
|
-
renderWithTheme(<DeleteKeywordsModal isOpen={true} toggleModal={
|
|
70
|
+
renderWithTheme(<DeleteKeywordsModal isOpen={true} toggleModal={vi.fn()} deleteKeyword={vi.fn()} />);
|
|
71
71
|
|
|
72
72
|
expect(screen.getAllByText("Delete keyword").length).toBeGreaterThan(0);
|
|
73
73
|
});
|
|
@@ -75,9 +75,9 @@ describe("DeleteKeywordsModal component rendering", () => {
|
|
|
75
75
|
|
|
76
76
|
describe("DeleteKeywordsModal component events", () => {
|
|
77
77
|
it("should call deleteKeyword when Delete keyword button is clicked", () => {
|
|
78
|
-
const deleteKeywordMock =
|
|
78
|
+
const deleteKeywordMock = vi.fn();
|
|
79
79
|
|
|
80
|
-
renderWithTheme(<DeleteKeywordsModal isOpen={true} toggleModal={
|
|
80
|
+
renderWithTheme(<DeleteKeywordsModal isOpen={true} toggleModal={vi.fn()} deleteKeyword={deleteKeywordMock} />);
|
|
81
81
|
|
|
82
82
|
const deleteButton = screen
|
|
83
83
|
.getAllByText("Delete keyword")
|
|
@@ -89,9 +89,9 @@ describe("DeleteKeywordsModal component events", () => {
|
|
|
89
89
|
});
|
|
90
90
|
|
|
91
91
|
it("should call toggleModal when Cancel button is clicked", () => {
|
|
92
|
-
const toggleModalMock =
|
|
92
|
+
const toggleModalMock = vi.fn();
|
|
93
93
|
|
|
94
|
-
renderWithTheme(<DeleteKeywordsModal isOpen={true} toggleModal={toggleModalMock} deleteKeyword={
|
|
94
|
+
renderWithTheme(<DeleteKeywordsModal isOpen={true} toggleModal={toggleModalMock} deleteKeyword={vi.fn()} />);
|
|
95
95
|
|
|
96
96
|
const cancelButton = screen.getByText("Cancel").closest("button");
|
|
97
97
|
expect(cancelButton).toBeTruthy();
|
|
@@ -46,7 +46,7 @@ const defaultProps = {
|
|
|
46
46
|
|
|
47
47
|
describe("LanguageMenu component rendering", () => {
|
|
48
48
|
it("should render the component", () => {
|
|
49
|
-
const setLanguage =
|
|
49
|
+
const setLanguage = vi.fn();
|
|
50
50
|
|
|
51
51
|
render(
|
|
52
52
|
<ThemeProvider theme={parseTheme(globalTheme)}>
|
|
@@ -65,7 +65,7 @@ describe("LanguageMenu component rendering", () => {
|
|
|
65
65
|
});
|
|
66
66
|
|
|
67
67
|
it("should render the component without props", () => {
|
|
68
|
-
const setLanguage =
|
|
68
|
+
const setLanguage = vi.fn();
|
|
69
69
|
|
|
70
70
|
render(
|
|
71
71
|
<ThemeProvider theme={parseTheme(globalTheme)}>
|
|
@@ -81,7 +81,7 @@ describe("LanguageMenu component rendering", () => {
|
|
|
81
81
|
});
|
|
82
82
|
|
|
83
83
|
it("should render the component with only one language", () => {
|
|
84
|
-
const setLanguage =
|
|
84
|
+
const setLanguage = vi.fn();
|
|
85
85
|
|
|
86
86
|
const props = {
|
|
87
87
|
language: "en_GB",
|
|
@@ -118,7 +118,7 @@ describe("LanguageMenu component rendering", () => {
|
|
|
118
118
|
});
|
|
119
119
|
|
|
120
120
|
it("should render the component showing new version language", () => {
|
|
121
|
-
const setLanguage =
|
|
121
|
+
const setLanguage = vi.fn();
|
|
122
122
|
|
|
123
123
|
const props = {
|
|
124
124
|
language: "en_GB",
|
|
@@ -153,7 +153,7 @@ describe("LanguageMenu component rendering", () => {
|
|
|
153
153
|
});
|
|
154
154
|
|
|
155
155
|
it("should render the component showing an editable language", () => {
|
|
156
|
-
const setLanguage =
|
|
156
|
+
const setLanguage = vi.fn();
|
|
157
157
|
|
|
158
158
|
const props = {
|
|
159
159
|
language: "en_GB",
|
|
@@ -205,7 +205,7 @@ it("should render the component showing an editable language", () => {
|
|
|
205
205
|
|
|
206
206
|
describe("LanguageMenu component events", () => {
|
|
207
207
|
it("should call setLanguage on clicking the second language in the list", () => {
|
|
208
|
-
const setLanguage =
|
|
208
|
+
const setLanguage = vi.fn();
|
|
209
209
|
|
|
210
210
|
render(
|
|
211
211
|
<ThemeProvider theme={parseTheme(globalTheme)}>
|
|
@@ -2,7 +2,7 @@ import * as React from "react";
|
|
|
2
2
|
import { ThemeProvider } from "styled-components";
|
|
3
3
|
import { render, cleanup, screen } from "@testing-library/react";
|
|
4
4
|
import "@testing-library/jest-dom";
|
|
5
|
-
import { mock } from "
|
|
5
|
+
import { mock } from "vitest-mock-extended";
|
|
6
6
|
|
|
7
7
|
import { parseTheme } from "@ax/helpers";
|
|
8
8
|
import Loader, { IStateProps } from "@ax/components/Loader";
|