@wordpress/editor 13.34.0 → 13.35.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 +10 -4
- package/build/bindings/pattern-overrides.js +70 -1
- package/build/bindings/pattern-overrides.js.map +1 -1
- package/build/components/block-settings-menu/content-only-settings-menu.js +126 -0
- package/build/components/block-settings-menu/content-only-settings-menu.js.map +1 -0
- package/build/components/block-settings-menu/content-only-settings-menu.native.js +11 -0
- package/build/components/block-settings-menu/content-only-settings-menu.native.js.map +1 -0
- package/build/components/collapsible-block-toolbar/index.js +2 -2
- package/build/components/collapsible-block-toolbar/index.js.map +1 -1
- package/build/components/document-bar/index.js +2 -2
- package/build/components/document-bar/index.js.map +1 -1
- package/build/components/document-outline/item.js +2 -2
- package/build/components/document-outline/item.js.map +1 -1
- package/build/components/document-tools/index.js +15 -18
- package/build/components/document-tools/index.js.map +1 -1
- package/build/components/editor-canvas/index.js +19 -8
- package/build/components/editor-canvas/index.js.map +1 -1
- package/build/components/global-keyboard-shortcuts/register-shortcuts.js +1 -1
- package/build/components/global-keyboard-shortcuts/register-shortcuts.js.map +1 -1
- package/build/components/global-styles-provider/index.js +130 -0
- package/build/components/global-styles-provider/index.js.map +1 -0
- package/build/components/header/index.js +147 -0
- package/build/components/header/index.js.map +1 -0
- package/build/components/inserter-sidebar/index.js +56 -31
- package/build/components/inserter-sidebar/index.js.map +1 -1
- package/build/components/keyboard-shortcut-help-modal/index.js +2 -2
- package/build/components/keyboard-shortcut-help-modal/index.js.map +1 -1
- package/build/components/post-actions/actions.js +122 -64
- package/build/components/post-actions/actions.js.map +1 -1
- package/build/components/post-actions/index.js +7 -14
- package/build/components/post-actions/index.js.map +1 -1
- package/build/components/post-card-panel/index.js +5 -29
- package/build/components/post-card-panel/index.js.map +1 -1
- package/build/components/post-comments/index.js +28 -8
- package/build/components/post-comments/index.js.map +1 -1
- package/build/components/post-discussion/panel.js +103 -21
- package/build/components/post-discussion/panel.js.map +1 -1
- package/build/components/post-excerpt/panel.js +2 -2
- package/build/components/post-excerpt/panel.js.map +1 -1
- package/build/components/post-format/panel.js +27 -0
- package/build/components/post-format/panel.js.map +1 -0
- package/build/components/post-panel-row/index.js +2 -2
- package/build/components/post-panel-row/index.js.map +1 -1
- package/build/components/post-panel-section/index.js +28 -0
- package/build/components/post-panel-section/index.js.map +1 -0
- package/build/components/post-pingbacks/index.js +5 -2
- package/build/components/post-pingbacks/index.js.map +1 -1
- package/build/components/post-saved-state/index.js +2 -2
- package/build/components/post-saved-state/index.js.map +1 -1
- package/build/components/post-slug/panel.js +27 -0
- package/build/components/post-slug/panel.js.map +1 -0
- package/build/components/post-status/index.js +4 -4
- package/build/components/post-status/index.js.map +1 -1
- package/build/components/post-sticky/panel.js +21 -0
- package/build/components/post-sticky/panel.js.map +1 -0
- package/build/components/post-title/index.js +2 -2
- package/build/components/post-title/index.js.map +1 -1
- package/build/components/post-title/post-title-raw.js +2 -2
- package/build/components/post-title/post-title-raw.js.map +1 -1
- package/build/components/post-transform-panel/hooks.js +90 -0
- package/build/components/post-transform-panel/hooks.js.map +1 -0
- package/build/components/post-transform-panel/index.js +101 -0
- package/build/components/post-transform-panel/index.js.map +1 -0
- package/build/components/post-trash/panel.js +18 -0
- package/build/components/post-trash/panel.js.map +1 -0
- package/build/components/post-type-support-check/index.js +1 -1
- package/build/components/post-type-support-check/index.js.map +1 -1
- package/build/components/preferences-modal/index.js +3 -3
- package/build/components/preferences-modal/index.js.map +1 -1
- package/build/components/provider/index.js +3 -1
- package/build/components/provider/index.js.map +1 -1
- package/build/components/provider/use-block-editor-settings.js +21 -3
- package/build/components/provider/use-block-editor-settings.js.map +1 -1
- package/build/components/sidebar/constants.js +11 -0
- package/build/components/sidebar/constants.js.map +1 -0
- package/build/components/sidebar/header.js +53 -0
- package/build/components/sidebar/header.js.map +1 -0
- package/build/components/sidebar/index.js +157 -0
- package/build/components/sidebar/index.js.map +1 -0
- package/build/components/sidebar/post-summary.js +84 -0
- package/build/components/sidebar/post-summary.js.map +1 -0
- package/build/components/start-page-options/index.js +5 -7
- package/build/components/start-page-options/index.js.map +1 -1
- package/build/components/start-template-options/index.js +192 -0
- package/build/components/start-template-options/index.js.map +1 -0
- package/build/components/template-content-panel/index.js +38 -0
- package/build/components/template-content-panel/index.js.map +1 -0
- package/build/hooks/pattern-overrides.js +10 -5
- package/build/hooks/pattern-overrides.js.map +1 -1
- package/build/private-apis.js +7 -12
- package/build/private-apis.js.map +1 -1
- package/build/private-apis.native.js +72 -0
- package/build/private-apis.native.js.map +1 -0
- package/build/store/private-selectors.js +6 -1
- package/build/store/private-selectors.js.map +1 -1
- package/build/store/reducer.js +15 -0
- package/build/store/reducer.js.map +1 -1
- package/build-module/bindings/pattern-overrides.js +69 -1
- package/build-module/bindings/pattern-overrides.js.map +1 -1
- package/build-module/components/block-settings-menu/content-only-settings-menu.js +119 -0
- package/build-module/components/block-settings-menu/content-only-settings-menu.js.map +1 -0
- package/build-module/components/block-settings-menu/content-only-settings-menu.native.js +5 -0
- package/build-module/components/block-settings-menu/content-only-settings-menu.native.js.map +1 -0
- package/build-module/components/collapsible-block-toolbar/index.js +2 -2
- package/build-module/components/collapsible-block-toolbar/index.js.map +1 -1
- package/build-module/components/document-bar/index.js +2 -2
- package/build-module/components/document-bar/index.js.map +1 -1
- package/build-module/components/document-outline/item.js +2 -2
- package/build-module/components/document-outline/item.js.map +1 -1
- package/build-module/components/document-tools/index.js +16 -19
- package/build-module/components/document-tools/index.js.map +1 -1
- package/build-module/components/editor-canvas/index.js +19 -8
- package/build-module/components/editor-canvas/index.js.map +1 -1
- package/build-module/components/global-keyboard-shortcuts/register-shortcuts.js +1 -1
- package/build-module/components/global-keyboard-shortcuts/register-shortcuts.js.map +1 -1
- package/build-module/components/global-styles-provider/index.js +120 -0
- package/build-module/components/global-styles-provider/index.js.map +1 -0
- package/build-module/components/header/index.js +139 -0
- package/build-module/components/header/index.js.map +1 -0
- package/build-module/components/inserter-sidebar/index.js +59 -34
- package/build-module/components/inserter-sidebar/index.js.map +1 -1
- package/build-module/components/keyboard-shortcut-help-modal/index.js +2 -2
- package/build-module/components/keyboard-shortcut-help-modal/index.js.map +1 -1
- package/build-module/components/post-actions/actions.js +125 -66
- package/build-module/components/post-actions/actions.js.map +1 -1
- package/build-module/components/post-actions/index.js +7 -14
- package/build-module/components/post-actions/index.js.map +1 -1
- package/build-module/components/post-card-panel/index.js +7 -30
- package/build-module/components/post-card-panel/index.js.map +1 -1
- package/build-module/components/post-comments/index.js +30 -10
- package/build-module/components/post-comments/index.js.map +1 -1
- package/build-module/components/post-discussion/panel.js +105 -23
- package/build-module/components/post-discussion/panel.js.map +1 -1
- package/build-module/components/post-excerpt/panel.js +2 -2
- package/build-module/components/post-excerpt/panel.js.map +1 -1
- package/build-module/components/post-format/panel.js +18 -0
- package/build-module/components/post-format/panel.js.map +1 -0
- package/build-module/components/post-panel-row/index.js +2 -2
- package/build-module/components/post-panel-row/index.js.map +1 -1
- package/build-module/components/post-panel-section/index.js +20 -0
- package/build-module/components/post-panel-section/index.js.map +1 -0
- package/build-module/components/post-pingbacks/index.js +6 -3
- package/build-module/components/post-pingbacks/index.js.map +1 -1
- package/build-module/components/post-saved-state/index.js +2 -2
- package/build-module/components/post-saved-state/index.js.map +1 -1
- package/build-module/components/post-slug/panel.js +18 -0
- package/build-module/components/post-slug/panel.js.map +1 -0
- package/build-module/components/post-status/index.js +4 -4
- package/build-module/components/post-status/index.js.map +1 -1
- package/build-module/components/post-sticky/panel.js +12 -0
- package/build-module/components/post-sticky/panel.js.map +1 -0
- package/build-module/components/post-title/index.js +2 -2
- package/build-module/components/post-title/index.js.map +1 -1
- package/build-module/components/post-title/post-title-raw.js +2 -2
- package/build-module/components/post-title/post-title-raw.js.map +1 -1
- package/build-module/components/post-transform-panel/hooks.js +83 -0
- package/build-module/components/post-transform-panel/hooks.js.map +1 -0
- package/build-module/components/post-transform-panel/index.js +94 -0
- package/build-module/components/post-transform-panel/index.js.map +1 -0
- package/build-module/components/post-trash/panel.js +10 -0
- package/build-module/components/post-trash/panel.js.map +1 -0
- package/build-module/components/post-type-support-check/index.js +1 -1
- package/build-module/components/post-type-support-check/index.js.map +1 -1
- package/build-module/components/preferences-modal/index.js +3 -3
- package/build-module/components/preferences-modal/index.js.map +1 -1
- package/build-module/components/provider/index.js +3 -1
- package/build-module/components/provider/index.js.map +1 -1
- package/build-module/components/provider/use-block-editor-settings.js +21 -3
- package/build-module/components/provider/use-block-editor-settings.js.map +1 -1
- package/build-module/components/sidebar/constants.js +5 -0
- package/build-module/components/sidebar/constants.js.map +1 -0
- package/build-module/components/sidebar/header.js +46 -0
- package/build-module/components/sidebar/header.js.map +1 -0
- package/build-module/components/sidebar/index.js +149 -0
- package/build-module/components/sidebar/index.js.map +1 -0
- package/build-module/components/sidebar/post-summary.js +77 -0
- package/build-module/components/sidebar/post-summary.js.map +1 -0
- package/build-module/components/start-page-options/index.js +5 -7
- package/build-module/components/start-page-options/index.js.map +1 -1
- package/build-module/components/start-template-options/index.js +185 -0
- package/build-module/components/start-template-options/index.js.map +1 -0
- package/build-module/components/template-content-panel/index.js +31 -0
- package/build-module/components/template-content-panel/index.js.map +1 -0
- package/build-module/hooks/pattern-overrides.js +10 -5
- package/build-module/hooks/pattern-overrides.js.map +1 -1
- package/build-module/private-apis.js +7 -12
- package/build-module/private-apis.js.map +1 -1
- package/build-module/private-apis.native.js +62 -0
- package/build-module/private-apis.native.js.map +1 -0
- package/build-module/store/private-selectors.js +3 -0
- package/build-module/store/private-selectors.js.map +1 -1
- package/build-module/store/reducer.js +14 -0
- package/build-module/store/reducer.js.map +1 -1
- package/build-style/style-rtl.css +328 -18
- package/build-style/style.css +328 -18
- package/package.json +38 -36
- package/src/bindings/pattern-overrides.js +83 -1
- package/src/components/autocompleters/style.scss +1 -2
- package/src/components/block-settings-menu/content-only-settings-menu.js +175 -0
- package/src/components/block-settings-menu/content-only-settings-menu.native.js +4 -0
- package/src/components/block-settings-menu/style.scss +4 -0
- package/src/components/collapsible-block-toolbar/index.js +2 -2
- package/src/components/document-bar/index.js +2 -2
- package/src/components/document-outline/item.js +2 -2
- package/src/components/document-tools/index.js +19 -21
- package/src/components/editor-canvas/index.js +18 -6
- package/src/components/global-keyboard-shortcuts/register-shortcuts.js +1 -1
- package/src/components/global-styles-provider/index.js +162 -0
- package/src/components/header/index.js +154 -0
- package/src/components/header/style.scss +231 -0
- package/src/components/inserter-sidebar/index.js +52 -29
- package/src/components/inserter-sidebar/style.scss +10 -3
- package/src/components/keyboard-shortcut-help-modal/index.js +2 -2
- package/src/components/list-view-sidebar/style.scss +1 -0
- package/src/components/page-attributes/test/order.js +5 -1
- package/src/components/post-actions/actions.js +256 -150
- package/src/components/post-actions/index.js +5 -38
- package/src/components/post-card-panel/index.js +39 -85
- package/src/components/post-comments/index.js +47 -9
- package/src/components/post-discussion/panel.js +108 -31
- package/src/components/post-discussion/style.scss +26 -0
- package/src/components/post-excerpt/panel.js +2 -2
- package/src/components/post-format/panel.js +22 -0
- package/src/components/post-format/style.scss +6 -0
- package/src/components/post-last-revision/test/check.js +5 -1
- package/src/components/post-panel-row/index.js +2 -2
- package/src/components/post-panel-section/index.js +19 -0
- package/src/components/post-panel-section/style.scss +3 -0
- package/src/components/post-pingbacks/index.js +11 -2
- package/src/components/post-publish-panel/style.scss +5 -0
- package/src/components/post-saved-state/index.js +2 -2
- package/src/components/post-slug/panel.js +22 -0
- package/src/components/post-slug/style.scss +5 -0
- package/src/components/post-slug/test/index.js +5 -1
- package/src/components/post-status/index.js +4 -4
- package/src/components/post-sticky/panel.js +18 -0
- package/src/components/post-title/index.js +2 -2
- package/src/components/post-title/post-title-raw.js +2 -2
- package/src/components/post-transform-panel/hooks.js +114 -0
- package/src/components/post-transform-panel/index.js +99 -0
- package/src/components/post-trash/panel.js +13 -0
- package/src/components/post-type-support-check/index.js +1 -1
- package/src/components/post-type-support-check/test/index.js +2 -2
- package/src/components/preferences-modal/index.js +3 -3
- package/src/components/provider/index.js +4 -0
- package/src/components/provider/use-block-editor-settings.js +19 -4
- package/src/components/sidebar/constants.js +4 -0
- package/src/components/sidebar/header.js +49 -0
- package/src/components/sidebar/index.js +200 -0
- package/src/components/sidebar/post-summary.js +104 -0
- package/src/components/sidebar/style.scss +18 -0
- package/src/components/start-page-options/index.js +6 -4
- package/src/components/start-template-options/index.js +219 -0
- package/src/components/start-template-options/style.scss +55 -0
- package/src/components/template-areas/style.scss +0 -1
- package/src/components/template-content-panel/index.js +36 -0
- package/src/hooks/pattern-overrides.js +12 -6
- package/src/private-apis.js +10 -12
- package/src/private-apis.native.js +61 -0
- package/src/store/private-selectors.js +3 -0
- package/src/store/reducer.js +12 -0
- package/src/style.scss +7 -0
- package/src/components/post-slug/test/check.js +0 -17
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["__experimentalVStack","VStack","useSelect","PluginPostStatusInfo","PostActions","PostAuthorPanel","PostCardPanel","PostContentInformation","PostDiscussionPanel","PrivatePostExcerptPanel","PostExcerptPanel","PostFeaturedImagePanel","PostFormatPanel","PostLastEditedPanel","PostPanelSection","PostSchedulePanel","PostStatusPanel","PostStickyPanel","PostSyncStatus","PostTemplatePanel","PostTrashPanel","PostURLPanel","store","editorStore","NAVIGATION_POST_TYPE","PATTERN_POST_TYPE","TEMPLATE_PART_POST_TYPE","TEMPLATE_POST_TYPE","TemplateAreas","PANEL_NAME","PostSummary","onActionPerformed","isRemovedPostStatusPanel","postType","select","isEditorPanelRemoved","getCurrentPostType","isPattern","isTemplate","isTemplatePart","isNavigation","createElement","className","Slot","fills","Fragment","spacing","actions","withPanelBody"],"sources":["@wordpress/editor/src/components/sidebar/post-summary.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __experimentalVStack as VStack } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport PluginPostStatusInfo from '../plugin-post-status-info';\nimport PostActions from '../post-actions';\nimport PostAuthorPanel from '../post-author/panel';\nimport PostCardPanel from '../post-card-panel';\nimport PostContentInformation from '../post-content-information';\nimport PostDiscussionPanel from '../post-discussion/panel';\nimport { PrivatePostExcerptPanel as PostExcerptPanel } from '../post-excerpt/panel';\nimport PostFeaturedImagePanel from '../post-featured-image/panel';\nimport PostFormatPanel from '../post-format/panel';\nimport PostLastEditedPanel from '../post-last-edited-panel';\nimport PostPanelSection from '../post-panel-section';\nimport PostSchedulePanel from '../post-schedule/panel';\nimport PostStatusPanel from '../post-status';\nimport PostStickyPanel from '../post-sticky';\nimport PostSyncStatus from '../post-sync-status';\nimport PostTemplatePanel from '../post-template/panel';\nimport PostTrashPanel from '../post-trash/panel';\nimport PostURLPanel from '../post-url/panel';\nimport { store as editorStore } from '../../store';\nimport {\n\tNAVIGATION_POST_TYPE,\n\tPATTERN_POST_TYPE,\n\tTEMPLATE_PART_POST_TYPE,\n\tTEMPLATE_POST_TYPE,\n} from '../../store/constants';\nimport TemplateAreas from '../template-areas';\n\n/**\n * Module Constants\n */\nconst PANEL_NAME = 'post-status';\n\nexport default function PostSummary( { onActionPerformed } ) {\n\tconst { isRemovedPostStatusPanel, postType } = useSelect( ( select ) => {\n\t\t// We use isEditorPanelRemoved to hide the panel if it was programatically removed. We do\n\t\t// not use isEditorPanelEnabled since this panel should not be disabled through the UI.\n\t\tconst { isEditorPanelRemoved, getCurrentPostType } =\n\t\t\tselect( editorStore );\n\t\treturn {\n\t\t\tisRemovedPostStatusPanel: isEditorPanelRemoved( PANEL_NAME ),\n\t\t\tpostType: getCurrentPostType(),\n\t\t};\n\t}, [] );\n\tconst isPattern = postType === PATTERN_POST_TYPE;\n\tconst isTemplate = postType === TEMPLATE_POST_TYPE;\n\tconst isTemplatePart = postType === TEMPLATE_PART_POST_TYPE;\n\tconst isNavigation = postType === NAVIGATION_POST_TYPE;\n\n\treturn (\n\t\t<PostPanelSection className=\"editor-post-summary\">\n\t\t\t<PluginPostStatusInfo.Slot>\n\t\t\t\t{ ( fills ) => (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<VStack spacing={ 4 }>\n\t\t\t\t\t\t\t<PostCardPanel\n\t\t\t\t\t\t\t\tactions={\n\t\t\t\t\t\t\t\t\t<PostActions\n\t\t\t\t\t\t\t\t\t\tonActionPerformed={ onActionPerformed }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<PostFeaturedImagePanel withPanelBody={ false } />\n\t\t\t\t\t\t\t<PostExcerptPanel />\n\t\t\t\t\t\t\t<VStack spacing={ 1 }>\n\t\t\t\t\t\t\t\t<PostContentInformation />\n\t\t\t\t\t\t\t\t<PostLastEditedPanel />\n\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t\t{ ! isRemovedPostStatusPanel && (\n\t\t\t\t\t\t\t\t<VStack spacing={ 2 }>\n\t\t\t\t\t\t\t\t\t<VStack spacing={ 1 }>\n\t\t\t\t\t\t\t\t\t\t<PostStatusPanel />\n\t\t\t\t\t\t\t\t\t\t<PostSchedulePanel />\n\t\t\t\t\t\t\t\t\t\t<PostTemplatePanel />\n\t\t\t\t\t\t\t\t\t\t<PostURLPanel />\n\t\t\t\t\t\t\t\t\t\t<PostDiscussionPanel />\n\t\t\t\t\t\t\t\t\t\t<PostSyncStatus />\n\t\t\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t\t\t\t<PostStickyPanel />\n\t\t\t\t\t\t\t\t\t<PostFormatPanel />\n\t\t\t\t\t\t\t\t\t<PostAuthorPanel />\n\t\t\t\t\t\t\t\t\t{ isTemplate && <TemplateAreas /> }\n\t\t\t\t\t\t\t\t\t{ fills }\n\t\t\t\t\t\t\t\t\t{ ! isPattern &&\n\t\t\t\t\t\t\t\t\t\t! isTemplate &&\n\t\t\t\t\t\t\t\t\t\t! isTemplatePart &&\n\t\t\t\t\t\t\t\t\t\t! isNavigation && <PostTrashPanel /> }\n\t\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</VStack>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</PluginPostStatusInfo.Slot>\n\t\t</PostPanelSection>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -15,6 +15,7 @@ import { __unstableSerializeAndClean } from '@wordpress/blocks';
|
|
|
15
15
|
* Internal dependencies
|
|
16
16
|
*/
|
|
17
17
|
import { store as editorStore } from '../../store';
|
|
18
|
+
import { TEMPLATE_POST_TYPE } from '../../store/constants';
|
|
18
19
|
function useStartPatterns() {
|
|
19
20
|
// A pattern is a start pattern if it includes 'core/post-content' in its blockTypes,
|
|
20
21
|
// and it has no postTypes declared and the current post type is page or if
|
|
@@ -110,15 +111,12 @@ export default function StartPageOptions() {
|
|
|
110
111
|
isEditedPostDirty,
|
|
111
112
|
isEditedPostEmpty,
|
|
112
113
|
getCurrentPostType,
|
|
113
|
-
getCurrentPostId
|
|
114
|
-
getEditorSettings
|
|
114
|
+
getCurrentPostId
|
|
115
115
|
} = select(editorStore);
|
|
116
|
-
const
|
|
117
|
-
__unstableIsPreviewMode: isPreviewMode
|
|
118
|
-
} = getEditorSettings();
|
|
116
|
+
const _postType = getCurrentPostType();
|
|
119
117
|
return {
|
|
120
|
-
shouldEnableModal: !
|
|
121
|
-
postType:
|
|
118
|
+
shouldEnableModal: !isEditedPostDirty() && isEditedPostEmpty() && TEMPLATE_POST_TYPE !== _postType,
|
|
119
|
+
postType: _postType,
|
|
122
120
|
postId: getCurrentPostId()
|
|
123
121
|
};
|
|
124
122
|
}, []);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Modal","__","useState","useMemo","useEffect","store","blockEditorStore","__experimentalBlockPatternsList","BlockPatternsList","useSelect","useDispatch","useAsyncList","coreStore","__unstableSerializeAndClean","editorStore","useStartPatterns","blockPatternsWithPostContentBlockType","postType","select","getPatternsByBlockTypes","getBlocksByName","getCurrentPostType","getRenderingMode","rootClientId","filter","pattern","postTypes","Array","isArray","includes","PatternSelection","blockPatterns","onChoosePattern","shownBlockPatterns","editEntityRecord","postId","getCurrentPostId","createElement","shownPatterns","onClickPattern","_pattern","blocks","content","blocksForSerialization","StartPageOptionsModal","onClose","startPatterns","hasStartPattern","length","title","isFullScreen","onRequestClose","className","StartPageOptions","isClosed","setIsClosed","shouldEnableModal","isEditedPostDirty","isEditedPostEmpty","
|
|
1
|
+
{"version":3,"names":["Modal","__","useState","useMemo","useEffect","store","blockEditorStore","__experimentalBlockPatternsList","BlockPatternsList","useSelect","useDispatch","useAsyncList","coreStore","__unstableSerializeAndClean","editorStore","TEMPLATE_POST_TYPE","useStartPatterns","blockPatternsWithPostContentBlockType","postType","select","getPatternsByBlockTypes","getBlocksByName","getCurrentPostType","getRenderingMode","rootClientId","filter","pattern","postTypes","Array","isArray","includes","PatternSelection","blockPatterns","onChoosePattern","shownBlockPatterns","editEntityRecord","postId","getCurrentPostId","createElement","shownPatterns","onClickPattern","_pattern","blocks","content","blocksForSerialization","StartPageOptionsModal","onClose","startPatterns","hasStartPattern","length","title","isFullScreen","onRequestClose","className","StartPageOptions","isClosed","setIsClosed","shouldEnableModal","isEditedPostDirty","isEditedPostEmpty","_postType"],"sources":["@wordpress/editor/src/components/start-page-options/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Modal } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo, useEffect } 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 coreStore } from '@wordpress/core-data';\nimport { __unstableSerializeAndClean } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\nimport { TEMPLATE_POST_TYPE } from '../../store/constants';\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 declared 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 { getPatternsByBlockTypes, getBlocksByName } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst { getCurrentPostType, getRenderingMode } =\n\t\t\t\tselect( editorStore );\n\t\t\tconst rootClientId =\n\t\t\t\tgetRenderingMode() === 'post-only'\n\t\t\t\t\t? ''\n\t\t\t\t\t: getBlocksByName( 'core/post-content' )?.[ 0 ];\n\t\t\treturn {\n\t\t\t\tblockPatternsWithPostContentBlockType: getPatternsByBlockTypes(\n\t\t\t\t\t'core/post-content',\n\t\t\t\t\trootClientId\n\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( { blockPatterns, onChoosePattern } ) {\n\tconst shownBlockPatterns = useAsyncList( blockPatterns );\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\tconst { postType, postId } = useSelect( ( select ) => {\n\t\tconst { getCurrentPostType, getCurrentPostId } = select( editorStore );\n\n\t\treturn {\n\t\t\tpostType: getCurrentPostType(),\n\t\t\tpostId: getCurrentPostId(),\n\t\t};\n\t}, [] );\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\teditEntityRecord( 'postType', postType, postId, {\n\t\t\t\t\tblocks,\n\t\t\t\t\tcontent: ( { blocks: blocksForSerialization = [] } ) =>\n\t\t\t\t\t\t__unstableSerializeAndClean( blocksForSerialization ),\n\t\t\t\t} );\n\t\t\t\tonChoosePattern();\n\t\t\t} }\n\t\t/>\n\t);\n}\n\nfunction StartPageOptionsModal( { onClose } ) {\n\tconst startPatterns = useStartPatterns();\n\tconst hasStartPattern = startPatterns.length > 0;\n\n\tif ( ! hasStartPattern ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<Modal\n\t\t\ttitle={ __( 'Choose a pattern' ) }\n\t\t\tisFullScreen\n\t\t\tonRequestClose={ onClose }\n\t\t>\n\t\t\t<div className=\"editor-start-page-options__modal-content\">\n\t\t\t\t<PatternSelection\n\t\t\t\t\tblockPatterns={ startPatterns }\n\t\t\t\t\tonChoosePattern={ onClose }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</Modal>\n\t);\n}\n\nexport default function StartPageOptions() {\n\tconst [ isClosed, setIsClosed ] = useState( false );\n\tconst { shouldEnableModal, postType, postId } = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tisEditedPostDirty,\n\t\t\tisEditedPostEmpty,\n\t\t\tgetCurrentPostType,\n\t\t\tgetCurrentPostId,\n\t\t} = select( editorStore );\n\t\tconst _postType = getCurrentPostType();\n\n\t\treturn {\n\t\t\tshouldEnableModal:\n\t\t\t\t! isEditedPostDirty() &&\n\t\t\t\tisEditedPostEmpty() &&\n\t\t\t\tTEMPLATE_POST_TYPE !== _postType,\n\t\t\tpostType: _postType,\n\t\t\tpostId: getCurrentPostId(),\n\t\t};\n\t}, [] );\n\n\tuseEffect( () => {\n\t\t// Should reset the modal state when navigating to a new page/post.\n\t\tsetIsClosed( false );\n\t}, [ postType, postId ] );\n\n\tif ( ! shouldEnableModal || isClosed ) {\n\t\treturn null;\n\t}\n\n\treturn <StartPageOptionsModal onClose={ () => setIsClosed( true ) } />;\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,KAAK,QAAQ,uBAAuB;AAC7C,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,QAAQ,EAAEC,OAAO,EAAEC,SAAS,QAAQ,oBAAoB;AACjE,SACCC,KAAK,IAAIC,gBAAgB,EACzBC,+BAA+B,IAAIC,iBAAiB,QAC9C,yBAAyB;AAChC,SAASC,SAAS,EAAEC,WAAW,QAAQ,iBAAiB;AACxD,SAASC,YAAY,QAAQ,oBAAoB;AACjD,SAASN,KAAK,IAAIO,SAAS,QAAQ,sBAAsB;AACzD,SAASC,2BAA2B,QAAQ,mBAAmB;;AAE/D;AACA;AACA;AACA,SAASR,KAAK,IAAIS,WAAW,QAAQ,aAAa;AAClD,SAASC,kBAAkB,QAAQ,uBAAuB;AAE1D,SAASC,gBAAgBA,CAAA,EAAG;EAC3B;EACA;EACA;EACA,MAAM;IAAEC,qCAAqC;IAAEC;EAAS,CAAC,GAAGT,SAAS,CAClEU,MAAM,IAAM;IACb,MAAM;MAAEC,uBAAuB;MAAEC;IAAgB,CAAC,GACjDF,MAAM,CAAEb,gBAAiB,CAAC;IAC3B,MAAM;MAAEgB,kBAAkB;MAAEC;IAAiB,CAAC,GAC7CJ,MAAM,CAAEL,WAAY,CAAC;IACtB,MAAMU,YAAY,GACjBD,gBAAgB,CAAC,CAAC,KAAK,WAAW,GAC/B,EAAE,GACFF,eAAe,CAAE,mBAAoB,CAAC,GAAI,CAAC,CAAE;IACjD,OAAO;MACNJ,qCAAqC,EAAEG,uBAAuB,CAC7D,mBAAmB,EACnBI,YACD,CAAC;MACDN,QAAQ,EAAEI,kBAAkB,CAAC;IAC9B,CAAC;EACF,CAAC,EACD,EACD,CAAC;EAED,OAAOnB,OAAO,CAAE,MAAM;IACrB;IACA;IACA,OAAOc,qCAAqC,CAACQ,MAAM,CAAIC,OAAO,IAAM;MACnE,OACGR,QAAQ,KAAK,MAAM,IAAI,CAAEQ,OAAO,CAACC,SAAS,IAC1CC,KAAK,CAACC,OAAO,CAAEH,OAAO,CAACC,SAAU,CAAC,IACnCD,OAAO,CAACC,SAAS,CAACG,QAAQ,CAAEZ,QAAS,CAAG;IAE3C,CAAE,CAAC;EACJ,CAAC,EAAE,CAAEA,QAAQ,EAAED,qCAAqC,CAAG,CAAC;AACzD;AAEA,SAASc,gBAAgBA,CAAE;EAAEC,aAAa;EAAEC;AAAgB,CAAC,EAAG;EAC/D,MAAMC,kBAAkB,GAAGvB,YAAY,CAAEqB,aAAc,CAAC;EACxD,MAAM;IAAEG;EAAiB,CAAC,GAAGzB,WAAW,CAAEE,SAAU,CAAC;EACrD,MAAM;IAAEM,QAAQ;IAAEkB;EAAO,CAAC,GAAG3B,SAAS,CAAIU,MAAM,IAAM;IACrD,MAAM;MAAEG,kBAAkB;MAAEe;IAAiB,CAAC,GAAGlB,MAAM,CAAEL,WAAY,CAAC;IAEtE,OAAO;MACNI,QAAQ,EAAEI,kBAAkB,CAAC,CAAC;MAC9Bc,MAAM,EAAEC,gBAAgB,CAAC;IAC1B,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EACP,OACCC,aAAA,CAAC9B,iBAAiB;IACjBwB,aAAa,EAAGA,aAAe;IAC/BO,aAAa,EAAGL,kBAAoB;IACpCM,cAAc,EAAGA,CAAEC,QAAQ,EAAEC,MAAM,KAAM;MACxCP,gBAAgB,CAAE,UAAU,EAAEjB,QAAQ,EAAEkB,MAAM,EAAE;QAC/CM,MAAM;QACNC,OAAO,EAAEA,CAAE;UAAED,MAAM,EAAEE,sBAAsB,GAAG;QAAG,CAAC,KACjD/B,2BAA2B,CAAE+B,sBAAuB;MACtD,CAAE,CAAC;MACHX,eAAe,CAAC,CAAC;IAClB;EAAG,CACH,CAAC;AAEJ;AAEA,SAASY,qBAAqBA,CAAE;EAAEC;AAAQ,CAAC,EAAG;EAC7C,MAAMC,aAAa,GAAG/B,gBAAgB,CAAC,CAAC;EACxC,MAAMgC,eAAe,GAAGD,aAAa,CAACE,MAAM,GAAG,CAAC;EAEhD,IAAK,CAAED,eAAe,EAAG;IACxB,OAAO,IAAI;EACZ;EAEA,OACCV,aAAA,CAACtC,KAAK;IACLkD,KAAK,EAAGjD,EAAE,CAAE,kBAAmB,CAAG;IAClCkD,YAAY;IACZC,cAAc,EAAGN;EAAS,GAE1BR,aAAA;IAAKe,SAAS,EAAC;EAA0C,GACxDf,aAAA,CAACP,gBAAgB;IAChBC,aAAa,EAAGe,aAAe;IAC/Bd,eAAe,EAAGa;EAAS,CAC3B,CACG,CACC,CAAC;AAEV;AAEA,eAAe,SAASQ,gBAAgBA,CAAA,EAAG;EAC1C,MAAM,CAAEC,QAAQ,EAAEC,WAAW,CAAE,GAAGtD,QAAQ,CAAE,KAAM,CAAC;EACnD,MAAM;IAAEuD,iBAAiB;IAAEvC,QAAQ;IAAEkB;EAAO,CAAC,GAAG3B,SAAS,CAAIU,MAAM,IAAM;IACxE,MAAM;MACLuC,iBAAiB;MACjBC,iBAAiB;MACjBrC,kBAAkB;MAClBe;IACD,CAAC,GAAGlB,MAAM,CAAEL,WAAY,CAAC;IACzB,MAAM8C,SAAS,GAAGtC,kBAAkB,CAAC,CAAC;IAEtC,OAAO;MACNmC,iBAAiB,EAChB,CAAEC,iBAAiB,CAAC,CAAC,IACrBC,iBAAiB,CAAC,CAAC,IACnB5C,kBAAkB,KAAK6C,SAAS;MACjC1C,QAAQ,EAAE0C,SAAS;MACnBxB,MAAM,EAAEC,gBAAgB,CAAC;IAC1B,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEPjC,SAAS,CAAE,MAAM;IAChB;IACAoD,WAAW,CAAE,KAAM,CAAC;EACrB,CAAC,EAAE,CAAEtC,QAAQ,EAAEkB,MAAM,CAAG,CAAC;EAEzB,IAAK,CAAEqB,iBAAiB,IAAIF,QAAQ,EAAG;IACtC,OAAO,IAAI;EACZ;EAEA,OAAOjB,aAAA,CAACO,qBAAqB;IAACC,OAAO,EAAGA,CAAA,KAAMU,WAAW,CAAE,IAAK;EAAG,CAAE,CAAC;AACvE","ignoreList":[]}
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
import { createElement } from "react";
|
|
2
|
+
/**
|
|
3
|
+
* WordPress dependencies
|
|
4
|
+
*/
|
|
5
|
+
import { Modal, Flex, FlexItem, Button } from '@wordpress/components';
|
|
6
|
+
import { __ } from '@wordpress/i18n';
|
|
7
|
+
import { useState, useMemo, useEffect } from '@wordpress/element';
|
|
8
|
+
import { __experimentalBlockPatternsList as BlockPatternsList } from '@wordpress/block-editor';
|
|
9
|
+
import { useSelect } from '@wordpress/data';
|
|
10
|
+
import { useAsyncList } from '@wordpress/compose';
|
|
11
|
+
import { parse } from '@wordpress/blocks';
|
|
12
|
+
import { store as coreStore, useEntityBlockEditor } from '@wordpress/core-data';
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Internal dependencies
|
|
16
|
+
*/
|
|
17
|
+
import { store as editorStore } from '../../store';
|
|
18
|
+
import { TEMPLATE_POST_TYPE } from '../../store/constants';
|
|
19
|
+
function useFallbackTemplateContent(slug, isCustom = false) {
|
|
20
|
+
return useSelect(select => {
|
|
21
|
+
const {
|
|
22
|
+
getEntityRecord,
|
|
23
|
+
getDefaultTemplateId
|
|
24
|
+
} = select(coreStore);
|
|
25
|
+
const templateId = getDefaultTemplateId({
|
|
26
|
+
slug,
|
|
27
|
+
is_custom: isCustom,
|
|
28
|
+
ignore_empty: true
|
|
29
|
+
});
|
|
30
|
+
return templateId ? getEntityRecord('postType', TEMPLATE_POST_TYPE, templateId)?.content?.raw : undefined;
|
|
31
|
+
}, [slug, isCustom]);
|
|
32
|
+
}
|
|
33
|
+
function useStartPatterns(fallbackContent) {
|
|
34
|
+
const {
|
|
35
|
+
slug,
|
|
36
|
+
patterns
|
|
37
|
+
} = useSelect(select => {
|
|
38
|
+
const {
|
|
39
|
+
getCurrentPostType,
|
|
40
|
+
getCurrentPostId
|
|
41
|
+
} = select(editorStore);
|
|
42
|
+
const {
|
|
43
|
+
getEntityRecord,
|
|
44
|
+
getBlockPatterns
|
|
45
|
+
} = select(coreStore);
|
|
46
|
+
const postId = getCurrentPostId();
|
|
47
|
+
const postType = getCurrentPostType();
|
|
48
|
+
const record = getEntityRecord('postType', postType, postId);
|
|
49
|
+
return {
|
|
50
|
+
slug: record.slug,
|
|
51
|
+
patterns: getBlockPatterns()
|
|
52
|
+
};
|
|
53
|
+
}, []);
|
|
54
|
+
const currentThemeStylesheet = useSelect(select => select(coreStore).getCurrentTheme().stylesheet);
|
|
55
|
+
|
|
56
|
+
// Duplicated from packages/block-library/src/pattern/edit.js.
|
|
57
|
+
function injectThemeAttributeInBlockTemplateContent(block) {
|
|
58
|
+
if (block.innerBlocks.find(innerBlock => innerBlock.name === 'core/template-part')) {
|
|
59
|
+
block.innerBlocks = block.innerBlocks.map(innerBlock => {
|
|
60
|
+
if (innerBlock.name === 'core/template-part' && innerBlock.attributes.theme === undefined) {
|
|
61
|
+
innerBlock.attributes.theme = currentThemeStylesheet;
|
|
62
|
+
}
|
|
63
|
+
return innerBlock;
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
if (block.name === 'core/template-part' && block.attributes.theme === undefined) {
|
|
67
|
+
block.attributes.theme = currentThemeStylesheet;
|
|
68
|
+
}
|
|
69
|
+
return block;
|
|
70
|
+
}
|
|
71
|
+
return useMemo(() => {
|
|
72
|
+
// filter patterns that are supposed to be used in the current template being edited.
|
|
73
|
+
return [{
|
|
74
|
+
name: 'fallback',
|
|
75
|
+
blocks: parse(fallbackContent),
|
|
76
|
+
title: __('Fallback content')
|
|
77
|
+
}, ...patterns.filter(pattern => {
|
|
78
|
+
return Array.isArray(pattern.templateTypes) && pattern.templateTypes.some(templateType => slug.startsWith(templateType));
|
|
79
|
+
}).map(pattern => {
|
|
80
|
+
return {
|
|
81
|
+
...pattern,
|
|
82
|
+
blocks: parse(pattern.content).map(block => injectThemeAttributeInBlockTemplateContent(block))
|
|
83
|
+
};
|
|
84
|
+
})];
|
|
85
|
+
}, [fallbackContent, slug, patterns]);
|
|
86
|
+
}
|
|
87
|
+
function PatternSelection({
|
|
88
|
+
fallbackContent,
|
|
89
|
+
onChoosePattern,
|
|
90
|
+
postType
|
|
91
|
+
}) {
|
|
92
|
+
const [,, onChange] = useEntityBlockEditor('postType', postType);
|
|
93
|
+
const blockPatterns = useStartPatterns(fallbackContent);
|
|
94
|
+
const shownBlockPatterns = useAsyncList(blockPatterns);
|
|
95
|
+
return createElement(BlockPatternsList, {
|
|
96
|
+
blockPatterns: blockPatterns,
|
|
97
|
+
shownPatterns: shownBlockPatterns,
|
|
98
|
+
onClickPattern: (pattern, blocks) => {
|
|
99
|
+
onChange(blocks, {
|
|
100
|
+
selection: undefined
|
|
101
|
+
});
|
|
102
|
+
onChoosePattern();
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
function StartModal({
|
|
107
|
+
slug,
|
|
108
|
+
isCustom,
|
|
109
|
+
onClose,
|
|
110
|
+
postType
|
|
111
|
+
}) {
|
|
112
|
+
const fallbackContent = useFallbackTemplateContent(slug, isCustom);
|
|
113
|
+
if (!fallbackContent) {
|
|
114
|
+
return null;
|
|
115
|
+
}
|
|
116
|
+
return createElement(Modal, {
|
|
117
|
+
className: "editor-start-template-options__modal",
|
|
118
|
+
title: __('Choose a pattern'),
|
|
119
|
+
closeLabel: __('Cancel'),
|
|
120
|
+
focusOnMount: "firstElement",
|
|
121
|
+
onRequestClose: onClose,
|
|
122
|
+
isFullScreen: true
|
|
123
|
+
}, createElement("div", {
|
|
124
|
+
className: "editor-start-template-options__modal-content"
|
|
125
|
+
}, createElement(PatternSelection, {
|
|
126
|
+
fallbackContent: fallbackContent,
|
|
127
|
+
slug: slug,
|
|
128
|
+
isCustom: isCustom,
|
|
129
|
+
postType: postType,
|
|
130
|
+
onChoosePattern: () => {
|
|
131
|
+
onClose();
|
|
132
|
+
}
|
|
133
|
+
})), createElement(Flex, {
|
|
134
|
+
className: "editor-start-template-options__modal__actions",
|
|
135
|
+
justify: "flex-end",
|
|
136
|
+
expanded: false
|
|
137
|
+
}, createElement(FlexItem, null, createElement(Button, {
|
|
138
|
+
variant: "tertiary",
|
|
139
|
+
onClick: onClose
|
|
140
|
+
}, __('Skip')))));
|
|
141
|
+
}
|
|
142
|
+
export default function StartTemplateOptions() {
|
|
143
|
+
const [isClosed, setIsClosed] = useState(false);
|
|
144
|
+
const {
|
|
145
|
+
shouldOpenModal,
|
|
146
|
+
slug,
|
|
147
|
+
isCustom,
|
|
148
|
+
postType,
|
|
149
|
+
postId
|
|
150
|
+
} = useSelect(select => {
|
|
151
|
+
const {
|
|
152
|
+
getCurrentPostType,
|
|
153
|
+
getCurrentPostId
|
|
154
|
+
} = select(editorStore);
|
|
155
|
+
const _postType = getCurrentPostType();
|
|
156
|
+
const _postId = getCurrentPostId();
|
|
157
|
+
const {
|
|
158
|
+
getEditedEntityRecord,
|
|
159
|
+
hasEditsForEntityRecord
|
|
160
|
+
} = select(coreStore);
|
|
161
|
+
const templateRecord = getEditedEntityRecord('postType', _postType, _postId);
|
|
162
|
+
const hasEdits = hasEditsForEntityRecord('postType', _postType, _postId);
|
|
163
|
+
return {
|
|
164
|
+
shouldOpenModal: !hasEdits && '' === templateRecord.content && TEMPLATE_POST_TYPE === _postType,
|
|
165
|
+
slug: templateRecord.slug,
|
|
166
|
+
isCustom: templateRecord.is_custom,
|
|
167
|
+
postType: _postType,
|
|
168
|
+
postId: _postId
|
|
169
|
+
};
|
|
170
|
+
}, []);
|
|
171
|
+
useEffect(() => {
|
|
172
|
+
// Should reset the modal state when navigating to a new page/post.
|
|
173
|
+
setIsClosed(false);
|
|
174
|
+
}, [postType, postId]);
|
|
175
|
+
if (!shouldOpenModal || isClosed) {
|
|
176
|
+
return null;
|
|
177
|
+
}
|
|
178
|
+
return createElement(StartModal, {
|
|
179
|
+
slug: slug,
|
|
180
|
+
isCustom: isCustom,
|
|
181
|
+
postType: postType,
|
|
182
|
+
onClose: () => setIsClosed(true)
|
|
183
|
+
});
|
|
184
|
+
}
|
|
185
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Modal","Flex","FlexItem","Button","__","useState","useMemo","useEffect","__experimentalBlockPatternsList","BlockPatternsList","useSelect","useAsyncList","parse","store","coreStore","useEntityBlockEditor","editorStore","TEMPLATE_POST_TYPE","useFallbackTemplateContent","slug","isCustom","select","getEntityRecord","getDefaultTemplateId","templateId","is_custom","ignore_empty","content","raw","undefined","useStartPatterns","fallbackContent","patterns","getCurrentPostType","getCurrentPostId","getBlockPatterns","postId","postType","record","currentThemeStylesheet","getCurrentTheme","stylesheet","injectThemeAttributeInBlockTemplateContent","block","innerBlocks","find","innerBlock","name","map","attributes","theme","blocks","title","filter","pattern","Array","isArray","templateTypes","some","templateType","startsWith","PatternSelection","onChoosePattern","onChange","blockPatterns","shownBlockPatterns","createElement","shownPatterns","onClickPattern","selection","StartModal","onClose","className","closeLabel","focusOnMount","onRequestClose","isFullScreen","justify","expanded","variant","onClick","StartTemplateOptions","isClosed","setIsClosed","shouldOpenModal","_postType","_postId","getEditedEntityRecord","hasEditsForEntityRecord","templateRecord","hasEdits"],"sources":["@wordpress/editor/src/components/start-template-options/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Modal, Flex, FlexItem, Button } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo, useEffect } from '@wordpress/element';\nimport { __experimentalBlockPatternsList as BlockPatternsList } from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\nimport { useAsyncList } from '@wordpress/compose';\nimport { parse } from '@wordpress/blocks';\nimport { store as coreStore, useEntityBlockEditor } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\nimport { TEMPLATE_POST_TYPE } from '../../store/constants';\n\nfunction useFallbackTemplateContent( slug, isCustom = false ) {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecord, getDefaultTemplateId } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst templateId = getDefaultTemplateId( {\n\t\t\t\tslug,\n\t\t\t\tis_custom: isCustom,\n\t\t\t\tignore_empty: true,\n\t\t\t} );\n\t\t\treturn templateId\n\t\t\t\t? getEntityRecord( 'postType', TEMPLATE_POST_TYPE, templateId )\n\t\t\t\t\t\t?.content?.raw\n\t\t\t\t: undefined;\n\t\t},\n\t\t[ slug, isCustom ]\n\t);\n}\n\nfunction useStartPatterns( fallbackContent ) {\n\tconst { slug, patterns } = useSelect( ( select ) => {\n\t\tconst { getCurrentPostType, getCurrentPostId } = select( editorStore );\n\t\tconst { getEntityRecord, getBlockPatterns } = select( coreStore );\n\t\tconst postId = getCurrentPostId();\n\t\tconst postType = getCurrentPostType();\n\t\tconst record = getEntityRecord( 'postType', postType, postId );\n\t\treturn {\n\t\t\tslug: record.slug,\n\t\t\tpatterns: getBlockPatterns(),\n\t\t};\n\t}, [] );\n\n\tconst currentThemeStylesheet = useSelect(\n\t\t( select ) => select( coreStore ).getCurrentTheme().stylesheet\n\t);\n\n\t// Duplicated from packages/block-library/src/pattern/edit.js.\n\tfunction injectThemeAttributeInBlockTemplateContent( block ) {\n\t\tif (\n\t\t\tblock.innerBlocks.find(\n\t\t\t\t( innerBlock ) => innerBlock.name === 'core/template-part'\n\t\t\t)\n\t\t) {\n\t\t\tblock.innerBlocks = block.innerBlocks.map( ( innerBlock ) => {\n\t\t\t\tif (\n\t\t\t\t\tinnerBlock.name === 'core/template-part' &&\n\t\t\t\t\tinnerBlock.attributes.theme === undefined\n\t\t\t\t) {\n\t\t\t\t\tinnerBlock.attributes.theme = currentThemeStylesheet;\n\t\t\t\t}\n\t\t\t\treturn innerBlock;\n\t\t\t} );\n\t\t}\n\n\t\tif (\n\t\t\tblock.name === 'core/template-part' &&\n\t\t\tblock.attributes.theme === undefined\n\t\t) {\n\t\t\tblock.attributes.theme = currentThemeStylesheet;\n\t\t}\n\t\treturn block;\n\t}\n\n\treturn useMemo( () => {\n\t\t// filter patterns that are supposed to be used in the current template being edited.\n\t\treturn [\n\t\t\t{\n\t\t\t\tname: 'fallback',\n\t\t\t\tblocks: parse( fallbackContent ),\n\t\t\t\ttitle: __( 'Fallback content' ),\n\t\t\t},\n\t\t\t...patterns\n\t\t\t\t.filter( ( pattern ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\tArray.isArray( pattern.templateTypes ) &&\n\t\t\t\t\t\tpattern.templateTypes.some( ( templateType ) =>\n\t\t\t\t\t\t\tslug.startsWith( templateType )\n\t\t\t\t\t\t)\n\t\t\t\t\t);\n\t\t\t\t} )\n\t\t\t\t.map( ( pattern ) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...pattern,\n\t\t\t\t\t\tblocks: parse( pattern.content ).map( ( block ) =>\n\t\t\t\t\t\t\tinjectThemeAttributeInBlockTemplateContent( block )\n\t\t\t\t\t\t),\n\t\t\t\t\t};\n\t\t\t\t} ),\n\t\t];\n\t}, [ fallbackContent, slug, patterns ] );\n}\n\nfunction PatternSelection( { fallbackContent, onChoosePattern, postType } ) {\n\tconst [ , , onChange ] = useEntityBlockEditor( 'postType', postType );\n\tconst blockPatterns = useStartPatterns( fallbackContent );\n\tconst shownBlockPatterns = useAsyncList( blockPatterns );\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\tonChange( blocks, { selection: undefined } );\n\t\t\t\tonChoosePattern();\n\t\t\t} }\n\t\t/>\n\t);\n}\n\nfunction StartModal( { slug, isCustom, onClose, postType } ) {\n\tconst fallbackContent = useFallbackTemplateContent( slug, isCustom );\n\tif ( ! fallbackContent ) {\n\t\treturn null;\n\t}\n\treturn (\n\t\t<Modal\n\t\t\tclassName=\"editor-start-template-options__modal\"\n\t\t\ttitle={ __( 'Choose a pattern' ) }\n\t\t\tcloseLabel={ __( 'Cancel' ) }\n\t\t\tfocusOnMount=\"firstElement\"\n\t\t\tonRequestClose={ onClose }\n\t\t\tisFullScreen\n\t\t>\n\t\t\t<div className=\"editor-start-template-options__modal-content\">\n\t\t\t\t<PatternSelection\n\t\t\t\t\tfallbackContent={ fallbackContent }\n\t\t\t\t\tslug={ slug }\n\t\t\t\t\tisCustom={ isCustom }\n\t\t\t\t\tpostType={ postType }\n\t\t\t\t\tonChoosePattern={ () => {\n\t\t\t\t\t\tonClose();\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<Flex\n\t\t\t\tclassName=\"editor-start-template-options__modal__actions\"\n\t\t\t\tjustify=\"flex-end\"\n\t\t\t\texpanded={ false }\n\t\t\t>\n\t\t\t\t<FlexItem>\n\t\t\t\t\t<Button variant=\"tertiary\" onClick={ onClose }>\n\t\t\t\t\t\t{ __( 'Skip' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</FlexItem>\n\t\t\t</Flex>\n\t\t</Modal>\n\t);\n}\n\nexport default function StartTemplateOptions() {\n\tconst [ isClosed, setIsClosed ] = useState( false );\n\tconst { shouldOpenModal, slug, isCustom, postType, postId } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getCurrentPostType, getCurrentPostId } =\n\t\t\t\tselect( editorStore );\n\t\t\tconst _postType = getCurrentPostType();\n\t\t\tconst _postId = getCurrentPostId();\n\t\t\tconst { getEditedEntityRecord, hasEditsForEntityRecord } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst templateRecord = getEditedEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t_postType,\n\t\t\t\t_postId\n\t\t\t);\n\t\t\tconst hasEdits = hasEditsForEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t_postType,\n\t\t\t\t_postId\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tshouldOpenModal:\n\t\t\t\t\t! hasEdits &&\n\t\t\t\t\t'' === templateRecord.content &&\n\t\t\t\t\tTEMPLATE_POST_TYPE === _postType,\n\t\t\t\tslug: templateRecord.slug,\n\t\t\t\tisCustom: templateRecord.is_custom,\n\t\t\t\tpostType: _postType,\n\t\t\t\tpostId: _postId,\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\tuseEffect( () => {\n\t\t// Should reset the modal state when navigating to a new page/post.\n\t\tsetIsClosed( false );\n\t}, [ postType, postId ] );\n\n\tif ( ! shouldOpenModal || isClosed ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<StartModal\n\t\t\tslug={ slug }\n\t\t\tisCustom={ isCustom }\n\t\t\tpostType={ postType }\n\t\t\tonClose={ () => setIsClosed( true ) }\n\t\t/>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { createElement } from "react";
|
|
2
|
+
/**
|
|
3
|
+
* WordPress dependencies
|
|
4
|
+
*/
|
|
5
|
+
import { useSelect } from '@wordpress/data';
|
|
6
|
+
import { store as blockEditorStore, privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';
|
|
7
|
+
import { PanelBody } from '@wordpress/components';
|
|
8
|
+
import { __ } from '@wordpress/i18n';
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Internal dependencies
|
|
12
|
+
*/
|
|
13
|
+
import { unlock } from '../../lock-unlock';
|
|
14
|
+
const {
|
|
15
|
+
BlockQuickNavigation
|
|
16
|
+
} = unlock(blockEditorPrivateApis);
|
|
17
|
+
const PAGE_CONTENT_BLOCKS = ['core/post-content', 'core/post-featured-image', 'core/post-title'];
|
|
18
|
+
export default function TemplateContentPanel() {
|
|
19
|
+
const clientIds = useSelect(select => {
|
|
20
|
+
const {
|
|
21
|
+
getBlocksByName
|
|
22
|
+
} = select(blockEditorStore);
|
|
23
|
+
return getBlocksByName(PAGE_CONTENT_BLOCKS);
|
|
24
|
+
}, []);
|
|
25
|
+
return createElement(PanelBody, {
|
|
26
|
+
title: __('Content')
|
|
27
|
+
}, createElement(BlockQuickNavigation, {
|
|
28
|
+
clientIds: clientIds
|
|
29
|
+
}));
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useSelect","store","blockEditorStore","privateApis","blockEditorPrivateApis","PanelBody","__","unlock","BlockQuickNavigation","PAGE_CONTENT_BLOCKS","TemplateContentPanel","clientIds","select","getBlocksByName","createElement","title"],"sources":["@wordpress/editor/src/components/template-content-panel/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport {\n\tstore as blockEditorStore,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { PanelBody } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\n\nconst { BlockQuickNavigation } = unlock( blockEditorPrivateApis );\n\nconst PAGE_CONTENT_BLOCKS = [\n\t'core/post-content',\n\t'core/post-featured-image',\n\t'core/post-title',\n];\n\nexport default function TemplateContentPanel() {\n\tconst clientIds = useSelect( ( select ) => {\n\t\tconst { getBlocksByName } = select( blockEditorStore );\n\t\treturn getBlocksByName( PAGE_CONTENT_BLOCKS );\n\t}, [] );\n\n\treturn (\n\t\t<PanelBody title={ __( 'Content' ) }>\n\t\t\t<BlockQuickNavigation clientIds={ clientIds } />\n\t\t</PanelBody>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,iBAAiB;AAC3C,SACCC,KAAK,IAAIC,gBAAgB,EACzBC,WAAW,IAAIC,sBAAsB,QAC/B,yBAAyB;AAChC,SAASC,SAAS,QAAQ,uBAAuB;AACjD,SAASC,EAAE,QAAQ,iBAAiB;;AAEpC;AACA;AACA;AACA,SAASC,MAAM,QAAQ,mBAAmB;AAE1C,MAAM;EAAEC;AAAqB,CAAC,GAAGD,MAAM,CAAEH,sBAAuB,CAAC;AAEjE,MAAMK,mBAAmB,GAAG,CAC3B,mBAAmB,EACnB,0BAA0B,EAC1B,iBAAiB,CACjB;AAED,eAAe,SAASC,oBAAoBA,CAAA,EAAG;EAC9C,MAAMC,SAAS,GAAGX,SAAS,CAAIY,MAAM,IAAM;IAC1C,MAAM;MAAEC;IAAgB,CAAC,GAAGD,MAAM,CAAEV,gBAAiB,CAAC;IACtD,OAAOW,eAAe,CAAEJ,mBAAoB,CAAC;EAC9C,CAAC,EAAE,EAAG,CAAC;EAEP,OACCK,aAAA,CAACT,SAAS;IAACU,KAAK,EAAGT,EAAE,CAAE,SAAU;EAAG,GACnCQ,aAAA,CAACN,oBAAoB;IAACG,SAAS,EAAGA;EAAW,CAAE,CACrC,CAAC;AAEd","ignoreList":[]}
|
|
@@ -18,7 +18,8 @@ const {
|
|
|
18
18
|
PatternOverridesControls,
|
|
19
19
|
ResetOverridesControl,
|
|
20
20
|
PATTERN_TYPES,
|
|
21
|
-
PARTIAL_SYNCING_SUPPORTED_BLOCKS
|
|
21
|
+
PARTIAL_SYNCING_SUPPORTED_BLOCKS,
|
|
22
|
+
PATTERN_SYNC_TYPES
|
|
22
23
|
} = unlock(patternsPrivateApis);
|
|
23
24
|
|
|
24
25
|
/**
|
|
@@ -45,21 +46,25 @@ function ControlsWithStoreSubscription(props) {
|
|
|
45
46
|
const blockEditingMode = useBlockEditingMode();
|
|
46
47
|
const {
|
|
47
48
|
hasPatternOverridesSource,
|
|
48
|
-
|
|
49
|
+
isEditingSyncedPattern
|
|
49
50
|
} = useSelect(select => {
|
|
50
51
|
const {
|
|
51
52
|
getBlockBindingsSource
|
|
52
53
|
} = unlock(select(blocksStore));
|
|
54
|
+
const {
|
|
55
|
+
getCurrentPostType,
|
|
56
|
+
getEditedPostAttribute
|
|
57
|
+
} = select(editorStore);
|
|
53
58
|
return {
|
|
54
59
|
// For editing link to the site editor if the theme and user permissions support it.
|
|
55
60
|
hasPatternOverridesSource: !!getBlockBindingsSource('core/pattern-overrides'),
|
|
56
|
-
|
|
61
|
+
isEditingSyncedPattern: getCurrentPostType() === PATTERN_TYPES.user && getEditedPostAttribute('meta')?.wp_pattern_sync_status !== PATTERN_SYNC_TYPES.unsynced && getEditedPostAttribute('wp_pattern_sync_status') !== PATTERN_SYNC_TYPES.unsynced
|
|
57
62
|
};
|
|
58
63
|
}, []);
|
|
59
64
|
const bindings = props.attributes.metadata?.bindings;
|
|
60
65
|
const hasPatternBindings = !!bindings && Object.values(bindings).some(binding => binding.source === 'core/pattern-overrides');
|
|
61
|
-
const shouldShowPatternOverridesControls =
|
|
62
|
-
const shouldShowResetOverridesControl = !
|
|
66
|
+
const shouldShowPatternOverridesControls = isEditingSyncedPattern && blockEditingMode === 'default';
|
|
67
|
+
const shouldShowResetOverridesControl = !isEditingSyncedPattern && !!props.attributes.metadata?.name && blockEditingMode !== 'disabled' && hasPatternBindings;
|
|
63
68
|
if (!hasPatternOverridesSource) {
|
|
64
69
|
return null;
|
|
65
70
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["addFilter","privateApis","patternsPrivateApis","createHigherOrderComponent","useBlockEditingMode","useSelect","store","blocksStore","editorStore","unlock","PatternOverridesControls","ResetOverridesControl","PATTERN_TYPES","PARTIAL_SYNCING_SUPPORTED_BLOCKS","withPatternOverrideControls","BlockEdit","props","isSupportedBlock","Object","keys","includes","name","createElement","Fragment","isSelected","ControlsWithStoreSubscription","blockEditingMode","hasPatternOverridesSource","
|
|
1
|
+
{"version":3,"names":["addFilter","privateApis","patternsPrivateApis","createHigherOrderComponent","useBlockEditingMode","useSelect","store","blocksStore","editorStore","unlock","PatternOverridesControls","ResetOverridesControl","PATTERN_TYPES","PARTIAL_SYNCING_SUPPORTED_BLOCKS","PATTERN_SYNC_TYPES","withPatternOverrideControls","BlockEdit","props","isSupportedBlock","Object","keys","includes","name","createElement","Fragment","isSelected","ControlsWithStoreSubscription","blockEditingMode","hasPatternOverridesSource","isEditingSyncedPattern","select","getBlockBindingsSource","getCurrentPostType","getEditedPostAttribute","user","wp_pattern_sync_status","unsynced","bindings","attributes","metadata","hasPatternBindings","values","some","binding","source","shouldShowPatternOverridesControls","shouldShowResetOverridesControl"],"sources":["@wordpress/editor/src/hooks/pattern-overrides.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { addFilter } from '@wordpress/hooks';\nimport { privateApis as patternsPrivateApis } from '@wordpress/patterns';\nimport { createHigherOrderComponent } from '@wordpress/compose';\nimport { useBlockEditingMode } from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\nimport { store as blocksStore } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../store';\nimport { unlock } from '../lock-unlock';\n\nconst {\n\tPatternOverridesControls,\n\tResetOverridesControl,\n\tPATTERN_TYPES,\n\tPARTIAL_SYNCING_SUPPORTED_BLOCKS,\n\tPATTERN_SYNC_TYPES,\n} = unlock( patternsPrivateApis );\n\n/**\n * Override the default edit UI to include a new block inspector control for\n * assigning a partial syncing controls to supported blocks in the pattern editor.\n * Currently, only the `core/paragraph` block is supported.\n *\n * @param {Component} BlockEdit Original component.\n *\n * @return {Component} Wrapped component.\n */\nconst withPatternOverrideControls = createHigherOrderComponent(\n\t( BlockEdit ) => ( props ) => {\n\t\tconst isSupportedBlock = Object.keys(\n\t\t\tPARTIAL_SYNCING_SUPPORTED_BLOCKS\n\t\t).includes( props.name );\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<BlockEdit { ...props } />\n\t\t\t\t{ props.isSelected && isSupportedBlock && (\n\t\t\t\t\t<ControlsWithStoreSubscription { ...props } />\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\t}\n);\n\n// Split into a separate component to avoid a store subscription\n// on every block.\nfunction ControlsWithStoreSubscription( props ) {\n\tconst blockEditingMode = useBlockEditingMode();\n\tconst { hasPatternOverridesSource, isEditingSyncedPattern } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockBindingsSource } = unlock( select( blocksStore ) );\n\t\t\tconst { getCurrentPostType, getEditedPostAttribute } =\n\t\t\t\tselect( editorStore );\n\n\t\t\treturn {\n\t\t\t\t// For editing link to the site editor if the theme and user permissions support it.\n\t\t\t\thasPatternOverridesSource: !! getBlockBindingsSource(\n\t\t\t\t\t'core/pattern-overrides'\n\t\t\t\t),\n\t\t\t\tisEditingSyncedPattern:\n\t\t\t\t\tgetCurrentPostType() === PATTERN_TYPES.user &&\n\t\t\t\t\tgetEditedPostAttribute( 'meta' )?.wp_pattern_sync_status !==\n\t\t\t\t\t\tPATTERN_SYNC_TYPES.unsynced &&\n\t\t\t\t\tgetEditedPostAttribute( 'wp_pattern_sync_status' ) !==\n\t\t\t\t\t\tPATTERN_SYNC_TYPES.unsynced,\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\tconst bindings = props.attributes.metadata?.bindings;\n\tconst hasPatternBindings =\n\t\t!! bindings &&\n\t\tObject.values( bindings ).some(\n\t\t\t( binding ) => binding.source === 'core/pattern-overrides'\n\t\t);\n\n\tconst shouldShowPatternOverridesControls =\n\t\tisEditingSyncedPattern && blockEditingMode === 'default';\n\tconst shouldShowResetOverridesControl =\n\t\t! isEditingSyncedPattern &&\n\t\t!! props.attributes.metadata?.name &&\n\t\tblockEditingMode !== 'disabled' &&\n\t\thasPatternBindings;\n\n\tif ( ! hasPatternOverridesSource ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ shouldShowPatternOverridesControls && (\n\t\t\t\t<PatternOverridesControls { ...props } />\n\t\t\t) }\n\t\t\t{ shouldShowResetOverridesControl && (\n\t\t\t\t<ResetOverridesControl { ...props } />\n\t\t\t) }\n\t\t</>\n\t);\n}\n\naddFilter(\n\t'editor.BlockEdit',\n\t'core/editor/with-pattern-override-controls',\n\twithPatternOverrideControls\n);\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -6,22 +6,18 @@ import * as interfaceApis from '@wordpress/interface';
|
|
|
6
6
|
/**
|
|
7
7
|
* Internal dependencies
|
|
8
8
|
*/
|
|
9
|
-
import CollapsableBlockToolbar from './components/collapsible-block-toolbar';
|
|
10
9
|
import EditorCanvas from './components/editor-canvas';
|
|
11
10
|
import { ExperimentalEditorProvider } from './components/provider';
|
|
12
11
|
import { lock } from './lock-unlock';
|
|
13
12
|
import { EntitiesSavedStatesExtensible } from './components/entities-saved-states';
|
|
14
13
|
import useAutoSwitchEditorSidebars from './components/provider/use-auto-switch-editor-sidebars';
|
|
15
14
|
import useBlockEditorSettings from './components/provider/use-block-editor-settings';
|
|
16
|
-
import
|
|
15
|
+
import Header from './components/header';
|
|
17
16
|
import InserterSidebar from './components/inserter-sidebar';
|
|
18
17
|
import ListViewSidebar from './components/list-view-sidebar';
|
|
19
|
-
import MoreMenu from './components/more-menu';
|
|
20
18
|
import PatternOverridesPanel from './components/pattern-overrides-panel';
|
|
21
19
|
import PluginPostExcerpt from './components/post-excerpt/plugin';
|
|
22
20
|
import PostPanelRow from './components/post-panel-row';
|
|
23
|
-
import PostViewLink from './components/post-view-link';
|
|
24
|
-
import PreviewDropdown from './components/preview-dropdown';
|
|
25
21
|
import PreferencesModal from './components/preferences-modal';
|
|
26
22
|
import PostActions from './components/post-actions';
|
|
27
23
|
import { usePostActions } from './components/post-actions/actions';
|
|
@@ -30,30 +26,29 @@ import PostStatus from './components/post-status';
|
|
|
30
26
|
import ToolsMoreMenuGroup from './components/more-menu/tools-more-menu-group';
|
|
31
27
|
import ViewMoreMenuGroup from './components/more-menu/view-more-menu-group';
|
|
32
28
|
import { PrivatePostExcerptPanel } from './components/post-excerpt/panel';
|
|
33
|
-
import PostPublishButtonOrToggle from './components/post-publish-button/post-publish-button-or-toggle';
|
|
34
29
|
import SavePublishPanels from './components/save-publish-panels';
|
|
35
30
|
import PostContentInformation from './components/post-content-information';
|
|
36
31
|
import PostLastEditedPanel from './components/post-last-edited-panel';
|
|
32
|
+
import Sidebar from './components/sidebar';
|
|
33
|
+
import { mergeBaseAndUserConfigs, GlobalStylesProvider } from './components/global-styles-provider';
|
|
37
34
|
const {
|
|
38
35
|
store: interfaceStore,
|
|
39
36
|
...remainingInterfaceApis
|
|
40
37
|
} = interfaceApis;
|
|
41
38
|
export const privateApis = {};
|
|
42
39
|
lock(privateApis, {
|
|
43
|
-
CollapsableBlockToolbar,
|
|
44
|
-
DocumentTools,
|
|
45
40
|
EditorCanvas,
|
|
46
41
|
ExperimentalEditorProvider,
|
|
47
42
|
EntitiesSavedStatesExtensible,
|
|
43
|
+
GlobalStylesProvider,
|
|
44
|
+
Header,
|
|
48
45
|
InserterSidebar,
|
|
49
46
|
ListViewSidebar,
|
|
50
|
-
|
|
47
|
+
mergeBaseAndUserConfigs,
|
|
51
48
|
PatternOverridesPanel,
|
|
52
49
|
PluginPostExcerpt,
|
|
53
50
|
PostActions,
|
|
54
51
|
PostPanelRow,
|
|
55
|
-
PostViewLink,
|
|
56
|
-
PreviewDropdown,
|
|
57
52
|
PreferencesModal,
|
|
58
53
|
usePostActions,
|
|
59
54
|
PostCardPanel,
|
|
@@ -61,10 +56,10 @@ lock(privateApis, {
|
|
|
61
56
|
ToolsMoreMenuGroup,
|
|
62
57
|
ViewMoreMenuGroup,
|
|
63
58
|
PrivatePostExcerptPanel,
|
|
64
|
-
PostPublishButtonOrToggle,
|
|
65
59
|
SavePublishPanels,
|
|
66
60
|
PostContentInformation,
|
|
67
61
|
PostLastEditedPanel,
|
|
62
|
+
Sidebar,
|
|
68
63
|
// This is a temporary private API while we're updating the site editor to use EditorProvider.
|
|
69
64
|
useAutoSwitchEditorSidebars,
|
|
70
65
|
useBlockEditorSettings,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["interfaceApis","
|
|
1
|
+
{"version":3,"names":["interfaceApis","EditorCanvas","ExperimentalEditorProvider","lock","EntitiesSavedStatesExtensible","useAutoSwitchEditorSidebars","useBlockEditorSettings","Header","InserterSidebar","ListViewSidebar","PatternOverridesPanel","PluginPostExcerpt","PostPanelRow","PreferencesModal","PostActions","usePostActions","PostCardPanel","PostStatus","ToolsMoreMenuGroup","ViewMoreMenuGroup","PrivatePostExcerptPanel","SavePublishPanels","PostContentInformation","PostLastEditedPanel","Sidebar","mergeBaseAndUserConfigs","GlobalStylesProvider","store","interfaceStore","remainingInterfaceApis","privateApis"],"sources":["@wordpress/editor/src/private-apis.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport * as interfaceApis from '@wordpress/interface';\n\n/**\n * Internal dependencies\n */\nimport EditorCanvas from './components/editor-canvas';\nimport { ExperimentalEditorProvider } from './components/provider';\nimport { lock } from './lock-unlock';\nimport { EntitiesSavedStatesExtensible } from './components/entities-saved-states';\nimport useAutoSwitchEditorSidebars from './components/provider/use-auto-switch-editor-sidebars';\nimport useBlockEditorSettings from './components/provider/use-block-editor-settings';\nimport Header from './components/header';\nimport InserterSidebar from './components/inserter-sidebar';\nimport ListViewSidebar from './components/list-view-sidebar';\nimport PatternOverridesPanel from './components/pattern-overrides-panel';\nimport PluginPostExcerpt from './components/post-excerpt/plugin';\nimport PostPanelRow from './components/post-panel-row';\nimport PreferencesModal from './components/preferences-modal';\nimport PostActions from './components/post-actions';\nimport { usePostActions } from './components/post-actions/actions';\nimport PostCardPanel from './components/post-card-panel';\nimport PostStatus from './components/post-status';\nimport ToolsMoreMenuGroup from './components/more-menu/tools-more-menu-group';\nimport ViewMoreMenuGroup from './components/more-menu/view-more-menu-group';\nimport { PrivatePostExcerptPanel } from './components/post-excerpt/panel';\nimport SavePublishPanels from './components/save-publish-panels';\nimport PostContentInformation from './components/post-content-information';\nimport PostLastEditedPanel from './components/post-last-edited-panel';\nimport Sidebar from './components/sidebar';\nimport {\n\tmergeBaseAndUserConfigs,\n\tGlobalStylesProvider,\n} from './components/global-styles-provider';\n\nconst { store: interfaceStore, ...remainingInterfaceApis } = interfaceApis;\n\nexport const privateApis = {};\nlock( privateApis, {\n\tEditorCanvas,\n\tExperimentalEditorProvider,\n\tEntitiesSavedStatesExtensible,\n\tGlobalStylesProvider,\n\tHeader,\n\tInserterSidebar,\n\tListViewSidebar,\n\tmergeBaseAndUserConfigs,\n\tPatternOverridesPanel,\n\tPluginPostExcerpt,\n\tPostActions,\n\tPostPanelRow,\n\tPreferencesModal,\n\tusePostActions,\n\tPostCardPanel,\n\tPostStatus,\n\tToolsMoreMenuGroup,\n\tViewMoreMenuGroup,\n\tPrivatePostExcerptPanel,\n\tSavePublishPanels,\n\tPostContentInformation,\n\tPostLastEditedPanel,\n\tSidebar,\n\n\t// This is a temporary private API while we're updating the site editor to use EditorProvider.\n\tuseAutoSwitchEditorSidebars,\n\tuseBlockEditorSettings,\n\tinterfaceStore,\n\t...remainingInterfaceApis,\n} );\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAO,KAAKA,aAAa,MAAM,sBAAsB;;AAErD;AACA;AACA;AACA,OAAOC,YAAY,MAAM,4BAA4B;AACrD,SAASC,0BAA0B,QAAQ,uBAAuB;AAClE,SAASC,IAAI,QAAQ,eAAe;AACpC,SAASC,6BAA6B,QAAQ,oCAAoC;AAClF,OAAOC,2BAA2B,MAAM,uDAAuD;AAC/F,OAAOC,sBAAsB,MAAM,iDAAiD;AACpF,OAAOC,MAAM,MAAM,qBAAqB;AACxC,OAAOC,eAAe,MAAM,+BAA+B;AAC3D,OAAOC,eAAe,MAAM,gCAAgC;AAC5D,OAAOC,qBAAqB,MAAM,sCAAsC;AACxE,OAAOC,iBAAiB,MAAM,kCAAkC;AAChE,OAAOC,YAAY,MAAM,6BAA6B;AACtD,OAAOC,gBAAgB,MAAM,gCAAgC;AAC7D,OAAOC,WAAW,MAAM,2BAA2B;AACnD,SAASC,cAAc,QAAQ,mCAAmC;AAClE,OAAOC,aAAa,MAAM,8BAA8B;AACxD,OAAOC,UAAU,MAAM,0BAA0B;AACjD,OAAOC,kBAAkB,MAAM,8CAA8C;AAC7E,OAAOC,iBAAiB,MAAM,6CAA6C;AAC3E,SAASC,uBAAuB,QAAQ,iCAAiC;AACzE,OAAOC,iBAAiB,MAAM,kCAAkC;AAChE,OAAOC,sBAAsB,MAAM,uCAAuC;AAC1E,OAAOC,mBAAmB,MAAM,qCAAqC;AACrE,OAAOC,OAAO,MAAM,sBAAsB;AAC1C,SACCC,uBAAuB,EACvBC,oBAAoB,QACd,qCAAqC;AAE5C,MAAM;EAAEC,KAAK,EAAEC,cAAc;EAAE,GAAGC;AAAuB,CAAC,GAAG7B,aAAa;AAE1E,OAAO,MAAM8B,WAAW,GAAG,CAAC,CAAC;AAC7B3B,IAAI,CAAE2B,WAAW,EAAE;EAClB7B,YAAY;EACZC,0BAA0B;EAC1BE,6BAA6B;EAC7BsB,oBAAoB;EACpBnB,MAAM;EACNC,eAAe;EACfC,eAAe;EACfgB,uBAAuB;EACvBf,qBAAqB;EACrBC,iBAAiB;EACjBG,WAAW;EACXF,YAAY;EACZC,gBAAgB;EAChBE,cAAc;EACdC,aAAa;EACbC,UAAU;EACVC,kBAAkB;EAClBC,iBAAiB;EACjBC,uBAAuB;EACvBC,iBAAiB;EACjBC,sBAAsB;EACtBC,mBAAmB;EACnBC,OAAO;EAEP;EACAnB,2BAA2B;EAC3BC,sBAAsB;EACtBsB,cAAc;EACd,GAAGC;AACJ,CAAE,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import * as interfaceApis from '@wordpress/interface';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Internal dependencies
|
|
8
|
+
*/
|
|
9
|
+
import EditorCanvas from './components/editor-canvas';
|
|
10
|
+
import { ExperimentalEditorProvider } from './components/provider';
|
|
11
|
+
import { lock } from './lock-unlock';
|
|
12
|
+
import { EntitiesSavedStatesExtensible } from './components/entities-saved-states';
|
|
13
|
+
import useAutoSwitchEditorSidebars from './components/provider/use-auto-switch-editor-sidebars';
|
|
14
|
+
import useBlockEditorSettings from './components/provider/use-block-editor-settings';
|
|
15
|
+
import InserterSidebar from './components/inserter-sidebar';
|
|
16
|
+
import ListViewSidebar from './components/list-view-sidebar';
|
|
17
|
+
import PatternOverridesPanel from './components/pattern-overrides-panel';
|
|
18
|
+
import PluginPostExcerpt from './components/post-excerpt/plugin';
|
|
19
|
+
import PostPanelRow from './components/post-panel-row';
|
|
20
|
+
import PreferencesModal from './components/preferences-modal';
|
|
21
|
+
import PostActions from './components/post-actions';
|
|
22
|
+
import { usePostActions } from './components/post-actions/actions';
|
|
23
|
+
import PostCardPanel from './components/post-card-panel';
|
|
24
|
+
import PostStatus from './components/post-status';
|
|
25
|
+
import ToolsMoreMenuGroup from './components/more-menu/tools-more-menu-group';
|
|
26
|
+
import ViewMoreMenuGroup from './components/more-menu/view-more-menu-group';
|
|
27
|
+
import { PrivatePostExcerptPanel } from './components/post-excerpt/panel';
|
|
28
|
+
import SavePublishPanels from './components/save-publish-panels';
|
|
29
|
+
import PostContentInformation from './components/post-content-information';
|
|
30
|
+
import PostLastEditedPanel from './components/post-last-edited-panel';
|
|
31
|
+
const {
|
|
32
|
+
store: interfaceStore,
|
|
33
|
+
...remainingInterfaceApis
|
|
34
|
+
} = interfaceApis;
|
|
35
|
+
export const privateApis = {};
|
|
36
|
+
lock(privateApis, {
|
|
37
|
+
EditorCanvas,
|
|
38
|
+
ExperimentalEditorProvider,
|
|
39
|
+
EntitiesSavedStatesExtensible,
|
|
40
|
+
InserterSidebar,
|
|
41
|
+
ListViewSidebar,
|
|
42
|
+
PatternOverridesPanel,
|
|
43
|
+
PluginPostExcerpt,
|
|
44
|
+
PostActions,
|
|
45
|
+
PostPanelRow,
|
|
46
|
+
PreferencesModal,
|
|
47
|
+
usePostActions,
|
|
48
|
+
PostCardPanel,
|
|
49
|
+
PostStatus,
|
|
50
|
+
ToolsMoreMenuGroup,
|
|
51
|
+
ViewMoreMenuGroup,
|
|
52
|
+
PrivatePostExcerptPanel,
|
|
53
|
+
SavePublishPanels,
|
|
54
|
+
PostContentInformation,
|
|
55
|
+
PostLastEditedPanel,
|
|
56
|
+
// This is a temporary private API while we're updating the site editor to use EditorProvider.
|
|
57
|
+
useAutoSwitchEditorSidebars,
|
|
58
|
+
useBlockEditorSettings,
|
|
59
|
+
interfaceStore,
|
|
60
|
+
...remainingInterfaceApis
|
|
61
|
+
});
|
|
62
|
+
//# sourceMappingURL=private-apis.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["interfaceApis","EditorCanvas","ExperimentalEditorProvider","lock","EntitiesSavedStatesExtensible","useAutoSwitchEditorSidebars","useBlockEditorSettings","InserterSidebar","ListViewSidebar","PatternOverridesPanel","PluginPostExcerpt","PostPanelRow","PreferencesModal","PostActions","usePostActions","PostCardPanel","PostStatus","ToolsMoreMenuGroup","ViewMoreMenuGroup","PrivatePostExcerptPanel","SavePublishPanels","PostContentInformation","PostLastEditedPanel","store","interfaceStore","remainingInterfaceApis","privateApis"],"sources":["@wordpress/editor/src/private-apis.native.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport * as interfaceApis from '@wordpress/interface';\n\n/**\n * Internal dependencies\n */\nimport EditorCanvas from './components/editor-canvas';\nimport { ExperimentalEditorProvider } from './components/provider';\nimport { lock } from './lock-unlock';\nimport { EntitiesSavedStatesExtensible } from './components/entities-saved-states';\nimport useAutoSwitchEditorSidebars from './components/provider/use-auto-switch-editor-sidebars';\nimport useBlockEditorSettings from './components/provider/use-block-editor-settings';\nimport InserterSidebar from './components/inserter-sidebar';\nimport ListViewSidebar from './components/list-view-sidebar';\nimport PatternOverridesPanel from './components/pattern-overrides-panel';\nimport PluginPostExcerpt from './components/post-excerpt/plugin';\nimport PostPanelRow from './components/post-panel-row';\nimport PreferencesModal from './components/preferences-modal';\nimport PostActions from './components/post-actions';\nimport { usePostActions } from './components/post-actions/actions';\nimport PostCardPanel from './components/post-card-panel';\nimport PostStatus from './components/post-status';\nimport ToolsMoreMenuGroup from './components/more-menu/tools-more-menu-group';\nimport ViewMoreMenuGroup from './components/more-menu/view-more-menu-group';\nimport { PrivatePostExcerptPanel } from './components/post-excerpt/panel';\nimport SavePublishPanels from './components/save-publish-panels';\nimport PostContentInformation from './components/post-content-information';\nimport PostLastEditedPanel from './components/post-last-edited-panel';\n\nconst { store: interfaceStore, ...remainingInterfaceApis } = interfaceApis;\n\nexport const privateApis = {};\nlock( privateApis, {\n\tEditorCanvas,\n\tExperimentalEditorProvider,\n\tEntitiesSavedStatesExtensible,\n\tInserterSidebar,\n\tListViewSidebar,\n\tPatternOverridesPanel,\n\tPluginPostExcerpt,\n\tPostActions,\n\tPostPanelRow,\n\tPreferencesModal,\n\tusePostActions,\n\tPostCardPanel,\n\tPostStatus,\n\tToolsMoreMenuGroup,\n\tViewMoreMenuGroup,\n\tPrivatePostExcerptPanel,\n\tSavePublishPanels,\n\tPostContentInformation,\n\tPostLastEditedPanel,\n\n\t// This is a temporary private API while we're updating the site editor to use EditorProvider.\n\tuseAutoSwitchEditorSidebars,\n\tuseBlockEditorSettings,\n\tinterfaceStore,\n\t...remainingInterfaceApis,\n} );\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAO,KAAKA,aAAa,MAAM,sBAAsB;;AAErD;AACA;AACA;AACA,OAAOC,YAAY,MAAM,4BAA4B;AACrD,SAASC,0BAA0B,QAAQ,uBAAuB;AAClE,SAASC,IAAI,QAAQ,eAAe;AACpC,SAASC,6BAA6B,QAAQ,oCAAoC;AAClF,OAAOC,2BAA2B,MAAM,uDAAuD;AAC/F,OAAOC,sBAAsB,MAAM,iDAAiD;AACpF,OAAOC,eAAe,MAAM,+BAA+B;AAC3D,OAAOC,eAAe,MAAM,gCAAgC;AAC5D,OAAOC,qBAAqB,MAAM,sCAAsC;AACxE,OAAOC,iBAAiB,MAAM,kCAAkC;AAChE,OAAOC,YAAY,MAAM,6BAA6B;AACtD,OAAOC,gBAAgB,MAAM,gCAAgC;AAC7D,OAAOC,WAAW,MAAM,2BAA2B;AACnD,SAASC,cAAc,QAAQ,mCAAmC;AAClE,OAAOC,aAAa,MAAM,8BAA8B;AACxD,OAAOC,UAAU,MAAM,0BAA0B;AACjD,OAAOC,kBAAkB,MAAM,8CAA8C;AAC7E,OAAOC,iBAAiB,MAAM,6CAA6C;AAC3E,SAASC,uBAAuB,QAAQ,iCAAiC;AACzE,OAAOC,iBAAiB,MAAM,kCAAkC;AAChE,OAAOC,sBAAsB,MAAM,uCAAuC;AAC1E,OAAOC,mBAAmB,MAAM,qCAAqC;AAErE,MAAM;EAAEC,KAAK,EAAEC,cAAc;EAAE,GAAGC;AAAuB,CAAC,GAAGzB,aAAa;AAE1E,OAAO,MAAM0B,WAAW,GAAG,CAAC,CAAC;AAC7BvB,IAAI,CAAEuB,WAAW,EAAE;EAClBzB,YAAY;EACZC,0BAA0B;EAC1BE,6BAA6B;EAC7BG,eAAe;EACfC,eAAe;EACfC,qBAAqB;EACrBC,iBAAiB;EACjBG,WAAW;EACXF,YAAY;EACZC,gBAAgB;EAChBE,cAAc;EACdC,aAAa;EACbC,UAAU;EACVC,kBAAkB;EAClBC,iBAAiB;EACjBC,uBAAuB;EACvBC,iBAAiB;EACjBC,sBAAsB;EACtBC,mBAAmB;EAEnB;EACAjB,2BAA2B;EAC3BC,sBAAsB;EACtBkB,cAAc;EACd,GAAGC;AACJ,CAAE,CAAC","ignoreList":[]}
|
|
@@ -47,6 +47,9 @@ export const getInsertionPoint = createRegistrySelector(select => createSelector
|
|
|
47
47
|
export function getListViewToggleRef(state) {
|
|
48
48
|
return state.listViewToggleRef;
|
|
49
49
|
}
|
|
50
|
+
export function getInserterSidebarToggleRef(state) {
|
|
51
|
+
return state.inserterSidebarToggleRef;
|
|
52
|
+
}
|
|
50
53
|
const CARD_ICONS = {
|
|
51
54
|
wp_block: symbol,
|
|
52
55
|
wp_navigation: navigation,
|