@wordpress/editor 14.0.3 → 14.0.4
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/build/bindings/pattern-overrides.js +8 -5
- package/build/bindings/pattern-overrides.js.map +1 -1
- package/build/components/editor/index.js +5 -0
- package/build/components/editor/index.js.map +1 -1
- package/build/components/editor-interface/index.js +2 -1
- package/build/components/editor-interface/index.js.map +1 -1
- package/build/components/post-actions/actions.js +1 -1
- package/build/components/post-actions/actions.js.map +1 -1
- package/build/components/save-publish-panels/index.js +30 -16
- package/build/components/save-publish-panels/index.js.map +1 -1
- package/build/hooks/pattern-overrides.js +2 -2
- package/build/hooks/pattern-overrides.js.map +1 -1
- package/build-module/bindings/pattern-overrides.js +8 -5
- package/build-module/bindings/pattern-overrides.js.map +1 -1
- package/build-module/components/editor/index.js +5 -0
- package/build-module/components/editor/index.js.map +1 -1
- package/build-module/components/editor-interface/index.js +2 -1
- package/build-module/components/editor-interface/index.js.map +1 -1
- package/build-module/components/post-actions/actions.js +1 -1
- package/build-module/components/post-actions/actions.js.map +1 -1
- package/build-module/components/save-publish-panels/index.js +30 -16
- package/build-module/components/save-publish-panels/index.js.map +1 -1
- package/build-module/hooks/pattern-overrides.js +3 -1
- package/build-module/hooks/pattern-overrides.js.map +1 -1
- package/build-style/style-rtl.css +12 -1
- package/build-style/style.css +12 -1
- package/package.json +6 -6
- package/src/bindings/pattern-overrides.js +9 -10
- package/src/components/editor/index.js +6 -0
- package/src/components/editor-interface/index.js +17 -12
- package/src/components/post-actions/actions.js +5 -1
- package/src/components/post-featured-image/style.scss +15 -0
- package/src/components/save-publish-panels/index.js +33 -23
- package/src/components/visual-editor/style.scss +1 -1
- package/src/hooks/pattern-overrides.js +4 -1
|
@@ -42,13 +42,25 @@ function SavePublishPanels({
|
|
|
42
42
|
} = (0, _data.useDispatch)(_store.store);
|
|
43
43
|
const {
|
|
44
44
|
publishSidebarOpened,
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
45
|
+
isPublishable,
|
|
46
|
+
isDirty,
|
|
47
|
+
hasOtherEntitiesChanges
|
|
48
|
+
} = (0, _data.useSelect)(select => {
|
|
49
|
+
const {
|
|
50
|
+
isPublishSidebarOpened,
|
|
51
|
+
isEditedPostPublishable,
|
|
52
|
+
isCurrentPostPublished,
|
|
53
|
+
isEditedPostDirty,
|
|
54
|
+
hasNonPostEntityChanges
|
|
55
|
+
} = select(_store.store);
|
|
56
|
+
const _hasOtherEntitiesChanges = hasNonPostEntityChanges() || (0, _lockUnlock.unlock)(select(_store.store)).hasPostMetaChanges();
|
|
57
|
+
return {
|
|
58
|
+
publishSidebarOpened: isPublishSidebarOpened(),
|
|
59
|
+
isPublishable: !isCurrentPostPublished() && isEditedPostPublishable(),
|
|
60
|
+
isDirty: _hasOtherEntitiesChanges || isEditedPostDirty(),
|
|
61
|
+
hasOtherEntitiesChanges: _hasOtherEntitiesChanges
|
|
62
|
+
};
|
|
63
|
+
}, []);
|
|
52
64
|
const openEntitiesSavedStates = (0, _element.useCallback)(() => setEntitiesSavedStatesCallback(true), []);
|
|
53
65
|
|
|
54
66
|
// It is ok for these components to be unmounted when not in visual use.
|
|
@@ -61,26 +73,28 @@ function SavePublishPanels({
|
|
|
61
73
|
PrePublishExtension: _pluginPrePublishPanel.default.Slot,
|
|
62
74
|
PostPublishExtension: _pluginPostPublishPanel.default.Slot
|
|
63
75
|
});
|
|
64
|
-
} else if (
|
|
76
|
+
} else if (isPublishable && !hasOtherEntitiesChanges) {
|
|
65
77
|
unmountableContent = /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
66
|
-
className: "editor-layout__toggle-
|
|
78
|
+
className: "editor-layout__toggle-publish-panel",
|
|
67
79
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
|
|
68
80
|
variant: "secondary",
|
|
69
|
-
className: "editor-layout__toggle-
|
|
70
|
-
onClick:
|
|
81
|
+
className: "editor-layout__toggle-publish-panel-button",
|
|
82
|
+
onClick: togglePublishSidebar,
|
|
71
83
|
"aria-expanded": false,
|
|
72
|
-
children: (0, _i18n.__)('Open
|
|
84
|
+
children: (0, _i18n.__)('Open publish panel')
|
|
73
85
|
})
|
|
74
86
|
});
|
|
75
87
|
} else {
|
|
76
88
|
unmountableContent = /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
77
|
-
className: "editor-layout__toggle-
|
|
89
|
+
className: "editor-layout__toggle-entities-saved-states-panel",
|
|
78
90
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
|
|
79
91
|
variant: "secondary",
|
|
80
|
-
className: "editor-layout__toggle-
|
|
81
|
-
onClick:
|
|
92
|
+
className: "editor-layout__toggle-entities-saved-states-panel-button",
|
|
93
|
+
onClick: openEntitiesSavedStates,
|
|
82
94
|
"aria-expanded": false,
|
|
83
|
-
|
|
95
|
+
disabled: !isDirty,
|
|
96
|
+
__experimentalIsFocusable: true,
|
|
97
|
+
children: (0, _i18n.__)('Open save panel')
|
|
84
98
|
})
|
|
85
99
|
});
|
|
86
100
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_data","require","_components","_i18n","_element","_entitiesSavedStates","_interopRequireDefault","_postPublishPanel","_pluginPrePublishPanel","_pluginPostPublishPanel","_store","_lockUnlock","_jsxRuntime","Fill","Slot","createSlotFill","ActionsPanelFill","exports","SavePublishPanels","setEntitiesSavedStatesCallback","closeEntitiesSavedStates","isEntitiesSavedStatesOpen","forceIsDirtyPublishPanel","closePublishSidebar","togglePublishSidebar","useDispatch","editorStore","publishSidebarOpened","
|
|
1
|
+
{"version":3,"names":["_data","require","_components","_i18n","_element","_entitiesSavedStates","_interopRequireDefault","_postPublishPanel","_pluginPrePublishPanel","_pluginPostPublishPanel","_store","_lockUnlock","_jsxRuntime","Fill","Slot","createSlotFill","ActionsPanelFill","exports","SavePublishPanels","setEntitiesSavedStatesCallback","closeEntitiesSavedStates","isEntitiesSavedStatesOpen","forceIsDirtyPublishPanel","closePublishSidebar","togglePublishSidebar","useDispatch","editorStore","publishSidebarOpened","isPublishable","isDirty","hasOtherEntitiesChanges","useSelect","select","isPublishSidebarOpened","isEditedPostPublishable","isCurrentPostPublished","isEditedPostDirty","hasNonPostEntityChanges","_hasOtherEntitiesChanges","unlock","hasPostMetaChanges","openEntitiesSavedStates","useCallback","unmountableContent","jsx","default","onClose","forceIsDirty","PrePublishExtension","PluginPrePublishPanel","PostPublishExtension","PluginPostPublishPanel","className","children","Button","variant","onClick","__","disabled","__experimentalIsFocusable","jsxs","Fragment","close","bubblesVirtually"],"sources":["@wordpress/editor/src/components/save-publish-panels/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { Button, createSlotFill } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useCallback } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport EntitiesSavedStates from '../entities-saved-states';\nimport PostPublishPanel from '../post-publish-panel';\nimport PluginPrePublishPanel from '../plugin-pre-publish-panel';\nimport PluginPostPublishPanel from '../plugin-post-publish-panel';\nimport { store as editorStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\n\nconst { Fill, Slot } = createSlotFill( 'ActionsPanel' );\n\nexport const ActionsPanelFill = Fill;\n\nexport default function SavePublishPanels( {\n\tsetEntitiesSavedStatesCallback,\n\tcloseEntitiesSavedStates,\n\tisEntitiesSavedStatesOpen,\n\tforceIsDirtyPublishPanel,\n} ) {\n\tconst { closePublishSidebar, togglePublishSidebar } =\n\t\tuseDispatch( editorStore );\n\tconst {\n\t\tpublishSidebarOpened,\n\t\tisPublishable,\n\t\tisDirty,\n\t\thasOtherEntitiesChanges,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tisPublishSidebarOpened,\n\t\t\tisEditedPostPublishable,\n\t\t\tisCurrentPostPublished,\n\t\t\tisEditedPostDirty,\n\t\t\thasNonPostEntityChanges,\n\t\t} = select( editorStore );\n\t\tconst _hasOtherEntitiesChanges =\n\t\t\thasNonPostEntityChanges() ||\n\t\t\tunlock( select( editorStore ) ).hasPostMetaChanges();\n\t\treturn {\n\t\t\tpublishSidebarOpened: isPublishSidebarOpened(),\n\t\t\tisPublishable:\n\t\t\t\t! isCurrentPostPublished() && isEditedPostPublishable(),\n\t\t\tisDirty: _hasOtherEntitiesChanges || isEditedPostDirty(),\n\t\t\thasOtherEntitiesChanges: _hasOtherEntitiesChanges,\n\t\t};\n\t}, [] );\n\n\tconst openEntitiesSavedStates = useCallback(\n\t\t() => setEntitiesSavedStatesCallback( true ),\n\t\t[]\n\t);\n\n\t// It is ok for these components to be unmounted when not in visual use.\n\t// We don't want more than one present at a time, decide which to render.\n\tlet unmountableContent;\n\tif ( publishSidebarOpened ) {\n\t\tunmountableContent = (\n\t\t\t<PostPublishPanel\n\t\t\t\tonClose={ closePublishSidebar }\n\t\t\t\tforceIsDirty={ forceIsDirtyPublishPanel }\n\t\t\t\tPrePublishExtension={ PluginPrePublishPanel.Slot }\n\t\t\t\tPostPublishExtension={ PluginPostPublishPanel.Slot }\n\t\t\t/>\n\t\t);\n\t} else if ( isPublishable && ! hasOtherEntitiesChanges ) {\n\t\tunmountableContent = (\n\t\t\t<div className=\"editor-layout__toggle-publish-panel\">\n\t\t\t\t<Button\n\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\tclassName=\"editor-layout__toggle-publish-panel-button\"\n\t\t\t\t\tonClick={ togglePublishSidebar }\n\t\t\t\t\taria-expanded={ false }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Open publish panel' ) }\n\t\t\t\t</Button>\n\t\t\t</div>\n\t\t);\n\t} else {\n\t\tunmountableContent = (\n\t\t\t<div className=\"editor-layout__toggle-entities-saved-states-panel\">\n\t\t\t\t<Button\n\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\tclassName=\"editor-layout__toggle-entities-saved-states-panel-button\"\n\t\t\t\t\tonClick={ openEntitiesSavedStates }\n\t\t\t\t\taria-expanded={ false }\n\t\t\t\t\tdisabled={ ! isDirty }\n\t\t\t\t\t__experimentalIsFocusable\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Open save panel' ) }\n\t\t\t\t</Button>\n\t\t\t</div>\n\t\t);\n\t}\n\n\t// Since EntitiesSavedStates controls its own panel, we can keep it\n\t// always mounted to retain its own component state (such as checkboxes).\n\treturn (\n\t\t<>\n\t\t\t{ isEntitiesSavedStatesOpen && (\n\t\t\t\t<EntitiesSavedStates close={ closeEntitiesSavedStates } />\n\t\t\t) }\n\t\t\t<Slot bubblesVirtually />\n\t\t\t{ ! isEntitiesSavedStatesOpen && unmountableContent }\n\t\t</>\n\t);\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AAKA,IAAAI,oBAAA,GAAAC,sBAAA,CAAAL,OAAA;AACA,IAAAM,iBAAA,GAAAD,sBAAA,CAAAL,OAAA;AACA,IAAAO,sBAAA,GAAAF,sBAAA,CAAAL,OAAA;AACA,IAAAQ,uBAAA,GAAAH,sBAAA,CAAAL,OAAA;AACA,IAAAS,MAAA,GAAAT,OAAA;AACA,IAAAU,WAAA,GAAAV,OAAA;AAA2C,IAAAW,WAAA,GAAAX,OAAA;AAhB3C;AACA;AACA;;AAMA;AACA;AACA;;AAQA,MAAM;EAAEY,IAAI;EAAEC;AAAK,CAAC,GAAG,IAAAC,0BAAc,EAAE,cAAe,CAAC;AAEhD,MAAMC,gBAAgB,GAAAC,OAAA,CAAAD,gBAAA,GAAGH,IAAI;AAErB,SAASK,iBAAiBA,CAAE;EAC1CC,8BAA8B;EAC9BC,wBAAwB;EACxBC,yBAAyB;EACzBC;AACD,CAAC,EAAG;EACH,MAAM;IAAEC,mBAAmB;IAAEC;EAAqB,CAAC,GAClD,IAAAC,iBAAW,EAAEC,YAAY,CAAC;EAC3B,MAAM;IACLC,oBAAoB;IACpBC,aAAa;IACbC,OAAO;IACPC;EACD,CAAC,GAAG,IAAAC,eAAS,EAAIC,MAAM,IAAM;IAC5B,MAAM;MACLC,sBAAsB;MACtBC,uBAAuB;MACvBC,sBAAsB;MACtBC,iBAAiB;MACjBC;IACD,CAAC,GAAGL,MAAM,CAAEN,YAAY,CAAC;IACzB,MAAMY,wBAAwB,GAC7BD,uBAAuB,CAAC,CAAC,IACzB,IAAAE,kBAAM,EAAEP,MAAM,CAAEN,YAAY,CAAE,CAAC,CAACc,kBAAkB,CAAC,CAAC;IACrD,OAAO;MACNb,oBAAoB,EAAEM,sBAAsB,CAAC,CAAC;MAC9CL,aAAa,EACZ,CAAEO,sBAAsB,CAAC,CAAC,IAAID,uBAAuB,CAAC,CAAC;MACxDL,OAAO,EAAES,wBAAwB,IAAIF,iBAAiB,CAAC,CAAC;MACxDN,uBAAuB,EAAEQ;IAC1B,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,MAAMG,uBAAuB,GAAG,IAAAC,oBAAW,EAC1C,MAAMvB,8BAA8B,CAAE,IAAK,CAAC,EAC5C,EACD,CAAC;;EAED;EACA;EACA,IAAIwB,kBAAkB;EACtB,IAAKhB,oBAAoB,EAAG;IAC3BgB,kBAAkB,gBACjB,IAAA/B,WAAA,CAAAgC,GAAA,EAACrC,iBAAA,CAAAsC,OAAgB;MAChBC,OAAO,EAAGvB,mBAAqB;MAC/BwB,YAAY,EAAGzB,wBAA0B;MACzC0B,mBAAmB,EAAGC,8BAAqB,CAACnC,IAAM;MAClDoC,oBAAoB,EAAGC,+BAAsB,CAACrC;IAAM,CACpD,CACD;EACF,CAAC,MAAM,IAAKc,aAAa,IAAI,CAAEE,uBAAuB,EAAG;IACxDa,kBAAkB,gBACjB,IAAA/B,WAAA,CAAAgC,GAAA;MAAKQ,SAAS,EAAC,qCAAqC;MAAAC,QAAA,eACnD,IAAAzC,WAAA,CAAAgC,GAAA,EAAC1C,WAAA,CAAAoD,MAAM;QACNC,OAAO,EAAC,WAAW;QACnBH,SAAS,EAAC,4CAA4C;QACtDI,OAAO,EAAGhC,oBAAsB;QAChC,iBAAgB,KAAO;QAAA6B,QAAA,EAErB,IAAAI,QAAE,EAAE,oBAAqB;MAAC,CACrB;IAAC,CACL,CACL;EACF,CAAC,MAAM;IACNd,kBAAkB,gBACjB,IAAA/B,WAAA,CAAAgC,GAAA;MAAKQ,SAAS,EAAC,mDAAmD;MAAAC,QAAA,eACjE,IAAAzC,WAAA,CAAAgC,GAAA,EAAC1C,WAAA,CAAAoD,MAAM;QACNC,OAAO,EAAC,WAAW;QACnBH,SAAS,EAAC,0DAA0D;QACpEI,OAAO,EAAGf,uBAAyB;QACnC,iBAAgB,KAAO;QACvBiB,QAAQ,EAAG,CAAE7B,OAAS;QACtB8B,yBAAyB;QAAAN,QAAA,EAEvB,IAAAI,QAAE,EAAE,iBAAkB;MAAC,CAClB;IAAC,CACL,CACL;EACF;;EAEA;EACA;EACA,oBACC,IAAA7C,WAAA,CAAAgD,IAAA,EAAAhD,WAAA,CAAAiD,QAAA;IAAAR,QAAA,GACGhC,yBAAyB,iBAC1B,IAAAT,WAAA,CAAAgC,GAAA,EAACvC,oBAAA,CAAAwC,OAAmB;MAACiB,KAAK,EAAG1C;IAA0B,CAAE,CACzD,eACD,IAAAR,WAAA,CAAAgC,GAAA,EAAC9B,IAAI;MAACiD,gBAAgB;IAAA,CAAE,CAAC,EACvB,CAAE1C,yBAAyB,IAAIsB,kBAAkB;EAAA,CAClD,CAAC;AAEL","ignoreList":[]}
|
|
@@ -17,7 +17,7 @@ var _jsxRuntime = require("react/jsx-runtime");
|
|
|
17
17
|
* Internal dependencies
|
|
18
18
|
*/
|
|
19
19
|
|
|
20
|
-
const {
|
|
20
|
+
/** @typedef {import('@wordpress/blocks').WPBlockSettings} WPBlockSettings */const {
|
|
21
21
|
PatternOverridesControls,
|
|
22
22
|
ResetOverridesControl,
|
|
23
23
|
PatternOverridesBlockControls,
|
|
@@ -44,7 +44,7 @@ const withPatternOverrideControls = (0, _compose.createHigherOrderComponent)(Blo
|
|
|
44
44
|
...props
|
|
45
45
|
}), isSupportedBlock && /*#__PURE__*/(0, _jsxRuntime.jsx)(PatternOverridesBlockControls, {})]
|
|
46
46
|
});
|
|
47
|
-
});
|
|
47
|
+
}, 'withPatternOverrideControls');
|
|
48
48
|
|
|
49
49
|
// Split into a separate component to avoid a store subscription
|
|
50
50
|
// on every block.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_hooks","require","_patterns","_compose","_blockEditor","_data","_blocks","_store","_lockUnlock","_jsxRuntime","PatternOverridesControls","ResetOverridesControl","PatternOverridesBlockControls","PATTERN_TYPES","PARTIAL_SYNCING_SUPPORTED_BLOCKS","PATTERN_SYNC_TYPES","unlock","patternsPrivateApis","withPatternOverrideControls","createHigherOrderComponent","BlockEdit","props","isSupportedBlock","name","jsxs","Fragment","children","jsx","isSelected","ControlsWithStoreSubscription","blockEditingMode","useBlockEditingMode","hasPatternOverridesSource","isEditingSyncedPattern","useSelect","select","getBlockBindingsSource","blocksStore","getCurrentPostType","getEditedPostAttribute","editorStore","user","wp_pattern_sync_status","unsynced","bindings","attributes","metadata","hasPatternBindings","Object","values","some","binding","source","shouldShowPatternOverridesControls","shouldShowResetOverridesControl","addFilter"],"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\tPatternOverridesBlockControls,\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 =\n\t\t\t!! PARTIAL_SYNCING_SUPPORTED_BLOCKS[ 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\t{ isSupportedBlock && <PatternOverridesBlockControls /> }\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":";;AAGA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,YAAA,GAAAH,OAAA;AACA,IAAAI,KAAA,GAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAL,OAAA;AAKA,IAAAM,MAAA,GAAAN,OAAA;AACA,IAAAO,WAAA,GAAAP,OAAA;AAAwC,IAAAQ,WAAA,GAAAR,OAAA;AAdxC;AACA;AACA;;AAQA;AACA;AACA;;AAIA,MAAM;EACLS,wBAAwB;EACxBC,qBAAqB;EACrBC,6BAA6B;EAC7BC,aAAa;EACbC,gCAAgC;EAChCC;AACD,CAAC,GAAG,IAAAC,kBAAM,EAAEC,qBAAoB,CAAC;;AAEjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,2BAA2B,GAAG,IAAAC,mCAA0B,EAC3DC,SAAS,IAAQC,KAAK,IAAM;EAC7B,MAAMC,gBAAgB,GACrB,CAAC,CAAER,gCAAgC,CAAEO,KAAK,CAACE,IAAI,CAAE;EAElD,oBACC,IAAAd,WAAA,CAAAe,IAAA,EAAAf,WAAA,CAAAgB,QAAA;IAAAC,QAAA,gBACC,IAAAjB,WAAA,CAAAkB,GAAA,EAACP,SAAS;MAAA,GAAMC;IAAK,CAAI,CAAC,EACxBA,KAAK,CAACO,UAAU,IAAIN,gBAAgB,iBACrC,IAAAb,WAAA,CAAAkB,GAAA,EAACE,6BAA6B;MAAA,GAAMR;IAAK,CAAI,CAC7C,EACCC,gBAAgB,iBAAI,IAAAb,WAAA,CAAAkB,GAAA,EAACf,6BAA6B,IAAE,CAAC;EAAA,CACtD,CAAC;AAEL,
|
|
1
|
+
{"version":3,"names":["_hooks","require","_patterns","_compose","_blockEditor","_data","_blocks","_store","_lockUnlock","_jsxRuntime","PatternOverridesControls","ResetOverridesControl","PatternOverridesBlockControls","PATTERN_TYPES","PARTIAL_SYNCING_SUPPORTED_BLOCKS","PATTERN_SYNC_TYPES","unlock","patternsPrivateApis","withPatternOverrideControls","createHigherOrderComponent","BlockEdit","props","isSupportedBlock","name","jsxs","Fragment","children","jsx","isSelected","ControlsWithStoreSubscription","blockEditingMode","useBlockEditingMode","hasPatternOverridesSource","isEditingSyncedPattern","useSelect","select","getBlockBindingsSource","blocksStore","getCurrentPostType","getEditedPostAttribute","editorStore","user","wp_pattern_sync_status","unsynced","bindings","attributes","metadata","hasPatternBindings","Object","values","some","binding","source","shouldShowPatternOverridesControls","shouldShowResetOverridesControl","addFilter"],"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\n/** @typedef {import('@wordpress/blocks').WPBlockSettings} WPBlockSettings */\n\nconst {\n\tPatternOverridesControls,\n\tResetOverridesControl,\n\tPatternOverridesBlockControls,\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 =\n\t\t\t!! PARTIAL_SYNCING_SUPPORTED_BLOCKS[ 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\t{ isSupportedBlock && <PatternOverridesBlockControls /> }\n\t\t\t</>\n\t\t);\n\t},\n\t'withPatternOverrideControls'\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":[]}
|
|
@@ -10,18 +10,21 @@ export default {
|
|
|
10
10
|
getValue({
|
|
11
11
|
registry,
|
|
12
12
|
clientId,
|
|
13
|
+
context,
|
|
13
14
|
attributeName
|
|
14
15
|
}) {
|
|
16
|
+
const patternOverridesContent = context['pattern/overrides'];
|
|
15
17
|
const {
|
|
16
|
-
getBlockAttributes
|
|
17
|
-
getBlockParentsByBlockName
|
|
18
|
+
getBlockAttributes
|
|
18
19
|
} = registry.select(blockEditorStore);
|
|
19
20
|
const currentBlockAttributes = getBlockAttributes(clientId);
|
|
20
|
-
|
|
21
|
-
|
|
21
|
+
if (!patternOverridesContent) {
|
|
22
|
+
return currentBlockAttributes[attributeName];
|
|
23
|
+
}
|
|
24
|
+
const overridableValue = patternOverridesContent?.[currentBlockAttributes?.metadata?.name]?.[attributeName];
|
|
22
25
|
|
|
23
26
|
// If there is no pattern client ID, or it is not overwritten, return the default value.
|
|
24
|
-
if (
|
|
27
|
+
if (overridableValue === undefined) {
|
|
25
28
|
return currentBlockAttributes[attributeName];
|
|
26
29
|
}
|
|
27
30
|
return overridableValue === '' ? undefined : overridableValue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_x","store","blockEditorStore","CONTENT","name","label","getValue","registry","clientId","attributeName","
|
|
1
|
+
{"version":3,"names":["_x","store","blockEditorStore","CONTENT","name","label","getValue","registry","clientId","context","attributeName","patternOverridesContent","getBlockAttributes","select","currentBlockAttributes","overridableValue","metadata","undefined","setValues","attributes","getBlockParentsByBlockName","getBlocks","blockName","patternClientId","syncBlocksWithSameName","blocks","block","dispatch","updateBlockAttributes","innerBlocks","currentBindingValue","Object","entries","reduce","acc","key","value","canUserEditValue"],"sources":["@wordpress/editor/src/bindings/pattern-overrides.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { _x } from '@wordpress/i18n';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\nconst CONTENT = 'content';\n\nexport default {\n\tname: 'core/pattern-overrides',\n\tlabel: _x( 'Pattern Overrides', 'block bindings source' ),\n\tgetValue( { registry, clientId, context, attributeName } ) {\n\t\tconst patternOverridesContent = context[ 'pattern/overrides' ];\n\t\tconst { getBlockAttributes } = registry.select( blockEditorStore );\n\t\tconst currentBlockAttributes = getBlockAttributes( clientId );\n\n\t\tif ( ! patternOverridesContent ) {\n\t\t\treturn currentBlockAttributes[ attributeName ];\n\t\t}\n\n\t\tconst overridableValue =\n\t\t\tpatternOverridesContent?.[\n\t\t\t\tcurrentBlockAttributes?.metadata?.name\n\t\t\t]?.[ attributeName ];\n\n\t\t// If there is no pattern client ID, or it is not overwritten, return the default value.\n\t\tif ( overridableValue === undefined ) {\n\t\t\treturn currentBlockAttributes[ attributeName ];\n\t\t}\n\n\t\treturn overridableValue === '' ? undefined : overridableValue;\n\t},\n\tsetValues( { registry, clientId, attributes } ) {\n\t\tconst { getBlockAttributes, getBlockParentsByBlockName, getBlocks } =\n\t\t\tregistry.select( blockEditorStore );\n\t\tconst currentBlockAttributes = getBlockAttributes( clientId );\n\t\tconst blockName = currentBlockAttributes?.metadata?.name;\n\t\tif ( ! blockName ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst [ patternClientId ] = getBlockParentsByBlockName(\n\t\t\tclientId,\n\t\t\t'core/block',\n\t\t\ttrue\n\t\t);\n\n\t\t// If there is no pattern client ID, sync blocks with the same name and same attributes.\n\t\tif ( ! patternClientId ) {\n\t\t\tconst syncBlocksWithSameName = ( blocks ) => {\n\t\t\t\tfor ( const block of blocks ) {\n\t\t\t\t\tif ( block.attributes?.metadata?.name === blockName ) {\n\t\t\t\t\t\tregistry\n\t\t\t\t\t\t\t.dispatch( blockEditorStore )\n\t\t\t\t\t\t\t.updateBlockAttributes(\n\t\t\t\t\t\t\t\tblock.clientId,\n\t\t\t\t\t\t\t\tattributes\n\t\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tsyncBlocksWithSameName( block.innerBlocks );\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tsyncBlocksWithSameName( getBlocks() );\n\t\t\treturn;\n\t\t}\n\t\tconst currentBindingValue =\n\t\t\tgetBlockAttributes( patternClientId )?.[ CONTENT ];\n\t\tregistry\n\t\t\t.dispatch( blockEditorStore )\n\t\t\t.updateBlockAttributes( patternClientId, {\n\t\t\t\t[ CONTENT ]: {\n\t\t\t\t\t...currentBindingValue,\n\t\t\t\t\t[ blockName ]: {\n\t\t\t\t\t\t...currentBindingValue?.[ blockName ],\n\t\t\t\t\t\t...Object.entries( attributes ).reduce(\n\t\t\t\t\t\t\t( acc, [ key, value ] ) => {\n\t\t\t\t\t\t\t\t// TODO: We need a way to represent `undefined` in the serialized overrides.\n\t\t\t\t\t\t\t\t// Also see: https://github.com/WordPress/gutenberg/pull/57249#discussion_r1452987871\n\t\t\t\t\t\t\t\t// We use an empty string to represent undefined for now until\n\t\t\t\t\t\t\t\t// we support a richer format for overrides and the block bindings API.\n\t\t\t\t\t\t\t\tacc[ key ] = value === undefined ? '' : value;\n\t\t\t\t\t\t\t\treturn acc;\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{}\n\t\t\t\t\t\t),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t} );\n\t},\n\tcanUserEditValue: () => true,\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -28,6 +28,7 @@ function Editor({
|
|
|
28
28
|
className,
|
|
29
29
|
styles,
|
|
30
30
|
customSaveButton,
|
|
31
|
+
customSavePanel,
|
|
31
32
|
forceDisableBlockTools,
|
|
32
33
|
title,
|
|
33
34
|
iframeProps,
|
|
@@ -49,6 +50,9 @@ function Editor({
|
|
|
49
50
|
hasLoadedPost: hasFinishedResolution('getEntityRecord', ['postType', postType, postId])
|
|
50
51
|
};
|
|
51
52
|
}, [postType, postId, templateId]);
|
|
53
|
+
if (!post) {
|
|
54
|
+
return null;
|
|
55
|
+
}
|
|
52
56
|
return /*#__PURE__*/_jsxs(ExperimentalEditorProvider, {
|
|
53
57
|
post: post,
|
|
54
58
|
__unstableTemplate: template,
|
|
@@ -63,6 +67,7 @@ function Editor({
|
|
|
63
67
|
styles: styles,
|
|
64
68
|
enableRegionNavigation: enableRegionNavigation,
|
|
65
69
|
customSaveButton: customSaveButton,
|
|
70
|
+
customSavePanel: customSavePanel,
|
|
66
71
|
forceDisableBlockTools: forceDisableBlockTools,
|
|
67
72
|
title: title,
|
|
68
73
|
iframeProps: iframeProps
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useSelect","store","coreStore","Notice","__","TEMPLATE_POST_TYPE","EditorInterface","ExperimentalEditorProvider","Sidebar","jsx","_jsx","jsxs","_jsxs","Editor","postType","postId","templateId","settings","children","onActionPerformed","className","styles","customSaveButton","forceDisableBlockTools","title","iframeProps","extraSidebarPanels","enableRegionNavigation","post","template","hasLoadedPost","select","getEntityRecord","hasFinishedResolution","undefined","__unstableTemplate","useSubRegistry","status","isDismissible","extraPanels"],"sources":["@wordpress/editor/src/components/editor/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { Notice } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { TEMPLATE_POST_TYPE } from '../../store/constants';\nimport EditorInterface from '../editor-interface';\nimport { ExperimentalEditorProvider } from '../provider';\nimport Sidebar from '../sidebar';\n\nfunction Editor( {\n\tpostType,\n\tpostId,\n\ttemplateId,\n\tsettings,\n\tchildren,\n\n\t// This could be part of the settings.\n\tonActionPerformed,\n\n\t// The following abstractions are not ideal but necessary\n\t// to account for site editor and post editor differences for now.\n\tclassName,\n\tstyles,\n\tcustomSaveButton,\n\tforceDisableBlockTools,\n\ttitle,\n\tiframeProps,\n\textraSidebarPanels,\n\tenableRegionNavigation = true,\n} ) {\n\tconst { post, template, hasLoadedPost } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecord, hasFinishedResolution } =\n\t\t\t\tselect( coreStore );\n\t\t\treturn {\n\t\t\t\tpost: getEntityRecord( 'postType', postType, postId ),\n\t\t\t\ttemplate: templateId\n\t\t\t\t\t? getEntityRecord(\n\t\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t\tTEMPLATE_POST_TYPE,\n\t\t\t\t\t\t\ttemplateId\n\t\t\t\t\t )\n\t\t\t\t\t: undefined,\n\t\t\t\thasLoadedPost: hasFinishedResolution( 'getEntityRecord', [\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostType,\n\t\t\t\t\tpostId,\n\t\t\t\t] ),\n\t\t\t};\n\t\t},\n\t\t[ postType, postId, templateId ]\n\t);\n\n\treturn (\n\t\t<ExperimentalEditorProvider\n\t\t\tpost={ post }\n\t\t\t__unstableTemplate={ template }\n\t\t\tsettings={ settings }\n\t\t\tuseSubRegistry={ false }\n\t\t>\n\t\t\t{ hasLoadedPost && ! post && (\n\t\t\t\t<Notice status=\"warning\" isDismissible={ false }>\n\t\t\t\t\t{ __(\n\t\t\t\t\t\t\"You attempted to edit an item that doesn't exist. Perhaps it was deleted?\"\n\t\t\t\t\t) }\n\t\t\t\t</Notice>\n\t\t\t) }\n\t\t\t<EditorInterface\n\t\t\t\tclassName={ className }\n\t\t\t\tstyles={ styles }\n\t\t\t\tenableRegionNavigation={ enableRegionNavigation }\n\t\t\t\tcustomSaveButton={ customSaveButton }\n\t\t\t\tforceDisableBlockTools={ forceDisableBlockTools }\n\t\t\t\ttitle={ title }\n\t\t\t\tiframeProps={ iframeProps }\n\t\t\t/>\n\t\t\t<Sidebar\n\t\t\t\tonActionPerformed={ onActionPerformed }\n\t\t\t\textraPanels={ extraSidebarPanels }\n\t\t\t/>\n\t\t\t{ children }\n\t\t</ExperimentalEditorProvider>\n\t);\n}\n\nexport default Editor;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;AACzD,SAASC,MAAM,QAAQ,uBAAuB;AAC9C,SAASC,EAAE,QAAQ,iBAAiB;;AAEpC;AACA;AACA;AACA,SAASC,kBAAkB,QAAQ,uBAAuB;AAC1D,OAAOC,eAAe,MAAM,qBAAqB;AACjD,SAASC,0BAA0B,QAAQ,aAAa;AACxD,OAAOC,OAAO,MAAM,YAAY;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAEjC,SAASC,MAAMA,CAAE;EAChBC,QAAQ;EACRC,MAAM;EACNC,UAAU;EACVC,QAAQ;EACRC,QAAQ;EAER;EACAC,iBAAiB;EAEjB;EACA;EACAC,SAAS;EACTC,MAAM;EACNC,gBAAgB;EAChBC,sBAAsB;EACtBC,KAAK;EACLC,WAAW;EACXC,kBAAkB;EAClBC,sBAAsB,GAAG;AAC1B,CAAC,EAAG;EACH,MAAM;IAAEC,IAAI;IAAEC,QAAQ;IAAEC;EAAc,CAAC,
|
|
1
|
+
{"version":3,"names":["useSelect","store","coreStore","Notice","__","TEMPLATE_POST_TYPE","EditorInterface","ExperimentalEditorProvider","Sidebar","jsx","_jsx","jsxs","_jsxs","Editor","postType","postId","templateId","settings","children","onActionPerformed","className","styles","customSaveButton","customSavePanel","forceDisableBlockTools","title","iframeProps","extraSidebarPanels","enableRegionNavigation","post","template","hasLoadedPost","select","getEntityRecord","hasFinishedResolution","undefined","__unstableTemplate","useSubRegistry","status","isDismissible","extraPanels"],"sources":["@wordpress/editor/src/components/editor/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { Notice } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { TEMPLATE_POST_TYPE } from '../../store/constants';\nimport EditorInterface from '../editor-interface';\nimport { ExperimentalEditorProvider } from '../provider';\nimport Sidebar from '../sidebar';\n\nfunction Editor( {\n\tpostType,\n\tpostId,\n\ttemplateId,\n\tsettings,\n\tchildren,\n\n\t// This could be part of the settings.\n\tonActionPerformed,\n\n\t// The following abstractions are not ideal but necessary\n\t// to account for site editor and post editor differences for now.\n\tclassName,\n\tstyles,\n\tcustomSaveButton,\n\tcustomSavePanel,\n\tforceDisableBlockTools,\n\ttitle,\n\tiframeProps,\n\textraSidebarPanels,\n\tenableRegionNavigation = true,\n} ) {\n\tconst { post, template, hasLoadedPost } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecord, hasFinishedResolution } =\n\t\t\t\tselect( coreStore );\n\t\t\treturn {\n\t\t\t\tpost: getEntityRecord( 'postType', postType, postId ),\n\t\t\t\ttemplate: templateId\n\t\t\t\t\t? getEntityRecord(\n\t\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t\tTEMPLATE_POST_TYPE,\n\t\t\t\t\t\t\ttemplateId\n\t\t\t\t\t )\n\t\t\t\t\t: undefined,\n\t\t\t\thasLoadedPost: hasFinishedResolution( 'getEntityRecord', [\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostType,\n\t\t\t\t\tpostId,\n\t\t\t\t] ),\n\t\t\t};\n\t\t},\n\t\t[ postType, postId, templateId ]\n\t);\n\n\tif ( ! post ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<ExperimentalEditorProvider\n\t\t\tpost={ post }\n\t\t\t__unstableTemplate={ template }\n\t\t\tsettings={ settings }\n\t\t\tuseSubRegistry={ false }\n\t\t>\n\t\t\t{ hasLoadedPost && ! post && (\n\t\t\t\t<Notice status=\"warning\" isDismissible={ false }>\n\t\t\t\t\t{ __(\n\t\t\t\t\t\t\"You attempted to edit an item that doesn't exist. Perhaps it was deleted?\"\n\t\t\t\t\t) }\n\t\t\t\t</Notice>\n\t\t\t) }\n\t\t\t<EditorInterface\n\t\t\t\tclassName={ className }\n\t\t\t\tstyles={ styles }\n\t\t\t\tenableRegionNavigation={ enableRegionNavigation }\n\t\t\t\tcustomSaveButton={ customSaveButton }\n\t\t\t\tcustomSavePanel={ customSavePanel }\n\t\t\t\tforceDisableBlockTools={ forceDisableBlockTools }\n\t\t\t\ttitle={ title }\n\t\t\t\tiframeProps={ iframeProps }\n\t\t\t/>\n\t\t\t<Sidebar\n\t\t\t\tonActionPerformed={ onActionPerformed }\n\t\t\t\textraPanels={ extraSidebarPanels }\n\t\t\t/>\n\t\t\t{ children }\n\t\t</ExperimentalEditorProvider>\n\t);\n}\n\nexport default Editor;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;AACzD,SAASC,MAAM,QAAQ,uBAAuB;AAC9C,SAASC,EAAE,QAAQ,iBAAiB;;AAEpC;AACA;AACA;AACA,SAASC,kBAAkB,QAAQ,uBAAuB;AAC1D,OAAOC,eAAe,MAAM,qBAAqB;AACjD,SAASC,0BAA0B,QAAQ,aAAa;AACxD,OAAOC,OAAO,MAAM,YAAY;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAEjC,SAASC,MAAMA,CAAE;EAChBC,QAAQ;EACRC,MAAM;EACNC,UAAU;EACVC,QAAQ;EACRC,QAAQ;EAER;EACAC,iBAAiB;EAEjB;EACA;EACAC,SAAS;EACTC,MAAM;EACNC,gBAAgB;EAChBC,eAAe;EACfC,sBAAsB;EACtBC,KAAK;EACLC,WAAW;EACXC,kBAAkB;EAClBC,sBAAsB,GAAG;AAC1B,CAAC,EAAG;EACH,MAAM;IAAEC,IAAI;IAAEC,QAAQ;IAAEC;EAAc,CAAC,GAAG/B,SAAS,CAChDgC,MAAM,IAAM;IACb,MAAM;MAAEC,eAAe;MAAEC;IAAsB,CAAC,GAC/CF,MAAM,CAAE9B,SAAU,CAAC;IACpB,OAAO;MACN2B,IAAI,EAAEI,eAAe,CAAE,UAAU,EAAEnB,QAAQ,EAAEC,MAAO,CAAC;MACrDe,QAAQ,EAAEd,UAAU,GACjBiB,eAAe,CACf,UAAU,EACV5B,kBAAkB,EAClBW,UACA,CAAC,GACDmB,SAAS;MACZJ,aAAa,EAAEG,qBAAqB,CAAE,iBAAiB,EAAE,CACxD,UAAU,EACVpB,QAAQ,EACRC,MAAM,CACL;IACH,CAAC;EACF,CAAC,EACD,CAAED,QAAQ,EAAEC,MAAM,EAAEC,UAAU,CAC/B,CAAC;EAED,IAAK,CAAEa,IAAI,EAAG;IACb,OAAO,IAAI;EACZ;EAEA,oBACCjB,KAAA,CAACL,0BAA0B;IAC1BsB,IAAI,EAAGA,IAAM;IACbO,kBAAkB,EAAGN,QAAU;IAC/Bb,QAAQ,EAAGA,QAAU;IACrBoB,cAAc,EAAG,KAAO;IAAAnB,QAAA,GAEtBa,aAAa,IAAI,CAAEF,IAAI,iBACxBnB,IAAA,CAACP,MAAM;MAACmC,MAAM,EAAC,SAAS;MAACC,aAAa,EAAG,KAAO;MAAArB,QAAA,EAC7Cd,EAAE,CACH,2EACD;IAAC,CACM,CACR,eACDM,IAAA,CAACJ,eAAe;MACfc,SAAS,EAAGA,SAAW;MACvBC,MAAM,EAAGA,MAAQ;MACjBO,sBAAsB,EAAGA,sBAAwB;MACjDN,gBAAgB,EAAGA,gBAAkB;MACrCC,eAAe,EAAGA,eAAiB;MACnCC,sBAAsB,EAAGA,sBAAwB;MACjDC,KAAK,EAAGA,KAAO;MACfC,WAAW,EAAGA;IAAa,CAC3B,CAAC,eACFhB,IAAA,CAACF,OAAO;MACPW,iBAAiB,EAAGA,iBAAmB;MACvCqB,WAAW,EAAGb;IAAoB,CAClC,CAAC,EACAT,QAAQ;EAAA,CACiB,CAAC;AAE/B;AAEA,eAAeL,MAAM","ignoreList":[]}
|
|
@@ -52,6 +52,7 @@ export default function EditorInterface({
|
|
|
52
52
|
disableIframe,
|
|
53
53
|
autoFocus,
|
|
54
54
|
customSaveButton,
|
|
55
|
+
customSavePanel,
|
|
55
56
|
forceDisableBlockTools,
|
|
56
57
|
title,
|
|
57
58
|
iframeProps
|
|
@@ -155,7 +156,7 @@ export default function EditorInterface({
|
|
|
155
156
|
footer: !isPreviewMode && !isDistractionFree && isLargeViewport && showBlockBreadcrumbs && isRichEditingEnabled && blockEditorMode !== 'zoom-out' && mode === 'visual' && /*#__PURE__*/_jsx(BlockBreadcrumb, {
|
|
156
157
|
rootLabelText: documentLabel
|
|
157
158
|
}),
|
|
158
|
-
actions: !isPreviewMode ? /*#__PURE__*/_jsx(SavePublishPanels, {
|
|
159
|
+
actions: !isPreviewMode ? customSavePanel || /*#__PURE__*/_jsx(SavePublishPanels, {
|
|
159
160
|
closeEntitiesSavedStates: closeEntitiesSavedStates,
|
|
160
161
|
isEntitiesSavedStatesOpen: entitiesSavedStatesCallback,
|
|
161
162
|
setEntitiesSavedStatesCallback: setEntitiesSavedStatesCallback,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","InterfaceSkeleton","ComplementaryArea","useSelect","__","_x","store","preferencesStore","blockEditorStore","BlockBreadcrumb","BlockToolbar","keyboardShortcutsStore","useViewportMatch","useState","useCallback","editorStore","EditorNotices","Header","InserterSidebar","ListViewSidebar","SavePublishPanels","TextEditor","VisualEditor","EditorContentSlotFill","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","interfaceLabels","header","body","sidebar","actions","footer","EditorInterface","className","enableRegionNavigation","styles","children","forceIsDirty","contentRef","disableIframe","autoFocus","customSaveButton","forceDisableBlockTools","title","iframeProps","mode","isRichEditingEnabled","isInserterOpened","isListViewOpened","isDistractionFree","isPreviewMode","previousShortcut","nextShortcut","showBlockBreadcrumbs","documentLabel","blockEditorMode","select","get","getEditorSettings","getPostTypeLabel","editorSettings","postTypeLabel","getEditorMode","richEditingEnabled","__unstableIsPreviewMode","getAllShortcutKeyCombinations","__unstableGetEditorMode","isWideViewport","isLargeViewport","secondarySidebarLabel","entitiesSavedStatesCallback","setEntitiesSavedStatesCallback","closeEntitiesSavedStates","arg","labels","secondarySidebar","editorNotices","Slot","scope","content","editorCanvasView","hideDragHandle","rootLabelText","isEntitiesSavedStatesOpen","forceIsDirtyPublishPanel","undefined","shortcuts","previous","next"],"sources":["@wordpress/editor/src/components/editor-interface/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { InterfaceSkeleton, ComplementaryArea } from '@wordpress/interface';\nimport { useSelect } from '@wordpress/data';\nimport { __, _x } from '@wordpress/i18n';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport {\n\tstore as blockEditorStore,\n\tBlockBreadcrumb,\n\tBlockToolbar,\n} from '@wordpress/block-editor';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { useState, useCallback } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\nimport EditorNotices from '../editor-notices';\nimport Header from '../header';\nimport InserterSidebar from '../inserter-sidebar';\nimport ListViewSidebar from '../list-view-sidebar';\nimport SavePublishPanels from '../save-publish-panels';\nimport TextEditor from '../text-editor';\nimport VisualEditor from '../visual-editor';\nimport EditorContentSlotFill from './content-slot-fill';\n\nconst interfaceLabels = {\n\t/* translators: accessibility text for the editor top bar landmark region. */\n\theader: __( 'Editor top bar' ),\n\t/* translators: accessibility text for the editor content landmark region. */\n\tbody: __( 'Editor content' ),\n\t/* translators: accessibility text for the editor settings landmark region. */\n\tsidebar: __( 'Editor settings' ),\n\t/* translators: accessibility text for the editor publish landmark region. */\n\tactions: __( 'Editor publish' ),\n\t/* translators: accessibility text for the editor footer landmark region. */\n\tfooter: __( 'Editor footer' ),\n};\n\nexport default function EditorInterface( {\n\tclassName,\n\tenableRegionNavigation,\n\tstyles,\n\tchildren,\n\tforceIsDirty,\n\tcontentRef,\n\tdisableIframe,\n\tautoFocus,\n\tcustomSaveButton,\n\tforceDisableBlockTools,\n\ttitle,\n\tiframeProps,\n} ) {\n\tconst {\n\t\tmode,\n\t\tisRichEditingEnabled,\n\t\tisInserterOpened,\n\t\tisListViewOpened,\n\t\tisDistractionFree,\n\t\tisPreviewMode,\n\t\tpreviousShortcut,\n\t\tnextShortcut,\n\t\tshowBlockBreadcrumbs,\n\t\tdocumentLabel,\n\t\tblockEditorMode,\n\t} = useSelect( ( select ) => {\n\t\tconst { get } = select( preferencesStore );\n\t\tconst { getEditorSettings, getPostTypeLabel } = select( editorStore );\n\t\tconst editorSettings = getEditorSettings();\n\t\tconst postTypeLabel = getPostTypeLabel();\n\n\t\treturn {\n\t\t\tmode: select( editorStore ).getEditorMode(),\n\t\t\tisRichEditingEnabled: editorSettings.richEditingEnabled,\n\t\t\tisInserterOpened: select( editorStore ).isInserterOpened(),\n\t\t\tisListViewOpened: select( editorStore ).isListViewOpened(),\n\t\t\tisDistractionFree: get( 'core', 'distractionFree' ),\n\t\t\tisPreviewMode: editorSettings.__unstableIsPreviewMode,\n\t\t\tpreviousShortcut: select(\n\t\t\t\tkeyboardShortcutsStore\n\t\t\t).getAllShortcutKeyCombinations( 'core/editor/previous-region' ),\n\t\t\tnextShortcut: select(\n\t\t\t\tkeyboardShortcutsStore\n\t\t\t).getAllShortcutKeyCombinations( 'core/editor/next-region' ),\n\t\t\tshowBlockBreadcrumbs: get( 'core', 'showBlockBreadcrumbs' ),\n\t\t\t// translators: Default label for the Document in the Block Breadcrumb.\n\t\t\tdocumentLabel: postTypeLabel || _x( 'Document', 'noun' ),\n\t\t\tblockEditorMode:\n\t\t\t\tselect( blockEditorStore ).__unstableGetEditorMode(),\n\t\t};\n\t}, [] );\n\tconst isWideViewport = useViewportMatch( 'large' );\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst secondarySidebarLabel = isListViewOpened\n\t\t? __( 'Document Overview' )\n\t\t: __( 'Block Library' );\n\n\t// Local state for save panel.\n\t// Note 'truthy' callback implies an open panel.\n\tconst [ entitiesSavedStatesCallback, setEntitiesSavedStatesCallback ] =\n\t\tuseState( false );\n\tconst closeEntitiesSavedStates = useCallback(\n\t\t( arg ) => {\n\t\t\tif ( typeof entitiesSavedStatesCallback === 'function' ) {\n\t\t\t\tentitiesSavedStatesCallback( arg );\n\t\t\t}\n\t\t\tsetEntitiesSavedStatesCallback( false );\n\t\t},\n\t\t[ entitiesSavedStatesCallback ]\n\t);\n\n\treturn (\n\t\t<InterfaceSkeleton\n\t\t\tenableRegionNavigation={ enableRegionNavigation }\n\t\t\tisDistractionFree={ isDistractionFree && isWideViewport }\n\t\t\tclassName={ clsx( 'editor-editor-interface', className, {\n\t\t\t\t'is-entity-save-view-open': !! entitiesSavedStatesCallback,\n\t\t\t\t'is-distraction-free':\n\t\t\t\t\tisDistractionFree && isWideViewport && ! isPreviewMode,\n\t\t\t} ) }\n\t\t\tlabels={ {\n\t\t\t\t...interfaceLabels,\n\t\t\t\tsecondarySidebar: secondarySidebarLabel,\n\t\t\t} }\n\t\t\theader={\n\t\t\t\t! isPreviewMode && (\n\t\t\t\t\t<Header\n\t\t\t\t\t\tforceIsDirty={ forceIsDirty }\n\t\t\t\t\t\tsetEntitiesSavedStatesCallback={\n\t\t\t\t\t\t\tsetEntitiesSavedStatesCallback\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcustomSaveButton={ customSaveButton }\n\t\t\t\t\t\tforceDisableBlockTools={ forceDisableBlockTools }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t/>\n\t\t\t\t)\n\t\t\t}\n\t\t\teditorNotices={ <EditorNotices /> }\n\t\t\tsecondarySidebar={\n\t\t\t\t! isPreviewMode &&\n\t\t\t\tmode === 'visual' &&\n\t\t\t\t( ( isInserterOpened && <InserterSidebar /> ) ||\n\t\t\t\t\t( isListViewOpened && <ListViewSidebar /> ) )\n\t\t\t}\n\t\t\tsidebar={\n\t\t\t\t! isPreviewMode &&\n\t\t\t\t! isDistractionFree && <ComplementaryArea.Slot scope=\"core\" />\n\t\t\t}\n\t\t\tcontent={\n\t\t\t\t<>\n\t\t\t\t\t{ ! isDistractionFree && ! isPreviewMode && (\n\t\t\t\t\t\t<EditorNotices />\n\t\t\t\t\t) }\n\n\t\t\t\t\t<EditorContentSlotFill.Slot>\n\t\t\t\t\t\t{ ( [ editorCanvasView ] ) =>\n\t\t\t\t\t\t\teditorCanvasView ? (\n\t\t\t\t\t\t\t\teditorCanvasView\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{ ! isPreviewMode &&\n\t\t\t\t\t\t\t\t\t\t( mode === 'text' ||\n\t\t\t\t\t\t\t\t\t\t\t! isRichEditingEnabled ) && (\n\t\t\t\t\t\t\t\t\t\t\t<TextEditor\n\t\t\t\t\t\t\t\t\t\t\t\t// We should auto-focus the canvas (title) on load.\n\t\t\t\t\t\t\t\t\t\t\t\t// eslint-disable-next-line jsx-a11y/no-autofocus\n\t\t\t\t\t\t\t\t\t\t\t\tautoFocus={ autoFocus }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ ! isPreviewMode &&\n\t\t\t\t\t\t\t\t\t\t! isLargeViewport &&\n\t\t\t\t\t\t\t\t\t\tmode === 'visual' && (\n\t\t\t\t\t\t\t\t\t\t\t<BlockToolbar hideDragHandle />\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ ( isPreviewMode ||\n\t\t\t\t\t\t\t\t\t\t( isRichEditingEnabled &&\n\t\t\t\t\t\t\t\t\t\t\tmode === 'visual' ) ) && (\n\t\t\t\t\t\t\t\t\t\t<VisualEditor\n\t\t\t\t\t\t\t\t\t\t\tstyles={ styles }\n\t\t\t\t\t\t\t\t\t\t\tcontentRef={ contentRef }\n\t\t\t\t\t\t\t\t\t\t\tdisableIframe={ disableIframe }\n\t\t\t\t\t\t\t\t\t\t\t// We should auto-focus the canvas (title) on load.\n\t\t\t\t\t\t\t\t\t\t\t// eslint-disable-next-line jsx-a11y/no-autofocus\n\t\t\t\t\t\t\t\t\t\t\tautoFocus={ autoFocus }\n\t\t\t\t\t\t\t\t\t\t\tiframeProps={ iframeProps }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ children }\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t</EditorContentSlotFill.Slot>\n\t\t\t\t</>\n\t\t\t}\n\t\t\tfooter={\n\t\t\t\t! isPreviewMode &&\n\t\t\t\t! isDistractionFree &&\n\t\t\t\tisLargeViewport &&\n\t\t\t\tshowBlockBreadcrumbs &&\n\t\t\t\tisRichEditingEnabled &&\n\t\t\t\tblockEditorMode !== 'zoom-out' &&\n\t\t\t\tmode === 'visual' && (\n\t\t\t\t\t<BlockBreadcrumb rootLabelText={ documentLabel } />\n\t\t\t\t)\n\t\t\t}\n\t\t\tactions={\n\t\t\t\t! isPreviewMode ? (\n\t\t\t\t\t<SavePublishPanels\n\t\t\t\t\t\tcloseEntitiesSavedStates={ closeEntitiesSavedStates }\n\t\t\t\t\t\tisEntitiesSavedStatesOpen={\n\t\t\t\t\t\t\tentitiesSavedStatesCallback\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsetEntitiesSavedStatesCallback={\n\t\t\t\t\t\t\tsetEntitiesSavedStatesCallback\n\t\t\t\t\t\t}\n\t\t\t\t\t\tforceIsDirtyPublishPanel={ forceIsDirty }\n\t\t\t\t\t/>\n\t\t\t\t) : undefined\n\t\t\t}\n\t\t\tshortcuts={ {\n\t\t\t\tprevious: previousShortcut,\n\t\t\t\tnext: nextShortcut,\n\t\t\t} }\n\t\t/>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["clsx","InterfaceSkeleton","ComplementaryArea","useSelect","__","_x","store","preferencesStore","blockEditorStore","BlockBreadcrumb","BlockToolbar","keyboardShortcutsStore","useViewportMatch","useState","useCallback","editorStore","EditorNotices","Header","InserterSidebar","ListViewSidebar","SavePublishPanels","TextEditor","VisualEditor","EditorContentSlotFill","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","interfaceLabels","header","body","sidebar","actions","footer","EditorInterface","className","enableRegionNavigation","styles","children","forceIsDirty","contentRef","disableIframe","autoFocus","customSaveButton","customSavePanel","forceDisableBlockTools","title","iframeProps","mode","isRichEditingEnabled","isInserterOpened","isListViewOpened","isDistractionFree","isPreviewMode","previousShortcut","nextShortcut","showBlockBreadcrumbs","documentLabel","blockEditorMode","select","get","getEditorSettings","getPostTypeLabel","editorSettings","postTypeLabel","getEditorMode","richEditingEnabled","__unstableIsPreviewMode","getAllShortcutKeyCombinations","__unstableGetEditorMode","isWideViewport","isLargeViewport","secondarySidebarLabel","entitiesSavedStatesCallback","setEntitiesSavedStatesCallback","closeEntitiesSavedStates","arg","labels","secondarySidebar","editorNotices","Slot","scope","content","editorCanvasView","hideDragHandle","rootLabelText","isEntitiesSavedStatesOpen","forceIsDirtyPublishPanel","undefined","shortcuts","previous","next"],"sources":["@wordpress/editor/src/components/editor-interface/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { InterfaceSkeleton, ComplementaryArea } from '@wordpress/interface';\nimport { useSelect } from '@wordpress/data';\nimport { __, _x } from '@wordpress/i18n';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport {\n\tstore as blockEditorStore,\n\tBlockBreadcrumb,\n\tBlockToolbar,\n} from '@wordpress/block-editor';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { useState, useCallback } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\nimport EditorNotices from '../editor-notices';\nimport Header from '../header';\nimport InserterSidebar from '../inserter-sidebar';\nimport ListViewSidebar from '../list-view-sidebar';\nimport SavePublishPanels from '../save-publish-panels';\nimport TextEditor from '../text-editor';\nimport VisualEditor from '../visual-editor';\nimport EditorContentSlotFill from './content-slot-fill';\n\nconst interfaceLabels = {\n\t/* translators: accessibility text for the editor top bar landmark region. */\n\theader: __( 'Editor top bar' ),\n\t/* translators: accessibility text for the editor content landmark region. */\n\tbody: __( 'Editor content' ),\n\t/* translators: accessibility text for the editor settings landmark region. */\n\tsidebar: __( 'Editor settings' ),\n\t/* translators: accessibility text for the editor publish landmark region. */\n\tactions: __( 'Editor publish' ),\n\t/* translators: accessibility text for the editor footer landmark region. */\n\tfooter: __( 'Editor footer' ),\n};\n\nexport default function EditorInterface( {\n\tclassName,\n\tenableRegionNavigation,\n\tstyles,\n\tchildren,\n\tforceIsDirty,\n\tcontentRef,\n\tdisableIframe,\n\tautoFocus,\n\tcustomSaveButton,\n\tcustomSavePanel,\n\tforceDisableBlockTools,\n\ttitle,\n\tiframeProps,\n} ) {\n\tconst {\n\t\tmode,\n\t\tisRichEditingEnabled,\n\t\tisInserterOpened,\n\t\tisListViewOpened,\n\t\tisDistractionFree,\n\t\tisPreviewMode,\n\t\tpreviousShortcut,\n\t\tnextShortcut,\n\t\tshowBlockBreadcrumbs,\n\t\tdocumentLabel,\n\t\tblockEditorMode,\n\t} = useSelect( ( select ) => {\n\t\tconst { get } = select( preferencesStore );\n\t\tconst { getEditorSettings, getPostTypeLabel } = select( editorStore );\n\t\tconst editorSettings = getEditorSettings();\n\t\tconst postTypeLabel = getPostTypeLabel();\n\n\t\treturn {\n\t\t\tmode: select( editorStore ).getEditorMode(),\n\t\t\tisRichEditingEnabled: editorSettings.richEditingEnabled,\n\t\t\tisInserterOpened: select( editorStore ).isInserterOpened(),\n\t\t\tisListViewOpened: select( editorStore ).isListViewOpened(),\n\t\t\tisDistractionFree: get( 'core', 'distractionFree' ),\n\t\t\tisPreviewMode: editorSettings.__unstableIsPreviewMode,\n\t\t\tpreviousShortcut: select(\n\t\t\t\tkeyboardShortcutsStore\n\t\t\t).getAllShortcutKeyCombinations( 'core/editor/previous-region' ),\n\t\t\tnextShortcut: select(\n\t\t\t\tkeyboardShortcutsStore\n\t\t\t).getAllShortcutKeyCombinations( 'core/editor/next-region' ),\n\t\t\tshowBlockBreadcrumbs: get( 'core', 'showBlockBreadcrumbs' ),\n\t\t\t// translators: Default label for the Document in the Block Breadcrumb.\n\t\t\tdocumentLabel: postTypeLabel || _x( 'Document', 'noun' ),\n\t\t\tblockEditorMode:\n\t\t\t\tselect( blockEditorStore ).__unstableGetEditorMode(),\n\t\t};\n\t}, [] );\n\tconst isWideViewport = useViewportMatch( 'large' );\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst secondarySidebarLabel = isListViewOpened\n\t\t? __( 'Document Overview' )\n\t\t: __( 'Block Library' );\n\n\t// Local state for save panel.\n\t// Note 'truthy' callback implies an open panel.\n\tconst [ entitiesSavedStatesCallback, setEntitiesSavedStatesCallback ] =\n\t\tuseState( false );\n\tconst closeEntitiesSavedStates = useCallback(\n\t\t( arg ) => {\n\t\t\tif ( typeof entitiesSavedStatesCallback === 'function' ) {\n\t\t\t\tentitiesSavedStatesCallback( arg );\n\t\t\t}\n\t\t\tsetEntitiesSavedStatesCallback( false );\n\t\t},\n\t\t[ entitiesSavedStatesCallback ]\n\t);\n\n\treturn (\n\t\t<InterfaceSkeleton\n\t\t\tenableRegionNavigation={ enableRegionNavigation }\n\t\t\tisDistractionFree={ isDistractionFree && isWideViewport }\n\t\t\tclassName={ clsx( 'editor-editor-interface', className, {\n\t\t\t\t'is-entity-save-view-open': !! entitiesSavedStatesCallback,\n\t\t\t\t'is-distraction-free':\n\t\t\t\t\tisDistractionFree && isWideViewport && ! isPreviewMode,\n\t\t\t} ) }\n\t\t\tlabels={ {\n\t\t\t\t...interfaceLabels,\n\t\t\t\tsecondarySidebar: secondarySidebarLabel,\n\t\t\t} }\n\t\t\theader={\n\t\t\t\t! isPreviewMode && (\n\t\t\t\t\t<Header\n\t\t\t\t\t\tforceIsDirty={ forceIsDirty }\n\t\t\t\t\t\tsetEntitiesSavedStatesCallback={\n\t\t\t\t\t\t\tsetEntitiesSavedStatesCallback\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcustomSaveButton={ customSaveButton }\n\t\t\t\t\t\tforceDisableBlockTools={ forceDisableBlockTools }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t/>\n\t\t\t\t)\n\t\t\t}\n\t\t\teditorNotices={ <EditorNotices /> }\n\t\t\tsecondarySidebar={\n\t\t\t\t! isPreviewMode &&\n\t\t\t\tmode === 'visual' &&\n\t\t\t\t( ( isInserterOpened && <InserterSidebar /> ) ||\n\t\t\t\t\t( isListViewOpened && <ListViewSidebar /> ) )\n\t\t\t}\n\t\t\tsidebar={\n\t\t\t\t! isPreviewMode &&\n\t\t\t\t! isDistractionFree && <ComplementaryArea.Slot scope=\"core\" />\n\t\t\t}\n\t\t\tcontent={\n\t\t\t\t<>\n\t\t\t\t\t{ ! isDistractionFree && ! isPreviewMode && (\n\t\t\t\t\t\t<EditorNotices />\n\t\t\t\t\t) }\n\n\t\t\t\t\t<EditorContentSlotFill.Slot>\n\t\t\t\t\t\t{ ( [ editorCanvasView ] ) =>\n\t\t\t\t\t\t\teditorCanvasView ? (\n\t\t\t\t\t\t\t\teditorCanvasView\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{ ! isPreviewMode &&\n\t\t\t\t\t\t\t\t\t\t( mode === 'text' ||\n\t\t\t\t\t\t\t\t\t\t\t! isRichEditingEnabled ) && (\n\t\t\t\t\t\t\t\t\t\t\t<TextEditor\n\t\t\t\t\t\t\t\t\t\t\t\t// We should auto-focus the canvas (title) on load.\n\t\t\t\t\t\t\t\t\t\t\t\t// eslint-disable-next-line jsx-a11y/no-autofocus\n\t\t\t\t\t\t\t\t\t\t\t\tautoFocus={ autoFocus }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ ! isPreviewMode &&\n\t\t\t\t\t\t\t\t\t\t! isLargeViewport &&\n\t\t\t\t\t\t\t\t\t\tmode === 'visual' && (\n\t\t\t\t\t\t\t\t\t\t\t<BlockToolbar hideDragHandle />\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ ( isPreviewMode ||\n\t\t\t\t\t\t\t\t\t\t( isRichEditingEnabled &&\n\t\t\t\t\t\t\t\t\t\t\tmode === 'visual' ) ) && (\n\t\t\t\t\t\t\t\t\t\t<VisualEditor\n\t\t\t\t\t\t\t\t\t\t\tstyles={ styles }\n\t\t\t\t\t\t\t\t\t\t\tcontentRef={ contentRef }\n\t\t\t\t\t\t\t\t\t\t\tdisableIframe={ disableIframe }\n\t\t\t\t\t\t\t\t\t\t\t// We should auto-focus the canvas (title) on load.\n\t\t\t\t\t\t\t\t\t\t\t// eslint-disable-next-line jsx-a11y/no-autofocus\n\t\t\t\t\t\t\t\t\t\t\tautoFocus={ autoFocus }\n\t\t\t\t\t\t\t\t\t\t\tiframeProps={ iframeProps }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ children }\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t</EditorContentSlotFill.Slot>\n\t\t\t\t</>\n\t\t\t}\n\t\t\tfooter={\n\t\t\t\t! isPreviewMode &&\n\t\t\t\t! isDistractionFree &&\n\t\t\t\tisLargeViewport &&\n\t\t\t\tshowBlockBreadcrumbs &&\n\t\t\t\tisRichEditingEnabled &&\n\t\t\t\tblockEditorMode !== 'zoom-out' &&\n\t\t\t\tmode === 'visual' && (\n\t\t\t\t\t<BlockBreadcrumb rootLabelText={ documentLabel } />\n\t\t\t\t)\n\t\t\t}\n\t\t\tactions={\n\t\t\t\t! isPreviewMode\n\t\t\t\t\t? customSavePanel || (\n\t\t\t\t\t\t\t<SavePublishPanels\n\t\t\t\t\t\t\t\tcloseEntitiesSavedStates={\n\t\t\t\t\t\t\t\t\tcloseEntitiesSavedStates\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tisEntitiesSavedStatesOpen={\n\t\t\t\t\t\t\t\t\tentitiesSavedStatesCallback\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tsetEntitiesSavedStatesCallback={\n\t\t\t\t\t\t\t\t\tsetEntitiesSavedStatesCallback\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tforceIsDirtyPublishPanel={ forceIsDirty }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t )\n\t\t\t\t\t: undefined\n\t\t\t}\n\t\t\tshortcuts={ {\n\t\t\t\tprevious: previousShortcut,\n\t\t\t\tnext: nextShortcut,\n\t\t\t} }\n\t\t/>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -193,7 +193,7 @@ const trashPostAction = {
|
|
|
193
193
|
__('"%s" moved to trash.'), getItemTitle(items[0]));
|
|
194
194
|
} else if (items[0].type === 'page') {
|
|
195
195
|
successMessage = sprintf( /* translators: The number of items. */
|
|
196
|
-
|
|
196
|
+
_n('%s item moved to trash.', '%s items moved to trash.', items.length), items.length);
|
|
197
197
|
} else {
|
|
198
198
|
successMessage = sprintf( /* translators: The number of posts. */
|
|
199
199
|
__('%s items move to trash.'), items.length);
|