@wordpress/edit-site 4.19.0 → 5.1.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 +17 -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 +62 -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 +76 -135
- package/build/components/editor/index.js.map +1 -1
- package/build/components/global-styles/block-preview-panel.js +57 -0
- package/build/components/global-styles/block-preview-panel.js.map +1 -0
- package/build/components/global-styles/border-panel.js +0 -1
- package/build/components/global-styles/border-panel.js.map +1 -1
- 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 +62 -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 +18 -4
- 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-background-color.js +0 -1
- package/build/components/global-styles/screen-background-color.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 +5 -1
- package/build/components/global-styles/screen-block.js.map +1 -1
- package/build/components/global-styles/screen-border.js +47 -0
- package/build/components/global-styles/screen-border.js.map +1 -0
- package/build/components/global-styles/screen-button-color.js +0 -2
- package/build/components/global-styles/screen-button-color.js.map +1 -1
- package/build/components/global-styles/screen-colors.js +5 -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-heading-color.js +1 -3
- package/build/components/global-styles/screen-heading-color.js.map +1 -1
- package/build/components/global-styles/screen-layout.js +4 -5
- package/build/components/global-styles/screen-layout.js.map +1 -1
- package/build/components/global-styles/screen-link-color.js +0 -1
- package/build/components/global-styles/screen-link-color.js.map +1 -1
- package/build/components/global-styles/screen-root.js +20 -2
- 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/screen-text-color.js +0 -1
- package/build/components/global-styles/screen-text-color.js.map +1 -1
- package/build/components/global-styles/screen-typography.js +4 -0
- package/build/components/global-styles/screen-typography.js.map +1 -1
- package/build/components/global-styles/typography-utils.js +17 -5
- package/build/components/global-styles/typography-utils.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 +14 -4
- 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 +21 -45
- 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 +200 -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 +46 -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 +4 -2
- package/build/components/sidebar-edit-mode/index.js.map +1 -1
- package/build/components/sidebar-edit-mode/navigation-menu-sidebar/navigation-menu.js +10 -0
- package/build/components/sidebar-edit-mode/navigation-menu-sidebar/navigation-menu.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 +46 -0
- package/build/components/sidebar-navigation-screen-main/index.js.map +1 -0
- package/build/components/sidebar-navigation-screen-templates/index.js +169 -0
- package/build/components/sidebar-navigation-screen-templates/index.js.map +1 -0
- package/build/components/site-hub/index.js +149 -0
- package/build/components/site-hub/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/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/components/use-edited-entity-record/index.js +60 -0
- package/build/components/use-edited-entity-record/index.js.map +1 -0
- package/build/hooks/index.js +2 -0
- package/build/hooks/index.js.map +1 -1
- package/build/hooks/push-changes-to-global-styles/index.js +144 -0
- package/build/hooks/push-changes-to-global-styles/index.js.map +1 -0
- package/build/index.js +7 -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 +62 -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 +75 -129
- package/build-module/components/editor/index.js.map +1 -1
- package/build-module/components/global-styles/block-preview-panel.js +46 -0
- package/build-module/components/global-styles/block-preview-panel.js.map +1 -0
- package/build-module/components/global-styles/border-panel.js +0 -1
- package/build-module/components/global-styles/border-panel.js.map +1 -1
- 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 +52 -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 +18 -4
- 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-background-color.js +0 -1
- package/build-module/components/global-styles/screen-background-color.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 +4 -1
- package/build-module/components/global-styles/screen-block.js.map +1 -1
- package/build-module/components/global-styles/screen-border.js +30 -0
- package/build-module/components/global-styles/screen-border.js.map +1 -0
- package/build-module/components/global-styles/screen-button-color.js +0 -2
- package/build-module/components/global-styles/screen-button-color.js.map +1 -1
- package/build-module/components/global-styles/screen-colors.js +4 -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-heading-color.js +1 -3
- package/build-module/components/global-styles/screen-heading-color.js.map +1 -1
- package/build-module/components/global-styles/screen-layout.js +3 -4
- package/build-module/components/global-styles/screen-layout.js.map +1 -1
- package/build-module/components/global-styles/screen-link-color.js +0 -1
- package/build-module/components/global-styles/screen-link-color.js.map +1 -1
- package/build-module/components/global-styles/screen-root.js +21 -3
- 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/screen-text-color.js +0 -1
- package/build-module/components/global-styles/screen-text-color.js.map +1 -1
- package/build-module/components/global-styles/screen-typography.js +3 -0
- package/build-module/components/global-styles/screen-typography.js.map +1 -1
- package/build-module/components/global-styles/typography-utils.js +17 -5
- package/build-module/components/global-styles/typography-utils.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 +13 -5
- 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 +22 -43
- 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 +173 -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 +33 -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 +6 -4
- package/build-module/components/sidebar-edit-mode/index.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/navigation-menu-sidebar/navigation-menu.js +11 -1
- package/build-module/components/sidebar-edit-mode/navigation-menu-sidebar/navigation-menu.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 +32 -0
- package/build-module/components/sidebar-navigation-screen-main/index.js.map +1 -0
- package/build-module/components/sidebar-navigation-screen-templates/index.js +147 -0
- package/build-module/components/sidebar-navigation-screen-templates/index.js.map +1 -0
- package/build-module/components/site-hub/index.js +126 -0
- package/build-module/components/site-hub/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/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/components/use-edited-entity-record/index.js +48 -0
- package/build-module/components/use-edited-entity-record/index.js.map +1 -0
- package/build-module/hooks/index.js +1 -0
- package/build-module/hooks/index.js.map +1 -1
- package/build-module/hooks/push-changes-to-global-styles/index.js +132 -0
- package/build-module/hooks/push-changes-to-global-styles/index.js.map +1 -0
- package/build-module/index.js +9 -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 +549 -352
- package/build-style/style.css +549 -352
- package/package.json +33 -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 +100 -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 +157 -238
- package/src/components/editor/style.scss +0 -22
- package/src/components/global-styles/block-preview-panel.js +44 -0
- package/src/components/global-styles/border-panel.js +0 -1
- package/src/components/global-styles/context-menu.js +11 -2
- package/src/components/global-styles/custom-css.js +74 -0
- package/src/components/global-styles/dimensions-panel.js +2 -5
- package/src/components/global-styles/global-styles-provider.js +50 -22
- package/src/components/global-styles/hooks.js +8 -3
- package/src/components/global-styles/palette.js +1 -1
- package/src/components/global-styles/screen-background-color.js +0 -1
- package/src/components/global-styles/screen-block-list.js +2 -1
- package/src/components/global-styles/screen-block.js +6 -1
- package/src/components/global-styles/screen-border.js +25 -0
- package/src/components/global-styles/screen-button-color.js +0 -2
- package/src/components/global-styles/screen-colors.js +5 -1
- package/src/components/global-styles/screen-css.js +33 -0
- package/src/components/global-styles/screen-heading-color.js +1 -3
- package/src/components/global-styles/screen-layout.js +2 -3
- package/src/components/global-styles/screen-link-color.js +0 -1
- package/src/components/global-styles/screen-root.js +37 -1
- package/src/components/global-styles/screen-style-variations.js +5 -2
- package/src/components/global-styles/screen-text-color.js +0 -1
- package/src/components/global-styles/screen-typography.js +3 -0
- package/src/components/global-styles/style.scss +31 -2
- package/src/components/global-styles/test/typography-utils.js +72 -23
- package/src/components/global-styles/typography-utils.js +24 -4
- 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 +18 -6
- 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 +31 -45
- 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 +6 -33
- package/src/components/keyboard-shortcuts/index.js +13 -0
- package/src/components/layout/index.js +235 -0
- package/src/components/layout/style.scss +183 -0
- package/src/components/list/header.js +5 -1
- package/src/components/list/index.js +12 -31
- package/src/components/list/style.scss +3 -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 +37 -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 +4 -4
- package/src/components/sidebar-edit-mode/navigation-menu-sidebar/navigation-menu.js +10 -0
- 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 +39 -0
- package/src/components/sidebar-navigation-screen-main/index.js +44 -0
- package/src/components/sidebar-navigation-screen-templates/index.js +163 -0
- package/src/components/sidebar-navigation-screen-templates/style.scss +9 -0
- package/src/components/site-hub/index.js +150 -0
- package/src/components/site-hub/style.scss +31 -0
- package/src/components/site-icon/index.js +56 -0
- package/src/components/site-icon/style.scss +10 -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/components/use-edited-entity-record/index.js +37 -0
- package/src/hooks/index.js +1 -0
- package/src/hooks/push-changes-to-global-styles/index.js +162 -0
- package/src/hooks/push-changes-to-global-styles/style.scss +4 -0
- package/src/index.js +5 -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 +21 -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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-site/src/components/add-new-template/new-template.js"],"names":["apiFetch","addQueryArgs","DropdownMenu","MenuGroup","MenuItem","NavigableMenu","useState","useDispatch","store","coreStore","archive","blockMeta","category","home","list","media","notFound","page","post","postAuthor","postDate","search","tag","layout","customGenericTemplateIcon","__","sprintf","noticesStore","AddCustomTemplateModal","useExistingTemplates","useDefaultTemplateTypes","useTaxonomiesMenuItems","usePostTypeMenuItems","useAuthorMenuItem","usePostTypeArchiveMenuItems","AddCustomGenericTemplateModal","TemplateActionsLoadingScreen","useHistory","editSiteStore","DEFAULT_TEMPLATE_SLUGS","TEMPLATE_ICONS","single","index","author","taxonomy","date","attachment","NewTemplate","postType","showCustomTemplateModal","setShowCustomTemplateModal","showCustomGenericTemplateModal","setShowCustomGenericTemplateModal","entityForSuggestions","setEntityForSuggestions","isCreatingTemplate","setIsCreatingTemplate","history","saveEntityRecord","createErrorNotice","createSuccessNotice","setTemplate","createTemplate","template","isWPSuggestion","title","description","slug","templatePrefix","templateContent","content","fallbackTemplate","path","is_custom","template_prefix","raw","newTemplate","toString","status","is_wp_suggestion","throwOnError","id","push","postId","type","error","errorMessage","message","code","missingTemplates","useMissingTemplates","length","labels","add_new","add_new_item","noArrow","variant","map","onClick","icon","existingTemplates","defaultTemplateTypes","existingTemplateSlugs","missingDefaultTemplates","filter","includes","onClickMenuItem","_entityForSuggestions","enhancedMissingDefaultTemplateTypes","defaultTaxonomiesMenuItems","taxonomiesMenuItems","defaultPostTypesMenuItems","postTypesMenuItems","authorMenuItem","forEach","menuItem","matchIndex","findIndex","sort","template1","template2","indexOf"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport apiFetch from '@wordpress/api-fetch';\nimport { addQueryArgs } from '@wordpress/url';\nimport {\n\tDropdownMenu,\n\tMenuGroup,\n\tMenuItem,\n\tNavigableMenu,\n} from '@wordpress/components';\nimport { useState } from '@wordpress/element';\nimport { useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tarchive,\n\tblockMeta,\n\tcategory,\n\thome,\n\tlist,\n\tmedia,\n\tnotFound,\n\tpage,\n\tpost,\n\tpostAuthor,\n\tpostDate,\n\tsearch,\n\ttag,\n\tlayout as customGenericTemplateIcon,\n} from '@wordpress/icons';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport AddCustomTemplateModal from './add-custom-template-modal';\nimport {\n\tuseExistingTemplates,\n\tuseDefaultTemplateTypes,\n\tuseTaxonomiesMenuItems,\n\tusePostTypeMenuItems,\n\tuseAuthorMenuItem,\n\tusePostTypeArchiveMenuItems,\n} from './utils';\nimport AddCustomGenericTemplateModal from './add-custom-generic-template-modal';\nimport TemplateActionsLoadingScreen from './template-actions-loading-screen';\nimport { useHistory } from '../routes';\nimport { store as editSiteStore } from '../../store';\n\nconst DEFAULT_TEMPLATE_SLUGS = [\n\t'front-page',\n\t'single',\n\t'page',\n\t'index',\n\t'archive',\n\t'author',\n\t'category',\n\t'date',\n\t'tag',\n\t'taxonomy',\n\t'search',\n\t'404',\n];\n\nconst TEMPLATE_ICONS = {\n\t'front-page': home,\n\tsingle: post,\n\tpage,\n\tarchive,\n\tsearch,\n\t404: notFound,\n\tindex: list,\n\tcategory,\n\tauthor: postAuthor,\n\ttaxonomy: blockMeta,\n\tdate: postDate,\n\ttag,\n\tattachment: media,\n};\n\nexport default function NewTemplate( { postType } ) {\n\tconst [ showCustomTemplateModal, setShowCustomTemplateModal ] =\n\t\tuseState( false );\n\tconst [\n\t\tshowCustomGenericTemplateModal,\n\t\tsetShowCustomGenericTemplateModal,\n\t] = useState( false );\n\tconst [ entityForSuggestions, setEntityForSuggestions ] = useState( {} );\n\tconst [ isCreatingTemplate, setIsCreatingTemplate ] = useState( false );\n\n\tconst history = useHistory();\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\tconst { createErrorNotice, createSuccessNotice } =\n\t\tuseDispatch( noticesStore );\n\tconst { setTemplate } = useDispatch( editSiteStore );\n\n\tasync function createTemplate( template, isWPSuggestion = true ) {\n\t\tif ( isCreatingTemplate ) {\n\t\t\treturn;\n\t\t}\n\t\tsetIsCreatingTemplate( true );\n\t\ttry {\n\t\t\tconst { title, description, slug, templatePrefix } = template;\n\t\t\tlet templateContent = template.content;\n\t\t\t// Try to find fallback content from existing templates.\n\t\t\tif ( ! templateContent ) {\n\t\t\t\tconst fallbackTemplate = await apiFetch( {\n\t\t\t\t\tpath: addQueryArgs( '/wp/v2/templates/lookup', {\n\t\t\t\t\t\tslug,\n\t\t\t\t\t\tis_custom: ! isWPSuggestion,\n\t\t\t\t\t\ttemplate_prefix: templatePrefix,\n\t\t\t\t\t} ),\n\t\t\t\t} );\n\t\t\t\ttemplateContent = fallbackTemplate.content.raw;\n\t\t\t}\n\t\t\tconst newTemplate = await saveEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t'wp_template',\n\t\t\t\t{\n\t\t\t\t\tdescription,\n\t\t\t\t\t// Slugs need to be strings, so this is for template `404`\n\t\t\t\t\tslug: slug.toString(),\n\t\t\t\t\tstatus: 'publish',\n\t\t\t\t\ttitle,\n\t\t\t\t\tcontent: templateContent,\n\t\t\t\t\t// This adds a post meta field in template that is part of `is_custom` value calculation.\n\t\t\t\t\tis_wp_suggestion: isWPSuggestion,\n\t\t\t\t},\n\t\t\t\t{ throwOnError: true }\n\t\t\t);\n\n\t\t\t// Set template before navigating away to avoid initial stale value.\n\t\t\tsetTemplate( newTemplate.id, newTemplate.slug );\n\n\t\t\t// Navigate to the created template editor.\n\t\t\thistory.push( {\n\t\t\t\tpostId: newTemplate.id,\n\t\t\t\tpostType: newTemplate.type,\n\t\t\t} );\n\t\t\tcreateSuccessNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t// translators: %s: Title of the created template e.g: \"Category\".\n\t\t\t\t\t__( '\"%s\" successfully created.' ),\n\t\t\t\t\ttitle\n\t\t\t\t),\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t} catch ( error ) {\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __( 'An error occurred while creating the template.' );\n\n\t\t\tcreateErrorNotice( errorMessage, {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t\t} finally {\n\t\t\tsetIsCreatingTemplate( false );\n\t\t}\n\t}\n\n\tconst missingTemplates = useMissingTemplates(\n\t\tsetEntityForSuggestions,\n\t\tsetShowCustomTemplateModal\n\t);\n\tif ( ! missingTemplates.length ) {\n\t\treturn null;\n\t}\n\treturn (\n\t\t<>\n\t\t\t<DropdownMenu\n\t\t\t\tclassName=\"edit-site-new-template-dropdown\"\n\t\t\t\ticon={ null }\n\t\t\t\ttext={ postType.labels.add_new }\n\t\t\t\tlabel={ postType.labels.add_new_item }\n\t\t\t\tpopoverProps={ {\n\t\t\t\t\tnoArrow: false,\n\t\t\t\t} }\n\t\t\t\ttoggleProps={ {\n\t\t\t\t\tvariant: 'primary',\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ () => (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ isCreatingTemplate && (\n\t\t\t\t\t\t\t<TemplateActionsLoadingScreen />\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<NavigableMenu className=\"edit-site-new-template-dropdown__popover\">\n\t\t\t\t\t\t\t<MenuGroup label={ postType.labels.add_new_item }>\n\t\t\t\t\t\t\t\t{ missingTemplates.map( ( template ) => {\n\t\t\t\t\t\t\t\t\tconst {\n\t\t\t\t\t\t\t\t\t\ttitle,\n\t\t\t\t\t\t\t\t\t\tdescription,\n\t\t\t\t\t\t\t\t\t\tslug,\n\t\t\t\t\t\t\t\t\t\tonClick,\n\t\t\t\t\t\t\t\t\t\ticon,\n\t\t\t\t\t\t\t\t\t} = template;\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t\t\t\t\t\ticon ||\n\t\t\t\t\t\t\t\t\t\t\t\tTEMPLATE_ICONS[ slug ] ||\n\t\t\t\t\t\t\t\t\t\t\t\tpost\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\ticonPosition=\"left\"\n\t\t\t\t\t\t\t\t\t\t\tinfo={ description }\n\t\t\t\t\t\t\t\t\t\t\tkey={ slug }\n\t\t\t\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\t\t\t\tonClick\n\t\t\t\t\t\t\t\t\t\t\t\t\t? onClick( template )\n\t\t\t\t\t\t\t\t\t\t\t\t\t: createTemplate( template )\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ title }\n\t\t\t\t\t\t\t\t\t\t</MenuItem>\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</MenuGroup>\n\t\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\ticon={ customGenericTemplateIcon }\n\t\t\t\t\t\t\t\t\ticonPosition=\"left\"\n\t\t\t\t\t\t\t\t\tinfo={ __(\n\t\t\t\t\t\t\t\t\t\t'Custom templates can be applied to any post or page.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\tkey=\"custom-template\"\n\t\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\t\tsetShowCustomGenericTemplateModal(\n\t\t\t\t\t\t\t\t\t\t\ttrue\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>\n\t\t\t\t\t\t\t\t\t{ __( 'Custom template' ) }\n\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t</NavigableMenu>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</DropdownMenu>\n\t\t\t{ showCustomTemplateModal && (\n\t\t\t\t<AddCustomTemplateModal\n\t\t\t\t\tonClose={ () => setShowCustomTemplateModal( false ) }\n\t\t\t\t\tonSelect={ createTemplate }\n\t\t\t\t\tentityForSuggestions={ entityForSuggestions }\n\t\t\t\t\tisCreatingTemplate={ isCreatingTemplate }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ showCustomGenericTemplateModal && (\n\t\t\t\t<AddCustomGenericTemplateModal\n\t\t\t\t\tonClose={ () => setShowCustomGenericTemplateModal( false ) }\n\t\t\t\t\tcreateTemplate={ createTemplate }\n\t\t\t\t\tisCreatingTemplate={ isCreatingTemplate }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nfunction useMissingTemplates(\n\tsetEntityForSuggestions,\n\tsetShowCustomTemplateModal\n) {\n\tconst existingTemplates = useExistingTemplates();\n\tconst defaultTemplateTypes = useDefaultTemplateTypes();\n\tconst existingTemplateSlugs = ( existingTemplates || [] ).map(\n\t\t( { slug } ) => slug\n\t);\n\tconst missingDefaultTemplates = ( defaultTemplateTypes || [] ).filter(\n\t\t( template ) =>\n\t\t\tDEFAULT_TEMPLATE_SLUGS.includes( template.slug ) &&\n\t\t\t! existingTemplateSlugs.includes( template.slug )\n\t);\n\tconst onClickMenuItem = ( _entityForSuggestions ) => {\n\t\tsetShowCustomTemplateModal( true );\n\t\tsetEntityForSuggestions( _entityForSuggestions );\n\t};\n\t// We need to replace existing default template types with\n\t// the create specific template functionality. The original\n\t// info (title, description, etc.) is preserved in the\n\t// used hooks.\n\tconst enhancedMissingDefaultTemplateTypes = [ ...missingDefaultTemplates ];\n\tconst { defaultTaxonomiesMenuItems, taxonomiesMenuItems } =\n\t\tuseTaxonomiesMenuItems( onClickMenuItem );\n\tconst { defaultPostTypesMenuItems, postTypesMenuItems } =\n\t\tusePostTypeMenuItems( onClickMenuItem );\n\n\tconst authorMenuItem = useAuthorMenuItem( onClickMenuItem );\n\t[\n\t\t...defaultTaxonomiesMenuItems,\n\t\t...defaultPostTypesMenuItems,\n\t\tauthorMenuItem,\n\t].forEach( ( menuItem ) => {\n\t\tif ( ! menuItem ) {\n\t\t\treturn;\n\t\t}\n\t\tconst matchIndex = enhancedMissingDefaultTemplateTypes.findIndex(\n\t\t\t( template ) => template.slug === menuItem.slug\n\t\t);\n\t\t// Some default template types might have been filtered above from\n\t\t// `missingDefaultTemplates` because they only check for the general\n\t\t// template. So here we either replace or append the item, augmented\n\t\t// with the check if it has available specific item to create a\n\t\t// template for.\n\t\tif ( matchIndex > -1 ) {\n\t\t\tenhancedMissingDefaultTemplateTypes[ matchIndex ] = menuItem;\n\t\t} else {\n\t\t\tenhancedMissingDefaultTemplateTypes.push( menuItem );\n\t\t}\n\t} );\n\t// Update the sort order to match the DEFAULT_TEMPLATE_SLUGS order.\n\tenhancedMissingDefaultTemplateTypes?.sort( ( template1, template2 ) => {\n\t\treturn (\n\t\t\tDEFAULT_TEMPLATE_SLUGS.indexOf( template1.slug ) -\n\t\t\tDEFAULT_TEMPLATE_SLUGS.indexOf( template2.slug )\n\t\t);\n\t} );\n\tconst missingTemplates = [\n\t\t...enhancedMissingDefaultTemplateTypes,\n\t\t...usePostTypeArchiveMenuItems(),\n\t\t...postTypesMenuItems,\n\t\t...taxonomiesMenuItems,\n\t];\n\treturn missingTemplates;\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/add-new-template/new-template.js"],"names":["apiFetch","addQueryArgs","DropdownMenu","MenuGroup","MenuItem","NavigableMenu","useState","useDispatch","store","coreStore","archive","blockMeta","category","home","list","media","notFound","page","plus","post","postAuthor","postDate","search","tag","layout","customGenericTemplateIcon","__","sprintf","noticesStore","AddCustomTemplateModal","useExistingTemplates","useDefaultTemplateTypes","useTaxonomiesMenuItems","usePostTypeMenuItems","useAuthorMenuItem","usePostTypeArchiveMenuItems","AddCustomGenericTemplateModal","TemplateActionsLoadingScreen","useHistory","editSiteStore","DEFAULT_TEMPLATE_SLUGS","TEMPLATE_ICONS","single","index","author","taxonomy","date","attachment","NewTemplate","postType","toggleProps","showIcon","showCustomTemplateModal","setShowCustomTemplateModal","showCustomGenericTemplateModal","setShowCustomGenericTemplateModal","entityForSuggestions","setEntityForSuggestions","isCreatingTemplate","setIsCreatingTemplate","history","saveEntityRecord","createErrorNotice","createSuccessNotice","setTemplate","__unstableSetCanvasMode","createTemplate","template","isWPSuggestion","title","description","slug","templatePrefix","templateContent","content","fallbackTemplate","path","is_custom","template_prefix","raw","newTemplate","toString","status","is_wp_suggestion","throwOnError","id","push","postId","type","error","errorMessage","message","code","missingTemplates","useMissingTemplates","length","labels","add_new","add_new_item","noArrow","map","onClick","icon","existingTemplates","defaultTemplateTypes","existingTemplateSlugs","missingDefaultTemplates","filter","includes","onClickMenuItem","_entityForSuggestions","enhancedMissingDefaultTemplateTypes","defaultTaxonomiesMenuItems","taxonomiesMenuItems","defaultPostTypesMenuItems","postTypesMenuItems","authorMenuItem","forEach","menuItem","matchIndex","findIndex","sort","template1","template2","indexOf"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport apiFetch from '@wordpress/api-fetch';\nimport { addQueryArgs } from '@wordpress/url';\nimport {\n\tDropdownMenu,\n\tMenuGroup,\n\tMenuItem,\n\tNavigableMenu,\n} from '@wordpress/components';\nimport { useState } from '@wordpress/element';\nimport { useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tarchive,\n\tblockMeta,\n\tcategory,\n\thome,\n\tlist,\n\tmedia,\n\tnotFound,\n\tpage,\n\tplus,\n\tpost,\n\tpostAuthor,\n\tpostDate,\n\tsearch,\n\ttag,\n\tlayout as customGenericTemplateIcon,\n} from '@wordpress/icons';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport AddCustomTemplateModal from './add-custom-template-modal';\nimport {\n\tuseExistingTemplates,\n\tuseDefaultTemplateTypes,\n\tuseTaxonomiesMenuItems,\n\tusePostTypeMenuItems,\n\tuseAuthorMenuItem,\n\tusePostTypeArchiveMenuItems,\n} from './utils';\nimport AddCustomGenericTemplateModal from './add-custom-generic-template-modal';\nimport TemplateActionsLoadingScreen from './template-actions-loading-screen';\nimport { useHistory } from '../routes';\nimport { store as editSiteStore } from '../../store';\n\nconst DEFAULT_TEMPLATE_SLUGS = [\n\t'front-page',\n\t'single',\n\t'page',\n\t'index',\n\t'archive',\n\t'author',\n\t'category',\n\t'date',\n\t'tag',\n\t'taxonomy',\n\t'search',\n\t'404',\n];\n\nconst TEMPLATE_ICONS = {\n\t'front-page': home,\n\tsingle: post,\n\tpage,\n\tarchive,\n\tsearch,\n\t404: notFound,\n\tindex: list,\n\tcategory,\n\tauthor: postAuthor,\n\ttaxonomy: blockMeta,\n\tdate: postDate,\n\ttag,\n\tattachment: media,\n};\n\nexport default function NewTemplate( {\n\tpostType,\n\ttoggleProps,\n\tshowIcon = true,\n} ) {\n\tconst [ showCustomTemplateModal, setShowCustomTemplateModal ] =\n\t\tuseState( false );\n\tconst [\n\t\tshowCustomGenericTemplateModal,\n\t\tsetShowCustomGenericTemplateModal,\n\t] = useState( false );\n\tconst [ entityForSuggestions, setEntityForSuggestions ] = useState( {} );\n\tconst [ isCreatingTemplate, setIsCreatingTemplate ] = useState( false );\n\n\tconst history = useHistory();\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\tconst { createErrorNotice, createSuccessNotice } =\n\t\tuseDispatch( noticesStore );\n\tconst { setTemplate, __unstableSetCanvasMode } =\n\t\tuseDispatch( editSiteStore );\n\n\tasync function createTemplate( template, isWPSuggestion = true ) {\n\t\tif ( isCreatingTemplate ) {\n\t\t\treturn;\n\t\t}\n\t\tsetIsCreatingTemplate( true );\n\t\ttry {\n\t\t\tconst { title, description, slug, templatePrefix } = template;\n\t\t\tlet templateContent = template.content;\n\t\t\t// Try to find fallback content from existing templates.\n\t\t\tif ( ! templateContent ) {\n\t\t\t\tconst fallbackTemplate = await apiFetch( {\n\t\t\t\t\tpath: addQueryArgs( '/wp/v2/templates/lookup', {\n\t\t\t\t\t\tslug,\n\t\t\t\t\t\tis_custom: ! isWPSuggestion,\n\t\t\t\t\t\ttemplate_prefix: templatePrefix,\n\t\t\t\t\t} ),\n\t\t\t\t} );\n\t\t\t\ttemplateContent = fallbackTemplate.content.raw;\n\t\t\t}\n\t\t\tconst newTemplate = await saveEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t'wp_template',\n\t\t\t\t{\n\t\t\t\t\tdescription,\n\t\t\t\t\t// Slugs need to be strings, so this is for template `404`\n\t\t\t\t\tslug: slug.toString(),\n\t\t\t\t\tstatus: 'publish',\n\t\t\t\t\ttitle,\n\t\t\t\t\tcontent: templateContent,\n\t\t\t\t\t// This adds a post meta field in template that is part of `is_custom` value calculation.\n\t\t\t\t\tis_wp_suggestion: isWPSuggestion,\n\t\t\t\t},\n\t\t\t\t{ throwOnError: true }\n\t\t\t);\n\n\t\t\t// Set template before navigating away to avoid initial stale value.\n\t\t\tsetTemplate( newTemplate.id, newTemplate.slug );\n\n\t\t\t// Switch to edit mode.\n\t\t\t__unstableSetCanvasMode( 'edit' );\n\n\t\t\t// Navigate to the created template editor.\n\t\t\thistory.push( {\n\t\t\t\tpostId: newTemplate.id,\n\t\t\t\tpostType: newTemplate.type,\n\t\t\t} );\n\t\t\tcreateSuccessNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t// translators: %s: Title of the created template e.g: \"Category\".\n\t\t\t\t\t__( '\"%s\" successfully created.' ),\n\t\t\t\t\ttitle\n\t\t\t\t),\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t} catch ( error ) {\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __( 'An error occurred while creating the template.' );\n\n\t\t\tcreateErrorNotice( errorMessage, {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t\t} finally {\n\t\t\tsetIsCreatingTemplate( false );\n\t\t}\n\t}\n\n\tconst missingTemplates = useMissingTemplates(\n\t\tsetEntityForSuggestions,\n\t\tsetShowCustomTemplateModal\n\t);\n\tif ( ! missingTemplates.length ) {\n\t\treturn null;\n\t}\n\treturn (\n\t\t<>\n\t\t\t<DropdownMenu\n\t\t\t\tclassName=\"edit-site-new-template-dropdown\"\n\t\t\t\ticon={ showIcon ? plus : null }\n\t\t\t\ttext={ showIcon ? null : postType.labels.add_new }\n\t\t\t\tlabel={ postType.labels.add_new_item }\n\t\t\t\tpopoverProps={ {\n\t\t\t\t\tnoArrow: false,\n\t\t\t\t} }\n\t\t\t\ttoggleProps={ toggleProps }\n\t\t\t>\n\t\t\t\t{ () => (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ isCreatingTemplate && (\n\t\t\t\t\t\t\t<TemplateActionsLoadingScreen />\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<NavigableMenu className=\"edit-site-new-template-dropdown__popover\">\n\t\t\t\t\t\t\t<MenuGroup label={ postType.labels.add_new_item }>\n\t\t\t\t\t\t\t\t{ missingTemplates.map( ( template ) => {\n\t\t\t\t\t\t\t\t\tconst {\n\t\t\t\t\t\t\t\t\t\ttitle,\n\t\t\t\t\t\t\t\t\t\tdescription,\n\t\t\t\t\t\t\t\t\t\tslug,\n\t\t\t\t\t\t\t\t\t\tonClick,\n\t\t\t\t\t\t\t\t\t\ticon,\n\t\t\t\t\t\t\t\t\t} = template;\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t\t\t\t\t\ticon ||\n\t\t\t\t\t\t\t\t\t\t\t\tTEMPLATE_ICONS[ slug ] ||\n\t\t\t\t\t\t\t\t\t\t\t\tpost\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\ticonPosition=\"left\"\n\t\t\t\t\t\t\t\t\t\t\tinfo={ description }\n\t\t\t\t\t\t\t\t\t\t\tkey={ slug }\n\t\t\t\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\t\t\t\tonClick\n\t\t\t\t\t\t\t\t\t\t\t\t\t? onClick( template )\n\t\t\t\t\t\t\t\t\t\t\t\t\t: createTemplate( template )\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ title }\n\t\t\t\t\t\t\t\t\t\t</MenuItem>\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</MenuGroup>\n\t\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\ticon={ customGenericTemplateIcon }\n\t\t\t\t\t\t\t\t\ticonPosition=\"left\"\n\t\t\t\t\t\t\t\t\tinfo={ __(\n\t\t\t\t\t\t\t\t\t\t'Custom templates can be applied to any post or page.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\tkey=\"custom-template\"\n\t\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\t\tsetShowCustomGenericTemplateModal(\n\t\t\t\t\t\t\t\t\t\t\ttrue\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>\n\t\t\t\t\t\t\t\t\t{ __( 'Custom template' ) }\n\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t</NavigableMenu>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</DropdownMenu>\n\t\t\t{ showCustomTemplateModal && (\n\t\t\t\t<AddCustomTemplateModal\n\t\t\t\t\tonClose={ () => setShowCustomTemplateModal( false ) }\n\t\t\t\t\tonSelect={ createTemplate }\n\t\t\t\t\tentityForSuggestions={ entityForSuggestions }\n\t\t\t\t\tisCreatingTemplate={ isCreatingTemplate }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ showCustomGenericTemplateModal && (\n\t\t\t\t<AddCustomGenericTemplateModal\n\t\t\t\t\tonClose={ () => setShowCustomGenericTemplateModal( false ) }\n\t\t\t\t\tcreateTemplate={ createTemplate }\n\t\t\t\t\tisCreatingTemplate={ isCreatingTemplate }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nfunction useMissingTemplates(\n\tsetEntityForSuggestions,\n\tsetShowCustomTemplateModal\n) {\n\tconst existingTemplates = useExistingTemplates();\n\tconst defaultTemplateTypes = useDefaultTemplateTypes();\n\tconst existingTemplateSlugs = ( existingTemplates || [] ).map(\n\t\t( { slug } ) => slug\n\t);\n\tconst missingDefaultTemplates = ( defaultTemplateTypes || [] ).filter(\n\t\t( template ) =>\n\t\t\tDEFAULT_TEMPLATE_SLUGS.includes( template.slug ) &&\n\t\t\t! existingTemplateSlugs.includes( template.slug )\n\t);\n\tconst onClickMenuItem = ( _entityForSuggestions ) => {\n\t\tsetShowCustomTemplateModal( true );\n\t\tsetEntityForSuggestions( _entityForSuggestions );\n\t};\n\t// We need to replace existing default template types with\n\t// the create specific template functionality. The original\n\t// info (title, description, etc.) is preserved in the\n\t// used hooks.\n\tconst enhancedMissingDefaultTemplateTypes = [ ...missingDefaultTemplates ];\n\tconst { defaultTaxonomiesMenuItems, taxonomiesMenuItems } =\n\t\tuseTaxonomiesMenuItems( onClickMenuItem );\n\tconst { defaultPostTypesMenuItems, postTypesMenuItems } =\n\t\tusePostTypeMenuItems( onClickMenuItem );\n\n\tconst authorMenuItem = useAuthorMenuItem( onClickMenuItem );\n\t[\n\t\t...defaultTaxonomiesMenuItems,\n\t\t...defaultPostTypesMenuItems,\n\t\tauthorMenuItem,\n\t].forEach( ( menuItem ) => {\n\t\tif ( ! menuItem ) {\n\t\t\treturn;\n\t\t}\n\t\tconst matchIndex = enhancedMissingDefaultTemplateTypes.findIndex(\n\t\t\t( template ) => template.slug === menuItem.slug\n\t\t);\n\t\t// Some default template types might have been filtered above from\n\t\t// `missingDefaultTemplates` because they only check for the general\n\t\t// template. So here we either replace or append the item, augmented\n\t\t// with the check if it has available specific item to create a\n\t\t// template for.\n\t\tif ( matchIndex > -1 ) {\n\t\t\tenhancedMissingDefaultTemplateTypes[ matchIndex ] = menuItem;\n\t\t} else {\n\t\t\tenhancedMissingDefaultTemplateTypes.push( menuItem );\n\t\t}\n\t} );\n\t// Update the sort order to match the DEFAULT_TEMPLATE_SLUGS order.\n\tenhancedMissingDefaultTemplateTypes?.sort( ( template1, template2 ) => {\n\t\treturn (\n\t\t\tDEFAULT_TEMPLATE_SLUGS.indexOf( template1.slug ) -\n\t\t\tDEFAULT_TEMPLATE_SLUGS.indexOf( template2.slug )\n\t\t);\n\t} );\n\tconst missingTemplates = [\n\t\t...enhancedMissingDefaultTemplateTypes,\n\t\t...usePostTypeArchiveMenuItems(),\n\t\t...postTypesMenuItems,\n\t\t...taxonomiesMenuItems,\n\t];\n\treturn missingTemplates;\n}\n"]}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { createElement
|
|
1
|
+
import { createElement } from "@wordpress/element";
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* WordPress dependencies
|
|
5
5
|
*/
|
|
6
|
-
import { SlotFillProvider } from '@wordpress/components';
|
|
6
|
+
import { SlotFillProvider, Popover } from '@wordpress/components';
|
|
7
7
|
import { UnsavedChangesWarning } from '@wordpress/editor';
|
|
8
|
+
import { ShortcutProvider } from '@wordpress/keyboard-shortcuts';
|
|
8
9
|
import { store as noticesStore } from '@wordpress/notices';
|
|
9
10
|
import { useDispatch } from '@wordpress/data';
|
|
10
11
|
import { __, sprintf } from '@wordpress/i18n';
|
|
@@ -14,14 +15,10 @@ import { PluginArea } from '@wordpress/plugins';
|
|
|
14
15
|
*/
|
|
15
16
|
|
|
16
17
|
import { Routes } from '../routes';
|
|
17
|
-
import
|
|
18
|
-
|
|
19
|
-
import NavigationSidebar from '../navigation-sidebar';
|
|
20
|
-
import getIsListPage from '../../utils/get-is-list-page';
|
|
21
|
-
export default function EditSiteApp(_ref) {
|
|
18
|
+
import Layout from '../layout';
|
|
19
|
+
export default function App(_ref) {
|
|
22
20
|
let {
|
|
23
|
-
reboot
|
|
24
|
-
homeTemplate
|
|
21
|
+
reboot
|
|
25
22
|
} = _ref;
|
|
26
23
|
const {
|
|
27
24
|
createErrorNotice
|
|
@@ -33,24 +30,14 @@ export default function EditSiteApp(_ref) {
|
|
|
33
30
|
__('The "%s" plugin has encountered an error and cannot be rendered.'), name));
|
|
34
31
|
}
|
|
35
32
|
|
|
36
|
-
return createElement(
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
return createElement(Fragment, null, isListPage ? createElement(List, null) : createElement(Editor, {
|
|
46
|
-
onError: reboot
|
|
47
|
-
}), createElement(PluginArea, {
|
|
48
|
-
onError: onPluginAreaError
|
|
49
|
-
}), createElement(NavigationSidebar // Open the navigation sidebar by default when in the list page.
|
|
50
|
-
, {
|
|
51
|
-
isDefaultOpen: !!isListPage,
|
|
52
|
-
activeTemplateType: isListPage ? params.postType : homeTemplateType
|
|
53
|
-
}));
|
|
54
|
-
}));
|
|
33
|
+
return createElement(ShortcutProvider, {
|
|
34
|
+
style: {
|
|
35
|
+
height: '100%'
|
|
36
|
+
}
|
|
37
|
+
}, createElement(SlotFillProvider, null, createElement(Popover.Slot, null), createElement(UnsavedChangesWarning, null), createElement(Routes, null, createElement(Layout, {
|
|
38
|
+
onError: reboot
|
|
39
|
+
}), createElement(PluginArea, {
|
|
40
|
+
onError: onPluginAreaError
|
|
41
|
+
}))));
|
|
55
42
|
}
|
|
56
43
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-site/src/components/app/index.js"],"names":["SlotFillProvider","UnsavedChangesWarning","store","noticesStore","useDispatch","__","sprintf","PluginArea","Routes","
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/app/index.js"],"names":["SlotFillProvider","Popover","UnsavedChangesWarning","ShortcutProvider","store","noticesStore","useDispatch","__","sprintf","PluginArea","Routes","Layout","App","reboot","createErrorNotice","onPluginAreaError","name","height"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,gBAAT,EAA2BC,OAA3B,QAA0C,uBAA1C;AACA,SAASC,qBAAT,QAAsC,mBAAtC;AACA,SAASC,gBAAT,QAAiC,+BAAjC;AACA,SAASC,KAAK,IAAIC,YAAlB,QAAsC,oBAAtC;AACA,SAASC,WAAT,QAA4B,iBAA5B;AACA,SAASC,EAAT,EAAaC,OAAb,QAA4B,iBAA5B;AACA,SAASC,UAAT,QAA2B,oBAA3B;AAEA;AACA;AACA;;AACA,SAASC,MAAT,QAAuB,WAAvB;AACA,OAAOC,MAAP,MAAmB,WAAnB;AAEA,eAAe,SAASC,GAAT,OAA2B;AAAA,MAAb;AAAEC,IAAAA;AAAF,GAAa;AACzC,QAAM;AAAEC,IAAAA;AAAF,MAAwBR,WAAW,CAAED,YAAF,CAAzC;;AAEA,WAASU,iBAAT,CAA4BC,IAA5B,EAAmC;AAClCF,IAAAA,iBAAiB,CAChBN,OAAO;AACN;AACAD,IAAAA,EAAE,CACD,kEADC,CAFI,EAKNS,IALM,CADS,CAAjB;AASA;;AAED,SACC,cAAC,gBAAD;AAAkB,IAAA,KAAK,EAAG;AAAEC,MAAAA,MAAM,EAAE;AAAV;AAA1B,KACC,cAAC,gBAAD,QACC,cAAC,OAAD,CAAS,IAAT,OADD,EAEC,cAAC,qBAAD,OAFD,EAIC,cAAC,MAAD,QACC,cAAC,MAAD;AAAQ,IAAA,OAAO,EAAGJ;AAAlB,IADD,EAEC,cAAC,UAAD;AAAY,IAAA,OAAO,EAAGE;AAAtB,IAFD,CAJD,CADD,CADD;AAaA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { SlotFillProvider, Popover } from '@wordpress/components';\nimport { UnsavedChangesWarning } from '@wordpress/editor';\nimport { ShortcutProvider } from '@wordpress/keyboard-shortcuts';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { useDispatch } from '@wordpress/data';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { PluginArea } from '@wordpress/plugins';\n\n/**\n * Internal dependencies\n */\nimport { Routes } from '../routes';\nimport Layout from '../layout';\n\nexport default function App( { reboot } ) {\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\n\tfunction onPluginAreaError( name ) {\n\t\tcreateErrorNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: plugin name */\n\t\t\t\t__(\n\t\t\t\t\t'The \"%s\" plugin has encountered an error and cannot be rendered.'\n\t\t\t\t),\n\t\t\t\tname\n\t\t\t)\n\t\t);\n\t}\n\n\treturn (\n\t\t<ShortcutProvider style={ { height: '100%' } }>\n\t\t\t<SlotFillProvider>\n\t\t\t\t<Popover.Slot />\n\t\t\t\t<UnsavedChangesWarning />\n\n\t\t\t\t<Routes>\n\t\t\t\t\t<Layout onError={ reboot } />\n\t\t\t\t\t<PluginArea onError={ onPluginAreaError } />\n\t\t\t\t</Routes>\n\t\t\t</SlotFillProvider>\n\t\t</ShortcutProvider>\n\t);\n}\n"]}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
+
import { createElement, Fragment } from "@wordpress/element";
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* WordPress dependencies
|
|
6
|
+
*/
|
|
7
|
+
import { __experimentalUseResizeCanvas as useResizeCanvas, __unstableEditorStyles as EditorStyles, __unstableIframe as Iframe, __unstableUseMouseMoveTypingReset as useMouseMoveTypingReset, store as blockEditorStore } from '@wordpress/block-editor';
|
|
8
|
+
import { useSelect } from '@wordpress/data';
|
|
9
|
+
/**
|
|
10
|
+
* Internal dependencies
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
import { store as editSiteStore } from '../../store';
|
|
14
|
+
|
|
15
|
+
function EditorCanvas(_ref) {
|
|
16
|
+
let {
|
|
17
|
+
enableResizing,
|
|
18
|
+
settings,
|
|
19
|
+
children,
|
|
20
|
+
...props
|
|
21
|
+
} = _ref;
|
|
22
|
+
const {
|
|
23
|
+
deviceType,
|
|
24
|
+
isZoomOutMode
|
|
25
|
+
} = useSelect(select => ({
|
|
26
|
+
deviceType: select(editSiteStore).__experimentalGetPreviewDeviceType(),
|
|
27
|
+
isZoomOutMode: select(blockEditorStore).__unstableGetEditorMode() === 'zoom-out'
|
|
28
|
+
}), []);
|
|
29
|
+
const deviceStyles = useResizeCanvas(deviceType);
|
|
30
|
+
const mouseMoveTypingRef = useMouseMoveTypingReset();
|
|
31
|
+
return createElement(Iframe, _extends({
|
|
32
|
+
scale: isZoomOutMode && 0.45 || undefined,
|
|
33
|
+
frameSize: isZoomOutMode ? 100 : undefined,
|
|
34
|
+
style: enableResizing ? {} : deviceStyles,
|
|
35
|
+
head: createElement(Fragment, null, createElement(EditorStyles, {
|
|
36
|
+
styles: settings.styles
|
|
37
|
+
}), createElement("style", null, // Forming a "block formatting context" to prevent margin collapsing.
|
|
38
|
+
// @see https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Block_formatting_context
|
|
39
|
+
`.is-root-container { display: flow-root; }
|
|
40
|
+
body { position: relative; }`), enableResizing && createElement("style", null, // Some themes will have `min-height: 100vh` for the root container,
|
|
41
|
+
// which isn't a requirement in auto resize mode.
|
|
42
|
+
`.is-root-container { min-height: 0 !important; }`)),
|
|
43
|
+
assets: settings.__unstableResolvedAssets,
|
|
44
|
+
ref: mouseMoveTypingRef,
|
|
45
|
+
name: "editor-canvas",
|
|
46
|
+
className: "edit-site-visual-editor__editor-canvas"
|
|
47
|
+
}, props), settings.svgFilters, children);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
export default EditorCanvas;
|
|
51
|
+
//# sourceMappingURL=editor-canvas.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/block-editor/editor-canvas.js"],"names":["__experimentalUseResizeCanvas","useResizeCanvas","__unstableEditorStyles","EditorStyles","__unstableIframe","Iframe","__unstableUseMouseMoveTypingReset","useMouseMoveTypingReset","store","blockEditorStore","useSelect","editSiteStore","EditorCanvas","enableResizing","settings","children","props","deviceType","isZoomOutMode","select","__experimentalGetPreviewDeviceType","__unstableGetEditorMode","deviceStyles","mouseMoveTypingRef","undefined","styles","__unstableResolvedAssets","svgFilters"],"mappings":";;;AAAA;AACA;AACA;AACA,SACCA,6BAA6B,IAAIC,eADlC,EAECC,sBAAsB,IAAIC,YAF3B,EAGCC,gBAAgB,IAAIC,MAHrB,EAICC,iCAAiC,IAAIC,uBAJtC,EAKCC,KAAK,IAAIC,gBALV,QAMO,yBANP;AAOA,SAASC,SAAT,QAA0B,iBAA1B;AAEA;AACA;AACA;;AACA,SAASF,KAAK,IAAIG,aAAlB,QAAuC,aAAvC;;AAEA,SAASC,YAAT,OAA0E;AAAA,MAAnD;AAAEC,IAAAA,cAAF;AAAkBC,IAAAA,QAAlB;AAA4BC,IAAAA,QAA5B;AAAsC,OAAGC;AAAzC,GAAmD;AACzE,QAAM;AAAEC,IAAAA,UAAF;AAAcC,IAAAA;AAAd,MAAgCR,SAAS,CAC5CS,MAAF,KAAgB;AACfF,IAAAA,UAAU,EACTE,MAAM,CAAER,aAAF,CAAN,CAAwBS,kCAAxB,EAFc;AAGfF,IAAAA,aAAa,EACZC,MAAM,CAAEV,gBAAF,CAAN,CAA2BY,uBAA3B,OACA;AALc,GAAhB,CAD8C,EAQ9C,EAR8C,CAA/C;AAUA,QAAMC,YAAY,GAAGrB,eAAe,CAAEgB,UAAF,CAApC;AACA,QAAMM,kBAAkB,GAAGhB,uBAAuB,EAAlD;AACA,SACC,cAAC,MAAD;AACC,IAAA,KAAK,EAAKW,aAAa,IAAI,IAAnB,IAA6BM,SADtC;AAEC,IAAA,SAAS,EAAGN,aAAa,GAAG,GAAH,GAASM,SAFnC;AAGC,IAAA,KAAK,EAAGX,cAAc,GAAG,EAAH,GAAQS,YAH/B;AAIC,IAAA,IAAI,EACH,8BACC,cAAC,YAAD;AAAc,MAAA,MAAM,EAAGR,QAAQ,CAACW;AAAhC,MADD,EAEC,6BACC;AACA;AACC;AACP,oCAJK,CAFD,EAQGZ,cAAc,IACf,6BAEE;AACA;AACC,sDAJH,CATF,CALF;AAwBC,IAAA,MAAM,EAAGC,QAAQ,CAACY,wBAxBnB;AAyBC,IAAA,GAAG,EAAGH,kBAzBP;AA0BC,IAAA,IAAI,EAAC,eA1BN;AA2BC,IAAA,SAAS,EAAC;AA3BX,KA4BMP,KA5BN,GA+BGF,QAAQ,CAACa,UA/BZ,EAgCGZ,QAhCH,CADD;AAoCA;;AAED,eAAeH,YAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalUseResizeCanvas as useResizeCanvas,\n\t__unstableEditorStyles as EditorStyles,\n\t__unstableIframe as Iframe,\n\t__unstableUseMouseMoveTypingReset as useMouseMoveTypingReset,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\n\nfunction EditorCanvas( { enableResizing, settings, children, ...props } ) {\n\tconst { deviceType, isZoomOutMode } = useSelect(\n\t\t( select ) => ( {\n\t\t\tdeviceType:\n\t\t\t\tselect( editSiteStore ).__experimentalGetPreviewDeviceType(),\n\t\t\tisZoomOutMode:\n\t\t\t\tselect( blockEditorStore ).__unstableGetEditorMode() ===\n\t\t\t\t'zoom-out',\n\t\t} ),\n\t\t[]\n\t);\n\tconst deviceStyles = useResizeCanvas( deviceType );\n\tconst mouseMoveTypingRef = useMouseMoveTypingReset();\n\treturn (\n\t\t<Iframe\n\t\t\tscale={ ( isZoomOutMode && 0.45 ) || undefined }\n\t\t\tframeSize={ isZoomOutMode ? 100 : undefined }\n\t\t\tstyle={ enableResizing ? {} : deviceStyles }\n\t\t\thead={\n\t\t\t\t<>\n\t\t\t\t\t<EditorStyles styles={ settings.styles } />\n\t\t\t\t\t<style>{\n\t\t\t\t\t\t// Forming a \"block formatting context\" to prevent margin collapsing.\n\t\t\t\t\t\t// @see https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Block_formatting_context\n\t\t\t\t\t\t`.is-root-container { display: flow-root; }\n\t\t\t\t\t\t\tbody { position: relative; }`\n\t\t\t\t\t}</style>\n\t\t\t\t\t{ enableResizing && (\n\t\t\t\t\t\t<style>\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t// Some themes will have `min-height: 100vh` for the root container,\n\t\t\t\t\t\t\t\t// which isn't a requirement in auto resize mode.\n\t\t\t\t\t\t\t\t`.is-root-container { min-height: 0 !important; }`\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t</style>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t}\n\t\t\tassets={ settings.__unstableResolvedAssets }\n\t\t\tref={ mouseMoveTypingRef }\n\t\t\tname=\"editor-canvas\"\n\t\t\tclassName=\"edit-site-visual-editor__editor-canvas\"\n\t\t\t{ ...props }\n\t\t>\n\t\t\t{ /* Filters need to be rendered before children to avoid Safari rendering issues. */ }\n\t\t\t{ settings.svgFilters }\n\t\t\t{ children }\n\t\t</Iframe>\n\t);\n}\n\nexport default EditorCanvas;\n"]}
|
|
@@ -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,35 @@ 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';
|
|
109
|
+
const showBlockAppender = isTemplatePart && hasBlocks || isViewMode ? false : undefined; // eslint-disable-next-line @wordpress/data-no-store-string-literals
|
|
110
|
+
|
|
111
|
+
const {
|
|
112
|
+
enableComplementaryArea
|
|
113
|
+
} = useDispatch('core/interface');
|
|
117
114
|
|
|
118
115
|
const NavMenuSidebarToggle = () => createElement(ToolbarGroup, null, createElement(ToolbarButton, {
|
|
119
116
|
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
|
-
|
|
117
|
+
label: __('Open navigation list view'),
|
|
118
|
+
onClick: () => enableComplementaryArea('core/edit-site', 'edit-site/block-inspector'),
|
|
119
|
+
icon: listView
|
|
120
|
+
}));
|
|
128
121
|
|
|
129
122
|
let MaybeNavMenuSidebarToggle = Fragment;
|
|
123
|
+
const isOffCanvasNavigationEditorEnabled = ((_window = window) === null || _window === void 0 ? void 0 : _window.__experimentalEnableOffCanvasNavigationEditor) === true;
|
|
130
124
|
|
|
131
|
-
if (
|
|
125
|
+
if (isOffCanvasNavigationEditorEnabled) {
|
|
132
126
|
MaybeNavMenuSidebarToggle = NavMenuSidebarToggle;
|
|
133
127
|
}
|
|
134
128
|
|
|
@@ -139,37 +133,45 @@ export default function BlockEditor(_ref) {
|
|
|
139
133
|
onChange: onChange,
|
|
140
134
|
useSubRegistry: false
|
|
141
135
|
}, createElement(TemplatePartConverter, null), createElement(__experimentalLinkControl.ViewerFill, null, useCallback(fillProps => createElement(NavigateToLink, _extends({}, fillProps, {
|
|
142
|
-
activePage: page,
|
|
143
136
|
onActivePageChange: setPage
|
|
144
|
-
})), [
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
137
|
+
})), [])), createElement(SidebarInspectorFill, null, createElement(BlockInspector, null)), createElement(StyleBook.Slot, null, _ref3 => {
|
|
138
|
+
let [styleBook] = _ref3;
|
|
139
|
+
return styleBook ? createElement("div", {
|
|
140
|
+
className: "edit-site-visual-editor is-focus-mode"
|
|
141
|
+
}, createElement(ResizableEditor, {
|
|
142
|
+
enableResizing: true
|
|
143
|
+
}, styleBook)) : createElement(BlockTools, {
|
|
144
|
+
className: classnames('edit-site-visual-editor', {
|
|
145
|
+
'is-focus-mode': isTemplatePart || !!styleBook,
|
|
146
|
+
'is-view-mode': isViewMode
|
|
147
|
+
}),
|
|
148
|
+
__unstableContentRef: contentRef,
|
|
149
|
+
onClick: event => {
|
|
150
|
+
// Clear selected block when clicking on the gray background.
|
|
151
|
+
if (event.target === event.currentTarget) {
|
|
152
|
+
clearSelectedBlock();
|
|
153
|
+
}
|
|
153
154
|
}
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
155
|
+
}, createElement(BlockEditorKeyboardShortcuts.Register, null), createElement(BackButton, null), createElement(ResizableEditor, {
|
|
156
|
+
enableResizing: enableResizing,
|
|
157
|
+
height: sizes.height
|
|
158
|
+
}, createElement(EditorCanvas, {
|
|
159
|
+
enableResizing: enableResizing,
|
|
160
|
+
settings: settings,
|
|
161
|
+
contentRef: mergedRefs,
|
|
162
|
+
readonly: canvasMode === 'view'
|
|
163
|
+
}, resizeObserver, createElement(BlockList, {
|
|
164
|
+
className: "edit-site-block-editor__block-list wp-site-blocks",
|
|
165
|
+
__experimentalLayout: LAYOUT,
|
|
166
|
+
renderAppender: showBlockAppender
|
|
167
|
+
}))), createElement(__unstableBlockSettingsMenuFirstItem, null, _ref4 => {
|
|
168
|
+
let {
|
|
169
|
+
onClose
|
|
170
|
+
} = _ref4;
|
|
171
|
+
return createElement(BlockInspectorButton, {
|
|
172
|
+
onClick: onClose
|
|
173
|
+
});
|
|
174
|
+
}), createElement(__unstableBlockToolbarLastItem, null, createElement(__unstableBlockNameContext.Consumer, null, blockName => blockName === 'core/navigation' && createElement(MaybeNavMenuSidebarToggle, null))));
|
|
175
|
+
}), createElement(ReusableBlocksMenuItems, null));
|
|
174
176
|
}
|
|
175
177
|
//# 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","showBlockAppender","undefined","enableComplementaryArea","NavMenuSidebarToggle","MaybeNavMenuSidebarToggle","isOffCanvasNavigationEditorEnabled","window","__experimentalEnableOffCanvasNavigationEditor","fillProps","styleBook","event","target","currentTarget","height","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 {\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\tconst showBlockAppender =\n\t\t( isTemplatePart && hasBlocks ) || isViewMode ? false : undefined;\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={ showBlockAppender }\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;
|