@wordpress/editor 14.0.1 → 14.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. package/build/components/document-tools/index.js +12 -3
  2. package/build/components/document-tools/index.js.map +1 -1
  3. package/build/components/editor-interface/index.js +2 -2
  4. package/build/components/editor-interface/index.js.map +1 -1
  5. package/build/components/entities-saved-states/entity-record-item.js +4 -12
  6. package/build/components/entities-saved-states/entity-record-item.js.map +1 -1
  7. package/build/components/global-styles-provider/index.js +15 -67
  8. package/build/components/global-styles-provider/index.js.map +1 -1
  9. package/build/components/post-actions/actions.js +62 -13
  10. package/build/components/post-actions/actions.js.map +1 -1
  11. package/build/components/post-actions/index.js +4 -1
  12. package/build/components/post-actions/index.js.map +1 -1
  13. package/build/components/post-excerpt/index.js +2 -1
  14. package/build/components/post-excerpt/index.js.map +1 -1
  15. package/build/components/post-excerpt/panel.js +2 -1
  16. package/build/components/post-excerpt/panel.js.map +1 -1
  17. package/build/components/post-trash/index.js +1 -0
  18. package/build/components/post-trash/index.js.map +1 -1
  19. package/build/components/post-visibility/index.js +1 -0
  20. package/build/components/post-visibility/index.js.map +1 -1
  21. package/build/components/template-validation-notice/index.js +1 -0
  22. package/build/components/template-validation-notice/index.js.map +1 -1
  23. package/build/components/visual-editor/edit-template-blocks-notification.js +1 -0
  24. package/build/components/visual-editor/edit-template-blocks-notification.js.map +1 -1
  25. package/build/hooks/pattern-overrides.js +3 -2
  26. package/build/hooks/pattern-overrides.js.map +1 -1
  27. package/build/lock-unlock.js +1 -1
  28. package/build/lock-unlock.js.map +1 -1
  29. package/build/store/private-actions.js +9 -5
  30. package/build/store/private-actions.js.map +1 -1
  31. package/build-module/components/document-tools/index.js +12 -3
  32. package/build-module/components/document-tools/index.js.map +1 -1
  33. package/build-module/components/editor-interface/index.js +2 -2
  34. package/build-module/components/editor-interface/index.js.map +1 -1
  35. package/build-module/components/entities-saved-states/entity-record-item.js +6 -14
  36. package/build-module/components/entities-saved-states/entity-record-item.js.map +1 -1
  37. package/build-module/components/global-styles-provider/index.js +16 -68
  38. package/build-module/components/global-styles-provider/index.js.map +1 -1
  39. package/build-module/components/post-actions/actions.js +63 -14
  40. package/build-module/components/post-actions/actions.js.map +1 -1
  41. package/build-module/components/post-actions/index.js +4 -1
  42. package/build-module/components/post-actions/index.js.map +1 -1
  43. package/build-module/components/post-excerpt/index.js +2 -1
  44. package/build-module/components/post-excerpt/index.js.map +1 -1
  45. package/build-module/components/post-excerpt/panel.js +2 -1
  46. package/build-module/components/post-excerpt/panel.js.map +1 -1
  47. package/build-module/components/post-trash/index.js +1 -0
  48. package/build-module/components/post-trash/index.js.map +1 -1
  49. package/build-module/components/post-visibility/index.js +1 -0
  50. package/build-module/components/post-visibility/index.js.map +1 -1
  51. package/build-module/components/template-validation-notice/index.js +1 -0
  52. package/build-module/components/template-validation-notice/index.js.map +1 -1
  53. package/build-module/components/visual-editor/edit-template-blocks-notification.js +1 -0
  54. package/build-module/components/visual-editor/edit-template-blocks-notification.js.map +1 -1
  55. package/build-module/hooks/pattern-overrides.js +3 -2
  56. package/build-module/hooks/pattern-overrides.js.map +1 -1
  57. package/build-module/lock-unlock.js +1 -1
  58. package/build-module/lock-unlock.js.map +1 -1
  59. package/build-module/store/private-actions.js +9 -5
  60. package/build-module/store/private-actions.js.map +1 -1
  61. package/build-style/style-rtl.css +8 -16
  62. package/build-style/style.css +8 -16
  63. package/package.json +19 -19
  64. package/src/components/document-tools/index.js +13 -4
  65. package/src/components/editor-interface/index.js +12 -8
  66. package/src/components/entities-saved-states/entity-record-item.js +4 -14
  67. package/src/components/entities-saved-states/style.scss +0 -13
  68. package/src/components/global-styles-provider/index.js +19 -92
  69. package/src/components/post-actions/actions.js +105 -21
  70. package/src/components/post-actions/index.js +1 -1
  71. package/src/components/post-card-panel/style.scss +1 -0
  72. package/src/components/post-excerpt/index.js +4 -1
  73. package/src/components/post-excerpt/panel.js +2 -1
  74. package/src/components/post-publish-panel/style.scss +1 -1
  75. package/src/components/post-trash/index.js +1 -0
  76. package/src/components/post-url/style.scss +4 -0
  77. package/src/components/post-visibility/index.js +1 -0
  78. package/src/components/template-validation-notice/index.js +1 -0
  79. package/src/components/visual-editor/edit-template-blocks-notification.js +1 -0
  80. package/src/components/visual-editor/style.scss +2 -0
  81. package/src/hooks/pattern-overrides.js +4 -3
  82. package/src/lock-unlock.js +1 -1
  83. package/src/store/private-actions.js +54 -21
