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

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.
Files changed (44) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/components/header/header-toolbar/index.js +5 -2
  3. package/build/components/header/header-toolbar/index.js.map +1 -1
  4. package/build/components/header/index.js +11 -2
  5. package/build/components/header/index.js.map +1 -1
  6. package/build/components/layout/index.js +15 -5
  7. package/build/components/layout/index.js.map +1 -1
  8. package/build/components/secondary-sidebar/list-view-sidebar.js +22 -16
  9. package/build/components/secondary-sidebar/list-view-sidebar.js.map +1 -1
  10. package/build/components/start-page-options/index.js +2 -3
  11. package/build/components/start-page-options/index.js.map +1 -1
  12. package/build/components/visual-editor/index.js +34 -44
  13. package/build/components/visual-editor/index.js.map +1 -1
  14. package/build/editor.js +2 -3
  15. package/build/editor.js.map +1 -1
  16. package/build-module/components/header/header-toolbar/index.js +5 -2
  17. package/build-module/components/header/header-toolbar/index.js.map +1 -1
  18. package/build-module/components/header/index.js +11 -2
  19. package/build-module/components/header/index.js.map +1 -1
  20. package/build-module/components/layout/index.js +15 -5
  21. package/build-module/components/layout/index.js.map +1 -1
  22. package/build-module/components/secondary-sidebar/list-view-sidebar.js +24 -18
  23. package/build-module/components/secondary-sidebar/list-view-sidebar.js.map +1 -1
  24. package/build-module/components/start-page-options/index.js +2 -3
  25. package/build-module/components/start-page-options/index.js.map +1 -1
  26. package/build-module/components/visual-editor/index.js +35 -45
  27. package/build-module/components/visual-editor/index.js.map +1 -1
  28. package/build-module/editor.js +2 -3
  29. package/build-module/editor.js.map +1 -1
  30. package/build-style/style-rtl.css +94 -8
  31. package/build-style/style.css +94 -8
  32. package/package.json +32 -32
  33. package/src/components/header/header-toolbar/index.js +2 -1
  34. package/src/components/header/index.js +9 -2
  35. package/src/components/keyboard-shortcut-help-modal/test/index.js +4 -5
  36. package/src/components/layout/index.js +19 -3
  37. package/src/components/preferences-modal/test/index.js +35 -8
  38. package/src/components/secondary-sidebar/list-view-sidebar.js +30 -24
  39. package/src/components/start-page-options/index.js +4 -5
  40. package/src/components/visual-editor/index.js +49 -55
  41. package/src/components/visual-editor/style.scss +89 -0
  42. package/src/editor.js +17 -20
  43. package/src/style.scss +0 -9
  44. package/src/components/preferences-modal/test/__snapshots__/index.js.snap +0 -942
@@ -31,43 +31,10 @@ var _lockUnlock = require("../../lock-unlock");
31
31
  const {
32
32
  LayoutStyle,
33
33
  useLayoutClasses,
34
- useLayoutStyles
34
+ useLayoutStyles,
35
+ ExperimentalBlockCanvas: BlockCanvas
35
36
  } = (0, _lockUnlock.unlock)(_blockEditor.privateApis);
36
37
  const isGutenbergPlugin = process.env.IS_GUTENBERG_PLUGIN ? true : false;
37
- function MaybeIframe({
38
- children,
39
- contentRef,
40
- shouldIframe,
41
- styles,
42
- style
43
- }) {
44
- const ref = (0, _blockEditor.__unstableUseMouseMoveTypingReset)();
45
- if (!shouldIframe) {
46
- return (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(_blockEditor.__unstableEditorStyles, {
47
- styles: styles
48
- }), (0, _element.createElement)(_blockEditor.WritingFlow, {
49
- ref: contentRef,
50
- className: "editor-styles-wrapper",
51
- style: {
52
- flex: '1',
53
- ...style
54
- },
55
- tabIndex: -1
56
- }, children));
57
- }
58
- return (0, _element.createElement)(_blockEditor.__unstableIframe, {
59
- ref: ref,
60
- contentRef: contentRef,
61
- style: {
62
- width: '100%',
63
- height: '100%',
64
- display: 'block'
65
- },
66
- name: "editor-canvas"
67
- }, (0, _element.createElement)(_blockEditor.__unstableEditorStyles, {
68
- styles: styles
69
- }), children);
70
- }
71
38
 
