@wordpress/edit-post 6.7.0 → 6.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/README.md +1 -1
- package/build/components/block-manager/category.js.map +1 -1
- package/build/components/block-manager/index.js +12 -4
- package/build/components/block-manager/index.js.map +1 -1
- package/build/components/device-preview/index.js.map +1 -1
- package/build/components/editor-initialization/listener-hooks.js.map +1 -1
- package/build/components/header/fullscreen-mode-close/index.js.map +1 -1
- package/build/components/header/header-toolbar/index.js.map +1 -1
- package/build/components/header/index.js.map +1 -1
- package/build/components/header/mode-switcher/index.js.map +1 -1
- package/build/components/header/post-publish-button-or-toggle.js.map +1 -1
- package/build/components/header/template-title/delete-template.js.map +1 -1
- package/build/components/header/template-title/edit-template-title.js +11 -2
- package/build/components/header/template-title/edit-template-title.js.map +1 -1
- package/build/components/header/template-title/index.js.map +1 -1
- package/build/components/header/tools-more-menu-group/index.js.map +1 -1
- package/build/components/keyboard-shortcut-help-modal/config.js +12 -0
- package/build/components/keyboard-shortcut-help-modal/config.js.map +1 -1
- package/build/components/keyboard-shortcut-help-modal/index.js +1 -3
- package/build/components/keyboard-shortcut-help-modal/index.js.map +1 -1
- package/build/components/keyboard-shortcuts/index.js.map +1 -1
- package/build/components/layout/actions-panel.js.map +1 -1
- package/build/components/layout/index.js.map +1 -1
- package/build/components/layout/index.native.js.map +1 -1
- package/build/components/preferences-modal/index.js +3 -26
- package/build/components/preferences-modal/index.js.map +1 -1
- package/build/components/preferences-modal/options/enable-custom-fields.js.map +1 -1
- package/build/components/preferences-modal/options/enable-panel.js.map +1 -1
- package/build/components/preferences-modal/options/enable-publish-sidebar.js.map +1 -1
- package/build/components/secondary-sidebar/inserter-sidebar.js.map +1 -1
- package/build/components/sidebar/discussion-panel/index.js.map +1 -1
- package/build/components/sidebar/featured-image/index.js.map +1 -1
- package/build/components/sidebar/page-attributes/index.js.map +1 -1
- package/build/components/sidebar/plugin-document-setting-panel/index.js.map +1 -1
- package/build/components/sidebar/plugin-post-status-info/index.js +2 -2
- package/build/components/sidebar/plugin-post-status-info/index.js.map +1 -1
- package/build/components/sidebar/plugin-sidebar/index.js.map +1 -1
- package/build/components/sidebar/post-excerpt/index.js.map +1 -1
- package/build/components/sidebar/post-format/index.js +3 -1
- package/build/components/sidebar/post-format/index.js.map +1 -1
- package/build/components/sidebar/post-schedule/index.js +28 -12
- package/build/components/sidebar/post-schedule/index.js.map +1 -1
- package/build/components/sidebar/post-slug/index.js +3 -1
- package/build/components/sidebar/post-slug/index.js.map +1 -1
- package/build/components/sidebar/post-status/index.js +6 -2
- package/build/components/sidebar/post-status/index.js.map +1 -1
- package/build/components/sidebar/post-template/create-modal.js +116 -0
- package/build/components/sidebar/post-template/create-modal.js.map +1 -0
- package/build/components/sidebar/post-template/form.js +123 -0
- package/build/components/sidebar/post-template/form.js.map +1 -0
- package/build/components/sidebar/post-template/index.js +124 -0
- package/build/components/sidebar/post-template/index.js.map +1 -0
- package/build/components/sidebar/post-url/index.js +68 -0
- package/build/components/sidebar/post-url/index.js.map +1 -0
- package/build/components/sidebar/post-visibility/index.js +21 -6
- package/build/components/sidebar/post-visibility/index.js.map +1 -1
- package/build/components/sidebar/settings-sidebar/index.js +2 -6
- package/build/components/sidebar/settings-sidebar/index.js.map +1 -1
- package/build/components/start-page-options/index.js +31 -13
- package/build/components/start-page-options/index.js.map +1 -1
- package/build/components/visual-editor/block-inspector-button.js +3 -7
- package/build/components/visual-editor/block-inspector-button.js.map +1 -1
- package/build/components/visual-editor/index.js +4 -2
- package/build/components/visual-editor/index.js.map +1 -1
- package/build/editor.js +1 -1
- package/build/editor.js.map +1 -1
- package/build/editor.native.js +1 -1
- package/build/editor.native.js.map +1 -1
- package/build/plugins/copy-content-menu-item/index.js +1 -1
- package/build/plugins/copy-content-menu-item/index.js.map +1 -1
- package/build/store/actions.js.map +1 -1
- package/build/store/selectors.js +8 -8
- package/build/store/selectors.js.map +1 -1
- package/build-module/components/block-manager/category.js.map +1 -1
- package/build-module/components/block-manager/index.js +13 -5
- package/build-module/components/block-manager/index.js.map +1 -1
- package/build-module/components/device-preview/index.js.map +1 -1
- package/build-module/components/editor-initialization/listener-hooks.js.map +1 -1
- package/build-module/components/header/fullscreen-mode-close/index.js.map +1 -1
- package/build-module/components/header/header-toolbar/index.js.map +1 -1
- package/build-module/components/header/index.js.map +1 -1
- package/build-module/components/header/mode-switcher/index.js.map +1 -1
- package/build-module/components/header/post-publish-button-or-toggle.js.map +1 -1
- package/build-module/components/header/template-title/delete-template.js.map +1 -1
- package/build-module/components/header/template-title/edit-template-title.js +12 -2
- package/build-module/components/header/template-title/edit-template-title.js.map +1 -1
- package/build-module/components/header/template-title/index.js.map +1 -1
- package/build-module/components/header/tools-more-menu-group/index.js.map +1 -1
- package/build-module/components/keyboard-shortcut-help-modal/config.js +12 -0
- package/build-module/components/keyboard-shortcut-help-modal/config.js.map +1 -1
- package/build-module/components/keyboard-shortcut-help-modal/index.js +1 -2
- package/build-module/components/keyboard-shortcut-help-modal/index.js.map +1 -1
- package/build-module/components/keyboard-shortcuts/index.js.map +1 -1
- package/build-module/components/layout/actions-panel.js.map +1 -1
- package/build-module/components/layout/index.js.map +1 -1
- package/build-module/components/layout/index.native.js.map +1 -1
- package/build-module/components/preferences-modal/index.js +3 -25
- package/build-module/components/preferences-modal/index.js.map +1 -1
- package/build-module/components/preferences-modal/options/enable-custom-fields.js.map +1 -1
- package/build-module/components/preferences-modal/options/enable-panel.js.map +1 -1
- package/build-module/components/preferences-modal/options/enable-publish-sidebar.js.map +1 -1
- package/build-module/components/secondary-sidebar/inserter-sidebar.js.map +1 -1
- package/build-module/components/sidebar/discussion-panel/index.js.map +1 -1
- package/build-module/components/sidebar/featured-image/index.js.map +1 -1
- package/build-module/components/sidebar/page-attributes/index.js.map +1 -1
- package/build-module/components/sidebar/plugin-document-setting-panel/index.js.map +1 -1
- package/build-module/components/sidebar/plugin-post-status-info/index.js +2 -2
- package/build-module/components/sidebar/plugin-post-status-info/index.js.map +1 -1
- package/build-module/components/sidebar/plugin-sidebar/index.js.map +1 -1
- package/build-module/components/sidebar/post-excerpt/index.js.map +1 -1
- package/build-module/components/sidebar/post-format/index.js +3 -1
- package/build-module/components/sidebar/post-format/index.js.map +1 -1
- package/build-module/components/sidebar/post-schedule/index.js +32 -13
- package/build-module/components/sidebar/post-schedule/index.js.map +1 -1
- package/build-module/components/sidebar/post-slug/index.js +3 -1
- package/build-module/components/sidebar/post-slug/index.js.map +1 -1
- package/build-module/components/sidebar/post-status/index.js +4 -2
- package/build-module/components/sidebar/post-status/index.js.map +1 -1
- package/build-module/components/sidebar/post-template/create-modal.js +104 -0
- package/build-module/components/sidebar/post-template/create-modal.js.map +1 -0
- package/build-module/components/sidebar/post-template/form.js +106 -0
- package/build-module/components/sidebar/post-template/form.js.map +1 -0
- package/build-module/components/sidebar/post-template/index.js +110 -0
- package/build-module/components/sidebar/post-template/index.js.map +1 -0
- package/build-module/components/sidebar/post-url/index.js +59 -0
- package/build-module/components/sidebar/post-url/index.js.map +1 -0
- package/build-module/components/sidebar/post-visibility/index.js +24 -8
- package/build-module/components/sidebar/post-visibility/index.js.map +1 -1
- package/build-module/components/sidebar/settings-sidebar/index.js +2 -4
- package/build-module/components/sidebar/settings-sidebar/index.js.map +1 -1
- package/build-module/components/start-page-options/index.js +32 -14
- package/build-module/components/start-page-options/index.js.map +1 -1
- package/build-module/components/visual-editor/block-inspector-button.js +3 -5
- package/build-module/components/visual-editor/block-inspector-button.js.map +1 -1
- package/build-module/components/visual-editor/index.js +4 -2
- package/build-module/components/visual-editor/index.js.map +1 -1
- package/build-module/editor.js +2 -2
- package/build-module/editor.js.map +1 -1
- package/build-module/editor.native.js +2 -2
- package/build-module/editor.native.js.map +1 -1
- package/build-module/plugins/copy-content-menu-item/index.js +1 -1
- package/build-module/plugins/copy-content-menu-item/index.js.map +1 -1
- package/build-module/store/actions.js.map +1 -1
- package/build-module/store/selectors.js +8 -7
- package/build-module/store/selectors.js.map +1 -1
- package/build-style/style-rtl.css +85 -87
- package/build-style/style.css +84 -90
- package/package.json +27 -27
- package/src/components/block-manager/category.js +2 -2
- package/src/components/block-manager/index.js +15 -4
- package/src/components/device-preview/index.js +4 -6
- package/src/components/editor-initialization/listener-hooks.js +2 -3
- package/src/components/header/fullscreen-mode-close/index.js +2 -3
- package/src/components/header/header-toolbar/index.js +6 -11
- package/src/components/header/index.js +6 -9
- package/src/components/header/mode-switcher/index.js +4 -4
- package/src/components/header/post-publish-button-or-toggle.js +4 -6
- package/src/components/header/template-title/delete-template.js +2 -3
- package/src/components/header/template-title/edit-template-title.js +11 -1
- package/src/components/header/template-title/index.js +2 -3
- package/src/components/header/tools-more-menu-group/index.js +2 -3
- package/src/components/keyboard-shortcut-help-modal/config.js +8 -0
- package/src/components/keyboard-shortcut-help-modal/index.js +1 -2
- package/src/components/keyboard-shortcut-help-modal/style.scss +0 -5
- package/src/components/keyboard-shortcut-help-modal/test/__snapshots__/index.js.snap +14 -0
- package/src/components/keyboard-shortcut-help-modal/test/index.js +2 -1
- package/src/components/keyboard-shortcuts/index.js +4 -8
- package/src/components/layout/actions-panel.js +6 -9
- package/src/components/layout/index.js +12 -21
- package/src/components/layout/index.native.js +4 -5
- package/src/components/preferences-modal/index.js +5 -23
- package/src/components/preferences-modal/options/enable-custom-fields.js +2 -2
- package/src/components/preferences-modal/options/enable-panel.js +2 -3
- package/src/components/preferences-modal/options/enable-publish-sidebar.js +2 -3
- package/src/components/preferences-modal/test/index.js +3 -3
- package/src/components/secondary-sidebar/inserter-sidebar.js +2 -3
- package/src/components/sidebar/discussion-panel/index.js +2 -3
- package/src/components/sidebar/featured-image/index.js +2 -3
- package/src/components/sidebar/page-attributes/index.js +2 -3
- package/src/components/sidebar/plugin-document-setting-panel/index.js +2 -3
- package/src/components/sidebar/plugin-post-status-info/index.js +2 -2
- package/src/components/sidebar/plugin-sidebar/index.js +2 -3
- package/src/components/sidebar/post-author/style.scss +4 -10
- package/src/components/sidebar/post-excerpt/index.js +2 -3
- package/src/components/sidebar/post-format/index.js +1 -1
- package/src/components/sidebar/post-format/style.scss +5 -0
- package/src/components/sidebar/post-schedule/index.js +27 -16
- package/src/components/sidebar/post-schedule/style.scss +17 -4
- package/src/components/sidebar/post-slug/index.js +1 -1
- package/src/components/sidebar/post-slug/style.scss +4 -3
- package/src/components/sidebar/post-status/index.js +8 -5
- package/src/components/sidebar/post-template/create-modal.js +146 -0
- package/src/components/sidebar/post-template/form.js +143 -0
- package/src/components/sidebar/post-template/index.js +102 -0
- package/src/components/sidebar/post-template/style.scss +36 -0
- package/src/components/sidebar/post-url/index.js +51 -0
- package/src/components/sidebar/post-url/style.scss +23 -0
- package/src/components/sidebar/post-visibility/index.js +22 -8
- package/src/components/sidebar/post-visibility/style.scss +5 -4
- package/src/components/sidebar/settings-sidebar/index.js +1 -5
- package/src/components/sidebar/template/style.scss +0 -8
- package/src/components/start-page-options/index.js +48 -28
- package/src/components/start-page-options/style.scss +0 -9
- package/src/components/visual-editor/block-inspector-button.js +4 -8
- package/src/components/visual-editor/index.js +2 -1
- package/src/editor.js +8 -10
- package/src/editor.native.js +5 -6
- package/src/plugins/copy-content-menu-item/index.js +1 -1
- package/src/store/actions.js +322 -295
- package/src/store/selectors.js +21 -24
- package/src/style.scss +3 -2
- package/build/components/sidebar/post-link/index.js +0 -182
- package/build/components/sidebar/post-link/index.js.map +0 -1
- package/build/components/sidebar/template/actions.js +0 -167
- package/build/components/sidebar/template/actions.js.map +0 -1
- package/build/components/sidebar/template/index.js +0 -164
- package/build/components/sidebar/template/index.js.map +0 -1
- package/build-module/components/sidebar/post-link/index.js +0 -165
- package/build-module/components/sidebar/post-link/index.js.map +0 -1
- package/build-module/components/sidebar/template/actions.js +0 -153
- package/build-module/components/sidebar/template/actions.js.map +0 -1
- package/build-module/components/sidebar/template/index.js +0 -145
- package/build-module/components/sidebar/template/index.js.map +0 -1
- package/src/components/sidebar/post-link/index.js +0 -180
- package/src/components/sidebar/post-link/style.scss +0 -20
- package/src/components/sidebar/template/actions.js +0 -203
- package/src/components/sidebar/template/index.js +0 -164
|
@@ -3,9 +3,9 @@ import { createElement } from "@wordpress/element";
|
|
|
3
3
|
/**
|
|
4
4
|
* WordPress dependencies
|
|
5
5
|
*/
|
|
6
|
-
import { __ } from '@wordpress/i18n';
|
|
6
|
+
import { __, sprintf } from '@wordpress/i18n';
|
|
7
7
|
import { PanelRow, Dropdown, Button } from '@wordpress/components';
|
|
8
|
-
import { PostVisibility as PostVisibilityForm, PostVisibilityLabel, PostVisibilityCheck } from '@wordpress/editor';
|
|
8
|
+
import { PostVisibility as PostVisibilityForm, PostVisibilityLabel, PostVisibilityCheck, usePostVisibilityLabel } from '@wordpress/editor';
|
|
9
9
|
import { useRef } from '@wordpress/element';
|
|
10
10
|
export function PostVisibility() {
|
|
11
11
|
const rowRef = useRef();
|
|
@@ -26,17 +26,16 @@ export function PostVisibility() {
|
|
|
26
26
|
// when the label changes.
|
|
27
27
|
anchorRef: rowRef.current
|
|
28
28
|
},
|
|
29
|
+
focusOnMount: true,
|
|
29
30
|
renderToggle: _ref2 => {
|
|
30
31
|
let {
|
|
31
32
|
isOpen,
|
|
32
33
|
onToggle
|
|
33
34
|
} = _ref2;
|
|
34
|
-
return createElement(
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
variant: "tertiary"
|
|
39
|
-
}, createElement(PostVisibilityLabel, null));
|
|
35
|
+
return createElement(PostVisibilityToggle, {
|
|
36
|
+
isOpen: isOpen,
|
|
37
|
+
onClick: onToggle
|
|
38
|
+
});
|
|
40
39
|
},
|
|
41
40
|
renderContent: _ref3 => {
|
|
42
41
|
let {
|
|
@@ -50,5 +49,22 @@ export function PostVisibility() {
|
|
|
50
49
|
}
|
|
51
50
|
});
|
|
52
51
|
}
|
|
52
|
+
|
|
53
|
+
function PostVisibilityToggle(_ref4) {
|
|
54
|
+
let {
|
|
55
|
+
isOpen,
|
|
56
|
+
onClick
|
|
57
|
+
} = _ref4;
|
|
58
|
+
const label = usePostVisibilityLabel();
|
|
59
|
+
return createElement(Button, {
|
|
60
|
+
className: "edit-post-post-visibility__toggle",
|
|
61
|
+
variant: "tertiary",
|
|
62
|
+
"aria-expanded": isOpen // translators: %s: Current post visibility.
|
|
63
|
+
,
|
|
64
|
+
"aria-label": sprintf(__('Select visibility: %s'), label),
|
|
65
|
+
onClick: onClick
|
|
66
|
+
}, label);
|
|
67
|
+
}
|
|
68
|
+
|
|
53
69
|
export default PostVisibility;
|
|
54
70
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/post-visibility/index.js"],"names":["__","PanelRow","Dropdown","Button","PostVisibility","PostVisibilityForm","PostVisibilityLabel","PostVisibilityCheck","useRef","rowRef","canEdit","anchorRef","current","isOpen","onToggle","onClose"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,EAAT,
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/post-visibility/index.js"],"names":["__","sprintf","PanelRow","Dropdown","Button","PostVisibility","PostVisibilityForm","PostVisibilityLabel","PostVisibilityCheck","usePostVisibilityLabel","useRef","rowRef","canEdit","anchorRef","current","isOpen","onToggle","onClose","PostVisibilityToggle","onClick","label"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,EAAT,EAAaC,OAAb,QAA4B,iBAA5B;AACA,SAASC,QAAT,EAAmBC,QAAnB,EAA6BC,MAA7B,QAA2C,uBAA3C;AACA,SACCC,cAAc,IAAIC,kBADnB,EAECC,mBAFD,EAGCC,mBAHD,EAICC,sBAJD,QAKO,mBALP;AAMA,SAASC,MAAT,QAAuB,oBAAvB;AAEA,OAAO,SAASL,cAAT,GAA0B;AAChC,QAAMM,MAAM,GAAGD,MAAM,EAArB;AACA,SACC,cAAC,mBAAD;AACC,IAAA,MAAM,EAAG;AAAA,UAAE;AAAEE,QAAAA;AAAF,OAAF;AAAA,aACR,cAAC,QAAD;AAAU,QAAA,GAAG,EAAGD,MAAhB;AAAyB,QAAA,SAAS,EAAC;AAAnC,SACC,4BAAQX,EAAE,CAAE,YAAF,CAAV,CADD,EAEG,CAAEY,OAAF,IACD,4BACC,cAAC,mBAAD,OADD,CAHF,EAOGA,OAAO,IACR,cAAC,QAAD;AACC,QAAA,QAAQ,EAAC,aADV;AAEC,QAAA,gBAAgB,EAAC,mCAFlB;AAGC,QAAA,YAAY,EAAG;AACd;AACA;AACA;AACAC,UAAAA,SAAS,EAAEF,MAAM,CAACG;AAJJ,SAHhB;AASC,QAAA,YAAY,MATb;AAUC,QAAA,YAAY,EAAG;AAAA,cAAE;AAAEC,YAAAA,MAAF;AAAUC,YAAAA;AAAV,WAAF;AAAA,iBACd,cAAC,oBAAD;AACC,YAAA,MAAM,EAAGD,MADV;AAEC,YAAA,OAAO,EAAGC;AAFX,YADc;AAAA,SAVhB;AAgBC,QAAA,aAAa,EAAG;AAAA,cAAE;AAAEC,YAAAA;AAAF,WAAF;AAAA,iBACf,cAAC,kBAAD;AAAoB,YAAA,OAAO,EAAGA;AAA9B,YADe;AAAA;AAhBjB,QARF,CADQ;AAAA;AADV,IADD;AAoCA;;AAED,SAASC,oBAAT,QAAqD;AAAA,MAAtB;AAAEH,IAAAA,MAAF;AAAUI,IAAAA;AAAV,GAAsB;AACpD,QAAMC,KAAK,GAAGX,sBAAsB,EAApC;AACA,SACC,cAAC,MAAD;AACC,IAAA,SAAS,EAAC,mCADX;AAEC,IAAA,OAAO,EAAC,UAFT;AAGC,qBAAgBM,MAHjB,CAIC;AAJD;AAKC,kBAAad,OAAO,CAAED,EAAE,CAAE,uBAAF,CAAJ,EAAiCoB,KAAjC,CALrB;AAMC,IAAA,OAAO,EAAGD;AANX,KAQGC,KARH,CADD;AAYA;;AAED,eAAef,cAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { PanelRow, Dropdown, Button } from '@wordpress/components';\nimport {\n\tPostVisibility as PostVisibilityForm,\n\tPostVisibilityLabel,\n\tPostVisibilityCheck,\n\tusePostVisibilityLabel,\n} from '@wordpress/editor';\nimport { useRef } from '@wordpress/element';\n\nexport function PostVisibility() {\n\tconst rowRef = useRef();\n\treturn (\n\t\t<PostVisibilityCheck\n\t\t\trender={ ( { canEdit } ) => (\n\t\t\t\t<PanelRow ref={ rowRef } className=\"edit-post-post-visibility\">\n\t\t\t\t\t<span>{ __( 'Visibility' ) }</span>\n\t\t\t\t\t{ ! canEdit && (\n\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t<PostVisibilityLabel />\n\t\t\t\t\t\t</span>\n\t\t\t\t\t) }\n\t\t\t\t\t{ canEdit && (\n\t\t\t\t\t\t<Dropdown\n\t\t\t\t\t\t\tposition=\"bottom left\"\n\t\t\t\t\t\t\tcontentClassName=\"edit-post-post-visibility__dialog\"\n\t\t\t\t\t\t\tpopoverProps={ {\n\t\t\t\t\t\t\t\t// Anchor the popover to the middle of the\n\t\t\t\t\t\t\t\t// entire row so that it doesn't move around\n\t\t\t\t\t\t\t\t// when the label changes.\n\t\t\t\t\t\t\t\tanchorRef: rowRef.current,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tfocusOnMount\n\t\t\t\t\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t\t\t\t\t<PostVisibilityToggle\n\t\t\t\t\t\t\t\t\tisOpen={ isOpen }\n\t\t\t\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\trenderContent={ ( { onClose } ) => (\n\t\t\t\t\t\t\t\t<PostVisibilityForm onClose={ onClose } />\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</PanelRow>\n\t\t\t) }\n\t\t/>\n\t);\n}\n\nfunction PostVisibilityToggle( { isOpen, onClick } ) {\n\tconst label = usePostVisibilityLabel();\n\treturn (\n\t\t<Button\n\t\t\tclassName=\"edit-post-post-visibility__toggle\"\n\t\t\tvariant=\"tertiary\"\n\t\t\taria-expanded={ isOpen }\n\t\t\t// translators: %s: Current post visibility.\n\t\t\taria-label={ sprintf( __( 'Select visibility: %s' ), label ) }\n\t\t\tonClick={ onClick }\n\t\t>\n\t\t\t{ label }\n\t\t</Button>\n\t);\n}\n\nexport default PostVisibility;\n"]}
|
|
@@ -18,13 +18,11 @@ import LastRevision from '../last-revision';
|
|
|
18
18
|
import PostTaxonomies from '../post-taxonomies';
|
|
19
19
|
import FeaturedImage from '../featured-image';
|
|
20
20
|
import PostExcerpt from '../post-excerpt';
|
|
21
|
-
import PostLink from '../post-link';
|
|
22
21
|
import DiscussionPanel from '../discussion-panel';
|
|
23
22
|
import PageAttributes from '../page-attributes';
|
|
24
23
|
import MetaBoxes from '../../meta-boxes';
|
|
25
24
|
import PluginDocumentSettingPanel from '../plugin-document-setting-panel';
|
|
26
25
|
import PluginSidebarEditPost from '../plugin-sidebar';
|
|
27
|
-
import Template from '../template';
|
|
28
26
|
import TemplateSummary from '../template-summary';
|
|
29
27
|
import { __ } from '@wordpress/i18n';
|
|
30
28
|
import { useSelect } from '@wordpress/data';
|
|
@@ -43,7 +41,7 @@ const SettingsSidebar = () => {
|
|
|
43
41
|
// The settings sidebar is used by the edit-post/document and edit-post/block sidebars.
|
|
44
42
|
// sidebarName represents the sidebar that is active or that should be active when the SettingsSidebar toggle button is pressed.
|
|
45
43
|
// If one of the two sidebars is active the component will contain the content of that sidebar.
|
|
46
|
-
// When neither of the
|
|
44
|
+
// When neither of the two sidebars is active we can not simply return null, because the PluginSidebarEditPost
|
|
47
45
|
// component, besides being used to render the sidebar, also renders the toggle button. In that case sidebarName
|
|
48
46
|
// should contain the sidebar that will be active when the toggle button is pressed. If a block
|
|
49
47
|
// is selected, that should be edit-post/block otherwise it's edit-post/document.
|
|
@@ -77,7 +75,7 @@ const SettingsSidebar = () => {
|
|
|
77
75
|
toggleShortcut: keyboardShortcut,
|
|
78
76
|
icon: cog,
|
|
79
77
|
isActiveByDefault: SIDEBAR_ACTIVE_BY_DEFAULT
|
|
80
|
-
}, !isTemplateMode && sidebarName === 'edit-post/document' && createElement(Fragment, null, createElement(PostStatus, null), createElement(
|
|
78
|
+
}, !isTemplateMode && sidebarName === 'edit-post/document' && createElement(Fragment, null, createElement(PostStatus, null), createElement(PluginDocumentSettingPanel.Slot, null), createElement(LastRevision, null), createElement(PostTaxonomies, null), createElement(FeaturedImage, null), createElement(PostExcerpt, null), createElement(DiscussionPanel, null), createElement(PageAttributes, null), createElement(MetaBoxes, {
|
|
81
79
|
location: "side"
|
|
82
80
|
})), isTemplateMode && sidebarName === 'edit-post/document' && createElement(TemplateSummary, null), sidebarName === 'edit-post/block' && createElement(BlockInspector, null));
|
|
83
81
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/settings-sidebar/index.js"],"names":["BlockInspector","store","blockEditorStore","cog","Platform","keyboardShortcutsStore","interfaceStore","SettingsHeader","PostStatus","LastRevision","PostTaxonomies","FeaturedImage","PostExcerpt","
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/settings-sidebar/index.js"],"names":["BlockInspector","store","blockEditorStore","cog","Platform","keyboardShortcutsStore","interfaceStore","SettingsHeader","PostStatus","LastRevision","PostTaxonomies","FeaturedImage","PostExcerpt","DiscussionPanel","PageAttributes","MetaBoxes","PluginDocumentSettingPanel","PluginSidebarEditPost","TemplateSummary","__","useSelect","editPostStore","SIDEBAR_ACTIVE_BY_DEFAULT","select","web","native","SettingsSidebar","sidebarName","keyboardShortcut","isTemplateMode","sidebar","getActiveComplementaryArea","name","includes","getBlockSelectionStart","shortcut","getShortcutRepresentation","isEditingTemplate"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tBlockInspector,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { cog } from '@wordpress/icons';\nimport { Platform } from '@wordpress/element';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\nimport { store as interfaceStore } from '@wordpress/interface';\n\n/**\n * Internal dependencies\n */\nimport SettingsHeader from '../settings-header';\nimport PostStatus from '../post-status';\nimport LastRevision from '../last-revision';\nimport PostTaxonomies from '../post-taxonomies';\nimport FeaturedImage from '../featured-image';\nimport PostExcerpt from '../post-excerpt';\nimport DiscussionPanel from '../discussion-panel';\nimport PageAttributes from '../page-attributes';\nimport MetaBoxes from '../../meta-boxes';\nimport PluginDocumentSettingPanel from '../plugin-document-setting-panel';\nimport PluginSidebarEditPost from '../plugin-sidebar';\nimport TemplateSummary from '../template-summary';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { store as editPostStore } from '../../../store';\n\nconst SIDEBAR_ACTIVE_BY_DEFAULT = Platform.select( {\n\tweb: true,\n\tnative: false,\n} );\n\nconst SettingsSidebar = () => {\n\tconst { sidebarName, keyboardShortcut, isTemplateMode } = useSelect(\n\t\t( select ) => {\n\t\t\t// The settings sidebar is used by the edit-post/document and edit-post/block sidebars.\n\t\t\t// sidebarName represents the sidebar that is active or that should be active when the SettingsSidebar toggle button is pressed.\n\t\t\t// If one of the two sidebars is active the component will contain the content of that sidebar.\n\t\t\t// When neither of the two sidebars is active we can not simply return null, because the PluginSidebarEditPost\n\t\t\t// component, besides being used to render the sidebar, also renders the toggle button. In that case sidebarName\n\t\t\t// should contain the sidebar that will be active when the toggle button is pressed. If a block\n\t\t\t// is selected, that should be edit-post/block otherwise it's edit-post/document.\n\t\t\tlet sidebar = select( interfaceStore ).getActiveComplementaryArea(\n\t\t\t\teditPostStore.name\n\t\t\t);\n\t\t\tif (\n\t\t\t\t! [ 'edit-post/document', 'edit-post/block' ].includes(\n\t\t\t\t\tsidebar\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\tif ( select( blockEditorStore ).getBlockSelectionStart() ) {\n\t\t\t\t\tsidebar = 'edit-post/block';\n\t\t\t\t}\n\t\t\t\tsidebar = 'edit-post/document';\n\t\t\t}\n\t\t\tconst shortcut = select(\n\t\t\t\tkeyboardShortcutsStore\n\t\t\t).getShortcutRepresentation( 'core/edit-post/toggle-sidebar' );\n\t\t\treturn {\n\t\t\t\tsidebarName: sidebar,\n\t\t\t\tkeyboardShortcut: shortcut,\n\t\t\t\tisTemplateMode: select( editPostStore ).isEditingTemplate(),\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\treturn (\n\t\t<PluginSidebarEditPost\n\t\t\tidentifier={ sidebarName }\n\t\t\theader={ <SettingsHeader sidebarName={ sidebarName } /> }\n\t\t\tcloseLabel={ __( 'Close settings' ) }\n\t\t\theaderClassName=\"edit-post-sidebar__panel-tabs\"\n\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\ttitle={ __( 'Settings' ) }\n\t\t\ttoggleShortcut={ keyboardShortcut }\n\t\t\ticon={ cog }\n\t\t\tisActiveByDefault={ SIDEBAR_ACTIVE_BY_DEFAULT }\n\t\t>\n\t\t\t{ ! isTemplateMode && sidebarName === 'edit-post/document' && (\n\t\t\t\t<>\n\t\t\t\t\t<PostStatus />\n\t\t\t\t\t<PluginDocumentSettingPanel.Slot />\n\t\t\t\t\t<LastRevision />\n\t\t\t\t\t<PostTaxonomies />\n\t\t\t\t\t<FeaturedImage />\n\t\t\t\t\t<PostExcerpt />\n\t\t\t\t\t<DiscussionPanel />\n\t\t\t\t\t<PageAttributes />\n\t\t\t\t\t<MetaBoxes location=\"side\" />\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t{ isTemplateMode && sidebarName === 'edit-post/document' && (\n\t\t\t\t<TemplateSummary />\n\t\t\t) }\n\t\t\t{ sidebarName === 'edit-post/block' && <BlockInspector /> }\n\t\t</PluginSidebarEditPost>\n\t);\n};\n\nexport default SettingsSidebar;\n"]}
|
|
@@ -5,7 +5,7 @@ import { createElement } from "@wordpress/element";
|
|
|
5
5
|
*/
|
|
6
6
|
import { Modal } from '@wordpress/components';
|
|
7
7
|
import { __ } from '@wordpress/i18n';
|
|
8
|
-
import { useState, useEffect } from '@wordpress/element';
|
|
8
|
+
import { useState, useEffect, useMemo } from '@wordpress/element';
|
|
9
9
|
import { store as blockEditorStore, __experimentalBlockPatternsList as BlockPatternsList } from '@wordpress/block-editor';
|
|
10
10
|
import { useSelect, useDispatch } from '@wordpress/data';
|
|
11
11
|
import { useAsyncList } from '@wordpress/compose';
|
|
@@ -16,20 +16,40 @@ import { store as editorStore } from '@wordpress/editor';
|
|
|
16
16
|
|
|
17
17
|
import { store as editPostStore } from '../../store';
|
|
18
18
|
|
|
19
|
-
function
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
19
|
+
function useStartPatterns() {
|
|
20
|
+
// A pattern is a start pattern if it includes 'core/post-content' in its blockTypes,
|
|
21
|
+
// and it has no postTypes declares and the current post type is page or if
|
|
22
|
+
// the current post type is part of the postTypes declared.
|
|
23
23
|
const {
|
|
24
|
-
|
|
24
|
+
blockPatternsWithPostContentBlockType,
|
|
25
|
+
postType
|
|
25
26
|
} = useSelect(select => {
|
|
26
27
|
const {
|
|
27
28
|
__experimentalGetPatternsByBlockTypes
|
|
28
29
|
} = select(blockEditorStore);
|
|
30
|
+
const {
|
|
31
|
+
getCurrentPostType
|
|
32
|
+
} = select(editorStore);
|
|
29
33
|
return {
|
|
30
|
-
|
|
34
|
+
// get pa
|
|
35
|
+
blockPatternsWithPostContentBlockType: __experimentalGetPatternsByBlockTypes('core/post-content'),
|
|
36
|
+
postType: getCurrentPostType()
|
|
31
37
|
};
|
|
32
38
|
}, []);
|
|
39
|
+
return useMemo(() => {
|
|
40
|
+
// filter patterns without postTypes declared if the current postType is page
|
|
41
|
+
// or patterns that declare the current postType in its post type array.
|
|
42
|
+
return blockPatternsWithPostContentBlockType.filter(pattern => {
|
|
43
|
+
return postType === 'page' && !pattern.postTypes || Array.isArray(pattern.postTypes) && pattern.postTypes.includes(postType);
|
|
44
|
+
});
|
|
45
|
+
}, [postType, blockPatternsWithPostContentBlockType]);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
function PatternSelection(_ref) {
|
|
49
|
+
let {
|
|
50
|
+
onChoosePattern
|
|
51
|
+
} = _ref;
|
|
52
|
+
const blockPatterns = useStartPatterns();
|
|
33
53
|
const shownBlockPatterns = useAsyncList(blockPatterns);
|
|
34
54
|
const {
|
|
35
55
|
resetEditorBlocks
|
|
@@ -51,16 +71,14 @@ const START_PAGE_MODAL_STATES = {
|
|
|
51
71
|
};
|
|
52
72
|
export default function StartPageOptions() {
|
|
53
73
|
const [modalState, setModalState] = useState(START_PAGE_MODAL_STATES.INITIAL);
|
|
74
|
+
const blockPatterns = useStartPatterns();
|
|
75
|
+
const hasStartPattern = blockPatterns.length > 0;
|
|
54
76
|
const shouldOpenModel = useSelect(select => {
|
|
55
|
-
if (modalState !== START_PAGE_MODAL_STATES.INITIAL) {
|
|
77
|
+
if (!hasStartPattern || modalState !== START_PAGE_MODAL_STATES.INITIAL) {
|
|
56
78
|
return false;
|
|
57
79
|
}
|
|
58
80
|
|
|
59
81
|
const {
|
|
60
|
-
__experimentalGetPatternsByBlockTypes
|
|
61
|
-
} = select(blockEditorStore);
|
|
62
|
-
const {
|
|
63
|
-
getCurrentPostType,
|
|
64
82
|
getEditedPostContent,
|
|
65
83
|
isEditedPostSaveable
|
|
66
84
|
} = select(editorStore);
|
|
@@ -68,8 +86,8 @@ export default function StartPageOptions() {
|
|
|
68
86
|
isEditingTemplate,
|
|
69
87
|
isFeatureActive
|
|
70
88
|
} = select(editPostStore);
|
|
71
|
-
return
|
|
72
|
-
}, [modalState]);
|
|
89
|
+
return !isEditedPostSaveable() && '' === getEditedPostContent() && !isEditingTemplate() && !isFeatureActive('welcomeGuide');
|
|
90
|
+
}, [modalState, hasStartPattern]);
|
|
73
91
|
useEffect(() => {
|
|
74
92
|
if (shouldOpenModel) {
|
|
75
93
|
setModalState(START_PAGE_MODAL_STATES.PATTERN);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-post/src/components/start-page-options/index.js"],"names":["Modal","__","useState","useEffect","store","blockEditorStore","__experimentalBlockPatternsList","BlockPatternsList","useSelect","useDispatch","useAsyncList","editorStore","editPostStore","
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-post/src/components/start-page-options/index.js"],"names":["Modal","__","useState","useEffect","useMemo","store","blockEditorStore","__experimentalBlockPatternsList","BlockPatternsList","useSelect","useDispatch","useAsyncList","editorStore","editPostStore","useStartPatterns","blockPatternsWithPostContentBlockType","postType","select","__experimentalGetPatternsByBlockTypes","getCurrentPostType","filter","pattern","postTypes","Array","isArray","includes","PatternSelection","onChoosePattern","blockPatterns","shownBlockPatterns","resetEditorBlocks","_pattern","blocks","START_PAGE_MODAL_STATES","INITIAL","PATTERN","CLOSED","StartPageOptions","modalState","setModalState","hasStartPattern","length","shouldOpenModel","getEditedPostContent","isEditedPostSaveable","isEditingTemplate","isFeatureActive"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Modal } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useEffect, useMemo } from '@wordpress/element';\nimport {\n\tstore as blockEditorStore,\n\t__experimentalBlockPatternsList as BlockPatternsList,\n} from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useAsyncList } from '@wordpress/compose';\nimport { store as editorStore } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../store';\n\nfunction useStartPatterns() {\n\t// A pattern is a start pattern if it includes 'core/post-content' in its blockTypes,\n\t// and it has no postTypes declares and the current post type is page or if\n\t// the current post type is part of the postTypes declared.\n\tconst { blockPatternsWithPostContentBlockType, postType } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { __experimentalGetPatternsByBlockTypes } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst { getCurrentPostType } = select( editorStore );\n\t\t\treturn {\n\t\t\t\t// get pa\n\t\t\t\tblockPatternsWithPostContentBlockType:\n\t\t\t\t\t__experimentalGetPatternsByBlockTypes(\n\t\t\t\t\t\t'core/post-content'\n\t\t\t\t\t),\n\t\t\t\tpostType: getCurrentPostType(),\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\treturn useMemo( () => {\n\t\t// filter patterns without postTypes declared if the current postType is page\n\t\t// or patterns that declare the current postType in its post type array.\n\t\treturn blockPatternsWithPostContentBlockType.filter( ( pattern ) => {\n\t\t\treturn (\n\t\t\t\t( postType === 'page' && ! pattern.postTypes ) ||\n\t\t\t\t( Array.isArray( pattern.postTypes ) &&\n\t\t\t\t\tpattern.postTypes.includes( postType ) )\n\t\t\t);\n\t\t} );\n\t}, [ postType, blockPatternsWithPostContentBlockType ] );\n}\n\nfunction PatternSelection( { onChoosePattern } ) {\n\tconst blockPatterns = useStartPatterns();\n\tconst shownBlockPatterns = useAsyncList( blockPatterns );\n\tconst { resetEditorBlocks } = useDispatch( editorStore );\n\treturn (\n\t\t<BlockPatternsList\n\t\t\tblockPatterns={ blockPatterns }\n\t\t\tshownPatterns={ shownBlockPatterns }\n\t\t\tonClickPattern={ ( _pattern, blocks ) => {\n\t\t\t\tresetEditorBlocks( blocks );\n\t\t\t\tonChoosePattern();\n\t\t\t} }\n\t\t/>\n\t);\n}\n\nconst START_PAGE_MODAL_STATES = {\n\tINITIAL: 'INITIAL',\n\tPATTERN: 'PATTERN',\n\tCLOSED: 'CLOSED',\n};\n\nexport default function StartPageOptions() {\n\tconst [ modalState, setModalState ] = useState(\n\t\tSTART_PAGE_MODAL_STATES.INITIAL\n\t);\n\tconst blockPatterns = useStartPatterns();\n\tconst hasStartPattern = blockPatterns.length > 0;\n\tconst shouldOpenModel = useSelect(\n\t\t( select ) => {\n\t\t\tif (\n\t\t\t\t! hasStartPattern ||\n\t\t\t\tmodalState !== START_PAGE_MODAL_STATES.INITIAL\n\t\t\t) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tconst { getEditedPostContent, isEditedPostSaveable } =\n\t\t\t\tselect( editorStore );\n\t\t\tconst { isEditingTemplate, isFeatureActive } =\n\t\t\t\tselect( editPostStore );\n\t\t\treturn (\n\t\t\t\t! isEditedPostSaveable() &&\n\t\t\t\t'' === getEditedPostContent() &&\n\t\t\t\t! isEditingTemplate() &&\n\t\t\t\t! isFeatureActive( 'welcomeGuide' )\n\t\t\t);\n\t\t},\n\t\t[ modalState, hasStartPattern ]\n\t);\n\n\tuseEffect( () => {\n\t\tif ( shouldOpenModel ) {\n\t\t\tsetModalState( START_PAGE_MODAL_STATES.PATTERN );\n\t\t}\n\t}, [ shouldOpenModel ] );\n\n\tif (\n\t\tmodalState === START_PAGE_MODAL_STATES.INITIAL ||\n\t\tmodalState === START_PAGE_MODAL_STATES.CLOSED\n\t) {\n\t\treturn null;\n\t}\n\treturn (\n\t\t<Modal\n\t\t\tclassName=\"edit-post-start-page-options__modal\"\n\t\t\ttitle={ __( 'Choose a pattern' ) }\n\t\t\tcloseLabel={ __( 'Cancel' ) }\n\t\t\tonRequestClose={ () => {\n\t\t\t\tsetModalState( START_PAGE_MODAL_STATES.CLOSED );\n\t\t\t} }\n\t\t>\n\t\t\t<div className=\"edit-post-start-page-options__modal-content\">\n\t\t\t\t{ modalState === START_PAGE_MODAL_STATES.PATTERN && (\n\t\t\t\t\t<PatternSelection\n\t\t\t\t\t\tonChoosePattern={ () => {\n\t\t\t\t\t\t\tsetModalState( START_PAGE_MODAL_STATES.CLOSED );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</Modal>\n\t);\n}\n"]}
|
|
@@ -1,13 +1,8 @@
|
|
|
1
1
|
import { createElement } from "@wordpress/element";
|
|
2
2
|
|
|
3
|
-
/**
|
|
4
|
-
* External dependencies
|
|
5
|
-
*/
|
|
6
|
-
import { noop } from 'lodash';
|
|
7
3
|
/**
|
|
8
4
|
* WordPress dependencies
|
|
9
5
|
*/
|
|
10
|
-
|
|
11
6
|
import { __ } from '@wordpress/i18n';
|
|
12
7
|
import { MenuItem } from '@wordpress/components';
|
|
13
8
|
import { useSelect, useDispatch } from '@wordpress/data';
|
|
@@ -18,6 +13,9 @@ import { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';
|
|
|
18
13
|
*/
|
|
19
14
|
|
|
20
15
|
import { store as editPostStore } from '../../store';
|
|
16
|
+
|
|
17
|
+
const noop = () => {};
|
|
18
|
+
|
|
21
19
|
export function BlockInspectorButton(_ref) {
|
|
22
20
|
let {
|
|
23
21
|
onClick = noop,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-post/src/components/visual-editor/block-inspector-button.js"],"names":["
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-post/src/components/visual-editor/block-inspector-button.js"],"names":["__","MenuItem","useSelect","useDispatch","speak","store","keyboardShortcutsStore","editPostStore","noop","BlockInspectorButton","onClick","small","shortcut","areAdvancedSettingsOpened","select","getShortcutRepresentation","getActiveGeneralSidebarName","openGeneralSidebar","closeGeneralSidebar","label"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AACA,SAASC,QAAT,QAAyB,uBAAzB;AACA,SAASC,SAAT,EAAoBC,WAApB,QAAuC,iBAAvC;AACA,SAASC,KAAT,QAAsB,iBAAtB;AACA,SAASC,KAAK,IAAIC,sBAAlB,QAAgD,+BAAhD;AAEA;AACA;AACA;;AACA,SAASD,KAAK,IAAIE,aAAlB,QAAuC,aAAvC;;AAEA,MAAMC,IAAI,GAAG,MAAM,CAAE,CAArB;;AAEA,OAAO,SAASC,oBAAT,OAAmE;AAAA,MAApC;AAAEC,IAAAA,OAAO,GAAGF,IAAZ;AAAkBG,IAAAA,KAAK,GAAG;AAA1B,GAAoC;AACzE,QAAM;AAAEC,IAAAA,QAAF;AAAYC,IAAAA;AAAZ,MAA0CX,SAAS,CACtDY,MAAF,KAAgB;AACfF,IAAAA,QAAQ,EAAEE,MAAM,CACfR,sBADe,CAAN,CAERS,yBAFQ,CAEmB,+BAFnB,CADK;AAIfF,IAAAA,yBAAyB,EACxBC,MAAM,CAAEP,aAAF,CAAN,CAAwBS,2BAAxB,OACA;AANc,GAAhB,CADwD,EASxD,EATwD,CAAzD;AAWA,QAAM;AAAEC,IAAAA,kBAAF;AAAsBC,IAAAA;AAAtB,MACLf,WAAW,CAAEI,aAAF,CADZ;AAGA,QAAMY,KAAK,GAAGN,yBAAyB,GACpCb,EAAE,CAAE,oBAAF,CADkC,GAEpCA,EAAE,CAAE,oBAAF,CAFL;AAIA,SACC,cAAC,QAAD;AACC,IAAA,OAAO,EAAG,MAAM;AACf,UAAKa,yBAAL,EAAiC;AAChCK,QAAAA,mBAAmB;AACnBd,QAAAA,KAAK,CAAEJ,EAAE,CAAE,uBAAF,CAAJ,CAAL;AACA,OAHD,MAGO;AACNiB,QAAAA,kBAAkB,CAAE,iBAAF,CAAlB;AACAb,QAAAA,KAAK,CACJJ,EAAE,CACD,4EADC,CADE,CAAL;AAKA;;AACDU,MAAAA,OAAO;AACP,KAdF;AAeC,IAAA,QAAQ,EAAGE;AAfZ,KAiBG,CAAED,KAAF,IAAWQ,KAjBd,CADD;AAqBA;AAED,eAAeV,oBAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { MenuItem } from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { speak } from '@wordpress/a11y';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../store';\n\nconst noop = () => {};\n\nexport function BlockInspectorButton( { onClick = noop, small = false } ) {\n\tconst { shortcut, areAdvancedSettingsOpened } = useSelect(\n\t\t( select ) => ( {\n\t\t\tshortcut: select(\n\t\t\t\tkeyboardShortcutsStore\n\t\t\t).getShortcutRepresentation( 'core/edit-post/toggle-sidebar' ),\n\t\t\tareAdvancedSettingsOpened:\n\t\t\t\tselect( editPostStore ).getActiveGeneralSidebarName() ===\n\t\t\t\t'edit-post/block',\n\t\t} ),\n\t\t[]\n\t);\n\tconst { openGeneralSidebar, closeGeneralSidebar } =\n\t\tuseDispatch( editPostStore );\n\n\tconst label = areAdvancedSettingsOpened\n\t\t? __( 'Hide more settings' )\n\t\t: __( 'Show more settings' );\n\n\treturn (\n\t\t<MenuItem\n\t\t\tonClick={ () => {\n\t\t\t\tif ( areAdvancedSettingsOpened ) {\n\t\t\t\t\tcloseGeneralSidebar();\n\t\t\t\t\tspeak( __( 'Block settings closed' ) );\n\t\t\t\t} else {\n\t\t\t\t\topenGeneralSidebar( 'edit-post/block' );\n\t\t\t\t\tspeak(\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'Additional settings are now available in the Editor block settings sidebar'\n\t\t\t\t\t\t)\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tonClick();\n\t\t\t} }\n\t\t\tshortcut={ shortcut }\n\t\t>\n\t\t\t{ ! small && label }\n\t\t</MenuItem>\n\t);\n}\n\nexport default BlockInspectorButton;\n"]}
|
|
@@ -214,14 +214,16 @@ export default function VisualEditor(_ref2) {
|
|
|
214
214
|
}
|
|
215
215
|
}, themeSupportsLayout && !isTemplateMode && createElement(LayoutStyle, {
|
|
216
216
|
selector: ".edit-post-visual-editor__post-title-wrapper, .block-editor-block-list__layout.is-root-container",
|
|
217
|
-
layout: defaultLayout
|
|
217
|
+
layout: defaultLayout,
|
|
218
|
+
layoutDefinitions: defaultLayout === null || defaultLayout === void 0 ? void 0 : defaultLayout.definitions
|
|
218
219
|
}), !isTemplateMode && createElement("div", {
|
|
219
220
|
className: "edit-post-visual-editor__post-title-wrapper",
|
|
220
221
|
contentEditable: false
|
|
221
222
|
}, createElement(PostTitle, {
|
|
222
223
|
ref: titleRef
|
|
223
224
|
})), createElement(RecursionProvider, null, createElement(BlockList, {
|
|
224
|
-
className: isTemplateMode ? 'wp-site-blocks' :
|
|
225
|
+
className: isTemplateMode ? 'wp-site-blocks' : 'is-layout-flow' // Ensure root level blocks receive default/flow blockGap styling rules.
|
|
226
|
+
,
|
|
225
227
|
__experimentalLayout: layout
|
|
226
228
|
}))))), createElement(__unstableBlockSettingsMenuFirstItem, null, _ref3 => {
|
|
227
229
|
let {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-post/src/components/visual-editor/index.js"],"names":["classnames","VisualEditorGlobalKeyboardShortcuts","PostTitle","store","editorStore","WritingFlow","BlockList","BlockTools","blockEditorStore","__unstableUseBlockSelectionClearer","useBlockSelectionClearer","__unstableUseTypewriter","useTypewriter","__unstableUseClipboardHandler","useClipboardHandler","__unstableUseTypingObserver","useTypingObserver","__unstableBlockSettingsMenuFirstItem","__experimentalUseResizeCanvas","useResizeCanvas","__unstableEditorStyles","EditorStyles","useSetting","__experimentalLayoutStyle","LayoutStyle","__unstableUseMouseMoveTypingReset","useMouseMoveTypingReset","__unstableIframe","Iframe","__experimentalUseNoRecursiveRenders","useNoRecursiveRenders","useEffect","useRef","useMemo","Button","__unstableMotion","motion","useSelect","useDispatch","useMergeRefs","arrowLeft","__","BlockInspectorButton","editPostStore","MaybeIframe","children","contentRef","shouldIframe","styles","assets","style","ref","flex","width","height","display","VisualEditor","deviceType","isWelcomeGuideVisible","isTemplateMode","wrapperBlockName","wrapperUniqueId","select","isFeatureActive","isEditingTemplate","__experimentalGetPreviewDeviceType","getCurrentPostId","getCurrentPostType","_isTemplateMode","_wrapperBlockName","isCleanNewPost","hasMetaBoxes","themeSupportsLayout","_settings","getSettings","supportsLayout","__unstableResolvedAssets","clearSelectedBlock","setIsEditingTemplate","desktopCanvasStyles","margin","flexFlow","background","templateModeStyles","borderRadius","border","borderBottom","resizedCanvasStyles","defaultLayout","previewMode","toLowerCase","animatedStyles","paddingBottom","blockSelectionClearerRef","RecursionProvider","layout","type","undefined","titleRef","current","focus","padding","onClose"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tVisualEditorGlobalKeyboardShortcuts,\n\tPostTitle,\n\tstore as editorStore,\n} from '@wordpress/editor';\nimport {\n\tWritingFlow,\n\tBlockList,\n\tBlockTools,\n\tstore as blockEditorStore,\n\t__unstableUseBlockSelectionClearer as useBlockSelectionClearer,\n\t__unstableUseTypewriter as useTypewriter,\n\t__unstableUseClipboardHandler as useClipboardHandler,\n\t__unstableUseTypingObserver as useTypingObserver,\n\t__unstableBlockSettingsMenuFirstItem,\n\t__experimentalUseResizeCanvas as useResizeCanvas,\n\t__unstableEditorStyles as EditorStyles,\n\tuseSetting,\n\t__experimentalLayoutStyle as LayoutStyle,\n\t__unstableUseMouseMoveTypingReset as useMouseMoveTypingReset,\n\t__unstableIframe as Iframe,\n\t__experimentalUseNoRecursiveRenders as useNoRecursiveRenders,\n} from '@wordpress/block-editor';\nimport { useEffect, useRef, useMemo } from '@wordpress/element';\nimport { Button, __unstableMotion as motion } from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useMergeRefs } from '@wordpress/compose';\nimport { arrowLeft } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BlockInspectorButton from './block-inspector-button';\nimport { store as editPostStore } from '../../store';\n\nfunction MaybeIframe( {\n\tchildren,\n\tcontentRef,\n\tshouldIframe,\n\tstyles,\n\tassets,\n\tstyle,\n} ) {\n\tconst ref = useMouseMoveTypingReset();\n\n\tif ( ! shouldIframe ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<EditorStyles styles={ styles } />\n\t\t\t\t<WritingFlow\n\t\t\t\t\tref={ contentRef }\n\t\t\t\t\tclassName=\"editor-styles-wrapper\"\n\t\t\t\t\tstyle={ { flex: '1', ...style } }\n\t\t\t\t\ttabIndex={ -1 }\n\t\t\t\t>\n\t\t\t\t\t{ children }\n\t\t\t\t</WritingFlow>\n\t\t\t</>\n\t\t);\n\t}\n\n\treturn (\n\t\t<Iframe\n\t\t\thead={ <EditorStyles styles={ styles } /> }\n\t\t\tassets={ assets }\n\t\t\tref={ ref }\n\t\t\tcontentRef={ contentRef }\n\t\t\tstyle={ { width: '100%', height: '100%', display: 'block' } }\n\t\t\tname=\"editor-canvas\"\n\t\t>\n\t\t\t{ children }\n\t\t</Iframe>\n\t);\n}\n\nexport default function VisualEditor( { styles } ) {\n\tconst {\n\t\tdeviceType,\n\t\tisWelcomeGuideVisible,\n\t\tisTemplateMode,\n\t\twrapperBlockName,\n\t\twrapperUniqueId,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tisFeatureActive,\n\t\t\tisEditingTemplate,\n\t\t\t__experimentalGetPreviewDeviceType,\n\t\t} = select( editPostStore );\n\t\tconst { getCurrentPostId, getCurrentPostType } = select( editorStore );\n\t\tconst _isTemplateMode = isEditingTemplate();\n\t\tlet _wrapperBlockName;\n\n\t\tif ( getCurrentPostType() === 'wp_block' ) {\n\t\t\t_wrapperBlockName = 'core/block';\n\t\t} else if ( ! _isTemplateMode ) {\n\t\t\t_wrapperBlockName = 'core/post-content';\n\t\t}\n\n\t\treturn {\n\t\t\tdeviceType: __experimentalGetPreviewDeviceType(),\n\t\t\tisWelcomeGuideVisible: isFeatureActive( 'welcomeGuide' ),\n\t\t\tisTemplateMode: _isTemplateMode,\n\t\t\twrapperBlockName: _wrapperBlockName,\n\t\t\twrapperUniqueId: getCurrentPostId(),\n\t\t};\n\t}, [] );\n\tconst { isCleanNewPost } = useSelect( editorStore );\n\tconst hasMetaBoxes = useSelect(\n\t\t( select ) => select( editPostStore ).hasMetaBoxes(),\n\t\t[]\n\t);\n\tconst { themeSupportsLayout, assets } = useSelect( ( select ) => {\n\t\tconst _settings = select( blockEditorStore ).getSettings();\n\t\treturn {\n\t\t\tthemeSupportsLayout: _settings.supportsLayout,\n\t\t\tassets: _settings.__unstableResolvedAssets,\n\t\t};\n\t}, [] );\n\tconst { clearSelectedBlock } = useDispatch( blockEditorStore );\n\tconst { setIsEditingTemplate } = useDispatch( editPostStore );\n\tconst desktopCanvasStyles = {\n\t\theight: '100%',\n\t\twidth: '100%',\n\t\tmargin: 0,\n\t\tdisplay: 'flex',\n\t\tflexFlow: 'column',\n\t\t// Default background color so that grey\n\t\t// .edit-post-editor-regions__content color doesn't show through.\n\t\tbackground: 'white',\n\t};\n\tconst templateModeStyles = {\n\t\t...desktopCanvasStyles,\n\t\tborderRadius: '2px 2px 0 0',\n\t\tborder: '1px solid #ddd',\n\t\tborderBottom: 0,\n\t};\n\tconst resizedCanvasStyles = useResizeCanvas( deviceType, isTemplateMode );\n\tconst defaultLayout = useSetting( 'layout' );\n\tconst previewMode = 'is-' + deviceType.toLowerCase() + '-preview';\n\n\tlet animatedStyles = isTemplateMode\n\t\t? templateModeStyles\n\t\t: desktopCanvasStyles;\n\tif ( resizedCanvasStyles ) {\n\t\tanimatedStyles = resizedCanvasStyles;\n\t}\n\n\tlet paddingBottom;\n\n\t// Add a constant padding for the typewritter effect. When typing at the\n\t// bottom, there needs to be room to scroll up.\n\tif ( ! hasMetaBoxes && ! resizedCanvasStyles && ! isTemplateMode ) {\n\t\tpaddingBottom = '40vh';\n\t}\n\n\tconst ref = useRef();\n\tconst contentRef = useMergeRefs( [\n\t\tref,\n\t\tuseClipboardHandler(),\n\t\tuseTypewriter(),\n\t\tuseTypingObserver(),\n\t\tuseBlockSelectionClearer(),\n\t] );\n\n\tconst blockSelectionClearerRef = useBlockSelectionClearer();\n\n\tconst [ , RecursionProvider ] = useNoRecursiveRenders(\n\t\twrapperUniqueId,\n\t\twrapperBlockName\n\t);\n\n\tconst layout = useMemo( () => {\n\t\tif ( isTemplateMode ) {\n\t\t\treturn { type: 'default' };\n\t\t}\n\n\t\tif ( themeSupportsLayout ) {\n\t\t\treturn defaultLayout;\n\t\t}\n\n\t\treturn undefined;\n\t}, [ isTemplateMode, themeSupportsLayout, defaultLayout ] );\n\n\tconst titleRef = useRef();\n\tuseEffect( () => {\n\t\tif ( isWelcomeGuideVisible || ! isCleanNewPost() ) {\n\t\t\treturn;\n\t\t}\n\t\ttitleRef?.current?.focus();\n\t}, [ isWelcomeGuideVisible, isCleanNewPost ] );\n\n\treturn (\n\t\t<BlockTools\n\t\t\t__unstableContentRef={ ref }\n\t\t\tclassName={ classnames( 'edit-post-visual-editor', {\n\t\t\t\t'is-template-mode': isTemplateMode,\n\t\t\t} ) }\n\t\t>\n\t\t\t<VisualEditorGlobalKeyboardShortcuts />\n\t\t\t<motion.div\n\t\t\t\tclassName=\"edit-post-visual-editor__content-area\"\n\t\t\t\tanimate={ {\n\t\t\t\t\tpadding: isTemplateMode ? '48px 48px 0' : '0',\n\t\t\t\t} }\n\t\t\t\tref={ blockSelectionClearerRef }\n\t\t\t>\n\t\t\t\t{ isTemplateMode && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName=\"edit-post-visual-editor__exit-template-mode\"\n\t\t\t\t\t\ticon={ arrowLeft }\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tclearSelectedBlock();\n\t\t\t\t\t\t\tsetIsEditingTemplate( false );\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Back' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t\t<motion.div\n\t\t\t\t\tanimate={ animatedStyles }\n\t\t\t\t\tinitial={ desktopCanvasStyles }\n\t\t\t\t\tclassName={ previewMode }\n\t\t\t\t>\n\t\t\t\t\t<MaybeIframe\n\t\t\t\t\t\tshouldIframe={\n\t\t\t\t\t\t\tisTemplateMode ||\n\t\t\t\t\t\t\tdeviceType === 'Tablet' ||\n\t\t\t\t\t\t\tdeviceType === 'Mobile'\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcontentRef={ contentRef }\n\t\t\t\t\t\tstyles={ styles }\n\t\t\t\t\t\tassets={ assets }\n\t\t\t\t\t\tstyle={ { paddingBottom } }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ themeSupportsLayout && ! isTemplateMode && (\n\t\t\t\t\t\t\t<LayoutStyle\n\t\t\t\t\t\t\t\tselector=\".edit-post-visual-editor__post-title-wrapper, .block-editor-block-list__layout.is-root-container\"\n\t\t\t\t\t\t\t\tlayout={ defaultLayout }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ ! isTemplateMode && (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tclassName=\"edit-post-visual-editor__post-title-wrapper\"\n\t\t\t\t\t\t\t\tcontentEditable={ false }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<PostTitle ref={ titleRef } />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<RecursionProvider>\n\t\t\t\t\t\t\t<BlockList\n\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\tisTemplateMode\n\t\t\t\t\t\t\t\t\t\t? 'wp-site-blocks'\n\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t__experimentalLayout={ layout }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</RecursionProvider>\n\t\t\t\t\t</MaybeIframe>\n\t\t\t\t</motion.div>\n\t\t\t</motion.div>\n\t\t\t<__unstableBlockSettingsMenuFirstItem>\n\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t<BlockInspectorButton onClick={ onClose } />\n\t\t\t\t) }\n\t\t\t</__unstableBlockSettingsMenuFirstItem>\n\t\t</BlockTools>\n\t);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-post/src/components/visual-editor/index.js"],"names":["classnames","VisualEditorGlobalKeyboardShortcuts","PostTitle","store","editorStore","WritingFlow","BlockList","BlockTools","blockEditorStore","__unstableUseBlockSelectionClearer","useBlockSelectionClearer","__unstableUseTypewriter","useTypewriter","__unstableUseClipboardHandler","useClipboardHandler","__unstableUseTypingObserver","useTypingObserver","__unstableBlockSettingsMenuFirstItem","__experimentalUseResizeCanvas","useResizeCanvas","__unstableEditorStyles","EditorStyles","useSetting","__experimentalLayoutStyle","LayoutStyle","__unstableUseMouseMoveTypingReset","useMouseMoveTypingReset","__unstableIframe","Iframe","__experimentalUseNoRecursiveRenders","useNoRecursiveRenders","useEffect","useRef","useMemo","Button","__unstableMotion","motion","useSelect","useDispatch","useMergeRefs","arrowLeft","__","BlockInspectorButton","editPostStore","MaybeIframe","children","contentRef","shouldIframe","styles","assets","style","ref","flex","width","height","display","VisualEditor","deviceType","isWelcomeGuideVisible","isTemplateMode","wrapperBlockName","wrapperUniqueId","select","isFeatureActive","isEditingTemplate","__experimentalGetPreviewDeviceType","getCurrentPostId","getCurrentPostType","_isTemplateMode","_wrapperBlockName","isCleanNewPost","hasMetaBoxes","themeSupportsLayout","_settings","getSettings","supportsLayout","__unstableResolvedAssets","clearSelectedBlock","setIsEditingTemplate","desktopCanvasStyles","margin","flexFlow","background","templateModeStyles","borderRadius","border","borderBottom","resizedCanvasStyles","defaultLayout","previewMode","toLowerCase","animatedStyles","paddingBottom","blockSelectionClearerRef","RecursionProvider","layout","type","undefined","titleRef","current","focus","padding","definitions","onClose"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tVisualEditorGlobalKeyboardShortcuts,\n\tPostTitle,\n\tstore as editorStore,\n} from '@wordpress/editor';\nimport {\n\tWritingFlow,\n\tBlockList,\n\tBlockTools,\n\tstore as blockEditorStore,\n\t__unstableUseBlockSelectionClearer as useBlockSelectionClearer,\n\t__unstableUseTypewriter as useTypewriter,\n\t__unstableUseClipboardHandler as useClipboardHandler,\n\t__unstableUseTypingObserver as useTypingObserver,\n\t__unstableBlockSettingsMenuFirstItem,\n\t__experimentalUseResizeCanvas as useResizeCanvas,\n\t__unstableEditorStyles as EditorStyles,\n\tuseSetting,\n\t__experimentalLayoutStyle as LayoutStyle,\n\t__unstableUseMouseMoveTypingReset as useMouseMoveTypingReset,\n\t__unstableIframe as Iframe,\n\t__experimentalUseNoRecursiveRenders as useNoRecursiveRenders,\n} from '@wordpress/block-editor';\nimport { useEffect, useRef, useMemo } from '@wordpress/element';\nimport { Button, __unstableMotion as motion } from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useMergeRefs } from '@wordpress/compose';\nimport { arrowLeft } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BlockInspectorButton from './block-inspector-button';\nimport { store as editPostStore } from '../../store';\n\nfunction MaybeIframe( {\n\tchildren,\n\tcontentRef,\n\tshouldIframe,\n\tstyles,\n\tassets,\n\tstyle,\n} ) {\n\tconst ref = useMouseMoveTypingReset();\n\n\tif ( ! shouldIframe ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<EditorStyles styles={ styles } />\n\t\t\t\t<WritingFlow\n\t\t\t\t\tref={ contentRef }\n\t\t\t\t\tclassName=\"editor-styles-wrapper\"\n\t\t\t\t\tstyle={ { flex: '1', ...style } }\n\t\t\t\t\ttabIndex={ -1 }\n\t\t\t\t>\n\t\t\t\t\t{ children }\n\t\t\t\t</WritingFlow>\n\t\t\t</>\n\t\t);\n\t}\n\n\treturn (\n\t\t<Iframe\n\t\t\thead={ <EditorStyles styles={ styles } /> }\n\t\t\tassets={ assets }\n\t\t\tref={ ref }\n\t\t\tcontentRef={ contentRef }\n\t\t\tstyle={ { width: '100%', height: '100%', display: 'block' } }\n\t\t\tname=\"editor-canvas\"\n\t\t>\n\t\t\t{ children }\n\t\t</Iframe>\n\t);\n}\n\nexport default function VisualEditor( { styles } ) {\n\tconst {\n\t\tdeviceType,\n\t\tisWelcomeGuideVisible,\n\t\tisTemplateMode,\n\t\twrapperBlockName,\n\t\twrapperUniqueId,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tisFeatureActive,\n\t\t\tisEditingTemplate,\n\t\t\t__experimentalGetPreviewDeviceType,\n\t\t} = select( editPostStore );\n\t\tconst { getCurrentPostId, getCurrentPostType } = select( editorStore );\n\t\tconst _isTemplateMode = isEditingTemplate();\n\t\tlet _wrapperBlockName;\n\n\t\tif ( getCurrentPostType() === 'wp_block' ) {\n\t\t\t_wrapperBlockName = 'core/block';\n\t\t} else if ( ! _isTemplateMode ) {\n\t\t\t_wrapperBlockName = 'core/post-content';\n\t\t}\n\n\t\treturn {\n\t\t\tdeviceType: __experimentalGetPreviewDeviceType(),\n\t\t\tisWelcomeGuideVisible: isFeatureActive( 'welcomeGuide' ),\n\t\t\tisTemplateMode: _isTemplateMode,\n\t\t\twrapperBlockName: _wrapperBlockName,\n\t\t\twrapperUniqueId: getCurrentPostId(),\n\t\t};\n\t}, [] );\n\tconst { isCleanNewPost } = useSelect( editorStore );\n\tconst hasMetaBoxes = useSelect(\n\t\t( select ) => select( editPostStore ).hasMetaBoxes(),\n\t\t[]\n\t);\n\tconst { themeSupportsLayout, assets } = useSelect( ( select ) => {\n\t\tconst _settings = select( blockEditorStore ).getSettings();\n\t\treturn {\n\t\t\tthemeSupportsLayout: _settings.supportsLayout,\n\t\t\tassets: _settings.__unstableResolvedAssets,\n\t\t};\n\t}, [] );\n\tconst { clearSelectedBlock } = useDispatch( blockEditorStore );\n\tconst { setIsEditingTemplate } = useDispatch( editPostStore );\n\tconst desktopCanvasStyles = {\n\t\theight: '100%',\n\t\twidth: '100%',\n\t\tmargin: 0,\n\t\tdisplay: 'flex',\n\t\tflexFlow: 'column',\n\t\t// Default background color so that grey\n\t\t// .edit-post-editor-regions__content color doesn't show through.\n\t\tbackground: 'white',\n\t};\n\tconst templateModeStyles = {\n\t\t...desktopCanvasStyles,\n\t\tborderRadius: '2px 2px 0 0',\n\t\tborder: '1px solid #ddd',\n\t\tborderBottom: 0,\n\t};\n\tconst resizedCanvasStyles = useResizeCanvas( deviceType, isTemplateMode );\n\tconst defaultLayout = useSetting( 'layout' );\n\tconst previewMode = 'is-' + deviceType.toLowerCase() + '-preview';\n\n\tlet animatedStyles = isTemplateMode\n\t\t? templateModeStyles\n\t\t: desktopCanvasStyles;\n\tif ( resizedCanvasStyles ) {\n\t\tanimatedStyles = resizedCanvasStyles;\n\t}\n\n\tlet paddingBottom;\n\n\t// Add a constant padding for the typewritter effect. When typing at the\n\t// bottom, there needs to be room to scroll up.\n\tif ( ! hasMetaBoxes && ! resizedCanvasStyles && ! isTemplateMode ) {\n\t\tpaddingBottom = '40vh';\n\t}\n\n\tconst ref = useRef();\n\tconst contentRef = useMergeRefs( [\n\t\tref,\n\t\tuseClipboardHandler(),\n\t\tuseTypewriter(),\n\t\tuseTypingObserver(),\n\t\tuseBlockSelectionClearer(),\n\t] );\n\n\tconst blockSelectionClearerRef = useBlockSelectionClearer();\n\n\tconst [ , RecursionProvider ] = useNoRecursiveRenders(\n\t\twrapperUniqueId,\n\t\twrapperBlockName\n\t);\n\n\tconst layout = useMemo( () => {\n\t\tif ( isTemplateMode ) {\n\t\t\treturn { type: 'default' };\n\t\t}\n\n\t\tif ( themeSupportsLayout ) {\n\t\t\treturn defaultLayout;\n\t\t}\n\n\t\treturn undefined;\n\t}, [ isTemplateMode, themeSupportsLayout, defaultLayout ] );\n\n\tconst titleRef = useRef();\n\tuseEffect( () => {\n\t\tif ( isWelcomeGuideVisible || ! isCleanNewPost() ) {\n\t\t\treturn;\n\t\t}\n\t\ttitleRef?.current?.focus();\n\t}, [ isWelcomeGuideVisible, isCleanNewPost ] );\n\n\treturn (\n\t\t<BlockTools\n\t\t\t__unstableContentRef={ ref }\n\t\t\tclassName={ classnames( 'edit-post-visual-editor', {\n\t\t\t\t'is-template-mode': isTemplateMode,\n\t\t\t} ) }\n\t\t>\n\t\t\t<VisualEditorGlobalKeyboardShortcuts />\n\t\t\t<motion.div\n\t\t\t\tclassName=\"edit-post-visual-editor__content-area\"\n\t\t\t\tanimate={ {\n\t\t\t\t\tpadding: isTemplateMode ? '48px 48px 0' : '0',\n\t\t\t\t} }\n\t\t\t\tref={ blockSelectionClearerRef }\n\t\t\t>\n\t\t\t\t{ isTemplateMode && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName=\"edit-post-visual-editor__exit-template-mode\"\n\t\t\t\t\t\ticon={ arrowLeft }\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tclearSelectedBlock();\n\t\t\t\t\t\t\tsetIsEditingTemplate( false );\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Back' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t\t<motion.div\n\t\t\t\t\tanimate={ animatedStyles }\n\t\t\t\t\tinitial={ desktopCanvasStyles }\n\t\t\t\t\tclassName={ previewMode }\n\t\t\t\t>\n\t\t\t\t\t<MaybeIframe\n\t\t\t\t\t\tshouldIframe={\n\t\t\t\t\t\t\tisTemplateMode ||\n\t\t\t\t\t\t\tdeviceType === 'Tablet' ||\n\t\t\t\t\t\t\tdeviceType === 'Mobile'\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcontentRef={ contentRef }\n\t\t\t\t\t\tstyles={ styles }\n\t\t\t\t\t\tassets={ assets }\n\t\t\t\t\t\tstyle={ { paddingBottom } }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ themeSupportsLayout && ! isTemplateMode && (\n\t\t\t\t\t\t\t<LayoutStyle\n\t\t\t\t\t\t\t\tselector=\".edit-post-visual-editor__post-title-wrapper, .block-editor-block-list__layout.is-root-container\"\n\t\t\t\t\t\t\t\tlayout={ defaultLayout }\n\t\t\t\t\t\t\t\tlayoutDefinitions={ defaultLayout?.definitions }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ ! isTemplateMode && (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tclassName=\"edit-post-visual-editor__post-title-wrapper\"\n\t\t\t\t\t\t\t\tcontentEditable={ false }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<PostTitle ref={ titleRef } />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<RecursionProvider>\n\t\t\t\t\t\t\t<BlockList\n\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\tisTemplateMode\n\t\t\t\t\t\t\t\t\t\t? 'wp-site-blocks'\n\t\t\t\t\t\t\t\t\t\t: 'is-layout-flow' // Ensure root level blocks receive default/flow blockGap styling rules.\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t__experimentalLayout={ layout }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</RecursionProvider>\n\t\t\t\t\t</MaybeIframe>\n\t\t\t\t</motion.div>\n\t\t\t</motion.div>\n\t\t\t<__unstableBlockSettingsMenuFirstItem>\n\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t<BlockInspectorButton onClick={ onClose } />\n\t\t\t\t) }\n\t\t\t</__unstableBlockSettingsMenuFirstItem>\n\t\t</BlockTools>\n\t);\n}\n"]}
|
package/build-module/editor.js
CHANGED
|
@@ -4,7 +4,7 @@ import { createElement } from "@wordpress/element";
|
|
|
4
4
|
/**
|
|
5
5
|
* External dependencies
|
|
6
6
|
*/
|
|
7
|
-
import { forEach,
|
|
7
|
+
import { forEach, map, without } from 'lodash';
|
|
8
8
|
/**
|
|
9
9
|
* WordPress dependencies
|
|
10
10
|
*/
|
|
@@ -118,7 +118,7 @@ function Editor(_ref) {
|
|
|
118
118
|
defaultAllowedBlockTypes: settings.allowedBlockTypes
|
|
119
119
|
}; // Omit hidden block types if exists and non-empty.
|
|
120
120
|
|
|
121
|
-
if (
|
|
121
|
+
if (hiddenBlockTypes.length > 0) {
|
|
122
122
|
// Defer to passed setting for `allowedBlockTypes` if provided as
|
|
123
123
|
// anything other than `true` (where `true` is equivalent to allow
|
|
124
124
|
// all block types).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-post/src/editor.js"],"names":["forEach","size","map","without","store","blocksStore","useSelect","useDispatch","EditorProvider","ErrorBoundary","PostLockedModal","editorStore","StrictMode","useMemo","SlotFillProvider","coreStore","ShortcutProvider","preferencesStore","Layout","EditorInitialization","editPostStore","Editor","postId","postType","settings","initialEdits","onError","props","hasFixedToolbar","focusMode","hasReducedUI","hasThemeStyles","post","preferredStyleVariations","hiddenBlockTypes","blockTypes","keepCaretInsideBlock","isTemplateMode","template","select","isFeatureActive","__experimentalGetPreviewDeviceType","isEditingTemplate","getEditedPostTemplate","getHiddenBlockTypes","getEntityRecord","getPostType","getEntityRecords","getEditorSettings","getBlockTypes","isTemplate","includes","postObject","posts","wp_id","supportsTemplateMode","isViewable","viewable","get","updatePreferredStyleVariations","setIsInserterOpened","editorSettings","result","__experimentalPreferredStyleVariations","value","onChange","__experimentalSetIsInserterOpened","defaultAllowedBlockTypes","allowedBlockTypes","styles","themeStyles","presetStyles","style","__unstableType","push","defaultEditorStyles","length","undefined"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { forEach, size, map, without } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { store as blocksStore } from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tEditorProvider,\n\tErrorBoundary,\n\tPostLockedModal,\n\tstore as editorStore,\n} from '@wordpress/editor';\nimport { StrictMode, useMemo } from '@wordpress/element';\nimport { SlotFillProvider } from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { ShortcutProvider } from '@wordpress/keyboard-shortcuts';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Internal dependencies\n */\nimport Layout from './components/layout';\nimport EditorInitialization from './components/editor-initialization';\nimport { store as editPostStore } from './store';\n\nfunction Editor( {\n\tpostId,\n\tpostType,\n\tsettings,\n\tinitialEdits,\n\tonError,\n\t...props\n} ) {\n\tconst {\n\t\thasFixedToolbar,\n\t\tfocusMode,\n\t\thasReducedUI,\n\t\thasThemeStyles,\n\t\tpost,\n\t\tpreferredStyleVariations,\n\t\thiddenBlockTypes,\n\t\tblockTypes,\n\t\tkeepCaretInsideBlock,\n\t\tisTemplateMode,\n\t\ttemplate,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tisFeatureActive,\n\t\t\t\t__experimentalGetPreviewDeviceType,\n\t\t\t\tisEditingTemplate,\n\t\t\t\tgetEditedPostTemplate,\n\t\t\t\tgetHiddenBlockTypes,\n\t\t\t} = select( editPostStore );\n\t\t\tconst { getEntityRecord, getPostType, getEntityRecords } = select(\n\t\t\t\tcoreStore\n\t\t\t);\n\t\t\tconst { getEditorSettings } = select( editorStore );\n\t\t\tconst { getBlockTypes } = select( blocksStore );\n\t\t\tconst isTemplate = [ 'wp_template', 'wp_template_part' ].includes(\n\t\t\t\tpostType\n\t\t\t);\n\t\t\t// Ideally the initializeEditor function should be called using the ID of the REST endpoint.\n\t\t\t// to avoid the special case.\n\t\t\tlet postObject;\n\t\t\tif ( isTemplate ) {\n\t\t\t\tconst posts = getEntityRecords( 'postType', postType, {\n\t\t\t\t\twp_id: postId,\n\t\t\t\t} );\n\t\t\t\tpostObject = posts?.[ 0 ];\n\t\t\t} else {\n\t\t\t\tpostObject = getEntityRecord( 'postType', postType, postId );\n\t\t\t}\n\t\t\tconst supportsTemplateMode = getEditorSettings()\n\t\t\t\t.supportsTemplateMode;\n\t\t\tconst isViewable = getPostType( postType )?.viewable ?? false;\n\n\t\t\treturn {\n\t\t\t\thasFixedToolbar:\n\t\t\t\t\tisFeatureActive( 'fixedToolbar' ) ||\n\t\t\t\t\t__experimentalGetPreviewDeviceType() !== 'Desktop',\n\t\t\t\tfocusMode: isFeatureActive( 'focusMode' ),\n\t\t\t\thasReducedUI: isFeatureActive( 'reducedUI' ),\n\t\t\t\thasThemeStyles: isFeatureActive( 'themeStyles' ),\n\t\t\t\tpreferredStyleVariations: select( preferencesStore ).get(\n\t\t\t\t\t'core/edit-post',\n\t\t\t\t\t'preferredStyleVariations'\n\t\t\t\t),\n\t\t\t\thiddenBlockTypes: getHiddenBlockTypes(),\n\t\t\t\tblockTypes: getBlockTypes(),\n\t\t\t\tkeepCaretInsideBlock: isFeatureActive( 'keepCaretInsideBlock' ),\n\t\t\t\tisTemplateMode: isEditingTemplate(),\n\t\t\t\ttemplate:\n\t\t\t\t\tsupportsTemplateMode && isViewable\n\t\t\t\t\t\t? getEditedPostTemplate()\n\t\t\t\t\t\t: null,\n\t\t\t\tpost: postObject,\n\t\t\t};\n\t\t},\n\t\t[ postType, postId ]\n\t);\n\n\tconst { updatePreferredStyleVariations, setIsInserterOpened } = useDispatch(\n\t\teditPostStore\n\t);\n\n\tconst editorSettings = useMemo( () => {\n\t\tconst result = {\n\t\t\t...settings,\n\t\t\t__experimentalPreferredStyleVariations: {\n\t\t\t\tvalue: preferredStyleVariations,\n\t\t\t\tonChange: updatePreferredStyleVariations,\n\t\t\t},\n\t\t\thasFixedToolbar,\n\t\t\tfocusMode,\n\t\t\thasReducedUI,\n\n\t\t\t// This is marked as experimental to give time for the quick inserter to mature.\n\t\t\t__experimentalSetIsInserterOpened: setIsInserterOpened,\n\t\t\tkeepCaretInsideBlock,\n\t\t\t// Keep a reference of the `allowedBlockTypes` from the server to handle use cases\n\t\t\t// where we need to differentiate if a block is disabled by the user or some plugin.\n\t\t\tdefaultAllowedBlockTypes: settings.allowedBlockTypes,\n\t\t};\n\n\t\t// Omit hidden block types if exists and non-empty.\n\t\tif ( size( hiddenBlockTypes ) > 0 ) {\n\t\t\t// Defer to passed setting for `allowedBlockTypes` if provided as\n\t\t\t// anything other than `true` (where `true` is equivalent to allow\n\t\t\t// all block types).\n\t\t\tconst defaultAllowedBlockTypes =\n\t\t\t\ttrue === settings.allowedBlockTypes\n\t\t\t\t\t? map( blockTypes, 'name' )\n\t\t\t\t\t: settings.allowedBlockTypes || [];\n\n\t\t\tresult.allowedBlockTypes = without(\n\t\t\t\tdefaultAllowedBlockTypes,\n\t\t\t\t...hiddenBlockTypes\n\t\t\t);\n\t\t}\n\n\t\treturn result;\n\t}, [\n\t\tsettings,\n\t\thasFixedToolbar,\n\t\tfocusMode,\n\t\thasReducedUI,\n\t\thiddenBlockTypes,\n\t\tblockTypes,\n\t\tpreferredStyleVariations,\n\t\tsetIsInserterOpened,\n\t\tupdatePreferredStyleVariations,\n\t\tkeepCaretInsideBlock,\n\t] );\n\n\tconst styles = useMemo( () => {\n\t\tconst themeStyles = [];\n\t\tconst presetStyles = [];\n\t\tforEach( settings.styles, ( style ) => {\n\t\t\tif ( ! style.__unstableType || style.__unstableType === 'theme' ) {\n\t\t\t\tthemeStyles.push( style );\n\t\t\t} else {\n\t\t\t\tpresetStyles.push( style );\n\t\t\t}\n\t\t} );\n\t\tconst defaultEditorStyles = [\n\t\t\t...settings.defaultEditorStyles,\n\t\t\t...presetStyles,\n\t\t];\n\t\treturn hasThemeStyles && themeStyles.length\n\t\t\t? settings.styles\n\t\t\t: defaultEditorStyles;\n\t}, [ settings, hasThemeStyles ] );\n\n\tif ( ! post ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<StrictMode>\n\t\t\t<ShortcutProvider>\n\t\t\t\t<SlotFillProvider>\n\t\t\t\t\t<EditorProvider\n\t\t\t\t\t\tsettings={ editorSettings }\n\t\t\t\t\t\tpost={ post }\n\t\t\t\t\t\tinitialEdits={ initialEdits }\n\t\t\t\t\t\tuseSubRegistry={ false }\n\t\t\t\t\t\t__unstableTemplate={\n\t\t\t\t\t\t\tisTemplateMode ? template : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\t{ ...props }\n\t\t\t\t\t>\n\t\t\t\t\t\t<ErrorBoundary onError={ onError }>\n\t\t\t\t\t\t\t<EditorInitialization postId={ postId } />\n\t\t\t\t\t\t\t<Layout styles={ styles } />\n\t\t\t\t\t\t</ErrorBoundary>\n\t\t\t\t\t\t<PostLockedModal />\n\t\t\t\t\t</EditorProvider>\n\t\t\t\t</SlotFillProvider>\n\t\t\t</ShortcutProvider>\n\t\t</StrictMode>\n\t);\n}\n\nexport default Editor;\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-post/src/editor.js"],"names":["forEach","map","without","store","blocksStore","useSelect","useDispatch","EditorProvider","ErrorBoundary","PostLockedModal","editorStore","StrictMode","useMemo","SlotFillProvider","coreStore","ShortcutProvider","preferencesStore","Layout","EditorInitialization","editPostStore","Editor","postId","postType","settings","initialEdits","onError","props","hasFixedToolbar","focusMode","hasReducedUI","hasThemeStyles","post","preferredStyleVariations","hiddenBlockTypes","blockTypes","keepCaretInsideBlock","isTemplateMode","template","select","isFeatureActive","__experimentalGetPreviewDeviceType","isEditingTemplate","getEditedPostTemplate","getHiddenBlockTypes","getEntityRecord","getPostType","getEntityRecords","getEditorSettings","getBlockTypes","isTemplate","includes","postObject","posts","wp_id","supportsTemplateMode","isViewable","viewable","get","updatePreferredStyleVariations","setIsInserterOpened","editorSettings","result","__experimentalPreferredStyleVariations","value","onChange","__experimentalSetIsInserterOpened","defaultAllowedBlockTypes","allowedBlockTypes","length","styles","themeStyles","presetStyles","style","__unstableType","push","defaultEditorStyles","undefined"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { forEach, map, without } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { store as blocksStore } from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tEditorProvider,\n\tErrorBoundary,\n\tPostLockedModal,\n\tstore as editorStore,\n} from '@wordpress/editor';\nimport { StrictMode, useMemo } from '@wordpress/element';\nimport { SlotFillProvider } from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { ShortcutProvider } from '@wordpress/keyboard-shortcuts';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Internal dependencies\n */\nimport Layout from './components/layout';\nimport EditorInitialization from './components/editor-initialization';\nimport { store as editPostStore } from './store';\n\nfunction Editor( {\n\tpostId,\n\tpostType,\n\tsettings,\n\tinitialEdits,\n\tonError,\n\t...props\n} ) {\n\tconst {\n\t\thasFixedToolbar,\n\t\tfocusMode,\n\t\thasReducedUI,\n\t\thasThemeStyles,\n\t\tpost,\n\t\tpreferredStyleVariations,\n\t\thiddenBlockTypes,\n\t\tblockTypes,\n\t\tkeepCaretInsideBlock,\n\t\tisTemplateMode,\n\t\ttemplate,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tisFeatureActive,\n\t\t\t\t__experimentalGetPreviewDeviceType,\n\t\t\t\tisEditingTemplate,\n\t\t\t\tgetEditedPostTemplate,\n\t\t\t\tgetHiddenBlockTypes,\n\t\t\t} = select( editPostStore );\n\t\t\tconst { getEntityRecord, getPostType, getEntityRecords } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst { getEditorSettings } = select( editorStore );\n\t\t\tconst { getBlockTypes } = select( blocksStore );\n\t\t\tconst isTemplate = [ 'wp_template', 'wp_template_part' ].includes(\n\t\t\t\tpostType\n\t\t\t);\n\t\t\t// Ideally the initializeEditor function should be called using the ID of the REST endpoint.\n\t\t\t// to avoid the special case.\n\t\t\tlet postObject;\n\t\t\tif ( isTemplate ) {\n\t\t\t\tconst posts = getEntityRecords( 'postType', postType, {\n\t\t\t\t\twp_id: postId,\n\t\t\t\t} );\n\t\t\t\tpostObject = posts?.[ 0 ];\n\t\t\t} else {\n\t\t\t\tpostObject = getEntityRecord( 'postType', postType, postId );\n\t\t\t}\n\t\t\tconst supportsTemplateMode =\n\t\t\t\tgetEditorSettings().supportsTemplateMode;\n\t\t\tconst isViewable = getPostType( postType )?.viewable ?? false;\n\n\t\t\treturn {\n\t\t\t\thasFixedToolbar:\n\t\t\t\t\tisFeatureActive( 'fixedToolbar' ) ||\n\t\t\t\t\t__experimentalGetPreviewDeviceType() !== 'Desktop',\n\t\t\t\tfocusMode: isFeatureActive( 'focusMode' ),\n\t\t\t\thasReducedUI: isFeatureActive( 'reducedUI' ),\n\t\t\t\thasThemeStyles: isFeatureActive( 'themeStyles' ),\n\t\t\t\tpreferredStyleVariations: select( preferencesStore ).get(\n\t\t\t\t\t'core/edit-post',\n\t\t\t\t\t'preferredStyleVariations'\n\t\t\t\t),\n\t\t\t\thiddenBlockTypes: getHiddenBlockTypes(),\n\t\t\t\tblockTypes: getBlockTypes(),\n\t\t\t\tkeepCaretInsideBlock: isFeatureActive( 'keepCaretInsideBlock' ),\n\t\t\t\tisTemplateMode: isEditingTemplate(),\n\t\t\t\ttemplate:\n\t\t\t\t\tsupportsTemplateMode && isViewable\n\t\t\t\t\t\t? getEditedPostTemplate()\n\t\t\t\t\t\t: null,\n\t\t\t\tpost: postObject,\n\t\t\t};\n\t\t},\n\t\t[ postType, postId ]\n\t);\n\n\tconst { updatePreferredStyleVariations, setIsInserterOpened } =\n\t\tuseDispatch( editPostStore );\n\n\tconst editorSettings = useMemo( () => {\n\t\tconst result = {\n\t\t\t...settings,\n\t\t\t__experimentalPreferredStyleVariations: {\n\t\t\t\tvalue: preferredStyleVariations,\n\t\t\t\tonChange: updatePreferredStyleVariations,\n\t\t\t},\n\t\t\thasFixedToolbar,\n\t\t\tfocusMode,\n\t\t\thasReducedUI,\n\n\t\t\t// This is marked as experimental to give time for the quick inserter to mature.\n\t\t\t__experimentalSetIsInserterOpened: setIsInserterOpened,\n\t\t\tkeepCaretInsideBlock,\n\t\t\t// Keep a reference of the `allowedBlockTypes` from the server to handle use cases\n\t\t\t// where we need to differentiate if a block is disabled by the user or some plugin.\n\t\t\tdefaultAllowedBlockTypes: settings.allowedBlockTypes,\n\t\t};\n\n\t\t// Omit hidden block types if exists and non-empty.\n\t\tif ( hiddenBlockTypes.length > 0 ) {\n\t\t\t// Defer to passed setting for `allowedBlockTypes` if provided as\n\t\t\t// anything other than `true` (where `true` is equivalent to allow\n\t\t\t// all block types).\n\t\t\tconst defaultAllowedBlockTypes =\n\t\t\t\ttrue === settings.allowedBlockTypes\n\t\t\t\t\t? map( blockTypes, 'name' )\n\t\t\t\t\t: settings.allowedBlockTypes || [];\n\n\t\t\tresult.allowedBlockTypes = without(\n\t\t\t\tdefaultAllowedBlockTypes,\n\t\t\t\t...hiddenBlockTypes\n\t\t\t);\n\t\t}\n\n\t\treturn result;\n\t}, [\n\t\tsettings,\n\t\thasFixedToolbar,\n\t\tfocusMode,\n\t\thasReducedUI,\n\t\thiddenBlockTypes,\n\t\tblockTypes,\n\t\tpreferredStyleVariations,\n\t\tsetIsInserterOpened,\n\t\tupdatePreferredStyleVariations,\n\t\tkeepCaretInsideBlock,\n\t] );\n\n\tconst styles = useMemo( () => {\n\t\tconst themeStyles = [];\n\t\tconst presetStyles = [];\n\t\tforEach( settings.styles, ( style ) => {\n\t\t\tif ( ! style.__unstableType || style.__unstableType === 'theme' ) {\n\t\t\t\tthemeStyles.push( style );\n\t\t\t} else {\n\t\t\t\tpresetStyles.push( style );\n\t\t\t}\n\t\t} );\n\t\tconst defaultEditorStyles = [\n\t\t\t...settings.defaultEditorStyles,\n\t\t\t...presetStyles,\n\t\t];\n\t\treturn hasThemeStyles && themeStyles.length\n\t\t\t? settings.styles\n\t\t\t: defaultEditorStyles;\n\t}, [ settings, hasThemeStyles ] );\n\n\tif ( ! post ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<StrictMode>\n\t\t\t<ShortcutProvider>\n\t\t\t\t<SlotFillProvider>\n\t\t\t\t\t<EditorProvider\n\t\t\t\t\t\tsettings={ editorSettings }\n\t\t\t\t\t\tpost={ post }\n\t\t\t\t\t\tinitialEdits={ initialEdits }\n\t\t\t\t\t\tuseSubRegistry={ false }\n\t\t\t\t\t\t__unstableTemplate={\n\t\t\t\t\t\t\tisTemplateMode ? template : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\t{ ...props }\n\t\t\t\t\t>\n\t\t\t\t\t\t<ErrorBoundary onError={ onError }>\n\t\t\t\t\t\t\t<EditorInitialization postId={ postId } />\n\t\t\t\t\t\t\t<Layout styles={ styles } />\n\t\t\t\t\t\t</ErrorBoundary>\n\t\t\t\t\t\t<PostLockedModal />\n\t\t\t\t\t</EditorProvider>\n\t\t\t\t</SlotFillProvider>\n\t\t\t</ShortcutProvider>\n\t\t</StrictMode>\n\t);\n}\n\nexport default Editor;\n"]}
|
|
@@ -5,7 +5,7 @@ import { createElement } from "@wordpress/element";
|
|
|
5
5
|
* External dependencies
|
|
6
6
|
*/
|
|
7
7
|
import memize from 'memize';
|
|
8
|
-
import {
|
|
8
|
+
import { map, without } from 'lodash';
|
|
9
9
|
import { I18nManager } from 'react-native';
|
|
10
10
|
/**
|
|
11
11
|
* WordPress dependencies
|
|
@@ -54,7 +54,7 @@ class Editor extends Component {
|
|
|
54
54
|
focusMode
|
|
55
55
|
}; // Omit hidden block types if exists and non-empty.
|
|
56
56
|
|
|
57
|
-
if (
|
|
57
|
+
if (hiddenBlockTypes.length > 0) {
|
|
58
58
|
if (settings.allowedBlockTypes === undefined) {
|
|
59
59
|
// If no specific flags for allowedBlockTypes are set, assume `true`
|
|
60
60
|
// meaning allow all block types.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-post/src/editor.native.js"],"names":["memize","size","map","without","I18nManager","Component","EditorProvider","parse","serialize","store","blocksStore","withDispatch","withSelect","compose","subscribeSetFocusOnTitle","subscribeFeaturedImageIdNativeUpdated","SlotFillProvider","coreStore","Layout","editPostStore","Editor","constructor","props","arguments","galleryWithImageBlocks","window","wp","galleryBlockV2Enabled","initialHtmlModeEnabled","mode","switchEditorMode","getEditorSettings","maxSize","setTitleRef","bind","settings","hasFixedToolbar","focusMode","hiddenBlockTypes","blockTypes","isRTL","allowedBlockTypes","undefined","defaultAllowedBlockTypes","componentDidMount","editEntityRecord","postType","postId","subscriptionParentSetFocusOnTitle","postTitleRef","focus","focusTitleWhenAvailable","subscriptionParentFeaturedImageIdNativeUpdated","payload","featured_media","featuredImageId","undoIgnore","componentWillUnmount","remove","titleRef","render","initialEdits","post","initialHtml","editorSettings","normalizedPost","id","title","raw","initialTitle","content","type","status","meta","select","isFeatureActive","getEditorMode","__experimentalGetPreviewDeviceType","getHiddenBlockTypes","getBlockTypes","dispatch"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport memize from 'memize';\nimport { size, map, without } from 'lodash';\nimport { I18nManager } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { Component } from '@wordpress/element';\nimport { EditorProvider } from '@wordpress/editor';\nimport { parse, serialize, store as blocksStore } from '@wordpress/blocks';\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport { compose } from '@wordpress/compose';\nimport {\n\tsubscribeSetFocusOnTitle,\n\tsubscribeFeaturedImageIdNativeUpdated,\n} from '@wordpress/react-native-bridge';\nimport { SlotFillProvider } from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport Layout from './components/layout';\nimport { store as editPostStore } from './store';\n\nclass Editor extends Component {\n\tconstructor( props ) {\n\t\tsuper( ...arguments );\n\n\t\t// need to set this globally to avoid race with deprecations\n\t\t// defaulting to true to avoid issues with a not-yet-cached value\n\t\tconst { galleryWithImageBlocks = true } = props;\n\t\twindow.wp.galleryBlockV2Enabled = galleryWithImageBlocks;\n\n\t\tif ( props.initialHtmlModeEnabled && props.mode === 'visual' ) {\n\t\t\t// Enable html mode if the initial mode the parent wants it but we're not already in it.\n\t\t\tthis.props.switchEditorMode( 'text' );\n\t\t}\n\n\t\tthis.getEditorSettings = memize( this.getEditorSettings, {\n\t\t\tmaxSize: 1,\n\t\t} );\n\n\t\tthis.setTitleRef = this.setTitleRef.bind( this );\n\t}\n\n\tgetEditorSettings(\n\t\tsettings,\n\t\thasFixedToolbar,\n\t\tfocusMode,\n\t\thiddenBlockTypes,\n\t\tblockTypes\n\t) {\n\t\tsettings = {\n\t\t\t...settings,\n\t\t\tisRTL: I18nManager.isRTL,\n\t\t\thasFixedToolbar,\n\t\t\tfocusMode,\n\t\t};\n\n\t\t// Omit hidden block types if exists and non-empty.\n\t\tif ( size( hiddenBlockTypes ) > 0 ) {\n\t\t\tif ( settings.allowedBlockTypes === undefined ) {\n\t\t\t\t// If no specific flags for allowedBlockTypes are set, assume `true`\n\t\t\t\t// meaning allow all block types.\n\t\t\t\tsettings.allowedBlockTypes = true;\n\t\t\t}\n\t\t\t// Defer to passed setting for `allowedBlockTypes` if provided as\n\t\t\t// anything other than `true` (where `true` is equivalent to allow\n\t\t\t// all block types).\n\t\t\tconst defaultAllowedBlockTypes =\n\t\t\t\ttrue === settings.allowedBlockTypes\n\t\t\t\t\t? map( blockTypes, 'name' )\n\t\t\t\t\t: settings.allowedBlockTypes || [];\n\n\t\t\tsettings.allowedBlockTypes = without(\n\t\t\t\tdefaultAllowedBlockTypes,\n\t\t\t\t...hiddenBlockTypes\n\t\t\t);\n\t\t}\n\n\t\treturn settings;\n\t}\n\n\tcomponentDidMount() {\n\t\tconst { editEntityRecord, postType, postId } = this.props;\n\n\t\tthis.subscriptionParentSetFocusOnTitle = subscribeSetFocusOnTitle(\n\t\t\t() => {\n\t\t\t\tif ( this.postTitleRef ) {\n\t\t\t\t\tthis.postTitleRef.focus();\n\t\t\t\t} else {\n\t\t\t\t\t// If the post title ref is not available, we postpone setting focus to when it's available.\n\t\t\t\t\tthis.focusTitleWhenAvailable = true;\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\n\t\tthis.subscriptionParentFeaturedImageIdNativeUpdated = subscribeFeaturedImageIdNativeUpdated(\n\t\t\t( payload ) => {\n\t\t\t\teditEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostType,\n\t\t\t\t\tpostId,\n\t\t\t\t\t{ featured_media: payload.featuredImageId },\n\t\t\t\t\t{\n\t\t\t\t\t\tundoIgnore: true,\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t}\n\t\t);\n\t}\n\n\tcomponentWillUnmount() {\n\t\tif ( this.subscriptionParentSetFocusOnTitle ) {\n\t\t\tthis.subscriptionParentSetFocusOnTitle.remove();\n\t\t}\n\n\t\tif ( this.subscribeFeaturedImageIdNativeUpdated ) {\n\t\t\tthis.subscribeFeaturedImageIdNativeUpdated.remove();\n\t\t}\n\t}\n\n\tsetTitleRef( titleRef ) {\n\t\tif ( this.focusTitleWhenAvailable && ! this.postTitleRef ) {\n\t\t\tthis.focusTitleWhenAvailable = false;\n\t\t\ttitleRef.focus();\n\t\t}\n\n\t\tthis.postTitleRef = titleRef;\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\tsettings,\n\t\t\thasFixedToolbar,\n\t\t\tfocusMode,\n\t\t\tinitialEdits,\n\t\t\thiddenBlockTypes,\n\t\t\tblockTypes,\n\t\t\tpost,\n\t\t\tpostId,\n\t\t\tpostType,\n\t\t\tfeaturedImageId,\n\t\t\tinitialHtml,\n\t\t\t...props\n\t\t} = this.props;\n\n\t\tconst editorSettings = this.getEditorSettings(\n\t\t\tsettings,\n\t\t\thasFixedToolbar,\n\t\t\tfocusMode,\n\t\t\thiddenBlockTypes,\n\t\t\tblockTypes\n\t\t);\n\n\t\tconst normalizedPost = post || {\n\t\t\tid: postId,\n\t\t\ttitle: {\n\t\t\t\traw: props.initialTitle || '',\n\t\t\t},\n\t\t\tfeatured_media: featuredImageId,\n\t\t\tcontent: {\n\t\t\t\t// Make sure the post content is in sync with gutenberg store\n\t\t\t\t// to avoid marking the post as modified when simply loaded\n\t\t\t\t// For now, let's assume: serialize( parse( html ) ) !== html.\n\t\t\t\traw: serialize( parse( initialHtml || '' ) ),\n\t\t\t},\n\t\t\ttype: postType,\n\t\t\tstatus: 'draft',\n\t\t\tmeta: [],\n\t\t};\n\n\t\treturn (\n\t\t\t<SlotFillProvider>\n\t\t\t\t<EditorProvider\n\t\t\t\t\tsettings={ editorSettings }\n\t\t\t\t\tpost={ normalizedPost }\n\t\t\t\t\tinitialEdits={ initialEdits }\n\t\t\t\t\tuseSubRegistry={ false }\n\t\t\t\t\t{ ...props }\n\t\t\t\t>\n\t\t\t\t\t<Layout setTitleRef={ this.setTitleRef } />\n\t\t\t\t</EditorProvider>\n\t\t\t</SlotFillProvider>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithSelect( ( select ) => {\n\t\tconst {\n\t\t\tisFeatureActive,\n\t\t\tgetEditorMode,\n\t\t\t__experimentalGetPreviewDeviceType,\n\t\t\tgetHiddenBlockTypes,\n\t\t} = select( editPostStore );\n\t\tconst { getBlockTypes } = select( blocksStore );\n\n\t\treturn {\n\t\t\thasFixedToolbar:\n\t\t\t\tisFeatureActive( 'fixedToolbar' ) ||\n\t\t\t\t__experimentalGetPreviewDeviceType() !== 'Desktop',\n\t\t\tfocusMode: isFeatureActive( 'focusMode' ),\n\t\t\tmode: getEditorMode(),\n\t\t\thiddenBlockTypes: getHiddenBlockTypes(),\n\t\t\tblockTypes: getBlockTypes(),\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch ) => {\n\t\tconst { switchEditorMode } = dispatch( editPostStore );\n\t\tconst { editEntityRecord } = dispatch( coreStore );\n\t\treturn {\n\t\t\tswitchEditorMode,\n\t\t\teditEntityRecord,\n\t\t};\n\t} ),\n] )( Editor );\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-post/src/editor.native.js"],"names":["memize","map","without","I18nManager","Component","EditorProvider","parse","serialize","store","blocksStore","withDispatch","withSelect","compose","subscribeSetFocusOnTitle","subscribeFeaturedImageIdNativeUpdated","SlotFillProvider","coreStore","Layout","editPostStore","Editor","constructor","props","arguments","galleryWithImageBlocks","window","wp","galleryBlockV2Enabled","initialHtmlModeEnabled","mode","switchEditorMode","getEditorSettings","maxSize","setTitleRef","bind","settings","hasFixedToolbar","focusMode","hiddenBlockTypes","blockTypes","isRTL","length","allowedBlockTypes","undefined","defaultAllowedBlockTypes","componentDidMount","editEntityRecord","postType","postId","subscriptionParentSetFocusOnTitle","postTitleRef","focus","focusTitleWhenAvailable","subscriptionParentFeaturedImageIdNativeUpdated","payload","featured_media","featuredImageId","undoIgnore","componentWillUnmount","remove","titleRef","render","initialEdits","post","initialHtml","editorSettings","normalizedPost","id","title","raw","initialTitle","content","type","status","meta","select","isFeatureActive","getEditorMode","__experimentalGetPreviewDeviceType","getHiddenBlockTypes","getBlockTypes","dispatch"],"mappings":";;;AAAA;AACA;AACA;AACA,OAAOA,MAAP,MAAmB,QAAnB;AACA,SAASC,GAAT,EAAcC,OAAd,QAA6B,QAA7B;AACA,SAASC,WAAT,QAA4B,cAA5B;AAEA;AACA;AACA;;AACA,SAASC,SAAT,QAA0B,oBAA1B;AACA,SAASC,cAAT,QAA+B,mBAA/B;AACA,SAASC,KAAT,EAAgBC,SAAhB,EAA2BC,KAAK,IAAIC,WAApC,QAAuD,mBAAvD;AACA,SAASC,YAAT,EAAuBC,UAAvB,QAAyC,iBAAzC;AACA,SAASC,OAAT,QAAwB,oBAAxB;AACA,SACCC,wBADD,EAECC,qCAFD,QAGO,gCAHP;AAIA,SAASC,gBAAT,QAAiC,uBAAjC;AACA,SAASP,KAAK,IAAIQ,SAAlB,QAAmC,sBAAnC;AAEA;AACA;AACA;;AACA,OAAOC,MAAP,MAAmB,qBAAnB;AACA,SAAST,KAAK,IAAIU,aAAlB,QAAuC,SAAvC;;AAEA,MAAMC,MAAN,SAAqBf,SAArB,CAA+B;AAC9BgB,EAAAA,WAAW,CAAEC,KAAF,EAAU;AACpB,UAAO,GAAGC,SAAV,EADoB,CAGpB;AACA;;AACA,UAAM;AAAEC,MAAAA,sBAAsB,GAAG;AAA3B,QAAoCF,KAA1C;AACAG,IAAAA,MAAM,CAACC,EAAP,CAAUC,qBAAV,GAAkCH,sBAAlC;;AAEA,QAAKF,KAAK,CAACM,sBAAN,IAAgCN,KAAK,CAACO,IAAN,KAAe,QAApD,EAA+D;AAC9D;AACA,WAAKP,KAAL,CAAWQ,gBAAX,CAA6B,MAA7B;AACA;;AAED,SAAKC,iBAAL,GAAyB9B,MAAM,CAAE,KAAK8B,iBAAP,EAA0B;AACxDC,MAAAA,OAAO,EAAE;AAD+C,KAA1B,CAA/B;AAIA,SAAKC,WAAL,GAAmB,KAAKA,WAAL,CAAiBC,IAAjB,CAAuB,IAAvB,CAAnB;AACA;;AAEDH,EAAAA,iBAAiB,CAChBI,QADgB,EAEhBC,eAFgB,EAGhBC,SAHgB,EAIhBC,gBAJgB,EAKhBC,UALgB,EAMf;AACDJ,IAAAA,QAAQ,GAAG,EACV,GAAGA,QADO;AAEVK,MAAAA,KAAK,EAAEpC,WAAW,CAACoC,KAFT;AAGVJ,MAAAA,eAHU;AAIVC,MAAAA;AAJU,KAAX,CADC,CAQD;;AACA,QAAKC,gBAAgB,CAACG,MAAjB,GAA0B,CAA/B,EAAmC;AAClC,UAAKN,QAAQ,CAACO,iBAAT,KAA+BC,SAApC,EAAgD;AAC/C;AACA;AACAR,QAAAA,QAAQ,CAACO,iBAAT,GAA6B,IAA7B;AACA,OALiC,CAMlC;AACA;AACA;;;AACA,YAAME,wBAAwB,GAC7B,SAAST,QAAQ,CAACO,iBAAlB,GACGxC,GAAG,CAAEqC,UAAF,EAAc,MAAd,CADN,GAEGJ,QAAQ,CAACO,iBAAT,IAA8B,EAHlC;AAKAP,MAAAA,QAAQ,CAACO,iBAAT,GAA6BvC,OAAO,CACnCyC,wBADmC,EAEnC,GAAGN,gBAFgC,CAApC;AAIA;;AAED,WAAOH,QAAP;AACA;;AAEDU,EAAAA,iBAAiB,GAAG;AACnB,UAAM;AAAEC,MAAAA,gBAAF;AAAoBC,MAAAA,QAApB;AAA8BC,MAAAA;AAA9B,QAAyC,KAAK1B,KAApD;AAEA,SAAK2B,iCAAL,GAAyCnC,wBAAwB,CAChE,MAAM;AACL,UAAK,KAAKoC,YAAV,EAAyB;AACxB,aAAKA,YAAL,CAAkBC,KAAlB;AACA,OAFD,MAEO;AACN;AACA,aAAKC,uBAAL,GAA+B,IAA/B;AACA;AACD,KAR+D,CAAjE;AAWA,SAAKC,8CAAL,GACCtC,qCAAqC,CAAIuC,OAAF,IAAe;AACrDR,MAAAA,gBAAgB,CACf,UADe,EAEfC,QAFe,EAGfC,MAHe,EAIf;AAAEO,QAAAA,cAAc,EAAED,OAAO,CAACE;AAA1B,OAJe,EAKf;AACCC,QAAAA,UAAU,EAAE;AADb,OALe,CAAhB;AASA,KAVoC,CADtC;AAYA;;AAEDC,EAAAA,oBAAoB,GAAG;AACtB,QAAK,KAAKT,iCAAV,EAA8C;AAC7C,WAAKA,iCAAL,CAAuCU,MAAvC;AACA;;AAED,QAAK,KAAK5C,qCAAV,EAAkD;AACjD,WAAKA,qCAAL,CAA2C4C,MAA3C;AACA;AACD;;AAED1B,EAAAA,WAAW,CAAE2B,QAAF,EAAa;AACvB,QAAK,KAAKR,uBAAL,IAAgC,CAAE,KAAKF,YAA5C,EAA2D;AAC1D,WAAKE,uBAAL,GAA+B,KAA/B;AACAQ,MAAAA,QAAQ,CAACT,KAAT;AACA;;AAED,SAAKD,YAAL,GAAoBU,QAApB;AACA;;AAEDC,EAAAA,MAAM,GAAG;AACR,UAAM;AACL1B,MAAAA,QADK;AAELC,MAAAA,eAFK;AAGLC,MAAAA,SAHK;AAILyB,MAAAA,YAJK;AAKLxB,MAAAA,gBALK;AAMLC,MAAAA,UANK;AAOLwB,MAAAA,IAPK;AAQLf,MAAAA,MARK;AASLD,MAAAA,QATK;AAULS,MAAAA,eAVK;AAWLQ,MAAAA,WAXK;AAYL,SAAG1C;AAZE,QAaF,KAAKA,KAbT;AAeA,UAAM2C,cAAc,GAAG,KAAKlC,iBAAL,CACtBI,QADsB,EAEtBC,eAFsB,EAGtBC,SAHsB,EAItBC,gBAJsB,EAKtBC,UALsB,CAAvB;AAQA,UAAM2B,cAAc,GAAGH,IAAI,IAAI;AAC9BI,MAAAA,EAAE,EAAEnB,MAD0B;AAE9BoB,MAAAA,KAAK,EAAE;AACNC,QAAAA,GAAG,EAAE/C,KAAK,CAACgD,YAAN,IAAsB;AADrB,OAFuB;AAK9Bf,MAAAA,cAAc,EAAEC,eALc;AAM9Be,MAAAA,OAAO,EAAE;AACR;AACA;AACA;AACAF,QAAAA,GAAG,EAAE7D,SAAS,CAAED,KAAK,CAAEyD,WAAW,IAAI,EAAjB,CAAP;AAJN,OANqB;AAY9BQ,MAAAA,IAAI,EAAEzB,QAZwB;AAa9B0B,MAAAA,MAAM,EAAE,OAbsB;AAc9BC,MAAAA,IAAI,EAAE;AAdwB,KAA/B;AAiBA,WACC,cAAC,gBAAD,QACC,cAAC,cAAD;AACC,MAAA,QAAQ,EAAGT,cADZ;AAEC,MAAA,IAAI,EAAGC,cAFR;AAGC,MAAA,YAAY,EAAGJ,YAHhB;AAIC,MAAA,cAAc,EAAG;AAJlB,OAKMxC,KALN,GAOC,cAAC,MAAD;AAAQ,MAAA,WAAW,EAAG,KAAKW;AAA3B,MAPD,CADD,CADD;AAaA;;AAhK6B;;AAmK/B,eAAepB,OAAO,CAAE,CACvBD,UAAU,CAAI+D,MAAF,IAAc;AACzB,QAAM;AACLC,IAAAA,eADK;AAELC,IAAAA,aAFK;AAGLC,IAAAA,kCAHK;AAILC,IAAAA;AAJK,MAKFJ,MAAM,CAAExD,aAAF,CALV;AAMA,QAAM;AAAE6D,IAAAA;AAAF,MAAoBL,MAAM,CAAEjE,WAAF,CAAhC;AAEA,SAAO;AACN0B,IAAAA,eAAe,EACdwC,eAAe,CAAE,cAAF,CAAf,IACAE,kCAAkC,OAAO,SAHpC;AAINzC,IAAAA,SAAS,EAAEuC,eAAe,CAAE,WAAF,CAJpB;AAKN/C,IAAAA,IAAI,EAAEgD,aAAa,EALb;AAMNvC,IAAAA,gBAAgB,EAAEyC,mBAAmB,EAN/B;AAONxC,IAAAA,UAAU,EAAEyC,aAAa;AAPnB,GAAP;AASA,CAlBS,CADa,EAoBvBrE,YAAY,CAAIsE,QAAF,IAAgB;AAC7B,QAAM;AAAEnD,IAAAA;AAAF,MAAuBmD,QAAQ,CAAE9D,aAAF,CAArC;AACA,QAAM;AAAE2B,IAAAA;AAAF,MAAuBmC,QAAQ,CAAEhE,SAAF,CAArC;AACA,SAAO;AACNa,IAAAA,gBADM;AAENgB,IAAAA;AAFM,GAAP;AAIA,CAPW,CApBW,CAAF,CAAP,CA4BV1B,MA5BU,CAAf","sourcesContent":["/**\n * External dependencies\n */\nimport memize from 'memize';\nimport { map, without } from 'lodash';\nimport { I18nManager } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { Component } from '@wordpress/element';\nimport { EditorProvider } from '@wordpress/editor';\nimport { parse, serialize, store as blocksStore } from '@wordpress/blocks';\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport { compose } from '@wordpress/compose';\nimport {\n\tsubscribeSetFocusOnTitle,\n\tsubscribeFeaturedImageIdNativeUpdated,\n} from '@wordpress/react-native-bridge';\nimport { SlotFillProvider } from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport Layout from './components/layout';\nimport { store as editPostStore } from './store';\n\nclass Editor extends Component {\n\tconstructor( props ) {\n\t\tsuper( ...arguments );\n\n\t\t// need to set this globally to avoid race with deprecations\n\t\t// defaulting to true to avoid issues with a not-yet-cached value\n\t\tconst { galleryWithImageBlocks = true } = props;\n\t\twindow.wp.galleryBlockV2Enabled = galleryWithImageBlocks;\n\n\t\tif ( props.initialHtmlModeEnabled && props.mode === 'visual' ) {\n\t\t\t// Enable html mode if the initial mode the parent wants it but we're not already in it.\n\t\t\tthis.props.switchEditorMode( 'text' );\n\t\t}\n\n\t\tthis.getEditorSettings = memize( this.getEditorSettings, {\n\t\t\tmaxSize: 1,\n\t\t} );\n\n\t\tthis.setTitleRef = this.setTitleRef.bind( this );\n\t}\n\n\tgetEditorSettings(\n\t\tsettings,\n\t\thasFixedToolbar,\n\t\tfocusMode,\n\t\thiddenBlockTypes,\n\t\tblockTypes\n\t) {\n\t\tsettings = {\n\t\t\t...settings,\n\t\t\tisRTL: I18nManager.isRTL,\n\t\t\thasFixedToolbar,\n\t\t\tfocusMode,\n\t\t};\n\n\t\t// Omit hidden block types if exists and non-empty.\n\t\tif ( hiddenBlockTypes.length > 0 ) {\n\t\t\tif ( settings.allowedBlockTypes === undefined ) {\n\t\t\t\t// If no specific flags for allowedBlockTypes are set, assume `true`\n\t\t\t\t// meaning allow all block types.\n\t\t\t\tsettings.allowedBlockTypes = true;\n\t\t\t}\n\t\t\t// Defer to passed setting for `allowedBlockTypes` if provided as\n\t\t\t// anything other than `true` (where `true` is equivalent to allow\n\t\t\t// all block types).\n\t\t\tconst defaultAllowedBlockTypes =\n\t\t\t\ttrue === settings.allowedBlockTypes\n\t\t\t\t\t? map( blockTypes, 'name' )\n\t\t\t\t\t: settings.allowedBlockTypes || [];\n\n\t\t\tsettings.allowedBlockTypes = without(\n\t\t\t\tdefaultAllowedBlockTypes,\n\t\t\t\t...hiddenBlockTypes\n\t\t\t);\n\t\t}\n\n\t\treturn settings;\n\t}\n\n\tcomponentDidMount() {\n\t\tconst { editEntityRecord, postType, postId } = this.props;\n\n\t\tthis.subscriptionParentSetFocusOnTitle = subscribeSetFocusOnTitle(\n\t\t\t() => {\n\t\t\t\tif ( this.postTitleRef ) {\n\t\t\t\t\tthis.postTitleRef.focus();\n\t\t\t\t} else {\n\t\t\t\t\t// If the post title ref is not available, we postpone setting focus to when it's available.\n\t\t\t\t\tthis.focusTitleWhenAvailable = true;\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\n\t\tthis.subscriptionParentFeaturedImageIdNativeUpdated =\n\t\t\tsubscribeFeaturedImageIdNativeUpdated( ( payload ) => {\n\t\t\t\teditEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostType,\n\t\t\t\t\tpostId,\n\t\t\t\t\t{ featured_media: payload.featuredImageId },\n\t\t\t\t\t{\n\t\t\t\t\t\tundoIgnore: true,\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t} );\n\t}\n\n\tcomponentWillUnmount() {\n\t\tif ( this.subscriptionParentSetFocusOnTitle ) {\n\t\t\tthis.subscriptionParentSetFocusOnTitle.remove();\n\t\t}\n\n\t\tif ( this.subscribeFeaturedImageIdNativeUpdated ) {\n\t\t\tthis.subscribeFeaturedImageIdNativeUpdated.remove();\n\t\t}\n\t}\n\n\tsetTitleRef( titleRef ) {\n\t\tif ( this.focusTitleWhenAvailable && ! this.postTitleRef ) {\n\t\t\tthis.focusTitleWhenAvailable = false;\n\t\t\ttitleRef.focus();\n\t\t}\n\n\t\tthis.postTitleRef = titleRef;\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\tsettings,\n\t\t\thasFixedToolbar,\n\t\t\tfocusMode,\n\t\t\tinitialEdits,\n\t\t\thiddenBlockTypes,\n\t\t\tblockTypes,\n\t\t\tpost,\n\t\t\tpostId,\n\t\t\tpostType,\n\t\t\tfeaturedImageId,\n\t\t\tinitialHtml,\n\t\t\t...props\n\t\t} = this.props;\n\n\t\tconst editorSettings = this.getEditorSettings(\n\t\t\tsettings,\n\t\t\thasFixedToolbar,\n\t\t\tfocusMode,\n\t\t\thiddenBlockTypes,\n\t\t\tblockTypes\n\t\t);\n\n\t\tconst normalizedPost = post || {\n\t\t\tid: postId,\n\t\t\ttitle: {\n\t\t\t\traw: props.initialTitle || '',\n\t\t\t},\n\t\t\tfeatured_media: featuredImageId,\n\t\t\tcontent: {\n\t\t\t\t// Make sure the post content is in sync with gutenberg store\n\t\t\t\t// to avoid marking the post as modified when simply loaded\n\t\t\t\t// For now, let's assume: serialize( parse( html ) ) !== html.\n\t\t\t\traw: serialize( parse( initialHtml || '' ) ),\n\t\t\t},\n\t\t\ttype: postType,\n\t\t\tstatus: 'draft',\n\t\t\tmeta: [],\n\t\t};\n\n\t\treturn (\n\t\t\t<SlotFillProvider>\n\t\t\t\t<EditorProvider\n\t\t\t\t\tsettings={ editorSettings }\n\t\t\t\t\tpost={ normalizedPost }\n\t\t\t\t\tinitialEdits={ initialEdits }\n\t\t\t\t\tuseSubRegistry={ false }\n\t\t\t\t\t{ ...props }\n\t\t\t\t>\n\t\t\t\t\t<Layout setTitleRef={ this.setTitleRef } />\n\t\t\t\t</EditorProvider>\n\t\t\t</SlotFillProvider>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithSelect( ( select ) => {\n\t\tconst {\n\t\t\tisFeatureActive,\n\t\t\tgetEditorMode,\n\t\t\t__experimentalGetPreviewDeviceType,\n\t\t\tgetHiddenBlockTypes,\n\t\t} = select( editPostStore );\n\t\tconst { getBlockTypes } = select( blocksStore );\n\n\t\treturn {\n\t\t\thasFixedToolbar:\n\t\t\t\tisFeatureActive( 'fixedToolbar' ) ||\n\t\t\t\t__experimentalGetPreviewDeviceType() !== 'Desktop',\n\t\t\tfocusMode: isFeatureActive( 'focusMode' ),\n\t\t\tmode: getEditorMode(),\n\t\t\thiddenBlockTypes: getHiddenBlockTypes(),\n\t\t\tblockTypes: getBlockTypes(),\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch ) => {\n\t\tconst { switchEditorMode } = dispatch( editPostStore );\n\t\tconst { editEntityRecord } = dispatch( coreStore );\n\t\treturn {\n\t\t\tswitchEditorMode,\n\t\t\teditEntityRecord,\n\t\t};\n\t} ),\n] )( Editor );\n"]}
|