@wordpress/editor 14.8.2 → 14.8.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/components/editor-interface/index.js +7 -3
- package/build/components/editor-interface/index.js.map +1 -1
- package/build/components/plugin-sidebar/index.js +2 -6
- package/build/components/plugin-sidebar/index.js.map +1 -1
- package/build/components/post-publish-button/index.js +0 -15
- package/build/components/post-publish-button/index.js.map +1 -1
- package/build/components/post-publish-panel/index.js +19 -7
- package/build/components/post-publish-panel/index.js.map +1 -1
- package/build/components/preview-dropdown/index.js +9 -1
- package/build/components/preview-dropdown/index.js.map +1 -1
- package/build/components/visual-editor/index.js +6 -6
- package/build/components/visual-editor/index.js.map +1 -1
- package/build/components/zoom-out-toggle/index.js +17 -5
- package/build/components/zoom-out-toggle/index.js.map +1 -1
- package/build-module/components/editor-interface/index.js +7 -3
- package/build-module/components/editor-interface/index.js.map +1 -1
- package/build-module/components/plugin-sidebar/index.js +2 -6
- package/build-module/components/plugin-sidebar/index.js.map +1 -1
- package/build-module/components/post-publish-button/index.js +1 -16
- package/build-module/components/post-publish-button/index.js.map +1 -1
- package/build-module/components/post-publish-panel/index.js +20 -8
- package/build-module/components/post-publish-panel/index.js.map +1 -1
- package/build-module/components/preview-dropdown/index.js +9 -1
- package/build-module/components/preview-dropdown/index.js.map +1 -1
- package/build-module/components/visual-editor/index.js +6 -6
- package/build-module/components/visual-editor/index.js.map +1 -1
- package/build-module/components/zoom-out-toggle/index.js +17 -5
- package/build-module/components/zoom-out-toggle/index.js.map +1 -1
- package/build-style/style-rtl.css +2 -2
- package/build-style/style.css +2 -2
- package/build-types/components/editor-interface/index.d.ts.map +1 -1
- package/build-types/components/plugin-sidebar/index.d.ts.map +1 -1
- package/build-types/components/post-publish-button/index.d.ts +0 -4
- package/build-types/components/post-publish-button/index.d.ts.map +1 -1
- package/build-types/components/post-publish-panel/index.d.ts +4 -0
- package/build-types/components/post-publish-panel/index.d.ts.map +1 -1
- package/build-types/components/preview-dropdown/index.d.ts.map +1 -1
- package/build-types/components/visual-editor/index.d.ts.map +1 -1
- package/build-types/components/zoom-out-toggle/index.d.ts.map +1 -1
- package/package.json +20 -20
- package/src/components/editor-interface/index.js +6 -4
- package/src/components/plugin-sidebar/index.js +1 -6
- package/src/components/post-publish-button/index.js +1 -18
- package/src/components/post-publish-panel/index.js +22 -8
- package/src/components/post-publish-panel/style.scss +2 -2
- package/src/components/post-publish-panel/test/__snapshots__/index.js.snap +21 -21
- package/src/components/preview-dropdown/index.js +8 -1
- package/src/components/visual-editor/index.js +8 -6
- package/src/components/zoom-out-toggle/index.js +17 -6
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","Component","Button","Spinner","CheckboxControl","withFocusReturn","withConstrainedTabbing","withSelect","withDispatch","compose","closeSmall","store","coreStore","PostPublishButton","PostPublishPanelPrepublish","PostPublishPanelPostpublish","editorStore","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","PostPublishPanel","constructor","arguments","onSubmit","bind","componentDidUpdate","prevProps","isPublished","props","isSaving","isDirty","onClose","hasPublishAction","isPostTypeViewable","render","forceIsDirty","isBeingScheduled","isPublishSidebarEnabled","isScheduled","isSavingNonPostEntityChanges","onTogglePublishSidebar","PostPublishExtension","PrePublishExtension","additionalProps","propsForPanel","isPublishedOrScheduled","isPrePublish","isPostPublish","className","children","size","onClick","icon","label","focusOnMount","accessibleWhenDisabled","disabled","variant","__nextHasNoMarginBottom","checked","onChange","select","_getCurrentPost$_link","getPostType","getCurrentPost","getEditedPostAttribute","isCurrentPostPublished","isCurrentPostScheduled","isEditedPostBeingScheduled","isEditedPostDirty","isAutosavingPost","isSavingPost","postType","_links","viewable","dispatch","disablePublishSidebar","enablePublishSidebar"],"sources":["@wordpress/editor/src/components/post-publish-panel/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { Component } from '@wordpress/element';\nimport {\n\tButton,\n\tSpinner,\n\tCheckboxControl,\n\twithFocusReturn,\n\twithConstrainedTabbing,\n} from '@wordpress/components';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { compose } from '@wordpress/compose';\nimport { closeSmall } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport PostPublishButton from '../post-publish-button';\nimport PostPublishPanelPrepublish from './prepublish';\nimport PostPublishPanelPostpublish from './postpublish';\nimport { store as editorStore } from '../../store';\n\nexport class PostPublishPanel extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\t\tthis.onSubmit = this.onSubmit.bind( this );\n\t}\n\n\tcomponentDidUpdate( prevProps ) {\n\t\t// Automatically collapse the publish sidebar when a post\n\t\t// is published and the user makes an edit.\n\t\tif (\n\t\t\tprevProps.isPublished &&\n\t\t\t! this.props.isSaving &&\n\t\t\tthis.props.isDirty\n\t\t) {\n\t\t\tthis.props.onClose();\n\t\t}\n\t}\n\n\tonSubmit() {\n\t\tconst { onClose, hasPublishAction, isPostTypeViewable } = this.props;\n\t\tif ( ! hasPublishAction || ! isPostTypeViewable ) {\n\t\t\tonClose();\n\t\t}\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\tforceIsDirty,\n\t\t\tisBeingScheduled,\n\t\t\tisPublished,\n\t\t\tisPublishSidebarEnabled,\n\t\t\tisScheduled,\n\t\t\tisSaving,\n\t\t\tisSavingNonPostEntityChanges,\n\t\t\tonClose,\n\t\t\tonTogglePublishSidebar,\n\t\t\tPostPublishExtension,\n\t\t\tPrePublishExtension,\n\t\t\t...additionalProps\n\t\t} = this.props;\n\t\tconst {\n\t\t\thasPublishAction,\n\t\t\tisDirty,\n\t\t\tisPostTypeViewable,\n\t\t\t...propsForPanel\n\t\t} = additionalProps;\n\t\tconst isPublishedOrScheduled =\n\t\t\tisPublished || ( isScheduled && isBeingScheduled );\n\t\tconst isPrePublish = ! isPublishedOrScheduled && ! isSaving;\n\t\tconst isPostPublish = isPublishedOrScheduled && ! isSaving;\n\t\treturn (\n\t\t\t<div className=\"editor-post-publish-panel\" { ...propsForPanel }>\n\t\t\t\t<div className=\"editor-post-publish-panel__header\">\n\t\t\t\t\t{ isPostPublish ? (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t\tonClick={ onClose }\n\t\t\t\t\t\t\ticon={ closeSmall }\n\t\t\t\t\t\t\tlabel={ __( 'Close panel' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<div className=\"editor-post-publish-panel__header-publish-button\">\n\t\t\t\t\t\t\t\t<PostPublishButton\n\t\t\t\t\t\t\t\t\tfocusOnMount\n\t\t\t\t\t\t\t\t\tonSubmit={ this.onSubmit }\n\t\t\t\t\t\t\t\t\tforceIsDirty={ forceIsDirty }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div className=\"editor-post-publish-panel__header-cancel-button\">\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\t\t\t\t\tdisabled={ isSavingNonPostEntityChanges }\n\t\t\t\t\t\t\t\t\tonClick={ onClose }\n\t\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t\t<div className=\"editor-post-publish-panel__content\">\n\t\t\t\t\t{ isPrePublish && (\n\t\t\t\t\t\t<PostPublishPanelPrepublish>\n\t\t\t\t\t\t\t{ PrePublishExtension && <PrePublishExtension /> }\n\t\t\t\t\t\t</PostPublishPanelPrepublish>\n\t\t\t\t\t) }\n\t\t\t\t\t{ isPostPublish && (\n\t\t\t\t\t\t<PostPublishPanelPostpublish focusOnMount>\n\t\t\t\t\t\t\t{ PostPublishExtension && <PostPublishExtension /> }\n\t\t\t\t\t\t</PostPublishPanelPostpublish>\n\t\t\t\t\t) }\n\t\t\t\t\t{ isSaving && <Spinner /> }\n\t\t\t\t</div>\n\t\t\t\t<div className=\"editor-post-publish-panel__footer\">\n\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Always show pre-publish checks.' ) }\n\t\t\t\t\t\tchecked={ isPublishSidebarEnabled }\n\t\t\t\t\t\tonChange={ onTogglePublishSidebar }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t);\n\t}\n}\n\n/**\n * Renders a panel for publishing a post.\n */\nexport default compose( [\n\twithSelect( ( select ) => {\n\t\tconst { getPostType } = select( coreStore );\n\t\tconst {\n\t\t\tgetCurrentPost,\n\t\t\tgetEditedPostAttribute,\n\t\t\tisCurrentPostPublished,\n\t\t\tisCurrentPostScheduled,\n\t\t\tisEditedPostBeingScheduled,\n\t\t\tisEditedPostDirty,\n\t\t\tisAutosavingPost,\n\t\t\tisSavingPost,\n\t\t\tisSavingNonPostEntityChanges,\n\t\t} = select( editorStore );\n\t\tconst { isPublishSidebarEnabled } = select( editorStore );\n\t\tconst postType = getPostType( getEditedPostAttribute( 'type' ) );\n\n\t\treturn {\n\t\t\thasPublishAction:\n\t\t\t\tgetCurrentPost()._links?.[ 'wp:action-publish' ] ?? false,\n\t\t\tisPostTypeViewable: postType?.viewable,\n\t\t\tisBeingScheduled: isEditedPostBeingScheduled(),\n\t\t\tisDirty: isEditedPostDirty(),\n\t\t\tisPublished: isCurrentPostPublished(),\n\t\t\tisPublishSidebarEnabled: isPublishSidebarEnabled(),\n\t\t\tisSaving: isSavingPost() && ! isAutosavingPost(),\n\t\t\tisSavingNonPostEntityChanges: isSavingNonPostEntityChanges(),\n\t\t\tisScheduled: isCurrentPostScheduled(),\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch, { isPublishSidebarEnabled } ) => {\n\t\tconst { disablePublishSidebar, enablePublishSidebar } =\n\t\t\tdispatch( editorStore );\n\t\treturn {\n\t\t\tonTogglePublishSidebar: () => {\n\t\t\t\tif ( isPublishSidebarEnabled ) {\n\t\t\t\t\tdisablePublishSidebar();\n\t\t\t\t} else {\n\t\t\t\t\tenablePublishSidebar();\n\t\t\t\t}\n\t\t\t},\n\t\t};\n\t} ),\n\twithFocusReturn,\n\twithConstrainedTabbing,\n] )( PostPublishPanel );\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["__","Component","createRef","Button","Spinner","CheckboxControl","withFocusReturn","withConstrainedTabbing","withSelect","withDispatch","compose","closeSmall","store","coreStore","PostPublishButton","PostPublishPanelPrepublish","PostPublishPanelPostpublish","editorStore","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","PostPublishPanel","constructor","arguments","onSubmit","bind","cancelButtonNode","componentDidMount","timeoutID","setTimeout","current","focus","componentWillUnmount","clearTimeout","componentDidUpdate","prevProps","isPublished","props","isSaving","isDirty","onClose","hasPublishAction","isPostTypeViewable","render","forceIsDirty","isBeingScheduled","isPublishSidebarEnabled","isScheduled","isSavingNonPostEntityChanges","onTogglePublishSidebar","PostPublishExtension","PrePublishExtension","additionalProps","propsForPanel","isPublishedOrScheduled","isPrePublish","isPostPublish","className","children","size","onClick","icon","label","ref","accessibleWhenDisabled","disabled","variant","focusOnMount","__nextHasNoMarginBottom","checked","onChange","select","_getCurrentPost$_link","getPostType","getCurrentPost","getEditedPostAttribute","isCurrentPostPublished","isCurrentPostScheduled","isEditedPostBeingScheduled","isEditedPostDirty","isAutosavingPost","isSavingPost","postType","_links","viewable","dispatch","disablePublishSidebar","enablePublishSidebar"],"sources":["@wordpress/editor/src/components/post-publish-panel/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { Component, createRef } from '@wordpress/element';\nimport {\n\tButton,\n\tSpinner,\n\tCheckboxControl,\n\twithFocusReturn,\n\twithConstrainedTabbing,\n} from '@wordpress/components';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { compose } from '@wordpress/compose';\nimport { closeSmall } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport PostPublishButton from '../post-publish-button';\nimport PostPublishPanelPrepublish from './prepublish';\nimport PostPublishPanelPostpublish from './postpublish';\nimport { store as editorStore } from '../../store';\n\nexport class PostPublishPanel extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\t\tthis.onSubmit = this.onSubmit.bind( this );\n\t\tthis.cancelButtonNode = createRef();\n\t}\n\n\tcomponentDidMount() {\n\t\t// This timeout is necessary to make sure the `useEffect` hook of\n\t\t// `useFocusReturn` gets the correct element (the button that opens the\n\t\t// PostPublishPanel) otherwise it will get this button.\n\t\tthis.timeoutID = setTimeout( () => {\n\t\t\tthis.cancelButtonNode.current.focus();\n\t\t}, 0 );\n\t}\n\n\tcomponentWillUnmount() {\n\t\tclearTimeout( this.timeoutID );\n\t}\n\n\tcomponentDidUpdate( prevProps ) {\n\t\t// Automatically collapse the publish sidebar when a post\n\t\t// is published and the user makes an edit.\n\t\tif (\n\t\t\tprevProps.isPublished &&\n\t\t\t! this.props.isSaving &&\n\t\t\tthis.props.isDirty\n\t\t) {\n\t\t\tthis.props.onClose();\n\t\t}\n\t}\n\n\tonSubmit() {\n\t\tconst { onClose, hasPublishAction, isPostTypeViewable } = this.props;\n\t\tif ( ! hasPublishAction || ! isPostTypeViewable ) {\n\t\t\tonClose();\n\t\t}\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\tforceIsDirty,\n\t\t\tisBeingScheduled,\n\t\t\tisPublished,\n\t\t\tisPublishSidebarEnabled,\n\t\t\tisScheduled,\n\t\t\tisSaving,\n\t\t\tisSavingNonPostEntityChanges,\n\t\t\tonClose,\n\t\t\tonTogglePublishSidebar,\n\t\t\tPostPublishExtension,\n\t\t\tPrePublishExtension,\n\t\t\t...additionalProps\n\t\t} = this.props;\n\t\tconst {\n\t\t\thasPublishAction,\n\t\t\tisDirty,\n\t\t\tisPostTypeViewable,\n\t\t\t...propsForPanel\n\t\t} = additionalProps;\n\t\tconst isPublishedOrScheduled =\n\t\t\tisPublished || ( isScheduled && isBeingScheduled );\n\t\tconst isPrePublish = ! isPublishedOrScheduled && ! isSaving;\n\t\tconst isPostPublish = isPublishedOrScheduled && ! isSaving;\n\t\treturn (\n\t\t\t<div className=\"editor-post-publish-panel\" { ...propsForPanel }>\n\t\t\t\t<div className=\"editor-post-publish-panel__header\">\n\t\t\t\t\t{ isPostPublish ? (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t\tonClick={ onClose }\n\t\t\t\t\t\t\ticon={ closeSmall }\n\t\t\t\t\t\t\tlabel={ __( 'Close panel' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<div className=\"editor-post-publish-panel__header-cancel-button\">\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tref={ this.cancelButtonNode }\n\t\t\t\t\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\t\t\t\t\tdisabled={ isSavingNonPostEntityChanges }\n\t\t\t\t\t\t\t\t\tonClick={ onClose }\n\t\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div className=\"editor-post-publish-panel__header-publish-button\">\n\t\t\t\t\t\t\t\t<PostPublishButton\n\t\t\t\t\t\t\t\t\tonSubmit={ this.onSubmit }\n\t\t\t\t\t\t\t\t\tforceIsDirty={ forceIsDirty }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t\t<div className=\"editor-post-publish-panel__content\">\n\t\t\t\t\t{ isPrePublish && (\n\t\t\t\t\t\t<PostPublishPanelPrepublish>\n\t\t\t\t\t\t\t{ PrePublishExtension && <PrePublishExtension /> }\n\t\t\t\t\t\t</PostPublishPanelPrepublish>\n\t\t\t\t\t) }\n\t\t\t\t\t{ isPostPublish && (\n\t\t\t\t\t\t<PostPublishPanelPostpublish focusOnMount>\n\t\t\t\t\t\t\t{ PostPublishExtension && <PostPublishExtension /> }\n\t\t\t\t\t\t</PostPublishPanelPostpublish>\n\t\t\t\t\t) }\n\t\t\t\t\t{ isSaving && <Spinner /> }\n\t\t\t\t</div>\n\t\t\t\t<div className=\"editor-post-publish-panel__footer\">\n\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Always show pre-publish checks.' ) }\n\t\t\t\t\t\tchecked={ isPublishSidebarEnabled }\n\t\t\t\t\t\tonChange={ onTogglePublishSidebar }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t);\n\t}\n}\n\n/**\n * Renders a panel for publishing a post.\n */\nexport default compose( [\n\twithSelect( ( select ) => {\n\t\tconst { getPostType } = select( coreStore );\n\t\tconst {\n\t\t\tgetCurrentPost,\n\t\t\tgetEditedPostAttribute,\n\t\t\tisCurrentPostPublished,\n\t\t\tisCurrentPostScheduled,\n\t\t\tisEditedPostBeingScheduled,\n\t\t\tisEditedPostDirty,\n\t\t\tisAutosavingPost,\n\t\t\tisSavingPost,\n\t\t\tisSavingNonPostEntityChanges,\n\t\t} = select( editorStore );\n\t\tconst { isPublishSidebarEnabled } = select( editorStore );\n\t\tconst postType = getPostType( getEditedPostAttribute( 'type' ) );\n\n\t\treturn {\n\t\t\thasPublishAction:\n\t\t\t\tgetCurrentPost()._links?.[ 'wp:action-publish' ] ?? false,\n\t\t\tisPostTypeViewable: postType?.viewable,\n\t\t\tisBeingScheduled: isEditedPostBeingScheduled(),\n\t\t\tisDirty: isEditedPostDirty(),\n\t\t\tisPublished: isCurrentPostPublished(),\n\t\t\tisPublishSidebarEnabled: isPublishSidebarEnabled(),\n\t\t\tisSaving: isSavingPost() && ! isAutosavingPost(),\n\t\t\tisSavingNonPostEntityChanges: isSavingNonPostEntityChanges(),\n\t\t\tisScheduled: isCurrentPostScheduled(),\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch, { isPublishSidebarEnabled } ) => {\n\t\tconst { disablePublishSidebar, enablePublishSidebar } =\n\t\t\tdispatch( editorStore );\n\t\treturn {\n\t\t\tonTogglePublishSidebar: () => {\n\t\t\t\tif ( isPublishSidebarEnabled ) {\n\t\t\t\t\tdisablePublishSidebar();\n\t\t\t\t} else {\n\t\t\t\t\tenablePublishSidebar();\n\t\t\t\t}\n\t\t\t},\n\t\t};\n\t} ),\n\twithFocusReturn,\n\twithConstrainedTabbing,\n] )( PostPublishPanel );\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -19,6 +19,7 @@ import { ActionItem } from '@wordpress/interface';
|
|
|
19
19
|
* Internal dependencies
|
|
20
20
|
*/
|
|
21
21
|
import { store as editorStore } from '../../store';
|
|
22
|
+
import { store as blockEditorStore } from '@wordpress/block-editor';
|
|
22
23
|
import PostPreviewButton from '../post-preview-button';
|
|
23
24
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
24
25
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
@@ -58,6 +59,13 @@ export default function PreviewDropdown({
|
|
|
58
59
|
const {
|
|
59
60
|
setDeviceType
|
|
60
61
|
} = useDispatch(editorStore);
|
|
62
|
+
const {
|
|
63
|
+
__unstableSetEditorMode
|
|
64
|
+
} = useDispatch(blockEditorStore);
|
|
65
|
+
const handleDevicePreviewChange = newDeviceType => {
|
|
66
|
+
setDeviceType(newDeviceType);
|
|
67
|
+
__unstableSetEditorMode('edit');
|
|
68
|
+
};
|
|
61
69
|
const isMobile = useViewportMatch('medium', '<');
|
|
62
70
|
if (isMobile) {
|
|
63
71
|
return null;
|
|
@@ -115,7 +123,7 @@ export default function PreviewDropdown({
|
|
|
115
123
|
children: /*#__PURE__*/_jsx(MenuItemsChoice, {
|
|
116
124
|
choices: choices,
|
|
117
125
|
value: deviceType,
|
|
118
|
-
onSelect:
|
|
126
|
+
onSelect: handleDevicePreviewChange
|
|
119
127
|
})
|
|
120
128
|
}), isTemplate && /*#__PURE__*/_jsx(MenuGroup, {
|
|
121
129
|
children: /*#__PURE__*/_jsxs(MenuItem, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","useViewportMatch","DropdownMenu","MenuGroup","MenuItem","MenuItemsChoice","VisuallyHidden","Icon","__","desktop","mobile","tablet","external","useSelect","useDispatch","store","coreStore","preferencesStore","ActionItem","editorStore","PostPreviewButton","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","PreviewDropdown","forceIsAutosaveable","disabled","deviceType","homeUrl","isTemplate","isViewable","showIconLabels","select","_getPostType$viewable","getDeviceType","getCurrentPostType","getEntityRecord","getPostType","get","_currentPostType","home","viewable","setDeviceType","isMobile","popoverProps","placement","toggleProps","className","iconPosition","size","showTooltip","accessibleWhenDisabled","menuProps","deviceIcons","choices","value","label","icon","toLowerCase","disableOpenOnArrowDown","children","onClose","onSelect","href","target","onClick","as","role","textContent","onPreview","Slot","name","fillProps"],"sources":["@wordpress/editor/src/components/preview-dropdown/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { useViewportMatch } from '@wordpress/compose';\nimport {\n\tDropdownMenu,\n\tMenuGroup,\n\tMenuItem,\n\tMenuItemsChoice,\n\tVisuallyHidden,\n\tIcon,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { desktop, mobile, tablet, external } from '@wordpress/icons';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { ActionItem } from '@wordpress/interface';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\nimport PostPreviewButton from '../post-preview-button';\n\nexport default function PreviewDropdown( { forceIsAutosaveable, disabled } ) {\n\tconst { deviceType, homeUrl, isTemplate, isViewable, showIconLabels } =\n\t\tuseSelect( ( select ) => {\n\t\t\tconst { getDeviceType, getCurrentPostType } = select( editorStore );\n\t\t\tconst { getEntityRecord, getPostType } = select( coreStore );\n\t\t\tconst { get } = select( preferencesStore );\n\t\t\tconst _currentPostType = getCurrentPostType();\n\t\t\treturn {\n\t\t\t\tdeviceType: getDeviceType(),\n\t\t\t\thomeUrl: getEntityRecord( 'root', '__unstableBase' )?.home,\n\t\t\t\tisTemplate: _currentPostType === 'wp_template',\n\t\t\t\tisViewable: getPostType( _currentPostType )?.viewable ?? false,\n\t\t\t\tshowIconLabels: get( 'core', 'showIconLabels' ),\n\t\t\t};\n\t\t}, [] );\n\tconst { setDeviceType } = useDispatch( editorStore );\n\n\tconst isMobile = useViewportMatch( 'medium', '<' );\n\tif ( isMobile ) {\n\t\treturn null;\n\t}\n\n\tconst popoverProps = {\n\t\tplacement: 'bottom-end',\n\t};\n\tconst toggleProps = {\n\t\tclassName: 'editor-preview-dropdown__toggle',\n\t\ticonPosition: 'right',\n\t\tsize: 'compact',\n\t\tshowTooltip: ! showIconLabels,\n\t\tdisabled,\n\t\taccessibleWhenDisabled: disabled,\n\t};\n\tconst menuProps = {\n\t\t'aria-label': __( 'View options' ),\n\t};\n\n\tconst deviceIcons = {\n\t\tdesktop,\n\t\tmobile,\n\t\ttablet,\n\t};\n\n\t/**\n\t * The choices for the device type.\n\t *\n\t * @type {Array}\n\t */\n\tconst choices = [\n\t\t{\n\t\t\tvalue: 'Desktop',\n\t\t\tlabel: __( 'Desktop' ),\n\t\t\ticon: desktop,\n\t\t},\n\t\t{\n\t\t\tvalue: 'Tablet',\n\t\t\tlabel: __( 'Tablet' ),\n\t\t\ticon: tablet,\n\t\t},\n\t\t{\n\t\t\tvalue: 'Mobile',\n\t\t\tlabel: __( 'Mobile' ),\n\t\t\ticon: mobile,\n\t\t},\n\t];\n\n\treturn (\n\t\t<DropdownMenu\n\t\t\tclassName={ clsx(\n\t\t\t\t'editor-preview-dropdown',\n\t\t\t\t`editor-preview-dropdown--${ deviceType.toLowerCase() }`\n\t\t\t) }\n\t\t\tpopoverProps={ popoverProps }\n\t\t\ttoggleProps={ toggleProps }\n\t\t\tmenuProps={ menuProps }\n\t\t\ticon={ deviceIcons[ deviceType.toLowerCase() ] }\n\t\t\tlabel={ __( 'View' ) }\n\t\t\tdisableOpenOnArrowDown={ disabled }\n\t\t>\n\t\t\t{ ( { onClose } ) => (\n\t\t\t\t<>\n\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t<MenuItemsChoice\n\t\t\t\t\t\t\tchoices={ choices }\n\t\t\t\t\t\t\tvalue={ deviceType }\n\t\t\t\t\t\t\tonSelect={
|
|
1
|
+
{"version":3,"names":["clsx","useViewportMatch","DropdownMenu","MenuGroup","MenuItem","MenuItemsChoice","VisuallyHidden","Icon","__","desktop","mobile","tablet","external","useSelect","useDispatch","store","coreStore","preferencesStore","ActionItem","editorStore","blockEditorStore","PostPreviewButton","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","PreviewDropdown","forceIsAutosaveable","disabled","deviceType","homeUrl","isTemplate","isViewable","showIconLabels","select","_getPostType$viewable","getDeviceType","getCurrentPostType","getEntityRecord","getPostType","get","_currentPostType","home","viewable","setDeviceType","__unstableSetEditorMode","handleDevicePreviewChange","newDeviceType","isMobile","popoverProps","placement","toggleProps","className","iconPosition","size","showTooltip","accessibleWhenDisabled","menuProps","deviceIcons","choices","value","label","icon","toLowerCase","disableOpenOnArrowDown","children","onClose","onSelect","href","target","onClick","as","role","textContent","onPreview","Slot","name","fillProps"],"sources":["@wordpress/editor/src/components/preview-dropdown/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { useViewportMatch } from '@wordpress/compose';\nimport {\n\tDropdownMenu,\n\tMenuGroup,\n\tMenuItem,\n\tMenuItemsChoice,\n\tVisuallyHidden,\n\tIcon,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { desktop, mobile, tablet, external } from '@wordpress/icons';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { ActionItem } from '@wordpress/interface';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport PostPreviewButton from '../post-preview-button';\n\nexport default function PreviewDropdown( { forceIsAutosaveable, disabled } ) {\n\tconst { deviceType, homeUrl, isTemplate, isViewable, showIconLabels } =\n\t\tuseSelect( ( select ) => {\n\t\t\tconst { getDeviceType, getCurrentPostType } = select( editorStore );\n\t\t\tconst { getEntityRecord, getPostType } = select( coreStore );\n\t\t\tconst { get } = select( preferencesStore );\n\t\t\tconst _currentPostType = getCurrentPostType();\n\t\t\treturn {\n\t\t\t\tdeviceType: getDeviceType(),\n\t\t\t\thomeUrl: getEntityRecord( 'root', '__unstableBase' )?.home,\n\t\t\t\tisTemplate: _currentPostType === 'wp_template',\n\t\t\t\tisViewable: getPostType( _currentPostType )?.viewable ?? false,\n\t\t\t\tshowIconLabels: get( 'core', 'showIconLabels' ),\n\t\t\t};\n\t\t}, [] );\n\tconst { setDeviceType } = useDispatch( editorStore );\n\tconst { __unstableSetEditorMode } = useDispatch( blockEditorStore );\n\n\tconst handleDevicePreviewChange = ( newDeviceType ) => {\n\t\tsetDeviceType( newDeviceType );\n\t\t__unstableSetEditorMode( 'edit' );\n\t};\n\n\tconst isMobile = useViewportMatch( 'medium', '<' );\n\tif ( isMobile ) {\n\t\treturn null;\n\t}\n\n\tconst popoverProps = {\n\t\tplacement: 'bottom-end',\n\t};\n\tconst toggleProps = {\n\t\tclassName: 'editor-preview-dropdown__toggle',\n\t\ticonPosition: 'right',\n\t\tsize: 'compact',\n\t\tshowTooltip: ! showIconLabels,\n\t\tdisabled,\n\t\taccessibleWhenDisabled: disabled,\n\t};\n\tconst menuProps = {\n\t\t'aria-label': __( 'View options' ),\n\t};\n\n\tconst deviceIcons = {\n\t\tdesktop,\n\t\tmobile,\n\t\ttablet,\n\t};\n\n\t/**\n\t * The choices for the device type.\n\t *\n\t * @type {Array}\n\t */\n\tconst choices = [\n\t\t{\n\t\t\tvalue: 'Desktop',\n\t\t\tlabel: __( 'Desktop' ),\n\t\t\ticon: desktop,\n\t\t},\n\t\t{\n\t\t\tvalue: 'Tablet',\n\t\t\tlabel: __( 'Tablet' ),\n\t\t\ticon: tablet,\n\t\t},\n\t\t{\n\t\t\tvalue: 'Mobile',\n\t\t\tlabel: __( 'Mobile' ),\n\t\t\ticon: mobile,\n\t\t},\n\t];\n\n\treturn (\n\t\t<DropdownMenu\n\t\t\tclassName={ clsx(\n\t\t\t\t'editor-preview-dropdown',\n\t\t\t\t`editor-preview-dropdown--${ deviceType.toLowerCase() }`\n\t\t\t) }\n\t\t\tpopoverProps={ popoverProps }\n\t\t\ttoggleProps={ toggleProps }\n\t\t\tmenuProps={ menuProps }\n\t\t\ticon={ deviceIcons[ deviceType.toLowerCase() ] }\n\t\t\tlabel={ __( 'View' ) }\n\t\t\tdisableOpenOnArrowDown={ disabled }\n\t\t>\n\t\t\t{ ( { onClose } ) => (\n\t\t\t\t<>\n\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t<MenuItemsChoice\n\t\t\t\t\t\t\tchoices={ choices }\n\t\t\t\t\t\t\tvalue={ deviceType }\n\t\t\t\t\t\t\tonSelect={ handleDevicePreviewChange }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t{ isTemplate && (\n\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\thref={ homeUrl }\n\t\t\t\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\t\t\t\ticon={ external }\n\t\t\t\t\t\t\t\tonClick={ onClose }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'View site' ) }\n\t\t\t\t\t\t\t\t<VisuallyHidden as=\"span\">\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t/* translators: accessibility text */\n\t\t\t\t\t\t\t\t\t\t__( '(opens in a new tab)' )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t) }\n\t\t\t\t\t{ isViewable && (\n\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t<PostPreviewButton\n\t\t\t\t\t\t\t\tclassName=\"editor-preview-dropdown__button-external\"\n\t\t\t\t\t\t\t\trole=\"menuitem\"\n\t\t\t\t\t\t\t\tforceIsAutosaveable={ forceIsAutosaveable }\n\t\t\t\t\t\t\t\taria-label={ __( 'Preview in new tab' ) }\n\t\t\t\t\t\t\t\ttextContent={\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t{ __( 'Preview in new tab' ) }\n\t\t\t\t\t\t\t\t\t\t<Icon icon={ external } />\n\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tonPreview={ onClose }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t) }\n\t\t\t\t\t<ActionItem.Slot\n\t\t\t\t\t\tname=\"core/plugin-preview-menu\"\n\t\t\t\t\t\tas={ MenuGroup }\n\t\t\t\t\t\tfillProps={ { onClick: onClose } }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) }\n\t\t</DropdownMenu>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -141,18 +141,18 @@ function VisualEditor({
|
|
|
141
141
|
hasRootPaddingAwareAlignments,
|
|
142
142
|
themeHasDisabledLayoutStyles,
|
|
143
143
|
themeSupportsLayout,
|
|
144
|
-
|
|
144
|
+
isZoomedOut
|
|
145
145
|
} = useSelect(select => {
|
|
146
146
|
const {
|
|
147
147
|
getSettings,
|
|
148
|
-
|
|
149
|
-
} = select(blockEditorStore);
|
|
148
|
+
isZoomOut: _isZoomOut
|
|
149
|
+
} = unlock(select(blockEditorStore));
|
|
150
150
|
const _settings = getSettings();
|
|
151
151
|
return {
|
|
152
152
|
themeHasDisabledLayoutStyles: _settings.disableLayoutStyles,
|
|
153
153
|
themeSupportsLayout: _settings.supportsLayout,
|
|
154
154
|
hasRootPaddingAwareAlignments: _settings.__experimentalFeatures?.useRootPaddingAwareAlignments,
|
|
155
|
-
|
|
155
|
+
isZoomedOut: _isZoomOut()
|
|
156
156
|
};
|
|
157
157
|
}, []);
|
|
158
158
|
const deviceStyles = useResizeCanvas(deviceType);
|
|
@@ -253,7 +253,7 @@ function VisualEditor({
|
|
|
253
253
|
}), useSelectNearestEditableBlock({
|
|
254
254
|
isEnabled: renderingMode === 'template-locked'
|
|
255
255
|
})]);
|
|
256
|
-
const zoomOutProps =
|
|
256
|
+
const zoomOutProps = isZoomedOut && !isTabletViewport ? {
|
|
257
257
|
scale: 'default',
|
|
258
258
|
frameSize: '48px'
|
|
259
259
|
} : {};
|
|
@@ -264,7 +264,7 @@ function VisualEditor({
|
|
|
264
264
|
// Disable resizing in mobile viewport.
|
|
265
265
|
!isMobileViewport &&
|
|
266
266
|
// Dsiable resizing in zoomed-out mode.
|
|
267
|
-
!
|
|
267
|
+
!isZoomedOut;
|
|
268
268
|
const shouldIframe = !disableIframe || ['Tablet', 'Mobile'].includes(deviceType);
|
|
269
269
|
const iframeStyles = useMemo(() => {
|
|
270
270
|
return [...(styles !== null && styles !== void 0 ? styles : []), {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","BlockList","store","blockEditorStore","__unstableUseTypewriter","useTypewriter","__unstableUseTypingObserver","useTypingObserver","useSettings","RecursionProvider","privateApis","blockEditorPrivateApis","__experimentalUseResizeCanvas","useResizeCanvas","useEffect","useRef","useMemo","useSelect","parse","coreStore","useMergeRefs","useViewportMatch","useResizeObserver","PostTitle","editorStore","unlock","EditTemplateBlocksNotification","ResizableEditor","useSelectNearestEditableBlock","NAVIGATION_POST_TYPE","PATTERN_POST_TYPE","TEMPLATE_PART_POST_TYPE","TEMPLATE_POST_TYPE","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","LayoutStyle","useLayoutClasses","useLayoutStyles","ExperimentalBlockCanvas","BlockCanvas","useFlashEditableBlocks","DESIGN_POST_TYPES","getPostContentAttributes","blocks","i","length","name","attributes","innerBlocks","nestedPostContent","checkForPostContentAtRootLevel","VisualEditor","autoFocus","styles","disableIframe","iframeProps","contentRef","className","resizeObserver","sizes","isMobileViewport","isTabletViewport","renderingMode","postContentAttributes","editedPostTemplate","wrapperBlockName","wrapperUniqueId","deviceType","isFocusedEntity","isDesignPostType","postType","isPreview","select","getCurrentPostId","getCurrentPostType","getCurrentTemplateId","getEditorSettings","getRenderingMode","getDeviceType","getPostType","getEditedEntityRecord","postTypeSlug","_renderingMode","_wrapperBlockName","editorSettings","supportsTemplateMode","postTypeObject","currentTemplateId","template","undefined","includes","viewable","onNavigateToPreviousEntityRecord","__unstableIsPreviewMode","isCleanNewPost","hasRootPaddingAwareAlignments","themeHasDisabledLayoutStyles","themeSupportsLayout","isZoomOutMode","getSettings","__unstableGetEditorMode","_settings","disableLayoutStyles","supportsLayout","__experimentalFeatures","useRootPaddingAwareAlignments","deviceStyles","globalLayoutSettings","fallbackLayout","type","newestPostContentAttributes","content","parseableContent","hasPostContentAtRootLevel","layout","align","postContentLayoutClasses","blockListLayoutClass","postContentLayoutStyles","postContentLayout","inherit","contentSize","wideSize","blockListLayout","postEditorLayout","observeTypingRef","titleRef","current","focus","alignCSS","localRef","typewriterRef","isEnabled","zoomOutProps","scale","frameSize","forceFullHeight","enableResizing","shouldIframe","iframeStyles","css","children","height","style","selector","contentEditable","ref","marginTop","blockName","uniqueId","toLowerCase","dropZoneElement","parentNode","__unstableDisableDropZone"],"sources":["@wordpress/editor/src/components/visual-editor/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBlockList,\n\tstore as blockEditorStore,\n\t__unstableUseTypewriter as useTypewriter,\n\t__unstableUseTypingObserver as useTypingObserver,\n\tuseSettings,\n\tRecursionProvider,\n\tprivateApis as blockEditorPrivateApis,\n\t__experimentalUseResizeCanvas as useResizeCanvas,\n} from '@wordpress/block-editor';\nimport { useEffect, useRef, useMemo } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { parse } from '@wordpress/blocks';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tuseMergeRefs,\n\tuseViewportMatch,\n\tuseResizeObserver,\n} from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport PostTitle from '../post-title';\nimport { store as editorStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\nimport EditTemplateBlocksNotification from './edit-template-blocks-notification';\nimport ResizableEditor from '../resizable-editor';\nimport useSelectNearestEditableBlock from './use-select-nearest-editable-block';\nimport {\n\tNAVIGATION_POST_TYPE,\n\tPATTERN_POST_TYPE,\n\tTEMPLATE_PART_POST_TYPE,\n\tTEMPLATE_POST_TYPE,\n} from '../../store/constants';\n\nconst {\n\tLayoutStyle,\n\tuseLayoutClasses,\n\tuseLayoutStyles,\n\tExperimentalBlockCanvas: BlockCanvas,\n\tuseFlashEditableBlocks,\n} = unlock( blockEditorPrivateApis );\n\n/**\n * These post types have a special editor where they don't allow you to fill the title\n * and they don't apply the layout styles.\n */\nconst DESIGN_POST_TYPES = [\n\tPATTERN_POST_TYPE,\n\tTEMPLATE_POST_TYPE,\n\tNAVIGATION_POST_TYPE,\n\tTEMPLATE_PART_POST_TYPE,\n];\n\n/**\n * Given an array of nested blocks, find the first Post Content\n * block inside it, recursing through any nesting levels,\n * and return its attributes.\n *\n * @param {Array} blocks A list of blocks.\n *\n * @return {Object | undefined} The Post Content block.\n */\nfunction getPostContentAttributes( blocks ) {\n\tfor ( let i = 0; i < blocks.length; i++ ) {\n\t\tif ( blocks[ i ].name === 'core/post-content' ) {\n\t\t\treturn blocks[ i ].attributes;\n\t\t}\n\t\tif ( blocks[ i ].innerBlocks.length ) {\n\t\t\tconst nestedPostContent = getPostContentAttributes(\n\t\t\t\tblocks[ i ].innerBlocks\n\t\t\t);\n\n\t\t\tif ( nestedPostContent ) {\n\t\t\t\treturn nestedPostContent;\n\t\t\t}\n\t\t}\n\t}\n}\n\nfunction checkForPostContentAtRootLevel( blocks ) {\n\tfor ( let i = 0; i < blocks.length; i++ ) {\n\t\tif ( blocks[ i ].name === 'core/post-content' ) {\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n}\n\nfunction VisualEditor( {\n\t// Ideally as we unify post and site editors, we won't need these props.\n\tautoFocus,\n\tstyles,\n\tdisableIframe = false,\n\tiframeProps,\n\tcontentRef,\n\tclassName,\n} ) {\n\tconst [ resizeObserver, sizes ] = useResizeObserver();\n\tconst isMobileViewport = useViewportMatch( 'small', '<' );\n\tconst isTabletViewport = useViewportMatch( 'medium', '<' );\n\tconst {\n\t\trenderingMode,\n\t\tpostContentAttributes,\n\t\teditedPostTemplate = {},\n\t\twrapperBlockName,\n\t\twrapperUniqueId,\n\t\tdeviceType,\n\t\tisFocusedEntity,\n\t\tisDesignPostType,\n\t\tpostType,\n\t\tisPreview,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetCurrentPostId,\n\t\t\tgetCurrentPostType,\n\t\t\tgetCurrentTemplateId,\n\t\t\tgetEditorSettings,\n\t\t\tgetRenderingMode,\n\t\t\tgetDeviceType,\n\t\t} = select( editorStore );\n\t\tconst { getPostType, getEditedEntityRecord } = select( coreStore );\n\t\tconst postTypeSlug = getCurrentPostType();\n\t\tconst _renderingMode = getRenderingMode();\n\t\tlet _wrapperBlockName;\n\n\t\tif ( postTypeSlug === PATTERN_POST_TYPE ) {\n\t\t\t_wrapperBlockName = 'core/block';\n\t\t} else if ( _renderingMode === 'post-only' ) {\n\t\t\t_wrapperBlockName = 'core/post-content';\n\t\t}\n\n\t\tconst editorSettings = getEditorSettings();\n\t\tconst supportsTemplateMode = editorSettings.supportsTemplateMode;\n\t\tconst postTypeObject = getPostType( postTypeSlug );\n\t\tconst currentTemplateId = getCurrentTemplateId();\n\t\tconst template = currentTemplateId\n\t\t\t? getEditedEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\tTEMPLATE_POST_TYPE,\n\t\t\t\t\tcurrentTemplateId\n\t\t\t )\n\t\t\t: undefined;\n\n\t\treturn {\n\t\t\trenderingMode: _renderingMode,\n\t\t\tpostContentAttributes: editorSettings.postContentAttributes,\n\t\t\tisDesignPostType: DESIGN_POST_TYPES.includes( postTypeSlug ),\n\t\t\t// Post template fetch returns a 404 on classic themes, which\n\t\t\t// messes with e2e tests, so check it's a block theme first.\n\t\t\teditedPostTemplate:\n\t\t\t\tpostTypeObject?.viewable && supportsTemplateMode\n\t\t\t\t\t? template\n\t\t\t\t\t: undefined,\n\t\t\twrapperBlockName: _wrapperBlockName,\n\t\t\twrapperUniqueId: getCurrentPostId(),\n\t\t\tdeviceType: getDeviceType(),\n\t\t\tisFocusedEntity: !! editorSettings.onNavigateToPreviousEntityRecord,\n\t\t\tpostType: postTypeSlug,\n\t\t\tisPreview: editorSettings.__unstableIsPreviewMode,\n\t\t};\n\t}, [] );\n\tconst { isCleanNewPost } = useSelect( editorStore );\n\tconst {\n\t\thasRootPaddingAwareAlignments,\n\t\tthemeHasDisabledLayoutStyles,\n\t\tthemeSupportsLayout,\n\t\tisZoomOutMode,\n\t} = useSelect( ( select ) => {\n\t\tconst { getSettings, __unstableGetEditorMode } =\n\t\t\tselect( blockEditorStore );\n\t\tconst _settings = getSettings();\n\t\treturn {\n\t\t\tthemeHasDisabledLayoutStyles: _settings.disableLayoutStyles,\n\t\t\tthemeSupportsLayout: _settings.supportsLayout,\n\t\t\thasRootPaddingAwareAlignments:\n\t\t\t\t_settings.__experimentalFeatures?.useRootPaddingAwareAlignments,\n\t\t\tisZoomOutMode: __unstableGetEditorMode() === 'zoom-out',\n\t\t};\n\t}, [] );\n\n\tconst deviceStyles = useResizeCanvas( deviceType );\n\tconst [ globalLayoutSettings ] = useSettings( 'layout' );\n\n\t// fallbackLayout is used if there is no Post Content,\n\t// and for Post Title.\n\tconst fallbackLayout = useMemo( () => {\n\t\tif ( renderingMode !== 'post-only' || isDesignPostType ) {\n\t\t\treturn { type: 'default' };\n\t\t}\n\n\t\tif ( themeSupportsLayout ) {\n\t\t\t// We need to ensure support for wide and full alignments,\n\t\t\t// so we add the constrained type.\n\t\t\treturn { ...globalLayoutSettings, type: 'constrained' };\n\t\t}\n\t\t// Set default layout for classic themes so all alignments are supported.\n\t\treturn { type: 'default' };\n\t}, [\n\t\trenderingMode,\n\t\tthemeSupportsLayout,\n\t\tglobalLayoutSettings,\n\t\tisDesignPostType,\n\t] );\n\n\tconst newestPostContentAttributes = useMemo( () => {\n\t\tif (\n\t\t\t! editedPostTemplate?.content &&\n\t\t\t! editedPostTemplate?.blocks &&\n\t\t\tpostContentAttributes\n\t\t) {\n\t\t\treturn postContentAttributes;\n\t\t}\n\t\t// When in template editing mode, we can access the blocks directly.\n\t\tif ( editedPostTemplate?.blocks ) {\n\t\t\treturn getPostContentAttributes( editedPostTemplate?.blocks );\n\t\t}\n\t\t// If there are no blocks, we have to parse the content string.\n\t\t// Best double-check it's a string otherwise the parse function gets unhappy.\n\t\tconst parseableContent =\n\t\t\ttypeof editedPostTemplate?.content === 'string'\n\t\t\t\t? editedPostTemplate?.content\n\t\t\t\t: '';\n\n\t\treturn getPostContentAttributes( parse( parseableContent ) ) || {};\n\t}, [\n\t\teditedPostTemplate?.content,\n\t\teditedPostTemplate?.blocks,\n\t\tpostContentAttributes,\n\t] );\n\n\tconst hasPostContentAtRootLevel = useMemo( () => {\n\t\tif ( ! editedPostTemplate?.content && ! editedPostTemplate?.blocks ) {\n\t\t\treturn false;\n\t\t}\n\t\t// When in template editing mode, we can access the blocks directly.\n\t\tif ( editedPostTemplate?.blocks ) {\n\t\t\treturn checkForPostContentAtRootLevel( editedPostTemplate?.blocks );\n\t\t}\n\t\t// If there are no blocks, we have to parse the content string.\n\t\t// Best double-check it's a string otherwise the parse function gets unhappy.\n\t\tconst parseableContent =\n\t\t\ttypeof editedPostTemplate?.content === 'string'\n\t\t\t\t? editedPostTemplate?.content\n\t\t\t\t: '';\n\n\t\treturn (\n\t\t\tcheckForPostContentAtRootLevel( parse( parseableContent ) ) || false\n\t\t);\n\t}, [ editedPostTemplate?.content, editedPostTemplate?.blocks ] );\n\n\tconst { layout = {}, align = '' } = newestPostContentAttributes || {};\n\n\tconst postContentLayoutClasses = useLayoutClasses(\n\t\tnewestPostContentAttributes,\n\t\t'core/post-content'\n\t);\n\n\tconst blockListLayoutClass = clsx(\n\t\t{\n\t\t\t'is-layout-flow': ! themeSupportsLayout,\n\t\t},\n\t\tthemeSupportsLayout && postContentLayoutClasses,\n\t\talign && `align${ align }`\n\t);\n\n\tconst postContentLayoutStyles = useLayoutStyles(\n\t\tnewestPostContentAttributes,\n\t\t'core/post-content',\n\t\t'.block-editor-block-list__layout.is-root-container'\n\t);\n\n\t// Update type for blocks using legacy layouts.\n\tconst postContentLayout = useMemo( () => {\n\t\treturn layout &&\n\t\t\t( layout?.type === 'constrained' ||\n\t\t\t\tlayout?.inherit ||\n\t\t\t\tlayout?.contentSize ||\n\t\t\t\tlayout?.wideSize )\n\t\t\t? { ...globalLayoutSettings, ...layout, type: 'constrained' }\n\t\t\t: { ...globalLayoutSettings, ...layout, type: 'default' };\n\t}, [\n\t\tlayout?.type,\n\t\tlayout?.inherit,\n\t\tlayout?.contentSize,\n\t\tlayout?.wideSize,\n\t\tglobalLayoutSettings,\n\t] );\n\n\t// If there is a Post Content block we use its layout for the block list;\n\t// if not, this must be a classic theme, in which case we use the fallback layout.\n\tconst blockListLayout = postContentAttributes\n\t\t? postContentLayout\n\t\t: fallbackLayout;\n\n\tconst postEditorLayout =\n\t\tblockListLayout?.type === 'default' && ! hasPostContentAtRootLevel\n\t\t\t? fallbackLayout\n\t\t\t: blockListLayout;\n\tconst observeTypingRef = useTypingObserver();\n\tconst titleRef = useRef();\n\tuseEffect( () => {\n\t\tif ( ! autoFocus || ! isCleanNewPost() ) {\n\t\t\treturn;\n\t\t}\n\t\ttitleRef?.current?.focus();\n\t}, [ autoFocus, isCleanNewPost ] );\n\n\t// Add some styles for alignwide/alignfull Post Content and its children.\n\tconst alignCSS = `.is-root-container.alignwide { max-width: var(--wp--style--global--wide-size); margin-left: auto; margin-right: auto;}\n\t\t.is-root-container.alignwide:where(.is-layout-flow) > :not(.alignleft):not(.alignright) { max-width: var(--wp--style--global--wide-size);}\n\t\t.is-root-container.alignfull { max-width: none; margin-left: auto; margin-right: auto;}\n\t\t.is-root-container.alignfull:where(.is-layout-flow) > :not(.alignleft):not(.alignright) { max-width: none;}`;\n\n\tconst localRef = useRef();\n\tconst typewriterRef = useTypewriter();\n\tcontentRef = useMergeRefs( [\n\t\tlocalRef,\n\t\tcontentRef,\n\t\trenderingMode === 'post-only' ? typewriterRef : null,\n\t\tuseFlashEditableBlocks( {\n\t\t\tisEnabled: renderingMode === 'template-locked',\n\t\t} ),\n\t\tuseSelectNearestEditableBlock( {\n\t\t\tisEnabled: renderingMode === 'template-locked',\n\t\t} ),\n\t] );\n\n\tconst zoomOutProps =\n\t\tisZoomOutMode && ! isTabletViewport\n\t\t\t? {\n\t\t\t\t\tscale: 'default',\n\t\t\t\t\tframeSize: '48px',\n\t\t\t }\n\t\t\t: {};\n\n\tconst forceFullHeight = postType === NAVIGATION_POST_TYPE;\n\tconst enableResizing =\n\t\t[\n\t\t\tNAVIGATION_POST_TYPE,\n\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\tPATTERN_POST_TYPE,\n\t\t].includes( postType ) &&\n\t\t// Disable in previews / view mode.\n\t\t! isPreview &&\n\t\t// Disable resizing in mobile viewport.\n\t\t! isMobileViewport &&\n\t\t// Dsiable resizing in zoomed-out mode.\n\t\t! isZoomOutMode;\n\tconst shouldIframe =\n\t\t! disableIframe || [ 'Tablet', 'Mobile' ].includes( deviceType );\n\n\tconst iframeStyles = useMemo( () => {\n\t\treturn [\n\t\t\t...( styles ?? [] ),\n\t\t\t{\n\t\t\t\tcss: `.is-root-container{display:flow-root;${\n\t\t\t\t\t// Some themes will have `min-height: 100vh` for the root container,\n\t\t\t\t\t// which isn't a requirement in auto resize mode.\n\t\t\t\t\tenableResizing ? 'min-height:0!important;' : ''\n\t\t\t\t}}`,\n\t\t\t},\n\t\t];\n\t}, [ styles, enableResizing ] );\n\n\treturn (\n\t\t<div\n\t\t\tclassName={ clsx(\n\t\t\t\t'editor-visual-editor',\n\t\t\t\t// this class is here for backward compatibility reasons.\n\t\t\t\t'edit-post-visual-editor',\n\t\t\t\tclassName,\n\t\t\t\t{\n\t\t\t\t\t'has-padding': isFocusedEntity || enableResizing,\n\t\t\t\t\t'is-resizable': enableResizing,\n\t\t\t\t\t'is-iframed': shouldIframe,\n\t\t\t\t}\n\t\t\t) }\n\t\t>\n\t\t\t<ResizableEditor\n\t\t\t\tenableResizing={ enableResizing }\n\t\t\t\theight={\n\t\t\t\t\tsizes.height && ! forceFullHeight ? sizes.height : '100%'\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t<BlockCanvas\n\t\t\t\t\tshouldIframe={ shouldIframe }\n\t\t\t\t\tcontentRef={ contentRef }\n\t\t\t\t\tstyles={ iframeStyles }\n\t\t\t\t\theight=\"100%\"\n\t\t\t\t\tiframeProps={ {\n\t\t\t\t\t\t...iframeProps,\n\t\t\t\t\t\t...zoomOutProps,\n\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\t...iframeProps?.style,\n\t\t\t\t\t\t\t...deviceStyles,\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ themeSupportsLayout &&\n\t\t\t\t\t\t! themeHasDisabledLayoutStyles &&\n\t\t\t\t\t\trenderingMode === 'post-only' &&\n\t\t\t\t\t\t! isDesignPostType && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<LayoutStyle\n\t\t\t\t\t\t\t\t\tselector=\".editor-visual-editor__post-title-wrapper\"\n\t\t\t\t\t\t\t\t\tlayout={ fallbackLayout }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<LayoutStyle\n\t\t\t\t\t\t\t\t\tselector=\".block-editor-block-list__layout.is-root-container\"\n\t\t\t\t\t\t\t\t\tlayout={ postEditorLayout }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{ align && <LayoutStyle css={ alignCSS } /> }\n\t\t\t\t\t\t\t\t{ postContentLayoutStyles && (\n\t\t\t\t\t\t\t\t\t<LayoutStyle\n\t\t\t\t\t\t\t\t\t\tlayout={ postContentLayout }\n\t\t\t\t\t\t\t\t\t\tcss={ postContentLayoutStyles }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t{ renderingMode === 'post-only' && ! isDesignPostType && (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t'editor-visual-editor__post-title-wrapper',\n\t\t\t\t\t\t\t\t// The following class is only here for backward comapatibility\n\t\t\t\t\t\t\t\t// some themes might be using it to style the post title.\n\t\t\t\t\t\t\t\t'edit-post-visual-editor__post-title-wrapper',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t'has-global-padding':\n\t\t\t\t\t\t\t\t\t\thasRootPaddingAwareAlignments,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tcontentEditable={ false }\n\t\t\t\t\t\t\tref={ observeTypingRef }\n\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t// This is using inline styles\n\t\t\t\t\t\t\t\t// so it's applied for both iframed and non iframed editors.\n\t\t\t\t\t\t\t\tmarginTop: '4rem',\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<PostTitle ref={ titleRef } />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\t\t\t\t\t<RecursionProvider\n\t\t\t\t\t\tblockName={ wrapperBlockName }\n\t\t\t\t\t\tuniqueId={ wrapperUniqueId }\n\t\t\t\t\t>\n\t\t\t\t\t\t<BlockList\n\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t'is-' + deviceType.toLowerCase() + '-preview',\n\t\t\t\t\t\t\t\trenderingMode !== 'post-only' ||\n\t\t\t\t\t\t\t\t\tisDesignPostType\n\t\t\t\t\t\t\t\t\t? 'wp-site-blocks'\n\t\t\t\t\t\t\t\t\t: `${ blockListLayoutClass } wp-block-post-content` // Ensure root level blocks receive default/flow blockGap styling rules.\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tlayout={ blockListLayout }\n\t\t\t\t\t\t\tdropZoneElement={\n\t\t\t\t\t\t\t\t// When iframed, pass in the html element of the iframe to\n\t\t\t\t\t\t\t\t// ensure the drop zone extends to the edges of the iframe.\n\t\t\t\t\t\t\t\tdisableIframe\n\t\t\t\t\t\t\t\t\t? localRef.current\n\t\t\t\t\t\t\t\t\t: localRef.current?.parentNode\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t__unstableDisableDropZone={\n\t\t\t\t\t\t\t\t// In template preview mode, disable drop zones at the root of the template.\n\t\t\t\t\t\t\t\trenderingMode === 'template-locked'\n\t\t\t\t\t\t\t\t\t? true\n\t\t\t\t\t\t\t\t\t: false\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ renderingMode === 'template-locked' && (\n\t\t\t\t\t\t\t<EditTemplateBlocksNotification\n\t\t\t\t\t\t\t\tcontentRef={ localRef }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</RecursionProvider>\n\t\t\t\t\t{\n\t\t\t\t\t\t// Avoid resize listeners when not needed,\n\t\t\t\t\t\t// these will trigger unnecessary re-renders\n\t\t\t\t\t\t// when animating the iframe width.\n\t\t\t\t\t\tenableResizing && resizeObserver\n\t\t\t\t\t}\n\t\t\t\t</BlockCanvas>\n\t\t\t</ResizableEditor>\n\t\t</div>\n\t);\n}\n\nexport default VisualEditor;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["clsx","BlockList","store","blockEditorStore","__unstableUseTypewriter","useTypewriter","__unstableUseTypingObserver","useTypingObserver","useSettings","RecursionProvider","privateApis","blockEditorPrivateApis","__experimentalUseResizeCanvas","useResizeCanvas","useEffect","useRef","useMemo","useSelect","parse","coreStore","useMergeRefs","useViewportMatch","useResizeObserver","PostTitle","editorStore","unlock","EditTemplateBlocksNotification","ResizableEditor","useSelectNearestEditableBlock","NAVIGATION_POST_TYPE","PATTERN_POST_TYPE","TEMPLATE_PART_POST_TYPE","TEMPLATE_POST_TYPE","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","LayoutStyle","useLayoutClasses","useLayoutStyles","ExperimentalBlockCanvas","BlockCanvas","useFlashEditableBlocks","DESIGN_POST_TYPES","getPostContentAttributes","blocks","i","length","name","attributes","innerBlocks","nestedPostContent","checkForPostContentAtRootLevel","VisualEditor","autoFocus","styles","disableIframe","iframeProps","contentRef","className","resizeObserver","sizes","isMobileViewport","isTabletViewport","renderingMode","postContentAttributes","editedPostTemplate","wrapperBlockName","wrapperUniqueId","deviceType","isFocusedEntity","isDesignPostType","postType","isPreview","select","getCurrentPostId","getCurrentPostType","getCurrentTemplateId","getEditorSettings","getRenderingMode","getDeviceType","getPostType","getEditedEntityRecord","postTypeSlug","_renderingMode","_wrapperBlockName","editorSettings","supportsTemplateMode","postTypeObject","currentTemplateId","template","undefined","includes","viewable","onNavigateToPreviousEntityRecord","__unstableIsPreviewMode","isCleanNewPost","hasRootPaddingAwareAlignments","themeHasDisabledLayoutStyles","themeSupportsLayout","isZoomedOut","getSettings","isZoomOut","_isZoomOut","_settings","disableLayoutStyles","supportsLayout","__experimentalFeatures","useRootPaddingAwareAlignments","deviceStyles","globalLayoutSettings","fallbackLayout","type","newestPostContentAttributes","content","parseableContent","hasPostContentAtRootLevel","layout","align","postContentLayoutClasses","blockListLayoutClass","postContentLayoutStyles","postContentLayout","inherit","contentSize","wideSize","blockListLayout","postEditorLayout","observeTypingRef","titleRef","current","focus","alignCSS","localRef","typewriterRef","isEnabled","zoomOutProps","scale","frameSize","forceFullHeight","enableResizing","shouldIframe","iframeStyles","css","children","height","style","selector","contentEditable","ref","marginTop","blockName","uniqueId","toLowerCase","dropZoneElement","parentNode","__unstableDisableDropZone"],"sources":["@wordpress/editor/src/components/visual-editor/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBlockList,\n\tstore as blockEditorStore,\n\t__unstableUseTypewriter as useTypewriter,\n\t__unstableUseTypingObserver as useTypingObserver,\n\tuseSettings,\n\tRecursionProvider,\n\tprivateApis as blockEditorPrivateApis,\n\t__experimentalUseResizeCanvas as useResizeCanvas,\n} from '@wordpress/block-editor';\nimport { useEffect, useRef, useMemo } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { parse } from '@wordpress/blocks';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tuseMergeRefs,\n\tuseViewportMatch,\n\tuseResizeObserver,\n} from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport PostTitle from '../post-title';\nimport { store as editorStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\nimport EditTemplateBlocksNotification from './edit-template-blocks-notification';\nimport ResizableEditor from '../resizable-editor';\nimport useSelectNearestEditableBlock from './use-select-nearest-editable-block';\nimport {\n\tNAVIGATION_POST_TYPE,\n\tPATTERN_POST_TYPE,\n\tTEMPLATE_PART_POST_TYPE,\n\tTEMPLATE_POST_TYPE,\n} from '../../store/constants';\n\nconst {\n\tLayoutStyle,\n\tuseLayoutClasses,\n\tuseLayoutStyles,\n\tExperimentalBlockCanvas: BlockCanvas,\n\tuseFlashEditableBlocks,\n} = unlock( blockEditorPrivateApis );\n\n/**\n * These post types have a special editor where they don't allow you to fill the title\n * and they don't apply the layout styles.\n */\nconst DESIGN_POST_TYPES = [\n\tPATTERN_POST_TYPE,\n\tTEMPLATE_POST_TYPE,\n\tNAVIGATION_POST_TYPE,\n\tTEMPLATE_PART_POST_TYPE,\n];\n\n/**\n * Given an array of nested blocks, find the first Post Content\n * block inside it, recursing through any nesting levels,\n * and return its attributes.\n *\n * @param {Array} blocks A list of blocks.\n *\n * @return {Object | undefined} The Post Content block.\n */\nfunction getPostContentAttributes( blocks ) {\n\tfor ( let i = 0; i < blocks.length; i++ ) {\n\t\tif ( blocks[ i ].name === 'core/post-content' ) {\n\t\t\treturn blocks[ i ].attributes;\n\t\t}\n\t\tif ( blocks[ i ].innerBlocks.length ) {\n\t\t\tconst nestedPostContent = getPostContentAttributes(\n\t\t\t\tblocks[ i ].innerBlocks\n\t\t\t);\n\n\t\t\tif ( nestedPostContent ) {\n\t\t\t\treturn nestedPostContent;\n\t\t\t}\n\t\t}\n\t}\n}\n\nfunction checkForPostContentAtRootLevel( blocks ) {\n\tfor ( let i = 0; i < blocks.length; i++ ) {\n\t\tif ( blocks[ i ].name === 'core/post-content' ) {\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n}\n\nfunction VisualEditor( {\n\t// Ideally as we unify post and site editors, we won't need these props.\n\tautoFocus,\n\tstyles,\n\tdisableIframe = false,\n\tiframeProps,\n\tcontentRef,\n\tclassName,\n} ) {\n\tconst [ resizeObserver, sizes ] = useResizeObserver();\n\tconst isMobileViewport = useViewportMatch( 'small', '<' );\n\tconst isTabletViewport = useViewportMatch( 'medium', '<' );\n\tconst {\n\t\trenderingMode,\n\t\tpostContentAttributes,\n\t\teditedPostTemplate = {},\n\t\twrapperBlockName,\n\t\twrapperUniqueId,\n\t\tdeviceType,\n\t\tisFocusedEntity,\n\t\tisDesignPostType,\n\t\tpostType,\n\t\tisPreview,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetCurrentPostId,\n\t\t\tgetCurrentPostType,\n\t\t\tgetCurrentTemplateId,\n\t\t\tgetEditorSettings,\n\t\t\tgetRenderingMode,\n\t\t\tgetDeviceType,\n\t\t} = select( editorStore );\n\t\tconst { getPostType, getEditedEntityRecord } = select( coreStore );\n\t\tconst postTypeSlug = getCurrentPostType();\n\t\tconst _renderingMode = getRenderingMode();\n\t\tlet _wrapperBlockName;\n\n\t\tif ( postTypeSlug === PATTERN_POST_TYPE ) {\n\t\t\t_wrapperBlockName = 'core/block';\n\t\t} else if ( _renderingMode === 'post-only' ) {\n\t\t\t_wrapperBlockName = 'core/post-content';\n\t\t}\n\n\t\tconst editorSettings = getEditorSettings();\n\t\tconst supportsTemplateMode = editorSettings.supportsTemplateMode;\n\t\tconst postTypeObject = getPostType( postTypeSlug );\n\t\tconst currentTemplateId = getCurrentTemplateId();\n\t\tconst template = currentTemplateId\n\t\t\t? getEditedEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\tTEMPLATE_POST_TYPE,\n\t\t\t\t\tcurrentTemplateId\n\t\t\t )\n\t\t\t: undefined;\n\n\t\treturn {\n\t\t\trenderingMode: _renderingMode,\n\t\t\tpostContentAttributes: editorSettings.postContentAttributes,\n\t\t\tisDesignPostType: DESIGN_POST_TYPES.includes( postTypeSlug ),\n\t\t\t// Post template fetch returns a 404 on classic themes, which\n\t\t\t// messes with e2e tests, so check it's a block theme first.\n\t\t\teditedPostTemplate:\n\t\t\t\tpostTypeObject?.viewable && supportsTemplateMode\n\t\t\t\t\t? template\n\t\t\t\t\t: undefined,\n\t\t\twrapperBlockName: _wrapperBlockName,\n\t\t\twrapperUniqueId: getCurrentPostId(),\n\t\t\tdeviceType: getDeviceType(),\n\t\t\tisFocusedEntity: !! editorSettings.onNavigateToPreviousEntityRecord,\n\t\t\tpostType: postTypeSlug,\n\t\t\tisPreview: editorSettings.__unstableIsPreviewMode,\n\t\t};\n\t}, [] );\n\tconst { isCleanNewPost } = useSelect( editorStore );\n\tconst {\n\t\thasRootPaddingAwareAlignments,\n\t\tthemeHasDisabledLayoutStyles,\n\t\tthemeSupportsLayout,\n\t\tisZoomedOut,\n\t} = useSelect( ( select ) => {\n\t\tconst { getSettings, isZoomOut: _isZoomOut } = unlock(\n\t\t\tselect( blockEditorStore )\n\t\t);\n\n\t\tconst _settings = getSettings();\n\t\treturn {\n\t\t\tthemeHasDisabledLayoutStyles: _settings.disableLayoutStyles,\n\t\t\tthemeSupportsLayout: _settings.supportsLayout,\n\t\t\thasRootPaddingAwareAlignments:\n\t\t\t\t_settings.__experimentalFeatures?.useRootPaddingAwareAlignments,\n\t\t\tisZoomedOut: _isZoomOut(),\n\t\t};\n\t}, [] );\n\n\tconst deviceStyles = useResizeCanvas( deviceType );\n\tconst [ globalLayoutSettings ] = useSettings( 'layout' );\n\n\t// fallbackLayout is used if there is no Post Content,\n\t// and for Post Title.\n\tconst fallbackLayout = useMemo( () => {\n\t\tif ( renderingMode !== 'post-only' || isDesignPostType ) {\n\t\t\treturn { type: 'default' };\n\t\t}\n\n\t\tif ( themeSupportsLayout ) {\n\t\t\t// We need to ensure support for wide and full alignments,\n\t\t\t// so we add the constrained type.\n\t\t\treturn { ...globalLayoutSettings, type: 'constrained' };\n\t\t}\n\t\t// Set default layout for classic themes so all alignments are supported.\n\t\treturn { type: 'default' };\n\t}, [\n\t\trenderingMode,\n\t\tthemeSupportsLayout,\n\t\tglobalLayoutSettings,\n\t\tisDesignPostType,\n\t] );\n\n\tconst newestPostContentAttributes = useMemo( () => {\n\t\tif (\n\t\t\t! editedPostTemplate?.content &&\n\t\t\t! editedPostTemplate?.blocks &&\n\t\t\tpostContentAttributes\n\t\t) {\n\t\t\treturn postContentAttributes;\n\t\t}\n\t\t// When in template editing mode, we can access the blocks directly.\n\t\tif ( editedPostTemplate?.blocks ) {\n\t\t\treturn getPostContentAttributes( editedPostTemplate?.blocks );\n\t\t}\n\t\t// If there are no blocks, we have to parse the content string.\n\t\t// Best double-check it's a string otherwise the parse function gets unhappy.\n\t\tconst parseableContent =\n\t\t\ttypeof editedPostTemplate?.content === 'string'\n\t\t\t\t? editedPostTemplate?.content\n\t\t\t\t: '';\n\n\t\treturn getPostContentAttributes( parse( parseableContent ) ) || {};\n\t}, [\n\t\teditedPostTemplate?.content,\n\t\teditedPostTemplate?.blocks,\n\t\tpostContentAttributes,\n\t] );\n\n\tconst hasPostContentAtRootLevel = useMemo( () => {\n\t\tif ( ! editedPostTemplate?.content && ! editedPostTemplate?.blocks ) {\n\t\t\treturn false;\n\t\t}\n\t\t// When in template editing mode, we can access the blocks directly.\n\t\tif ( editedPostTemplate?.blocks ) {\n\t\t\treturn checkForPostContentAtRootLevel( editedPostTemplate?.blocks );\n\t\t}\n\t\t// If there are no blocks, we have to parse the content string.\n\t\t// Best double-check it's a string otherwise the parse function gets unhappy.\n\t\tconst parseableContent =\n\t\t\ttypeof editedPostTemplate?.content === 'string'\n\t\t\t\t? editedPostTemplate?.content\n\t\t\t\t: '';\n\n\t\treturn (\n\t\t\tcheckForPostContentAtRootLevel( parse( parseableContent ) ) || false\n\t\t);\n\t}, [ editedPostTemplate?.content, editedPostTemplate?.blocks ] );\n\n\tconst { layout = {}, align = '' } = newestPostContentAttributes || {};\n\n\tconst postContentLayoutClasses = useLayoutClasses(\n\t\tnewestPostContentAttributes,\n\t\t'core/post-content'\n\t);\n\n\tconst blockListLayoutClass = clsx(\n\t\t{\n\t\t\t'is-layout-flow': ! themeSupportsLayout,\n\t\t},\n\t\tthemeSupportsLayout && postContentLayoutClasses,\n\t\talign && `align${ align }`\n\t);\n\n\tconst postContentLayoutStyles = useLayoutStyles(\n\t\tnewestPostContentAttributes,\n\t\t'core/post-content',\n\t\t'.block-editor-block-list__layout.is-root-container'\n\t);\n\n\t// Update type for blocks using legacy layouts.\n\tconst postContentLayout = useMemo( () => {\n\t\treturn layout &&\n\t\t\t( layout?.type === 'constrained' ||\n\t\t\t\tlayout?.inherit ||\n\t\t\t\tlayout?.contentSize ||\n\t\t\t\tlayout?.wideSize )\n\t\t\t? { ...globalLayoutSettings, ...layout, type: 'constrained' }\n\t\t\t: { ...globalLayoutSettings, ...layout, type: 'default' };\n\t}, [\n\t\tlayout?.type,\n\t\tlayout?.inherit,\n\t\tlayout?.contentSize,\n\t\tlayout?.wideSize,\n\t\tglobalLayoutSettings,\n\t] );\n\n\t// If there is a Post Content block we use its layout for the block list;\n\t// if not, this must be a classic theme, in which case we use the fallback layout.\n\tconst blockListLayout = postContentAttributes\n\t\t? postContentLayout\n\t\t: fallbackLayout;\n\n\tconst postEditorLayout =\n\t\tblockListLayout?.type === 'default' && ! hasPostContentAtRootLevel\n\t\t\t? fallbackLayout\n\t\t\t: blockListLayout;\n\tconst observeTypingRef = useTypingObserver();\n\tconst titleRef = useRef();\n\tuseEffect( () => {\n\t\tif ( ! autoFocus || ! isCleanNewPost() ) {\n\t\t\treturn;\n\t\t}\n\t\ttitleRef?.current?.focus();\n\t}, [ autoFocus, isCleanNewPost ] );\n\n\t// Add some styles for alignwide/alignfull Post Content and its children.\n\tconst alignCSS = `.is-root-container.alignwide { max-width: var(--wp--style--global--wide-size); margin-left: auto; margin-right: auto;}\n\t\t.is-root-container.alignwide:where(.is-layout-flow) > :not(.alignleft):not(.alignright) { max-width: var(--wp--style--global--wide-size);}\n\t\t.is-root-container.alignfull { max-width: none; margin-left: auto; margin-right: auto;}\n\t\t.is-root-container.alignfull:where(.is-layout-flow) > :not(.alignleft):not(.alignright) { max-width: none;}`;\n\n\tconst localRef = useRef();\n\tconst typewriterRef = useTypewriter();\n\tcontentRef = useMergeRefs( [\n\t\tlocalRef,\n\t\tcontentRef,\n\t\trenderingMode === 'post-only' ? typewriterRef : null,\n\t\tuseFlashEditableBlocks( {\n\t\t\tisEnabled: renderingMode === 'template-locked',\n\t\t} ),\n\t\tuseSelectNearestEditableBlock( {\n\t\t\tisEnabled: renderingMode === 'template-locked',\n\t\t} ),\n\t] );\n\n\tconst zoomOutProps =\n\t\tisZoomedOut && ! isTabletViewport\n\t\t\t? {\n\t\t\t\t\tscale: 'default',\n\t\t\t\t\tframeSize: '48px',\n\t\t\t }\n\t\t\t: {};\n\n\tconst forceFullHeight = postType === NAVIGATION_POST_TYPE;\n\tconst enableResizing =\n\t\t[\n\t\t\tNAVIGATION_POST_TYPE,\n\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\tPATTERN_POST_TYPE,\n\t\t].includes( postType ) &&\n\t\t// Disable in previews / view mode.\n\t\t! isPreview &&\n\t\t// Disable resizing in mobile viewport.\n\t\t! isMobileViewport &&\n\t\t// Dsiable resizing in zoomed-out mode.\n\t\t! isZoomedOut;\n\tconst shouldIframe =\n\t\t! disableIframe || [ 'Tablet', 'Mobile' ].includes( deviceType );\n\n\tconst iframeStyles = useMemo( () => {\n\t\treturn [\n\t\t\t...( styles ?? [] ),\n\t\t\t{\n\t\t\t\tcss: `.is-root-container{display:flow-root;${\n\t\t\t\t\t// Some themes will have `min-height: 100vh` for the root container,\n\t\t\t\t\t// which isn't a requirement in auto resize mode.\n\t\t\t\t\tenableResizing ? 'min-height:0!important;' : ''\n\t\t\t\t}}`,\n\t\t\t},\n\t\t];\n\t}, [ styles, enableResizing ] );\n\n\treturn (\n\t\t<div\n\t\t\tclassName={ clsx(\n\t\t\t\t'editor-visual-editor',\n\t\t\t\t// this class is here for backward compatibility reasons.\n\t\t\t\t'edit-post-visual-editor',\n\t\t\t\tclassName,\n\t\t\t\t{\n\t\t\t\t\t'has-padding': isFocusedEntity || enableResizing,\n\t\t\t\t\t'is-resizable': enableResizing,\n\t\t\t\t\t'is-iframed': shouldIframe,\n\t\t\t\t}\n\t\t\t) }\n\t\t>\n\t\t\t<ResizableEditor\n\t\t\t\tenableResizing={ enableResizing }\n\t\t\t\theight={\n\t\t\t\t\tsizes.height && ! forceFullHeight ? sizes.height : '100%'\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t<BlockCanvas\n\t\t\t\t\tshouldIframe={ shouldIframe }\n\t\t\t\t\tcontentRef={ contentRef }\n\t\t\t\t\tstyles={ iframeStyles }\n\t\t\t\t\theight=\"100%\"\n\t\t\t\t\tiframeProps={ {\n\t\t\t\t\t\t...iframeProps,\n\t\t\t\t\t\t...zoomOutProps,\n\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\t...iframeProps?.style,\n\t\t\t\t\t\t\t...deviceStyles,\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ themeSupportsLayout &&\n\t\t\t\t\t\t! themeHasDisabledLayoutStyles &&\n\t\t\t\t\t\trenderingMode === 'post-only' &&\n\t\t\t\t\t\t! isDesignPostType && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<LayoutStyle\n\t\t\t\t\t\t\t\t\tselector=\".editor-visual-editor__post-title-wrapper\"\n\t\t\t\t\t\t\t\t\tlayout={ fallbackLayout }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<LayoutStyle\n\t\t\t\t\t\t\t\t\tselector=\".block-editor-block-list__layout.is-root-container\"\n\t\t\t\t\t\t\t\t\tlayout={ postEditorLayout }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{ align && <LayoutStyle css={ alignCSS } /> }\n\t\t\t\t\t\t\t\t{ postContentLayoutStyles && (\n\t\t\t\t\t\t\t\t\t<LayoutStyle\n\t\t\t\t\t\t\t\t\t\tlayout={ postContentLayout }\n\t\t\t\t\t\t\t\t\t\tcss={ postContentLayoutStyles }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t{ renderingMode === 'post-only' && ! isDesignPostType && (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t'editor-visual-editor__post-title-wrapper',\n\t\t\t\t\t\t\t\t// The following class is only here for backward comapatibility\n\t\t\t\t\t\t\t\t// some themes might be using it to style the post title.\n\t\t\t\t\t\t\t\t'edit-post-visual-editor__post-title-wrapper',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t'has-global-padding':\n\t\t\t\t\t\t\t\t\t\thasRootPaddingAwareAlignments,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tcontentEditable={ false }\n\t\t\t\t\t\t\tref={ observeTypingRef }\n\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t// This is using inline styles\n\t\t\t\t\t\t\t\t// so it's applied for both iframed and non iframed editors.\n\t\t\t\t\t\t\t\tmarginTop: '4rem',\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<PostTitle ref={ titleRef } />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\t\t\t\t\t<RecursionProvider\n\t\t\t\t\t\tblockName={ wrapperBlockName }\n\t\t\t\t\t\tuniqueId={ wrapperUniqueId }\n\t\t\t\t\t>\n\t\t\t\t\t\t<BlockList\n\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t'is-' + deviceType.toLowerCase() + '-preview',\n\t\t\t\t\t\t\t\trenderingMode !== 'post-only' ||\n\t\t\t\t\t\t\t\t\tisDesignPostType\n\t\t\t\t\t\t\t\t\t? 'wp-site-blocks'\n\t\t\t\t\t\t\t\t\t: `${ blockListLayoutClass } wp-block-post-content` // Ensure root level blocks receive default/flow blockGap styling rules.\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tlayout={ blockListLayout }\n\t\t\t\t\t\t\tdropZoneElement={\n\t\t\t\t\t\t\t\t// When iframed, pass in the html element of the iframe to\n\t\t\t\t\t\t\t\t// ensure the drop zone extends to the edges of the iframe.\n\t\t\t\t\t\t\t\tdisableIframe\n\t\t\t\t\t\t\t\t\t? localRef.current\n\t\t\t\t\t\t\t\t\t: localRef.current?.parentNode\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t__unstableDisableDropZone={\n\t\t\t\t\t\t\t\t// In template preview mode, disable drop zones at the root of the template.\n\t\t\t\t\t\t\t\trenderingMode === 'template-locked'\n\t\t\t\t\t\t\t\t\t? true\n\t\t\t\t\t\t\t\t\t: false\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ renderingMode === 'template-locked' && (\n\t\t\t\t\t\t\t<EditTemplateBlocksNotification\n\t\t\t\t\t\t\t\tcontentRef={ localRef }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</RecursionProvider>\n\t\t\t\t\t{\n\t\t\t\t\t\t// Avoid resize listeners when not needed,\n\t\t\t\t\t\t// these will trigger unnecessary re-renders\n\t\t\t\t\t\t// when animating the iframe width.\n\t\t\t\t\t\tenableResizing && resizeObserver\n\t\t\t\t\t}\n\t\t\t\t</BlockCanvas>\n\t\t\t</ResizableEditor>\n\t\t</div>\n\t);\n}\n\nexport default VisualEditor;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -6,24 +6,36 @@ import { __ } from '@wordpress/i18n';
|
|
|
6
6
|
import { useDispatch, useSelect } from '@wordpress/data';
|
|
7
7
|
import { store as blockEditorStore } from '@wordpress/block-editor';
|
|
8
8
|
import { square as zoomOutIcon } from '@wordpress/icons';
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Internal dependencies
|
|
12
|
+
*/
|
|
13
|
+
import { unlock } from '../../lock-unlock';
|
|
9
14
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
10
15
|
const ZoomOutToggle = () => {
|
|
11
16
|
const {
|
|
12
|
-
|
|
17
|
+
isZoomOut
|
|
13
18
|
} = useSelect(select => ({
|
|
14
|
-
|
|
19
|
+
isZoomOut: unlock(select(blockEditorStore)).isZoomOut()
|
|
15
20
|
}));
|
|
16
21
|
const {
|
|
22
|
+
resetZoomLevel,
|
|
23
|
+
setZoomLevel,
|
|
17
24
|
__unstableSetEditorMode
|
|
18
|
-
} = useDispatch(blockEditorStore);
|
|
25
|
+
} = unlock(useDispatch(blockEditorStore));
|
|
19
26
|
const handleZoomOut = () => {
|
|
20
|
-
|
|
27
|
+
if (isZoomOut) {
|
|
28
|
+
resetZoomLevel();
|
|
29
|
+
} else {
|
|
30
|
+
setZoomLevel(50);
|
|
31
|
+
}
|
|
32
|
+
__unstableSetEditorMode(isZoomOut ? 'edit' : 'zoom-out');
|
|
21
33
|
};
|
|
22
34
|
return /*#__PURE__*/_jsx(Button, {
|
|
23
35
|
onClick: handleZoomOut,
|
|
24
36
|
icon: zoomOutIcon,
|
|
25
37
|
label: __('Toggle Zoom Out'),
|
|
26
|
-
isPressed:
|
|
38
|
+
isPressed: isZoomOut,
|
|
27
39
|
size: "compact"
|
|
28
40
|
});
|
|
29
41
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Button","__","useDispatch","useSelect","store","blockEditorStore","square","zoomOutIcon","jsx","_jsx","ZoomOutToggle","
|
|
1
|
+
{"version":3,"names":["Button","__","useDispatch","useSelect","store","blockEditorStore","square","zoomOutIcon","unlock","jsx","_jsx","ZoomOutToggle","isZoomOut","select","resetZoomLevel","setZoomLevel","__unstableSetEditorMode","handleZoomOut","onClick","icon","label","isPressed","size"],"sources":["@wordpress/editor/src/components/zoom-out-toggle/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Button } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { square as zoomOutIcon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\n\nconst ZoomOutToggle = () => {\n\tconst { isZoomOut } = useSelect( ( select ) => ( {\n\t\tisZoomOut: unlock( select( blockEditorStore ) ).isZoomOut(),\n\t} ) );\n\n\tconst { resetZoomLevel, setZoomLevel, __unstableSetEditorMode } = unlock(\n\t\tuseDispatch( blockEditorStore )\n\t);\n\n\tconst handleZoomOut = () => {\n\t\tif ( isZoomOut ) {\n\t\t\tresetZoomLevel();\n\t\t} else {\n\t\t\tsetZoomLevel( 50 );\n\t\t}\n\t\t__unstableSetEditorMode( isZoomOut ? 'edit' : 'zoom-out' );\n\t};\n\n\treturn (\n\t\t<Button\n\t\t\tonClick={ handleZoomOut }\n\t\t\ticon={ zoomOutIcon }\n\t\t\tlabel={ __( 'Toggle Zoom Out' ) }\n\t\t\tisPressed={ isZoomOut }\n\t\t\tsize=\"compact\"\n\t\t/>\n\t);\n};\n\nexport default ZoomOutToggle;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,MAAM,QAAQ,uBAAuB;AAC9C,SAASC,EAAE,QAAQ,iBAAiB;AAEpC,SAASC,WAAW,EAAEC,SAAS,QAAQ,iBAAiB;AACxD,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,yBAAyB;AACnE,SAASC,MAAM,IAAIC,WAAW,QAAQ,kBAAkB;;AAExD;AACA;AACA;AACA,SAASC,MAAM,QAAQ,mBAAmB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE3C,MAAMC,aAAa,GAAGA,CAAA,KAAM;EAC3B,MAAM;IAAEC;EAAU,CAAC,GAAGT,SAAS,CAAIU,MAAM,KAAQ;IAChDD,SAAS,EAAEJ,MAAM,CAAEK,MAAM,CAAER,gBAAiB,CAAE,CAAC,CAACO,SAAS,CAAC;EAC3D,CAAC,CAAG,CAAC;EAEL,MAAM;IAAEE,cAAc;IAAEC,YAAY;IAAEC;EAAwB,CAAC,GAAGR,MAAM,CACvEN,WAAW,CAAEG,gBAAiB,CAC/B,CAAC;EAED,MAAMY,aAAa,GAAGA,CAAA,KAAM;IAC3B,IAAKL,SAAS,EAAG;MAChBE,cAAc,CAAC,CAAC;IACjB,CAAC,MAAM;MACNC,YAAY,CAAE,EAAG,CAAC;IACnB;IACAC,uBAAuB,CAAEJ,SAAS,GAAG,MAAM,GAAG,UAAW,CAAC;EAC3D,CAAC;EAED,oBACCF,IAAA,CAACV,MAAM;IACNkB,OAAO,EAAGD,aAAe;IACzBE,IAAI,EAAGZ,WAAa;IACpBa,KAAK,EAAGnB,EAAE,CAAE,iBAAkB,CAAG;IACjCoB,SAAS,EAAGT,SAAW;IACvBU,IAAI,EAAC;EAAS,CACd,CAAC;AAEJ,CAAC;AAED,eAAeX,aAAa","ignoreList":[]}
|
|
@@ -1798,12 +1798,12 @@ body.is-fullscreen-mode .interface-interface-skeleton {
|
|
|
1798
1798
|
}
|
|
1799
1799
|
|
|
1800
1800
|
.editor-post-publish-panel__header-publish-button {
|
|
1801
|
-
padding-
|
|
1801
|
+
padding-right: 4px;
|
|
1802
1802
|
justify-content: center;
|
|
1803
1803
|
}
|
|
1804
1804
|
|
|
1805
1805
|
.editor-post-publish-panel__header-cancel-button {
|
|
1806
|
-
padding-
|
|
1806
|
+
padding-left: 4px;
|
|
1807
1807
|
}
|
|
1808
1808
|
|
|
1809
1809
|
.editor-post-publish-panel__header-published {
|
package/build-style/style.css
CHANGED
|
@@ -1798,12 +1798,12 @@ body.is-fullscreen-mode .interface-interface-skeleton {
|
|
|
1798
1798
|
}
|
|
1799
1799
|
|
|
1800
1800
|
.editor-post-publish-panel__header-publish-button {
|
|
1801
|
-
padding-
|
|
1801
|
+
padding-left: 4px;
|
|
1802
1802
|
justify-content: center;
|
|
1803
1803
|
}
|
|
1804
1804
|
|
|
1805
1805
|
.editor-post-publish-panel__header-cancel-button {
|
|
1806
|
-
padding-
|
|
1806
|
+
padding-right: 4px;
|
|
1807
1807
|
}
|
|
1808
1808
|
|
|
1809
1809
|
.editor-post-publish-panel__header-published {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/editor-interface/index.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/editor-interface/index.js"],"names":[],"mappings":"AAiDA;;;;;;;;;;;;;;gCA8LC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/plugin-sidebar/index.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/plugin-sidebar/index.js"],"names":[],"mappings":"AAYA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgEG;AACH,+DArDG;IAAqC,IAAI,EAAjC,MAAM;IACwB,SAAS;IACV,KAAK,EAAlC,MAAM;IACwB,UAAU;IACV,IAAI;CAE1C,+BA8DF"}
|
|
@@ -1,14 +1,10 @@
|
|
|
1
1
|
export class PostPublishButton extends Component<any, any, any> {
|
|
2
2
|
constructor(props: any);
|
|
3
|
-
buttonNode: import("react").RefObject<any>;
|
|
4
3
|
createOnClick(callback: any): (...args: any[]) => any;
|
|
5
4
|
closeEntitiesSavedStates(savedEntities: any): void;
|
|
6
5
|
state: {
|
|
7
6
|
entitiesSavedStatesCallback: boolean;
|
|
8
7
|
};
|
|
9
|
-
componentDidMount(): void;
|
|
10
|
-
timeoutID: number | undefined;
|
|
11
|
-
componentWillUnmount(): void;
|
|
12
8
|
render(): import("react").JSX.Element;
|
|
13
9
|
}
|
|
14
10
|
declare const _default: unknown;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/post-publish-button/index.js"],"names":[],"mappings":"AAgBA;IACC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/post-publish-button/index.js"],"names":[],"mappings":"AAgBA;IACC,wBAUC;IAED,sDA6BC;IAED,mDAiBC;IArDA;;MAEC;IAqDF,sCAiGC;CACD;;;0BA7KyB,oBAAoB"}
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
export class PostPublishPanel extends Component<any, any, any> {
|
|
2
2
|
constructor(...args: any[]);
|
|
3
3
|
onSubmit(): void;
|
|
4
|
+
cancelButtonNode: import("react").RefObject<any>;
|
|
5
|
+
componentDidMount(): void;
|
|
6
|
+
timeoutID: number | undefined;
|
|
7
|
+
componentWillUnmount(): void;
|
|
4
8
|
componentDidUpdate(prevProps: any): void;
|
|
5
9
|
render(): import("react").JSX.Element;
|
|
6
10
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/post-publish-panel/index.js"],"names":[],"mappings":"AAyBA;IACC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/post-publish-panel/index.js"],"names":[],"mappings":"AAyBA;IACC,4BAIC;IA2BD,iBAKC;IAjCA,iDAAmC;IAGpC,0BAOC;IAHA,8BAEM;IAGP,6BAEC;IAED,yCAUC;IASD,sCAiFC;CACD;;;0BA9IoC,oBAAoB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/preview-dropdown/index.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/preview-dropdown/index.js"],"names":[],"mappings":"AA+BA;;;uCA0IC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/visual-editor/index.js"],"names":[],"mappings":";AAkGA;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/visual-editor/index.js"],"names":[],"mappings":";AAkGA;;;;;;;gCAgZC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/zoom-out-toggle/index.js"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/zoom-out-toggle/index.js"],"names":[],"mappings":";AAeA,8DA2BC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wordpress/editor",
|
|
3
|
-
"version": "14.8.
|
|
3
|
+
"version": "14.8.4",
|
|
4
4
|
"description": "Enhanced block editor for WordPress posts.",
|
|
5
5
|
"author": "The WordPress Contributors",
|
|
6
6
|
"license": "GPL-2.0-or-later",
|
|
@@ -35,35 +35,35 @@
|
|
|
35
35
|
"@wordpress/a11y": "^4.8.1",
|
|
36
36
|
"@wordpress/api-fetch": "^7.8.1",
|
|
37
37
|
"@wordpress/blob": "^4.8.1",
|
|
38
|
-
"@wordpress/block-editor": "^14.3.
|
|
39
|
-
"@wordpress/blocks": "^13.8.
|
|
40
|
-
"@wordpress/commands": "^1.8.
|
|
41
|
-
"@wordpress/components": "^28.8.
|
|
42
|
-
"@wordpress/compose": "^7.8.
|
|
43
|
-
"@wordpress/core-data": "^7.8.
|
|
44
|
-
"@wordpress/data": "^10.8.
|
|
45
|
-
"@wordpress/dataviews": "^4.4.
|
|
38
|
+
"@wordpress/block-editor": "^14.3.2",
|
|
39
|
+
"@wordpress/blocks": "^13.8.2",
|
|
40
|
+
"@wordpress/commands": "^1.8.2",
|
|
41
|
+
"@wordpress/components": "^28.8.2",
|
|
42
|
+
"@wordpress/compose": "^7.8.2",
|
|
43
|
+
"@wordpress/core-data": "^7.8.2",
|
|
44
|
+
"@wordpress/data": "^10.8.2",
|
|
45
|
+
"@wordpress/dataviews": "^4.4.2",
|
|
46
46
|
"@wordpress/date": "^5.8.1",
|
|
47
47
|
"@wordpress/deprecated": "^4.8.1",
|
|
48
48
|
"@wordpress/dom": "^4.8.1",
|
|
49
49
|
"@wordpress/element": "^6.8.1",
|
|
50
|
-
"@wordpress/fields": "^0.0.
|
|
50
|
+
"@wordpress/fields": "^0.0.3",
|
|
51
51
|
"@wordpress/hooks": "^4.8.1",
|
|
52
52
|
"@wordpress/html-entities": "^4.8.1",
|
|
53
53
|
"@wordpress/i18n": "^5.8.1",
|
|
54
54
|
"@wordpress/icons": "^10.8.1",
|
|
55
|
-
"@wordpress/interface": "^6.8.
|
|
56
|
-
"@wordpress/keyboard-shortcuts": "^5.8.
|
|
55
|
+
"@wordpress/interface": "^6.8.2",
|
|
56
|
+
"@wordpress/keyboard-shortcuts": "^5.8.2",
|
|
57
57
|
"@wordpress/keycodes": "^4.8.1",
|
|
58
58
|
"@wordpress/media-utils": "^5.8.1",
|
|
59
|
-
"@wordpress/notices": "^5.8.
|
|
60
|
-
"@wordpress/patterns": "^2.8.
|
|
61
|
-
"@wordpress/plugins": "^7.8.
|
|
62
|
-
"@wordpress/preferences": "^4.8.
|
|
59
|
+
"@wordpress/notices": "^5.8.2",
|
|
60
|
+
"@wordpress/patterns": "^2.8.2",
|
|
61
|
+
"@wordpress/plugins": "^7.8.2",
|
|
62
|
+
"@wordpress/preferences": "^4.8.2",
|
|
63
63
|
"@wordpress/private-apis": "^1.8.1",
|
|
64
|
-
"@wordpress/reusable-blocks": "^5.8.
|
|
65
|
-
"@wordpress/rich-text": "^7.8.
|
|
66
|
-
"@wordpress/server-side-render": "^5.8.
|
|
64
|
+
"@wordpress/reusable-blocks": "^5.8.2",
|
|
65
|
+
"@wordpress/rich-text": "^7.8.2",
|
|
66
|
+
"@wordpress/server-side-render": "^5.8.2",
|
|
67
67
|
"@wordpress/url": "^4.8.1",
|
|
68
68
|
"@wordpress/warning": "^3.8.1",
|
|
69
69
|
"@wordpress/wordcount": "^4.8.1",
|
|
@@ -86,5 +86,5 @@
|
|
|
86
86
|
"publishConfig": {
|
|
87
87
|
"access": "public"
|
|
88
88
|
},
|
|
89
|
-
"gitHead": "
|
|
89
|
+
"gitHead": "51204ac9382d0551d8fdebd3c8d4623dabfa9f3c"
|
|
90
90
|
}
|
|
@@ -32,6 +32,8 @@ import TextEditor from '../text-editor';
|
|
|
32
32
|
import VisualEditor from '../visual-editor';
|
|
33
33
|
import EditorContentSlotFill from './content-slot-fill';
|
|
34
34
|
|
|
35
|
+
import { unlock } from '../../lock-unlock';
|
|
36
|
+
|
|
35
37
|
const interfaceLabels = {
|
|
36
38
|
/* translators: accessibility text for the editor top bar landmark region. */
|
|
37
39
|
header: __( 'Editor top bar' ),
|
|
@@ -71,12 +73,13 @@ export default function EditorInterface( {
|
|
|
71
73
|
nextShortcut,
|
|
72
74
|
showBlockBreadcrumbs,
|
|
73
75
|
documentLabel,
|
|
74
|
-
|
|
76
|
+
isZoomOut,
|
|
75
77
|
} = useSelect( ( select ) => {
|
|
76
78
|
const { get } = select( preferencesStore );
|
|
77
79
|
const { getEditorSettings, getPostTypeLabel } = select( editorStore );
|
|
78
80
|
const editorSettings = getEditorSettings();
|
|
79
81
|
const postTypeLabel = getPostTypeLabel();
|
|
82
|
+
const { isZoomOut: _isZoomOut } = unlock( select( blockEditorStore ) );
|
|
80
83
|
|
|
81
84
|
return {
|
|
82
85
|
mode: select( editorStore ).getEditorMode(),
|
|
@@ -94,8 +97,7 @@ export default function EditorInterface( {
|
|
|
94
97
|
showBlockBreadcrumbs: get( 'core', 'showBlockBreadcrumbs' ),
|
|
95
98
|
// translators: Default label for the Document in the Block Breadcrumb.
|
|
96
99
|
documentLabel: postTypeLabel || _x( 'Document', 'noun' ),
|
|
97
|
-
|
|
98
|
-
select( blockEditorStore ).__unstableGetEditorMode(),
|
|
100
|
+
isZoomOut: _isZoomOut(),
|
|
99
101
|
};
|
|
100
102
|
}, [] );
|
|
101
103
|
const isLargeViewport = useViewportMatch( 'medium' );
|
|
@@ -206,7 +208,7 @@ export default function EditorInterface( {
|
|
|
206
208
|
isLargeViewport &&
|
|
207
209
|
showBlockBreadcrumbs &&
|
|
208
210
|
isRichEditingEnabled &&
|
|
209
|
-
|
|
211
|
+
! isZoomOut &&
|
|
210
212
|
mode === 'visual' && (
|
|
211
213
|
<BlockBreadcrumb rootLabelText={ documentLabel } />
|
|
212
214
|
)
|