72
39
  /**
73
40
  * Given an array of nested blocks, find the first Post Content
@@ -91,6 +58,14 @@ function getPostContentAttributes(blocks) {
91
58
  }
92
59
  }
93
60
  }
61
+ function checkForPostContentAtRootLevel(blocks) {
62
+ for (let i = 0; i < blocks.length; i++) {
63
+ if (blocks[i].name === 'core/post-content') {
64
+ return true;
65
+ }
66
+ }
67
+ return false;
68
+ }
94
69
  function VisualEditor({
95
70
  styles
96
71
  }) {
@@ -120,14 +95,16 @@ function VisualEditor({
120
95
  getBlockTypes
121
96
  } = select(_blocks.store);
122
97
  const _isTemplateMode = isEditingTemplate();
98
+ const postTypeSlug = getCurrentPostType();
123
99
  let _wrapperBlockName;
124
- if (getCurrentPostType() === 'wp_block') {
100
+ if (postTypeSlug === 'wp_block') {
125
101
  _wrapperBlockName = 'core/block';
126
102
  } else if (!_isTemplateMode) {
127
103
  _wrapperBlockName = 'core/post-content';
128
104
  }
129
105
  const editorSettings = getEditorSettings();
130
106
  const supportsTemplateMode = editorSettings.supportsTemplateMode;
107
+ const postType = select(_coreData.store).getPostType(postTypeSlug);
131
108
  const canEditTemplate = select(_coreData.store).canUser('create', 'templates');
132
109
  return {
133
110
  deviceType: __experimentalGetPreviewDeviceType(),
@@ -136,7 +113,7 @@ function VisualEditor({
136
113
  postContentAttributes: getEditorSettings().postContentAttributes,
137
114
  // Post template fetch returns a 404 on classic themes, which
138
115
  // messes with e2e tests, so check it's a block theme first.
139
- editedPostTemplate: supportsTemplateMode && canEditTemplate ? getEditedPostTemplate() : undefined,
116
+ editedPostTemplate: postType?.viewable && supportsTemplateMode && canEditTemplate ? getEditedPostTemplate() : undefined,
140
117
  wrapperBlockName: _wrapperBlockName,
141
118
  wrapperUniqueId: getCurrentPostId(),
142
119
  isBlockBasedTheme: editorSettings.__unstableIsBlockBasedTheme,
@@ -195,8 +172,7 @@ function VisualEditor({
195
172
  paddingBottom = '40vh';
196
173
  }
197
174
  const ref = (0, _element.useRef)();
198
- const contentRef = (0, _compose.useMergeRefs)([ref, (0, _blockEditor.__unstableUseClipboardHandler)(), (0, _blockEditor.__unstableUseTypewriter)(), (0, _blockEditor.__unstableUseBlockSelectionClearer)()]);
199
- const blockSelectionClearerRef = (0, _blockEditor.__unstableUseBlockSelectionClearer)();
175
+ const contentRef = (0, _compose.useMergeRefs)([ref, (0, _blockEditor.__unstableUseTypewriter)()]);
200
176
 
201
177
  // fallbackLayout is used if there is no Post Content,
202
178
  // and for Post Title.
@@ -232,6 +208,19 @@ function VisualEditor({
232
208
  const parseableContent = typeof editedPostTemplate?.content === 'string' ? editedPostTemplate?.content : '';
233
209
  return getPostContentAttributes((0, _blocks.parse)(parseableContent)) || {};
234
210
  }, [editedPostTemplate?.content, editedPostTemplate?.blocks, postContentAttributes]);
211
+ const hasPostContentAtRootLevel = (0, _element.useMemo)(() => {
212
+ if (!editedPostTemplate?.content && !editedPostTemplate?.blocks) {
213
+ return false;
214
+ }
215
+ // When in template editing mode, we can access the blocks directly.
216
+ if (editedPostTemplate?.blocks) {
217
+ return checkForPostContentAtRootLevel(editedPostTemplate?.blocks);
218
+ }
219
+ // If there are no blocks, we have to parse the content string.
220
+ // Best double-check it's a string otherwise the parse function gets unhappy.
221
+ const parseableContent = typeof editedPostTemplate?.content === 'string' ? editedPostTemplate?.content : '';
222
+ return checkForPostContentAtRootLevel((0, _blocks.parse)(parseableContent)) || false;
223
+ }, [editedPostTemplate?.content, editedPostTemplate?.blocks]);
235
224
  const {
236
225
  layout = {},
237
226
  align = ''
@@ -258,6 +247,7 @@ function VisualEditor({
258
247
  // If there is a Post Content block we use its layout for the block list;
259
248
  // if not, this must be a classic theme, in which case we use the fallback layout.
260
249
  const blockListLayout = postContentAttributes ? postContentLayout : fallbackLayout;
250
+ const postEditorLayout = blockListLayout?.type === 'default' && !hasPostContentAtRootLevel ? fallbackLayout : blockListLayout;
261
251
  const observeTypingRef = (0, _blockEditor.__unstableUseTypingObserver)();
262
252
  const titleRef = (0, _element.useRef)();
263
253
  (0, _element.useEffect)(() => {
@@ -287,22 +277,22 @@ function VisualEditor({
287
277
  className: "edit-post-visual-editor__content-area",
288
278
  animate: {
289
279
  padding: isTemplateMode ? '48px 48px 0' : 0
290
- },
291
- ref: blockSelectionClearerRef
280
+ }
292
281
  }, (0, _element.createElement)(_components.__unstableMotion.div, {
293
282
  animate: animatedStyles,
294
283
  initial: desktopCanvasStyles,
295
284
  className: previewMode
296
- }, (0, _element.createElement)(MaybeIframe, {
285
+ }, (0, _element.createElement)(BlockCanvas, {
297
286
  shouldIframe: isToBeIframed,
298
287
  contentRef: contentRef,
299
- styles: styles
288
+ styles: styles,
289
+ height: "100%"
300
290
  }, themeSupportsLayout && !themeHasDisabledLayoutStyles && !isTemplateMode && (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(LayoutStyle, {
301
291
  selector: ".edit-post-visual-editor__post-title-wrapper",
302
292
  layout: fallbackLayout
303
293
  }), (0, _element.createElement)(LayoutStyle, {
304
294
  selector: ".block-editor-block-list__layout.is-root-container",
305
- layout: blockListLayout
295
+ layout: postEditorLayout
306
296
  }), align && (0, _element.createElement)(LayoutStyle, {
307
297
  css: alignCSS
308
298
  }), postContentLayoutStyles && (0, _element.createElement)(LayoutStyle, {
@@ -1 +1 @@
1
- {"version":3,"names":["_element","require","_classnames","_interopRequireDefault","_editor","_blockEditor","_components","_data","_compose","_blocks","_coreData","_store","_lockUnlock","LayoutStyle","useLayoutClasses","useLayoutStyles","unlock","blockEditorPrivateApis","isGutenbergPlugin","process","env","IS_GUTENBERG_PLUGIN","MaybeIframe","children","contentRef","shouldIframe","styles","style","ref","useMouseMoveTypingReset","createElement","Fragment","__unstableEditorStyles","WritingFlow","className","flex","tabIndex","__unstableIframe","width","height","display","name","getPostContentAttributes","blocks","i","length","attributes","innerBlocks","nestedPostContent","VisualEditor","deviceType","isWelcomeGuideVisible","isTemplateMode","postContentAttributes","editedPostTemplate","wrapperBlockName","wrapperUniqueId","isBlockBasedTheme","hasV3BlocksOnly","useSelect","select","isFeatureActive","isEditingTemplate","getEditedPostTemplate","__experimentalGetPreviewDeviceType","editPostStore","getCurrentPostId","getCurrentPostType","getEditorSettings","editorStore","getBlockTypes","blocksStore","_isTemplateMode","_wrapperBlockName","editorSettings","supportsTemplateMode","canEditTemplate","coreStore","canUser","undefined","__unstableIsBlockBasedTheme","every","type","apiVersion","isCleanNewPost","hasMetaBoxes","hasRootPaddingAwareAlignments","isFocusMode","themeHasDisabledLayoutStyles","themeSupportsLayout","_settings","blockEditorStore","getSettings","disableLayoutStyles","supportsLayout","focusMode","__experimentalFeatures","useRootPaddingAwareAlignments","desktopCanvasStyles","marginLeft","marginRight","flexFlow","background","templateModeStyles","borderRadius","border","borderBottom","resizedCanvasStyles","useResizeCanvas","globalLayoutSettings","useSetting","previewMode","toLowerCase","animatedStyles","paddingBottom","useRef","useMergeRefs","useClipboardHandler","useTypewriter","useBlockSelectionClearer","blockSelectionClearerRef","fallbackLayout","useMemo","newestPostContentAttributes","content","parseableContent","parse","layout","align","postContentLayoutClasses","blockListLayoutClass","classnames","postContentLayoutStyles","postContentLayout","inherit","contentSize","wideSize","blockListLayout","observeTypingRef","useTypingObserver","titleRef","useEffect","current","focus","css","alignCSS","isToBeIframed","BlockTools","__unstableContentRef","__unstableMotion","div","animate","padding","initial","selector","contentEditable","PostTitle","__experimentalRecursionProvider","blockName","uniqueId","BlockList"],"sources":["@wordpress/edit-post/src/components/visual-editor/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { PostTitle, store as editorStore } from '@wordpress/editor';\nimport {\n\tWritingFlow,\n\tBlockList,\n\tBlockTools,\n\tstore as blockEditorStore,\n\t__unstableUseBlockSelectionClearer as useBlockSelectionClearer,\n\t__unstableUseTypewriter as useTypewriter,\n\t__unstableUseClipboardHandler as useClipboardHandler,\n\t__unstableUseTypingObserver as useTypingObserver,\n\t__experimentalUseResizeCanvas as useResizeCanvas,\n\t__unstableEditorStyles as EditorStyles,\n\tuseSetting,\n\t__unstableUseMouseMoveTypingReset as useMouseMoveTypingReset,\n\t__unstableIframe as Iframe,\n\t__experimentalRecursionProvider as RecursionProvider,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { useEffect, useRef, useMemo } from '@wordpress/element';\nimport { __unstableMotion as motion } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { useMergeRefs } from '@wordpress/compose';\nimport { parse, store as blocksStore } from '@wordpress/blocks';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\n\nconst { LayoutStyle, useLayoutClasses, useLayoutStyles } = unlock(\n\tblockEditorPrivateApis\n);\n\nconst isGutenbergPlugin = process.env.IS_GUTENBERG_PLUGIN ? true : false;\n\nfunction MaybeIframe( { children, contentRef, shouldIframe, styles, style } ) {\n\tconst ref = useMouseMoveTypingReset();\n\n\tif ( ! shouldIframe ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<EditorStyles styles={ styles } />\n\t\t\t\t<WritingFlow\n\t\t\t\t\tref={ contentRef }\n\t\t\t\t\tclassName=\"editor-styles-wrapper\"\n\t\t\t\t\tstyle={ { flex: '1', ...style } }\n\t\t\t\t\ttabIndex={ -1 }\n\t\t\t\t>\n\t\t\t\t\t{ children }\n\t\t\t\t</WritingFlow>\n\t\t\t</>\n\t\t);\n\t}\n\n\treturn (\n\t\t<Iframe\n\t\t\tref={ ref }\n\t\t\tcontentRef={ contentRef }\n\t\t\tstyle={ { width: '100%', height: '100%', display: 'block' } }\n\t\t\tname=\"editor-canvas\"\n\t\t>\n\t\t\t<EditorStyles styles={ styles } />\n\t\t\t{ children }\n\t\t</Iframe>\n\t);\n}\n\n/**\n * Given an array of nested blocks, find the first Post Content\n * block inside it, recursing through any nesting levels,\n * and return its attributes.\n *\n * @param {Array} blocks A list of blocks.\n *\n * @return {Object | undefined} The Post Content block.\n */\nfunction getPostContentAttributes( blocks ) {\n\tfor ( let i = 0; i < blocks.length; i++ ) {\n\t\tif ( blocks[ i ].name === 'core/post-content' ) {\n\t\t\treturn blocks[ i ].attributes;\n\t\t}\n\t\tif ( blocks[ i ].innerBlocks.length ) {\n\t\t\tconst nestedPostContent = getPostContentAttributes(\n\t\t\t\tblocks[ i ].innerBlocks\n\t\t\t);\n\n\t\t\tif ( nestedPostContent ) {\n\t\t\t\treturn nestedPostContent;\n\t\t\t}\n\t\t}\n\t}\n}\n\nexport default function VisualEditor( { styles } ) {\n\tconst {\n\t\tdeviceType,\n\t\tisWelcomeGuideVisible,\n\t\tisTemplateMode,\n\t\tpostContentAttributes,\n\t\teditedPostTemplate = {},\n\t\twrapperBlockName,\n\t\twrapperUniqueId,\n\t\tisBlockBasedTheme,\n\t\thasV3BlocksOnly,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tisFeatureActive,\n\t\t\tisEditingTemplate,\n\t\t\tgetEditedPostTemplate,\n\t\t\t__experimentalGetPreviewDeviceType,\n\t\t} = select( editPostStore );\n\t\tconst { getCurrentPostId, getCurrentPostType, getEditorSettings } =\n\t\t\tselect( editorStore );\n\t\tconst { getBlockTypes } = select( blocksStore );\n\t\tconst _isTemplateMode = isEditingTemplate();\n\t\tlet _wrapperBlockName;\n\n\t\tif ( getCurrentPostType() === 'wp_block' ) {\n\t\t\t_wrapperBlockName = 'core/block';\n\t\t} else if ( ! _isTemplateMode ) {\n\t\t\t_wrapperBlockName = 'core/post-content';\n\t\t}\n\n\t\tconst editorSettings = getEditorSettings();\n\t\tconst supportsTemplateMode = editorSettings.supportsTemplateMode;\n\t\tconst canEditTemplate = select( coreStore ).canUser(\n\t\t\t'create',\n\t\t\t'templates'\n\t\t);\n\n\t\treturn {\n\t\t\tdeviceType: __experimentalGetPreviewDeviceType(),\n\t\t\tisWelcomeGuideVisible: isFeatureActive( 'welcomeGuide' ),\n\t\t\tisTemplateMode: _isTemplateMode,\n\t\t\tpostContentAttributes: getEditorSettings().postContentAttributes,\n\t\t\t// Post template fetch returns a 404 on classic themes, which\n\t\t\t// messes with e2e tests, so check it's a block theme first.\n\t\t\teditedPostTemplate:\n\t\t\t\tsupportsTemplateMode && canEditTemplate\n\t\t\t\t\t? getEditedPostTemplate()\n\t\t\t\t\t: undefined,\n\t\t\twrapperBlockName: _wrapperBlockName,\n\t\t\twrapperUniqueId: getCurrentPostId(),\n\t\t\tisBlockBasedTheme: editorSettings.__unstableIsBlockBasedTheme,\n\t\t\thasV3BlocksOnly: getBlockTypes().every( ( type ) => {\n\t\t\t\treturn type.apiVersion >= 3;\n\t\t\t} ),\n\t\t};\n\t}, [] );\n\tconst { isCleanNewPost } = useSelect( editorStore );\n\tconst hasMetaBoxes = useSelect(\n\t\t( select ) => select( editPostStore ).hasMetaBoxes(),\n\t\t[]\n\t);\n\tconst {\n\t\thasRootPaddingAwareAlignments,\n\t\tisFocusMode,\n\t\tthemeHasDisabledLayoutStyles,\n\t\tthemeSupportsLayout,\n\t} = useSelect( ( select ) => {\n\t\tconst _settings = select( blockEditorStore ).getSettings();\n\t\treturn {\n\t\t\tthemeHasDisabledLayoutStyles: _settings.disableLayoutStyles,\n\t\t\tthemeSupportsLayout: _settings.supportsLayout,\n\t\t\tisFocusMode: _settings.focusMode,\n\t\t\thasRootPaddingAwareAlignments:\n\t\t\t\t_settings.__experimentalFeatures?.useRootPaddingAwareAlignments,\n\t\t};\n\t}, [] );\n\tconst desktopCanvasStyles = {\n\t\theight: '100%',\n\t\twidth: '100%',\n\t\tmarginLeft: 'auto',\n\t\tmarginRight: 'auto',\n\t\tdisplay: 'flex',\n\t\tflexFlow: 'column',\n\t\t// Default background color so that grey\n\t\t// .edit-post-editor-regions__content color doesn't show through.\n\t\tbackground: 'white',\n\t};\n\tconst templateModeStyles = {\n\t\t...desktopCanvasStyles,\n\t\tborderRadius: '2px 2px 0 0',\n\t\tborder: '1px solid #ddd',\n\t\tborderBottom: 0,\n\t};\n\tconst resizedCanvasStyles = useResizeCanvas( deviceType, isTemplateMode );\n\tconst globalLayoutSettings = useSetting( 'layout' );\n\tconst previewMode = 'is-' + deviceType.toLowerCase() + '-preview';\n\n\tlet animatedStyles = isTemplateMode\n\t\t? templateModeStyles\n\t\t: desktopCanvasStyles;\n\tif ( resizedCanvasStyles ) {\n\t\tanimatedStyles = resizedCanvasStyles;\n\t}\n\n\tlet paddingBottom;\n\n\t// Add a constant padding for the typewritter effect. When typing at the\n\t// bottom, there needs to be room to scroll up.\n\tif ( ! hasMetaBoxes && ! resizedCanvasStyles && ! isTemplateMode ) {\n\t\tpaddingBottom = '40vh';\n\t}\n\n\tconst ref = useRef();\n\tconst contentRef = useMergeRefs( [\n\t\tref,\n\t\tuseClipboardHandler(),\n\t\tuseTypewriter(),\n\t\tuseBlockSelectionClearer(),\n\t] );\n\n\tconst blockSelectionClearerRef = useBlockSelectionClearer();\n\n\t// fallbackLayout is used if there is no Post Content,\n\t// and for Post Title.\n\tconst fallbackLayout = useMemo( () => {\n\t\tif ( isTemplateMode ) {\n\t\t\treturn { type: 'default' };\n\t\t}\n\n\t\tif ( themeSupportsLayout ) {\n\t\t\t// We need to ensure support for wide and full alignments,\n\t\t\t// so we add the constrained type.\n\t\t\treturn { ...globalLayoutSettings, type: 'constrained' };\n\t\t}\n\t\t// Set default layout for classic themes so all alignments are supported.\n\t\treturn { type: 'default' };\n\t}, [ isTemplateMode, themeSupportsLayout, globalLayoutSettings ] );\n\n\tconst newestPostContentAttributes = useMemo( () => {\n\t\tif ( ! editedPostTemplate?.content && ! editedPostTemplate?.blocks ) {\n\t\t\treturn postContentAttributes;\n\t\t}\n\t\t// When in template editing mode, we can access the blocks directly.\n\t\tif ( editedPostTemplate?.blocks ) {\n\t\t\treturn getPostContentAttributes( editedPostTemplate?.blocks );\n\t\t}\n\t\t// If there are no blocks, we have to parse the content string.\n\t\t// Best double-check it's a string otherwise the parse function gets unhappy.\n\t\tconst parseableContent =\n\t\t\ttypeof editedPostTemplate?.content === 'string'\n\t\t\t\t? editedPostTemplate?.content\n\t\t\t\t: '';\n\n\t\treturn getPostContentAttributes( parse( parseableContent ) ) || {};\n\t}, [\n\t\teditedPostTemplate?.content,\n\t\teditedPostTemplate?.blocks,\n\t\tpostContentAttributes,\n\t] );\n\n\tconst { layout = {}, align = '' } = newestPostContentAttributes || {};\n\n\tconst postContentLayoutClasses = useLayoutClasses(\n\t\tnewestPostContentAttributes,\n\t\t'core/post-content'\n\t);\n\n\tconst blockListLayoutClass = classnames(\n\t\t{\n\t\t\t'is-layout-flow': ! themeSupportsLayout,\n\t\t},\n\t\tthemeSupportsLayout && postContentLayoutClasses,\n\t\talign && `align${ align }`\n\t);\n\n\tconst postContentLayoutStyles = useLayoutStyles(\n\t\tnewestPostContentAttributes,\n\t\t'core/post-content',\n\t\t'.block-editor-block-list__layout.is-root-container'\n\t);\n\n\t// Update type for blocks using legacy layouts.\n\tconst postContentLayout = useMemo( () => {\n\t\treturn layout &&\n\t\t\t( layout?.type === 'constrained' ||\n\t\t\t\tlayout?.inherit ||\n\t\t\t\tlayout?.contentSize ||\n\t\t\t\tlayout?.wideSize )\n\t\t\t? { ...globalLayoutSettings, ...layout, type: 'constrained' }\n\t\t\t: { ...globalLayoutSettings, ...layout, type: 'default' };\n\t}, [\n\t\tlayout?.type,\n\t\tlayout?.inherit,\n\t\tlayout?.contentSize,\n\t\tlayout?.wideSize,\n\t\tglobalLayoutSettings,\n\t] );\n\n\t// If there is a Post Content block we use its layout for the block list;\n\t// if not, this must be a classic theme, in which case we use the fallback layout.\n\tconst blockListLayout = postContentAttributes\n\t\t? postContentLayout\n\t\t: fallbackLayout;\n\n\tconst observeTypingRef = useTypingObserver();\n\tconst titleRef = useRef();\n\tuseEffect( () => {\n\t\tif ( isWelcomeGuideVisible || ! isCleanNewPost() ) {\n\t\t\treturn;\n\t\t}\n\t\ttitleRef?.current?.focus();\n\t}, [ isWelcomeGuideVisible, isCleanNewPost ] );\n\n\tstyles = useMemo(\n\t\t() => [\n\t\t\t...styles,\n\t\t\t{\n\t\t\t\t// We should move this in to future to the body.\n\t\t\t\tcss:\n\t\t\t\t\t`.edit-post-visual-editor__post-title-wrapper{margin-top:4rem}` +\n\t\t\t\t\t( paddingBottom\n\t\t\t\t\t\t? `body{padding-bottom:${ paddingBottom }}`\n\t\t\t\t\t\t: '' ),\n\t\t\t},\n\t\t],\n\t\t[ styles ]\n\t);\n\n\t// Add some styles for alignwide/alignfull Post Content and its children.\n\tconst alignCSS = `.is-root-container.alignwide { max-width: var(--wp--style--global--wide-size); margin-left: auto; margin-right: auto;}\n\t\t.is-root-container.alignwide:where(.is-layout-flow) > :not(.alignleft):not(.alignright) { max-width: var(--wp--style--global--wide-size);}\n\t\t.is-root-container.alignfull { max-width: none; margin-left: auto; margin-right: auto;}\n\t\t.is-root-container.alignfull:where(.is-layout-flow) > :not(.alignleft):not(.alignright) { max-width: none;}`;\n\n\tconst isToBeIframed =\n\t\t( ( hasV3BlocksOnly || ( isGutenbergPlugin && isBlockBasedTheme ) ) &&\n\t\t\t! hasMetaBoxes ) ||\n\t\tisTemplateMode ||\n\t\tdeviceType === 'Tablet' ||\n\t\tdeviceType === 'Mobile';\n\n\treturn (\n\t\t<BlockTools\n\t\t\t__unstableContentRef={ ref }\n\t\t\tclassName={ classnames( 'edit-post-visual-editor', {\n\t\t\t\t'is-template-mode': isTemplateMode,\n\t\t\t\t'has-inline-canvas': ! isToBeIframed,\n\t\t\t} ) }\n\t\t>\n\t\t\t<motion.div\n\t\t\t\tclassName=\"edit-post-visual-editor__content-area\"\n\t\t\t\tanimate={ {\n\t\t\t\t\tpadding: isTemplateMode ? '48px 48px 0' : 0,\n\t\t\t\t} }\n\t\t\t\tref={ blockSelectionClearerRef }\n\t\t\t>\n\t\t\t\t<motion.div\n\t\t\t\t\tanimate={ animatedStyles }\n\t\t\t\t\tinitial={ desktopCanvasStyles }\n\t\t\t\t\tclassName={ previewMode }\n\t\t\t\t>\n\t\t\t\t\t<MaybeIframe\n\t\t\t\t\t\tshouldIframe={ isToBeIframed }\n\t\t\t\t\t\tcontentRef={ contentRef }\n\t\t\t\t\t\tstyles={ styles }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ themeSupportsLayout &&\n\t\t\t\t\t\t\t! themeHasDisabledLayoutStyles &&\n\t\t\t\t\t\t\t! isTemplateMode && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<LayoutStyle\n\t\t\t\t\t\t\t\t\t\tselector=\".edit-post-visual-editor__post-title-wrapper\"\n\t\t\t\t\t\t\t\t\t\tlayout={ fallbackLayout }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t<LayoutStyle\n\t\t\t\t\t\t\t\t\t\tselector=\".block-editor-block-list__layout.is-root-container\"\n\t\t\t\t\t\t\t\t\t\tlayout={ blockListLayout }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t{ align && (\n\t\t\t\t\t\t\t\t\t\t<LayoutStyle css={ alignCSS } />\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ postContentLayoutStyles && (\n\t\t\t\t\t\t\t\t\t\t<LayoutStyle\n\t\t\t\t\t\t\t\t\t\t\tlayout={ postContentLayout }\n\t\t\t\t\t\t\t\t\t\t\tcss={ postContentLayoutStyles }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ ! isTemplateMode && (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t\t'edit-post-visual-editor__post-title-wrapper',\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t'is-focus-mode': isFocusMode,\n\t\t\t\t\t\t\t\t\t\t'has-global-padding':\n\t\t\t\t\t\t\t\t\t\t\thasRootPaddingAwareAlignments,\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tcontentEditable={ false }\n\t\t\t\t\t\t\t\tref={ observeTypingRef }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<PostTitle ref={ titleRef } />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<RecursionProvider\n\t\t\t\t\t\t\tblockName={ wrapperBlockName }\n\t\t\t\t\t\t\tuniqueId={ wrapperUniqueId }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<BlockList\n\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\tisTemplateMode\n\t\t\t\t\t\t\t\t\t\t? 'wp-site-blocks'\n\t\t\t\t\t\t\t\t\t\t: `${ blockListLayoutClass } wp-block-post-content` // Ensure root level blocks receive default/flow blockGap styling rules.\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tlayout={ blockListLayout }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</RecursionProvider>\n\t\t\t\t\t</MaybeIframe>\n\t\t\t\t</motion.div>\n\t\t\t</motion.div>\n\t\t</BlockTools>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_element","require","_classnames","_interopRequireDefault","_editor","_blockEditor","_components","_data","_compose","_blocks","_coreData","_store","_lockUnlock","LayoutStyle","useLayoutClasses","useLayoutStyles","ExperimentalBlockCanvas","BlockCanvas","unlock","blockEditorPrivateApis","isGutenbergPlugin","process","env","IS_GUTENBERG_PLUGIN","getPostContentAttributes","blocks","i","length","name","attributes","innerBlocks","nestedPostContent","checkForPostContentAtRootLevel","VisualEditor","styles","deviceType","isWelcomeGuideVisible","isTemplateMode","postContentAttributes","editedPostTemplate","wrapperBlockName","wrapperUniqueId","isBlockBasedTheme","hasV3BlocksOnly","useSelect","select","isFeatureActive","isEditingTemplate","getEditedPostTemplate","__experimentalGetPreviewDeviceType","editPostStore","getCurrentPostId","getCurrentPostType","getEditorSettings","editorStore","getBlockTypes","blocksStore","_isTemplateMode","postTypeSlug","_wrapperBlockName","editorSettings","supportsTemplateMode","postType","coreStore","getPostType","canEditTemplate","canUser","viewable","undefined","__unstableIsBlockBasedTheme","every","type","apiVersion","isCleanNewPost","hasMetaBoxes","hasRootPaddingAwareAlignments","isFocusMode","themeHasDisabledLayoutStyles","themeSupportsLayout","_settings","blockEditorStore","getSettings","disableLayoutStyles","supportsLayout","focusMode","__experimentalFeatures","useRootPaddingAwareAlignments","desktopCanvasStyles","height","width","marginLeft","marginRight","display","flexFlow","background","templateModeStyles","borderRadius","border","borderBottom","resizedCanvasStyles","useResizeCanvas","globalLayoutSettings","useSetting","previewMode","toLowerCase","animatedStyles","paddingBottom","ref","useRef","contentRef","useMergeRefs","useTypewriter","fallbackLayout","useMemo","newestPostContentAttributes","content","parseableContent","parse","hasPostContentAtRootLevel","layout","align","postContentLayoutClasses","blockListLayoutClass","classnames","postContentLayoutStyles","postContentLayout","inherit","contentSize","wideSize","blockListLayout","postEditorLayout","observeTypingRef","useTypingObserver","titleRef","useEffect","current","focus","css","alignCSS","isToBeIframed","createElement","BlockTools","__unstableContentRef","className","__unstableMotion","div","animate","padding","initial","shouldIframe","Fragment","selector","contentEditable","PostTitle","__experimentalRecursionProvider","blockName","uniqueId","BlockList"],"sources":["@wordpress/edit-post/src/components/visual-editor/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { PostTitle, store as editorStore } from '@wordpress/editor';\nimport {\n\tBlockList,\n\tBlockTools,\n\tstore as blockEditorStore,\n\t__unstableUseTypewriter as useTypewriter,\n\t__unstableUseTypingObserver as useTypingObserver,\n\t__experimentalUseResizeCanvas as useResizeCanvas,\n\tuseSetting,\n\t__experimentalRecursionProvider as RecursionProvider,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { useEffect, useRef, useMemo } from '@wordpress/element';\nimport { __unstableMotion as motion } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { useMergeRefs } from '@wordpress/compose';\nimport { parse, store as blocksStore } from '@wordpress/blocks';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\n\nconst {\n\tLayoutStyle,\n\tuseLayoutClasses,\n\tuseLayoutStyles,\n\tExperimentalBlockCanvas: BlockCanvas,\n} = unlock( blockEditorPrivateApis );\n\nconst isGutenbergPlugin = process.env.IS_GUTENBERG_PLUGIN ? true : false;\n\n/**\n * Given an array of nested blocks, find the first Post Content\n * block inside it, recursing through any nesting levels,\n * and return its attributes.\n *\n * @param {Array} blocks A list of blocks.\n *\n * @return {Object | undefined} The Post Content block.\n */\nfunction getPostContentAttributes( blocks ) {\n\tfor ( let i = 0; i < blocks.length; i++ ) {\n\t\tif ( blocks[ i ].name === 'core/post-content' ) {\n\t\t\treturn blocks[ i ].attributes;\n\t\t}\n\t\tif ( blocks[ i ].innerBlocks.length ) {\n\t\t\tconst nestedPostContent = getPostContentAttributes(\n\t\t\t\tblocks[ i ].innerBlocks\n\t\t\t);\n\n\t\t\tif ( nestedPostContent ) {\n\t\t\t\treturn nestedPostContent;\n\t\t\t}\n\t\t}\n\t}\n}\n\nfunction checkForPostContentAtRootLevel( blocks ) {\n\tfor ( let i = 0; i < blocks.length; i++ ) {\n\t\tif ( blocks[ i ].name === 'core/post-content' ) {\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n}\n\nexport default function VisualEditor( { styles } ) {\n\tconst {\n\t\tdeviceType,\n\t\tisWelcomeGuideVisible,\n\t\tisTemplateMode,\n\t\tpostContentAttributes,\n\t\teditedPostTemplate = {},\n\t\twrapperBlockName,\n\t\twrapperUniqueId,\n\t\tisBlockBasedTheme,\n\t\thasV3BlocksOnly,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tisFeatureActive,\n\t\t\tisEditingTemplate,\n\t\t\tgetEditedPostTemplate,\n\t\t\t__experimentalGetPreviewDeviceType,\n\t\t} = select( editPostStore );\n\t\tconst { getCurrentPostId, getCurrentPostType, getEditorSettings } =\n\t\t\tselect( editorStore );\n\t\tconst { getBlockTypes } = select( blocksStore );\n\t\tconst _isTemplateMode = isEditingTemplate();\n\t\tconst postTypeSlug = getCurrentPostType();\n\t\tlet _wrapperBlockName;\n\n\t\tif ( postTypeSlug === 'wp_block' ) {\n\t\t\t_wrapperBlockName = 'core/block';\n\t\t} else if ( ! _isTemplateMode ) {\n\t\t\t_wrapperBlockName = 'core/post-content';\n\t\t}\n\n\t\tconst editorSettings = getEditorSettings();\n\t\tconst supportsTemplateMode = editorSettings.supportsTemplateMode;\n\t\tconst postType = select( coreStore ).getPostType( postTypeSlug );\n\t\tconst canEditTemplate = select( coreStore ).canUser(\n\t\t\t'create',\n\t\t\t'templates'\n\t\t);\n\n\t\treturn {\n\t\t\tdeviceType: __experimentalGetPreviewDeviceType(),\n\t\t\tisWelcomeGuideVisible: isFeatureActive( 'welcomeGuide' ),\n\t\t\tisTemplateMode: _isTemplateMode,\n\t\t\tpostContentAttributes: getEditorSettings().postContentAttributes,\n\t\t\t// Post template fetch returns a 404 on classic themes, which\n\t\t\t// messes with e2e tests, so check it's a block theme first.\n\t\t\teditedPostTemplate:\n\t\t\t\tpostType?.viewable && supportsTemplateMode && canEditTemplate\n\t\t\t\t\t? getEditedPostTemplate()\n\t\t\t\t\t: undefined,\n\t\t\twrapperBlockName: _wrapperBlockName,\n\t\t\twrapperUniqueId: getCurrentPostId(),\n\t\t\tisBlockBasedTheme: editorSettings.__unstableIsBlockBasedTheme,\n\t\t\thasV3BlocksOnly: getBlockTypes().every( ( type ) => {\n\t\t\t\treturn type.apiVersion >= 3;\n\t\t\t} ),\n\t\t};\n\t}, [] );\n\tconst { isCleanNewPost } = useSelect( editorStore );\n\tconst hasMetaBoxes = useSelect(\n\t\t( select ) => select( editPostStore ).hasMetaBoxes(),\n\t\t[]\n\t);\n\tconst {\n\t\thasRootPaddingAwareAlignments,\n\t\tisFocusMode,\n\t\tthemeHasDisabledLayoutStyles,\n\t\tthemeSupportsLayout,\n\t} = useSelect( ( select ) => {\n\t\tconst _settings = select( blockEditorStore ).getSettings();\n\t\treturn {\n\t\t\tthemeHasDisabledLayoutStyles: _settings.disableLayoutStyles,\n\t\t\tthemeSupportsLayout: _settings.supportsLayout,\n\t\t\tisFocusMode: _settings.focusMode,\n\t\t\thasRootPaddingAwareAlignments:\n\t\t\t\t_settings.__experimentalFeatures?.useRootPaddingAwareAlignments,\n\t\t};\n\t}, [] );\n\tconst desktopCanvasStyles = {\n\t\theight: '100%',\n\t\twidth: '100%',\n\t\tmarginLeft: 'auto',\n\t\tmarginRight: 'auto',\n\t\tdisplay: 'flex',\n\t\tflexFlow: 'column',\n\t\t// Default background color so that grey\n\t\t// .edit-post-editor-regions__content color doesn't show through.\n\t\tbackground: 'white',\n\t};\n\tconst templateModeStyles = {\n\t\t...desktopCanvasStyles,\n\t\tborderRadius: '2px 2px 0 0',\n\t\tborder: '1px solid #ddd',\n\t\tborderBottom: 0,\n\t};\n\tconst resizedCanvasStyles = useResizeCanvas( deviceType, isTemplateMode );\n\tconst globalLayoutSettings = useSetting( 'layout' );\n\tconst previewMode = 'is-' + deviceType.toLowerCase() + '-preview';\n\n\tlet animatedStyles = isTemplateMode\n\t\t? templateModeStyles\n\t\t: desktopCanvasStyles;\n\tif ( resizedCanvasStyles ) {\n\t\tanimatedStyles = resizedCanvasStyles;\n\t}\n\n\tlet paddingBottom;\n\n\t// Add a constant padding for the typewritter effect. When typing at the\n\t// bottom, there needs to be room to scroll up.\n\tif ( ! hasMetaBoxes && ! resizedCanvasStyles && ! isTemplateMode ) {\n\t\tpaddingBottom = '40vh';\n\t}\n\n\tconst ref = useRef();\n\tconst contentRef = useMergeRefs( [ ref, useTypewriter() ] );\n\n\t// fallbackLayout is used if there is no Post Content,\n\t// and for Post Title.\n\tconst fallbackLayout = useMemo( () => {\n\t\tif ( isTemplateMode ) {\n\t\t\treturn { type: 'default' };\n\t\t}\n\n\t\tif ( themeSupportsLayout ) {\n\t\t\t// We need to ensure support for wide and full alignments,\n\t\t\t// so we add the constrained type.\n\t\t\treturn { ...globalLayoutSettings, type: 'constrained' };\n\t\t}\n\t\t// Set default layout for classic themes so all alignments are supported.\n\t\treturn { type: 'default' };\n\t}, [ isTemplateMode, themeSupportsLayout, globalLayoutSettings ] );\n\n\tconst newestPostContentAttributes = useMemo( () => {\n\t\tif ( ! editedPostTemplate?.content && ! editedPostTemplate?.blocks ) {\n\t\t\treturn postContentAttributes;\n\t\t}\n\t\t// When in template editing mode, we can access the blocks directly.\n\t\tif ( editedPostTemplate?.blocks ) {\n\t\t\treturn getPostContentAttributes( editedPostTemplate?.blocks );\n\t\t}\n\t\t// If there are no blocks, we have to parse the content string.\n\t\t// Best double-check it's a string otherwise the parse function gets unhappy.\n\t\tconst parseableContent =\n\t\t\ttypeof editedPostTemplate?.content === 'string'\n\t\t\t\t? editedPostTemplate?.content\n\t\t\t\t: '';\n\n\t\treturn getPostContentAttributes( parse( parseableContent ) ) || {};\n\t}, [\n\t\teditedPostTemplate?.content,\n\t\teditedPostTemplate?.blocks,\n\t\tpostContentAttributes,\n\t] );\n\n\tconst hasPostContentAtRootLevel = useMemo( () => {\n\t\tif ( ! editedPostTemplate?.content && ! editedPostTemplate?.blocks ) {\n\t\t\treturn false;\n\t\t}\n\t\t// When in template editing mode, we can access the blocks directly.\n\t\tif ( editedPostTemplate?.blocks ) {\n\t\t\treturn checkForPostContentAtRootLevel( editedPostTemplate?.blocks );\n\t\t}\n\t\t// If there are no blocks, we have to parse the content string.\n\t\t// Best double-check it's a string otherwise the parse function gets unhappy.\n\t\tconst parseableContent =\n\t\t\ttypeof editedPostTemplate?.content === 'string'\n\t\t\t\t? editedPostTemplate?.content\n\t\t\t\t: '';\n\n\t\treturn (\n\t\t\tcheckForPostContentAtRootLevel( parse( parseableContent ) ) || false\n\t\t);\n\t}, [ editedPostTemplate?.content, editedPostTemplate?.blocks ] );\n\n\tconst { layout = {}, align = '' } = newestPostContentAttributes || {};\n\n\tconst postContentLayoutClasses = useLayoutClasses(\n\t\tnewestPostContentAttributes,\n\t\t'core/post-content'\n\t);\n\n\tconst blockListLayoutClass = classnames(\n\t\t{\n\t\t\t'is-layout-flow': ! themeSupportsLayout,\n\t\t},\n\t\tthemeSupportsLayout && postContentLayoutClasses,\n\t\talign && `align${ align }`\n\t);\n\n\tconst postContentLayoutStyles = useLayoutStyles(\n\t\tnewestPostContentAttributes,\n\t\t'core/post-content',\n\t\t'.block-editor-block-list__layout.is-root-container'\n\t);\n\n\t// Update type for blocks using legacy layouts.\n\tconst postContentLayout = useMemo( () => {\n\t\treturn layout &&\n\t\t\t( layout?.type === 'constrained' ||\n\t\t\t\tlayout?.inherit ||\n\t\t\t\tlayout?.contentSize ||\n\t\t\t\tlayout?.wideSize )\n\t\t\t? { ...globalLayoutSettings, ...layout, type: 'constrained' }\n\t\t\t: { ...globalLayoutSettings, ...layout, type: 'default' };\n\t}, [\n\t\tlayout?.type,\n\t\tlayout?.inherit,\n\t\tlayout?.contentSize,\n\t\tlayout?.wideSize,\n\t\tglobalLayoutSettings,\n\t] );\n\n\t// If there is a Post Content block we use its layout for the block list;\n\t// if not, this must be a classic theme, in which case we use the fallback layout.\n\tconst blockListLayout = postContentAttributes\n\t\t? postContentLayout\n\t\t: fallbackLayout;\n\n\tconst postEditorLayout =\n\t\tblockListLayout?.type === 'default' && ! hasPostContentAtRootLevel\n\t\t\t? fallbackLayout\n\t\t\t: blockListLayout;\n\n\tconst observeTypingRef = useTypingObserver();\n\tconst titleRef = useRef();\n\tuseEffect( () => {\n\t\tif ( isWelcomeGuideVisible || ! isCleanNewPost() ) {\n\t\t\treturn;\n\t\t}\n\t\ttitleRef?.current?.focus();\n\t}, [ isWelcomeGuideVisible, isCleanNewPost ] );\n\n\tstyles = useMemo(\n\t\t() => [\n\t\t\t...styles,\n\t\t\t{\n\t\t\t\t// We should move this in to future to the body.\n\t\t\t\tcss:\n\t\t\t\t\t`.edit-post-visual-editor__post-title-wrapper{margin-top:4rem}` +\n\t\t\t\t\t( paddingBottom\n\t\t\t\t\t\t? `body{padding-bottom:${ paddingBottom }}`\n\t\t\t\t\t\t: '' ),\n\t\t\t},\n\t\t],\n\t\t[ styles ]\n\t);\n\n\t// Add some styles for alignwide/alignfull Post Content and its children.\n\tconst alignCSS = `.is-root-container.alignwide { max-width: var(--wp--style--global--wide-size); margin-left: auto; margin-right: auto;}\n\t\t.is-root-container.alignwide:where(.is-layout-flow) > :not(.alignleft):not(.alignright) { max-width: var(--wp--style--global--wide-size);}\n\t\t.is-root-container.alignfull { max-width: none; margin-left: auto; margin-right: auto;}\n\t\t.is-root-container.alignfull:where(.is-layout-flow) > :not(.alignleft):not(.alignright) { max-width: none;}`;\n\n\tconst isToBeIframed =\n\t\t( ( hasV3BlocksOnly || ( isGutenbergPlugin && isBlockBasedTheme ) ) &&\n\t\t\t! hasMetaBoxes ) ||\n\t\tisTemplateMode ||\n\t\tdeviceType === 'Tablet' ||\n\t\tdeviceType === 'Mobile';\n\n\treturn (\n\t\t<BlockTools\n\t\t\t__unstableContentRef={ ref }\n\t\t\tclassName={ classnames( 'edit-post-visual-editor', {\n\t\t\t\t'is-template-mode': isTemplateMode,\n\t\t\t\t'has-inline-canvas': ! isToBeIframed,\n\t\t\t} ) }\n\t\t>\n\t\t\t<motion.div\n\t\t\t\tclassName=\"edit-post-visual-editor__content-area\"\n\t\t\t\tanimate={ {\n\t\t\t\t\tpadding: isTemplateMode ? '48px 48px 0' : 0,\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<motion.div\n\t\t\t\t\tanimate={ animatedStyles }\n\t\t\t\t\tinitial={ desktopCanvasStyles }\n\t\t\t\t\tclassName={ previewMode }\n\t\t\t\t>\n\t\t\t\t\t<BlockCanvas\n\t\t\t\t\t\tshouldIframe={ isToBeIframed }\n\t\t\t\t\t\tcontentRef={ contentRef }\n\t\t\t\t\t\tstyles={ styles }\n\t\t\t\t\t\theight=\"100%\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ themeSupportsLayout &&\n\t\t\t\t\t\t\t! themeHasDisabledLayoutStyles &&\n\t\t\t\t\t\t\t! isTemplateMode && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<LayoutStyle\n\t\t\t\t\t\t\t\t\t\tselector=\".edit-post-visual-editor__post-title-wrapper\"\n\t\t\t\t\t\t\t\t\t\tlayout={ fallbackLayout }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t<LayoutStyle\n\t\t\t\t\t\t\t\t\t\tselector=\".block-editor-block-list__layout.is-root-container\"\n\t\t\t\t\t\t\t\t\t\tlayout={ postEditorLayout }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t{ align && (\n\t\t\t\t\t\t\t\t\t\t<LayoutStyle css={ alignCSS } />\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ postContentLayoutStyles && (\n\t\t\t\t\t\t\t\t\t\t<LayoutStyle\n\t\t\t\t\t\t\t\t\t\t\tlayout={ postContentLayout }\n\t\t\t\t\t\t\t\t\t\t\tcss={ postContentLayoutStyles }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ ! isTemplateMode && (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t\t'edit-post-visual-editor__post-title-wrapper',\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t'is-focus-mode': isFocusMode,\n\t\t\t\t\t\t\t\t\t\t'has-global-padding':\n\t\t\t\t\t\t\t\t\t\t\thasRootPaddingAwareAlignments,\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tcontentEditable={ false }\n\t\t\t\t\t\t\t\tref={ observeTypingRef }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<PostTitle ref={ titleRef } />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<RecursionProvider\n\t\t\t\t\t\t\tblockName={ wrapperBlockName }\n\t\t\t\t\t\t\tuniqueId={ wrapperUniqueId }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<BlockList\n\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\tisTemplateMode\n\t\t\t\t\t\t\t\t\t\t? 'wp-site-blocks'\n\t\t\t\t\t\t\t\t\t\t: `${ blockListLayoutClass } wp-block-post-content` // Ensure root level blocks receive default/flow blockGap styling rules.\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tlayout={ blockListLayout }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</RecursionProvider>\n\t\t\t\t\t</BlockCanvas>\n\t\t\t\t</motion.div>\n\t\t\t</motion.div>\n\t\t</BlockTools>\n\t);\n}\n"],"mappings":"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"}
package/build/editor.js CHANGED
@@ -11,7 +11,6 @@ var _data = require("@wordpress/data");
11
11
  var _editor = require("@wordpress/editor");
12
12
  var _components = require("@wordpress/components");
13
13
  var _coreData = require("@wordpress/core-data");
14
- var _keyboardShortcuts = require("@wordpress/keyboard-shortcuts");
15
14
  var _preferences = require("@wordpress/preferences");
16
15
  var _commands = require("@wordpress/commands");
17
16
  var _coreCommands = require("@wordpress/core-commands");
@@ -142,7 +141,7 @@ function Editor({
142
141
  if (!post) {
143
142
  return null;
144
143
  }
145
- return (0, _element.createElement)(_keyboardShortcuts.ShortcutProvider, null, (0, _element.createElement)(_components.SlotFillProvider, null, (0, _element.createElement)(ExperimentalEditorProvider, {
144
+ return (0, _element.createElement)(_components.SlotFillProvider, null, (0, _element.createElement)(ExperimentalEditorProvider, {
146
145
  settings: editorSettings,
147
146
  post: post,
148
147
  initialEdits: initialEdits,
@@ -151,7 +150,7 @@ function Editor({
151
150
  ...props
152
151
  }, (0, _element.createElement)(_editor.ErrorBoundary, null, (0, _element.createElement)(_commands.CommandMenu, null), (0, _element.createElement)(_editorInitialization.default, {
153
152
  postId: postId
154
- }), (0, _element.createElement)(_layout.default, null)), (0, _element.createElement)(_editor.PostLockedModal, null))));
153
+ }), (0, _element.createElement)(_layout.default, null)), (0, _element.createElement)(_editor.PostLockedModal, null)));
155
154
  }
156
155
  var _default = Editor;
157
156
  exports.default = _default;
@@ -1 +1 @@
1
- {"version":3,"names":["_element","require","_blocks","_data","_editor","_components","_coreData","_keyboardShortcuts","_preferences","_commands","_coreCommands","_layout","_interopRequireDefault","_editorInitialization","_store","_lockUnlock","_useCommonCommands","ExperimentalEditorProvider","unlock","editorPrivateApis","useCommands","coreCommandsPrivateApis","Editor","postId","postType","settings","initialEdits","props","useCommonCommands","hasFixedToolbar","focusMode","isDistractionFree","hasInlineToolbar","post","preferredStyleVariations","hiddenBlockTypes","blockTypes","keepCaretInsideBlock","isTemplateMode","template","useSelect","select","_getPostType$viewable","isFeatureActive","isEditingTemplate","getEditedPostTemplate","getHiddenBlockTypes","editPostStore","getEntityRecord","getPostType","getEntityRecords","canUser","coreStore","getEditorSettings","editorStore","getBlockTypes","blocksStore","isTemplate","includes","postObject","posts","wp_id","supportsTemplateMode","isViewable","viewable","canEditTemplate","preferencesStore","get","updatePreferredStyleVariations","setIsInserterOpened","useDispatch","editorSettings","useMemo","result","__experimentalPreferredStyleVariations","value","onChange","__experimentalSetIsInserterOpened","defaultAllowedBlockTypes","allowedBlockTypes","length","map","name","filter","type","createElement","ShortcutProvider","SlotFillProvider","useSubRegistry","__unstableTemplate","undefined","ErrorBoundary","CommandMenu","default","PostLockedModal","_default","exports"],"sources":["@wordpress/edit-post/src/editor.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as blocksStore } from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tErrorBoundary,\n\tPostLockedModal,\n\tstore as editorStore,\n\tprivateApis as editorPrivateApis,\n} from '@wordpress/editor';\nimport { useMemo } from '@wordpress/element';\nimport { SlotFillProvider } from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { ShortcutProvider } from '@wordpress/keyboard-shortcuts';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { CommandMenu } from '@wordpress/commands';\nimport { privateApis as coreCommandsPrivateApis } from '@wordpress/core-commands';\n\n/**\n * Internal dependencies\n */\nimport Layout from './components/layout';\nimport EditorInitialization from './components/editor-initialization';\nimport { store as editPostStore } from './store';\nimport { unlock } from './lock-unlock';\nimport useCommonCommands from './hooks/commands/use-common-commands';\n\nconst { ExperimentalEditorProvider } = unlock( editorPrivateApis );\nconst { useCommands } = unlock( coreCommandsPrivateApis );\n\nfunction Editor( { postId, postType, settings, initialEdits, ...props } ) {\n\tuseCommands();\n\tuseCommonCommands();\n\tconst {\n\t\thasFixedToolbar,\n\t\tfocusMode,\n\t\tisDistractionFree,\n\t\thasInlineToolbar,\n\t\tpost,\n\t\tpreferredStyleVariations,\n\t\thiddenBlockTypes,\n\t\tblockTypes,\n\t\tkeepCaretInsideBlock,\n\t\tisTemplateMode,\n\t\ttemplate,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tisFeatureActive,\n\t\t\t\tisEditingTemplate,\n\t\t\t\tgetEditedPostTemplate,\n\t\t\t\tgetHiddenBlockTypes,\n\t\t\t} = select( editPostStore );\n\t\t\tconst { getEntityRecord, getPostType, getEntityRecords, canUser } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst { getEditorSettings } = select( editorStore );\n\t\t\tconst { getBlockTypes } = select( blocksStore );\n\t\t\tconst isTemplate = [ 'wp_template', 'wp_template_part' ].includes(\n\t\t\t\tpostType\n\t\t\t);\n\t\t\t// Ideally the initializeEditor function should be called using the ID of the REST endpoint.\n\t\t\t// to avoid the special case.\n\t\t\tlet postObject;\n\t\t\tif ( isTemplate ) {\n\t\t\t\tconst posts = getEntityRecords( 'postType', postType, {\n\t\t\t\t\twp_id: postId,\n\t\t\t\t} );\n\t\t\t\tpostObject = posts?.[ 0 ];\n\t\t\t} else {\n\t\t\t\tpostObject = getEntityRecord( 'postType', postType, postId );\n\t\t\t}\n\t\t\tconst supportsTemplateMode =\n\t\t\t\tgetEditorSettings().supportsTemplateMode;\n\t\t\tconst isViewable = getPostType( postType )?.viewable ?? false;\n\t\t\tconst canEditTemplate = canUser( 'create', 'templates' );\n\n\t\t\treturn {\n\t\t\t\thasFixedToolbar: isFeatureActive( 'fixedToolbar' ),\n\t\t\t\tfocusMode: isFeatureActive( 'focusMode' ),\n\t\t\t\tisDistractionFree: isFeatureActive( 'distractionFree' ),\n\t\t\t\thasInlineToolbar: isFeatureActive( 'inlineToolbar' ),\n\t\t\t\tpreferredStyleVariations: select( preferencesStore ).get(\n\t\t\t\t\t'core/edit-post',\n\t\t\t\t\t'preferredStyleVariations'\n\t\t\t\t),\n\t\t\t\thiddenBlockTypes: getHiddenBlockTypes(),\n\t\t\t\tblockTypes: getBlockTypes(),\n\t\t\t\tkeepCaretInsideBlock: isFeatureActive( 'keepCaretInsideBlock' ),\n\t\t\t\tisTemplateMode: isEditingTemplate(),\n\t\t\t\ttemplate:\n\t\t\t\t\tsupportsTemplateMode && isViewable && canEditTemplate\n\t\t\t\t\t\t? getEditedPostTemplate()\n\t\t\t\t\t\t: null,\n\t\t\t\tpost: postObject,\n\t\t\t};\n\t\t},\n\t\t[ postType, postId ]\n\t);\n\n\tconst { updatePreferredStyleVariations, setIsInserterOpened } =\n\t\tuseDispatch( editPostStore );\n\n\tconst editorSettings = useMemo( () => {\n\t\tconst result = {\n\t\t\t...settings,\n\t\t\t__experimentalPreferredStyleVariations: {\n\t\t\t\tvalue: preferredStyleVariations,\n\t\t\t\tonChange: updatePreferredStyleVariations,\n\t\t\t},\n\t\t\thasFixedToolbar,\n\t\t\tfocusMode,\n\t\t\tisDistractionFree,\n\t\t\thasInlineToolbar,\n\n\t\t\t// This is marked as experimental to give time for the quick inserter to mature.\n\t\t\t__experimentalSetIsInserterOpened: setIsInserterOpened,\n\t\t\tkeepCaretInsideBlock,\n\t\t\t// Keep a reference of the `allowedBlockTypes` from the server to handle use cases\n\t\t\t// where we need to differentiate if a block is disabled by the user or some plugin.\n\t\t\tdefaultAllowedBlockTypes: settings.allowedBlockTypes,\n\t\t};\n\n\t\t// Omit hidden block types if exists and non-empty.\n\t\tif ( 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\tresult.allowedBlockTypes = defaultAllowedBlockTypes.filter(\n\t\t\t\t( type ) => ! hiddenBlockTypes.includes( type )\n\t\t\t);\n\t\t}\n\n\t\treturn result;\n\t}, [\n\t\tsettings,\n\t\thasFixedToolbar,\n\t\thasInlineToolbar,\n\t\tfocusMode,\n\t\tisDistractionFree,\n\t\thiddenBlockTypes,\n\t\tblockTypes,\n\t\tpreferredStyleVariations,\n\t\tsetIsInserterOpened,\n\t\tupdatePreferredStyleVariations,\n\t\tkeepCaretInsideBlock,\n\t] );\n\n\tif ( ! post ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<ShortcutProvider>\n\t\t\t<SlotFillProvider>\n\t\t\t\t<ExperimentalEditorProvider\n\t\t\t\t\tsettings={ editorSettings }\n\t\t\t\t\tpost={ post }\n\t\t\t\t\tinitialEdits={ initialEdits }\n\t\t\t\t\tuseSubRegistry={ false }\n\t\t\t\t\t__unstableTemplate={ isTemplateMode ? template : undefined }\n\t\t\t\t\t{ ...props }\n\t\t\t\t>\n\t\t\t\t\t<ErrorBoundary>\n\t\t\t\t\t\t<CommandMenu />\n\t\t\t\t\t\t<EditorInitialization postId={ postId } />\n\t\t\t\t\t\t<Layout />\n\t\t\t\t\t</ErrorBoundary>\n\t\t\t\t\t<PostLockedModal />\n\t\t\t\t</ExperimentalEditorProvider>\n\t\t\t</SlotFillProvider>\n\t\t</ShortcutProvider>\n\t);\n}\n\nexport default Editor;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_element","require","_blocks","_data","_editor","_components","_coreData","_preferences","_commands","_coreCommands","_layout","_interopRequireDefault","_editorInitialization","_store","_lockUnlock","_useCommonCommands","ExperimentalEditorProvider","unlock","editorPrivateApis","useCommands","coreCommandsPrivateApis","Editor","postId","postType","settings","initialEdits","props","useCommonCommands","hasFixedToolbar","focusMode","isDistractionFree","hasInlineToolbar","post","preferredStyleVariations","hiddenBlockTypes","blockTypes","keepCaretInsideBlock","isTemplateMode","template","useSelect","select","_getPostType$viewable","isFeatureActive","isEditingTemplate","getEditedPostTemplate","getHiddenBlockTypes","editPostStore","getEntityRecord","getPostType","getEntityRecords","canUser","coreStore","getEditorSettings","editorStore","getBlockTypes","blocksStore","isTemplate","includes","postObject","posts","wp_id","supportsTemplateMode","isViewable","viewable","canEditTemplate","preferencesStore","get","updatePreferredStyleVariations","setIsInserterOpened","useDispatch","editorSettings","useMemo","result","__experimentalPreferredStyleVariations","value","onChange","__experimentalSetIsInserterOpened","defaultAllowedBlockTypes","allowedBlockTypes","length","map","name","filter","type","createElement","SlotFillProvider","useSubRegistry","__unstableTemplate","undefined","ErrorBoundary","CommandMenu","default","PostLockedModal","_default","exports"],"sources":["@wordpress/edit-post/src/editor.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as blocksStore } from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tErrorBoundary,\n\tPostLockedModal,\n\tstore as editorStore,\n\tprivateApis as editorPrivateApis,\n} from '@wordpress/editor';\nimport { useMemo } from '@wordpress/element';\nimport { SlotFillProvider } from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { CommandMenu } from '@wordpress/commands';\nimport { privateApis as coreCommandsPrivateApis } from '@wordpress/core-commands';\n\n/**\n * Internal dependencies\n */\nimport Layout from './components/layout';\nimport EditorInitialization from './components/editor-initialization';\nimport { store as editPostStore } from './store';\nimport { unlock } from './lock-unlock';\nimport useCommonCommands from './hooks/commands/use-common-commands';\n\nconst { ExperimentalEditorProvider } = unlock( editorPrivateApis );\nconst { useCommands } = unlock( coreCommandsPrivateApis );\n\nfunction Editor( { postId, postType, settings, initialEdits, ...props } ) {\n\tuseCommands();\n\tuseCommonCommands();\n\tconst {\n\t\thasFixedToolbar,\n\t\tfocusMode,\n\t\tisDistractionFree,\n\t\thasInlineToolbar,\n\t\tpost,\n\t\tpreferredStyleVariations,\n\t\thiddenBlockTypes,\n\t\tblockTypes,\n\t\tkeepCaretInsideBlock,\n\t\tisTemplateMode,\n\t\ttemplate,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tisFeatureActive,\n\t\t\t\tisEditingTemplate,\n\t\t\t\tgetEditedPostTemplate,\n\t\t\t\tgetHiddenBlockTypes,\n\t\t\t} = select( editPostStore );\n\t\t\tconst { getEntityRecord, getPostType, getEntityRecords, canUser } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst { getEditorSettings } = select( editorStore );\n\t\t\tconst { getBlockTypes } = select( blocksStore );\n\t\t\tconst isTemplate = [ 'wp_template', 'wp_template_part' ].includes(\n\t\t\t\tpostType\n\t\t\t);\n\t\t\t// Ideally the initializeEditor function should be called using the ID of the REST endpoint.\n\t\t\t// to avoid the special case.\n\t\t\tlet postObject;\n\t\t\tif ( isTemplate ) {\n\t\t\t\tconst posts = getEntityRecords( 'postType', postType, {\n\t\t\t\t\twp_id: postId,\n\t\t\t\t} );\n\t\t\t\tpostObject = posts?.[ 0 ];\n\t\t\t} else {\n\t\t\t\tpostObject = getEntityRecord( 'postType', postType, postId );\n\t\t\t}\n\t\t\tconst supportsTemplateMode =\n\t\t\t\tgetEditorSettings().supportsTemplateMode;\n\t\t\tconst isViewable = getPostType( postType )?.viewable ?? false;\n\t\t\tconst canEditTemplate = canUser( 'create', 'templates' );\n\n\t\t\treturn {\n\t\t\t\thasFixedToolbar: isFeatureActive( 'fixedToolbar' ),\n\t\t\t\tfocusMode: isFeatureActive( 'focusMode' ),\n\t\t\t\tisDistractionFree: isFeatureActive( 'distractionFree' ),\n\t\t\t\thasInlineToolbar: isFeatureActive( 'inlineToolbar' ),\n\t\t\t\tpreferredStyleVariations: select( preferencesStore ).get(\n\t\t\t\t\t'core/edit-post',\n\t\t\t\t\t'preferredStyleVariations'\n\t\t\t\t),\n\t\t\t\thiddenBlockTypes: getHiddenBlockTypes(),\n\t\t\t\tblockTypes: getBlockTypes(),\n\t\t\t\tkeepCaretInsideBlock: isFeatureActive( 'keepCaretInsideBlock' ),\n\t\t\t\tisTemplateMode: isEditingTemplate(),\n\t\t\t\ttemplate:\n\t\t\t\t\tsupportsTemplateMode && isViewable && canEditTemplate\n\t\t\t\t\t\t? getEditedPostTemplate()\n\t\t\t\t\t\t: null,\n\t\t\t\tpost: postObject,\n\t\t\t};\n\t\t},\n\t\t[ postType, postId ]\n\t);\n\n\tconst { updatePreferredStyleVariations, setIsInserterOpened } =\n\t\tuseDispatch( editPostStore );\n\n\tconst editorSettings = useMemo( () => {\n\t\tconst result = {\n\t\t\t...settings,\n\t\t\t__experimentalPreferredStyleVariations: {\n\t\t\t\tvalue: preferredStyleVariations,\n\t\t\t\tonChange: updatePreferredStyleVariations,\n\t\t\t},\n\t\t\thasFixedToolbar,\n\t\t\tfocusMode,\n\t\t\tisDistractionFree,\n\t\t\thasInlineToolbar,\n\n\t\t\t// This is marked as experimental to give time for the quick inserter to mature.\n\t\t\t__experimentalSetIsInserterOpened: setIsInserterOpened,\n\t\t\tkeepCaretInsideBlock,\n\t\t\t// Keep a reference of the `allowedBlockTypes` from the server to handle use cases\n\t\t\t// where we need to differentiate if a block is disabled by the user or some plugin.\n\t\t\tdefaultAllowedBlockTypes: settings.allowedBlockTypes,\n\t\t};\n\n\t\t// Omit hidden block types if exists and non-empty.\n\t\tif ( 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\tresult.allowedBlockTypes = defaultAllowedBlockTypes.filter(\n\t\t\t\t( type ) => ! hiddenBlockTypes.includes( type )\n\t\t\t);\n\t\t}\n\n\t\treturn result;\n\t}, [\n\t\tsettings,\n\t\thasFixedToolbar,\n\t\thasInlineToolbar,\n\t\tfocusMode,\n\t\tisDistractionFree,\n\t\thiddenBlockTypes,\n\t\tblockTypes,\n\t\tpreferredStyleVariations,\n\t\tsetIsInserterOpened,\n\t\tupdatePreferredStyleVariations,\n\t\tkeepCaretInsideBlock,\n\t] );\n\n\tif ( ! post ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<SlotFillProvider>\n\t\t\t<ExperimentalEditorProvider\n\t\t\t\tsettings={ editorSettings }\n\t\t\t\tpost={ post }\n\t\t\t\tinitialEdits={ initialEdits }\n\t\t\t\tuseSubRegistry={ false }\n\t\t\t\t__unstableTemplate={ isTemplateMode ? template : undefined }\n\t\t\t\t{ ...props }\n\t\t\t>\n\t\t\t\t<ErrorBoundary>\n\t\t\t\t\t<CommandMenu />\n\t\t\t\t\t<EditorInitialization postId={ postId } />\n\t\t\t\t\t<Layout />\n\t\t\t\t</ErrorBoundary>\n\t\t\t\t<PostLockedModal />\n\t\t\t</ExperimentalEditorProvider>\n\t\t</SlotFillProvider>\n\t);\n}\n\nexport default Editor;\n"],"mappings":"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"}
@@ -24,7 +24,9 @@ const {
24
24
  const preventDefault = event => {
25
25
  event.preventDefault();
26
26
  };
27
- function HeaderToolbar() {
27
+ function HeaderToolbar({
28
+ setListViewToggleElement
29
+ }) {
28
30
  const inserterButton = useRef();
29
31
  const {
30
32
  setIsInserterOpened,
@@ -94,7 +96,8 @@ function HeaderToolbar() {
94
96
  shortcut: listViewShortcut,
95
97
  showTooltip: !showIconLabels,
96
98
  variant: showIconLabels ? 'tertiary' : undefined,
97
- "aria-expanded": isListViewOpen
99
+ "aria-expanded": isListViewOpen,
100
+ ref: setListViewToggleElement
98
101
  }));
99
102
  const toggleInserter = useCallback(() => {
100
103
  if (isInserterOpened) {
@@ -1 +1 @@
1
- {"version":3,"names":["useViewportMatch","useSelect","useDispatch","__","_x","NavigableToolbar","ToolSelector","store","blockEditorStore","privateApis","blockEditorPrivateApis","EditorHistoryRedo","EditorHistoryUndo","editorStore","Button","ToolbarItem","listView","plus","useRef","useCallback","keyboardShortcutsStore","preferencesStore","editPostStore","unlock","useShouldContextualToolbarShow","preventDefault","event","HeaderToolbar","inserterButton","setIsInserterOpened","setIsListViewOpened","isInserterEnabled","isInserterOpened","isTextModeEnabled","showIconLabels","isListViewOpen","listViewShortcut","hasFixedToolbar","select","hasInserterItems","getBlockRootClientId","getBlockSelectionEnd","getEditorSettings","getEditorMode","isFeatureActive","isListViewOpened","getShortcutRepresentation","get","getPreference","richEditingEnabled","isLargeViewport","isWideViewport","shouldShowContextualToolbar","canFocusHiddenToolbar","fixedToolbarCanBeFocused","blockToolbarCanBeFocused","toolbarAriaLabel","toggleListView","overflowItems","createElement","Fragment","as","className","icon","disabled","isPressed","label","onClick","shortcut","showTooltip","variant","undefined","toggleInserter","current","focus","longLabel","shortLabel","shouldUseKeyboardFocusShortcut","ref","onMouseDown"],"sources":["@wordpress/edit-post/src/components/header/header-toolbar/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useViewportMatch } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tNavigableToolbar,\n\tToolSelector,\n\tstore as blockEditorStore,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport {\n\tEditorHistoryRedo,\n\tEditorHistoryUndo,\n\tstore as editorStore,\n} from '@wordpress/editor';\nimport { Button, ToolbarItem } from '@wordpress/components';\nimport { listView, plus } from '@wordpress/icons';\nimport { useRef, useCallback } from '@wordpress/element';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../../store';\nimport { unlock } from '../../../lock-unlock';\n\nconst { useShouldContextualToolbarShow } = unlock( blockEditorPrivateApis );\n\nconst preventDefault = ( event ) => {\n\tevent.preventDefault();\n};\n\nfunction HeaderToolbar() {\n\tconst inserterButton = useRef();\n\tconst { setIsInserterOpened, setIsListViewOpened } =\n\t\tuseDispatch( editPostStore );\n\tconst {\n\t\tisInserterEnabled,\n\t\tisInserterOpened,\n\t\tisTextModeEnabled,\n\t\tshowIconLabels,\n\t\tisListViewOpen,\n\t\tlistViewShortcut,\n\t\thasFixedToolbar,\n\t} = useSelect( ( select ) => {\n\t\tconst { hasInserterItems, getBlockRootClientId, getBlockSelectionEnd } =\n\t\t\tselect( blockEditorStore );\n\t\tconst { getEditorSettings } = select( editorStore );\n\t\tconst { getEditorMode, isFeatureActive, isListViewOpened } =\n\t\t\tselect( editPostStore );\n\t\tconst { getShortcutRepresentation } = select( keyboardShortcutsStore );\n\t\tconst { get: getPreference } = select( preferencesStore );\n\n\t\treturn {\n\t\t\t// This setting (richEditingEnabled) should not live in the block editor's setting.\n\t\t\tisInserterEnabled:\n\t\t\t\tgetEditorMode() === 'visual' &&\n\t\t\t\tgetEditorSettings().richEditingEnabled &&\n\t\t\t\thasInserterItems(\n\t\t\t\t\tgetBlockRootClientId( getBlockSelectionEnd() )\n\t\t\t\t),\n\t\t\tisInserterOpened: select( editPostStore ).isInserterOpened(),\n\t\t\tisTextModeEnabled: getEditorMode() === 'text',\n\t\t\tshowIconLabels: isFeatureActive( 'showIconLabels' ),\n\t\t\tisListViewOpen: isListViewOpened(),\n\t\t\tlistViewShortcut: getShortcutRepresentation(\n\t\t\t\t'core/edit-post/toggle-list-view'\n\t\t\t),\n\t\t\thasFixedToolbar: getPreference( 'core/edit-post', 'fixedToolbar' ),\n\t\t};\n\t}, [] );\n\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isWideViewport = useViewportMatch( 'wide' );\n\tconst {\n\t\tshouldShowContextualToolbar,\n\t\tcanFocusHiddenToolbar,\n\t\tfixedToolbarCanBeFocused,\n\t} = useShouldContextualToolbarShow();\n\t// If there's a block toolbar to be focused, disable the focus shortcut for the document toolbar.\n\t// There's a fixed block toolbar when the fixed toolbar option is enabled or when the browser width is less than the large viewport.\n\tconst blockToolbarCanBeFocused =\n\t\tshouldShowContextualToolbar ||\n\t\tcanFocusHiddenToolbar ||\n\t\tfixedToolbarCanBeFocused;\n\t/* translators: accessibility text for the editor toolbar */\n\tconst toolbarAriaLabel = __( 'Document tools' );\n\n\tconst toggleListView = useCallback(\n\t\t() => setIsListViewOpened( ! isListViewOpen ),\n\t\t[ setIsListViewOpened, isListViewOpen ]\n\t);\n\tconst overflowItems = (\n\t\t<>\n\t\t\t<ToolbarItem\n\t\t\t\tas={ Button }\n\t\t\t\tclassName=\"edit-post-header-toolbar__document-overview-toggle\"\n\t\t\t\ticon={ listView }\n\t\t\t\tdisabled={ isTextModeEnabled }\n\t\t\t\tisPressed={ isListViewOpen }\n\t\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\t\tlabel={ __( 'Document Overview' ) }\n\t\t\t\tonClick={ toggleListView }\n\t\t\t\tshortcut={ listViewShortcut }\n\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\tvariant={ showIconLabels ? 'tertiary' : undefined }\n\t\t\t\taria-expanded={ isListViewOpen }\n\t\t\t/>\n\t\t</>\n\t);\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<NavigableToolbar\n\t\t\tclassName=\"edit-post-header-toolbar\"\n\t\t\taria-label={ toolbarAriaLabel }\n\t\t\tshouldUseKeyboardFocusShortcut={ ! blockToolbarCanBeFocused }\n\t\t>\n\t\t\t<div className=\"edit-post-header-toolbar__left\">\n\t\t\t\t<ToolbarItem\n\t\t\t\t\tref={ inserterButton }\n\t\t\t\t\tas={ Button }\n\t\t\t\t\tclassName=\"edit-post-header-toolbar__inserter-toggle\"\n\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\tisPressed={ isInserterOpened }\n\t\t\t\t\tonMouseDown={ preventDefault }\n\t\t\t\t\tonClick={ toggleInserter }\n\t\t\t\t\tdisabled={ ! isInserterEnabled }\n\t\t\t\t\ticon={ plus }\n\t\t\t\t\tlabel={ showIconLabels ? shortLabel : longLabel }\n\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\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={ isTextModeEnabled }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\tas={ EditorHistoryUndo }\n\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\tvariant={ showIconLabels ? 'tertiary' : undefined }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\tas={ EditorHistoryRedo }\n\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\tvariant={ showIconLabels ? 'tertiary' : undefined }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ overflowItems }\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</NavigableToolbar>\n\t);\n}\n\nexport default HeaderToolbar;\n"],"mappings":"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"}
1
+ {"version":3,"names":["useViewportMatch","useSelect","useDispatch","__","_x","NavigableToolbar","ToolSelector","store","blockEditorStore","privateApis","blockEditorPrivateApis","EditorHistoryRedo","EditorHistoryUndo","editorStore","Button","ToolbarItem","listView","plus","useRef","useCallback","keyboardShortcutsStore","preferencesStore","editPostStore","unlock","useShouldContextualToolbarShow","preventDefault","event","HeaderToolbar","setListViewToggleElement","inserterButton","setIsInserterOpened","setIsListViewOpened","isInserterEnabled","isInserterOpened","isTextModeEnabled","showIconLabels","isListViewOpen","listViewShortcut","hasFixedToolbar","select","hasInserterItems","getBlockRootClientId","getBlockSelectionEnd","getEditorSettings","getEditorMode","isFeatureActive","isListViewOpened","getShortcutRepresentation","get","getPreference","richEditingEnabled","isLargeViewport","isWideViewport","shouldShowContextualToolbar","canFocusHiddenToolbar","fixedToolbarCanBeFocused","blockToolbarCanBeFocused","toolbarAriaLabel","toggleListView","overflowItems","createElement","Fragment","as","className","icon","disabled","isPressed","label","onClick","shortcut","showTooltip","variant","undefined","ref","toggleInserter","current","focus","longLabel","shortLabel","shouldUseKeyboardFocusShortcut","onMouseDown"],"sources":["@wordpress/edit-post/src/components/header/header-toolbar/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useViewportMatch } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tNavigableToolbar,\n\tToolSelector,\n\tstore as blockEditorStore,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport {\n\tEditorHistoryRedo,\n\tEditorHistoryUndo,\n\tstore as editorStore,\n} from '@wordpress/editor';\nimport { Button, ToolbarItem } from '@wordpress/components';\nimport { listView, plus } from '@wordpress/icons';\nimport { useRef, useCallback } from '@wordpress/element';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../../store';\nimport { unlock } from '../../../lock-unlock';\n\nconst { useShouldContextualToolbarShow } = unlock( blockEditorPrivateApis );\n\nconst preventDefault = ( event ) => {\n\tevent.preventDefault();\n};\n\nfunction HeaderToolbar( { setListViewToggleElement } ) {\n\tconst inserterButton = useRef();\n\tconst { setIsInserterOpened, setIsListViewOpened } =\n\t\tuseDispatch( editPostStore );\n\tconst {\n\t\tisInserterEnabled,\n\t\tisInserterOpened,\n\t\tisTextModeEnabled,\n\t\tshowIconLabels,\n\t\tisListViewOpen,\n\t\tlistViewShortcut,\n\t\thasFixedToolbar,\n\t} = useSelect( ( select ) => {\n\t\tconst { hasInserterItems, getBlockRootClientId, getBlockSelectionEnd } =\n\t\t\tselect( blockEditorStore );\n\t\tconst { getEditorSettings } = select( editorStore );\n\t\tconst { getEditorMode, isFeatureActive, isListViewOpened } =\n\t\t\tselect( editPostStore );\n\t\tconst { getShortcutRepresentation } = select( keyboardShortcutsStore );\n\t\tconst { get: getPreference } = select( preferencesStore );\n\n\t\treturn {\n\t\t\t// This setting (richEditingEnabled) should not live in the block editor's setting.\n\t\t\tisInserterEnabled:\n\t\t\t\tgetEditorMode() === 'visual' &&\n\t\t\t\tgetEditorSettings().richEditingEnabled &&\n\t\t\t\thasInserterItems(\n\t\t\t\t\tgetBlockRootClientId( getBlockSelectionEnd() )\n\t\t\t\t),\n\t\t\tisInserterOpened: select( editPostStore ).isInserterOpened(),\n\t\t\tisTextModeEnabled: getEditorMode() === 'text',\n\t\t\tshowIconLabels: isFeatureActive( 'showIconLabels' ),\n\t\t\tisListViewOpen: isListViewOpened(),\n\t\t\tlistViewShortcut: getShortcutRepresentation(\n\t\t\t\t'core/edit-post/toggle-list-view'\n\t\t\t),\n\t\t\thasFixedToolbar: getPreference( 'core/edit-post', 'fixedToolbar' ),\n\t\t};\n\t}, [] );\n\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isWideViewport = useViewportMatch( 'wide' );\n\tconst {\n\t\tshouldShowContextualToolbar,\n\t\tcanFocusHiddenToolbar,\n\t\tfixedToolbarCanBeFocused,\n\t} = useShouldContextualToolbarShow();\n\t// If there's a block toolbar to be focused, disable the focus shortcut for the document toolbar.\n\t// There's a fixed block toolbar when the fixed toolbar option is enabled or when the browser width is less than the large viewport.\n\tconst blockToolbarCanBeFocused =\n\t\tshouldShowContextualToolbar ||\n\t\tcanFocusHiddenToolbar ||\n\t\tfixedToolbarCanBeFocused;\n\t/* translators: accessibility text for the editor toolbar */\n\tconst toolbarAriaLabel = __( 'Document tools' );\n\n\tconst toggleListView = useCallback(\n\t\t() => setIsListViewOpened( ! isListViewOpen ),\n\t\t[ setIsListViewOpened, isListViewOpen ]\n\t);\n\tconst overflowItems = (\n\t\t<>\n\t\t\t<ToolbarItem\n\t\t\t\tas={ Button }\n\t\t\t\tclassName=\"edit-post-header-toolbar__document-overview-toggle\"\n\t\t\t\ticon={ listView }\n\t\t\t\tdisabled={ isTextModeEnabled }\n\t\t\t\tisPressed={ isListViewOpen }\n\t\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\t\tlabel={ __( 'Document Overview' ) }\n\t\t\t\tonClick={ toggleListView }\n\t\t\t\tshortcut={ listViewShortcut }\n\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\tvariant={ showIconLabels ? 'tertiary' : undefined }\n\t\t\t\taria-expanded={ isListViewOpen }\n\t\t\t\tref={ setListViewToggleElement }\n\t\t\t/>\n\t\t</>\n\t);\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<NavigableToolbar\n\t\t\tclassName=\"edit-post-header-toolbar\"\n\t\t\taria-label={ toolbarAriaLabel }\n\t\t\tshouldUseKeyboardFocusShortcut={ ! blockToolbarCanBeFocused }\n\t\t>\n\t\t\t<div className=\"edit-post-header-toolbar__left\">\n\t\t\t\t<ToolbarItem\n\t\t\t\t\tref={ inserterButton }\n\t\t\t\t\tas={ Button }\n\t\t\t\t\tclassName=\"edit-post-header-toolbar__inserter-toggle\"\n\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\tisPressed={ isInserterOpened }\n\t\t\t\t\tonMouseDown={ preventDefault }\n\t\t\t\t\tonClick={ toggleInserter }\n\t\t\t\t\tdisabled={ ! isInserterEnabled }\n\t\t\t\t\ticon={ plus }\n\t\t\t\t\tlabel={ showIconLabels ? shortLabel : longLabel }\n\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\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={ isTextModeEnabled }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\tas={ EditorHistoryUndo }\n\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\tvariant={ showIconLabels ? 'tertiary' : undefined }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\tas={ EditorHistoryRedo }\n\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\tvariant={ showIconLabels ? 'tertiary' : undefined }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ overflowItems }\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</NavigableToolbar>\n\t);\n}\n\nexport default HeaderToolbar;\n"],"mappings":"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"}
@@ -24,6 +24,9 @@ const slideY = {
24
24
  hidden: {
25
25
  y: '-50px'
26
26
  },
27
+ distractionFreeInactive: {
28
+ y: 0
29
+ },
27
30
  hover: {
28
31
  y: 0,
29
32
  transition: {
@@ -36,6 +39,9 @@ const slideX = {
36
39
  hidden: {
37
40
  x: '-100%'
38
41
  },
42
+ distractionFreeInactive: {
43
+ x: 0
44
+ },
39
45
  hover: {
40
46
  x: 0,
41
47
  transition: {
@@ -45,7 +51,8 @@ const slideX = {
45
51
  }
46
52
  };
47
53
  function Header({
48
- setEntitiesSavedStatesCallback
54
+ setEntitiesSavedStatesCallback,
55
+ setListViewToggleElement
49
56
  }) {
50
57
  const isLargeViewport = useViewportMatch('large');
51
58
  const {
@@ -74,7 +81,9 @@ function Header({
74
81
  delay: 0.8
75
82
  },
76
83
  className: "edit-post-header__toolbar"
77
- }, createElement(HeaderToolbar, null), createElement("div", {
84
+ }, createElement(HeaderToolbar, {
85
+ setListViewToggleElement: setListViewToggleElement
86
+ }), createElement("div", {
78
87
  className: "edit-post-header__center"
79
88
  }, createElement(DocumentActions, null))), createElement(motion.div, {
80
89
  variants: slideY,
@@ -1 +1 @@
1
- {"version":3,"names":["PostSavedState","PostPreviewButton","useSelect","PinnedItems","useViewportMatch","__unstableMotion","motion","FullscreenModeClose","HeaderToolbar","MoreMenu","PostPublishButtonOrToggle","default","DevicePreview","ViewLink","MainDashboardButton","store","editPostStore","DocumentActions","slideY","hidden","y","hover","transition","type","delay","slideX","x","Header","setEntitiesSavedStatesCallback","isLargeViewport","hasActiveMetaboxes","isPublishSidebarOpened","showIconLabels","select","hasMetaBoxes","isFeatureActive","createElement","className","Slot","div","variants","showTooltip","forceIsDirty","forceIsAutosaveable","Fragment","scope"],"sources":["@wordpress/edit-post/src/components/header/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { PostSavedState, PostPreviewButton } from '@wordpress/editor';\nimport { useSelect } from '@wordpress/data';\nimport { PinnedItems } from '@wordpress/interface';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { __unstableMotion as motion } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport FullscreenModeClose from './fullscreen-mode-close';\nimport HeaderToolbar from './header-toolbar';\nimport MoreMenu from './more-menu';\nimport PostPublishButtonOrToggle from './post-publish-button-or-toggle';\nimport { default as DevicePreview } from '../device-preview';\nimport ViewLink from '../view-link';\nimport MainDashboardButton from './main-dashboard-button';\nimport { store as editPostStore } from '../../store';\nimport DocumentActions from './document-actions';\n\nconst slideY = {\n\thidden: { y: '-50px' },\n\thover: { y: 0, transition: { type: 'tween', delay: 0.2 } },\n};\n\nconst slideX = {\n\thidden: { x: '-100%' },\n\thover: { x: 0, transition: { type: 'tween', delay: 0.2 } },\n};\n\nfunction Header( { setEntitiesSavedStatesCallback } ) {\n\tconst isLargeViewport = useViewportMatch( 'large' );\n\tconst { hasActiveMetaboxes, isPublishSidebarOpened, showIconLabels } =\n\t\tuseSelect(\n\t\t\t( select ) => ( {\n\t\t\t\thasActiveMetaboxes: select( editPostStore ).hasMetaBoxes(),\n\t\t\t\tisPublishSidebarOpened:\n\t\t\t\t\tselect( editPostStore ).isPublishSidebarOpened(),\n\t\t\t\tshowIconLabels:\n\t\t\t\t\tselect( editPostStore ).isFeatureActive( 'showIconLabels' ),\n\t\t\t} ),\n\t\t\t[]\n\t\t);\n\n\treturn (\n\t\t<div className=\"edit-post-header\">\n\t\t\t<MainDashboardButton.Slot>\n\t\t\t\t<motion.div\n\t\t\t\t\tvariants={ slideX }\n\t\t\t\t\ttransition={ { type: 'tween', delay: 0.8 } }\n\t\t\t\t>\n\t\t\t\t\t<FullscreenModeClose showTooltip />\n\t\t\t\t</motion.div>\n\t\t\t</MainDashboardButton.Slot>\n\t\t\t<motion.div\n\t\t\t\tvariants={ slideY }\n\t\t\t\ttransition={ { type: 'tween', delay: 0.8 } }\n\t\t\t\tclassName=\"edit-post-header__toolbar\"\n\t\t\t>\n\t\t\t\t<HeaderToolbar />\n\t\t\t\t<div className=\"edit-post-header__center\">\n\t\t\t\t\t<DocumentActions />\n\t\t\t\t</div>\n\t\t\t</motion.div>\n\t\t\t<motion.div\n\t\t\t\tvariants={ slideY }\n\t\t\t\ttransition={ { type: 'tween', delay: 0.8 } }\n\t\t\t\tclassName=\"edit-post-header__settings\"\n\t\t\t>\n\t\t\t\t{ ! isPublishSidebarOpened && (\n\t\t\t\t\t// This button isn't completely hidden by the publish sidebar.\n\t\t\t\t\t// We can't hide the whole toolbar when the publish sidebar is open because\n\t\t\t\t\t// we want to prevent mounting/unmounting the PostPublishButtonOrToggle DOM node.\n\t\t\t\t\t// We track that DOM node to return focus to the PostPublishButtonOrToggle\n\t\t\t\t\t// when the publish sidebar has been closed.\n\t\t\t\t\t<PostSavedState\n\t\t\t\t\t\tforceIsDirty={ hasActiveMetaboxes }\n\t\t\t\t\t\tshowIconLabels={ showIconLabels }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t<DevicePreview />\n\t\t\t\t<PostPreviewButton forceIsAutosaveable={ hasActiveMetaboxes } />\n\t\t\t\t<ViewLink />\n\t\t\t\t<PostPublishButtonOrToggle\n\t\t\t\t\tforceIsDirty={ hasActiveMetaboxes }\n\t\t\t\t\tsetEntitiesSavedStatesCallback={\n\t\t\t\t\t\tsetEntitiesSavedStatesCallback\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ ( isLargeViewport || ! showIconLabels ) && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<PinnedItems.Slot scope=\"core/edit-post\" />\n\t\t\t\t\t\t<MoreMenu showIconLabels={ showIconLabels } />\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t\t{ showIconLabels && ! isLargeViewport && (\n\t\t\t\t\t<MoreMenu showIconLabels={ showIconLabels } />\n\t\t\t\t) }\n\t\t\t</motion.div>\n\t\t</div>\n\t);\n}\n\nexport default Header;\n"],"mappings":"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"}
1
+ {"version":3,"names":["PostSavedState","PostPreviewButton","useSelect","PinnedItems","useViewportMatch","__unstableMotion","motion","FullscreenModeClose","HeaderToolbar","MoreMenu","PostPublishButtonOrToggle","default","DevicePreview","ViewLink","MainDashboardButton","store","editPostStore","DocumentActions","slideY","hidden","y","distractionFreeInactive","hover","transition","type","delay","slideX","x","Header","setEntitiesSavedStatesCallback","setListViewToggleElement","isLargeViewport","hasActiveMetaboxes","isPublishSidebarOpened","showIconLabels","select","hasMetaBoxes","isFeatureActive","createElement","className","Slot","div","variants","showTooltip","forceIsDirty","forceIsAutosaveable","Fragment","scope"],"sources":["@wordpress/edit-post/src/components/header/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { PostSavedState, PostPreviewButton } from '@wordpress/editor';\nimport { useSelect } from '@wordpress/data';\nimport { PinnedItems } from '@wordpress/interface';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { __unstableMotion as motion } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport FullscreenModeClose from './fullscreen-mode-close';\nimport HeaderToolbar from './header-toolbar';\nimport MoreMenu from './more-menu';\nimport PostPublishButtonOrToggle from './post-publish-button-or-toggle';\nimport { default as DevicePreview } from '../device-preview';\nimport ViewLink from '../view-link';\nimport MainDashboardButton from './main-dashboard-button';\nimport { store as editPostStore } from '../../store';\nimport DocumentActions from './document-actions';\n\nconst slideY = {\n\thidden: { y: '-50px' },\n\tdistractionFreeInactive: { y: 0 },\n\thover: { y: 0, transition: { type: 'tween', delay: 0.2 } },\n};\n\nconst slideX = {\n\thidden: { x: '-100%' },\n\tdistractionFreeInactive: { x: 0 },\n\thover: { x: 0, transition: { type: 'tween', delay: 0.2 } },\n};\n\nfunction Header( {\n\tsetEntitiesSavedStatesCallback,\n\tsetListViewToggleElement,\n} ) {\n\tconst isLargeViewport = useViewportMatch( 'large' );\n\tconst { hasActiveMetaboxes, isPublishSidebarOpened, showIconLabels } =\n\t\tuseSelect(\n\t\t\t( select ) => ( {\n\t\t\t\thasActiveMetaboxes: select( editPostStore ).hasMetaBoxes(),\n\t\t\t\tisPublishSidebarOpened:\n\t\t\t\t\tselect( editPostStore ).isPublishSidebarOpened(),\n\t\t\t\tshowIconLabels:\n\t\t\t\t\tselect( editPostStore ).isFeatureActive( 'showIconLabels' ),\n\t\t\t} ),\n\t\t\t[]\n\t\t);\n\n\treturn (\n\t\t<div className=\"edit-post-header\">\n\t\t\t<MainDashboardButton.Slot>\n\t\t\t\t<motion.div\n\t\t\t\t\tvariants={ slideX }\n\t\t\t\t\ttransition={ { type: 'tween', delay: 0.8 } }\n\t\t\t\t>\n\t\t\t\t\t<FullscreenModeClose showTooltip />\n\t\t\t\t</motion.div>\n\t\t\t</MainDashboardButton.Slot>\n\t\t\t<motion.div\n\t\t\t\tvariants={ slideY }\n\t\t\t\ttransition={ { type: 'tween', delay: 0.8 } }\n\t\t\t\tclassName=\"edit-post-header__toolbar\"\n\t\t\t>\n\t\t\t\t<HeaderToolbar\n\t\t\t\t\tsetListViewToggleElement={ setListViewToggleElement }\n\t\t\t\t/>\n\t\t\t\t<div className=\"edit-post-header__center\">\n\t\t\t\t\t<DocumentActions />\n\t\t\t\t</div>\n\t\t\t</motion.div>\n\t\t\t<motion.div\n\t\t\t\tvariants={ slideY }\n\t\t\t\ttransition={ { type: 'tween', delay: 0.8 } }\n\t\t\t\tclassName=\"edit-post-header__settings\"\n\t\t\t>\n\t\t\t\t{ ! isPublishSidebarOpened && (\n\t\t\t\t\t// This button isn't completely hidden by the publish sidebar.\n\t\t\t\t\t// We can't hide the whole toolbar when the publish sidebar is open because\n\t\t\t\t\t// we want to prevent mounting/unmounting the PostPublishButtonOrToggle DOM node.\n\t\t\t\t\t// We track that DOM node to return focus to the PostPublishButtonOrToggle\n\t\t\t\t\t// when the publish sidebar has been closed.\n\t\t\t\t\t<PostSavedState\n\t\t\t\t\t\tforceIsDirty={ hasActiveMetaboxes }\n\t\t\t\t\t\tshowIconLabels={ showIconLabels }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t<DevicePreview />\n\t\t\t\t<PostPreviewButton forceIsAutosaveable={ hasActiveMetaboxes } />\n\t\t\t\t<ViewLink />\n\t\t\t\t<PostPublishButtonOrToggle\n\t\t\t\t\tforceIsDirty={ hasActiveMetaboxes }\n\t\t\t\t\tsetEntitiesSavedStatesCallback={\n\t\t\t\t\t\tsetEntitiesSavedStatesCallback\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ ( isLargeViewport || ! showIconLabels ) && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<PinnedItems.Slot scope=\"core/edit-post\" />\n\t\t\t\t\t\t<MoreMenu showIconLabels={ showIconLabels } />\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t\t{ showIconLabels && ! isLargeViewport && (\n\t\t\t\t\t<MoreMenu showIconLabels={ showIconLabels } />\n\t\t\t\t) }\n\t\t\t</motion.div>\n\t\t</div>\n\t);\n}\n\nexport default Header;\n"],"mappings":"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"}
@@ -161,17 +161,24 @@ function Layout() {
161
161
  // Local state for save panel.
162
162
  // Note 'truthy' callback implies an open panel.
163
163
  const [entitiesSavedStatesCallback, setEntitiesSavedStatesCallback] = useState(false);
164
+ const [listViewToggleElement, setListViewToggleElement] = useState(null);
164
165
  const closeEntitiesSavedStates = useCallback(arg => {
165
166
  if (typeof entitiesSavedStatesCallback === 'function') {
166
167
  entitiesSavedStatesCallback(arg);
167
168
  }
168
169
  setEntitiesSavedStatesCallback(false);
169
170
  }, [entitiesSavedStatesCallback]);
171
+
172
+ // We need to add the show-icon-labels class to the body element so it is applied to modals.
173
+ if (showIconLabels) {
174
+ document.body.classList.add('show-icon-labels');
175
+ } else {
176
+ document.body.classList.remove('show-icon-labels');
177
+ }
170
178
  const className = classnames('edit-post-layout', 'is-mode-' + mode, {
171
179
  'is-sidebar-opened': sidebarIsOpened,
172
180
  'has-fixed-toolbar': hasFixedToolbar,
173
181
  'has-metaboxes': hasActiveMetaboxes,
174
- 'show-icon-labels': showIconLabels,
175
182
  'is-distraction-free': isDistractionFree && isLargeViewport,
176
183
  'is-entity-save-view-open': !!entitiesSavedStatesCallback
177
184
  });
@@ -181,7 +188,9 @@ function Layout() {
181
188
  return createElement(InserterSidebar, null);
182
189
  }
183
190
  if (mode === 'visual' && isListViewOpened) {
184
- return createElement(ListViewSidebar, null);
191
+ return createElement(ListViewSidebar, {
192
+ listViewToggleElement: listViewToggleElement
193
+ });
185
194
  }
186
195
  return null;
187
196
  };
@@ -191,7 +200,7 @@ function Layout() {
191
200
  }
192
201
  return createElement(Fragment, null, createElement(FullscreenMode, {
193
202
  isActive: isFullscreenActive
194
- }), createElement(BrowserURL, null), createElement(UnsavedChangesWarning, null), createElement(AutosaveMonitor, null), createElement(LocalAutosaveMonitor, null), createElement(EditPostKeyboardShortcuts, null), createElement(EditorKeyboardShortcutsRegister, null), createElement(EditorKeyboardShortcuts, null), createElement(SettingsSidebar, null), createElement(InterfaceSkeleton, {
203
+ }), createElement(BrowserURL, null), createElement(UnsavedChangesWarning, null), createElement(AutosaveMonitor, null), createElement(LocalAutosaveMonitor, null), createElement(EditPostKeyboardShortcuts, null), createElement(EditorKeyboardShortcutsRegister, null), createElement(EditorKeyboardShortcuts, null), createElement(InterfaceSkeleton, {
195
204
  isDistractionFree: isDistractionFree && isLargeViewport,
196
205
  className: className,
197
206
  labels: {
@@ -199,7 +208,8 @@ function Layout() {
199
208
  secondarySidebar: secondarySidebarLabel
200
209
  },
201
210
  header: createElement(Header, {
202
- setEntitiesSavedStatesCallback: setEntitiesSavedStatesCallback
211
+ setEntitiesSavedStatesCallback: setEntitiesSavedStatesCallback,
212
+ setListViewToggleElement: setListViewToggleElement
203
213
  }),
204
214
  editorNotices: createElement(EditorNotices, null),
205
215
  secondarySidebar: secondarySidebar(),
@@ -239,7 +249,7 @@ function Layout() {
239
249
  }
240
250
  }), createElement(EditPostPreferencesModal, null), createElement(KeyboardShortcutHelpModal, null), createElement(WelcomeGuide, null), createElement(PostSyncStatusModal, null), createElement(StartPageOptions, null), createElement(PluginArea, {
241
251
  onError: onPluginAreaError
242
- }));
252
+ }), createElement(SettingsSidebar, null));
243
253
  }
244
254
  export default Layout;
245
255
  //# sourceMappingURL=index.js.map