@wordpress/edit-post 8.8.18 → 8.8.20

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.
@@ -37,6 +37,7 @@ var _useCommands = _interopRequireDefault(require("../../commands/use-commands")
37
37
  var _usePaddingAppender = require("./use-padding-appender");
38
38
  var _useShouldIframe = require("./use-should-iframe");
39
39
  var _useNavigateToEntityRecord = _interopRequireDefault(require("../../hooks/use-navigate-to-entity-record"));
40
+ var _useMetaBoxInitialization = require("../meta-boxes/use-meta-box-initialization");
40
41
  var _jsxRuntime = require("react/jsx-runtime");
41
42
  /**
42
43
  * External dependencies
@@ -362,7 +363,8 @@ function Layout({
362
363
  showMetaBoxes,
363
364
  hasHistory,
364
365
  isWelcomeGuideVisible,
365
- templateId
366
+ templateId,
367
+ isDevicePreview
366
368
  } = (0, _data.useSelect)(select => {
367
369
  var _getPostType$viewable;
368
370
  const {
@@ -376,6 +378,10 @@ function Layout({
376
378
  canUser,
377
379
  getPostType
378
380
  } = select(_coreData.store);
381
+ const {
382
+ getDeviceType,
383
+ getEditorMode
384
+ } = select(_editor.store);
379
385
  const {
380
386
  __unstableGetEditorMode
381
387
  } = (0, _lockUnlock.unlock)(select(_blockEditor.store));
@@ -387,17 +393,19 @@ function Layout({
387
393
  });
388
394
  const isZoomOut = __unstableGetEditorMode() === 'zoom-out';
389
395
  return {
390
- mode: select(_editor.store).getEditorMode(),
396
+ mode: getEditorMode(),
391
397
  isFullscreenActive: select(_store.store).isFeatureActive('fullscreenMode'),
392
398
  hasActiveMetaboxes: select(_store.store).hasMetaBoxes(),
393
399
  hasBlockSelected: !!select(_blockEditor.store).getBlockSelectionStart(),
394
400
  showIconLabels: get('core', 'showIconLabels'),
395
401
  isDistractionFree: get('core', 'distractionFree'),
396
- showMetaBoxes: !DESIGN_POST_TYPES.includes(currentPostType) && select(_editor.store).getRenderingMode() === 'post-only' && !isZoomOut,
402
+ showMetaBoxes: !DESIGN_POST_TYPES.includes(currentPostType) && !isZoomOut,
397
403
  isWelcomeGuideVisible: isFeatureActive('welcomeGuide'),
398
- templateId: supportsTemplateMode && isViewable && canViewTemplate && !isEditingTemplate ? getEditedPostTemplateId() : null
404
+ templateId: supportsTemplateMode && isViewable && canViewTemplate && !isEditingTemplate ? getEditedPostTemplateId() : null,
405
+ isDevicePreview: getDeviceType() !== 'Desktop'
399
406
  };
400
407
  }, [currentPostType, isEditingTemplate, settings.supportsTemplateMode]);
408
+ (0, _useMetaBoxInitialization.useMetaBoxInitialization)(hasActiveMetaboxes);
401
409
 
402
410
  // Set the right context for the command palette
403
411
  const commandContext = hasBlockSelected ? 'block-selection-edit' : 'entity-edit';
@@ -499,7 +507,7 @@ function Layout({
499
507
  location: "side"
500
508
  }),
501
509
  extraContent: !isDistractionFree && showMetaBoxes && /*#__PURE__*/(0, _jsxRuntime.jsx)(MetaBoxesMain, {
502
- isLegacy: !shouldIframe
510
+ isLegacy: !shouldIframe || isDevicePreview
503
511
  }),
504
512
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_editor.PostLockedModal, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_editorInitialization.default, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(FullscreenMode, {
505
513
  isActive: isFullscreenActive
@@ -1 +1 @@
1
- {"version":3,"names":["_clsx","_interopRequireDefault","require","_editor","_data","_blockEditor","_plugins","_i18n","_element","_icons","_notices","_preferences","_commands","_coreCommands","_blockLibrary","_url","_htmlEntities","_coreData","_components","_compose","_backButton","_editorInitialization","_keyboardShortcuts","_initPatternModal","_browserUrl","_metaBoxes","_moreMenu","_welcomeGuide","_store","_lockUnlock","_useCommands","_usePaddingAppender","_useShouldIframe","_useNavigateToEntityRecord","_jsxRuntime","getLayoutStyles","unlock","blockEditorPrivateApis","useCommands","coreCommandsPrivateApis","useCommandContext","commandsPrivateApis","Editor","FullscreenMode","NavigableRegion","editorPrivateApis","BlockKeyboardShortcuts","blockLibraryPrivateApis","DESIGN_POST_TYPES","useEditorStyles","hasThemeStyleSupport","editorSettings","isZoomedOutView","renderingMode","postType","useSelect","select","__unstableGetEditorMode","blockEditorStore","getCurrentPostType","getRenderingMode","editorStore","_postType","editPostStore","isFeatureActive","getEditorSettings","useMemo","_editorSettings$style","_editorSettings$defau","_editorSettings$style2","_editorSettings$style3","presetStyles","styles","filter","style","__unstableType","defaultEditorStyles","hasThemeStyles","length","disableLayoutStyles","push","css","selector","hasBlockGapSupport","hasFallbackGapSupport","fallbackGapValue","baseStyles","includes","MetaBoxesMain","isLegacy","isOpen","openHeight","hasAnyVisible","get","preferencesStore","isMetaBoxLocationVisible","set","setPreference","useDispatch","metaBoxesMainRef","useRef","isShort","useMediaQuery","min","max","setHeightConstraints","useState","effectSizeConstraints","useRefEffect","node","container","closest","noticeLists","querySelectorAll","resizeHandle","querySelector","deriveConstraints","fullHeight","offsetHeight","nextMax","element","nextMin","observer","window","ResizeObserver","observe","disconnect","separatorRef","separatorHelpId","useId","isUntouched","setIsUntouched","applyHeight","candidateHeight","isPersistent","isInstant","nextHeight","Math","current","ariaValueNow","getAriaValueNow","updateSize","height","width","contents","jsxs","className","clsx","hidden","children","jsx","default","location","isAutoHeight","undefined","usedMax","round","usedAriaValueNow","toggle","onSeparatorKeyDown","event","delta","ArrowUp","ArrowDown","key","pane","resizable","fromHeight","preventDefault","paneLabel","__","Pane","paneProps","ResizableBox","as","ref","defaultSize","minHeight","maxHeight","enable","top","right","bottom","left","topLeft","topRight","bottomRight","bottomLeft","handleClasses","handleComponent","Fragment","Tooltip","text","role","onKeyDown","VisuallyHidden","id","onPointerDown","pointerId","target","setPointerCapture","onResizeStart","direction","elementRef","onResize","state","onResizeStop","onClick","Icon","icon","chevronUp","chevronDown","Layout","postId","initialPostId","initialPostType","settings","initialEdits","useEditPostCommands","paddingAppenderRef","usePaddingAppender","shouldIframe","useShouldIframe","createErrorNotice","noticesStore","currentPost","currentPostId","currentPostType","onNavigateToEntityRecord","onNavigateToPreviousEntityRecord","useNavigateToEntityRecord","isEditingTemplate","mode","isFullscreenActive","hasActiveMetaboxes","hasBlockSelected","showIconLabels","isDistractionFree","showMetaBoxes","hasHistory","isWelcomeGuideVisible","templateId","_getPostType$viewable","getEditedPostTemplateId","canUser","getPostType","coreStore","supportsTemplateMode","isViewable","viewable","canViewTemplate","kind","name","isZoomOut","getEditorMode","hasMetaBoxes","getBlockSelectionStart","commandContext","defaultRenderingMode","document","body","classList","add","remove","navigateRegionsProps","useNavigateRegions","onPluginAreaError","sprintf","createSuccessNotice","onActionPerformed","useCallback","actionId","items","href","addQueryArgs","trashed","post_type","type","ids","newItem","title","rendered","decodeEntities","actions","label","post","action","initialPost","backButton","useViewportMatch","SlotFillProvider","ErrorBoundary","CommandMenu","forceIsDirty","contentRef","disableIframe","autoFocus","extraSidebarPanels","extraContent","PostLockedModal","isActive","UnsavedChangesWarning","AutosaveMonitor","LocalAutosaveMonitor","EditorKeyboardShortcutsRegister","PluginArea","onError","EditorSnackbars","_default","exports"],"sources":["@wordpress/edit-post/src/components/layout/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAutosaveMonitor,\n\tLocalAutosaveMonitor,\n\tUnsavedChangesWarning,\n\tEditorKeyboardShortcutsRegister,\n\tEditorSnackbars,\n\tErrorBoundary,\n\tPostLockedModal,\n\tstore as editorStore,\n\tprivateApis as editorPrivateApis,\n} from '@wordpress/editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { PluginArea } from '@wordpress/plugins';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tuseCallback,\n\tuseMemo,\n\tuseId,\n\tuseRef,\n\tuseState,\n} from '@wordpress/element';\nimport { chevronDown, chevronUp } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport {\n\tCommandMenu,\n\tprivateApis as commandsPrivateApis,\n} from '@wordpress/commands';\nimport { privateApis as coreCommandsPrivateApis } from '@wordpress/core-commands';\nimport { privateApis as blockLibraryPrivateApis } from '@wordpress/block-library';\nimport { addQueryArgs } from '@wordpress/url';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tIcon,\n\tResizableBox,\n\tSlotFillProvider,\n\tTooltip,\n\tVisuallyHidden,\n\t__unstableUseNavigateRegions as useNavigateRegions,\n} from '@wordpress/components';\nimport {\n\tuseMediaQuery,\n\tuseRefEffect,\n\tuseViewportMatch,\n} from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport BackButton from '../back-button';\nimport EditorInitialization from '../editor-initialization';\nimport EditPostKeyboardShortcuts from '../keyboard-shortcuts';\nimport InitPatternModal from '../init-pattern-modal';\nimport BrowserURL from '../browser-url';\nimport MetaBoxes from '../meta-boxes';\nimport PostEditorMoreMenu from '../more-menu';\nimport WelcomeGuide from '../welcome-guide';\nimport { store as editPostStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\nimport useEditPostCommands from '../../commands/use-commands';\nimport { usePaddingAppender } from './use-padding-appender';\nimport { useShouldIframe } from './use-should-iframe';\nimport useNavigateToEntityRecord from '../../hooks/use-navigate-to-entity-record';\n\nconst { getLayoutStyles } = unlock( blockEditorPrivateApis );\nconst { useCommands } = unlock( coreCommandsPrivateApis );\nconst { useCommandContext } = unlock( commandsPrivateApis );\nconst { Editor, FullscreenMode, NavigableRegion } = unlock( editorPrivateApis );\nconst { BlockKeyboardShortcuts } = unlock( blockLibraryPrivateApis );\nconst DESIGN_POST_TYPES = [\n\t'wp_template',\n\t'wp_template_part',\n\t'wp_block',\n\t'wp_navigation',\n];\n\nfunction useEditorStyles() {\n\tconst {\n\t\thasThemeStyleSupport,\n\t\teditorSettings,\n\t\tisZoomedOutView,\n\t\trenderingMode,\n\t\tpostType,\n\t} = useSelect( ( select ) => {\n\t\tconst { __unstableGetEditorMode } = select( blockEditorStore );\n\t\tconst { getCurrentPostType, getRenderingMode } = select( editorStore );\n\t\tconst _postType = getCurrentPostType();\n\t\treturn {\n\t\t\thasThemeStyleSupport:\n\t\t\t\tselect( editPostStore ).isFeatureActive( 'themeStyles' ),\n\t\t\teditorSettings: select( editorStore ).getEditorSettings(),\n\t\t\tisZoomedOutView: __unstableGetEditorMode() === 'zoom-out',\n\t\t\trenderingMode: getRenderingMode(),\n\t\t\tpostType: _postType,\n\t\t};\n\t}, [] );\n\n\t// Compute the default styles.\n\treturn useMemo( () => {\n\t\tconst presetStyles =\n\t\t\teditorSettings.styles?.filter(\n\t\t\t\t( style ) =>\n\t\t\t\t\tstyle.__unstableType && style.__unstableType !== 'theme'\n\t\t\t) ?? [];\n\n\t\tconst defaultEditorStyles = [\n\t\t\t...( editorSettings?.defaultEditorStyles ?? [] ),\n\t\t\t...presetStyles,\n\t\t];\n\n\t\t// Has theme styles if the theme supports them and if some styles were not preset styles (in which case they're theme styles).\n\t\tconst hasThemeStyles =\n\t\t\thasThemeStyleSupport &&\n\t\t\tpresetStyles.length !== ( editorSettings.styles?.length ?? 0 );\n\n\t\t// If theme styles are not present or displayed, ensure that\n\t\t// base layout styles are still present in the editor.\n\t\tif ( ! editorSettings.disableLayoutStyles && ! hasThemeStyles ) {\n\t\t\tdefaultEditorStyles.push( {\n\t\t\t\tcss: getLayoutStyles( {\n\t\t\t\t\tstyle: {},\n\t\t\t\t\tselector: 'body',\n\t\t\t\t\thasBlockGapSupport: false,\n\t\t\t\t\thasFallbackGapSupport: true,\n\t\t\t\t\tfallbackGapValue: '0.5em',\n\t\t\t\t} ),\n\t\t\t} );\n\t\t}\n\n\t\tconst baseStyles = hasThemeStyles\n\t\t\t? editorSettings.styles ?? []\n\t\t\t: defaultEditorStyles;\n\n\t\t// Add a space for the typewriter effect. When typing in the last block,\n\t\t// there needs to be room to scroll up.\n\t\tif (\n\t\t\t! isZoomedOutView &&\n\t\t\trenderingMode === 'post-only' &&\n\t\t\t! DESIGN_POST_TYPES.includes( postType )\n\t\t) {\n\t\t\treturn [\n\t\t\t\t...baseStyles,\n\t\t\t\t{\n\t\t\t\t\tcss: ':root :where(.editor-styles-wrapper)::after {content: \"\"; display: block; height: 40vh;}',\n\t\t\t\t},\n\t\t\t];\n\t\t}\n\n\t\treturn baseStyles;\n\t}, [\n\t\teditorSettings.defaultEditorStyles,\n\t\teditorSettings.disableLayoutStyles,\n\t\teditorSettings.styles,\n\t\thasThemeStyleSupport,\n\t\tpostType,\n\t] );\n}\n\n/**\n * @param {Object} props\n * @param {boolean} props.isLegacy True when the editor canvas is not in an iframe.\n */\nfunction MetaBoxesMain( { isLegacy } ) {\n\tconst [ isOpen, openHeight, hasAnyVisible ] = useSelect( ( select ) => {\n\t\tconst { get } = select( preferencesStore );\n\t\tconst { isMetaBoxLocationVisible } = select( editPostStore );\n\t\treturn [\n\t\t\tget( 'core/edit-post', 'metaBoxesMainIsOpen' ),\n\t\t\tget( 'core/edit-post', 'metaBoxesMainOpenHeight' ),\n\t\t\tisMetaBoxLocationVisible( 'normal' ) ||\n\t\t\t\tisMetaBoxLocationVisible( 'advanced' ) ||\n\t\t\t\tisMetaBoxLocationVisible( 'side' ),\n\t\t];\n\t}, [] );\n\tconst { set: setPreference } = useDispatch( preferencesStore );\n\tconst metaBoxesMainRef = useRef();\n\tconst isShort = useMediaQuery( '(max-height: 549px)' );\n\n\tconst [ { min, max }, setHeightConstraints ] = useState( () => ( {} ) );\n\t// Keeps the resizable area’s size constraints updated taking into account\n\t// editor notices. The constraints are also used to derive the value for the\n\t// aria-valuenow attribute on the seperator.\n\tconst effectSizeConstraints = useRefEffect( ( node ) => {\n\t\tconst container = node.closest(\n\t\t\t'.interface-interface-skeleton__content'\n\t\t);\n\t\tconst noticeLists = container.querySelectorAll(\n\t\t\t':scope > .components-notice-list'\n\t\t);\n\t\tconst resizeHandle = container.querySelector(\n\t\t\t'.edit-post-meta-boxes-main__presenter'\n\t\t);\n\t\tconst deriveConstraints = () => {\n\t\t\tconst fullHeight = container.offsetHeight;\n\t\t\tlet nextMax = fullHeight;\n\t\t\tfor ( const element of noticeLists ) {\n\t\t\t\tnextMax -= element.offsetHeight;\n\t\t\t}\n\t\t\tconst nextMin = resizeHandle.offsetHeight;\n\t\t\tsetHeightConstraints( { min: nextMin, max: nextMax } );\n\t\t};\n\t\tconst observer = new window.ResizeObserver( deriveConstraints );\n\t\tobserver.observe( container );\n\t\tfor ( const element of noticeLists ) {\n\t\t\tobserver.observe( element );\n\t\t}\n\t\treturn () => observer.disconnect();\n\t}, [] );\n\n\tconst separatorRef = useRef();\n\tconst separatorHelpId = useId();\n\n\tconst [ isUntouched, setIsUntouched ] = useState( true );\n\tconst applyHeight = ( candidateHeight, isPersistent, isInstant ) => {\n\t\tconst nextHeight = Math.min( max, Math.max( min, candidateHeight ) );\n\t\tif ( isPersistent ) {\n\t\t\tsetPreference(\n\t\t\t\t'core/edit-post',\n\t\t\t\t'metaBoxesMainOpenHeight',\n\t\t\t\tnextHeight\n\t\t\t);\n\t\t} else {\n\t\t\tseparatorRef.current.ariaValueNow = getAriaValueNow( nextHeight );\n\t\t}\n\t\tif ( isInstant ) {\n\t\t\tmetaBoxesMainRef.current.updateSize( {\n\t\t\t\theight: nextHeight,\n\t\t\t\t// Oddly, when the event that triggered this was not from the mouse (e.g. keydown),\n\t\t\t\t// if `width` is left unspecified a subsequent drag gesture applies a fixed\n\t\t\t\t// width and the pane fails to widen/narrow with parent width changes from\n\t\t\t\t// sidebars opening/closing or window resizes.\n\t\t\t\twidth: 'auto',\n\t\t\t} );\n\t\t}\n\t};\n\n\tif ( ! hasAnyVisible ) {\n\t\treturn;\n\t}\n\n\tconst contents = (\n\t\t<div\n\t\t\tclassName={ clsx(\n\t\t\t\t// The class name 'edit-post-layout__metaboxes' is retained because some plugins use it.\n\t\t\t\t'edit-post-layout__metaboxes',\n\t\t\t\t! isLegacy && 'edit-post-meta-boxes-main__liner'\n\t\t\t) }\n\t\t\thidden={ ! isLegacy && isShort && ! isOpen }\n\t\t>\n\t\t\t<MetaBoxes location=\"normal\" />\n\t\t\t<MetaBoxes location=\"advanced\" />\n\t\t</div>\n\t);\n\n\tif ( isLegacy ) {\n\t\treturn contents;\n\t}\n\n\tconst isAutoHeight = openHeight === undefined;\n\tlet usedMax = '50%'; // Approximation before max has a value.\n\tif ( max !== undefined ) {\n\t\t// Halves the available max height until a user height is set.\n\t\tusedMax = isAutoHeight && isUntouched ? max / 2 : max;\n\t}\n\n\tconst getAriaValueNow = ( height ) =>\n\t\tMath.round( ( ( height - min ) / ( max - min ) ) * 100 );\n\tconst usedAriaValueNow =\n\t\tmax === undefined || isAutoHeight ? 50 : getAriaValueNow( openHeight );\n\n\tconst toggle = () =>\n\t\tsetPreference( 'core/edit-post', 'metaBoxesMainIsOpen', ! isOpen );\n\n\t// TODO: Support more/all keyboard interactions from the window splitter pattern:\n\t// https://www.w3.org/WAI/ARIA/apg/patterns/windowsplitter/\n\tconst onSeparatorKeyDown = ( event ) => {\n\t\tconst delta = { ArrowUp: 20, ArrowDown: -20 }[ event.key ];\n\t\tif ( delta ) {\n\t\t\tconst pane = metaBoxesMainRef.current.resizable;\n\t\t\tconst fromHeight = isAutoHeight ? pane.offsetHeight : openHeight;\n\t\t\tconst nextHeight = delta + fromHeight;\n\t\t\tapplyHeight( nextHeight, true, true );\n\t\t\tevent.preventDefault();\n\t\t}\n\t};\n\tconst className = 'edit-post-meta-boxes-main';\n\tconst paneLabel = __( 'Meta Boxes' );\n\tlet Pane, paneProps;\n\tif ( isShort ) {\n\t\tPane = NavigableRegion;\n\t\tpaneProps = {\n\t\t\tclassName: clsx( className, 'is-toggle-only' ),\n\t\t};\n\t} else {\n\t\tPane = ResizableBox;\n\t\tpaneProps = /** @type {Parameters<typeof ResizableBox>[0]} */ ( {\n\t\t\tas: NavigableRegion,\n\t\t\tref: metaBoxesMainRef,\n\t\t\tclassName: clsx( className, 'is-resizable' ),\n\t\t\tdefaultSize: { height: openHeight },\n\t\t\tminHeight: min,\n\t\t\tmaxHeight: usedMax,\n\t\t\tenable: {\n\t\t\t\ttop: true,\n\t\t\t\tright: false,\n\t\t\t\tbottom: false,\n\t\t\t\tleft: false,\n\t\t\t\ttopLeft: false,\n\t\t\t\ttopRight: false,\n\t\t\t\tbottomRight: false,\n\t\t\t\tbottomLeft: false,\n\t\t\t},\n\t\t\thandleClasses: { top: 'edit-post-meta-boxes-main__presenter' },\n\t\t\thandleComponent: {\n\t\t\t\ttop: (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Tooltip text={ __( 'Drag to resize' ) }>\n\t\t\t\t\t\t\t<button // eslint-disable-line jsx-a11y/role-supports-aria-props\n\t\t\t\t\t\t\t\tref={ separatorRef }\n\t\t\t\t\t\t\t\trole=\"separator\" // eslint-disable-line jsx-a11y/no-interactive-element-to-noninteractive-role\n\t\t\t\t\t\t\t\taria-valuenow={ usedAriaValueNow }\n\t\t\t\t\t\t\t\taria-label={ __( 'Drag to resize' ) }\n\t\t\t\t\t\t\t\taria-describedby={ separatorHelpId }\n\t\t\t\t\t\t\t\tonKeyDown={ onSeparatorKeyDown }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t<VisuallyHidden id={ separatorHelpId }>\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'Use up and down arrow keys to resize the meta box panel.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t</>\n\t\t\t\t),\n\t\t\t},\n\t\t\t// Avoids hiccups while dragging over objects like iframes and ensures that\n\t\t\t// the event to end the drag is captured by the target (resize handle)\n\t\t\t// whether or not it’s under the pointer.\n\t\t\tonPointerDown: ( { pointerId, target } ) => {\n\t\t\t\ttarget.setPointerCapture( pointerId );\n\t\t\t},\n\t\t\tonResizeStart: ( event, direction, elementRef ) => {\n\t\t\t\tif ( isAutoHeight ) {\n\t\t\t\t\t// Sets the starting height to avoid visual jumps in height and\n\t\t\t\t\t// aria-valuenow being `NaN` for the first (few) resize events.\n\t\t\t\t\tapplyHeight( elementRef.offsetHeight, false, true );\n\t\t\t\t\tsetIsUntouched( false );\n\t\t\t\t}\n\t\t\t},\n\t\t\tonResize: () =>\n\t\t\t\tapplyHeight( metaBoxesMainRef.current.state.height ),\n\t\t\tonResizeStop: () =>\n\t\t\t\tapplyHeight( metaBoxesMainRef.current.state.height, true ),\n\t\t} );\n\t}\n\n\treturn (\n\t\t<Pane aria-label={ paneLabel } { ...paneProps }>\n\t\t\t{ isShort ? (\n\t\t\t\t<button\n\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\tclassName=\"edit-post-meta-boxes-main__presenter\"\n\t\t\t\t\tonClick={ toggle }\n\t\t\t\t>\n\t\t\t\t\t{ paneLabel }\n\t\t\t\t\t<Icon icon={ isOpen ? chevronUp : chevronDown } />\n\t\t\t\t</button>\n\t\t\t) : (\n\t\t\t\t<meta ref={ effectSizeConstraints } />\n\t\t\t) }\n\t\t\t{ contents }\n\t\t</Pane>\n\t);\n}\n\nfunction Layout( {\n\tpostId: initialPostId,\n\tpostType: initialPostType,\n\tsettings,\n\tinitialEdits,\n} ) {\n\tuseCommands();\n\tuseEditPostCommands();\n\tconst paddingAppenderRef = usePaddingAppender();\n\tconst shouldIframe = useShouldIframe();\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst {\n\t\tcurrentPost: { postId: currentPostId, postType: currentPostType },\n\t\tonNavigateToEntityRecord,\n\t\tonNavigateToPreviousEntityRecord,\n\t} = useNavigateToEntityRecord(\n\t\tinitialPostId,\n\t\tinitialPostType,\n\t\t'post-only'\n\t);\n\tconst isEditingTemplate = currentPostType === 'wp_template';\n\tconst {\n\t\tmode,\n\t\tisFullscreenActive,\n\t\thasActiveMetaboxes,\n\t\thasBlockSelected,\n\t\tshowIconLabels,\n\t\tisDistractionFree,\n\t\tshowMetaBoxes,\n\t\thasHistory,\n\t\tisWelcomeGuideVisible,\n\t\ttemplateId,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { get } = select( preferencesStore );\n\t\t\tconst { isFeatureActive, getEditedPostTemplateId } = unlock(\n\t\t\t\tselect( editPostStore )\n\t\t\t);\n\t\t\tconst { canUser, getPostType } = select( coreStore );\n\t\t\tconst { __unstableGetEditorMode } = unlock(\n\t\t\t\tselect( blockEditorStore )\n\t\t\t);\n\n\t\t\tconst supportsTemplateMode = settings.supportsTemplateMode;\n\t\t\tconst isViewable =\n\t\t\t\tgetPostType( currentPostType )?.viewable ?? false;\n\t\t\tconst canViewTemplate = canUser( 'read', {\n\t\t\t\tkind: 'postType',\n\t\t\t\tname: 'wp_template',\n\t\t\t} );\n\n\t\t\tconst isZoomOut = __unstableGetEditorMode() === 'zoom-out';\n\n\t\t\treturn {\n\t\t\t\tmode: select( editorStore ).getEditorMode(),\n\t\t\t\tisFullscreenActive:\n\t\t\t\t\tselect( editPostStore ).isFeatureActive( 'fullscreenMode' ),\n\t\t\t\thasActiveMetaboxes: select( editPostStore ).hasMetaBoxes(),\n\t\t\t\thasBlockSelected:\n\t\t\t\t\t!! select( blockEditorStore ).getBlockSelectionStart(),\n\t\t\t\tshowIconLabels: get( 'core', 'showIconLabels' ),\n\t\t\t\tisDistractionFree: get( 'core', 'distractionFree' ),\n\t\t\t\tshowMetaBoxes:\n\t\t\t\t\t! DESIGN_POST_TYPES.includes( currentPostType ) &&\n\t\t\t\t\tselect( editorStore ).getRenderingMode() === 'post-only' &&\n\t\t\t\t\t! isZoomOut,\n\t\t\t\tisWelcomeGuideVisible: isFeatureActive( 'welcomeGuide' ),\n\t\t\t\ttemplateId:\n\t\t\t\t\tsupportsTemplateMode &&\n\t\t\t\t\tisViewable &&\n\t\t\t\t\tcanViewTemplate &&\n\t\t\t\t\t! isEditingTemplate\n\t\t\t\t\t\t? getEditedPostTemplateId()\n\t\t\t\t\t\t: null,\n\t\t\t};\n\t\t},\n\t\t[ currentPostType, isEditingTemplate, settings.supportsTemplateMode ]\n\t);\n\n\t// Set the right context for the command palette\n\tconst commandContext = hasBlockSelected\n\t\t? 'block-selection-edit'\n\t\t: 'entity-edit';\n\tuseCommandContext( commandContext );\n\tconst editorSettings = useMemo(\n\t\t() => ( {\n\t\t\t...settings,\n\t\t\tonNavigateToEntityRecord,\n\t\t\tonNavigateToPreviousEntityRecord,\n\t\t\tdefaultRenderingMode: 'post-only',\n\t\t} ),\n\t\t[ settings, onNavigateToEntityRecord, onNavigateToPreviousEntityRecord ]\n\t);\n\tconst styles = useEditorStyles();\n\n\t// We need to add the show-icon-labels class to the body element so it is applied to modals.\n\tif ( showIconLabels ) {\n\t\tdocument.body.classList.add( 'show-icon-labels' );\n\t} else {\n\t\tdocument.body.classList.remove( 'show-icon-labels' );\n\t}\n\n\tconst navigateRegionsProps = useNavigateRegions();\n\n\tconst className = clsx( 'edit-post-layout', 'is-mode-' + mode, {\n\t\t'has-metaboxes': hasActiveMetaboxes,\n\t} );\n\n\tfunction onPluginAreaError( name ) {\n\t\tcreateErrorNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: plugin name */\n\t\t\t\t__(\n\t\t\t\t\t'The \"%s\" plugin has encountered an error and cannot be rendered.'\n\t\t\t\t),\n\t\t\t\tname\n\t\t\t)\n\t\t);\n\t}\n\n\tconst { createSuccessNotice } = useDispatch( noticesStore );\n\n\tconst onActionPerformed = useCallback(\n\t\t( actionId, items ) => {\n\t\t\tswitch ( actionId ) {\n\t\t\t\tcase 'move-to-trash':\n\t\t\t\t\t{\n\t\t\t\t\t\tdocument.location.href = addQueryArgs( 'edit.php', {\n\t\t\t\t\t\t\ttrashed: 1,\n\t\t\t\t\t\t\tpost_type: items[ 0 ].type,\n\t\t\t\t\t\t\tids: items[ 0 ].id,\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'duplicate-post':\n\t\t\t\t\t{\n\t\t\t\t\t\tconst newItem = items[ 0 ];\n\t\t\t\t\t\tconst title =\n\t\t\t\t\t\t\ttypeof newItem.title === 'string'\n\t\t\t\t\t\t\t\t? newItem.title\n\t\t\t\t\t\t\t\t: newItem.title?.rendered;\n\t\t\t\t\t\tcreateSuccessNotice(\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t// translators: %s: Title of the created post or template, e.g: \"Hello world\".\n\t\t\t\t\t\t\t\t__( '\"%s\" successfully created.' ),\n\t\t\t\t\t\t\t\tdecodeEntities( title )\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t\t\t\tid: 'duplicate-post-action',\n\t\t\t\t\t\t\t\tactions: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tlabel: __( 'Edit' ),\n\t\t\t\t\t\t\t\t\t\tonClick: () => {\n\t\t\t\t\t\t\t\t\t\t\tconst postId = newItem.id;\n\t\t\t\t\t\t\t\t\t\t\tdocument.location.href =\n\t\t\t\t\t\t\t\t\t\t\t\taddQueryArgs( 'post.php', {\n\t\t\t\t\t\t\t\t\t\t\t\t\tpost: postId,\n\t\t\t\t\t\t\t\t\t\t\t\t\taction: 'edit',\n\t\t\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t},\n\t\t[ createSuccessNotice ]\n\t);\n\n\tconst initialPost = useMemo( () => {\n\t\treturn {\n\t\t\ttype: initialPostType,\n\t\t\tid: initialPostId,\n\t\t};\n\t}, [ initialPostType, initialPostId ] );\n\n\tconst backButton =\n\t\tuseViewportMatch( 'medium' ) && isFullscreenActive ? (\n\t\t\t<BackButton initialPost={ initialPost } />\n\t\t) : null;\n\n\treturn (\n\t\t<SlotFillProvider>\n\t\t\t<ErrorBoundary>\n\t\t\t\t<CommandMenu />\n\t\t\t\t<WelcomeGuide postType={ currentPostType } />\n\t\t\t\t<div\n\t\t\t\t\tclassName={ navigateRegionsProps.className }\n\t\t\t\t\t{ ...navigateRegionsProps }\n\t\t\t\t\tref={ navigateRegionsProps.ref }\n\t\t\t\t>\n\t\t\t\t\t<Editor\n\t\t\t\t\t\tsettings={ editorSettings }\n\t\t\t\t\t\tinitialEdits={ initialEdits }\n\t\t\t\t\t\tpostType={ currentPostType }\n\t\t\t\t\t\tpostId={ currentPostId }\n\t\t\t\t\t\ttemplateId={ templateId }\n\t\t\t\t\t\tclassName={ className }\n\t\t\t\t\t\tstyles={ styles }\n\t\t\t\t\t\tforceIsDirty={ hasActiveMetaboxes }\n\t\t\t\t\t\tcontentRef={ paddingAppenderRef }\n\t\t\t\t\t\tdisableIframe={ ! shouldIframe }\n\t\t\t\t\t\t// We should auto-focus the canvas (title) on load.\n\t\t\t\t\t\t// eslint-disable-next-line jsx-a11y/no-autofocus\n\t\t\t\t\t\tautoFocus={ ! isWelcomeGuideVisible }\n\t\t\t\t\t\tonActionPerformed={ onActionPerformed }\n\t\t\t\t\t\textraSidebarPanels={\n\t\t\t\t\t\t\tshowMetaBoxes && <MetaBoxes location=\"side\" />\n\t\t\t\t\t\t}\n\t\t\t\t\t\textraContent={\n\t\t\t\t\t\t\t! isDistractionFree &&\n\t\t\t\t\t\t\tshowMetaBoxes && (\n\t\t\t\t\t\t\t\t<MetaBoxesMain isLegacy={ ! shouldIframe } />\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<PostLockedModal />\n\t\t\t\t\t\t<EditorInitialization />\n\t\t\t\t\t\t<FullscreenMode isActive={ isFullscreenActive } />\n\t\t\t\t\t\t<BrowserURL hasHistory={ hasHistory } />\n\t\t\t\t\t\t<UnsavedChangesWarning />\n\t\t\t\t\t\t<AutosaveMonitor />\n\t\t\t\t\t\t<LocalAutosaveMonitor />\n\t\t\t\t\t\t<EditPostKeyboardShortcuts />\n\t\t\t\t\t\t<EditorKeyboardShortcutsRegister />\n\t\t\t\t\t\t<BlockKeyboardShortcuts />\n\t\t\t\t\t\t<InitPatternModal />\n\t\t\t\t\t\t<PluginArea onError={ onPluginAreaError } />\n\t\t\t\t\t\t<PostEditorMoreMenu />\n\t\t\t\t\t\t{ backButton }\n\t\t\t\t\t\t<EditorSnackbars />\n\t\t\t\t\t</Editor>\n\t\t\t\t</div>\n\t\t\t</ErrorBoundary>\n\t\t</SlotFillProvider>\n\t);\n}\n\nexport default Layout;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_clsx","_interopRequireDefault","require","_editor","_data","_blockEditor","_plugins","_i18n","_element","_icons","_notices","_preferences","_commands","_coreCommands","_blockLibrary","_url","_htmlEntities","_coreData","_components","_compose","_backButton","_editorInitialization","_keyboardShortcuts","_initPatternModal","_browserUrl","_metaBoxes","_moreMenu","_welcomeGuide","_store","_lockUnlock","_useCommands","_usePaddingAppender","_useShouldIframe","_useNavigateToEntityRecord","_useMetaBoxInitialization","_jsxRuntime","getLayoutStyles","unlock","blockEditorPrivateApis","useCommands","coreCommandsPrivateApis","useCommandContext","commandsPrivateApis","Editor","FullscreenMode","NavigableRegion","editorPrivateApis","BlockKeyboardShortcuts","blockLibraryPrivateApis","DESIGN_POST_TYPES","useEditorStyles","hasThemeStyleSupport","editorSettings","isZoomedOutView","renderingMode","postType","useSelect","select","__unstableGetEditorMode","blockEditorStore","getCurrentPostType","getRenderingMode","editorStore","_postType","editPostStore","isFeatureActive","getEditorSettings","useMemo","_editorSettings$style","_editorSettings$defau","_editorSettings$style2","_editorSettings$style3","presetStyles","styles","filter","style","__unstableType","defaultEditorStyles","hasThemeStyles","length","disableLayoutStyles","push","css","selector","hasBlockGapSupport","hasFallbackGapSupport","fallbackGapValue","baseStyles","includes","MetaBoxesMain","isLegacy","isOpen","openHeight","hasAnyVisible","get","preferencesStore","isMetaBoxLocationVisible","set","setPreference","useDispatch","metaBoxesMainRef","useRef","isShort","useMediaQuery","min","max","setHeightConstraints","useState","effectSizeConstraints","useRefEffect","node","container","closest","noticeLists","querySelectorAll","resizeHandle","querySelector","deriveConstraints","fullHeight","offsetHeight","nextMax","element","nextMin","observer","window","ResizeObserver","observe","disconnect","separatorRef","separatorHelpId","useId","isUntouched","setIsUntouched","applyHeight","candidateHeight","isPersistent","isInstant","nextHeight","Math","current","ariaValueNow","getAriaValueNow","updateSize","height","width","contents","jsxs","className","clsx","hidden","children","jsx","default","location","isAutoHeight","undefined","usedMax","round","usedAriaValueNow","toggle","onSeparatorKeyDown","event","delta","ArrowUp","ArrowDown","key","pane","resizable","fromHeight","preventDefault","paneLabel","__","Pane","paneProps","ResizableBox","as","ref","defaultSize","minHeight","maxHeight","enable","top","right","bottom","left","topLeft","topRight","bottomRight","bottomLeft","handleClasses","handleComponent","Fragment","Tooltip","text","role","onKeyDown","VisuallyHidden","id","onPointerDown","pointerId","target","setPointerCapture","onResizeStart","direction","elementRef","onResize","state","onResizeStop","onClick","Icon","icon","chevronUp","chevronDown","Layout","postId","initialPostId","initialPostType","settings","initialEdits","useEditPostCommands","paddingAppenderRef","usePaddingAppender","shouldIframe","useShouldIframe","createErrorNotice","noticesStore","currentPost","currentPostId","currentPostType","onNavigateToEntityRecord","onNavigateToPreviousEntityRecord","useNavigateToEntityRecord","isEditingTemplate","mode","isFullscreenActive","hasActiveMetaboxes","hasBlockSelected","showIconLabels","isDistractionFree","showMetaBoxes","hasHistory","isWelcomeGuideVisible","templateId","isDevicePreview","_getPostType$viewable","getEditedPostTemplateId","canUser","getPostType","coreStore","getDeviceType","getEditorMode","supportsTemplateMode","isViewable","viewable","canViewTemplate","kind","name","isZoomOut","hasMetaBoxes","getBlockSelectionStart","useMetaBoxInitialization","commandContext","defaultRenderingMode","document","body","classList","add","remove","navigateRegionsProps","useNavigateRegions","onPluginAreaError","sprintf","createSuccessNotice","onActionPerformed","useCallback","actionId","items","href","addQueryArgs","trashed","post_type","type","ids","newItem","title","rendered","decodeEntities","actions","label","post","action","initialPost","backButton","useViewportMatch","SlotFillProvider","ErrorBoundary","CommandMenu","forceIsDirty","contentRef","disableIframe","autoFocus","extraSidebarPanels","extraContent","PostLockedModal","isActive","UnsavedChangesWarning","AutosaveMonitor","LocalAutosaveMonitor","EditorKeyboardShortcutsRegister","PluginArea","onError","EditorSnackbars","_default","exports"],"sources":["@wordpress/edit-post/src/components/layout/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAutosaveMonitor,\n\tLocalAutosaveMonitor,\n\tUnsavedChangesWarning,\n\tEditorKeyboardShortcutsRegister,\n\tEditorSnackbars,\n\tErrorBoundary,\n\tPostLockedModal,\n\tstore as editorStore,\n\tprivateApis as editorPrivateApis,\n} from '@wordpress/editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { PluginArea } from '@wordpress/plugins';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tuseCallback,\n\tuseMemo,\n\tuseId,\n\tuseRef,\n\tuseState,\n} from '@wordpress/element';\nimport { chevronDown, chevronUp } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport {\n\tCommandMenu,\n\tprivateApis as commandsPrivateApis,\n} from '@wordpress/commands';\nimport { privateApis as coreCommandsPrivateApis } from '@wordpress/core-commands';\nimport { privateApis as blockLibraryPrivateApis } from '@wordpress/block-library';\nimport { addQueryArgs } from '@wordpress/url';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tIcon,\n\tResizableBox,\n\tSlotFillProvider,\n\tTooltip,\n\tVisuallyHidden,\n\t__unstableUseNavigateRegions as useNavigateRegions,\n} from '@wordpress/components';\nimport {\n\tuseMediaQuery,\n\tuseRefEffect,\n\tuseViewportMatch,\n} from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport BackButton from '../back-button';\nimport EditorInitialization from '../editor-initialization';\nimport EditPostKeyboardShortcuts from '../keyboard-shortcuts';\nimport InitPatternModal from '../init-pattern-modal';\nimport BrowserURL from '../browser-url';\nimport MetaBoxes from '../meta-boxes';\nimport PostEditorMoreMenu from '../more-menu';\nimport WelcomeGuide from '../welcome-guide';\nimport { store as editPostStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\nimport useEditPostCommands from '../../commands/use-commands';\nimport { usePaddingAppender } from './use-padding-appender';\nimport { useShouldIframe } from './use-should-iframe';\nimport useNavigateToEntityRecord from '../../hooks/use-navigate-to-entity-record';\nimport { useMetaBoxInitialization } from '../meta-boxes/use-meta-box-initialization';\n\nconst { getLayoutStyles } = unlock( blockEditorPrivateApis );\nconst { useCommands } = unlock( coreCommandsPrivateApis );\nconst { useCommandContext } = unlock( commandsPrivateApis );\nconst { Editor, FullscreenMode, NavigableRegion } = unlock( editorPrivateApis );\nconst { BlockKeyboardShortcuts } = unlock( blockLibraryPrivateApis );\nconst DESIGN_POST_TYPES = [\n\t'wp_template',\n\t'wp_template_part',\n\t'wp_block',\n\t'wp_navigation',\n];\n\nfunction useEditorStyles() {\n\tconst {\n\t\thasThemeStyleSupport,\n\t\teditorSettings,\n\t\tisZoomedOutView,\n\t\trenderingMode,\n\t\tpostType,\n\t} = useSelect( ( select ) => {\n\t\tconst { __unstableGetEditorMode } = select( blockEditorStore );\n\t\tconst { getCurrentPostType, getRenderingMode } = select( editorStore );\n\t\tconst _postType = getCurrentPostType();\n\t\treturn {\n\t\t\thasThemeStyleSupport:\n\t\t\t\tselect( editPostStore ).isFeatureActive( 'themeStyles' ),\n\t\t\teditorSettings: select( editorStore ).getEditorSettings(),\n\t\t\tisZoomedOutView: __unstableGetEditorMode() === 'zoom-out',\n\t\t\trenderingMode: getRenderingMode(),\n\t\t\tpostType: _postType,\n\t\t};\n\t}, [] );\n\n\t// Compute the default styles.\n\treturn useMemo( () => {\n\t\tconst presetStyles =\n\t\t\teditorSettings.styles?.filter(\n\t\t\t\t( style ) =>\n\t\t\t\t\tstyle.__unstableType && style.__unstableType !== 'theme'\n\t\t\t) ?? [];\n\n\t\tconst defaultEditorStyles = [\n\t\t\t...( editorSettings?.defaultEditorStyles ?? [] ),\n\t\t\t...presetStyles,\n\t\t];\n\n\t\t// Has theme styles if the theme supports them and if some styles were not preset styles (in which case they're theme styles).\n\t\tconst hasThemeStyles =\n\t\t\thasThemeStyleSupport &&\n\t\t\tpresetStyles.length !== ( editorSettings.styles?.length ?? 0 );\n\n\t\t// If theme styles are not present or displayed, ensure that\n\t\t// base layout styles are still present in the editor.\n\t\tif ( ! editorSettings.disableLayoutStyles && ! hasThemeStyles ) {\n\t\t\tdefaultEditorStyles.push( {\n\t\t\t\tcss: getLayoutStyles( {\n\t\t\t\t\tstyle: {},\n\t\t\t\t\tselector: 'body',\n\t\t\t\t\thasBlockGapSupport: false,\n\t\t\t\t\thasFallbackGapSupport: true,\n\t\t\t\t\tfallbackGapValue: '0.5em',\n\t\t\t\t} ),\n\t\t\t} );\n\t\t}\n\n\t\tconst baseStyles = hasThemeStyles\n\t\t\t? editorSettings.styles ?? []\n\t\t\t: defaultEditorStyles;\n\n\t\t// Add a space for the typewriter effect. When typing in the last block,\n\t\t// there needs to be room to scroll up.\n\t\tif (\n\t\t\t! isZoomedOutView &&\n\t\t\trenderingMode === 'post-only' &&\n\t\t\t! DESIGN_POST_TYPES.includes( postType )\n\t\t) {\n\t\t\treturn [\n\t\t\t\t...baseStyles,\n\t\t\t\t{\n\t\t\t\t\tcss: ':root :where(.editor-styles-wrapper)::after {content: \"\"; display: block; height: 40vh;}',\n\t\t\t\t},\n\t\t\t];\n\t\t}\n\n\t\treturn baseStyles;\n\t}, [\n\t\teditorSettings.defaultEditorStyles,\n\t\teditorSettings.disableLayoutStyles,\n\t\teditorSettings.styles,\n\t\thasThemeStyleSupport,\n\t\tpostType,\n\t] );\n}\n\n/**\n * @param {Object} props\n * @param {boolean} props.isLegacy True when the editor canvas is not in an iframe.\n */\nfunction MetaBoxesMain( { isLegacy } ) {\n\tconst [ isOpen, openHeight, hasAnyVisible ] = useSelect( ( select ) => {\n\t\tconst { get } = select( preferencesStore );\n\t\tconst { isMetaBoxLocationVisible } = select( editPostStore );\n\t\treturn [\n\t\t\tget( 'core/edit-post', 'metaBoxesMainIsOpen' ),\n\t\t\tget( 'core/edit-post', 'metaBoxesMainOpenHeight' ),\n\t\t\tisMetaBoxLocationVisible( 'normal' ) ||\n\t\t\t\tisMetaBoxLocationVisible( 'advanced' ) ||\n\t\t\t\tisMetaBoxLocationVisible( 'side' ),\n\t\t];\n\t}, [] );\n\tconst { set: setPreference } = useDispatch( preferencesStore );\n\tconst metaBoxesMainRef = useRef();\n\tconst isShort = useMediaQuery( '(max-height: 549px)' );\n\n\tconst [ { min, max }, setHeightConstraints ] = useState( () => ( {} ) );\n\t// Keeps the resizable area’s size constraints updated taking into account\n\t// editor notices. The constraints are also used to derive the value for the\n\t// aria-valuenow attribute on the seperator.\n\tconst effectSizeConstraints = useRefEffect( ( node ) => {\n\t\tconst container = node.closest(\n\t\t\t'.interface-interface-skeleton__content'\n\t\t);\n\t\tconst noticeLists = container.querySelectorAll(\n\t\t\t':scope > .components-notice-list'\n\t\t);\n\t\tconst resizeHandle = container.querySelector(\n\t\t\t'.edit-post-meta-boxes-main__presenter'\n\t\t);\n\t\tconst deriveConstraints = () => {\n\t\t\tconst fullHeight = container.offsetHeight;\n\t\t\tlet nextMax = fullHeight;\n\t\t\tfor ( const element of noticeLists ) {\n\t\t\t\tnextMax -= element.offsetHeight;\n\t\t\t}\n\t\t\tconst nextMin = resizeHandle.offsetHeight;\n\t\t\tsetHeightConstraints( { min: nextMin, max: nextMax } );\n\t\t};\n\t\tconst observer = new window.ResizeObserver( deriveConstraints );\n\t\tobserver.observe( container );\n\t\tfor ( const element of noticeLists ) {\n\t\t\tobserver.observe( element );\n\t\t}\n\t\treturn () => observer.disconnect();\n\t}, [] );\n\n\tconst separatorRef = useRef();\n\tconst separatorHelpId = useId();\n\n\tconst [ isUntouched, setIsUntouched ] = useState( true );\n\tconst applyHeight = ( candidateHeight, isPersistent, isInstant ) => {\n\t\tconst nextHeight = Math.min( max, Math.max( min, candidateHeight ) );\n\t\tif ( isPersistent ) {\n\t\t\tsetPreference(\n\t\t\t\t'core/edit-post',\n\t\t\t\t'metaBoxesMainOpenHeight',\n\t\t\t\tnextHeight\n\t\t\t);\n\t\t} else {\n\t\t\tseparatorRef.current.ariaValueNow = getAriaValueNow( nextHeight );\n\t\t}\n\t\tif ( isInstant ) {\n\t\t\tmetaBoxesMainRef.current.updateSize( {\n\t\t\t\theight: nextHeight,\n\t\t\t\t// Oddly, when the event that triggered this was not from the mouse (e.g. keydown),\n\t\t\t\t// if `width` is left unspecified a subsequent drag gesture applies a fixed\n\t\t\t\t// width and the pane fails to widen/narrow with parent width changes from\n\t\t\t\t// sidebars opening/closing or window resizes.\n\t\t\t\twidth: 'auto',\n\t\t\t} );\n\t\t}\n\t};\n\n\tif ( ! hasAnyVisible ) {\n\t\treturn;\n\t}\n\n\tconst contents = (\n\t\t<div\n\t\t\tclassName={ clsx(\n\t\t\t\t// The class name 'edit-post-layout__metaboxes' is retained because some plugins use it.\n\t\t\t\t'edit-post-layout__metaboxes',\n\t\t\t\t! isLegacy && 'edit-post-meta-boxes-main__liner'\n\t\t\t) }\n\t\t\thidden={ ! isLegacy && isShort && ! isOpen }\n\t\t>\n\t\t\t<MetaBoxes location=\"normal\" />\n\t\t\t<MetaBoxes location=\"advanced\" />\n\t\t</div>\n\t);\n\n\tif ( isLegacy ) {\n\t\treturn contents;\n\t}\n\n\tconst isAutoHeight = openHeight === undefined;\n\tlet usedMax = '50%'; // Approximation before max has a value.\n\tif ( max !== undefined ) {\n\t\t// Halves the available max height until a user height is set.\n\t\tusedMax = isAutoHeight && isUntouched ? max / 2 : max;\n\t}\n\n\tconst getAriaValueNow = ( height ) =>\n\t\tMath.round( ( ( height - min ) / ( max - min ) ) * 100 );\n\tconst usedAriaValueNow =\n\t\tmax === undefined || isAutoHeight ? 50 : getAriaValueNow( openHeight );\n\n\tconst toggle = () =>\n\t\tsetPreference( 'core/edit-post', 'metaBoxesMainIsOpen', ! isOpen );\n\n\t// TODO: Support more/all keyboard interactions from the window splitter pattern:\n\t// https://www.w3.org/WAI/ARIA/apg/patterns/windowsplitter/\n\tconst onSeparatorKeyDown = ( event ) => {\n\t\tconst delta = { ArrowUp: 20, ArrowDown: -20 }[ event.key ];\n\t\tif ( delta ) {\n\t\t\tconst pane = metaBoxesMainRef.current.resizable;\n\t\t\tconst fromHeight = isAutoHeight ? pane.offsetHeight : openHeight;\n\t\t\tconst nextHeight = delta + fromHeight;\n\t\t\tapplyHeight( nextHeight, true, true );\n\t\t\tevent.preventDefault();\n\t\t}\n\t};\n\tconst className = 'edit-post-meta-boxes-main';\n\tconst paneLabel = __( 'Meta Boxes' );\n\tlet Pane, paneProps;\n\tif ( isShort ) {\n\t\tPane = NavigableRegion;\n\t\tpaneProps = {\n\t\t\tclassName: clsx( className, 'is-toggle-only' ),\n\t\t};\n\t} else {\n\t\tPane = ResizableBox;\n\t\tpaneProps = /** @type {Parameters<typeof ResizableBox>[0]} */ ( {\n\t\t\tas: NavigableRegion,\n\t\t\tref: metaBoxesMainRef,\n\t\t\tclassName: clsx( className, 'is-resizable' ),\n\t\t\tdefaultSize: { height: openHeight },\n\t\t\tminHeight: min,\n\t\t\tmaxHeight: usedMax,\n\t\t\tenable: {\n\t\t\t\ttop: true,\n\t\t\t\tright: false,\n\t\t\t\tbottom: false,\n\t\t\t\tleft: false,\n\t\t\t\ttopLeft: false,\n\t\t\t\ttopRight: false,\n\t\t\t\tbottomRight: false,\n\t\t\t\tbottomLeft: false,\n\t\t\t},\n\t\t\thandleClasses: { top: 'edit-post-meta-boxes-main__presenter' },\n\t\t\thandleComponent: {\n\t\t\t\ttop: (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Tooltip text={ __( 'Drag to resize' ) }>\n\t\t\t\t\t\t\t<button // eslint-disable-line jsx-a11y/role-supports-aria-props\n\t\t\t\t\t\t\t\tref={ separatorRef }\n\t\t\t\t\t\t\t\trole=\"separator\" // eslint-disable-line jsx-a11y/no-interactive-element-to-noninteractive-role\n\t\t\t\t\t\t\t\taria-valuenow={ usedAriaValueNow }\n\t\t\t\t\t\t\t\taria-label={ __( 'Drag to resize' ) }\n\t\t\t\t\t\t\t\taria-describedby={ separatorHelpId }\n\t\t\t\t\t\t\t\tonKeyDown={ onSeparatorKeyDown }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t<VisuallyHidden id={ separatorHelpId }>\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'Use up and down arrow keys to resize the meta box panel.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t</>\n\t\t\t\t),\n\t\t\t},\n\t\t\t// Avoids hiccups while dragging over objects like iframes and ensures that\n\t\t\t// the event to end the drag is captured by the target (resize handle)\n\t\t\t// whether or not it’s under the pointer.\n\t\t\tonPointerDown: ( { pointerId, target } ) => {\n\t\t\t\ttarget.setPointerCapture( pointerId );\n\t\t\t},\n\t\t\tonResizeStart: ( event, direction, elementRef ) => {\n\t\t\t\tif ( isAutoHeight ) {\n\t\t\t\t\t// Sets the starting height to avoid visual jumps in height and\n\t\t\t\t\t// aria-valuenow being `NaN` for the first (few) resize events.\n\t\t\t\t\tapplyHeight( elementRef.offsetHeight, false, true );\n\t\t\t\t\tsetIsUntouched( false );\n\t\t\t\t}\n\t\t\t},\n\t\t\tonResize: () =>\n\t\t\t\tapplyHeight( metaBoxesMainRef.current.state.height ),\n\t\t\tonResizeStop: () =>\n\t\t\t\tapplyHeight( metaBoxesMainRef.current.state.height, true ),\n\t\t} );\n\t}\n\n\treturn (\n\t\t<Pane aria-label={ paneLabel } { ...paneProps }>\n\t\t\t{ isShort ? (\n\t\t\t\t<button\n\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\tclassName=\"edit-post-meta-boxes-main__presenter\"\n\t\t\t\t\tonClick={ toggle }\n\t\t\t\t>\n\t\t\t\t\t{ paneLabel }\n\t\t\t\t\t<Icon icon={ isOpen ? chevronUp : chevronDown } />\n\t\t\t\t</button>\n\t\t\t) : (\n\t\t\t\t<meta ref={ effectSizeConstraints } />\n\t\t\t) }\n\t\t\t{ contents }\n\t\t</Pane>\n\t);\n}\n\nfunction Layout( {\n\tpostId: initialPostId,\n\tpostType: initialPostType,\n\tsettings,\n\tinitialEdits,\n} ) {\n\tuseCommands();\n\tuseEditPostCommands();\n\tconst paddingAppenderRef = usePaddingAppender();\n\tconst shouldIframe = useShouldIframe();\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst {\n\t\tcurrentPost: { postId: currentPostId, postType: currentPostType },\n\t\tonNavigateToEntityRecord,\n\t\tonNavigateToPreviousEntityRecord,\n\t} = useNavigateToEntityRecord(\n\t\tinitialPostId,\n\t\tinitialPostType,\n\t\t'post-only'\n\t);\n\tconst isEditingTemplate = currentPostType === 'wp_template';\n\tconst {\n\t\tmode,\n\t\tisFullscreenActive,\n\t\thasActiveMetaboxes,\n\t\thasBlockSelected,\n\t\tshowIconLabels,\n\t\tisDistractionFree,\n\t\tshowMetaBoxes,\n\t\thasHistory,\n\t\tisWelcomeGuideVisible,\n\t\ttemplateId,\n\t\tisDevicePreview,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { get } = select( preferencesStore );\n\t\t\tconst { isFeatureActive, getEditedPostTemplateId } = unlock(\n\t\t\t\tselect( editPostStore )\n\t\t\t);\n\t\t\tconst { canUser, getPostType } = select( coreStore );\n\t\t\tconst { getDeviceType, getEditorMode } = select( editorStore );\n\t\t\tconst { __unstableGetEditorMode } = unlock(\n\t\t\t\tselect( blockEditorStore )\n\t\t\t);\n\n\t\t\tconst supportsTemplateMode = settings.supportsTemplateMode;\n\t\t\tconst isViewable =\n\t\t\t\tgetPostType( currentPostType )?.viewable ?? false;\n\t\t\tconst canViewTemplate = canUser( 'read', {\n\t\t\t\tkind: 'postType',\n\t\t\t\tname: 'wp_template',\n\t\t\t} );\n\n\t\t\tconst isZoomOut = __unstableGetEditorMode() === 'zoom-out';\n\n\t\t\treturn {\n\t\t\t\tmode: getEditorMode(),\n\t\t\t\tisFullscreenActive:\n\t\t\t\t\tselect( editPostStore ).isFeatureActive( 'fullscreenMode' ),\n\t\t\t\thasActiveMetaboxes: select( editPostStore ).hasMetaBoxes(),\n\t\t\t\thasBlockSelected:\n\t\t\t\t\t!! select( blockEditorStore ).getBlockSelectionStart(),\n\t\t\t\tshowIconLabels: get( 'core', 'showIconLabels' ),\n\t\t\t\tisDistractionFree: get( 'core', 'distractionFree' ),\n\t\t\t\tshowMetaBoxes:\n\t\t\t\t\t! DESIGN_POST_TYPES.includes( currentPostType ) &&\n\t\t\t\t\t! isZoomOut,\n\t\t\t\tisWelcomeGuideVisible: isFeatureActive( 'welcomeGuide' ),\n\t\t\t\ttemplateId:\n\t\t\t\t\tsupportsTemplateMode &&\n\t\t\t\t\tisViewable &&\n\t\t\t\t\tcanViewTemplate &&\n\t\t\t\t\t! isEditingTemplate\n\t\t\t\t\t\t? getEditedPostTemplateId()\n\t\t\t\t\t\t: null,\n\t\t\t\tisDevicePreview: getDeviceType() !== 'Desktop',\n\t\t\t};\n\t\t},\n\t\t[ currentPostType, isEditingTemplate, settings.supportsTemplateMode ]\n\t);\n\tuseMetaBoxInitialization( hasActiveMetaboxes );\n\n\t// Set the right context for the command palette\n\tconst commandContext = hasBlockSelected\n\t\t? 'block-selection-edit'\n\t\t: 'entity-edit';\n\tuseCommandContext( commandContext );\n\tconst editorSettings = useMemo(\n\t\t() => ( {\n\t\t\t...settings,\n\t\t\tonNavigateToEntityRecord,\n\t\t\tonNavigateToPreviousEntityRecord,\n\t\t\tdefaultRenderingMode: 'post-only',\n\t\t} ),\n\t\t[ settings, onNavigateToEntityRecord, onNavigateToPreviousEntityRecord ]\n\t);\n\tconst styles = useEditorStyles();\n\n\t// We need to add the show-icon-labels class to the body element so it is applied to modals.\n\tif ( showIconLabels ) {\n\t\tdocument.body.classList.add( 'show-icon-labels' );\n\t} else {\n\t\tdocument.body.classList.remove( 'show-icon-labels' );\n\t}\n\n\tconst navigateRegionsProps = useNavigateRegions();\n\n\tconst className = clsx( 'edit-post-layout', 'is-mode-' + mode, {\n\t\t'has-metaboxes': hasActiveMetaboxes,\n\t} );\n\n\tfunction onPluginAreaError( name ) {\n\t\tcreateErrorNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: plugin name */\n\t\t\t\t__(\n\t\t\t\t\t'The \"%s\" plugin has encountered an error and cannot be rendered.'\n\t\t\t\t),\n\t\t\t\tname\n\t\t\t)\n\t\t);\n\t}\n\n\tconst { createSuccessNotice } = useDispatch( noticesStore );\n\n\tconst onActionPerformed = useCallback(\n\t\t( actionId, items ) => {\n\t\t\tswitch ( actionId ) {\n\t\t\t\tcase 'move-to-trash':\n\t\t\t\t\t{\n\t\t\t\t\t\tdocument.location.href = addQueryArgs( 'edit.php', {\n\t\t\t\t\t\t\ttrashed: 1,\n\t\t\t\t\t\t\tpost_type: items[ 0 ].type,\n\t\t\t\t\t\t\tids: items[ 0 ].id,\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'duplicate-post':\n\t\t\t\t\t{\n\t\t\t\t\t\tconst newItem = items[ 0 ];\n\t\t\t\t\t\tconst title =\n\t\t\t\t\t\t\ttypeof newItem.title === 'string'\n\t\t\t\t\t\t\t\t? newItem.title\n\t\t\t\t\t\t\t\t: newItem.title?.rendered;\n\t\t\t\t\t\tcreateSuccessNotice(\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t// translators: %s: Title of the created post or template, e.g: \"Hello world\".\n\t\t\t\t\t\t\t\t__( '\"%s\" successfully created.' ),\n\t\t\t\t\t\t\t\tdecodeEntities( title )\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t\t\t\tid: 'duplicate-post-action',\n\t\t\t\t\t\t\t\tactions: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tlabel: __( 'Edit' ),\n\t\t\t\t\t\t\t\t\t\tonClick: () => {\n\t\t\t\t\t\t\t\t\t\t\tconst postId = newItem.id;\n\t\t\t\t\t\t\t\t\t\t\tdocument.location.href =\n\t\t\t\t\t\t\t\t\t\t\t\taddQueryArgs( 'post.php', {\n\t\t\t\t\t\t\t\t\t\t\t\t\tpost: postId,\n\t\t\t\t\t\t\t\t\t\t\t\t\taction: 'edit',\n\t\t\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t},\n\t\t[ createSuccessNotice ]\n\t);\n\n\tconst initialPost = useMemo( () => {\n\t\treturn {\n\t\t\ttype: initialPostType,\n\t\t\tid: initialPostId,\n\t\t};\n\t}, [ initialPostType, initialPostId ] );\n\n\tconst backButton =\n\t\tuseViewportMatch( 'medium' ) && isFullscreenActive ? (\n\t\t\t<BackButton initialPost={ initialPost } />\n\t\t) : null;\n\n\treturn (\n\t\t<SlotFillProvider>\n\t\t\t<ErrorBoundary>\n\t\t\t\t<CommandMenu />\n\t\t\t\t<WelcomeGuide postType={ currentPostType } />\n\t\t\t\t<div\n\t\t\t\t\tclassName={ navigateRegionsProps.className }\n\t\t\t\t\t{ ...navigateRegionsProps }\n\t\t\t\t\tref={ navigateRegionsProps.ref }\n\t\t\t\t>\n\t\t\t\t\t<Editor\n\t\t\t\t\t\tsettings={ editorSettings }\n\t\t\t\t\t\tinitialEdits={ initialEdits }\n\t\t\t\t\t\tpostType={ currentPostType }\n\t\t\t\t\t\tpostId={ currentPostId }\n\t\t\t\t\t\ttemplateId={ templateId }\n\t\t\t\t\t\tclassName={ className }\n\t\t\t\t\t\tstyles={ styles }\n\t\t\t\t\t\tforceIsDirty={ hasActiveMetaboxes }\n\t\t\t\t\t\tcontentRef={ paddingAppenderRef }\n\t\t\t\t\t\tdisableIframe={ ! shouldIframe }\n\t\t\t\t\t\t// We should auto-focus the canvas (title) on load.\n\t\t\t\t\t\t// eslint-disable-next-line jsx-a11y/no-autofocus\n\t\t\t\t\t\tautoFocus={ ! isWelcomeGuideVisible }\n\t\t\t\t\t\tonActionPerformed={ onActionPerformed }\n\t\t\t\t\t\textraSidebarPanels={\n\t\t\t\t\t\t\tshowMetaBoxes && <MetaBoxes location=\"side\" />\n\t\t\t\t\t\t}\n\t\t\t\t\t\textraContent={\n\t\t\t\t\t\t\t! isDistractionFree &&\n\t\t\t\t\t\t\tshowMetaBoxes && (\n\t\t\t\t\t\t\t\t<MetaBoxesMain\n\t\t\t\t\t\t\t\t\tisLegacy={\n\t\t\t\t\t\t\t\t\t\t! shouldIframe || isDevicePreview\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}\n\t\t\t\t\t>\n\t\t\t\t\t\t<PostLockedModal />\n\t\t\t\t\t\t<EditorInitialization />\n\t\t\t\t\t\t<FullscreenMode isActive={ isFullscreenActive } />\n\t\t\t\t\t\t<BrowserURL hasHistory={ hasHistory } />\n\t\t\t\t\t\t<UnsavedChangesWarning />\n\t\t\t\t\t\t<AutosaveMonitor />\n\t\t\t\t\t\t<LocalAutosaveMonitor />\n\t\t\t\t\t\t<EditPostKeyboardShortcuts />\n\t\t\t\t\t\t<EditorKeyboardShortcutsRegister />\n\t\t\t\t\t\t<BlockKeyboardShortcuts />\n\t\t\t\t\t\t<InitPatternModal />\n\t\t\t\t\t\t<PluginArea onError={ onPluginAreaError } />\n\t\t\t\t\t\t<PostEditorMoreMenu />\n\t\t\t\t\t\t{ backButton }\n\t\t\t\t\t\t<EditorSnackbars />\n\t\t\t\t\t</Editor>\n\t\t\t\t</div>\n\t\t\t</ErrorBoundary>\n\t\t</SlotFillProvider>\n\t);\n}\n\nexport default Layout;\n"],"mappings":"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","ignoreList":[]}
@@ -6,8 +6,6 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.default = MetaBoxes;
8
8
  var _data = require("@wordpress/data");
9
- var _element = require("@wordpress/element");
10
- var _editor = require("@wordpress/editor");
11
9
  var _metaBoxesArea = _interopRequireDefault(require("./meta-boxes-area"));
12
10
  var _metaBoxVisibility = _interopRequireDefault(require("./meta-box-visibility"));
13
11
  var _store = require("../../store");
@@ -23,38 +21,7 @@ var _jsxRuntime = require("react/jsx-runtime");
23
21
  function MetaBoxes({
24
22
  location
25
23
  }) {
26
- const registry = (0, _data.useRegistry)();
27
- const {
28
- metaBoxes,
29
- areMetaBoxesInitialized,
30
- isEditorReady
31
- } = (0, _data.useSelect)(select => {
32
- const {
33
- __unstableIsEditorReady
34
- } = select(_editor.store);
35
- const {
36
- getMetaBoxesPerLocation,
37
- areMetaBoxesInitialized: _areMetaBoxesInitialized
38
- } = select(_store.store);
39
- return {
40
- metaBoxes: getMetaBoxesPerLocation(location),
41
- areMetaBoxesInitialized: _areMetaBoxesInitialized(),
42
- isEditorReady: __unstableIsEditorReady()
43
- };
44
- }, [location]);
45
- const hasMetaBoxes = !!metaBoxes?.length;
46
-
47
- // When editor is ready, initialize postboxes (wp core script) and metabox
48
- // saving. This initializes all meta box locations, not just this specific
49
- // one.
50
- (0, _element.useEffect)(() => {
51
- if (isEditorReady && hasMetaBoxes && !areMetaBoxesInitialized) {
52
- registry.dispatch(_store.store).initializeMetaBoxes();
53
- }
54
- }, [isEditorReady, hasMetaBoxes, areMetaBoxesInitialized]);
55
- if (!areMetaBoxesInitialized) {
56
- return null;
57
- }
24
+ const metaBoxes = (0, _data.useSelect)(select => select(_store.store).getMetaBoxesPerLocation(location), [location]);
58
25
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
59
26
  children: [(metaBoxes !== null && metaBoxes !== void 0 ? metaBoxes : []).map(({
60
27
  id
@@ -1 +1 @@
1
- {"version":3,"names":["_data","require","_element","_editor","_metaBoxesArea","_interopRequireDefault","_metaBoxVisibility","_store","_jsxRuntime","MetaBoxes","location","registry","useRegistry","metaBoxes","areMetaBoxesInitialized","isEditorReady","useSelect","select","__unstableIsEditorReady","editorStore","getMetaBoxesPerLocation","_areMetaBoxesInitialized","editPostStore","hasMetaBoxes","length","useEffect","dispatch","initializeMetaBoxes","jsxs","Fragment","children","map","id","jsx","default"],"sources":["@wordpress/edit-post/src/components/meta-boxes/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useRegistry } from '@wordpress/data';\nimport { useEffect } from '@wordpress/element';\nimport { store as editorStore } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport MetaBoxesArea from './meta-boxes-area';\nimport MetaBoxVisibility from './meta-box-visibility';\nimport { store as editPostStore } from '../../store';\n\nexport default function MetaBoxes( { location } ) {\n\tconst registry = useRegistry();\n\tconst { metaBoxes, areMetaBoxesInitialized, isEditorReady } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { __unstableIsEditorReady } = select( editorStore );\n\t\t\tconst {\n\t\t\t\tgetMetaBoxesPerLocation,\n\t\t\t\tareMetaBoxesInitialized: _areMetaBoxesInitialized,\n\t\t\t} = select( editPostStore );\n\t\t\treturn {\n\t\t\t\tmetaBoxes: getMetaBoxesPerLocation( location ),\n\t\t\t\tareMetaBoxesInitialized: _areMetaBoxesInitialized(),\n\t\t\t\tisEditorReady: __unstableIsEditorReady(),\n\t\t\t};\n\t\t},\n\t\t[ location ]\n\t);\n\n\tconst hasMetaBoxes = !! metaBoxes?.length;\n\n\t// When editor is ready, initialize postboxes (wp core script) and metabox\n\t// saving. This initializes all meta box locations, not just this specific\n\t// one.\n\tuseEffect( () => {\n\t\tif ( isEditorReady && hasMetaBoxes && ! areMetaBoxesInitialized ) {\n\t\t\tregistry.dispatch( editPostStore ).initializeMetaBoxes();\n\t\t}\n\t}, [ isEditorReady, hasMetaBoxes, areMetaBoxesInitialized ] );\n\n\tif ( ! areMetaBoxesInitialized ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ ( metaBoxes ?? [] ).map( ( { id } ) => (\n\t\t\t\t<MetaBoxVisibility key={ id } id={ id } />\n\t\t\t) ) }\n\t\t\t<MetaBoxesArea location={ location } />\n\t\t</>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AAKA,IAAAG,cAAA,GAAAC,sBAAA,CAAAJ,OAAA;AACA,IAAAK,kBAAA,GAAAD,sBAAA,CAAAJ,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AAAqD,IAAAO,WAAA,GAAAP,OAAA;AAZrD;AACA;AACA;;AAKA;AACA;AACA;;AAKe,SAASQ,SAASA,CAAE;EAAEC;AAAS,CAAC,EAAG;EACjD,MAAMC,QAAQ,GAAG,IAAAC,iBAAW,EAAC,CAAC;EAC9B,MAAM;IAAEC,SAAS;IAAEC,uBAAuB;IAAEC;EAAc,CAAC,GAAG,IAAAC,eAAS,EACpEC,MAAM,IAAM;IACb,MAAM;MAAEC;IAAwB,CAAC,GAAGD,MAAM,CAAEE,aAAY,CAAC;IACzD,MAAM;MACLC,uBAAuB;MACvBN,uBAAuB,EAAEO;IAC1B,CAAC,GAAGJ,MAAM,CAAEK,YAAc,CAAC;IAC3B,OAAO;MACNT,SAAS,EAAEO,uBAAuB,CAAEV,QAAS,CAAC;MAC9CI,uBAAuB,EAAEO,wBAAwB,CAAC,CAAC;MACnDN,aAAa,EAAEG,uBAAuB,CAAC;IACxC,CAAC;EACF,CAAC,EACD,CAAER,QAAQ,CACX,CAAC;EAED,MAAMa,YAAY,GAAG,CAAC,CAAEV,SAAS,EAAEW,MAAM;;EAEzC;EACA;EACA;EACA,IAAAC,kBAAS,EAAE,MAAM;IAChB,IAAKV,aAAa,IAAIQ,YAAY,IAAI,CAAET,uBAAuB,EAAG;MACjEH,QAAQ,CAACe,QAAQ,CAAEJ,YAAc,CAAC,CAACK,mBAAmB,CAAC,CAAC;IACzD;EACD,CAAC,EAAE,CAAEZ,aAAa,EAAEQ,YAAY,EAAET,uBAAuB,CAAG,CAAC;EAE7D,IAAK,CAAEA,uBAAuB,EAAG;IAChC,OAAO,IAAI;EACZ;EAEA,oBACC,IAAAN,WAAA,CAAAoB,IAAA,EAAApB,WAAA,CAAAqB,QAAA;IAAAC,QAAA,GACG,CAAEjB,SAAS,aAATA,SAAS,cAATA,SAAS,GAAI,EAAE,EAAGkB,GAAG,CAAE,CAAE;MAAEC;IAAG,CAAC,kBAClC,IAAAxB,WAAA,CAAAyB,GAAA,EAAC3B,kBAAA,CAAA4B,OAAiB;MAAYF,EAAE,EAAGA;IAAI,GAAdA,EAAgB,CACxC,CAAC,eACH,IAAAxB,WAAA,CAAAyB,GAAA,EAAC7B,cAAA,CAAA8B,OAAa;MAACxB,QAAQ,EAAGA;IAAU,CAAE,CAAC;EAAA,CACtC,CAAC;AAEL","ignoreList":[]}
1
+ {"version":3,"names":["_data","require","_metaBoxesArea","_interopRequireDefault","_metaBoxVisibility","_store","_jsxRuntime","MetaBoxes","location","metaBoxes","useSelect","select","editPostStore","getMetaBoxesPerLocation","jsxs","Fragment","children","map","id","jsx","default"],"sources":["@wordpress/edit-post/src/components/meta-boxes/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport MetaBoxesArea from './meta-boxes-area';\nimport MetaBoxVisibility from './meta-box-visibility';\nimport { store as editPostStore } from '../../store';\n\nexport default function MetaBoxes( { location } ) {\n\tconst metaBoxes = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editPostStore ).getMetaBoxesPerLocation( location ),\n\t\t[ location ]\n\t);\n\treturn (\n\t\t<>\n\t\t\t{ ( metaBoxes ?? [] ).map( ( { id } ) => (\n\t\t\t\t<MetaBoxVisibility key={ id } id={ id } />\n\t\t\t) ) }\n\t\t\t<MetaBoxesArea location={ location } />\n\t\t</>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AAKA,IAAAC,cAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,kBAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,MAAA,GAAAJ,OAAA;AAAqD,IAAAK,WAAA,GAAAL,OAAA;AAVrD;AACA;AACA;;AAGA;AACA;AACA;;AAKe,SAASM,SAASA,CAAE;EAAEC;AAAS,CAAC,EAAG;EACjD,MAAMC,SAAS,GAAG,IAAAC,eAAS,EACxBC,MAAM,IACPA,MAAM,CAAEC,YAAc,CAAC,CAACC,uBAAuB,CAAEL,QAAS,CAAC,EAC5D,CAAEA,QAAQ,CACX,CAAC;EACD,oBACC,IAAAF,WAAA,CAAAQ,IAAA,EAAAR,WAAA,CAAAS,QAAA;IAAAC,QAAA,GACG,CAAEP,SAAS,aAATA,SAAS,cAATA,SAAS,GAAI,EAAE,EAAGQ,GAAG,CAAE,CAAE;MAAEC;IAAG,CAAC,kBAClC,IAAAZ,WAAA,CAAAa,GAAA,EAACf,kBAAA,CAAAgB,OAAiB;MAAYF,EAAE,EAAGA;IAAI,GAAdA,EAAgB,CACxC,CAAC,eACH,IAAAZ,WAAA,CAAAa,GAAA,EAACjB,cAAA,CAAAkB,OAAa;MAACZ,QAAQ,EAAGA;IAAU,CAAE,CAAC;EAAA,CACtC,CAAC;AAEL","ignoreList":[]}
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useMetaBoxInitialization = void 0;
7
+ var _data = require("@wordpress/data");
8
+ var _editor = require("@wordpress/editor");
9
+ var _element = require("@wordpress/element");
10
+ var _store = require("../../store");
11
+ /**
12
+ * WordPress dependencies
13
+ */
14
+
15
+ /**
16
+ * Internal dependencies
17
+ */
18
+
19
+ /**
20
+ * Initializes WordPress `postboxes` script and the logic for saving meta boxes.
21
+ *
22
+ * @param { boolean } enabled
23
+ */
24
+ const useMetaBoxInitialization = enabled => {
25
+ const isEnabledAndEditorReady = (0, _data.useSelect)(select => enabled && select(_editor.store).__unstableIsEditorReady(), [enabled]);
26
+ const {
27
+ initializeMetaBoxes
28
+ } = (0, _data.useDispatch)(_store.store);
29
+ // The effect has to rerun when the editor is ready because initializeMetaBoxes
30
+ // will noop until then.
31
+ (0, _element.useEffect)(() => {
32
+ if (isEnabledAndEditorReady) {
33
+ initializeMetaBoxes();
34
+ }
35
+ }, [isEnabledAndEditorReady, initializeMetaBoxes]);
36
+ };
37
+ exports.useMetaBoxInitialization = useMetaBoxInitialization;
38
+ //# sourceMappingURL=use-meta-box-initialization.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_data","require","_editor","_element","_store","useMetaBoxInitialization","enabled","isEnabledAndEditorReady","useSelect","select","editorStore","__unstableIsEditorReady","initializeMetaBoxes","useDispatch","editPostStore","useEffect","exports"],"sources":["@wordpress/edit-post/src/components/meta-boxes/use-meta-box-initialization.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { store as editorStore } from '@wordpress/editor';\nimport { useEffect } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../store';\n\n/**\n * Initializes WordPress `postboxes` script and the logic for saving meta boxes.\n *\n * @param { boolean } enabled\n */\nexport const useMetaBoxInitialization = ( enabled ) => {\n\tconst isEnabledAndEditorReady = useSelect(\n\t\t( select ) =>\n\t\t\tenabled && select( editorStore ).__unstableIsEditorReady(),\n\t\t[ enabled ]\n\t);\n\tconst { initializeMetaBoxes } = useDispatch( editPostStore );\n\t// The effect has to rerun when the editor is ready because initializeMetaBoxes\n\t// will noop until then.\n\tuseEffect( () => {\n\t\tif ( isEnabledAndEditorReady ) {\n\t\t\tinitializeMetaBoxes();\n\t\t}\n\t}, [ isEnabledAndEditorReady, initializeMetaBoxes ] );\n};\n"],"mappings":";;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAKA,IAAAG,MAAA,GAAAH,OAAA;AAVA;AACA;AACA;;AAKA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;AACO,MAAMI,wBAAwB,GAAKC,OAAO,IAAM;EACtD,MAAMC,uBAAuB,GAAG,IAAAC,eAAS,EACtCC,MAAM,IACPH,OAAO,IAAIG,MAAM,CAAEC,aAAY,CAAC,CAACC,uBAAuB,CAAC,CAAC,EAC3D,CAAEL,OAAO,CACV,CAAC;EACD,MAAM;IAAEM;EAAoB,CAAC,GAAG,IAAAC,iBAAW,EAAEC,YAAc,CAAC;EAC5D;EACA;EACA,IAAAC,kBAAS,EAAE,MAAM;IAChB,IAAKR,uBAAuB,EAAG;MAC9BK,mBAAmB,CAAC,CAAC;IACtB;EACD,CAAC,EAAE,CAAEL,uBAAuB,EAAEK,mBAAmB,CAAG,CAAC;AACtD,CAAC;AAACI,OAAA,CAAAX,wBAAA,GAAAA,wBAAA","ignoreList":[]}
@@ -41,6 +41,7 @@ import useEditPostCommands from '../../commands/use-commands';
41
41
  import { usePaddingAppender } from './use-padding-appender';
42
42
  import { useShouldIframe } from './use-should-iframe';
43
43
  import useNavigateToEntityRecord from '../../hooks/use-navigate-to-entity-record';
44
+ import { useMetaBoxInitialization } from '../meta-boxes/use-meta-box-initialization';
44
45
  import { jsx as _jsx } from "react/jsx-runtime";
45
46
  import { jsxs as _jsxs } from "react/jsx-runtime";
46
47
  import { Fragment as _Fragment } from "react/jsx-runtime";
@@ -356,7 +357,8 @@ function Layout({
356
357
  showMetaBoxes,
357
358
  hasHistory,
358
359
  isWelcomeGuideVisible,
359
- templateId
360
+ templateId,
361
+ isDevicePreview
360
362
  } = useSelect(select => {
361
363
  var _getPostType$viewable;
362
364
  const {
@@ -370,6 +372,10 @@ function Layout({
370
372
  canUser,
371
373
  getPostType
372
374
  } = select(coreStore);
375
+ const {
376
+ getDeviceType,
377
+ getEditorMode
378
+ } = select(editorStore);
373
379
  const {
374
380
  __unstableGetEditorMode
375
381
  } = unlock(select(blockEditorStore));
@@ -381,17 +387,19 @@ function Layout({
381
387
  });
382
388
  const isZoomOut = __unstableGetEditorMode() === 'zoom-out';
383
389
  return {
384
- mode: select(editorStore).getEditorMode(),
390
+ mode: getEditorMode(),
385
391
  isFullscreenActive: select(editPostStore).isFeatureActive('fullscreenMode'),
386
392
  hasActiveMetaboxes: select(editPostStore).hasMetaBoxes(),
387
393
  hasBlockSelected: !!select(blockEditorStore).getBlockSelectionStart(),
388
394
  showIconLabels: get('core', 'showIconLabels'),
389
395
  isDistractionFree: get('core', 'distractionFree'),
390
- showMetaBoxes: !DESIGN_POST_TYPES.includes(currentPostType) && select(editorStore).getRenderingMode() === 'post-only' && !isZoomOut,
396
+ showMetaBoxes: !DESIGN_POST_TYPES.includes(currentPostType) && !isZoomOut,
391
397
  isWelcomeGuideVisible: isFeatureActive('welcomeGuide'),
392
- templateId: supportsTemplateMode && isViewable && canViewTemplate && !isEditingTemplate ? getEditedPostTemplateId() : null
398
+ templateId: supportsTemplateMode && isViewable && canViewTemplate && !isEditingTemplate ? getEditedPostTemplateId() : null,
399
+ isDevicePreview: getDeviceType() !== 'Desktop'
393
400
  };
394
401
  }, [currentPostType, isEditingTemplate, settings.supportsTemplateMode]);
402
+ useMetaBoxInitialization(hasActiveMetaboxes);
395
403
 
396
404
  // Set the right context for the command palette
397
405
  const commandContext = hasBlockSelected ? 'block-selection-edit' : 'entity-edit';
@@ -493,7 +501,7 @@ function Layout({
493
501
  location: "side"
494
502
  }),
495
503
  extraContent: !isDistractionFree && showMetaBoxes && /*#__PURE__*/_jsx(MetaBoxesMain, {
496
- isLegacy: !shouldIframe
504
+ isLegacy: !shouldIframe || isDevicePreview
497
505
  }),
498
506
  children: [/*#__PURE__*/_jsx(PostLockedModal, {}), /*#__PURE__*/_jsx(EditorInitialization, {}), /*#__PURE__*/_jsx(FullscreenMode, {
499
507
  isActive: isFullscreenActive
@@ -1 +1 @@
1
- {"version":3,"names":["clsx","AutosaveMonitor","LocalAutosaveMonitor","UnsavedChangesWarning","EditorKeyboardShortcutsRegister","EditorSnackbars","ErrorBoundary","PostLockedModal","store","editorStore","privateApis","editorPrivateApis","useSelect","useDispatch","blockEditorPrivateApis","blockEditorStore","PluginArea","__","sprintf","useCallback","useMemo","useId","useRef","useState","chevronDown","chevronUp","noticesStore","preferencesStore","CommandMenu","commandsPrivateApis","coreCommandsPrivateApis","blockLibraryPrivateApis","addQueryArgs","decodeEntities","coreStore","Icon","ResizableBox","SlotFillProvider","Tooltip","VisuallyHidden","__unstableUseNavigateRegions","useNavigateRegions","useMediaQuery","useRefEffect","useViewportMatch","BackButton","EditorInitialization","EditPostKeyboardShortcuts","InitPatternModal","BrowserURL","MetaBoxes","PostEditorMoreMenu","WelcomeGuide","editPostStore","unlock","useEditPostCommands","usePaddingAppender","useShouldIframe","useNavigateToEntityRecord","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","getLayoutStyles","useCommands","useCommandContext","Editor","FullscreenMode","NavigableRegion","BlockKeyboardShortcuts","DESIGN_POST_TYPES","useEditorStyles","hasThemeStyleSupport","editorSettings","isZoomedOutView","renderingMode","postType","select","__unstableGetEditorMode","getCurrentPostType","getRenderingMode","_postType","isFeatureActive","getEditorSettings","_editorSettings$style","_editorSettings$defau","_editorSettings$style2","_editorSettings$style3","presetStyles","styles","filter","style","__unstableType","defaultEditorStyles","hasThemeStyles","length","disableLayoutStyles","push","css","selector","hasBlockGapSupport","hasFallbackGapSupport","fallbackGapValue","baseStyles","includes","MetaBoxesMain","isLegacy","isOpen","openHeight","hasAnyVisible","get","isMetaBoxLocationVisible","set","setPreference","metaBoxesMainRef","isShort","min","max","setHeightConstraints","effectSizeConstraints","node","container","closest","noticeLists","querySelectorAll","resizeHandle","querySelector","deriveConstraints","fullHeight","offsetHeight","nextMax","element","nextMin","observer","window","ResizeObserver","observe","disconnect","separatorRef","separatorHelpId","isUntouched","setIsUntouched","applyHeight","candidateHeight","isPersistent","isInstant","nextHeight","Math","current","ariaValueNow","getAriaValueNow","updateSize","height","width","contents","className","hidden","children","location","isAutoHeight","undefined","usedMax","round","usedAriaValueNow","toggle","onSeparatorKeyDown","event","delta","ArrowUp","ArrowDown","key","pane","resizable","fromHeight","preventDefault","paneLabel","Pane","paneProps","as","ref","defaultSize","minHeight","maxHeight","enable","top","right","bottom","left","topLeft","topRight","bottomRight","bottomLeft","handleClasses","handleComponent","text","role","onKeyDown","id","onPointerDown","pointerId","target","setPointerCapture","onResizeStart","direction","elementRef","onResize","state","onResizeStop","onClick","icon","Layout","postId","initialPostId","initialPostType","settings","initialEdits","paddingAppenderRef","shouldIframe","createErrorNotice","currentPost","currentPostId","currentPostType","onNavigateToEntityRecord","onNavigateToPreviousEntityRecord","isEditingTemplate","mode","isFullscreenActive","hasActiveMetaboxes","hasBlockSelected","showIconLabels","isDistractionFree","showMetaBoxes","hasHistory","isWelcomeGuideVisible","templateId","_getPostType$viewable","getEditedPostTemplateId","canUser","getPostType","supportsTemplateMode","isViewable","viewable","canViewTemplate","kind","name","isZoomOut","getEditorMode","hasMetaBoxes","getBlockSelectionStart","commandContext","defaultRenderingMode","document","body","classList","add","remove","navigateRegionsProps","onPluginAreaError","createSuccessNotice","onActionPerformed","actionId","items","href","trashed","post_type","type","ids","newItem","title","rendered","actions","label","post","action","initialPost","backButton","forceIsDirty","contentRef","disableIframe","autoFocus","extraSidebarPanels","extraContent","isActive","onError"],"sources":["@wordpress/edit-post/src/components/layout/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAutosaveMonitor,\n\tLocalAutosaveMonitor,\n\tUnsavedChangesWarning,\n\tEditorKeyboardShortcutsRegister,\n\tEditorSnackbars,\n\tErrorBoundary,\n\tPostLockedModal,\n\tstore as editorStore,\n\tprivateApis as editorPrivateApis,\n} from '@wordpress/editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { PluginArea } from '@wordpress/plugins';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tuseCallback,\n\tuseMemo,\n\tuseId,\n\tuseRef,\n\tuseState,\n} from '@wordpress/element';\nimport { chevronDown, chevronUp } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport {\n\tCommandMenu,\n\tprivateApis as commandsPrivateApis,\n} from '@wordpress/commands';\nimport { privateApis as coreCommandsPrivateApis } from '@wordpress/core-commands';\nimport { privateApis as blockLibraryPrivateApis } from '@wordpress/block-library';\nimport { addQueryArgs } from '@wordpress/url';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tIcon,\n\tResizableBox,\n\tSlotFillProvider,\n\tTooltip,\n\tVisuallyHidden,\n\t__unstableUseNavigateRegions as useNavigateRegions,\n} from '@wordpress/components';\nimport {\n\tuseMediaQuery,\n\tuseRefEffect,\n\tuseViewportMatch,\n} from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport BackButton from '../back-button';\nimport EditorInitialization from '../editor-initialization';\nimport EditPostKeyboardShortcuts from '../keyboard-shortcuts';\nimport InitPatternModal from '../init-pattern-modal';\nimport BrowserURL from '../browser-url';\nimport MetaBoxes from '../meta-boxes';\nimport PostEditorMoreMenu from '../more-menu';\nimport WelcomeGuide from '../welcome-guide';\nimport { store as editPostStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\nimport useEditPostCommands from '../../commands/use-commands';\nimport { usePaddingAppender } from './use-padding-appender';\nimport { useShouldIframe } from './use-should-iframe';\nimport useNavigateToEntityRecord from '../../hooks/use-navigate-to-entity-record';\n\nconst { getLayoutStyles } = unlock( blockEditorPrivateApis );\nconst { useCommands } = unlock( coreCommandsPrivateApis );\nconst { useCommandContext } = unlock( commandsPrivateApis );\nconst { Editor, FullscreenMode, NavigableRegion } = unlock( editorPrivateApis );\nconst { BlockKeyboardShortcuts } = unlock( blockLibraryPrivateApis );\nconst DESIGN_POST_TYPES = [\n\t'wp_template',\n\t'wp_template_part',\n\t'wp_block',\n\t'wp_navigation',\n];\n\nfunction useEditorStyles() {\n\tconst {\n\t\thasThemeStyleSupport,\n\t\teditorSettings,\n\t\tisZoomedOutView,\n\t\trenderingMode,\n\t\tpostType,\n\t} = useSelect( ( select ) => {\n\t\tconst { __unstableGetEditorMode } = select( blockEditorStore );\n\t\tconst { getCurrentPostType, getRenderingMode } = select( editorStore );\n\t\tconst _postType = getCurrentPostType();\n\t\treturn {\n\t\t\thasThemeStyleSupport:\n\t\t\t\tselect( editPostStore ).isFeatureActive( 'themeStyles' ),\n\t\t\teditorSettings: select( editorStore ).getEditorSettings(),\n\t\t\tisZoomedOutView: __unstableGetEditorMode() === 'zoom-out',\n\t\t\trenderingMode: getRenderingMode(),\n\t\t\tpostType: _postType,\n\t\t};\n\t}, [] );\n\n\t// Compute the default styles.\n\treturn useMemo( () => {\n\t\tconst presetStyles =\n\t\t\teditorSettings.styles?.filter(\n\t\t\t\t( style ) =>\n\t\t\t\t\tstyle.__unstableType && style.__unstableType !== 'theme'\n\t\t\t) ?? [];\n\n\t\tconst defaultEditorStyles = [\n\t\t\t...( editorSettings?.defaultEditorStyles ?? [] ),\n\t\t\t...presetStyles,\n\t\t];\n\n\t\t// Has theme styles if the theme supports them and if some styles were not preset styles (in which case they're theme styles).\n\t\tconst hasThemeStyles =\n\t\t\thasThemeStyleSupport &&\n\t\t\tpresetStyles.length !== ( editorSettings.styles?.length ?? 0 );\n\n\t\t// If theme styles are not present or displayed, ensure that\n\t\t// base layout styles are still present in the editor.\n\t\tif ( ! editorSettings.disableLayoutStyles && ! hasThemeStyles ) {\n\t\t\tdefaultEditorStyles.push( {\n\t\t\t\tcss: getLayoutStyles( {\n\t\t\t\t\tstyle: {},\n\t\t\t\t\tselector: 'body',\n\t\t\t\t\thasBlockGapSupport: false,\n\t\t\t\t\thasFallbackGapSupport: true,\n\t\t\t\t\tfallbackGapValue: '0.5em',\n\t\t\t\t} ),\n\t\t\t} );\n\t\t}\n\n\t\tconst baseStyles = hasThemeStyles\n\t\t\t? editorSettings.styles ?? []\n\t\t\t: defaultEditorStyles;\n\n\t\t// Add a space for the typewriter effect. When typing in the last block,\n\t\t// there needs to be room to scroll up.\n\t\tif (\n\t\t\t! isZoomedOutView &&\n\t\t\trenderingMode === 'post-only' &&\n\t\t\t! DESIGN_POST_TYPES.includes( postType )\n\t\t) {\n\t\t\treturn [\n\t\t\t\t...baseStyles,\n\t\t\t\t{\n\t\t\t\t\tcss: ':root :where(.editor-styles-wrapper)::after {content: \"\"; display: block; height: 40vh;}',\n\t\t\t\t},\n\t\t\t];\n\t\t}\n\n\t\treturn baseStyles;\n\t}, [\n\t\teditorSettings.defaultEditorStyles,\n\t\teditorSettings.disableLayoutStyles,\n\t\teditorSettings.styles,\n\t\thasThemeStyleSupport,\n\t\tpostType,\n\t] );\n}\n\n/**\n * @param {Object} props\n * @param {boolean} props.isLegacy True when the editor canvas is not in an iframe.\n */\nfunction MetaBoxesMain( { isLegacy } ) {\n\tconst [ isOpen, openHeight, hasAnyVisible ] = useSelect( ( select ) => {\n\t\tconst { get } = select( preferencesStore );\n\t\tconst { isMetaBoxLocationVisible } = select( editPostStore );\n\t\treturn [\n\t\t\tget( 'core/edit-post', 'metaBoxesMainIsOpen' ),\n\t\t\tget( 'core/edit-post', 'metaBoxesMainOpenHeight' ),\n\t\t\tisMetaBoxLocationVisible( 'normal' ) ||\n\t\t\t\tisMetaBoxLocationVisible( 'advanced' ) ||\n\t\t\t\tisMetaBoxLocationVisible( 'side' ),\n\t\t];\n\t}, [] );\n\tconst { set: setPreference } = useDispatch( preferencesStore );\n\tconst metaBoxesMainRef = useRef();\n\tconst isShort = useMediaQuery( '(max-height: 549px)' );\n\n\tconst [ { min, max }, setHeightConstraints ] = useState( () => ( {} ) );\n\t// Keeps the resizable area’s size constraints updated taking into account\n\t// editor notices. The constraints are also used to derive the value for the\n\t// aria-valuenow attribute on the seperator.\n\tconst effectSizeConstraints = useRefEffect( ( node ) => {\n\t\tconst container = node.closest(\n\t\t\t'.interface-interface-skeleton__content'\n\t\t);\n\t\tconst noticeLists = container.querySelectorAll(\n\t\t\t':scope > .components-notice-list'\n\t\t);\n\t\tconst resizeHandle = container.querySelector(\n\t\t\t'.edit-post-meta-boxes-main__presenter'\n\t\t);\n\t\tconst deriveConstraints = () => {\n\t\t\tconst fullHeight = container.offsetHeight;\n\t\t\tlet nextMax = fullHeight;\n\t\t\tfor ( const element of noticeLists ) {\n\t\t\t\tnextMax -= element.offsetHeight;\n\t\t\t}\n\t\t\tconst nextMin = resizeHandle.offsetHeight;\n\t\t\tsetHeightConstraints( { min: nextMin, max: nextMax } );\n\t\t};\n\t\tconst observer = new window.ResizeObserver( deriveConstraints );\n\t\tobserver.observe( container );\n\t\tfor ( const element of noticeLists ) {\n\t\t\tobserver.observe( element );\n\t\t}\n\t\treturn () => observer.disconnect();\n\t}, [] );\n\n\tconst separatorRef = useRef();\n\tconst separatorHelpId = useId();\n\n\tconst [ isUntouched, setIsUntouched ] = useState( true );\n\tconst applyHeight = ( candidateHeight, isPersistent, isInstant ) => {\n\t\tconst nextHeight = Math.min( max, Math.max( min, candidateHeight ) );\n\t\tif ( isPersistent ) {\n\t\t\tsetPreference(\n\t\t\t\t'core/edit-post',\n\t\t\t\t'metaBoxesMainOpenHeight',\n\t\t\t\tnextHeight\n\t\t\t);\n\t\t} else {\n\t\t\tseparatorRef.current.ariaValueNow = getAriaValueNow( nextHeight );\n\t\t}\n\t\tif ( isInstant ) {\n\t\t\tmetaBoxesMainRef.current.updateSize( {\n\t\t\t\theight: nextHeight,\n\t\t\t\t// Oddly, when the event that triggered this was not from the mouse (e.g. keydown),\n\t\t\t\t// if `width` is left unspecified a subsequent drag gesture applies a fixed\n\t\t\t\t// width and the pane fails to widen/narrow with parent width changes from\n\t\t\t\t// sidebars opening/closing or window resizes.\n\t\t\t\twidth: 'auto',\n\t\t\t} );\n\t\t}\n\t};\n\n\tif ( ! hasAnyVisible ) {\n\t\treturn;\n\t}\n\n\tconst contents = (\n\t\t<div\n\t\t\tclassName={ clsx(\n\t\t\t\t// The class name 'edit-post-layout__metaboxes' is retained because some plugins use it.\n\t\t\t\t'edit-post-layout__metaboxes',\n\t\t\t\t! isLegacy && 'edit-post-meta-boxes-main__liner'\n\t\t\t) }\n\t\t\thidden={ ! isLegacy && isShort && ! isOpen }\n\t\t>\n\t\t\t<MetaBoxes location=\"normal\" />\n\t\t\t<MetaBoxes location=\"advanced\" />\n\t\t</div>\n\t);\n\n\tif ( isLegacy ) {\n\t\treturn contents;\n\t}\n\n\tconst isAutoHeight = openHeight === undefined;\n\tlet usedMax = '50%'; // Approximation before max has a value.\n\tif ( max !== undefined ) {\n\t\t// Halves the available max height until a user height is set.\n\t\tusedMax = isAutoHeight && isUntouched ? max / 2 : max;\n\t}\n\n\tconst getAriaValueNow = ( height ) =>\n\t\tMath.round( ( ( height - min ) / ( max - min ) ) * 100 );\n\tconst usedAriaValueNow =\n\t\tmax === undefined || isAutoHeight ? 50 : getAriaValueNow( openHeight );\n\n\tconst toggle = () =>\n\t\tsetPreference( 'core/edit-post', 'metaBoxesMainIsOpen', ! isOpen );\n\n\t// TODO: Support more/all keyboard interactions from the window splitter pattern:\n\t// https://www.w3.org/WAI/ARIA/apg/patterns/windowsplitter/\n\tconst onSeparatorKeyDown = ( event ) => {\n\t\tconst delta = { ArrowUp: 20, ArrowDown: -20 }[ event.key ];\n\t\tif ( delta ) {\n\t\t\tconst pane = metaBoxesMainRef.current.resizable;\n\t\t\tconst fromHeight = isAutoHeight ? pane.offsetHeight : openHeight;\n\t\t\tconst nextHeight = delta + fromHeight;\n\t\t\tapplyHeight( nextHeight, true, true );\n\t\t\tevent.preventDefault();\n\t\t}\n\t};\n\tconst className = 'edit-post-meta-boxes-main';\n\tconst paneLabel = __( 'Meta Boxes' );\n\tlet Pane, paneProps;\n\tif ( isShort ) {\n\t\tPane = NavigableRegion;\n\t\tpaneProps = {\n\t\t\tclassName: clsx( className, 'is-toggle-only' ),\n\t\t};\n\t} else {\n\t\tPane = ResizableBox;\n\t\tpaneProps = /** @type {Parameters<typeof ResizableBox>[0]} */ ( {\n\t\t\tas: NavigableRegion,\n\t\t\tref: metaBoxesMainRef,\n\t\t\tclassName: clsx( className, 'is-resizable' ),\n\t\t\tdefaultSize: { height: openHeight },\n\t\t\tminHeight: min,\n\t\t\tmaxHeight: usedMax,\n\t\t\tenable: {\n\t\t\t\ttop: true,\n\t\t\t\tright: false,\n\t\t\t\tbottom: false,\n\t\t\t\tleft: false,\n\t\t\t\ttopLeft: false,\n\t\t\t\ttopRight: false,\n\t\t\t\tbottomRight: false,\n\t\t\t\tbottomLeft: false,\n\t\t\t},\n\t\t\thandleClasses: { top: 'edit-post-meta-boxes-main__presenter' },\n\t\t\thandleComponent: {\n\t\t\t\ttop: (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Tooltip text={ __( 'Drag to resize' ) }>\n\t\t\t\t\t\t\t<button // eslint-disable-line jsx-a11y/role-supports-aria-props\n\t\t\t\t\t\t\t\tref={ separatorRef }\n\t\t\t\t\t\t\t\trole=\"separator\" // eslint-disable-line jsx-a11y/no-interactive-element-to-noninteractive-role\n\t\t\t\t\t\t\t\taria-valuenow={ usedAriaValueNow }\n\t\t\t\t\t\t\t\taria-label={ __( 'Drag to resize' ) }\n\t\t\t\t\t\t\t\taria-describedby={ separatorHelpId }\n\t\t\t\t\t\t\t\tonKeyDown={ onSeparatorKeyDown }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t<VisuallyHidden id={ separatorHelpId }>\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'Use up and down arrow keys to resize the meta box panel.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t</>\n\t\t\t\t),\n\t\t\t},\n\t\t\t// Avoids hiccups while dragging over objects like iframes and ensures that\n\t\t\t// the event to end the drag is captured by the target (resize handle)\n\t\t\t// whether or not it’s under the pointer.\n\t\t\tonPointerDown: ( { pointerId, target } ) => {\n\t\t\t\ttarget.setPointerCapture( pointerId );\n\t\t\t},\n\t\t\tonResizeStart: ( event, direction, elementRef ) => {\n\t\t\t\tif ( isAutoHeight ) {\n\t\t\t\t\t// Sets the starting height to avoid visual jumps in height and\n\t\t\t\t\t// aria-valuenow being `NaN` for the first (few) resize events.\n\t\t\t\t\tapplyHeight( elementRef.offsetHeight, false, true );\n\t\t\t\t\tsetIsUntouched( false );\n\t\t\t\t}\n\t\t\t},\n\t\t\tonResize: () =>\n\t\t\t\tapplyHeight( metaBoxesMainRef.current.state.height ),\n\t\t\tonResizeStop: () =>\n\t\t\t\tapplyHeight( metaBoxesMainRef.current.state.height, true ),\n\t\t} );\n\t}\n\n\treturn (\n\t\t<Pane aria-label={ paneLabel } { ...paneProps }>\n\t\t\t{ isShort ? (\n\t\t\t\t<button\n\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\tclassName=\"edit-post-meta-boxes-main__presenter\"\n\t\t\t\t\tonClick={ toggle }\n\t\t\t\t>\n\t\t\t\t\t{ paneLabel }\n\t\t\t\t\t<Icon icon={ isOpen ? chevronUp : chevronDown } />\n\t\t\t\t</button>\n\t\t\t) : (\n\t\t\t\t<meta ref={ effectSizeConstraints } />\n\t\t\t) }\n\t\t\t{ contents }\n\t\t</Pane>\n\t);\n}\n\nfunction Layout( {\n\tpostId: initialPostId,\n\tpostType: initialPostType,\n\tsettings,\n\tinitialEdits,\n} ) {\n\tuseCommands();\n\tuseEditPostCommands();\n\tconst paddingAppenderRef = usePaddingAppender();\n\tconst shouldIframe = useShouldIframe();\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst {\n\t\tcurrentPost: { postId: currentPostId, postType: currentPostType },\n\t\tonNavigateToEntityRecord,\n\t\tonNavigateToPreviousEntityRecord,\n\t} = useNavigateToEntityRecord(\n\t\tinitialPostId,\n\t\tinitialPostType,\n\t\t'post-only'\n\t);\n\tconst isEditingTemplate = currentPostType === 'wp_template';\n\tconst {\n\t\tmode,\n\t\tisFullscreenActive,\n\t\thasActiveMetaboxes,\n\t\thasBlockSelected,\n\t\tshowIconLabels,\n\t\tisDistractionFree,\n\t\tshowMetaBoxes,\n\t\thasHistory,\n\t\tisWelcomeGuideVisible,\n\t\ttemplateId,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { get } = select( preferencesStore );\n\t\t\tconst { isFeatureActive, getEditedPostTemplateId } = unlock(\n\t\t\t\tselect( editPostStore )\n\t\t\t);\n\t\t\tconst { canUser, getPostType } = select( coreStore );\n\t\t\tconst { __unstableGetEditorMode } = unlock(\n\t\t\t\tselect( blockEditorStore )\n\t\t\t);\n\n\t\t\tconst supportsTemplateMode = settings.supportsTemplateMode;\n\t\t\tconst isViewable =\n\t\t\t\tgetPostType( currentPostType )?.viewable ?? false;\n\t\t\tconst canViewTemplate = canUser( 'read', {\n\t\t\t\tkind: 'postType',\n\t\t\t\tname: 'wp_template',\n\t\t\t} );\n\n\t\t\tconst isZoomOut = __unstableGetEditorMode() === 'zoom-out';\n\n\t\t\treturn {\n\t\t\t\tmode: select( editorStore ).getEditorMode(),\n\t\t\t\tisFullscreenActive:\n\t\t\t\t\tselect( editPostStore ).isFeatureActive( 'fullscreenMode' ),\n\t\t\t\thasActiveMetaboxes: select( editPostStore ).hasMetaBoxes(),\n\t\t\t\thasBlockSelected:\n\t\t\t\t\t!! select( blockEditorStore ).getBlockSelectionStart(),\n\t\t\t\tshowIconLabels: get( 'core', 'showIconLabels' ),\n\t\t\t\tisDistractionFree: get( 'core', 'distractionFree' ),\n\t\t\t\tshowMetaBoxes:\n\t\t\t\t\t! DESIGN_POST_TYPES.includes( currentPostType ) &&\n\t\t\t\t\tselect( editorStore ).getRenderingMode() === 'post-only' &&\n\t\t\t\t\t! isZoomOut,\n\t\t\t\tisWelcomeGuideVisible: isFeatureActive( 'welcomeGuide' ),\n\t\t\t\ttemplateId:\n\t\t\t\t\tsupportsTemplateMode &&\n\t\t\t\t\tisViewable &&\n\t\t\t\t\tcanViewTemplate &&\n\t\t\t\t\t! isEditingTemplate\n\t\t\t\t\t\t? getEditedPostTemplateId()\n\t\t\t\t\t\t: null,\n\t\t\t};\n\t\t},\n\t\t[ currentPostType, isEditingTemplate, settings.supportsTemplateMode ]\n\t);\n\n\t// Set the right context for the command palette\n\tconst commandContext = hasBlockSelected\n\t\t? 'block-selection-edit'\n\t\t: 'entity-edit';\n\tuseCommandContext( commandContext );\n\tconst editorSettings = useMemo(\n\t\t() => ( {\n\t\t\t...settings,\n\t\t\tonNavigateToEntityRecord,\n\t\t\tonNavigateToPreviousEntityRecord,\n\t\t\tdefaultRenderingMode: 'post-only',\n\t\t} ),\n\t\t[ settings, onNavigateToEntityRecord, onNavigateToPreviousEntityRecord ]\n\t);\n\tconst styles = useEditorStyles();\n\n\t// We need to add the show-icon-labels class to the body element so it is applied to modals.\n\tif ( showIconLabels ) {\n\t\tdocument.body.classList.add( 'show-icon-labels' );\n\t} else {\n\t\tdocument.body.classList.remove( 'show-icon-labels' );\n\t}\n\n\tconst navigateRegionsProps = useNavigateRegions();\n\n\tconst className = clsx( 'edit-post-layout', 'is-mode-' + mode, {\n\t\t'has-metaboxes': hasActiveMetaboxes,\n\t} );\n\n\tfunction onPluginAreaError( name ) {\n\t\tcreateErrorNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: plugin name */\n\t\t\t\t__(\n\t\t\t\t\t'The \"%s\" plugin has encountered an error and cannot be rendered.'\n\t\t\t\t),\n\t\t\t\tname\n\t\t\t)\n\t\t);\n\t}\n\n\tconst { createSuccessNotice } = useDispatch( noticesStore );\n\n\tconst onActionPerformed = useCallback(\n\t\t( actionId, items ) => {\n\t\t\tswitch ( actionId ) {\n\t\t\t\tcase 'move-to-trash':\n\t\t\t\t\t{\n\t\t\t\t\t\tdocument.location.href = addQueryArgs( 'edit.php', {\n\t\t\t\t\t\t\ttrashed: 1,\n\t\t\t\t\t\t\tpost_type: items[ 0 ].type,\n\t\t\t\t\t\t\tids: items[ 0 ].id,\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'duplicate-post':\n\t\t\t\t\t{\n\t\t\t\t\t\tconst newItem = items[ 0 ];\n\t\t\t\t\t\tconst title =\n\t\t\t\t\t\t\ttypeof newItem.title === 'string'\n\t\t\t\t\t\t\t\t? newItem.title\n\t\t\t\t\t\t\t\t: newItem.title?.rendered;\n\t\t\t\t\t\tcreateSuccessNotice(\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t// translators: %s: Title of the created post or template, e.g: \"Hello world\".\n\t\t\t\t\t\t\t\t__( '\"%s\" successfully created.' ),\n\t\t\t\t\t\t\t\tdecodeEntities( title )\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t\t\t\tid: 'duplicate-post-action',\n\t\t\t\t\t\t\t\tactions: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tlabel: __( 'Edit' ),\n\t\t\t\t\t\t\t\t\t\tonClick: () => {\n\t\t\t\t\t\t\t\t\t\t\tconst postId = newItem.id;\n\t\t\t\t\t\t\t\t\t\t\tdocument.location.href =\n\t\t\t\t\t\t\t\t\t\t\t\taddQueryArgs( 'post.php', {\n\t\t\t\t\t\t\t\t\t\t\t\t\tpost: postId,\n\t\t\t\t\t\t\t\t\t\t\t\t\taction: 'edit',\n\t\t\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t},\n\t\t[ createSuccessNotice ]\n\t);\n\n\tconst initialPost = useMemo( () => {\n\t\treturn {\n\t\t\ttype: initialPostType,\n\t\t\tid: initialPostId,\n\t\t};\n\t}, [ initialPostType, initialPostId ] );\n\n\tconst backButton =\n\t\tuseViewportMatch( 'medium' ) && isFullscreenActive ? (\n\t\t\t<BackButton initialPost={ initialPost } />\n\t\t) : null;\n\n\treturn (\n\t\t<SlotFillProvider>\n\t\t\t<ErrorBoundary>\n\t\t\t\t<CommandMenu />\n\t\t\t\t<WelcomeGuide postType={ currentPostType } />\n\t\t\t\t<div\n\t\t\t\t\tclassName={ navigateRegionsProps.className }\n\t\t\t\t\t{ ...navigateRegionsProps }\n\t\t\t\t\tref={ navigateRegionsProps.ref }\n\t\t\t\t>\n\t\t\t\t\t<Editor\n\t\t\t\t\t\tsettings={ editorSettings }\n\t\t\t\t\t\tinitialEdits={ initialEdits }\n\t\t\t\t\t\tpostType={ currentPostType }\n\t\t\t\t\t\tpostId={ currentPostId }\n\t\t\t\t\t\ttemplateId={ templateId }\n\t\t\t\t\t\tclassName={ className }\n\t\t\t\t\t\tstyles={ styles }\n\t\t\t\t\t\tforceIsDirty={ hasActiveMetaboxes }\n\t\t\t\t\t\tcontentRef={ paddingAppenderRef }\n\t\t\t\t\t\tdisableIframe={ ! shouldIframe }\n\t\t\t\t\t\t// We should auto-focus the canvas (title) on load.\n\t\t\t\t\t\t// eslint-disable-next-line jsx-a11y/no-autofocus\n\t\t\t\t\t\tautoFocus={ ! isWelcomeGuideVisible }\n\t\t\t\t\t\tonActionPerformed={ onActionPerformed }\n\t\t\t\t\t\textraSidebarPanels={\n\t\t\t\t\t\t\tshowMetaBoxes && <MetaBoxes location=\"side\" />\n\t\t\t\t\t\t}\n\t\t\t\t\t\textraContent={\n\t\t\t\t\t\t\t! isDistractionFree &&\n\t\t\t\t\t\t\tshowMetaBoxes && (\n\t\t\t\t\t\t\t\t<MetaBoxesMain isLegacy={ ! shouldIframe } />\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<PostLockedModal />\n\t\t\t\t\t\t<EditorInitialization />\n\t\t\t\t\t\t<FullscreenMode isActive={ isFullscreenActive } />\n\t\t\t\t\t\t<BrowserURL hasHistory={ hasHistory } />\n\t\t\t\t\t\t<UnsavedChangesWarning />\n\t\t\t\t\t\t<AutosaveMonitor />\n\t\t\t\t\t\t<LocalAutosaveMonitor />\n\t\t\t\t\t\t<EditPostKeyboardShortcuts />\n\t\t\t\t\t\t<EditorKeyboardShortcutsRegister />\n\t\t\t\t\t\t<BlockKeyboardShortcuts />\n\t\t\t\t\t\t<InitPatternModal />\n\t\t\t\t\t\t<PluginArea onError={ onPluginAreaError } />\n\t\t\t\t\t\t<PostEditorMoreMenu />\n\t\t\t\t\t\t{ backButton }\n\t\t\t\t\t\t<EditorSnackbars />\n\t\t\t\t\t</Editor>\n\t\t\t\t</div>\n\t\t\t</ErrorBoundary>\n\t\t</SlotFillProvider>\n\t);\n}\n\nexport default Layout;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["clsx","AutosaveMonitor","LocalAutosaveMonitor","UnsavedChangesWarning","EditorKeyboardShortcutsRegister","EditorSnackbars","ErrorBoundary","PostLockedModal","store","editorStore","privateApis","editorPrivateApis","useSelect","useDispatch","blockEditorPrivateApis","blockEditorStore","PluginArea","__","sprintf","useCallback","useMemo","useId","useRef","useState","chevronDown","chevronUp","noticesStore","preferencesStore","CommandMenu","commandsPrivateApis","coreCommandsPrivateApis","blockLibraryPrivateApis","addQueryArgs","decodeEntities","coreStore","Icon","ResizableBox","SlotFillProvider","Tooltip","VisuallyHidden","__unstableUseNavigateRegions","useNavigateRegions","useMediaQuery","useRefEffect","useViewportMatch","BackButton","EditorInitialization","EditPostKeyboardShortcuts","InitPatternModal","BrowserURL","MetaBoxes","PostEditorMoreMenu","WelcomeGuide","editPostStore","unlock","useEditPostCommands","usePaddingAppender","useShouldIframe","useNavigateToEntityRecord","useMetaBoxInitialization","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","getLayoutStyles","useCommands","useCommandContext","Editor","FullscreenMode","NavigableRegion","BlockKeyboardShortcuts","DESIGN_POST_TYPES","useEditorStyles","hasThemeStyleSupport","editorSettings","isZoomedOutView","renderingMode","postType","select","__unstableGetEditorMode","getCurrentPostType","getRenderingMode","_postType","isFeatureActive","getEditorSettings","_editorSettings$style","_editorSettings$defau","_editorSettings$style2","_editorSettings$style3","presetStyles","styles","filter","style","__unstableType","defaultEditorStyles","hasThemeStyles","length","disableLayoutStyles","push","css","selector","hasBlockGapSupport","hasFallbackGapSupport","fallbackGapValue","baseStyles","includes","MetaBoxesMain","isLegacy","isOpen","openHeight","hasAnyVisible","get","isMetaBoxLocationVisible","set","setPreference","metaBoxesMainRef","isShort","min","max","setHeightConstraints","effectSizeConstraints","node","container","closest","noticeLists","querySelectorAll","resizeHandle","querySelector","deriveConstraints","fullHeight","offsetHeight","nextMax","element","nextMin","observer","window","ResizeObserver","observe","disconnect","separatorRef","separatorHelpId","isUntouched","setIsUntouched","applyHeight","candidateHeight","isPersistent","isInstant","nextHeight","Math","current","ariaValueNow","getAriaValueNow","updateSize","height","width","contents","className","hidden","children","location","isAutoHeight","undefined","usedMax","round","usedAriaValueNow","toggle","onSeparatorKeyDown","event","delta","ArrowUp","ArrowDown","key","pane","resizable","fromHeight","preventDefault","paneLabel","Pane","paneProps","as","ref","defaultSize","minHeight","maxHeight","enable","top","right","bottom","left","topLeft","topRight","bottomRight","bottomLeft","handleClasses","handleComponent","text","role","onKeyDown","id","onPointerDown","pointerId","target","setPointerCapture","onResizeStart","direction","elementRef","onResize","state","onResizeStop","onClick","icon","Layout","postId","initialPostId","initialPostType","settings","initialEdits","paddingAppenderRef","shouldIframe","createErrorNotice","currentPost","currentPostId","currentPostType","onNavigateToEntityRecord","onNavigateToPreviousEntityRecord","isEditingTemplate","mode","isFullscreenActive","hasActiveMetaboxes","hasBlockSelected","showIconLabels","isDistractionFree","showMetaBoxes","hasHistory","isWelcomeGuideVisible","templateId","isDevicePreview","_getPostType$viewable","getEditedPostTemplateId","canUser","getPostType","getDeviceType","getEditorMode","supportsTemplateMode","isViewable","viewable","canViewTemplate","kind","name","isZoomOut","hasMetaBoxes","getBlockSelectionStart","commandContext","defaultRenderingMode","document","body","classList","add","remove","navigateRegionsProps","onPluginAreaError","createSuccessNotice","onActionPerformed","actionId","items","href","trashed","post_type","type","ids","newItem","title","rendered","actions","label","post","action","initialPost","backButton","forceIsDirty","contentRef","disableIframe","autoFocus","extraSidebarPanels","extraContent","isActive","onError"],"sources":["@wordpress/edit-post/src/components/layout/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAutosaveMonitor,\n\tLocalAutosaveMonitor,\n\tUnsavedChangesWarning,\n\tEditorKeyboardShortcutsRegister,\n\tEditorSnackbars,\n\tErrorBoundary,\n\tPostLockedModal,\n\tstore as editorStore,\n\tprivateApis as editorPrivateApis,\n} from '@wordpress/editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { PluginArea } from '@wordpress/plugins';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tuseCallback,\n\tuseMemo,\n\tuseId,\n\tuseRef,\n\tuseState,\n} from '@wordpress/element';\nimport { chevronDown, chevronUp } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport {\n\tCommandMenu,\n\tprivateApis as commandsPrivateApis,\n} from '@wordpress/commands';\nimport { privateApis as coreCommandsPrivateApis } from '@wordpress/core-commands';\nimport { privateApis as blockLibraryPrivateApis } from '@wordpress/block-library';\nimport { addQueryArgs } from '@wordpress/url';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tIcon,\n\tResizableBox,\n\tSlotFillProvider,\n\tTooltip,\n\tVisuallyHidden,\n\t__unstableUseNavigateRegions as useNavigateRegions,\n} from '@wordpress/components';\nimport {\n\tuseMediaQuery,\n\tuseRefEffect,\n\tuseViewportMatch,\n} from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport BackButton from '../back-button';\nimport EditorInitialization from '../editor-initialization';\nimport EditPostKeyboardShortcuts from '../keyboard-shortcuts';\nimport InitPatternModal from '../init-pattern-modal';\nimport BrowserURL from '../browser-url';\nimport MetaBoxes from '../meta-boxes';\nimport PostEditorMoreMenu from '../more-menu';\nimport WelcomeGuide from '../welcome-guide';\nimport { store as editPostStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\nimport useEditPostCommands from '../../commands/use-commands';\nimport { usePaddingAppender } from './use-padding-appender';\nimport { useShouldIframe } from './use-should-iframe';\nimport useNavigateToEntityRecord from '../../hooks/use-navigate-to-entity-record';\nimport { useMetaBoxInitialization } from '../meta-boxes/use-meta-box-initialization';\n\nconst { getLayoutStyles } = unlock( blockEditorPrivateApis );\nconst { useCommands } = unlock( coreCommandsPrivateApis );\nconst { useCommandContext } = unlock( commandsPrivateApis );\nconst { Editor, FullscreenMode, NavigableRegion } = unlock( editorPrivateApis );\nconst { BlockKeyboardShortcuts } = unlock( blockLibraryPrivateApis );\nconst DESIGN_POST_TYPES = [\n\t'wp_template',\n\t'wp_template_part',\n\t'wp_block',\n\t'wp_navigation',\n];\n\nfunction useEditorStyles() {\n\tconst {\n\t\thasThemeStyleSupport,\n\t\teditorSettings,\n\t\tisZoomedOutView,\n\t\trenderingMode,\n\t\tpostType,\n\t} = useSelect( ( select ) => {\n\t\tconst { __unstableGetEditorMode } = select( blockEditorStore );\n\t\tconst { getCurrentPostType, getRenderingMode } = select( editorStore );\n\t\tconst _postType = getCurrentPostType();\n\t\treturn {\n\t\t\thasThemeStyleSupport:\n\t\t\t\tselect( editPostStore ).isFeatureActive( 'themeStyles' ),\n\t\t\teditorSettings: select( editorStore ).getEditorSettings(),\n\t\t\tisZoomedOutView: __unstableGetEditorMode() === 'zoom-out',\n\t\t\trenderingMode: getRenderingMode(),\n\t\t\tpostType: _postType,\n\t\t};\n\t}, [] );\n\n\t// Compute the default styles.\n\treturn useMemo( () => {\n\t\tconst presetStyles =\n\t\t\teditorSettings.styles?.filter(\n\t\t\t\t( style ) =>\n\t\t\t\t\tstyle.__unstableType && style.__unstableType !== 'theme'\n\t\t\t) ?? [];\n\n\t\tconst defaultEditorStyles = [\n\t\t\t...( editorSettings?.defaultEditorStyles ?? [] ),\n\t\t\t...presetStyles,\n\t\t];\n\n\t\t// Has theme styles if the theme supports them and if some styles were not preset styles (in which case they're theme styles).\n\t\tconst hasThemeStyles =\n\t\t\thasThemeStyleSupport &&\n\t\t\tpresetStyles.length !== ( editorSettings.styles?.length ?? 0 );\n\n\t\t// If theme styles are not present or displayed, ensure that\n\t\t// base layout styles are still present in the editor.\n\t\tif ( ! editorSettings.disableLayoutStyles && ! hasThemeStyles ) {\n\t\t\tdefaultEditorStyles.push( {\n\t\t\t\tcss: getLayoutStyles( {\n\t\t\t\t\tstyle: {},\n\t\t\t\t\tselector: 'body',\n\t\t\t\t\thasBlockGapSupport: false,\n\t\t\t\t\thasFallbackGapSupport: true,\n\t\t\t\t\tfallbackGapValue: '0.5em',\n\t\t\t\t} ),\n\t\t\t} );\n\t\t}\n\n\t\tconst baseStyles = hasThemeStyles\n\t\t\t? editorSettings.styles ?? []\n\t\t\t: defaultEditorStyles;\n\n\t\t// Add a space for the typewriter effect. When typing in the last block,\n\t\t// there needs to be room to scroll up.\n\t\tif (\n\t\t\t! isZoomedOutView &&\n\t\t\trenderingMode === 'post-only' &&\n\t\t\t! DESIGN_POST_TYPES.includes( postType )\n\t\t) {\n\t\t\treturn [\n\t\t\t\t...baseStyles,\n\t\t\t\t{\n\t\t\t\t\tcss: ':root :where(.editor-styles-wrapper)::after {content: \"\"; display: block; height: 40vh;}',\n\t\t\t\t},\n\t\t\t];\n\t\t}\n\n\t\treturn baseStyles;\n\t}, [\n\t\teditorSettings.defaultEditorStyles,\n\t\teditorSettings.disableLayoutStyles,\n\t\teditorSettings.styles,\n\t\thasThemeStyleSupport,\n\t\tpostType,\n\t] );\n}\n\n/**\n * @param {Object} props\n * @param {boolean} props.isLegacy True when the editor canvas is not in an iframe.\n */\nfunction MetaBoxesMain( { isLegacy } ) {\n\tconst [ isOpen, openHeight, hasAnyVisible ] = useSelect( ( select ) => {\n\t\tconst { get } = select( preferencesStore );\n\t\tconst { isMetaBoxLocationVisible } = select( editPostStore );\n\t\treturn [\n\t\t\tget( 'core/edit-post', 'metaBoxesMainIsOpen' ),\n\t\t\tget( 'core/edit-post', 'metaBoxesMainOpenHeight' ),\n\t\t\tisMetaBoxLocationVisible( 'normal' ) ||\n\t\t\t\tisMetaBoxLocationVisible( 'advanced' ) ||\n\t\t\t\tisMetaBoxLocationVisible( 'side' ),\n\t\t];\n\t}, [] );\n\tconst { set: setPreference } = useDispatch( preferencesStore );\n\tconst metaBoxesMainRef = useRef();\n\tconst isShort = useMediaQuery( '(max-height: 549px)' );\n\n\tconst [ { min, max }, setHeightConstraints ] = useState( () => ( {} ) );\n\t// Keeps the resizable area’s size constraints updated taking into account\n\t// editor notices. The constraints are also used to derive the value for the\n\t// aria-valuenow attribute on the seperator.\n\tconst effectSizeConstraints = useRefEffect( ( node ) => {\n\t\tconst container = node.closest(\n\t\t\t'.interface-interface-skeleton__content'\n\t\t);\n\t\tconst noticeLists = container.querySelectorAll(\n\t\t\t':scope > .components-notice-list'\n\t\t);\n\t\tconst resizeHandle = container.querySelector(\n\t\t\t'.edit-post-meta-boxes-main__presenter'\n\t\t);\n\t\tconst deriveConstraints = () => {\n\t\t\tconst fullHeight = container.offsetHeight;\n\t\t\tlet nextMax = fullHeight;\n\t\t\tfor ( const element of noticeLists ) {\n\t\t\t\tnextMax -= element.offsetHeight;\n\t\t\t}\n\t\t\tconst nextMin = resizeHandle.offsetHeight;\n\t\t\tsetHeightConstraints( { min: nextMin, max: nextMax } );\n\t\t};\n\t\tconst observer = new window.ResizeObserver( deriveConstraints );\n\t\tobserver.observe( container );\n\t\tfor ( const element of noticeLists ) {\n\t\t\tobserver.observe( element );\n\t\t}\n\t\treturn () => observer.disconnect();\n\t}, [] );\n\n\tconst separatorRef = useRef();\n\tconst separatorHelpId = useId();\n\n\tconst [ isUntouched, setIsUntouched ] = useState( true );\n\tconst applyHeight = ( candidateHeight, isPersistent, isInstant ) => {\n\t\tconst nextHeight = Math.min( max, Math.max( min, candidateHeight ) );\n\t\tif ( isPersistent ) {\n\t\t\tsetPreference(\n\t\t\t\t'core/edit-post',\n\t\t\t\t'metaBoxesMainOpenHeight',\n\t\t\t\tnextHeight\n\t\t\t);\n\t\t} else {\n\t\t\tseparatorRef.current.ariaValueNow = getAriaValueNow( nextHeight );\n\t\t}\n\t\tif ( isInstant ) {\n\t\t\tmetaBoxesMainRef.current.updateSize( {\n\t\t\t\theight: nextHeight,\n\t\t\t\t// Oddly, when the event that triggered this was not from the mouse (e.g. keydown),\n\t\t\t\t// if `width` is left unspecified a subsequent drag gesture applies a fixed\n\t\t\t\t// width and the pane fails to widen/narrow with parent width changes from\n\t\t\t\t// sidebars opening/closing or window resizes.\n\t\t\t\twidth: 'auto',\n\t\t\t} );\n\t\t}\n\t};\n\n\tif ( ! hasAnyVisible ) {\n\t\treturn;\n\t}\n\n\tconst contents = (\n\t\t<div\n\t\t\tclassName={ clsx(\n\t\t\t\t// The class name 'edit-post-layout__metaboxes' is retained because some plugins use it.\n\t\t\t\t'edit-post-layout__metaboxes',\n\t\t\t\t! isLegacy && 'edit-post-meta-boxes-main__liner'\n\t\t\t) }\n\t\t\thidden={ ! isLegacy && isShort && ! isOpen }\n\t\t>\n\t\t\t<MetaBoxes location=\"normal\" />\n\t\t\t<MetaBoxes location=\"advanced\" />\n\t\t</div>\n\t);\n\n\tif ( isLegacy ) {\n\t\treturn contents;\n\t}\n\n\tconst isAutoHeight = openHeight === undefined;\n\tlet usedMax = '50%'; // Approximation before max has a value.\n\tif ( max !== undefined ) {\n\t\t// Halves the available max height until a user height is set.\n\t\tusedMax = isAutoHeight && isUntouched ? max / 2 : max;\n\t}\n\n\tconst getAriaValueNow = ( height ) =>\n\t\tMath.round( ( ( height - min ) / ( max - min ) ) * 100 );\n\tconst usedAriaValueNow =\n\t\tmax === undefined || isAutoHeight ? 50 : getAriaValueNow( openHeight );\n\n\tconst toggle = () =>\n\t\tsetPreference( 'core/edit-post', 'metaBoxesMainIsOpen', ! isOpen );\n\n\t// TODO: Support more/all keyboard interactions from the window splitter pattern:\n\t// https://www.w3.org/WAI/ARIA/apg/patterns/windowsplitter/\n\tconst onSeparatorKeyDown = ( event ) => {\n\t\tconst delta = { ArrowUp: 20, ArrowDown: -20 }[ event.key ];\n\t\tif ( delta ) {\n\t\t\tconst pane = metaBoxesMainRef.current.resizable;\n\t\t\tconst fromHeight = isAutoHeight ? pane.offsetHeight : openHeight;\n\t\t\tconst nextHeight = delta + fromHeight;\n\t\t\tapplyHeight( nextHeight, true, true );\n\t\t\tevent.preventDefault();\n\t\t}\n\t};\n\tconst className = 'edit-post-meta-boxes-main';\n\tconst paneLabel = __( 'Meta Boxes' );\n\tlet Pane, paneProps;\n\tif ( isShort ) {\n\t\tPane = NavigableRegion;\n\t\tpaneProps = {\n\t\t\tclassName: clsx( className, 'is-toggle-only' ),\n\t\t};\n\t} else {\n\t\tPane = ResizableBox;\n\t\tpaneProps = /** @type {Parameters<typeof ResizableBox>[0]} */ ( {\n\t\t\tas: NavigableRegion,\n\t\t\tref: metaBoxesMainRef,\n\t\t\tclassName: clsx( className, 'is-resizable' ),\n\t\t\tdefaultSize: { height: openHeight },\n\t\t\tminHeight: min,\n\t\t\tmaxHeight: usedMax,\n\t\t\tenable: {\n\t\t\t\ttop: true,\n\t\t\t\tright: false,\n\t\t\t\tbottom: false,\n\t\t\t\tleft: false,\n\t\t\t\ttopLeft: false,\n\t\t\t\ttopRight: false,\n\t\t\t\tbottomRight: false,\n\t\t\t\tbottomLeft: false,\n\t\t\t},\n\t\t\thandleClasses: { top: 'edit-post-meta-boxes-main__presenter' },\n\t\t\thandleComponent: {\n\t\t\t\ttop: (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Tooltip text={ __( 'Drag to resize' ) }>\n\t\t\t\t\t\t\t<button // eslint-disable-line jsx-a11y/role-supports-aria-props\n\t\t\t\t\t\t\t\tref={ separatorRef }\n\t\t\t\t\t\t\t\trole=\"separator\" // eslint-disable-line jsx-a11y/no-interactive-element-to-noninteractive-role\n\t\t\t\t\t\t\t\taria-valuenow={ usedAriaValueNow }\n\t\t\t\t\t\t\t\taria-label={ __( 'Drag to resize' ) }\n\t\t\t\t\t\t\t\taria-describedby={ separatorHelpId }\n\t\t\t\t\t\t\t\tonKeyDown={ onSeparatorKeyDown }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t<VisuallyHidden id={ separatorHelpId }>\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'Use up and down arrow keys to resize the meta box panel.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t</>\n\t\t\t\t),\n\t\t\t},\n\t\t\t// Avoids hiccups while dragging over objects like iframes and ensures that\n\t\t\t// the event to end the drag is captured by the target (resize handle)\n\t\t\t// whether or not it’s under the pointer.\n\t\t\tonPointerDown: ( { pointerId, target } ) => {\n\t\t\t\ttarget.setPointerCapture( pointerId );\n\t\t\t},\n\t\t\tonResizeStart: ( event, direction, elementRef ) => {\n\t\t\t\tif ( isAutoHeight ) {\n\t\t\t\t\t// Sets the starting height to avoid visual jumps in height and\n\t\t\t\t\t// aria-valuenow being `NaN` for the first (few) resize events.\n\t\t\t\t\tapplyHeight( elementRef.offsetHeight, false, true );\n\t\t\t\t\tsetIsUntouched( false );\n\t\t\t\t}\n\t\t\t},\n\t\t\tonResize: () =>\n\t\t\t\tapplyHeight( metaBoxesMainRef.current.state.height ),\n\t\t\tonResizeStop: () =>\n\t\t\t\tapplyHeight( metaBoxesMainRef.current.state.height, true ),\n\t\t} );\n\t}\n\n\treturn (\n\t\t<Pane aria-label={ paneLabel } { ...paneProps }>\n\t\t\t{ isShort ? (\n\t\t\t\t<button\n\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\tclassName=\"edit-post-meta-boxes-main__presenter\"\n\t\t\t\t\tonClick={ toggle }\n\t\t\t\t>\n\t\t\t\t\t{ paneLabel }\n\t\t\t\t\t<Icon icon={ isOpen ? chevronUp : chevronDown } />\n\t\t\t\t</button>\n\t\t\t) : (\n\t\t\t\t<meta ref={ effectSizeConstraints } />\n\t\t\t) }\n\t\t\t{ contents }\n\t\t</Pane>\n\t);\n}\n\nfunction Layout( {\n\tpostId: initialPostId,\n\tpostType: initialPostType,\n\tsettings,\n\tinitialEdits,\n} ) {\n\tuseCommands();\n\tuseEditPostCommands();\n\tconst paddingAppenderRef = usePaddingAppender();\n\tconst shouldIframe = useShouldIframe();\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst {\n\t\tcurrentPost: { postId: currentPostId, postType: currentPostType },\n\t\tonNavigateToEntityRecord,\n\t\tonNavigateToPreviousEntityRecord,\n\t} = useNavigateToEntityRecord(\n\t\tinitialPostId,\n\t\tinitialPostType,\n\t\t'post-only'\n\t);\n\tconst isEditingTemplate = currentPostType === 'wp_template';\n\tconst {\n\t\tmode,\n\t\tisFullscreenActive,\n\t\thasActiveMetaboxes,\n\t\thasBlockSelected,\n\t\tshowIconLabels,\n\t\tisDistractionFree,\n\t\tshowMetaBoxes,\n\t\thasHistory,\n\t\tisWelcomeGuideVisible,\n\t\ttemplateId,\n\t\tisDevicePreview,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { get } = select( preferencesStore );\n\t\t\tconst { isFeatureActive, getEditedPostTemplateId } = unlock(\n\t\t\t\tselect( editPostStore )\n\t\t\t);\n\t\t\tconst { canUser, getPostType } = select( coreStore );\n\t\t\tconst { getDeviceType, getEditorMode } = select( editorStore );\n\t\t\tconst { __unstableGetEditorMode } = unlock(\n\t\t\t\tselect( blockEditorStore )\n\t\t\t);\n\n\t\t\tconst supportsTemplateMode = settings.supportsTemplateMode;\n\t\t\tconst isViewable =\n\t\t\t\tgetPostType( currentPostType )?.viewable ?? false;\n\t\t\tconst canViewTemplate = canUser( 'read', {\n\t\t\t\tkind: 'postType',\n\t\t\t\tname: 'wp_template',\n\t\t\t} );\n\n\t\t\tconst isZoomOut = __unstableGetEditorMode() === 'zoom-out';\n\n\t\t\treturn {\n\t\t\t\tmode: getEditorMode(),\n\t\t\t\tisFullscreenActive:\n\t\t\t\t\tselect( editPostStore ).isFeatureActive( 'fullscreenMode' ),\n\t\t\t\thasActiveMetaboxes: select( editPostStore ).hasMetaBoxes(),\n\t\t\t\thasBlockSelected:\n\t\t\t\t\t!! select( blockEditorStore ).getBlockSelectionStart(),\n\t\t\t\tshowIconLabels: get( 'core', 'showIconLabels' ),\n\t\t\t\tisDistractionFree: get( 'core', 'distractionFree' ),\n\t\t\t\tshowMetaBoxes:\n\t\t\t\t\t! DESIGN_POST_TYPES.includes( currentPostType ) &&\n\t\t\t\t\t! isZoomOut,\n\t\t\t\tisWelcomeGuideVisible: isFeatureActive( 'welcomeGuide' ),\n\t\t\t\ttemplateId:\n\t\t\t\t\tsupportsTemplateMode &&\n\t\t\t\t\tisViewable &&\n\t\t\t\t\tcanViewTemplate &&\n\t\t\t\t\t! isEditingTemplate\n\t\t\t\t\t\t? getEditedPostTemplateId()\n\t\t\t\t\t\t: null,\n\t\t\t\tisDevicePreview: getDeviceType() !== 'Desktop',\n\t\t\t};\n\t\t},\n\t\t[ currentPostType, isEditingTemplate, settings.supportsTemplateMode ]\n\t);\n\tuseMetaBoxInitialization( hasActiveMetaboxes );\n\n\t// Set the right context for the command palette\n\tconst commandContext = hasBlockSelected\n\t\t? 'block-selection-edit'\n\t\t: 'entity-edit';\n\tuseCommandContext( commandContext );\n\tconst editorSettings = useMemo(\n\t\t() => ( {\n\t\t\t...settings,\n\t\t\tonNavigateToEntityRecord,\n\t\t\tonNavigateToPreviousEntityRecord,\n\t\t\tdefaultRenderingMode: 'post-only',\n\t\t} ),\n\t\t[ settings, onNavigateToEntityRecord, onNavigateToPreviousEntityRecord ]\n\t);\n\tconst styles = useEditorStyles();\n\n\t// We need to add the show-icon-labels class to the body element so it is applied to modals.\n\tif ( showIconLabels ) {\n\t\tdocument.body.classList.add( 'show-icon-labels' );\n\t} else {\n\t\tdocument.body.classList.remove( 'show-icon-labels' );\n\t}\n\n\tconst navigateRegionsProps = useNavigateRegions();\n\n\tconst className = clsx( 'edit-post-layout', 'is-mode-' + mode, {\n\t\t'has-metaboxes': hasActiveMetaboxes,\n\t} );\n\n\tfunction onPluginAreaError( name ) {\n\t\tcreateErrorNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: plugin name */\n\t\t\t\t__(\n\t\t\t\t\t'The \"%s\" plugin has encountered an error and cannot be rendered.'\n\t\t\t\t),\n\t\t\t\tname\n\t\t\t)\n\t\t);\n\t}\n\n\tconst { createSuccessNotice } = useDispatch( noticesStore );\n\n\tconst onActionPerformed = useCallback(\n\t\t( actionId, items ) => {\n\t\t\tswitch ( actionId ) {\n\t\t\t\tcase 'move-to-trash':\n\t\t\t\t\t{\n\t\t\t\t\t\tdocument.location.href = addQueryArgs( 'edit.php', {\n\t\t\t\t\t\t\ttrashed: 1,\n\t\t\t\t\t\t\tpost_type: items[ 0 ].type,\n\t\t\t\t\t\t\tids: items[ 0 ].id,\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'duplicate-post':\n\t\t\t\t\t{\n\t\t\t\t\t\tconst newItem = items[ 0 ];\n\t\t\t\t\t\tconst title =\n\t\t\t\t\t\t\ttypeof newItem.title === 'string'\n\t\t\t\t\t\t\t\t? newItem.title\n\t\t\t\t\t\t\t\t: newItem.title?.rendered;\n\t\t\t\t\t\tcreateSuccessNotice(\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t// translators: %s: Title of the created post or template, e.g: \"Hello world\".\n\t\t\t\t\t\t\t\t__( '\"%s\" successfully created.' ),\n\t\t\t\t\t\t\t\tdecodeEntities( title )\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t\t\t\tid: 'duplicate-post-action',\n\t\t\t\t\t\t\t\tactions: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tlabel: __( 'Edit' ),\n\t\t\t\t\t\t\t\t\t\tonClick: () => {\n\t\t\t\t\t\t\t\t\t\t\tconst postId = newItem.id;\n\t\t\t\t\t\t\t\t\t\t\tdocument.location.href =\n\t\t\t\t\t\t\t\t\t\t\t\taddQueryArgs( 'post.php', {\n\t\t\t\t\t\t\t\t\t\t\t\t\tpost: postId,\n\t\t\t\t\t\t\t\t\t\t\t\t\taction: 'edit',\n\t\t\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t},\n\t\t[ createSuccessNotice ]\n\t);\n\n\tconst initialPost = useMemo( () => {\n\t\treturn {\n\t\t\ttype: initialPostType,\n\t\t\tid: initialPostId,\n\t\t};\n\t}, [ initialPostType, initialPostId ] );\n\n\tconst backButton =\n\t\tuseViewportMatch( 'medium' ) && isFullscreenActive ? (\n\t\t\t<BackButton initialPost={ initialPost } />\n\t\t) : null;\n\n\treturn (\n\t\t<SlotFillProvider>\n\t\t\t<ErrorBoundary>\n\t\t\t\t<CommandMenu />\n\t\t\t\t<WelcomeGuide postType={ currentPostType } />\n\t\t\t\t<div\n\t\t\t\t\tclassName={ navigateRegionsProps.className }\n\t\t\t\t\t{ ...navigateRegionsProps }\n\t\t\t\t\tref={ navigateRegionsProps.ref }\n\t\t\t\t>\n\t\t\t\t\t<Editor\n\t\t\t\t\t\tsettings={ editorSettings }\n\t\t\t\t\t\tinitialEdits={ initialEdits }\n\t\t\t\t\t\tpostType={ currentPostType }\n\t\t\t\t\t\tpostId={ currentPostId }\n\t\t\t\t\t\ttemplateId={ templateId }\n\t\t\t\t\t\tclassName={ className }\n\t\t\t\t\t\tstyles={ styles }\n\t\t\t\t\t\tforceIsDirty={ hasActiveMetaboxes }\n\t\t\t\t\t\tcontentRef={ paddingAppenderRef }\n\t\t\t\t\t\tdisableIframe={ ! shouldIframe }\n\t\t\t\t\t\t// We should auto-focus the canvas (title) on load.\n\t\t\t\t\t\t// eslint-disable-next-line jsx-a11y/no-autofocus\n\t\t\t\t\t\tautoFocus={ ! isWelcomeGuideVisible }\n\t\t\t\t\t\tonActionPerformed={ onActionPerformed }\n\t\t\t\t\t\textraSidebarPanels={\n\t\t\t\t\t\t\tshowMetaBoxes && <MetaBoxes location=\"side\" />\n\t\t\t\t\t\t}\n\t\t\t\t\t\textraContent={\n\t\t\t\t\t\t\t! isDistractionFree &&\n\t\t\t\t\t\t\tshowMetaBoxes && (\n\t\t\t\t\t\t\t\t<MetaBoxesMain\n\t\t\t\t\t\t\t\t\tisLegacy={\n\t\t\t\t\t\t\t\t\t\t! shouldIframe || isDevicePreview\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}\n\t\t\t\t\t>\n\t\t\t\t\t\t<PostLockedModal />\n\t\t\t\t\t\t<EditorInitialization />\n\t\t\t\t\t\t<FullscreenMode isActive={ isFullscreenActive } />\n\t\t\t\t\t\t<BrowserURL hasHistory={ hasHistory } />\n\t\t\t\t\t\t<UnsavedChangesWarning />\n\t\t\t\t\t\t<AutosaveMonitor />\n\t\t\t\t\t\t<LocalAutosaveMonitor />\n\t\t\t\t\t\t<EditPostKeyboardShortcuts />\n\t\t\t\t\t\t<EditorKeyboardShortcutsRegister />\n\t\t\t\t\t\t<BlockKeyboardShortcuts />\n\t\t\t\t\t\t<InitPatternModal />\n\t\t\t\t\t\t<PluginArea onError={ onPluginAreaError } />\n\t\t\t\t\t\t<PostEditorMoreMenu />\n\t\t\t\t\t\t{ backButton }\n\t\t\t\t\t\t<EditorSnackbars />\n\t\t\t\t\t</Editor>\n\t\t\t\t</div>\n\t\t\t</ErrorBoundary>\n\t\t</SlotFillProvider>\n\t);\n}\n\nexport default Layout;\n"],"mappings":"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","ignoreList":[]}
@@ -1,9 +1,7 @@
1
1
  /**
2
2
  * WordPress dependencies
3
3
  */
4
- import { useSelect, useRegistry } from '@wordpress/data';
5
- import { useEffect } from '@wordpress/element';
6
- import { store as editorStore } from '@wordpress/editor';
4
+ import { useSelect } from '@wordpress/data';
7
5
 
8
6
  /**
9
7
  * Internal dependencies
@@ -17,38 +15,7 @@ import { jsxs as _jsxs } from "react/jsx-runtime";
17
15
  export default function MetaBoxes({
18
16
  location
19
17
  }) {
20
- const registry = useRegistry();
21
- const {
22
- metaBoxes,
23
- areMetaBoxesInitialized,
24
- isEditorReady
25
- } = useSelect(select => {
26
- const {
27
- __unstableIsEditorReady
28
- } = select(editorStore);
29
- const {
30
- getMetaBoxesPerLocation,
31
- areMetaBoxesInitialized: _areMetaBoxesInitialized
32
- } = select(editPostStore);
33
- return {
34
- metaBoxes: getMetaBoxesPerLocation(location),
35
- areMetaBoxesInitialized: _areMetaBoxesInitialized(),
36
- isEditorReady: __unstableIsEditorReady()
37
- };
38
- }, [location]);
39
- const hasMetaBoxes = !!metaBoxes?.length;
40
-
41
- // When editor is ready, initialize postboxes (wp core script) and metabox
42
- // saving. This initializes all meta box locations, not just this specific
43
- // one.
44
- useEffect(() => {
45
- if (isEditorReady && hasMetaBoxes && !areMetaBoxesInitialized) {
46
- registry.dispatch(editPostStore).initializeMetaBoxes();
47
- }
48
- }, [isEditorReady, hasMetaBoxes, areMetaBoxesInitialized]);
49
- if (!areMetaBoxesInitialized) {
50
- return null;
51
- }
18
+ const metaBoxes = useSelect(select => select(editPostStore).getMetaBoxesPerLocation(location), [location]);
52
19
  return /*#__PURE__*/_jsxs(_Fragment, {
53
20
  children: [(metaBoxes !== null && metaBoxes !== void 0 ? metaBoxes : []).map(({
54
21
  id
@@ -1 +1 @@
1
- {"version":3,"names":["useSelect","useRegistry","useEffect","store","editorStore","MetaBoxesArea","MetaBoxVisibility","editPostStore","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","MetaBoxes","location","registry","metaBoxes","areMetaBoxesInitialized","isEditorReady","select","__unstableIsEditorReady","getMetaBoxesPerLocation","_areMetaBoxesInitialized","hasMetaBoxes","length","dispatch","initializeMetaBoxes","children","map","id"],"sources":["@wordpress/edit-post/src/components/meta-boxes/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useRegistry } from '@wordpress/data';\nimport { useEffect } from '@wordpress/element';\nimport { store as editorStore } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport MetaBoxesArea from './meta-boxes-area';\nimport MetaBoxVisibility from './meta-box-visibility';\nimport { store as editPostStore } from '../../store';\n\nexport default function MetaBoxes( { location } ) {\n\tconst registry = useRegistry();\n\tconst { metaBoxes, areMetaBoxesInitialized, isEditorReady } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { __unstableIsEditorReady } = select( editorStore );\n\t\t\tconst {\n\t\t\t\tgetMetaBoxesPerLocation,\n\t\t\t\tareMetaBoxesInitialized: _areMetaBoxesInitialized,\n\t\t\t} = select( editPostStore );\n\t\t\treturn {\n\t\t\t\tmetaBoxes: getMetaBoxesPerLocation( location ),\n\t\t\t\tareMetaBoxesInitialized: _areMetaBoxesInitialized(),\n\t\t\t\tisEditorReady: __unstableIsEditorReady(),\n\t\t\t};\n\t\t},\n\t\t[ location ]\n\t);\n\n\tconst hasMetaBoxes = !! metaBoxes?.length;\n\n\t// When editor is ready, initialize postboxes (wp core script) and metabox\n\t// saving. This initializes all meta box locations, not just this specific\n\t// one.\n\tuseEffect( () => {\n\t\tif ( isEditorReady && hasMetaBoxes && ! areMetaBoxesInitialized ) {\n\t\t\tregistry.dispatch( editPostStore ).initializeMetaBoxes();\n\t\t}\n\t}, [ isEditorReady, hasMetaBoxes, areMetaBoxesInitialized ] );\n\n\tif ( ! areMetaBoxesInitialized ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ ( metaBoxes ?? [] ).map( ( { id } ) => (\n\t\t\t\t<MetaBoxVisibility key={ id } id={ id } />\n\t\t\t) ) }\n\t\t\t<MetaBoxesArea location={ location } />\n\t\t</>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,EAAEC,WAAW,QAAQ,iBAAiB;AACxD,SAASC,SAAS,QAAQ,oBAAoB;AAC9C,SAASC,KAAK,IAAIC,WAAW,QAAQ,mBAAmB;;AAExD;AACA;AACA;AACA,OAAOC,aAAa,MAAM,mBAAmB;AAC7C,OAAOC,iBAAiB,MAAM,uBAAuB;AACrD,SAASH,KAAK,IAAII,aAAa,QAAQ,aAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,QAAA,IAAAC,SAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAErD,eAAe,SAASC,SAASA,CAAE;EAAEC;AAAS,CAAC,EAAG;EACjD,MAAMC,QAAQ,GAAGf,WAAW,CAAC,CAAC;EAC9B,MAAM;IAAEgB,SAAS;IAAEC,uBAAuB;IAAEC;EAAc,CAAC,GAAGnB,SAAS,CACpEoB,MAAM,IAAM;IACb,MAAM;MAAEC;IAAwB,CAAC,GAAGD,MAAM,CAAEhB,WAAY,CAAC;IACzD,MAAM;MACLkB,uBAAuB;MACvBJ,uBAAuB,EAAEK;IAC1B,CAAC,GAAGH,MAAM,CAAEb,aAAc,CAAC;IAC3B,OAAO;MACNU,SAAS,EAAEK,uBAAuB,CAAEP,QAAS,CAAC;MAC9CG,uBAAuB,EAAEK,wBAAwB,CAAC,CAAC;MACnDJ,aAAa,EAAEE,uBAAuB,CAAC;IACxC,CAAC;EACF,CAAC,EACD,CAAEN,QAAQ,CACX,CAAC;EAED,MAAMS,YAAY,GAAG,CAAC,CAAEP,SAAS,EAAEQ,MAAM;;EAEzC;EACA;EACA;EACAvB,SAAS,CAAE,MAAM;IAChB,IAAKiB,aAAa,IAAIK,YAAY,IAAI,CAAEN,uBAAuB,EAAG;MACjEF,QAAQ,CAACU,QAAQ,CAAEnB,aAAc,CAAC,CAACoB,mBAAmB,CAAC,CAAC;IACzD;EACD,CAAC,EAAE,CAAER,aAAa,EAAEK,YAAY,EAAEN,uBAAuB,CAAG,CAAC;EAE7D,IAAK,CAAEA,uBAAuB,EAAG;IAChC,OAAO,IAAI;EACZ;EAEA,oBACCL,KAAA,CAAAF,SAAA;IAAAiB,QAAA,GACG,CAAEX,SAAS,aAATA,SAAS,cAATA,SAAS,GAAI,EAAE,EAAGY,GAAG,CAAE,CAAE;MAAEC;IAAG,CAAC,kBAClCrB,IAAA,CAACH,iBAAiB;MAAYwB,EAAE,EAAGA;IAAI,GAAdA,EAAgB,CACxC,CAAC,eACHrB,IAAA,CAACJ,aAAa;MAACU,QAAQ,EAAGA;IAAU,CAAE,CAAC;EAAA,CACtC,CAAC;AAEL","ignoreList":[]}
1
+ {"version":3,"names":["useSelect","MetaBoxesArea","MetaBoxVisibility","store","editPostStore","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","MetaBoxes","location","metaBoxes","select","getMetaBoxesPerLocation","children","map","id"],"sources":["@wordpress/edit-post/src/components/meta-boxes/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport MetaBoxesArea from './meta-boxes-area';\nimport MetaBoxVisibility from './meta-box-visibility';\nimport { store as editPostStore } from '../../store';\n\nexport default function MetaBoxes( { location } ) {\n\tconst metaBoxes = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editPostStore ).getMetaBoxesPerLocation( location ),\n\t\t[ location ]\n\t);\n\treturn (\n\t\t<>\n\t\t\t{ ( metaBoxes ?? [] ).map( ( { id } ) => (\n\t\t\t\t<MetaBoxVisibility key={ id } id={ id } />\n\t\t\t) ) }\n\t\t\t<MetaBoxesArea location={ location } />\n\t\t</>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,iBAAiB;;AAE3C;AACA;AACA;AACA,OAAOC,aAAa,MAAM,mBAAmB;AAC7C,OAAOC,iBAAiB,MAAM,uBAAuB;AACrD,SAASC,KAAK,IAAIC,aAAa,QAAQ,aAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,QAAA,IAAAC,SAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAErD,eAAe,SAASC,SAASA,CAAE;EAAEC;AAAS,CAAC,EAAG;EACjD,MAAMC,SAAS,GAAGb,SAAS,CACxBc,MAAM,IACPA,MAAM,CAAEV,aAAc,CAAC,CAACW,uBAAuB,CAAEH,QAAS,CAAC,EAC5D,CAAEA,QAAQ,CACX,CAAC;EACD,oBACCF,KAAA,CAAAF,SAAA;IAAAQ,QAAA,GACG,CAAEH,SAAS,aAATA,SAAS,cAATA,SAAS,GAAI,EAAE,EAAGI,GAAG,CAAE,CAAE;MAAEC;IAAG,CAAC,kBAClCZ,IAAA,CAACJ,iBAAiB;MAAYgB,EAAE,EAAGA;IAAI,GAAdA,EAAgB,CACxC,CAAC,eACHZ,IAAA,CAACL,aAAa;MAACW,QAAQ,EAAGA;IAAU,CAAE,CAAC;EAAA,CACtC,CAAC;AAEL","ignoreList":[]}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { useDispatch, useSelect } from '@wordpress/data';
5
+ import { store as editorStore } from '@wordpress/editor';
6
+ import { useEffect } from '@wordpress/element';
7
+
8
+ /**
9
+ * Internal dependencies
10
+ */
11
+ import { store as editPostStore } from '../../store';
12
+
13
+ /**
14
+ * Initializes WordPress `postboxes` script and the logic for saving meta boxes.
15
+ *
16
+ * @param { boolean } enabled
17
+ */
18
+ export const useMetaBoxInitialization = enabled => {
19
+ const isEnabledAndEditorReady = useSelect(select => enabled && select(editorStore).__unstableIsEditorReady(), [enabled]);
20
+ const {
21
+ initializeMetaBoxes
22
+ } = useDispatch(editPostStore);
23
+ // The effect has to rerun when the editor is ready because initializeMetaBoxes
24
+ // will noop until then.
25
+ useEffect(() => {
26
+ if (isEnabledAndEditorReady) {
27
+ initializeMetaBoxes();
28
+ }
29
+ }, [isEnabledAndEditorReady, initializeMetaBoxes]);
30
+ };
31
+ //# sourceMappingURL=use-meta-box-initialization.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useDispatch","useSelect","store","editorStore","useEffect","editPostStore","useMetaBoxInitialization","enabled","isEnabledAndEditorReady","select","__unstableIsEditorReady","initializeMetaBoxes"],"sources":["@wordpress/edit-post/src/components/meta-boxes/use-meta-box-initialization.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { store as editorStore } from '@wordpress/editor';\nimport { useEffect } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../store';\n\n/**\n * Initializes WordPress `postboxes` script and the logic for saving meta boxes.\n *\n * @param { boolean } enabled\n */\nexport const useMetaBoxInitialization = ( enabled ) => {\n\tconst isEnabledAndEditorReady = useSelect(\n\t\t( select ) =>\n\t\t\tenabled && select( editorStore ).__unstableIsEditorReady(),\n\t\t[ enabled ]\n\t);\n\tconst { initializeMetaBoxes } = useDispatch( editPostStore );\n\t// The effect has to rerun when the editor is ready because initializeMetaBoxes\n\t// will noop until then.\n\tuseEffect( () => {\n\t\tif ( isEnabledAndEditorReady ) {\n\t\t\tinitializeMetaBoxes();\n\t\t}\n\t}, [ isEnabledAndEditorReady, initializeMetaBoxes ] );\n};\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAW,EAAEC,SAAS,QAAQ,iBAAiB;AACxD,SAASC,KAAK,IAAIC,WAAW,QAAQ,mBAAmB;AACxD,SAASC,SAAS,QAAQ,oBAAoB;;AAE9C;AACA;AACA;AACA,SAASF,KAAK,IAAIG,aAAa,QAAQ,aAAa;;AAEpD;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,wBAAwB,GAAKC,OAAO,IAAM;EACtD,MAAMC,uBAAuB,GAAGP,SAAS,CACtCQ,MAAM,IACPF,OAAO,IAAIE,MAAM,CAAEN,WAAY,CAAC,CAACO,uBAAuB,CAAC,CAAC,EAC3D,CAAEH,OAAO,CACV,CAAC;EACD,MAAM;IAAEI;EAAoB,CAAC,GAAGX,WAAW,CAAEK,aAAc,CAAC;EAC5D;EACA;EACAD,SAAS,CAAE,MAAM;IAChB,IAAKI,uBAAuB,EAAG;MAC9BG,mBAAmB,CAAC,CAAC;IACtB;EACD,CAAC,EAAE,CAAEH,uBAAuB,EAAEG,mBAAmB,CAAG,CAAC;AACtD,CAAC","ignoreList":[]}
@@ -278,9 +278,11 @@
278
278
  clear: both;
279
279
  }
280
280
 
281
- .has-metaboxes .editor-visual-editor {
282
- flex: 1;
281
+ .has-metaboxes .interface-interface-skeleton__content:has(.edit-post-meta-boxes-main) .editor-visual-editor {
282
+ flex-shrink: 1;
283
+ flex-basis: 0%;
283
284
  }
285
+
284
286
  .has-metaboxes .editor-visual-editor.is-iframed {
285
287
  isolation: isolate;
286
288
  }
@@ -278,9 +278,11 @@
278
278
  clear: both;
279
279
  }
280
280
 
281
- .has-metaboxes .editor-visual-editor {
282
- flex: 1;
281
+ .has-metaboxes .interface-interface-skeleton__content:has(.edit-post-meta-boxes-main) .editor-visual-editor {
282
+ flex-shrink: 1;
283
+ flex-basis: 0%;
283
284
  }
285
+
284
286
  .has-metaboxes .editor-visual-editor.is-iframed {
285
287
  isolation: isolate;
286
288
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/edit-post",
3
- "version": "8.8.18",
3
+ "version": "8.8.20",
4
4
  "description": "Edit Post module for WordPress.",
5
5
  "author": "The WordPress Contributors",
6
6
  "license": "GPL-2.0-or-later",
@@ -30,33 +30,33 @@
30
30
  "@babel/runtime": "^7.16.0",
31
31
  "@wordpress/a11y": "^4.8.2",
32
32
  "@wordpress/api-fetch": "^7.8.2",
33
- "@wordpress/block-editor": "^14.3.15",
34
- "@wordpress/block-library": "^9.8.16",
35
- "@wordpress/blocks": "^13.8.5",
36
- "@wordpress/commands": "^1.8.11",
37
- "@wordpress/components": "^28.8.11",
38
- "@wordpress/compose": "^7.8.3",
39
- "@wordpress/core-commands": "^1.8.15",
40
- "@wordpress/core-data": "^7.8.15",
41
- "@wordpress/data": "^10.8.3",
33
+ "@wordpress/block-editor": "^14.3.16",
34
+ "@wordpress/block-library": "^9.8.17",
35
+ "@wordpress/blocks": "^13.8.6",
36
+ "@wordpress/commands": "^1.8.12",
37
+ "@wordpress/components": "^28.8.12",
38
+ "@wordpress/compose": "^7.8.4",
39
+ "@wordpress/core-commands": "^1.8.16",
40
+ "@wordpress/core-data": "^7.8.16",
41
+ "@wordpress/data": "^10.8.4",
42
42
  "@wordpress/deprecated": "^4.8.2",
43
43
  "@wordpress/dom": "^4.8.2",
44
- "@wordpress/editor": "^14.8.18",
44
+ "@wordpress/editor": "^14.8.19",
45
45
  "@wordpress/element": "^6.8.1",
46
46
  "@wordpress/hooks": "^4.8.2",
47
47
  "@wordpress/html-entities": "^4.8.1",
48
48
  "@wordpress/i18n": "^5.8.2",
49
49
  "@wordpress/icons": "^10.8.2",
50
- "@wordpress/keyboard-shortcuts": "^5.8.3",
50
+ "@wordpress/keyboard-shortcuts": "^5.8.4",
51
51
  "@wordpress/keycodes": "^4.8.2",
52
- "@wordpress/notices": "^5.8.3",
53
- "@wordpress/plugins": "^7.8.11",
54
- "@wordpress/preferences": "^4.8.11",
52
+ "@wordpress/notices": "^5.8.4",
53
+ "@wordpress/plugins": "^7.8.12",
54
+ "@wordpress/preferences": "^4.8.12",
55
55
  "@wordpress/private-apis": "^1.8.1",
56
56
  "@wordpress/url": "^4.8.1",
57
- "@wordpress/viewport": "^6.8.3",
57
+ "@wordpress/viewport": "^6.8.4",
58
58
  "@wordpress/warning": "^3.8.1",
59
- "@wordpress/widgets": "^4.8.15",
59
+ "@wordpress/widgets": "^4.8.16",
60
60
  "clsx": "^2.1.1",
61
61
  "memize": "^2.1.0"
62
62
  },
@@ -67,5 +67,5 @@
67
67
  "publishConfig": {
68
68
  "access": "public"
69
69
  },
70
- "gitHead": "b4f9e40fa1944235c886804a611f001a91d19680"
70
+ "gitHead": "1446c6b709590e4822f0c47c030e7bc0d1731b23"
71
71
  }
@@ -74,6 +74,7 @@ import useEditPostCommands from '../../commands/use-commands';
74
74
  import { usePaddingAppender } from './use-padding-appender';
75
75
  import { useShouldIframe } from './use-should-iframe';
76
76
  import useNavigateToEntityRecord from '../../hooks/use-navigate-to-entity-record';
77
+ import { useMetaBoxInitialization } from '../meta-boxes/use-meta-box-initialization';
77
78
 
78
79
  const { getLayoutStyles } = unlock( blockEditorPrivateApis );
79
80
  const { useCommands } = unlock( coreCommandsPrivateApis );
@@ -417,6 +418,7 @@ function Layout( {
417
418
  hasHistory,
418
419
  isWelcomeGuideVisible,
419
420
  templateId,
421
+ isDevicePreview,
420
422
  } = useSelect(
421
423
  ( select ) => {
422
424
  const { get } = select( preferencesStore );
@@ -424,6 +426,7 @@ function Layout( {
424
426
  select( editPostStore )
425
427
  );
426
428
  const { canUser, getPostType } = select( coreStore );
429
+ const { getDeviceType, getEditorMode } = select( editorStore );
427
430
  const { __unstableGetEditorMode } = unlock(
428
431
  select( blockEditorStore )
429
432
  );
@@ -439,7 +442,7 @@ function Layout( {
439
442
  const isZoomOut = __unstableGetEditorMode() === 'zoom-out';
440
443
 
441
444
  return {
442
- mode: select( editorStore ).getEditorMode(),
445
+ mode: getEditorMode(),
443
446
  isFullscreenActive:
444
447
  select( editPostStore ).isFeatureActive( 'fullscreenMode' ),
445
448
  hasActiveMetaboxes: select( editPostStore ).hasMetaBoxes(),
@@ -449,7 +452,6 @@ function Layout( {
449
452
  isDistractionFree: get( 'core', 'distractionFree' ),
450
453
  showMetaBoxes:
451
454
  ! DESIGN_POST_TYPES.includes( currentPostType ) &&
452
- select( editorStore ).getRenderingMode() === 'post-only' &&
453
455
  ! isZoomOut,
454
456
  isWelcomeGuideVisible: isFeatureActive( 'welcomeGuide' ),
455
457
  templateId:
@@ -459,10 +461,12 @@ function Layout( {
459
461
  ! isEditingTemplate
460
462
  ? getEditedPostTemplateId()
461
463
  : null,
464
+ isDevicePreview: getDeviceType() !== 'Desktop',
462
465
  };
463
466
  },
464
467
  [ currentPostType, isEditingTemplate, settings.supportsTemplateMode ]
465
468
  );
469
+ useMetaBoxInitialization( hasActiveMetaboxes );
466
470
 
467
471
  // Set the right context for the command palette
468
472
  const commandContext = hasBlockSelected
@@ -600,7 +604,11 @@ function Layout( {
600
604
  extraContent={
601
605
  ! isDistractionFree &&
602
606
  showMetaBoxes && (
603
- <MetaBoxesMain isLegacy={ ! shouldIframe } />
607
+ <MetaBoxesMain
608
+ isLegacy={
609
+ ! shouldIframe || isDevicePreview
610
+ }
611
+ />
604
612
  )
605
613
  }
606
614
  >
@@ -106,12 +106,15 @@
106
106
  clear: both;
107
107
  }
108
108
 
109
- .has-metaboxes .editor-visual-editor {
110
- flex: 1;
109
+ // Only when the split view is active the visual editor should allow shrinking and
110
+ // its main size should be zero.
111
+ .has-metaboxes .interface-interface-skeleton__content:has(.edit-post-meta-boxes-main) .editor-visual-editor {
112
+ flex-shrink: 1;
113
+ flex-basis: 0%;
114
+ }
111
115
 
112
- &.is-iframed {
113
- isolation: isolate;
114
- }
116
+ .has-metaboxes .editor-visual-editor.is-iframed {
117
+ isolation: isolate;
115
118
  }
116
119
 
117
120
  // Adjust the position of the notices
@@ -1,9 +1,7 @@
1
1
  /**
2
2
  * WordPress dependencies
3
3
  */
4
- import { useSelect, useRegistry } from '@wordpress/data';
5
- import { useEffect } from '@wordpress/element';
6
- import { store as editorStore } from '@wordpress/editor';
4
+ import { useSelect } from '@wordpress/data';
7
5
 
8
6
  /**
9
7
  * Internal dependencies
@@ -13,38 +11,11 @@ import MetaBoxVisibility from './meta-box-visibility';
13
11
  import { store as editPostStore } from '../../store';
14
12
 
15
13
  export default function MetaBoxes( { location } ) {
16
- const registry = useRegistry();
17
- const { metaBoxes, areMetaBoxesInitialized, isEditorReady } = useSelect(
18
- ( select ) => {
19
- const { __unstableIsEditorReady } = select( editorStore );
20
- const {
21
- getMetaBoxesPerLocation,
22
- areMetaBoxesInitialized: _areMetaBoxesInitialized,
23
- } = select( editPostStore );
24
- return {
25
- metaBoxes: getMetaBoxesPerLocation( location ),
26
- areMetaBoxesInitialized: _areMetaBoxesInitialized(),
27
- isEditorReady: __unstableIsEditorReady(),
28
- };
29
- },
14
+ const metaBoxes = useSelect(
15
+ ( select ) =>
16
+ select( editPostStore ).getMetaBoxesPerLocation( location ),
30
17
  [ location ]
31
18
  );
32
-
33
- const hasMetaBoxes = !! metaBoxes?.length;
34
-
35
- // When editor is ready, initialize postboxes (wp core script) and metabox
36
- // saving. This initializes all meta box locations, not just this specific
37
- // one.
38
- useEffect( () => {
39
- if ( isEditorReady && hasMetaBoxes && ! areMetaBoxesInitialized ) {
40
- registry.dispatch( editPostStore ).initializeMetaBoxes();
41
- }
42
- }, [ isEditorReady, hasMetaBoxes, areMetaBoxesInitialized ] );
43
-
44
- if ( ! areMetaBoxesInitialized ) {
45
- return null;
46
- }
47
-
48
19
  return (
49
20
  <>
50
21
  { ( metaBoxes ?? [] ).map( ( { id } ) => (
@@ -0,0 +1,32 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { useDispatch, useSelect } from '@wordpress/data';
5
+ import { store as editorStore } from '@wordpress/editor';
6
+ import { useEffect } from '@wordpress/element';
7
+
8
+ /**
9
+ * Internal dependencies
10
+ */
11
+ import { store as editPostStore } from '../../store';
12
+
13
+ /**
14
+ * Initializes WordPress `postboxes` script and the logic for saving meta boxes.
15
+ *
16
+ * @param { boolean } enabled
17
+ */
18
+ export const useMetaBoxInitialization = ( enabled ) => {
19
+ const isEnabledAndEditorReady = useSelect(
20
+ ( select ) =>
21
+ enabled && select( editorStore ).__unstableIsEditorReady(),
22
+ [ enabled ]
23
+ );
24
+ const { initializeMetaBoxes } = useDispatch( editPostStore );
25
+ // The effect has to rerun when the editor is ready because initializeMetaBoxes
26
+ // will noop until then.
27
+ useEffect( () => {
28
+ if ( isEnabledAndEditorReady ) {
29
+ initializeMetaBoxes();
30
+ }
31
+ }, [ isEnabledAndEditorReady, initializeMetaBoxes ] );
32
+ };