@wordpress/editor 14.1.0 → 14.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +14 -12
- package/README.md +28 -7
- package/build/components/create-template-part-modal/index.js +2 -0
- package/build/components/create-template-part-modal/index.js.map +1 -1
- package/build/components/document-bar/index.js +11 -4
- package/build/components/document-bar/index.js.map +1 -1
- package/build/components/editor-interface/index.js +5 -3
- package/build/components/editor-interface/index.js.map +1 -1
- package/build/components/entities-saved-states/entity-record-item.js +4 -12
- package/build/components/entities-saved-states/entity-record-item.js.map +1 -1
- package/build/components/global-keyboard-shortcuts/index.js +1 -1
- package/build/components/global-keyboard-shortcuts/index.js.map +1 -1
- package/build/components/global-styles-provider/index.js +6 -65
- package/build/components/global-styles-provider/index.js.map +1 -1
- package/build/components/header/index.js +6 -2
- package/build/components/header/index.js.map +1 -1
- package/build/components/index.js +10 -2
- package/build/components/index.js.map +1 -1
- package/build/components/post-actions/actions.js +321 -254
- package/build/components/post-actions/actions.js.map +1 -1
- package/build/components/post-actions/index.js +6 -1
- package/build/components/post-actions/index.js.map +1 -1
- package/build/components/post-excerpt/index.js +2 -1
- package/build/components/post-excerpt/index.js.map +1 -1
- package/build/components/post-excerpt/panel.js +2 -1
- package/build/components/post-excerpt/panel.js.map +1 -1
- package/build/components/post-slug/check.js +8 -1
- package/build/components/post-slug/check.js.map +1 -1
- package/build/components/post-slug/index.js +6 -0
- package/build/components/post-slug/index.js.map +1 -1
- package/build/components/post-status/index.js +2 -1
- package/build/components/post-status/index.js.map +1 -1
- package/build/components/post-sticky/index.js +9 -13
- package/build/components/post-sticky/index.js.map +1 -1
- package/build/components/post-template/create-new-template-modal.js +2 -0
- package/build/components/post-template/create-new-template-modal.js.map +1 -1
- package/build/components/sidebar/index.js +2 -1
- package/build/components/sidebar/index.js.map +1 -1
- package/build/components/sidebar/post-summary.js +1 -2
- package/build/components/sidebar/post-summary.js.map +1 -1
- package/build/components/template-part-content-panel/index.js +70 -0
- package/build/components/template-part-content-panel/index.js.map +1 -0
- package/build/hooks/pattern-overrides.js +1 -1
- package/build/hooks/pattern-overrides.js.map +1 -1
- package/build/lock-unlock.js +1 -1
- package/build/lock-unlock.js.map +1 -1
- package/build/store/private-actions.js +9 -5
- package/build/store/private-actions.js.map +1 -1
- package/build-module/components/create-template-part-modal/index.js +2 -0
- package/build-module/components/create-template-part-modal/index.js.map +1 -1
- package/build-module/components/document-bar/index.js +11 -4
- package/build-module/components/document-bar/index.js.map +1 -1
- package/build-module/components/editor-interface/index.js +5 -3
- package/build-module/components/editor-interface/index.js.map +1 -1
- package/build-module/components/entities-saved-states/entity-record-item.js +6 -14
- package/build-module/components/entities-saved-states/entity-record-item.js.map +1 -1
- package/build-module/components/global-keyboard-shortcuts/index.js +1 -1
- package/build-module/components/global-keyboard-shortcuts/index.js.map +1 -1
- package/build-module/components/global-styles-provider/index.js +7 -66
- package/build-module/components/global-styles-provider/index.js.map +1 -1
- package/build-module/components/header/index.js +6 -2
- package/build-module/components/header/index.js.map +1 -1
- package/build-module/components/index.js +11 -2
- package/build-module/components/index.js.map +1 -1
- package/build-module/components/post-actions/actions.js +322 -255
- package/build-module/components/post-actions/actions.js.map +1 -1
- package/build-module/components/post-actions/index.js +6 -1
- package/build-module/components/post-actions/index.js.map +1 -1
- package/build-module/components/post-excerpt/index.js +2 -1
- package/build-module/components/post-excerpt/index.js.map +1 -1
- package/build-module/components/post-excerpt/panel.js +2 -1
- package/build-module/components/post-excerpt/panel.js.map +1 -1
- package/build-module/components/post-slug/check.js +9 -0
- package/build-module/components/post-slug/check.js.map +1 -1
- package/build-module/components/post-slug/index.js +6 -0
- package/build-module/components/post-slug/index.js.map +1 -1
- package/build-module/components/post-status/index.js +2 -1
- package/build-module/components/post-status/index.js.map +1 -1
- package/build-module/components/post-sticky/index.js +10 -14
- package/build-module/components/post-sticky/index.js.map +1 -1
- package/build-module/components/post-template/create-new-template-modal.js +2 -0
- package/build-module/components/post-template/create-new-template-modal.js.map +1 -1
- package/build-module/components/sidebar/index.js +2 -1
- package/build-module/components/sidebar/index.js.map +1 -1
- package/build-module/components/sidebar/post-summary.js +1 -2
- package/build-module/components/sidebar/post-summary.js.map +1 -1
- package/build-module/components/template-part-content-panel/index.js +63 -0
- package/build-module/components/template-part-content-panel/index.js.map +1 -0
- package/build-module/hooks/pattern-overrides.js +1 -1
- package/build-module/hooks/pattern-overrides.js.map +1 -1
- package/build-module/lock-unlock.js +1 -1
- package/build-module/lock-unlock.js.map +1 -1
- package/build-module/store/private-actions.js +9 -5
- package/build-module/store/private-actions.js.map +1 -1
- package/build-style/style-rtl.css +11 -23
- package/build-style/style.css +11 -23
- package/package.json +35 -35
- package/src/components/create-template-part-modal/index.js +2 -0
- package/src/components/create-template-part-modal/style.scss +0 -6
- package/src/components/document-bar/index.js +11 -4
- package/src/components/editor-interface/index.js +14 -8
- package/src/components/entities-saved-states/entity-record-item.js +4 -14
- package/src/components/entities-saved-states/style.scss +0 -13
- package/src/components/global-keyboard-shortcuts/index.js +1 -1
- package/src/components/global-styles-provider/index.js +7 -90
- package/src/components/header/index.js +2 -1
- package/src/components/index.js +11 -2
- package/src/components/post-actions/actions.js +443 -374
- package/src/components/post-actions/index.js +3 -1
- package/src/components/post-card-panel/style.scss +1 -0
- package/src/components/post-excerpt/index.js +4 -1
- package/src/components/post-excerpt/panel.js +2 -1
- package/src/components/post-publish-panel/style.scss +1 -1
- package/src/components/post-slug/check.js +8 -0
- package/src/components/post-slug/index.js +5 -0
- package/src/components/post-status/index.js +2 -0
- package/src/components/post-sticky/index.js +10 -13
- package/src/components/post-sticky/style.scss +3 -2
- package/src/components/post-template/create-new-template-modal.js +2 -0
- package/src/components/post-url/style.scss +4 -0
- package/src/components/sidebar/index.js +2 -0
- package/src/components/sidebar/post-summary.js +0 -2
- package/src/components/template-part-content-panel/index.js +62 -0
- package/src/components/visual-editor/style.scss +2 -0
- package/src/hooks/pattern-overrides.js +2 -3
- package/src/lock-unlock.js +1 -1
- package/src/store/private-actions.js +54 -21
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -254,6 +254,7 @@ export const revertTemplate = (template, {
|
|
|
254
254
|
export const removeTemplates = items => async ({
|
|
255
255
|
registry
|
|
256
256
|
}) => {
|
|
257
|
+
const isResetting = items.every(item => !!item && (item.has_theme_file || item.templatePart && item.templatePart.has_theme_file));
|
|
257
258
|
const promiseResult = await Promise.allSettled(items.map(item => {
|
|
258
259
|
return registry.dispatch(coreStore).deleteEntityRecord('postType', item.type, item.id, {
|
|
259
260
|
force: true
|
|
@@ -271,10 +272,11 @@ export const removeTemplates = items => async ({
|
|
|
271
272
|
// Depending on how the entity was retrieved its title might be
|
|
272
273
|
// an object or simple string.
|
|
273
274
|
const title = typeof items[0].title === 'string' ? items[0].title : items[0].title?.rendered;
|
|
274
|
-
successMessage = sprintf( /* translators: The template/part's name. */
|
|
275
|
+
successMessage = isResetting ? sprintf( /* translators: The template/part's name. */
|
|
276
|
+
__('"%s" reset.'), decodeEntities(title)) : sprintf( /* translators: The template/part's name. */
|
|
275
277
|
__('"%s" deleted.'), decodeEntities(title));
|
|
276
278
|
} else {
|
|
277
|
-
successMessage = __('Items deleted.');
|
|
279
|
+
successMessage = isResetting ? __('Items reset.') : __('Items deleted.');
|
|
278
280
|
}
|
|
279
281
|
registry.dispatch(noticesStore).createSuccessNotice(successMessage, {
|
|
280
282
|
type: 'snackbar',
|
|
@@ -288,7 +290,7 @@ export const removeTemplates = items => async ({
|
|
|
288
290
|
if (promiseResult[0].reason?.message) {
|
|
289
291
|
errorMessage = promiseResult[0].reason.message;
|
|
290
292
|
} else {
|
|
291
|
-
errorMessage = __('An error occurred while deleting the item.');
|
|
293
|
+
errorMessage = isResetting ? __('An error occurred while reverting the item.') : __('An error occurred while deleting the item.');
|
|
292
294
|
}
|
|
293
295
|
// If we were trying to delete a multiple templates
|
|
294
296
|
} else {
|
|
@@ -304,10 +306,12 @@ export const removeTemplates = items => async ({
|
|
|
304
306
|
if (errorMessages.size === 0) {
|
|
305
307
|
errorMessage = __('An error occurred while deleting the items.');
|
|
306
308
|
} else if (errorMessages.size === 1) {
|
|
307
|
-
errorMessage = sprintf( /* translators: %s: an error message */
|
|
309
|
+
errorMessage = isResetting ? sprintf( /* translators: %s: an error message */
|
|
310
|
+
__('An error occurred while reverting the items: %s'), [...errorMessages][0]) : sprintf( /* translators: %s: an error message */
|
|
308
311
|
__('An error occurred while deleting the items: %s'), [...errorMessages][0]);
|
|
309
312
|
} else {
|
|
310
|
-
sprintf( /* translators: %s: a list of comma separated error messages */
|
|
313
|
+
errorMessage = isResetting ? sprintf( /* translators: %s: a list of comma separated error messages */
|
|
314
|
+
__('Some errors occurred while reverting the items: %s'), [...errorMessages].join(',')) : sprintf( /* translators: %s: a list of comma separated error messages */
|
|
311
315
|
__('Some errors occurred while deleting the items: %s'), [...errorMessages].join(','));
|
|
312
316
|
}
|
|
313
317
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["store","coreStore","__","sprintf","noticesStore","blockEditorStore","preferencesStore","addQueryArgs","apiFetch","parse","__unstableSerializeAndClean","decodeEntities","isTemplateRevertable","setCurrentTemplateId","id","type","createTemplate","template","select","dispatch","registry","savedTemplate","saveEntityRecord","editEntityRecord","getCurrentPostType","getCurrentPostId","slug","createSuccessNotice","actions","label","onClick","setRenderingMode","getEditorSettings","defaultRenderingMode","showBlockTypes","blockNames","_registry$select$get","existingBlockNames","get","newBlockNames","filter","Array","isArray","includes","set","hideBlockTypes","_registry$select$get2","mergedBlockNames","Set","saveDirtyEntities","onSave","dirtyEntityRecords","entitiesToSkip","close","PUBLISH_ON_SAVE_ENTITIES","kind","name","saveNoticeId","homeUrl","getUnstableBase","home","removeNotice","entitiesToSave","key","property","some","elt","siteItemsToSave","pendingSavedRecords","forEach","push","typeToPublish","status","saveEditedEntityRecord","length","__experimentalSaveSpecifiedEntityEdits","undefined","__unstableMarkLastChangeAsPersistent","Promise","all","then","values","value","createErrorNotice","url","catch","error","revertTemplate","allowUndo","noticeId","templateEntityConfig","getEntityConfig","fileTemplatePath","baseURL","context","source","fileTemplate","path","serializeBlocks","blocks","blocksForSerialization","edited","getEditedEntityRecord","content","undoIgnore","raw","undoRevert","errorMessage","message","code","removeTemplates","items","promiseResult","allSettled","map","item","deleteEntityRecord","force","throwOnError","every","successMessage","title","rendered","reason","errorMessages","failedPromises","failedPromise","add","size","join"],"sources":["@wordpress/editor/src/store/private-actions.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __, 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';\n\n/**\n * Internal dependencies\n */\nimport isTemplateRevertable from './utils/is-template-revertable';\nexport * from '../dataviews/store/private-actions';\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 */\nexport const saveDirtyEntities =\n\t( { onSave, dirtyEntityRecords = [], entitiesToSkip = [], close } = {} ) =>\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.select( coreStore ).getUnstableBase()?.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( __( 'Site updated.' ), {\n\t\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t\t\tid: saveNoticeId,\n\t\t\t\t\t\t\tactions: [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tlabel: __( 'View site' ),\n\t\t\t\t\t\t\t\t\turl: homeUrl,\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: 'theme' }\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 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 sucess.\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\tconst title =\n\t\t\t\t\ttypeof items[ 0 ].title === 'string'\n\t\t\t\t\t\t? items[ 0 ].title\n\t\t\t\t\t\t: items[ 0 ].title?.rendered;\n\t\t\t\tsuccessMessage = sprintf(\n\t\t\t\t\t/* translators: The template/part's name. */\n\t\t\t\t\t__( '\"%s\" deleted.' ),\n\t\t\t\t\tdecodeEntities( title )\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tsuccessMessage = __( '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 = __(\n\t\t\t\t\t\t'An error occurred while deleting the item.'\n\t\t\t\t\t);\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 = sprintf(\n\t\t\t\t\t\t/* translators: %s: an error message */\n\t\t\t\t\t\t__( 'An error occurred while deleting the items: %s' ),\n\t\t\t\t\t\t[ ...errorMessages ][ 0 ]\n\t\t\t\t\t);\n\t\t\t\t} else {\n\t\t\t\t\tsprintf(\n\t\t\t\t\t\t/* translators: %s: a list of comma separated error messages */\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'Some errors occurred while deleting the items: %s'\n\t\t\t\t\t\t),\n\t\t\t\t\t\t[ ...errorMessages ].join( ',' )\n\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"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["store","coreStore","__","sprintf","noticesStore","blockEditorStore","preferencesStore","addQueryArgs","apiFetch","parse","__unstableSerializeAndClean","decodeEntities","isTemplateRevertable","setCurrentTemplateId","id","type","createTemplate","template","select","dispatch","registry","savedTemplate","saveEntityRecord","editEntityRecord","getCurrentPostType","getCurrentPostId","slug","createSuccessNotice","actions","label","onClick","setRenderingMode","getEditorSettings","defaultRenderingMode","showBlockTypes","blockNames","_registry$select$get","existingBlockNames","get","newBlockNames","filter","Array","isArray","includes","set","hideBlockTypes","_registry$select$get2","mergedBlockNames","Set","saveDirtyEntities","onSave","dirtyEntityRecords","entitiesToSkip","close","PUBLISH_ON_SAVE_ENTITIES","kind","name","saveNoticeId","homeUrl","getUnstableBase","home","removeNotice","entitiesToSave","key","property","some","elt","siteItemsToSave","pendingSavedRecords","forEach","push","typeToPublish","status","saveEditedEntityRecord","length","__experimentalSaveSpecifiedEntityEdits","undefined","__unstableMarkLastChangeAsPersistent","Promise","all","then","values","value","createErrorNotice","url","catch","error","revertTemplate","allowUndo","noticeId","templateEntityConfig","getEntityConfig","fileTemplatePath","baseURL","context","source","fileTemplate","path","serializeBlocks","blocks","blocksForSerialization","edited","getEditedEntityRecord","content","undoIgnore","raw","undoRevert","errorMessage","message","code","removeTemplates","items","isResetting","every","item","has_theme_file","templatePart","promiseResult","allSettled","map","deleteEntityRecord","force","throwOnError","successMessage","title","rendered","reason","errorMessages","failedPromises","failedPromise","add","size","join"],"sources":["@wordpress/editor/src/store/private-actions.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __, 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';\n\n/**\n * Internal dependencies\n */\nimport isTemplateRevertable from './utils/is-template-revertable';\nexport * from '../dataviews/store/private-actions';\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 */\nexport const saveDirtyEntities =\n\t( { onSave, dirtyEntityRecords = [], entitiesToSkip = [], close } = {} ) =>\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.select( coreStore ).getUnstableBase()?.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( __( 'Site updated.' ), {\n\t\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t\t\tid: saveNoticeId,\n\t\t\t\t\t\t\tactions: [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tlabel: __( 'View site' ),\n\t\t\t\t\t\t\t\t\turl: homeUrl,\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: 'theme' }\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(\n\t\t\t( item ) =>\n\t\t\t\t!! item &&\n\t\t\t\t( item.has_theme_file ||\n\t\t\t\t\t( item.templatePart && item.templatePart.has_theme_file ) )\n\t\t);\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 sucess.\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\tconst title =\n\t\t\t\t\ttypeof items[ 0 ].title === 'string'\n\t\t\t\t\t\t? items[ 0 ].title\n\t\t\t\t\t\t: items[ 0 ].title?.rendered;\n\t\t\t\tsuccessMessage = isResetting\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t/* translators: 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: The template/part's name. */\n\t\t\t\t\t\t\t__( '\"%s\" deleted.' ),\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"],"mappings":"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","ignoreList":[]}
|
|
@@ -645,11 +645,6 @@ body.is-fullscreen-mode .interface-interface-skeleton {
|
|
|
645
645
|
.editor-create-template-part-modal {
|
|
646
646
|
z-index: 1000001;
|
|
647
647
|
}
|
|
648
|
-
@media (min-width: 600px) {
|
|
649
|
-
.editor-create-template-part-modal .components-modal__frame {
|
|
650
|
-
max-width: 500px;
|
|
651
|
-
}
|
|
652
|
-
}
|
|
653
648
|
|
|
654
649
|
.editor-create-template-part-modal__area-radio-group {
|
|
655
650
|
width: 100%;
|
|
@@ -1019,19 +1014,6 @@ body.is-fullscreen-mode .interface-interface-skeleton {
|
|
|
1019
1014
|
margin-bottom: 4px;
|
|
1020
1015
|
}
|
|
1021
1016
|
|
|
1022
|
-
.entities-saved-states__post-meta {
|
|
1023
|
-
margin-right: 24px;
|
|
1024
|
-
align-items: center;
|
|
1025
|
-
}
|
|
1026
|
-
|
|
1027
|
-
.entities-saved-states__connections-icon {
|
|
1028
|
-
flex-grow: 0;
|
|
1029
|
-
}
|
|
1030
|
-
|
|
1031
|
-
.entities-saved-states__bindings-text {
|
|
1032
|
-
flex-grow: 1;
|
|
1033
|
-
}
|
|
1034
|
-
|
|
1035
1017
|
.editor-error-boundary {
|
|
1036
1018
|
margin: auto;
|
|
1037
1019
|
max-width: 780px;
|
|
@@ -1469,6 +1451,7 @@ body.is-fullscreen-mode .interface-interface-skeleton {
|
|
|
1469
1451
|
flex-wrap: wrap;
|
|
1470
1452
|
column-gap: 8px;
|
|
1471
1453
|
row-gap: 4px;
|
|
1454
|
+
word-break: break-word;
|
|
1472
1455
|
}
|
|
1473
1456
|
.editor-post-card-panel__icon {
|
|
1474
1457
|
flex: 0 0 24px;
|
|
@@ -1897,7 +1880,7 @@ body.is-fullscreen-mode .interface-interface-skeleton {
|
|
|
1897
1880
|
position: fixed;
|
|
1898
1881
|
z-index: 100001;
|
|
1899
1882
|
background: #fff;
|
|
1900
|
-
top:
|
|
1883
|
+
top: 46px;
|
|
1901
1884
|
bottom: 0;
|
|
1902
1885
|
left: 0;
|
|
1903
1886
|
right: 0;
|
|
@@ -2020,8 +2003,9 @@ body.is-fullscreen-mode .interface-interface-skeleton {
|
|
|
2020
2003
|
margin-top: 4px;
|
|
2021
2004
|
}
|
|
2022
2005
|
|
|
2023
|
-
.editor-post-
|
|
2024
|
-
|
|
2006
|
+
.editor-post-sticky__checkbox-control {
|
|
2007
|
+
border-top: 1px solid #e0e0e0;
|
|
2008
|
+
padding-top: 16px;
|
|
2025
2009
|
}
|
|
2026
2010
|
|
|
2027
2011
|
.editor-post-sync-status__value {
|
|
@@ -2183,6 +2167,10 @@ textarea.editor-post-text-editor:-ms-input-placeholder {
|
|
|
2183
2167
|
padding-inline-start: 0 !important;
|
|
2184
2168
|
}
|
|
2185
2169
|
|
|
2170
|
+
.editor-post-url__panel-toggle {
|
|
2171
|
+
word-break: break-word;
|
|
2172
|
+
}
|
|
2173
|
+
|
|
2186
2174
|
.editor-post-visibility__fieldset .editor-post-visibility__radio[type=radio] {
|
|
2187
2175
|
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
|
|
2188
2176
|
padding: 6px 8px;
|
|
@@ -2346,8 +2334,7 @@ textarea.editor-post-text-editor:-ms-input-placeholder {
|
|
|
2346
2334
|
padding: 0;
|
|
2347
2335
|
margin: auto 0;
|
|
2348
2336
|
width: 12px;
|
|
2349
|
-
|
|
2350
|
-
appearance: none;
|
|
2337
|
+
appearance: none;
|
|
2351
2338
|
cursor: ew-resize;
|
|
2352
2339
|
outline: none;
|
|
2353
2340
|
background: none;
|
|
@@ -2661,6 +2648,7 @@ h3.components-heading.editor-template-areas__title {
|
|
|
2661
2648
|
height: 100%;
|
|
2662
2649
|
display: block;
|
|
2663
2650
|
background-color: #ddd;
|
|
2651
|
+
isolation: isolate;
|
|
2664
2652
|
align-items: center;
|
|
2665
2653
|
}
|
|
2666
2654
|
.editor-visual-editor.is-resizable {
|
package/build-style/style.css
CHANGED
|
@@ -645,11 +645,6 @@ body.is-fullscreen-mode .interface-interface-skeleton {
|
|
|
645
645
|
.editor-create-template-part-modal {
|
|
646
646
|
z-index: 1000001;
|
|
647
647
|
}
|
|
648
|
-
@media (min-width: 600px) {
|
|
649
|
-
.editor-create-template-part-modal .components-modal__frame {
|
|
650
|
-
max-width: 500px;
|
|
651
|
-
}
|
|
652
|
-
}
|
|
653
648
|
|
|
654
649
|
.editor-create-template-part-modal__area-radio-group {
|
|
655
650
|
width: 100%;
|
|
@@ -1019,19 +1014,6 @@ body.is-fullscreen-mode .interface-interface-skeleton {
|
|
|
1019
1014
|
margin-bottom: 4px;
|
|
1020
1015
|
}
|
|
1021
1016
|
|
|
1022
|
-
.entities-saved-states__post-meta {
|
|
1023
|
-
margin-left: 24px;
|
|
1024
|
-
align-items: center;
|
|
1025
|
-
}
|
|
1026
|
-
|
|
1027
|
-
.entities-saved-states__connections-icon {
|
|
1028
|
-
flex-grow: 0;
|
|
1029
|
-
}
|
|
1030
|
-
|
|
1031
|
-
.entities-saved-states__bindings-text {
|
|
1032
|
-
flex-grow: 1;
|
|
1033
|
-
}
|
|
1034
|
-
|
|
1035
1017
|
.editor-error-boundary {
|
|
1036
1018
|
margin: auto;
|
|
1037
1019
|
max-width: 780px;
|
|
@@ -1469,6 +1451,7 @@ body.is-fullscreen-mode .interface-interface-skeleton {
|
|
|
1469
1451
|
flex-wrap: wrap;
|
|
1470
1452
|
column-gap: 8px;
|
|
1471
1453
|
row-gap: 4px;
|
|
1454
|
+
word-break: break-word;
|
|
1472
1455
|
}
|
|
1473
1456
|
.editor-post-card-panel__icon {
|
|
1474
1457
|
flex: 0 0 24px;
|
|
@@ -1897,7 +1880,7 @@ body.is-fullscreen-mode .interface-interface-skeleton {
|
|
|
1897
1880
|
position: fixed;
|
|
1898
1881
|
z-index: 100001;
|
|
1899
1882
|
background: #fff;
|
|
1900
|
-
top:
|
|
1883
|
+
top: 46px;
|
|
1901
1884
|
bottom: 0;
|
|
1902
1885
|
right: 0;
|
|
1903
1886
|
left: 0;
|
|
@@ -2020,8 +2003,9 @@ body.is-fullscreen-mode .interface-interface-skeleton {
|
|
|
2020
2003
|
margin-top: 4px;
|
|
2021
2004
|
}
|
|
2022
2005
|
|
|
2023
|
-
.editor-post-
|
|
2024
|
-
|
|
2006
|
+
.editor-post-sticky__checkbox-control {
|
|
2007
|
+
border-top: 1px solid #e0e0e0;
|
|
2008
|
+
padding-top: 16px;
|
|
2025
2009
|
}
|
|
2026
2010
|
|
|
2027
2011
|
.editor-post-sync-status__value {
|
|
@@ -2187,6 +2171,10 @@ textarea.editor-post-text-editor:-ms-input-placeholder {
|
|
|
2187
2171
|
padding-inline-start: 0 !important;
|
|
2188
2172
|
}
|
|
2189
2173
|
|
|
2174
|
+
.editor-post-url__panel-toggle {
|
|
2175
|
+
word-break: break-word;
|
|
2176
|
+
}
|
|
2177
|
+
|
|
2190
2178
|
.editor-post-visibility__fieldset .editor-post-visibility__radio[type=radio] {
|
|
2191
2179
|
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
|
|
2192
2180
|
padding: 6px 8px;
|
|
@@ -2350,8 +2338,7 @@ textarea.editor-post-text-editor:-ms-input-placeholder {
|
|
|
2350
2338
|
padding: 0;
|
|
2351
2339
|
margin: auto 0;
|
|
2352
2340
|
width: 12px;
|
|
2353
|
-
|
|
2354
|
-
appearance: none;
|
|
2341
|
+
appearance: none;
|
|
2355
2342
|
cursor: ew-resize;
|
|
2356
2343
|
outline: none;
|
|
2357
2344
|
background: none;
|
|
@@ -2665,6 +2652,7 @@ h3.components-heading.editor-template-areas__title {
|
|
|
2665
2652
|
height: 100%;
|
|
2666
2653
|
display: block;
|
|
2667
2654
|
background-color: #ddd;
|
|
2655
|
+
isolation: isolate;
|
|
2668
2656
|
align-items: center;
|
|
2669
2657
|
}
|
|
2670
2658
|
.editor-visual-editor.is-resizable {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wordpress/editor",
|
|
3
|
-
"version": "14.
|
|
3
|
+
"version": "14.2.0",
|
|
4
4
|
"description": "Enhanced block editor for WordPress posts.",
|
|
5
5
|
"author": "The WordPress Contributors",
|
|
6
6
|
"license": "GPL-2.0-or-later",
|
|
@@ -32,39 +32,39 @@
|
|
|
32
32
|
],
|
|
33
33
|
"dependencies": {
|
|
34
34
|
"@babel/runtime": "^7.16.0",
|
|
35
|
-
"@wordpress/a11y": "^4.
|
|
36
|
-
"@wordpress/api-fetch": "^7.
|
|
37
|
-
"@wordpress/blob": "^4.
|
|
38
|
-
"@wordpress/block-editor": "^13.
|
|
39
|
-
"@wordpress/blocks": "^13.
|
|
40
|
-
"@wordpress/commands": "^1.
|
|
41
|
-
"@wordpress/components": "^28.
|
|
42
|
-
"@wordpress/compose": "^7.
|
|
43
|
-
"@wordpress/core-data": "^7.
|
|
44
|
-
"@wordpress/data": "^10.
|
|
45
|
-
"@wordpress/date": "^5.
|
|
46
|
-
"@wordpress/deprecated": "^4.
|
|
47
|
-
"@wordpress/dom": "^4.
|
|
48
|
-
"@wordpress/element": "^6.
|
|
49
|
-
"@wordpress/hooks": "^4.
|
|
50
|
-
"@wordpress/html-entities": "^4.
|
|
51
|
-
"@wordpress/i18n": "^5.
|
|
52
|
-
"@wordpress/icons": "^10.
|
|
53
|
-
"@wordpress/interface": "^6.
|
|
54
|
-
"@wordpress/keyboard-shortcuts": "^5.
|
|
55
|
-
"@wordpress/keycodes": "^4.
|
|
56
|
-
"@wordpress/media-utils": "^5.
|
|
57
|
-
"@wordpress/notices": "^5.
|
|
58
|
-
"@wordpress/patterns": "^2.
|
|
59
|
-
"@wordpress/plugins": "^7.
|
|
60
|
-
"@wordpress/preferences": "^4.
|
|
61
|
-
"@wordpress/private-apis": "^1.
|
|
62
|
-
"@wordpress/reusable-blocks": "^5.
|
|
63
|
-
"@wordpress/rich-text": "^7.
|
|
64
|
-
"@wordpress/server-side-render": "^5.
|
|
65
|
-
"@wordpress/url": "^4.
|
|
66
|
-
"@wordpress/warning": "^3.
|
|
67
|
-
"@wordpress/wordcount": "^4.
|
|
35
|
+
"@wordpress/a11y": "^4.2.0",
|
|
36
|
+
"@wordpress/api-fetch": "^7.2.0",
|
|
37
|
+
"@wordpress/blob": "^4.2.0",
|
|
38
|
+
"@wordpress/block-editor": "^13.2.0",
|
|
39
|
+
"@wordpress/blocks": "^13.2.0",
|
|
40
|
+
"@wordpress/commands": "^1.2.0",
|
|
41
|
+
"@wordpress/components": "^28.2.0",
|
|
42
|
+
"@wordpress/compose": "^7.2.0",
|
|
43
|
+
"@wordpress/core-data": "^7.2.0",
|
|
44
|
+
"@wordpress/data": "^10.2.0",
|
|
45
|
+
"@wordpress/date": "^5.2.0",
|
|
46
|
+
"@wordpress/deprecated": "^4.2.0",
|
|
47
|
+
"@wordpress/dom": "^4.2.0",
|
|
48
|
+
"@wordpress/element": "^6.2.0",
|
|
49
|
+
"@wordpress/hooks": "^4.2.0",
|
|
50
|
+
"@wordpress/html-entities": "^4.2.0",
|
|
51
|
+
"@wordpress/i18n": "^5.2.0",
|
|
52
|
+
"@wordpress/icons": "^10.2.0",
|
|
53
|
+
"@wordpress/interface": "^6.2.0",
|
|
54
|
+
"@wordpress/keyboard-shortcuts": "^5.2.0",
|
|
55
|
+
"@wordpress/keycodes": "^4.2.0",
|
|
56
|
+
"@wordpress/media-utils": "^5.2.0",
|
|
57
|
+
"@wordpress/notices": "^5.2.0",
|
|
58
|
+
"@wordpress/patterns": "^2.2.0",
|
|
59
|
+
"@wordpress/plugins": "^7.2.0",
|
|
60
|
+
"@wordpress/preferences": "^4.2.0",
|
|
61
|
+
"@wordpress/private-apis": "^1.2.0",
|
|
62
|
+
"@wordpress/reusable-blocks": "^5.2.0",
|
|
63
|
+
"@wordpress/rich-text": "^7.2.0",
|
|
64
|
+
"@wordpress/server-side-render": "^5.2.0",
|
|
65
|
+
"@wordpress/url": "^4.2.0",
|
|
66
|
+
"@wordpress/warning": "^3.2.0",
|
|
67
|
+
"@wordpress/wordcount": "^4.2.0",
|
|
68
68
|
"change-case": "^4.1.2",
|
|
69
69
|
"client-zip": "^2.4.5",
|
|
70
70
|
"clsx": "^2.1.1",
|
|
@@ -83,5 +83,5 @@
|
|
|
83
83
|
"publishConfig": {
|
|
84
84
|
"access": "public"
|
|
85
85
|
},
|
|
86
|
-
"gitHead": "
|
|
86
|
+
"gitHead": "aa5b14bb5bdbb8d8a02914e154c3bc1c2f18ace6"
|
|
87
87
|
}
|
|
@@ -53,6 +53,8 @@ export default function CreateTemplatePartModal( {
|
|
|
53
53
|
title={ modalTitle || defaultModalTitle }
|
|
54
54
|
onRequestClose={ restProps.closeModal }
|
|
55
55
|
overlayClassName="editor-create-template-part-modal"
|
|
56
|
+
focusOnMount="firstContentElement"
|
|
57
|
+
size="medium"
|
|
56
58
|
>
|
|
57
59
|
<CreateTemplatePartModalContents { ...restProps } />
|
|
58
60
|
</Modal>
|
|
@@ -52,10 +52,15 @@ const MotionButton = motion( Button );
|
|
|
52
52
|
* ```jsx
|
|
53
53
|
* <DocumentBar />
|
|
54
54
|
* ```
|
|
55
|
+
* @param {Object} props The component props.
|
|
56
|
+
* @param {string} props.title A title for the document, defaulting to the document or
|
|
57
|
+
* template title currently being edited.
|
|
58
|
+
* @param {import("@wordpress/components").IconType} props.icon An icon for the document, defaulting to an icon for document
|
|
59
|
+
* or template currently being edited.
|
|
55
60
|
*
|
|
56
61
|
* @return {JSX.Element} The rendered DocumentBar component.
|
|
57
62
|
*/
|
|
58
|
-
export default function DocumentBar() {
|
|
63
|
+
export default function DocumentBar( props ) {
|
|
59
64
|
const {
|
|
60
65
|
postType,
|
|
61
66
|
documentTitle,
|
|
@@ -111,7 +116,9 @@ export default function DocumentBar() {
|
|
|
111
116
|
const isTemplate = TEMPLATE_POST_TYPES.includes( postType );
|
|
112
117
|
const isGlobalEntity = GLOBAL_POST_TYPES.includes( postType );
|
|
113
118
|
const hasBackButton = !! onNavigateToPreviousEntityRecord;
|
|
114
|
-
const
|
|
119
|
+
const entityTitle = isTemplate ? templateTitle : documentTitle;
|
|
120
|
+
const title = props.title || entityTitle;
|
|
121
|
+
const icon = props.icon || templateIcon;
|
|
115
122
|
|
|
116
123
|
const mounted = useRef( false );
|
|
117
124
|
useEffect( () => {
|
|
@@ -180,12 +187,12 @@ export default function DocumentBar() {
|
|
|
180
187
|
isReducedMotion ? { duration: 0 } : undefined
|
|
181
188
|
}
|
|
182
189
|
>
|
|
183
|
-
<BlockIcon icon={
|
|
190
|
+
<BlockIcon icon={ icon } />
|
|
184
191
|
<Text
|
|
185
192
|
size="body"
|
|
186
193
|
as="h1"
|
|
187
194
|
aria-label={
|
|
188
|
-
TYPE_LABELS[ postType ]
|
|
195
|
+
! props.title && TYPE_LABELS[ postType ]
|
|
189
196
|
? // eslint-disable-next-line @wordpress/valid-sprintf
|
|
190
197
|
sprintf( TYPE_LABELS[ postType ], title )
|
|
191
198
|
: undefined
|
|
@@ -57,6 +57,7 @@ export default function EditorInterface( {
|
|
|
57
57
|
customSaveButton,
|
|
58
58
|
forceDisableBlockTools,
|
|
59
59
|
title,
|
|
60
|
+
icon,
|
|
60
61
|
iframeProps,
|
|
61
62
|
} ) {
|
|
62
63
|
const {
|
|
@@ -140,6 +141,7 @@ export default function EditorInterface( {
|
|
|
140
141
|
customSaveButton={ customSaveButton }
|
|
141
142
|
forceDisableBlockTools={ forceDisableBlockTools }
|
|
142
143
|
title={ title }
|
|
144
|
+
icon={ icon }
|
|
143
145
|
/>
|
|
144
146
|
)
|
|
145
147
|
}
|
|
@@ -212,14 +214,18 @@ export default function EditorInterface( {
|
|
|
212
214
|
)
|
|
213
215
|
}
|
|
214
216
|
actions={
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
217
|
+
! isPreviewMode ? (
|
|
218
|
+
<SavePublishPanels
|
|
219
|
+
closeEntitiesSavedStates={ closeEntitiesSavedStates }
|
|
220
|
+
isEntitiesSavedStatesOpen={
|
|
221
|
+
entitiesSavedStatesCallback
|
|
222
|
+
}
|
|
223
|
+
setEntitiesSavedStatesCallback={
|
|
224
|
+
setEntitiesSavedStatesCallback
|
|
225
|
+
}
|
|
226
|
+
forceIsDirtyPublishPanel={ forceIsDirty }
|
|
227
|
+
/>
|
|
228
|
+
) : undefined
|
|
223
229
|
}
|
|
224
230
|
shortcuts={ {
|
|
225
231
|
previous: previousShortcut,
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* WordPress dependencies
|
|
3
3
|
*/
|
|
4
|
-
import {
|
|
4
|
+
import { CheckboxControl, PanelRow } from '@wordpress/components';
|
|
5
5
|
import { __ } from '@wordpress/i18n';
|
|
6
6
|
import { useSelect } from '@wordpress/data';
|
|
7
7
|
import { store as coreStore } from '@wordpress/core-data';
|
|
8
8
|
import { decodeEntities } from '@wordpress/html-entities';
|
|
9
|
-
import { connection } from '@wordpress/icons';
|
|
10
9
|
|
|
11
10
|
/**
|
|
12
11
|
* Internal dependencies
|
|
@@ -60,18 +59,9 @@ export default function EntityRecordItem( { record, checked, onChange } ) {
|
|
|
60
59
|
/>
|
|
61
60
|
</PanelRow>
|
|
62
61
|
{ hasPostMetaChanges && (
|
|
63
|
-
<
|
|
64
|
-
<
|
|
65
|
-
|
|
66
|
-
className="entities-saved-states__connections-icon"
|
|
67
|
-
icon={ connection }
|
|
68
|
-
size={ 24 }
|
|
69
|
-
/>
|
|
70
|
-
<span className="entities-saved-states__bindings-text">
|
|
71
|
-
{ __( 'Post Meta.' ) }
|
|
72
|
-
</span>
|
|
73
|
-
</Flex>
|
|
74
|
-
</PanelRow>
|
|
62
|
+
<ul className="entities-saved-states__changes">
|
|
63
|
+
<li>{ __( 'Post Meta.' ) }</li>
|
|
64
|
+
</ul>
|
|
75
65
|
) }
|
|
76
66
|
</>
|
|
77
67
|
);
|
|
@@ -30,16 +30,3 @@
|
|
|
30
30
|
margin-bottom: $grid-unit-05;
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
|
-
|
|
34
|
-
.entities-saved-states__post-meta {
|
|
35
|
-
margin-left: $grid-unit-30;
|
|
36
|
-
align-items: center;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
.entities-saved-states__connections-icon {
|
|
40
|
-
flex-grow: 0;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
.entities-saved-states__bindings-text {
|
|
44
|
-
flex-grow: 1;
|
|
45
|
-
}
|
|
@@ -12,7 +12,7 @@ import { store as blockEditorStore } from '@wordpress/block-editor';
|
|
|
12
12
|
import { store as editorStore } from '../../store';
|
|
13
13
|
|
|
14
14
|
/**
|
|
15
|
-
*
|
|
15
|
+
* Handles the keyboard shortcuts for the editor.
|
|
16
16
|
*
|
|
17
17
|
* It provides functionality for various keyboard shortcuts such as toggling editor mode,
|
|
18
18
|
* toggling distraction-free mode, undo/redo, saving the post, toggling list view,
|