@wordpress/edit-post 7.18.0 → 7.18.1-next.5a1d1283.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -10,8 +10,6 @@ var _keyboardShortcuts = require("@wordpress/keyboard-shortcuts");
10
10
  var _i18n = require("@wordpress/i18n");
11
11
  var _editor = require("@wordpress/editor");
12
12
  var _blockEditor = require("@wordpress/block-editor");
13
- var _notices = require("@wordpress/notices");
14
- var _preferences = require("@wordpress/preferences");
15
13
  var _blocks = require("@wordpress/blocks");
16
14
  var _store = require("../../store");
17
15
  /**
@@ -29,8 +27,7 @@ function KeyboardShortcuts() {
29
27
  const {
30
28
  getEditorMode,
31
29
  isEditorSidebarOpened,
32
- isListViewOpened,
33
- isFeatureActive
30
+ isListViewOpened
34
31
  } = (0, _data.useSelect)(_store.store);
35
32
  const isModeToggleDisabled = (0, _data.useSelect)(select => {
36
33
  const {
@@ -39,29 +36,17 @@ function KeyboardShortcuts() {
39
36
  } = select(_editor.store).getEditorSettings();
40
37
  return !richEditingEnabled || !codeEditingEnabled;
41
38
  }, []);
42
- const {
43
- createInfoNotice
44
- } = (0, _data.useDispatch)(_notices.store);
45
39
  const {
46
40
  switchEditorMode,
47
41
  openGeneralSidebar,
48
42
  closeGeneralSidebar,
49
43
  toggleFeature,
50
44
  setIsListViewOpened,
51
- setIsInserterOpened
45
+ toggleDistractionFree
52
46
  } = (0, _data.useDispatch)(_store.store);
53
47
  const {
54
48
  registerShortcut
55
49
  } = (0, _data.useDispatch)(_keyboardShortcuts.store);
56
- const {
57
- set: setPreference
58
- } = (0, _data.useDispatch)(_preferences.store);
59
- const toggleDistractionFree = () => {
60
- setPreference('core/edit-post', 'fixedToolbar', false);
61
- setIsInserterOpened(false);
62
- setIsListViewOpened(false);
63
- closeGeneralSidebar();
64
- };
65
50
  const {
66
51
  replaceBlocks
67
52
  } = (0, _data.useDispatch)(_blockEditor.store);
@@ -207,11 +192,6 @@ function KeyboardShortcuts() {
207
192
  });
208
193
  (0, _keyboardShortcuts.useShortcut)('core/edit-post/toggle-distraction-free', () => {
209
194
  toggleDistractionFree();
210
- toggleFeature('distractionFree');
211
- createInfoNotice(isFeatureActive('distractionFree') ? (0, _i18n.__)('Distraction free on.') : (0, _i18n.__)('Distraction free off.'), {
212
- id: 'core/edit-post/distraction-free-mode/notice',
213
- type: 'snackbar'
214
- });
215
195
  });
216
196
  (0, _keyboardShortcuts.useShortcut)('core/edit-post/toggle-sidebar', event => {
217
197
  // This shortcut has no known clashes, but use preventDefault to prevent any
@@ -226,8 +206,9 @@ function KeyboardShortcuts() {
226
206
  });
227
207
 
228
208
  // Only opens the list view. Other functionality for this shortcut happens in the rendered sidebar.
229
- (0, _keyboardShortcuts.useShortcut)('core/edit-post/toggle-list-view', () => {
209
+ (0, _keyboardShortcuts.useShortcut)('core/edit-post/toggle-list-view', event => {
230
210
  if (!isListViewOpened()) {
211
+ event.preventDefault();
231
212
  setIsListViewOpened(true);
232
213
  }
233
214
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_element","require","_data","_keyboardShortcuts","_i18n","_editor","_blockEditor","_notices","_preferences","_blocks","_store","KeyboardShortcuts","getBlockSelectionStart","useSelect","blockEditorStore","getEditorMode","isEditorSidebarOpened","isListViewOpened","isFeatureActive","editPostStore","isModeToggleDisabled","select","richEditingEnabled","codeEditingEnabled","editorStore","getEditorSettings","createInfoNotice","useDispatch","noticesStore","switchEditorMode","openGeneralSidebar","closeGeneralSidebar","toggleFeature","setIsListViewOpened","setIsInserterOpened","registerShortcut","keyboardShortcutsStore","set","setPreference","preferencesStore","toggleDistractionFree","replaceBlocks","getBlockName","getSelectedBlockClientId","getBlockAttributes","handleTextLevelShortcut","event","level","preventDefault","destinationBlockName","currentClientId","blockName","attributes","textAlign","destinationTextAlign","createBlock","content","useEffect","name","category","description","__","keyCombination","modifier","character","aliases","forEach","useShortcut","isDisabled","id","type","sidebarToOpen","_default","exports","default"],"sources":["@wordpress/edit-post/src/components/keyboard-shortcuts/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tuseShortcut,\n\tstore as keyboardShortcutsStore,\n} from '@wordpress/keyboard-shortcuts';\nimport { __ } from '@wordpress/i18n';\nimport { store as editorStore } from '@wordpress/editor';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { createBlock } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../store';\n\nfunction KeyboardShortcuts() {\n\tconst { getBlockSelectionStart } = useSelect( blockEditorStore );\n\tconst {\n\t\tgetEditorMode,\n\t\tisEditorSidebarOpened,\n\t\tisListViewOpened,\n\t\tisFeatureActive,\n\t} = useSelect( editPostStore );\n\tconst isModeToggleDisabled = useSelect( ( select ) => {\n\t\tconst { richEditingEnabled, codeEditingEnabled } =\n\t\t\tselect( editorStore ).getEditorSettings();\n\t\treturn ! richEditingEnabled || ! codeEditingEnabled;\n\t}, [] );\n\n\tconst { createInfoNotice } = useDispatch( noticesStore );\n\n\tconst {\n\t\tswitchEditorMode,\n\t\topenGeneralSidebar,\n\t\tcloseGeneralSidebar,\n\t\ttoggleFeature,\n\t\tsetIsListViewOpened,\n\t\tsetIsInserterOpened,\n\t} = useDispatch( editPostStore );\n\tconst { registerShortcut } = useDispatch( keyboardShortcutsStore );\n\n\tconst { set: setPreference } = useDispatch( preferencesStore );\n\n\tconst toggleDistractionFree = () => {\n\t\tsetPreference( 'core/edit-post', 'fixedToolbar', false );\n\t\tsetIsInserterOpened( false );\n\t\tsetIsListViewOpened( false );\n\t\tcloseGeneralSidebar();\n\t};\n\n\tconst { replaceBlocks } = useDispatch( blockEditorStore );\n\tconst { getBlockName, getSelectedBlockClientId, getBlockAttributes } =\n\t\tuseSelect( blockEditorStore );\n\n\tconst handleTextLevelShortcut = ( event, level ) => {\n\t\tevent.preventDefault();\n\t\tconst destinationBlockName =\n\t\t\tlevel === 0 ? 'core/paragraph' : 'core/heading';\n\t\tconst currentClientId = getSelectedBlockClientId();\n\t\tif ( currentClientId === null ) {\n\t\t\treturn;\n\t\t}\n\t\tconst blockName = getBlockName( currentClientId );\n\t\tif ( blockName !== 'core/paragraph' && blockName !== 'core/heading' ) {\n\t\t\treturn;\n\t\t}\n\t\tconst attributes = getBlockAttributes( currentClientId );\n\t\tconst textAlign =\n\t\t\tblockName === 'core/paragraph' ? 'align' : 'textAlign';\n\t\tconst destinationTextAlign =\n\t\t\tdestinationBlockName === 'core/paragraph' ? 'align' : 'textAlign';\n\n\t\treplaceBlocks(\n\t\t\tcurrentClientId,\n\t\t\tcreateBlock( destinationBlockName, {\n\t\t\t\tlevel,\n\t\t\t\tcontent: attributes.content,\n\t\t\t\t...{ [ destinationTextAlign ]: attributes[ textAlign ] },\n\t\t\t} )\n\t\t);\n\t};\n\n\tuseEffect( () => {\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-post/toggle-mode',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Switch between visual editor and code editor.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'secondary',\n\t\t\t\tcharacter: 'm',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-post/toggle-distraction-free',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Toggle distraction free mode.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primaryShift',\n\t\t\t\tcharacter: '\\\\',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-post/toggle-fullscreen',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Toggle fullscreen mode.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'secondary',\n\t\t\t\tcharacter: 'f',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-post/toggle-list-view',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Open the block list view.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'access',\n\t\t\t\tcharacter: 'o',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-post/toggle-sidebar',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Show or hide the Settings sidebar.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primaryShift',\n\t\t\t\tcharacter: ',',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-post/next-region',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Navigate to the next part of the editor.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'ctrl',\n\t\t\t\tcharacter: '`',\n\t\t\t},\n\t\t\taliases: [\n\t\t\t\t{\n\t\t\t\t\tmodifier: 'access',\n\t\t\t\t\tcharacter: 'n',\n\t\t\t\t},\n\t\t\t],\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-post/previous-region',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Navigate to the previous part of the editor.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'ctrlShift',\n\t\t\t\tcharacter: '`',\n\t\t\t},\n\t\t\taliases: [\n\t\t\t\t{\n\t\t\t\t\tmodifier: 'access',\n\t\t\t\t\tcharacter: 'p',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tmodifier: 'ctrlShift',\n\t\t\t\t\tcharacter: '~',\n\t\t\t\t},\n\t\t\t],\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-post/keyboard-shortcuts',\n\t\t\tcategory: 'main',\n\t\t\tdescription: __( 'Display these keyboard shortcuts.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'access',\n\t\t\t\tcharacter: 'h',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-post/transform-heading-to-paragraph',\n\t\t\tcategory: 'block-library',\n\t\t\tdescription: __( 'Transform heading to paragraph.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'access',\n\t\t\t\tcharacter: `0`,\n\t\t\t},\n\t\t} );\n\n\t\t[ 1, 2, 3, 4, 5, 6 ].forEach( ( level ) => {\n\t\t\tregisterShortcut( {\n\t\t\t\tname: `core/edit-post/transform-paragraph-to-heading-${ level }`,\n\t\t\t\tcategory: 'block-library',\n\t\t\t\tdescription: __( 'Transform paragraph to heading.' ),\n\t\t\t\tkeyCombination: {\n\t\t\t\t\tmodifier: 'access',\n\t\t\t\t\tcharacter: `${ level }`,\n\t\t\t\t},\n\t\t\t} );\n\t\t} );\n\t}, [] );\n\n\tuseShortcut(\n\t\t'core/edit-post/toggle-mode',\n\t\t() => {\n\t\t\tswitchEditorMode(\n\t\t\t\tgetEditorMode() === 'visual' ? 'text' : 'visual'\n\t\t\t);\n\t\t},\n\t\t{\n\t\t\tisDisabled: isModeToggleDisabled,\n\t\t}\n\t);\n\n\tuseShortcut( 'core/edit-post/toggle-fullscreen', () => {\n\t\ttoggleFeature( 'fullscreenMode' );\n\t} );\n\n\tuseShortcut( 'core/edit-post/toggle-distraction-free', () => {\n\t\ttoggleDistractionFree();\n\t\ttoggleFeature( 'distractionFree' );\n\t\tcreateInfoNotice(\n\t\t\tisFeatureActive( 'distractionFree' )\n\t\t\t\t? __( 'Distraction free on.' )\n\t\t\t\t: __( 'Distraction free off.' ),\n\t\t\t{\n\t\t\t\tid: 'core/edit-post/distraction-free-mode/notice',\n\t\t\t\ttype: 'snackbar',\n\t\t\t}\n\t\t);\n\t} );\n\n\tuseShortcut( 'core/edit-post/toggle-sidebar', ( event ) => {\n\t\t// This shortcut has no known clashes, but use preventDefault to prevent any\n\t\t// obscure shortcuts from triggering.\n\t\tevent.preventDefault();\n\n\t\tif ( isEditorSidebarOpened() ) {\n\t\t\tcloseGeneralSidebar();\n\t\t} else {\n\t\t\tconst sidebarToOpen = getBlockSelectionStart()\n\t\t\t\t? 'edit-post/block'\n\t\t\t\t: 'edit-post/document';\n\t\t\topenGeneralSidebar( sidebarToOpen );\n\t\t}\n\t} );\n\n\t// Only opens the list view. Other functionality for this shortcut happens in the rendered sidebar.\n\tuseShortcut( 'core/edit-post/toggle-list-view', () => {\n\t\tif ( ! isListViewOpened() ) {\n\t\t\tsetIsListViewOpened( true );\n\t\t}\n\t} );\n\n\tuseShortcut( 'core/edit-post/transform-heading-to-paragraph', ( event ) =>\n\t\thandleTextLevelShortcut( event, 0 )\n\t);\n\n\t[ 1, 2, 3, 4, 5, 6 ].forEach( ( level ) => {\n\t\t//the loop is based off on a constant therefore\n\t\t//the hook will execute the same way every time\n\t\t//eslint-disable-next-line react-hooks/rules-of-hooks\n\t\tuseShortcut(\n\t\t\t`core/edit-post/transform-paragraph-to-heading-${ level }`,\n\t\t\t( event ) => handleTextLevelShortcut( event, level )\n\t\t);\n\t} );\n\n\treturn null;\n}\n\nexport default KeyboardShortcuts;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_element","require","_data","_keyboardShortcuts","_i18n","_editor","_blockEditor","_blocks","_store","KeyboardShortcuts","getBlockSelectionStart","useSelect","blockEditorStore","getEditorMode","isEditorSidebarOpened","isListViewOpened","editPostStore","isModeToggleDisabled","select","richEditingEnabled","codeEditingEnabled","editorStore","getEditorSettings","switchEditorMode","openGeneralSidebar","closeGeneralSidebar","toggleFeature","setIsListViewOpened","toggleDistractionFree","useDispatch","registerShortcut","keyboardShortcutsStore","replaceBlocks","getBlockName","getSelectedBlockClientId","getBlockAttributes","handleTextLevelShortcut","event","level","preventDefault","destinationBlockName","currentClientId","blockName","attributes","textAlign","destinationTextAlign","createBlock","content","useEffect","name","category","description","__","keyCombination","modifier","character","aliases","forEach","useShortcut","isDisabled","sidebarToOpen","_default","exports","default"],"sources":["@wordpress/edit-post/src/components/keyboard-shortcuts/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tuseShortcut,\n\tstore as keyboardShortcutsStore,\n} from '@wordpress/keyboard-shortcuts';\nimport { __ } from '@wordpress/i18n';\nimport { store as editorStore } from '@wordpress/editor';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { createBlock } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../store';\n\nfunction KeyboardShortcuts() {\n\tconst { getBlockSelectionStart } = useSelect( blockEditorStore );\n\tconst { getEditorMode, isEditorSidebarOpened, isListViewOpened } =\n\t\tuseSelect( editPostStore );\n\tconst isModeToggleDisabled = useSelect( ( select ) => {\n\t\tconst { richEditingEnabled, codeEditingEnabled } =\n\t\t\tselect( editorStore ).getEditorSettings();\n\t\treturn ! richEditingEnabled || ! codeEditingEnabled;\n\t}, [] );\n\n\tconst {\n\t\tswitchEditorMode,\n\t\topenGeneralSidebar,\n\t\tcloseGeneralSidebar,\n\t\ttoggleFeature,\n\t\tsetIsListViewOpened,\n\t\ttoggleDistractionFree,\n\t} = useDispatch( editPostStore );\n\tconst { registerShortcut } = useDispatch( keyboardShortcutsStore );\n\n\tconst { replaceBlocks } = useDispatch( blockEditorStore );\n\tconst { getBlockName, getSelectedBlockClientId, getBlockAttributes } =\n\t\tuseSelect( blockEditorStore );\n\n\tconst handleTextLevelShortcut = ( event, level ) => {\n\t\tevent.preventDefault();\n\t\tconst destinationBlockName =\n\t\t\tlevel === 0 ? 'core/paragraph' : 'core/heading';\n\t\tconst currentClientId = getSelectedBlockClientId();\n\t\tif ( currentClientId === null ) {\n\t\t\treturn;\n\t\t}\n\t\tconst blockName = getBlockName( currentClientId );\n\t\tif ( blockName !== 'core/paragraph' && blockName !== 'core/heading' ) {\n\t\t\treturn;\n\t\t}\n\t\tconst attributes = getBlockAttributes( currentClientId );\n\t\tconst textAlign =\n\t\t\tblockName === 'core/paragraph' ? 'align' : 'textAlign';\n\t\tconst destinationTextAlign =\n\t\t\tdestinationBlockName === 'core/paragraph' ? 'align' : 'textAlign';\n\n\t\treplaceBlocks(\n\t\t\tcurrentClientId,\n\t\t\tcreateBlock( destinationBlockName, {\n\t\t\t\tlevel,\n\t\t\t\tcontent: attributes.content,\n\t\t\t\t...{ [ destinationTextAlign ]: attributes[ textAlign ] },\n\t\t\t} )\n\t\t);\n\t};\n\n\tuseEffect( () => {\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-post/toggle-mode',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Switch between visual editor and code editor.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'secondary',\n\t\t\t\tcharacter: 'm',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-post/toggle-distraction-free',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Toggle distraction free mode.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primaryShift',\n\t\t\t\tcharacter: '\\\\',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-post/toggle-fullscreen',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Toggle fullscreen mode.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'secondary',\n\t\t\t\tcharacter: 'f',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-post/toggle-list-view',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Open the block list view.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'access',\n\t\t\t\tcharacter: 'o',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-post/toggle-sidebar',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Show or hide the Settings sidebar.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primaryShift',\n\t\t\t\tcharacter: ',',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-post/next-region',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Navigate to the next part of the editor.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'ctrl',\n\t\t\t\tcharacter: '`',\n\t\t\t},\n\t\t\taliases: [\n\t\t\t\t{\n\t\t\t\t\tmodifier: 'access',\n\t\t\t\t\tcharacter: 'n',\n\t\t\t\t},\n\t\t\t],\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-post/previous-region',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Navigate to the previous part of the editor.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'ctrlShift',\n\t\t\t\tcharacter: '`',\n\t\t\t},\n\t\t\taliases: [\n\t\t\t\t{\n\t\t\t\t\tmodifier: 'access',\n\t\t\t\t\tcharacter: 'p',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tmodifier: 'ctrlShift',\n\t\t\t\t\tcharacter: '~',\n\t\t\t\t},\n\t\t\t],\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-post/keyboard-shortcuts',\n\t\t\tcategory: 'main',\n\t\t\tdescription: __( 'Display these keyboard shortcuts.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'access',\n\t\t\t\tcharacter: 'h',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-post/transform-heading-to-paragraph',\n\t\t\tcategory: 'block-library',\n\t\t\tdescription: __( 'Transform heading to paragraph.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'access',\n\t\t\t\tcharacter: `0`,\n\t\t\t},\n\t\t} );\n\n\t\t[ 1, 2, 3, 4, 5, 6 ].forEach( ( level ) => {\n\t\t\tregisterShortcut( {\n\t\t\t\tname: `core/edit-post/transform-paragraph-to-heading-${ level }`,\n\t\t\t\tcategory: 'block-library',\n\t\t\t\tdescription: __( 'Transform paragraph to heading.' ),\n\t\t\t\tkeyCombination: {\n\t\t\t\t\tmodifier: 'access',\n\t\t\t\t\tcharacter: `${ level }`,\n\t\t\t\t},\n\t\t\t} );\n\t\t} );\n\t}, [] );\n\n\tuseShortcut(\n\t\t'core/edit-post/toggle-mode',\n\t\t() => {\n\t\t\tswitchEditorMode(\n\t\t\t\tgetEditorMode() === 'visual' ? 'text' : 'visual'\n\t\t\t);\n\t\t},\n\t\t{\n\t\t\tisDisabled: isModeToggleDisabled,\n\t\t}\n\t);\n\n\tuseShortcut( 'core/edit-post/toggle-fullscreen', () => {\n\t\ttoggleFeature( 'fullscreenMode' );\n\t} );\n\n\tuseShortcut( 'core/edit-post/toggle-distraction-free', () => {\n\t\ttoggleDistractionFree();\n\t} );\n\n\tuseShortcut( 'core/edit-post/toggle-sidebar', ( event ) => {\n\t\t// This shortcut has no known clashes, but use preventDefault to prevent any\n\t\t// obscure shortcuts from triggering.\n\t\tevent.preventDefault();\n\n\t\tif ( isEditorSidebarOpened() ) {\n\t\t\tcloseGeneralSidebar();\n\t\t} else {\n\t\t\tconst sidebarToOpen = getBlockSelectionStart()\n\t\t\t\t? 'edit-post/block'\n\t\t\t\t: 'edit-post/document';\n\t\t\topenGeneralSidebar( sidebarToOpen );\n\t\t}\n\t} );\n\n\t// Only opens the list view. Other functionality for this shortcut happens in the rendered sidebar.\n\tuseShortcut( 'core/edit-post/toggle-list-view', ( event ) => {\n\t\tif ( ! isListViewOpened() ) {\n\t\t\tevent.preventDefault();\n\t\t\tsetIsListViewOpened( true );\n\t\t}\n\t} );\n\n\tuseShortcut( 'core/edit-post/transform-heading-to-paragraph', ( event ) =>\n\t\thandleTextLevelShortcut( event, 0 )\n\t);\n\n\t[ 1, 2, 3, 4, 5, 6 ].forEach( ( level ) => {\n\t\t//the loop is based off on a constant therefore\n\t\t//the hook will execute the same way every time\n\t\t//eslint-disable-next-line react-hooks/rules-of-hooks\n\t\tuseShortcut(\n\t\t\t`core/edit-post/transform-paragraph-to-heading-${ level }`,\n\t\t\t( event ) => handleTextLevelShortcut( event, level )\n\t\t);\n\t} );\n\n\treturn null;\n}\n\nexport default KeyboardShortcuts;\n"],"mappings":"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"}
@@ -28,7 +28,8 @@ function useCommonCommands() {
28
28
  openGeneralSidebar,
29
29
  closeGeneralSidebar,
30
30
  switchEditorMode,
31
- setIsListViewOpened
31
+ setIsListViewOpened,
32
+ toggleDistractionFree
32
33
  } = (0, _data.useDispatch)(_store.store);
33
34
  const {
34
35
  openModal
@@ -38,7 +39,8 @@ function useCommonCommands() {
38
39
  activeSidebar,
39
40
  isListViewOpen,
40
41
  isPublishSidebarEnabled,
41
- showBlockBreadcrumbs
42
+ showBlockBreadcrumbs,
43
+ isDistractionFree
42
44
  } = (0, _data.useSelect)(select => {
43
45
  const {
44
46
  getEditorMode,
@@ -50,7 +52,8 @@ function useCommonCommands() {
50
52
  editorMode: getEditorMode(),
51
53
  isListViewOpen: isListViewOpened(),
52
54
  isPublishSidebarEnabled: select(_editor.store).isPublishSidebarEnabled(),
53
- showBlockBreadcrumbs: isFeatureActive('showBlockBreadcrumbs')
55
+ showBlockBreadcrumbs: isFeatureActive('showBlockBreadcrumbs'),
56
+ isDistractionFree: select(_preferences.store).get(_store.store.name, 'distractionFree')
54
57
  };
55
58
  }, []);
56
59
  const {
@@ -101,7 +104,7 @@ function useCommonCommands() {
101
104
  callback: ({
102
105
  close
103
106
  }) => {
104
- toggle('core/edit-post', 'distractionFree');
107
+ toggleDistractionFree();
105
108
  close();
106
109
  }
107
110
  });
@@ -144,6 +147,9 @@ function useCommonCommands() {
144
147
  close
145
148
  }) => {
146
149
  toggle('core/edit-post', 'fixedToolbar');
150
+ if (isDistractionFree) {
151
+ toggleDistractionFree();
152
+ }
147
153
  close();
148
154
  }
149
155
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_data","require","_i18n","_icons","_commands","_preferences","_interface","_editor","_notices","_keyboardShortcutHelpModal","_preferencesModal","_store","useCommonCommands","openGeneralSidebar","closeGeneralSidebar","switchEditorMode","setIsListViewOpened","useDispatch","editPostStore","openModal","interfaceStore","editorMode","activeSidebar","isListViewOpen","isPublishSidebarEnabled","showBlockBreadcrumbs","useSelect","select","getEditorMode","isListViewOpened","isFeatureActive","getActiveComplementaryArea","name","editorStore","toggle","preferencesStore","createInfoNotice","noticesStore","__unstableSaveForPreview","getCurrentPostId","useCommand","label","__","icon","isRTL","drawerLeft","drawerRight","callback","close","blockDefault","desktop","listView","code","PREFERENCES_MODAL_NAME","keyboard","KEYBOARD_SHORTCUT_HELP_MODAL_NAME","id","type","formatListBullets","external","postId","link","window","open"],"sources":["@wordpress/edit-post/src/hooks/commands/use-common-commands.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __, isRTL } from '@wordpress/i18n';\nimport {\n\tcode,\n\tdrawerLeft,\n\tdrawerRight,\n\tblockDefault,\n\tkeyboard,\n\tdesktop,\n\tlistView,\n\texternal,\n\tformatListBullets,\n} from '@wordpress/icons';\nimport { useCommand } from '@wordpress/commands';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { store as interfaceStore } from '@wordpress/interface';\nimport { store as editorStore } from '@wordpress/editor';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { KEYBOARD_SHORTCUT_HELP_MODAL_NAME } from '../../components/keyboard-shortcut-help-modal';\nimport { PREFERENCES_MODAL_NAME } from '../../components/preferences-modal';\nimport { store as editPostStore } from '../../store';\n\nexport default function useCommonCommands() {\n\tconst {\n\t\topenGeneralSidebar,\n\t\tcloseGeneralSidebar,\n\t\tswitchEditorMode,\n\t\tsetIsListViewOpened,\n\t} = useDispatch( editPostStore );\n\tconst { openModal } = useDispatch( interfaceStore );\n\tconst {\n\t\teditorMode,\n\t\tactiveSidebar,\n\t\tisListViewOpen,\n\t\tisPublishSidebarEnabled,\n\t\tshowBlockBreadcrumbs,\n\t} = useSelect( ( select ) => {\n\t\tconst { getEditorMode, isListViewOpened, isFeatureActive } =\n\t\t\tselect( editPostStore );\n\t\treturn {\n\t\t\tactiveSidebar: select( interfaceStore ).getActiveComplementaryArea(\n\t\t\t\teditPostStore.name\n\t\t\t),\n\t\t\teditorMode: getEditorMode(),\n\t\t\tisListViewOpen: isListViewOpened(),\n\t\t\tisPublishSidebarEnabled:\n\t\t\t\tselect( editorStore ).isPublishSidebarEnabled(),\n\t\t\tshowBlockBreadcrumbs: isFeatureActive( 'showBlockBreadcrumbs' ),\n\t\t};\n\t}, [] );\n\tconst { toggle } = useDispatch( preferencesStore );\n\tconst { createInfoNotice } = useDispatch( noticesStore );\n\tconst { __unstableSaveForPreview } = useDispatch( editorStore );\n\tconst { getCurrentPostId } = useSelect( editorStore );\n\n\tuseCommand( {\n\t\tname: 'core/open-settings-sidebar',\n\t\tlabel: __( 'Toggle settings sidebar' ),\n\t\ticon: isRTL() ? drawerLeft : drawerRight,\n\t\tcallback: ( { close } ) => {\n\t\t\tclose();\n\t\t\tif ( activeSidebar === 'edit-post/document' ) {\n\t\t\t\tcloseGeneralSidebar();\n\t\t\t} else {\n\t\t\t\topenGeneralSidebar( 'edit-post/document' );\n\t\t\t}\n\t\t},\n\t} );\n\n\tuseCommand( {\n\t\tname: 'core/open-block-inspector',\n\t\tlabel: __( 'Toggle block inspector' ),\n\t\ticon: blockDefault,\n\t\tcallback: ( { close } ) => {\n\t\t\tclose();\n\t\t\tif ( activeSidebar === 'edit-post/block' ) {\n\t\t\t\tcloseGeneralSidebar();\n\t\t\t} else {\n\t\t\t\topenGeneralSidebar( 'edit-post/block' );\n\t\t\t}\n\t\t},\n\t} );\n\n\tuseCommand( {\n\t\tname: 'core/toggle-distraction-free',\n\t\tlabel: __( 'Toggle distraction free' ),\n\t\tcallback: ( { close } ) => {\n\t\t\ttoggle( 'core/edit-post', 'distractionFree' );\n\t\t\tclose();\n\t\t},\n\t} );\n\n\tuseCommand( {\n\t\tname: 'core/toggle-spotlight-mode',\n\t\tlabel: __( 'Toggle spotlight mode' ),\n\t\tcallback: ( { close } ) => {\n\t\t\ttoggle( 'core/edit-post', 'focusMode' );\n\t\t\tclose();\n\t\t},\n\t} );\n\n\tuseCommand( {\n\t\tname: 'core/toggle-fullscreen-mode',\n\t\tlabel: __( 'Toggle fullscreen mode' ),\n\t\ticon: desktop,\n\t\tcallback: ( { close } ) => {\n\t\t\ttoggle( 'core/edit-post', 'fullscreenMode' );\n\t\t\tclose();\n\t\t},\n\t} );\n\n\tuseCommand( {\n\t\tname: 'core/toggle-list-view',\n\t\tlabel: __( 'Toggle list view' ),\n\t\ticon: listView,\n\t\tcallback: ( { close } ) => {\n\t\t\tsetIsListViewOpened( ! isListViewOpen );\n\t\t\tclose();\n\t\t},\n\t} );\n\n\tuseCommand( {\n\t\tname: 'core/toggle-top-toolbar',\n\t\tlabel: __( 'Toggle top toolbar' ),\n\t\tcallback: ( { close } ) => {\n\t\t\ttoggle( 'core/edit-post', 'fixedToolbar' );\n\t\t\tclose();\n\t\t},\n\t} );\n\n\tuseCommand( {\n\t\tname: 'core/toggle-code-editor',\n\t\tlabel: __( 'Toggle code editor' ),\n\t\ticon: code,\n\t\tcallback: ( { close } ) => {\n\t\t\tswitchEditorMode( editorMode === 'visual' ? 'text' : 'visual' );\n\t\t\tclose();\n\t\t},\n\t} );\n\n\tuseCommand( {\n\t\tname: 'core/open-preferences',\n\t\tlabel: __( 'Editor preferences' ),\n\t\tcallback: () => {\n\t\t\topenModal( PREFERENCES_MODAL_NAME );\n\t\t},\n\t} );\n\n\tuseCommand( {\n\t\tname: 'core/open-shortcut-help',\n\t\tlabel: __( 'Keyboard shortcuts' ),\n\t\ticon: keyboard,\n\t\tcallback: () => {\n\t\t\topenModal( KEYBOARD_SHORTCUT_HELP_MODAL_NAME );\n\t\t},\n\t} );\n\n\tuseCommand( {\n\t\tname: 'core/toggle-breadcrumbs',\n\t\tlabel: showBlockBreadcrumbs\n\t\t\t? __( 'Hide block breadcrumbs' )\n\t\t\t: __( 'Show block breadcrumbs' ),\n\t\tcallback: ( { close } ) => {\n\t\t\ttoggle( 'core/edit-post', 'showBlockBreadcrumbs' );\n\t\t\tclose();\n\t\t\tcreateInfoNotice(\n\t\t\t\tshowBlockBreadcrumbs\n\t\t\t\t\t? __( 'Breadcrumbs hidden.' )\n\t\t\t\t\t: __( 'Breadcrumbs visible.' ),\n\t\t\t\t{\n\t\t\t\t\tid: 'core/edit-post/toggle-breadcrumbs/notice',\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t},\n\t} );\n\n\tuseCommand( {\n\t\tname: 'core/toggle-publish-sidebar',\n\t\tlabel: isPublishSidebarEnabled\n\t\t\t? __( 'Disable pre-publish checklist' )\n\t\t\t: __( 'Enable pre-publish checklist' ),\n\t\ticon: formatListBullets,\n\t\tcallback: ( { close } ) => {\n\t\t\tclose();\n\t\t\ttoggle( 'core/edit-post', 'isPublishSidebarEnabled' );\n\t\t\tcreateInfoNotice(\n\t\t\t\tisPublishSidebarEnabled\n\t\t\t\t\t? __( 'Pre-publish checklist off.' )\n\t\t\t\t\t: __( 'Pre-publish checklist on.' ),\n\t\t\t\t{\n\t\t\t\t\tid: 'core/edit-post/publish-sidebar/notice',\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t},\n\t} );\n\n\tuseCommand( {\n\t\tname: 'core/preview-link',\n\t\tlabel: __( 'Preview in a new tab' ),\n\t\ticon: external,\n\t\tcallback: async ( { close } ) => {\n\t\t\tclose();\n\t\t\tconst postId = getCurrentPostId();\n\t\t\tconst link = await __unstableSaveForPreview();\n\t\t\twindow.open( link, `wp-preview-${ postId }` );\n\t\t},\n\t} );\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_data","require","_i18n","_icons","_commands","_preferences","_interface","_editor","_notices","_keyboardShortcutHelpModal","_preferencesModal","_store","useCommonCommands","openGeneralSidebar","closeGeneralSidebar","switchEditorMode","setIsListViewOpened","toggleDistractionFree","useDispatch","editPostStore","openModal","interfaceStore","editorMode","activeSidebar","isListViewOpen","isPublishSidebarEnabled","showBlockBreadcrumbs","isDistractionFree","useSelect","select","getEditorMode","isListViewOpened","isFeatureActive","getActiveComplementaryArea","name","editorStore","preferencesStore","get","toggle","createInfoNotice","noticesStore","__unstableSaveForPreview","getCurrentPostId","useCommand","label","__","icon","isRTL","drawerLeft","drawerRight","callback","close","blockDefault","desktop","listView","code","PREFERENCES_MODAL_NAME","keyboard","KEYBOARD_SHORTCUT_HELP_MODAL_NAME","id","type","formatListBullets","external","postId","link","window","open"],"sources":["@wordpress/edit-post/src/hooks/commands/use-common-commands.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __, isRTL } from '@wordpress/i18n';\nimport {\n\tcode,\n\tdrawerLeft,\n\tdrawerRight,\n\tblockDefault,\n\tkeyboard,\n\tdesktop,\n\tlistView,\n\texternal,\n\tformatListBullets,\n} from '@wordpress/icons';\nimport { useCommand } from '@wordpress/commands';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { store as interfaceStore } from '@wordpress/interface';\nimport { store as editorStore } from '@wordpress/editor';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { KEYBOARD_SHORTCUT_HELP_MODAL_NAME } from '../../components/keyboard-shortcut-help-modal';\nimport { PREFERENCES_MODAL_NAME } from '../../components/preferences-modal';\nimport { store as editPostStore } from '../../store';\n\nexport default function useCommonCommands() {\n\tconst {\n\t\topenGeneralSidebar,\n\t\tcloseGeneralSidebar,\n\t\tswitchEditorMode,\n\t\tsetIsListViewOpened,\n\t\ttoggleDistractionFree,\n\t} = useDispatch( editPostStore );\n\tconst { openModal } = useDispatch( interfaceStore );\n\tconst {\n\t\teditorMode,\n\t\tactiveSidebar,\n\t\tisListViewOpen,\n\t\tisPublishSidebarEnabled,\n\t\tshowBlockBreadcrumbs,\n\t\tisDistractionFree,\n\t} = useSelect( ( select ) => {\n\t\tconst { getEditorMode, isListViewOpened, isFeatureActive } =\n\t\t\tselect( editPostStore );\n\t\treturn {\n\t\t\tactiveSidebar: select( interfaceStore ).getActiveComplementaryArea(\n\t\t\t\teditPostStore.name\n\t\t\t),\n\t\t\teditorMode: getEditorMode(),\n\t\t\tisListViewOpen: isListViewOpened(),\n\t\t\tisPublishSidebarEnabled:\n\t\t\t\tselect( editorStore ).isPublishSidebarEnabled(),\n\t\t\tshowBlockBreadcrumbs: isFeatureActive( 'showBlockBreadcrumbs' ),\n\t\t\tisDistractionFree: select( preferencesStore ).get(\n\t\t\t\teditPostStore.name,\n\t\t\t\t'distractionFree'\n\t\t\t),\n\t\t};\n\t}, [] );\n\tconst { toggle } = useDispatch( preferencesStore );\n\tconst { createInfoNotice } = useDispatch( noticesStore );\n\tconst { __unstableSaveForPreview } = useDispatch( editorStore );\n\tconst { getCurrentPostId } = useSelect( editorStore );\n\n\tuseCommand( {\n\t\tname: 'core/open-settings-sidebar',\n\t\tlabel: __( 'Toggle settings sidebar' ),\n\t\ticon: isRTL() ? drawerLeft : drawerRight,\n\t\tcallback: ( { close } ) => {\n\t\t\tclose();\n\t\t\tif ( activeSidebar === 'edit-post/document' ) {\n\t\t\t\tcloseGeneralSidebar();\n\t\t\t} else {\n\t\t\t\topenGeneralSidebar( 'edit-post/document' );\n\t\t\t}\n\t\t},\n\t} );\n\n\tuseCommand( {\n\t\tname: 'core/open-block-inspector',\n\t\tlabel: __( 'Toggle block inspector' ),\n\t\ticon: blockDefault,\n\t\tcallback: ( { close } ) => {\n\t\t\tclose();\n\t\t\tif ( activeSidebar === 'edit-post/block' ) {\n\t\t\t\tcloseGeneralSidebar();\n\t\t\t} else {\n\t\t\t\topenGeneralSidebar( 'edit-post/block' );\n\t\t\t}\n\t\t},\n\t} );\n\n\tuseCommand( {\n\t\tname: 'core/toggle-distraction-free',\n\t\tlabel: __( 'Toggle distraction free' ),\n\t\tcallback: ( { close } ) => {\n\t\t\ttoggleDistractionFree();\n\t\t\tclose();\n\t\t},\n\t} );\n\n\tuseCommand( {\n\t\tname: 'core/toggle-spotlight-mode',\n\t\tlabel: __( 'Toggle spotlight mode' ),\n\t\tcallback: ( { close } ) => {\n\t\t\ttoggle( 'core/edit-post', 'focusMode' );\n\t\t\tclose();\n\t\t},\n\t} );\n\n\tuseCommand( {\n\t\tname: 'core/toggle-fullscreen-mode',\n\t\tlabel: __( 'Toggle fullscreen mode' ),\n\t\ticon: desktop,\n\t\tcallback: ( { close } ) => {\n\t\t\ttoggle( 'core/edit-post', 'fullscreenMode' );\n\t\t\tclose();\n\t\t},\n\t} );\n\n\tuseCommand( {\n\t\tname: 'core/toggle-list-view',\n\t\tlabel: __( 'Toggle list view' ),\n\t\ticon: listView,\n\t\tcallback: ( { close } ) => {\n\t\t\tsetIsListViewOpened( ! isListViewOpen );\n\t\t\tclose();\n\t\t},\n\t} );\n\n\tuseCommand( {\n\t\tname: 'core/toggle-top-toolbar',\n\t\tlabel: __( 'Toggle top toolbar' ),\n\t\tcallback: ( { close } ) => {\n\t\t\ttoggle( 'core/edit-post', 'fixedToolbar' );\n\t\t\tif ( isDistractionFree ) {\n\t\t\t\ttoggleDistractionFree();\n\t\t\t}\n\t\t\tclose();\n\t\t},\n\t} );\n\n\tuseCommand( {\n\t\tname: 'core/toggle-code-editor',\n\t\tlabel: __( 'Toggle code editor' ),\n\t\ticon: code,\n\t\tcallback: ( { close } ) => {\n\t\t\tswitchEditorMode( editorMode === 'visual' ? 'text' : 'visual' );\n\t\t\tclose();\n\t\t},\n\t} );\n\n\tuseCommand( {\n\t\tname: 'core/open-preferences',\n\t\tlabel: __( 'Editor preferences' ),\n\t\tcallback: () => {\n\t\t\topenModal( PREFERENCES_MODAL_NAME );\n\t\t},\n\t} );\n\n\tuseCommand( {\n\t\tname: 'core/open-shortcut-help',\n\t\tlabel: __( 'Keyboard shortcuts' ),\n\t\ticon: keyboard,\n\t\tcallback: () => {\n\t\t\topenModal( KEYBOARD_SHORTCUT_HELP_MODAL_NAME );\n\t\t},\n\t} );\n\n\tuseCommand( {\n\t\tname: 'core/toggle-breadcrumbs',\n\t\tlabel: showBlockBreadcrumbs\n\t\t\t? __( 'Hide block breadcrumbs' )\n\t\t\t: __( 'Show block breadcrumbs' ),\n\t\tcallback: ( { close } ) => {\n\t\t\ttoggle( 'core/edit-post', 'showBlockBreadcrumbs' );\n\t\t\tclose();\n\t\t\tcreateInfoNotice(\n\t\t\t\tshowBlockBreadcrumbs\n\t\t\t\t\t? __( 'Breadcrumbs hidden.' )\n\t\t\t\t\t: __( 'Breadcrumbs visible.' ),\n\t\t\t\t{\n\t\t\t\t\tid: 'core/edit-post/toggle-breadcrumbs/notice',\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t},\n\t} );\n\n\tuseCommand( {\n\t\tname: 'core/toggle-publish-sidebar',\n\t\tlabel: isPublishSidebarEnabled\n\t\t\t? __( 'Disable pre-publish checklist' )\n\t\t\t: __( 'Enable pre-publish checklist' ),\n\t\ticon: formatListBullets,\n\t\tcallback: ( { close } ) => {\n\t\t\tclose();\n\t\t\ttoggle( 'core/edit-post', 'isPublishSidebarEnabled' );\n\t\t\tcreateInfoNotice(\n\t\t\t\tisPublishSidebarEnabled\n\t\t\t\t\t? __( 'Pre-publish checklist off.' )\n\t\t\t\t\t: __( 'Pre-publish checklist on.' ),\n\t\t\t\t{\n\t\t\t\t\tid: 'core/edit-post/publish-sidebar/notice',\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t},\n\t} );\n\n\tuseCommand( {\n\t\tname: 'core/preview-link',\n\t\tlabel: __( 'Preview in a new tab' ),\n\t\ticon: external,\n\t\tcallback: async ( { close } ) => {\n\t\t\tclose();\n\t\t\tconst postId = getCurrentPostId();\n\t\t\tconst link = await __unstableSaveForPreview();\n\t\t\twindow.open( link, `wp-preview-${ postId }` );\n\t\t},\n\t} );\n}\n"],"mappings":"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"}
@@ -17,8 +17,7 @@ exports.requestMetaBoxUpdates = void 0;
17
17
  exports.setAvailableMetaBoxesPerLocation = setAvailableMetaBoxesPerLocation;
18
18
  exports.setIsEditingTemplate = setIsEditingTemplate;
19
19
  exports.setIsInserterOpened = setIsInserterOpened;
20
- exports.setIsListViewOpened = setIsListViewOpened;
21
- exports.togglePinnedPluginItem = exports.toggleFeature = exports.toggleEditorPanelOpened = exports.toggleEditorPanelEnabled = exports.switchEditorMode = exports.showBlockTypes = void 0;
20
+ exports.togglePinnedPluginItem = exports.toggleFeature = exports.toggleEditorPanelOpened = exports.toggleEditorPanelEnabled = exports.toggleDistractionFree = exports.switchEditorMode = exports.showBlockTypes = exports.setIsListViewOpened = void 0;
22
21
  exports.togglePublishSidebar = togglePublishSidebar;
23
22
  exports.updatePreferredStyleVariations = void 0;
24
23
  var _i18n = require("@wordpress/i18n");
@@ -48,8 +47,15 @@ var _ = require(".");
48
47
  * @param {?string} name Sidebar name to be opened.
49
48
  */
