@wordpress/edit-post 6.12.0 → 6.13.1-next.957ca95e4c.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 +2 -0
- package/build/components/block-settings-menu/plugin-block-settings-menu-item.js +1 -7
- package/build/components/block-settings-menu/plugin-block-settings-menu-item.js.map +1 -1
- package/build/components/header/header-toolbar/index.js +2 -1
- package/build/components/header/header-toolbar/index.js.map +1 -1
- package/build/components/sidebar/post-template/form.js +9 -4
- package/build/components/sidebar/post-template/form.js.map +1 -1
- package/build/components/visual-editor/index.js +12 -5
- package/build/components/visual-editor/index.js.map +1 -1
- package/build-module/components/block-settings-menu/plugin-block-settings-menu-item.js +1 -6
- package/build-module/components/block-settings-menu/plugin-block-settings-menu-item.js.map +1 -1
- package/build-module/components/header/header-toolbar/index.js +2 -1
- package/build-module/components/header/header-toolbar/index.js.map +1 -1
- package/build-module/components/sidebar/post-template/form.js +9 -4
- package/build-module/components/sidebar/post-template/form.js.map +1 -1
- package/build-module/components/visual-editor/index.js +12 -5
- package/build-module/components/visual-editor/index.js.map +1 -1
- package/package.json +27 -27
- package/src/components/block-settings-menu/plugin-block-settings-menu-item.js +1 -6
- package/src/components/header/header-toolbar/index.js +1 -0
- package/src/components/sidebar/post-template/form.js +13 -16
- package/src/components/visual-editor/index.js +7 -5
package/CHANGELOG.md
CHANGED
|
@@ -7,22 +7,16 @@ exports.default = void 0;
|
|
|
7
7
|
|
|
8
8
|
var _element = require("@wordpress/element");
|
|
9
9
|
|
|
10
|
-
var _lodash = require("lodash");
|
|
11
|
-
|
|
12
10
|
var _blockEditor = require("@wordpress/block-editor");
|
|
13
11
|
|
|
14
12
|
var _components = require("@wordpress/components");
|
|
15
13
|
|
|
16
14
|
var _compose = require("@wordpress/compose");
|
|
17
15
|
|
|
18
|
-
/**
|
|
19
|
-
* External dependencies
|
|
20
|
-
*/
|
|
21
|
-
|
|
22
16
|
/**
|
|
23
17
|
* WordPress dependencies
|
|
24
18
|
*/
|
|
25
|
-
const isEverySelectedBlockAllowed = (selected, allowed) => (
|
|
19
|
+
const isEverySelectedBlockAllowed = (selected, allowed) => selected.filter(id => !allowed.includes(id)).length === 0;
|
|
26
20
|
/**
|
|
27
21
|
* Plugins may want to add an item to the menu either for every block
|
|
28
22
|
* or only for the specific ones provided in the `allowedBlocks` component property.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-post/src/components/block-settings-menu/plugin-block-settings-menu-item.js"],"names":["isEverySelectedBlockAllowed","selected","allowed","length","shouldRenderItem","selectedBlocks","allowedBlocks","Array","isArray","PluginBlockSettingsMenuItem","icon","label","onClick","small","role","onClose","undefined"],"mappings":";;;;;;;;;AAGA;;
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-post/src/components/block-settings-menu/plugin-block-settings-menu-item.js"],"names":["isEverySelectedBlockAllowed","selected","allowed","filter","id","includes","length","shouldRenderItem","selectedBlocks","allowedBlocks","Array","isArray","PluginBlockSettingsMenuItem","icon","label","onClick","small","role","onClose","undefined"],"mappings":";;;;;;;;;AAGA;;AACA;;AACA;;AALA;AACA;AACA;AAKA,MAAMA,2BAA2B,GAAG,CAAEC,QAAF,EAAYC,OAAZ,KACnCD,QAAQ,CAACE,MAAT,CAAmBC,EAAF,IAAU,CAAEF,OAAO,CAACG,QAAR,CAAkBD,EAAlB,CAA7B,EAAsDE,MAAtD,KAAiE,CADlE;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAMC,gBAAgB,GAAG,CAAEC,cAAF,EAAkBC,aAAlB,KACxB,CAAEC,KAAK,CAACC,OAAN,CAAeF,aAAf,CAAF,IACAT,2BAA2B,CAAEQ,cAAF,EAAkBC,aAAlB,CAF5B;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAMG,2BAA2B,GAAG;AAAA,MAAE;AACrCH,IAAAA,aADqC;AAErCI,IAAAA,IAFqC;AAGrCC,IAAAA,KAHqC;AAIrCC,IAAAA,OAJqC;AAKrCC,IAAAA,KALqC;AAMrCC,IAAAA;AANqC,GAAF;AAAA,SAQnC,4BAAC,sCAAD,QACG,SAAmC;AAAA,QAAjC;AAAET,MAAAA,cAAF;AAAkBU,MAAAA;AAAlB,KAAiC;;AACpC,QAAK,CAAEX,gBAAgB,CAAEC,cAAF,EAAkBC,aAAlB,CAAvB,EAA2D;AAC1D,aAAO,IAAP;AACA;;AACD,WACC,4BAAC,oBAAD;AACC,MAAA,OAAO,EAAG,sBAASM,OAAT,EAAkBG,OAAlB,CADX;AAEC,MAAA,IAAI,EAAGL,IAFR;AAGC,MAAA,KAAK,EAAGG,KAAK,GAAGF,KAAH,GAAWK,SAHzB;AAIC,MAAA,IAAI,EAAGF;AAJR,OAMG,CAAED,KAAF,IAAWF,KANd,CADD;AAUA,GAfF,CARmC;AAAA,CAApC;;eA2BeF,2B","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { BlockSettingsMenuControls } from '@wordpress/block-editor';\nimport { MenuItem } from '@wordpress/components';\nimport { compose } from '@wordpress/compose';\n\nconst isEverySelectedBlockAllowed = ( selected, allowed ) =>\n\tselected.filter( ( id ) => ! allowed.includes( id ) ).length === 0;\n\n/**\n * Plugins may want to add an item to the menu either for every block\n * or only for the specific ones provided in the `allowedBlocks` component property.\n *\n * If there are multiple blocks selected the item will be rendered if every block\n * is of one allowed type (not necessarily the same).\n *\n * @param {string[]} selectedBlocks Array containing the names of the blocks selected\n * @param {string[]} allowedBlocks Array containing the names of the blocks allowed\n * @return {boolean} Whether the item will be rendered or not.\n */\nconst shouldRenderItem = ( selectedBlocks, allowedBlocks ) =>\n\t! Array.isArray( allowedBlocks ) ||\n\tisEverySelectedBlockAllowed( selectedBlocks, allowedBlocks );\n\n/**\n * Renders a new item in the block settings menu.\n *\n * @param {Object} props Component props.\n * @param {Array} [props.allowedBlocks] An array containing a list of block names for which the item should be shown. If not present, it'll be rendered for any block. If multiple blocks are selected, it'll be shown if and only if all of them are in the allowed list.\n * @param {WPBlockTypeIconRender} [props.icon] The [Dashicon](https://developer.wordpress.org/resource/dashicons/) icon slug string, or an SVG WP element.\n * @param {string} props.label The menu item text.\n * @param {Function} props.onClick Callback function to be executed when the user click the menu item.\n * @param {boolean} [props.small] Whether to render the label or not.\n * @param {string} [props.role] The ARIA role for the menu item.\n *\n * @example\n * ```js\n * // Using ES5 syntax\n * var __ = wp.i18n.__;\n * var PluginBlockSettingsMenuItem = wp.editPost.PluginBlockSettingsMenuItem;\n *\n * function doOnClick(){\n * \t// To be called when the user clicks the menu item.\n * }\n *\n * function MyPluginBlockSettingsMenuItem() {\n * \treturn wp.element.createElement(\n * \t\tPluginBlockSettingsMenuItem,\n * \t\t{\n * \t\t\tallowedBlocks: [ 'core/paragraph' ],\n * \t\t\ticon: 'dashicon-name',\n * \t\t\tlabel: __( 'Menu item text' ),\n * \t\t\tonClick: doOnClick,\n * \t\t}\n * \t);\n * }\n * ```\n *\n * @example\n * ```jsx\n * // Using ESNext syntax\n * import { __ } from '@wordpress/i18n';\n * import { PluginBlockSettingsMenuItem } from '@wordpress/edit-post';\n *\n * const doOnClick = ( ) => {\n * // To be called when the user clicks the menu item.\n * };\n *\n * const MyPluginBlockSettingsMenuItem = () => (\n * <PluginBlockSettingsMenuItem\n * \t\tallowedBlocks={ [ 'core/paragraph' ] }\n * \t\ticon='dashicon-name'\n * \t\tlabel={ __( 'Menu item text' ) }\n * \t\tonClick={ doOnClick } />\n * );\n * ```\n *\n * @return {WPComponent} The component to be rendered.\n */\nconst PluginBlockSettingsMenuItem = ( {\n\tallowedBlocks,\n\ticon,\n\tlabel,\n\tonClick,\n\tsmall,\n\trole,\n} ) => (\n\t<BlockSettingsMenuControls>\n\t\t{ ( { selectedBlocks, onClose } ) => {\n\t\t\tif ( ! shouldRenderItem( selectedBlocks, allowedBlocks ) ) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\treturn (\n\t\t\t\t<MenuItem\n\t\t\t\t\tonClick={ compose( onClick, onClose ) }\n\t\t\t\t\ticon={ icon }\n\t\t\t\t\tlabel={ small ? label : undefined }\n\t\t\t\t\trole={ role }\n\t\t\t\t>\n\t\t\t\t\t{ ! small && label }\n\t\t\t\t</MenuItem>\n\t\t\t);\n\t\t} }\n\t</BlockSettingsMenuControls>\n);\n\nexport default PluginBlockSettingsMenuItem;\n"]}
|
|
@@ -99,7 +99,8 @@ function HeaderToolbar() {
|
|
|
99
99
|
label: (0, _i18n.__)('List View'),
|
|
100
100
|
onClick: toggleListView,
|
|
101
101
|
shortcut: listViewShortcut,
|
|
102
|
-
showTooltip: !showIconLabels
|
|
102
|
+
showTooltip: !showIconLabels,
|
|
103
|
+
variant: showIconLabels ? 'tertiary' : undefined
|
|
103
104
|
}));
|
|
104
105
|
const openInserter = (0, _element.useCallback)(() => {
|
|
105
106
|
if (isInserterOpened) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-post/src/components/header/header-toolbar/index.js"],"names":["preventDefault","event","HeaderToolbar","inserterButton","setIsInserterOpened","setIsListViewOpened","editPostStore","isInserterEnabled","isInserterOpened","isTextModeEnabled","showIconLabels","isListViewOpen","listViewShortcut","select","hasInserterItems","getBlockRootClientId","getBlockSelectionEnd","blockEditorStore","getEditorSettings","editorStore","getEditorMode","isFeatureActive","isListViewOpened","getShortcutRepresentation","keyboardShortcutsStore","richEditingEnabled","isLargeViewport","isWideViewport","toolbarAriaLabel","toggleListView","overflowItems","TableOfContents","undefined","Button","listView","openInserter","current","focus","longLabel","shortLabel","plus","ToolSelector","EditorHistoryUndo","EditorHistoryRedo"],"mappings":";;;;;;;AAmBA;;AAhBA;;AACA;;AACA;;AACA;;AAKA;;AAMA;;AACA;;AAEA;;AAKA;;AAzBA;AACA;AACA;;AAoBA;AACA;AACA;AAGA,MAAMA,cAAc,GAAKC,KAAF,IAAa;AACnCA,EAAAA,KAAK,CAACD,cAAN;AACA,CAFD;;AAIA,SAASE,aAAT,GAAyB;AACxB,QAAMC,cAAc,GAAG,sBAAvB;AACA,QAAM;AAAEC,IAAAA,mBAAF;AAAuBC,IAAAA;AAAvB,MACL,uBAAaC,YAAb,CADD;AAEA,QAAM;AACLC,IAAAA,iBADK;AAELC,IAAAA,gBAFK;AAGLC,IAAAA,iBAHK;AAILC,IAAAA,cAJK;AAKLC,IAAAA,cALK;AAMLC,IAAAA;AANK,MAOF,qBAAaC,MAAF,IAAc;AAC5B,UAAM;AAAEC,MAAAA,gBAAF;AAAoBC,MAAAA,oBAApB;AAA0CC,MAAAA;AAA1C,QACLH,MAAM,CAAEI,kBAAF,CADP;AAEA,UAAM;AAAEC,MAAAA;AAAF,QAAwBL,MAAM,CAAEM,aAAF,CAApC;AACA,UAAM;AAAEC,MAAAA,aAAF;AAAiBC,MAAAA,eAAjB;AAAkCC,MAAAA;AAAlC,QACLT,MAAM,CAAEP,YAAF,CADP;AAEA,UAAM;AAAEiB,MAAAA;AAAF,QAAgCV,MAAM,CAAEW,wBAAF,CAA5C;AAEA,WAAO;AACN;AACAjB,MAAAA,iBAAiB,EAChBa,aAAa,OAAO,QAApB,IACAF,iBAAiB,GAAGO,kBADpB,IAEAX,gBAAgB,CACfC,oBAAoB,CAAEC,oBAAoB,EAAtB,CADL,CALX;AAQNR,MAAAA,gBAAgB,EAAEK,MAAM,CAAEP,YAAF,CAAN,CAAwBE,gBAAxB,EARZ;AASNC,MAAAA,iBAAiB,EAAEW,aAAa,OAAO,MATjC;AAUNV,MAAAA,cAAc,EAAEW,eAAe,CAAE,gBAAF,CAVzB;AAWNV,MAAAA,cAAc,EAAEW,gBAAgB,EAX1B;AAYNV,MAAAA,gBAAgB,EAAEW,yBAAyB,CAC1C,iCAD0C;AAZrC,KAAP;AAgBA,GAxBG,EAwBD,EAxBC,CAPJ;AAgCA,QAAMG,eAAe,GAAG,+BAAkB,QAAlB,CAAxB;AACA,QAAMC,cAAc,GAAG,+BAAkB,MAAlB,CAAvB;AAEA;;AACA,QAAMC,gBAAgB,GAAG,cAAI,gBAAJ,CAAzB;AAEA,QAAMC,cAAc,GAAG,0BACtB,MAAMxB,mBAAmB,CAAE,CAAEM,cAAJ,CADH,EAEtB,CAAEN,mBAAF,EAAuBM,cAAvB,CAFsB,CAAvB;AAIA,QAAMmB,aAAa,GAClB,qDACC,4BAAC,uBAAD;AACC,IAAA,EAAE,EAAGC,uBADN;AAEC,IAAA,uBAAuB,EAAGtB,iBAF3B;AAGC,IAAA,kBAAkB,EAAGC,cAAc,IAAI,CAAEiB,cAH1C;AAIC,IAAA,WAAW,EAAG,CAAEjB,cAJjB;AAKC,IAAA,OAAO,EAAGA,cAAc,GAAG,UAAH,GAAgBsB;AALzC,IADD,EAQC,4BAAC,uBAAD;AACC,IAAA,EAAE,EAAGC,kBADN;AAEC,IAAA,SAAS,EAAC,4CAFX;AAGC,IAAA,IAAI,EAAGC,eAHR;AAIC,IAAA,QAAQ,EAAGzB,iBAJZ;AAKC,IAAA,SAAS,EAAGE;AACZ;AAND;AAOC,IAAA,KAAK,EAAG,cAAI,WAAJ,CAPT;AAQC,IAAA,OAAO,EAAGkB,cARX;AASC,IAAA,QAAQ,EAAGjB,gBATZ;AAUC,IAAA,WAAW,EAAG,CAAEF;
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-post/src/components/header/header-toolbar/index.js"],"names":["preventDefault","event","HeaderToolbar","inserterButton","setIsInserterOpened","setIsListViewOpened","editPostStore","isInserterEnabled","isInserterOpened","isTextModeEnabled","showIconLabels","isListViewOpen","listViewShortcut","select","hasInserterItems","getBlockRootClientId","getBlockSelectionEnd","blockEditorStore","getEditorSettings","editorStore","getEditorMode","isFeatureActive","isListViewOpened","getShortcutRepresentation","keyboardShortcutsStore","richEditingEnabled","isLargeViewport","isWideViewport","toolbarAriaLabel","toggleListView","overflowItems","TableOfContents","undefined","Button","listView","openInserter","current","focus","longLabel","shortLabel","plus","ToolSelector","EditorHistoryUndo","EditorHistoryRedo"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useViewportMatch } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tNavigableToolbar,\n\tToolSelector,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport {\n\tTableOfContents,\n\tEditorHistoryRedo,\n\tEditorHistoryUndo,\n\tstore as editorStore,\n} from '@wordpress/editor';\nimport { Button, ToolbarItem } from '@wordpress/components';\nimport { listView, plus } from '@wordpress/icons';\nimport { useRef, useCallback } from '@wordpress/element';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../../store';\n\nconst preventDefault = ( event ) => {\n\tevent.preventDefault();\n};\n\nfunction HeaderToolbar() {\n\tconst inserterButton = useRef();\n\tconst { setIsInserterOpened, setIsListViewOpened } =\n\t\tuseDispatch( editPostStore );\n\tconst {\n\t\tisInserterEnabled,\n\t\tisInserterOpened,\n\t\tisTextModeEnabled,\n\t\tshowIconLabels,\n\t\tisListViewOpen,\n\t\tlistViewShortcut,\n\t} = useSelect( ( select ) => {\n\t\tconst { hasInserterItems, getBlockRootClientId, getBlockSelectionEnd } =\n\t\t\tselect( blockEditorStore );\n\t\tconst { getEditorSettings } = select( editorStore );\n\t\tconst { getEditorMode, isFeatureActive, isListViewOpened } =\n\t\t\tselect( editPostStore );\n\t\tconst { getShortcutRepresentation } = select( keyboardShortcutsStore );\n\n\t\treturn {\n\t\t\t// This setting (richEditingEnabled) should not live in the block editor's setting.\n\t\t\tisInserterEnabled:\n\t\t\t\tgetEditorMode() === 'visual' &&\n\t\t\t\tgetEditorSettings().richEditingEnabled &&\n\t\t\t\thasInserterItems(\n\t\t\t\t\tgetBlockRootClientId( getBlockSelectionEnd() )\n\t\t\t\t),\n\t\t\tisInserterOpened: select( editPostStore ).isInserterOpened(),\n\t\t\tisTextModeEnabled: getEditorMode() === 'text',\n\t\t\tshowIconLabels: isFeatureActive( 'showIconLabels' ),\n\t\t\tisListViewOpen: isListViewOpened(),\n\t\t\tlistViewShortcut: getShortcutRepresentation(\n\t\t\t\t'core/edit-post/toggle-list-view'\n\t\t\t),\n\t\t};\n\t}, [] );\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isWideViewport = useViewportMatch( 'wide' );\n\n\t/* translators: accessibility text for the editor toolbar */\n\tconst toolbarAriaLabel = __( 'Document tools' );\n\n\tconst toggleListView = useCallback(\n\t\t() => setIsListViewOpened( ! isListViewOpen ),\n\t\t[ setIsListViewOpened, isListViewOpen ]\n\t);\n\tconst overflowItems = (\n\t\t<>\n\t\t\t<ToolbarItem\n\t\t\t\tas={ TableOfContents }\n\t\t\t\thasOutlineItemsDisabled={ isTextModeEnabled }\n\t\t\t\trepositionDropdown={ showIconLabels && ! isWideViewport }\n\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\tvariant={ showIconLabels ? 'tertiary' : undefined }\n\t\t\t/>\n\t\t\t<ToolbarItem\n\t\t\t\tas={ Button }\n\t\t\t\tclassName=\"edit-post-header-toolbar__list-view-toggle\"\n\t\t\t\ticon={ listView }\n\t\t\t\tdisabled={ isTextModeEnabled }\n\t\t\t\tisPressed={ isListViewOpen }\n\t\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\t\tlabel={ __( 'List View' ) }\n\t\t\t\tonClick={ toggleListView }\n\t\t\t\tshortcut={ listViewShortcut }\n\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\tvariant={ showIconLabels ? 'tertiary' : undefined }\n\t\t\t/>\n\t\t</>\n\t);\n\tconst openInserter = useCallback( () => {\n\t\tif ( isInserterOpened ) {\n\t\t\t// Focusing the inserter button closes the inserter popover.\n\t\t\tinserterButton.current.focus();\n\t\t} else {\n\t\t\tsetIsInserterOpened( true );\n\t\t}\n\t}, [ isInserterOpened, setIsInserterOpened ] );\n\n\t/* translators: button label text should, if possible, be under 16 characters. */\n\tconst longLabel = _x(\n\t\t'Toggle block inserter',\n\t\t'Generic label for block inserter button'\n\t);\n\tconst shortLabel = ! isInserterOpened ? __( 'Add' ) : __( 'Close' );\n\n\treturn (\n\t\t<NavigableToolbar\n\t\t\tclassName=\"edit-post-header-toolbar\"\n\t\t\taria-label={ toolbarAriaLabel }\n\t\t>\n\t\t\t<div className=\"edit-post-header-toolbar__left\">\n\t\t\t\t<ToolbarItem\n\t\t\t\t\tref={ inserterButton }\n\t\t\t\t\tas={ Button }\n\t\t\t\t\tclassName=\"edit-post-header-toolbar__inserter-toggle\"\n\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\tisPressed={ isInserterOpened }\n\t\t\t\t\tonMouseDown={ preventDefault }\n\t\t\t\t\tonClick={ openInserter }\n\t\t\t\t\tdisabled={ ! isInserterEnabled }\n\t\t\t\t\ticon={ plus }\n\t\t\t\t\tlabel={ showIconLabels ? shortLabel : longLabel }\n\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t/>\n\t\t\t\t{ ( isWideViewport || ! showIconLabels ) && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ isLargeViewport && (\n\t\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\t\tas={ ToolSelector }\n\t\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\t\tshowIconLabels ? 'tertiary' : undefined\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tdisabled={ isTextModeEnabled }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\tas={ EditorHistoryUndo }\n\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\tvariant={ showIconLabels ? 'tertiary' : undefined }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\tas={ EditorHistoryRedo }\n\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\tvariant={ showIconLabels ? 'tertiary' : undefined }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ overflowItems }\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</NavigableToolbar>\n\t);\n}\n\nexport default HeaderToolbar;\n"]}
|
|
@@ -48,19 +48,24 @@ function PostTemplateForm(_ref) {
|
|
|
48
48
|
canCreate,
|
|
49
49
|
canEdit
|
|
50
50
|
} = (0, _data.useSelect)(select => {
|
|
51
|
+
const {
|
|
52
|
+
canUser,
|
|
53
|
+
getEntityRecord,
|
|
54
|
+
getEntityRecords
|
|
55
|
+
} = select(_coreData.store);
|
|
51
56
|
const editorSettings = select(_editor.store).getEditorSettings();
|
|
52
|
-
const siteSettings =
|
|
57
|
+
const siteSettings = canUser('read', 'settings') ? getEntityRecord('root', 'site') : undefined;
|
|
53
58
|
|
|
54
59
|
const _isPostsPage = select(_editor.store).getCurrentPostId() === (siteSettings === null || siteSettings === void 0 ? void 0 : siteSettings.page_for_posts);
|
|
55
60
|
|
|
56
|
-
const canCreateTemplates =
|
|
61
|
+
const canCreateTemplates = canUser('create', 'templates');
|
|
57
62
|
return {
|
|
58
63
|
isPostsPage: _isPostsPage,
|
|
59
64
|
availableTemplates: editorSettings.availableTemplates,
|
|
60
|
-
fetchedTemplates:
|
|
65
|
+
fetchedTemplates: canCreateTemplates ? getEntityRecords('postType', 'wp_template', {
|
|
61
66
|
post_type: select(_editor.store).getCurrentPostType(),
|
|
62
67
|
per_page: -1
|
|
63
|
-
}),
|
|
68
|
+
}) : undefined,
|
|
64
69
|
selectedTemplateSlug: select(_editor.store).getEditedPostAttribute('template'),
|
|
65
70
|
canCreate: canCreateTemplates && !_isPostsPage && editorSettings.supportsTemplateMode,
|
|
66
71
|
canEdit: canCreateTemplates && editorSettings.supportsTemplateMode && !!select(_store.store).getEditedPostTemplate()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/post-template/form.js"],"names":["PostTemplateForm","onClose","isPostsPage","availableTemplates","fetchedTemplates","selectedTemplateSlug","canCreate","canEdit","select","
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/post-template/form.js"],"names":["PostTemplateForm","onClose","isPostsPage","availableTemplates","fetchedTemplates","selectedTemplateSlug","canCreate","canEdit","select","canUser","getEntityRecord","getEntityRecords","coreStore","editorSettings","editorStore","getEditorSettings","siteSettings","undefined","_isPostsPage","getCurrentPostId","page_for_posts","canCreateTemplates","post_type","getCurrentPostType","per_page","getEditedPostAttribute","supportsTemplateMode","editPostStore","getEditedPostTemplate","options","Object","entries","fromEntries","map","slug","title","rendered","value","label","selectedOption","find","option","editPost","__unstableSwitchToTemplateMode","isCreateModalOpen","setIsCreateModalOpen","icon","addTemplate","onClick","template"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useState, useMemo } from '@wordpress/element';\nimport { __experimentalInspectorPopoverHeader as InspectorPopoverHeader } from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { addTemplate } from '@wordpress/icons';\nimport { Notice, SelectControl, Button } from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as editorStore } from '@wordpress/editor';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../../store';\nimport PostTemplateCreateModal from './create-modal';\n\nexport default function PostTemplateForm( { onClose } ) {\n\tconst {\n\t\tisPostsPage,\n\t\tavailableTemplates,\n\t\tfetchedTemplates,\n\t\tselectedTemplateSlug,\n\t\tcanCreate,\n\t\tcanEdit,\n\t} = useSelect( ( select ) => {\n\t\tconst { canUser, getEntityRecord, getEntityRecords } =\n\t\t\tselect( coreStore );\n\t\tconst editorSettings = select( editorStore ).getEditorSettings();\n\t\tconst siteSettings = canUser( 'read', 'settings' )\n\t\t\t? getEntityRecord( 'root', 'site' )\n\t\t\t: undefined;\n\t\tconst _isPostsPage =\n\t\t\tselect( editorStore ).getCurrentPostId() ===\n\t\t\tsiteSettings?.page_for_posts;\n\t\tconst canCreateTemplates = canUser( 'create', 'templates' );\n\n\t\treturn {\n\t\t\tisPostsPage: _isPostsPage,\n\t\t\tavailableTemplates: editorSettings.availableTemplates,\n\t\t\tfetchedTemplates: canCreateTemplates\n\t\t\t\t? getEntityRecords( 'postType', 'wp_template', {\n\t\t\t\t\t\tpost_type: select( editorStore ).getCurrentPostType(),\n\t\t\t\t\t\tper_page: -1,\n\t\t\t\t } )\n\t\t\t\t: undefined,\n\t\t\tselectedTemplateSlug:\n\t\t\t\tselect( editorStore ).getEditedPostAttribute( 'template' ),\n\t\t\tcanCreate:\n\t\t\t\tcanCreateTemplates &&\n\t\t\t\t! _isPostsPage &&\n\t\t\t\teditorSettings.supportsTemplateMode,\n\t\t\tcanEdit:\n\t\t\t\tcanCreateTemplates &&\n\t\t\t\teditorSettings.supportsTemplateMode &&\n\t\t\t\t!! select( editPostStore ).getEditedPostTemplate(),\n\t\t};\n\t}, [] );\n\n\tconst options = useMemo(\n\t\t() =>\n\t\t\tObject.entries( {\n\t\t\t\t...availableTemplates,\n\t\t\t\t...Object.fromEntries(\n\t\t\t\t\t( fetchedTemplates ?? [] ).map( ( { slug, title } ) => [\n\t\t\t\t\t\tslug,\n\t\t\t\t\t\ttitle.rendered,\n\t\t\t\t\t] )\n\t\t\t\t),\n\t\t\t} ).map( ( [ slug, title ] ) => ( { value: slug, label: title } ) ),\n\t\t[ availableTemplates, fetchedTemplates ]\n\t);\n\n\tconst selectedOption =\n\t\toptions.find( ( option ) => option.value === selectedTemplateSlug ) ??\n\t\toptions.find( ( option ) => ! option.value ); // The default option has '' value.\n\n\tconst { editPost } = useDispatch( editorStore );\n\tconst { __unstableSwitchToTemplateMode } = useDispatch( editPostStore );\n\n\tconst [ isCreateModalOpen, setIsCreateModalOpen ] = useState( false );\n\n\treturn (\n\t\t<div className=\"edit-post-post-template__form\">\n\t\t\t<InspectorPopoverHeader\n\t\t\t\ttitle={ __( 'Template' ) }\n\t\t\t\thelp={ __(\n\t\t\t\t\t'Templates define the way content is displayed when viewing your site.'\n\t\t\t\t) }\n\t\t\t\tactions={\n\t\t\t\t\tcanCreate\n\t\t\t\t\t\t? [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\ticon: addTemplate,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Add template' ),\n\t\t\t\t\t\t\t\t\tonClick: () => setIsCreateModalOpen( true ),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t ]\n\t\t\t\t\t\t: []\n\t\t\t\t}\n\t\t\t\tonClose={ onClose }\n\t\t\t/>\n\t\t\t{ isPostsPage ? (\n\t\t\t\t<Notice\n\t\t\t\t\tclassName=\"edit-post-post-template__notice\"\n\t\t\t\t\tstatus=\"warning\"\n\t\t\t\t\tisDismissible={ false }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'The posts page template cannot be changed.' ) }\n\t\t\t\t</Notice>\n\t\t\t) : (\n\t\t\t\t<SelectControl\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\tlabel={ __( 'Template' ) }\n\t\t\t\t\tvalue={ selectedOption?.value ?? '' }\n\t\t\t\t\toptions={ options }\n\t\t\t\t\tonChange={ ( slug ) =>\n\t\t\t\t\t\teditPost( { template: slug || '' } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ canEdit && (\n\t\t\t\t<p>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\tonClick={ () => __unstableSwitchToTemplateMode() }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Edit template' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</p>\n\t\t\t) }\n\t\t\t{ isCreateModalOpen && (\n\t\t\t\t<PostTemplateCreateModal\n\t\t\t\t\tonClose={ () => setIsCreateModalOpen( false ) }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n"]}
|
|
@@ -185,10 +185,17 @@ function VisualEditor(_ref2) {
|
|
|
185
185
|
}
|
|
186
186
|
|
|
187
187
|
if (themeSupportsLayout) {
|
|
188
|
-
|
|
189
|
-
|
|
188
|
+
// We need to ensure support for wide and full alignments,
|
|
189
|
+
// so we add the constrained type.
|
|
190
|
+
return { ...defaultLayout,
|
|
191
|
+
type: 'constrained'
|
|
192
|
+
};
|
|
193
|
+
} // Set constrained layout for classic themes so all alignments are supported.
|
|
194
|
+
|
|
190
195
|
|
|
191
|
-
return
|
|
196
|
+
return {
|
|
197
|
+
type: 'constrained'
|
|
198
|
+
};
|
|
192
199
|
}, [isTemplateMode, themeSupportsLayout, defaultLayout]);
|
|
193
200
|
const titleRef = (0, _element.useRef)();
|
|
194
201
|
(0, _element.useEffect)(() => {
|
|
@@ -232,7 +239,7 @@ function VisualEditor(_ref2) {
|
|
|
232
239
|
}
|
|
233
240
|
}, themeSupportsLayout && !themeHasDisabledLayoutStyles && !isTemplateMode && (0, _element.createElement)(_blockEditor.__experimentalLayoutStyle, {
|
|
234
241
|
selector: ".edit-post-visual-editor__post-title-wrapper, .block-editor-block-list__layout.is-root-container",
|
|
235
|
-
layout:
|
|
242
|
+
layout: layout,
|
|
236
243
|
layoutDefinitions: defaultLayout === null || defaultLayout === void 0 ? void 0 : defaultLayout.definitions
|
|
237
244
|
}), !isTemplateMode && (0, _element.createElement)("div", {
|
|
238
245
|
className: "edit-post-visual-editor__post-title-wrapper",
|
|
@@ -243,7 +250,7 @@ function VisualEditor(_ref2) {
|
|
|
243
250
|
blockName: wrapperBlockName,
|
|
244
251
|
uniqueId: wrapperUniqueId
|
|
245
252
|
}, (0, _element.createElement)(_blockEditor.BlockList, {
|
|
246
|
-
className: isTemplateMode ? 'wp-site-blocks' : 'is-layout-
|
|
253
|
+
className: isTemplateMode ? 'wp-site-blocks' : 'is-layout-constrained' // Ensure root level blocks receive default/flow blockGap styling rules.
|
|
247
254
|
,
|
|
248
255
|
__experimentalLayout: layout
|
|
249
256
|
}))))), (0, _element.createElement)(_blockEditor.__unstableBlockSettingsMenuFirstItem, null, _ref3 => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-post/src/components/visual-editor/index.js"],"names":["MaybeIframe","children","contentRef","shouldIframe","styles","assets","style","ref","flex","width","height","display","VisualEditor","deviceType","isWelcomeGuideVisible","isTemplateMode","wrapperBlockName","wrapperUniqueId","select","isFeatureActive","isEditingTemplate","__experimentalGetPreviewDeviceType","editPostStore","getCurrentPostId","getCurrentPostType","editorStore","_isTemplateMode","_wrapperBlockName","isCleanNewPost","hasMetaBoxes","themeHasDisabledLayoutStyles","themeSupportsLayout","_settings","blockEditorStore","getSettings","disableLayoutStyles","supportsLayout","__unstableResolvedAssets","clearSelectedBlock","setIsEditingTemplate","desktopCanvasStyles","margin","flexFlow","background","templateModeStyles","borderRadius","border","borderBottom","resizedCanvasStyles","defaultLayout","previewMode","toLowerCase","animatedStyles","paddingBottom","blockSelectionClearerRef","layout","type","undefined","titleRef","current","focus","padding","arrowLeft","definitions","onClose"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tVisualEditorGlobalKeyboardShortcuts,\n\tPostTitle,\n\tstore as editorStore,\n} from '@wordpress/editor';\nimport {\n\tWritingFlow,\n\tBlockList,\n\tBlockTools,\n\tstore as blockEditorStore,\n\t__unstableUseBlockSelectionClearer as useBlockSelectionClearer,\n\t__unstableUseTypewriter as useTypewriter,\n\t__unstableUseClipboardHandler as useClipboardHandler,\n\t__unstableUseTypingObserver as useTypingObserver,\n\t__unstableBlockSettingsMenuFirstItem,\n\t__experimentalUseResizeCanvas as useResizeCanvas,\n\t__unstableEditorStyles as EditorStyles,\n\tuseSetting,\n\t__experimentalLayoutStyle as LayoutStyle,\n\t__unstableUseMouseMoveTypingReset as useMouseMoveTypingReset,\n\t__unstableIframe as Iframe,\n\t__experimentalRecursionProvider as RecursionProvider,\n} from '@wordpress/block-editor';\nimport { useEffect, useRef, useMemo } from '@wordpress/element';\nimport { Button, __unstableMotion as motion } from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useMergeRefs } from '@wordpress/compose';\nimport { arrowLeft } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BlockInspectorButton from './block-inspector-button';\nimport { store as editPostStore } from '../../store';\n\nfunction MaybeIframe( {\n\tchildren,\n\tcontentRef,\n\tshouldIframe,\n\tstyles,\n\tassets,\n\tstyle,\n} ) {\n\tconst ref = useMouseMoveTypingReset();\n\n\tif ( ! shouldIframe ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<EditorStyles styles={ styles } />\n\t\t\t\t<WritingFlow\n\t\t\t\t\tref={ contentRef }\n\t\t\t\t\tclassName=\"editor-styles-wrapper\"\n\t\t\t\t\tstyle={ { flex: '1', ...style } }\n\t\t\t\t\ttabIndex={ -1 }\n\t\t\t\t>\n\t\t\t\t\t{ children }\n\t\t\t\t</WritingFlow>\n\t\t\t</>\n\t\t);\n\t}\n\n\treturn (\n\t\t<Iframe\n\t\t\thead={ <EditorStyles styles={ styles } /> }\n\t\t\tassets={ assets }\n\t\t\tref={ ref }\n\t\t\tcontentRef={ contentRef }\n\t\t\tstyle={ { width: '100%', height: '100%', display: 'block' } }\n\t\t\tname=\"editor-canvas\"\n\t\t>\n\t\t\t{ children }\n\t\t</Iframe>\n\t);\n}\n\nexport default function VisualEditor( { styles } ) {\n\tconst {\n\t\tdeviceType,\n\t\tisWelcomeGuideVisible,\n\t\tisTemplateMode,\n\t\twrapperBlockName,\n\t\twrapperUniqueId,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tisFeatureActive,\n\t\t\tisEditingTemplate,\n\t\t\t__experimentalGetPreviewDeviceType,\n\t\t} = select( editPostStore );\n\t\tconst { getCurrentPostId, getCurrentPostType } = select( editorStore );\n\t\tconst _isTemplateMode = isEditingTemplate();\n\t\tlet _wrapperBlockName;\n\n\t\tif ( getCurrentPostType() === 'wp_block' ) {\n\t\t\t_wrapperBlockName = 'core/block';\n\t\t} else if ( ! _isTemplateMode ) {\n\t\t\t_wrapperBlockName = 'core/post-content';\n\t\t}\n\n\t\treturn {\n\t\t\tdeviceType: __experimentalGetPreviewDeviceType(),\n\t\t\tisWelcomeGuideVisible: isFeatureActive( 'welcomeGuide' ),\n\t\t\tisTemplateMode: _isTemplateMode,\n\t\t\twrapperBlockName: _wrapperBlockName,\n\t\t\twrapperUniqueId: getCurrentPostId(),\n\t\t};\n\t}, [] );\n\tconst { isCleanNewPost } = useSelect( editorStore );\n\tconst hasMetaBoxes = useSelect(\n\t\t( select ) => select( editPostStore ).hasMetaBoxes(),\n\t\t[]\n\t);\n\tconst { themeHasDisabledLayoutStyles, themeSupportsLayout, assets } =\n\t\tuseSelect( ( select ) => {\n\t\t\tconst _settings = select( blockEditorStore ).getSettings();\n\t\t\treturn {\n\t\t\t\tthemeHasDisabledLayoutStyles: _settings.disableLayoutStyles,\n\t\t\t\tthemeSupportsLayout: _settings.supportsLayout,\n\t\t\t\tassets: _settings.__unstableResolvedAssets,\n\t\t\t};\n\t\t}, [] );\n\tconst { clearSelectedBlock } = useDispatch( blockEditorStore );\n\tconst { setIsEditingTemplate } = useDispatch( editPostStore );\n\tconst desktopCanvasStyles = {\n\t\theight: '100%',\n\t\twidth: '100%',\n\t\tmargin: 0,\n\t\tdisplay: 'flex',\n\t\tflexFlow: 'column',\n\t\t// Default background color so that grey\n\t\t// .edit-post-editor-regions__content color doesn't show through.\n\t\tbackground: 'white',\n\t};\n\tconst templateModeStyles = {\n\t\t...desktopCanvasStyles,\n\t\tborderRadius: '2px 2px 0 0',\n\t\tborder: '1px solid #ddd',\n\t\tborderBottom: 0,\n\t};\n\tconst resizedCanvasStyles = useResizeCanvas( deviceType, isTemplateMode );\n\tconst defaultLayout = useSetting( 'layout' );\n\tconst previewMode = 'is-' + deviceType.toLowerCase() + '-preview';\n\n\tlet animatedStyles = isTemplateMode\n\t\t? templateModeStyles\n\t\t: desktopCanvasStyles;\n\tif ( resizedCanvasStyles ) {\n\t\tanimatedStyles = resizedCanvasStyles;\n\t}\n\n\tlet paddingBottom;\n\n\t// Add a constant padding for the typewritter effect. When typing at the\n\t// bottom, there needs to be room to scroll up.\n\tif ( ! hasMetaBoxes && ! resizedCanvasStyles && ! isTemplateMode ) {\n\t\tpaddingBottom = '40vh';\n\t}\n\n\tconst ref = useRef();\n\tconst contentRef = useMergeRefs( [\n\t\tref,\n\t\tuseClipboardHandler(),\n\t\tuseTypewriter(),\n\t\tuseTypingObserver(),\n\t\tuseBlockSelectionClearer(),\n\t] );\n\n\tconst blockSelectionClearerRef = useBlockSelectionClearer();\n\n\tconst layout = useMemo( () => {\n\t\tif ( isTemplateMode ) {\n\t\t\treturn { type: 'default' };\n\t\t}\n\n\t\tif ( themeSupportsLayout ) {\n\t\t\treturn defaultLayout;\n\t\t}\n\n\t\treturn undefined;\n\t}, [ isTemplateMode, themeSupportsLayout, defaultLayout ] );\n\n\tconst titleRef = useRef();\n\tuseEffect( () => {\n\t\tif ( isWelcomeGuideVisible || ! isCleanNewPost() ) {\n\t\t\treturn;\n\t\t}\n\t\ttitleRef?.current?.focus();\n\t}, [ isWelcomeGuideVisible, isCleanNewPost ] );\n\n\treturn (\n\t\t<BlockTools\n\t\t\t__unstableContentRef={ ref }\n\t\t\tclassName={ classnames( 'edit-post-visual-editor', {\n\t\t\t\t'is-template-mode': isTemplateMode,\n\t\t\t} ) }\n\t\t>\n\t\t\t<VisualEditorGlobalKeyboardShortcuts />\n\t\t\t<motion.div\n\t\t\t\tclassName=\"edit-post-visual-editor__content-area\"\n\t\t\t\tanimate={ {\n\t\t\t\t\tpadding: isTemplateMode ? '48px 48px 0' : '0',\n\t\t\t\t} }\n\t\t\t\tref={ blockSelectionClearerRef }\n\t\t\t>\n\t\t\t\t{ isTemplateMode && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName=\"edit-post-visual-editor__exit-template-mode\"\n\t\t\t\t\t\ticon={ arrowLeft }\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tclearSelectedBlock();\n\t\t\t\t\t\t\tsetIsEditingTemplate( false );\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Back' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t\t<motion.div\n\t\t\t\t\tanimate={ animatedStyles }\n\t\t\t\t\tinitial={ desktopCanvasStyles }\n\t\t\t\t\tclassName={ previewMode }\n\t\t\t\t>\n\t\t\t\t\t<MaybeIframe\n\t\t\t\t\t\tshouldIframe={\n\t\t\t\t\t\t\tisTemplateMode ||\n\t\t\t\t\t\t\tdeviceType === 'Tablet' ||\n\t\t\t\t\t\t\tdeviceType === 'Mobile'\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcontentRef={ contentRef }\n\t\t\t\t\t\tstyles={ styles }\n\t\t\t\t\t\tassets={ assets }\n\t\t\t\t\t\tstyle={ { paddingBottom } }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ themeSupportsLayout &&\n\t\t\t\t\t\t\t! themeHasDisabledLayoutStyles &&\n\t\t\t\t\t\t\t! isTemplateMode && (\n\t\t\t\t\t\t\t\t<LayoutStyle\n\t\t\t\t\t\t\t\t\tselector=\".edit-post-visual-editor__post-title-wrapper, .block-editor-block-list__layout.is-root-container\"\n\t\t\t\t\t\t\t\t\tlayout={ defaultLayout }\n\t\t\t\t\t\t\t\t\tlayoutDefinitions={\n\t\t\t\t\t\t\t\t\t\tdefaultLayout?.definitions\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{ ! isTemplateMode && (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tclassName=\"edit-post-visual-editor__post-title-wrapper\"\n\t\t\t\t\t\t\t\tcontentEditable={ false }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<PostTitle ref={ titleRef } />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<RecursionProvider\n\t\t\t\t\t\t\tblockName={ wrapperBlockName }\n\t\t\t\t\t\t\tuniqueId={ wrapperUniqueId }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<BlockList\n\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\tisTemplateMode\n\t\t\t\t\t\t\t\t\t\t? 'wp-site-blocks'\n\t\t\t\t\t\t\t\t\t\t: 'is-layout-flow' // Ensure root level blocks receive default/flow blockGap styling rules.\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t__experimentalLayout={ layout }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</RecursionProvider>\n\t\t\t\t\t</MaybeIframe>\n\t\t\t\t</motion.div>\n\t\t\t</motion.div>\n\t\t\t<__unstableBlockSettingsMenuFirstItem>\n\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t<BlockInspectorButton onClick={ onClose } />\n\t\t\t\t) }\n\t\t\t</__unstableBlockSettingsMenuFirstItem>\n\t\t</BlockTools>\n\t);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-post/src/components/visual-editor/index.js"],"names":["MaybeIframe","children","contentRef","shouldIframe","styles","assets","style","ref","flex","width","height","display","VisualEditor","deviceType","isWelcomeGuideVisible","isTemplateMode","wrapperBlockName","wrapperUniqueId","select","isFeatureActive","isEditingTemplate","__experimentalGetPreviewDeviceType","editPostStore","getCurrentPostId","getCurrentPostType","editorStore","_isTemplateMode","_wrapperBlockName","isCleanNewPost","hasMetaBoxes","themeHasDisabledLayoutStyles","themeSupportsLayout","_settings","blockEditorStore","getSettings","disableLayoutStyles","supportsLayout","__unstableResolvedAssets","clearSelectedBlock","setIsEditingTemplate","desktopCanvasStyles","margin","flexFlow","background","templateModeStyles","borderRadius","border","borderBottom","resizedCanvasStyles","defaultLayout","previewMode","toLowerCase","animatedStyles","paddingBottom","blockSelectionClearerRef","layout","type","titleRef","current","focus","padding","arrowLeft","definitions","onClose"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tVisualEditorGlobalKeyboardShortcuts,\n\tPostTitle,\n\tstore as editorStore,\n} from '@wordpress/editor';\nimport {\n\tWritingFlow,\n\tBlockList,\n\tBlockTools,\n\tstore as blockEditorStore,\n\t__unstableUseBlockSelectionClearer as useBlockSelectionClearer,\n\t__unstableUseTypewriter as useTypewriter,\n\t__unstableUseClipboardHandler as useClipboardHandler,\n\t__unstableUseTypingObserver as useTypingObserver,\n\t__unstableBlockSettingsMenuFirstItem,\n\t__experimentalUseResizeCanvas as useResizeCanvas,\n\t__unstableEditorStyles as EditorStyles,\n\tuseSetting,\n\t__experimentalLayoutStyle as LayoutStyle,\n\t__unstableUseMouseMoveTypingReset as useMouseMoveTypingReset,\n\t__unstableIframe as Iframe,\n\t__experimentalRecursionProvider as RecursionProvider,\n} from '@wordpress/block-editor';\nimport { useEffect, useRef, useMemo } from '@wordpress/element';\nimport { Button, __unstableMotion as motion } from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useMergeRefs } from '@wordpress/compose';\nimport { arrowLeft } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BlockInspectorButton from './block-inspector-button';\nimport { store as editPostStore } from '../../store';\n\nfunction MaybeIframe( {\n\tchildren,\n\tcontentRef,\n\tshouldIframe,\n\tstyles,\n\tassets,\n\tstyle,\n} ) {\n\tconst ref = useMouseMoveTypingReset();\n\n\tif ( ! shouldIframe ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<EditorStyles styles={ styles } />\n\t\t\t\t<WritingFlow\n\t\t\t\t\tref={ contentRef }\n\t\t\t\t\tclassName=\"editor-styles-wrapper\"\n\t\t\t\t\tstyle={ { flex: '1', ...style } }\n\t\t\t\t\ttabIndex={ -1 }\n\t\t\t\t>\n\t\t\t\t\t{ children }\n\t\t\t\t</WritingFlow>\n\t\t\t</>\n\t\t);\n\t}\n\n\treturn (\n\t\t<Iframe\n\t\t\thead={ <EditorStyles styles={ styles } /> }\n\t\t\tassets={ assets }\n\t\t\tref={ ref }\n\t\t\tcontentRef={ contentRef }\n\t\t\tstyle={ { width: '100%', height: '100%', display: 'block' } }\n\t\t\tname=\"editor-canvas\"\n\t\t>\n\t\t\t{ children }\n\t\t</Iframe>\n\t);\n}\n\nexport default function VisualEditor( { styles } ) {\n\tconst {\n\t\tdeviceType,\n\t\tisWelcomeGuideVisible,\n\t\tisTemplateMode,\n\t\twrapperBlockName,\n\t\twrapperUniqueId,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tisFeatureActive,\n\t\t\tisEditingTemplate,\n\t\t\t__experimentalGetPreviewDeviceType,\n\t\t} = select( editPostStore );\n\t\tconst { getCurrentPostId, getCurrentPostType } = select( editorStore );\n\t\tconst _isTemplateMode = isEditingTemplate();\n\t\tlet _wrapperBlockName;\n\n\t\tif ( getCurrentPostType() === 'wp_block' ) {\n\t\t\t_wrapperBlockName = 'core/block';\n\t\t} else if ( ! _isTemplateMode ) {\n\t\t\t_wrapperBlockName = 'core/post-content';\n\t\t}\n\n\t\treturn {\n\t\t\tdeviceType: __experimentalGetPreviewDeviceType(),\n\t\t\tisWelcomeGuideVisible: isFeatureActive( 'welcomeGuide' ),\n\t\t\tisTemplateMode: _isTemplateMode,\n\t\t\twrapperBlockName: _wrapperBlockName,\n\t\t\twrapperUniqueId: getCurrentPostId(),\n\t\t};\n\t}, [] );\n\tconst { isCleanNewPost } = useSelect( editorStore );\n\tconst hasMetaBoxes = useSelect(\n\t\t( select ) => select( editPostStore ).hasMetaBoxes(),\n\t\t[]\n\t);\n\tconst { themeHasDisabledLayoutStyles, themeSupportsLayout, assets } =\n\t\tuseSelect( ( select ) => {\n\t\t\tconst _settings = select( blockEditorStore ).getSettings();\n\t\t\treturn {\n\t\t\t\tthemeHasDisabledLayoutStyles: _settings.disableLayoutStyles,\n\t\t\t\tthemeSupportsLayout: _settings.supportsLayout,\n\t\t\t\tassets: _settings.__unstableResolvedAssets,\n\t\t\t};\n\t\t}, [] );\n\tconst { clearSelectedBlock } = useDispatch( blockEditorStore );\n\tconst { setIsEditingTemplate } = useDispatch( editPostStore );\n\tconst desktopCanvasStyles = {\n\t\theight: '100%',\n\t\twidth: '100%',\n\t\tmargin: 0,\n\t\tdisplay: 'flex',\n\t\tflexFlow: 'column',\n\t\t// Default background color so that grey\n\t\t// .edit-post-editor-regions__content color doesn't show through.\n\t\tbackground: 'white',\n\t};\n\tconst templateModeStyles = {\n\t\t...desktopCanvasStyles,\n\t\tborderRadius: '2px 2px 0 0',\n\t\tborder: '1px solid #ddd',\n\t\tborderBottom: 0,\n\t};\n\tconst resizedCanvasStyles = useResizeCanvas( deviceType, isTemplateMode );\n\tconst defaultLayout = useSetting( 'layout' );\n\tconst previewMode = 'is-' + deviceType.toLowerCase() + '-preview';\n\n\tlet animatedStyles = isTemplateMode\n\t\t? templateModeStyles\n\t\t: desktopCanvasStyles;\n\tif ( resizedCanvasStyles ) {\n\t\tanimatedStyles = resizedCanvasStyles;\n\t}\n\n\tlet paddingBottom;\n\n\t// Add a constant padding for the typewritter effect. When typing at the\n\t// bottom, there needs to be room to scroll up.\n\tif ( ! hasMetaBoxes && ! resizedCanvasStyles && ! isTemplateMode ) {\n\t\tpaddingBottom = '40vh';\n\t}\n\n\tconst ref = useRef();\n\tconst contentRef = useMergeRefs( [\n\t\tref,\n\t\tuseClipboardHandler(),\n\t\tuseTypewriter(),\n\t\tuseTypingObserver(),\n\t\tuseBlockSelectionClearer(),\n\t] );\n\n\tconst blockSelectionClearerRef = useBlockSelectionClearer();\n\n\tconst layout = useMemo( () => {\n\t\tif ( isTemplateMode ) {\n\t\t\treturn { type: 'default' };\n\t\t}\n\n\t\tif ( themeSupportsLayout ) {\n\t\t\t// We need to ensure support for wide and full alignments,\n\t\t\t// so we add the constrained type.\n\t\t\treturn { ...defaultLayout, type: 'constrained' };\n\t\t}\n\t\t// Set constrained layout for classic themes so all alignments are supported.\n\t\treturn { type: 'constrained' };\n\t}, [ isTemplateMode, themeSupportsLayout, defaultLayout ] );\n\n\tconst titleRef = useRef();\n\tuseEffect( () => {\n\t\tif ( isWelcomeGuideVisible || ! isCleanNewPost() ) {\n\t\t\treturn;\n\t\t}\n\t\ttitleRef?.current?.focus();\n\t}, [ isWelcomeGuideVisible, isCleanNewPost ] );\n\n\treturn (\n\t\t<BlockTools\n\t\t\t__unstableContentRef={ ref }\n\t\t\tclassName={ classnames( 'edit-post-visual-editor', {\n\t\t\t\t'is-template-mode': isTemplateMode,\n\t\t\t} ) }\n\t\t>\n\t\t\t<VisualEditorGlobalKeyboardShortcuts />\n\t\t\t<motion.div\n\t\t\t\tclassName=\"edit-post-visual-editor__content-area\"\n\t\t\t\tanimate={ {\n\t\t\t\t\tpadding: isTemplateMode ? '48px 48px 0' : '0',\n\t\t\t\t} }\n\t\t\t\tref={ blockSelectionClearerRef }\n\t\t\t>\n\t\t\t\t{ isTemplateMode && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName=\"edit-post-visual-editor__exit-template-mode\"\n\t\t\t\t\t\ticon={ arrowLeft }\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tclearSelectedBlock();\n\t\t\t\t\t\t\tsetIsEditingTemplate( false );\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Back' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t\t<motion.div\n\t\t\t\t\tanimate={ animatedStyles }\n\t\t\t\t\tinitial={ desktopCanvasStyles }\n\t\t\t\t\tclassName={ previewMode }\n\t\t\t\t>\n\t\t\t\t\t<MaybeIframe\n\t\t\t\t\t\tshouldIframe={\n\t\t\t\t\t\t\tisTemplateMode ||\n\t\t\t\t\t\t\tdeviceType === 'Tablet' ||\n\t\t\t\t\t\t\tdeviceType === 'Mobile'\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcontentRef={ contentRef }\n\t\t\t\t\t\tstyles={ styles }\n\t\t\t\t\t\tassets={ assets }\n\t\t\t\t\t\tstyle={ { paddingBottom } }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ themeSupportsLayout &&\n\t\t\t\t\t\t\t! themeHasDisabledLayoutStyles &&\n\t\t\t\t\t\t\t! isTemplateMode && (\n\t\t\t\t\t\t\t\t<LayoutStyle\n\t\t\t\t\t\t\t\t\tselector=\".edit-post-visual-editor__post-title-wrapper, .block-editor-block-list__layout.is-root-container\"\n\t\t\t\t\t\t\t\t\tlayout={ layout }\n\t\t\t\t\t\t\t\t\tlayoutDefinitions={\n\t\t\t\t\t\t\t\t\t\tdefaultLayout?.definitions\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{ ! isTemplateMode && (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tclassName=\"edit-post-visual-editor__post-title-wrapper\"\n\t\t\t\t\t\t\t\tcontentEditable={ false }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<PostTitle ref={ titleRef } />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<RecursionProvider\n\t\t\t\t\t\t\tblockName={ wrapperBlockName }\n\t\t\t\t\t\t\tuniqueId={ wrapperUniqueId }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<BlockList\n\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\tisTemplateMode\n\t\t\t\t\t\t\t\t\t\t? 'wp-site-blocks'\n\t\t\t\t\t\t\t\t\t\t: 'is-layout-constrained' // Ensure root level blocks receive default/flow blockGap styling rules.\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t__experimentalLayout={ layout }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</RecursionProvider>\n\t\t\t\t\t</MaybeIframe>\n\t\t\t\t</motion.div>\n\t\t\t</motion.div>\n\t\t\t<__unstableBlockSettingsMenuFirstItem>\n\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t<BlockInspectorButton onClick={ onClose } />\n\t\t\t\t) }\n\t\t\t</__unstableBlockSettingsMenuFirstItem>\n\t\t</BlockTools>\n\t);\n}\n"]}
|
|
@@ -1,18 +1,13 @@
|
|
|
1
1
|
import { createElement } from "@wordpress/element";
|
|
2
2
|
|
|
3
|
-
/**
|
|
4
|
-
* External dependencies
|
|
5
|
-
*/
|
|
6
|
-
import { difference } from 'lodash';
|
|
7
3
|
/**
|
|
8
4
|
* WordPress dependencies
|
|
9
5
|
*/
|
|
10
|
-
|
|
11
6
|
import { BlockSettingsMenuControls } from '@wordpress/block-editor';
|
|
12
7
|
import { MenuItem } from '@wordpress/components';
|
|
13
8
|
import { compose } from '@wordpress/compose';
|
|
14
9
|
|
|
15
|
-
const isEverySelectedBlockAllowed = (selected, allowed) =>
|
|
10
|
+
const isEverySelectedBlockAllowed = (selected, allowed) => selected.filter(id => !allowed.includes(id)).length === 0;
|
|
16
11
|
/**
|
|
17
12
|
* Plugins may want to add an item to the menu either for every block
|
|
18
13
|
* or only for the specific ones provided in the `allowedBlocks` component property.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-post/src/components/block-settings-menu/plugin-block-settings-menu-item.js"],"names":["
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-post/src/components/block-settings-menu/plugin-block-settings-menu-item.js"],"names":["BlockSettingsMenuControls","MenuItem","compose","isEverySelectedBlockAllowed","selected","allowed","filter","id","includes","length","shouldRenderItem","selectedBlocks","allowedBlocks","Array","isArray","PluginBlockSettingsMenuItem","icon","label","onClick","small","role","onClose","undefined"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,yBAAT,QAA0C,yBAA1C;AACA,SAASC,QAAT,QAAyB,uBAAzB;AACA,SAASC,OAAT,QAAwB,oBAAxB;;AAEA,MAAMC,2BAA2B,GAAG,CAAEC,QAAF,EAAYC,OAAZ,KACnCD,QAAQ,CAACE,MAAT,CAAmBC,EAAF,IAAU,CAAEF,OAAO,CAACG,QAAR,CAAkBD,EAAlB,CAA7B,EAAsDE,MAAtD,KAAiE,CADlE;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAMC,gBAAgB,GAAG,CAAEC,cAAF,EAAkBC,aAAlB,KACxB,CAAEC,KAAK,CAACC,OAAN,CAAeF,aAAf,CAAF,IACAT,2BAA2B,CAAEQ,cAAF,EAAkBC,aAAlB,CAF5B;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAMG,2BAA2B,GAAG;AAAA,MAAE;AACrCH,IAAAA,aADqC;AAErCI,IAAAA,IAFqC;AAGrCC,IAAAA,KAHqC;AAIrCC,IAAAA,OAJqC;AAKrCC,IAAAA,KALqC;AAMrCC,IAAAA;AANqC,GAAF;AAAA,SAQnC,cAAC,yBAAD,QACG,SAAmC;AAAA,QAAjC;AAAET,MAAAA,cAAF;AAAkBU,MAAAA;AAAlB,KAAiC;;AACpC,QAAK,CAAEX,gBAAgB,CAAEC,cAAF,EAAkBC,aAAlB,CAAvB,EAA2D;AAC1D,aAAO,IAAP;AACA;;AACD,WACC,cAAC,QAAD;AACC,MAAA,OAAO,EAAGV,OAAO,CAAEgB,OAAF,EAAWG,OAAX,CADlB;AAEC,MAAA,IAAI,EAAGL,IAFR;AAGC,MAAA,KAAK,EAAGG,KAAK,GAAGF,KAAH,GAAWK,SAHzB;AAIC,MAAA,IAAI,EAAGF;AAJR,OAMG,CAAED,KAAF,IAAWF,KANd,CADD;AAUA,GAfF,CARmC;AAAA,CAApC;;AA2BA,eAAeF,2BAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { BlockSettingsMenuControls } from '@wordpress/block-editor';\nimport { MenuItem } from '@wordpress/components';\nimport { compose } from '@wordpress/compose';\n\nconst isEverySelectedBlockAllowed = ( selected, allowed ) =>\n\tselected.filter( ( id ) => ! allowed.includes( id ) ).length === 0;\n\n/**\n * Plugins may want to add an item to the menu either for every block\n * or only for the specific ones provided in the `allowedBlocks` component property.\n *\n * If there are multiple blocks selected the item will be rendered if every block\n * is of one allowed type (not necessarily the same).\n *\n * @param {string[]} selectedBlocks Array containing the names of the blocks selected\n * @param {string[]} allowedBlocks Array containing the names of the blocks allowed\n * @return {boolean} Whether the item will be rendered or not.\n */\nconst shouldRenderItem = ( selectedBlocks, allowedBlocks ) =>\n\t! Array.isArray( allowedBlocks ) ||\n\tisEverySelectedBlockAllowed( selectedBlocks, allowedBlocks );\n\n/**\n * Renders a new item in the block settings menu.\n *\n * @param {Object} props Component props.\n * @param {Array} [props.allowedBlocks] An array containing a list of block names for which the item should be shown. If not present, it'll be rendered for any block. If multiple blocks are selected, it'll be shown if and only if all of them are in the allowed list.\n * @param {WPBlockTypeIconRender} [props.icon] The [Dashicon](https://developer.wordpress.org/resource/dashicons/) icon slug string, or an SVG WP element.\n * @param {string} props.label The menu item text.\n * @param {Function} props.onClick Callback function to be executed when the user click the menu item.\n * @param {boolean} [props.small] Whether to render the label or not.\n * @param {string} [props.role] The ARIA role for the menu item.\n *\n * @example\n * ```js\n * // Using ES5 syntax\n * var __ = wp.i18n.__;\n * var PluginBlockSettingsMenuItem = wp.editPost.PluginBlockSettingsMenuItem;\n *\n * function doOnClick(){\n * \t// To be called when the user clicks the menu item.\n * }\n *\n * function MyPluginBlockSettingsMenuItem() {\n * \treturn wp.element.createElement(\n * \t\tPluginBlockSettingsMenuItem,\n * \t\t{\n * \t\t\tallowedBlocks: [ 'core/paragraph' ],\n * \t\t\ticon: 'dashicon-name',\n * \t\t\tlabel: __( 'Menu item text' ),\n * \t\t\tonClick: doOnClick,\n * \t\t}\n * \t);\n * }\n * ```\n *\n * @example\n * ```jsx\n * // Using ESNext syntax\n * import { __ } from '@wordpress/i18n';\n * import { PluginBlockSettingsMenuItem } from '@wordpress/edit-post';\n *\n * const doOnClick = ( ) => {\n * // To be called when the user clicks the menu item.\n * };\n *\n * const MyPluginBlockSettingsMenuItem = () => (\n * <PluginBlockSettingsMenuItem\n * \t\tallowedBlocks={ [ 'core/paragraph' ] }\n * \t\ticon='dashicon-name'\n * \t\tlabel={ __( 'Menu item text' ) }\n * \t\tonClick={ doOnClick } />\n * );\n * ```\n *\n * @return {WPComponent} The component to be rendered.\n */\nconst PluginBlockSettingsMenuItem = ( {\n\tallowedBlocks,\n\ticon,\n\tlabel,\n\tonClick,\n\tsmall,\n\trole,\n} ) => (\n\t<BlockSettingsMenuControls>\n\t\t{ ( { selectedBlocks, onClose } ) => {\n\t\t\tif ( ! shouldRenderItem( selectedBlocks, allowedBlocks ) ) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\treturn (\n\t\t\t\t<MenuItem\n\t\t\t\t\tonClick={ compose( onClick, onClose ) }\n\t\t\t\t\ticon={ icon }\n\t\t\t\t\tlabel={ small ? label : undefined }\n\t\t\t\t\trole={ role }\n\t\t\t\t>\n\t\t\t\t\t{ ! small && label }\n\t\t\t\t</MenuItem>\n\t\t\t);\n\t\t} }\n\t</BlockSettingsMenuControls>\n);\n\nexport default PluginBlockSettingsMenuItem;\n"]}
|
|
@@ -86,7 +86,8 @@ function HeaderToolbar() {
|
|
|
86
86
|
label: __('List View'),
|
|
87
87
|
onClick: toggleListView,
|
|
88
88
|
shortcut: listViewShortcut,
|
|
89
|
-
showTooltip: !showIconLabels
|
|
89
|
+
showTooltip: !showIconLabels,
|
|
90
|
+
variant: showIconLabels ? 'tertiary' : undefined
|
|
90
91
|
}));
|
|
91
92
|
const openInserter = useCallback(() => {
|
|
92
93
|
if (isInserterOpened) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-post/src/components/header/header-toolbar/index.js"],"names":["useViewportMatch","useSelect","useDispatch","__","_x","NavigableToolbar","ToolSelector","store","blockEditorStore","TableOfContents","EditorHistoryRedo","EditorHistoryUndo","editorStore","Button","ToolbarItem","listView","plus","useRef","useCallback","keyboardShortcutsStore","editPostStore","preventDefault","event","HeaderToolbar","inserterButton","setIsInserterOpened","setIsListViewOpened","isInserterEnabled","isInserterOpened","isTextModeEnabled","showIconLabels","isListViewOpen","listViewShortcut","select","hasInserterItems","getBlockRootClientId","getBlockSelectionEnd","getEditorSettings","getEditorMode","isFeatureActive","isListViewOpened","getShortcutRepresentation","richEditingEnabled","isLargeViewport","isWideViewport","toolbarAriaLabel","toggleListView","overflowItems","undefined","openInserter","current","focus","longLabel","shortLabel"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useViewportMatch } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tNavigableToolbar,\n\tToolSelector,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport {\n\tTableOfContents,\n\tEditorHistoryRedo,\n\tEditorHistoryUndo,\n\tstore as editorStore,\n} from '@wordpress/editor';\nimport { Button, ToolbarItem } from '@wordpress/components';\nimport { listView, plus } from '@wordpress/icons';\nimport { useRef, useCallback } from '@wordpress/element';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../../store';\n\nconst preventDefault = ( event ) => {\n\tevent.preventDefault();\n};\n\nfunction HeaderToolbar() {\n\tconst inserterButton = useRef();\n\tconst { setIsInserterOpened, setIsListViewOpened } =\n\t\tuseDispatch( editPostStore );\n\tconst {\n\t\tisInserterEnabled,\n\t\tisInserterOpened,\n\t\tisTextModeEnabled,\n\t\tshowIconLabels,\n\t\tisListViewOpen,\n\t\tlistViewShortcut,\n\t} = useSelect( ( select ) => {\n\t\tconst { hasInserterItems, getBlockRootClientId, getBlockSelectionEnd } =\n\t\t\tselect( blockEditorStore );\n\t\tconst { getEditorSettings } = select( editorStore );\n\t\tconst { getEditorMode, isFeatureActive, isListViewOpened } =\n\t\t\tselect( editPostStore );\n\t\tconst { getShortcutRepresentation } = select( keyboardShortcutsStore );\n\n\t\treturn {\n\t\t\t// This setting (richEditingEnabled) should not live in the block editor's setting.\n\t\t\tisInserterEnabled:\n\t\t\t\tgetEditorMode() === 'visual' &&\n\t\t\t\tgetEditorSettings().richEditingEnabled &&\n\t\t\t\thasInserterItems(\n\t\t\t\t\tgetBlockRootClientId( getBlockSelectionEnd() )\n\t\t\t\t),\n\t\t\tisInserterOpened: select( editPostStore ).isInserterOpened(),\n\t\t\tisTextModeEnabled: getEditorMode() === 'text',\n\t\t\tshowIconLabels: isFeatureActive( 'showIconLabels' ),\n\t\t\tisListViewOpen: isListViewOpened(),\n\t\t\tlistViewShortcut: getShortcutRepresentation(\n\t\t\t\t'core/edit-post/toggle-list-view'\n\t\t\t),\n\t\t};\n\t}, [] );\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isWideViewport = useViewportMatch( 'wide' );\n\n\t/* translators: accessibility text for the editor toolbar */\n\tconst toolbarAriaLabel = __( 'Document tools' );\n\n\tconst toggleListView = useCallback(\n\t\t() => setIsListViewOpened( ! isListViewOpen ),\n\t\t[ setIsListViewOpened, isListViewOpen ]\n\t);\n\tconst overflowItems = (\n\t\t<>\n\t\t\t<ToolbarItem\n\t\t\t\tas={ TableOfContents }\n\t\t\t\thasOutlineItemsDisabled={ isTextModeEnabled }\n\t\t\t\trepositionDropdown={ showIconLabels && ! isWideViewport }\n\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\tvariant={ showIconLabels ? 'tertiary' : undefined }\n\t\t\t/>\n\t\t\t<ToolbarItem\n\t\t\t\tas={ Button }\n\t\t\t\tclassName=\"edit-post-header-toolbar__list-view-toggle\"\n\t\t\t\ticon={ listView }\n\t\t\t\tdisabled={ isTextModeEnabled }\n\t\t\t\tisPressed={ isListViewOpen }\n\t\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\t\tlabel={ __( 'List View' ) }\n\t\t\t\tonClick={ toggleListView }\n\t\t\t\tshortcut={ listViewShortcut }\n\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t/>\n\t\t</>\n\t);\n\tconst openInserter = useCallback( () => {\n\t\tif ( isInserterOpened ) {\n\t\t\t// Focusing the inserter button closes the inserter popover.\n\t\t\tinserterButton.current.focus();\n\t\t} else {\n\t\t\tsetIsInserterOpened( true );\n\t\t}\n\t}, [ isInserterOpened, setIsInserterOpened ] );\n\n\t/* translators: button label text should, if possible, be under 16 characters. */\n\tconst longLabel = _x(\n\t\t'Toggle block inserter',\n\t\t'Generic label for block inserter button'\n\t);\n\tconst shortLabel = ! isInserterOpened ? __( 'Add' ) : __( 'Close' );\n\n\treturn (\n\t\t<NavigableToolbar\n\t\t\tclassName=\"edit-post-header-toolbar\"\n\t\t\taria-label={ toolbarAriaLabel }\n\t\t>\n\t\t\t<div className=\"edit-post-header-toolbar__left\">\n\t\t\t\t<ToolbarItem\n\t\t\t\t\tref={ inserterButton }\n\t\t\t\t\tas={ Button }\n\t\t\t\t\tclassName=\"edit-post-header-toolbar__inserter-toggle\"\n\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\tisPressed={ isInserterOpened }\n\t\t\t\t\tonMouseDown={ preventDefault }\n\t\t\t\t\tonClick={ openInserter }\n\t\t\t\t\tdisabled={ ! isInserterEnabled }\n\t\t\t\t\ticon={ plus }\n\t\t\t\t\tlabel={ showIconLabels ? shortLabel : longLabel }\n\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t/>\n\t\t\t\t{ ( isWideViewport || ! showIconLabels ) && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ isLargeViewport && (\n\t\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\t\tas={ ToolSelector }\n\t\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\t\tshowIconLabels ? 'tertiary' : undefined\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tdisabled={ isTextModeEnabled }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\tas={ EditorHistoryUndo }\n\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\tvariant={ showIconLabels ? 'tertiary' : undefined }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\tas={ EditorHistoryRedo }\n\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\tvariant={ showIconLabels ? 'tertiary' : undefined }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ overflowItems }\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</NavigableToolbar>\n\t);\n}\n\nexport default HeaderToolbar;\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-post/src/components/header/header-toolbar/index.js"],"names":["useViewportMatch","useSelect","useDispatch","__","_x","NavigableToolbar","ToolSelector","store","blockEditorStore","TableOfContents","EditorHistoryRedo","EditorHistoryUndo","editorStore","Button","ToolbarItem","listView","plus","useRef","useCallback","keyboardShortcutsStore","editPostStore","preventDefault","event","HeaderToolbar","inserterButton","setIsInserterOpened","setIsListViewOpened","isInserterEnabled","isInserterOpened","isTextModeEnabled","showIconLabels","isListViewOpen","listViewShortcut","select","hasInserterItems","getBlockRootClientId","getBlockSelectionEnd","getEditorSettings","getEditorMode","isFeatureActive","isListViewOpened","getShortcutRepresentation","richEditingEnabled","isLargeViewport","isWideViewport","toolbarAriaLabel","toggleListView","overflowItems","undefined","openInserter","current","focus","longLabel","shortLabel"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useViewportMatch } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tNavigableToolbar,\n\tToolSelector,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport {\n\tTableOfContents,\n\tEditorHistoryRedo,\n\tEditorHistoryUndo,\n\tstore as editorStore,\n} from '@wordpress/editor';\nimport { Button, ToolbarItem } from '@wordpress/components';\nimport { listView, plus } from '@wordpress/icons';\nimport { useRef, useCallback } from '@wordpress/element';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../../store';\n\nconst preventDefault = ( event ) => {\n\tevent.preventDefault();\n};\n\nfunction HeaderToolbar() {\n\tconst inserterButton = useRef();\n\tconst { setIsInserterOpened, setIsListViewOpened } =\n\t\tuseDispatch( editPostStore );\n\tconst {\n\t\tisInserterEnabled,\n\t\tisInserterOpened,\n\t\tisTextModeEnabled,\n\t\tshowIconLabels,\n\t\tisListViewOpen,\n\t\tlistViewShortcut,\n\t} = useSelect( ( select ) => {\n\t\tconst { hasInserterItems, getBlockRootClientId, getBlockSelectionEnd } =\n\t\t\tselect( blockEditorStore );\n\t\tconst { getEditorSettings } = select( editorStore );\n\t\tconst { getEditorMode, isFeatureActive, isListViewOpened } =\n\t\t\tselect( editPostStore );\n\t\tconst { getShortcutRepresentation } = select( keyboardShortcutsStore );\n\n\t\treturn {\n\t\t\t// This setting (richEditingEnabled) should not live in the block editor's setting.\n\t\t\tisInserterEnabled:\n\t\t\t\tgetEditorMode() === 'visual' &&\n\t\t\t\tgetEditorSettings().richEditingEnabled &&\n\t\t\t\thasInserterItems(\n\t\t\t\t\tgetBlockRootClientId( getBlockSelectionEnd() )\n\t\t\t\t),\n\t\t\tisInserterOpened: select( editPostStore ).isInserterOpened(),\n\t\t\tisTextModeEnabled: getEditorMode() === 'text',\n\t\t\tshowIconLabels: isFeatureActive( 'showIconLabels' ),\n\t\t\tisListViewOpen: isListViewOpened(),\n\t\t\tlistViewShortcut: getShortcutRepresentation(\n\t\t\t\t'core/edit-post/toggle-list-view'\n\t\t\t),\n\t\t};\n\t}, [] );\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isWideViewport = useViewportMatch( 'wide' );\n\n\t/* translators: accessibility text for the editor toolbar */\n\tconst toolbarAriaLabel = __( 'Document tools' );\n\n\tconst toggleListView = useCallback(\n\t\t() => setIsListViewOpened( ! isListViewOpen ),\n\t\t[ setIsListViewOpened, isListViewOpen ]\n\t);\n\tconst overflowItems = (\n\t\t<>\n\t\t\t<ToolbarItem\n\t\t\t\tas={ TableOfContents }\n\t\t\t\thasOutlineItemsDisabled={ isTextModeEnabled }\n\t\t\t\trepositionDropdown={ showIconLabels && ! isWideViewport }\n\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\tvariant={ showIconLabels ? 'tertiary' : undefined }\n\t\t\t/>\n\t\t\t<ToolbarItem\n\t\t\t\tas={ Button }\n\t\t\t\tclassName=\"edit-post-header-toolbar__list-view-toggle\"\n\t\t\t\ticon={ listView }\n\t\t\t\tdisabled={ isTextModeEnabled }\n\t\t\t\tisPressed={ isListViewOpen }\n\t\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\t\tlabel={ __( 'List View' ) }\n\t\t\t\tonClick={ toggleListView }\n\t\t\t\tshortcut={ listViewShortcut }\n\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\tvariant={ showIconLabels ? 'tertiary' : undefined }\n\t\t\t/>\n\t\t</>\n\t);\n\tconst openInserter = useCallback( () => {\n\t\tif ( isInserterOpened ) {\n\t\t\t// Focusing the inserter button closes the inserter popover.\n\t\t\tinserterButton.current.focus();\n\t\t} else {\n\t\t\tsetIsInserterOpened( true );\n\t\t}\n\t}, [ isInserterOpened, setIsInserterOpened ] );\n\n\t/* translators: button label text should, if possible, be under 16 characters. */\n\tconst longLabel = _x(\n\t\t'Toggle block inserter',\n\t\t'Generic label for block inserter button'\n\t);\n\tconst shortLabel = ! isInserterOpened ? __( 'Add' ) : __( 'Close' );\n\n\treturn (\n\t\t<NavigableToolbar\n\t\t\tclassName=\"edit-post-header-toolbar\"\n\t\t\taria-label={ toolbarAriaLabel }\n\t\t>\n\t\t\t<div className=\"edit-post-header-toolbar__left\">\n\t\t\t\t<ToolbarItem\n\t\t\t\t\tref={ inserterButton }\n\t\t\t\t\tas={ Button }\n\t\t\t\t\tclassName=\"edit-post-header-toolbar__inserter-toggle\"\n\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\tisPressed={ isInserterOpened }\n\t\t\t\t\tonMouseDown={ preventDefault }\n\t\t\t\t\tonClick={ openInserter }\n\t\t\t\t\tdisabled={ ! isInserterEnabled }\n\t\t\t\t\ticon={ plus }\n\t\t\t\t\tlabel={ showIconLabels ? shortLabel : longLabel }\n\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t/>\n\t\t\t\t{ ( isWideViewport || ! showIconLabels ) && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ isLargeViewport && (\n\t\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\t\tas={ ToolSelector }\n\t\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\t\tshowIconLabels ? 'tertiary' : undefined\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tdisabled={ isTextModeEnabled }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\tas={ EditorHistoryUndo }\n\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\tvariant={ showIconLabels ? 'tertiary' : undefined }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\tas={ EditorHistoryRedo }\n\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\tvariant={ showIconLabels ? 'tertiary' : undefined }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ overflowItems }\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</NavigableToolbar>\n\t);\n}\n\nexport default HeaderToolbar;\n"]}
|
|
@@ -31,19 +31,24 @@ export default function PostTemplateForm(_ref) {
|
|
|
31
31
|
canCreate,
|
|
32
32
|
canEdit
|
|
33
33
|
} = useSelect(select => {
|
|
34
|
+
const {
|
|
35
|
+
canUser,
|
|
36
|
+
getEntityRecord,
|
|
37
|
+
getEntityRecords
|
|
38
|
+
} = select(coreStore);
|
|
34
39
|
const editorSettings = select(editorStore).getEditorSettings();
|
|
35
|
-
const siteSettings =
|
|
40
|
+
const siteSettings = canUser('read', 'settings') ? getEntityRecord('root', 'site') : undefined;
|
|
36
41
|
|
|
37
42
|
const _isPostsPage = select(editorStore).getCurrentPostId() === (siteSettings === null || siteSettings === void 0 ? void 0 : siteSettings.page_for_posts);
|
|
38
43
|
|
|
39
|
-
const canCreateTemplates =
|
|
44
|
+
const canCreateTemplates = canUser('create', 'templates');
|
|
40
45
|
return {
|
|
41
46
|
isPostsPage: _isPostsPage,
|
|
42
47
|
availableTemplates: editorSettings.availableTemplates,
|
|
43
|
-
fetchedTemplates:
|
|
48
|
+
fetchedTemplates: canCreateTemplates ? getEntityRecords('postType', 'wp_template', {
|
|
44
49
|
post_type: select(editorStore).getCurrentPostType(),
|
|
45
50
|
per_page: -1
|
|
46
|
-
}),
|
|
51
|
+
}) : undefined,
|
|
47
52
|
selectedTemplateSlug: select(editorStore).getEditedPostAttribute('template'),
|
|
48
53
|
canCreate: canCreateTemplates && !_isPostsPage && editorSettings.supportsTemplateMode,
|
|
49
54
|
canEdit: canCreateTemplates && editorSettings.supportsTemplateMode && !!select(editPostStore).getEditedPostTemplate()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/post-template/form.js"],"names":["useState","useMemo","__experimentalInspectorPopoverHeader","InspectorPopoverHeader","__","addTemplate","Notice","SelectControl","Button","useSelect","useDispatch","store","editorStore","coreStore","editPostStore","PostTemplateCreateModal","PostTemplateForm","onClose","isPostsPage","availableTemplates","fetchedTemplates","selectedTemplateSlug","canCreate","canEdit","select","editorSettings","getEditorSettings","siteSettings","
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/post-template/form.js"],"names":["useState","useMemo","__experimentalInspectorPopoverHeader","InspectorPopoverHeader","__","addTemplate","Notice","SelectControl","Button","useSelect","useDispatch","store","editorStore","coreStore","editPostStore","PostTemplateCreateModal","PostTemplateForm","onClose","isPostsPage","availableTemplates","fetchedTemplates","selectedTemplateSlug","canCreate","canEdit","select","canUser","getEntityRecord","getEntityRecords","editorSettings","getEditorSettings","siteSettings","undefined","_isPostsPage","getCurrentPostId","page_for_posts","canCreateTemplates","post_type","getCurrentPostType","per_page","getEditedPostAttribute","supportsTemplateMode","getEditedPostTemplate","options","Object","entries","fromEntries","map","slug","title","rendered","value","label","selectedOption","find","option","editPost","__unstableSwitchToTemplateMode","isCreateModalOpen","setIsCreateModalOpen","icon","onClick","template"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useState, useMemo } from '@wordpress/element';\nimport { __experimentalInspectorPopoverHeader as InspectorPopoverHeader } from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { addTemplate } from '@wordpress/icons';\nimport { Notice, SelectControl, Button } from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as editorStore } from '@wordpress/editor';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../../store';\nimport PostTemplateCreateModal from './create-modal';\n\nexport default function PostTemplateForm( { onClose } ) {\n\tconst {\n\t\tisPostsPage,\n\t\tavailableTemplates,\n\t\tfetchedTemplates,\n\t\tselectedTemplateSlug,\n\t\tcanCreate,\n\t\tcanEdit,\n\t} = useSelect( ( select ) => {\n\t\tconst { canUser, getEntityRecord, getEntityRecords } =\n\t\t\tselect( coreStore );\n\t\tconst editorSettings = select( editorStore ).getEditorSettings();\n\t\tconst siteSettings = canUser( 'read', 'settings' )\n\t\t\t? getEntityRecord( 'root', 'site' )\n\t\t\t: undefined;\n\t\tconst _isPostsPage =\n\t\t\tselect( editorStore ).getCurrentPostId() ===\n\t\t\tsiteSettings?.page_for_posts;\n\t\tconst canCreateTemplates = canUser( 'create', 'templates' );\n\n\t\treturn {\n\t\t\tisPostsPage: _isPostsPage,\n\t\t\tavailableTemplates: editorSettings.availableTemplates,\n\t\t\tfetchedTemplates: canCreateTemplates\n\t\t\t\t? getEntityRecords( 'postType', 'wp_template', {\n\t\t\t\t\t\tpost_type: select( editorStore ).getCurrentPostType(),\n\t\t\t\t\t\tper_page: -1,\n\t\t\t\t } )\n\t\t\t\t: undefined,\n\t\t\tselectedTemplateSlug:\n\t\t\t\tselect( editorStore ).getEditedPostAttribute( 'template' ),\n\t\t\tcanCreate:\n\t\t\t\tcanCreateTemplates &&\n\t\t\t\t! _isPostsPage &&\n\t\t\t\teditorSettings.supportsTemplateMode,\n\t\t\tcanEdit:\n\t\t\t\tcanCreateTemplates &&\n\t\t\t\teditorSettings.supportsTemplateMode &&\n\t\t\t\t!! select( editPostStore ).getEditedPostTemplate(),\n\t\t};\n\t}, [] );\n\n\tconst options = useMemo(\n\t\t() =>\n\t\t\tObject.entries( {\n\t\t\t\t...availableTemplates,\n\t\t\t\t...Object.fromEntries(\n\t\t\t\t\t( fetchedTemplates ?? [] ).map( ( { slug, title } ) => [\n\t\t\t\t\t\tslug,\n\t\t\t\t\t\ttitle.rendered,\n\t\t\t\t\t] )\n\t\t\t\t),\n\t\t\t} ).map( ( [ slug, title ] ) => ( { value: slug, label: title } ) ),\n\t\t[ availableTemplates, fetchedTemplates ]\n\t);\n\n\tconst selectedOption =\n\t\toptions.find( ( option ) => option.value === selectedTemplateSlug ) ??\n\t\toptions.find( ( option ) => ! option.value ); // The default option has '' value.\n\n\tconst { editPost } = useDispatch( editorStore );\n\tconst { __unstableSwitchToTemplateMode } = useDispatch( editPostStore );\n\n\tconst [ isCreateModalOpen, setIsCreateModalOpen ] = useState( false );\n\n\treturn (\n\t\t<div className=\"edit-post-post-template__form\">\n\t\t\t<InspectorPopoverHeader\n\t\t\t\ttitle={ __( 'Template' ) }\n\t\t\t\thelp={ __(\n\t\t\t\t\t'Templates define the way content is displayed when viewing your site.'\n\t\t\t\t) }\n\t\t\t\tactions={\n\t\t\t\t\tcanCreate\n\t\t\t\t\t\t? [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\ticon: addTemplate,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Add template' ),\n\t\t\t\t\t\t\t\t\tonClick: () => setIsCreateModalOpen( true ),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t ]\n\t\t\t\t\t\t: []\n\t\t\t\t}\n\t\t\t\tonClose={ onClose }\n\t\t\t/>\n\t\t\t{ isPostsPage ? (\n\t\t\t\t<Notice\n\t\t\t\t\tclassName=\"edit-post-post-template__notice\"\n\t\t\t\t\tstatus=\"warning\"\n\t\t\t\t\tisDismissible={ false }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'The posts page template cannot be changed.' ) }\n\t\t\t\t</Notice>\n\t\t\t) : (\n\t\t\t\t<SelectControl\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\tlabel={ __( 'Template' ) }\n\t\t\t\t\tvalue={ selectedOption?.value ?? '' }\n\t\t\t\t\toptions={ options }\n\t\t\t\t\tonChange={ ( slug ) =>\n\t\t\t\t\t\teditPost( { template: slug || '' } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ canEdit && (\n\t\t\t\t<p>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\tonClick={ () => __unstableSwitchToTemplateMode() }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Edit template' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</p>\n\t\t\t) }\n\t\t\t{ isCreateModalOpen && (\n\t\t\t\t<PostTemplateCreateModal\n\t\t\t\t\tonClose={ () => setIsCreateModalOpen( false ) }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n"]}
|
|
@@ -168,10 +168,17 @@ export default function VisualEditor(_ref2) {
|
|
|
168
168
|
}
|
|
169
169
|
|
|
170
170
|
if (themeSupportsLayout) {
|
|
171
|
-
|
|
172
|
-
|
|
171
|
+
// We need to ensure support for wide and full alignments,
|
|
172
|
+
// so we add the constrained type.
|
|
173
|
+
return { ...defaultLayout,
|
|
174
|
+
type: 'constrained'
|
|
175
|
+
};
|
|
176
|
+
} // Set constrained layout for classic themes so all alignments are supported.
|
|
177
|
+
|
|
173
178
|
|
|
174
|
-
return
|
|
179
|
+
return {
|
|
180
|
+
type: 'constrained'
|
|
181
|
+
};
|
|
175
182
|
}, [isTemplateMode, themeSupportsLayout, defaultLayout]);
|
|
176
183
|
const titleRef = useRef();
|
|
177
184
|
useEffect(() => {
|
|
@@ -215,7 +222,7 @@ export default function VisualEditor(_ref2) {
|
|
|
215
222
|
}
|
|
216
223
|
}, themeSupportsLayout && !themeHasDisabledLayoutStyles && !isTemplateMode && createElement(LayoutStyle, {
|
|
217
224
|
selector: ".edit-post-visual-editor__post-title-wrapper, .block-editor-block-list__layout.is-root-container",
|
|
218
|
-
layout:
|
|
225
|
+
layout: layout,
|
|
219
226
|
layoutDefinitions: defaultLayout === null || defaultLayout === void 0 ? void 0 : defaultLayout.definitions
|
|
220
227
|
}), !isTemplateMode && createElement("div", {
|
|
221
228
|
className: "edit-post-visual-editor__post-title-wrapper",
|
|
@@ -226,7 +233,7 @@ export default function VisualEditor(_ref2) {
|
|
|
226
233
|
blockName: wrapperBlockName,
|
|
227
234
|
uniqueId: wrapperUniqueId
|
|
228
235
|
}, createElement(BlockList, {
|
|
229
|
-
className: isTemplateMode ? 'wp-site-blocks' : 'is-layout-
|
|
236
|
+
className: isTemplateMode ? 'wp-site-blocks' : 'is-layout-constrained' // Ensure root level blocks receive default/flow blockGap styling rules.
|
|
230
237
|
,
|
|
231
238
|
__experimentalLayout: layout
|
|
232
239
|
}))))), createElement(__unstableBlockSettingsMenuFirstItem, null, _ref3 => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-post/src/components/visual-editor/index.js"],"names":["classnames","VisualEditorGlobalKeyboardShortcuts","PostTitle","store","editorStore","WritingFlow","BlockList","BlockTools","blockEditorStore","__unstableUseBlockSelectionClearer","useBlockSelectionClearer","__unstableUseTypewriter","useTypewriter","__unstableUseClipboardHandler","useClipboardHandler","__unstableUseTypingObserver","useTypingObserver","__unstableBlockSettingsMenuFirstItem","__experimentalUseResizeCanvas","useResizeCanvas","__unstableEditorStyles","EditorStyles","useSetting","__experimentalLayoutStyle","LayoutStyle","__unstableUseMouseMoveTypingReset","useMouseMoveTypingReset","__unstableIframe","Iframe","__experimentalRecursionProvider","RecursionProvider","useEffect","useRef","useMemo","Button","__unstableMotion","motion","useSelect","useDispatch","useMergeRefs","arrowLeft","__","BlockInspectorButton","editPostStore","MaybeIframe","children","contentRef","shouldIframe","styles","assets","style","ref","flex","width","height","display","VisualEditor","deviceType","isWelcomeGuideVisible","isTemplateMode","wrapperBlockName","wrapperUniqueId","select","isFeatureActive","isEditingTemplate","__experimentalGetPreviewDeviceType","getCurrentPostId","getCurrentPostType","_isTemplateMode","_wrapperBlockName","isCleanNewPost","hasMetaBoxes","themeHasDisabledLayoutStyles","themeSupportsLayout","_settings","getSettings","disableLayoutStyles","supportsLayout","__unstableResolvedAssets","clearSelectedBlock","setIsEditingTemplate","desktopCanvasStyles","margin","flexFlow","background","templateModeStyles","borderRadius","border","borderBottom","resizedCanvasStyles","defaultLayout","previewMode","toLowerCase","animatedStyles","paddingBottom","blockSelectionClearerRef","layout","type","undefined","titleRef","current","focus","padding","definitions","onClose"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tVisualEditorGlobalKeyboardShortcuts,\n\tPostTitle,\n\tstore as editorStore,\n} from '@wordpress/editor';\nimport {\n\tWritingFlow,\n\tBlockList,\n\tBlockTools,\n\tstore as blockEditorStore,\n\t__unstableUseBlockSelectionClearer as useBlockSelectionClearer,\n\t__unstableUseTypewriter as useTypewriter,\n\t__unstableUseClipboardHandler as useClipboardHandler,\n\t__unstableUseTypingObserver as useTypingObserver,\n\t__unstableBlockSettingsMenuFirstItem,\n\t__experimentalUseResizeCanvas as useResizeCanvas,\n\t__unstableEditorStyles as EditorStyles,\n\tuseSetting,\n\t__experimentalLayoutStyle as LayoutStyle,\n\t__unstableUseMouseMoveTypingReset as useMouseMoveTypingReset,\n\t__unstableIframe as Iframe,\n\t__experimentalRecursionProvider as RecursionProvider,\n} from '@wordpress/block-editor';\nimport { useEffect, useRef, useMemo } from '@wordpress/element';\nimport { Button, __unstableMotion as motion } from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useMergeRefs } from '@wordpress/compose';\nimport { arrowLeft } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BlockInspectorButton from './block-inspector-button';\nimport { store as editPostStore } from '../../store';\n\nfunction MaybeIframe( {\n\tchildren,\n\tcontentRef,\n\tshouldIframe,\n\tstyles,\n\tassets,\n\tstyle,\n} ) {\n\tconst ref = useMouseMoveTypingReset();\n\n\tif ( ! shouldIframe ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<EditorStyles styles={ styles } />\n\t\t\t\t<WritingFlow\n\t\t\t\t\tref={ contentRef }\n\t\t\t\t\tclassName=\"editor-styles-wrapper\"\n\t\t\t\t\tstyle={ { flex: '1', ...style } }\n\t\t\t\t\ttabIndex={ -1 }\n\t\t\t\t>\n\t\t\t\t\t{ children }\n\t\t\t\t</WritingFlow>\n\t\t\t</>\n\t\t);\n\t}\n\n\treturn (\n\t\t<Iframe\n\t\t\thead={ <EditorStyles styles={ styles } /> }\n\t\t\tassets={ assets }\n\t\t\tref={ ref }\n\t\t\tcontentRef={ contentRef }\n\t\t\tstyle={ { width: '100%', height: '100%', display: 'block' } }\n\t\t\tname=\"editor-canvas\"\n\t\t>\n\t\t\t{ children }\n\t\t</Iframe>\n\t);\n}\n\nexport default function VisualEditor( { styles } ) {\n\tconst {\n\t\tdeviceType,\n\t\tisWelcomeGuideVisible,\n\t\tisTemplateMode,\n\t\twrapperBlockName,\n\t\twrapperUniqueId,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tisFeatureActive,\n\t\t\tisEditingTemplate,\n\t\t\t__experimentalGetPreviewDeviceType,\n\t\t} = select( editPostStore );\n\t\tconst { getCurrentPostId, getCurrentPostType } = select( editorStore );\n\t\tconst _isTemplateMode = isEditingTemplate();\n\t\tlet _wrapperBlockName;\n\n\t\tif ( getCurrentPostType() === 'wp_block' ) {\n\t\t\t_wrapperBlockName = 'core/block';\n\t\t} else if ( ! _isTemplateMode ) {\n\t\t\t_wrapperBlockName = 'core/post-content';\n\t\t}\n\n\t\treturn {\n\t\t\tdeviceType: __experimentalGetPreviewDeviceType(),\n\t\t\tisWelcomeGuideVisible: isFeatureActive( 'welcomeGuide' ),\n\t\t\tisTemplateMode: _isTemplateMode,\n\t\t\twrapperBlockName: _wrapperBlockName,\n\t\t\twrapperUniqueId: getCurrentPostId(),\n\t\t};\n\t}, [] );\n\tconst { isCleanNewPost } = useSelect( editorStore );\n\tconst hasMetaBoxes = useSelect(\n\t\t( select ) => select( editPostStore ).hasMetaBoxes(),\n\t\t[]\n\t);\n\tconst { themeHasDisabledLayoutStyles, themeSupportsLayout, assets } =\n\t\tuseSelect( ( select ) => {\n\t\t\tconst _settings = select( blockEditorStore ).getSettings();\n\t\t\treturn {\n\t\t\t\tthemeHasDisabledLayoutStyles: _settings.disableLayoutStyles,\n\t\t\t\tthemeSupportsLayout: _settings.supportsLayout,\n\t\t\t\tassets: _settings.__unstableResolvedAssets,\n\t\t\t};\n\t\t}, [] );\n\tconst { clearSelectedBlock } = useDispatch( blockEditorStore );\n\tconst { setIsEditingTemplate } = useDispatch( editPostStore );\n\tconst desktopCanvasStyles = {\n\t\theight: '100%',\n\t\twidth: '100%',\n\t\tmargin: 0,\n\t\tdisplay: 'flex',\n\t\tflexFlow: 'column',\n\t\t// Default background color so that grey\n\t\t// .edit-post-editor-regions__content color doesn't show through.\n\t\tbackground: 'white',\n\t};\n\tconst templateModeStyles = {\n\t\t...desktopCanvasStyles,\n\t\tborderRadius: '2px 2px 0 0',\n\t\tborder: '1px solid #ddd',\n\t\tborderBottom: 0,\n\t};\n\tconst resizedCanvasStyles = useResizeCanvas( deviceType, isTemplateMode );\n\tconst defaultLayout = useSetting( 'layout' );\n\tconst previewMode = 'is-' + deviceType.toLowerCase() + '-preview';\n\n\tlet animatedStyles = isTemplateMode\n\t\t? templateModeStyles\n\t\t: desktopCanvasStyles;\n\tif ( resizedCanvasStyles ) {\n\t\tanimatedStyles = resizedCanvasStyles;\n\t}\n\n\tlet paddingBottom;\n\n\t// Add a constant padding for the typewritter effect. When typing at the\n\t// bottom, there needs to be room to scroll up.\n\tif ( ! hasMetaBoxes && ! resizedCanvasStyles && ! isTemplateMode ) {\n\t\tpaddingBottom = '40vh';\n\t}\n\n\tconst ref = useRef();\n\tconst contentRef = useMergeRefs( [\n\t\tref,\n\t\tuseClipboardHandler(),\n\t\tuseTypewriter(),\n\t\tuseTypingObserver(),\n\t\tuseBlockSelectionClearer(),\n\t] );\n\n\tconst blockSelectionClearerRef = useBlockSelectionClearer();\n\n\tconst layout = useMemo( () => {\n\t\tif ( isTemplateMode ) {\n\t\t\treturn { type: 'default' };\n\t\t}\n\n\t\tif ( themeSupportsLayout ) {\n\t\t\treturn defaultLayout;\n\t\t}\n\n\t\treturn undefined;\n\t}, [ isTemplateMode, themeSupportsLayout, defaultLayout ] );\n\n\tconst titleRef = useRef();\n\tuseEffect( () => {\n\t\tif ( isWelcomeGuideVisible || ! isCleanNewPost() ) {\n\t\t\treturn;\n\t\t}\n\t\ttitleRef?.current?.focus();\n\t}, [ isWelcomeGuideVisible, isCleanNewPost ] );\n\n\treturn (\n\t\t<BlockTools\n\t\t\t__unstableContentRef={ ref }\n\t\t\tclassName={ classnames( 'edit-post-visual-editor', {\n\t\t\t\t'is-template-mode': isTemplateMode,\n\t\t\t} ) }\n\t\t>\n\t\t\t<VisualEditorGlobalKeyboardShortcuts />\n\t\t\t<motion.div\n\t\t\t\tclassName=\"edit-post-visual-editor__content-area\"\n\t\t\t\tanimate={ {\n\t\t\t\t\tpadding: isTemplateMode ? '48px 48px 0' : '0',\n\t\t\t\t} }\n\t\t\t\tref={ blockSelectionClearerRef }\n\t\t\t>\n\t\t\t\t{ isTemplateMode && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName=\"edit-post-visual-editor__exit-template-mode\"\n\t\t\t\t\t\ticon={ arrowLeft }\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tclearSelectedBlock();\n\t\t\t\t\t\t\tsetIsEditingTemplate( false );\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Back' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t\t<motion.div\n\t\t\t\t\tanimate={ animatedStyles }\n\t\t\t\t\tinitial={ desktopCanvasStyles }\n\t\t\t\t\tclassName={ previewMode }\n\t\t\t\t>\n\t\t\t\t\t<MaybeIframe\n\t\t\t\t\t\tshouldIframe={\n\t\t\t\t\t\t\tisTemplateMode ||\n\t\t\t\t\t\t\tdeviceType === 'Tablet' ||\n\t\t\t\t\t\t\tdeviceType === 'Mobile'\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcontentRef={ contentRef }\n\t\t\t\t\t\tstyles={ styles }\n\t\t\t\t\t\tassets={ assets }\n\t\t\t\t\t\tstyle={ { paddingBottom } }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ themeSupportsLayout &&\n\t\t\t\t\t\t\t! themeHasDisabledLayoutStyles &&\n\t\t\t\t\t\t\t! isTemplateMode && (\n\t\t\t\t\t\t\t\t<LayoutStyle\n\t\t\t\t\t\t\t\t\tselector=\".edit-post-visual-editor__post-title-wrapper, .block-editor-block-list__layout.is-root-container\"\n\t\t\t\t\t\t\t\t\tlayout={ defaultLayout }\n\t\t\t\t\t\t\t\t\tlayoutDefinitions={\n\t\t\t\t\t\t\t\t\t\tdefaultLayout?.definitions\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{ ! isTemplateMode && (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tclassName=\"edit-post-visual-editor__post-title-wrapper\"\n\t\t\t\t\t\t\t\tcontentEditable={ false }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<PostTitle ref={ titleRef } />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<RecursionProvider\n\t\t\t\t\t\t\tblockName={ wrapperBlockName }\n\t\t\t\t\t\t\tuniqueId={ wrapperUniqueId }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<BlockList\n\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\tisTemplateMode\n\t\t\t\t\t\t\t\t\t\t? 'wp-site-blocks'\n\t\t\t\t\t\t\t\t\t\t: 'is-layout-flow' // Ensure root level blocks receive default/flow blockGap styling rules.\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t__experimentalLayout={ layout }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</RecursionProvider>\n\t\t\t\t\t</MaybeIframe>\n\t\t\t\t</motion.div>\n\t\t\t</motion.div>\n\t\t\t<__unstableBlockSettingsMenuFirstItem>\n\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t<BlockInspectorButton onClick={ onClose } />\n\t\t\t\t) }\n\t\t\t</__unstableBlockSettingsMenuFirstItem>\n\t\t</BlockTools>\n\t);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-post/src/components/visual-editor/index.js"],"names":["classnames","VisualEditorGlobalKeyboardShortcuts","PostTitle","store","editorStore","WritingFlow","BlockList","BlockTools","blockEditorStore","__unstableUseBlockSelectionClearer","useBlockSelectionClearer","__unstableUseTypewriter","useTypewriter","__unstableUseClipboardHandler","useClipboardHandler","__unstableUseTypingObserver","useTypingObserver","__unstableBlockSettingsMenuFirstItem","__experimentalUseResizeCanvas","useResizeCanvas","__unstableEditorStyles","EditorStyles","useSetting","__experimentalLayoutStyle","LayoutStyle","__unstableUseMouseMoveTypingReset","useMouseMoveTypingReset","__unstableIframe","Iframe","__experimentalRecursionProvider","RecursionProvider","useEffect","useRef","useMemo","Button","__unstableMotion","motion","useSelect","useDispatch","useMergeRefs","arrowLeft","__","BlockInspectorButton","editPostStore","MaybeIframe","children","contentRef","shouldIframe","styles","assets","style","ref","flex","width","height","display","VisualEditor","deviceType","isWelcomeGuideVisible","isTemplateMode","wrapperBlockName","wrapperUniqueId","select","isFeatureActive","isEditingTemplate","__experimentalGetPreviewDeviceType","getCurrentPostId","getCurrentPostType","_isTemplateMode","_wrapperBlockName","isCleanNewPost","hasMetaBoxes","themeHasDisabledLayoutStyles","themeSupportsLayout","_settings","getSettings","disableLayoutStyles","supportsLayout","__unstableResolvedAssets","clearSelectedBlock","setIsEditingTemplate","desktopCanvasStyles","margin","flexFlow","background","templateModeStyles","borderRadius","border","borderBottom","resizedCanvasStyles","defaultLayout","previewMode","toLowerCase","animatedStyles","paddingBottom","blockSelectionClearerRef","layout","type","titleRef","current","focus","padding","definitions","onClose"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tVisualEditorGlobalKeyboardShortcuts,\n\tPostTitle,\n\tstore as editorStore,\n} from '@wordpress/editor';\nimport {\n\tWritingFlow,\n\tBlockList,\n\tBlockTools,\n\tstore as blockEditorStore,\n\t__unstableUseBlockSelectionClearer as useBlockSelectionClearer,\n\t__unstableUseTypewriter as useTypewriter,\n\t__unstableUseClipboardHandler as useClipboardHandler,\n\t__unstableUseTypingObserver as useTypingObserver,\n\t__unstableBlockSettingsMenuFirstItem,\n\t__experimentalUseResizeCanvas as useResizeCanvas,\n\t__unstableEditorStyles as EditorStyles,\n\tuseSetting,\n\t__experimentalLayoutStyle as LayoutStyle,\n\t__unstableUseMouseMoveTypingReset as useMouseMoveTypingReset,\n\t__unstableIframe as Iframe,\n\t__experimentalRecursionProvider as RecursionProvider,\n} from '@wordpress/block-editor';\nimport { useEffect, useRef, useMemo } from '@wordpress/element';\nimport { Button, __unstableMotion as motion } from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useMergeRefs } from '@wordpress/compose';\nimport { arrowLeft } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BlockInspectorButton from './block-inspector-button';\nimport { store as editPostStore } from '../../store';\n\nfunction MaybeIframe( {\n\tchildren,\n\tcontentRef,\n\tshouldIframe,\n\tstyles,\n\tassets,\n\tstyle,\n} ) {\n\tconst ref = useMouseMoveTypingReset();\n\n\tif ( ! shouldIframe ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<EditorStyles styles={ styles } />\n\t\t\t\t<WritingFlow\n\t\t\t\t\tref={ contentRef }\n\t\t\t\t\tclassName=\"editor-styles-wrapper\"\n\t\t\t\t\tstyle={ { flex: '1', ...style } }\n\t\t\t\t\ttabIndex={ -1 }\n\t\t\t\t>\n\t\t\t\t\t{ children }\n\t\t\t\t</WritingFlow>\n\t\t\t</>\n\t\t);\n\t}\n\n\treturn (\n\t\t<Iframe\n\t\t\thead={ <EditorStyles styles={ styles } /> }\n\t\t\tassets={ assets }\n\t\t\tref={ ref }\n\t\t\tcontentRef={ contentRef }\n\t\t\tstyle={ { width: '100%', height: '100%', display: 'block' } }\n\t\t\tname=\"editor-canvas\"\n\t\t>\n\t\t\t{ children }\n\t\t</Iframe>\n\t);\n}\n\nexport default function VisualEditor( { styles } ) {\n\tconst {\n\t\tdeviceType,\n\t\tisWelcomeGuideVisible,\n\t\tisTemplateMode,\n\t\twrapperBlockName,\n\t\twrapperUniqueId,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tisFeatureActive,\n\t\t\tisEditingTemplate,\n\t\t\t__experimentalGetPreviewDeviceType,\n\t\t} = select( editPostStore );\n\t\tconst { getCurrentPostId, getCurrentPostType } = select( editorStore );\n\t\tconst _isTemplateMode = isEditingTemplate();\n\t\tlet _wrapperBlockName;\n\n\t\tif ( getCurrentPostType() === 'wp_block' ) {\n\t\t\t_wrapperBlockName = 'core/block';\n\t\t} else if ( ! _isTemplateMode ) {\n\t\t\t_wrapperBlockName = 'core/post-content';\n\t\t}\n\n\t\treturn {\n\t\t\tdeviceType: __experimentalGetPreviewDeviceType(),\n\t\t\tisWelcomeGuideVisible: isFeatureActive( 'welcomeGuide' ),\n\t\t\tisTemplateMode: _isTemplateMode,\n\t\t\twrapperBlockName: _wrapperBlockName,\n\t\t\twrapperUniqueId: getCurrentPostId(),\n\t\t};\n\t}, [] );\n\tconst { isCleanNewPost } = useSelect( editorStore );\n\tconst hasMetaBoxes = useSelect(\n\t\t( select ) => select( editPostStore ).hasMetaBoxes(),\n\t\t[]\n\t);\n\tconst { themeHasDisabledLayoutStyles, themeSupportsLayout, assets } =\n\t\tuseSelect( ( select ) => {\n\t\t\tconst _settings = select( blockEditorStore ).getSettings();\n\t\t\treturn {\n\t\t\t\tthemeHasDisabledLayoutStyles: _settings.disableLayoutStyles,\n\t\t\t\tthemeSupportsLayout: _settings.supportsLayout,\n\t\t\t\tassets: _settings.__unstableResolvedAssets,\n\t\t\t};\n\t\t}, [] );\n\tconst { clearSelectedBlock } = useDispatch( blockEditorStore );\n\tconst { setIsEditingTemplate } = useDispatch( editPostStore );\n\tconst desktopCanvasStyles = {\n\t\theight: '100%',\n\t\twidth: '100%',\n\t\tmargin: 0,\n\t\tdisplay: 'flex',\n\t\tflexFlow: 'column',\n\t\t// Default background color so that grey\n\t\t// .edit-post-editor-regions__content color doesn't show through.\n\t\tbackground: 'white',\n\t};\n\tconst templateModeStyles = {\n\t\t...desktopCanvasStyles,\n\t\tborderRadius: '2px 2px 0 0',\n\t\tborder: '1px solid #ddd',\n\t\tborderBottom: 0,\n\t};\n\tconst resizedCanvasStyles = useResizeCanvas( deviceType, isTemplateMode );\n\tconst defaultLayout = useSetting( 'layout' );\n\tconst previewMode = 'is-' + deviceType.toLowerCase() + '-preview';\n\n\tlet animatedStyles = isTemplateMode\n\t\t? templateModeStyles\n\t\t: desktopCanvasStyles;\n\tif ( resizedCanvasStyles ) {\n\t\tanimatedStyles = resizedCanvasStyles;\n\t}\n\n\tlet paddingBottom;\n\n\t// Add a constant padding for the typewritter effect. When typing at the\n\t// bottom, there needs to be room to scroll up.\n\tif ( ! hasMetaBoxes && ! resizedCanvasStyles && ! isTemplateMode ) {\n\t\tpaddingBottom = '40vh';\n\t}\n\n\tconst ref = useRef();\n\tconst contentRef = useMergeRefs( [\n\t\tref,\n\t\tuseClipboardHandler(),\n\t\tuseTypewriter(),\n\t\tuseTypingObserver(),\n\t\tuseBlockSelectionClearer(),\n\t] );\n\n\tconst blockSelectionClearerRef = useBlockSelectionClearer();\n\n\tconst layout = useMemo( () => {\n\t\tif ( isTemplateMode ) {\n\t\t\treturn { type: 'default' };\n\t\t}\n\n\t\tif ( themeSupportsLayout ) {\n\t\t\t// We need to ensure support for wide and full alignments,\n\t\t\t// so we add the constrained type.\n\t\t\treturn { ...defaultLayout, type: 'constrained' };\n\t\t}\n\t\t// Set constrained layout for classic themes so all alignments are supported.\n\t\treturn { type: 'constrained' };\n\t}, [ isTemplateMode, themeSupportsLayout, defaultLayout ] );\n\n\tconst titleRef = useRef();\n\tuseEffect( () => {\n\t\tif ( isWelcomeGuideVisible || ! isCleanNewPost() ) {\n\t\t\treturn;\n\t\t}\n\t\ttitleRef?.current?.focus();\n\t}, [ isWelcomeGuideVisible, isCleanNewPost ] );\n\n\treturn (\n\t\t<BlockTools\n\t\t\t__unstableContentRef={ ref }\n\t\t\tclassName={ classnames( 'edit-post-visual-editor', {\n\t\t\t\t'is-template-mode': isTemplateMode,\n\t\t\t} ) }\n\t\t>\n\t\t\t<VisualEditorGlobalKeyboardShortcuts />\n\t\t\t<motion.div\n\t\t\t\tclassName=\"edit-post-visual-editor__content-area\"\n\t\t\t\tanimate={ {\n\t\t\t\t\tpadding: isTemplateMode ? '48px 48px 0' : '0',\n\t\t\t\t} }\n\t\t\t\tref={ blockSelectionClearerRef }\n\t\t\t>\n\t\t\t\t{ isTemplateMode && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName=\"edit-post-visual-editor__exit-template-mode\"\n\t\t\t\t\t\ticon={ arrowLeft }\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tclearSelectedBlock();\n\t\t\t\t\t\t\tsetIsEditingTemplate( false );\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Back' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t\t<motion.div\n\t\t\t\t\tanimate={ animatedStyles }\n\t\t\t\t\tinitial={ desktopCanvasStyles }\n\t\t\t\t\tclassName={ previewMode }\n\t\t\t\t>\n\t\t\t\t\t<MaybeIframe\n\t\t\t\t\t\tshouldIframe={\n\t\t\t\t\t\t\tisTemplateMode ||\n\t\t\t\t\t\t\tdeviceType === 'Tablet' ||\n\t\t\t\t\t\t\tdeviceType === 'Mobile'\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcontentRef={ contentRef }\n\t\t\t\t\t\tstyles={ styles }\n\t\t\t\t\t\tassets={ assets }\n\t\t\t\t\t\tstyle={ { paddingBottom } }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ themeSupportsLayout &&\n\t\t\t\t\t\t\t! themeHasDisabledLayoutStyles &&\n\t\t\t\t\t\t\t! isTemplateMode && (\n\t\t\t\t\t\t\t\t<LayoutStyle\n\t\t\t\t\t\t\t\t\tselector=\".edit-post-visual-editor__post-title-wrapper, .block-editor-block-list__layout.is-root-container\"\n\t\t\t\t\t\t\t\t\tlayout={ layout }\n\t\t\t\t\t\t\t\t\tlayoutDefinitions={\n\t\t\t\t\t\t\t\t\t\tdefaultLayout?.definitions\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{ ! isTemplateMode && (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tclassName=\"edit-post-visual-editor__post-title-wrapper\"\n\t\t\t\t\t\t\t\tcontentEditable={ false }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<PostTitle ref={ titleRef } />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<RecursionProvider\n\t\t\t\t\t\t\tblockName={ wrapperBlockName }\n\t\t\t\t\t\t\tuniqueId={ wrapperUniqueId }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<BlockList\n\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\tisTemplateMode\n\t\t\t\t\t\t\t\t\t\t? 'wp-site-blocks'\n\t\t\t\t\t\t\t\t\t\t: 'is-layout-constrained' // Ensure root level blocks receive default/flow blockGap styling rules.\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t__experimentalLayout={ layout }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</RecursionProvider>\n\t\t\t\t\t</MaybeIframe>\n\t\t\t\t</motion.div>\n\t\t\t</motion.div>\n\t\t\t<__unstableBlockSettingsMenuFirstItem>\n\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t<BlockInspectorButton onClick={ onClose } />\n\t\t\t\t) }\n\t\t\t</__unstableBlockSettingsMenuFirstItem>\n\t\t</BlockTools>\n\t);\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wordpress/edit-post",
|
|
3
|
-
"version": "6.
|
|
3
|
+
"version": "6.13.1-next.957ca95e4c.0",
|
|
4
4
|
"description": "Edit Post module for WordPress.",
|
|
5
5
|
"author": "The WordPress Contributors",
|
|
6
6
|
"license": "GPL-2.0-or-later",
|
|
@@ -27,31 +27,31 @@
|
|
|
27
27
|
"react-native": "src/index",
|
|
28
28
|
"dependencies": {
|
|
29
29
|
"@babel/runtime": "^7.16.0",
|
|
30
|
-
"@wordpress/a11y": "^3.
|
|
31
|
-
"@wordpress/api-fetch": "^6.
|
|
32
|
-
"@wordpress/block-editor": "^9.
|
|
33
|
-
"@wordpress/block-library": "^7.
|
|
34
|
-
"@wordpress/blocks": "^11.
|
|
35
|
-
"@wordpress/components": "^
|
|
36
|
-
"@wordpress/compose": "^5.
|
|
37
|
-
"@wordpress/core-data": "^
|
|
38
|
-
"@wordpress/data": "^
|
|
39
|
-
"@wordpress/deprecated": "^3.
|
|
40
|
-
"@wordpress/editor": "^12.
|
|
41
|
-
"@wordpress/element": "^4.
|
|
42
|
-
"@wordpress/hooks": "^3.
|
|
43
|
-
"@wordpress/i18n": "^4.
|
|
44
|
-
"@wordpress/icons": "^9.
|
|
45
|
-
"@wordpress/interface": "^4.
|
|
46
|
-
"@wordpress/keyboard-shortcuts": "^3.
|
|
47
|
-
"@wordpress/keycodes": "^3.
|
|
48
|
-
"@wordpress/media-utils": "^4.
|
|
49
|
-
"@wordpress/notices": "^3.
|
|
50
|
-
"@wordpress/plugins": "^4.
|
|
51
|
-
"@wordpress/preferences": "^2.
|
|
52
|
-
"@wordpress/url": "^3.
|
|
53
|
-
"@wordpress/viewport": "^4.
|
|
54
|
-
"@wordpress/warning": "^2.
|
|
30
|
+
"@wordpress/a11y": "^3.16.1-next.957ca95e4c.0",
|
|
31
|
+
"@wordpress/api-fetch": "^6.13.1-next.957ca95e4c.0",
|
|
32
|
+
"@wordpress/block-editor": "^9.8.1-next.957ca95e4c.0",
|
|
33
|
+
"@wordpress/block-library": "^7.13.1-next.957ca95e4c.0",
|
|
34
|
+
"@wordpress/blocks": "^11.15.1-next.957ca95e4c.0",
|
|
35
|
+
"@wordpress/components": "^20.0.2-next.957ca95e4c.0",
|
|
36
|
+
"@wordpress/compose": "^5.14.1-next.957ca95e4c.0",
|
|
37
|
+
"@wordpress/core-data": "^5.0.1-next.957ca95e4c.0",
|
|
38
|
+
"@wordpress/data": "^7.0.1-next.957ca95e4c.0",
|
|
39
|
+
"@wordpress/deprecated": "^3.16.1-next.957ca95e4c.0",
|
|
40
|
+
"@wordpress/editor": "^12.15.1-next.957ca95e4c.0",
|
|
41
|
+
"@wordpress/element": "^4.14.1-next.957ca95e4c.0",
|
|
42
|
+
"@wordpress/hooks": "^3.16.1-next.957ca95e4c.0",
|
|
43
|
+
"@wordpress/i18n": "^4.16.1-next.957ca95e4c.0",
|
|
44
|
+
"@wordpress/icons": "^9.7.1-next.957ca95e4c.0",
|
|
45
|
+
"@wordpress/interface": "^4.15.1-next.957ca95e4c.0",
|
|
46
|
+
"@wordpress/keyboard-shortcuts": "^3.14.1-next.957ca95e4c.0",
|
|
47
|
+
"@wordpress/keycodes": "^3.16.1-next.957ca95e4c.0",
|
|
48
|
+
"@wordpress/media-utils": "^4.7.1-next.957ca95e4c.0",
|
|
49
|
+
"@wordpress/notices": "^3.16.1-next.957ca95e4c.0",
|
|
50
|
+
"@wordpress/plugins": "^4.14.1-next.957ca95e4c.0",
|
|
51
|
+
"@wordpress/preferences": "^2.8.1-next.957ca95e4c.0",
|
|
52
|
+
"@wordpress/url": "^3.17.1-next.957ca95e4c.0",
|
|
53
|
+
"@wordpress/viewport": "^4.14.1-next.957ca95e4c.0",
|
|
54
|
+
"@wordpress/warning": "^2.16.1-next.957ca95e4c.0",
|
|
55
55
|
"classnames": "^2.3.1",
|
|
56
56
|
"lodash": "^4.17.21",
|
|
57
57
|
"memize": "^1.1.0",
|
|
@@ -64,5 +64,5 @@
|
|
|
64
64
|
"publishConfig": {
|
|
65
65
|
"access": "public"
|
|
66
66
|
},
|
|
67
|
-
"gitHead": "
|
|
67
|
+
"gitHead": "272a74bbbaab10ee24424eafe9578e705fbfbbb4"
|
|
68
68
|
}
|
|
@@ -1,8 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* External dependencies
|
|
3
|
-
*/
|
|
4
|
-
import { difference } from 'lodash';
|
|
5
|
-
|
|
6
1
|
/**
|
|
7
2
|
* WordPress dependencies
|
|
8
3
|
*/
|
|
@@ -11,7 +6,7 @@ import { MenuItem } from '@wordpress/components';
|
|
|
11
6
|
import { compose } from '@wordpress/compose';
|
|
12
7
|
|
|
13
8
|
const isEverySelectedBlockAllowed = ( selected, allowed ) =>
|
|
14
|
-
|
|
9
|
+
selected.filter( ( id ) => ! allowed.includes( id ) ).length === 0;
|
|
15
10
|
|
|
16
11
|
/**
|
|
17
12
|
* Plugins may want to add an item to the menu either for every block
|
|
@@ -25,29 +25,26 @@ export default function PostTemplateForm( { onClose } ) {
|
|
|
25
25
|
canCreate,
|
|
26
26
|
canEdit,
|
|
27
27
|
} = useSelect( ( select ) => {
|
|
28
|
+
const { canUser, getEntityRecord, getEntityRecords } =
|
|
29
|
+
select( coreStore );
|
|
28
30
|
const editorSettings = select( editorStore ).getEditorSettings();
|
|
29
|
-
const siteSettings =
|
|
30
|
-
'root',
|
|
31
|
-
|
|
32
|
-
);
|
|
31
|
+
const siteSettings = canUser( 'read', 'settings' )
|
|
32
|
+
? getEntityRecord( 'root', 'site' )
|
|
33
|
+
: undefined;
|
|
33
34
|
const _isPostsPage =
|
|
34
35
|
select( editorStore ).getCurrentPostId() ===
|
|
35
36
|
siteSettings?.page_for_posts;
|
|
36
|
-
const canCreateTemplates =
|
|
37
|
-
|
|
38
|
-
'templates'
|
|
39
|
-
);
|
|
37
|
+
const canCreateTemplates = canUser( 'create', 'templates' );
|
|
38
|
+
|
|
40
39
|
return {
|
|
41
40
|
isPostsPage: _isPostsPage,
|
|
42
41
|
availableTemplates: editorSettings.availableTemplates,
|
|
43
|
-
fetchedTemplates:
|
|
44
|
-
'postType',
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
}
|
|
50
|
-
),
|
|
42
|
+
fetchedTemplates: canCreateTemplates
|
|
43
|
+
? getEntityRecords( 'postType', 'wp_template', {
|
|
44
|
+
post_type: select( editorStore ).getCurrentPostType(),
|
|
45
|
+
per_page: -1,
|
|
46
|
+
} )
|
|
47
|
+
: undefined,
|
|
51
48
|
selectedTemplateSlug:
|
|
52
49
|
select( editorStore ).getEditedPostAttribute( 'template' ),
|
|
53
50
|
canCreate:
|
|
@@ -181,10 +181,12 @@ export default function VisualEditor( { styles } ) {
|
|
|
181
181
|
}
|
|
182
182
|
|
|
183
183
|
if ( themeSupportsLayout ) {
|
|
184
|
-
|
|
184
|
+
// We need to ensure support for wide and full alignments,
|
|
185
|
+
// so we add the constrained type.
|
|
186
|
+
return { ...defaultLayout, type: 'constrained' };
|
|
185
187
|
}
|
|
186
|
-
|
|
187
|
-
return
|
|
188
|
+
// Set constrained layout for classic themes so all alignments are supported.
|
|
189
|
+
return { type: 'constrained' };
|
|
188
190
|
}, [ isTemplateMode, themeSupportsLayout, defaultLayout ] );
|
|
189
191
|
|
|
190
192
|
const titleRef = useRef();
|
|
@@ -243,7 +245,7 @@ export default function VisualEditor( { styles } ) {
|
|
|
243
245
|
! isTemplateMode && (
|
|
244
246
|
<LayoutStyle
|
|
245
247
|
selector=".edit-post-visual-editor__post-title-wrapper, .block-editor-block-list__layout.is-root-container"
|
|
246
|
-
layout={
|
|
248
|
+
layout={ layout }
|
|
247
249
|
layoutDefinitions={
|
|
248
250
|
defaultLayout?.definitions
|
|
249
251
|
}
|
|
@@ -265,7 +267,7 @@ export default function VisualEditor( { styles } ) {
|
|
|
265
267
|
className={
|
|
266
268
|
isTemplateMode
|
|
267
269
|
? 'wp-site-blocks'
|
|
268
|
-
: 'is-layout-
|
|
270
|
+
: 'is-layout-constrained' // Ensure root level blocks receive default/flow blockGap styling rules.
|
|
269
271
|
}
|
|
270
272
|
__experimentalLayout={ layout }
|
|
271
273
|
/>
|