@@ -1 +1 @@
1
- {"version":3,"names":["__","useState","VisuallyHidden","__experimentalConfirmDialog","ConfirmDialog","useInstanceId","useSelect","useDispatch","__experimentalInspectorPopoverHeader","InspectorPopoverHeader","visibilityOptions","store","editorStore","jsx","_jsx","jsxs","_jsxs","PostVisibility","onClose","instanceId","status","visibility","password","select","getEditedPostAttribute","getEditedPostVisibility","editPost","savePost","hasPassword","setHasPassword","showPrivateConfirmDialog","setShowPrivateConfirmDialog","setPublic","setPrivate","confirmPrivate","handleDialogCancel","setPasswordProtected","updatePassword","event","target","value","className","children","title","help","as","PostVisibilityChoice","label","public","info","checked","onChange","private","htmlFor","id","type","placeholder","isOpen","onConfirm","onCancel","confirmButtonText","props","name"],"sources":["@wordpress/editor/src/components/post-visibility/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useState } from '@wordpress/element';\nimport {\n\tVisuallyHidden,\n\t__experimentalConfirmDialog as ConfirmDialog,\n} from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __experimentalInspectorPopoverHeader as InspectorPopoverHeader } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { visibilityOptions } from './utils';\nimport { store as editorStore } from '../../store';\n\n/**\n * Allows users to set the visibility of a post.\n *\n * @param {Object} props The component props.\n * @param {Function} props.onClose Function to call when the popover is closed.\n * @return {JSX.Element} The rendered component.\n */\nexport default function PostVisibility( { onClose } ) {\n\tconst instanceId = useInstanceId( PostVisibility );\n\n\tconst { status, visibility, password } = useSelect( ( select ) => ( {\n\t\tstatus: select( editorStore ).getEditedPostAttribute( 'status' ),\n\t\tvisibility: select( editorStore ).getEditedPostVisibility(),\n\t\tpassword: select( editorStore ).getEditedPostAttribute( 'password' ),\n\t} ) );\n\n\tconst { editPost, savePost } = useDispatch( editorStore );\n\n\tconst [ hasPassword, setHasPassword ] = useState( !! password );\n\tconst [ showPrivateConfirmDialog, setShowPrivateConfirmDialog ] =\n\t\tuseState( false );\n\n\tconst setPublic = () => {\n\t\teditPost( {\n\t\t\tstatus: visibility === 'private' ? 'draft' : status,\n\t\t\tpassword: '',\n\t\t} );\n\t\tsetHasPassword( false );\n\t};\n\n\tconst setPrivate = () => {\n\t\tsetShowPrivateConfirmDialog( true );\n\t};\n\n\tconst confirmPrivate = () => {\n\t\teditPost( { status: 'private', password: '' } );\n\t\tsetHasPassword( false );\n\t\tsetShowPrivateConfirmDialog( false );\n\t\tsavePost();\n\t};\n\n\tconst handleDialogCancel = () => {\n\t\tsetShowPrivateConfirmDialog( false );\n\t};\n\n\tconst setPasswordProtected = () => {\n\t\teditPost( {\n\t\t\tstatus: visibility === 'private' ? 'draft' : status,\n\t\t\tpassword: password || '',\n\t\t} );\n\t\tsetHasPassword( true );\n\t};\n\n\tconst updatePassword = ( event ) => {\n\t\teditPost( { password: event.target.value } );\n\t};\n\n\treturn (\n\t\t<div className=\"editor-post-visibility\">\n\t\t\t<InspectorPopoverHeader\n\t\t\t\ttitle={ __( 'Visibility' ) }\n\t\t\t\thelp={ __( 'Control how this post is viewed.' ) }\n\t\t\t\tonClose={ onClose }\n\t\t\t/>\n\t\t\t<fieldset className=\"editor-post-visibility__fieldset\">\n\t\t\t\t<VisuallyHidden as=\"legend\">\n\t\t\t\t\t{ __( 'Visibility' ) }\n\t\t\t\t</VisuallyHidden>\n\t\t\t\t<PostVisibilityChoice\n\t\t\t\t\tinstanceId={ instanceId }\n\t\t\t\t\tvalue=\"public\"\n\t\t\t\t\tlabel={ visibilityOptions.public.label }\n\t\t\t\t\tinfo={ visibilityOptions.public.info }\n\t\t\t\t\tchecked={ visibility === 'public' && ! hasPassword }\n\t\t\t\t\tonChange={ setPublic }\n\t\t\t\t/>\n\t\t\t\t<PostVisibilityChoice\n\t\t\t\t\tinstanceId={ instanceId }\n\t\t\t\t\tvalue=\"private\"\n\t\t\t\t\tlabel={ visibilityOptions.private.label }\n\t\t\t\t\tinfo={ visibilityOptions.private.info }\n\t\t\t\t\tchecked={ visibility === 'private' }\n\t\t\t\t\tonChange={ setPrivate }\n\t\t\t\t/>\n\t\t\t\t<PostVisibilityChoice\n\t\t\t\t\tinstanceId={ instanceId }\n\t\t\t\t\tvalue=\"password\"\n\t\t\t\t\tlabel={ visibilityOptions.password.label }\n\t\t\t\t\tinfo={ visibilityOptions.password.info }\n\t\t\t\t\tchecked={ hasPassword }\n\t\t\t\t\tonChange={ setPasswordProtected }\n\t\t\t\t/>\n\t\t\t\t{ hasPassword && (\n\t\t\t\t\t<div className=\"editor-post-visibility__password\">\n\t\t\t\t\t\t<VisuallyHidden\n\t\t\t\t\t\t\tas=\"label\"\n\t\t\t\t\t\t\thtmlFor={ `editor-post-visibility__password-input-${ instanceId }` }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Create password' ) }\n\t\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t\t<input\n\t\t\t\t\t\t\tclassName=\"editor-post-visibility__password-input\"\n\t\t\t\t\t\t\tid={ `editor-post-visibility__password-input-${ instanceId }` }\n\t\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\t\tonChange={ updatePassword }\n\t\t\t\t\t\t\tvalue={ password }\n\t\t\t\t\t\t\tplaceholder={ __( 'Use a secure password' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t</fieldset>\n\t\t\t<ConfirmDialog\n\t\t\t\tisOpen={ showPrivateConfirmDialog }\n\t\t\t\tonConfirm={ confirmPrivate }\n\t\t\t\tonCancel={ handleDialogCancel }\n\t\t\t\tconfirmButtonText={ __( 'Publish' ) }\n\t\t\t>\n\t\t\t\t{ __( 'Would you like to privately publish this post now?' ) }\n\t\t\t</ConfirmDialog>\n\t\t</div>\n\t);\n}\n\nfunction PostVisibilityChoice( { instanceId, value, label, info, ...props } ) {\n\treturn (\n\t\t<div className=\"editor-post-visibility__choice\">\n\t\t\t<input\n\t\t\t\ttype=\"radio\"\n\t\t\t\tname={ `editor-post-visibility__setting-${ instanceId }` }\n\t\t\t\tvalue={ value }\n\t\t\t\tid={ `editor-post-${ value }-${ instanceId }` }\n\t\t\t\taria-describedby={ `editor-post-${ value }-${ instanceId }-description` }\n\t\t\t\tclassName=\"editor-post-visibility__radio\"\n\t\t\t\t{ ...props }\n\t\t\t/>\n\t\t\t<label\n\t\t\t\thtmlFor={ `editor-post-${ value }-${ instanceId }` }\n\t\t\t\tclassName=\"editor-post-visibility__label\"\n\t\t\t>\n\t\t\t\t{ label }\n\t\t\t</label>\n\t\t\t<p\n\t\t\t\tid={ `editor-post-${ value }-${ instanceId }-description` }\n\t\t\t\tclassName=\"editor-post-visibility__info\"\n\t\t\t>\n\t\t\t\t{ info }\n\t\t\t</p>\n\t\t</div>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__","useState","VisuallyHidden","__experimentalConfirmDialog","ConfirmDialog","useInstanceId","useSelect","useDispatch","__experimentalInspectorPopoverHeader","InspectorPopoverHeader","visibilityOptions","store","editorStore","jsx","_jsx","jsxs","_jsxs","PostVisibility","onClose","instanceId","status","visibility","password","select","getEditedPostAttribute","getEditedPostVisibility","editPost","savePost","hasPassword","setHasPassword","showPrivateConfirmDialog","setShowPrivateConfirmDialog","setPublic","setPrivate","confirmPrivate","handleDialogCancel","setPasswordProtected","updatePassword","event","target","value","className","children","title","help","as","PostVisibilityChoice","label","public","info","checked","onChange","private","htmlFor","id","type","placeholder","isOpen","onConfirm","onCancel","confirmButtonText","size","props","name"],"sources":["@wordpress/editor/src/components/post-visibility/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useState } from '@wordpress/element';\nimport {\n\tVisuallyHidden,\n\t__experimentalConfirmDialog as ConfirmDialog,\n} from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __experimentalInspectorPopoverHeader as InspectorPopoverHeader } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { visibilityOptions } from './utils';\nimport { store as editorStore } from '../../store';\n\n/**\n * Allows users to set the visibility of a post.\n *\n * @param {Object} props The component props.\n * @param {Function} props.onClose Function to call when the popover is closed.\n * @return {JSX.Element} The rendered component.\n */\nexport default function PostVisibility( { onClose } ) {\n\tconst instanceId = useInstanceId( PostVisibility );\n\n\tconst { status, visibility, password } = useSelect( ( select ) => ( {\n\t\tstatus: select( editorStore ).getEditedPostAttribute( 'status' ),\n\t\tvisibility: select( editorStore ).getEditedPostVisibility(),\n\t\tpassword: select( editorStore ).getEditedPostAttribute( 'password' ),\n\t} ) );\n\n\tconst { editPost, savePost } = useDispatch( editorStore );\n\n\tconst [ hasPassword, setHasPassword ] = useState( !! password );\n\tconst [ showPrivateConfirmDialog, setShowPrivateConfirmDialog ] =\n\t\tuseState( false );\n\n\tconst setPublic = () => {\n\t\teditPost( {\n\t\t\tstatus: visibility === 'private' ? 'draft' : status,\n\t\t\tpassword: '',\n\t\t} );\n\t\tsetHasPassword( false );\n\t};\n\n\tconst setPrivate = () => {\n\t\tsetShowPrivateConfirmDialog( true );\n\t};\n\n\tconst confirmPrivate = () => {\n\t\teditPost( { status: 'private', password: '' } );\n\t\tsetHasPassword( false );\n\t\tsetShowPrivateConfirmDialog( false );\n\t\tsavePost();\n\t};\n\n\tconst handleDialogCancel = () => {\n\t\tsetShowPrivateConfirmDialog( false );\n\t};\n\n\tconst setPasswordProtected = () => {\n\t\teditPost( {\n\t\t\tstatus: visibility === 'private' ? 'draft' : status,\n\t\t\tpassword: password || '',\n\t\t} );\n\t\tsetHasPassword( true );\n\t};\n\n\tconst updatePassword = ( event ) => {\n\t\teditPost( { password: event.target.value } );\n\t};\n\n\treturn (\n\t\t<div className=\"editor-post-visibility\">\n\t\t\t<InspectorPopoverHeader\n\t\t\t\ttitle={ __( 'Visibility' ) }\n\t\t\t\thelp={ __( 'Control how this post is viewed.' ) }\n\t\t\t\tonClose={ onClose }\n\t\t\t/>\n\t\t\t<fieldset className=\"editor-post-visibility__fieldset\">\n\t\t\t\t<VisuallyHidden as=\"legend\">\n\t\t\t\t\t{ __( 'Visibility' ) }\n\t\t\t\t</VisuallyHidden>\n\t\t\t\t<PostVisibilityChoice\n\t\t\t\t\tinstanceId={ instanceId }\n\t\t\t\t\tvalue=\"public\"\n\t\t\t\t\tlabel={ visibilityOptions.public.label }\n\t\t\t\t\tinfo={ visibilityOptions.public.info }\n\t\t\t\t\tchecked={ visibility === 'public' && ! hasPassword }\n\t\t\t\t\tonChange={ setPublic }\n\t\t\t\t/>\n\t\t\t\t<PostVisibilityChoice\n\t\t\t\t\tinstanceId={ instanceId }\n\t\t\t\t\tvalue=\"private\"\n\t\t\t\t\tlabel={ visibilityOptions.private.label }\n\t\t\t\t\tinfo={ visibilityOptions.private.info }\n\t\t\t\t\tchecked={ visibility === 'private' }\n\t\t\t\t\tonChange={ setPrivate }\n\t\t\t\t/>\n\t\t\t\t<PostVisibilityChoice\n\t\t\t\t\tinstanceId={ instanceId }\n\t\t\t\t\tvalue=\"password\"\n\t\t\t\t\tlabel={ visibilityOptions.password.label }\n\t\t\t\t\tinfo={ visibilityOptions.password.info }\n\t\t\t\t\tchecked={ hasPassword }\n\t\t\t\t\tonChange={ setPasswordProtected }\n\t\t\t\t/>\n\t\t\t\t{ hasPassword && (\n\t\t\t\t\t<div className=\"editor-post-visibility__password\">\n\t\t\t\t\t\t<VisuallyHidden\n\t\t\t\t\t\t\tas=\"label\"\n\t\t\t\t\t\t\thtmlFor={ `editor-post-visibility__password-input-${ instanceId }` }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Create password' ) }\n\t\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t\t<input\n\t\t\t\t\t\t\tclassName=\"editor-post-visibility__password-input\"\n\t\t\t\t\t\t\tid={ `editor-post-visibility__password-input-${ instanceId }` }\n\t\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\t\tonChange={ updatePassword }\n\t\t\t\t\t\t\tvalue={ password }\n\t\t\t\t\t\t\tplaceholder={ __( 'Use a secure password' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t</fieldset>\n\t\t\t<ConfirmDialog\n\t\t\t\tisOpen={ showPrivateConfirmDialog }\n\t\t\t\tonConfirm={ confirmPrivate }\n\t\t\t\tonCancel={ handleDialogCancel }\n\t\t\t\tconfirmButtonText={ __( 'Publish' ) }\n\t\t\t\tsize=\"medium\"\n\t\t\t>\n\t\t\t\t{ __( 'Would you like to privately publish this post now?' ) }\n\t\t\t</ConfirmDialog>\n\t\t</div>\n\t);\n}\n\nfunction PostVisibilityChoice( { instanceId, value, label, info, ...props } ) {\n\treturn (\n\t\t<div className=\"editor-post-visibility__choice\">\n\t\t\t<input\n\t\t\t\ttype=\"radio\"\n\t\t\t\tname={ `editor-post-visibility__setting-${ instanceId }` }\n\t\t\t\tvalue={ value }\n\t\t\t\tid={ `editor-post-${ value }-${ instanceId }` }\n\t\t\t\taria-describedby={ `editor-post-${ value }-${ instanceId }-description` }\n\t\t\t\tclassName=\"editor-post-visibility__radio\"\n\t\t\t\t{ ...props }\n\t\t\t/>\n\t\t\t<label\n\t\t\t\thtmlFor={ `editor-post-${ value }-${ instanceId }` }\n\t\t\t\tclassName=\"editor-post-visibility__label\"\n\t\t\t>\n\t\t\t\t{ label }\n\t\t\t</label>\n\t\t\t<p\n\t\t\t\tid={ `editor-post-${ value }-${ instanceId }-description` }\n\t\t\t\tclassName=\"editor-post-visibility__info\"\n\t\t\t>\n\t\t\t\t{ info }\n\t\t\t</p>\n\t\t</div>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -42,6 +42,7 @@ export default function TemplateValidationNotice() {
42
42
  synchronizeTemplate();
43
43
  },
44
44
  onCancel: () => setShowConfirmDialog(false),
45
+ size: "medium",
45
46
  children: __('Resetting the template may result in loss of content, do you want to continue?')
46
47
  })]
