@wordpress/editor 14.48.2-next.v.202606191442.0 → 14.49.1
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/CHANGELOG.md +2 -0
- package/README.md +5 -13
- package/build/components/autosave-monitor/index.cjs +40 -83
- package/build/components/autosave-monitor/index.cjs.map +3 -3
- package/build/components/post-publish-panel/postpublish.cjs +0 -1
- package/build/components/post-publish-panel/postpublish.cjs.map +2 -2
- package/build/components/post-status/index.cjs +0 -1
- package/build/components/post-status/index.cjs.map +2 -2
- package/build/components/post-taxonomies/hierarchical-term-selector.cjs +0 -1
- package/build/components/post-taxonomies/hierarchical-term-selector.cjs.map +2 -2
- package/build/components/post-template/create-new-template-modal.cjs +0 -1
- package/build/components/post-template/create-new-template-modal.cjs.map +2 -2
- package/build/components/post-text-editor/utils.cjs +2 -2
- package/build/components/post-text-editor/utils.cjs.map +1 -1
- package/build/components/post-visibility/index.cjs +0 -1
- package/build/components/post-visibility/index.cjs.map +2 -2
- package/build/components/provider/disable-non-page-content-blocks.cjs +23 -3
- package/build/components/provider/disable-non-page-content-blocks.cjs.map +2 -2
- package/build/components/provider/navigation-block-editing-mode.cjs +9 -2
- package/build/components/provider/navigation-block-editing-mode.cjs.map +2 -2
- package/build/components/provider/use-block-editor-settings.cjs +2 -1
- package/build/components/provider/use-block-editor-settings.cjs.map +2 -2
- package/build/components/sidebar/dataform-post-summary.cjs +87 -32
- package/build/components/sidebar/dataform-post-summary.cjs.map +3 -3
- package/build/components/sidebar/post-summary.cjs +8 -6
- package/build/components/sidebar/post-summary.cjs.map +3 -3
- package/build/dataviews/store/private-actions.cjs +3 -1
- package/build/dataviews/store/private-actions.cjs.map +2 -2
- package/build/store/private-actions.cjs +2 -2
- package/build/store/private-actions.cjs.map +2 -2
- package/build-module/components/autosave-monitor/index.mjs +42 -81
- package/build-module/components/autosave-monitor/index.mjs.map +2 -2
- package/build-module/components/post-publish-panel/postpublish.mjs +0 -1
- package/build-module/components/post-publish-panel/postpublish.mjs.map +2 -2
- package/build-module/components/post-status/index.mjs +0 -1
- package/build-module/components/post-status/index.mjs.map +2 -2
- package/build-module/components/post-taxonomies/hierarchical-term-selector.mjs +0 -1
- package/build-module/components/post-taxonomies/hierarchical-term-selector.mjs.map +2 -2
- package/build-module/components/post-template/create-new-template-modal.mjs +0 -1
- package/build-module/components/post-template/create-new-template-modal.mjs.map +2 -2
- package/build-module/components/post-text-editor/utils.mjs +2 -2
- package/build-module/components/post-text-editor/utils.mjs.map +1 -1
- package/build-module/components/post-visibility/index.mjs +0 -1
- package/build-module/components/post-visibility/index.mjs.map +2 -2
- package/build-module/components/provider/disable-non-page-content-blocks.mjs +23 -3
- package/build-module/components/provider/disable-non-page-content-blocks.mjs.map +2 -2
- package/build-module/components/provider/navigation-block-editing-mode.mjs +10 -3
- package/build-module/components/provider/navigation-block-editing-mode.mjs.map +2 -2
- package/build-module/components/provider/use-block-editor-settings.mjs +2 -1
- package/build-module/components/provider/use-block-editor-settings.mjs.map +2 -2
- package/build-module/components/sidebar/dataform-post-summary.mjs +88 -33
- package/build-module/components/sidebar/dataform-post-summary.mjs.map +2 -2
- package/build-module/components/sidebar/post-summary.mjs +8 -6
- package/build-module/components/sidebar/post-summary.mjs.map +2 -2
- package/build-module/dataviews/store/private-actions.mjs +5 -1
- package/build-module/dataviews/store/private-actions.mjs.map +2 -2
- package/build-module/store/private-actions.mjs +2 -2
- package/build-module/store/private-actions.mjs.map +2 -2
- package/build-style/style-rtl.css +29 -33
- package/build-style/style.css +29 -33
- package/build-types/components/autosave-monitor/index.d.ts +11 -29
- package/build-types/components/autosave-monitor/index.d.ts.map +1 -1
- package/build-types/components/post-publish-panel/postpublish.d.ts.map +1 -1
- package/build-types/components/post-status/index.d.ts.map +1 -1
- package/build-types/components/post-taxonomies/hierarchical-term-selector.d.ts.map +1 -1
- package/build-types/components/post-template/create-new-template-modal.d.ts.map +1 -1
- package/build-types/components/post-visibility/index.d.ts.map +1 -1
- package/build-types/components/provider/disable-non-page-content-blocks.d.ts.map +1 -1
- package/build-types/components/provider/navigation-block-editing-mode.d.ts.map +1 -1
- package/build-types/components/provider/use-block-editor-settings.d.ts.map +1 -1
- package/build-types/components/sidebar/dataform-post-summary.d.ts.map +1 -1
- package/build-types/components/sidebar/post-summary.d.ts.map +1 -1
- package/build-types/dataviews/store/private-actions.d.ts.map +1 -1
- package/build-types/utils/get-template-part-icon.d.ts.map +1 -1
- package/package.json +46 -46
- package/src/components/autosave-monitor/index.js +69 -104
- package/src/components/autosave-monitor/test/index.js +137 -122
- package/src/components/plugin-post-publish-panel/test/__snapshots__/index.js.snap +1 -0
- package/src/components/post-publish-panel/postpublish.js +0 -1
- package/src/components/post-publish-panel/test/__snapshots__/index.js.snap +7 -2
- package/src/components/post-saved-state/test/__snapshots__/index.js.snap +1 -0
- package/src/components/post-status/index.js +0 -1
- package/src/components/post-taxonomies/hierarchical-term-selector.js +0 -1
- package/src/components/post-template/create-new-template-modal.js +0 -1
- package/src/components/post-text-editor/utils.js +2 -2
- package/src/components/post-visibility/index.js +0 -1
- package/src/components/provider/disable-non-page-content-blocks.js +23 -6
- package/src/components/provider/navigation-block-editing-mode.js +10 -4
- package/src/components/provider/use-block-editor-settings.js +3 -1
- package/src/components/sidebar/dataform-post-summary.js +133 -49
- package/src/components/sidebar/post-summary.js +12 -10
- package/src/dataviews/store/private-actions.ts +8 -1
- package/src/store/private-actions.js +2 -2
- package/src/store/test/actions.js +2 -2
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/dataviews/store/private-actions.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport type { Action, Field } from '@wordpress/dataviews';\nimport { doAction } from '@wordpress/hooks';\nimport type { PostType } from '@wordpress/fields';\nimport {\n\tviewPost,\n\tviewPostRevisions,\n\tduplicatePost,\n\tduplicatePattern,\n\treorderPage,\n\texportPattern,\n\tpermanentlyDeletePost,\n\trestorePost,\n\ttrashPost,\n\trenamePost,\n\tresetPost,\n\tdeletePost,\n\tduplicateTemplatePart,\n\texcerptField,\n\tfeaturedImageField,\n\tdateField,\n\tparentField,\n\tpasswordField,\n\tcommentStatusField,\n\tpingStatusField,\n\tdiscussionField,\n\tslugField,\n\tstatusField,\n\tauthorField,\n\ttitleField,\n\ttemplateField,\n\ttemplateTitleField,\n\tpageTitleField,\n\tpatternTitleField,\n\tnotesField,\n\tscheduledDateField,\n\tlastEditedDateField,\n\tformatField,\n\tpostContentInfoField,\n\tstickyField,\n\tdescriptionField,\n\treadOnlyDescriptionField,\n\tpostsPerPageField,\n\tsiteDiscussionField,\n\tpostsPageTitleField,\n} from '@wordpress/fields';\nimport {\n\taltTextField,\n\tattachedToField,\n\tauthorField as mediaAuthorField,\n\tcaptionField,\n\tdateAddedField,\n\tdescriptionField as mediaDescriptionField,\n\tfilenameField,\n\tfilesizeField,\n\tmediaDimensionsField,\n\tmimeTypeField,\n} from '@wordpress/media-fields';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\nimport { ATTACHMENT_POST_TYPE, DESIGN_POST_TYPES } from '../../store/constants';\nimport postPreviewField from '../fields/content-preview';\nimport { unlock } from '../../lock-unlock';\n\ndeclare global {\n\tinterface Window {\n\t\t__experimentalTemplateActivate?: boolean;\n\t}\n}\n\n/**\n * Check if a post type supports editor notes.\n *\n * @param supports The post type supports object.\n * @return Whether editor notes are supported.\n */\nfunction hasEditorNotesSupport( supports?: PostType[ 'supports' ] ): boolean {\n\tconst editor = supports?.editor;\n\tif ( Array.isArray( editor ) ) {\n\t\treturn !! editor[ 0 ]?.notes;\n\t}\n\treturn false;\n}\n\nexport function registerEntityAction< Item >(\n\tkind: string,\n\tname: string,\n\tconfig: Action< Item >\n) {\n\treturn {\n\t\ttype: 'REGISTER_ENTITY_ACTION' as const,\n\t\tkind,\n\t\tname,\n\t\tconfig,\n\t};\n}\n\nexport function unregisterEntityAction(\n\tkind: string,\n\tname: string,\n\tactionId: string\n) {\n\treturn {\n\t\ttype: 'UNREGISTER_ENTITY_ACTION' as const,\n\t\tkind,\n\t\tname,\n\t\tactionId,\n\t};\n}\n\nexport function registerEntityField< Item >(\n\tkind: string,\n\tname: string,\n\tconfig: Field< Item >\n) {\n\treturn {\n\t\ttype: 'REGISTER_ENTITY_FIELD' as const,\n\t\tkind,\n\t\tname,\n\t\tconfig,\n\t};\n}\n\nexport function unregisterEntityField(\n\tkind: string,\n\tname: string,\n\tfieldId: string\n) {\n\treturn {\n\t\ttype: 'UNREGISTER_ENTITY_FIELD' as const,\n\t\tkind,\n\t\tname,\n\t\tfieldId,\n\t};\n}\n\nexport function setIsReady( kind: string, name: string ) {\n\treturn {\n\t\ttype: 'SET_IS_READY' as const,\n\t\tkind,\n\t\tname,\n\t};\n}\n\n/*\n * Media fields for the attachment post type.\n *\n * Field order follows a logical grouping:\n * 1. Metadata fields in panels (date, author, file info)\n * 2. Core editable fields (title, alt text, caption, description)\n *\n * Note: media_thumbnail is not included as it's shown in the canvas preview\n */\nconst ORDERED_MEDIA_FIELDS = [\n\t// Metadata in panels (collapsed by default).\n\tdateAddedField,\n\tmediaAuthorField,\n\tfilenameField,\n\tmimeTypeField,\n\tfilesizeField,\n\tmediaDimensionsField,\n\tattachedToField,\n\t// Regular layout fields (always visible).\n\ttitleField,\n\taltTextField,\n\tcaptionField,\n\tmediaDescriptionField,\n];\n\nexport const registerPostTypeSchema =\n\t( postType: string ) =>\n\tasync ( { registry }: { registry: any } ) => {\n\t\tconst isReady = unlock( registry.select( editorStore ) ).isEntityReady(\n\t\t\t'postType',\n\t\t\tpostType\n\t\t);\n\t\tif ( isReady ) {\n\t\t\treturn;\n\t\t}\n\n\t\tunlock( registry.dispatch( editorStore ) ).setIsReady(\n\t\t\t'postType',\n\t\t\tpostType\n\t\t);\n\n\t\tconst postTypeConfig = ( await registry\n\t\t\t.resolveSelect( coreStore )\n\t\t\t.getPostType( postType ) ) as PostType;\n\n\t\tconst canCreate = await registry\n\t\t\t.resolveSelect( coreStore )\n\t\t\t.canUser( 'create', {\n\t\t\t\tkind: 'postType',\n\t\t\t\tname: postType,\n\t\t\t} );\n\t\tconst currentTheme = await registry\n\t\t\t.resolveSelect( coreStore )\n\t\t\t.getCurrentTheme();\n\t\tconst { disablePostFormats } = registry\n\t\t\t.select( editorStore )\n\t\t\t.getEditorSettings();\n\n\t\tlet canDuplicate =\n\t\t\t! [ 'wp_block', 'wp_template_part' ].includes(\n\t\t\t\tpostTypeConfig.slug\n\t\t\t) &&\n\t\t\tcanCreate &&\n\t\t\tduplicatePost;\n\n\t\t// @ts-ignore\n\t\tif ( ! globalThis.IS_GUTENBERG_PLUGIN ) {\n\t\t\t// Outside Gutenberg, disable duplication except for wp_template.\n\t\t\tif ( 'wp_template' !== postTypeConfig.slug ) {\n\t\t\t\tcanDuplicate = undefined;\n\t\t\t}\n\t\t}\n\n\t\t// When template activation experiment is disabled, templates cannot be duplicated.\n\t\t// @ts-ignore\n\t\tif (\n\t\t\tpostTypeConfig.slug === 'wp_template' &&\n\t\t\t! window?.__experimentalTemplateActivate\n\t\t) {\n\t\t\tcanDuplicate = undefined;\n\t\t}\n\n\t\tconst actions = [\n\t\t\tpostTypeConfig.viewable ? viewPost : undefined,\n\t\t\t!! postTypeConfig.supports?.revisions\n\t\t\t\t? viewPostRevisions\n\t\t\t\t: undefined,\n\t\t\t// @ts-ignore\n\t\t\tcanDuplicate,\n\t\t\tpostTypeConfig.slug === 'wp_template_part' &&\n\t\t\tcanCreate &&\n\t\t\tcurrentTheme?.is_block_theme\n\t\t\t\t? duplicateTemplatePart\n\t\t\t\t: undefined,\n\t\t\tcanCreate && postTypeConfig.slug === 'wp_block'\n\t\t\t\t? duplicatePattern\n\t\t\t\t: undefined,\n\t\t\tpostTypeConfig.supports?.title ? renamePost : undefined,\n\t\t\tpostTypeConfig.supports?.[ 'page-attributes' ]\n\t\t\t\t? reorderPage\n\t\t\t\t: undefined,\n\t\t\tpostTypeConfig.slug === 'wp_block' ? exportPattern : undefined,\n\t\t\trestorePost,\n\t\t\tresetPost,\n\t\t\tdeletePost,\n\t\t\ttrashPost,\n\t\t\tpermanentlyDeletePost,\n\t\t].filter( Boolean );\n\n\t\t// Handle attachment post type separately with media-specific fields\n\t\tlet fields;\n\n\t\tif ( postType === ATTACHMENT_POST_TYPE ) {\n\t\t\tfields = ORDERED_MEDIA_FIELDS;\n\t\t} else {\n\t\t\tfields = [\n\t\t\t\tpostTypeConfig.supports?.thumbnail &&\n\t\t\t\t\tcurrentTheme?.theme_supports?.[ 'post-thumbnails' ] &&\n\t\t\t\t\tfeaturedImageField,\n\t\t\t\tpostTypeConfig.supports?.author && authorField,\n\t\t\t\t! DESIGN_POST_TYPES.includes( postTypeConfig.slug ) &&\n\t\t\t\t\tstatusField,\n\t\t\t\t! DESIGN_POST_TYPES.includes( postTypeConfig.slug ) &&\n\t\t\t\t\tdateField,\n\t\t\t\t! DESIGN_POST_TYPES.includes( postTypeConfig.slug ) &&\n\t\t\t\t\tscheduledDateField,\n\t\t\t\tlastEditedDateField,\n\t\t\t\t! DESIGN_POST_TYPES.includes( postTypeConfig.slug ) &&\n\t\t\t\t\tslugField,\n\t\t\t\t! DESIGN_POST_TYPES.includes( postTypeConfig.slug ) &&\n\t\t\t\t\tpostTypeConfig.supports?.excerpt &&\n\t\t\t\t\texcerptField,\n\t\t\t\tpostTypeConfig.supports?.[ 'page-attributes' ] && parentField,\n\t\t\t\tpostTypeConfig.supports?.comments && commentStatusField,\n\t\t\t\tpostTypeConfig.supports?.trackbacks && pingStatusField,\n\t\t\t\t( postTypeConfig.supports?.comments ||\n\t\t\t\t\tpostTypeConfig.supports?.trackbacks ) &&\n\t\t\t\t\tdiscussionField,\n\t\t\t\t! DESIGN_POST_TYPES.includes( postTypeConfig.slug ) &&\n\t\t\t\t\ttemplateField,\n\t\t\t\tpostTypeConfig.supports?.[ 'post-formats' ] &&\n\t\t\t\t\t! disablePostFormats &&\n\t\t\t\t\tformatField,\n\t\t\t\t! DESIGN_POST_TYPES.includes( postTypeConfig.slug ) &&\n\t\t\t\t\tpostTypeConfig.supports?.editor &&\n\t\t\t\t\tpostContentInfoField,\n\t\t\t\t! DESIGN_POST_TYPES.includes( postTypeConfig.slug ) &&\n\t\t\t\t\tpasswordField,\n\t\t\t\tpostTypeConfig.slug === 'post' && stickyField,\n\t\t\t\tpostTypeConfig.slug === 'wp_template' && descriptionField,\n\t\t\t\tpostTypeConfig.slug === 'wp_template' &&\n\t\t\t\t\treadOnlyDescriptionField,\n\t\t\t\t// The `home`/`index` template summary exposes a few fields that\n\t\t\t\t// target other entities (`root/site` and the posts page).\n\t\t\t\t// `DataFormPostSummary` overrides them to read/write the right\n\t\t\t\t// entity and to control their visibility.\n\t\t\t\tpostTypeConfig.slug === 'wp_template' && postsPageTitleField,\n\t\t\t\tpostTypeConfig.slug === 'wp_template' && postsPerPageField,\n\t\t\t\tpostTypeConfig.slug === 'wp_template' && siteDiscussionField,\n\t\t\t\tpostTypeConfig.supports?.editor &&\n\t\t\t\t\tpostTypeConfig.viewable &&\n\t\t\t\t\tpostPreviewField,\n\t\t\t\thasEditorNotesSupport( postTypeConfig.supports ) && notesField,\n\t\t\t].filter( Boolean );\n\t\t\tif ( postTypeConfig.supports?.title ) {\n\t\t\t\tlet _titleField;\n\t\t\t\tif ( postType === 'page' ) {\n\t\t\t\t\t_titleField = pageTitleField;\n\t\t\t\t} else if ( postType === 'wp_template' ) {\n\t\t\t\t\t_titleField = templateTitleField;\n\t\t\t\t} else if ( postType === 'wp_block' ) {\n\t\t\t\t\t_titleField = patternTitleField;\n\t\t\t\t} else {\n\t\t\t\t\t_titleField = titleField;\n\t\t\t\t}\n\t\t\t\tfields.push( _titleField );\n\t\t\t}\n\t\t}\n\n\t\tregistry.batch( () => {\n\t\t\tactions.forEach( ( action ) => {\n\t\t\t\tunlock( registry.dispatch( editorStore ) ).registerEntityAction(\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostType,\n\t\t\t\t\taction\n\t\t\t\t);\n\t\t\t} );\n\t\t\tfields.forEach( ( field ) => {\n\t\t\t\tunlock( registry.dispatch( editorStore ) ).registerEntityField(\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostType,\n\t\t\t\t\tfield\n\t\t\t\t);\n\t\t\t} );\n\t\t} );\n\n\t\tdoAction( 'core.registerPostTypeSchema', postType );\n\t};\n"],
|
|
5
|
-
"mappings": "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
|
|
4
|
+
"sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport type { Action, Field } from '@wordpress/dataviews';\nimport { doAction } from '@wordpress/hooks';\nimport type { PostType } from '@wordpress/fields';\nimport {\n\tviewPost,\n\tviewPostRevisions,\n\tduplicatePost,\n\tduplicatePattern,\n\treorderPage,\n\texportPattern,\n\tpermanentlyDeletePost,\n\trestorePost,\n\ttrashPost,\n\trenamePost,\n\tresetPost,\n\tdeletePost,\n\tduplicateTemplatePart,\n\texcerptField,\n\tfeaturedImageField,\n\tdateField,\n\tparentField,\n\tpasswordField,\n\tcommentStatusField,\n\tpingStatusField,\n\tdiscussionField,\n\tslugField,\n\tstatusField,\n\tauthorField,\n\ttemplateAuthorField,\n\ttemplatePartAuthorField,\n\ttitleField,\n\ttemplateField,\n\ttemplateTitleField,\n\tpageTitleField,\n\tpatternTitleField,\n\tnotesField,\n\tscheduledDateField,\n\tlastEditedDateField,\n\tformatField,\n\tpostContentInfoField,\n\tstickyField,\n\tdescriptionField,\n\treadOnlyDescriptionField,\n\tpostsPerPageField,\n\tsiteDiscussionField,\n\tpostsPageTitleField,\n} from '@wordpress/fields';\nimport {\n\taltTextField,\n\tattachedToField,\n\tauthorField as mediaAuthorField,\n\tcaptionField,\n\tdateAddedField,\n\tdescriptionField as mediaDescriptionField,\n\tfilenameField,\n\tfilesizeField,\n\tmediaDimensionsField,\n\tmimeTypeField,\n} from '@wordpress/media-fields';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\nimport { ATTACHMENT_POST_TYPE, DESIGN_POST_TYPES } from '../../store/constants';\nimport postPreviewField from '../fields/content-preview';\nimport { unlock } from '../../lock-unlock';\n\ndeclare global {\n\tinterface Window {\n\t\t__experimentalTemplateActivate?: boolean;\n\t}\n}\n\n/**\n * Check if a post type supports editor notes.\n *\n * @param supports The post type supports object.\n * @return Whether editor notes are supported.\n */\nfunction hasEditorNotesSupport( supports?: PostType[ 'supports' ] ): boolean {\n\tconst editor = supports?.editor;\n\tif ( Array.isArray( editor ) ) {\n\t\treturn !! editor[ 0 ]?.notes;\n\t}\n\treturn false;\n}\n\nexport function registerEntityAction< Item >(\n\tkind: string,\n\tname: string,\n\tconfig: Action< Item >\n) {\n\treturn {\n\t\ttype: 'REGISTER_ENTITY_ACTION' as const,\n\t\tkind,\n\t\tname,\n\t\tconfig,\n\t};\n}\n\nexport function unregisterEntityAction(\n\tkind: string,\n\tname: string,\n\tactionId: string\n) {\n\treturn {\n\t\ttype: 'UNREGISTER_ENTITY_ACTION' as const,\n\t\tkind,\n\t\tname,\n\t\tactionId,\n\t};\n}\n\nexport function registerEntityField< Item >(\n\tkind: string,\n\tname: string,\n\tconfig: Field< Item >\n) {\n\treturn {\n\t\ttype: 'REGISTER_ENTITY_FIELD' as const,\n\t\tkind,\n\t\tname,\n\t\tconfig,\n\t};\n}\n\nexport function unregisterEntityField(\n\tkind: string,\n\tname: string,\n\tfieldId: string\n) {\n\treturn {\n\t\ttype: 'UNREGISTER_ENTITY_FIELD' as const,\n\t\tkind,\n\t\tname,\n\t\tfieldId,\n\t};\n}\n\nexport function setIsReady( kind: string, name: string ) {\n\treturn {\n\t\ttype: 'SET_IS_READY' as const,\n\t\tkind,\n\t\tname,\n\t};\n}\n\n/*\n * Media fields for the attachment post type.\n *\n * Field order follows a logical grouping:\n * 1. Metadata fields in panels (date, author, file info)\n * 2. Core editable fields (title, alt text, caption, description)\n *\n * Note: media_thumbnail is not included as it's shown in the canvas preview\n */\nconst ORDERED_MEDIA_FIELDS = [\n\t// Metadata in panels (collapsed by default).\n\tdateAddedField,\n\tmediaAuthorField,\n\tfilenameField,\n\tmimeTypeField,\n\tfilesizeField,\n\tmediaDimensionsField,\n\tattachedToField,\n\t// Regular layout fields (always visible).\n\ttitleField,\n\taltTextField,\n\tcaptionField,\n\tmediaDescriptionField,\n];\n\nexport const registerPostTypeSchema =\n\t( postType: string ) =>\n\tasync ( { registry }: { registry: any } ) => {\n\t\tconst isReady = unlock( registry.select( editorStore ) ).isEntityReady(\n\t\t\t'postType',\n\t\t\tpostType\n\t\t);\n\t\tif ( isReady ) {\n\t\t\treturn;\n\t\t}\n\n\t\tunlock( registry.dispatch( editorStore ) ).setIsReady(\n\t\t\t'postType',\n\t\t\tpostType\n\t\t);\n\n\t\tconst postTypeConfig = ( await registry\n\t\t\t.resolveSelect( coreStore )\n\t\t\t.getPostType( postType ) ) as PostType;\n\n\t\tconst canCreate = await registry\n\t\t\t.resolveSelect( coreStore )\n\t\t\t.canUser( 'create', {\n\t\t\t\tkind: 'postType',\n\t\t\t\tname: postType,\n\t\t\t} );\n\t\tconst currentTheme = await registry\n\t\t\t.resolveSelect( coreStore )\n\t\t\t.getCurrentTheme();\n\t\tconst { disablePostFormats } = registry\n\t\t\t.select( editorStore )\n\t\t\t.getEditorSettings();\n\n\t\tlet canDuplicate =\n\t\t\t! [ 'wp_block', 'wp_template_part' ].includes(\n\t\t\t\tpostTypeConfig.slug\n\t\t\t) &&\n\t\t\tcanCreate &&\n\t\t\tduplicatePost;\n\n\t\t// @ts-ignore\n\t\tif ( ! globalThis.IS_GUTENBERG_PLUGIN ) {\n\t\t\t// Outside Gutenberg, disable duplication except for wp_template.\n\t\t\tif ( 'wp_template' !== postTypeConfig.slug ) {\n\t\t\t\tcanDuplicate = undefined;\n\t\t\t}\n\t\t}\n\n\t\t// When template activation experiment is disabled, templates cannot be duplicated.\n\t\t// @ts-ignore\n\t\tif (\n\t\t\tpostTypeConfig.slug === 'wp_template' &&\n\t\t\t! window?.__experimentalTemplateActivate\n\t\t) {\n\t\t\tcanDuplicate = undefined;\n\t\t}\n\n\t\tconst actions = [\n\t\t\tpostTypeConfig.viewable ? viewPost : undefined,\n\t\t\t!! postTypeConfig.supports?.revisions\n\t\t\t\t? viewPostRevisions\n\t\t\t\t: undefined,\n\t\t\t// @ts-ignore\n\t\t\tcanDuplicate,\n\t\t\tpostTypeConfig.slug === 'wp_template_part' &&\n\t\t\tcanCreate &&\n\t\t\tcurrentTheme?.is_block_theme\n\t\t\t\t? duplicateTemplatePart\n\t\t\t\t: undefined,\n\t\t\tcanCreate && postTypeConfig.slug === 'wp_block'\n\t\t\t\t? duplicatePattern\n\t\t\t\t: undefined,\n\t\t\tpostTypeConfig.supports?.title ? renamePost : undefined,\n\t\t\tpostTypeConfig.supports?.[ 'page-attributes' ]\n\t\t\t\t? reorderPage\n\t\t\t\t: undefined,\n\t\t\tpostTypeConfig.slug === 'wp_block' ? exportPattern : undefined,\n\t\t\trestorePost,\n\t\t\tresetPost,\n\t\t\tdeletePost,\n\t\t\ttrashPost,\n\t\t\tpermanentlyDeletePost,\n\t\t].filter( Boolean );\n\n\t\t// Handle attachment post type separately with media-specific fields\n\t\tlet fields;\n\n\t\tif ( postType === ATTACHMENT_POST_TYPE ) {\n\t\t\tfields = ORDERED_MEDIA_FIELDS;\n\t\t} else {\n\t\t\tfields = [\n\t\t\t\tpostTypeConfig.supports?.thumbnail &&\n\t\t\t\t\tcurrentTheme?.theme_supports?.[ 'post-thumbnails' ] &&\n\t\t\t\t\tfeaturedImageField,\n\t\t\t\t! DESIGN_POST_TYPES.includes( postTypeConfig.slug ) &&\n\t\t\t\t\tpostTypeConfig.supports?.author &&\n\t\t\t\t\tauthorField,\n\t\t\t\tpostTypeConfig.slug === 'wp_template' && templateAuthorField,\n\t\t\t\tpostTypeConfig.slug === 'wp_template_part' &&\n\t\t\t\t\ttemplatePartAuthorField,\n\t\t\t\t! DESIGN_POST_TYPES.includes( postTypeConfig.slug ) &&\n\t\t\t\t\tstatusField,\n\t\t\t\t! DESIGN_POST_TYPES.includes( postTypeConfig.slug ) &&\n\t\t\t\t\tdateField,\n\t\t\t\t! DESIGN_POST_TYPES.includes( postTypeConfig.slug ) &&\n\t\t\t\t\tscheduledDateField,\n\t\t\t\tlastEditedDateField,\n\t\t\t\t! DESIGN_POST_TYPES.includes( postTypeConfig.slug ) &&\n\t\t\t\t\tslugField,\n\t\t\t\t! DESIGN_POST_TYPES.includes( postTypeConfig.slug ) &&\n\t\t\t\t\tpostTypeConfig.supports?.excerpt &&\n\t\t\t\t\texcerptField,\n\t\t\t\tpostTypeConfig.supports?.[ 'page-attributes' ] && parentField,\n\t\t\t\tpostTypeConfig.supports?.comments && commentStatusField,\n\t\t\t\tpostTypeConfig.supports?.trackbacks && pingStatusField,\n\t\t\t\t( postTypeConfig.supports?.comments ||\n\t\t\t\t\tpostTypeConfig.supports?.trackbacks ) &&\n\t\t\t\t\tdiscussionField,\n\t\t\t\t! DESIGN_POST_TYPES.includes( postTypeConfig.slug ) &&\n\t\t\t\t\ttemplateField,\n\t\t\t\tpostTypeConfig.supports?.[ 'post-formats' ] &&\n\t\t\t\t\t! disablePostFormats &&\n\t\t\t\t\tformatField,\n\t\t\t\t! DESIGN_POST_TYPES.includes( postTypeConfig.slug ) &&\n\t\t\t\t\tpostTypeConfig.supports?.editor &&\n\t\t\t\t\tpostContentInfoField,\n\t\t\t\t! DESIGN_POST_TYPES.includes( postTypeConfig.slug ) &&\n\t\t\t\t\tpasswordField,\n\t\t\t\tpostTypeConfig.slug === 'post' && stickyField,\n\t\t\t\tpostTypeConfig.slug === 'wp_template' && descriptionField,\n\t\t\t\tpostTypeConfig.slug === 'wp_template' &&\n\t\t\t\t\treadOnlyDescriptionField,\n\t\t\t\t// The `home`/`index` template summary exposes a few fields that\n\t\t\t\t// target other entities (`root/site` and the posts page).\n\t\t\t\t// `DataFormPostSummary` overrides them to read/write the right\n\t\t\t\t// entity and to control their visibility.\n\t\t\t\tpostTypeConfig.slug === 'wp_template' && postsPageTitleField,\n\t\t\t\tpostTypeConfig.slug === 'wp_template' && postsPerPageField,\n\t\t\t\tpostTypeConfig.slug === 'wp_template' && siteDiscussionField,\n\t\t\t\tpostTypeConfig.supports?.editor &&\n\t\t\t\t\tpostTypeConfig.viewable &&\n\t\t\t\t\tpostPreviewField,\n\t\t\t\thasEditorNotesSupport( postTypeConfig.supports ) && notesField,\n\t\t\t].filter( Boolean );\n\t\t\tif ( postTypeConfig.supports?.title ) {\n\t\t\t\tlet _titleField;\n\t\t\t\tif ( postType === 'page' ) {\n\t\t\t\t\t_titleField = pageTitleField;\n\t\t\t\t} else if ( postType === 'wp_template' ) {\n\t\t\t\t\t_titleField = templateTitleField;\n\t\t\t\t} else if ( postType === 'wp_block' ) {\n\t\t\t\t\t_titleField = patternTitleField;\n\t\t\t\t} else {\n\t\t\t\t\t_titleField = titleField;\n\t\t\t\t}\n\t\t\t\tfields.push( _titleField );\n\t\t\t}\n\t\t}\n\n\t\tregistry.batch( () => {\n\t\t\tactions.forEach( ( action ) => {\n\t\t\t\tunlock( registry.dispatch( editorStore ) ).registerEntityAction(\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostType,\n\t\t\t\t\taction\n\t\t\t\t);\n\t\t\t} );\n\t\t\tfields.forEach( ( field ) => {\n\t\t\t\tunlock( registry.dispatch( editorStore ) ).registerEntityField(\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostType,\n\t\t\t\t\tfield\n\t\t\t\t);\n\t\t\t} );\n\t\t} );\n\n\t\tdoAction( 'core.registerPostTypeSchema', postType );\n\t};\n"],
|
|
5
|
+
"mappings": ";AAGA,SAAS,SAAS,iBAAiB;AAEnC,SAAS,gBAAgB;AAEzB;AAAA,EACC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACM;AACP;AAAA,EACC;AAAA,EACA;AAAA,EACA,eAAe;AAAA,EACf;AAAA,EACA;AAAA,EACA,oBAAoB;AAAA,EACpB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACM;AAKP,SAAS,SAAS,mBAAmB;AACrC,SAAS,sBAAsB,yBAAyB;AACxD,OAAO,sBAAsB;AAC7B,SAAS,cAAc;AAcvB,SAAS,sBAAuB,UAA6C;AAC5E,QAAM,SAAS,UAAU;AACzB,MAAK,MAAM,QAAS,MAAO,GAAI;AAC9B,WAAO,CAAC,CAAE,OAAQ,CAAE,GAAG;AAAA,EACxB;AACA,SAAO;AACR;AAEO,SAAS,qBACf,MACA,MACA,QACC;AACD,SAAO;AAAA,IACN,MAAM;AAAA,IACN;AAAA,IACA;AAAA,IACA;AAAA,EACD;AACD;AAEO,SAAS,uBACf,MACA,MACA,UACC;AACD,SAAO;AAAA,IACN,MAAM;AAAA,IACN;AAAA,IACA;AAAA,IACA;AAAA,EACD;AACD;AAEO,SAAS,oBACf,MACA,MACA,QACC;AACD,SAAO;AAAA,IACN,MAAM;AAAA,IACN;AAAA,IACA;AAAA,IACA;AAAA,EACD;AACD;AAEO,SAAS,sBACf,MACA,MACA,SACC;AACD,SAAO;AAAA,IACN,MAAM;AAAA,IACN;AAAA,IACA;AAAA,IACA;AAAA,EACD;AACD;AAEO,SAAS,WAAY,MAAc,MAAe;AACxD,SAAO;AAAA,IACN,MAAM;AAAA,IACN;AAAA,IACA;AAAA,EACD;AACD;AAWA,IAAM,uBAAuB;AAAA;AAAA,EAE5B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD;AAEO,IAAM,yBACZ,CAAE,aACF,OAAQ,EAAE,SAAS,MAA0B;AAC5C,QAAM,UAAU,OAAQ,SAAS,OAAQ,WAAY,CAAE,EAAE;AAAA,IACxD;AAAA,IACA;AAAA,EACD;AACA,MAAK,SAAU;AACd;AAAA,EACD;AAEA,SAAQ,SAAS,SAAU,WAAY,CAAE,EAAE;AAAA,IAC1C;AAAA,IACA;AAAA,EACD;AAEA,QAAM,iBAAmB,MAAM,SAC7B,cAAe,SAAU,EACzB,YAAa,QAAS;AAExB,QAAM,YAAY,MAAM,SACtB,cAAe,SAAU,EACzB,QAAS,UAAU;AAAA,IACnB,MAAM;AAAA,IACN,MAAM;AAAA,EACP,CAAE;AACH,QAAM,eAAe,MAAM,SACzB,cAAe,SAAU,EACzB,gBAAgB;AAClB,QAAM,EAAE,mBAAmB,IAAI,SAC7B,OAAQ,WAAY,EACpB,kBAAkB;AAEpB,MAAI,eACH,CAAE,CAAE,YAAY,kBAAmB,EAAE;AAAA,IACpC,eAAe;AAAA,EAChB,KACA,aACA;AAGD,MAAK,CAAE,WAAW,qBAAsB;AAEvC,QAAK,kBAAkB,eAAe,MAAO;AAC5C,qBAAe;AAAA,IAChB;AAAA,EACD;AAIA,MACC,eAAe,SAAS,iBACxB,CAAE,QAAQ,gCACT;AACD,mBAAe;AAAA,EAChB;AAEA,QAAM,UAAU;AAAA,IACf,eAAe,WAAW,WAAW;AAAA,IACrC,CAAC,CAAE,eAAe,UAAU,YACzB,oBACA;AAAA;AAAA,IAEH;AAAA,IACA,eAAe,SAAS,sBACxB,aACA,cAAc,iBACX,wBACA;AAAA,IACH,aAAa,eAAe,SAAS,aAClC,mBACA;AAAA,IACH,eAAe,UAAU,QAAQ,aAAa;AAAA,IAC9C,eAAe,WAAY,iBAAkB,IAC1C,cACA;AAAA,IACH,eAAe,SAAS,aAAa,gBAAgB;AAAA,IACrD;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD,EAAE,OAAQ,OAAQ;AAGlB,MAAI;AAEJ,MAAK,aAAa,sBAAuB;AACxC,aAAS;AAAA,EACV,OAAO;AACN,aAAS;AAAA,MACR,eAAe,UAAU,aACxB,cAAc,iBAAkB,iBAAkB,KAClD;AAAA,MACD,CAAE,kBAAkB,SAAU,eAAe,IAAK,KACjD,eAAe,UAAU,UACzB;AAAA,MACD,eAAe,SAAS,iBAAiB;AAAA,MACzC,eAAe,SAAS,sBACvB;AAAA,MACD,CAAE,kBAAkB,SAAU,eAAe,IAAK,KACjD;AAAA,MACD,CAAE,kBAAkB,SAAU,eAAe,IAAK,KACjD;AAAA,MACD,CAAE,kBAAkB,SAAU,eAAe,IAAK,KACjD;AAAA,MACD;AAAA,MACA,CAAE,kBAAkB,SAAU,eAAe,IAAK,KACjD;AAAA,MACD,CAAE,kBAAkB,SAAU,eAAe,IAAK,KACjD,eAAe,UAAU,WACzB;AAAA,MACD,eAAe,WAAY,iBAAkB,KAAK;AAAA,MAClD,eAAe,UAAU,YAAY;AAAA,MACrC,eAAe,UAAU,cAAc;AAAA,OACrC,eAAe,UAAU,YAC1B,eAAe,UAAU,eACzB;AAAA,MACD,CAAE,kBAAkB,SAAU,eAAe,IAAK,KACjD;AAAA,MACD,eAAe,WAAY,cAAe,KACzC,CAAE,sBACF;AAAA,MACD,CAAE,kBAAkB,SAAU,eAAe,IAAK,KACjD,eAAe,UAAU,UACzB;AAAA,MACD,CAAE,kBAAkB,SAAU,eAAe,IAAK,KACjD;AAAA,MACD,eAAe,SAAS,UAAU;AAAA,MAClC,eAAe,SAAS,iBAAiB;AAAA,MACzC,eAAe,SAAS,iBACvB;AAAA;AAAA;AAAA;AAAA;AAAA,MAKD,eAAe,SAAS,iBAAiB;AAAA,MACzC,eAAe,SAAS,iBAAiB;AAAA,MACzC,eAAe,SAAS,iBAAiB;AAAA,MACzC,eAAe,UAAU,UACxB,eAAe,YACf;AAAA,MACD,sBAAuB,eAAe,QAAS,KAAK;AAAA,IACrD,EAAE,OAAQ,OAAQ;AAClB,QAAK,eAAe,UAAU,OAAQ;AACrC,UAAI;AACJ,UAAK,aAAa,QAAS;AAC1B,sBAAc;AAAA,MACf,WAAY,aAAa,eAAgB;AACxC,sBAAc;AAAA,MACf,WAAY,aAAa,YAAa;AACrC,sBAAc;AAAA,MACf,OAAO;AACN,sBAAc;AAAA,MACf;AACA,aAAO,KAAM,WAAY;AAAA,IAC1B;AAAA,EACD;AAEA,WAAS,MAAO,MAAM;AACrB,YAAQ,QAAS,CAAE,WAAY;AAC9B,aAAQ,SAAS,SAAU,WAAY,CAAE,EAAE;AAAA,QAC1C;AAAA,QACA;AAAA,QACA;AAAA,MACD;AAAA,IACD,CAAE;AACF,WAAO,QAAS,CAAE,UAAW;AAC5B,aAAQ,SAAS,SAAU,WAAY,CAAE,EAAE;AAAA,QAC1C;AAAA,QACA;AAAA,QACA;AAAA,MACD;AAAA,IACD,CAAE;AAAA,EACH,CAAE;AAEF,WAAU,+BAA+B,QAAS;AACnD;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -14,8 +14,8 @@ import { buildRevisionsPageQuery } from "./private-selectors.mjs";
|
|
|
14
14
|
import { unlock } from "../lock-unlock.mjs";
|
|
15
15
|
export * from "../dataviews/store/private-actions.mjs";
|
|
16
16
|
var DEVICE_TYPE_BY_VIEWPORT_STATE = {
|
|
17
|
-
mobile: "Mobile",
|
|
18
|
-
tablet: "Tablet"
|
|
17
|
+
"@mobile": "Mobile",
|
|
18
|
+
"@tablet": "Tablet"
|
|
19
19
|
};
|
|
20
20
|
var updateDeviceTypeForViewportState = ({ viewport = "default", showStateOnCanvas = true } = {}) => ({ dispatch, registry }) => {
|
|
21
21
|
if (!showStateOnCanvas) {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/store/private-actions.js"],
|
|
4
|
-
"sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { addQueryArgs } from '@wordpress/url';\nimport apiFetch from '@wordpress/api-fetch';\nimport { parse, __unstableSerializeAndClean } from '@wordpress/blocks';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { dateI18n, getSettings as getDateSettings } from '@wordpress/date';\n\n/**\n * Internal dependencies\n */\nimport isTemplateRevertable from './utils/is-template-revertable';\nimport { buildRevisionsPageQuery } from './private-selectors';\nimport { unlock } from '../lock-unlock';\nexport * from '../dataviews/store/private-actions';\n\nconst DEVICE_TYPE_BY_VIEWPORT_STATE = {\n\tmobile: 'Mobile',\n\ttablet: 'Tablet',\n};\n\n/**\n * Updates the editor preview device in response to a block-editor viewport\n * state signal.\n *\n * @param {Object} options Viewport state change options.\n * @param {string} options.viewport Selected viewport state.\n * @param {boolean} options.showStateOnCanvas Whether canvas preview is enabled.\n */\nexport const updateDeviceTypeForViewportState =\n\t( { viewport = 'default', showStateOnCanvas = true } = {} ) =>\n\t( { dispatch, registry } ) => {\n\t\tif ( ! showStateOnCanvas ) {\n\t\t\treturn;\n\t\t}\n\n\t\tdispatch.setDeviceType(\n\t\t\tDEVICE_TYPE_BY_VIEWPORT_STATE[ viewport ] ?? 'Desktop'\n\t\t);\n\t\tunlock( registry.dispatch( blockEditorStore ) ).resetZoomLevel();\n\t};\n\n/**\n * Returns an action object used to set which template is currently being used/edited.\n *\n * @param {string} id Template Id.\n *\n * @return {Object} Action object.\n */\nexport function setCurrentTemplateId( id ) {\n\treturn {\n\t\ttype: 'SET_CURRENT_TEMPLATE_ID',\n\t\tid,\n\t};\n}\n\n/**\n * Create a block based template.\n *\n * @param {?Object} template Template to create and assign.\n */\nexport const createTemplate =\n\t( template ) =>\n\tasync ( { select, dispatch, registry } ) => {\n\t\tconst savedTemplate = await registry\n\t\t\t.dispatch( coreStore )\n\t\t\t.saveEntityRecord( 'postType', 'wp_template', template );\n\t\tregistry\n\t\t\t.dispatch( coreStore )\n\t\t\t.editEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tselect.getCurrentPostType(),\n\t\t\t\tselect.getCurrentPostId(),\n\t\t\t\t{\n\t\t\t\t\ttemplate: savedTemplate.slug,\n\t\t\t\t}\n\t\t\t);\n\t\tregistry\n\t\t\t.dispatch( noticesStore )\n\t\t\t.createSuccessNotice(\n\t\t\t\t__( \"Custom template created. You're in template mode now.\" ),\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\tactions: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: __( 'Go back' ),\n\t\t\t\t\t\t\tonClick: () =>\n\t\t\t\t\t\t\t\tdispatch.setRenderingMode(\n\t\t\t\t\t\t\t\t\tselect.getEditorSettings()\n\t\t\t\t\t\t\t\t\t\t.defaultRenderingMode\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t}\n\t\t\t);\n\t\treturn savedTemplate;\n\t};\n\n/**\n * Update the provided block types to be visible.\n *\n * @param {string[]} blockNames Names of block types to show.\n */\nexport const showBlockTypes =\n\t( blockNames ) =>\n\t( { registry } ) => {\n\t\tconst existingBlockNames =\n\t\t\tregistry\n\t\t\t\t.select( preferencesStore )\n\t\t\t\t.get( 'core', 'hiddenBlockTypes' ) ?? [];\n\n\t\tconst newBlockNames = existingBlockNames.filter(\n\t\t\t( type ) =>\n\t\t\t\t! (\n\t\t\t\t\tArray.isArray( blockNames ) ? blockNames : [ blockNames ]\n\t\t\t\t).includes( type )\n\t\t);\n\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.set( 'core', 'hiddenBlockTypes', newBlockNames );\n\t};\n\n/**\n * Update the provided block types to be hidden.\n *\n * @param {string[]} blockNames Names of block types to hide.\n */\nexport const hideBlockTypes =\n\t( blockNames ) =>\n\t( { registry } ) => {\n\t\tconst existingBlockNames =\n\t\t\tregistry\n\t\t\t\t.select( preferencesStore )\n\t\t\t\t.get( 'core', 'hiddenBlockTypes' ) ?? [];\n\n\t\tconst mergedBlockNames = new Set( [\n\t\t\t...existingBlockNames,\n\t\t\t...( Array.isArray( blockNames ) ? blockNames : [ blockNames ] ),\n\t\t] );\n\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.set( 'core', 'hiddenBlockTypes', [ ...mergedBlockNames ] );\n\t};\n\n/**\n * Save entity records marked as dirty.\n *\n * @param {Object} options Options for the action.\n * @param {Function} [options.onSave] Callback when saving happens.\n * @param {object[]} [options.dirtyEntityRecords] Array of dirty entities.\n * @param {object[]} [options.entitiesToSkip] Array of entities to skip saving.\n * @param {Function} [options.close] Callback when the actions is called. It should be consolidated with `onSave`.\n * @param {string} [options.successNoticeContent] Optional custom success notice content. Defaults to 'Site updated.'.\n */\nexport const saveDirtyEntities =\n\t( {\n\t\tonSave,\n\t\tdirtyEntityRecords = [],\n\t\tentitiesToSkip = [],\n\t\tclose,\n\t\tsuccessNoticeContent,\n\t} = {} ) =>\n\t( { registry } ) => {\n\t\tconst PUBLISH_ON_SAVE_ENTITIES = [\n\t\t\t{ kind: 'postType', name: 'wp_navigation' },\n\t\t];\n\t\tconst saveNoticeId = 'site-editor-save-success';\n\t\tconst homeUrl = registry\n\t\t\t.select( coreStore )\n\t\t\t.getEntityRecord( 'root', '__unstableBase' )?.home;\n\t\tregistry.dispatch( noticesStore ).removeNotice( saveNoticeId );\n\t\tconst entitiesToSave = dirtyEntityRecords.filter(\n\t\t\t( { kind, name, key, property } ) => {\n\t\t\t\treturn ! entitiesToSkip.some(\n\t\t\t\t\t( elt ) =>\n\t\t\t\t\t\telt.kind === kind &&\n\t\t\t\t\t\telt.name === name &&\n\t\t\t\t\t\telt.key === key &&\n\t\t\t\t\t\telt.property === property\n\t\t\t\t);\n\t\t\t}\n\t\t);\n\t\tclose?.( entitiesToSave );\n\t\tconst siteItemsToSave = [];\n\t\tconst pendingSavedRecords = [];\n\t\tentitiesToSave.forEach( ( { kind, name, key, property } ) => {\n\t\t\tif ( 'root' === kind && 'site' === name ) {\n\t\t\t\tsiteItemsToSave.push( property );\n\t\t\t} else {\n\t\t\t\tif (\n\t\t\t\t\tPUBLISH_ON_SAVE_ENTITIES.some(\n\t\t\t\t\t\t( typeToPublish ) =>\n\t\t\t\t\t\t\ttypeToPublish.kind === kind &&\n\t\t\t\t\t\t\ttypeToPublish.name === name\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\tregistry\n\t\t\t\t\t\t.dispatch( coreStore )\n\t\t\t\t\t\t.editEntityRecord( kind, name, key, {\n\t\t\t\t\t\t\tstatus: 'publish',\n\t\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\tpendingSavedRecords.push(\n\t\t\t\t\tregistry\n\t\t\t\t\t\t.dispatch( coreStore )\n\t\t\t\t\t\t.saveEditedEntityRecord( kind, name, key )\n\t\t\t\t);\n\t\t\t}\n\t\t} );\n\t\tif ( siteItemsToSave.length ) {\n\t\t\tpendingSavedRecords.push(\n\t\t\t\tregistry\n\t\t\t\t\t.dispatch( coreStore )\n\t\t\t\t\t.__experimentalSaveSpecifiedEntityEdits(\n\t\t\t\t\t\t'root',\n\t\t\t\t\t\t'site',\n\t\t\t\t\t\tundefined,\n\t\t\t\t\t\tsiteItemsToSave\n\t\t\t\t\t)\n\t\t\t);\n\t\t}\n\t\tregistry\n\t\t\t.dispatch( blockEditorStore )\n\t\t\t.__unstableMarkLastChangeAsPersistent();\n\t\tPromise.all( pendingSavedRecords )\n\t\t\t.then( ( values ) => {\n\t\t\t\treturn onSave ? onSave( values ) : values;\n\t\t\t} )\n\t\t\t.then( ( values ) => {\n\t\t\t\tif (\n\t\t\t\t\tvalues.some( ( value ) => typeof value === 'undefined' )\n\t\t\t\t) {\n\t\t\t\t\tregistry\n\t\t\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t\t\t.createErrorNotice( __( 'Saving failed.' ) );\n\t\t\t\t} else {\n\t\t\t\t\tregistry\n\t\t\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t\t\t.createSuccessNotice(\n\t\t\t\t\t\t\tsuccessNoticeContent || __( 'Site updated.' ),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t\t\t\tid: saveNoticeId,\n\t\t\t\t\t\t\t\tactions: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tlabel: __( 'View site' ),\n\t\t\t\t\t\t\t\t\t\turl: homeUrl,\n\t\t\t\t\t\t\t\t\t\topenInNewTab: true,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t} )\n\t\t\t.catch( ( error ) =>\n\t\t\t\tregistry\n\t\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t\t.createErrorNotice(\n\t\t\t\t\t\t`${ __( 'Saving failed.' ) } ${ error }`\n\t\t\t\t\t)\n\t\t\t);\n\t};\n\n/**\n * Reverts a template to its original theme-provided file.\n *\n * @param {Object} template The template to revert.\n * @param {Object} [options]\n * @param {boolean} [options.allowUndo] Whether to allow the user to undo\n * reverting the template. Default true.\n */\nexport const revertTemplate =\n\t( template, { allowUndo = true } = {} ) =>\n\tasync ( { registry } ) => {\n\t\tconst noticeId = 'edit-site-template-reverted';\n\t\tregistry.dispatch( noticesStore ).removeNotice( noticeId );\n\t\tif ( ! isTemplateRevertable( template ) ) {\n\t\t\tregistry\n\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t.createErrorNotice( __( 'This template is not revertable.' ), {\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t} );\n\t\t\treturn;\n\t\t}\n\n\t\ttry {\n\t\t\tconst templateEntityConfig = registry\n\t\t\t\t.select( coreStore )\n\t\t\t\t.getEntityConfig( 'postType', template.type );\n\n\t\t\tif ( ! templateEntityConfig ) {\n\t\t\t\tregistry\n\t\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t\t.createErrorNotice(\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'The editor has encountered an unexpected error. Please reload.'\n\t\t\t\t\t\t),\n\t\t\t\t\t\t{ type: 'snackbar' }\n\t\t\t\t\t);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst fileTemplatePath = addQueryArgs(\n\t\t\t\t`${ templateEntityConfig.baseURL }/${ template.id }`,\n\t\t\t\t{ context: 'edit', source: template.origin }\n\t\t\t);\n\n\t\t\tconst fileTemplate = await apiFetch( { path: fileTemplatePath } );\n\t\t\tif ( ! fileTemplate ) {\n\t\t\t\tregistry\n\t\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t\t.createErrorNotice(\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'The editor has encountered an unexpected error. Please reload.'\n\t\t\t\t\t\t),\n\t\t\t\t\t\t{ type: 'snackbar' }\n\t\t\t\t\t);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst serializeBlocks = ( {\n\t\t\t\tblocks: blocksForSerialization = [],\n\t\t\t} ) => __unstableSerializeAndClean( blocksForSerialization );\n\n\t\t\tconst edited = registry\n\t\t\t\t.select( coreStore )\n\t\t\t\t.getEditedEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\ttemplate.type,\n\t\t\t\t\ttemplate.id\n\t\t\t\t);\n\n\t\t\t// We are fixing up the undo level here to make sure we can undo\n\t\t\t// the revert in the header toolbar correctly.\n\t\t\tregistry.dispatch( coreStore ).editEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\ttemplate.type,\n\t\t\t\ttemplate.id,\n\t\t\t\t{\n\t\t\t\t\tcontent: serializeBlocks, // Required to make the `undo` behave correctly.\n\t\t\t\t\tblocks: edited.blocks, // Required to revert the blocks in the editor.\n\t\t\t\t\tsource: 'custom', // required to avoid turning the editor into a dirty state\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tundoIgnore: true, // Required to merge this edit with the last undo level.\n\t\t\t\t}\n\t\t\t);\n\n\t\t\tconst blocks = parse( fileTemplate?.content?.raw );\n\t\t\tregistry\n\t\t\t\t.dispatch( coreStore )\n\t\t\t\t.editEntityRecord( 'postType', template.type, fileTemplate.id, {\n\t\t\t\t\tcontent: serializeBlocks,\n\t\t\t\t\tblocks,\n\t\t\t\t\tsource: 'theme',\n\t\t\t\t} );\n\n\t\t\tif ( allowUndo ) {\n\t\t\t\tconst undoRevert = () => {\n\t\t\t\t\tregistry\n\t\t\t\t\t\t.dispatch( coreStore )\n\t\t\t\t\t\t.editEntityRecord(\n\t\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t\ttemplate.type,\n\t\t\t\t\t\t\tedited.id,\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcontent: serializeBlocks,\n\t\t\t\t\t\t\t\tblocks: edited.blocks,\n\t\t\t\t\t\t\t\tsource: 'custom',\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t};\n\n\t\t\t\tregistry\n\t\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t\t.createSuccessNotice( __( 'Template reset.' ), {\n\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t\tid: noticeId,\n\t\t\t\t\t\tactions: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( 'Undo' ),\n\t\t\t\t\t\t\t\tonClick: undoRevert,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t} );\n\t\t\t}\n\t\t} catch ( error ) {\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __( 'Template revert failed. Please reload.' );\n\t\t\tregistry\n\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t.createErrorNotice( errorMessage, { type: 'snackbar' } );\n\t\t}\n\t};\n\n/**\n * Action that removes an array of templates, template parts or patterns.\n *\n * @param {Array} items An array of template,template part or pattern objects to remove.\n */\nexport const removeTemplates =\n\t( items ) =>\n\tasync ( { registry } ) => {\n\t\tconst isResetting = items.every( ( item ) => item?.has_theme_file );\n\n\t\tconst promiseResult = await Promise.allSettled(\n\t\t\titems.map( ( item ) => {\n\t\t\t\treturn registry\n\t\t\t\t\t.dispatch( coreStore )\n\t\t\t\t\t.deleteEntityRecord(\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\titem.type,\n\t\t\t\t\t\titem.id,\n\t\t\t\t\t\t{ force: true },\n\t\t\t\t\t\t{ throwOnError: true }\n\t\t\t\t\t);\n\t\t\t} )\n\t\t);\n\n\t\t// If all the promises were fulfilled with success.\n\t\tif ( promiseResult.every( ( { status } ) => status === 'fulfilled' ) ) {\n\t\t\tlet successMessage;\n\n\t\t\tif ( items.length === 1 ) {\n\t\t\t\t// Depending on how the entity was retrieved its title might be\n\t\t\t\t// an object or simple string.\n\t\t\t\tlet title;\n\t\t\t\tif ( typeof items[ 0 ].title === 'string' ) {\n\t\t\t\t\ttitle = items[ 0 ].title;\n\t\t\t\t} else if ( typeof items[ 0 ].title?.rendered === 'string' ) {\n\t\t\t\t\ttitle = items[ 0 ].title?.rendered;\n\t\t\t\t} else if ( typeof items[ 0 ].title?.raw === 'string' ) {\n\t\t\t\t\ttitle = items[ 0 ].title?.raw;\n\t\t\t\t}\n\t\t\t\tsuccessMessage = isResetting\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t/* translators: %s: The template/part's name. */\n\t\t\t\t\t\t\t__( '\"%s\" reset.' ),\n\t\t\t\t\t\t\tdecodeEntities( title )\n\t\t\t\t\t )\n\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t/* translators: %s: The template/part's name. */\n\t\t\t\t\t\t\t_x( '\"%s\" deleted.', 'template part' ),\n\t\t\t\t\t\t\tdecodeEntities( title )\n\t\t\t\t\t );\n\t\t\t} else {\n\t\t\t\tsuccessMessage = isResetting\n\t\t\t\t\t? __( 'Items reset.' )\n\t\t\t\t\t: __( 'Items deleted.' );\n\t\t\t}\n\n\t\t\tregistry\n\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t.createSuccessNotice( successMessage, {\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\tid: 'editor-template-deleted-success',\n\t\t\t\t} );\n\t\t} else {\n\t\t\t// If there was at lease one failure.\n\t\t\tlet errorMessage;\n\t\t\t// If we were trying to delete a single template.\n\t\t\tif ( promiseResult.length === 1 ) {\n\t\t\t\tif ( promiseResult[ 0 ].reason?.message ) {\n\t\t\t\t\terrorMessage = promiseResult[ 0 ].reason.message;\n\t\t\t\t} else {\n\t\t\t\t\terrorMessage = isResetting\n\t\t\t\t\t\t? __( 'An error occurred while reverting the item.' )\n\t\t\t\t\t\t: __( 'An error occurred while deleting the item.' );\n\t\t\t\t}\n\t\t\t\t// If we were trying to delete a multiple templates\n\t\t\t} else {\n\t\t\t\tconst errorMessages = new Set();\n\t\t\t\tconst failedPromises = promiseResult.filter(\n\t\t\t\t\t( { status } ) => status === 'rejected'\n\t\t\t\t);\n\t\t\t\tfor ( const failedPromise of failedPromises ) {\n\t\t\t\t\tif ( failedPromise.reason?.message ) {\n\t\t\t\t\t\terrorMessages.add( failedPromise.reason.message );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif ( errorMessages.size === 0 ) {\n\t\t\t\t\terrorMessage = __(\n\t\t\t\t\t\t'An error occurred while deleting the items.'\n\t\t\t\t\t);\n\t\t\t\t} else if ( errorMessages.size === 1 ) {\n\t\t\t\t\terrorMessage = isResetting\n\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: an error message */\n\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t'An error occurred while reverting the items: %s'\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t[ ...errorMessages ][ 0 ]\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: an error message */\n\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t'An error occurred while deleting the items: %s'\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t[ ...errorMessages ][ 0 ]\n\t\t\t\t\t\t );\n\t\t\t\t} else {\n\t\t\t\t\terrorMessage = isResetting\n\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: a list of comma separated error messages */\n\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t'Some errors occurred while reverting the items: %s'\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t[ ...errorMessages ].join( ',' )\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: a list of comma separated error messages */\n\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t'Some errors occurred while deleting the items: %s'\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t[ ...errorMessages ].join( ',' )\n\t\t\t\t\t\t );\n\t\t\t\t}\n\t\t\t}\n\t\t\tregistry\n\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t.createErrorNotice( errorMessage, { type: 'snackbar' } );\n\t\t}\n\t};\n\n/**\n * Set the default rendering mode preference for the current post type.\n *\n * @param {string} mode The rendering mode to set as default.\n */\nexport const setDefaultRenderingMode =\n\t( mode ) =>\n\t( { select, registry } ) => {\n\t\tconst postType = select.getCurrentPostType();\n\t\tconst theme = registry\n\t\t\t.select( coreStore )\n\t\t\t.getCurrentTheme()?.stylesheet;\n\t\tconst renderingModes =\n\t\t\tregistry\n\t\t\t\t.select( preferencesStore )\n\t\t\t\t.get( 'core', 'renderingModes' )?.[ theme ] ?? {};\n\n\t\tif ( renderingModes[ postType ] === mode ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst newModes = {\n\t\t\t[ theme ]: {\n\t\t\t\t...renderingModes,\n\t\t\t\t[ postType ]: mode,\n\t\t\t},\n\t\t};\n\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.set( 'core', 'renderingModes', newModes );\n\t};\n\n/**\n * Set the current global styles navigation path.\n *\n * @param {string} path The navigation path.\n * @return {Object} Action object.\n */\nexport function setStylesPath( path ) {\n\treturn {\n\t\ttype: 'SET_STYLES_PATH',\n\t\tpath,\n\t};\n}\n\n/**\n * Set whether the stylebook is visible.\n *\n * @param {boolean} show Whether to show the stylebook.\n * @return {Object} Action object.\n */\nexport function setShowStylebook( show ) {\n\treturn {\n\t\ttype: 'SET_SHOW_STYLEBOOK',\n\t\tshow,\n\t};\n}\n\n/**\n * Reset the global styles navigation to initial state.\n *\n * @return {Object} Action object.\n */\nexport function resetStylesNavigation() {\n\treturn {\n\t\ttype: 'RESET_STYLES_NAVIGATION',\n\t};\n}\n\n/**\n * Set the current revision ID for revisions preview mode.\n * Pass a revision ID to enter revisions mode, or null to exit.\n *\n * @param {number|null} revisionId The revision ID, or null to exit revisions mode.\n * @return {Object} Action object.\n */\nexport function setCurrentRevisionId( revisionId ) {\n\treturn {\n\t\ttype: 'SET_CURRENT_REVISION_ID',\n\t\trevisionId,\n\t};\n}\n\n/**\n * Set the current revisions page number and select the newest\n * revision on that page once it loads.\n *\n * @param {number} page The page number.\n */\nexport const setRevisionPage =\n\t( page ) =>\n\tasync ( { dispatch, select, registry } ) => {\n\t\tconst postType = select.getCurrentPostType();\n\t\tconst postId = select.getCurrentPostId();\n\t\tconst entityConfig = registry\n\t\t\t.select( coreStore )\n\t\t\t.getEntityConfig( 'postType', postType );\n\t\tconst revisionKey = entityConfig?.revisionKey || 'id';\n\n\t\tconst revisions = await registry\n\t\t\t.resolveSelect( coreStore )\n\t\t\t.getRevisions(\n\t\t\t\t'postType',\n\t\t\t\tpostType,\n\t\t\t\tpostId,\n\t\t\t\tbuildRevisionsPageQuery( revisionKey, page )\n\t\t\t);\n\n\t\tregistry.batch( () => {\n\t\t\tdispatch( { type: 'SET_REVISION_PAGE', page } );\n\t\t\tif ( revisions?.length ) {\n\t\t\t\tdispatch.setCurrentRevisionId( revisions[ 0 ][ revisionKey ] );\n\t\t\t}\n\t\t} );\n\t};\n\n/**\n * Set whether the revision diff highlighting is shown.\n *\n * @param {boolean} showDiff Whether to show diff highlighting.\n * @return {Object} Action object.\n */\nexport function setShowRevisionDiff( showDiff ) {\n\treturn {\n\t\ttype: 'SET_SHOW_REVISION_DIFF',\n\t\tshowDiff,\n\t};\n}\n\n/**\n * Restore a revision by replacing the current content with the revision's content\n * and auto-saving.\n *\n * @param {number} revisionId The revision ID to restore.\n */\nexport const restoreRevision =\n\t( revisionId ) =>\n\tasync ( { select, dispatch, registry } ) => {\n\t\tconst postType = select.getCurrentPostType();\n\t\tconst postId = select.getCurrentPostId();\n\n\t\tconst entityConfig = registry\n\t\t\t.select( coreStore )\n\t\t\t.getEntityConfig( 'postType', postType );\n\t\tconst revisionKey = entityConfig?.revisionKey || 'id';\n\n\t\t// Use resolveSelect to ensure the revision is fetched if not yet\n\t\t// in the store. The _fields parameter matches the query used by\n\t\t// getRevisions so the result is served from cache without an\n\t\t// extra API call.\n\t\tconst revision = await registry\n\t\t\t.resolveSelect( coreStore )\n\t\t\t.getRevision( 'postType', postType, postId, revisionId, {\n\t\t\t\tcontext: 'edit',\n\t\t\t\t_fields: [\n\t\t\t\t\t...new Set( [\n\t\t\t\t\t\t'id',\n\t\t\t\t\t\t'date',\n\t\t\t\t\t\t'modified',\n\t\t\t\t\t\t'author',\n\t\t\t\t\t\t'meta',\n\t\t\t\t\t\t'title.raw',\n\t\t\t\t\t\t'excerpt.raw',\n\t\t\t\t\t\t'content.raw',\n\t\t\t\t\t\trevisionKey,\n\t\t\t\t\t] ),\n\t\t\t\t].join(),\n\t\t\t} );\n\n\t\tif ( ! revision ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Build the edits object with all restorable fields from the revision.\n\t\tconst edits = {\n\t\t\tblocks: undefined,\n\t\t\tcontent: revision.content.raw,\n\t\t};\n\t\tif ( revision.title?.raw !== undefined ) {\n\t\t\tedits.title = revision.title.raw;\n\t\t}\n\t\tif ( revision.excerpt?.raw !== undefined ) {\n\t\t\tedits.excerpt = revision.excerpt.raw;\n\t\t}\n\t\tif ( revision.meta !== undefined ) {\n\t\t\tedits.meta = revision.meta;\n\t\t}\n\n\t\t// Apply edits and save.\n\t\tdispatch.editPost( edits );\n\n\t\t// Exit revisions mode.\n\t\tdispatch.setCurrentRevisionId( null );\n\n\t\t// Save the post to persist the restored revision.\n\t\tawait dispatch.savePost();\n\n\t\t// Show success notice.\n\t\tregistry.dispatch( noticesStore ).createSuccessNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: Date and time of the revision. */\n\t\t\t\t__( 'Restored to revision from %s.' ),\n\t\t\t\tdateI18n( getDateSettings().formats.datetime, revision.date )\n\t\t\t),\n\t\t\t{\n\t\t\t\ttype: 'snackbar',\n\t\t\t\tid: 'editor-revision-restored',\n\t\t\t}\n\t\t);\n\t};\n\n/**\n * Select a note by its ID, or clear the selection.\n *\n * @param {undefined|number|'new'} noteId The note ID to select, 'new' to open the new note form, or undefined to clear.\n * @param {Object} [options] Optional options for the selection.\n * @param {boolean} [options.focus] Whether to focus the selected note. Default false.\n * @return {Object} Action object.\n */\nexport function selectNote( noteId, options = { focus: false } ) {\n\treturn {\n\t\ttype: 'SELECT_NOTE',\n\t\tnoteId,\n\t\toptions,\n\t};\n}\n"],
|
|
5
|
-
"mappings": ";AAGA,SAAS,SAAS,iBAAiB;AACnC,SAAS,IAAI,IAAI,eAAe;AAChC,SAAS,SAAS,oBAAoB;AACtC,SAAS,SAAS,wBAAwB;AAC1C,SAAS,SAAS,wBAAwB;AAC1C,SAAS,oBAAoB;AAC7B,OAAO,cAAc;AACrB,SAAS,OAAO,mCAAmC;AACnD,SAAS,sBAAsB;AAC/B,SAAS,UAAU,eAAe,uBAAuB;AAKzD,OAAO,0BAA0B;AACjC,SAAS,+BAA+B;AACxC,SAAS,cAAc;AACvB,cAAc;AAEd,IAAM,gCAAgC;AAAA,EACrC,
|
|
4
|
+
"sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { addQueryArgs } from '@wordpress/url';\nimport apiFetch from '@wordpress/api-fetch';\nimport { parse, __unstableSerializeAndClean } from '@wordpress/blocks';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { dateI18n, getSettings as getDateSettings } from '@wordpress/date';\n\n/**\n * Internal dependencies\n */\nimport isTemplateRevertable from './utils/is-template-revertable';\nimport { buildRevisionsPageQuery } from './private-selectors';\nimport { unlock } from '../lock-unlock';\nexport * from '../dataviews/store/private-actions';\n\nconst DEVICE_TYPE_BY_VIEWPORT_STATE = {\n\t'@mobile': 'Mobile',\n\t'@tablet': 'Tablet',\n};\n\n/**\n * Updates the editor preview device in response to a block-editor viewport\n * state signal.\n *\n * @param {Object} options Viewport state change options.\n * @param {string} options.viewport Selected viewport state.\n * @param {boolean} options.showStateOnCanvas Whether canvas preview is enabled.\n */\nexport const updateDeviceTypeForViewportState =\n\t( { viewport = 'default', showStateOnCanvas = true } = {} ) =>\n\t( { dispatch, registry } ) => {\n\t\tif ( ! showStateOnCanvas ) {\n\t\t\treturn;\n\t\t}\n\n\t\tdispatch.setDeviceType(\n\t\t\tDEVICE_TYPE_BY_VIEWPORT_STATE[ viewport ] ?? 'Desktop'\n\t\t);\n\t\tunlock( registry.dispatch( blockEditorStore ) ).resetZoomLevel();\n\t};\n\n/**\n * Returns an action object used to set which template is currently being used/edited.\n *\n * @param {string} id Template Id.\n *\n * @return {Object} Action object.\n */\nexport function setCurrentTemplateId( id ) {\n\treturn {\n\t\ttype: 'SET_CURRENT_TEMPLATE_ID',\n\t\tid,\n\t};\n}\n\n/**\n * Create a block based template.\n *\n * @param {?Object} template Template to create and assign.\n */\nexport const createTemplate =\n\t( template ) =>\n\tasync ( { select, dispatch, registry } ) => {\n\t\tconst savedTemplate = await registry\n\t\t\t.dispatch( coreStore )\n\t\t\t.saveEntityRecord( 'postType', 'wp_template', template );\n\t\tregistry\n\t\t\t.dispatch( coreStore )\n\t\t\t.editEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tselect.getCurrentPostType(),\n\t\t\t\tselect.getCurrentPostId(),\n\t\t\t\t{\n\t\t\t\t\ttemplate: savedTemplate.slug,\n\t\t\t\t}\n\t\t\t);\n\t\tregistry\n\t\t\t.dispatch( noticesStore )\n\t\t\t.createSuccessNotice(\n\t\t\t\t__( \"Custom template created. You're in template mode now.\" ),\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\tactions: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: __( 'Go back' ),\n\t\t\t\t\t\t\tonClick: () =>\n\t\t\t\t\t\t\t\tdispatch.setRenderingMode(\n\t\t\t\t\t\t\t\t\tselect.getEditorSettings()\n\t\t\t\t\t\t\t\t\t\t.defaultRenderingMode\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t}\n\t\t\t);\n\t\treturn savedTemplate;\n\t};\n\n/**\n * Update the provided block types to be visible.\n *\n * @param {string[]} blockNames Names of block types to show.\n */\nexport const showBlockTypes =\n\t( blockNames ) =>\n\t( { registry } ) => {\n\t\tconst existingBlockNames =\n\t\t\tregistry\n\t\t\t\t.select( preferencesStore )\n\t\t\t\t.get( 'core', 'hiddenBlockTypes' ) ?? [];\n\n\t\tconst newBlockNames = existingBlockNames.filter(\n\t\t\t( type ) =>\n\t\t\t\t! (\n\t\t\t\t\tArray.isArray( blockNames ) ? blockNames : [ blockNames ]\n\t\t\t\t).includes( type )\n\t\t);\n\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.set( 'core', 'hiddenBlockTypes', newBlockNames );\n\t};\n\n/**\n * Update the provided block types to be hidden.\n *\n * @param {string[]} blockNames Names of block types to hide.\n */\nexport const hideBlockTypes =\n\t( blockNames ) =>\n\t( { registry } ) => {\n\t\tconst existingBlockNames =\n\t\t\tregistry\n\t\t\t\t.select( preferencesStore )\n\t\t\t\t.get( 'core', 'hiddenBlockTypes' ) ?? [];\n\n\t\tconst mergedBlockNames = new Set( [\n\t\t\t...existingBlockNames,\n\t\t\t...( Array.isArray( blockNames ) ? blockNames : [ blockNames ] ),\n\t\t] );\n\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.set( 'core', 'hiddenBlockTypes', [ ...mergedBlockNames ] );\n\t};\n\n/**\n * Save entity records marked as dirty.\n *\n * @param {Object} options Options for the action.\n * @param {Function} [options.onSave] Callback when saving happens.\n * @param {object[]} [options.dirtyEntityRecords] Array of dirty entities.\n * @param {object[]} [options.entitiesToSkip] Array of entities to skip saving.\n * @param {Function} [options.close] Callback when the actions is called. It should be consolidated with `onSave`.\n * @param {string} [options.successNoticeContent] Optional custom success notice content. Defaults to 'Site updated.'.\n */\nexport const saveDirtyEntities =\n\t( {\n\t\tonSave,\n\t\tdirtyEntityRecords = [],\n\t\tentitiesToSkip = [],\n\t\tclose,\n\t\tsuccessNoticeContent,\n\t} = {} ) =>\n\t( { registry } ) => {\n\t\tconst PUBLISH_ON_SAVE_ENTITIES = [\n\t\t\t{ kind: 'postType', name: 'wp_navigation' },\n\t\t];\n\t\tconst saveNoticeId = 'site-editor-save-success';\n\t\tconst homeUrl = registry\n\t\t\t.select( coreStore )\n\t\t\t.getEntityRecord( 'root', '__unstableBase' )?.home;\n\t\tregistry.dispatch( noticesStore ).removeNotice( saveNoticeId );\n\t\tconst entitiesToSave = dirtyEntityRecords.filter(\n\t\t\t( { kind, name, key, property } ) => {\n\t\t\t\treturn ! entitiesToSkip.some(\n\t\t\t\t\t( elt ) =>\n\t\t\t\t\t\telt.kind === kind &&\n\t\t\t\t\t\telt.name === name &&\n\t\t\t\t\t\telt.key === key &&\n\t\t\t\t\t\telt.property === property\n\t\t\t\t);\n\t\t\t}\n\t\t);\n\t\tclose?.( entitiesToSave );\n\t\tconst siteItemsToSave = [];\n\t\tconst pendingSavedRecords = [];\n\t\tentitiesToSave.forEach( ( { kind, name, key, property } ) => {\n\t\t\tif ( 'root' === kind && 'site' === name ) {\n\t\t\t\tsiteItemsToSave.push( property );\n\t\t\t} else {\n\t\t\t\tif (\n\t\t\t\t\tPUBLISH_ON_SAVE_ENTITIES.some(\n\t\t\t\t\t\t( typeToPublish ) =>\n\t\t\t\t\t\t\ttypeToPublish.kind === kind &&\n\t\t\t\t\t\t\ttypeToPublish.name === name\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\tregistry\n\t\t\t\t\t\t.dispatch( coreStore )\n\t\t\t\t\t\t.editEntityRecord( kind, name, key, {\n\t\t\t\t\t\t\tstatus: 'publish',\n\t\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\tpendingSavedRecords.push(\n\t\t\t\t\tregistry\n\t\t\t\t\t\t.dispatch( coreStore )\n\t\t\t\t\t\t.saveEditedEntityRecord( kind, name, key )\n\t\t\t\t);\n\t\t\t}\n\t\t} );\n\t\tif ( siteItemsToSave.length ) {\n\t\t\tpendingSavedRecords.push(\n\t\t\t\tregistry\n\t\t\t\t\t.dispatch( coreStore )\n\t\t\t\t\t.__experimentalSaveSpecifiedEntityEdits(\n\t\t\t\t\t\t'root',\n\t\t\t\t\t\t'site',\n\t\t\t\t\t\tundefined,\n\t\t\t\t\t\tsiteItemsToSave\n\t\t\t\t\t)\n\t\t\t);\n\t\t}\n\t\tregistry\n\t\t\t.dispatch( blockEditorStore )\n\t\t\t.__unstableMarkLastChangeAsPersistent();\n\t\tPromise.all( pendingSavedRecords )\n\t\t\t.then( ( values ) => {\n\t\t\t\treturn onSave ? onSave( values ) : values;\n\t\t\t} )\n\t\t\t.then( ( values ) => {\n\t\t\t\tif (\n\t\t\t\t\tvalues.some( ( value ) => typeof value === 'undefined' )\n\t\t\t\t) {\n\t\t\t\t\tregistry\n\t\t\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t\t\t.createErrorNotice( __( 'Saving failed.' ) );\n\t\t\t\t} else {\n\t\t\t\t\tregistry\n\t\t\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t\t\t.createSuccessNotice(\n\t\t\t\t\t\t\tsuccessNoticeContent || __( 'Site updated.' ),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t\t\t\tid: saveNoticeId,\n\t\t\t\t\t\t\t\tactions: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tlabel: __( 'View site' ),\n\t\t\t\t\t\t\t\t\t\turl: homeUrl,\n\t\t\t\t\t\t\t\t\t\topenInNewTab: true,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t} )\n\t\t\t.catch( ( error ) =>\n\t\t\t\tregistry\n\t\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t\t.createErrorNotice(\n\t\t\t\t\t\t`${ __( 'Saving failed.' ) } ${ error }`\n\t\t\t\t\t)\n\t\t\t);\n\t};\n\n/**\n * Reverts a template to its original theme-provided file.\n *\n * @param {Object} template The template to revert.\n * @param {Object} [options]\n * @param {boolean} [options.allowUndo] Whether to allow the user to undo\n * reverting the template. Default true.\n */\nexport const revertTemplate =\n\t( template, { allowUndo = true } = {} ) =>\n\tasync ( { registry } ) => {\n\t\tconst noticeId = 'edit-site-template-reverted';\n\t\tregistry.dispatch( noticesStore ).removeNotice( noticeId );\n\t\tif ( ! isTemplateRevertable( template ) ) {\n\t\t\tregistry\n\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t.createErrorNotice( __( 'This template is not revertable.' ), {\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t} );\n\t\t\treturn;\n\t\t}\n\n\t\ttry {\n\t\t\tconst templateEntityConfig = registry\n\t\t\t\t.select( coreStore )\n\t\t\t\t.getEntityConfig( 'postType', template.type );\n\n\t\t\tif ( ! templateEntityConfig ) {\n\t\t\t\tregistry\n\t\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t\t.createErrorNotice(\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'The editor has encountered an unexpected error. Please reload.'\n\t\t\t\t\t\t),\n\t\t\t\t\t\t{ type: 'snackbar' }\n\t\t\t\t\t);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst fileTemplatePath = addQueryArgs(\n\t\t\t\t`${ templateEntityConfig.baseURL }/${ template.id }`,\n\t\t\t\t{ context: 'edit', source: template.origin }\n\t\t\t);\n\n\t\t\tconst fileTemplate = await apiFetch( { path: fileTemplatePath } );\n\t\t\tif ( ! fileTemplate ) {\n\t\t\t\tregistry\n\t\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t\t.createErrorNotice(\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'The editor has encountered an unexpected error. Please reload.'\n\t\t\t\t\t\t),\n\t\t\t\t\t\t{ type: 'snackbar' }\n\t\t\t\t\t);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst serializeBlocks = ( {\n\t\t\t\tblocks: blocksForSerialization = [],\n\t\t\t} ) => __unstableSerializeAndClean( blocksForSerialization );\n\n\t\t\tconst edited = registry\n\t\t\t\t.select( coreStore )\n\t\t\t\t.getEditedEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\ttemplate.type,\n\t\t\t\t\ttemplate.id\n\t\t\t\t);\n\n\t\t\t// We are fixing up the undo level here to make sure we can undo\n\t\t\t// the revert in the header toolbar correctly.\n\t\t\tregistry.dispatch( coreStore ).editEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\ttemplate.type,\n\t\t\t\ttemplate.id,\n\t\t\t\t{\n\t\t\t\t\tcontent: serializeBlocks, // Required to make the `undo` behave correctly.\n\t\t\t\t\tblocks: edited.blocks, // Required to revert the blocks in the editor.\n\t\t\t\t\tsource: 'custom', // required to avoid turning the editor into a dirty state\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tundoIgnore: true, // Required to merge this edit with the last undo level.\n\t\t\t\t}\n\t\t\t);\n\n\t\t\tconst blocks = parse( fileTemplate?.content?.raw );\n\t\t\tregistry\n\t\t\t\t.dispatch( coreStore )\n\t\t\t\t.editEntityRecord( 'postType', template.type, fileTemplate.id, {\n\t\t\t\t\tcontent: serializeBlocks,\n\t\t\t\t\tblocks,\n\t\t\t\t\tsource: 'theme',\n\t\t\t\t} );\n\n\t\t\tif ( allowUndo ) {\n\t\t\t\tconst undoRevert = () => {\n\t\t\t\t\tregistry\n\t\t\t\t\t\t.dispatch( coreStore )\n\t\t\t\t\t\t.editEntityRecord(\n\t\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t\ttemplate.type,\n\t\t\t\t\t\t\tedited.id,\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcontent: serializeBlocks,\n\t\t\t\t\t\t\t\tblocks: edited.blocks,\n\t\t\t\t\t\t\t\tsource: 'custom',\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t};\n\n\t\t\t\tregistry\n\t\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t\t.createSuccessNotice( __( 'Template reset.' ), {\n\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t\tid: noticeId,\n\t\t\t\t\t\tactions: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( 'Undo' ),\n\t\t\t\t\t\t\t\tonClick: undoRevert,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t} );\n\t\t\t}\n\t\t} catch ( error ) {\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __( 'Template revert failed. Please reload.' );\n\t\t\tregistry\n\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t.createErrorNotice( errorMessage, { type: 'snackbar' } );\n\t\t}\n\t};\n\n/**\n * Action that removes an array of templates, template parts or patterns.\n *\n * @param {Array} items An array of template,template part or pattern objects to remove.\n */\nexport const removeTemplates =\n\t( items ) =>\n\tasync ( { registry } ) => {\n\t\tconst isResetting = items.every( ( item ) => item?.has_theme_file );\n\n\t\tconst promiseResult = await Promise.allSettled(\n\t\t\titems.map( ( item ) => {\n\t\t\t\treturn registry\n\t\t\t\t\t.dispatch( coreStore )\n\t\t\t\t\t.deleteEntityRecord(\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\titem.type,\n\t\t\t\t\t\titem.id,\n\t\t\t\t\t\t{ force: true },\n\t\t\t\t\t\t{ throwOnError: true }\n\t\t\t\t\t);\n\t\t\t} )\n\t\t);\n\n\t\t// If all the promises were fulfilled with success.\n\t\tif ( promiseResult.every( ( { status } ) => status === 'fulfilled' ) ) {\n\t\t\tlet successMessage;\n\n\t\t\tif ( items.length === 1 ) {\n\t\t\t\t// Depending on how the entity was retrieved its title might be\n\t\t\t\t// an object or simple string.\n\t\t\t\tlet title;\n\t\t\t\tif ( typeof items[ 0 ].title === 'string' ) {\n\t\t\t\t\ttitle = items[ 0 ].title;\n\t\t\t\t} else if ( typeof items[ 0 ].title?.rendered === 'string' ) {\n\t\t\t\t\ttitle = items[ 0 ].title?.rendered;\n\t\t\t\t} else if ( typeof items[ 0 ].title?.raw === 'string' ) {\n\t\t\t\t\ttitle = items[ 0 ].title?.raw;\n\t\t\t\t}\n\t\t\t\tsuccessMessage = isResetting\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t/* translators: %s: The template/part's name. */\n\t\t\t\t\t\t\t__( '\"%s\" reset.' ),\n\t\t\t\t\t\t\tdecodeEntities( title )\n\t\t\t\t\t )\n\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t/* translators: %s: The template/part's name. */\n\t\t\t\t\t\t\t_x( '\"%s\" deleted.', 'template part' ),\n\t\t\t\t\t\t\tdecodeEntities( title )\n\t\t\t\t\t );\n\t\t\t} else {\n\t\t\t\tsuccessMessage = isResetting\n\t\t\t\t\t? __( 'Items reset.' )\n\t\t\t\t\t: __( 'Items deleted.' );\n\t\t\t}\n\n\t\t\tregistry\n\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t.createSuccessNotice( successMessage, {\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\tid: 'editor-template-deleted-success',\n\t\t\t\t} );\n\t\t} else {\n\t\t\t// If there was at lease one failure.\n\t\t\tlet errorMessage;\n\t\t\t// If we were trying to delete a single template.\n\t\t\tif ( promiseResult.length === 1 ) {\n\t\t\t\tif ( promiseResult[ 0 ].reason?.message ) {\n\t\t\t\t\terrorMessage = promiseResult[ 0 ].reason.message;\n\t\t\t\t} else {\n\t\t\t\t\terrorMessage = isResetting\n\t\t\t\t\t\t? __( 'An error occurred while reverting the item.' )\n\t\t\t\t\t\t: __( 'An error occurred while deleting the item.' );\n\t\t\t\t}\n\t\t\t\t// If we were trying to delete a multiple templates\n\t\t\t} else {\n\t\t\t\tconst errorMessages = new Set();\n\t\t\t\tconst failedPromises = promiseResult.filter(\n\t\t\t\t\t( { status } ) => status === 'rejected'\n\t\t\t\t);\n\t\t\t\tfor ( const failedPromise of failedPromises ) {\n\t\t\t\t\tif ( failedPromise.reason?.message ) {\n\t\t\t\t\t\terrorMessages.add( failedPromise.reason.message );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif ( errorMessages.size === 0 ) {\n\t\t\t\t\terrorMessage = __(\n\t\t\t\t\t\t'An error occurred while deleting the items.'\n\t\t\t\t\t);\n\t\t\t\t} else if ( errorMessages.size === 1 ) {\n\t\t\t\t\terrorMessage = isResetting\n\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: an error message */\n\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t'An error occurred while reverting the items: %s'\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t[ ...errorMessages ][ 0 ]\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: an error message */\n\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t'An error occurred while deleting the items: %s'\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t[ ...errorMessages ][ 0 ]\n\t\t\t\t\t\t );\n\t\t\t\t} else {\n\t\t\t\t\terrorMessage = isResetting\n\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: a list of comma separated error messages */\n\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t'Some errors occurred while reverting the items: %s'\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t[ ...errorMessages ].join( ',' )\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: a list of comma separated error messages */\n\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t'Some errors occurred while deleting the items: %s'\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t[ ...errorMessages ].join( ',' )\n\t\t\t\t\t\t );\n\t\t\t\t}\n\t\t\t}\n\t\t\tregistry\n\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t.createErrorNotice( errorMessage, { type: 'snackbar' } );\n\t\t}\n\t};\n\n/**\n * Set the default rendering mode preference for the current post type.\n *\n * @param {string} mode The rendering mode to set as default.\n */\nexport const setDefaultRenderingMode =\n\t( mode ) =>\n\t( { select, registry } ) => {\n\t\tconst postType = select.getCurrentPostType();\n\t\tconst theme = registry\n\t\t\t.select( coreStore )\n\t\t\t.getCurrentTheme()?.stylesheet;\n\t\tconst renderingModes =\n\t\t\tregistry\n\t\t\t\t.select( preferencesStore )\n\t\t\t\t.get( 'core', 'renderingModes' )?.[ theme ] ?? {};\n\n\t\tif ( renderingModes[ postType ] === mode ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst newModes = {\n\t\t\t[ theme ]: {\n\t\t\t\t...renderingModes,\n\t\t\t\t[ postType ]: mode,\n\t\t\t},\n\t\t};\n\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.set( 'core', 'renderingModes', newModes );\n\t};\n\n/**\n * Set the current global styles navigation path.\n *\n * @param {string} path The navigation path.\n * @return {Object} Action object.\n */\nexport function setStylesPath( path ) {\n\treturn {\n\t\ttype: 'SET_STYLES_PATH',\n\t\tpath,\n\t};\n}\n\n/**\n * Set whether the stylebook is visible.\n *\n * @param {boolean} show Whether to show the stylebook.\n * @return {Object} Action object.\n */\nexport function setShowStylebook( show ) {\n\treturn {\n\t\ttype: 'SET_SHOW_STYLEBOOK',\n\t\tshow,\n\t};\n}\n\n/**\n * Reset the global styles navigation to initial state.\n *\n * @return {Object} Action object.\n */\nexport function resetStylesNavigation() {\n\treturn {\n\t\ttype: 'RESET_STYLES_NAVIGATION',\n\t};\n}\n\n/**\n * Set the current revision ID for revisions preview mode.\n * Pass a revision ID to enter revisions mode, or null to exit.\n *\n * @param {number|null} revisionId The revision ID, or null to exit revisions mode.\n * @return {Object} Action object.\n */\nexport function setCurrentRevisionId( revisionId ) {\n\treturn {\n\t\ttype: 'SET_CURRENT_REVISION_ID',\n\t\trevisionId,\n\t};\n}\n\n/**\n * Set the current revisions page number and select the newest\n * revision on that page once it loads.\n *\n * @param {number} page The page number.\n */\nexport const setRevisionPage =\n\t( page ) =>\n\tasync ( { dispatch, select, registry } ) => {\n\t\tconst postType = select.getCurrentPostType();\n\t\tconst postId = select.getCurrentPostId();\n\t\tconst entityConfig = registry\n\t\t\t.select( coreStore )\n\t\t\t.getEntityConfig( 'postType', postType );\n\t\tconst revisionKey = entityConfig?.revisionKey || 'id';\n\n\t\tconst revisions = await registry\n\t\t\t.resolveSelect( coreStore )\n\t\t\t.getRevisions(\n\t\t\t\t'postType',\n\t\t\t\tpostType,\n\t\t\t\tpostId,\n\t\t\t\tbuildRevisionsPageQuery( revisionKey, page )\n\t\t\t);\n\n\t\tregistry.batch( () => {\n\t\t\tdispatch( { type: 'SET_REVISION_PAGE', page } );\n\t\t\tif ( revisions?.length ) {\n\t\t\t\tdispatch.setCurrentRevisionId( revisions[ 0 ][ revisionKey ] );\n\t\t\t}\n\t\t} );\n\t};\n\n/**\n * Set whether the revision diff highlighting is shown.\n *\n * @param {boolean} showDiff Whether to show diff highlighting.\n * @return {Object} Action object.\n */\nexport function setShowRevisionDiff( showDiff ) {\n\treturn {\n\t\ttype: 'SET_SHOW_REVISION_DIFF',\n\t\tshowDiff,\n\t};\n}\n\n/**\n * Restore a revision by replacing the current content with the revision's content\n * and auto-saving.\n *\n * @param {number} revisionId The revision ID to restore.\n */\nexport const restoreRevision =\n\t( revisionId ) =>\n\tasync ( { select, dispatch, registry } ) => {\n\t\tconst postType = select.getCurrentPostType();\n\t\tconst postId = select.getCurrentPostId();\n\n\t\tconst entityConfig = registry\n\t\t\t.select( coreStore )\n\t\t\t.getEntityConfig( 'postType', postType );\n\t\tconst revisionKey = entityConfig?.revisionKey || 'id';\n\n\t\t// Use resolveSelect to ensure the revision is fetched if not yet\n\t\t// in the store. The _fields parameter matches the query used by\n\t\t// getRevisions so the result is served from cache without an\n\t\t// extra API call.\n\t\tconst revision = await registry\n\t\t\t.resolveSelect( coreStore )\n\t\t\t.getRevision( 'postType', postType, postId, revisionId, {\n\t\t\t\tcontext: 'edit',\n\t\t\t\t_fields: [\n\t\t\t\t\t...new Set( [\n\t\t\t\t\t\t'id',\n\t\t\t\t\t\t'date',\n\t\t\t\t\t\t'modified',\n\t\t\t\t\t\t'author',\n\t\t\t\t\t\t'meta',\n\t\t\t\t\t\t'title.raw',\n\t\t\t\t\t\t'excerpt.raw',\n\t\t\t\t\t\t'content.raw',\n\t\t\t\t\t\trevisionKey,\n\t\t\t\t\t] ),\n\t\t\t\t].join(),\n\t\t\t} );\n\n\t\tif ( ! revision ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Build the edits object with all restorable fields from the revision.\n\t\tconst edits = {\n\t\t\tblocks: undefined,\n\t\t\tcontent: revision.content.raw,\n\t\t};\n\t\tif ( revision.title?.raw !== undefined ) {\n\t\t\tedits.title = revision.title.raw;\n\t\t}\n\t\tif ( revision.excerpt?.raw !== undefined ) {\n\t\t\tedits.excerpt = revision.excerpt.raw;\n\t\t}\n\t\tif ( revision.meta !== undefined ) {\n\t\t\tedits.meta = revision.meta;\n\t\t}\n\n\t\t// Apply edits and save.\n\t\tdispatch.editPost( edits );\n\n\t\t// Exit revisions mode.\n\t\tdispatch.setCurrentRevisionId( null );\n\n\t\t// Save the post to persist the restored revision.\n\t\tawait dispatch.savePost();\n\n\t\t// Show success notice.\n\t\tregistry.dispatch( noticesStore ).createSuccessNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: Date and time of the revision. */\n\t\t\t\t__( 'Restored to revision from %s.' ),\n\t\t\t\tdateI18n( getDateSettings().formats.datetime, revision.date )\n\t\t\t),\n\t\t\t{\n\t\t\t\ttype: 'snackbar',\n\t\t\t\tid: 'editor-revision-restored',\n\t\t\t}\n\t\t);\n\t};\n\n/**\n * Select a note by its ID, or clear the selection.\n *\n * @param {undefined|number|'new'} noteId The note ID to select, 'new' to open the new note form, or undefined to clear.\n * @param {Object} [options] Optional options for the selection.\n * @param {boolean} [options.focus] Whether to focus the selected note. Default false.\n * @return {Object} Action object.\n */\nexport function selectNote( noteId, options = { focus: false } ) {\n\treturn {\n\t\ttype: 'SELECT_NOTE',\n\t\tnoteId,\n\t\toptions,\n\t};\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1398,7 +1398,7 @@ button.font-library__upload-area {
|
|
|
1398
1398
|
flex-grow: 1;
|
|
1399
1399
|
min-height: 0;
|
|
1400
1400
|
box-sizing: border-box;
|
|
1401
|
-
scroll-padding-bottom:
|
|
1401
|
+
scroll-padding-bottom: 64px;
|
|
1402
1402
|
/* stylelint-disable-next-line property-no-unknown -- '@container' not globally permitted */
|
|
1403
1403
|
container: dataviews-wrapper/inline-size;
|
|
1404
1404
|
display: flex;
|
|
@@ -1716,7 +1716,7 @@ button.font-library__upload-area {
|
|
|
1716
1716
|
}
|
|
1717
1717
|
|
|
1718
1718
|
.dataviews-filters__search-widget-filter-combobox-list {
|
|
1719
|
-
max-height:
|
|
1719
|
+
max-height: 184px;
|
|
1720
1720
|
padding: var(--wpds-dimension-padding-xs, 4px);
|
|
1721
1721
|
overflow: auto;
|
|
1722
1722
|
border-top: 1px solid var(--wpds-color-stroke-surface-neutral, #dbdbdb);
|
|
@@ -2490,7 +2490,7 @@ button.font-library__upload-area {
|
|
|
2490
2490
|
.dataviews-view-grid-infinite-scroll .dataviews-view-grid__fields .dataviews-view-grid__field-value:not(:empty) {
|
|
2491
2491
|
min-height: var(--wpds-dimension-size-sm, 24px);
|
|
2492
2492
|
line-height: var(--wpds-typography-line-height-sm, 20px);
|
|
2493
|
-
padding-top: calc(var(--wpds-dimension-
|
|
2493
|
+
padding-top: calc((var(--wpds-dimension-size-sm, 24px) - var(--wpds-typography-line-height-sm, 20px)) / 2);
|
|
2494
2494
|
}
|
|
2495
2495
|
|
|
2496
2496
|
.dataviews-view-grid .dataviews-view-grid__fields .dataviews-view-grid__field,
|
|
@@ -2766,8 +2766,8 @@ div.dataviews-view-list {
|
|
|
2766
2766
|
}
|
|
2767
2767
|
|
|
2768
2768
|
.dataviews-view-list .dataviews-view-list__media-wrapper {
|
|
2769
|
-
width:
|
|
2770
|
-
height:
|
|
2769
|
+
width: 48px;
|
|
2770
|
+
height: 48px;
|
|
2771
2771
|
overflow: hidden;
|
|
2772
2772
|
position: relative;
|
|
2773
2773
|
flex-shrink: 0;
|
|
@@ -2794,7 +2794,7 @@ div.dataviews-view-list {
|
|
|
2794
2794
|
}
|
|
2795
2795
|
|
|
2796
2796
|
.dataviews-view-list .dataviews-view-list__field-wrapper {
|
|
2797
|
-
min-height:
|
|
2797
|
+
min-height: 48px;
|
|
2798
2798
|
flex-grow: 1;
|
|
2799
2799
|
min-width: 0;
|
|
2800
2800
|
}
|
|
@@ -2868,12 +2868,12 @@ div.dataviews-view-list {
|
|
|
2868
2868
|
}
|
|
2869
2869
|
|
|
2870
2870
|
.dataviews-view-list.has-comfortable-density div[role=row] .dataviews-view-list__media-wrapper {
|
|
2871
|
-
width:
|
|
2872
|
-
height:
|
|
2871
|
+
width: 64px;
|
|
2872
|
+
height: 64px;
|
|
2873
2873
|
}
|
|
2874
2874
|
|
|
2875
2875
|
.dataviews-view-list.has-comfortable-density div[role=row] .dataviews-view-list__field-wrapper {
|
|
2876
|
-
min-height:
|
|
2876
|
+
min-height: 64px;
|
|
2877
2877
|
}
|
|
2878
2878
|
|
|
2879
2879
|
.dataviews-view-list.has-comfortable-density div[role=row] .dataviews-view-list__fields {
|
|
@@ -3306,7 +3306,7 @@ div.dataviews-view-list {
|
|
|
3306
3306
|
.dataviews-view-picker-grid .dataviews-view-picker-grid__fields .dataviews-view-picker-grid__field-value:not(:empty) {
|
|
3307
3307
|
min-height: var(--wpds-dimension-size-sm, 24px);
|
|
3308
3308
|
line-height: var(--wpds-typography-line-height-sm, 20px);
|
|
3309
|
-
padding-top: calc(var(--wpds-dimension-
|
|
3309
|
+
padding-top: calc((var(--wpds-dimension-size-sm, 24px) - var(--wpds-typography-line-height-sm, 20px)) / 2);
|
|
3310
3310
|
}
|
|
3311
3311
|
|
|
3312
3312
|
.dataviews-view-picker-grid .dataviews-view-picker-grid__fields .dataviews-view-picker-grid__field {
|
|
@@ -3369,7 +3369,7 @@ div.dataviews-view-list {
|
|
|
3369
3369
|
font-weight: var(--wpds-typography-font-weight-medium, 499);
|
|
3370
3370
|
color: var(--wpds-color-foreground-content-neutral, #1e1e1e);
|
|
3371
3371
|
margin: 0 0 var(--wpds-dimension-gap-sm, 8px) 0;
|
|
3372
|
-
padding: 0
|
|
3372
|
+
padding: 0 48px;
|
|
3373
3373
|
}
|
|
3374
3374
|
|
|
3375
3375
|
.dataviews-view-picker-table {
|
|
@@ -3377,7 +3377,7 @@ div.dataviews-view-list {
|
|
|
3377
3377
|
}
|
|
3378
3378
|
|
|
3379
3379
|
.dataviews-view-picker-table .dataviews-view-table__checkbox-column {
|
|
3380
|
-
width:
|
|
3380
|
+
width: 48px;
|
|
3381
3381
|
}
|
|
3382
3382
|
|
|
3383
3383
|
.dataviews-view-picker-table tbody:focus-visible[aria-activedescendant] {
|
|
@@ -3517,8 +3517,8 @@ div.dataviews-view-list {
|
|
|
3517
3517
|
}
|
|
3518
3518
|
|
|
3519
3519
|
.dataviews-view-activity .dataviews-view-activity__item.is-compact .dataviews-view-activity__item-type-icon {
|
|
3520
|
-
width: calc(var(--wpds-dimension-
|
|
3521
|
-
height: calc(var(--wpds-dimension-
|
|
3520
|
+
width: calc(var(--wpds-dimension-size-3xs, 12px) - 1px);
|
|
3521
|
+
height: calc(var(--wpds-dimension-size-3xs, 12px) - 1px);
|
|
3522
3522
|
}
|
|
3523
3523
|
|
|
3524
3524
|
.dataviews-view-activity .dataviews-view-activity__item.is-compact .dataviews-view-activity__item-content {
|
|
@@ -3534,8 +3534,8 @@ div.dataviews-view-list {
|
|
|
3534
3534
|
}
|
|
3535
3535
|
|
|
3536
3536
|
.dataviews-view-activity .dataviews-view-activity__item.is-balanced .dataviews-view-activity__item-type-icon {
|
|
3537
|
-
width: calc(var(--wpds-dimension-
|
|
3538
|
-
height: calc(var(--wpds-dimension-
|
|
3537
|
+
width: calc(var(--wpds-dimension-size-sm, 24px) + 1px);
|
|
3538
|
+
height: calc(var(--wpds-dimension-size-sm, 24px) + 1px);
|
|
3539
3539
|
}
|
|
3540
3540
|
|
|
3541
3541
|
.dataviews-view-activity .dataviews-view-activity__item.is-balanced .dataviews-view-activity__item-content {
|
|
@@ -3552,8 +3552,8 @@ div.dataviews-view-list {
|
|
|
3552
3552
|
}
|
|
3553
3553
|
|
|
3554
3554
|
.dataviews-view-activity .dataviews-view-activity__item.is-comfortable .dataviews-view-activity__item-type-icon {
|
|
3555
|
-
width: calc(var(--wpds-dimension-
|
|
3556
|
-
height: calc(var(--wpds-dimension-
|
|
3555
|
+
width: calc(var(--wpds-dimension-size-md, 32px) + 1px);
|
|
3556
|
+
height: calc(var(--wpds-dimension-size-md, 32px) + 1px);
|
|
3557
3557
|
}
|
|
3558
3558
|
|
|
3559
3559
|
.dataviews-view-activity .dataviews-view-activity__item.is-comfortable .dataviews-view-activity__item-content {
|
|
@@ -3562,8 +3562,8 @@ div.dataviews-view-list {
|
|
|
3562
3562
|
}
|
|
3563
3563
|
|
|
3564
3564
|
.dataviews-view-activity .dataviews-view-activity__item.is-comfortable .dataviews-view-activity__item-bullet, .dataviews-view-activity .dataviews-view-activity__item.is-balanced .dataviews-view-activity__item-bullet {
|
|
3565
|
-
width: calc(var(--wpds-dimension-
|
|
3566
|
-
height: calc(var(--wpds-dimension-
|
|
3565
|
+
width: calc(var(--wpds-dimension-size-4xs, 8px) + 1px);
|
|
3566
|
+
height: calc(var(--wpds-dimension-size-4xs, 8px) + 1px);
|
|
3567
3567
|
position: relative;
|
|
3568
3568
|
top: 50%;
|
|
3569
3569
|
transform: translateY(-50%);
|
|
@@ -3661,8 +3661,8 @@ div.dataviews-view-list {
|
|
|
3661
3661
|
}
|
|
3662
3662
|
|
|
3663
3663
|
.dataviews-view-picker-activity .dataviews-view-picker-activity__item.is-compact .dataviews-view-picker-activity__item-type-icon {
|
|
3664
|
-
width: calc(var(--wpds-dimension-
|
|
3665
|
-
height: calc(var(--wpds-dimension-
|
|
3664
|
+
width: calc(var(--wpds-dimension-size-3xs, 12px) - 1px);
|
|
3665
|
+
height: calc(var(--wpds-dimension-size-3xs, 12px) - 1px);
|
|
3666
3666
|
}
|
|
3667
3667
|
|
|
3668
3668
|
.dataviews-view-picker-activity .dataviews-view-picker-activity__item.is-compact .dataviews-view-picker-activity__item-content {
|
|
@@ -3678,8 +3678,8 @@ div.dataviews-view-list {
|
|
|
3678
3678
|
}
|
|
3679
3679
|
|
|
3680
3680
|
.dataviews-view-picker-activity .dataviews-view-picker-activity__item.is-balanced .dataviews-view-picker-activity__item-type-icon {
|
|
3681
|
-
width: calc(var(--wpds-dimension-
|
|
3682
|
-
height: calc(var(--wpds-dimension-
|
|
3681
|
+
width: calc(var(--wpds-dimension-size-sm, 24px) + 1px);
|
|
3682
|
+
height: calc(var(--wpds-dimension-size-sm, 24px) + 1px);
|
|
3683
3683
|
}
|
|
3684
3684
|
|
|
3685
3685
|
.dataviews-view-picker-activity .dataviews-view-picker-activity__item.is-balanced .dataviews-view-picker-activity__item-content {
|
|
@@ -3696,8 +3696,8 @@ div.dataviews-view-list {
|
|
|
3696
3696
|
}
|
|
3697
3697
|
|
|
3698
3698
|
.dataviews-view-picker-activity .dataviews-view-picker-activity__item.is-comfortable .dataviews-view-picker-activity__item-type-icon {
|
|
3699
|
-
width: calc(var(--wpds-dimension-
|
|
3700
|
-
height: calc(var(--wpds-dimension-
|
|
3699
|
+
width: calc(var(--wpds-dimension-size-md, 32px) + 1px);
|
|
3700
|
+
height: calc(var(--wpds-dimension-size-md, 32px) + 1px);
|
|
3701
3701
|
}
|
|
3702
3702
|
|
|
3703
3703
|
.dataviews-view-picker-activity .dataviews-view-picker-activity__item.is-comfortable .dataviews-view-picker-activity__item-content {
|
|
@@ -3706,8 +3706,8 @@ div.dataviews-view-list {
|
|
|
3706
3706
|
}
|
|
3707
3707
|
|
|
3708
3708
|
.dataviews-view-picker-activity .dataviews-view-picker-activity__item.is-comfortable .dataviews-view-picker-activity__item-bullet, .dataviews-view-picker-activity .dataviews-view-picker-activity__item.is-balanced .dataviews-view-picker-activity__item-bullet {
|
|
3709
|
-
width: calc(var(--wpds-dimension-
|
|
3710
|
-
height: calc(var(--wpds-dimension-
|
|
3709
|
+
width: calc(var(--wpds-dimension-size-4xs, 8px) + 1px);
|
|
3710
|
+
height: calc(var(--wpds-dimension-size-4xs, 8px) + 1px);
|
|
3711
3711
|
position: relative;
|
|
3712
3712
|
top: 50%;
|
|
3713
3713
|
transform: translateY(-50%);
|
|
@@ -3965,17 +3965,13 @@ div.dataviews-view-list {
|
|
|
3965
3965
|
position: relative;
|
|
3966
3966
|
z-index: 1;
|
|
3967
3967
|
cursor: help;
|
|
3968
|
-
|
|
3968
|
+
color: var(--wpds-color-foreground-content-error-weak, #cc1818);
|
|
3969
3969
|
display: inline-flex;
|
|
3970
3970
|
flex-direction: row;
|
|
3971
3971
|
align-items: center;
|
|
3972
3972
|
gap: var(--wpds-dimension-gap-xs, 4px);
|
|
3973
3973
|
}
|
|
3974
3974
|
|
|
3975
|
-
.dataforms-layouts-panel__field-label-error-content svg {
|
|
3976
|
-
fill: currentColor;
|
|
3977
|
-
}
|
|
3978
|
-
|
|
3979
3975
|
.dataforms-layouts-panel__field-control {
|
|
3980
3976
|
flex-grow: 1;
|
|
3981
3977
|
min-width: 0;
|