50
49
  const openGeneralSidebar = name => ({
50
+ dispatch,
51
51
  registry
52
- }) => registry.dispatch(_interface.store).enableComplementaryArea(_.store.name, name);
52
+ }) => {
53
+ const isDistractionFree = registry.select(_preferences.store).get('core/edit-post', 'distractionFree');
54
+ if (isDistractionFree) {
55
+ dispatch.toggleDistractionFree();
56
+ }
57
+ registry.dispatch(_interface.store).enableComplementaryArea(_.store.name, name);
58
+ };
53
59
 
54
60
  /**
55
61
  * Returns an action object signalling that the user closed the sidebar.
@@ -214,6 +220,7 @@ const toggleFeature = feature => ({
214
220
  */
215
221
  exports.toggleFeature = toggleFeature;
216
222
  const switchEditorMode = mode => ({
223
+ dispatch,
217
224
  registry
218
225
  }) => {
219
226
  registry.dispatch(_preferences.store).set('core/edit-post', 'editorMode', mode);
@@ -222,6 +229,9 @@ const switchEditorMode = mode => ({
222
229
  if (mode !== 'visual') {
223
230
  registry.dispatch(_blockEditor.store).clearSelectedBlock();
224
231
  }
232
+ if (mode === 'text' && registry.select(_preferences.store).get('core/edit-post', 'distractionFree')) {
233
+ dispatch.toggleDistractionFree();
234
+ }
225
235
  const message = mode === 'visual' ? (0, _i18n.__)('Visual editor selected') : (0, _i18n.__)('Code editor selected');
226
236
  (0, _a11y.speak)(message, 'assertive');
227
237
  };
@@ -425,12 +435,19 @@ function setIsInserterOpened(value) {
425
435
  * @param {boolean} isOpen A boolean representing whether the list view should be opened or closed.
426
436
  * @return {Object} Action object.
427
437
  */
428
- function setIsListViewOpened(isOpen) {
429
- return {
438
+ const setIsListViewOpened = isOpen => ({
439
+ dispatch,
440
+ registry
441
+ }) => {
442
+ const isDistractionFree = registry.select(_preferences.store).get('core/edit-post', 'distractionFree');
443
+ if (isDistractionFree && isOpen) {
444
+ dispatch.toggleDistractionFree();
445
+ }
446
+ dispatch({
430
447
  type: 'SET_IS_LIST_VIEW_OPENED',
431
448
  isOpen
432
- };
433
- }
449
+ });
450
+ };
434
451
 
435
452
  /**
436
453
  * Returns an action object used to switch to template editing.
@@ -438,6 +455,7 @@ function setIsListViewOpened(isOpen) {
438
455
  * @param {boolean} value Is editing template.
439
456
  * @return {Object} Action object.
440
457
  */
458
+ exports.setIsListViewOpened = setIsListViewOpened;
441
459
  function setIsEditingTemplate(value) {
442
460
  return {
443
461
  type: 'SET_IS_EDITING_TEMPLATE',
@@ -519,5 +537,33 @@ const initializeMetaBoxes = () => ({
519
537
  type: 'META_BOXES_INITIALIZED'
520
538
  });
521
539
  };
540
+
541
+ /**
542
+ * Action that toggles Distraction free mode.
543
+ * Distraction free mode expects there are no sidebars, as due to the
544
+ * z-index values set, you can't close sidebars.
545
+ */
522
546
  exports.initializeMetaBoxes = initializeMetaBoxes;
547
+ const toggleDistractionFree = () => ({
548
+ dispatch,
549
+ registry
550
+ }) => {
551
+ const isDistractionFree = registry.select(_preferences.store).get('core/edit-post', 'distractionFree');
552
+ if (!isDistractionFree) {
553
+ registry.batch(() => {
554
+ registry.dispatch(_preferences.store).set('core/edit-post', 'fixedToolbar', false);
555
+ dispatch.setIsInserterOpened(false);
556
+ dispatch.setIsListViewOpened(false);
557
+ dispatch.closeGeneralSidebar();
558
+ });
559
+ }
560
+ registry.batch(() => {
561
+ registry.dispatch(_preferences.store).set('core/edit-post', 'distractionFree', !isDistractionFree);
562
+ registry.dispatch(_notices.store).createInfoNotice(isDistractionFree ? (0, _i18n.__)('Distraction free off.') : (0, _i18n.__)('Distraction free on.'), {
563
+ id: 'core/edit-post/distraction-free-mode/notice',
564
+ type: 'snackbar'
565
+ });
566
+ });
567
+ };
568
+ exports.toggleDistractionFree = toggleDistractionFree;
523
569
  //# sourceMappingURL=actions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_apiFetch","_interopRequireDefault","_interface","_preferences","_a11y","_notices","_coreData","_blockEditor","_editor","_deprecated","_hooks","_metaBoxes","_","openGeneralSidebar","name","registry","dispatch","interfaceStore","enableComplementaryArea","editPostStore","exports","closeGeneralSidebar","disableComplementaryArea","openModal","deprecated","since","alternative","closeModal","openPublishSidebar","type","closePublishSidebar","togglePublishSidebar","toggleEditorPanelEnabled","panelName","_registry$select$get","inactivePanels","select","preferencesStore","get","isPanelInactive","includes","updatedInactivePanels","filter","invactivePanelName","set","toggleEditorPanelOpened","_registry$select$get2","openPanels","isPanelOpen","updatedOpenPanels","openPanelName","removeEditorPanel","toggleFeature","feature","toggle","switchEditorMode","mode","blockEditorStore","clearSelectedBlock","message","__","speak","togglePinnedPluginItem","pluginName","isPinned","isItemPinned","updatePreferredStyleVariations","blockName","blockStyle","_registry$select$get3","existingVariations","updatedVariations","showBlockTypes","blockNames","_registry$select$get4","existingBlockNames","newBlockNames","Array","isArray","hideBlockTypes","_registry$select$get5","mergedBlockNames","Set","setAvailableMetaBoxesPerLocation","metaBoxesPerLocation","requestMetaBoxUpdates","window","tinyMCE","triggerSave","post","editorStore","getCurrentPost","additionalData","comment_status","ping_status","sticky","author","Boolean","baseFormData","FormData","document","querySelector","activeMetaBoxLocations","getActiveMetaBoxLocations","formDataToMerge","map","location","getMetaBoxContainer","formData","reduce","memo","currentFormData","key","value","append","forEach","apiFetch","url","_wpMetaBoxUrl","method","body","parse","metaBoxUpdatesSuccess","metaBoxUpdatesFailure","__experimentalSetPreviewDeviceType","deviceType","setIsInserterOpened","setIsListViewOpened","isOpen","setIsEditingTemplate","__unstableSwitchToTemplateMode","newTemplate","isWelcomeGuideActive","isFeatureActive","noticesStore","createSuccessNotice","__unstableCreateTemplate","template","savedTemplate","coreStore","saveEntityRecord","editEntityRecord","id","slug","metaBoxesInitialized","initializeMetaBoxes","isEditorReady","__unstableIsEditorReady","postType","getCurrentPostType","postboxes","page","add_postbox_toggles","addFilter","previous","options","then","isAutosave","hasMetaBoxes"],"sources":["@wordpress/edit-post/src/store/actions.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport apiFetch from '@wordpress/api-fetch';\nimport { store as interfaceStore } from '@wordpress/interface';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { speak } from '@wordpress/a11y';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { store as editorStore } from '@wordpress/editor';\nimport deprecated from '@wordpress/deprecated';\nimport { addFilter } from '@wordpress/hooks';\n\n/**\n * Internal dependencies\n */\nimport { getMetaBoxContainer } from '../utils/meta-boxes';\nimport { store as editPostStore } from '.';\n\n/**\n * Returns an action object used in signalling that the user opened an editor sidebar.\n *\n * @param {?string} name Sidebar name to be opened.\n */\nexport const openGeneralSidebar =\n\t( name ) =>\n\t( { registry } ) =>\n\t\tregistry\n\t\t\t.dispatch( interfaceStore )\n\t\t\t.enableComplementaryArea( editPostStore.name, name );\n\n/**\n * Returns an action object signalling that the user closed the sidebar.\n */\nexport const closeGeneralSidebar =\n\t() =>\n\t( { registry } ) =>\n\t\tregistry\n\t\t\t.dispatch( interfaceStore )\n\t\t\t.disableComplementaryArea( editPostStore.name );\n\n/**\n * Returns an action object used in signalling that the user opened a modal.\n *\n * @deprecated since WP 6.3 use `core/interface` store's action with the same name instead.\n *\n *\n * @param {string} name A string that uniquely identifies the modal.\n *\n * @return {Object} Action object.\n */\nexport const openModal =\n\t( name ) =>\n\t( { registry } ) => {\n\t\tdeprecated( \"select( 'core/edit-post' ).openModal( name )\", {\n\t\t\tsince: '6.3',\n\t\t\talternative: \"select( 'core/interface').openModal( name )\",\n\t\t} );\n\t\treturn registry.dispatch( interfaceStore ).openModal( name );\n\t};\n\n/**\n * Returns an action object signalling that the user closed a modal.\n *\n * @deprecated since WP 6.3 use `core/interface` store's action with the same name instead.\n *\n * @return {Object} Action object.\n */\nexport const closeModal =\n\t() =>\n\t( { registry } ) => {\n\t\tdeprecated( \"select( 'core/edit-post' ).closeModal()\", {\n\t\t\tsince: '6.3',\n\t\t\talternative: \"select( 'core/interface').closeModal()\",\n\t\t} );\n\t\treturn registry.dispatch( interfaceStore ).closeModal();\n\t};\n\n/**\n * Returns an action object used in signalling that the user opened the publish\n * sidebar.\n *\n * @return {Object} Action object\n */\nexport function openPublishSidebar() {\n\treturn {\n\t\ttype: 'OPEN_PUBLISH_SIDEBAR',\n\t};\n}\n\n/**\n * Returns an action object used in signalling that the user closed the\n * publish sidebar.\n *\n * @return {Object} Action object.\n */\nexport function closePublishSidebar() {\n\treturn {\n\t\ttype: 'CLOSE_PUBLISH_SIDEBAR',\n\t};\n}\n\n/**\n * Returns an action object used in signalling that the user toggles the publish sidebar.\n *\n * @return {Object} Action object\n */\nexport function togglePublishSidebar() {\n\treturn {\n\t\ttype: 'TOGGLE_PUBLISH_SIDEBAR',\n\t};\n}\n\n/**\n * Returns an action object used to enable or disable a panel in the editor.\n *\n * @param {string} panelName A string that identifies the panel to enable or disable.\n *\n * @return {Object} Action object.\n */\nexport const toggleEditorPanelEnabled =\n\t( panelName ) =>\n\t( { registry } ) => {\n\t\tconst inactivePanels =\n\t\t\tregistry\n\t\t\t\t.select( preferencesStore )\n\t\t\t\t.get( 'core/edit-post', 'inactivePanels' ) ?? [];\n\n\t\tconst isPanelInactive = !! inactivePanels?.includes( panelName );\n\n\t\t// If the panel is inactive, remove it to enable it, else add it to\n\t\t// make it inactive.\n\t\tlet updatedInactivePanels;\n\t\tif ( isPanelInactive ) {\n\t\t\tupdatedInactivePanels = inactivePanels.filter(\n\t\t\t\t( invactivePanelName ) => invactivePanelName !== panelName\n\t\t\t);\n\t\t} else {\n\t\t\tupdatedInactivePanels = [ ...inactivePanels, panelName ];\n\t\t}\n\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.set( 'core/edit-post', 'inactivePanels', updatedInactivePanels );\n\t};\n\n/**\n * Opens a closed panel and closes an open panel.\n *\n * @param {string} panelName A string that identifies the panel to open or close.\n */\nexport const toggleEditorPanelOpened =\n\t( panelName ) =>\n\t( { registry } ) => {\n\t\tconst openPanels =\n\t\t\tregistry\n\t\t\t\t.select( preferencesStore )\n\t\t\t\t.get( 'core/edit-post', 'openPanels' ) ?? [];\n\n\t\tconst isPanelOpen = !! openPanels?.includes( panelName );\n\n\t\t// If the panel is open, remove it to close it, else add it to\n\t\t// make it open.\n\t\tlet updatedOpenPanels;\n\t\tif ( isPanelOpen ) {\n\t\t\tupdatedOpenPanels = openPanels.filter(\n\t\t\t\t( openPanelName ) => openPanelName !== panelName\n\t\t\t);\n\t\t} else {\n\t\t\tupdatedOpenPanels = [ ...openPanels, panelName ];\n\t\t}\n\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.set( 'core/edit-post', 'openPanels', updatedOpenPanels );\n\t};\n\n/**\n * Returns an action object used to remove a panel from the editor.\n *\n * @param {string} panelName A string that identifies the panel to remove.\n *\n * @return {Object} Action object.\n */\nexport function removeEditorPanel( panelName ) {\n\treturn {\n\t\ttype: 'REMOVE_PANEL',\n\t\tpanelName,\n\t};\n}\n\n/**\n * Triggers an action used to toggle a feature flag.\n *\n * @param {string} feature Feature name.\n */\nexport const toggleFeature =\n\t( feature ) =>\n\t( { registry } ) =>\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.toggle( 'core/edit-post', feature );\n\n/**\n * Triggers an action used to switch editor mode.\n *\n * @param {string} mode The editor mode.\n */\nexport const switchEditorMode =\n\t( mode ) =>\n\t( { registry } ) => {\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.set( 'core/edit-post', 'editorMode', mode );\n\n\t\t// Unselect blocks when we switch to the code editor.\n\t\tif ( mode !== 'visual' ) {\n\t\t\tregistry.dispatch( blockEditorStore ).clearSelectedBlock();\n\t\t}\n\n\t\tconst message =\n\t\t\tmode === 'visual'\n\t\t\t\t? __( 'Visual editor selected' )\n\t\t\t\t: __( 'Code editor selected' );\n\t\tspeak( message, 'assertive' );\n\t};\n\n/**\n * Triggers an action object used to toggle a plugin name flag.\n *\n * @param {string} pluginName Plugin name.\n */\nexport const togglePinnedPluginItem =\n\t( pluginName ) =>\n\t( { registry } ) => {\n\t\tconst isPinned = registry\n\t\t\t.select( interfaceStore )\n\t\t\t.isItemPinned( 'core/edit-post', pluginName );\n\n\t\tregistry\n\t\t\t.dispatch( interfaceStore )\n\t\t\t[ isPinned ? 'unpinItem' : 'pinItem' ](\n\t\t\t\t'core/edit-post',\n\t\t\t\tpluginName\n\t\t\t);\n\t};\n\n/**\n * Returns an action object used in signaling that a style should be auto-applied when a block is created.\n *\n * @param {string} blockName Name of the block.\n * @param {?string} blockStyle Name of the style that should be auto applied. If undefined, the \"auto apply\" setting of the block is removed.\n */\nexport const updatePreferredStyleVariations =\n\t( blockName, blockStyle ) =>\n\t( { registry } ) => {\n\t\tif ( ! blockName ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst existingVariations =\n\t\t\tregistry\n\t\t\t\t.select( preferencesStore )\n\t\t\t\t.get( 'core/edit-post', 'preferredStyleVariations' ) ?? {};\n\n\t\t// When the blockStyle is omitted, remove the block's preferred variation.\n\t\tif ( ! blockStyle ) {\n\t\t\tconst updatedVariations = {\n\t\t\t\t...existingVariations,\n\t\t\t};\n\n\t\t\tdelete updatedVariations[ blockName ];\n\n\t\t\tregistry\n\t\t\t\t.dispatch( preferencesStore )\n\t\t\t\t.set(\n\t\t\t\t\t'core/edit-post',\n\t\t\t\t\t'preferredStyleVariations',\n\t\t\t\t\tupdatedVariations\n\t\t\t\t);\n\t\t} else {\n\t\t\t// Else add the variation.\n\t\t\tregistry\n\t\t\t\t.dispatch( preferencesStore )\n\t\t\t\t.set( 'core/edit-post', 'preferredStyleVariations', {\n\t\t\t\t\t...existingVariations,\n\t\t\t\t\t[ blockName ]: blockStyle,\n\t\t\t\t} );\n\t\t}\n\t};\n\n/**\n * Update the provided block types to be visible.\n *\n * @param {string[]} blockNames Names of block types to show.\n */\nexport const showBlockTypes =\n\t( blockNames ) =>\n\t( { registry } ) => {\n\t\tconst existingBlockNames =\n\t\t\tregistry\n\t\t\t\t.select( preferencesStore )\n\t\t\t\t.get( 'core/edit-post', 'hiddenBlockTypes' ) ?? [];\n\n\t\tconst newBlockNames = existingBlockNames.filter(\n\t\t\t( type ) =>\n\t\t\t\t! (\n\t\t\t\t\tArray.isArray( blockNames ) ? blockNames : [ blockNames ]\n\t\t\t\t).includes( type )\n\t\t);\n\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.set( 'core/edit-post', 'hiddenBlockTypes', newBlockNames );\n\t};\n\n/**\n * Update the provided block types to be hidden.\n *\n * @param {string[]} blockNames Names of block types to hide.\n */\nexport const hideBlockTypes =\n\t( blockNames ) =>\n\t( { registry } ) => {\n\t\tconst existingBlockNames =\n\t\t\tregistry\n\t\t\t\t.select( preferencesStore )\n\t\t\t\t.get( 'core/edit-post', 'hiddenBlockTypes' ) ?? [];\n\n\t\tconst mergedBlockNames = new Set( [\n\t\t\t...existingBlockNames,\n\t\t\t...( Array.isArray( blockNames ) ? blockNames : [ blockNames ] ),\n\t\t] );\n\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.set( 'core/edit-post', 'hiddenBlockTypes', [\n\t\t\t\t...mergedBlockNames,\n\t\t\t] );\n\t};\n\n/**\n * Stores info about which Meta boxes are available in which location.\n *\n * @param {Object} metaBoxesPerLocation Meta boxes per location.\n */\nexport function setAvailableMetaBoxesPerLocation( metaBoxesPerLocation ) {\n\treturn {\n\t\ttype: 'SET_META_BOXES_PER_LOCATIONS',\n\t\tmetaBoxesPerLocation,\n\t};\n}\n\n/**\n * Update a metabox.\n */\nexport const requestMetaBoxUpdates =\n\t() =>\n\tasync ( { registry, select, dispatch } ) => {\n\t\tdispatch( {\n\t\t\ttype: 'REQUEST_META_BOX_UPDATES',\n\t\t} );\n\n\t\t// Saves the wp_editor fields.\n\t\tif ( window.tinyMCE ) {\n\t\t\twindow.tinyMCE.triggerSave();\n\t\t}\n\n\t\t// Additional data needed for backward compatibility.\n\t\t// If we do not provide this data, the post will be overridden with the default values.\n\t\tconst post = registry.select( editorStore ).getCurrentPost();\n\t\tconst additionalData = [\n\t\t\tpost.comment_status\n\t\t\t\t? [ 'comment_status', post.comment_status ]\n\t\t\t\t: false,\n\t\t\tpost.ping_status ? [ 'ping_status', post.ping_status ] : false,\n\t\t\tpost.sticky ? [ 'sticky', post.sticky ] : false,\n\t\t\tpost.author ? [ 'post_author', post.author ] : false,\n\t\t].filter( Boolean );\n\n\t\t// We gather all the metaboxes locations data and the base form data.\n\t\tconst baseFormData = new window.FormData(\n\t\t\tdocument.querySelector( '.metabox-base-form' )\n\t\t);\n\t\tconst activeMetaBoxLocations = select.getActiveMetaBoxLocations();\n\t\tconst formDataToMerge = [\n\t\t\tbaseFormData,\n\t\t\t...activeMetaBoxLocations.map(\n\t\t\t\t( location ) =>\n\t\t\t\t\tnew window.FormData( getMetaBoxContainer( location ) )\n\t\t\t),\n\t\t];\n\n\t\t// Merge all form data objects into a single one.\n\t\tconst formData = formDataToMerge.reduce( ( memo, currentFormData ) => {\n\t\t\tfor ( const [ key, value ] of currentFormData ) {\n\t\t\t\tmemo.append( key, value );\n\t\t\t}\n\t\t\treturn memo;\n\t\t}, new window.FormData() );\n\t\tadditionalData.forEach( ( [ key, value ] ) =>\n\t\t\tformData.append( key, value )\n\t\t);\n\n\t\ttry {\n\t\t\t// Save the metaboxes.\n\t\t\tawait apiFetch( {\n\t\t\t\turl: window._wpMetaBoxUrl,\n\t\t\t\tmethod: 'POST',\n\t\t\t\tbody: formData,\n\t\t\t\tparse: false,\n\t\t\t} );\n\t\t\tdispatch.metaBoxUpdatesSuccess();\n\t\t} catch {\n\t\t\tdispatch.metaBoxUpdatesFailure();\n\t\t}\n\t};\n\n/**\n * Returns an action object used to signal a successful meta box update.\n *\n * @return {Object} Action object.\n */\nexport function metaBoxUpdatesSuccess() {\n\treturn {\n\t\ttype: 'META_BOX_UPDATES_SUCCESS',\n\t};\n}\n\n/**\n * Returns an action object used to signal a failed meta box update.\n *\n * @return {Object} Action object.\n */\nexport function metaBoxUpdatesFailure() {\n\treturn {\n\t\ttype: 'META_BOX_UPDATES_FAILURE',\n\t};\n}\n\n/**\n * Returns an action object used to toggle the width of the editing canvas.\n *\n * @param {string} deviceType\n *\n * @return {Object} Action object.\n */\nexport function __experimentalSetPreviewDeviceType( deviceType ) {\n\treturn {\n\t\ttype: 'SET_PREVIEW_DEVICE_TYPE',\n\t\tdeviceType,\n\t};\n}\n\n/**\n * Returns an action object used to open/close the inserter.\n *\n * @param {boolean|Object} value Whether the inserter should be\n * opened (true) or closed (false).\n * To specify an insertion point,\n * use an object.\n * @param {string} value.rootClientId The root client ID to insert at.\n * @param {number} value.insertionIndex The index to insert at.\n *\n * @return {Object} Action object.\n */\nexport function setIsInserterOpened( value ) {\n\treturn {\n\t\ttype: 'SET_IS_INSERTER_OPENED',\n\t\tvalue,\n\t};\n}\n\n/**\n * Returns an action object used to open/close the list view.\n *\n * @param {boolean} isOpen A boolean representing whether the list view should be opened or closed.\n * @return {Object} Action object.\n */\nexport function setIsListViewOpened( isOpen ) {\n\treturn {\n\t\ttype: 'SET_IS_LIST_VIEW_OPENED',\n\t\tisOpen,\n\t};\n}\n\n/**\n * Returns an action object used to switch to template editing.\n *\n * @param {boolean} value Is editing template.\n * @return {Object} Action object.\n */\nexport function setIsEditingTemplate( value ) {\n\treturn {\n\t\ttype: 'SET_IS_EDITING_TEMPLATE',\n\t\tvalue,\n\t};\n}\n\n/**\n * Switches to the template mode.\n *\n * @param {boolean} newTemplate Is new template.\n */\nexport const __unstableSwitchToTemplateMode =\n\t( newTemplate = false ) =>\n\t( { registry, select, dispatch } ) => {\n\t\tdispatch( setIsEditingTemplate( true ) );\n\t\tconst isWelcomeGuideActive = select.isFeatureActive(\n\t\t\t'welcomeGuideTemplate'\n\t\t);\n\t\tif ( ! isWelcomeGuideActive ) {\n\t\t\tconst message = newTemplate\n\t\t\t\t? __( \"Custom template created. You're in template mode now.\" )\n\t\t\t\t: __(\n\t\t\t\t\t\t'Editing template. Changes made here affect all posts and pages that use the template.'\n\t\t\t\t );\n\t\t\tregistry.dispatch( noticesStore ).createSuccessNotice( message, {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t\t}\n\t};\n\n/**\n * Create a block based template.\n *\n * @param {Object?} template Template to create and assign.\n */\nexport const __unstableCreateTemplate =\n\t( template ) =>\n\tasync ( { registry } ) => {\n\t\tconst savedTemplate = await registry\n\t\t\t.dispatch( coreStore )\n\t\t\t.saveEntityRecord( 'postType', 'wp_template', template );\n\t\tconst post = registry.select( editorStore ).getCurrentPost();\n\t\tregistry\n\t\t\t.dispatch( coreStore )\n\t\t\t.editEntityRecord( 'postType', post.type, post.id, {\n\t\t\t\ttemplate: savedTemplate.slug,\n\t\t\t} );\n\t};\n\nlet metaBoxesInitialized = false;\n\n/**\n * Initializes WordPress `postboxes` script and the logic for saving meta boxes.\n */\nexport const initializeMetaBoxes =\n\t() =>\n\t( { registry, select, dispatch } ) => {\n\t\tconst isEditorReady = registry\n\t\t\t.select( editorStore )\n\t\t\t.__unstableIsEditorReady();\n\n\t\tif ( ! isEditorReady ) {\n\t\t\treturn;\n\t\t}\n\t\t// Only initialize once.\n\t\tif ( metaBoxesInitialized ) {\n\t\t\treturn;\n\t\t}\n\t\tconst postType = registry.select( editorStore ).getCurrentPostType();\n\t\tif ( window.postboxes.page !== postType ) {\n\t\t\twindow.postboxes.add_postbox_toggles( postType );\n\t\t}\n\n\t\tmetaBoxesInitialized = true;\n\n\t\t// Save metaboxes on save completion, except for autosaves.\n\t\taddFilter(\n\t\t\t'editor.__unstableSavePost',\n\t\t\t'core/edit-post/save-metaboxes',\n\t\t\t( previous, options ) =>\n\t\t\t\tprevious.then( () => {\n\t\t\t\t\tif ( options.isAutosave ) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tif ( ! select.hasMetaBoxes() ) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn dispatch.requestMetaBoxUpdates();\n\t\t\t\t} )\n\t\t);\n\n\t\tdispatch( {\n\t\t\ttype: 'META_BOXES_INITIALIZED',\n\t\t} );\n\t};\n"],"mappings":"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"}
1
+ {"version":3,"names":["_i18n","require","_apiFetch","_interopRequireDefault","_interface","_preferences","_a11y","_notices","_coreData","_blockEditor","_editor","_deprecated","_hooks","_metaBoxes","_","openGeneralSidebar","name","dispatch","registry","isDistractionFree","select","preferencesStore","get","toggleDistractionFree","interfaceStore","enableComplementaryArea","editPostStore","exports","closeGeneralSidebar","disableComplementaryArea","openModal","deprecated","since","alternative","closeModal","openPublishSidebar","type","closePublishSidebar","togglePublishSidebar","toggleEditorPanelEnabled","panelName","_registry$select$get","inactivePanels","isPanelInactive","includes","updatedInactivePanels","filter","invactivePanelName","set","toggleEditorPanelOpened","_registry$select$get2","openPanels","isPanelOpen","updatedOpenPanels","openPanelName","removeEditorPanel","toggleFeature","feature","toggle","switchEditorMode","mode","blockEditorStore","clearSelectedBlock","message","__","speak","togglePinnedPluginItem","pluginName","isPinned","isItemPinned","updatePreferredStyleVariations","blockName","blockStyle","_registry$select$get3","existingVariations","updatedVariations","showBlockTypes","blockNames","_registry$select$get4","existingBlockNames","newBlockNames","Array","isArray","hideBlockTypes","_registry$select$get5","mergedBlockNames","Set","setAvailableMetaBoxesPerLocation","metaBoxesPerLocation","requestMetaBoxUpdates","window","tinyMCE","triggerSave","post","editorStore","getCurrentPost","additionalData","comment_status","ping_status","sticky","author","Boolean","baseFormData","FormData","document","querySelector","activeMetaBoxLocations","getActiveMetaBoxLocations","formDataToMerge","map","location","getMetaBoxContainer","formData","reduce","memo","currentFormData","key","value","append","forEach","apiFetch","url","_wpMetaBoxUrl","method","body","parse","metaBoxUpdatesSuccess","metaBoxUpdatesFailure","__experimentalSetPreviewDeviceType","deviceType","setIsInserterOpened","setIsListViewOpened","isOpen","setIsEditingTemplate","__unstableSwitchToTemplateMode","newTemplate","isWelcomeGuideActive","isFeatureActive","noticesStore","createSuccessNotice","__unstableCreateTemplate","template","savedTemplate","coreStore","saveEntityRecord","editEntityRecord","id","slug","metaBoxesInitialized","initializeMetaBoxes","isEditorReady","__unstableIsEditorReady","postType","getCurrentPostType","postboxes","page","add_postbox_toggles","addFilter","previous","options","then","isAutosave","hasMetaBoxes","batch","createInfoNotice"],"sources":["@wordpress/edit-post/src/store/actions.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport apiFetch from '@wordpress/api-fetch';\nimport { store as interfaceStore } from '@wordpress/interface';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { speak } from '@wordpress/a11y';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { store as editorStore } from '@wordpress/editor';\nimport deprecated from '@wordpress/deprecated';\nimport { addFilter } from '@wordpress/hooks';\n\n/**\n * Internal dependencies\n */\nimport { getMetaBoxContainer } from '../utils/meta-boxes';\nimport { store as editPostStore } from '.';\n\n/**\n * Returns an action object used in signalling that the user opened an editor sidebar.\n *\n * @param {?string} name Sidebar name to be opened.\n */\nexport const openGeneralSidebar =\n\t( name ) =>\n\t( { dispatch, registry } ) => {\n\t\tconst isDistractionFree = registry\n\t\t\t.select( preferencesStore )\n\t\t\t.get( 'core/edit-post', 'distractionFree' );\n\t\tif ( isDistractionFree ) {\n\t\t\tdispatch.toggleDistractionFree();\n\t\t}\n\t\tregistry\n\t\t\t.dispatch( interfaceStore )\n\t\t\t.enableComplementaryArea( editPostStore.name, name );\n\t};\n\n/**\n * Returns an action object signalling that the user closed the sidebar.\n */\nexport const closeGeneralSidebar =\n\t() =>\n\t( { registry } ) =>\n\t\tregistry\n\t\t\t.dispatch( interfaceStore )\n\t\t\t.disableComplementaryArea( editPostStore.name );\n\n/**\n * Returns an action object used in signalling that the user opened a modal.\n *\n * @deprecated since WP 6.3 use `core/interface` store's action with the same name instead.\n *\n *\n * @param {string} name A string that uniquely identifies the modal.\n *\n * @return {Object} Action object.\n */\nexport const openModal =\n\t( name ) =>\n\t( { registry } ) => {\n\t\tdeprecated( \"select( 'core/edit-post' ).openModal( name )\", {\n\t\t\tsince: '6.3',\n\t\t\talternative: \"select( 'core/interface').openModal( name )\",\n\t\t} );\n\t\treturn registry.dispatch( interfaceStore ).openModal( name );\n\t};\n\n/**\n * Returns an action object signalling that the user closed a modal.\n *\n * @deprecated since WP 6.3 use `core/interface` store's action with the same name instead.\n *\n * @return {Object} Action object.\n */\nexport const closeModal =\n\t() =>\n\t( { registry } ) => {\n\t\tdeprecated( \"select( 'core/edit-post' ).closeModal()\", {\n\t\t\tsince: '6.3',\n\t\t\talternative: \"select( 'core/interface').closeModal()\",\n\t\t} );\n\t\treturn registry.dispatch( interfaceStore ).closeModal();\n\t};\n\n/**\n * Returns an action object used in signalling that the user opened the publish\n * sidebar.\n *\n * @return {Object} Action object\n */\nexport function openPublishSidebar() {\n\treturn {\n\t\ttype: 'OPEN_PUBLISH_SIDEBAR',\n\t};\n}\n\n/**\n * Returns an action object used in signalling that the user closed the\n * publish sidebar.\n *\n * @return {Object} Action object.\n */\nexport function closePublishSidebar() {\n\treturn {\n\t\ttype: 'CLOSE_PUBLISH_SIDEBAR',\n\t};\n}\n\n/**\n * Returns an action object used in signalling that the user toggles the publish sidebar.\n *\n * @return {Object} Action object\n */\nexport function togglePublishSidebar() {\n\treturn {\n\t\ttype: 'TOGGLE_PUBLISH_SIDEBAR',\n\t};\n}\n\n/**\n * Returns an action object used to enable or disable a panel in the editor.\n *\n * @param {string} panelName A string that identifies the panel to enable or disable.\n *\n * @return {Object} Action object.\n */\nexport const toggleEditorPanelEnabled =\n\t( panelName ) =>\n\t( { registry } ) => {\n\t\tconst inactivePanels =\n\t\t\tregistry\n\t\t\t\t.select( preferencesStore )\n\t\t\t\t.get( 'core/edit-post', 'inactivePanels' ) ?? [];\n\n\t\tconst isPanelInactive = !! inactivePanels?.includes( panelName );\n\n\t\t// If the panel is inactive, remove it to enable it, else add it to\n\t\t// make it inactive.\n\t\tlet updatedInactivePanels;\n\t\tif ( isPanelInactive ) {\n\t\t\tupdatedInactivePanels = inactivePanels.filter(\n\t\t\t\t( invactivePanelName ) => invactivePanelName !== panelName\n\t\t\t);\n\t\t} else {\n\t\t\tupdatedInactivePanels = [ ...inactivePanels, panelName ];\n\t\t}\n\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.set( 'core/edit-post', 'inactivePanels', updatedInactivePanels );\n\t};\n\n/**\n * Opens a closed panel and closes an open panel.\n *\n * @param {string} panelName A string that identifies the panel to open or close.\n */\nexport const toggleEditorPanelOpened =\n\t( panelName ) =>\n\t( { registry } ) => {\n\t\tconst openPanels =\n\t\t\tregistry\n\t\t\t\t.select( preferencesStore )\n\t\t\t\t.get( 'core/edit-post', 'openPanels' ) ?? [];\n\n\t\tconst isPanelOpen = !! openPanels?.includes( panelName );\n\n\t\t// If the panel is open, remove it to close it, else add it to\n\t\t// make it open.\n\t\tlet updatedOpenPanels;\n\t\tif ( isPanelOpen ) {\n\t\t\tupdatedOpenPanels = openPanels.filter(\n\t\t\t\t( openPanelName ) => openPanelName !== panelName\n\t\t\t);\n\t\t} else {\n\t\t\tupdatedOpenPanels = [ ...openPanels, panelName ];\n\t\t}\n\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.set( 'core/edit-post', 'openPanels', updatedOpenPanels );\n\t};\n\n/**\n * Returns an action object used to remove a panel from the editor.\n *\n * @param {string} panelName A string that identifies the panel to remove.\n *\n * @return {Object} Action object.\n */\nexport function removeEditorPanel( panelName ) {\n\treturn {\n\t\ttype: 'REMOVE_PANEL',\n\t\tpanelName,\n\t};\n}\n\n/**\n * Triggers an action used to toggle a feature flag.\n *\n * @param {string} feature Feature name.\n */\nexport const toggleFeature =\n\t( feature ) =>\n\t( { registry } ) =>\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.toggle( 'core/edit-post', feature );\n\n/**\n * Triggers an action used to switch editor mode.\n *\n * @param {string} mode The editor mode.\n */\nexport const switchEditorMode =\n\t( mode ) =>\n\t( { dispatch, registry } ) => {\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.set( 'core/edit-post', 'editorMode', mode );\n\n\t\t// Unselect blocks when we switch to the code editor.\n\t\tif ( mode !== 'visual' ) {\n\t\t\tregistry.dispatch( blockEditorStore ).clearSelectedBlock();\n\t\t}\n\n\t\tif (\n\t\t\tmode === 'text' &&\n\t\t\tregistry\n\t\t\t\t.select( preferencesStore )\n\t\t\t\t.get( 'core/edit-post', 'distractionFree' )\n\t\t) {\n\t\t\tdispatch.toggleDistractionFree();\n\t\t}\n\n\t\tconst message =\n\t\t\tmode === 'visual'\n\t\t\t\t? __( 'Visual editor selected' )\n\t\t\t\t: __( 'Code editor selected' );\n\t\tspeak( message, 'assertive' );\n\t};\n\n/**\n * Triggers an action object used to toggle a plugin name flag.\n *\n * @param {string} pluginName Plugin name.\n */\nexport const togglePinnedPluginItem =\n\t( pluginName ) =>\n\t( { registry } ) => {\n\t\tconst isPinned = registry\n\t\t\t.select( interfaceStore )\n\t\t\t.isItemPinned( 'core/edit-post', pluginName );\n\n\t\tregistry\n\t\t\t.dispatch( interfaceStore )\n\t\t\t[ isPinned ? 'unpinItem' : 'pinItem' ](\n\t\t\t\t'core/edit-post',\n\t\t\t\tpluginName\n\t\t\t);\n\t};\n\n/**\n * Returns an action object used in signaling that a style should be auto-applied when a block is created.\n *\n * @param {string} blockName Name of the block.\n * @param {?string} blockStyle Name of the style that should be auto applied. If undefined, the \"auto apply\" setting of the block is removed.\n */\nexport const updatePreferredStyleVariations =\n\t( blockName, blockStyle ) =>\n\t( { registry } ) => {\n\t\tif ( ! blockName ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst existingVariations =\n\t\t\tregistry\n\t\t\t\t.select( preferencesStore )\n\t\t\t\t.get( 'core/edit-post', 'preferredStyleVariations' ) ?? {};\n\n\t\t// When the blockStyle is omitted, remove the block's preferred variation.\n\t\tif ( ! blockStyle ) {\n\t\t\tconst updatedVariations = {\n\t\t\t\t...existingVariations,\n\t\t\t};\n\n\t\t\tdelete updatedVariations[ blockName ];\n\n\t\t\tregistry\n\t\t\t\t.dispatch( preferencesStore )\n\t\t\t\t.set(\n\t\t\t\t\t'core/edit-post',\n\t\t\t\t\t'preferredStyleVariations',\n\t\t\t\t\tupdatedVariations\n\t\t\t\t);\n\t\t} else {\n\t\t\t// Else add the variation.\n\t\t\tregistry\n\t\t\t\t.dispatch( preferencesStore )\n\t\t\t\t.set( 'core/edit-post', 'preferredStyleVariations', {\n\t\t\t\t\t...existingVariations,\n\t\t\t\t\t[ blockName ]: blockStyle,\n\t\t\t\t} );\n\t\t}\n\t};\n\n/**\n * Update the provided block types to be visible.\n *\n * @param {string[]} blockNames Names of block types to show.\n */\nexport const showBlockTypes =\n\t( blockNames ) =>\n\t( { registry } ) => {\n\t\tconst existingBlockNames =\n\t\t\tregistry\n\t\t\t\t.select( preferencesStore )\n\t\t\t\t.get( 'core/edit-post', 'hiddenBlockTypes' ) ?? [];\n\n\t\tconst newBlockNames = existingBlockNames.filter(\n\t\t\t( type ) =>\n\t\t\t\t! (\n\t\t\t\t\tArray.isArray( blockNames ) ? blockNames : [ blockNames ]\n\t\t\t\t).includes( type )\n\t\t);\n\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.set( 'core/edit-post', 'hiddenBlockTypes', newBlockNames );\n\t};\n\n/**\n * Update the provided block types to be hidden.\n *\n * @param {string[]} blockNames Names of block types to hide.\n */\nexport const hideBlockTypes =\n\t( blockNames ) =>\n\t( { registry } ) => {\n\t\tconst existingBlockNames =\n\t\t\tregistry\n\t\t\t\t.select( preferencesStore )\n\t\t\t\t.get( 'core/edit-post', 'hiddenBlockTypes' ) ?? [];\n\n\t\tconst mergedBlockNames = new Set( [\n\t\t\t...existingBlockNames,\n\t\t\t...( Array.isArray( blockNames ) ? blockNames : [ blockNames ] ),\n\t\t] );\n\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.set( 'core/edit-post', 'hiddenBlockTypes', [\n\t\t\t\t...mergedBlockNames,\n\t\t\t] );\n\t};\n\n/**\n * Stores info about which Meta boxes are available in which location.\n *\n * @param {Object} metaBoxesPerLocation Meta boxes per location.\n */\nexport function setAvailableMetaBoxesPerLocation( metaBoxesPerLocation ) {\n\treturn {\n\t\ttype: 'SET_META_BOXES_PER_LOCATIONS',\n\t\tmetaBoxesPerLocation,\n\t};\n}\n\n/**\n * Update a metabox.\n */\nexport const requestMetaBoxUpdates =\n\t() =>\n\tasync ( { registry, select, dispatch } ) => {\n\t\tdispatch( {\n\t\t\ttype: 'REQUEST_META_BOX_UPDATES',\n\t\t} );\n\n\t\t// Saves the wp_editor fields.\n\t\tif ( window.tinyMCE ) {\n\t\t\twindow.tinyMCE.triggerSave();\n\t\t}\n\n\t\t// Additional data needed for backward compatibility.\n\t\t// If we do not provide this data, the post will be overridden with the default values.\n\t\tconst post = registry.select( editorStore ).getCurrentPost();\n\t\tconst additionalData = [\n\t\t\tpost.comment_status\n\t\t\t\t? [ 'comment_status', post.comment_status ]\n\t\t\t\t: false,\n\t\t\tpost.ping_status ? [ 'ping_status', post.ping_status ] : false,\n\t\t\tpost.sticky ? [ 'sticky', post.sticky ] : false,\n\t\t\tpost.author ? [ 'post_author', post.author ] : false,\n\t\t].filter( Boolean );\n\n\t\t// We gather all the metaboxes locations data and the base form data.\n\t\tconst baseFormData = new window.FormData(\n\t\t\tdocument.querySelector( '.metabox-base-form' )\n\t\t);\n\t\tconst activeMetaBoxLocations = select.getActiveMetaBoxLocations();\n\t\tconst formDataToMerge = [\n\t\t\tbaseFormData,\n\t\t\t...activeMetaBoxLocations.map(\n\t\t\t\t( location ) =>\n\t\t\t\t\tnew window.FormData( getMetaBoxContainer( location ) )\n\t\t\t),\n\t\t];\n\n\t\t// Merge all form data objects into a single one.\n\t\tconst formData = formDataToMerge.reduce( ( memo, currentFormData ) => {\n\t\t\tfor ( const [ key, value ] of currentFormData ) {\n\t\t\t\tmemo.append( key, value );\n\t\t\t}\n\t\t\treturn memo;\n\t\t}, new window.FormData() );\n\t\tadditionalData.forEach( ( [ key, value ] ) =>\n\t\t\tformData.append( key, value )\n\t\t);\n\n\t\ttry {\n\t\t\t// Save the metaboxes.\n\t\t\tawait apiFetch( {\n\t\t\t\turl: window._wpMetaBoxUrl,\n\t\t\t\tmethod: 'POST',\n\t\t\t\tbody: formData,\n\t\t\t\tparse: false,\n\t\t\t} );\n\t\t\tdispatch.metaBoxUpdatesSuccess();\n\t\t} catch {\n\t\t\tdispatch.metaBoxUpdatesFailure();\n\t\t}\n\t};\n\n/**\n * Returns an action object used to signal a successful meta box update.\n *\n * @return {Object} Action object.\n */\nexport function metaBoxUpdatesSuccess() {\n\treturn {\n\t\ttype: 'META_BOX_UPDATES_SUCCESS',\n\t};\n}\n\n/**\n * Returns an action object used to signal a failed meta box update.\n *\n * @return {Object} Action object.\n */\nexport function metaBoxUpdatesFailure() {\n\treturn {\n\t\ttype: 'META_BOX_UPDATES_FAILURE',\n\t};\n}\n\n/**\n * Returns an action object used to toggle the width of the editing canvas.\n *\n * @param {string} deviceType\n *\n * @return {Object} Action object.\n */\nexport function __experimentalSetPreviewDeviceType( deviceType ) {\n\treturn {\n\t\ttype: 'SET_PREVIEW_DEVICE_TYPE',\n\t\tdeviceType,\n\t};\n}\n\n/**\n * Returns an action object used to open/close the inserter.\n *\n * @param {boolean|Object} value Whether the inserter should be\n * opened (true) or closed (false).\n * To specify an insertion point,\n * use an object.\n * @param {string} value.rootClientId The root client ID to insert at.\n * @param {number} value.insertionIndex The index to insert at.\n *\n * @return {Object} Action object.\n */\nexport function setIsInserterOpened( value ) {\n\treturn {\n\t\ttype: 'SET_IS_INSERTER_OPENED',\n\t\tvalue,\n\t};\n}\n\n/**\n * Returns an action object used to open/close the list view.\n *\n * @param {boolean} isOpen A boolean representing whether the list view should be opened or closed.\n * @return {Object} Action object.\n */\nexport const setIsListViewOpened =\n\t( isOpen ) =>\n\t( { dispatch, registry } ) => {\n\t\tconst isDistractionFree = registry\n\t\t\t.select( preferencesStore )\n\t\t\t.get( 'core/edit-post', 'distractionFree' );\n\t\tif ( isDistractionFree && isOpen ) {\n\t\t\tdispatch.toggleDistractionFree();\n\t\t}\n\t\tdispatch( {\n\t\t\ttype: 'SET_IS_LIST_VIEW_OPENED',\n\t\t\tisOpen,\n\t\t} );\n\t};\n\n/**\n * Returns an action object used to switch to template editing.\n *\n * @param {boolean} value Is editing template.\n * @return {Object} Action object.\n */\nexport function setIsEditingTemplate( value ) {\n\treturn {\n\t\ttype: 'SET_IS_EDITING_TEMPLATE',\n\t\tvalue,\n\t};\n}\n\n/**\n * Switches to the template mode.\n *\n * @param {boolean} newTemplate Is new template.\n */\nexport const __unstableSwitchToTemplateMode =\n\t( newTemplate = false ) =>\n\t( { registry, select, dispatch } ) => {\n\t\tdispatch( setIsEditingTemplate( true ) );\n\t\tconst isWelcomeGuideActive = select.isFeatureActive(\n\t\t\t'welcomeGuideTemplate'\n\t\t);\n\t\tif ( ! isWelcomeGuideActive ) {\n\t\t\tconst message = newTemplate\n\t\t\t\t? __( \"Custom template created. You're in template mode now.\" )\n\t\t\t\t: __(\n\t\t\t\t\t\t'Editing template. Changes made here affect all posts and pages that use the template.'\n\t\t\t\t );\n\t\t\tregistry.dispatch( noticesStore ).createSuccessNotice( message, {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t\t}\n\t};\n\n/**\n * Create a block based template.\n *\n * @param {Object?} template Template to create and assign.\n */\nexport const __unstableCreateTemplate =\n\t( template ) =>\n\tasync ( { registry } ) => {\n\t\tconst savedTemplate = await registry\n\t\t\t.dispatch( coreStore )\n\t\t\t.saveEntityRecord( 'postType', 'wp_template', template );\n\t\tconst post = registry.select( editorStore ).getCurrentPost();\n\t\tregistry\n\t\t\t.dispatch( coreStore )\n\t\t\t.editEntityRecord( 'postType', post.type, post.id, {\n\t\t\t\ttemplate: savedTemplate.slug,\n\t\t\t} );\n\t};\n\nlet metaBoxesInitialized = false;\n\n/**\n * Initializes WordPress `postboxes` script and the logic for saving meta boxes.\n */\nexport const initializeMetaBoxes =\n\t() =>\n\t( { registry, select, dispatch } ) => {\n\t\tconst isEditorReady = registry\n\t\t\t.select( editorStore )\n\t\t\t.__unstableIsEditorReady();\n\n\t\tif ( ! isEditorReady ) {\n\t\t\treturn;\n\t\t}\n\t\t// Only initialize once.\n\t\tif ( metaBoxesInitialized ) {\n\t\t\treturn;\n\t\t}\n\t\tconst postType = registry.select( editorStore ).getCurrentPostType();\n\t\tif ( window.postboxes.page !== postType ) {\n\t\t\twindow.postboxes.add_postbox_toggles( postType );\n\t\t}\n\n\t\tmetaBoxesInitialized = true;\n\n\t\t// Save metaboxes on save completion, except for autosaves.\n\t\taddFilter(\n\t\t\t'editor.__unstableSavePost',\n\t\t\t'core/edit-post/save-metaboxes',\n\t\t\t( previous, options ) =>\n\t\t\t\tprevious.then( () => {\n\t\t\t\t\tif ( options.isAutosave ) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tif ( ! select.hasMetaBoxes() ) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn dispatch.requestMetaBoxUpdates();\n\t\t\t\t} )\n\t\t);\n\n\t\tdispatch( {\n\t\t\ttype: 'META_BOXES_INITIALIZED',\n\t\t} );\n\t};\n\n/**\n * Action that toggles Distraction free mode.\n * Distraction free mode expects there are no sidebars, as due to the\n * z-index values set, you can't close sidebars.\n */\nexport const toggleDistractionFree =\n\t() =>\n\t( { dispatch, registry } ) => {\n\t\tconst isDistractionFree = registry\n\t\t\t.select( preferencesStore )\n\t\t\t.get( 'core/edit-post', 'distractionFree' );\n\t\tif ( ! isDistractionFree ) {\n\t\t\tregistry.batch( () => {\n\t\t\t\tregistry\n\t\t\t\t\t.dispatch( preferencesStore )\n\t\t\t\t\t.set( 'core/edit-post', 'fixedToolbar', false );\n\t\t\t\tdispatch.setIsInserterOpened( false );\n\t\t\t\tdispatch.setIsListViewOpened( false );\n\t\t\t\tdispatch.closeGeneralSidebar();\n\t\t\t} );\n\t\t}\n\t\tregistry.batch( () => {\n\t\t\tregistry\n\t\t\t\t.dispatch( preferencesStore )\n\t\t\t\t.set(\n\t\t\t\t\t'core/edit-post',\n\t\t\t\t\t'distractionFree',\n\t\t\t\t\t! isDistractionFree\n\t\t\t\t);\n\t\t\tregistry\n\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t.createInfoNotice(\n\t\t\t\t\tisDistractionFree\n\t\t\t\t\t\t? __( 'Distraction free off.' )\n\t\t\t\t\t\t: __( 'Distraction free on.' ),\n\t\t\t\t\t{\n\t\t\t\t\t\tid: 'core/edit-post/distraction-free-mode/notice',\n\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t} );\n\t};\n"],"mappings":"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"}
@@ -7,8 +7,6 @@ import { useShortcut, store as keyboardShortcutsStore } from '@wordpress/keyboar
7
7
  import { __ } from '@wordpress/i18n';
8
8
  import { store as editorStore } from '@wordpress/editor';
9
9
  import { store as blockEditorStore } from '@wordpress/block-editor';
10
- import { store as noticesStore } from '@wordpress/notices';
11
- import { store as preferencesStore } from '@wordpress/preferences';
12
10
  import { createBlock } from '@wordpress/blocks';
13
11
 
14
12
  /**
@@ -22,8 +20,7 @@ function KeyboardShortcuts() {
22
20
  const {
23
21
  getEditorMode,
24
22
  isEditorSidebarOpened,
25
- isListViewOpened,
26
- isFeatureActive
23
+ isListViewOpened
27
24
  } = useSelect(editPostStore);
28
25
  const isModeToggleDisabled = useSelect(select => {
29
26
  const {
@@ -32,29 +29,17 @@ function KeyboardShortcuts() {
32
29
  } = select(editorStore).getEditorSettings();
33
30
  return !richEditingEnabled || !codeEditingEnabled;
34
31
  }, []);
35
- const {
36
- createInfoNotice
37
- } = useDispatch(noticesStore);
38
32
  const {
39
33
  switchEditorMode,
40
34
  openGeneralSidebar,
41
35
  closeGeneralSidebar,
42
36
  toggleFeature,
43
37
  setIsListViewOpened,
44
- setIsInserterOpened
38
+ toggleDistractionFree
45
39
  } = useDispatch(editPostStore);
46
40
  const {
47
41
  registerShortcut
48
42
  } = useDispatch(keyboardShortcutsStore);
49
- const {
50
- set: setPreference
51
- } = useDispatch(preferencesStore);
52
- const toggleDistractionFree = () => {
53
- setPreference('core/edit-post', 'fixedToolbar', false);
54
- setIsInserterOpened(false);
55
- setIsListViewOpened(false);
56
- closeGeneralSidebar();
57
- };
58
43
  const {
59
44
  replaceBlocks
60
45
  } = useDispatch(blockEditorStore);
@@ -200,11 +185,6 @@ function KeyboardShortcuts() {
200
185
  });
201
186
  useShortcut('core/edit-post/toggle-distraction-free', () => {
202
187
  toggleDistractionFree();
203
- toggleFeature('distractionFree');
204
- createInfoNotice(isFeatureActive('distractionFree') ? __('Distraction free on.') : __('Distraction free off.'), {
205
- id: 'core/edit-post/distraction-free-mode/notice',
206
- type: 'snackbar'
207
- });
208
188
  });
209
189
  useShortcut('core/edit-post/toggle-sidebar', event => {
210
190
  // This shortcut has no known clashes, but use preventDefault to prevent any
@@ -219,8 +199,9 @@ function KeyboardShortcuts() {
219
199
  });
220
200
 
221
201
  // Only opens the list view. Other functionality for this shortcut happens in the rendered sidebar.
222
- useShortcut('core/edit-post/toggle-list-view', () => {
202
+ useShortcut('core/edit-post/toggle-list-view', event => {
223
203
  if (!isListViewOpened()) {
204
+ event.preventDefault();
224
205
  setIsListViewOpened(true);
225
206
  }
226
207
  });