@wordpress/editor 13.28.2 → 13.28.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/components/document-tools/index.js +4 -2
- package/build/components/document-tools/index.js.map +1 -1
- package/build/components/provider/use-block-editor-settings.js +3 -7
- package/build/components/provider/use-block-editor-settings.js.map +1 -1
- package/build-module/components/document-tools/index.js +4 -2
- package/build-module/components/document-tools/index.js.map +1 -1
- package/build-module/components/provider/use-block-editor-settings.js +4 -8
- package/build-module/components/provider/use-block-editor-settings.js.map +1 -1
- package/package.json +8 -8
- package/src/components/document-tools/index.js +22 -16
- package/src/components/provider/use-block-editor-settings.js +6 -12
|
@@ -51,6 +51,7 @@ function DocumentTools({
|
|
|
51
51
|
setIsListViewOpened
|
|
52
52
|
} = (0, _data.useDispatch)(_store.store);
|
|
53
53
|
const {
|
|
54
|
+
isDistractionFree,
|
|
54
55
|
isInserterOpened,
|
|
55
56
|
isListViewOpen,
|
|
56
57
|
listViewShortcut,
|
|
@@ -77,7 +78,8 @@ function DocumentTools({
|
|
|
77
78
|
listViewShortcut: getShortcutRepresentation('core/editor/toggle-list-view'),
|
|
78
79
|
listViewToggleRef: getListViewToggleRef(),
|
|
79
80
|
hasFixedToolbar: getSettings().hasFixedToolbar,
|
|
80
|
-
showIconLabels: get('core', 'showIconLabels')
|
|
81
|
+
showIconLabels: get('core', 'showIconLabels'),
|
|
82
|
+
isDistractionFree: get('core', 'distractionFree')
|
|
81
83
|
};
|
|
82
84
|
}, []);
|
|
83
85
|
const isLargeViewport = (0, _compose.useViewportMatch)('medium');
|
|
@@ -143,7 +145,7 @@ function DocumentTools({
|
|
|
143
145
|
showTooltip: !showIconLabels,
|
|
144
146
|
variant: showIconLabels ? 'tertiary' : undefined,
|
|
145
147
|
size: "compact"
|
|
146
|
-
}), (0, _react.createElement)(_components.ToolbarItem, {
|
|
148
|
+
}), !isDistractionFree && (0, _react.createElement)(_components.ToolbarItem, {
|
|
147
149
|
as: _components.Button,
|
|
148
150
|
className: "editor-document-tools__document-overview-toggle",
|
|
149
151
|
icon: _icons.listView,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_classnames","_interopRequireDefault","require","_compose","_data","_i18n","_blockEditor","_components","_icons","_element","_keyboardShortcuts","_preferences","_lockUnlock","_store","_redo","_undo","useCanBlockToolbarBeFocused","unlock","blockEditorPrivateApis","preventDefault","event","DocumentTools","className","disableBlockTools","children","listViewLabel","__","inserterButton","useRef","setIsInserterOpened","setIsListViewOpened","useDispatch","editorStore","isInserterOpened","isListViewOpen","listViewShortcut","listViewToggleRef","hasFixedToolbar","showIconLabels","useSelect","select","getSettings","blockEditorStore","get","preferencesStore","isListViewOpened","getListViewToggleRef","getShortcutRepresentation","keyboardShortcutsStore","isLargeViewport","useViewportMatch","isWideViewport","blockToolbarCanBeFocused","toolbarAriaLabel","toggleListView","useCallback","toggleInserter","current","focus","longLabel","_x","shortLabel","_react","createElement","NavigableToolbar","classnames","shouldUseKeyboardFocusShortcut","variant","ToolbarItem","ref","as","Button","isPressed","onMouseDown","onClick","disabled","icon","plus","label","showTooltip","Fragment","ToolSelector","undefined","size","EditorHistoryUndo","EditorHistoryRedo","listView","shortcut","_default","exports","default"],"sources":["@wordpress/editor/src/components/document-tools/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\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\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-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';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { store as editorStore } from '../../store';\nimport EditorHistoryRedo from '../editor-history/redo';\nimport EditorHistoryUndo from '../editor-history/undo';\n\nconst { useCanBlockToolbarBeFocused } = unlock( blockEditorPrivateApis );\n\nconst preventDefault = ( event ) => {\n\tevent.preventDefault();\n};\n\nfunction DocumentTools( {\n\tclassName,\n\tdisableBlockTools = false,\n\tchildren,\n\t// This is a temporary prop until the list view is fully unified between post and site editors.\n\tlistViewLabel = __( 'Document Overview' ),\n} ) {\n\tconst inserterButton = useRef();\n\tconst { setIsInserterOpened, setIsListViewOpened } =\n\t\tuseDispatch( editorStore );\n\tconst {\n\t\tisInserterOpened,\n\t\tisListViewOpen,\n\t\tlistViewShortcut,\n\t\tlistViewToggleRef,\n\t\thasFixedToolbar,\n\t\tshowIconLabels,\n\t} = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\tconst { get } = select( preferencesStore );\n\t\tconst { isListViewOpened, getListViewToggleRef } = unlock(\n\t\t\tselect( editorStore )\n\t\t);\n\t\tconst { getShortcutRepresentation } = select( keyboardShortcutsStore );\n\n\t\treturn {\n\t\t\tisInserterOpened: select( editorStore ).isInserterOpened(),\n\t\t\tisListViewOpen: isListViewOpened(),\n\t\t\tlistViewShortcut: getShortcutRepresentation(\n\t\t\t\t'core/editor/toggle-list-view'\n\t\t\t),\n\t\t\tlistViewToggleRef: getListViewToggleRef(),\n\t\t\thasFixedToolbar: getSettings().hasFixedToolbar,\n\t\t\tshowIconLabels: get( 'core', 'showIconLabels' ),\n\t\t};\n\t}, [] );\n\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isWideViewport = useViewportMatch( 'wide' );\n\tconst blockToolbarCanBeFocused = useCanBlockToolbarBeFocused();\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\n\tconst toggleInserter = useCallback( () => {\n\t\tif ( isInserterOpened ) {\n\t\t\t// Focusing the inserter button should close the inserter popover.\n\t\t\t// However, there are some cases it won't close when the focus is lost.\n\t\t\t// See https://github.com/WordPress/gutenberg/issues/43090 for more details.\n\t\t\tinserterButton.current.focus();\n\t\t\tsetIsInserterOpened( false );\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// Some plugins expect and use the `edit-post-header-toolbar` CSS class to\n\t\t// find the toolbar and inject UI elements into it. This is not officially\n\t\t// supported, but we're keeping it in the list of class names for backwards\n\t\t// compatibility.\n\t\t<NavigableToolbar\n\t\t\tclassName={ classnames(\n\t\t\t\t'editor-document-tools',\n\t\t\t\t'edit-post-header-toolbar',\n\t\t\t\tclassName\n\t\t\t) }\n\t\t\taria-label={ toolbarAriaLabel }\n\t\t\tshouldUseKeyboardFocusShortcut={ ! blockToolbarCanBeFocused }\n\t\t\tvariant=\"unstyled\"\n\t\t>\n\t\t\t<div className=\"editor-document-tools__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=\"editor-document-tools__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={ toggleInserter }\n\t\t\t\t\tdisabled={ disableBlockTools }\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\taria-expanded={ isInserterOpened }\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 && ! hasFixedToolbar && (\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={ disableBlockTools }\n\t\t\t\t\t\t\t\tsize=\"compact\"\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\tsize=\"compact\"\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\tsize=\"compact\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\tas={ Button }\n\t\t\t\t\t\t\tclassName=\"editor-document-tools__document-overview-toggle\"\n\t\t\t\t\t\t\ticon={ listView }\n\t\t\t\t\t\t\tdisabled={ disableBlockTools }\n\t\t\t\t\t\t\tisPressed={ isListViewOpen }\n\t\t\t\t\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\t\t\t\t\tlabel={ listViewLabel }\n\t\t\t\t\t\t\tonClick={ toggleListView }\n\t\t\t\t\t\t\tshortcut={ listViewShortcut }\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\taria-expanded={ isListViewOpen }\n\t\t\t\t\t\t\tref={ listViewToggleRef }\n\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t\t{ children }\n\t\t\t</div>\n\t\t</NavigableToolbar>\n\t);\n}\n\nexport default DocumentTools;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_classnames","_interopRequireDefault","require","_compose","_data","_i18n","_blockEditor","_components","_icons","_element","_keyboardShortcuts","_preferences","_lockUnlock","_store","_redo","_undo","useCanBlockToolbarBeFocused","unlock","blockEditorPrivateApis","preventDefault","event","DocumentTools","className","disableBlockTools","children","listViewLabel","__","inserterButton","useRef","setIsInserterOpened","setIsListViewOpened","useDispatch","editorStore","isDistractionFree","isInserterOpened","isListViewOpen","listViewShortcut","listViewToggleRef","hasFixedToolbar","showIconLabels","useSelect","select","getSettings","blockEditorStore","get","preferencesStore","isListViewOpened","getListViewToggleRef","getShortcutRepresentation","keyboardShortcutsStore","isLargeViewport","useViewportMatch","isWideViewport","blockToolbarCanBeFocused","toolbarAriaLabel","toggleListView","useCallback","toggleInserter","current","focus","longLabel","_x","shortLabel","_react","createElement","NavigableToolbar","classnames","shouldUseKeyboardFocusShortcut","variant","ToolbarItem","ref","as","Button","isPressed","onMouseDown","onClick","disabled","icon","plus","label","showTooltip","Fragment","ToolSelector","undefined","size","EditorHistoryUndo","EditorHistoryRedo","listView","shortcut","_default","exports","default"],"sources":["@wordpress/editor/src/components/document-tools/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\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\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-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';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { store as editorStore } from '../../store';\nimport EditorHistoryRedo from '../editor-history/redo';\nimport EditorHistoryUndo from '../editor-history/undo';\n\nconst { useCanBlockToolbarBeFocused } = unlock( blockEditorPrivateApis );\n\nconst preventDefault = ( event ) => {\n\tevent.preventDefault();\n};\n\nfunction DocumentTools( {\n\tclassName,\n\tdisableBlockTools = false,\n\tchildren,\n\t// This is a temporary prop until the list view is fully unified between post and site editors.\n\tlistViewLabel = __( 'Document Overview' ),\n} ) {\n\tconst inserterButton = useRef();\n\tconst { setIsInserterOpened, setIsListViewOpened } =\n\t\tuseDispatch( editorStore );\n\tconst {\n\t\tisDistractionFree,\n\t\tisInserterOpened,\n\t\tisListViewOpen,\n\t\tlistViewShortcut,\n\t\tlistViewToggleRef,\n\t\thasFixedToolbar,\n\t\tshowIconLabels,\n\t} = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\tconst { get } = select( preferencesStore );\n\t\tconst { isListViewOpened, getListViewToggleRef } = unlock(\n\t\t\tselect( editorStore )\n\t\t);\n\t\tconst { getShortcutRepresentation } = select( keyboardShortcutsStore );\n\n\t\treturn {\n\t\t\tisInserterOpened: select( editorStore ).isInserterOpened(),\n\t\t\tisListViewOpen: isListViewOpened(),\n\t\t\tlistViewShortcut: getShortcutRepresentation(\n\t\t\t\t'core/editor/toggle-list-view'\n\t\t\t),\n\t\t\tlistViewToggleRef: getListViewToggleRef(),\n\t\t\thasFixedToolbar: getSettings().hasFixedToolbar,\n\t\t\tshowIconLabels: get( 'core', 'showIconLabels' ),\n\t\t\tisDistractionFree: get( 'core', 'distractionFree' ),\n\t\t};\n\t}, [] );\n\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isWideViewport = useViewportMatch( 'wide' );\n\tconst blockToolbarCanBeFocused = useCanBlockToolbarBeFocused();\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\n\tconst toggleInserter = useCallback( () => {\n\t\tif ( isInserterOpened ) {\n\t\t\t// Focusing the inserter button should close the inserter popover.\n\t\t\t// However, there are some cases it won't close when the focus is lost.\n\t\t\t// See https://github.com/WordPress/gutenberg/issues/43090 for more details.\n\t\t\tinserterButton.current.focus();\n\t\t\tsetIsInserterOpened( false );\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// Some plugins expect and use the `edit-post-header-toolbar` CSS class to\n\t\t// find the toolbar and inject UI elements into it. This is not officially\n\t\t// supported, but we're keeping it in the list of class names for backwards\n\t\t// compatibility.\n\t\t<NavigableToolbar\n\t\t\tclassName={ classnames(\n\t\t\t\t'editor-document-tools',\n\t\t\t\t'edit-post-header-toolbar',\n\t\t\t\tclassName\n\t\t\t) }\n\t\t\taria-label={ toolbarAriaLabel }\n\t\t\tshouldUseKeyboardFocusShortcut={ ! blockToolbarCanBeFocused }\n\t\t\tvariant=\"unstyled\"\n\t\t>\n\t\t\t<div className=\"editor-document-tools__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=\"editor-document-tools__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={ toggleInserter }\n\t\t\t\t\tdisabled={ disableBlockTools }\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\taria-expanded={ isInserterOpened }\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 && ! hasFixedToolbar && (\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={ disableBlockTools }\n\t\t\t\t\t\t\t\tsize=\"compact\"\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\tsize=\"compact\"\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\tsize=\"compact\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ ! isDistractionFree && (\n\t\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\t\tas={ Button }\n\t\t\t\t\t\t\t\tclassName=\"editor-document-tools__document-overview-toggle\"\n\t\t\t\t\t\t\t\ticon={ listView }\n\t\t\t\t\t\t\t\tdisabled={ disableBlockTools }\n\t\t\t\t\t\t\t\tisPressed={ isListViewOpen }\n\t\t\t\t\t\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\t\t\t\t\t\tlabel={ listViewLabel }\n\t\t\t\t\t\t\t\tonClick={ toggleListView }\n\t\t\t\t\t\t\t\tshortcut={ listViewShortcut }\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\taria-expanded={ isListViewOpen }\n\t\t\t\t\t\t\t\tref={ listViewToggleRef }\n\t\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t\t{ children }\n\t\t\t</div>\n\t\t</NavigableToolbar>\n\t);\n}\n\nexport default DocumentTools;\n"],"mappings":"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"}
|
|
@@ -12,9 +12,11 @@ var _i18n = require("@wordpress/i18n");
|
|
|
12
12
|
var _preferences = require("@wordpress/preferences");
|
|
13
13
|
var _compose = require("@wordpress/compose");
|
|
14
14
|
var _blocks = require("@wordpress/blocks");
|
|
15
|
+
var _blockEditor = require("@wordpress/block-editor");
|
|
15
16
|
var _mediaCategories = _interopRequireDefault(require("../media-categories"));
|
|
16
17
|
var _utils = require("../../utils");
|
|
17
18
|
var _store = require("../../store");
|
|
19
|
+
var _lockUnlock = require("../../lock-unlock");
|
|
18
20
|
/**
|
|
19
21
|
* WordPress dependencies
|
|
20
22
|
*/
|
|
@@ -153,13 +155,7 @@ function useBlockEditorSettings(settings, postType, postId) {
|
|
|
153
155
|
keepCaretInsideBlock,
|
|
154
156
|
mediaUpload: hasUploadPermissions ? _utils.mediaUpload : undefined,
|
|
155
157
|
__experimentalBlockPatterns: blockPatterns,
|
|
156
|
-
|
|
157
|
-
return (await (0, _coreData.fetchBlockPatterns)()).filter(({
|
|
158
|
-
postTypes
|
|
159
|
-
}) => {
|
|
160
|
-
return !postTypes || Array.isArray(postTypes) && postTypes.includes(postType);
|
|
161
|
-
});
|
|
162
|
-
},
|
|
158
|
+
[(0, _lockUnlock.unlock)(_blockEditor.privateApis).selectBlockPatternsKey]: select => (0, _lockUnlock.unlock)(select(_coreData.store)).getBlockPatternsForPostType(postType),
|
|
163
159
|
__experimentalReusableBlocks: reusableBlocks,
|
|
164
160
|
__experimentalBlockPatternCategories: blockPatternCategories,
|
|
165
161
|
__experimentalUserPatternCategories: userPatternCategories,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_element","require","_data","_coreData","_i18n","_preferences","_compose","_blocks","_mediaCategories","_interopRequireDefault","_utils","_store","EMPTY_BLOCKS_LIST","BLOCK_EDITOR_SETTINGS","useBlockEditorSettings","settings","postType","postId","_settings$__experimen","_settings$__experimen2","isLargeViewport","useViewportMatch","allowRightClickOverrides","blockTypes","focusMode","hasFixedToolbar","isDistractionFree","keepCaretInsideBlock","reusableBlocks","hasUploadPermissions","hiddenBlockTypes","canUseUnfilteredHTML","userCanCreatePages","pageOnFront","pageForPosts","userPatternCategories","restBlockPatternCategories","useSelect","select","_canUser","isWeb","Platform","OS","canUser","getRawEntityRecord","getEntityRecord","getUserPatternCategories","getEntityRecords","getBlockPatternCategories","coreStore","get","preferencesStore","getBlockTypes","blocksStore","siteSettings","undefined","_links","hasOwnProperty","per_page","page_on_front","page_for_posts","settingsBlockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","settingsBlockPatternCategories","__experimentalAdditionalBlockPatternCategories","__experimentalBlockPatternCategories","blockPatterns","useMemo","filter","postTypes","Array","isArray","includes","blockPatternCategories","x","index","arr","findIndex","y","name","undo","setIsInserterOpened","useDispatch","editorStore","saveEntityRecord","createPageEntity","useCallback","options","Promise","reject","message","__","allowedBlockTypes","length","defaultAllowedBlockTypes","map","type","forceDisableFocusMode","Object","fromEntries","entries","key","mediaUpload","__experimentalFetchBlockPatterns","fetchBlockPatterns","__experimentalReusableBlocks","__experimentalUserPatternCategories","__experimentalFetchLinkSuggestions","search","searchOptions","fetchLinkSuggestions","inserterMediaCategories","__experimentalFetchRichUrlData","fetchUrlData","__experimentalCanUserUseUnfilteredHTML","__experimentalUndo","outlineMode","__experimentalCreatePageEntity","__experimentalUserCanCreatePages","__experimentalPreferPatternsOnRoot","templateLock","template","__experimentalSetIsInserterOpened","_default","exports","default"],"sources":["@wordpress/editor/src/components/provider/use-block-editor-settings.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Platform, useMemo, useCallback } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tstore as coreStore,\n\t__experimentalFetchLinkSuggestions as fetchLinkSuggestions,\n\t__experimentalFetchUrlData as fetchUrlData,\n\tfetchBlockPatterns,\n} from '@wordpress/core-data';\nimport { __ } from '@wordpress/i18n';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { store as blocksStore } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport inserterMediaCategories from '../media-categories';\nimport { mediaUpload } from '../../utils';\nimport { store as editorStore } from '../../store';\n\nconst EMPTY_BLOCKS_LIST = [];\n\nconst BLOCK_EDITOR_SETTINGS = [\n\t'__experimentalBlockDirectory',\n\t'__experimentalDiscussionSettings',\n\t'__experimentalFeatures',\n\t'__experimentalGlobalStylesBaseStyles',\n\t'__experimentalPreferredStyleVariations',\n\t'__unstableGalleryWithImageBlocks',\n\t'alignWide',\n\t'blockInspectorTabs',\n\t'allowedMimeTypes',\n\t'bodyPlaceholder',\n\t'canLockBlocks',\n\t'capabilities',\n\t'clearBlockSelection',\n\t'codeEditingEnabled',\n\t'colors',\n\t'disableCustomColors',\n\t'disableCustomFontSizes',\n\t'disableCustomSpacingSizes',\n\t'disableCustomGradients',\n\t'disableLayoutStyles',\n\t'enableCustomLineHeight',\n\t'enableCustomSpacing',\n\t'enableCustomUnits',\n\t'enableOpenverseMediaCategory',\n\t'fontSizes',\n\t'gradients',\n\t'generateAnchors',\n\t'onNavigateToEntityRecord',\n\t'hasInlineToolbar',\n\t'imageDefaultSize',\n\t'imageDimensions',\n\t'imageEditing',\n\t'imageSizes',\n\t'isRTL',\n\t'locale',\n\t'maxWidth',\n\t'onUpdateDefaultBlockStyles',\n\t'postContentAttributes',\n\t'postsPerPage',\n\t'readOnly',\n\t'styles',\n\t'titlePlaceholder',\n\t'supportsLayout',\n\t'widgetTypesToHideFromLegacyWidgetBlock',\n\t'__unstableHasCustomAppender',\n\t'__unstableIsPreviewMode',\n\t'__unstableResolvedAssets',\n\t'__unstableIsBlockBasedTheme',\n\t'__experimentalArchiveTitleTypeLabel',\n\t'__experimentalArchiveTitleNameLabel',\n];\n\n/**\n * React hook used to compute the block editor settings to use for the post editor.\n *\n * @param {Object} settings EditorProvider settings prop.\n * @param {string} postType Editor root level post type.\n * @param {string} postId Editor root level post ID.\n *\n * @return {Object} Block Editor Settings.\n */\nfunction useBlockEditorSettings( settings, postType, postId ) {\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst {\n\t\tallowRightClickOverrides,\n\t\tblockTypes,\n\t\tfocusMode,\n\t\thasFixedToolbar,\n\t\tisDistractionFree,\n\t\tkeepCaretInsideBlock,\n\t\treusableBlocks,\n\t\thasUploadPermissions,\n\t\thiddenBlockTypes,\n\t\tcanUseUnfilteredHTML,\n\t\tuserCanCreatePages,\n\t\tpageOnFront,\n\t\tpageForPosts,\n\t\tuserPatternCategories,\n\t\trestBlockPatternCategories,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst isWeb = Platform.OS === 'web';\n\t\t\tconst {\n\t\t\t\tcanUser,\n\t\t\t\tgetRawEntityRecord,\n\t\t\t\tgetEntityRecord,\n\t\t\t\tgetUserPatternCategories,\n\t\t\t\tgetEntityRecords,\n\t\t\t\tgetBlockPatternCategories,\n\t\t\t} = select( coreStore );\n\t\t\tconst { get } = select( preferencesStore );\n\t\t\tconst { getBlockTypes } = select( blocksStore );\n\t\t\tconst siteSettings = canUser( 'read', 'settings' )\n\t\t\t\t? getEntityRecord( 'root', 'site' )\n\t\t\t\t: undefined;\n\n\t\t\treturn {\n\t\t\t\tallowRightClickOverrides: get(\n\t\t\t\t\t'core',\n\t\t\t\t\t'allowRightClickOverrides'\n\t\t\t\t),\n\t\t\t\tblockTypes: getBlockTypes(),\n\t\t\t\tcanUseUnfilteredHTML: getRawEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostType,\n\t\t\t\t\tpostId\n\t\t\t\t)?._links?.hasOwnProperty( 'wp:action-unfiltered-html' ),\n\t\t\t\tfocusMode: get( 'core', 'focusMode' ),\n\t\t\t\thasFixedToolbar:\n\t\t\t\t\tget( 'core', 'fixedToolbar' ) || ! isLargeViewport,\n\t\t\t\thiddenBlockTypes: get( 'core', 'hiddenBlockTypes' ),\n\t\t\t\tisDistractionFree: get( 'core', 'distractionFree' ),\n\t\t\t\tkeepCaretInsideBlock: get( 'core', 'keepCaretInsideBlock' ),\n\t\t\t\treusableBlocks: isWeb\n\t\t\t\t\t? getEntityRecords( 'postType', 'wp_block', {\n\t\t\t\t\t\t\tper_page: -1,\n\t\t\t\t\t } )\n\t\t\t\t\t: EMPTY_BLOCKS_LIST, // Reusable blocks are fetched in the native version of this hook.\n\t\t\t\thasUploadPermissions: canUser( 'create', 'media' ) ?? true,\n\t\t\t\tuserCanCreatePages: canUser( 'create', 'pages' ),\n\t\t\t\tpageOnFront: siteSettings?.page_on_front,\n\t\t\t\tpageForPosts: siteSettings?.page_for_posts,\n\t\t\t\tuserPatternCategories: getUserPatternCategories(),\n\t\t\t\trestBlockPatternCategories: getBlockPatternCategories(),\n\t\t\t};\n\t\t},\n\t\t[ postType, postId, isLargeViewport ]\n\t);\n\n\tconst settingsBlockPatterns =\n\t\tsettings.__experimentalAdditionalBlockPatterns ?? // WP 6.0\n\t\tsettings.__experimentalBlockPatterns; // WP 5.9\n\tconst settingsBlockPatternCategories =\n\t\tsettings.__experimentalAdditionalBlockPatternCategories ?? // WP 6.0\n\t\tsettings.__experimentalBlockPatternCategories; // WP 5.9\n\n\tconst blockPatterns = useMemo(\n\t\t() =>\n\t\t\t[ ...( settingsBlockPatterns || [] ) ].filter(\n\t\t\t\t( { postTypes } ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t! postTypes ||\n\t\t\t\t\t\t( Array.isArray( postTypes ) &&\n\t\t\t\t\t\t\tpostTypes.includes( postType ) )\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t),\n\t\t[ settingsBlockPatterns, postType ]\n\t);\n\n\tconst blockPatternCategories = useMemo(\n\t\t() =>\n\t\t\t[\n\t\t\t\t...( settingsBlockPatternCategories || [] ),\n\t\t\t\t...( restBlockPatternCategories || [] ),\n\t\t\t].filter(\n\t\t\t\t( x, index, arr ) =>\n\t\t\t\t\tindex === arr.findIndex( ( y ) => x.name === y.name )\n\t\t\t),\n\t\t[ settingsBlockPatternCategories, restBlockPatternCategories ]\n\t);\n\n\tconst { undo, setIsInserterOpened } = useDispatch( editorStore );\n\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\n\t/**\n\t * Creates a Post entity.\n\t * This is utilised by the Link UI to allow for on-the-fly creation of Posts/Pages.\n\t *\n\t * @param {Object} options parameters for the post being created. These mirror those used on 3rd param of saveEntityRecord.\n\t * @return {Object} the post type object that was created.\n\t */\n\tconst createPageEntity = useCallback(\n\t\t( options ) => {\n\t\t\tif ( ! userCanCreatePages ) {\n\t\t\t\treturn Promise.reject( {\n\t\t\t\t\tmessage: __(\n\t\t\t\t\t\t'You do not have permission to create Pages.'\n\t\t\t\t\t),\n\t\t\t\t} );\n\t\t\t}\n\t\t\treturn saveEntityRecord( 'postType', 'page', options );\n\t\t},\n\t\t[ saveEntityRecord, userCanCreatePages ]\n\t);\n\n\tconst allowedBlockTypes = useMemo( () => {\n\t\t// Omit hidden block types if exists and non-empty.\n\t\tif ( hiddenBlockTypes && hiddenBlockTypes.length > 0 ) {\n\t\t\t// Defer to passed setting for `allowedBlockTypes` if provided as\n\t\t\t// anything other than `true` (where `true` is equivalent to allow\n\t\t\t// all block types).\n\t\t\tconst defaultAllowedBlockTypes =\n\t\t\t\ttrue === settings.allowedBlockTypes\n\t\t\t\t\t? blockTypes.map( ( { name } ) => name )\n\t\t\t\t\t: settings.allowedBlockTypes || [];\n\n\t\t\treturn defaultAllowedBlockTypes.filter(\n\t\t\t\t( type ) => ! hiddenBlockTypes.includes( type )\n\t\t\t);\n\t\t}\n\n\t\treturn settings.allowedBlockTypes;\n\t}, [ settings.allowedBlockTypes, hiddenBlockTypes, blockTypes ] );\n\n\tconst forceDisableFocusMode = settings.focusMode === false;\n\n\treturn useMemo(\n\t\t() => ( {\n\t\t\t...Object.fromEntries(\n\t\t\t\tObject.entries( settings ).filter( ( [ key ] ) =>\n\t\t\t\t\tBLOCK_EDITOR_SETTINGS.includes( key )\n\t\t\t\t)\n\t\t\t),\n\t\t\tallowedBlockTypes,\n\t\t\tallowRightClickOverrides,\n\t\t\tfocusMode: focusMode && ! forceDisableFocusMode,\n\t\t\thasFixedToolbar,\n\t\t\tisDistractionFree,\n\t\t\tkeepCaretInsideBlock,\n\t\t\tmediaUpload: hasUploadPermissions ? mediaUpload : undefined,\n\t\t\t__experimentalBlockPatterns: blockPatterns,\n\t\t\t__experimentalFetchBlockPatterns: async () => {\n\t\t\t\treturn ( await fetchBlockPatterns() ).filter(\n\t\t\t\t\t( { postTypes } ) => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t! postTypes ||\n\t\t\t\t\t\t\t( Array.isArray( postTypes ) &&\n\t\t\t\t\t\t\t\tpostTypes.includes( postType ) )\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t},\n\t\t\t__experimentalReusableBlocks: reusableBlocks,\n\t\t\t__experimentalBlockPatternCategories: blockPatternCategories,\n\t\t\t__experimentalUserPatternCategories: userPatternCategories,\n\t\t\t__experimentalFetchLinkSuggestions: ( search, searchOptions ) =>\n\t\t\t\tfetchLinkSuggestions( search, searchOptions, settings ),\n\t\t\tinserterMediaCategories,\n\t\t\t__experimentalFetchRichUrlData: fetchUrlData,\n\t\t\t// Todo: This only checks the top level post, not the post within a template or any other entity that can be edited.\n\t\t\t// This might be better as a generic \"canUser\" selector.\n\t\t\t__experimentalCanUserUseUnfilteredHTML: canUseUnfilteredHTML,\n\t\t\t//Todo: this is only needed for native and should probably be removed.\n\t\t\t__experimentalUndo: undo,\n\t\t\t// Check whether we want all site editor frames to have outlines\n\t\t\t// including the navigation / pattern / parts editors.\n\t\t\toutlineMode: postType === 'wp_template',\n\t\t\t// Check these two properties: they were not present in the site editor.\n\t\t\t__experimentalCreatePageEntity: createPageEntity,\n\t\t\t__experimentalUserCanCreatePages: userCanCreatePages,\n\t\t\tpageOnFront,\n\t\t\tpageForPosts,\n\t\t\t__experimentalPreferPatternsOnRoot: postType === 'wp_template',\n\t\t\ttemplateLock:\n\t\t\t\tpostType === 'wp_navigation' ? 'insert' : settings.templateLock,\n\t\t\ttemplate:\n\t\t\t\tpostType === 'wp_navigation'\n\t\t\t\t\t? [ [ 'core/navigation', {}, [] ] ]\n\t\t\t\t\t: settings.template,\n\t\t\t__experimentalSetIsInserterOpened: setIsInserterOpened,\n\t\t} ),\n\t\t[\n\t\t\tallowedBlockTypes,\n\t\t\tallowRightClickOverrides,\n\t\t\tfocusMode,\n\t\t\tforceDisableFocusMode,\n\t\t\thasFixedToolbar,\n\t\t\tisDistractionFree,\n\t\t\tkeepCaretInsideBlock,\n\t\t\tsettings,\n\t\t\thasUploadPermissions,\n\t\t\treusableBlocks,\n\t\t\tuserPatternCategories,\n\t\t\tblockPatterns,\n\t\t\tblockPatternCategories,\n\t\t\tcanUseUnfilteredHTML,\n\t\t\tundo,\n\t\t\tcreatePageEntity,\n\t\t\tuserCanCreatePages,\n\t\t\tpageOnFront,\n\t\t\tpageForPosts,\n\t\t\tpostType,\n\t\t\tsetIsInserterOpened,\n\t\t]\n\t);\n}\n\nexport default useBlockEditorSettings;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_element","require","_data","_coreData","_i18n","_preferences","_compose","_blocks","_blockEditor","_mediaCategories","_interopRequireDefault","_utils","_store","_lockUnlock","EMPTY_BLOCKS_LIST","BLOCK_EDITOR_SETTINGS","useBlockEditorSettings","settings","postType","postId","_settings$__experimen","_settings$__experimen2","isLargeViewport","useViewportMatch","allowRightClickOverrides","blockTypes","focusMode","hasFixedToolbar","isDistractionFree","keepCaretInsideBlock","reusableBlocks","hasUploadPermissions","hiddenBlockTypes","canUseUnfilteredHTML","userCanCreatePages","pageOnFront","pageForPosts","userPatternCategories","restBlockPatternCategories","useSelect","select","_canUser","isWeb","Platform","OS","canUser","getRawEntityRecord","getEntityRecord","getUserPatternCategories","getEntityRecords","getBlockPatternCategories","coreStore","get","preferencesStore","getBlockTypes","blocksStore","siteSettings","undefined","_links","hasOwnProperty","per_page","page_on_front","page_for_posts","settingsBlockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","settingsBlockPatternCategories","__experimentalAdditionalBlockPatternCategories","__experimentalBlockPatternCategories","blockPatterns","useMemo","filter","postTypes","Array","isArray","includes","blockPatternCategories","x","index","arr","findIndex","y","name","undo","setIsInserterOpened","useDispatch","editorStore","saveEntityRecord","createPageEntity","useCallback","options","Promise","reject","message","__","allowedBlockTypes","length","defaultAllowedBlockTypes","map","type","forceDisableFocusMode","Object","fromEntries","entries","key","mediaUpload","unlock","privateApis","selectBlockPatternsKey","getBlockPatternsForPostType","__experimentalReusableBlocks","__experimentalUserPatternCategories","__experimentalFetchLinkSuggestions","search","searchOptions","fetchLinkSuggestions","inserterMediaCategories","__experimentalFetchRichUrlData","fetchUrlData","__experimentalCanUserUseUnfilteredHTML","__experimentalUndo","outlineMode","__experimentalCreatePageEntity","__experimentalUserCanCreatePages","__experimentalPreferPatternsOnRoot","templateLock","template","__experimentalSetIsInserterOpened","_default","exports","default"],"sources":["@wordpress/editor/src/components/provider/use-block-editor-settings.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Platform, useMemo, useCallback } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tstore as coreStore,\n\t__experimentalFetchLinkSuggestions as fetchLinkSuggestions,\n\t__experimentalFetchUrlData as fetchUrlData,\n} from '@wordpress/core-data';\nimport { __ } from '@wordpress/i18n';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { store as blocksStore } from '@wordpress/blocks';\nimport { privateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport inserterMediaCategories from '../media-categories';\nimport { mediaUpload } from '../../utils';\nimport { store as editorStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\n\nconst EMPTY_BLOCKS_LIST = [];\n\nconst BLOCK_EDITOR_SETTINGS = [\n\t'__experimentalBlockDirectory',\n\t'__experimentalDiscussionSettings',\n\t'__experimentalFeatures',\n\t'__experimentalGlobalStylesBaseStyles',\n\t'__experimentalPreferredStyleVariations',\n\t'__unstableGalleryWithImageBlocks',\n\t'alignWide',\n\t'blockInspectorTabs',\n\t'allowedMimeTypes',\n\t'bodyPlaceholder',\n\t'canLockBlocks',\n\t'capabilities',\n\t'clearBlockSelection',\n\t'codeEditingEnabled',\n\t'colors',\n\t'disableCustomColors',\n\t'disableCustomFontSizes',\n\t'disableCustomSpacingSizes',\n\t'disableCustomGradients',\n\t'disableLayoutStyles',\n\t'enableCustomLineHeight',\n\t'enableCustomSpacing',\n\t'enableCustomUnits',\n\t'enableOpenverseMediaCategory',\n\t'fontSizes',\n\t'gradients',\n\t'generateAnchors',\n\t'onNavigateToEntityRecord',\n\t'hasInlineToolbar',\n\t'imageDefaultSize',\n\t'imageDimensions',\n\t'imageEditing',\n\t'imageSizes',\n\t'isRTL',\n\t'locale',\n\t'maxWidth',\n\t'onUpdateDefaultBlockStyles',\n\t'postContentAttributes',\n\t'postsPerPage',\n\t'readOnly',\n\t'styles',\n\t'titlePlaceholder',\n\t'supportsLayout',\n\t'widgetTypesToHideFromLegacyWidgetBlock',\n\t'__unstableHasCustomAppender',\n\t'__unstableIsPreviewMode',\n\t'__unstableResolvedAssets',\n\t'__unstableIsBlockBasedTheme',\n\t'__experimentalArchiveTitleTypeLabel',\n\t'__experimentalArchiveTitleNameLabel',\n];\n\n/**\n * React hook used to compute the block editor settings to use for the post editor.\n *\n * @param {Object} settings EditorProvider settings prop.\n * @param {string} postType Editor root level post type.\n * @param {string} postId Editor root level post ID.\n *\n * @return {Object} Block Editor Settings.\n */\nfunction useBlockEditorSettings( settings, postType, postId ) {\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst {\n\t\tallowRightClickOverrides,\n\t\tblockTypes,\n\t\tfocusMode,\n\t\thasFixedToolbar,\n\t\tisDistractionFree,\n\t\tkeepCaretInsideBlock,\n\t\treusableBlocks,\n\t\thasUploadPermissions,\n\t\thiddenBlockTypes,\n\t\tcanUseUnfilteredHTML,\n\t\tuserCanCreatePages,\n\t\tpageOnFront,\n\t\tpageForPosts,\n\t\tuserPatternCategories,\n\t\trestBlockPatternCategories,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst isWeb = Platform.OS === 'web';\n\t\t\tconst {\n\t\t\t\tcanUser,\n\t\t\t\tgetRawEntityRecord,\n\t\t\t\tgetEntityRecord,\n\t\t\t\tgetUserPatternCategories,\n\t\t\t\tgetEntityRecords,\n\t\t\t\tgetBlockPatternCategories,\n\t\t\t} = select( coreStore );\n\t\t\tconst { get } = select( preferencesStore );\n\t\t\tconst { getBlockTypes } = select( blocksStore );\n\t\t\tconst siteSettings = canUser( 'read', 'settings' )\n\t\t\t\t? getEntityRecord( 'root', 'site' )\n\t\t\t\t: undefined;\n\n\t\t\treturn {\n\t\t\t\tallowRightClickOverrides: get(\n\t\t\t\t\t'core',\n\t\t\t\t\t'allowRightClickOverrides'\n\t\t\t\t),\n\t\t\t\tblockTypes: getBlockTypes(),\n\t\t\t\tcanUseUnfilteredHTML: getRawEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostType,\n\t\t\t\t\tpostId\n\t\t\t\t)?._links?.hasOwnProperty( 'wp:action-unfiltered-html' ),\n\t\t\t\tfocusMode: get( 'core', 'focusMode' ),\n\t\t\t\thasFixedToolbar:\n\t\t\t\t\tget( 'core', 'fixedToolbar' ) || ! isLargeViewport,\n\t\t\t\thiddenBlockTypes: get( 'core', 'hiddenBlockTypes' ),\n\t\t\t\tisDistractionFree: get( 'core', 'distractionFree' ),\n\t\t\t\tkeepCaretInsideBlock: get( 'core', 'keepCaretInsideBlock' ),\n\t\t\t\treusableBlocks: isWeb\n\t\t\t\t\t? getEntityRecords( 'postType', 'wp_block', {\n\t\t\t\t\t\t\tper_page: -1,\n\t\t\t\t\t } )\n\t\t\t\t\t: EMPTY_BLOCKS_LIST, // Reusable blocks are fetched in the native version of this hook.\n\t\t\t\thasUploadPermissions: canUser( 'create', 'media' ) ?? true,\n\t\t\t\tuserCanCreatePages: canUser( 'create', 'pages' ),\n\t\t\t\tpageOnFront: siteSettings?.page_on_front,\n\t\t\t\tpageForPosts: siteSettings?.page_for_posts,\n\t\t\t\tuserPatternCategories: getUserPatternCategories(),\n\t\t\t\trestBlockPatternCategories: getBlockPatternCategories(),\n\t\t\t};\n\t\t},\n\t\t[ postType, postId, isLargeViewport ]\n\t);\n\n\tconst settingsBlockPatterns =\n\t\tsettings.__experimentalAdditionalBlockPatterns ?? // WP 6.0\n\t\tsettings.__experimentalBlockPatterns; // WP 5.9\n\tconst settingsBlockPatternCategories =\n\t\tsettings.__experimentalAdditionalBlockPatternCategories ?? // WP 6.0\n\t\tsettings.__experimentalBlockPatternCategories; // WP 5.9\n\n\tconst blockPatterns = useMemo(\n\t\t() =>\n\t\t\t[ ...( settingsBlockPatterns || [] ) ].filter(\n\t\t\t\t( { postTypes } ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t! postTypes ||\n\t\t\t\t\t\t( Array.isArray( postTypes ) &&\n\t\t\t\t\t\t\tpostTypes.includes( postType ) )\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t),\n\t\t[ settingsBlockPatterns, postType ]\n\t);\n\n\tconst blockPatternCategories = useMemo(\n\t\t() =>\n\t\t\t[\n\t\t\t\t...( settingsBlockPatternCategories || [] ),\n\t\t\t\t...( restBlockPatternCategories || [] ),\n\t\t\t].filter(\n\t\t\t\t( x, index, arr ) =>\n\t\t\t\t\tindex === arr.findIndex( ( y ) => x.name === y.name )\n\t\t\t),\n\t\t[ settingsBlockPatternCategories, restBlockPatternCategories ]\n\t);\n\n\tconst { undo, setIsInserterOpened } = useDispatch( editorStore );\n\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\n\t/**\n\t * Creates a Post entity.\n\t * This is utilised by the Link UI to allow for on-the-fly creation of Posts/Pages.\n\t *\n\t * @param {Object} options parameters for the post being created. These mirror those used on 3rd param of saveEntityRecord.\n\t * @return {Object} the post type object that was created.\n\t */\n\tconst createPageEntity = useCallback(\n\t\t( options ) => {\n\t\t\tif ( ! userCanCreatePages ) {\n\t\t\t\treturn Promise.reject( {\n\t\t\t\t\tmessage: __(\n\t\t\t\t\t\t'You do not have permission to create Pages.'\n\t\t\t\t\t),\n\t\t\t\t} );\n\t\t\t}\n\t\t\treturn saveEntityRecord( 'postType', 'page', options );\n\t\t},\n\t\t[ saveEntityRecord, userCanCreatePages ]\n\t);\n\n\tconst allowedBlockTypes = useMemo( () => {\n\t\t// Omit hidden block types if exists and non-empty.\n\t\tif ( hiddenBlockTypes && hiddenBlockTypes.length > 0 ) {\n\t\t\t// Defer to passed setting for `allowedBlockTypes` if provided as\n\t\t\t// anything other than `true` (where `true` is equivalent to allow\n\t\t\t// all block types).\n\t\t\tconst defaultAllowedBlockTypes =\n\t\t\t\ttrue === settings.allowedBlockTypes\n\t\t\t\t\t? blockTypes.map( ( { name } ) => name )\n\t\t\t\t\t: settings.allowedBlockTypes || [];\n\n\t\t\treturn defaultAllowedBlockTypes.filter(\n\t\t\t\t( type ) => ! hiddenBlockTypes.includes( type )\n\t\t\t);\n\t\t}\n\n\t\treturn settings.allowedBlockTypes;\n\t}, [ settings.allowedBlockTypes, hiddenBlockTypes, blockTypes ] );\n\n\tconst forceDisableFocusMode = settings.focusMode === false;\n\n\treturn useMemo(\n\t\t() => ( {\n\t\t\t...Object.fromEntries(\n\t\t\t\tObject.entries( settings ).filter( ( [ key ] ) =>\n\t\t\t\t\tBLOCK_EDITOR_SETTINGS.includes( key )\n\t\t\t\t)\n\t\t\t),\n\t\t\tallowedBlockTypes,\n\t\t\tallowRightClickOverrides,\n\t\t\tfocusMode: focusMode && ! forceDisableFocusMode,\n\t\t\thasFixedToolbar,\n\t\t\tisDistractionFree,\n\t\t\tkeepCaretInsideBlock,\n\t\t\tmediaUpload: hasUploadPermissions ? mediaUpload : undefined,\n\t\t\t__experimentalBlockPatterns: blockPatterns,\n\t\t\t[ unlock( privateApis ).selectBlockPatternsKey ]: ( select ) =>\n\t\t\t\tunlock( select( coreStore ) ).getBlockPatternsForPostType(\n\t\t\t\t\tpostType\n\t\t\t\t),\n\t\t\t__experimentalReusableBlocks: reusableBlocks,\n\t\t\t__experimentalBlockPatternCategories: blockPatternCategories,\n\t\t\t__experimentalUserPatternCategories: userPatternCategories,\n\t\t\t__experimentalFetchLinkSuggestions: ( search, searchOptions ) =>\n\t\t\t\tfetchLinkSuggestions( search, searchOptions, settings ),\n\t\t\tinserterMediaCategories,\n\t\t\t__experimentalFetchRichUrlData: fetchUrlData,\n\t\t\t// Todo: This only checks the top level post, not the post within a template or any other entity that can be edited.\n\t\t\t// This might be better as a generic \"canUser\" selector.\n\t\t\t__experimentalCanUserUseUnfilteredHTML: canUseUnfilteredHTML,\n\t\t\t//Todo: this is only needed for native and should probably be removed.\n\t\t\t__experimentalUndo: undo,\n\t\t\t// Check whether we want all site editor frames to have outlines\n\t\t\t// including the navigation / pattern / parts editors.\n\t\t\toutlineMode: postType === 'wp_template',\n\t\t\t// Check these two properties: they were not present in the site editor.\n\t\t\t__experimentalCreatePageEntity: createPageEntity,\n\t\t\t__experimentalUserCanCreatePages: userCanCreatePages,\n\t\t\tpageOnFront,\n\t\t\tpageForPosts,\n\t\t\t__experimentalPreferPatternsOnRoot: postType === 'wp_template',\n\t\t\ttemplateLock:\n\t\t\t\tpostType === 'wp_navigation' ? 'insert' : settings.templateLock,\n\t\t\ttemplate:\n\t\t\t\tpostType === 'wp_navigation'\n\t\t\t\t\t? [ [ 'core/navigation', {}, [] ] ]\n\t\t\t\t\t: settings.template,\n\t\t\t__experimentalSetIsInserterOpened: setIsInserterOpened,\n\t\t} ),\n\t\t[\n\t\t\tallowedBlockTypes,\n\t\t\tallowRightClickOverrides,\n\t\t\tfocusMode,\n\t\t\tforceDisableFocusMode,\n\t\t\thasFixedToolbar,\n\t\t\tisDistractionFree,\n\t\t\tkeepCaretInsideBlock,\n\t\t\tsettings,\n\t\t\thasUploadPermissions,\n\t\t\treusableBlocks,\n\t\t\tuserPatternCategories,\n\t\t\tblockPatterns,\n\t\t\tblockPatternCategories,\n\t\t\tcanUseUnfilteredHTML,\n\t\t\tundo,\n\t\t\tcreatePageEntity,\n\t\t\tuserCanCreatePages,\n\t\t\tpageOnFront,\n\t\t\tpageForPosts,\n\t\t\tpostType,\n\t\t\tsetIsInserterOpened,\n\t\t]\n\t);\n}\n\nexport default useBlockEditorSettings;\n"],"mappings":"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"}
|
|
@@ -43,6 +43,7 @@ function DocumentTools({
|
|
|
43
43
|
setIsListViewOpened
|
|
44
44
|
} = useDispatch(editorStore);
|
|
45
45
|
const {
|
|
46
|
+
isDistractionFree,
|
|
46
47
|
isInserterOpened,
|
|
47
48
|
isListViewOpen,
|
|
48
49
|
listViewShortcut,
|
|
@@ -69,7 +70,8 @@ function DocumentTools({
|
|
|
69
70
|
listViewShortcut: getShortcutRepresentation('core/editor/toggle-list-view'),
|
|
70
71
|
listViewToggleRef: getListViewToggleRef(),
|
|
71
72
|
hasFixedToolbar: getSettings().hasFixedToolbar,
|
|
72
|
-
showIconLabels: get('core', 'showIconLabels')
|
|
73
|
+
showIconLabels: get('core', 'showIconLabels'),
|
|
74
|
+
isDistractionFree: get('core', 'distractionFree')
|
|
73
75
|
};
|
|
74
76
|
}, []);
|
|
75
77
|
const isLargeViewport = useViewportMatch('medium');
|
|
@@ -135,7 +137,7 @@ function DocumentTools({
|
|
|
135
137
|
showTooltip: !showIconLabels,
|
|
136
138
|
variant: showIconLabels ? 'tertiary' : undefined,
|
|
137
139
|
size: "compact"
|
|
138
|
-
}), createElement(ToolbarItem, {
|
|
140
|
+
}), !isDistractionFree && createElement(ToolbarItem, {
|
|
139
141
|
as: Button,
|
|
140
142
|
className: "editor-document-tools__document-overview-toggle",
|
|
141
143
|
icon: listView,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["classnames","useViewportMatch","useSelect","useDispatch","__","_x","NavigableToolbar","ToolSelector","store","blockEditorStore","privateApis","blockEditorPrivateApis","Button","ToolbarItem","listView","plus","useRef","useCallback","keyboardShortcutsStore","preferencesStore","unlock","editorStore","EditorHistoryRedo","EditorHistoryUndo","useCanBlockToolbarBeFocused","preventDefault","event","DocumentTools","className","disableBlockTools","children","listViewLabel","inserterButton","setIsInserterOpened","setIsListViewOpened","isInserterOpened","isListViewOpen","listViewShortcut","listViewToggleRef","hasFixedToolbar","showIconLabels","select","getSettings","get","isListViewOpened","getListViewToggleRef","getShortcutRepresentation","isLargeViewport","isWideViewport","blockToolbarCanBeFocused","toolbarAriaLabel","toggleListView","toggleInserter","current","focus","longLabel","shortLabel","createElement","shouldUseKeyboardFocusShortcut","variant","ref","as","isPressed","onMouseDown","onClick","disabled","icon","label","showTooltip","Fragment","undefined","size","shortcut"],"sources":["@wordpress/editor/src/components/document-tools/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\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\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-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';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { store as editorStore } from '../../store';\nimport EditorHistoryRedo from '../editor-history/redo';\nimport EditorHistoryUndo from '../editor-history/undo';\n\nconst { useCanBlockToolbarBeFocused } = unlock( blockEditorPrivateApis );\n\nconst preventDefault = ( event ) => {\n\tevent.preventDefault();\n};\n\nfunction DocumentTools( {\n\tclassName,\n\tdisableBlockTools = false,\n\tchildren,\n\t// This is a temporary prop until the list view is fully unified between post and site editors.\n\tlistViewLabel = __( 'Document Overview' ),\n} ) {\n\tconst inserterButton = useRef();\n\tconst { setIsInserterOpened, setIsListViewOpened } =\n\t\tuseDispatch( editorStore );\n\tconst {\n\t\tisInserterOpened,\n\t\tisListViewOpen,\n\t\tlistViewShortcut,\n\t\tlistViewToggleRef,\n\t\thasFixedToolbar,\n\t\tshowIconLabels,\n\t} = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\tconst { get } = select( preferencesStore );\n\t\tconst { isListViewOpened, getListViewToggleRef } = unlock(\n\t\t\tselect( editorStore )\n\t\t);\n\t\tconst { getShortcutRepresentation } = select( keyboardShortcutsStore );\n\n\t\treturn {\n\t\t\tisInserterOpened: select( editorStore ).isInserterOpened(),\n\t\t\tisListViewOpen: isListViewOpened(),\n\t\t\tlistViewShortcut: getShortcutRepresentation(\n\t\t\t\t'core/editor/toggle-list-view'\n\t\t\t),\n\t\t\tlistViewToggleRef: getListViewToggleRef(),\n\t\t\thasFixedToolbar: getSettings().hasFixedToolbar,\n\t\t\tshowIconLabels: get( 'core', 'showIconLabels' ),\n\t\t};\n\t}, [] );\n\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isWideViewport = useViewportMatch( 'wide' );\n\tconst blockToolbarCanBeFocused = useCanBlockToolbarBeFocused();\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\n\tconst toggleInserter = useCallback( () => {\n\t\tif ( isInserterOpened ) {\n\t\t\t// Focusing the inserter button should close the inserter popover.\n\t\t\t// However, there are some cases it won't close when the focus is lost.\n\t\t\t// See https://github.com/WordPress/gutenberg/issues/43090 for more details.\n\t\t\tinserterButton.current.focus();\n\t\t\tsetIsInserterOpened( false );\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// Some plugins expect and use the `edit-post-header-toolbar` CSS class to\n\t\t// find the toolbar and inject UI elements into it. This is not officially\n\t\t// supported, but we're keeping it in the list of class names for backwards\n\t\t// compatibility.\n\t\t<NavigableToolbar\n\t\t\tclassName={ classnames(\n\t\t\t\t'editor-document-tools',\n\t\t\t\t'edit-post-header-toolbar',\n\t\t\t\tclassName\n\t\t\t) }\n\t\t\taria-label={ toolbarAriaLabel }\n\t\t\tshouldUseKeyboardFocusShortcut={ ! blockToolbarCanBeFocused }\n\t\t\tvariant=\"unstyled\"\n\t\t>\n\t\t\t<div className=\"editor-document-tools__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=\"editor-document-tools__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={ toggleInserter }\n\t\t\t\t\tdisabled={ disableBlockTools }\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\taria-expanded={ isInserterOpened }\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 && ! hasFixedToolbar && (\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={ disableBlockTools }\n\t\t\t\t\t\t\t\tsize=\"compact\"\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\tsize=\"compact\"\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\tsize=\"compact\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\tas={ Button }\n\t\t\t\t\t\t\tclassName=\"editor-document-tools__document-overview-toggle\"\n\t\t\t\t\t\t\ticon={ listView }\n\t\t\t\t\t\t\tdisabled={ disableBlockTools }\n\t\t\t\t\t\t\tisPressed={ isListViewOpen }\n\t\t\t\t\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\t\t\t\t\tlabel={ listViewLabel }\n\t\t\t\t\t\t\tonClick={ toggleListView }\n\t\t\t\t\t\t\tshortcut={ listViewShortcut }\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\taria-expanded={ isListViewOpen }\n\t\t\t\t\t\t\tref={ listViewToggleRef }\n\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t\t{ children }\n\t\t\t</div>\n\t\t</NavigableToolbar>\n\t);\n}\n\nexport default DocumentTools;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["classnames","useViewportMatch","useSelect","useDispatch","__","_x","NavigableToolbar","ToolSelector","store","blockEditorStore","privateApis","blockEditorPrivateApis","Button","ToolbarItem","listView","plus","useRef","useCallback","keyboardShortcutsStore","preferencesStore","unlock","editorStore","EditorHistoryRedo","EditorHistoryUndo","useCanBlockToolbarBeFocused","preventDefault","event","DocumentTools","className","disableBlockTools","children","listViewLabel","inserterButton","setIsInserterOpened","setIsListViewOpened","isDistractionFree","isInserterOpened","isListViewOpen","listViewShortcut","listViewToggleRef","hasFixedToolbar","showIconLabels","select","getSettings","get","isListViewOpened","getListViewToggleRef","getShortcutRepresentation","isLargeViewport","isWideViewport","blockToolbarCanBeFocused","toolbarAriaLabel","toggleListView","toggleInserter","current","focus","longLabel","shortLabel","createElement","shouldUseKeyboardFocusShortcut","variant","ref","as","isPressed","onMouseDown","onClick","disabled","icon","label","showTooltip","Fragment","undefined","size","shortcut"],"sources":["@wordpress/editor/src/components/document-tools/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\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\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-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';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { store as editorStore } from '../../store';\nimport EditorHistoryRedo from '../editor-history/redo';\nimport EditorHistoryUndo from '../editor-history/undo';\n\nconst { useCanBlockToolbarBeFocused } = unlock( blockEditorPrivateApis );\n\nconst preventDefault = ( event ) => {\n\tevent.preventDefault();\n};\n\nfunction DocumentTools( {\n\tclassName,\n\tdisableBlockTools = false,\n\tchildren,\n\t// This is a temporary prop until the list view is fully unified between post and site editors.\n\tlistViewLabel = __( 'Document Overview' ),\n} ) {\n\tconst inserterButton = useRef();\n\tconst { setIsInserterOpened, setIsListViewOpened } =\n\t\tuseDispatch( editorStore );\n\tconst {\n\t\tisDistractionFree,\n\t\tisInserterOpened,\n\t\tisListViewOpen,\n\t\tlistViewShortcut,\n\t\tlistViewToggleRef,\n\t\thasFixedToolbar,\n\t\tshowIconLabels,\n\t} = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\tconst { get } = select( preferencesStore );\n\t\tconst { isListViewOpened, getListViewToggleRef } = unlock(\n\t\t\tselect( editorStore )\n\t\t);\n\t\tconst { getShortcutRepresentation } = select( keyboardShortcutsStore );\n\n\t\treturn {\n\t\t\tisInserterOpened: select( editorStore ).isInserterOpened(),\n\t\t\tisListViewOpen: isListViewOpened(),\n\t\t\tlistViewShortcut: getShortcutRepresentation(\n\t\t\t\t'core/editor/toggle-list-view'\n\t\t\t),\n\t\t\tlistViewToggleRef: getListViewToggleRef(),\n\t\t\thasFixedToolbar: getSettings().hasFixedToolbar,\n\t\t\tshowIconLabels: get( 'core', 'showIconLabels' ),\n\t\t\tisDistractionFree: get( 'core', 'distractionFree' ),\n\t\t};\n\t}, [] );\n\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isWideViewport = useViewportMatch( 'wide' );\n\tconst blockToolbarCanBeFocused = useCanBlockToolbarBeFocused();\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\n\tconst toggleInserter = useCallback( () => {\n\t\tif ( isInserterOpened ) {\n\t\t\t// Focusing the inserter button should close the inserter popover.\n\t\t\t// However, there are some cases it won't close when the focus is lost.\n\t\t\t// See https://github.com/WordPress/gutenberg/issues/43090 for more details.\n\t\t\tinserterButton.current.focus();\n\t\t\tsetIsInserterOpened( false );\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// Some plugins expect and use the `edit-post-header-toolbar` CSS class to\n\t\t// find the toolbar and inject UI elements into it. This is not officially\n\t\t// supported, but we're keeping it in the list of class names for backwards\n\t\t// compatibility.\n\t\t<NavigableToolbar\n\t\t\tclassName={ classnames(\n\t\t\t\t'editor-document-tools',\n\t\t\t\t'edit-post-header-toolbar',\n\t\t\t\tclassName\n\t\t\t) }\n\t\t\taria-label={ toolbarAriaLabel }\n\t\t\tshouldUseKeyboardFocusShortcut={ ! blockToolbarCanBeFocused }\n\t\t\tvariant=\"unstyled\"\n\t\t>\n\t\t\t<div className=\"editor-document-tools__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=\"editor-document-tools__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={ toggleInserter }\n\t\t\t\t\tdisabled={ disableBlockTools }\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\taria-expanded={ isInserterOpened }\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 && ! hasFixedToolbar && (\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={ disableBlockTools }\n\t\t\t\t\t\t\t\tsize=\"compact\"\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\tsize=\"compact\"\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\tsize=\"compact\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ ! isDistractionFree && (\n\t\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\t\tas={ Button }\n\t\t\t\t\t\t\t\tclassName=\"editor-document-tools__document-overview-toggle\"\n\t\t\t\t\t\t\t\ticon={ listView }\n\t\t\t\t\t\t\t\tdisabled={ disableBlockTools }\n\t\t\t\t\t\t\t\tisPressed={ isListViewOpen }\n\t\t\t\t\t\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\t\t\t\t\t\tlabel={ listViewLabel }\n\t\t\t\t\t\t\t\tonClick={ toggleListView }\n\t\t\t\t\t\t\t\tshortcut={ listViewShortcut }\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\taria-expanded={ isListViewOpen }\n\t\t\t\t\t\t\t\tref={ listViewToggleRef }\n\t\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t\t{ children }\n\t\t\t</div>\n\t\t</NavigableToolbar>\n\t);\n}\n\nexport default DocumentTools;\n"],"mappings":"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"}
|
|
@@ -3,11 +3,12 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { Platform, useMemo, useCallback } from '@wordpress/element';
|
|
5
5
|
import { useDispatch, useSelect } from '@wordpress/data';
|
|
6
|
-
import { store as coreStore, __experimentalFetchLinkSuggestions as fetchLinkSuggestions, __experimentalFetchUrlData as fetchUrlData
|
|
6
|
+
import { store as coreStore, __experimentalFetchLinkSuggestions as fetchLinkSuggestions, __experimentalFetchUrlData as fetchUrlData } from '@wordpress/core-data';
|
|
7
7
|
import { __ } from '@wordpress/i18n';
|
|
8
8
|
import { store as preferencesStore } from '@wordpress/preferences';
|
|
9
9
|
import { useViewportMatch } from '@wordpress/compose';
|
|
10
10
|
import { store as blocksStore } from '@wordpress/blocks';
|
|
11
|
+
import { privateApis } from '@wordpress/block-editor';
|
|
11
12
|
|
|
12
13
|
/**
|
|
13
14
|
* Internal dependencies
|
|
@@ -15,6 +16,7 @@ import { store as blocksStore } from '@wordpress/blocks';
|
|
|
15
16
|
import inserterMediaCategories from '../media-categories';
|
|
16
17
|
import { mediaUpload } from '../../utils';
|
|
17
18
|
import { store as editorStore } from '../../store';
|
|
19
|
+
import { unlock } from '../../lock-unlock';
|
|
18
20
|
const EMPTY_BLOCKS_LIST = [];
|
|
19
21
|
const BLOCK_EDITOR_SETTINGS = ['__experimentalBlockDirectory', '__experimentalDiscussionSettings', '__experimentalFeatures', '__experimentalGlobalStylesBaseStyles', '__experimentalPreferredStyleVariations', '__unstableGalleryWithImageBlocks', 'alignWide', 'blockInspectorTabs', 'allowedMimeTypes', 'bodyPlaceholder', 'canLockBlocks', 'capabilities', 'clearBlockSelection', 'codeEditingEnabled', 'colors', 'disableCustomColors', 'disableCustomFontSizes', 'disableCustomSpacingSizes', 'disableCustomGradients', 'disableLayoutStyles', 'enableCustomLineHeight', 'enableCustomSpacing', 'enableCustomUnits', 'enableOpenverseMediaCategory', 'fontSizes', 'gradients', 'generateAnchors', 'onNavigateToEntityRecord', 'hasInlineToolbar', 'imageDefaultSize', 'imageDimensions', 'imageEditing', 'imageSizes', 'isRTL', 'locale', 'maxWidth', 'onUpdateDefaultBlockStyles', 'postContentAttributes', 'postsPerPage', 'readOnly', 'styles', 'titlePlaceholder', 'supportsLayout', 'widgetTypesToHideFromLegacyWidgetBlock', '__unstableHasCustomAppender', '__unstableIsPreviewMode', '__unstableResolvedAssets', '__unstableIsBlockBasedTheme', '__experimentalArchiveTitleTypeLabel', '__experimentalArchiveTitleNameLabel'];
|
|
20
22
|
|
|
@@ -145,13 +147,7 @@ function useBlockEditorSettings(settings, postType, postId) {
|
|
|
145
147
|
keepCaretInsideBlock,
|
|
146
148
|
mediaUpload: hasUploadPermissions ? mediaUpload : undefined,
|
|
147
149
|
__experimentalBlockPatterns: blockPatterns,
|
|
148
|
-
|
|
149
|
-
return (await fetchBlockPatterns()).filter(({
|
|
150
|
-
postTypes
|
|
151
|
-
}) => {
|
|
152
|
-
return !postTypes || Array.isArray(postTypes) && postTypes.includes(postType);
|
|
153
|
-
});
|
|
154
|
-
},
|
|
150
|
+
[unlock(privateApis).selectBlockPatternsKey]: select => unlock(select(coreStore)).getBlockPatternsForPostType(postType),
|
|
155
151
|
__experimentalReusableBlocks: reusableBlocks,
|
|
156
152
|
__experimentalBlockPatternCategories: blockPatternCategories,
|
|
157
153
|
__experimentalUserPatternCategories: userPatternCategories,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Platform","useMemo","useCallback","useDispatch","useSelect","store","coreStore","__experimentalFetchLinkSuggestions","fetchLinkSuggestions","__experimentalFetchUrlData","fetchUrlData","fetchBlockPatterns","__","preferencesStore","useViewportMatch","blocksStore","inserterMediaCategories","mediaUpload","editorStore","EMPTY_BLOCKS_LIST","BLOCK_EDITOR_SETTINGS","useBlockEditorSettings","settings","postType","postId","_settings$__experimen","_settings$__experimen2","isLargeViewport","allowRightClickOverrides","blockTypes","focusMode","hasFixedToolbar","isDistractionFree","keepCaretInsideBlock","reusableBlocks","hasUploadPermissions","hiddenBlockTypes","canUseUnfilteredHTML","userCanCreatePages","pageOnFront","pageForPosts","userPatternCategories","restBlockPatternCategories","select","_canUser","isWeb","OS","canUser","getRawEntityRecord","getEntityRecord","getUserPatternCategories","getEntityRecords","getBlockPatternCategories","get","getBlockTypes","siteSettings","undefined","_links","hasOwnProperty","per_page","page_on_front","page_for_posts","settingsBlockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","settingsBlockPatternCategories","__experimentalAdditionalBlockPatternCategories","__experimentalBlockPatternCategories","blockPatterns","filter","postTypes","Array","isArray","includes","blockPatternCategories","x","index","arr","findIndex","y","name","undo","setIsInserterOpened","saveEntityRecord","createPageEntity","options","Promise","reject","message","allowedBlockTypes","length","defaultAllowedBlockTypes","map","type","forceDisableFocusMode","Object","fromEntries","entries","key","__experimentalFetchBlockPatterns","__experimentalReusableBlocks","__experimentalUserPatternCategories","search","searchOptions","__experimentalFetchRichUrlData","__experimentalCanUserUseUnfilteredHTML","__experimentalUndo","outlineMode","__experimentalCreatePageEntity","__experimentalUserCanCreatePages","__experimentalPreferPatternsOnRoot","templateLock","template","__experimentalSetIsInserterOpened"],"sources":["@wordpress/editor/src/components/provider/use-block-editor-settings.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Platform, useMemo, useCallback } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tstore as coreStore,\n\t__experimentalFetchLinkSuggestions as fetchLinkSuggestions,\n\t__experimentalFetchUrlData as fetchUrlData,\n\tfetchBlockPatterns,\n} from '@wordpress/core-data';\nimport { __ } from '@wordpress/i18n';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { store as blocksStore } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport inserterMediaCategories from '../media-categories';\nimport { mediaUpload } from '../../utils';\nimport { store as editorStore } from '../../store';\n\nconst EMPTY_BLOCKS_LIST = [];\n\nconst BLOCK_EDITOR_SETTINGS = [\n\t'__experimentalBlockDirectory',\n\t'__experimentalDiscussionSettings',\n\t'__experimentalFeatures',\n\t'__experimentalGlobalStylesBaseStyles',\n\t'__experimentalPreferredStyleVariations',\n\t'__unstableGalleryWithImageBlocks',\n\t'alignWide',\n\t'blockInspectorTabs',\n\t'allowedMimeTypes',\n\t'bodyPlaceholder',\n\t'canLockBlocks',\n\t'capabilities',\n\t'clearBlockSelection',\n\t'codeEditingEnabled',\n\t'colors',\n\t'disableCustomColors',\n\t'disableCustomFontSizes',\n\t'disableCustomSpacingSizes',\n\t'disableCustomGradients',\n\t'disableLayoutStyles',\n\t'enableCustomLineHeight',\n\t'enableCustomSpacing',\n\t'enableCustomUnits',\n\t'enableOpenverseMediaCategory',\n\t'fontSizes',\n\t'gradients',\n\t'generateAnchors',\n\t'onNavigateToEntityRecord',\n\t'hasInlineToolbar',\n\t'imageDefaultSize',\n\t'imageDimensions',\n\t'imageEditing',\n\t'imageSizes',\n\t'isRTL',\n\t'locale',\n\t'maxWidth',\n\t'onUpdateDefaultBlockStyles',\n\t'postContentAttributes',\n\t'postsPerPage',\n\t'readOnly',\n\t'styles',\n\t'titlePlaceholder',\n\t'supportsLayout',\n\t'widgetTypesToHideFromLegacyWidgetBlock',\n\t'__unstableHasCustomAppender',\n\t'__unstableIsPreviewMode',\n\t'__unstableResolvedAssets',\n\t'__unstableIsBlockBasedTheme',\n\t'__experimentalArchiveTitleTypeLabel',\n\t'__experimentalArchiveTitleNameLabel',\n];\n\n/**\n * React hook used to compute the block editor settings to use for the post editor.\n *\n * @param {Object} settings EditorProvider settings prop.\n * @param {string} postType Editor root level post type.\n * @param {string} postId Editor root level post ID.\n *\n * @return {Object} Block Editor Settings.\n */\nfunction useBlockEditorSettings( settings, postType, postId ) {\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst {\n\t\tallowRightClickOverrides,\n\t\tblockTypes,\n\t\tfocusMode,\n\t\thasFixedToolbar,\n\t\tisDistractionFree,\n\t\tkeepCaretInsideBlock,\n\t\treusableBlocks,\n\t\thasUploadPermissions,\n\t\thiddenBlockTypes,\n\t\tcanUseUnfilteredHTML,\n\t\tuserCanCreatePages,\n\t\tpageOnFront,\n\t\tpageForPosts,\n\t\tuserPatternCategories,\n\t\trestBlockPatternCategories,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst isWeb = Platform.OS === 'web';\n\t\t\tconst {\n\t\t\t\tcanUser,\n\t\t\t\tgetRawEntityRecord,\n\t\t\t\tgetEntityRecord,\n\t\t\t\tgetUserPatternCategories,\n\t\t\t\tgetEntityRecords,\n\t\t\t\tgetBlockPatternCategories,\n\t\t\t} = select( coreStore );\n\t\t\tconst { get } = select( preferencesStore );\n\t\t\tconst { getBlockTypes } = select( blocksStore );\n\t\t\tconst siteSettings = canUser( 'read', 'settings' )\n\t\t\t\t? getEntityRecord( 'root', 'site' )\n\t\t\t\t: undefined;\n\n\t\t\treturn {\n\t\t\t\tallowRightClickOverrides: get(\n\t\t\t\t\t'core',\n\t\t\t\t\t'allowRightClickOverrides'\n\t\t\t\t),\n\t\t\t\tblockTypes: getBlockTypes(),\n\t\t\t\tcanUseUnfilteredHTML: getRawEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostType,\n\t\t\t\t\tpostId\n\t\t\t\t)?._links?.hasOwnProperty( 'wp:action-unfiltered-html' ),\n\t\t\t\tfocusMode: get( 'core', 'focusMode' ),\n\t\t\t\thasFixedToolbar:\n\t\t\t\t\tget( 'core', 'fixedToolbar' ) || ! isLargeViewport,\n\t\t\t\thiddenBlockTypes: get( 'core', 'hiddenBlockTypes' ),\n\t\t\t\tisDistractionFree: get( 'core', 'distractionFree' ),\n\t\t\t\tkeepCaretInsideBlock: get( 'core', 'keepCaretInsideBlock' ),\n\t\t\t\treusableBlocks: isWeb\n\t\t\t\t\t? getEntityRecords( 'postType', 'wp_block', {\n\t\t\t\t\t\t\tper_page: -1,\n\t\t\t\t\t } )\n\t\t\t\t\t: EMPTY_BLOCKS_LIST, // Reusable blocks are fetched in the native version of this hook.\n\t\t\t\thasUploadPermissions: canUser( 'create', 'media' ) ?? true,\n\t\t\t\tuserCanCreatePages: canUser( 'create', 'pages' ),\n\t\t\t\tpageOnFront: siteSettings?.page_on_front,\n\t\t\t\tpageForPosts: siteSettings?.page_for_posts,\n\t\t\t\tuserPatternCategories: getUserPatternCategories(),\n\t\t\t\trestBlockPatternCategories: getBlockPatternCategories(),\n\t\t\t};\n\t\t},\n\t\t[ postType, postId, isLargeViewport ]\n\t);\n\n\tconst settingsBlockPatterns =\n\t\tsettings.__experimentalAdditionalBlockPatterns ?? // WP 6.0\n\t\tsettings.__experimentalBlockPatterns; // WP 5.9\n\tconst settingsBlockPatternCategories =\n\t\tsettings.__experimentalAdditionalBlockPatternCategories ?? // WP 6.0\n\t\tsettings.__experimentalBlockPatternCategories; // WP 5.9\n\n\tconst blockPatterns = useMemo(\n\t\t() =>\n\t\t\t[ ...( settingsBlockPatterns || [] ) ].filter(\n\t\t\t\t( { postTypes } ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t! postTypes ||\n\t\t\t\t\t\t( Array.isArray( postTypes ) &&\n\t\t\t\t\t\t\tpostTypes.includes( postType ) )\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t),\n\t\t[ settingsBlockPatterns, postType ]\n\t);\n\n\tconst blockPatternCategories = useMemo(\n\t\t() =>\n\t\t\t[\n\t\t\t\t...( settingsBlockPatternCategories || [] ),\n\t\t\t\t...( restBlockPatternCategories || [] ),\n\t\t\t].filter(\n\t\t\t\t( x, index, arr ) =>\n\t\t\t\t\tindex === arr.findIndex( ( y ) => x.name === y.name )\n\t\t\t),\n\t\t[ settingsBlockPatternCategories, restBlockPatternCategories ]\n\t);\n\n\tconst { undo, setIsInserterOpened } = useDispatch( editorStore );\n\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\n\t/**\n\t * Creates a Post entity.\n\t * This is utilised by the Link UI to allow for on-the-fly creation of Posts/Pages.\n\t *\n\t * @param {Object} options parameters for the post being created. These mirror those used on 3rd param of saveEntityRecord.\n\t * @return {Object} the post type object that was created.\n\t */\n\tconst createPageEntity = useCallback(\n\t\t( options ) => {\n\t\t\tif ( ! userCanCreatePages ) {\n\t\t\t\treturn Promise.reject( {\n\t\t\t\t\tmessage: __(\n\t\t\t\t\t\t'You do not have permission to create Pages.'\n\t\t\t\t\t),\n\t\t\t\t} );\n\t\t\t}\n\t\t\treturn saveEntityRecord( 'postType', 'page', options );\n\t\t},\n\t\t[ saveEntityRecord, userCanCreatePages ]\n\t);\n\n\tconst allowedBlockTypes = useMemo( () => {\n\t\t// Omit hidden block types if exists and non-empty.\n\t\tif ( hiddenBlockTypes && hiddenBlockTypes.length > 0 ) {\n\t\t\t// Defer to passed setting for `allowedBlockTypes` if provided as\n\t\t\t// anything other than `true` (where `true` is equivalent to allow\n\t\t\t// all block types).\n\t\t\tconst defaultAllowedBlockTypes =\n\t\t\t\ttrue === settings.allowedBlockTypes\n\t\t\t\t\t? blockTypes.map( ( { name } ) => name )\n\t\t\t\t\t: settings.allowedBlockTypes || [];\n\n\t\t\treturn defaultAllowedBlockTypes.filter(\n\t\t\t\t( type ) => ! hiddenBlockTypes.includes( type )\n\t\t\t);\n\t\t}\n\n\t\treturn settings.allowedBlockTypes;\n\t}, [ settings.allowedBlockTypes, hiddenBlockTypes, blockTypes ] );\n\n\tconst forceDisableFocusMode = settings.focusMode === false;\n\n\treturn useMemo(\n\t\t() => ( {\n\t\t\t...Object.fromEntries(\n\t\t\t\tObject.entries( settings ).filter( ( [ key ] ) =>\n\t\t\t\t\tBLOCK_EDITOR_SETTINGS.includes( key )\n\t\t\t\t)\n\t\t\t),\n\t\t\tallowedBlockTypes,\n\t\t\tallowRightClickOverrides,\n\t\t\tfocusMode: focusMode && ! forceDisableFocusMode,\n\t\t\thasFixedToolbar,\n\t\t\tisDistractionFree,\n\t\t\tkeepCaretInsideBlock,\n\t\t\tmediaUpload: hasUploadPermissions ? mediaUpload : undefined,\n\t\t\t__experimentalBlockPatterns: blockPatterns,\n\t\t\t__experimentalFetchBlockPatterns: async () => {\n\t\t\t\treturn ( await fetchBlockPatterns() ).filter(\n\t\t\t\t\t( { postTypes } ) => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t! postTypes ||\n\t\t\t\t\t\t\t( Array.isArray( postTypes ) &&\n\t\t\t\t\t\t\t\tpostTypes.includes( postType ) )\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t},\n\t\t\t__experimentalReusableBlocks: reusableBlocks,\n\t\t\t__experimentalBlockPatternCategories: blockPatternCategories,\n\t\t\t__experimentalUserPatternCategories: userPatternCategories,\n\t\t\t__experimentalFetchLinkSuggestions: ( search, searchOptions ) =>\n\t\t\t\tfetchLinkSuggestions( search, searchOptions, settings ),\n\t\t\tinserterMediaCategories,\n\t\t\t__experimentalFetchRichUrlData: fetchUrlData,\n\t\t\t// Todo: This only checks the top level post, not the post within a template or any other entity that can be edited.\n\t\t\t// This might be better as a generic \"canUser\" selector.\n\t\t\t__experimentalCanUserUseUnfilteredHTML: canUseUnfilteredHTML,\n\t\t\t//Todo: this is only needed for native and should probably be removed.\n\t\t\t__experimentalUndo: undo,\n\t\t\t// Check whether we want all site editor frames to have outlines\n\t\t\t// including the navigation / pattern / parts editors.\n\t\t\toutlineMode: postType === 'wp_template',\n\t\t\t// Check these two properties: they were not present in the site editor.\n\t\t\t__experimentalCreatePageEntity: createPageEntity,\n\t\t\t__experimentalUserCanCreatePages: userCanCreatePages,\n\t\t\tpageOnFront,\n\t\t\tpageForPosts,\n\t\t\t__experimentalPreferPatternsOnRoot: postType === 'wp_template',\n\t\t\ttemplateLock:\n\t\t\t\tpostType === 'wp_navigation' ? 'insert' : settings.templateLock,\n\t\t\ttemplate:\n\t\t\t\tpostType === 'wp_navigation'\n\t\t\t\t\t? [ [ 'core/navigation', {}, [] ] ]\n\t\t\t\t\t: settings.template,\n\t\t\t__experimentalSetIsInserterOpened: setIsInserterOpened,\n\t\t} ),\n\t\t[\n\t\t\tallowedBlockTypes,\n\t\t\tallowRightClickOverrides,\n\t\t\tfocusMode,\n\t\t\tforceDisableFocusMode,\n\t\t\thasFixedToolbar,\n\t\t\tisDistractionFree,\n\t\t\tkeepCaretInsideBlock,\n\t\t\tsettings,\n\t\t\thasUploadPermissions,\n\t\t\treusableBlocks,\n\t\t\tuserPatternCategories,\n\t\t\tblockPatterns,\n\t\t\tblockPatternCategories,\n\t\t\tcanUseUnfilteredHTML,\n\t\t\tundo,\n\t\t\tcreatePageEntity,\n\t\t\tuserCanCreatePages,\n\t\t\tpageOnFront,\n\t\t\tpageForPosts,\n\t\t\tpostType,\n\t\t\tsetIsInserterOpened,\n\t\t]\n\t);\n}\n\nexport default useBlockEditorSettings;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["Platform","useMemo","useCallback","useDispatch","useSelect","store","coreStore","__experimentalFetchLinkSuggestions","fetchLinkSuggestions","__experimentalFetchUrlData","fetchUrlData","__","preferencesStore","useViewportMatch","blocksStore","privateApis","inserterMediaCategories","mediaUpload","editorStore","unlock","EMPTY_BLOCKS_LIST","BLOCK_EDITOR_SETTINGS","useBlockEditorSettings","settings","postType","postId","_settings$__experimen","_settings$__experimen2","isLargeViewport","allowRightClickOverrides","blockTypes","focusMode","hasFixedToolbar","isDistractionFree","keepCaretInsideBlock","reusableBlocks","hasUploadPermissions","hiddenBlockTypes","canUseUnfilteredHTML","userCanCreatePages","pageOnFront","pageForPosts","userPatternCategories","restBlockPatternCategories","select","_canUser","isWeb","OS","canUser","getRawEntityRecord","getEntityRecord","getUserPatternCategories","getEntityRecords","getBlockPatternCategories","get","getBlockTypes","siteSettings","undefined","_links","hasOwnProperty","per_page","page_on_front","page_for_posts","settingsBlockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","settingsBlockPatternCategories","__experimentalAdditionalBlockPatternCategories","__experimentalBlockPatternCategories","blockPatterns","filter","postTypes","Array","isArray","includes","blockPatternCategories","x","index","arr","findIndex","y","name","undo","setIsInserterOpened","saveEntityRecord","createPageEntity","options","Promise","reject","message","allowedBlockTypes","length","defaultAllowedBlockTypes","map","type","forceDisableFocusMode","Object","fromEntries","entries","key","selectBlockPatternsKey","getBlockPatternsForPostType","__experimentalReusableBlocks","__experimentalUserPatternCategories","search","searchOptions","__experimentalFetchRichUrlData","__experimentalCanUserUseUnfilteredHTML","__experimentalUndo","outlineMode","__experimentalCreatePageEntity","__experimentalUserCanCreatePages","__experimentalPreferPatternsOnRoot","templateLock","template","__experimentalSetIsInserterOpened"],"sources":["@wordpress/editor/src/components/provider/use-block-editor-settings.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Platform, useMemo, useCallback } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tstore as coreStore,\n\t__experimentalFetchLinkSuggestions as fetchLinkSuggestions,\n\t__experimentalFetchUrlData as fetchUrlData,\n} from '@wordpress/core-data';\nimport { __ } from '@wordpress/i18n';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { store as blocksStore } from '@wordpress/blocks';\nimport { privateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport inserterMediaCategories from '../media-categories';\nimport { mediaUpload } from '../../utils';\nimport { store as editorStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\n\nconst EMPTY_BLOCKS_LIST = [];\n\nconst BLOCK_EDITOR_SETTINGS = [\n\t'__experimentalBlockDirectory',\n\t'__experimentalDiscussionSettings',\n\t'__experimentalFeatures',\n\t'__experimentalGlobalStylesBaseStyles',\n\t'__experimentalPreferredStyleVariations',\n\t'__unstableGalleryWithImageBlocks',\n\t'alignWide',\n\t'blockInspectorTabs',\n\t'allowedMimeTypes',\n\t'bodyPlaceholder',\n\t'canLockBlocks',\n\t'capabilities',\n\t'clearBlockSelection',\n\t'codeEditingEnabled',\n\t'colors',\n\t'disableCustomColors',\n\t'disableCustomFontSizes',\n\t'disableCustomSpacingSizes',\n\t'disableCustomGradients',\n\t'disableLayoutStyles',\n\t'enableCustomLineHeight',\n\t'enableCustomSpacing',\n\t'enableCustomUnits',\n\t'enableOpenverseMediaCategory',\n\t'fontSizes',\n\t'gradients',\n\t'generateAnchors',\n\t'onNavigateToEntityRecord',\n\t'hasInlineToolbar',\n\t'imageDefaultSize',\n\t'imageDimensions',\n\t'imageEditing',\n\t'imageSizes',\n\t'isRTL',\n\t'locale',\n\t'maxWidth',\n\t'onUpdateDefaultBlockStyles',\n\t'postContentAttributes',\n\t'postsPerPage',\n\t'readOnly',\n\t'styles',\n\t'titlePlaceholder',\n\t'supportsLayout',\n\t'widgetTypesToHideFromLegacyWidgetBlock',\n\t'__unstableHasCustomAppender',\n\t'__unstableIsPreviewMode',\n\t'__unstableResolvedAssets',\n\t'__unstableIsBlockBasedTheme',\n\t'__experimentalArchiveTitleTypeLabel',\n\t'__experimentalArchiveTitleNameLabel',\n];\n\n/**\n * React hook used to compute the block editor settings to use for the post editor.\n *\n * @param {Object} settings EditorProvider settings prop.\n * @param {string} postType Editor root level post type.\n * @param {string} postId Editor root level post ID.\n *\n * @return {Object} Block Editor Settings.\n */\nfunction useBlockEditorSettings( settings, postType, postId ) {\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst {\n\t\tallowRightClickOverrides,\n\t\tblockTypes,\n\t\tfocusMode,\n\t\thasFixedToolbar,\n\t\tisDistractionFree,\n\t\tkeepCaretInsideBlock,\n\t\treusableBlocks,\n\t\thasUploadPermissions,\n\t\thiddenBlockTypes,\n\t\tcanUseUnfilteredHTML,\n\t\tuserCanCreatePages,\n\t\tpageOnFront,\n\t\tpageForPosts,\n\t\tuserPatternCategories,\n\t\trestBlockPatternCategories,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst isWeb = Platform.OS === 'web';\n\t\t\tconst {\n\t\t\t\tcanUser,\n\t\t\t\tgetRawEntityRecord,\n\t\t\t\tgetEntityRecord,\n\t\t\t\tgetUserPatternCategories,\n\t\t\t\tgetEntityRecords,\n\t\t\t\tgetBlockPatternCategories,\n\t\t\t} = select( coreStore );\n\t\t\tconst { get } = select( preferencesStore );\n\t\t\tconst { getBlockTypes } = select( blocksStore );\n\t\t\tconst siteSettings = canUser( 'read', 'settings' )\n\t\t\t\t? getEntityRecord( 'root', 'site' )\n\t\t\t\t: undefined;\n\n\t\t\treturn {\n\t\t\t\tallowRightClickOverrides: get(\n\t\t\t\t\t'core',\n\t\t\t\t\t'allowRightClickOverrides'\n\t\t\t\t),\n\t\t\t\tblockTypes: getBlockTypes(),\n\t\t\t\tcanUseUnfilteredHTML: getRawEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostType,\n\t\t\t\t\tpostId\n\t\t\t\t)?._links?.hasOwnProperty( 'wp:action-unfiltered-html' ),\n\t\t\t\tfocusMode: get( 'core', 'focusMode' ),\n\t\t\t\thasFixedToolbar:\n\t\t\t\t\tget( 'core', 'fixedToolbar' ) || ! isLargeViewport,\n\t\t\t\thiddenBlockTypes: get( 'core', 'hiddenBlockTypes' ),\n\t\t\t\tisDistractionFree: get( 'core', 'distractionFree' ),\n\t\t\t\tkeepCaretInsideBlock: get( 'core', 'keepCaretInsideBlock' ),\n\t\t\t\treusableBlocks: isWeb\n\t\t\t\t\t? getEntityRecords( 'postType', 'wp_block', {\n\t\t\t\t\t\t\tper_page: -1,\n\t\t\t\t\t } )\n\t\t\t\t\t: EMPTY_BLOCKS_LIST, // Reusable blocks are fetched in the native version of this hook.\n\t\t\t\thasUploadPermissions: canUser( 'create', 'media' ) ?? true,\n\t\t\t\tuserCanCreatePages: canUser( 'create', 'pages' ),\n\t\t\t\tpageOnFront: siteSettings?.page_on_front,\n\t\t\t\tpageForPosts: siteSettings?.page_for_posts,\n\t\t\t\tuserPatternCategories: getUserPatternCategories(),\n\t\t\t\trestBlockPatternCategories: getBlockPatternCategories(),\n\t\t\t};\n\t\t},\n\t\t[ postType, postId, isLargeViewport ]\n\t);\n\n\tconst settingsBlockPatterns =\n\t\tsettings.__experimentalAdditionalBlockPatterns ?? // WP 6.0\n\t\tsettings.__experimentalBlockPatterns; // WP 5.9\n\tconst settingsBlockPatternCategories =\n\t\tsettings.__experimentalAdditionalBlockPatternCategories ?? // WP 6.0\n\t\tsettings.__experimentalBlockPatternCategories; // WP 5.9\n\n\tconst blockPatterns = useMemo(\n\t\t() =>\n\t\t\t[ ...( settingsBlockPatterns || [] ) ].filter(\n\t\t\t\t( { postTypes } ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t! postTypes ||\n\t\t\t\t\t\t( Array.isArray( postTypes ) &&\n\t\t\t\t\t\t\tpostTypes.includes( postType ) )\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t),\n\t\t[ settingsBlockPatterns, postType ]\n\t);\n\n\tconst blockPatternCategories = useMemo(\n\t\t() =>\n\t\t\t[\n\t\t\t\t...( settingsBlockPatternCategories || [] ),\n\t\t\t\t...( restBlockPatternCategories || [] ),\n\t\t\t].filter(\n\t\t\t\t( x, index, arr ) =>\n\t\t\t\t\tindex === arr.findIndex( ( y ) => x.name === y.name )\n\t\t\t),\n\t\t[ settingsBlockPatternCategories, restBlockPatternCategories ]\n\t);\n\n\tconst { undo, setIsInserterOpened } = useDispatch( editorStore );\n\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\n\t/**\n\t * Creates a Post entity.\n\t * This is utilised by the Link UI to allow for on-the-fly creation of Posts/Pages.\n\t *\n\t * @param {Object} options parameters for the post being created. These mirror those used on 3rd param of saveEntityRecord.\n\t * @return {Object} the post type object that was created.\n\t */\n\tconst createPageEntity = useCallback(\n\t\t( options ) => {\n\t\t\tif ( ! userCanCreatePages ) {\n\t\t\t\treturn Promise.reject( {\n\t\t\t\t\tmessage: __(\n\t\t\t\t\t\t'You do not have permission to create Pages.'\n\t\t\t\t\t),\n\t\t\t\t} );\n\t\t\t}\n\t\t\treturn saveEntityRecord( 'postType', 'page', options );\n\t\t},\n\t\t[ saveEntityRecord, userCanCreatePages ]\n\t);\n\n\tconst allowedBlockTypes = useMemo( () => {\n\t\t// Omit hidden block types if exists and non-empty.\n\t\tif ( hiddenBlockTypes && hiddenBlockTypes.length > 0 ) {\n\t\t\t// Defer to passed setting for `allowedBlockTypes` if provided as\n\t\t\t// anything other than `true` (where `true` is equivalent to allow\n\t\t\t// all block types).\n\t\t\tconst defaultAllowedBlockTypes =\n\t\t\t\ttrue === settings.allowedBlockTypes\n\t\t\t\t\t? blockTypes.map( ( { name } ) => name )\n\t\t\t\t\t: settings.allowedBlockTypes || [];\n\n\t\t\treturn defaultAllowedBlockTypes.filter(\n\t\t\t\t( type ) => ! hiddenBlockTypes.includes( type )\n\t\t\t);\n\t\t}\n\n\t\treturn settings.allowedBlockTypes;\n\t}, [ settings.allowedBlockTypes, hiddenBlockTypes, blockTypes ] );\n\n\tconst forceDisableFocusMode = settings.focusMode === false;\n\n\treturn useMemo(\n\t\t() => ( {\n\t\t\t...Object.fromEntries(\n\t\t\t\tObject.entries( settings ).filter( ( [ key ] ) =>\n\t\t\t\t\tBLOCK_EDITOR_SETTINGS.includes( key )\n\t\t\t\t)\n\t\t\t),\n\t\t\tallowedBlockTypes,\n\t\t\tallowRightClickOverrides,\n\t\t\tfocusMode: focusMode && ! forceDisableFocusMode,\n\t\t\thasFixedToolbar,\n\t\t\tisDistractionFree,\n\t\t\tkeepCaretInsideBlock,\n\t\t\tmediaUpload: hasUploadPermissions ? mediaUpload : undefined,\n\t\t\t__experimentalBlockPatterns: blockPatterns,\n\t\t\t[ unlock( privateApis ).selectBlockPatternsKey ]: ( select ) =>\n\t\t\t\tunlock( select( coreStore ) ).getBlockPatternsForPostType(\n\t\t\t\t\tpostType\n\t\t\t\t),\n\t\t\t__experimentalReusableBlocks: reusableBlocks,\n\t\t\t__experimentalBlockPatternCategories: blockPatternCategories,\n\t\t\t__experimentalUserPatternCategories: userPatternCategories,\n\t\t\t__experimentalFetchLinkSuggestions: ( search, searchOptions ) =>\n\t\t\t\tfetchLinkSuggestions( search, searchOptions, settings ),\n\t\t\tinserterMediaCategories,\n\t\t\t__experimentalFetchRichUrlData: fetchUrlData,\n\t\t\t// Todo: This only checks the top level post, not the post within a template or any other entity that can be edited.\n\t\t\t// This might be better as a generic \"canUser\" selector.\n\t\t\t__experimentalCanUserUseUnfilteredHTML: canUseUnfilteredHTML,\n\t\t\t//Todo: this is only needed for native and should probably be removed.\n\t\t\t__experimentalUndo: undo,\n\t\t\t// Check whether we want all site editor frames to have outlines\n\t\t\t// including the navigation / pattern / parts editors.\n\t\t\toutlineMode: postType === 'wp_template',\n\t\t\t// Check these two properties: they were not present in the site editor.\n\t\t\t__experimentalCreatePageEntity: createPageEntity,\n\t\t\t__experimentalUserCanCreatePages: userCanCreatePages,\n\t\t\tpageOnFront,\n\t\t\tpageForPosts,\n\t\t\t__experimentalPreferPatternsOnRoot: postType === 'wp_template',\n\t\t\ttemplateLock:\n\t\t\t\tpostType === 'wp_navigation' ? 'insert' : settings.templateLock,\n\t\t\ttemplate:\n\t\t\t\tpostType === 'wp_navigation'\n\t\t\t\t\t? [ [ 'core/navigation', {}, [] ] ]\n\t\t\t\t\t: settings.template,\n\t\t\t__experimentalSetIsInserterOpened: setIsInserterOpened,\n\t\t} ),\n\t\t[\n\t\t\tallowedBlockTypes,\n\t\t\tallowRightClickOverrides,\n\t\t\tfocusMode,\n\t\t\tforceDisableFocusMode,\n\t\t\thasFixedToolbar,\n\t\t\tisDistractionFree,\n\t\t\tkeepCaretInsideBlock,\n\t\t\tsettings,\n\t\t\thasUploadPermissions,\n\t\t\treusableBlocks,\n\t\t\tuserPatternCategories,\n\t\t\tblockPatterns,\n\t\t\tblockPatternCategories,\n\t\t\tcanUseUnfilteredHTML,\n\t\t\tundo,\n\t\t\tcreatePageEntity,\n\t\t\tuserCanCreatePages,\n\t\t\tpageOnFront,\n\t\t\tpageForPosts,\n\t\t\tpostType,\n\t\t\tsetIsInserterOpened,\n\t\t]\n\t);\n}\n\nexport default useBlockEditorSettings;\n"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wordpress/editor",
|
|
3
|
-
"version": "13.28.
|
|
3
|
+
"version": "13.28.3",
|
|
4
4
|
"description": "Enhanced block editor for WordPress posts.",
|
|
5
5
|
"author": "The WordPress Contributors",
|
|
6
6
|
"license": "GPL-2.0-or-later",
|
|
@@ -34,12 +34,12 @@
|
|
|
34
34
|
"@wordpress/a11y": "^3.51.1",
|
|
35
35
|
"@wordpress/api-fetch": "^6.48.1",
|
|
36
36
|
"@wordpress/blob": "^3.51.1",
|
|
37
|
-
"@wordpress/block-editor": "^12.19.
|
|
38
|
-
"@wordpress/blocks": "^12.28.
|
|
37
|
+
"@wordpress/block-editor": "^12.19.3",
|
|
38
|
+
"@wordpress/blocks": "^12.28.3",
|
|
39
39
|
"@wordpress/commands": "^0.22.2",
|
|
40
40
|
"@wordpress/components": "^26.0.2",
|
|
41
41
|
"@wordpress/compose": "^6.28.1",
|
|
42
|
-
"@wordpress/core-data": "^6.28.
|
|
42
|
+
"@wordpress/core-data": "^6.28.3",
|
|
43
43
|
"@wordpress/data": "^9.21.1",
|
|
44
44
|
"@wordpress/date": "^4.51.1",
|
|
45
45
|
"@wordpress/deprecated": "^3.51.1",
|
|
@@ -53,12 +53,12 @@
|
|
|
53
53
|
"@wordpress/keycodes": "^3.51.1",
|
|
54
54
|
"@wordpress/media-utils": "^4.42.1",
|
|
55
55
|
"@wordpress/notices": "^4.19.1",
|
|
56
|
-
"@wordpress/patterns": "^1.12.
|
|
56
|
+
"@wordpress/patterns": "^1.12.3",
|
|
57
57
|
"@wordpress/preferences": "^3.28.2",
|
|
58
58
|
"@wordpress/private-apis": "^0.33.1",
|
|
59
|
-
"@wordpress/reusable-blocks": "^4.28.
|
|
59
|
+
"@wordpress/reusable-blocks": "^4.28.3",
|
|
60
60
|
"@wordpress/rich-text": "^6.28.2",
|
|
61
|
-
"@wordpress/server-side-render": "^4.28.
|
|
61
|
+
"@wordpress/server-side-render": "^4.28.3",
|
|
62
62
|
"@wordpress/url": "^3.52.1",
|
|
63
63
|
"@wordpress/wordcount": "^3.51.1",
|
|
64
64
|
"classnames": "^2.3.1",
|
|
@@ -75,5 +75,5 @@
|
|
|
75
75
|
"publishConfig": {
|
|
76
76
|
"access": "public"
|
|
77
77
|
},
|
|
78
|
-
"gitHead": "
|
|
78
|
+
"gitHead": "b12d75c5c5256fda2a0509bb432e20ddd3354d5e"
|
|
79
79
|
}
|
|
@@ -46,6 +46,7 @@ function DocumentTools( {
|
|
|
46
46
|
const { setIsInserterOpened, setIsListViewOpened } =
|
|
47
47
|
useDispatch( editorStore );
|
|
48
48
|
const {
|
|
49
|
+
isDistractionFree,
|
|
49
50
|
isInserterOpened,
|
|
50
51
|
isListViewOpen,
|
|
51
52
|
listViewShortcut,
|
|
@@ -69,6 +70,7 @@ function DocumentTools( {
|
|
|
69
70
|
listViewToggleRef: getListViewToggleRef(),
|
|
70
71
|
hasFixedToolbar: getSettings().hasFixedToolbar,
|
|
71
72
|
showIconLabels: get( 'core', 'showIconLabels' ),
|
|
73
|
+
isDistractionFree: get( 'core', 'distractionFree' ),
|
|
72
74
|
};
|
|
73
75
|
}, [] );
|
|
74
76
|
|
|
@@ -158,22 +160,26 @@ function DocumentTools( {
|
|
|
158
160
|
variant={ showIconLabels ? 'tertiary' : undefined }
|
|
159
161
|
size="compact"
|
|
160
162
|
/>
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
163
|
+
{ ! isDistractionFree && (
|
|
164
|
+
<ToolbarItem
|
|
165
|
+
as={ Button }
|
|
166
|
+
className="editor-document-tools__document-overview-toggle"
|
|
167
|
+
icon={ listView }
|
|
168
|
+
disabled={ disableBlockTools }
|
|
169
|
+
isPressed={ isListViewOpen }
|
|
170
|
+
/* translators: button label text should, if possible, be under 16 characters. */
|
|
171
|
+
label={ listViewLabel }
|
|
172
|
+
onClick={ toggleListView }
|
|
173
|
+
shortcut={ listViewShortcut }
|
|
174
|
+
showTooltip={ ! showIconLabels }
|
|
175
|
+
variant={
|
|
176
|
+
showIconLabels ? 'tertiary' : undefined
|
|
177
|
+
}
|
|
178
|
+
aria-expanded={ isListViewOpen }
|
|
179
|
+
ref={ listViewToggleRef }
|
|
180
|
+
size="compact"
|
|
181
|
+
/>
|
|
182
|
+
) }
|
|
177
183
|
</>
|
|
178
184
|
) }
|
|
179
185
|
{ children }
|
|
@@ -7,12 +7,12 @@ import {
|
|
|
7
7
|
store as coreStore,
|
|
8
8
|
__experimentalFetchLinkSuggestions as fetchLinkSuggestions,
|
|
9
9
|
__experimentalFetchUrlData as fetchUrlData,
|
|
10
|
-
fetchBlockPatterns,
|
|
11
10
|
} from '@wordpress/core-data';
|
|
12
11
|
import { __ } from '@wordpress/i18n';
|
|
13
12
|
import { store as preferencesStore } from '@wordpress/preferences';
|
|
14
13
|
import { useViewportMatch } from '@wordpress/compose';
|
|
15
14
|
import { store as blocksStore } from '@wordpress/blocks';
|
|
15
|
+
import { privateApis } from '@wordpress/block-editor';
|
|
16
16
|
|
|
17
17
|
/**
|
|
18
18
|
* Internal dependencies
|
|
@@ -20,6 +20,7 @@ import { store as blocksStore } from '@wordpress/blocks';
|
|
|
20
20
|
import inserterMediaCategories from '../media-categories';
|
|
21
21
|
import { mediaUpload } from '../../utils';
|
|
22
22
|
import { store as editorStore } from '../../store';
|
|
23
|
+
import { unlock } from '../../lock-unlock';
|
|
23
24
|
|
|
24
25
|
const EMPTY_BLOCKS_LIST = [];
|
|
25
26
|
|
|
@@ -247,17 +248,10 @@ function useBlockEditorSettings( settings, postType, postId ) {
|
|
|
247
248
|
keepCaretInsideBlock,
|
|
248
249
|
mediaUpload: hasUploadPermissions ? mediaUpload : undefined,
|
|
249
250
|
__experimentalBlockPatterns: blockPatterns,
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
! postTypes ||
|
|
255
|
-
( Array.isArray( postTypes ) &&
|
|
256
|
-
postTypes.includes( postType ) )
|
|
257
|
-
);
|
|
258
|
-
}
|
|
259
|
-
);
|
|
260
|
-
},
|
|
251
|
+
[ unlock( privateApis ).selectBlockPatternsKey ]: ( select ) =>
|
|
252
|
+
unlock( select( coreStore ) ).getBlockPatternsForPostType(
|
|
253
|
+
postType
|
|
254
|
+
),
|
|
261
255
|
__experimentalReusableBlocks: reusableBlocks,
|
|
262
256
|
__experimentalBlockPatternCategories: blockPatternCategories,
|
|
263
257
|
__experimentalUserPatternCategories: userPatternCategories,
|