@wordpress/edit-post 8.8.7 → 8.8.8

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.
@@ -12,6 +12,7 @@ import { privateApis as blockEditorPrivateApis, store as blockEditorStore } from
12
12
  import { PluginArea } from '@wordpress/plugins';
13
13
  import { __, sprintf } from '@wordpress/i18n';
14
14
  import { useCallback, useMemo, useId, useRef, useState } from '@wordpress/element';
15
+ import { chevronDown, chevronUp } from '@wordpress/icons';
15
16
  import { store as noticesStore } from '@wordpress/notices';
16
17
  import { store as preferencesStore } from '@wordpress/preferences';
17
18
  import { CommandMenu, privateApis as commandsPrivateApis } from '@wordpress/commands';
@@ -20,7 +21,7 @@ import { privateApis as blockLibraryPrivateApis } from '@wordpress/block-library
20
21
  import { addQueryArgs } from '@wordpress/url';
21
22
  import { decodeEntities } from '@wordpress/html-entities';
22
23
  import { store as coreStore } from '@wordpress/core-data';
23
- import { ResizableBox, SlotFillProvider, Tooltip, VisuallyHidden } from '@wordpress/components';
24
+ import { Icon, ResizableBox, SlotFillProvider, Tooltip, VisuallyHidden, __unstableUseNavigateRegions as useNavigateRegions } from '@wordpress/components';
24
25
  import { useMediaQuery, useRefEffect, useViewportMatch } from '@wordpress/compose';
25
26
 