47
48
  });
@@ -1 +1 @@
1
- {"version":3,"names":["Notice","__experimentalConfirmDialog","ConfirmDialog","__","useDispatch","useSelect","useState","store","blockEditorStore","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","TemplateValidationNotice","showConfirmDialog","setShowConfirmDialog","isValid","select","isValidTemplate","setTemplateValidity","synchronizeTemplate","children","className","isDismissible","status","actions","label","onClick","isOpen","confirmButtonText","onConfirm","onCancel"],"sources":["@wordpress/editor/src/components/template-validation-notice/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tNotice,\n\t__experimentalConfirmDialog as ConfirmDialog,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\nexport default function TemplateValidationNotice() {\n\tconst [ showConfirmDialog, setShowConfirmDialog ] = useState( false );\n\tconst isValid = useSelect( ( select ) => {\n\t\treturn select( blockEditorStore ).isValidTemplate();\n\t}, [] );\n\tconst { setTemplateValidity, synchronizeTemplate } =\n\t\tuseDispatch( blockEditorStore );\n\n\tif ( isValid ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<Notice\n\t\t\t\tclassName=\"editor-template-validation-notice\"\n\t\t\t\tisDismissible={ false }\n\t\t\t\tstatus=\"warning\"\n\t\t\t\tactions={ [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: __( 'Keep it as is' ),\n\t\t\t\t\t\tonClick: () => setTemplateValidity( true ),\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: __( 'Reset the template' ),\n\t\t\t\t\t\tonClick: () => setShowConfirmDialog( true ),\n\t\t\t\t\t},\n\t\t\t\t] }\n\t\t\t>\n\t\t\t\t{ __(\n\t\t\t\t\t'The content of your post doesn’t match the template assigned to your post type.'\n\t\t\t\t) }\n\t\t\t</Notice>\n\t\t\t<ConfirmDialog\n\t\t\t\tisOpen={ showConfirmDialog }\n\t\t\t\tconfirmButtonText={ __( 'Reset' ) }\n\t\t\t\tonConfirm={ () => {\n\t\t\t\t\tsetShowConfirmDialog( false );\n\t\t\t\t\tsynchronizeTemplate();\n\t\t\t\t} }\n\t\t\t\tonCancel={ () => setShowConfirmDialog( false ) }\n\t\t\t>\n\t\t\t\t{ __(\n\t\t\t\t\t'Resetting the template may result in loss of content, do you want to continue?'\n\t\t\t\t) }\n\t\t\t</ConfirmDialog>\n\t\t</>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,MAAM,EACNC,2BAA2B,IAAIC,aAAa,QACtC,uBAAuB;AAC9B,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,WAAW,EAAEC,SAAS,QAAQ,iBAAiB;AACxD,SAASC,QAAQ,QAAQ,oBAAoB;AAC7C,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,yBAAyB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,QAAA,IAAAC,SAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAEpE,eAAe,SAASC,wBAAwBA,CAAA,EAAG;EAClD,MAAM,CAAEC,iBAAiB,EAAEC,oBAAoB,CAAE,GAAGX,QAAQ,CAAE,KAAM,CAAC;EACrE,MAAMY,OAAO,GAAGb,SAAS,CAAIc,MAAM,IAAM;IACxC,OAAOA,MAAM,CAAEX,gBAAiB,CAAC,CAACY,eAAe,CAAC,CAAC;EACpD,CAAC,EAAE,EAAG,CAAC;EACP,MAAM;IAAEC,mBAAmB;IAAEC;EAAoB,CAAC,GACjDlB,WAAW,CAAEI,gBAAiB,CAAC;EAEhC,IAAKU,OAAO,EAAG;IACd,OAAO,IAAI;EACZ;EAEA,oBACCJ,KAAA,CAAAF,SAAA;IAAAW,QAAA,gBACCb,IAAA,CAACV,MAAM;MACNwB,SAAS,EAAC,mCAAmC;MAC7CC,aAAa,EAAG,KAAO;MACvBC,MAAM,EAAC,SAAS;MAChBC,OAAO,EAAG,CACT;QACCC,KAAK,EAAEzB,EAAE,CAAE,eAAgB,CAAC;QAC5B0B,OAAO,EAAEA,CAAA,KAAMR,mBAAmB,CAAE,IAAK;MAC1C,CAAC,EACD;QACCO,KAAK,EAAEzB,EAAE,CAAE,oBAAqB,CAAC;QACjC0B,OAAO,EAAEA,CAAA,KAAMZ,oBAAoB,CAAE,IAAK;MAC3C,CAAC,CACC;MAAAM,QAAA,EAEDpB,EAAE,CACH,iFACD;IAAC,CACM,CAAC,eACTO,IAAA,CAACR,aAAa;MACb4B,MAAM,EAAGd,iBAAmB;MAC5Be,iBAAiB,EAAG5B,EAAE,CAAE,OAAQ,CAAG;MACnC6B,SAAS,EAAGA,CAAA,KAAM;QACjBf,oBAAoB,CAAE,KAAM,CAAC;QAC7BK,mBAAmB,CAAC,CAAC;MACtB,CAAG;MACHW,QAAQ,EAAGA,CAAA,KAAMhB,oBAAoB,CAAE,KAAM,CAAG;MAAAM,QAAA,EAE9CpB,EAAE,CACH,gFACD;IAAC,CACa,CAAC;EAAA,CACf,CAAC;AAEL","ignoreList":[]}
1
+ {"version":3,"names":["Notice","__experimentalConfirmDialog","ConfirmDialog","__","useDispatch","useSelect","useState","store","blockEditorStore","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","TemplateValidationNotice","showConfirmDialog","setShowConfirmDialog","isValid","select","isValidTemplate","setTemplateValidity","synchronizeTemplate","children","className","isDismissible","status","actions","label","onClick","isOpen","confirmButtonText","onConfirm","onCancel","size"],"sources":["@wordpress/editor/src/components/template-validation-notice/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tNotice,\n\t__experimentalConfirmDialog as ConfirmDialog,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\nexport default function TemplateValidationNotice() {\n\tconst [ showConfirmDialog, setShowConfirmDialog ] = useState( false );\n\tconst isValid = useSelect( ( select ) => {\n\t\treturn select( blockEditorStore ).isValidTemplate();\n\t}, [] );\n\tconst { setTemplateValidity, synchronizeTemplate } =\n\t\tuseDispatch( blockEditorStore );\n\n\tif ( isValid ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<Notice\n\t\t\t\tclassName=\"editor-template-validation-notice\"\n\t\t\t\tisDismissible={ false }\n\t\t\t\tstatus=\"warning\"\n\t\t\t\tactions={ [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: __( 'Keep it as is' ),\n\t\t\t\t\t\tonClick: () => setTemplateValidity( true ),\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: __( 'Reset the template' ),\n\t\t\t\t\t\tonClick: () => setShowConfirmDialog( true ),\n\t\t\t\t\t},\n\t\t\t\t] }\n\t\t\t>\n\t\t\t\t{ __(\n\t\t\t\t\t'The content of your post doesn’t match the template assigned to your post type.'\n\t\t\t\t) }\n\t\t\t</Notice>\n\t\t\t<ConfirmDialog\n\t\t\t\tisOpen={ showConfirmDialog }\n\t\t\t\tconfirmButtonText={ __( 'Reset' ) }\n\t\t\t\tonConfirm={ () => {\n\t\t\t\t\tsetShowConfirmDialog( false );\n\t\t\t\t\tsynchronizeTemplate();\n\t\t\t\t} }\n\t\t\t\tonCancel={ () => setShowConfirmDialog( false ) }\n\t\t\t\tsize=\"medium\"\n\t\t\t>\n\t\t\t\t{ __(\n\t\t\t\t\t'Resetting the template may result in loss of content, do you want to continue?'\n\t\t\t\t) }\n\t\t\t</ConfirmDialog>\n\t\t</>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,MAAM,EACNC,2BAA2B,IAAIC,aAAa,QACtC,uBAAuB;AAC9B,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,WAAW,EAAEC,SAAS,QAAQ,iBAAiB;AACxD,SAASC,QAAQ,QAAQ,oBAAoB;AAC7C,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,yBAAyB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,QAAA,IAAAC,SAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAEpE,eAAe,SAASC,wBAAwBA,CAAA,EAAG;EAClD,MAAM,CAAEC,iBAAiB,EAAEC,oBAAoB,CAAE,GAAGX,QAAQ,CAAE,KAAM,CAAC;EACrE,MAAMY,OAAO,GAAGb,SAAS,CAAIc,MAAM,IAAM;IACxC,OAAOA,MAAM,CAAEX,gBAAiB,CAAC,CAACY,eAAe,CAAC,CAAC;EACpD,CAAC,EAAE,EAAG,CAAC;EACP,MAAM;IAAEC,mBAAmB;IAAEC;EAAoB,CAAC,GACjDlB,WAAW,CAAEI,gBAAiB,CAAC;EAEhC,IAAKU,OAAO,EAAG;IACd,OAAO,IAAI;EACZ;EAEA,oBACCJ,KAAA,CAAAF,SAAA;IAAAW,QAAA,gBACCb,IAAA,CAACV,MAAM;MACNwB,SAAS,EAAC,mCAAmC;MAC7CC,aAAa,EAAG,KAAO;MACvBC,MAAM,EAAC,SAAS;MAChBC,OAAO,EAAG,CACT;QACCC,KAAK,EAAEzB,EAAE,CAAE,eAAgB,CAAC;QAC5B0B,OAAO,EAAEA,CAAA,KAAMR,mBAAmB,CAAE,IAAK;MAC1C,CAAC,EACD;QACCO,KAAK,EAAEzB,EAAE,CAAE,oBAAqB,CAAC;QACjC0B,OAAO,EAAEA,CAAA,KAAMZ,oBAAoB,CAAE,IAAK;MAC3C,CAAC,CACC;MAAAM,QAAA,EAEDpB,EAAE,CACH,iFACD;IAAC,CACM,CAAC,eACTO,IAAA,CAACR,aAAa;MACb4B,MAAM,EAAGd,iBAAmB;MAC5Be,iBAAiB,EAAG5B,EAAE,CAAE,OAAQ,CAAG;MACnC6B,SAAS,EAAGA,CAAA,KAAM;QACjBf,oBAAoB,CAAE,KAAM,CAAC;QAC7BK,mBAAmB,CAAC,CAAC;MACtB,CAAG;MACHW,QAAQ,EAAGA,CAAA,KAAMhB,oBAAoB,CAAE,KAAM,CAAG;MAChDiB,IAAI,EAAC,QAAQ;MAAAX,QAAA,EAEXpB,EAAE,CACH,gFACD;IAAC,CACa,CAAC;EAAA,CACf,CAAC;AAEL","ignoreList":[]}
@@ -78,6 +78,7 @@ export default function EditTemplateBlocksNotification({
78
78
  });
79
79
  },
80
80
  onCancel: () => setIsDialogOpen(false),
81
+ size: "medium",
81
82
  children: __('You’ve tried to select a block that is part of a template, which may be used on other posts and pages. Would you like to edit the template?')
82
83
  });
