@wordpress/edit-post 7.34.0 → 8.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +15 -2
- package/build/commands/use-commands.js +56 -0
- package/build/commands/use-commands.js.map +1 -0
- package/build/components/{header/fullscreen-mode-close/index.js → back-button/fullscreen-mode-close.js} +18 -16
- package/build/components/back-button/fullscreen-mode-close.js.map +1 -0
- package/build/components/back-button/index.js +57 -0
- package/build/components/back-button/index.js.map +1 -0
- package/build/components/header/header-toolbar/index.native.js +63 -62
- package/build/components/header/header-toolbar/index.native.js.map +1 -1
- package/build/components/header/index.native.js +2 -2
- package/build/components/header/index.native.js.map +1 -1
- package/build/components/init-pattern-modal/index.js +50 -43
- package/build/components/init-pattern-modal/index.js.map +1 -1
- package/build/components/layout/index.js +134 -156
- package/build/components/layout/index.js.map +1 -1
- package/build/components/layout/index.native.js +28 -21
- package/build/components/layout/index.native.js.map +1 -1
- package/build/components/{visual-editor → layout}/use-padding-appender.js +6 -1
- package/build/components/layout/use-padding-appender.js.map +1 -0
- package/build/components/layout/use-should-iframe.js +46 -0
- package/build/components/layout/use-should-iframe.js.map +1 -0
- package/build/components/meta-boxes/index.js +10 -9
- package/build/components/meta-boxes/index.js.map +1 -1
- package/build/components/meta-boxes/meta-boxes-area/index.js +13 -13
- package/build/components/meta-boxes/meta-boxes-area/index.js.map +1 -1
- package/build/components/more-menu/index.js +49 -0
- package/build/components/more-menu/index.js.map +1 -0
- package/build/components/{header/more-menu → more-menu}/manage-patterns-menu-item.js +6 -5
- package/build/components/more-menu/manage-patterns-menu-item.js.map +1 -0
- package/build/components/{header/more-menu → more-menu}/welcome-guide-menu-item.js +2 -2
- package/build/components/more-menu/welcome-guide-menu-item.js.map +1 -0
- package/build/components/preferences-modal/enable-custom-fields.js +23 -18
- package/build/components/preferences-modal/enable-custom-fields.js.map +1 -1
- package/build/components/preferences-modal/index.js +4 -4
- package/build/components/preferences-modal/index.js.map +1 -1
- package/build/components/preferences-modal/meta-boxes-section.js +13 -13
- package/build/components/preferences-modal/meta-boxes-section.js.map +1 -1
- package/build/components/visual-editor/header.native.js +11 -10
- package/build/components/visual-editor/header.native.js.map +1 -1
- package/build/components/visual-editor/index.native.js +3 -3
- package/build/components/visual-editor/index.native.js.map +1 -1
- package/build/components/welcome-guide/default.js +50 -33
- package/build/components/welcome-guide/default.js.map +1 -1
- package/build/components/welcome-guide/image.js +13 -12
- package/build/components/welcome-guide/image.js.map +1 -1
- package/build/components/welcome-guide/index.js +2 -2
- package/build/components/welcome-guide/index.js.map +1 -1
- package/build/components/welcome-guide/template.js +12 -8
- package/build/components/welcome-guide/template.js.map +1 -1
- package/build/deprecated.js +9 -9
- package/build/deprecated.js.map +1 -1
- package/build/editor.js +16 -11
- package/build/editor.js.map +1 -1
- package/build/editor.native.js +18 -12
- package/build/editor.native.js.map +1 -1
- package/build/index.js +12 -13
- package/build/index.js.map +1 -1
- package/build/index.native.js +2 -2
- package/build/index.native.js.map +1 -1
- package/build/store/selectors.js +1 -1
- package/build/store/selectors.js.map +1 -1
- package/build-module/commands/use-commands.js +49 -0
- package/build-module/commands/use-commands.js.map +1 -0
- package/build-module/components/{header/fullscreen-mode-close/index.js → back-button/fullscreen-mode-close.js} +18 -16
- package/build-module/components/back-button/fullscreen-mode-close.js.map +1 -0
- package/build-module/components/back-button/index.js +49 -0
- package/build-module/components/back-button/index.js.map +1 -0
- package/build-module/components/header/header-toolbar/index.native.js +64 -62
- package/build-module/components/header/header-toolbar/index.native.js.map +1 -1
- package/build-module/components/header/index.native.js +2 -2
- package/build-module/components/header/index.native.js.map +1 -1
- package/build-module/components/init-pattern-modal/index.js +52 -43
- package/build-module/components/init-pattern-modal/index.js.map +1 -1
- package/build-module/components/layout/index.js +139 -159
- package/build-module/components/layout/index.js.map +1 -1
- package/build-module/components/layout/index.native.js +30 -21
- package/build-module/components/layout/index.native.js.map +1 -1
- package/build-module/components/{visual-editor → layout}/use-padding-appender.js +6 -1
- package/build-module/components/layout/use-padding-appender.js.map +1 -0
- package/build-module/components/layout/use-should-iframe.js +39 -0
- package/build-module/components/layout/use-should-iframe.js.map +1 -0
- package/build-module/components/meta-boxes/index.js +12 -9
- package/build-module/components/meta-boxes/index.js.map +1 -1
- package/build-module/components/meta-boxes/meta-boxes-area/index.js +13 -11
- package/build-module/components/meta-boxes/meta-boxes-area/index.js.map +1 -1
- package/build-module/components/more-menu/index.js +43 -0
- package/build-module/components/more-menu/index.js.map +1 -0
- package/build-module/components/{header/more-menu → more-menu}/manage-patterns-menu-item.js +6 -5
- package/build-module/components/more-menu/manage-patterns-menu-item.js.map +1 -0
- package/build-module/components/{header/more-menu → more-menu}/welcome-guide-menu-item.js +2 -2
- package/build-module/components/more-menu/welcome-guide-menu-item.js.map +1 -0
- package/build-module/components/preferences-modal/enable-custom-fields.js +25 -18
- package/build-module/components/preferences-modal/enable-custom-fields.js.map +1 -1
- package/build-module/components/preferences-modal/index.js +4 -4
- package/build-module/components/preferences-modal/index.js.map +1 -1
- package/build-module/components/preferences-modal/meta-boxes-section.js +14 -13
- package/build-module/components/preferences-modal/meta-boxes-section.js.map +1 -1
- package/build-module/components/visual-editor/header.native.js +11 -10
- package/build-module/components/visual-editor/header.native.js.map +1 -1
- package/build-module/components/visual-editor/index.native.js +3 -3
- package/build-module/components/visual-editor/index.native.js.map +1 -1
- package/build-module/components/welcome-guide/default.js +52 -33
- package/build-module/components/welcome-guide/default.js.map +1 -1
- package/build-module/components/welcome-guide/image.js +14 -12
- package/build-module/components/welcome-guide/image.js.map +1 -1
- package/build-module/components/welcome-guide/index.js +2 -2
- package/build-module/components/welcome-guide/index.js.map +1 -1
- package/build-module/components/welcome-guide/template.js +14 -8
- package/build-module/components/welcome-guide/template.js.map +1 -1
- package/build-module/deprecated.js +9 -9
- package/build-module/deprecated.js.map +1 -1
- package/build-module/editor.js +17 -11
- package/build-module/editor.js.map +1 -1
- package/build-module/editor.native.js +18 -12
- package/build-module/editor.native.js.map +1 -1
- package/build-module/index.js +10 -7
- package/build-module/index.js.map +1 -1
- package/build-module/index.native.js +2 -2
- package/build-module/index.native.js.map +1 -1
- package/build-module/store/selectors.js +1 -1
- package/build-module/store/selectors.js.map +1 -1
- package/build-style/style-rtl.css +31 -392
- package/build-style/style.css +31 -392
- package/package.json +33 -33
- package/src/commands/use-commands.js +48 -0
- package/src/components/{header/fullscreen-mode-close/index.js → back-button/fullscreen-mode-close.js} +3 -3
- package/src/components/back-button/index.js +34 -0
- package/src/components/{header/fullscreen-mode-close → back-button}/style.scss +16 -2
- package/src/components/{header/fullscreen-mode-close/test/index.js → back-button/test/fullscreen-mode-close.js} +1 -1
- package/src/components/layout/index.js +151 -207
- package/src/components/layout/style.scss +9 -17
- package/src/components/{visual-editor → layout}/use-padding-appender.js +7 -1
- package/src/components/layout/use-should-iframe.js +40 -0
- package/src/components/meta-boxes/meta-boxes-area/index.js +4 -8
- package/src/components/{header/more-menu → more-menu}/index.js +2 -2
- package/src/components/{header/more-menu → more-menu}/manage-patterns-menu-item.js +1 -1
- package/src/index.js +11 -6
- package/src/store/selectors.js +8 -5
- package/src/style.scss +3 -10
- package/src/test/__snapshots__/editor.native.js.snap +72 -0
- package/src/test/editor.native.js +77 -0
- package/build/components/header/fullscreen-mode-close/index.js.map +0 -1
- package/build/components/header/index.js +0 -158
- package/build/components/header/index.js.map +0 -1
- package/build/components/header/main-dashboard-button/index.js +0 -33
- package/build/components/header/main-dashboard-button/index.js.map +0 -1
- package/build/components/header/more-menu/index.js +0 -43
- package/build/components/header/more-menu/index.js.map +0 -1
- package/build/components/header/more-menu/manage-patterns-menu-item.js.map +0 -1
- package/build/components/header/more-menu/welcome-guide-menu-item.js.map +0 -1
- package/build/components/sidebar/post-format/index.js +0 -21
- package/build/components/sidebar/post-format/index.js.map +0 -1
- package/build/components/sidebar/post-pending-status/index.js +0 -26
- package/build/components/sidebar/post-pending-status/index.js.map +0 -1
- package/build/components/sidebar/post-slug/index.js +0 -21
- package/build/components/sidebar/post-slug/index.js.map +0 -1
- package/build/components/sidebar/post-status/index.js +0 -92
- package/build/components/sidebar/post-status/index.js.map +0 -1
- package/build/components/sidebar/post-sticky/index.js +0 -26
- package/build/components/sidebar/post-sticky/index.js.map +0 -1
- package/build/components/sidebar/post-trash/index.js +0 -16
- package/build/components/sidebar/post-trash/index.js.map +0 -1
- package/build/components/sidebar/post-visibility/index.js +0 -78
- package/build/components/sidebar/post-visibility/index.js.map +0 -1
- package/build/components/sidebar/settings-header/index.js +0 -53
- package/build/components/sidebar/settings-header/index.js.map +0 -1
- package/build/components/sidebar/settings-sidebar/index.js +0 -193
- package/build/components/sidebar/settings-sidebar/index.js.map +0 -1
- package/build/components/text-editor/index.js +0 -61
- package/build/components/text-editor/index.js.map +0 -1
- package/build/components/visual-editor/block-inspector-button.js +0 -55
- package/build/components/visual-editor/block-inspector-button.js.map +0 -1
- package/build/components/visual-editor/index.js +0 -92
- package/build/components/visual-editor/index.js.map +0 -1
- package/build/components/visual-editor/use-padding-appender.js.map +0 -1
- package/build/hooks/commands/use-common-commands.js +0 -119
- package/build/hooks/commands/use-common-commands.js.map +0 -1
- package/build/hooks/components/index.js +0 -11
- package/build/hooks/components/index.js.map +0 -1
- package/build/hooks/index.js +0 -5
- package/build/hooks/index.js.map +0 -1
- package/build/hooks/validate-multiple-use/index.js +0 -134
- package/build/hooks/validate-multiple-use/index.js.map +0 -1
- package/build-module/components/header/fullscreen-mode-close/index.js.map +0 -1
- package/build-module/components/header/index.js +0 -150
- package/build-module/components/header/index.js.map +0 -1
- package/build-module/components/header/main-dashboard-button/index.js +0 -26
- package/build-module/components/header/main-dashboard-button/index.js.map +0 -1
- package/build-module/components/header/more-menu/index.js +0 -35
- package/build-module/components/header/more-menu/index.js.map +0 -1
- package/build-module/components/header/more-menu/manage-patterns-menu-item.js.map +0 -1
- package/build-module/components/header/more-menu/welcome-guide-menu-item.js.map +0 -1
- package/build-module/components/sidebar/post-format/index.js +0 -13
- package/build-module/components/sidebar/post-format/index.js.map +0 -1
- package/build-module/components/sidebar/post-pending-status/index.js +0 -18
- package/build-module/components/sidebar/post-pending-status/index.js.map +0 -1
- package/build-module/components/sidebar/post-slug/index.js +0 -13
- package/build-module/components/sidebar/post-slug/index.js.map +0 -1
- package/build-module/components/sidebar/post-status/index.js +0 -84
- package/build-module/components/sidebar/post-status/index.js.map +0 -1
- package/build-module/components/sidebar/post-sticky/index.js +0 -18
- package/build-module/components/sidebar/post-sticky/index.js.map +0 -1
- package/build-module/components/sidebar/post-trash/index.js +0 -9
- package/build-module/components/sidebar/post-trash/index.js.map +0 -1
- package/build-module/components/sidebar/post-visibility/index.js +0 -70
- package/build-module/components/sidebar/post-visibility/index.js.map +0 -1
- package/build-module/components/sidebar/settings-header/index.js +0 -46
- package/build-module/components/sidebar/settings-header/index.js.map +0 -1
- package/build-module/components/sidebar/settings-sidebar/index.js +0 -185
- package/build-module/components/sidebar/settings-sidebar/index.js.map +0 -1
- package/build-module/components/text-editor/index.js +0 -54
- package/build-module/components/text-editor/index.js.map +0 -1
- package/build-module/components/visual-editor/block-inspector-button.js +0 -47
- package/build-module/components/visual-editor/block-inspector-button.js.map +0 -1
- package/build-module/components/visual-editor/index.js +0 -84
- package/build-module/components/visual-editor/index.js.map +0 -1
- package/build-module/components/visual-editor/use-padding-appender.js.map +0 -1
- package/build-module/hooks/commands/use-common-commands.js +0 -112
- package/build-module/hooks/commands/use-common-commands.js.map +0 -1
- package/build-module/hooks/components/index.js +0 -8
- package/build-module/hooks/components/index.js.map +0 -1
- package/build-module/hooks/index.js +0 -6
- package/build-module/hooks/index.js.map +0 -1
- package/build-module/hooks/validate-multiple-use/index.js +0 -132
- package/build-module/hooks/validate-multiple-use/index.js.map +0 -1
- package/src/components/header/index.js +0 -156
- package/src/components/header/main-dashboard-button/index.js +0 -28
- package/src/components/header/style.scss +0 -251
- package/src/components/sidebar/post-format/index.js +0 -20
- package/src/components/sidebar/post-format/style.scss +0 -5
- package/src/components/sidebar/post-pending-status/index.js +0 -27
- package/src/components/sidebar/post-slug/index.js +0 -17
- package/src/components/sidebar/post-slug/style.scss +0 -5
- package/src/components/sidebar/post-status/index.js +0 -128
- package/src/components/sidebar/post-sticky/index.js +0 -27
- package/src/components/sidebar/post-trash/index.js +0 -12
- package/src/components/sidebar/post-visibility/index.js +0 -88
- package/src/components/sidebar/post-visibility/style.scss +0 -5
- package/src/components/sidebar/settings-header/index.js +0 -49
- package/src/components/sidebar/settings-sidebar/index.js +0 -247
- package/src/components/sidebar/style.scss +0 -18
- package/src/components/text-editor/index.js +0 -63
- package/src/components/text-editor/style.scss +0 -71
- package/src/components/visual-editor/block-inspector-button.js +0 -59
- package/src/components/visual-editor/index.js +0 -101
- package/src/components/visual-editor/style.scss +0 -53
- package/src/hooks/commands/use-common-commands.js +0 -126
- package/src/hooks/components/index.js +0 -13
- package/src/hooks/index.js +0 -5
- package/src/hooks/validate-multiple-use/index.js +0 -163
- /package/src/components/{header/fullscreen-mode-close/test/__snapshots__/index.js.snap → back-button/test/__snapshots__/fullscreen-mode-close.js.snap} +0 -0
- /package/src/components/{header/more-menu → more-menu}/welcome-guide-menu-item.js +0 -0
|
@@ -11,7 +11,7 @@ import { useSelect } from '@wordpress/data';
|
|
|
11
11
|
/**
|
|
12
12
|
* Internal dependencies
|
|
13
13
|
*/
|
|
14
|
-
import FullscreenModeClose from '../';
|
|
14
|
+
import FullscreenModeClose from '../fullscreen-mode-close';
|
|
15
15
|
|
|
16
16
|
jest.mock( '@wordpress/data/src/components/use-select', () => {
|
|
17
17
|
// This allows us to tweak the returned value on each test.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* External dependencies
|
|
3
3
|
*/
|
|
4
|
-
import
|
|
4
|
+
import clsx from 'clsx';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* WordPress dependencies
|
|
@@ -10,84 +10,78 @@ import {
|
|
|
10
10
|
AutosaveMonitor,
|
|
11
11
|
LocalAutosaveMonitor,
|
|
12
12
|
UnsavedChangesWarning,
|
|
13
|
-
EditorNotices,
|
|
14
13
|
EditorKeyboardShortcutsRegister,
|
|
15
|
-
EditorKeyboardShortcuts,
|
|
16
14
|
EditorSnackbars,
|
|
17
15
|
store as editorStore,
|
|
18
16
|
privateApis as editorPrivateApis,
|
|
19
17
|
} from '@wordpress/editor';
|
|
20
18
|
import { useSelect, useDispatch } from '@wordpress/data';
|
|
21
19
|
import {
|
|
22
|
-
BlockBreadcrumb,
|
|
23
|
-
BlockToolbar,
|
|
24
20
|
privateApis as blockEditorPrivateApis,
|
|
25
21
|
store as blockEditorStore,
|
|
26
22
|
} from '@wordpress/block-editor';
|
|
27
|
-
import { ScrollLock } from '@wordpress/components';
|
|
28
23
|
import { useViewportMatch } from '@wordpress/compose';
|
|
29
24
|
import { PluginArea } from '@wordpress/plugins';
|
|
30
|
-
import { __,
|
|
31
|
-
import {
|
|
32
|
-
import { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';
|
|
25
|
+
import { __, sprintf } from '@wordpress/i18n';
|
|
26
|
+
import { useCallback, useMemo } from '@wordpress/element';
|
|
33
27
|
import { store as noticesStore } from '@wordpress/notices';
|
|
34
28
|
import { store as preferencesStore } from '@wordpress/preferences';
|
|
35
29
|
import { privateApis as commandsPrivateApis } from '@wordpress/commands';
|
|
36
30
|
import { privateApis as coreCommandsPrivateApis } from '@wordpress/core-commands';
|
|
37
31
|
import { privateApis as blockLibraryPrivateApis } from '@wordpress/block-library';
|
|
32
|
+
import { addQueryArgs } from '@wordpress/url';
|
|
38
33
|
|
|
39
34
|
/**
|
|
40
35
|
* Internal dependencies
|
|
41
36
|
*/
|
|
42
|
-
import
|
|
43
|
-
import VisualEditor from '../visual-editor';
|
|
37
|
+
import BackButton from '../back-button';
|
|
44
38
|
import EditPostKeyboardShortcuts from '../keyboard-shortcuts';
|
|
45
39
|
import InitPatternModal from '../init-pattern-modal';
|
|
46
40
|
import BrowserURL from '../browser-url';
|
|
47
|
-
import Header from '../header';
|
|
48
|
-
import SettingsSidebar from '../sidebar/settings-sidebar';
|
|
49
41
|
import MetaBoxes from '../meta-boxes';
|
|
42
|
+
import PostEditorMoreMenu from '../more-menu';
|
|
50
43
|
import WelcomeGuide from '../welcome-guide';
|
|
51
44
|
import { store as editPostStore } from '../../store';
|
|
52
45
|
import { unlock } from '../../lock-unlock';
|
|
53
|
-
import
|
|
46
|
+
import useEditPostCommands from '../../commands/use-commands';
|
|
47
|
+
import { usePaddingAppender } from './use-padding-appender';
|
|
48
|
+
import { useShouldIframe } from './use-should-iframe';
|
|
54
49
|
|
|
55
50
|
const { getLayoutStyles } = unlock( blockEditorPrivateApis );
|
|
56
51
|
const { useCommands } = unlock( coreCommandsPrivateApis );
|
|
57
52
|
const { useCommandContext } = unlock( commandsPrivateApis );
|
|
58
|
-
const {
|
|
59
|
-
|
|
60
|
-
ListViewSidebar,
|
|
61
|
-
ComplementaryArea,
|
|
62
|
-
FullscreenMode,
|
|
63
|
-
SavePublishPanels,
|
|
64
|
-
InterfaceSkeleton,
|
|
65
|
-
interfaceStore,
|
|
66
|
-
} = unlock( editorPrivateApis );
|
|
53
|
+
const { EditorInterface, FullscreenMode, Sidebar } =
|
|
54
|
+
unlock( editorPrivateApis );
|
|
67
55
|
const { BlockKeyboardShortcuts } = unlock( blockLibraryPrivateApis );
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
/* translators: accessibility text for the editor settings landmark region. */
|
|
75
|
-
sidebar: __( 'Editor settings' ),
|
|
76
|
-
/* translators: accessibility text for the editor publish landmark region. */
|
|
77
|
-
actions: __( 'Editor publish' ),
|
|
78
|
-
/* translators: accessibility text for the editor footer landmark region. */
|
|
79
|
-
footer: __( 'Editor footer' ),
|
|
80
|
-
};
|
|
56
|
+
const DESIGN_POST_TYPES = [
|
|
57
|
+
'wp_template',
|
|
58
|
+
'wp_template_part',
|
|
59
|
+
'wp_block',
|
|
60
|
+
'wp_navigation',
|
|
61
|
+
];
|
|
81
62
|
|
|
82
63
|
function useEditorStyles() {
|
|
83
|
-
const {
|
|
84
|
-
|
|
64
|
+
const {
|
|
65
|
+
hasThemeStyleSupport,
|
|
66
|
+
editorSettings,
|
|
67
|
+
isZoomedOutView,
|
|
68
|
+
hasMetaBoxes,
|
|
69
|
+
renderingMode,
|
|
70
|
+
postType,
|
|
71
|
+
} = useSelect( ( select ) => {
|
|
72
|
+
const { __unstableGetEditorMode } = select( blockEditorStore );
|
|
73
|
+
const { getCurrentPostType, getRenderingMode } = select( editorStore );
|
|
74
|
+
const _postType = getCurrentPostType();
|
|
75
|
+
return {
|
|
85
76
|
hasThemeStyleSupport:
|
|
86
77
|
select( editPostStore ).isFeatureActive( 'themeStyles' ),
|
|
87
78
|
editorSettings: select( editorStore ).getEditorSettings(),
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
79
|
+
isZoomedOutView: __unstableGetEditorMode() === 'zoom-out',
|
|
80
|
+
hasMetaBoxes: select( editPostStore ).hasMetaBoxes(),
|
|
81
|
+
renderingMode: getRenderingMode(),
|
|
82
|
+
postType: _postType,
|
|
83
|
+
};
|
|
84
|
+
}, [] );
|
|
91
85
|
|
|
92
86
|
// Compute the default styles.
|
|
93
87
|
return useMemo( () => {
|
|
@@ -121,7 +115,24 @@ function useEditorStyles() {
|
|
|
121
115
|
} );
|
|
122
116
|
}
|
|
123
117
|
|
|
124
|
-
|
|
118
|
+
const baseStyles = hasThemeStyles
|
|
119
|
+
? editorSettings.styles ?? []
|
|
120
|
+
: defaultEditorStyles;
|
|
121
|
+
|
|
122
|
+
// Add a constant padding for the typewritter effect. When typing at the
|
|
123
|
+
// bottom, there needs to be room to scroll up.
|
|
124
|
+
if (
|
|
125
|
+
! isZoomedOutView &&
|
|
126
|
+
! hasMetaBoxes &&
|
|
127
|
+
renderingMode === 'post-only' &&
|
|
128
|
+
! DESIGN_POST_TYPES.includes( postType )
|
|
129
|
+
) {
|
|
130
|
+
baseStyles.push( {
|
|
131
|
+
css: 'body{padding-bottom: 40vh}',
|
|
132
|
+
} );
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
return baseStyles;
|
|
125
136
|
}, [
|
|
126
137
|
editorSettings.defaultEditorStyles,
|
|
127
138
|
editorSettings.disableLayoutStyles,
|
|
@@ -132,107 +143,56 @@ function useEditorStyles() {
|
|
|
132
143
|
|
|
133
144
|
function Layout( { initialPost } ) {
|
|
134
145
|
useCommands();
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
const isMobileViewport = useViewportMatch( 'medium', '<' );
|
|
138
|
-
const isHugeViewport = useViewportMatch( 'huge', '>=' );
|
|
146
|
+
useEditPostCommands();
|
|
139
147
|
const isWideViewport = useViewportMatch( 'large' );
|
|
140
|
-
const
|
|
141
|
-
|
|
142
|
-
const { closeGeneralSidebar } = useDispatch( editPostStore );
|
|
148
|
+
const paddingAppenderRef = usePaddingAppender();
|
|
149
|
+
const shouldIframe = useShouldIframe();
|
|
143
150
|
const { createErrorNotice } = useDispatch( noticesStore );
|
|
144
|
-
const { setIsInserterOpened } = useDispatch( editorStore );
|
|
145
151
|
const {
|
|
146
152
|
mode,
|
|
147
153
|
isFullscreenActive,
|
|
148
|
-
isRichEditingEnabled,
|
|
149
154
|
sidebarIsOpened,
|
|
150
155
|
hasActiveMetaboxes,
|
|
151
|
-
previousShortcut,
|
|
152
|
-
nextShortcut,
|
|
153
156
|
hasBlockSelected,
|
|
154
|
-
isInserterOpened,
|
|
155
|
-
isListViewOpened,
|
|
156
157
|
showIconLabels,
|
|
157
158
|
isDistractionFree,
|
|
158
159
|
showBlockBreadcrumbs,
|
|
159
160
|
showMetaBoxes,
|
|
160
|
-
documentLabel,
|
|
161
161
|
hasHistory,
|
|
162
|
-
|
|
162
|
+
isEditingTemplate,
|
|
163
|
+
isWelcomeGuideVisible,
|
|
163
164
|
} = useSelect( ( select ) => {
|
|
164
165
|
const { get } = select( preferencesStore );
|
|
165
|
-
const { getEditorSettings
|
|
166
|
-
const
|
|
167
|
-
const postTypeLabel = getPostTypeLabel();
|
|
166
|
+
const { getEditorSettings } = select( editorStore );
|
|
167
|
+
const { isFeatureActive } = select( editPostStore );
|
|
168
168
|
|
|
169
169
|
return {
|
|
170
|
-
|
|
171
|
-
select( editorStore ).getRenderingMode() === 'post-only',
|
|
172
|
-
sidebarIsOpened: !! (
|
|
173
|
-
select( interfaceStore ).getActiveComplementaryArea( 'core' ) ||
|
|
174
|
-
select( editorStore ).isPublishSidebarOpened()
|
|
175
|
-
),
|
|
170
|
+
mode: select( editorStore ).getEditorMode(),
|
|
176
171
|
isFullscreenActive:
|
|
177
172
|
select( editPostStore ).isFeatureActive( 'fullscreenMode' ),
|
|
178
|
-
isInserterOpened: select( editorStore ).isInserterOpened(),
|
|
179
|
-
isListViewOpened: select( editorStore ).isListViewOpened(),
|
|
180
|
-
mode: select( editorStore ).getEditorMode(),
|
|
181
|
-
isRichEditingEnabled: editorSettings.richEditingEnabled,
|
|
182
173
|
hasActiveMetaboxes: select( editPostStore ).hasMetaBoxes(),
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
).getAllShortcutKeyCombinations( 'core/editor/previous-region' ),
|
|
186
|
-
nextShortcut: select(
|
|
187
|
-
keyboardShortcutsStore
|
|
188
|
-
).getAllShortcutKeyCombinations( 'core/editor/next-region' ),
|
|
174
|
+
hasBlockSelected:
|
|
175
|
+
!! select( blockEditorStore ).getBlockSelectionStart(),
|
|
189
176
|
showIconLabels: get( 'core', 'showIconLabels' ),
|
|
190
177
|
isDistractionFree: get( 'core', 'distractionFree' ),
|
|
191
178
|
showBlockBreadcrumbs: get( 'core', 'showBlockBreadcrumbs' ),
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
hasBlockSelected:
|
|
195
|
-
!! select( blockEditorStore ).getBlockSelectionStart(),
|
|
179
|
+
showMetaBoxes:
|
|
180
|
+
select( editorStore ).getRenderingMode() === 'post-only',
|
|
196
181
|
hasHistory: !! getEditorSettings().onNavigateToPreviousEntityRecord,
|
|
197
|
-
|
|
182
|
+
isEditingTemplate:
|
|
183
|
+
select( editorStore ).getCurrentPostType() === 'wp_template',
|
|
184
|
+
isWelcomeGuideVisible: isFeatureActive( 'welcomeGuide' ),
|
|
198
185
|
};
|
|
199
186
|
}, [] );
|
|
200
187
|
|
|
201
188
|
// Set the right context for the command palette
|
|
202
189
|
const commandContext = hasBlockSelected
|
|
203
190
|
? 'block-selection-edit'
|
|
204
|
-
: '
|
|
191
|
+
: 'entity-edit';
|
|
205
192
|
useCommandContext( commandContext );
|
|
206
193
|
|
|
207
194
|
const styles = useEditorStyles();
|
|
208
195
|
|
|
209
|
-
// Inserter and Sidebars are mutually exclusive
|
|
210
|
-
useEffect( () => {
|
|
211
|
-
if ( sidebarIsOpened && ! isHugeViewport ) {
|
|
212
|
-
setIsInserterOpened( false );
|
|
213
|
-
}
|
|
214
|
-
}, [ isHugeViewport, setIsInserterOpened, sidebarIsOpened ] );
|
|
215
|
-
useEffect( () => {
|
|
216
|
-
if ( isInserterOpened && ! isHugeViewport ) {
|
|
217
|
-
closeGeneralSidebar();
|
|
218
|
-
}
|
|
219
|
-
}, [ closeGeneralSidebar, isInserterOpened, isHugeViewport ] );
|
|
220
|
-
|
|
221
|
-
// Local state for save panel.
|
|
222
|
-
// Note 'truthy' callback implies an open panel.
|
|
223
|
-
const [ entitiesSavedStatesCallback, setEntitiesSavedStatesCallback ] =
|
|
224
|
-
useState( false );
|
|
225
|
-
|
|
226
|
-
const closeEntitiesSavedStates = useCallback(
|
|
227
|
-
( arg ) => {
|
|
228
|
-
if ( typeof entitiesSavedStatesCallback === 'function' ) {
|
|
229
|
-
entitiesSavedStatesCallback( arg );
|
|
230
|
-
}
|
|
231
|
-
setEntitiesSavedStatesCallback( false );
|
|
232
|
-
},
|
|
233
|
-
[ entitiesSavedStatesCallback ]
|
|
234
|
-
);
|
|
235
|
-
|
|
236
196
|
// We need to add the show-icon-labels class to the body element so it is applied to modals.
|
|
237
197
|
if ( showIconLabels ) {
|
|
238
198
|
document.body.classList.add( 'show-icon-labels' );
|
|
@@ -240,35 +200,14 @@ function Layout( { initialPost } ) {
|
|
|
240
200
|
document.body.classList.remove( 'show-icon-labels' );
|
|
241
201
|
}
|
|
242
202
|
|
|
243
|
-
const className =
|
|
203
|
+
const className = clsx( 'edit-post-layout', 'is-mode-' + mode, {
|
|
244
204
|
'is-sidebar-opened': sidebarIsOpened,
|
|
245
205
|
'has-metaboxes': hasActiveMetaboxes,
|
|
246
206
|
'is-distraction-free': isDistractionFree && isWideViewport,
|
|
247
|
-
'is-entity-save-view-open': !! entitiesSavedStatesCallback,
|
|
248
207
|
'has-block-breadcrumbs':
|
|
249
|
-
|
|
208
|
+
showBlockBreadcrumbs && ! isDistractionFree && isWideViewport,
|
|
250
209
|
} );
|
|
251
210
|
|
|
252
|
-
const secondarySidebarLabel = isListViewOpened
|
|
253
|
-
? __( 'Document Overview' )
|
|
254
|
-
: __( 'Block Library' );
|
|
255
|
-
|
|
256
|
-
const secondarySidebar = () => {
|
|
257
|
-
if ( mode === 'visual' && isInserterOpened ) {
|
|
258
|
-
return (
|
|
259
|
-
<InserterSidebar
|
|
260
|
-
closeGeneralSidebar={ closeGeneralSidebar }
|
|
261
|
-
isRightSidebarOpen={ sidebarIsOpened }
|
|
262
|
-
/>
|
|
263
|
-
);
|
|
264
|
-
}
|
|
265
|
-
if ( mode === 'visual' && isListViewOpened ) {
|
|
266
|
-
return <ListViewSidebar />;
|
|
267
|
-
}
|
|
268
|
-
|
|
269
|
-
return null;
|
|
270
|
-
};
|
|
271
|
-
|
|
272
211
|
function onPluginAreaError( name ) {
|
|
273
212
|
createErrorNotice(
|
|
274
213
|
sprintf(
|
|
@@ -281,6 +220,58 @@ function Layout( { initialPost } ) {
|
|
|
281
220
|
);
|
|
282
221
|
}
|
|
283
222
|
|
|
223
|
+
const { createSuccessNotice } = useDispatch( noticesStore );
|
|
224
|
+
|
|
225
|
+
const onActionPerformed = useCallback(
|
|
226
|
+
( actionId, items ) => {
|
|
227
|
+
switch ( actionId ) {
|
|
228
|
+
case 'move-to-trash':
|
|
229
|
+
{
|
|
230
|
+
document.location.href = addQueryArgs( 'edit.php', {
|
|
231
|
+
trashed: 1,
|
|
232
|
+
post_type: items[ 0 ].type,
|
|
233
|
+
ids: items[ 0 ].id,
|
|
234
|
+
} );
|
|
235
|
+
}
|
|
236
|
+
break;
|
|
237
|
+
case 'duplicate-post':
|
|
238
|
+
{
|
|
239
|
+
const newItem = items[ 0 ];
|
|
240
|
+
const title =
|
|
241
|
+
typeof newItem.title === 'string'
|
|
242
|
+
? newItem.title
|
|
243
|
+
: newItem.title?.rendered;
|
|
244
|
+
createSuccessNotice(
|
|
245
|
+
sprintf(
|
|
246
|
+
// translators: %s: Title of the created post e.g: "Post 1".
|
|
247
|
+
__( '"%s" successfully created.' ),
|
|
248
|
+
title
|
|
249
|
+
),
|
|
250
|
+
{
|
|
251
|
+
type: 'snackbar',
|
|
252
|
+
id: 'duplicate-post-action',
|
|
253
|
+
actions: [
|
|
254
|
+
{
|
|
255
|
+
label: __( 'Edit' ),
|
|
256
|
+
onClick: () => {
|
|
257
|
+
const postId = newItem.id;
|
|
258
|
+
document.location.href =
|
|
259
|
+
addQueryArgs( 'post.php', {
|
|
260
|
+
post: postId,
|
|
261
|
+
action: 'edit',
|
|
262
|
+
} );
|
|
263
|
+
},
|
|
264
|
+
},
|
|
265
|
+
],
|
|
266
|
+
}
|
|
267
|
+
);
|
|
268
|
+
}
|
|
269
|
+
break;
|
|
270
|
+
}
|
|
271
|
+
},
|
|
272
|
+
[ createSuccessNotice ]
|
|
273
|
+
);
|
|
274
|
+
|
|
284
275
|
return (
|
|
285
276
|
<>
|
|
286
277
|
<FullscreenMode isActive={ isFullscreenActive } />
|
|
@@ -290,85 +281,38 @@ function Layout( { initialPost } ) {
|
|
|
290
281
|
<LocalAutosaveMonitor />
|
|
291
282
|
<EditPostKeyboardShortcuts />
|
|
292
283
|
<EditorKeyboardShortcutsRegister />
|
|
293
|
-
<EditorKeyboardShortcuts />
|
|
294
284
|
<BlockKeyboardShortcuts />
|
|
295
|
-
|
|
296
|
-
<InterfaceSkeleton
|
|
297
|
-
isDistractionFree={ isDistractionFree && isWideViewport }
|
|
298
|
-
className={ className }
|
|
299
|
-
labels={ {
|
|
300
|
-
...interfaceLabels,
|
|
301
|
-
secondarySidebar: secondarySidebarLabel,
|
|
302
|
-
} }
|
|
303
|
-
header={
|
|
304
|
-
<Header
|
|
305
|
-
setEntitiesSavedStatesCallback={
|
|
306
|
-
setEntitiesSavedStatesCallback
|
|
307
|
-
}
|
|
308
|
-
initialPost={ initialPost }
|
|
309
|
-
/>
|
|
310
|
-
}
|
|
311
|
-
editorNotices={ <EditorNotices /> }
|
|
312
|
-
secondarySidebar={ secondarySidebar() }
|
|
313
|
-
sidebar={
|
|
314
|
-
! isDistractionFree && (
|
|
315
|
-
<ComplementaryArea.Slot scope="core" />
|
|
316
|
-
)
|
|
317
|
-
}
|
|
318
|
-
notices={ <EditorSnackbars /> }
|
|
319
|
-
content={
|
|
320
|
-
<>
|
|
321
|
-
{ ! isDistractionFree && <EditorNotices /> }
|
|
322
|
-
{ ( mode === 'text' || ! isRichEditingEnabled ) && (
|
|
323
|
-
<TextEditor />
|
|
324
|
-
) }
|
|
325
|
-
{ ! isLargeViewport && <BlockToolbar hideDragHandle /> }
|
|
326
|
-
{ isRichEditingEnabled && mode === 'visual' && (
|
|
327
|
-
<VisualEditor styles={ styles } />
|
|
328
|
-
) }
|
|
329
|
-
{ ! isDistractionFree && showMetaBoxes && (
|
|
330
|
-
<div className="edit-post-layout__metaboxes">
|
|
331
|
-
<MetaBoxes location="normal" />
|
|
332
|
-
<MetaBoxes location="advanced" />
|
|
333
|
-
</div>
|
|
334
|
-
) }
|
|
335
|
-
{ isMobileViewport && sidebarIsOpened && (
|
|
336
|
-
<ScrollLock />
|
|
337
|
-
) }
|
|
338
|
-
</>
|
|
339
|
-
}
|
|
340
|
-
footer={
|
|
341
|
-
! isDistractionFree &&
|
|
342
|
-
! isMobileViewport &&
|
|
343
|
-
showBlockBreadcrumbs &&
|
|
344
|
-
isRichEditingEnabled &&
|
|
345
|
-
mode === 'visual' && (
|
|
346
|
-
<div className="edit-post-layout__footer">
|
|
347
|
-
<BlockBreadcrumb rootLabelText={ documentLabel } />
|
|
348
|
-
</div>
|
|
349
|
-
)
|
|
350
|
-
}
|
|
351
|
-
actions={
|
|
352
|
-
<SavePublishPanels
|
|
353
|
-
closeEntitiesSavedStates={ closeEntitiesSavedStates }
|
|
354
|
-
isEntitiesSavedStatesOpen={
|
|
355
|
-
entitiesSavedStatesCallback
|
|
356
|
-
}
|
|
357
|
-
setEntitiesSavedStatesCallback={
|
|
358
|
-
setEntitiesSavedStatesCallback
|
|
359
|
-
}
|
|
360
|
-
forceIsDirtyPublishPanel={ hasActiveMetaboxes }
|
|
361
|
-
/>
|
|
362
|
-
}
|
|
363
|
-
shortcuts={ {
|
|
364
|
-
previous: previousShortcut,
|
|
365
|
-
next: nextShortcut,
|
|
366
|
-
} }
|
|
367
|
-
/>
|
|
368
285
|
<WelcomeGuide />
|
|
369
286
|
<InitPatternModal />
|
|
370
287
|
<PluginArea onError={ onPluginAreaError } />
|
|
371
|
-
{ ! isDistractionFree &&
|
|
288
|
+
{ ! isDistractionFree && (
|
|
289
|
+
<Sidebar
|
|
290
|
+
onActionPerformed={ onActionPerformed }
|
|
291
|
+
extraPanels={
|
|
292
|
+
! isEditingTemplate && <MetaBoxes location="side" />
|
|
293
|
+
}
|
|
294
|
+
/>
|
|
295
|
+
) }
|
|
296
|
+
<PostEditorMoreMenu />
|
|
297
|
+
<BackButton initialPost={ initialPost } />
|
|
298
|
+
<EditorSnackbars />
|
|
299
|
+
<EditorInterface
|
|
300
|
+
className={ className }
|
|
301
|
+
styles={ styles }
|
|
302
|
+
forceIsDirty={ hasActiveMetaboxes }
|
|
303
|
+
contentRef={ paddingAppenderRef }
|
|
304
|
+
disableIframe={ ! shouldIframe }
|
|
305
|
+
// We should auto-focus the canvas (title) on load.
|
|
306
|
+
// eslint-disable-next-line jsx-a11y/no-autofocus
|
|
307
|
+
autoFocus={ ! isWelcomeGuideVisible }
|
|
308
|
+
>
|
|
309
|
+
{ ! isDistractionFree && showMetaBoxes && (
|
|
310
|
+
<div className="edit-post-layout__metaboxes">
|
|
311
|
+
<MetaBoxes location="normal" />
|
|
312
|
+
<MetaBoxes location="advanced" />
|
|
313
|
+
</div>
|
|
314
|
+
) }
|
|
315
|
+
</EditorInterface>
|
|
372
316
|
</>
|
|
373
317
|
);
|
|
374
318
|
}
|
|
@@ -1,28 +1,20 @@
|
|
|
1
|
+
.editor-visual-editor {
|
|
2
|
+
flex: 1 0 auto;
|
|
3
|
+
height: auto;
|
|
4
|
+
}
|
|
5
|
+
|
|
1
6
|
.edit-post-layout__metaboxes {
|
|
2
7
|
flex-shrink: 0;
|
|
3
8
|
clear: both;
|
|
4
9
|
}
|
|
5
10
|
|
|
6
11
|
// Adjust the position of the notices
|
|
7
|
-
.
|
|
12
|
+
.components-editor-notices__snackbar {
|
|
8
13
|
position: fixed;
|
|
9
14
|
right: 0;
|
|
10
|
-
bottom:
|
|
11
|
-
padding-left:
|
|
12
|
-
padding-right:
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
.is-distraction-free {
|
|
16
|
-
.components-editor-notices__snackbar {
|
|
17
|
-
bottom: 16px;
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
// Adjust the position of the notices when breadcrumbs are present
|
|
22
|
-
.has-block-breadcrumbs {
|
|
23
|
-
.components-editor-notices__snackbar {
|
|
24
|
-
bottom: 40px;
|
|
25
|
-
}
|
|
15
|
+
bottom: 24px;
|
|
16
|
+
padding-left: 24px;
|
|
17
|
+
padding-right: 24px;
|
|
26
18
|
}
|
|
27
19
|
|
|
28
20
|
@include editor-left(".edit-post-layout .components-editor-notices__snackbar");
|
|
@@ -27,7 +27,7 @@ export function usePaddingAppender() {
|
|
|
27
27
|
return;
|
|
28
28
|
}
|
|
29
29
|
|
|
30
|
-
//
|
|
30
|
+
// Only handle clicks under the last child.
|
|
31
31
|
const lastChild = node.lastElementChild;
|
|
32
32
|
if ( ! lastChild ) {
|
|
33
33
|
return;
|
|
@@ -44,6 +44,12 @@ export function usePaddingAppender() {
|
|
|
44
44
|
.select( blockEditorStore )
|
|
45
45
|
.getBlockOrder( '' );
|
|
46
46
|
const lastBlockClientId = blockOrder[ blockOrder.length - 1 ];
|
|
47
|
+
|
|
48
|
+
// Do nothing when only default block appender is present.
|
|
49
|
+
if ( ! lastBlockClientId ) {
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
|
|
47
53
|
const lastBlock = registry
|
|
48
54
|
.select( blockEditorStore )
|
|
49
55
|
.getBlock( lastBlockClientId );
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { store as editorStore } from '@wordpress/editor';
|
|
5
|
+
import { useSelect } from '@wordpress/data';
|
|
6
|
+
import { store as blocksStore } from '@wordpress/blocks';
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Internal dependencies
|
|
10
|
+
*/
|
|
11
|
+
import { store as editPostStore } from '../../store';
|
|
12
|
+
|
|
13
|
+
const isGutenbergPlugin = globalThis.IS_GUTENBERG_PLUGIN ? true : false;
|
|
14
|
+
|
|
15
|
+
export function useShouldIframe() {
|
|
16
|
+
const {
|
|
17
|
+
isBlockBasedTheme,
|
|
18
|
+
hasV3BlocksOnly,
|
|
19
|
+
isEditingTemplate,
|
|
20
|
+
hasMetaBoxes,
|
|
21
|
+
} = useSelect( ( select ) => {
|
|
22
|
+
const { getEditorSettings, getCurrentPostType } = select( editorStore );
|
|
23
|
+
const { getBlockTypes } = select( blocksStore );
|
|
24
|
+
const editorSettings = getEditorSettings();
|
|
25
|
+
return {
|
|
26
|
+
isBlockBasedTheme: editorSettings.__unstableIsBlockBasedTheme,
|
|
27
|
+
hasV3BlocksOnly: getBlockTypes().every( ( type ) => {
|
|
28
|
+
return type.apiVersion >= 3;
|
|
29
|
+
} ),
|
|
30
|
+
isEditingTemplate: getCurrentPostType() === 'wp_template',
|
|
31
|
+
hasMetaBoxes: select( editPostStore ).hasMetaBoxes(),
|
|
32
|
+
};
|
|
33
|
+
}, [] );
|
|
34
|
+
|
|
35
|
+
return (
|
|
36
|
+
( ( hasV3BlocksOnly || ( isGutenbergPlugin && isBlockBasedTheme ) ) &&
|
|
37
|
+
! hasMetaBoxes ) ||
|
|
38
|
+
isEditingTemplate
|
|
39
|
+
);
|
|
40
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* External dependencies
|
|
3
3
|
*/
|
|
4
|
-
import
|
|
4
|
+
import clsx from 'clsx';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* WordPress dependencies
|
|
@@ -48,13 +48,9 @@ function MetaBoxesArea( { location } ) {
|
|
|
48
48
|
return select( editPostStore ).isSavingMetaBoxes();
|
|
49
49
|
}, [] );
|
|
50
50
|
|
|
51
|
-
const classes =
|
|
52
|
-
'
|
|
53
|
-
|
|
54
|
-
{
|
|
55
|
-
'is-loading': isSaving,
|
|
56
|
-
}
|
|
57
|
-
);
|
|
51
|
+
const classes = clsx( 'edit-post-meta-boxes-area', `is-${ location }`, {
|
|
52
|
+
'is-loading': isSaving,
|
|
53
|
+
} );
|
|
58
54
|
|
|
59
55
|
return (
|
|
60
56
|
<div className={ classes }>
|
|
@@ -10,10 +10,10 @@ import { displayShortcut } from '@wordpress/keycodes';
|
|
|
10
10
|
/**
|
|
11
11
|
* Internal dependencies
|
|
12
12
|
*/
|
|
13
|
-
import { unlock } from '
|
|
13
|
+
import { unlock } from '../../lock-unlock';
|
|
14
14
|
import ManagePatternsMenuItem from './manage-patterns-menu-item';
|
|
15
15
|
import WelcomeGuideMenuItem from './welcome-guide-menu-item';
|
|
16
|
-
import EditPostPreferencesModal from '
|
|
16
|
+
import EditPostPreferencesModal from '../preferences-modal';
|
|
17
17
|
|
|
18
18
|
const { ToolsMoreMenuGroup, ViewMoreMenuGroup } = unlock( editorPrivateApis );
|
|
19
19
|
|
|
@@ -20,7 +20,7 @@ function ManagePatternsMenuItem() {
|
|
|
20
20
|
// The site editor and templates both check whether the user has
|
|
21
21
|
// edit_theme_options capabilities. We can leverage that here and not
|
|
22
22
|
// display the manage patterns link if the user can't access it.
|
|
23
|
-
return canUser( '
|
|
23
|
+
return canUser( 'create', 'templates' ) ? patternsUrl : defaultUrl;
|
|
24
24
|
}, [] );
|
|
25
25
|
|
|
26
26
|
return (
|
package/src/index.js
CHANGED
|
@@ -14,13 +14,19 @@ import {
|
|
|
14
14
|
registerLegacyWidgetBlock,
|
|
15
15
|
registerWidgetGroupBlock,
|
|
16
16
|
} from '@wordpress/widgets';
|
|
17
|
-
import {
|
|
17
|
+
import {
|
|
18
|
+
store as editorStore,
|
|
19
|
+
privateApis as editorPrivateApis,
|
|
20
|
+
} from '@wordpress/editor';
|
|
18
21
|
|
|
19
22
|
/**
|
|
20
23
|
* Internal dependencies
|
|
21
24
|
*/
|
|
22
|
-
import './hooks';
|
|
23
25
|
import Editor from './editor';
|
|
26
|
+
import { unlock } from './lock-unlock';
|
|
27
|
+
|
|
28
|
+
const { BackButton: __experimentalMainDashboardButton } =
|
|
29
|
+
unlock( editorPrivateApis );
|
|
24
30
|
|
|
25
31
|
/**
|
|
26
32
|
* Initializes and returns an instance of Editor.
|
|
@@ -80,7 +86,7 @@ export function initializeEditor(
|
|
|
80
86
|
registerCoreBlocks();
|
|
81
87
|
registerLegacyWidgetBlock( { inserter: false } );
|
|
82
88
|
registerWidgetGroupBlock( { inserter: false } );
|
|
83
|
-
if (
|
|
89
|
+
if ( globalThis.IS_GUTENBERG_PLUGIN ) {
|
|
84
90
|
__experimentalRegisterExperimentalCoreBlocks( {
|
|
85
91
|
enableFSEBlocks: settings.__unstableEnableFullSiteEditingBlocks,
|
|
86
92
|
} );
|
|
@@ -152,8 +158,7 @@ export function reinitializeEditor() {
|
|
|
152
158
|
} );
|
|
153
159
|
}
|
|
154
160
|
|
|
155
|
-
export { default as __experimentalFullscreenModeClose } from './components/
|
|
156
|
-
export {
|
|
157
|
-
|
|
161
|
+
export { default as __experimentalFullscreenModeClose } from './components/back-button/fullscreen-mode-close';
|
|
162
|
+
export { __experimentalMainDashboardButton };
|
|
158
163
|
export { store } from './store';
|
|
159
164
|
export * from './deprecated';
|