@wordpress/edit-site 4.19.0 → 5.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/build/components/add-new-template/add-custom-template-modal.js +1 -0
- package/build/components/add-new-template/add-custom-template-modal.js.map +1 -1
- package/build/components/add-new-template/index.js +8 -5
- package/build/components/add-new-template/index.js.map +1 -1
- package/build/components/add-new-template/new-template-part.js +21 -6
- package/build/components/add-new-template/new-template-part.js.map +1 -1
- package/build/components/add-new-template/new-template.js +12 -8
- package/build/components/add-new-template/new-template.js.map +1 -1
- package/build/components/app/index.js +15 -30
- package/build/components/app/index.js.map +1 -1
- package/build/components/block-editor/editor-canvas.js +64 -0
- package/build/components/block-editor/editor-canvas.js.map +1 -0
- package/build/components/block-editor/index.js +61 -59
- package/build/components/block-editor/index.js.map +1 -1
- package/build/components/block-editor/resizable-editor.js +10 -44
- package/build/components/block-editor/resizable-editor.js.map +1 -1
- package/build/components/editor/index.js +80 -127
- package/build/components/editor/index.js.map +1 -1
- package/build/components/global-styles/block-preview-panel.js +42 -0
- package/build/components/global-styles/block-preview-panel.js.map +1 -0
- package/build/components/global-styles/context-menu.js +6 -2
- package/build/components/global-styles/context-menu.js.map +1 -1
- package/build/components/global-styles/custom-css.js +61 -0
- package/build/components/global-styles/custom-css.js.map +1 -0
- package/build/components/global-styles/dimensions-panel.js +2 -6
- package/build/components/global-styles/dimensions-panel.js.map +1 -1
- package/build/components/global-styles/global-styles-provider.js +15 -2
- package/build/components/global-styles/global-styles-provider.js.map +1 -1
- package/build/components/global-styles/hooks.js +5 -2
- package/build/components/global-styles/hooks.js.map +1 -1
- package/build/components/global-styles/palette.js +1 -1
- package/build/components/global-styles/palette.js.map +1 -1
- package/build/components/global-styles/screen-block-list.js +2 -1
- package/build/components/global-styles/screen-block-list.js.map +1 -1
- package/build/components/global-styles/screen-block.js +10 -2
- package/build/components/global-styles/screen-block.js.map +1 -1
- package/build/components/global-styles/screen-border.js +43 -0
- package/build/components/global-styles/screen-border.js.map +1 -0
- package/build/components/global-styles/screen-colors.js +1 -1
- package/build/components/global-styles/screen-colors.js.map +1 -1
- package/build/components/global-styles/screen-css.js +42 -0
- package/build/components/global-styles/screen-css.js.map +1 -0
- package/build/components/global-styles/screen-layout.js +0 -5
- package/build/components/global-styles/screen-layout.js.map +1 -1
- package/build/components/global-styles/screen-root.js +14 -1
- package/build/components/global-styles/screen-root.js.map +1 -1
- package/build/components/global-styles/screen-style-variations.js +3 -3
- package/build/components/global-styles/screen-style-variations.js.map +1 -1
- package/build/components/global-styles/ui.js +50 -4
- package/build/components/global-styles/ui.js.map +1 -1
- package/build/components/global-styles/use-global-styles-output.js +5 -1
- package/build/components/global-styles/use-global-styles-output.js.map +1 -1
- package/build/components/global-styles/utils.js +3 -3
- package/build/components/global-styles/utils.js.map +1 -1
- package/build/components/{editor/global-styles-renderer.js → global-styles-renderer/index.js} +4 -8
- package/build/components/global-styles-renderer/index.js.map +1 -0
- package/build/components/header-edit-mode/document-actions/index.js +12 -5
- package/build/components/header-edit-mode/document-actions/index.js.map +1 -1
- package/build/components/header-edit-mode/index.js +19 -12
- package/build/components/header-edit-mode/index.js.map +1 -1
- package/build/components/keyboard-shortcuts/index.js +11 -1
- package/build/components/keyboard-shortcuts/index.js.map +1 -1
- package/build/components/layout/index.js +231 -0
- package/build/components/layout/index.js.map +1 -0
- package/build/components/list/header.js +5 -1
- package/build/components/list/header.js.map +1 -1
- package/build/components/list/index.js +4 -22
- package/build/components/list/index.js.map +1 -1
- package/build/components/navigate-to-link/index.js +1 -3
- package/build/components/navigate-to-link/index.js.map +1 -1
- package/build/components/routes/index.js +1 -1
- package/build/components/routes/index.js.map +1 -1
- package/build/components/sidebar/index.js +42 -0
- package/build/components/sidebar/index.js.map +1 -0
- package/build/components/sidebar-edit-mode/global-styles-sidebar.js +24 -4
- package/build/components/sidebar-edit-mode/global-styles-sidebar.js.map +1 -1
- package/build/components/sidebar-edit-mode/index.js +1 -1
- package/build/components/sidebar-edit-mode/index.js.map +1 -1
- package/build/components/sidebar-navigation-item/index.js +53 -0
- package/build/components/sidebar-navigation-item/index.js.map +1 -0
- package/build/components/sidebar-navigation-screen/index.js +49 -0
- package/build/components/sidebar-navigation-screen/index.js.map +1 -0
- package/build/components/sidebar-navigation-screen-main/index.js +76 -0
- package/build/components/sidebar-navigation-screen-main/index.js.map +1 -0
- package/build/components/sidebar-navigation-screen-templates/index.js +188 -0
- package/build/components/sidebar-navigation-screen-templates/index.js.map +1 -0
- package/build/components/site-icon/index.js +70 -0
- package/build/components/site-icon/index.js.map +1 -0
- package/build/components/site-title/index.js +55 -0
- package/build/components/site-title/index.js.map +1 -0
- package/build/components/style-book/index.js +173 -0
- package/build/components/style-book/index.js.map +1 -0
- package/build/components/{url-query-controller/index.js → sync-state-with-url/use-init-edited-entity-from-url.js} +5 -4
- package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -0
- package/build/components/sync-state-with-url/use-sync-sidebar-path-with-url.js +53 -0
- package/build/components/sync-state-with-url/use-sync-sidebar-path-with-url.js.map +1 -0
- package/build/index.js +2 -45
- package/build/index.js.map +1 -1
- package/build/store/actions.js +93 -43
- package/build/store/actions.js.map +1 -1
- package/build/store/reducer.js +35 -107
- package/build/store/reducer.js.map +1 -1
- package/build/store/selectors.js +69 -78
- package/build/store/selectors.js.map +1 -1
- package/build-module/components/add-new-template/add-custom-template-modal.js +1 -0
- package/build-module/components/add-new-template/add-custom-template-modal.js.map +1 -1
- package/build-module/components/add-new-template/index.js +7 -5
- package/build-module/components/add-new-template/index.js.map +1 -1
- package/build-module/components/add-new-template/new-template-part.js +18 -6
- package/build-module/components/add-new-template/new-template-part.js.map +1 -1
- package/build-module/components/add-new-template/new-template.js +13 -9
- package/build-module/components/add-new-template/new-template.js.map +1 -1
- package/build-module/components/app/index.js +15 -28
- package/build-module/components/app/index.js.map +1 -1
- package/build-module/components/block-editor/editor-canvas.js +51 -0
- package/build-module/components/block-editor/editor-canvas.js.map +1 -0
- package/build-module/components/block-editor/index.js +61 -60
- package/build-module/components/block-editor/index.js.map +1 -1
- package/build-module/components/block-editor/resizable-editor.js +11 -40
- package/build-module/components/block-editor/resizable-editor.js.map +1 -1
- package/build-module/components/editor/index.js +81 -124
- package/build-module/components/editor/index.js.map +1 -1
- package/build-module/components/global-styles/block-preview-panel.js +32 -0
- package/build-module/components/global-styles/block-preview-panel.js.map +1 -0
- package/build-module/components/global-styles/context-menu.js +7 -3
- package/build-module/components/global-styles/context-menu.js.map +1 -1
- package/build-module/components/global-styles/custom-css.js +51 -0
- package/build-module/components/global-styles/custom-css.js.map +1 -0
- package/build-module/components/global-styles/dimensions-panel.js +3 -7
- package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
- package/build-module/components/global-styles/global-styles-provider.js +15 -2
- package/build-module/components/global-styles/global-styles-provider.js.map +1 -1
- package/build-module/components/global-styles/hooks.js +5 -3
- package/build-module/components/global-styles/hooks.js.map +1 -1
- package/build-module/components/global-styles/palette.js +1 -1
- package/build-module/components/global-styles/palette.js.map +1 -1
- package/build-module/components/global-styles/screen-block-list.js +2 -1
- package/build-module/components/global-styles/screen-block-list.js.map +1 -1
- package/build-module/components/global-styles/screen-block.js +8 -2
- package/build-module/components/global-styles/screen-block.js.map +1 -1
- package/build-module/components/global-styles/screen-border.js +27 -0
- package/build-module/components/global-styles/screen-border.js.map +1 -0
- package/build-module/components/global-styles/screen-colors.js +1 -1
- package/build-module/components/global-styles/screen-colors.js.map +1 -1
- package/build-module/components/global-styles/screen-css.js +28 -0
- package/build-module/components/global-styles/screen-css.js.map +1 -0
- package/build-module/components/global-styles/screen-layout.js +0 -4
- package/build-module/components/global-styles/screen-layout.js.map +1 -1
- package/build-module/components/global-styles/screen-root.js +14 -1
- package/build-module/components/global-styles/screen-root.js.map +1 -1
- package/build-module/components/global-styles/screen-style-variations.js +2 -2
- package/build-module/components/global-styles/screen-style-variations.js.map +1 -1
- package/build-module/components/global-styles/ui.js +48 -5
- package/build-module/components/global-styles/ui.js.map +1 -1
- package/build-module/components/global-styles/use-global-styles-output.js +5 -1
- package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
- package/build-module/components/global-styles/utils.js +4 -4
- package/build-module/components/global-styles/utils.js.map +1 -1
- package/build-module/components/{editor/global-styles-renderer.js → global-styles-renderer/index.js} +4 -7
- package/build-module/components/global-styles-renderer/index.js.map +1 -0
- package/build-module/components/header-edit-mode/document-actions/index.js +13 -6
- package/build-module/components/header-edit-mode/document-actions/index.js.map +1 -1
- package/build-module/components/header-edit-mode/index.js +16 -11
- package/build-module/components/header-edit-mode/index.js.map +1 -1
- package/build-module/components/keyboard-shortcuts/index.js +10 -1
- package/build-module/components/keyboard-shortcuts/index.js.map +1 -1
- package/build-module/components/layout/index.js +203 -0
- package/build-module/components/layout/index.js.map +1 -0
- package/build-module/components/list/header.js +5 -1
- package/build-module/components/list/header.js.map +1 -1
- package/build-module/components/list/index.js +4 -19
- package/build-module/components/list/index.js.map +1 -1
- package/build-module/components/navigate-to-link/index.js +1 -3
- package/build-module/components/navigate-to-link/index.js.map +1 -1
- package/build-module/components/routes/index.js +1 -1
- package/build-module/components/routes/index.js.map +1 -1
- package/build-module/components/sidebar/index.js +30 -0
- package/build-module/components/sidebar/index.js.map +1 -0
- package/build-module/components/sidebar-edit-mode/global-styles-sidebar.js +27 -7
- package/build-module/components/sidebar-edit-mode/global-styles-sidebar.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/index.js +3 -3
- package/build-module/components/sidebar-edit-mode/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-item/index.js +40 -0
- package/build-module/components/sidebar-navigation-item/index.js.map +1 -0
- package/build-module/components/sidebar-navigation-screen/index.js +39 -0
- package/build-module/components/sidebar-navigation-screen/index.js.map +1 -0
- package/build-module/components/sidebar-navigation-screen-main/index.js +57 -0
- package/build-module/components/sidebar-navigation-screen-main/index.js.map +1 -0
- package/build-module/components/sidebar-navigation-screen-templates/index.js +165 -0
- package/build-module/components/sidebar-navigation-screen-templates/index.js.map +1 -0
- package/build-module/components/site-icon/index.js +55 -0
- package/build-module/components/site-icon/index.js.map +1 -0
- package/build-module/components/site-title/index.js +43 -0
- package/build-module/components/site-title/index.js.map +1 -0
- package/build-module/components/style-book/index.js +156 -0
- package/build-module/components/style-book/index.js.map +1 -0
- package/build-module/components/{url-query-controller/index.js → sync-state-with-url/use-init-edited-entity-from-url.js} +4 -3
- package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -0
- package/build-module/components/sync-state-with-url/use-sync-sidebar-path-with-url.js +43 -0
- package/build-module/components/sync-state-with-url/use-sync-sidebar-path-with-url.js.map +1 -0
- package/build-module/index.js +5 -36
- package/build-module/index.js.map +1 -1
- package/build-module/store/actions.js +87 -42
- package/build-module/store/actions.js.map +1 -1
- package/build-module/store/reducer.js +35 -102
- package/build-module/store/reducer.js.map +1 -1
- package/build-module/store/selectors.js +60 -72
- package/build-module/store/selectors.js.map +1 -1
- package/build-style/style-rtl.css +550 -346
- package/build-style/style.css +550 -346
- package/package.json +32 -31
- package/src/components/add-new-template/add-custom-template-modal.js +1 -0
- package/src/components/add-new-template/index.js +6 -3
- package/src/components/add-new-template/new-template-part.js +15 -3
- package/src/components/add-new-template/new-template.js +14 -7
- package/src/components/add-new-template/style.scss +0 -4
- package/src/components/app/index.js +14 -43
- package/src/components/block-editor/editor-canvas.js +69 -0
- package/src/components/block-editor/index.js +102 -87
- package/src/components/block-editor/resizable-editor.js +9 -64
- package/src/components/block-editor/style.scss +25 -1
- package/src/components/code-editor/style.scss +1 -1
- package/src/components/editor/index.js +170 -236
- package/src/components/editor/style.scss +0 -22
- package/src/components/global-styles/block-preview-panel.js +29 -0
- package/src/components/global-styles/context-menu.js +11 -2
- package/src/components/global-styles/custom-css.js +73 -0
- package/src/components/global-styles/dimensions-panel.js +2 -5
- package/src/components/global-styles/global-styles-provider.js +39 -17
- package/src/components/global-styles/hooks.js +8 -3
- package/src/components/global-styles/palette.js +1 -1
- package/src/components/global-styles/screen-block-list.js +2 -1
- package/src/components/global-styles/screen-block.js +9 -1
- package/src/components/global-styles/screen-border.js +23 -0
- package/src/components/global-styles/screen-colors.js +2 -1
- package/src/components/global-styles/screen-css.js +33 -0
- package/src/components/global-styles/screen-layout.js +0 -3
- package/src/components/global-styles/screen-root.js +30 -1
- package/src/components/global-styles/screen-style-variations.js +5 -2
- package/src/components/global-styles/style.scss +31 -2
- package/src/components/global-styles/ui.js +47 -4
- package/src/components/global-styles/use-global-styles-output.js +5 -0
- package/src/components/global-styles/utils.js +8 -5
- package/src/components/{editor/global-styles-renderer.js → global-styles-renderer/index.js} +3 -9
- package/src/components/header-edit-mode/document-actions/index.js +14 -9
- package/src/components/header-edit-mode/document-actions/style.scss +8 -1
- package/src/components/header-edit-mode/index.js +96 -78
- package/src/components/header-edit-mode/style.scss +5 -33
- package/src/components/keyboard-shortcuts/index.js +13 -0
- package/src/components/layout/index.js +278 -0
- package/src/components/layout/style.scss +176 -0
- package/src/components/list/header.js +5 -1
- package/src/components/list/index.js +12 -31
- package/src/components/list/style.scss +10 -4
- package/src/components/navigate-to-link/index.js +2 -8
- package/src/components/routes/index.js +1 -1
- package/src/components/sidebar/index.js +34 -0
- package/src/components/sidebar/style.scss +8 -0
- package/src/components/sidebar-edit-mode/global-styles-sidebar.js +42 -7
- package/src/components/sidebar-edit-mode/index.js +3 -3
- package/src/components/sidebar-edit-mode/navigation-menu-sidebar/style.scss +21 -3
- package/src/components/sidebar-edit-mode/settings-header/style.scss +47 -34
- package/src/components/sidebar-edit-mode/style.scss +0 -13
- package/src/components/sidebar-navigation-item/index.js +51 -0
- package/src/components/sidebar-navigation-item/style.scss +17 -0
- package/src/components/sidebar-navigation-screen/index.js +55 -0
- package/src/components/sidebar-navigation-screen/style.scss +41 -0
- package/src/components/sidebar-navigation-screen-main/index.js +72 -0
- package/src/components/sidebar-navigation-screen-templates/index.js +181 -0
- package/src/components/sidebar-navigation-screen-templates/style.scss +9 -0
- package/src/components/site-icon/index.js +56 -0
- package/src/components/site-icon/style.scss +10 -0
- package/src/components/site-title/index.js +39 -0
- package/src/components/style-book/index.js +193 -0
- package/src/components/style-book/style.scss +78 -0
- package/src/components/{url-query-controller/index.js → sync-state-with-url/use-init-edited-entity-from-url.js} +3 -3
- package/src/components/sync-state-with-url/use-sync-sidebar-path-with-url.js +36 -0
- package/src/components/template-details/style.scss +4 -0
- package/src/index.js +3 -53
- package/src/store/actions.js +93 -48
- package/src/store/reducer.js +29 -91
- package/src/store/selectors.js +61 -101
- package/src/store/test/actions.js +3 -15
- package/src/store/test/reducer.js +8 -192
- package/src/store/test/selectors.js +3 -42
- package/src/style.scss +19 -3
- package/build/components/editor/global-styles-renderer.js.map +0 -1
- package/build/components/navigation-sidebar/index.js +0 -62
- package/build/components/navigation-sidebar/index.js.map +0 -1
- package/build/components/navigation-sidebar/navigation-panel/constants.js +0 -77
- package/build/components/navigation-sidebar/navigation-panel/constants.js.map +0 -1
- package/build/components/navigation-sidebar/navigation-panel/index.js +0 -152
- package/build/components/navigation-sidebar/navigation-panel/index.js.map +0 -1
- package/build/components/navigation-sidebar/navigation-panel/template-hierarchy.js +0 -81
- package/build/components/navigation-sidebar/navigation-panel/template-hierarchy.js.map +0 -1
- package/build/components/navigation-sidebar/navigation-toggle/index.js +0 -124
- package/build/components/navigation-sidebar/navigation-toggle/index.js.map +0 -1
- package/build/components/url-query-controller/index.js.map +0 -1
- package/build-module/components/editor/global-styles-renderer.js.map +0 -1
- package/build-module/components/navigation-sidebar/index.js +0 -45
- package/build-module/components/navigation-sidebar/index.js.map +0 -1
- package/build-module/components/navigation-sidebar/navigation-panel/constants.js +0 -49
- package/build-module/components/navigation-sidebar/navigation-panel/constants.js.map +0 -1
- package/build-module/components/navigation-sidebar/navigation-panel/index.js +0 -131
- package/build-module/components/navigation-sidebar/navigation-panel/index.js.map +0 -1
- package/build-module/components/navigation-sidebar/navigation-panel/template-hierarchy.js +0 -66
- package/build-module/components/navigation-sidebar/navigation-panel/template-hierarchy.js.map +0 -1
- package/build-module/components/navigation-sidebar/navigation-toggle/index.js +0 -108
- package/build-module/components/navigation-sidebar/navigation-toggle/index.js.map +0 -1
- package/build-module/components/url-query-controller/index.js.map +0 -1
- package/src/components/navigation-sidebar/index.js +0 -46
- package/src/components/navigation-sidebar/navigation-panel/constants.js +0 -94
- package/src/components/navigation-sidebar/navigation-panel/index.js +0 -142
- package/src/components/navigation-sidebar/navigation-panel/style.scss +0 -152
- package/src/components/navigation-sidebar/navigation-panel/template-hierarchy.js +0 -81
- package/src/components/navigation-sidebar/navigation-toggle/index.js +0 -114
- package/src/components/navigation-sidebar/navigation-toggle/style.scss +0 -71
- package/src/components/navigation-sidebar/navigation-toggle/test/index.js +0 -65
|
@@ -11,14 +11,13 @@ import classnames from 'classnames';
|
|
|
11
11
|
|
|
12
12
|
import { useSelect, useDispatch } from '@wordpress/data';
|
|
13
13
|
import { useCallback, useMemo, useRef, Fragment } from '@wordpress/element';
|
|
14
|
-
import { useEntityBlockEditor, store as coreStore } from '@wordpress/core-data';
|
|
14
|
+
import { useEntityBlockEditor, __experimentalFetchMedia as fetchMedia, store as coreStore } from '@wordpress/core-data';
|
|
15
15
|
import { BlockList, BlockEditorProvider, __experimentalLinkControl, BlockInspector, BlockTools, __unstableBlockToolbarLastItem, __unstableBlockSettingsMenuFirstItem, __unstableUseTypingObserver as useTypingObserver, BlockEditorKeyboardShortcuts, store as blockEditorStore, __unstableBlockNameContext } from '@wordpress/block-editor';
|
|
16
|
-
import { useMergeRefs, useViewportMatch } from '@wordpress/compose';
|
|
16
|
+
import { useMergeRefs, useViewportMatch, useResizeObserver } from '@wordpress/compose';
|
|
17
17
|
import { ReusableBlocksMenuItems } from '@wordpress/reusable-blocks';
|
|
18
18
|
import { listView } from '@wordpress/icons';
|
|
19
19
|
import { ToolbarButton, ToolbarGroup } from '@wordpress/components';
|
|
20
20
|
import { __ } from '@wordpress/i18n';
|
|
21
|
-
import { store as interfaceStore } from '@wordpress/interface';
|
|
22
21
|
/**
|
|
23
22
|
* Internal dependencies
|
|
24
23
|
*/
|
|
@@ -30,14 +29,15 @@ import { store as editSiteStore } from '../../store';
|
|
|
30
29
|
import BlockInspectorButton from './block-inspector-button';
|
|
31
30
|
import BackButton from './back-button';
|
|
32
31
|
import ResizableEditor from './resizable-editor';
|
|
32
|
+
import EditorCanvas from './editor-canvas';
|
|
33
|
+
import StyleBook from '../style-book';
|
|
33
34
|
const LAYOUT = {
|
|
34
35
|
type: 'default',
|
|
35
36
|
// At the root level of the site editor, no alignments should be allowed.
|
|
36
37
|
alignments: []
|
|
37
38
|
};
|
|
38
|
-
const NAVIGATION_SIDEBAR_NAME = 'edit-site/navigation-menu';
|
|
39
39
|
export default function BlockEditor(_ref) {
|
|
40
|
-
var _storedSettings$__exp, _storedSettings$__exp2;
|
|
40
|
+
var _storedSettings$__exp, _storedSettings$__exp2, _window;
|
|
41
41
|
|
|
42
42
|
let {
|
|
43
43
|
setIsInserterOpen
|
|
@@ -45,22 +45,17 @@ export default function BlockEditor(_ref) {
|
|
|
45
45
|
const {
|
|
46
46
|
storedSettings,
|
|
47
47
|
templateType,
|
|
48
|
-
|
|
49
|
-
page,
|
|
50
|
-
isNavigationSidebarOpen
|
|
48
|
+
canvasMode
|
|
51
49
|
} = useSelect(select => {
|
|
52
50
|
const {
|
|
53
51
|
getSettings,
|
|
54
52
|
getEditedPostType,
|
|
55
|
-
|
|
56
|
-
getPage
|
|
53
|
+
__unstableGetCanvasMode
|
|
57
54
|
} = select(editSiteStore);
|
|
58
55
|
return {
|
|
59
56
|
storedSettings: getSettings(setIsInserterOpen),
|
|
60
57
|
templateType: getEditedPostType(),
|
|
61
|
-
|
|
62
|
-
page: getPage(),
|
|
63
|
-
isNavigationSidebarOpen: select(interfaceStore).getActiveComplementaryArea(editSiteStore.name) === NAVIGATION_SIDEBAR_NAME
|
|
58
|
+
canvasMode: __unstableGetCanvasMode()
|
|
64
59
|
};
|
|
65
60
|
}, [setIsInserterOpen]);
|
|
66
61
|
const settingsBlockPatterns = (_storedSettings$__exp = storedSettings.__experimentalAdditionalBlockPatterns) !== null && _storedSettings$__exp !== void 0 ? _storedSettings$__exp : // WP 6.0
|
|
@@ -90,6 +85,7 @@ export default function BlockEditor(_ref) {
|
|
|
90
85
|
...restStoredSettings
|
|
91
86
|
} = storedSettings;
|
|
92
87
|
return { ...restStoredSettings,
|
|
88
|
+
__unstableFetchMedia: fetchMedia,
|
|
93
89
|
__experimentalBlockPatterns: blockPatterns,
|
|
94
90
|
__experimentalBlockPatternCategories: blockPatternCategories
|
|
95
91
|
};
|
|
@@ -98,37 +94,34 @@ export default function BlockEditor(_ref) {
|
|
|
98
94
|
const {
|
|
99
95
|
setPage
|
|
100
96
|
} = useDispatch(editSiteStore);
|
|
101
|
-
const {
|
|
102
|
-
enableComplementaryArea,
|
|
103
|
-
disableComplementaryArea
|
|
104
|
-
} = useDispatch(interfaceStore);
|
|
105
|
-
const toggleNavigationSidebar = useCallback(() => {
|
|
106
|
-
const toggleComplementaryArea = isNavigationSidebarOpen ? disableComplementaryArea : enableComplementaryArea;
|
|
107
|
-
toggleComplementaryArea(editSiteStore.name, NAVIGATION_SIDEBAR_NAME);
|
|
108
|
-
}, [isNavigationSidebarOpen]);
|
|
109
97
|
const contentRef = useRef();
|
|
110
98
|
const mergedRefs = useMergeRefs([contentRef, useTypingObserver()]);
|
|
111
99
|
const isMobileViewport = useViewportMatch('small', '<');
|
|
112
100
|
const {
|
|
113
101
|
clearSelectedBlock
|
|
114
102
|
} = useDispatch(blockEditorStore);
|
|
103
|
+
const [resizeObserver, sizes] = useResizeObserver();
|
|
115
104
|
const isTemplatePart = templateType === 'wp_template_part';
|
|
116
105
|
const hasBlocks = blocks.length !== 0;
|
|
106
|
+
const enableResizing = isTemplatePart && canvasMode !== 'view' && // Disable resizing in mobile viewport.
|
|
107
|
+
!isMobileViewport;
|
|
108
|
+
const isViewMode = canvasMode === 'view'; // eslint-disable-next-line @wordpress/data-no-store-string-literals
|
|
109
|
+
|
|
110
|
+
const {
|
|
111
|
+
enableComplementaryArea
|
|
112
|
+
} = useDispatch('core/interface');
|
|
117
113
|
|
|
118
114
|
const NavMenuSidebarToggle = () => createElement(ToolbarGroup, null, createElement(ToolbarButton, {
|
|
119
115
|
className: "components-toolbar__control",
|
|
120
|
-
label:
|
|
121
|
-
onClick:
|
|
122
|
-
icon: listView
|
|
123
|
-
|
|
124
|
-
})); // Conditionally include NavMenu sidebar in Plugin only.
|
|
125
|
-
// Optimise for dead code elimination.
|
|
126
|
-
// See https://github.com/WordPress/gutenberg/blob/trunk/docs/how-to-guides/feature-flags.md#dead-code-elimination.
|
|
127
|
-
|
|
116
|
+
label: __('Open navigation list view'),
|
|
117
|
+
onClick: () => enableComplementaryArea('core/edit-site', 'edit-site/block-inspector'),
|
|
118
|
+
icon: listView
|
|
119
|
+
}));
|
|
128
120
|
|
|
129
121
|
let MaybeNavMenuSidebarToggle = Fragment;
|
|
122
|
+
const isOffCanvasNavigationEditorEnabled = ((_window = window) === null || _window === void 0 ? void 0 : _window.__experimentalEnableOffCanvasNavigationEditor) === true;
|
|
130
123
|
|
|
131
|
-
if (
|
|
124
|
+
if (isOffCanvasNavigationEditorEnabled) {
|
|
132
125
|
MaybeNavMenuSidebarToggle = NavMenuSidebarToggle;
|
|
133
126
|
}
|
|
134
127
|
|
|
@@ -139,37 +132,45 @@ export default function BlockEditor(_ref) {
|
|
|
139
132
|
onChange: onChange,
|
|
140
133
|
useSubRegistry: false
|
|
141
134
|
}, createElement(TemplatePartConverter, null), createElement(__experimentalLinkControl.ViewerFill, null, useCallback(fillProps => createElement(NavigateToLink, _extends({}, fillProps, {
|
|
142
|
-
activePage: page,
|
|
143
135
|
onActivePageChange: setPage
|
|
144
|
-
})), [
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
136
|
+
})), [])), createElement(SidebarInspectorFill, null, createElement(BlockInspector, null)), createElement(StyleBook.Slot, null, _ref3 => {
|
|
137
|
+
let [styleBook] = _ref3;
|
|
138
|
+
return styleBook ? createElement("div", {
|
|
139
|
+
className: "edit-site-visual-editor is-focus-mode"
|
|
140
|
+
}, createElement(ResizableEditor, {
|
|
141
|
+
enableResizing: true
|
|
142
|
+
}, styleBook)) : createElement(BlockTools, {
|
|
143
|
+
className: classnames('edit-site-visual-editor', {
|
|
144
|
+
'is-focus-mode': isTemplatePart || !!styleBook,
|
|
145
|
+
'is-view-mode': isViewMode
|
|
146
|
+
}),
|
|
147
|
+
__unstableContentRef: contentRef,
|
|
148
|
+
onClick: event => {
|
|
149
|
+
// Clear selected block when clicking on the gray background.
|
|
150
|
+
if (event.target === event.currentTarget) {
|
|
151
|
+
clearSelectedBlock();
|
|
152
|
+
}
|
|
153
153
|
}
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
154
|
+
}, createElement(BlockEditorKeyboardShortcuts.Register, null), createElement(BackButton, null), createElement(ResizableEditor, {
|
|
155
|
+
enableResizing: enableResizing,
|
|
156
|
+
height: sizes.height
|
|
157
|
+
}, createElement(EditorCanvas, {
|
|
158
|
+
enableResizing: enableResizing,
|
|
159
|
+
settings: settings,
|
|
160
|
+
contentRef: mergedRefs,
|
|
161
|
+
readonly: canvasMode === 'view'
|
|
162
|
+
}, resizeObserver, createElement(BlockList, {
|
|
163
|
+
className: "edit-site-block-editor__block-list wp-site-blocks",
|
|
164
|
+
__experimentalLayout: LAYOUT,
|
|
165
|
+
renderAppender: isTemplatePart && hasBlocks ? false : undefined
|
|
166
|
+
}))), createElement(__unstableBlockSettingsMenuFirstItem, null, _ref4 => {
|
|
167
|
+
let {
|
|
168
|
+
onClose
|
|
169
|
+
} = _ref4;
|
|
170
|
+
return createElement(BlockInspectorButton, {
|
|
171
|
+
onClick: onClose
|
|
172
|
+
});
|
|
173
|
+
}), createElement(__unstableBlockToolbarLastItem, null, createElement(__unstableBlockNameContext.Consumer, null, blockName => blockName === 'core/navigation' && createElement(MaybeNavMenuSidebarToggle, null))));
|
|
174
|
+
}), createElement(ReusableBlocksMenuItems, null));
|
|
174
175
|
}
|
|
175
176
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-site/src/components/block-editor/index.js"],"names":["classnames","useSelect","useDispatch","useCallback","useMemo","useRef","Fragment","useEntityBlockEditor","store","coreStore","BlockList","BlockEditorProvider","__experimentalLinkControl","BlockInspector","BlockTools","__unstableBlockToolbarLastItem","__unstableBlockSettingsMenuFirstItem","__unstableUseTypingObserver","useTypingObserver","BlockEditorKeyboardShortcuts","blockEditorStore","__unstableBlockNameContext","useMergeRefs","useViewportMatch","ReusableBlocksMenuItems","listView","ToolbarButton","ToolbarGroup","__","interfaceStore","TemplatePartConverter","NavigateToLink","SidebarInspectorFill","editSiteStore","BlockInspectorButton","BackButton","ResizableEditor","LAYOUT","type","alignments","NAVIGATION_SIDEBAR_NAME","BlockEditor","setIsInserterOpen","storedSettings","templateType","templateId","page","isNavigationSidebarOpen","select","getSettings","getEditedPostType","getEditedPostId","getPage","getActiveComplementaryArea","name","settingsBlockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","settingsBlockPatternCategories","__experimentalAdditionalBlockPatternCategories","__experimentalBlockPatternCategories","restBlockPatterns","restBlockPatternCategories","getBlockPatterns","getBlockPatternCategories","blockPatterns","filter","x","index","arr","findIndex","y","postTypes","Array","isArray","includes","blockPatternCategories","settings","restStoredSettings","blocks","onInput","onChange","setPage","enableComplementaryArea","disableComplementaryArea","toggleNavigationSidebar","toggleComplementaryArea","contentRef","mergedRefs","isMobileViewport","clearSelectedBlock","isTemplatePart","hasBlocks","length","NavMenuSidebarToggle","MaybeNavMenuSidebarToggle","process","env","IS_GUTENBERG_PLUGIN","fillProps","event","target","currentTarget","undefined","onClose","blockName"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useCallback, useMemo, useRef, Fragment } from '@wordpress/element';\nimport { useEntityBlockEditor, store as coreStore } from '@wordpress/core-data';\nimport {\n\tBlockList,\n\tBlockEditorProvider,\n\t__experimentalLinkControl,\n\tBlockInspector,\n\tBlockTools,\n\t__unstableBlockToolbarLastItem,\n\t__unstableBlockSettingsMenuFirstItem,\n\t__unstableUseTypingObserver as useTypingObserver,\n\tBlockEditorKeyboardShortcuts,\n\tstore as blockEditorStore,\n\t__unstableBlockNameContext,\n} from '@wordpress/block-editor';\nimport { useMergeRefs, useViewportMatch } from '@wordpress/compose';\nimport { ReusableBlocksMenuItems } from '@wordpress/reusable-blocks';\nimport { listView } from '@wordpress/icons';\nimport { ToolbarButton, ToolbarGroup } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { store as interfaceStore } from '@wordpress/interface';\n\n/**\n * Internal dependencies\n */\nimport TemplatePartConverter from '../template-part-converter';\nimport NavigateToLink from '../navigate-to-link';\nimport { SidebarInspectorFill } from '../sidebar-edit-mode';\nimport { store as editSiteStore } from '../../store';\nimport BlockInspectorButton from './block-inspector-button';\nimport BackButton from './back-button';\nimport ResizableEditor from './resizable-editor';\n\nconst LAYOUT = {\n\ttype: 'default',\n\t// At the root level of the site editor, no alignments should be allowed.\n\talignments: [],\n};\n\nconst NAVIGATION_SIDEBAR_NAME = 'edit-site/navigation-menu';\n\nexport default function BlockEditor( { setIsInserterOpen } ) {\n\tconst {\n\t\tstoredSettings,\n\t\ttemplateType,\n\t\ttemplateId,\n\t\tpage,\n\t\tisNavigationSidebarOpen,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getSettings, getEditedPostType, getEditedPostId, getPage } =\n\t\t\t\tselect( editSiteStore );\n\n\t\t\treturn {\n\t\t\t\tstoredSettings: getSettings( setIsInserterOpen ),\n\t\t\t\ttemplateType: getEditedPostType(),\n\t\t\t\ttemplateId: getEditedPostId(),\n\t\t\t\tpage: getPage(),\n\t\t\t\tisNavigationSidebarOpen:\n\t\t\t\t\tselect( interfaceStore ).getActiveComplementaryArea(\n\t\t\t\t\t\teditSiteStore.name\n\t\t\t\t\t) === NAVIGATION_SIDEBAR_NAME,\n\t\t\t};\n\t\t},\n\t\t[ setIsInserterOpen ]\n\t);\n\n\tconst settingsBlockPatterns =\n\t\tstoredSettings.__experimentalAdditionalBlockPatterns ?? // WP 6.0\n\t\tstoredSettings.__experimentalBlockPatterns; // WP 5.9\n\tconst settingsBlockPatternCategories =\n\t\tstoredSettings.__experimentalAdditionalBlockPatternCategories ?? // WP 6.0\n\t\tstoredSettings.__experimentalBlockPatternCategories; // WP 5.9\n\n\tconst { restBlockPatterns, restBlockPatternCategories } = useSelect(\n\t\t( select ) => ( {\n\t\t\trestBlockPatterns: select( coreStore ).getBlockPatterns(),\n\t\t\trestBlockPatternCategories:\n\t\t\t\tselect( coreStore ).getBlockPatternCategories(),\n\t\t} ),\n\t\t[]\n\t);\n\n\tconst blockPatterns = useMemo(\n\t\t() =>\n\t\t\t[\n\t\t\t\t...( settingsBlockPatterns || [] ),\n\t\t\t\t...( restBlockPatterns || [] ),\n\t\t\t]\n\t\t\t\t.filter(\n\t\t\t\t\t( x, index, arr ) =>\n\t\t\t\t\t\tindex === arr.findIndex( ( y ) => x.name === y.name )\n\t\t\t\t)\n\t\t\t\t.filter( ( { postTypes } ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t! postTypes ||\n\t\t\t\t\t\t( Array.isArray( postTypes ) &&\n\t\t\t\t\t\t\tpostTypes.includes( templateType ) )\n\t\t\t\t\t);\n\t\t\t\t} ),\n\t\t[ settingsBlockPatterns, restBlockPatterns, templateType ]\n\t);\n\n\tconst blockPatternCategories = useMemo(\n\t\t() =>\n\t\t\t[\n\t\t\t\t...( settingsBlockPatternCategories || [] ),\n\t\t\t\t...( restBlockPatternCategories || [] ),\n\t\t\t].filter(\n\t\t\t\t( x, index, arr ) =>\n\t\t\t\t\tindex === arr.findIndex( ( y ) => x.name === y.name )\n\t\t\t),\n\t\t[ settingsBlockPatternCategories, restBlockPatternCategories ]\n\t);\n\n\tconst settings = useMemo( () => {\n\t\tconst {\n\t\t\t__experimentalAdditionalBlockPatterns,\n\t\t\t__experimentalAdditionalBlockPatternCategories,\n\t\t\t...restStoredSettings\n\t\t} = storedSettings;\n\n\t\treturn {\n\t\t\t...restStoredSettings,\n\t\t\t__experimentalBlockPatterns: blockPatterns,\n\t\t\t__experimentalBlockPatternCategories: blockPatternCategories,\n\t\t};\n\t}, [ storedSettings, blockPatterns, blockPatternCategories ] );\n\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\t'postType',\n\t\ttemplateType\n\t);\n\tconst { setPage } = useDispatch( editSiteStore );\n\tconst { enableComplementaryArea, disableComplementaryArea } =\n\t\tuseDispatch( interfaceStore );\n\tconst toggleNavigationSidebar = useCallback( () => {\n\t\tconst toggleComplementaryArea = isNavigationSidebarOpen\n\t\t\t? disableComplementaryArea\n\t\t\t: enableComplementaryArea;\n\t\ttoggleComplementaryArea( editSiteStore.name, NAVIGATION_SIDEBAR_NAME );\n\t}, [ isNavigationSidebarOpen ] );\n\tconst contentRef = useRef();\n\tconst mergedRefs = useMergeRefs( [ contentRef, useTypingObserver() ] );\n\tconst isMobileViewport = useViewportMatch( 'small', '<' );\n\tconst { clearSelectedBlock } = useDispatch( blockEditorStore );\n\n\tconst isTemplatePart = templateType === 'wp_template_part';\n\tconst hasBlocks = blocks.length !== 0;\n\n\tconst NavMenuSidebarToggle = () => (\n\t\t<ToolbarGroup>\n\t\t\t<ToolbarButton\n\t\t\t\tclassName=\"components-toolbar__control\"\n\t\t\t\tlabel={\n\t\t\t\t\tisNavigationSidebarOpen\n\t\t\t\t\t\t? __( 'Close list view' )\n\t\t\t\t\t\t: __( 'Open list view' )\n\t\t\t\t}\n\t\t\t\tonClick={ toggleNavigationSidebar }\n\t\t\t\ticon={ listView }\n\t\t\t\tisActive={ isNavigationSidebarOpen }\n\t\t\t/>\n\t\t</ToolbarGroup>\n\t);\n\n\t// Conditionally include NavMenu sidebar in Plugin only.\n\t// Optimise for dead code elimination.\n\t// See https://github.com/WordPress/gutenberg/blob/trunk/docs/how-to-guides/feature-flags.md#dead-code-elimination.\n\tlet MaybeNavMenuSidebarToggle = Fragment;\n\n\tif ( process.env.IS_GUTENBERG_PLUGIN ) {\n\t\tMaybeNavMenuSidebarToggle = NavMenuSidebarToggle;\n\t}\n\n\treturn (\n\t\t<BlockEditorProvider\n\t\t\tsettings={ settings }\n\t\t\tvalue={ blocks }\n\t\t\tonInput={ onInput }\n\t\t\tonChange={ onChange }\n\t\t\tuseSubRegistry={ false }\n\t\t>\n\t\t\t<TemplatePartConverter />\n\t\t\t<__experimentalLinkControl.ViewerFill>\n\t\t\t\t{ useCallback(\n\t\t\t\t\t( fillProps ) => (\n\t\t\t\t\t\t<NavigateToLink\n\t\t\t\t\t\t\t{ ...fillProps }\n\t\t\t\t\t\t\tactivePage={ page }\n\t\t\t\t\t\t\tonActivePageChange={ setPage }\n\t\t\t\t\t\t/>\n\t\t\t\t\t),\n\t\t\t\t\t[ page ]\n\t\t\t\t) }\n\t\t\t</__experimentalLinkControl.ViewerFill>\n\t\t\t<SidebarInspectorFill>\n\t\t\t\t<BlockInspector />\n\t\t\t</SidebarInspectorFill>\n\t\t\t<BlockTools\n\t\t\t\tclassName={ classnames( 'edit-site-visual-editor', {\n\t\t\t\t\t'is-focus-mode': isTemplatePart,\n\t\t\t\t} ) }\n\t\t\t\t__unstableContentRef={ contentRef }\n\t\t\t\tonClick={ ( event ) => {\n\t\t\t\t\t// Clear selected block when clicking on the gray background.\n\t\t\t\t\tif ( event.target === event.currentTarget ) {\n\t\t\t\t\t\tclearSelectedBlock();\n\t\t\t\t\t}\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<BlockEditorKeyboardShortcuts.Register />\n\t\t\t\t<BackButton />\n\t\t\t\t<ResizableEditor\n\t\t\t\t\t// Reinitialize the editor and reset the states when the template changes.\n\t\t\t\t\tkey={ templateId }\n\t\t\t\t\tenableResizing={\n\t\t\t\t\t\tisTemplatePart &&\n\t\t\t\t\t\t// Disable resizing in mobile viewport.\n\t\t\t\t\t\t! isMobileViewport\n\t\t\t\t\t}\n\t\t\t\t\tsettings={ settings }\n\t\t\t\t\tcontentRef={ mergedRefs }\n\t\t\t\t>\n\t\t\t\t\t<BlockList\n\t\t\t\t\t\tclassName=\"edit-site-block-editor__block-list wp-site-blocks\"\n\t\t\t\t\t\t__experimentalLayout={ LAYOUT }\n\t\t\t\t\t\trenderAppender={\n\t\t\t\t\t\t\tisTemplatePart && hasBlocks ? false : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</ResizableEditor>\n\t\t\t\t<__unstableBlockSettingsMenuFirstItem>\n\t\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t\t<BlockInspectorButton onClick={ onClose } />\n\t\t\t\t\t) }\n\t\t\t\t</__unstableBlockSettingsMenuFirstItem>\n\t\t\t\t<__unstableBlockToolbarLastItem>\n\t\t\t\t\t<__unstableBlockNameContext.Consumer>\n\t\t\t\t\t\t{ ( blockName ) =>\n\t\t\t\t\t\t\tblockName === 'core/navigation' && (\n\t\t\t\t\t\t\t\t<MaybeNavMenuSidebarToggle />\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t</__unstableBlockNameContext.Consumer>\n\t\t\t\t</__unstableBlockToolbarLastItem>\n\t\t\t</BlockTools>\n\t\t\t<ReusableBlocksMenuItems />\n\t\t</BlockEditorProvider>\n\t);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/block-editor/index.js"],"names":["classnames","useSelect","useDispatch","useCallback","useMemo","useRef","Fragment","useEntityBlockEditor","__experimentalFetchMedia","fetchMedia","store","coreStore","BlockList","BlockEditorProvider","__experimentalLinkControl","BlockInspector","BlockTools","__unstableBlockToolbarLastItem","__unstableBlockSettingsMenuFirstItem","__unstableUseTypingObserver","useTypingObserver","BlockEditorKeyboardShortcuts","blockEditorStore","__unstableBlockNameContext","useMergeRefs","useViewportMatch","useResizeObserver","ReusableBlocksMenuItems","listView","ToolbarButton","ToolbarGroup","__","TemplatePartConverter","NavigateToLink","SidebarInspectorFill","editSiteStore","BlockInspectorButton","BackButton","ResizableEditor","EditorCanvas","StyleBook","LAYOUT","type","alignments","BlockEditor","setIsInserterOpen","storedSettings","templateType","canvasMode","select","getSettings","getEditedPostType","__unstableGetCanvasMode","settingsBlockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","settingsBlockPatternCategories","__experimentalAdditionalBlockPatternCategories","__experimentalBlockPatternCategories","restBlockPatterns","restBlockPatternCategories","getBlockPatterns","getBlockPatternCategories","blockPatterns","filter","x","index","arr","findIndex","y","name","postTypes","Array","isArray","includes","blockPatternCategories","settings","restStoredSettings","__unstableFetchMedia","blocks","onInput","onChange","setPage","contentRef","mergedRefs","isMobileViewport","clearSelectedBlock","resizeObserver","sizes","isTemplatePart","hasBlocks","length","enableResizing","isViewMode","enableComplementaryArea","NavMenuSidebarToggle","MaybeNavMenuSidebarToggle","isOffCanvasNavigationEditorEnabled","window","__experimentalEnableOffCanvasNavigationEditor","fillProps","styleBook","event","target","currentTarget","height","undefined","onClose","blockName"],"mappings":";;;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SAASC,SAAT,EAAoBC,WAApB,QAAuC,iBAAvC;AACA,SAASC,WAAT,EAAsBC,OAAtB,EAA+BC,MAA/B,EAAuCC,QAAvC,QAAuD,oBAAvD;AACA,SACCC,oBADD,EAECC,wBAAwB,IAAIC,UAF7B,EAGCC,KAAK,IAAIC,SAHV,QAIO,sBAJP;AAKA,SACCC,SADD,EAECC,mBAFD,EAGCC,yBAHD,EAICC,cAJD,EAKCC,UALD,EAMCC,8BAND,EAOCC,oCAPD,EAQCC,2BAA2B,IAAIC,iBARhC,EASCC,4BATD,EAUCX,KAAK,IAAIY,gBAVV,EAWCC,0BAXD,QAYO,yBAZP;AAaA,SACCC,YADD,EAECC,gBAFD,EAGCC,iBAHD,QAIO,oBAJP;AAKA,SAASC,uBAAT,QAAwC,4BAAxC;AACA,SAASC,QAAT,QAAyB,kBAAzB;AACA,SAASC,aAAT,EAAwBC,YAAxB,QAA4C,uBAA5C;AACA,SAASC,EAAT,QAAmB,iBAAnB;AAEA;AACA;AACA;;AACA,OAAOC,qBAAP,MAAkC,4BAAlC;AACA,OAAOC,cAAP,MAA2B,qBAA3B;AACA,SAASC,oBAAT,QAAqC,sBAArC;AACA,SAASxB,KAAK,IAAIyB,aAAlB,QAAuC,aAAvC;AACA,OAAOC,oBAAP,MAAiC,0BAAjC;AACA,OAAOC,UAAP,MAAuB,eAAvB;AACA,OAAOC,eAAP,MAA4B,oBAA5B;AACA,OAAOC,YAAP,MAAyB,iBAAzB;AACA,OAAOC,SAAP,MAAsB,eAAtB;AAEA,MAAMC,MAAM,GAAG;AACdC,EAAAA,IAAI,EAAE,SADQ;AAEd;AACAC,EAAAA,UAAU,EAAE;AAHE,CAAf;AAMA,eAAe,SAASC,WAAT,OAA8C;AAAA;;AAAA,MAAxB;AAAEC,IAAAA;AAAF,GAAwB;AAC5D,QAAM;AAAEC,IAAAA,cAAF;AAAkBC,IAAAA,YAAlB;AAAgCC,IAAAA;AAAhC,MAA+C/C,SAAS,CAC3DgD,MAAF,IAAc;AACb,UAAM;AAAEC,MAAAA,WAAF;AAAeC,MAAAA,iBAAf;AAAkCC,MAAAA;AAAlC,QACLH,MAAM,CAAEd,aAAF,CADP;AAGA,WAAO;AACNW,MAAAA,cAAc,EAAEI,WAAW,CAAEL,iBAAF,CADrB;AAENE,MAAAA,YAAY,EAAEI,iBAAiB,EAFzB;AAGNH,MAAAA,UAAU,EAAEI,uBAAuB;AAH7B,KAAP;AAKA,GAV4D,EAW7D,CAAEP,iBAAF,CAX6D,CAA9D;AAcA,QAAMQ,qBAAqB,4BAC1BP,cAAc,CAACQ,qCADW,yEAC8B;AACxDR,EAAAA,cAAc,CAACS,2BAFhB,CAf4D,CAiBf;;AAC7C,QAAMC,8BAA8B,6BACnCV,cAAc,CAACW,8CADoB,2EAC8B;AACjEX,EAAAA,cAAc,CAACY,oCAFhB,CAlB4D,CAoBN;;AAEtD,QAAM;AAAEC,IAAAA,iBAAF;AAAqBC,IAAAA;AAArB,MAAoD3D,SAAS,CAChEgD,MAAF,KAAgB;AACfU,IAAAA,iBAAiB,EAAEV,MAAM,CAAEtC,SAAF,CAAN,CAAoBkD,gBAApB,EADJ;AAEfD,IAAAA,0BAA0B,EACzBX,MAAM,CAAEtC,SAAF,CAAN,CAAoBmD,yBAApB;AAHc,GAAhB,CADkE,EAMlE,EANkE,CAAnE;AASA,QAAMC,aAAa,GAAG3D,OAAO,CAC5B,MACC,CACC,IAAKiD,qBAAqB,IAAI,EAA9B,CADD,EAEC,IAAKM,iBAAiB,IAAI,EAA1B,CAFD,EAIEK,MAJF,CAKE,CAAEC,CAAF,EAAKC,KAAL,EAAYC,GAAZ,KACCD,KAAK,KAAKC,GAAG,CAACC,SAAJ,CAAiBC,CAAF,IAASJ,CAAC,CAACK,IAAF,KAAWD,CAAC,CAACC,IAArC,CANb,EAQEN,MARF,CAQU,SAAqB;AAAA,QAAnB;AAAEO,MAAAA;AAAF,KAAmB;AAC7B,WACC,CAAEA,SAAF,IACEC,KAAK,CAACC,OAAN,CAAeF,SAAf,KACDA,SAAS,CAACG,QAAV,CAAoB3B,YAApB,CAHF;AAKA,GAdF,CAF2B,EAiB5B,CAAEM,qBAAF,EAAyBM,iBAAzB,EAA4CZ,YAA5C,CAjB4B,CAA7B;AAoBA,QAAM4B,sBAAsB,GAAGvE,OAAO,CACrC,MACC,CACC,IAAKoD,8BAA8B,IAAI,EAAvC,CADD,EAEC,IAAKI,0BAA0B,IAAI,EAAnC,CAFD,EAGEI,MAHF,CAIC,CAAEC,CAAF,EAAKC,KAAL,EAAYC,GAAZ,KACCD,KAAK,KAAKC,GAAG,CAACC,SAAJ,CAAiBC,CAAF,IAASJ,CAAC,CAACK,IAAF,KAAWD,CAAC,CAACC,IAArC,CALZ,CAFoC,EASrC,CAAEd,8BAAF,EAAkCI,0BAAlC,CATqC,CAAtC;AAYA,QAAMgB,QAAQ,GAAGxE,OAAO,CAAE,MAAM;AAC/B,UAAM;AACLkD,MAAAA,qCADK;AAELG,MAAAA,8CAFK;AAGL,SAAGoB;AAHE,QAIF/B,cAJJ;AAMA,WAAO,EACN,GAAG+B,kBADG;AAENC,MAAAA,oBAAoB,EAAErE,UAFhB;AAGN8C,MAAAA,2BAA2B,EAAEQ,aAHvB;AAINL,MAAAA,oCAAoC,EAAEiB;AAJhC,KAAP;AAMA,GAbuB,EAarB,CAAE7B,cAAF,EAAkBiB,aAAlB,EAAiCY,sBAAjC,CAbqB,CAAxB;AAeA,QAAM,CAAEI,MAAF,EAAUC,OAAV,EAAmBC,QAAnB,IAAgC1E,oBAAoB,CACzD,UADyD,EAEzDwC,YAFyD,CAA1D;AAIA,QAAM;AAAEmC,IAAAA;AAAF,MAAchF,WAAW,CAAEiC,aAAF,CAA/B;AAEA,QAAMgD,UAAU,GAAG9E,MAAM,EAAzB;AACA,QAAM+E,UAAU,GAAG5D,YAAY,CAAE,CAAE2D,UAAF,EAAc/D,iBAAiB,EAA/B,CAAF,CAA/B;AACA,QAAMiE,gBAAgB,GAAG5D,gBAAgB,CAAE,OAAF,EAAW,GAAX,CAAzC;AACA,QAAM;AAAE6D,IAAAA;AAAF,MAAyBpF,WAAW,CAAEoB,gBAAF,CAA1C;AACA,QAAM,CAAEiE,cAAF,EAAkBC,KAAlB,IAA4B9D,iBAAiB,EAAnD;AAEA,QAAM+D,cAAc,GAAG1C,YAAY,KAAK,kBAAxC;AACA,QAAM2C,SAAS,GAAGX,MAAM,CAACY,MAAP,KAAkB,CAApC;AACA,QAAMC,cAAc,GACnBH,cAAc,IACdzC,UAAU,KAAK,MADf,IAEA;AACA,GAAEqC,gBAJH;AAKA,QAAMQ,UAAU,GAAG7C,UAAU,KAAK,MAAlC,CAjG4D,CAmG5D;;AACA,QAAM;AAAE8C,IAAAA;AAAF,MAA8B5F,WAAW,CAAE,gBAAF,CAA/C;;AAEA,QAAM6F,oBAAoB,GAAG,MAC5B,cAAC,YAAD,QACC,cAAC,aAAD;AACC,IAAA,SAAS,EAAC,6BADX;AAEC,IAAA,KAAK,EAAGhE,EAAE,CAAE,2BAAF,CAFX;AAGC,IAAA,OAAO,EAAG,MACT+D,uBAAuB,CACtB,gBADsB,EAEtB,2BAFsB,CAJzB;AASC,IAAA,IAAI,EAAGlE;AATR,IADD,CADD;;AAgBA,MAAIoE,yBAAyB,GAAG1F,QAAhC;AACA,QAAM2F,kCAAkC,GACvC,YAAAC,MAAM,UAAN,0CAAQC,6CAAR,MAA0D,IAD3D;;AAGA,MAAKF,kCAAL,EAA0C;AACzCD,IAAAA,yBAAyB,GAAGD,oBAA5B;AACA;;AAED,SACC,cAAC,mBAAD;AACC,IAAA,QAAQ,EAAGnB,QADZ;AAEC,IAAA,KAAK,EAAGG,MAFT;AAGC,IAAA,OAAO,EAAGC,OAHX;AAIC,IAAA,QAAQ,EAAGC,QAJZ;AAKC,IAAA,cAAc,EAAG;AALlB,KAOC,cAAC,qBAAD,OAPD,EAQC,cAAC,yBAAD,CAA2B,UAA3B,QACG9E,WAAW,CACViG,SAAF,IACC,cAAC,cAAD,eACMA,SADN;AAEC,IAAA,kBAAkB,EAAGlB;AAFtB,KAFW,EAOZ,EAPY,CADd,CARD,EAmBC,cAAC,oBAAD,QACC,cAAC,cAAD,OADD,CAnBD,EAuBC,cAAC,SAAD,CAAW,IAAX,QACG;AAAA,QAAE,CAAEmB,SAAF,CAAF;AAAA,WACDA,SAAS,GACR;AAAK,MAAA,SAAS,EAAC;AAAf,OACC,cAAC,eAAD;AAAiB,MAAA,cAAc;AAA/B,OACGA,SADH,CADD,CADQ,GAOR,cAAC,UAAD;AACC,MAAA,SAAS,EAAGrG,UAAU,CAAE,yBAAF,EAA6B;AAClD,yBAAiByF,cAAc,IAAI,CAAC,CAAEY,SADY;AAElD,wBAAgBR;AAFkC,OAA7B,CADvB;AAKC,MAAA,oBAAoB,EAAGV,UALxB;AAMC,MAAA,OAAO,EAAKmB,KAAF,IAAa;AACtB;AACA,YAAKA,KAAK,CAACC,MAAN,KAAiBD,KAAK,CAACE,aAA5B,EAA4C;AAC3ClB,UAAAA,kBAAkB;AAClB;AACD;AAXF,OAaC,cAAC,4BAAD,CAA8B,QAA9B,OAbD,EAcC,cAAC,UAAD,OAdD,EAeC,cAAC,eAAD;AACC,MAAA,cAAc,EAAGM,cADlB;AAEC,MAAA,MAAM,EAAGJ,KAAK,CAACiB;AAFhB,OAIC,cAAC,YAAD;AACC,MAAA,cAAc,EAAGb,cADlB;AAEC,MAAA,QAAQ,EAAGhB,QAFZ;AAGC,MAAA,UAAU,EAAGQ,UAHd;AAIC,MAAA,QAAQ,EAAGpC,UAAU,KAAK;AAJ3B,OAMGuC,cANH,EAOC,cAAC,SAAD;AACC,MAAA,SAAS,EAAC,mDADX;AAEC,MAAA,oBAAoB,EAAG9C,MAFxB;AAGC,MAAA,cAAc,EACbgD,cAAc,IAAIC,SAAlB,GACG,KADH,GAEGgB;AANL,MAPD,CAJD,CAfD,EAqCC,cAAC,oCAAD,QACG;AAAA,UAAE;AAAEC,QAAAA;AAAF,OAAF;AAAA,aACD,cAAC,oBAAD;AAAsB,QAAA,OAAO,EAAGA;AAAhC,QADC;AAAA,KADH,CArCD,EA0CC,cAAC,8BAAD,QACC,cAAC,0BAAD,CAA4B,QAA5B,QACKC,SAAF,IACDA,SAAS,KAAK,iBAAd,IACC,cAAC,yBAAD,OAHH,CADD,CA1CD,CARA;AAAA,GADH,CAvBD,EAuFC,cAAC,uBAAD,OAvFD,CADD;AA2FA","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useCallback, useMemo, useRef, Fragment } from '@wordpress/element';\nimport {\n\tuseEntityBlockEditor,\n\t__experimentalFetchMedia as fetchMedia,\n\tstore as coreStore,\n} from '@wordpress/core-data';\nimport {\n\tBlockList,\n\tBlockEditorProvider,\n\t__experimentalLinkControl,\n\tBlockInspector,\n\tBlockTools,\n\t__unstableBlockToolbarLastItem,\n\t__unstableBlockSettingsMenuFirstItem,\n\t__unstableUseTypingObserver as useTypingObserver,\n\tBlockEditorKeyboardShortcuts,\n\tstore as blockEditorStore,\n\t__unstableBlockNameContext,\n} from '@wordpress/block-editor';\nimport {\n\tuseMergeRefs,\n\tuseViewportMatch,\n\tuseResizeObserver,\n} from '@wordpress/compose';\nimport { ReusableBlocksMenuItems } from '@wordpress/reusable-blocks';\nimport { listView } from '@wordpress/icons';\nimport { ToolbarButton, ToolbarGroup } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport TemplatePartConverter from '../template-part-converter';\nimport NavigateToLink from '../navigate-to-link';\nimport { SidebarInspectorFill } from '../sidebar-edit-mode';\nimport { store as editSiteStore } from '../../store';\nimport BlockInspectorButton from './block-inspector-button';\nimport BackButton from './back-button';\nimport ResizableEditor from './resizable-editor';\nimport EditorCanvas from './editor-canvas';\nimport StyleBook from '../style-book';\n\nconst LAYOUT = {\n\ttype: 'default',\n\t// At the root level of the site editor, no alignments should be allowed.\n\talignments: [],\n};\n\nexport default function BlockEditor( { setIsInserterOpen } ) {\n\tconst { storedSettings, templateType, canvasMode } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getSettings, getEditedPostType, __unstableGetCanvasMode } =\n\t\t\t\tselect( editSiteStore );\n\n\t\t\treturn {\n\t\t\t\tstoredSettings: getSettings( setIsInserterOpen ),\n\t\t\t\ttemplateType: getEditedPostType(),\n\t\t\t\tcanvasMode: __unstableGetCanvasMode(),\n\t\t\t};\n\t\t},\n\t\t[ setIsInserterOpen ]\n\t);\n\n\tconst settingsBlockPatterns =\n\t\tstoredSettings.__experimentalAdditionalBlockPatterns ?? // WP 6.0\n\t\tstoredSettings.__experimentalBlockPatterns; // WP 5.9\n\tconst settingsBlockPatternCategories =\n\t\tstoredSettings.__experimentalAdditionalBlockPatternCategories ?? // WP 6.0\n\t\tstoredSettings.__experimentalBlockPatternCategories; // WP 5.9\n\n\tconst { restBlockPatterns, restBlockPatternCategories } = useSelect(\n\t\t( select ) => ( {\n\t\t\trestBlockPatterns: select( coreStore ).getBlockPatterns(),\n\t\t\trestBlockPatternCategories:\n\t\t\t\tselect( coreStore ).getBlockPatternCategories(),\n\t\t} ),\n\t\t[]\n\t);\n\n\tconst blockPatterns = useMemo(\n\t\t() =>\n\t\t\t[\n\t\t\t\t...( settingsBlockPatterns || [] ),\n\t\t\t\t...( restBlockPatterns || [] ),\n\t\t\t]\n\t\t\t\t.filter(\n\t\t\t\t\t( x, index, arr ) =>\n\t\t\t\t\t\tindex === arr.findIndex( ( y ) => x.name === y.name )\n\t\t\t\t)\n\t\t\t\t.filter( ( { postTypes } ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t! postTypes ||\n\t\t\t\t\t\t( Array.isArray( postTypes ) &&\n\t\t\t\t\t\t\tpostTypes.includes( templateType ) )\n\t\t\t\t\t);\n\t\t\t\t} ),\n\t\t[ settingsBlockPatterns, restBlockPatterns, templateType ]\n\t);\n\n\tconst blockPatternCategories = useMemo(\n\t\t() =>\n\t\t\t[\n\t\t\t\t...( settingsBlockPatternCategories || [] ),\n\t\t\t\t...( restBlockPatternCategories || [] ),\n\t\t\t].filter(\n\t\t\t\t( x, index, arr ) =>\n\t\t\t\t\tindex === arr.findIndex( ( y ) => x.name === y.name )\n\t\t\t),\n\t\t[ settingsBlockPatternCategories, restBlockPatternCategories ]\n\t);\n\n\tconst settings = useMemo( () => {\n\t\tconst {\n\t\t\t__experimentalAdditionalBlockPatterns,\n\t\t\t__experimentalAdditionalBlockPatternCategories,\n\t\t\t...restStoredSettings\n\t\t} = storedSettings;\n\n\t\treturn {\n\t\t\t...restStoredSettings,\n\t\t\t__unstableFetchMedia: fetchMedia,\n\t\t\t__experimentalBlockPatterns: blockPatterns,\n\t\t\t__experimentalBlockPatternCategories: blockPatternCategories,\n\t\t};\n\t}, [ storedSettings, blockPatterns, blockPatternCategories ] );\n\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\t'postType',\n\t\ttemplateType\n\t);\n\tconst { setPage } = useDispatch( editSiteStore );\n\n\tconst contentRef = useRef();\n\tconst mergedRefs = useMergeRefs( [ contentRef, useTypingObserver() ] );\n\tconst isMobileViewport = useViewportMatch( 'small', '<' );\n\tconst { clearSelectedBlock } = useDispatch( blockEditorStore );\n\tconst [ resizeObserver, sizes ] = useResizeObserver();\n\n\tconst isTemplatePart = templateType === 'wp_template_part';\n\tconst hasBlocks = blocks.length !== 0;\n\tconst enableResizing =\n\t\tisTemplatePart &&\n\t\tcanvasMode !== 'view' &&\n\t\t// Disable resizing in mobile viewport.\n\t\t! isMobileViewport;\n\tconst isViewMode = canvasMode === 'view';\n\n\t// eslint-disable-next-line @wordpress/data-no-store-string-literals\n\tconst { enableComplementaryArea } = useDispatch( 'core/interface' );\n\n\tconst NavMenuSidebarToggle = () => (\n\t\t<ToolbarGroup>\n\t\t\t<ToolbarButton\n\t\t\t\tclassName=\"components-toolbar__control\"\n\t\t\t\tlabel={ __( 'Open navigation list view' ) }\n\t\t\t\tonClick={ () =>\n\t\t\t\t\tenableComplementaryArea(\n\t\t\t\t\t\t'core/edit-site',\n\t\t\t\t\t\t'edit-site/block-inspector'\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t\ticon={ listView }\n\t\t\t/>\n\t\t</ToolbarGroup>\n\t);\n\n\tlet MaybeNavMenuSidebarToggle = Fragment;\n\tconst isOffCanvasNavigationEditorEnabled =\n\t\twindow?.__experimentalEnableOffCanvasNavigationEditor === true;\n\n\tif ( isOffCanvasNavigationEditorEnabled ) {\n\t\tMaybeNavMenuSidebarToggle = NavMenuSidebarToggle;\n\t}\n\n\treturn (\n\t\t<BlockEditorProvider\n\t\t\tsettings={ settings }\n\t\t\tvalue={ blocks }\n\t\t\tonInput={ onInput }\n\t\t\tonChange={ onChange }\n\t\t\tuseSubRegistry={ false }\n\t\t>\n\t\t\t<TemplatePartConverter />\n\t\t\t<__experimentalLinkControl.ViewerFill>\n\t\t\t\t{ useCallback(\n\t\t\t\t\t( fillProps ) => (\n\t\t\t\t\t\t<NavigateToLink\n\t\t\t\t\t\t\t{ ...fillProps }\n\t\t\t\t\t\t\tonActivePageChange={ setPage }\n\t\t\t\t\t\t/>\n\t\t\t\t\t),\n\t\t\t\t\t[]\n\t\t\t\t) }\n\t\t\t</__experimentalLinkControl.ViewerFill>\n\t\t\t<SidebarInspectorFill>\n\t\t\t\t<BlockInspector />\n\t\t\t</SidebarInspectorFill>\n\t\t\t{ /* Potentially this could be a generic slot (e.g. EditorCanvas.Slot) if there are other uses for it. */ }\n\t\t\t<StyleBook.Slot>\n\t\t\t\t{ ( [ styleBook ] ) =>\n\t\t\t\t\tstyleBook ? (\n\t\t\t\t\t\t<div className=\"edit-site-visual-editor is-focus-mode\">\n\t\t\t\t\t\t\t<ResizableEditor enableResizing>\n\t\t\t\t\t\t\t\t{ styleBook }\n\t\t\t\t\t\t\t</ResizableEditor>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<BlockTools\n\t\t\t\t\t\t\tclassName={ classnames( 'edit-site-visual-editor', {\n\t\t\t\t\t\t\t\t'is-focus-mode': isTemplatePart || !! styleBook,\n\t\t\t\t\t\t\t\t'is-view-mode': isViewMode,\n\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t\t__unstableContentRef={ contentRef }\n\t\t\t\t\t\t\tonClick={ ( event ) => {\n\t\t\t\t\t\t\t\t// Clear selected block when clicking on the gray background.\n\t\t\t\t\t\t\t\tif ( event.target === event.currentTarget ) {\n\t\t\t\t\t\t\t\t\tclearSelectedBlock();\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\t\t<BlockEditorKeyboardShortcuts.Register />\n\t\t\t\t\t\t\t<BackButton />\n\t\t\t\t\t\t\t<ResizableEditor\n\t\t\t\t\t\t\t\tenableResizing={ enableResizing }\n\t\t\t\t\t\t\t\theight={ sizes.height }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<EditorCanvas\n\t\t\t\t\t\t\t\t\tenableResizing={ enableResizing }\n\t\t\t\t\t\t\t\t\tsettings={ settings }\n\t\t\t\t\t\t\t\t\tcontentRef={ mergedRefs }\n\t\t\t\t\t\t\t\t\treadonly={ canvasMode === 'view' }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ resizeObserver }\n\t\t\t\t\t\t\t\t\t<BlockList\n\t\t\t\t\t\t\t\t\t\tclassName=\"edit-site-block-editor__block-list wp-site-blocks\"\n\t\t\t\t\t\t\t\t\t\t__experimentalLayout={ LAYOUT }\n\t\t\t\t\t\t\t\t\t\trenderAppender={\n\t\t\t\t\t\t\t\t\t\t\tisTemplatePart && hasBlocks\n\t\t\t\t\t\t\t\t\t\t\t\t? false\n\t\t\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</EditorCanvas>\n\t\t\t\t\t\t\t</ResizableEditor>\n\t\t\t\t\t\t\t<__unstableBlockSettingsMenuFirstItem>\n\t\t\t\t\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t\t\t\t\t<BlockInspectorButton onClick={ onClose } />\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</__unstableBlockSettingsMenuFirstItem>\n\t\t\t\t\t\t\t<__unstableBlockToolbarLastItem>\n\t\t\t\t\t\t\t\t<__unstableBlockNameContext.Consumer>\n\t\t\t\t\t\t\t\t\t{ ( blockName ) =>\n\t\t\t\t\t\t\t\t\t\tblockName === 'core/navigation' && (\n\t\t\t\t\t\t\t\t\t\t\t<MaybeNavMenuSidebarToggle />\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t</__unstableBlockNameContext.Consumer>\n\t\t\t\t\t\t\t</__unstableBlockToolbarLastItem>\n\t\t\t\t\t\t</BlockTools>\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t</StyleBook.Slot>\n\t\t\t<ReusableBlocksMenuItems />\n\t\t</BlockEditorProvider>\n\t);\n}\n"]}
|
|
@@ -1,19 +1,14 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { createElement, Fragment } from "@wordpress/element";
|
|
1
|
+
import { createElement } from "@wordpress/element";
|
|
3
2
|
|
|
4
3
|
/**
|
|
5
4
|
* WordPress dependencies
|
|
6
5
|
*/
|
|
7
6
|
import { useState, useRef, useCallback } from '@wordpress/element';
|
|
8
7
|
import { ResizableBox } from '@wordpress/components';
|
|
9
|
-
import { __experimentalUseResizeCanvas as useResizeCanvas, __unstableEditorStyles as EditorStyles, __unstableIframe as Iframe, __unstableUseMouseMoveTypingReset as useMouseMoveTypingReset, store as blockEditorStore } from '@wordpress/block-editor';
|
|
10
|
-
import { useSelect } from '@wordpress/data';
|
|
11
|
-
import { useMergeRefs, useResizeObserver } from '@wordpress/compose';
|
|
12
8
|
/**
|
|
13
9
|
* Internal dependencies
|
|
14
10
|
*/
|
|
15
11
|
|
|
16
|
-
import { store as editSiteStore } from '../../store';
|
|
17
12
|
import ResizeHandle from './resize-handle'; // Removes the inline styles in the drag handles.
|
|
18
13
|
|
|
19
14
|
const HANDLE_STYLES_OVERRIDE = {
|
|
@@ -31,32 +26,23 @@ const HANDLE_STYLES_OVERRIDE = {
|
|
|
31
26
|
function ResizableEditor(_ref) {
|
|
32
27
|
let {
|
|
33
28
|
enableResizing,
|
|
34
|
-
|
|
35
|
-
children
|
|
36
|
-
...props
|
|
29
|
+
height,
|
|
30
|
+
children
|
|
37
31
|
} = _ref;
|
|
38
|
-
const [resizeObserver, sizes] = useResizeObserver();
|
|
39
|
-
const {
|
|
40
|
-
deviceType,
|
|
41
|
-
isZoomOutMode
|
|
42
|
-
} = useSelect(select => ({
|
|
43
|
-
deviceType: select(editSiteStore).__experimentalGetPreviewDeviceType(),
|
|
44
|
-
isZoomOutMode: select(blockEditorStore).__unstableGetEditorMode() === 'zoom-out'
|
|
45
|
-
}), []);
|
|
46
|
-
const deviceStyles = useResizeCanvas(deviceType);
|
|
47
32
|
const [width, setWidth] = useState('100%');
|
|
48
|
-
const
|
|
49
|
-
const mouseMoveTypingResetRef = useMouseMoveTypingReset();
|
|
50
|
-
const ref = useMergeRefs([iframeRef, mouseMoveTypingResetRef]);
|
|
33
|
+
const resizableRef = useRef();
|
|
51
34
|
const resizeWidthBy = useCallback(deltaPixels => {
|
|
52
|
-
if (
|
|
53
|
-
setWidth(
|
|
35
|
+
if (resizableRef.current) {
|
|
36
|
+
setWidth(resizableRef.current.offsetWidth + deltaPixels);
|
|
54
37
|
}
|
|
55
38
|
}, []);
|
|
56
39
|
return createElement(ResizableBox, {
|
|
40
|
+
ref: api => {
|
|
41
|
+
resizableRef.current = api === null || api === void 0 ? void 0 : api.resizable;
|
|
42
|
+
},
|
|
57
43
|
size: {
|
|
58
44
|
width: enableResizing ? width : '100%',
|
|
59
|
-
height: enableResizing &&
|
|
45
|
+
height: enableResizing && height ? height : '100%'
|
|
60
46
|
},
|
|
61
47
|
onResizeStop: (event, direction, element) => {
|
|
62
48
|
setWidth(element.style.width);
|
|
@@ -88,22 +74,7 @@ function ResizableEditor(_ref) {
|
|
|
88
74
|
left: HANDLE_STYLES_OVERRIDE,
|
|
89
75
|
right: HANDLE_STYLES_OVERRIDE
|
|
90
76
|
}
|
|
91
|
-
},
|
|
92
|
-
isZoomedOut: isZoomOutMode,
|
|
93
|
-
style: enableResizing ? {} : deviceStyles,
|
|
94
|
-
head: createElement(Fragment, null, createElement(EditorStyles, {
|
|
95
|
-
styles: settings.styles
|
|
96
|
-
}), createElement("style", null, // Forming a "block formatting context" to prevent margin collapsing.
|
|
97
|
-
// @see https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Block_formatting_context
|
|
98
|
-
`.is-root-container { display: flow-root; }
|
|
99
|
-
body { position: relative; }`), enableResizing && createElement("style", null, // Some themes will have `min-height: 100vh` for the root container,
|
|
100
|
-
// which isn't a requirement in auto resize mode.
|
|
101
|
-
`.is-root-container { min-height: 0 !important; }`)),
|
|
102
|
-
assets: settings.__unstableResolvedAssets,
|
|
103
|
-
ref: ref,
|
|
104
|
-
name: "editor-canvas",
|
|
105
|
-
className: "edit-site-visual-editor__editor-canvas"
|
|
106
|
-
}, props), settings.svgFilters, resizeObserver, children));
|
|
77
|
+
}, children);
|
|
107
78
|
}
|
|
108
79
|
|
|
109
80
|
export default ResizableEditor;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-site/src/components/block-editor/resizable-editor.js"],"names":["useState","useRef","useCallback","ResizableBox","
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/block-editor/resizable-editor.js"],"names":["useState","useRef","useCallback","ResizableBox","ResizeHandle","HANDLE_STYLES_OVERRIDE","position","undefined","userSelect","cursor","width","height","top","right","bottom","left","ResizableEditor","enableResizing","children","setWidth","resizableRef","resizeWidthBy","deltaPixels","current","offsetWidth","api","resizable","event","direction","element","style"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,QAAT,EAAmBC,MAAnB,EAA2BC,WAA3B,QAA8C,oBAA9C;AACA,SAASC,YAAT,QAA6B,uBAA7B;AAEA;AACA;AACA;;AACA,OAAOC,YAAP,MAAyB,iBAAzB,C,CAEA;;AACA,MAAMC,sBAAsB,GAAG;AAC9BC,EAAAA,QAAQ,EAAEC,SADoB;AAE9BC,EAAAA,UAAU,EAAED,SAFkB;AAG9BE,EAAAA,MAAM,EAAEF,SAHsB;AAI9BG,EAAAA,KAAK,EAAEH,SAJuB;AAK9BI,EAAAA,MAAM,EAAEJ,SALsB;AAM9BK,EAAAA,GAAG,EAAEL,SANyB;AAO9BM,EAAAA,KAAK,EAAEN,SAPuB;AAQ9BO,EAAAA,MAAM,EAAEP,SARsB;AAS9BQ,EAAAA,IAAI,EAAER;AATwB,CAA/B;;AAYA,SAASS,eAAT,OAAiE;AAAA,MAAvC;AAAEC,IAAAA,cAAF;AAAkBN,IAAAA,MAAlB;AAA0BO,IAAAA;AAA1B,GAAuC;AAChE,QAAM,CAAER,KAAF,EAASS,QAAT,IAAsBnB,QAAQ,CAAE,MAAF,CAApC;AACA,QAAMoB,YAAY,GAAGnB,MAAM,EAA3B;AACA,QAAMoB,aAAa,GAAGnB,WAAW,CAAIoB,WAAF,IAAmB;AACrD,QAAKF,YAAY,CAACG,OAAlB,EAA4B;AAC3BJ,MAAAA,QAAQ,CAAEC,YAAY,CAACG,OAAb,CAAqBC,WAArB,GAAmCF,WAArC,CAAR;AACA;AACD,GAJgC,EAI9B,EAJ8B,CAAjC;AAKA,SACC,cAAC,YAAD;AACC,IAAA,GAAG,EAAKG,GAAF,IAAW;AAChBL,MAAAA,YAAY,CAACG,OAAb,GAAuBE,GAAvB,aAAuBA,GAAvB,uBAAuBA,GAAG,CAAEC,SAA5B;AACA,KAHF;AAIC,IAAA,IAAI,EAAG;AACNhB,MAAAA,KAAK,EAAEO,cAAc,GAAGP,KAAH,GAAW,MAD1B;AAENC,MAAAA,MAAM,EAAEM,cAAc,IAAIN,MAAlB,GAA2BA,MAA3B,GAAoC;AAFtC,KAJR;AAQC,IAAA,YAAY,EAAG,CAAEgB,KAAF,EAASC,SAAT,EAAoBC,OAApB,KAAiC;AAC/CV,MAAAA,QAAQ,CAAEU,OAAO,CAACC,KAAR,CAAcpB,KAAhB,CAAR;AACA,KAVF;AAWC,IAAA,QAAQ,EAAG,GAXZ;AAYC,IAAA,QAAQ,EAAC,MAZV;AAaC,IAAA,SAAS,EAAC,MAbX;AAcC,IAAA,MAAM,EAAG;AACRG,MAAAA,KAAK,EAAEI,cADC;AAERF,MAAAA,IAAI,EAAEE;AAFE,KAdV;AAkBC,IAAA,UAAU,EAAGA,cAlBd,CAmBC;AACA;AACA;AArBD;AAsBC,IAAA,WAAW,EAAG,CAtBf;AAuBC,IAAA,eAAe,EAAG;AACjBF,MAAAA,IAAI,EACH,cAAC,YAAD;AACC,QAAA,SAAS,EAAC,MADX;AAEC,QAAA,aAAa,EAAGM;AAFjB,QAFgB;AAOjBR,MAAAA,KAAK,EACJ,cAAC,YAAD;AACC,QAAA,SAAS,EAAC,OADX;AAEC,QAAA,aAAa,EAAGQ;AAFjB;AARgB,KAvBnB;AAqCC,IAAA,aAAa,EAAGd,SArCjB;AAsCC,IAAA,YAAY,EAAG;AACdQ,MAAAA,IAAI,EAAEV,sBADQ;AAEdQ,MAAAA,KAAK,EAAER;AAFO;AAtChB,KA2CGa,QA3CH,CADD;AA+CA;;AAED,eAAeF,eAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useState, useRef, useCallback } from '@wordpress/element';\nimport { ResizableBox } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport ResizeHandle from './resize-handle';\n\n// Removes the inline styles in the drag handles.\nconst HANDLE_STYLES_OVERRIDE = {\n\tposition: undefined,\n\tuserSelect: undefined,\n\tcursor: undefined,\n\twidth: undefined,\n\theight: undefined,\n\ttop: undefined,\n\tright: undefined,\n\tbottom: undefined,\n\tleft: undefined,\n};\n\nfunction ResizableEditor( { enableResizing, height, children } ) {\n\tconst [ width, setWidth ] = useState( '100%' );\n\tconst resizableRef = useRef();\n\tconst resizeWidthBy = useCallback( ( deltaPixels ) => {\n\t\tif ( resizableRef.current ) {\n\t\t\tsetWidth( resizableRef.current.offsetWidth + deltaPixels );\n\t\t}\n\t}, [] );\n\treturn (\n\t\t<ResizableBox\n\t\t\tref={ ( api ) => {\n\t\t\t\tresizableRef.current = api?.resizable;\n\t\t\t} }\n\t\t\tsize={ {\n\t\t\t\twidth: enableResizing ? width : '100%',\n\t\t\t\theight: enableResizing && height ? height : '100%',\n\t\t\t} }\n\t\t\tonResizeStop={ ( event, direction, element ) => {\n\t\t\t\tsetWidth( element.style.width );\n\t\t\t} }\n\t\t\tminWidth={ 300 }\n\t\t\tmaxWidth=\"100%\"\n\t\t\tmaxHeight=\"100%\"\n\t\t\tenable={ {\n\t\t\t\tright: enableResizing,\n\t\t\t\tleft: enableResizing,\n\t\t\t} }\n\t\t\tshowHandle={ enableResizing }\n\t\t\t// The editor is centered horizontally, resizing it only\n\t\t\t// moves half the distance. Hence double the ratio to correctly\n\t\t\t// align the cursor to the resizer handle.\n\t\t\tresizeRatio={ 2 }\n\t\t\thandleComponent={ {\n\t\t\t\tleft: (\n\t\t\t\t\t<ResizeHandle\n\t\t\t\t\t\tdirection=\"left\"\n\t\t\t\t\t\tresizeWidthBy={ resizeWidthBy }\n\t\t\t\t\t/>\n\t\t\t\t),\n\t\t\t\tright: (\n\t\t\t\t\t<ResizeHandle\n\t\t\t\t\t\tdirection=\"right\"\n\t\t\t\t\t\tresizeWidthBy={ resizeWidthBy }\n\t\t\t\t\t/>\n\t\t\t\t),\n\t\t\t} }\n\t\t\thandleClasses={ undefined }\n\t\t\thandleStyles={ {\n\t\t\t\tleft: HANDLE_STYLES_OVERRIDE,\n\t\t\t\tright: HANDLE_STYLES_OVERRIDE,\n\t\t\t} }\n\t\t>\n\t\t\t{ children }\n\t\t</ResizableBox>\n\t);\n}\n\nexport default ResizableEditor;\n"]}
|