83
84
  }
@@ -1 +1 @@
1
- {"version":3,"names":["useSelect","store","coreStore","useEffect","useState","__","__experimentalConfirmDialog","ConfirmDialog","editorStore","jsx","_jsx","EditTemplateBlocksNotification","contentRef","onNavigateToEntityRecord","templateId","select","getEditorSettings","getCurrentTemplateId","canEditTemplate","_select$canUser","canUser","isDialogOpen","setIsDialogOpen","handleDblClick","event","target","classList","contains","canvas","current","addEventListener","removeEventListener","isOpen","confirmButtonText","onConfirm","postId","postType","onCancel","children"],"sources":["@wordpress/editor/src/components/visual-editor/edit-template-blocks-notification.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useEffect, useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { __experimentalConfirmDialog as ConfirmDialog } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\n\n/**\n * Component that:\n *\n * - Displays a 'Edit your template to edit this block' notification when the\n * user is focusing on editing page content and clicks on a disabled template\n * block.\n * - Displays a 'Edit your template to edit this block' dialog when the user\n * is focusing on editing page conetnt and double clicks on a disabled\n * template block.\n *\n * @param {Object} props\n * @param {import('react').RefObject<HTMLElement>} props.contentRef Ref to the block\n * editor iframe canvas.\n */\nexport default function EditTemplateBlocksNotification( { contentRef } ) {\n\tconst { onNavigateToEntityRecord, templateId } = useSelect( ( select ) => {\n\t\tconst { getEditorSettings, getCurrentTemplateId } =\n\t\t\tselect( editorStore );\n\n\t\treturn {\n\t\t\tonNavigateToEntityRecord:\n\t\t\t\tgetEditorSettings().onNavigateToEntityRecord,\n\t\t\ttemplateId: getCurrentTemplateId(),\n\t\t};\n\t}, [] );\n\n\tconst canEditTemplate = useSelect(\n\t\t( select ) =>\n\t\t\tselect( coreStore ).canUser( 'create', 'templates' ) ?? false\n\t);\n\n\tconst [ isDialogOpen, setIsDialogOpen ] = useState( false );\n\n\tuseEffect( () => {\n\t\tconst handleDblClick = ( event ) => {\n\t\t\tif ( ! canEditTemplate ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( ! event.target.classList.contains( 'is-root-container' ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tsetIsDialogOpen( true );\n\t\t};\n\n\t\tconst canvas = contentRef.current;\n\t\tcanvas?.addEventListener( 'dblclick', handleDblClick );\n\t\treturn () => {\n\t\t\tcanvas?.removeEventListener( 'dblclick', handleDblClick );\n\t\t};\n\t}, [ contentRef, canEditTemplate ] );\n\n\tif ( ! canEditTemplate ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<ConfirmDialog\n\t\t\tisOpen={ isDialogOpen }\n\t\t\tconfirmButtonText={ __( 'Edit template' ) }\n\t\t\tonConfirm={ () => {\n\t\t\t\tsetIsDialogOpen( false );\n\t\t\t\tonNavigateToEntityRecord( {\n\t\t\t\t\tpostId: templateId,\n\t\t\t\t\tpostType: 'wp_template',\n\t\t\t\t} );\n\t\t\t} }\n\t\t\tonCancel={ () => setIsDialogOpen( false ) }\n\t\t>\n\t\t\t{ __(\n\t\t\t\t'You’ve tried to select a block that is part of a template, which may be used on other posts and pages. Would you like to edit the template?'\n\t\t\t) }\n\t\t</ConfirmDialog>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;AACzD,SAASC,SAAS,EAAEC,QAAQ,QAAQ,oBAAoB;AACxD,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,2BAA2B,IAAIC,aAAa,QAAQ,uBAAuB;;AAEpF;AACA;AACA;AACA,SAASN,KAAK,IAAIO,WAAW,QAAQ,aAAa;;AAElD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAbA,SAAAC,GAAA,IAAAC,IAAA;AAcA,eAAe,SAASC,8BAA8BA,CAAE;EAAEC;AAAW,CAAC,EAAG;EACxE,MAAM;IAAEC,wBAAwB;IAAEC;EAAW,CAAC,GAAGd,SAAS,CAAIe,MAAM,IAAM;IACzE,MAAM;MAAEC,iBAAiB;MAAEC;IAAqB,CAAC,GAChDF,MAAM,CAAEP,WAAY,CAAC;IAEtB,OAAO;MACNK,wBAAwB,EACvBG,iBAAiB,CAAC,CAAC,CAACH,wBAAwB;MAC7CC,UAAU,EAAEG,oBAAoB,CAAC;IAClC,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,MAAMC,eAAe,GAAGlB,SAAS,CAC9Be,MAAM;IAAA,IAAAI,eAAA;IAAA,QAAAA,eAAA,GACPJ,MAAM,CAAEb,SAAU,CAAC,CAACkB,OAAO,CAAE,QAAQ,EAAE,WAAY,CAAC,cAAAD,eAAA,cAAAA,eAAA,GAAI,KAAK;EAAA,CAC/D,CAAC;EAED,MAAM,CAAEE,YAAY,EAAEC,eAAe,CAAE,GAAGlB,QAAQ,CAAE,KAAM,CAAC;EAE3DD,SAAS,CAAE,MAAM;IAChB,MAAMoB,cAAc,GAAKC,KAAK,IAAM;MACnC,IAAK,CAAEN,eAAe,EAAG;QACxB;MACD;MAEA,IAAK,CAAEM,KAAK,CAACC,MAAM,CAACC,SAAS,CAACC,QAAQ,CAAE,mBAAoB,CAAC,EAAG;QAC/D;MACD;MACAL,eAAe,CAAE,IAAK,CAAC;IACxB,CAAC;IAED,MAAMM,MAAM,GAAGhB,UAAU,CAACiB,OAAO;IACjCD,MAAM,EAAEE,gBAAgB,CAAE,UAAU,EAAEP,cAAe,CAAC;IACtD,OAAO,MAAM;MACZK,MAAM,EAAEG,mBAAmB,CAAE,UAAU,EAAER,cAAe,CAAC;IAC1D,CAAC;EACF,CAAC,EAAE,CAAEX,UAAU,EAAEM,eAAe,CAAG,CAAC;EAEpC,IAAK,CAAEA,eAAe,EAAG;IACxB,OAAO,IAAI;EACZ;EAEA,oBACCR,IAAA,CAACH,aAAa;IACbyB,MAAM,EAAGX,YAAc;IACvBY,iBAAiB,EAAG5B,EAAE,CAAE,eAAgB,CAAG;IAC3C6B,SAAS,EAAGA,CAAA,KAAM;MACjBZ,eAAe,CAAE,KAAM,CAAC;MACxBT,wBAAwB,CAAE;QACzBsB,MAAM,EAAErB,UAAU;QAClBsB,QAAQ,EAAE;MACX,CAAE,CAAC;IACJ,CAAG;IACHC,QAAQ,EAAGA,CAAA,KAAMf,eAAe,CAAE,KAAM,CAAG;IAAAgB,QAAA,EAEzCjC,EAAE,CACH,6IACD;EAAC,CACa,CAAC;AAElB","ignoreList":[]}
1
+ {"version":3,"names":["useSelect","store","coreStore","useEffect","useState","__","__experimentalConfirmDialog","ConfirmDialog","editorStore","jsx","_jsx","EditTemplateBlocksNotification","contentRef","onNavigateToEntityRecord","templateId","select","getEditorSettings","getCurrentTemplateId","canEditTemplate","_select$canUser","canUser","isDialogOpen","setIsDialogOpen","handleDblClick","event","target","classList","contains","canvas","current","addEventListener","removeEventListener","isOpen","confirmButtonText","onConfirm","postId","postType","onCancel","size","children"],"sources":["@wordpress/editor/src/components/visual-editor/edit-template-blocks-notification.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useEffect, useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { __experimentalConfirmDialog as ConfirmDialog } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\n\n/**\n * Component that:\n *\n * - Displays a 'Edit your template to edit this block' notification when the\n * user is focusing on editing page content and clicks on a disabled template\n * block.\n * - Displays a 'Edit your template to edit this block' dialog when the user\n * is focusing on editing page conetnt and double clicks on a disabled\n * template block.\n *\n * @param {Object} props\n * @param {import('react').RefObject<HTMLElement>} props.contentRef Ref to the block\n * editor iframe canvas.\n */\nexport default function EditTemplateBlocksNotification( { contentRef } ) {\n\tconst { onNavigateToEntityRecord, templateId } = useSelect( ( select ) => {\n\t\tconst { getEditorSettings, getCurrentTemplateId } =\n\t\t\tselect( editorStore );\n\n\t\treturn {\n\t\t\tonNavigateToEntityRecord:\n\t\t\t\tgetEditorSettings().onNavigateToEntityRecord,\n\t\t\ttemplateId: getCurrentTemplateId(),\n\t\t};\n\t}, [] );\n\n\tconst canEditTemplate = useSelect(\n\t\t( select ) =>\n\t\t\tselect( coreStore ).canUser( 'create', 'templates' ) ?? false\n\t);\n\n\tconst [ isDialogOpen, setIsDialogOpen ] = useState( false );\n\n\tuseEffect( () => {\n\t\tconst handleDblClick = ( event ) => {\n\t\t\tif ( ! canEditTemplate ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( ! event.target.classList.contains( 'is-root-container' ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tsetIsDialogOpen( true );\n\t\t};\n\n\t\tconst canvas = contentRef.current;\n\t\tcanvas?.addEventListener( 'dblclick', handleDblClick );\n\t\treturn () => {\n\t\t\tcanvas?.removeEventListener( 'dblclick', handleDblClick );\n\t\t};\n\t}, [ contentRef, canEditTemplate ] );\n\n\tif ( ! canEditTemplate ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<ConfirmDialog\n\t\t\tisOpen={ isDialogOpen }\n\t\t\tconfirmButtonText={ __( 'Edit template' ) }\n\t\t\tonConfirm={ () => {\n\t\t\t\tsetIsDialogOpen( false );\n\t\t\t\tonNavigateToEntityRecord( {\n\t\t\t\t\tpostId: templateId,\n\t\t\t\t\tpostType: 'wp_template',\n\t\t\t\t} );\n\t\t\t} }\n\t\t\tonCancel={ () => setIsDialogOpen( false ) }\n\t\t\tsize=\"medium\"\n\t\t>\n\t\t\t{ __(\n\t\t\t\t'You’ve tried to select a block that is part of a template, which may be used on other posts and pages. Would you like to edit the template?'\n\t\t\t) }\n\t\t</ConfirmDialog>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;AACzD,SAASC,SAAS,EAAEC,QAAQ,QAAQ,oBAAoB;AACxD,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,2BAA2B,IAAIC,aAAa,QAAQ,uBAAuB;;AAEpF;AACA;AACA;AACA,SAASN,KAAK,IAAIO,WAAW,QAAQ,aAAa;;AAElD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAbA,SAAAC,GAAA,IAAAC,IAAA;AAcA,eAAe,SAASC,8BAA8BA,CAAE;EAAEC;AAAW,CAAC,EAAG;EACxE,MAAM;IAAEC,wBAAwB;IAAEC;EAAW,CAAC,GAAGd,SAAS,CAAIe,MAAM,IAAM;IACzE,MAAM;MAAEC,iBAAiB;MAAEC;IAAqB,CAAC,GAChDF,MAAM,CAAEP,WAAY,CAAC;IAEtB,OAAO;MACNK,wBAAwB,EACvBG,iBAAiB,CAAC,CAAC,CAACH,wBAAwB;MAC7CC,UAAU,EAAEG,oBAAoB,CAAC;IAClC,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,MAAMC,eAAe,GAAGlB,SAAS,CAC9Be,MAAM;IAAA,IAAAI,eAAA;IAAA,QAAAA,eAAA,GACPJ,MAAM,CAAEb,SAAU,CAAC,CAACkB,OAAO,CAAE,QAAQ,EAAE,WAAY,CAAC,cAAAD,eAAA,cAAAA,eAAA,GAAI,KAAK;EAAA,CAC/D,CAAC;EAED,MAAM,CAAEE,YAAY,EAAEC,eAAe,CAAE,GAAGlB,QAAQ,CAAE,KAAM,CAAC;EAE3DD,SAAS,CAAE,MAAM;IAChB,MAAMoB,cAAc,GAAKC,KAAK,IAAM;MACnC,IAAK,CAAEN,eAAe,EAAG;QACxB;MACD;MAEA,IAAK,CAAEM,KAAK,CAACC,MAAM,CAACC,SAAS,CAACC,QAAQ,CAAE,mBAAoB,CAAC,EAAG;QAC/D;MACD;MACAL,eAAe,CAAE,IAAK,CAAC;IACxB,CAAC;IAED,MAAMM,MAAM,GAAGhB,UAAU,CAACiB,OAAO;IACjCD,MAAM,EAAEE,gBAAgB,CAAE,UAAU,EAAEP,cAAe,CAAC;IACtD,OAAO,MAAM;MACZK,MAAM,EAAEG,mBAAmB,CAAE,UAAU,EAAER,cAAe,CAAC;IAC1D,CAAC;EACF,CAAC,EAAE,CAAEX,UAAU,EAAEM,eAAe,CAAG,CAAC;EAEpC,IAAK,CAAEA,eAAe,EAAG;IACxB,OAAO,IAAI;EACZ;EAEA,oBACCR,IAAA,CAACH,aAAa;IACbyB,MAAM,EAAGX,YAAc;IACvBY,iBAAiB,EAAG5B,EAAE,CAAE,eAAgB,CAAG;IAC3C6B,SAAS,EAAGA,CAAA,KAAM;MACjBZ,eAAe,CAAE,KAAM,CAAC;MACxBT,wBAAwB,CAAE;QACzBsB,MAAM,EAAErB,UAAU;QAClBsB,QAAQ,EAAE;MACX,CAAE,CAAC;IACJ,CAAG;IACHC,QAAQ,EAAGA,CAAA,KAAMf,eAAe,CAAE,KAAM,CAAG;IAC3CgB,IAAI,EAAC,QAAQ;IAAAC,QAAA,EAEXlC,EAAE,CACH,6IACD;EAAC,CACa,CAAC;AAElB","ignoreList":[]}
@@ -19,6 +19,7 @@ import { jsxs as _jsxs } from "react/jsx-runtime";
19
19
  const {
20
20
  PatternOverridesControls,
21
21
  ResetOverridesControl,
22
+ PatternOverridesBlockControls,
22
23
  PATTERN_TYPES,
23
24
  PARTIAL_SYNCING_SUPPORTED_BLOCKS,
24
25
  PATTERN_SYNC_TYPES
@@ -34,13 +35,13 @@ const {
34
35
  * @return {Component} Wrapped component.
35
36
  */
36
37
  const withPatternOverrideControls = createHigherOrderComponent(BlockEdit => props => {
37
- const isSupportedBlock = Object.keys(PARTIAL_SYNCING_SUPPORTED_BLOCKS).includes(props.name);
38
+ const isSupportedBlock = !!PARTIAL_SYNCING_SUPPORTED_BLOCKS[props.name];
38
39
  return /*#__PURE__*/_jsxs(_Fragment, {
39
40
  children: [/*#__PURE__*/_jsx(BlockEdit, {
40
41
  ...props
41
42
  }), props.isSelected && isSupportedBlock && /*#__PURE__*/_jsx(ControlsWithStoreSubscription, {
42
43
  ...props
43
- })]
44
+ }), isSupportedBlock && /*#__PURE__*/_jsx(PatternOverridesBlockControls, {})]
44
45
  });
45
46
  });
46
47
 
@@ -1 +1 @@
1
- {"version":3,"names":["addFilter","privateApis","patternsPrivateApis","createHigherOrderComponent","useBlockEditingMode","useSelect","store","blocksStore","editorStore","unlock","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","PatternOverridesControls","ResetOverridesControl","PATTERN_TYPES","PARTIAL_SYNCING_SUPPORTED_BLOCKS","PATTERN_SYNC_TYPES","withPatternOverrideControls","BlockEdit","props","isSupportedBlock","Object","keys","includes","name","children","isSelected","ControlsWithStoreSubscription","blockEditingMode","hasPatternOverridesSource","isEditingSyncedPattern","select","getBlockBindingsSource","getCurrentPostType","getEditedPostAttribute","user","wp_pattern_sync_status","unsynced","bindings","attributes","metadata","hasPatternBindings","values","some","binding","source","shouldShowPatternOverridesControls","shouldShowResetOverridesControl"],"sources":["@wordpress/editor/src/hooks/pattern-overrides.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { addFilter } from '@wordpress/hooks';\nimport { privateApis as patternsPrivateApis } from '@wordpress/patterns';\nimport { createHigherOrderComponent } from '@wordpress/compose';\nimport { useBlockEditingMode } from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\nimport { store as blocksStore } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../store';\nimport { unlock } from '../lock-unlock';\n\nconst {\n\tPatternOverridesControls,\n\tResetOverridesControl,\n\tPATTERN_TYPES,\n\tPARTIAL_SYNCING_SUPPORTED_BLOCKS,\n\tPATTERN_SYNC_TYPES,\n} = unlock( patternsPrivateApis );\n\n/**\n * Override the default edit UI to include a new block inspector control for\n * assigning a partial syncing controls to supported blocks in the pattern editor.\n * Currently, only the `core/paragraph` block is supported.\n *\n * @param {Component} BlockEdit Original component.\n *\n * @return {Component} Wrapped component.\n */\nconst withPatternOverrideControls = createHigherOrderComponent(\n\t( BlockEdit ) => ( props ) => {\n\t\tconst isSupportedBlock = Object.keys(\n\t\t\tPARTIAL_SYNCING_SUPPORTED_BLOCKS\n\t\t).includes( props.name );\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<BlockEdit { ...props } />\n\t\t\t\t{ props.isSelected && isSupportedBlock && (\n\t\t\t\t\t<ControlsWithStoreSubscription { ...props } />\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\t}\n);\n\n// Split into a separate component to avoid a store subscription\n// on every block.\nfunction ControlsWithStoreSubscription( props ) {\n\tconst blockEditingMode = useBlockEditingMode();\n\tconst { hasPatternOverridesSource, isEditingSyncedPattern } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockBindingsSource } = unlock( select( blocksStore ) );\n\t\t\tconst { getCurrentPostType, getEditedPostAttribute } =\n\t\t\t\tselect( editorStore );\n\n\t\t\treturn {\n\t\t\t\t// For editing link to the site editor if the theme and user permissions support it.\n\t\t\t\thasPatternOverridesSource: !! getBlockBindingsSource(\n\t\t\t\t\t'core/pattern-overrides'\n\t\t\t\t),\n\t\t\t\tisEditingSyncedPattern:\n\t\t\t\t\tgetCurrentPostType() === PATTERN_TYPES.user &&\n\t\t\t\t\tgetEditedPostAttribute( 'meta' )?.wp_pattern_sync_status !==\n\t\t\t\t\t\tPATTERN_SYNC_TYPES.unsynced &&\n\t\t\t\t\tgetEditedPostAttribute( 'wp_pattern_sync_status' ) !==\n\t\t\t\t\t\tPATTERN_SYNC_TYPES.unsynced,\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\tconst bindings = props.attributes.metadata?.bindings;\n\tconst hasPatternBindings =\n\t\t!! bindings &&\n\t\tObject.values( bindings ).some(\n\t\t\t( binding ) => binding.source === 'core/pattern-overrides'\n\t\t);\n\n\tconst shouldShowPatternOverridesControls =\n\t\tisEditingSyncedPattern && blockEditingMode === 'default';\n\tconst shouldShowResetOverridesControl =\n\t\t! isEditingSyncedPattern &&\n\t\t!! props.attributes.metadata?.name &&\n\t\tblockEditingMode !== 'disabled' &&\n\t\thasPatternBindings;\n\n\tif ( ! hasPatternOverridesSource ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ shouldShowPatternOverridesControls && (\n\t\t\t\t<PatternOverridesControls { ...props } />\n\t\t\t) }\n\t\t\t{ shouldShowResetOverridesControl && (\n\t\t\t\t<ResetOverridesControl { ...props } />\n\t\t\t) }\n\t\t</>\n\t);\n}\n\naddFilter(\n\t'editor.BlockEdit',\n\t'core/editor/with-pattern-override-controls',\n\twithPatternOverrideControls\n);\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,kBAAkB;AAC5C,SAASC,WAAW,IAAIC,mBAAmB,QAAQ,qBAAqB;AACxE,SAASC,0BAA0B,QAAQ,oBAAoB;AAC/D,SAASC,mBAAmB,QAAQ,yBAAyB;AAC7D,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,KAAK,IAAIC,WAAW,QAAQ,mBAAmB;;AAExD;AACA;AACA;AACA,SAASD,KAAK,IAAIE,WAAW,QAAQ,UAAU;AAC/C,SAASC,MAAM,QAAQ,gBAAgB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,QAAA,IAAAC,SAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAExC,MAAM;EACLC,wBAAwB;EACxBC,qBAAqB;EACrBC,aAAa;EACbC,gCAAgC;EAChCC;AACD,CAAC,GAAGX,MAAM,CAAEP,mBAAoB,CAAC;;AAEjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMmB,2BAA2B,GAAGlB,0BAA0B,CAC3DmB,SAAS,IAAQC,KAAK,IAAM;EAC7B,MAAMC,gBAAgB,GAAGC,MAAM,CAACC,IAAI,CACnCP,gCACD,CAAC,CAACQ,QAAQ,CAAEJ,KAAK,CAACK,IAAK,CAAC;EAExB,oBACCb,KAAA,CAAAF,SAAA;IAAAgB,QAAA,gBACClB,IAAA,CAACW,SAAS;MAAA,GAAMC;IAAK,CAAI,CAAC,EACxBA,KAAK,CAACO,UAAU,IAAIN,gBAAgB,iBACrCb,IAAA,CAACoB,6BAA6B;MAAA,GAAMR;IAAK,CAAI,CAC7C;EAAA,CACA,CAAC;AAEL,CACD,CAAC;;AAED;AACA;AACA,SAASQ,6BAA6BA,CAAER,KAAK,EAAG;EAC/C,MAAMS,gBAAgB,GAAG5B,mBAAmB,CAAC,CAAC;EAC9C,MAAM;IAAE6B,yBAAyB;IAAEC;EAAuB,CAAC,GAAG7B,SAAS,CACpE8B,MAAM,IAAM;IACb,MAAM;MAAEC;IAAuB,CAAC,GAAG3B,MAAM,CAAE0B,MAAM,CAAE5B,WAAY,CAAE,CAAC;IAClE,MAAM;MAAE8B,kBAAkB;MAAEC;IAAuB,CAAC,GACnDH,MAAM,CAAE3B,WAAY,CAAC;IAEtB,OAAO;MACN;MACAyB,yBAAyB,EAAE,CAAC,CAAEG,sBAAsB,CACnD,wBACD,CAAC;MACDF,sBAAsB,EACrBG,kBAAkB,CAAC,CAAC,KAAKnB,aAAa,CAACqB,IAAI,IAC3CD,sBAAsB,CAAE,MAAO,CAAC,EAAEE,sBAAsB,KACvDpB,kBAAkB,CAACqB,QAAQ,IAC5BH,sBAAsB,CAAE,wBAAyB,CAAC,KACjDlB,kBAAkB,CAACqB;IACtB,CAAC;EACF,CAAC,EACD,EACD,CAAC;EAED,MAAMC,QAAQ,GAAGnB,KAAK,CAACoB,UAAU,CAACC,QAAQ,EAAEF,QAAQ;EACpD,MAAMG,kBAAkB,GACvB,CAAC,CAAEH,QAAQ,IACXjB,MAAM,CAACqB,MAAM,CAAEJ,QAAS,CAAC,CAACK,IAAI,CAC3BC,OAAO,IAAMA,OAAO,CAACC,MAAM,KAAK,wBACnC,CAAC;EAEF,MAAMC,kCAAkC,GACvChB,sBAAsB,IAAIF,gBAAgB,KAAK,SAAS;EACzD,MAAMmB,+BAA+B,GACpC,CAAEjB,sBAAsB,IACxB,CAAC,CAAEX,KAAK,CAACoB,UAAU,CAACC,QAAQ,EAAEhB,IAAI,IAClCI,gBAAgB,KAAK,UAAU,IAC/Ba,kBAAkB;EAEnB,IAAK,CAAEZ,yBAAyB,EAAG;IAClC,OAAO,IAAI;EACZ;EAEA,oBACClB,KAAA,CAAAF,SAAA;IAAAgB,QAAA,GACGqB,kCAAkC,iBACnCvC,IAAA,CAACK,wBAAwB;MAAA,GAAMO;IAAK,CAAI,CACxC,EACC4B,+BAA+B,iBAChCxC,IAAA,CAACM,qBAAqB;MAAA,GAAMM;IAAK,CAAI,CACrC;EAAA,CACA,CAAC;AAEL;AAEAvB,SAAS,CACR,kBAAkB,EAClB,4CAA4C,EAC5CqB,2BACD,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["addFilter","privateApis","patternsPrivateApis","createHigherOrderComponent","useBlockEditingMode","useSelect","store","blocksStore","editorStore","unlock","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","PatternOverridesControls","ResetOverridesControl","PatternOverridesBlockControls","PATTERN_TYPES","PARTIAL_SYNCING_SUPPORTED_BLOCKS","PATTERN_SYNC_TYPES","withPatternOverrideControls","BlockEdit","props","isSupportedBlock","name","children","isSelected","ControlsWithStoreSubscription","blockEditingMode","hasPatternOverridesSource","isEditingSyncedPattern","select","getBlockBindingsSource","getCurrentPostType","getEditedPostAttribute","user","wp_pattern_sync_status","unsynced","bindings","attributes","metadata","hasPatternBindings","Object","values","some","binding","source","shouldShowPatternOverridesControls","shouldShowResetOverridesControl"],"sources":["@wordpress/editor/src/hooks/pattern-overrides.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { addFilter } from '@wordpress/hooks';\nimport { privateApis as patternsPrivateApis } from '@wordpress/patterns';\nimport { createHigherOrderComponent } from '@wordpress/compose';\nimport { useBlockEditingMode } from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\nimport { store as blocksStore } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../store';\nimport { unlock } from '../lock-unlock';\n\nconst {\n\tPatternOverridesControls,\n\tResetOverridesControl,\n\tPatternOverridesBlockControls,\n\tPATTERN_TYPES,\n\tPARTIAL_SYNCING_SUPPORTED_BLOCKS,\n\tPATTERN_SYNC_TYPES,\n} = unlock( patternsPrivateApis );\n\n/**\n * Override the default edit UI to include a new block inspector control for\n * assigning a partial syncing controls to supported blocks in the pattern editor.\n * Currently, only the `core/paragraph` block is supported.\n *\n * @param {Component} BlockEdit Original component.\n *\n * @return {Component} Wrapped component.\n */\nconst withPatternOverrideControls = createHigherOrderComponent(\n\t( BlockEdit ) => ( props ) => {\n\t\tconst isSupportedBlock =\n\t\t\t!! PARTIAL_SYNCING_SUPPORTED_BLOCKS[ props.name ];\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<BlockEdit { ...props } />\n\t\t\t\t{ props.isSelected && isSupportedBlock && (\n\t\t\t\t\t<ControlsWithStoreSubscription { ...props } />\n\t\t\t\t) }\n\t\t\t\t{ isSupportedBlock && <PatternOverridesBlockControls /> }\n\t\t\t</>\n\t\t);\n\t}\n);\n\n// Split into a separate component to avoid a store subscription\n// on every block.\nfunction ControlsWithStoreSubscription( props ) {\n\tconst blockEditingMode = useBlockEditingMode();\n\tconst { hasPatternOverridesSource, isEditingSyncedPattern } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockBindingsSource } = unlock( select( blocksStore ) );\n\t\t\tconst { getCurrentPostType, getEditedPostAttribute } =\n\t\t\t\tselect( editorStore );\n\n\t\t\treturn {\n\t\t\t\t// For editing link to the site editor if the theme and user permissions support it.\n\t\t\t\thasPatternOverridesSource: !! getBlockBindingsSource(\n\t\t\t\t\t'core/pattern-overrides'\n\t\t\t\t),\n\t\t\t\tisEditingSyncedPattern:\n\t\t\t\t\tgetCurrentPostType() === PATTERN_TYPES.user &&\n\t\t\t\t\tgetEditedPostAttribute( 'meta' )?.wp_pattern_sync_status !==\n\t\t\t\t\t\tPATTERN_SYNC_TYPES.unsynced &&\n\t\t\t\t\tgetEditedPostAttribute( 'wp_pattern_sync_status' ) !==\n\t\t\t\t\t\tPATTERN_SYNC_TYPES.unsynced,\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\tconst bindings = props.attributes.metadata?.bindings;\n\tconst hasPatternBindings =\n\t\t!! bindings &&\n\t\tObject.values( bindings ).some(\n\t\t\t( binding ) => binding.source === 'core/pattern-overrides'\n\t\t);\n\n\tconst shouldShowPatternOverridesControls =\n\t\tisEditingSyncedPattern && blockEditingMode === 'default';\n\tconst shouldShowResetOverridesControl =\n\t\t! isEditingSyncedPattern &&\n\t\t!! props.attributes.metadata?.name &&\n\t\tblockEditingMode !== 'disabled' &&\n\t\thasPatternBindings;\n\n\tif ( ! hasPatternOverridesSource ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ shouldShowPatternOverridesControls && (\n\t\t\t\t<PatternOverridesControls { ...props } />\n\t\t\t) }\n\t\t\t{ shouldShowResetOverridesControl && (\n\t\t\t\t<ResetOverridesControl { ...props } />\n\t\t\t) }\n\t\t</>\n\t);\n}\n\naddFilter(\n\t'editor.BlockEdit',\n\t'core/editor/with-pattern-override-controls',\n\twithPatternOverrideControls\n);\n"],"mappings":"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","ignoreList":[]}
@@ -5,5 +5,5 @@ import { __dangerousOptInToUnstableAPIsOnlyForCoreModules } from '@wordpress/pri
5
5
  export const {
6
6
  lock,
7
7
  unlock
8
- } = __dangerousOptInToUnstableAPIsOnlyForCoreModules('I know using unstable features means my theme or plugin will inevitably break in the next version of WordPress.', '@wordpress/editor');
8
+ } = __dangerousOptInToUnstableAPIsOnlyForCoreModules('I acknowledge private features are not for use in themes or plugins and doing so will break in the next version of WordPress.', '@wordpress/editor');
9
9
  //# sourceMappingURL=lock-unlock.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["__dangerousOptInToUnstableAPIsOnlyForCoreModules","lock","unlock"],"sources":["@wordpress/editor/src/lock-unlock.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __dangerousOptInToUnstableAPIsOnlyForCoreModules } from '@wordpress/private-apis';\nexport const { lock, unlock } =\n\t__dangerousOptInToUnstableAPIsOnlyForCoreModules(\n\t\t'I know using unstable features means my theme or plugin will inevitably break in the next version of WordPress.',\n\t\t'@wordpress/editor'\n\t);\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,gDAAgD,QAAQ,yBAAyB;AAC1F,OAAO,MAAM;EAAEC,IAAI;EAAEC;AAAO,CAAC,GAC5BF,gDAAgD,CAC/C,iHAAiH,EACjH,mBACD,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["__dangerousOptInToUnstableAPIsOnlyForCoreModules","lock","unlock"],"sources":["@wordpress/editor/src/lock-unlock.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __dangerousOptInToUnstableAPIsOnlyForCoreModules } from '@wordpress/private-apis';\nexport const { lock, unlock } =\n\t__dangerousOptInToUnstableAPIsOnlyForCoreModules(\n\t\t'I acknowledge private features are not for use in themes or plugins and doing so will break in the next version of WordPress.',\n\t\t'@wordpress/editor'\n\t);\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,gDAAgD,QAAQ,yBAAyB;AAC1F,OAAO,MAAM;EAAEC,IAAI;EAAEC;AAAO,CAAC,GAC5BF,gDAAgD,CAC/C,+HAA+H,EAC/H,mBACD,CAAC","ignoreList":[]}
@@ -253,6 +253,7 @@ export const revertTemplate = (template, {
253
253
  export const removeTemplates = items => async ({
254
254
  registry
255
255
  }) => {
256
+ const isResetting = items.every(item => !!item && (item.has_theme_file || item.templatePart && item.templatePart.has_theme_file));
256
257
  const promiseResult = await Promise.allSettled(items.map(item => {
257
258
  return registry.dispatch(coreStore).deleteEntityRecord('postType', item.type, item.id, {
258
259
  force: true
@@ -270,10 +271,11 @@ export const removeTemplates = items => async ({
270
271
  // Depending on how the entity was retrieved its title might be
271
272
  // an object or simple string.
272
273
  const title = typeof items[0].title === 'string' ? items[0].title : items[0].title?.rendered;
273
- successMessage = sprintf( /* translators: The template/part's name. */
274
+ successMessage = isResetting ? sprintf( /* translators: The template/part's name. */
275
+ __('"%s" reset.'), decodeEntities(title)) : sprintf( /* translators: The template/part's name. */
274
276
  __('"%s" deleted.'), decodeEntities(title));
275
277
  } else {
276
- successMessage = __('Items deleted.');
278
+ successMessage = isResetting ? __('Items reset.') : __('Items deleted.');
277
279
  }
278
280
  registry.dispatch(noticesStore).createSuccessNotice(successMessage, {
279
281
  type: 'snackbar',
@@ -287,7 +289,7 @@ export const removeTemplates = items => async ({
287
289
  if (promiseResult[0].reason?.message) {
288
290
  errorMessage = promiseResult[0].reason.message;
289
291
  } else {
290
- errorMessage = __('An error occurred while deleting the item.');
292
+ errorMessage = isResetting ? __('An error occurred while reverting the item.') : __('An error occurred while deleting the item.');
291
293
  }
292
294
  // If we were trying to delete a multiple templates
293
295
  } else {
@@ -303,10 +305,12 @@ export const removeTemplates = items => async ({
303
305
  if (errorMessages.size === 0) {
304
306
  errorMessage = __('An error occurred while deleting the items.');
305
307
  } else if (errorMessages.size === 1) {
306
- errorMessage = sprintf( /* translators: %s: an error message */
308
+ errorMessage = isResetting ? sprintf( /* translators: %s: an error message */
309
+ __('An error occurred while reverting the items: %s'), [...errorMessages][0]) : sprintf( /* translators: %s: an error message */
307
310
  __('An error occurred while deleting the items: %s'), [...errorMessages][0]);
308
311
  } else {
309
- sprintf( /* translators: %s: a list of comma separated error messages */
312
+ errorMessage = isResetting ? sprintf( /* translators: %s: a list of comma separated error messages */
313
+ __('Some errors occurred while reverting the items: %s'), [...errorMessages].join(',')) : sprintf( /* translators: %s: a list of comma separated error messages */
310
314
  __('Some errors occurred while deleting the items: %s'), [...errorMessages].join(','));
311
315
  }
312
316
  }
@@ -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';\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';\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":[]}
@@ -1019,19 +1019,6 @@ body.is-fullscreen-mode .interface-interface-skeleton {
1019
1019
  margin-bottom: 4px;
1020
1020
  }
1021
1021
 
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
1022
  .editor-error-boundary {
1036
1023
  margin: auto;
1037
1024
  max-width: 780px;
@@ -1470,6 +1457,7 @@ body.is-fullscreen-mode .interface-interface-skeleton {
1470
1457
  flex-wrap: wrap;
1471
1458
  column-gap: 8px;
1472
1459
  row-gap: 4px;
1460
+ word-break: break-word;
1473
1461
  }
1474
1462
  .editor-post-card-panel__icon {
1475
1463
  flex: 0 0 24px;
@@ -1895,7 +1883,7 @@ body.is-fullscreen-mode .interface-interface-skeleton {
1895
1883
  position: fixed;
1896
1884
  z-index: 100001;
1897
1885
  background: #fff;
1898
- top: 0;
1886
+ top: 46px;
1899
1887
  bottom: 0;
1900
1888
  left: 0;
1901
1889
  right: 0;
@@ -2178,6 +2166,10 @@ textarea.editor-post-text-editor:-ms-input-placeholder {
2178
2166
  padding-inline-start: 0 !important;
2179
2167
  }
2180
2168
 
2169
+ .editor-post-url__panel-toggle {
2170
+ word-break: break-word;
2171
+ }
2172
+
2181
2173
  .editor-post-visibility__fieldset .editor-post-visibility__radio[type=radio] {
2182
2174
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
2183
2175
  padding: 6px 8px;
@@ -2341,8 +2333,7 @@ textarea.editor-post-text-editor:-ms-input-placeholder {
2341
2333
  padding: 0;
2342
2334
  margin: auto 0;
2343
2335
  width: 12px;
2344
- -webkit-appearance: none;
2345
- appearance: none;
2336
+ appearance: none;
2346
2337
  cursor: ew-resize;
2347
2338
  outline: none;
2348
2339
  background: none;
@@ -2656,6 +2647,7 @@ h3.components-heading.editor-template-areas__title {
2656
2647
  height: 100%;
2657
2648
  display: block;
2658
2649
  background-color: #ddd;
2650
+ isolation: isolate;
2659
2651
  align-items: center;
2660
2652
  }
2661
2653
  .editor-visual-editor.is-resizable {
@@ -1019,19 +1019,6 @@ body.is-fullscreen-mode .interface-interface-skeleton {
1019
1019
  margin-bottom: 4px;
1020
1020
  }
1021
1021
 
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
1022
  .editor-error-boundary {
1036
1023
  margin: auto;
1037
1024
  max-width: 780px;
@@ -1470,6 +1457,7 @@ body.is-fullscreen-mode .interface-interface-skeleton {
1470
1457
  flex-wrap: wrap;
1471
1458
  column-gap: 8px;
1472
1459
  row-gap: 4px;
1460
+ word-break: break-word;
1473
1461
  }
1474
1462
  .editor-post-card-panel__icon {
1475
1463
  flex: 0 0 24px;
@@ -1895,7 +1883,7 @@ body.is-fullscreen-mode .interface-interface-skeleton {
1895
1883
  position: fixed;
1896
1884
  z-index: 100001;
1897
1885
  background: #fff;
1898
- top: 0;
1886
+ top: 46px;
1899
1887
  bottom: 0;
1900
1888
  right: 0;
1901
1889
  left: 0;
@@ -2182,6 +2170,10 @@ textarea.editor-post-text-editor:-ms-input-placeholder {
2182
2170
  padding-inline-start: 0 !important;
2183
2171
  }
2184
2172
 
2173
+ .editor-post-url__panel-toggle {
2174
+ word-break: break-word;
2175
+ }
2176
+
2185
2177
  .editor-post-visibility__fieldset .editor-post-visibility__radio[type=radio] {
2186
2178
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
2187
2179
  padding: 6px 8px;
@@ -2345,8 +2337,7 @@ textarea.editor-post-text-editor:-ms-input-placeholder {
2345
2337
  padding: 0;
2346
2338
  margin: auto 0;
2347
2339
  width: 12px;
2348
- -webkit-appearance: none;
2349
- appearance: none;
2340
+ appearance: none;
2350
2341
  cursor: ew-resize;
2351
2342
  outline: none;
2352
2343
  background: none;
@@ -2660,6 +2651,7 @@ h3.components-heading.editor-template-areas__title {
2660
2651
  height: 100%;
2661
2652
  display: block;
2662
2653
  background-color: #ddd;
2654
+ isolation: isolate;
2663
2655
  align-items: center;
2664
2656
  }
2665
2657
  .editor-visual-editor.is-resizable {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/editor",
3
- "version": "14.0.1",
3
+ "version": "14.0.3",
4
4
  "description": "Enhanced block editor for WordPress posts.",
5
5
  "author": "The WordPress Contributors",
6
6
  "license": "GPL-2.0-or-later",
@@ -35,13 +35,13 @@
35
35
  "@wordpress/a11y": "^4.0.1",
36
36
  "@wordpress/api-fetch": "^7.0.1",
37
37
  "@wordpress/blob": "^4.0.1",
38
- "@wordpress/block-editor": "^13.0.1",
39
- "@wordpress/blocks": "^13.0.1",
40
- "@wordpress/commands": "^1.0.1",
41
- "@wordpress/components": "^28.0.1",
38
+ "@wordpress/block-editor": "^13.0.3",
39
+ "@wordpress/blocks": "^13.0.3",
40
+ "@wordpress/commands": "^1.0.3",
41
+ "@wordpress/components": "^28.0.3",
42
42
  "@wordpress/compose": "^7.0.1",
43
- "@wordpress/core-data": "^7.0.1",
44
- "@wordpress/data": "^10.0.1",
43
+ "@wordpress/core-data": "^7.0.3",
44
+ "@wordpress/data": "^10.0.2",
45
45
  "@wordpress/date": "^5.0.1",
46
46
  "@wordpress/deprecated": "^4.0.1",
47
47
  "@wordpress/dom": "^4.0.1",
@@ -49,19 +49,19 @@
49
49
  "@wordpress/hooks": "^4.0.1",
50
50
  "@wordpress/html-entities": "^4.0.1",
51
51
  "@wordpress/i18n": "^5.0.1",
52
- "@wordpress/icons": "^10.0.1",
53
- "@wordpress/interface": "^6.0.1",
54
- "@wordpress/keyboard-shortcuts": "^5.0.1",
52
+ "@wordpress/icons": "^10.0.2",
53
+ "@wordpress/interface": "^6.0.3",
54
+ "@wordpress/keyboard-shortcuts": "^5.0.2",
55
55
  "@wordpress/keycodes": "^4.0.1",
56
56
  "@wordpress/media-utils": "^5.0.1",
57
- "@wordpress/notices": "^5.0.1",
58
- "@wordpress/patterns": "^2.0.1",
59
- "@wordpress/plugins": "^7.0.1",
60
- "@wordpress/preferences": "^4.0.1",
61
- "@wordpress/private-apis": "^1.0.1",
62
- "@wordpress/reusable-blocks": "^5.0.1",
63
- "@wordpress/rich-text": "^7.0.1",
64
- "@wordpress/server-side-render": "^5.0.1",
57
+ "@wordpress/notices": "^5.0.2",
58
+ "@wordpress/patterns": "^2.0.3",
59
+ "@wordpress/plugins": "^7.0.3",
60
+ "@wordpress/preferences": "^4.0.3",
61
+ "@wordpress/private-apis": "^1.0.2",
62
+ "@wordpress/reusable-blocks": "^5.0.3",
63
+ "@wordpress/rich-text": "^7.0.2",
64
+ "@wordpress/server-side-render": "^5.0.3",
65
65
  "@wordpress/url": "^4.0.1",
66
66
  "@wordpress/warning": "^3.0.1",
67
67
  "@wordpress/wordcount": "^4.0.1",
@@ -83,5 +83,5 @@
83
83
  "publishConfig": {
84
84
  "access": "public"
85
85
  },
86
- "gitHead": "0e973525f7787401b5a544e0727774d52a78639f"
86
+ "gitHead": "9dd5f8dcfa4fc7242e5d48be20ee789ad087b432"
87
87
  }
@@ -28,10 +28,6 @@ import { store as editorStore } from '../../store';
28
28
  import EditorHistoryRedo from '../editor-history/redo';
29
29
  import EditorHistoryUndo from '../editor-history/undo';
30
30
 
31
- const preventDefault = ( event ) => {
32
- event.preventDefault();
33
- };
34
-
35
31
  function DocumentTools( { className, disableBlockTools = false } ) {
36
32
  const { setIsInserterOpened, setIsListViewOpened } =
37
33
  useDispatch( editorStore );
@@ -72,6 +68,19 @@ function DocumentTools( { className, disableBlockTools = false } ) {
72
68
  };
73
69
  }, [] );
74
70
 
71
+ const preventDefault = ( event ) => {
72
+ // Because the inserter behaves like a dialog,
73
+ // if the inserter is opened already then when we click on the toggle button
74
+ // then the initial click event will close the inserter and then be propagated
75
+ // to the inserter toggle and it will open it again.
76
+ // To prevent this we need to stop the propagation of the event.
77
+ // This won't be necessary when the inserter no longer behaves like a dialog.
78
+
79
+ if ( isInserterOpened ) {
80
+ event.preventDefault();
81
+ }
82
+ };
83
+
75
84
  const isLargeViewport = useViewportMatch( 'medium' );
76
85
  const isWideViewport = useViewportMatch( 'wide' );
77
86