feat: v4.0.0 (#1016)
Co-authored-by: Denys Konovalov <kontakt@denyskon.de> Co-authored-by: Mathieu COSYNS <64072917+Mathieu-COSYNS@users.noreply.github.com>
This commit is contained in:
committed by
GitHub
parent
682576ffc4
commit
799c7e6936
.github/workflows
.gitignore.prettierignore.prettierrccypress.config.tscypress
README.mdcypress.d.ts
lerna.jsonnx.jsonpackage.jsone2e
_old
editorial_workflow_spec_bitbucket_backend.jseditorial_workflow_spec_git-gateway_github_backend.jseditorial_workflow_spec_git-gateway_gitlab_backend.jseditorial_workflow_spec_github_backend_graphql.jseditorial_workflow_spec_github_backend_graphql_open_authoring.jseditorial_workflow_spec_github_backend_rest.jseditorial_workflow_spec_github_backend_rest_open_authoring.jseditorial_workflow_spec_gitlab_backend.jseditorial_workflow_spec_proxy_git_backend.jsfield_validations_spec.jsi18n_editorial_workflow_spec_test_backend.jsi18n_simple_workflow_spec_proxy_fs_backend.jsmarkdown_widget_backspace_spec.jsmarkdown_widget_code_block_spec.jsmarkdown_widget_enter_spec.jsmarkdown_widget_hotkeys_spec.jsmarkdown_widget_link_spec.jsmarkdown_widget_list_spec.jsmarkdown_widget_marks_spec.jsmarkdown_widget_quote_spec.jsmedia_library_spec_bitbucket_backend.jsmedia_library_spec_bitbucket_backend_large_media.jsmedia_library_spec_git-gateway_github_backend_large_media.jsmedia_library_spec_git-gateway_gitlab_backend_large_media.jsmedia_library_spec_github_backend_graphql.jsmedia_library_spec_github_backend_rest.jsmedia_library_spec_gitlab_backend.jsmedia_library_spec_proxy_git_backend.jsmedia_library_spec_test_backend.jssearch_suggestion_spec.jssimple_workflow_spec_bitbucket_backend.tssimple_workflow_spec_git-gateway_github_backend.jssimple_workflow_spec_git-gateway_gitlab_backend.jssimple_workflow_spec_github_backend_graphql.jssimple_workflow_spec_github_backend_rest.jssimple_workflow_spec_gitlab_backend.jssimple_workflow_spec_proxy_fs_backend.jssimple_workflow_spec_proxy_git_backend.js
common
editorial_workflow.jseditorial_workflow_migrations.jsentries.tsi18n.jsi18n_editorial_workflow_spec.jsmedia_library.jsopen_authoring.jssimple_workflow.tsspec_utils.ts
editorial_workflow_test_backend.spec.tssimple_workflow_test_backend.spec.tsview_filters.spec.tsview_groups.spec.tsfixtures/media
interface.tsplugins
run.mjssnapshots
media_library_spec_git-gateway_backend_large_media.js
Git Gateway Backend Media Library - Large Media -- can delete image from global media library.snap.pngGit Gateway Backend Media Library - Large Media -- can publish entry with image.snap.pngGit Gateway Backend Media Library - Large Media -- can save entry with image.snap.pngGit Gateway Backend Media Library - Large Media -- can upload image from entry media library.snap.pngGit Gateway Backend Media Library - Large Media -- can upload image from global media library.snap.pngGit Gateway Backend Media Library - Large Media -- should not show draft entry image in global media library.snap.pngGit Gateway Backend Media Library - Large Media -- should show published entry image in global media library.snap.pngGit Gateway Backend Media Library - Large Media -- should show published entry image in grid view.snap.png
media_library_spec_github_backend_graphql.js
GitHub Backend Media Library - GraphQL API -- can delete image from global media library.snap.pngGitHub Backend Media Library - GraphQL API -- can publish entry with image.snap.pngGitHub Backend Media Library - GraphQL API -- can save entry with image.snap.pngGitHub Backend Media Library - GraphQL API -- can upload image from entry media library.snap.pngGitHub Backend Media Library - GraphQL API -- can upload image from global media library.snap.pngGitHub Backend Media Library - GraphQL API -- should not show draft entry image in global media library.snap.pngGitHub Backend Media Library - GraphQL API -- should show published entry image in global media library.snap.pngGitHub Backend Media Library - GraphQL API -- should show published entry image in grid view.snap.png
media_library_spec_github_backend_rest.js
GitHub Backend Media Library - REST API -- can delete image from global media library.snap.pngGitHub Backend Media Library - REST API -- can publish entry with image.snap.pngGitHub Backend Media Library - REST API -- can save entry with image.snap.pngGitHub Backend Media Library - REST API -- can upload image from entry media library.snap.pngGitHub Backend Media Library - REST API -- can upload image from global media library.snap.pngGitHub Backend Media Library - REST API -- should not show draft entry image in global media library.snap.pngGitHub Backend Media Library - REST API -- should show published entry image in global media library.snap.pngGitHub Backend Media Library - REST API -- should show published entry image in grid view.snap.png
media_library_spec_test_backend.js
Test Backend Media Library -- can delete image from global media library.snap.pngTest Backend Media Library -- can publish entry with image.snap.pngTest Backend Media Library -- can save entry with image.snap.pngTest Backend Media Library -- can upload image from entry media library.snap.pngTest Backend Media Library -- can upload image from global media library.snap.pngTest Backend Media Library -- should not show draft entry image in global media library.snap.pngTest Backend Media Library -- should show published entry image in global media library.snap.pngTest Backend Media Library -- should show published entry image in grid view.snap.png
support
utils
packages
app
core
.eslintrc.jsbabel.config.jsbootstrap.tsxi18n.tsregistry.ts
dev-test
jest.config.jspackage.jsonsrc
__mocks__
__tests__
actions
backend.tsbackends
bitbucket
git-gateway
gitea
github
gitlab
proxy
test
components
App.tsxErrorBoundary.cssErrorBoundary.tsxMainView.cssMainView.tsxNotFoundPage.tsx
constants.tscollections
Collection.cssCollectionControls.tsxCollectionHeader.tsxCollectionPage.tsxCollectionRoute.tsxCollectionSearch.cssCollectionSearch.tsxCollectionView.tsxFilterControl.cssFilterControl.tsxGroupControl.cssGroupControl.tsxNestedCollection.cssNestedCollection.tsxSortControl.cssSortControl.tsx
entries
Entries.classes.tsEntries.cssEntries.tsxEntriesCollection.tsxEntriesSearch.tsxEntryCard.cssEntryCard.tsxEntryListing.tsxEntryListingCardGrid.tsxEntryListingGrid.tsxEntryListingTable.tsxEntryRow.tsx
mobile
common
alert
autocomplete
button
card
checkbox
confirm
field
image
link
menu
Menu.cssMenu.tsxMenuGroup.cssMenuGroup.tsxMenuItemButton.cssMenuItemButton.tsxMenuItemLink.cssMenuItemLink.tsx
modal
pill
progress
select
switch
table
text-field
view-style
widget
entry-editor
Editor.tsxEditorInterface.cssEditorInterface.tsxEditorRoute.tsxEditorToolbar.cssEditorToolbar.tsxEditorWorkflowToolbarButtons.cssEditorWorkflowToolbarButtons.tsx
editor-control-pane
editor-preview-pane
EditorPreview.tsxEditorPreviewContent.tsxEditorPreviewPane.cssEditorPreviewPane.tsxPreviewFrameContent.cssPreviewFrameContent.tsx
widgets/Unknown
login
media-library
navbar
BottomNavigation.cssBottomNavigation.tsxBreadcrumbs.cssBreadcrumbs.tsxNavLink.cssNavLink.tsxNavbar.cssNavbar.tsxNavigationDrawer.tsxQuickCreate.tsxSettingsDropdown.cssSettingsDropdown.tsxSidebar.classes.tsSidebar.cssSidebar.tsxSidebarContent.tsx
snackbar
theme
workflow
constants
formats
index.tsinterface.tslib
__tests__
auth
formatters.tshooks
__tests__
index.tsuseBreadcrumbs.tsuseCurrentBackend.tsuseDefaultPath.tsuseEntries.tsuseEntryCallback.tsuseFilters.tsuseFolderSupport.tsuseGroups.tsuseHasChildErrors.tsuseIsMediaAsset.tsuseMediaAsset.tsuseMediaFiles.tsuseMediaInsert.tsuseMediaPersist.tsuseNewEntryUrl.tsusePublishedEntries.tsuseRefWithCallback.tsuseUnpublishedEntries.tsutil
API.tsAPIUtils.tsCursor.tsEditorialWorkflowError.ts
__tests__
backendUtil.tscollection.util.tsentry.util.tsevents
field.util.tsfilter.util.tsimplementation.tsindex.tsmedia.util.tsnested.util.tssearch.util.tssort.util.tstheming.util.tsunsentRequest.tsvalidation.util.tswidgets
live
locales
bg
ca
cs
da
de
en
es
fa
fr
gr
he
hr
hu
it
ja
ko
lt
nb_no
nl
nn_no
pl
pt
ro
ru
sl
sv
th
tr
ua
uk
vi
zh_Hans
zh_Hant
reducers
__tests__
collections.tsconfig.tseditorialWorkflow.tsentries.tsentryDraft.tsglobalUI.tsindex.tsmediaLibrary.tsselectors
styles
types
valueObjects
widgets
boolean
code
CodeControl.cssCodeControl.tsxCodePreview.tsxSettingsButton.cssSettingsButton.tsxSettingsPane.cssSettingsPane.tsx
data
index.tsscripts
colorstring
datetime
DateTimeControl.cssDateTimeControl.tsxDateTimePreview.tsx
__tests__
components
constants.tsdatetime.util.tsgetDefaultValue.tsindex.tsfile
image
keyvalue
list
DelimitedListControl.tsxListControl.cssListControl.tsxListPreview.tsx
__tests__
components
index.tstypedListHelpers.tsmap
markdown
MarkdownPreview.tsxindex.ts
mdx
plate
PlateEditor.tsx
withMarkdownControl.tsxcomponents
balloon-toolbar
buttons
BlockquoteToolbarButton.tsxBoldToolbarButton.tsxCodeBlockToolbarButtons.tsxCodeToolbarButton.tsxDecreaseIndentToolbarButton.tsxDeleteColumnToolbarButton.tsxDeleteRowToolbarButton.tsxDeleteTableToolbarButton.tsxFontTypeSelect.cssFontTypeSelect.tsxIncreaseIndentToolbarButton.tsxInsertColumnToolbarButton.tsxInsertImageToolbarButton.tsxInsertLinkToolbarButton.tsxInsertRowToolbarButton.tsxInsertTableToolbarButton.tsxItalicToolbarButton.tsxOrderedListToolbarButton.tsxShortcodeToolbarButton.tsxStrikethroughToolbarButton.tsxUnorderedListToolbarButton.tsx
common
color-picker
common
nodes
blockquote
code-block
code
image
link
shortcode
table
toolbar
hooks
serialization/slate
tests-util
number
object
relation
RelationControl.tsxRelationPreview.tsxRelationSummary.tsx
__tests__
index.tstypes.tsutil.tsvalidator.tsselect
string
text
uuid
test
tsconfig.base.jsonwebpack.config.jsdemo
.prettierignore.prettierrcindex.htmlpackage.json
public
src
vite.config.tsdocs
.eslintrc.js
content
community.json
next.config.jspackage.jsondocs
add-to-your-site-bundling.mdxadd-to-your-site-cdn.mdxadd-to-your-site.mdxadditional-links.mdxbackends-overview.mdxbeta-features.mdxcms-events.mdxcollection-overview.mdxcollection-types.mdxconfiguration-options.mdxcontributor-guide.mdxcustom-icons.mdxcustom-previews.mdxcustom-theme.mdxcustom-widgets.mdxcustomization-overview.mdxdecap-migration-guide.mdxeditorial-workflow.mdxgitea-backend.mdxi18n-support.mdxlocal-backend.mdxmigration-guide-v3.mdxmigration-guide-v4.mdxopen-authoring.mdxstart-with-a-template.mdxtest-backend.mdxupdating-your-cms.mdxwidget-boolean.mdxwidget-datetime.mdxwidget-list.mdxwidget-markdown.mdxwidget-number.mdxwidget-object.mdxwidget-relation.mdxwidget-string.mdxwidgets.mdxwriting-style-guide.mdx
homepage.jsonmenu.jsonreleases.jsonpublic/img
src
tools
50
cypress/e2e/common/editorial_workflow_migrations.js
Normal file
50
cypress/e2e/common/editorial_workflow_migrations.js
Normal file
@ -0,0 +1,50 @@
|
||||
import {
|
||||
login,
|
||||
createPostAndExit,
|
||||
goToWorkflow,
|
||||
goToCollections,
|
||||
updateWorkflowStatus,
|
||||
publishWorkflowEntry,
|
||||
assertPublishedEntry,
|
||||
} from '../../utils/steps';
|
||||
import { workflowStatus } from '../../utils/constants';
|
||||
|
||||
const versions = ['2.9.7', '2.10.24'];
|
||||
|
||||
export default function ({ entries, getUser }) {
|
||||
versions.forEach(version => {
|
||||
it(`migrate from ${version} to latest`, () => {
|
||||
cy.task('switchToVersion', {
|
||||
version,
|
||||
});
|
||||
cy.reload();
|
||||
|
||||
login({ user: getUser() });
|
||||
createPostAndExit(entries[0]);
|
||||
createPostAndExit(entries[1]);
|
||||
createPostAndExit(entries[2]);
|
||||
goToWorkflow();
|
||||
updateWorkflowStatus(entries[2], workflowStatus.draft, workflowStatus.ready);
|
||||
// eslint-disable-next-line cypress/no-unnecessary-waiting
|
||||
cy.wait(1500); // older versions of the CMS didn't wait fully for the update to be resolved
|
||||
updateWorkflowStatus(entries[1], workflowStatus.draft, workflowStatus.ready);
|
||||
// eslint-disable-next-line cypress/no-unnecessary-waiting
|
||||
cy.wait(1500); // older versions of the CMS didn't wait fully for the update to be resolved
|
||||
updateWorkflowStatus(entries[0], workflowStatus.draft, workflowStatus.ready);
|
||||
// eslint-disable-next-line cypress/no-unnecessary-waiting
|
||||
cy.wait(1500); // older versions of the CMS didn't wait fully for the update to be resolved
|
||||
|
||||
cy.task('switchToVersion', {
|
||||
version: 'latest',
|
||||
});
|
||||
cy.reload();
|
||||
|
||||
// allow migration code to run for 5 minutes
|
||||
publishWorkflowEntry(entries[2], 5 * 60 * 1000);
|
||||
publishWorkflowEntry(entries[1]);
|
||||
publishWorkflowEntry(entries[0]);
|
||||
goToCollections();
|
||||
assertPublishedEntry([entries[2], entries[1], entries[0]]);
|
||||
});
|
||||
});
|
||||
}
|
Reference in New Issue
Block a user