26
27
  /**
@@ -54,7 +55,8 @@ const {
54
55
  } = unlock(commandsPrivateApis);
55
56
  const {
56
57
  Editor,
57
- FullscreenMode
58
+ FullscreenMode,
59
+ NavigableRegion
58
60
  } = unlock(editorPrivateApis);
59
61
  const {
60
62
  BlockKeyboardShortcuts
@@ -139,7 +141,7 @@ function MetaBoxesMain({
139
141
  const {
140
142
  set: setPreference
141
143
  } = useDispatch(preferencesStore);
142
- const resizableBoxRef = useRef();
144
+ const metaBoxesMainRef = useRef();
143
145
  const isShort = useMediaQuery('(max-height: 549px)');
144
146
  const [{
145
147
  min,
@@ -151,8 +153,8 @@ function MetaBoxesMain({
151
153
  const effectSizeConstraints = useRefEffect(node => {
152
154
  const container = node.closest('.interface-interface-skeleton__content');
153
155
  const noticeLists = container.querySelectorAll(':scope > .components-notice-list');
154
- const resizeHandle = container.querySelector('.edit-post-meta-boxes-main__resize-handle');
155
- const actualize = () => {
156
+ const resizeHandle = container.querySelector('.edit-post-meta-boxes-main__presenter');
157
+ const deriveConstraints = () => {
156
158
  const fullHeight = container.offsetHeight;
157
159
  let nextMax = fullHeight;
158
160
  for (const element of noticeLists) {
@@ -164,7 +166,7 @@ function MetaBoxesMain({
164
166
  max: nextMax
165
167
  });
166
168
  };
167
- const observer = new window.ResizeObserver(actualize);
169
+ const observer = new window.ResizeObserver(deriveConstraints);
168
170
  observer.observe(container);
169
171
  for (const element of noticeLists) {
170
172
  observer.observe(element);
@@ -174,14 +176,32 @@ function MetaBoxesMain({
174
176
  const separatorRef = useRef();
175
177
  const separatorHelpId = useId();
176
178
  const [isUntouched, setIsUntouched] = useState(true);
179
+ const applyHeight = (candidateHeight, isPersistent, isInstant) => {
180
+ const nextHeight = Math.min(max, Math.max(min, candidateHeight));
181
+ if (isPersistent) {
182
+ setPreference('core/edit-post', 'metaBoxesMainOpenHeight', nextHeight);
183
+ } else {
184
+ separatorRef.current.ariaValueNow = getAriaValueNow(nextHeight);
185
+ }
186
+ if (isInstant) {
187
+ metaBoxesMainRef.current.updateSize({
188
+ height: nextHeight,
189
+ // Oddly, when the event that triggered this was not from the mouse (e.g. keydown),
190
+ // if `width` is left unspecified a subsequent drag gesture applies a fixed
191
+ // width and the pane fails to widen/narrow with parent width changes from
192
+ // sidebars opening/closing or window resizes.
193
+ width: 'auto'
194
+ });
195
+ }
196
+ };
177
197
  if (!hasAnyVisible) {
178
198
  return;
179
199
  }
180
- const className = 'edit-post-meta-boxes-main';
181
200
  const contents = /*#__PURE__*/_jsxs("div", {
182
201
  className: clsx(
183
202
  // The class name 'edit-post-layout__metaboxes' is retained because some plugins use it.
184
203
  'edit-post-layout__metaboxes', !isLegacy && 'edit-post-meta-boxes-main__liner'),
204
+ hidden: !isLegacy && isShort && !isOpen,
185
205
  children: [/*#__PURE__*/_jsx(MetaBoxes, {
186
206
  location: "normal"
187
207
  }), /*#__PURE__*/_jsx(MetaBoxes, {
@@ -199,20 +219,7 @@ function MetaBoxesMain({
199
219
  }
200
220
  const getAriaValueNow = height => Math.round((height - min) / (max - min) * 100);
201
221
  const usedAriaValueNow = max === undefined || isAutoHeight ? 50 : getAriaValueNow(openHeight);
202
- if (isShort) {
203
- return /*#__PURE__*/_jsxs("details", {
204
- className: className,
205
- open: isOpen,
206
- onToggle: ({
207
- target
208
- }) => {
209
- setPreference('core/edit-post', 'metaBoxesMainIsOpen', target.open);
210
- },
211
- children: [/*#__PURE__*/_jsx("summary", {
212
- children: __('Meta Boxes')
213
- }), contents]
214
- });
215
- }
222
+ const toggle = () => setPreference('core/edit-post', 'metaBoxesMainIsOpen', !isOpen);
216
223
 
217
224
  // TODO: Support more/all keyboard interactions from the window splitter pattern:
218
225
  // https://www.w3.org/WAI/ARIA/apg/patterns/windowsplitter/
@@ -222,99 +229,97 @@ function MetaBoxesMain({
222
229
  ArrowDown: -20
223
230
  }[event.key];
224
231
  if (delta) {
225
- const {
226
- resizable
227
- } = resizableBoxRef.current;
228
- const fromHeight = isAutoHeight ? resizable.offsetHeight : openHeight;
229
- const nextHeight = Math.min(max, Math.max(min, delta + fromHeight));
230
- resizableBoxRef.current.updateSize({
231
- height: nextHeight,
232
- // Oddly, if left unspecified a subsequent drag gesture applies a fixed
233
- // width and the pane fails to shrink/grow with parent width changes from
234
- // sidebars opening/closing or window resizes.
235
- width: 'auto'
236
- });
237
- setPreference('core/edit-post', 'metaBoxesMainOpenHeight', nextHeight);
232
+ const pane = metaBoxesMainRef.current.resizable;
233
+ const fromHeight = isAutoHeight ? pane.offsetHeight : openHeight;
234
+ const nextHeight = delta + fromHeight;
235
+ applyHeight(nextHeight, true, true);
236
+ event.preventDefault();
238
237
  }
239
238
  };
240
- return /*#__PURE__*/_jsxs(ResizableBox, {
241
- className: className,
242
- defaultSize: {
243
- height: openHeight
244
- },
245
- ref: resizableBoxRef,
246
- enable: {
247
- top: true,
248
- right: false,
249
- bottom: false,
250
- left: false,
251
- topLeft: false,
252
- topRight: false,
253
- bottomRight: false,
254
- bottomLeft: false
255
- },
256
- minHeight: min,
257
- maxHeight: usedMax,
258
- bounds: "parent",
259
- boundsByDirection: true
260
- // Avoids hiccups while dragging over objects like iframes and ensures that
261
- // the event to end the drag is captured by the target (resize handle)
262
- // whether or not it’s under the pointer.
263
- ,
264
- onPointerDown: ({
265
- pointerId,
266
- target
267
- }) => {
268
- target.setPointerCapture(pointerId);
269
- },
270
- onResizeStart: (event, direction, elementRef) => {
271
- if (isAutoHeight) {
272
- const heightNow = elementRef.offsetHeight;
273
- // Sets the starting height to avoid visual jumps in height and
274
- // aria-valuenow being `NaN` for the first (few) resize events.
275
- resizableBoxRef.current.updateSize({
276
- height: heightNow
277
- });
278
- // Causes `maxHeight` to update to full `max` value instead of half.
279
- setIsUntouched(false);
280
- }
281
- },
282
- onResize: () => {
283
- const {
284
- height
285
- } = resizableBoxRef.current.state;
286
- const separator = separatorRef.current;
287
- separator.ariaValueNow = getAriaValueNow(height);
288
- },
289
- onResizeStop: () => {
290
- const nextHeight = resizableBoxRef.current.state.height;
291
- setPreference('core/edit-post', 'metaBoxesMainOpenHeight', nextHeight);
292
- },
293
- handleClasses: {
294
- top: 'edit-post-meta-boxes-main__resize-handle'
295
- },
296
- handleComponent: {
297
- top: /*#__PURE__*/_jsxs(_Fragment, {
298
- children: [/*#__PURE__*/_jsx(Tooltip, {
299
- text: __('Drag to resize'),
300
- children: /*#__PURE__*/_jsx("button", {
301
- ref: separatorRef,
302
- "aria-label": __('Drag to resize'),
303
- "aria-describedby": separatorHelpId,
304
- onKeyDown: onSeparatorKeyDown
305
- // Disable reason: buttons are allowed to be separator role.
306
- // eslint-disable-next-line jsx-a11y/no-interactive-element-to-noninteractive-role
307
- ,
308
- role: "separator",
309
- "aria-valuenow": usedAriaValueNow
310
- })
311
- }), /*#__PURE__*/_jsx(VisuallyHidden, {
312
- id: separatorHelpId,
313
- children: __('Use up and down arrow keys to resize the metabox panel.')
314
- })]
315
- })
316
- },
317
- children: [/*#__PURE__*/_jsx("meta", {
239
+ const className = 'edit-post-meta-boxes-main';
240
+ const paneLabel = __('Meta Boxes');
241
+ let Pane, paneProps;
242
+ if (isShort) {
243
+ Pane = NavigableRegion;
244
+ paneProps = {
245
+ className: clsx(className, 'is-toggle-only')
246
+ };
247
+ } else {
248
+ Pane = ResizableBox;
249
+ paneProps = /** @type {Parameters<typeof ResizableBox>[0]} */{
250
+ as: NavigableRegion,
251
+ ref: metaBoxesMainRef,
252
+ className: clsx(className, 'is-resizable'),
253
+ defaultSize: {
254
+ height: openHeight
255
+ },
256
+ minHeight: min,
257
+ maxHeight: usedMax,
258
+ enable: {
259
+ top: true,
260
+ right: false,
261
+ bottom: false,
262
+ left: false,
263
+ topLeft: false,
264
+ topRight: false,
265
+ bottomRight: false,
266
+ bottomLeft: false
267
+ },
268
+ handleClasses: {
269
+ top: 'edit-post-meta-boxes-main__presenter'
270
+ },
271
+ handleComponent: {
272
+ top: /*#__PURE__*/_jsxs(_Fragment, {
273
+ children: [/*#__PURE__*/_jsx(Tooltip, {
274
+ text: __('Drag to resize'),
275
+ children: /*#__PURE__*/_jsx("button", {
276
+ // eslint-disable-line jsx-a11y/role-supports-aria-props
277
+ ref: separatorRef,
278
+ role: "separator" // eslint-disable-line jsx-a11y/no-interactive-element-to-noninteractive-role
279
+ ,
280
+ "aria-valuenow": usedAriaValueNow,
281
+ "aria-label": __('Drag to resize'),
282
+ "aria-describedby": separatorHelpId,
283
+ onKeyDown: onSeparatorKeyDown
284
+ })
285
+ }), /*#__PURE__*/_jsx(VisuallyHidden, {
286
+ id: separatorHelpId,
287
+ children: __('Use up and down arrow keys to resize the metabox pane.')
288
+ })]
289
+ })
290
+ },
291
+ // Avoids hiccups while dragging over objects like iframes and ensures that
292
+ // the event to end the drag is captured by the target (resize handle)
293
+ // whether or not it’s under the pointer.
294
+ onPointerDown: ({
295
+ pointerId,
296
+ target
297
+ }) => {
298
+ target.setPointerCapture(pointerId);
299
+ },
300
+ onResizeStart: (event, direction, elementRef) => {
301
+ if (isAutoHeight) {
302
+ // Sets the starting height to avoid visual jumps in height and
303
+ // aria-valuenow being `NaN` for the first (few) resize events.
304
+ applyHeight(elementRef.offsetHeight, false, true);
305
+ setIsUntouched(false);
306
+ }
307
+ },
308
+ onResize: () => applyHeight(metaBoxesMainRef.current.state.height),
309
+ onResizeStop: () => applyHeight(metaBoxesMainRef.current.state.height, true)
310
+ };
311
+ }
312
+ return /*#__PURE__*/_jsxs(Pane, {
313
+ "aria-label": paneLabel,
314
+ ...paneProps,
315
+ children: [isShort ? /*#__PURE__*/_jsxs("button", {
316
+ "aria-expanded": isOpen,
317
+ className: "edit-post-meta-boxes-main__presenter",
318
+ onClick: toggle,
319
+ children: [paneLabel, /*#__PURE__*/_jsx(Icon, {
320
+ icon: isOpen ? chevronUp : chevronDown
321
+ })]
322
+ }) : /*#__PURE__*/_jsx("meta", {
318
323
  ref: effectSizeConstraints
319
324
  }), contents]
320
325
  });
@@ -401,6 +406,7 @@ function Layout({
401
406
  } else {
402
407
  document.body.classList.remove('show-icon-labels');
403
408
  }
409
+ const navigateRegionsProps = useNavigateRegions();
404
410
  const className = clsx('edit-post-layout', 'is-mode-' + mode, {
405
411
  'has-metaboxes': hasActiveMetaboxes
406
412
  });
@@ -459,35 +465,40 @@ function Layout({
459
465
  children: /*#__PURE__*/_jsxs(ErrorBoundary, {
460
466
  children: [/*#__PURE__*/_jsx(CommandMenu, {}), /*#__PURE__*/_jsx(WelcomeGuide, {
461
467
  postType: currentPostType
462
- }), /*#__PURE__*/_jsxs(Editor, {
463
- settings: editorSettings,
464
- initialEdits: initialEdits,
465
- postType: currentPostType,
466
- postId: currentPostId,
467
- templateId: templateId,
468
- className: className,
469
- styles: styles,
470
- forceIsDirty: hasActiveMetaboxes,
471
- contentRef: paddingAppenderRef,
472
- disableIframe: !shouldIframe
473
- // We should auto-focus the canvas (title) on load.
474
- // eslint-disable-next-line jsx-a11y/no-autofocus
475
- ,
476
- autoFocus: !isWelcomeGuideVisible,
477
- onActionPerformed: onActionPerformed,
478
- extraSidebarPanels: showMetaBoxes && /*#__PURE__*/_jsx(MetaBoxes, {
479
- location: "side"
480
- }),
481
- extraContent: !isDistractionFree && showMetaBoxes && /*#__PURE__*/_jsx(MetaBoxesMain, {
482
- isLegacy: !shouldIframe
483
- }),
484
- children: [/*#__PURE__*/_jsx(PostLockedModal, {}), /*#__PURE__*/_jsx(EditorInitialization, {}), /*#__PURE__*/_jsx(FullscreenMode, {
485
- isActive: isFullscreenActive
486
- }), /*#__PURE__*/_jsx(BrowserURL, {
487
- hasHistory: hasHistory
488
- }), /*#__PURE__*/_jsx(UnsavedChangesWarning, {}), /*#__PURE__*/_jsx(AutosaveMonitor, {}), /*#__PURE__*/_jsx(LocalAutosaveMonitor, {}), /*#__PURE__*/_jsx(EditPostKeyboardShortcuts, {}), /*#__PURE__*/_jsx(EditorKeyboardShortcutsRegister, {}), /*#__PURE__*/_jsx(BlockKeyboardShortcuts, {}), /*#__PURE__*/_jsx(InitPatternModal, {}), /*#__PURE__*/_jsx(PluginArea, {
489
- onError: onPluginAreaError
490
- }), /*#__PURE__*/_jsx(PostEditorMoreMenu, {}), backButton, /*#__PURE__*/_jsx(EditorSnackbars, {})]
468
+ }), /*#__PURE__*/_jsx("div", {
469
+ className: navigateRegionsProps.className,
470
+ ...navigateRegionsProps,
471
+ ref: navigateRegionsProps.ref,
472
+ children: /*#__PURE__*/_jsxs(Editor, {
473
+ settings: editorSettings,
474
+ initialEdits: initialEdits,
475
+ postType: currentPostType,
476
+ postId: currentPostId,
477
+ templateId: templateId,
478
+ className: className,
479
+ styles: styles,
480
+ forceIsDirty: hasActiveMetaboxes,
481
+ contentRef: paddingAppenderRef,
482
+ disableIframe: !shouldIframe
483
+ // We should auto-focus the canvas (title) on load.
484
+ // eslint-disable-next-line jsx-a11y/no-autofocus
485
+ ,
486
+ autoFocus: !isWelcomeGuideVisible,
487
+ onActionPerformed: onActionPerformed,
488
+ extraSidebarPanels: showMetaBoxes && /*#__PURE__*/_jsx(MetaBoxes, {
489
+ location: "side"
490
+ }),
491
+ extraContent: !isDistractionFree && showMetaBoxes && /*#__PURE__*/_jsx(MetaBoxesMain, {
492
+ isLegacy: !shouldIframe
493
+ }),
494
+ children: [/*#__PURE__*/_jsx(PostLockedModal, {}), /*#__PURE__*/_jsx(EditorInitialization, {}), /*#__PURE__*/_jsx(FullscreenMode, {
495
+ isActive: isFullscreenActive
496
+ }), /*#__PURE__*/_jsx(BrowserURL, {
497
+ hasHistory: hasHistory
498
+ }), /*#__PURE__*/_jsx(UnsavedChangesWarning, {}), /*#__PURE__*/_jsx(AutosaveMonitor, {}), /*#__PURE__*/_jsx(LocalAutosaveMonitor, {}), /*#__PURE__*/_jsx(EditPostKeyboardShortcuts, {}), /*#__PURE__*/_jsx(EditorKeyboardShortcutsRegister, {}), /*#__PURE__*/_jsx(BlockKeyboardShortcuts, {}), /*#__PURE__*/_jsx(InitPatternModal, {}), /*#__PURE__*/_jsx(PluginArea, {
499
+ onError: onPluginAreaError
500
+ }), /*#__PURE__*/_jsx(PostEditorMoreMenu, {}), backButton, /*#__PURE__*/_jsx(EditorSnackbars, {})]
501
+ })
491
502
  })]
492
503
  })
493
504
  });
@@ -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","noticesStore","preferencesStore","CommandMenu","commandsPrivateApis","coreCommandsPrivateApis","blockLibraryPrivateApis","addQueryArgs","decodeEntities","coreStore","ResizableBox","SlotFillProvider","Tooltip","VisuallyHidden","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","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","resizableBoxRef","isShort","min","max","setHeightConstraints","effectSizeConstraints","node","container","closest","noticeLists","querySelectorAll","resizeHandle","querySelector","actualize","fullHeight","offsetHeight","nextMax","element","nextMin","observer","window","ResizeObserver","observe","disconnect","separatorRef","separatorHelpId","isUntouched","setIsUntouched","className","contents","children","location","isAutoHeight","undefined","usedMax","getAriaValueNow","height","Math","round","usedAriaValueNow","open","onToggle","target","onSeparatorKeyDown","event","delta","ArrowUp","ArrowDown","key","resizable","current","fromHeight","nextHeight","updateSize","width","defaultSize","ref","enable","top","right","bottom","left","topLeft","topRight","bottomRight","bottomLeft","minHeight","maxHeight","bounds","boundsByDirection","onPointerDown","pointerId","setPointerCapture","onResizeStart","direction","elementRef","heightNow","onResize","state","separator","ariaValueNow","onResizeStop","handleClasses","handleComponent","text","onKeyDown","role","id","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","getEditorMode","hasMetaBoxes","getBlockSelectionStart","commandContext","defaultRenderingMode","document","body","classList","add","remove","onPluginAreaError","createSuccessNotice","onActionPerformed","actionId","items","href","trashed","post_type","type","ids","newItem","title","rendered","actions","label","onClick","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 { 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\tResizableBox,\n\tSlotFillProvider,\n\tTooltip,\n\tVisuallyHidden,\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 } = 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 resizableBoxRef = 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__resize-handle'\n\t\t);\n\t\tconst actualize = () => {\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( actualize );\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\n\tif ( ! hasAnyVisible ) {\n\t\treturn;\n\t}\n\n\tconst className = 'edit-post-meta-boxes-main';\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>\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\tif ( isShort ) {\n\t\treturn (\n\t\t\t<details\n\t\t\t\tclassName={ className }\n\t\t\t\topen={ isOpen }\n\t\t\t\tonToggle={ ( { target } ) => {\n\t\t\t\t\tsetPreference(\n\t\t\t\t\t\t'core/edit-post',\n\t\t\t\t\t\t'metaBoxesMainIsOpen',\n\t\t\t\t\t\ttarget.open\n\t\t\t\t\t);\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<summary>{ __( 'Meta Boxes' ) }</summary>\n\t\t\t\t{ contents }\n\t\t\t</details>\n\t\t);\n\t}\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 { resizable } = resizableBoxRef.current;\n\t\t\tconst fromHeight = isAutoHeight\n\t\t\t\t? resizable.offsetHeight\n\t\t\t\t: openHeight;\n\t\t\tconst nextHeight = Math.min(\n\t\t\t\tmax,\n\t\t\t\tMath.max( min, delta + fromHeight )\n\t\t\t);\n\t\t\tresizableBoxRef.current.updateSize( {\n\t\t\t\theight: nextHeight,\n\t\t\t\t// Oddly, if left unspecified a subsequent drag gesture applies a fixed\n\t\t\t\t// width and the pane fails to shrink/grow 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\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}\n\t};\n\n\treturn (\n\t\t<ResizableBox\n\t\t\tclassName={ className }\n\t\t\tdefaultSize={ { height: openHeight } }\n\t\t\tref={ resizableBoxRef }\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\tminHeight={ min }\n\t\t\tmaxHeight={ usedMax }\n\t\t\tbounds=\"parent\"\n\t\t\tboundsByDirection\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\tconst heightNow = elementRef.offsetHeight;\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\tresizableBoxRef.current.updateSize( { height: heightNow } );\n\t\t\t\t\t// Causes `maxHeight` to update to full `max` value instead of half.\n\t\t\t\t\tsetIsUntouched( false );\n\t\t\t\t}\n\t\t\t} }\n\t\t\tonResize={ () => {\n\t\t\t\tconst { height } = resizableBoxRef.current.state;\n\t\t\t\tconst separator = separatorRef.current;\n\t\t\t\tseparator.ariaValueNow = getAriaValueNow( height );\n\t\t\t} }\n\t\t\tonResizeStop={ () => {\n\t\t\t\tconst nextHeight = resizableBoxRef.current.state.height;\n\t\t\t\tsetPreference(\n\t\t\t\t\t'core/edit-post',\n\t\t\t\t\t'metaBoxesMainOpenHeight',\n\t\t\t\t\tnextHeight\n\t\t\t\t);\n\t\t\t} }\n\t\t\thandleClasses={ {\n\t\t\t\ttop: 'edit-post-meta-boxes-main__resize-handle',\n\t\t\t} }\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{ /* Disable reason: aria-valuenow is supported by separator role. */ }\n\t\t\t\t\t\t\t{ /* eslint-disable-next-line jsx-a11y/role-supports-aria-props */ }\n\t\t\t\t\t\t\t<button\n\t\t\t\t\t\t\t\tref={ separatorRef }\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\t// Disable reason: buttons are allowed to be separator role.\n\t\t\t\t\t\t\t\t// eslint-disable-next-line jsx-a11y/no-interactive-element-to-noninteractive-role\n\t\t\t\t\t\t\t\trole=\"separator\"\n\t\t\t\t\t\t\t\taria-valuenow={ usedAriaValueNow }\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 metabox 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>\n\t\t\t<meta ref={ effectSizeConstraints } />\n\t\t\t{ contents }\n\t\t</ResizableBox>\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\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\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\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 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 e.g: \"Post 1\".\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<Editor\n\t\t\t\t\tsettings={ editorSettings }\n\t\t\t\t\tinitialEdits={ initialEdits }\n\t\t\t\t\tpostType={ currentPostType }\n\t\t\t\t\tpostId={ currentPostId }\n\t\t\t\t\ttemplateId={ templateId }\n\t\t\t\t\tclassName={ className }\n\t\t\t\t\tstyles={ styles }\n\t\t\t\t\tforceIsDirty={ hasActiveMetaboxes }\n\t\t\t\t\tcontentRef={ paddingAppenderRef }\n\t\t\t\t\tdisableIframe={ ! shouldIframe }\n\t\t\t\t\t// We should auto-focus the canvas (title) on load.\n\t\t\t\t\t// eslint-disable-next-line jsx-a11y/no-autofocus\n\t\t\t\t\tautoFocus={ ! isWelcomeGuideVisible }\n\t\t\t\t\tonActionPerformed={ onActionPerformed }\n\t\t\t\t\textraSidebarPanels={\n\t\t\t\t\t\tshowMetaBoxes && <MetaBoxes location=\"side\" />\n\t\t\t\t\t}\n\t\t\t\t\textraContent={\n\t\t\t\t\t\t! isDistractionFree &&\n\t\t\t\t\t\tshowMetaBoxes && (\n\t\t\t\t\t\t\t<MetaBoxesMain isLegacy={ ! shouldIframe } />\n\t\t\t\t\t\t)\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t<PostLockedModal />\n\t\t\t\t\t<EditorInitialization />\n\t\t\t\t\t<FullscreenMode isActive={ isFullscreenActive } />\n\t\t\t\t\t<BrowserURL hasHistory={ hasHistory } />\n\t\t\t\t\t<UnsavedChangesWarning />\n\t\t\t\t\t<AutosaveMonitor />\n\t\t\t\t\t<LocalAutosaveMonitor />\n\t\t\t\t\t<EditPostKeyboardShortcuts />\n\t\t\t\t\t<EditorKeyboardShortcutsRegister />\n\t\t\t\t\t<BlockKeyboardShortcuts />\n\t\t\t\t\t<InitPatternModal />\n\t\t\t\t\t<PluginArea onError={ onPluginAreaError } />\n\t\t\t\t\t<PostEditorMoreMenu />\n\t\t\t\t\t{ backButton }\n\t\t\t\t\t<EditorSnackbars />\n\t\t\t\t</Editor>\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","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","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 metabox pane.'\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\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\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\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 e.g: \"Post 1\".\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":[]}