@wordpress/edit-post 8.39.0 → 8.39.1-next.v.20260206T143.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -19,7 +19,6 @@ import { PluginArea } from "@wordpress/plugins";
19
19
  import { __, sprintf } from "@wordpress/i18n";
20
20
  import {
21
21
  useCallback,
22
- useEffect,
23
22
  useMemo,
24
23
  useId,
25
24
  useRef,
@@ -35,15 +34,15 @@ import { decodeEntities } from "@wordpress/html-entities";
35
34
  import { store as coreStore } from "@wordpress/core-data";
36
35
  import {
37
36
  Icon,
38
- ResizableBox,
39
37
  SlotFillProvider,
40
38
  Tooltip,
41
39
  VisuallyHidden,
42
- __unstableUseNavigateRegions as useNavigateRegions
40
+ __unstableUseNavigateRegions as useNavigateRegions,
41
+ privateApis as componentsPrivateApis
43
42
  } from "@wordpress/components";
44
43
  import {
45
- useEvent,
46
44
  useMediaQuery,
45
+ useMergeRefs,
47
46
  useRefEffect,
48
47
  useViewportMatch
49
48
  } from "@wordpress/compose";
@@ -63,6 +62,7 @@ import useNavigateToEntityRecord from "../../hooks/use-navigate-to-entity-record
63
62
  import { useMetaBoxInitialization } from "../meta-boxes/use-meta-box-initialization.mjs";
64
63
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
65
64
  var { useCommandContext } = unlock(commandsPrivateApis);
65
+ var { useDrag } = unlock(componentsPrivateApis);
66
66
  var { Editor, FullscreenMode } = unlock(editorPrivateApis);
67
67
  var { BlockKeyboardShortcuts } = unlock(blockLibraryPrivateApis);
68
68
  var DESIGN_POST_TYPES = [
@@ -116,9 +116,8 @@ function MetaBoxesMain({ isLegacy }) {
116
116
  ];
117
117
  }, []);
118
118
  const { set: setPreference } = useDispatch(preferencesStore);
119
- const metaBoxesMainRef = useRef();
120
119
  const isShort = useMediaQuery("(max-height: 549px)");
121
- const [{ min, max }, setHeightConstraints] = useState(() => ({}));
120
+ const [{ min = 0, max }, setHeightConstraints] = useState(() => ({}));
122
121
  const effectSizeConstraints = useRefEffect((node) => {
123
122
  const container = node.closest(
124
123
  ".interface-interface-skeleton__content"
@@ -148,14 +147,23 @@ function MetaBoxesMain({ isLegacy }) {
148
147
  }
149
148
  return () => observer.disconnect();
150
149
  }, []);
151
- const resizeDataRef = useRef({});
150
+ const metaBoxesMainRef = useRef();
151
+ const setMainRefs = useMergeRefs([
152
+ metaBoxesMainRef,
153
+ effectSizeConstraints
154
+ ]);
152
155
  const separatorRef = useRef();
153
156
  const separatorHelpId = useId();
154
- const applyHeight = (candidateHeight = "auto", isPersistent, isInstant) => {
157
+ const heightRef = useRef();
158
+ const applyHeight = (candidateHeight = "auto", isPersistent) => {
159
+ let styleHeight;
155
160
  if (candidateHeight === "auto") {
156
161
  isPersistent = false;
162
+ styleHeight = candidateHeight;
157
163
  } else {
158
164
  candidateHeight = Math.min(max, Math.max(min, candidateHeight));
165
+ heightRef.current = candidateHeight;
166
+ styleHeight = `${candidateHeight}px`;
159
167
  }
160
168
  if (isPersistent) {
161
169
  setPreference(
@@ -163,29 +171,46 @@ function MetaBoxesMain({ isLegacy }) {
163
171
  "metaBoxesMainOpenHeight",
164
172
  candidateHeight
165
173
  );
166
- } else if (!isShort) {
167
- separatorRef.current.ariaValueNow = getAriaValueNow(candidateHeight);
168
- }
169
- if (isInstant) {
170
- metaBoxesMainRef.current.updateSize({
171
- height: candidateHeight,
172
- // Oddly, when the event that triggered this was not from the mouse (e.g. keydown),
173
- // if `width` is left unspecified a subsequent drag gesture applies a fixed
174
- // width and the pane fails to widen/narrow with parent width changes from
175
- // sidebars opening/closing or window resizes.
176
- width: "auto"
177
- });
174
+ } else {
175
+ metaBoxesMainRef.current.style.height = styleHeight;
176
+ if (!isShort) {
177
+ separatorRef.current.ariaValueNow = getAriaValueNow(candidateHeight);
178
+ }
178
179
  }
179
180
  };
180
- const getRenderValues = useEvent(() => ({ isOpen, openHeight, min }));
181
- useEffect(() => {
182
- const fresh = getRenderValues();
183
- if (fresh.min !== void 0 && metaBoxesMainRef.current) {
184
- const usedOpenHeight = isShort ? "auto" : fresh.openHeight;
185
- const usedHeight = fresh.isOpen ? usedOpenHeight : fresh.min;
186
- applyHeight(usedHeight, false, true);
187
- }
188
- }, [isShort]);
181
+ const bindDragGesture = useDrag(
182
+ ({ movement, first, last, memo, tap, args }) => {
183
+ const pane = metaBoxesMainRef.current;
184
+ const [, yMovement] = movement;
185
+ if (first) {
186
+ pane.classList.add("is-resizing");
187
+ let fromHeight = heightRef.current ?? pane.offsetHeight;
188
+ if (isOpen) {
189
+ if (fromHeight > max) {
190
+ fromHeight = max;
191
+ }
192
+ } else {
193
+ fromHeight = min;
194
+ }
195
+ applyHeight(fromHeight - yMovement);
196
+ return { fromHeight };
197
+ }
198
+ if (!first && !last && !tap) {
199
+ applyHeight(memo.fromHeight - yMovement);
200
+ return memo;
201
+ }
202
+ pane.classList.remove("is-resizing");
203
+ if (tap) {
204
+ const [onTap] = args;
205
+ onTap?.();
206
+ return;
207
+ }
208
+ const nextIsOpen = heightRef.current > min;
209
+ persistIsOpen(nextIsOpen);
210
+ applyHeight(heightRef.current, nextIsOpen);
211
+ },
212
+ { keyboardDisplacement: 20, filterTaps: true }
213
+ );
189
214
  if (!hasAnyVisible) {
190
215
  return;
191
216
  }
@@ -204,38 +229,22 @@ function MetaBoxesMain({ isLegacy }) {
204
229
  return contents;
205
230
  }
206
231
  const isAutoHeight = openHeight === void 0;
232
+ const usedOpenHeight = isShort ? "auto" : openHeight;
233
+ const usedHeight = isOpen ? usedOpenHeight : min;
207
234
  const getAriaValueNow = (height) => Math.round((height - min) / (max - min) * 100);
208
- const usedAriaValueNow = max === void 0 || isAutoHeight ? 50 : getAriaValueNow(openHeight);
235
+ const usedAriaValueNow = max === void 0 || isAutoHeight ? 50 : getAriaValueNow(usedHeight);
209
236
  const persistIsOpen = (to = !isOpen) => setPreference("core/edit-post", "metaBoxesMainIsOpen", to);
210
- const onSeparatorKeyDown = (event) => {
211
- const delta = { ArrowUp: 20, ArrowDown: -20 }[event.key];
212
- if (delta) {
213
- const pane = metaBoxesMainRef.current.resizable;
214
- const fromHeight = isAutoHeight ? pane.offsetHeight : openHeight;
215
- const nextHeight = delta + fromHeight;
216
- applyHeight(nextHeight, true, true);
217
- persistIsOpen(nextHeight > min);
218
- event.preventDefault();
219
- }
220
- };
221
237
  const paneLabel = __("Meta Boxes");
222
238
  const toggle = /* @__PURE__ */ jsxs(
223
239
  "button",
224
240
  {
225
241
  "aria-expanded": isOpen,
226
242
  onClick: ({ detail }) => {
227
- const { isToggleInferred } = resizeDataRef.current;
228
- if (isShort || !detail || isToggleInferred) {
243
+ if (isShort || !detail) {
229
244
  persistIsOpen();
230
- const usedOpenHeight = isShort ? "auto" : openHeight;
231
- const usedHeight = isOpen ? min : usedOpenHeight;
232
- applyHeight(usedHeight, false, true);
233
245
  }
234
246
  },
235
- ...isShort && {
236
- onMouseDown: (event) => event.stopPropagation(),
237
- onTouchStart: (event) => event.stopPropagation()
238
- },
247
+ ...!isShort && bindDragGesture(persistIsOpen),
239
248
  children: [
240
249
  paneLabel,
241
250
  /* @__PURE__ */ jsx(Icon, { icon: isOpen ? chevronUp : chevronDown })
@@ -251,74 +260,32 @@ function MetaBoxesMain({ isLegacy }) {
251
260
  "aria-valuenow": usedAriaValueNow,
252
261
  "aria-label": __("Drag to resize"),
253
262
  "aria-describedby": separatorHelpId,
254
- onKeyDown: onSeparatorKeyDown
263
+ ...bindDragGesture()
255
264
  }
256
265
  ) }),
257
266
  /* @__PURE__ */ jsx(VisuallyHidden, { id: separatorHelpId, children: __(
258
- "Use up and down arrow keys to resize the meta box panel."
267
+ "Use up and down arrow keys to resize the meta box pane."
259
268
  ) })
260
269
  ] });
261
- const paneProps = (
262
- /** @type {Parameters<typeof ResizableBox>[0]} */
270
+ return /* @__PURE__ */ jsxs(
271
+ NavigableRegion,
263
272
  {
264
- as: NavigableRegion,
265
- ref: metaBoxesMainRef,
266
- className: "edit-post-meta-boxes-main",
267
- defaultSize: { height: isOpen ? openHeight : 0 },
268
- minHeight: min,
269
- maxHeight: max,
270
- enable: { top: true },
271
- handleClasses: { top: "edit-post-meta-boxes-main__presenter" },
272
- handleComponent: {
273
- top: /* @__PURE__ */ jsxs(Fragment, { children: [
273
+ "aria-label": paneLabel,
274
+ ref: setMainRefs,
275
+ className: clsx(
276
+ "edit-post-meta-boxes-main",
277
+ !isShort && "is-resizable"
278
+ ),
279
+ style: { height: usedHeight },
280
+ children: [
281
+ /* @__PURE__ */ jsxs("div", { className: "edit-post-meta-boxes-main__presenter", children: [
274
282
  toggle,
275
283
  separator
276
- ] })
277
- },
278
- // Avoids hiccups while dragging over objects like iframes and ensures that
279
- // the event to end the drag is captured by the target (resize handle)
280
- // whether or not it’s under the pointer.
281
- onPointerDown: ({ pointerId, target }) => {
282
- if (separatorRef.current?.parentElement.contains(target)) {
283
- target.setPointerCapture(pointerId);
284
- }
285
- },
286
- onResizeStart: ({ timeStamp }, direction, elementRef) => {
287
- if (isAutoHeight) {
288
- applyHeight(elementRef.offsetHeight, false, true);
289
- }
290
- elementRef.classList.add("is-resizing");
291
- resizeDataRef.current = { timeStamp, maxDelta: 0 };
292
- },
293
- onResize: (event, direction, elementRef, delta) => {
294
- const { maxDelta } = resizeDataRef.current;
295
- const newDelta = Math.abs(delta.height);
296
- resizeDataRef.current.maxDelta = Math.max(maxDelta, newDelta);
297
- applyHeight(metaBoxesMainRef.current.state.height);
298
- },
299
- onResizeStop: (event, direction, elementRef) => {
300
- elementRef.classList.remove("is-resizing");
301
- const duration = event.timeStamp - resizeDataRef.current.timeStamp;
302
- const wasSeparator = event.target === separatorRef.current;
303
- const { maxDelta } = resizeDataRef.current;
304
- const isToggleInferred = maxDelta < 1 || duration < 144 && maxDelta < 5;
305
- if (isShort || !wasSeparator && isToggleInferred) {
306
- resizeDataRef.current.isToggleInferred = true;
307
- } else {
308
- const { height } = metaBoxesMainRef.current.state;
309
- const nextIsOpen = height > min;
310
- persistIsOpen(nextIsOpen);
311
- if (nextIsOpen) {
312
- applyHeight(height, true);
313
- }
314
- }
315
- }
284
+ ] }),
285
+ contents
286
+ ]
316
287
  }
317
288
  );
318
- return /* @__PURE__ */ jsxs(ResizableBox, { "aria-label": paneLabel, ...paneProps, children: [
319
- /* @__PURE__ */ jsx("meta", { ref: effectSizeConstraints }),
320
- contents
321
- ] });
322
289
  }
323
290
  function Layout({
324
291
  postId: initialPostId,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/layout/index.js"],
4
- "sourcesContent": ["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { NavigableRegion } from '@wordpress/admin-ui';\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 { store as blockEditorStore } from '@wordpress/block-editor';\nimport { getLayoutStyles } from '@wordpress/global-styles-engine';\nimport { PluginArea } from '@wordpress/plugins';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tuseCallback,\n\tuseEffect,\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 { privateApis as commandsPrivateApis } from '@wordpress/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\tuseEvent,\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 { 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 { 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( settings ) {\n\tconst { hasThemeStyleSupport } = useSelect( ( select ) => {\n\t\treturn {\n\t\t\thasThemeStyleSupport:\n\t\t\t\tselect( editPostStore ).isFeatureActive( 'themeStyles' ),\n\t\t};\n\t}, [] );\n\n\t// Compute the default styles.\n\treturn useMemo( () => {\n\t\tconst presetStyles =\n\t\t\tsettings.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...( settings?.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 !== ( settings.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 ( ! settings.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\treturn hasThemeStyles ? settings.styles ?? [] : defaultEditorStyles;\n\t}, [\n\t\tsettings.defaultEditorStyles,\n\t\tsettings.disableLayoutStyles,\n\t\tsettings.styles,\n\t\thasThemeStyleSupport,\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\t!! get( '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\u2019s 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 separator.\n\tconst effectSizeConstraints = useRefEffect( ( node ) => {\n\t\tconst container = node.closest(\n\t\t\t'.interface-interface-skeleton__content'\n\t\t);\n\t\tif ( ! container ) {\n\t\t\treturn;\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 resizeDataRef = useRef( {} );\n\tconst separatorRef = useRef();\n\tconst separatorHelpId = useId();\n\n\t/**\n\t * @param {number|'auto'} [candidateHeight] Height in pixels or 'auto'.\n\t * @param {boolean} isPersistent Whether to persist the height in preferences.\n\t * @param {boolean} isInstant Whether to update the height in the DOM.\n\t */\n\tconst applyHeight = (\n\t\tcandidateHeight = 'auto',\n\t\tisPersistent,\n\t\tisInstant\n\t) => {\n\t\tif ( candidateHeight === 'auto' ) {\n\t\t\tisPersistent = false; // Just in case \u2014 \u201Cauto\u201D should never persist.\n\t\t} else {\n\t\t\tcandidateHeight = Math.min( max, Math.max( min, candidateHeight ) );\n\t\t}\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\tcandidateHeight\n\t\t\t);\n\t\t}\n\t\t// Updates aria-valuenow only when not persisting the value because otherwise\n\t\t// it's done by the render that persisting the value causes.\n\t\telse if ( ! isShort ) {\n\t\t\tseparatorRef.current.ariaValueNow =\n\t\t\t\tgetAriaValueNow( candidateHeight );\n\t\t}\n\t\tif ( isInstant ) {\n\t\t\tmetaBoxesMainRef.current.updateSize( {\n\t\t\t\theight: candidateHeight,\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\tconst getRenderValues = useEvent( () => ( { isOpen, openHeight, min } ) );\n\t// Sets the height to 'auto' when not resizable (isShort) and to the\n\t// preferred height when resizable.\n\tuseEffect( () => {\n\t\tconst fresh = getRenderValues();\n\t\t// Tests for `min` having a value to skip the first render.\n\t\tif ( fresh.min !== undefined && metaBoxesMainRef.current ) {\n\t\t\tconst usedOpenHeight = isShort ? 'auto' : fresh.openHeight;\n\t\t\tconst usedHeight = fresh.isOpen ? usedOpenHeight : fresh.min;\n\t\t\tapplyHeight( usedHeight, false, true );\n\t\t}\n\t}, [ isShort ] );\n\n\tif ( ! hasAnyVisible ) {\n\t\treturn;\n\t}\n\n\tconst contents = (\n\t\t<div\n\t\t\t// The class name 'edit-post-layout__metaboxes' is retained because some plugins use it.\n\t\t\tclassName=\"edit-post-layout__metaboxes edit-post-meta-boxes-main__liner\"\n\t\t\thidden={ ! isLegacy && ! 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\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 persistIsOpen = ( to = ! isOpen ) =>\n\t\tsetPreference( 'core/edit-post', 'metaBoxesMainIsOpen', to );\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\tpersistIsOpen( nextHeight > min );\n\t\t\tevent.preventDefault();\n\t\t}\n\t};\n\tconst paneLabel = __( 'Meta Boxes' );\n\n\tconst toggle = (\n\t\t<button\n\t\t\taria-expanded={ isOpen }\n\t\t\tonClick={ ( { detail } ) => {\n\t\t\t\tconst { isToggleInferred } = resizeDataRef.current;\n\t\t\t\tif ( isShort || ! detail || isToggleInferred ) {\n\t\t\t\t\tpersistIsOpen();\n\t\t\t\t\tconst usedOpenHeight = isShort ? 'auto' : openHeight;\n\t\t\t\t\tconst usedHeight = isOpen ? min : usedOpenHeight;\n\t\t\t\t\tapplyHeight( usedHeight, false, true );\n\t\t\t\t}\n\t\t\t} }\n\t\t\t// Prevents resizing in short viewports.\n\t\t\t{ ...( isShort && {\n\t\t\t\tonMouseDown: ( event ) => event.stopPropagation(),\n\t\t\t\tonTouchStart: ( event ) => event.stopPropagation(),\n\t\t\t} ) }\n\t\t>\n\t\t\t{ paneLabel }\n\t\t\t<Icon icon={ isOpen ? chevronUp : chevronDown } />\n\t\t</button>\n\t);\n\n\tconst separator = ! isShort && (\n\t\t<>\n\t\t\t<Tooltip text={ __( 'Drag to resize' ) }>\n\t\t\t\t<button // eslint-disable-line jsx-a11y/role-supports-aria-props\n\t\t\t\t\tref={ separatorRef }\n\t\t\t\t\trole=\"separator\" // eslint-disable-line jsx-a11y/no-interactive-element-to-noninteractive-role\n\t\t\t\t\taria-valuenow={ usedAriaValueNow }\n\t\t\t\t\taria-label={ __( 'Drag to resize' ) }\n\t\t\t\t\taria-describedby={ separatorHelpId }\n\t\t\t\t\tonKeyDown={ onSeparatorKeyDown }\n\t\t\t\t/>\n\t\t\t</Tooltip>\n\t\t\t<VisuallyHidden id={ separatorHelpId }>\n\t\t\t\t{ __(\n\t\t\t\t\t'Use up and down arrow keys to resize the meta box panel.'\n\t\t\t\t) }\n\t\t\t</VisuallyHidden>\n\t\t</>\n\t);\n\n\tconst paneProps = /** @type {Parameters<typeof ResizableBox>[0]} */ ( {\n\t\tas: NavigableRegion,\n\t\tref: metaBoxesMainRef,\n\t\tclassName: 'edit-post-meta-boxes-main',\n\t\tdefaultSize: { height: isOpen ? openHeight : 0 },\n\t\tminHeight: min,\n\t\tmaxHeight: max,\n\t\tenable: { top: true },\n\t\thandleClasses: { top: 'edit-post-meta-boxes-main__presenter' },\n\t\thandleComponent: {\n\t\t\ttop: (\n\t\t\t\t<>\n\t\t\t\t\t{ toggle }\n\t\t\t\t\t{ separator }\n\t\t\t\t</>\n\t\t\t),\n\t\t},\n\t\t// Avoids hiccups while dragging over objects like iframes and ensures that\n\t\t// the event to end the drag is captured by the target (resize handle)\n\t\t// whether or not it\u2019s under the pointer.\n\t\tonPointerDown: ( { pointerId, target } ) => {\n\t\t\tif ( separatorRef.current?.parentElement.contains( target ) ) {\n\t\t\t\ttarget.setPointerCapture( pointerId );\n\t\t\t}\n\t\t},\n\t\tonResizeStart: ( { timeStamp }, direction, elementRef ) => {\n\t\t\tif ( isAutoHeight ) {\n\t\t\t\t// Sets the starting height to avoid visual jumps in height and\n\t\t\t\t// aria-valuenow being `NaN` for the first (few) resize events.\n\t\t\t\tapplyHeight( elementRef.offsetHeight, false, true );\n\t\t\t}\n\t\t\telementRef.classList.add( 'is-resizing' );\n\t\t\tresizeDataRef.current = { timeStamp, maxDelta: 0 };\n\t\t},\n\t\tonResize: ( event, direction, elementRef, delta ) => {\n\t\t\tconst { maxDelta } = resizeDataRef.current;\n\t\t\tconst newDelta = Math.abs( delta.height );\n\t\t\tresizeDataRef.current.maxDelta = Math.max( maxDelta, newDelta );\n\t\t\tapplyHeight( metaBoxesMainRef.current.state.height );\n\t\t},\n\t\tonResizeStop: ( event, direction, elementRef ) => {\n\t\t\telementRef.classList.remove( 'is-resizing' );\n\t\t\tconst duration = event.timeStamp - resizeDataRef.current.timeStamp;\n\t\t\tconst wasSeparator = event.target === separatorRef.current;\n\t\t\tconst { maxDelta } = resizeDataRef.current;\n\t\t\tconst isToggleInferred =\n\t\t\t\tmaxDelta < 1 || ( duration < 144 && maxDelta < 5 );\n\t\t\tif ( isShort || ( ! wasSeparator && isToggleInferred ) ) {\n\t\t\t\tresizeDataRef.current.isToggleInferred = true;\n\t\t\t} else {\n\t\t\t\tconst { height } = metaBoxesMainRef.current.state;\n\t\t\t\tconst nextIsOpen = height > min;\n\t\t\t\tpersistIsOpen( nextIsOpen );\n\t\t\t\t// Persists height only if still open. This is so that when closed by a drag the\n\t\t\t\t// prior height can be restored by the toggle button instead of having to drag\n\t\t\t\t// the pane open again. Also, if already closed, a click on the separator won\u2019t\n\t\t\t\t// persist the height as the minimum.\n\t\t\t\tif ( nextIsOpen ) {\n\t\t\t\t\tapplyHeight( height, true );\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t} );\n\n\treturn (\n\t\t<ResizableBox aria-label={ paneLabel } { ...paneProps }>\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\tuseEditPostCommands();\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\tpreviousSelectedBlockPath,\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\thasResolvedMode,\n\t\thasActiveMetaboxes,\n\t\thasBlockSelected,\n\t\tshowIconLabels,\n\t\tisDistractionFree,\n\t\tshowMetaBoxes,\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, hasMetaBoxes } = select( editPostStore );\n\t\t\tconst { canUser, getPostType, getTemplateId } = unlock(\n\t\t\t\tselect( coreStore )\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\t\t\tconst { getBlockSelectionStart, isZoomOut } = unlock(\n\t\t\t\tselect( blockEditorStore )\n\t\t\t);\n\t\t\tconst { getEditorMode, getDefaultRenderingMode, getDeviceType } =\n\t\t\t\tunlock( select( editorStore ) );\n\t\t\tconst isNotDesignPostType =\n\t\t\t\t! DESIGN_POST_TYPES.includes( currentPostType );\n\t\t\tconst isDirectlyEditingPattern =\n\t\t\t\tcurrentPostType === 'wp_block' &&\n\t\t\t\t! onNavigateToPreviousEntityRecord;\n\t\t\tconst _templateId = getTemplateId( currentPostType, currentPostId );\n\t\t\tconst defaultMode = getDefaultRenderingMode( currentPostType );\n\n\t\t\treturn {\n\t\t\t\tmode: getEditorMode(),\n\t\t\t\tisFullscreenActive: isFeatureActive( 'fullscreenMode' ),\n\t\t\t\thasActiveMetaboxes: hasMetaBoxes(),\n\t\t\t\thasResolvedMode:\n\t\t\t\t\tdefaultMode === 'template-locked'\n\t\t\t\t\t\t? !! _templateId\n\t\t\t\t\t\t: defaultMode !== undefined,\n\t\t\t\thasBlockSelected: !! 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( isNotDesignPostType && ! isZoomOut() ) ||\n\t\t\t\t\tisDirectlyEditingPattern,\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? _templateId\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[\n\t\t\tcurrentPostType,\n\t\t\tcurrentPostId,\n\t\t\tisEditingTemplate,\n\t\t\tsettings.supportsTemplateMode,\n\t\t\tonNavigateToPreviousEntityRecord,\n\t\t]\n\t);\n\n\tuseMetaBoxInitialization( hasActiveMetaboxes && hasResolvedMode );\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 styles = useEditorStyles( settings );\n\tconst editorSettings = useMemo(\n\t\t() => ( {\n\t\t\t...settings,\n\t\t\tstyles,\n\t\t\tonNavigateToEntityRecord,\n\t\t\tonNavigateToPreviousEntityRecord,\n\t\t\tdefaultRenderingMode: 'post-only',\n\t\t} ),\n\t\t[\n\t\t\tsettings,\n\t\t\tstyles,\n\t\t\tonNavigateToEntityRecord,\n\t\t\tonNavigateToPreviousEntityRecord,\n\t\t]\n\t);\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 ) || __( '(no 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 canCopyContent>\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\tforceIsDirty={ hasActiveMetaboxes }\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\tinitialSelection={ previousSelectedBlockPath }\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 />\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{ currentPostType === 'wp_block' && (\n\t\t\t\t\t\t\t<InitPatternModal />\n\t\t\t\t\t\t) }\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"],
5
- "mappings": "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",
4
+ "sourcesContent": ["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { NavigableRegion } from '@wordpress/admin-ui';\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 { store as blockEditorStore } from '@wordpress/block-editor';\nimport { getLayoutStyles } from '@wordpress/global-styles-engine';\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 { privateApis as commandsPrivateApis } from '@wordpress/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\tSlotFillProvider,\n\tTooltip,\n\tVisuallyHidden,\n\t__unstableUseNavigateRegions as useNavigateRegions,\n\tprivateApis as componentsPrivateApis,\n} from '@wordpress/components';\nimport {\n\tuseMediaQuery,\n\tuseMergeRefs,\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 { 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 { useCommandContext } = unlock( commandsPrivateApis );\n/** @type {{} & {useDrag: import('@use-gesture/react').useDrag}} */\nconst { useDrag } = unlock( componentsPrivateApis );\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( settings ) {\n\tconst { hasThemeStyleSupport } = useSelect( ( select ) => {\n\t\treturn {\n\t\t\thasThemeStyleSupport:\n\t\t\t\tselect( editPostStore ).isFeatureActive( 'themeStyles' ),\n\t\t};\n\t}, [] );\n\n\t// Compute the default styles.\n\treturn useMemo( () => {\n\t\tconst presetStyles =\n\t\t\tsettings.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...( settings?.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 !== ( settings.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 ( ! settings.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\treturn hasThemeStyles ? settings.styles ?? [] : defaultEditorStyles;\n\t}, [\n\t\tsettings.defaultEditorStyles,\n\t\tsettings.disableLayoutStyles,\n\t\tsettings.styles,\n\t\thasThemeStyleSupport,\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\t!! get( '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\n\tconst isShort = useMediaQuery( '(max-height: 549px)' );\n\n\tconst [ { min = 0, max }, setHeightConstraints ] = useState( () => ( {} ) );\n\t// Keeps the resizable area\u2019s 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 separator.\n\tconst effectSizeConstraints = useRefEffect( ( node ) => {\n\t\tconst container = node.closest(\n\t\t\t'.interface-interface-skeleton__content'\n\t\t);\n\t\tif ( ! container ) {\n\t\t\treturn;\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\tconst metaBoxesMainRef = useRef();\n\tconst setMainRefs = useMergeRefs( [\n\t\tmetaBoxesMainRef,\n\t\teffectSizeConstraints,\n\t] );\n\n\tconst separatorRef = useRef();\n\tconst separatorHelpId = useId();\n\n\tconst heightRef = useRef();\n\n\t/**\n\t * @param {number|'auto'} [candidateHeight] Height in pixels or 'auto'.\n\t * @param {boolean} isPersistent Whether to persist the height in preferences.\n\t */\n\tconst applyHeight = ( candidateHeight = 'auto', isPersistent ) => {\n\t\tlet styleHeight;\n\t\tif ( candidateHeight === 'auto' ) {\n\t\t\tisPersistent = false; // Just in case \u2014 \u201Cauto\u201D should never persist.\n\t\t\tstyleHeight = candidateHeight;\n\t\t} else {\n\t\t\tcandidateHeight = Math.min( max, Math.max( min, candidateHeight ) );\n\t\t\theightRef.current = candidateHeight;\n\t\t\tstyleHeight = `${ candidateHeight }px`;\n\t\t}\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\tcandidateHeight\n\t\t\t);\n\t\t}\n\t\t// Applies imperative DOM updates only when not persisting the value\n\t\t// because otherwise it's done by the subsequent render.\n\t\telse {\n\t\t\tmetaBoxesMainRef.current.style.height = styleHeight;\n\t\t\tif ( ! isShort ) {\n\t\t\t\tseparatorRef.current.ariaValueNow =\n\t\t\t\t\tgetAriaValueNow( candidateHeight );\n\t\t\t}\n\t\t}\n\t};\n\n\t// useDrag includes keyboard support with arrow keys emulating a drag.\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 bindDragGesture = useDrag(\n\t\t( { movement, first, last, memo, tap, args } ) => {\n\t\t\tconst pane = metaBoxesMainRef.current;\n\t\t\tconst [ , yMovement ] = movement;\n\t\t\tif ( first ) {\n\t\t\t\tpane.classList.add( 'is-resizing' );\n\t\t\t\tlet fromHeight = heightRef.current ?? pane.offsetHeight;\n\t\t\t\tif ( isOpen ) {\n\t\t\t\t\t// Starts from max in case shortening the window has imposed it.\n\t\t\t\t\tif ( fromHeight > max ) {\n\t\t\t\t\t\tfromHeight = max;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tfromHeight = min;\n\t\t\t\t}\n\t\t\t\tapplyHeight( fromHeight - yMovement );\n\t\t\t\treturn { fromHeight };\n\t\t\t}\n\n\t\t\tif ( ! first && ! last && ! tap ) {\n\t\t\t\tapplyHeight( memo.fromHeight - yMovement );\n\t\t\t\treturn memo;\n\t\t\t}\n\t\t\t// Here, `last === true` \u2013 it\u2019s the final event of the gesture.\n\n\t\t\tpane.classList.remove( 'is-resizing' );\n\t\t\tif ( tap ) {\n\t\t\t\tconst [ onTap ] = args;\n\t\t\t\tonTap?.();\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst nextIsOpen = heightRef.current > min;\n\t\t\tpersistIsOpen( nextIsOpen );\n\t\t\t// Persists height only if still open. This is so that when closed by a drag the\n\t\t\t// prior height can be restored by the toggle button instead of having to drag\n\t\t\t// the pane open again.\n\t\t\tapplyHeight( heightRef.current, nextIsOpen );\n\t\t},\n\t\t{ keyboardDisplacement: 20, filterTaps: true }\n\t);\n\n\tif ( ! hasAnyVisible ) {\n\t\treturn;\n\t}\n\n\tconst contents = (\n\t\t<div\n\t\t\t// The class name 'edit-post-layout__metaboxes' is retained because some plugins use it.\n\t\t\tclassName=\"edit-post-layout__metaboxes edit-post-meta-boxes-main__liner\"\n\t\t\thidden={ ! isLegacy && ! 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\tconst usedOpenHeight = isShort ? 'auto' : openHeight;\n\tconst usedHeight = isOpen ? usedOpenHeight : min;\n\n\tconst getAriaValueNow = ( height ) =>\n\t\tMath.round( ( ( height - min ) / ( max - min ) ) * 100 );\n\tconst usedAriaValueNow =\n\t\tmax === undefined || isAutoHeight ? 50 : getAriaValueNow( usedHeight );\n\n\tconst persistIsOpen = ( to = ! isOpen ) =>\n\t\tsetPreference( 'core/edit-post', 'metaBoxesMainIsOpen', to );\n\n\tconst paneLabel = __( 'Meta Boxes' );\n\n\t// The toggle button. It also resizes when the viewport is tall to provide\n\t// a larger hit area than the small separator button.\n\tconst toggle = (\n\t\t<button\n\t\t\taria-expanded={ isOpen }\n\t\t\t// Toggles for all clicks when short and only keyboard \u201Cclicks\u201D when\n\t\t\t// resizable because pointer input is handled by the drag gesture.\n\t\t\tonClick={ ( { detail } ) => {\n\t\t\t\tif ( isShort || ! detail ) {\n\t\t\t\t\tpersistIsOpen();\n\t\t\t\t}\n\t\t\t} }\n\t\t\t// Passes a toggle callback that the drag gesture handler calls when\n\t\t\t// it interprets the input as a click/tap.\n\t\t\t{ ...( ! isShort && bindDragGesture( persistIsOpen ) ) }\n\t\t>\n\t\t\t{ paneLabel }\n\t\t\t<Icon icon={ isOpen ? chevronUp : chevronDown } />\n\t\t</button>\n\t);\n\n\t// The separator button that provides a11y for resizing.\n\tconst separator = ! isShort && (\n\t\t<>\n\t\t\t<Tooltip text={ __( 'Drag to resize' ) }>\n\t\t\t\t<button // eslint-disable-line jsx-a11y/role-supports-aria-props\n\t\t\t\t\tref={ separatorRef }\n\t\t\t\t\trole=\"separator\" // eslint-disable-line jsx-a11y/no-interactive-element-to-noninteractive-role\n\t\t\t\t\taria-valuenow={ usedAriaValueNow }\n\t\t\t\t\taria-label={ __( 'Drag to resize' ) }\n\t\t\t\t\taria-describedby={ separatorHelpId }\n\t\t\t\t\t{ ...bindDragGesture() }\n\t\t\t\t/>\n\t\t\t</Tooltip>\n\t\t\t<VisuallyHidden id={ separatorHelpId }>\n\t\t\t\t{ __(\n\t\t\t\t\t'Use up and down arrow keys to resize the meta box pane.'\n\t\t\t\t) }\n\t\t\t</VisuallyHidden>\n\t\t</>\n\t);\n\n\treturn (\n\t\t<NavigableRegion\n\t\t\taria-label={ paneLabel }\n\t\t\tref={ setMainRefs }\n\t\t\tclassName={ clsx(\n\t\t\t\t'edit-post-meta-boxes-main',\n\t\t\t\t! isShort && 'is-resizable'\n\t\t\t) }\n\t\t\tstyle={ { height: usedHeight } }\n\t\t>\n\t\t\t<div className=\"edit-post-meta-boxes-main__presenter\">\n\t\t\t\t{ toggle }\n\t\t\t\t{ separator }\n\t\t\t</div>\n\t\t\t{ contents }\n\t\t</NavigableRegion>\n\t);\n}\n\nfunction Layout( {\n\tpostId: initialPostId,\n\tpostType: initialPostType,\n\tsettings,\n\tinitialEdits,\n} ) {\n\tuseEditPostCommands();\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\tpreviousSelectedBlockPath,\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\thasResolvedMode,\n\t\thasActiveMetaboxes,\n\t\thasBlockSelected,\n\t\tshowIconLabels,\n\t\tisDistractionFree,\n\t\tshowMetaBoxes,\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, hasMetaBoxes } = select( editPostStore );\n\t\t\tconst { canUser, getPostType, getTemplateId } = unlock(\n\t\t\t\tselect( coreStore )\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\t\t\tconst { getBlockSelectionStart, isZoomOut } = unlock(\n\t\t\t\tselect( blockEditorStore )\n\t\t\t);\n\t\t\tconst { getEditorMode, getDefaultRenderingMode, getDeviceType } =\n\t\t\t\tunlock( select( editorStore ) );\n\t\t\tconst isNotDesignPostType =\n\t\t\t\t! DESIGN_POST_TYPES.includes( currentPostType );\n\t\t\tconst isDirectlyEditingPattern =\n\t\t\t\tcurrentPostType === 'wp_block' &&\n\t\t\t\t! onNavigateToPreviousEntityRecord;\n\t\t\tconst _templateId = getTemplateId( currentPostType, currentPostId );\n\t\t\tconst defaultMode = getDefaultRenderingMode( currentPostType );\n\n\t\t\treturn {\n\t\t\t\tmode: getEditorMode(),\n\t\t\t\tisFullscreenActive: isFeatureActive( 'fullscreenMode' ),\n\t\t\t\thasActiveMetaboxes: hasMetaBoxes(),\n\t\t\t\thasResolvedMode:\n\t\t\t\t\tdefaultMode === 'template-locked'\n\t\t\t\t\t\t? !! _templateId\n\t\t\t\t\t\t: defaultMode !== undefined,\n\t\t\t\thasBlockSelected: !! 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( isNotDesignPostType && ! isZoomOut() ) ||\n\t\t\t\t\tisDirectlyEditingPattern,\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? _templateId\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[\n\t\t\tcurrentPostType,\n\t\t\tcurrentPostId,\n\t\t\tisEditingTemplate,\n\t\t\tsettings.supportsTemplateMode,\n\t\t\tonNavigateToPreviousEntityRecord,\n\t\t]\n\t);\n\n\tuseMetaBoxInitialization( hasActiveMetaboxes && hasResolvedMode );\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 styles = useEditorStyles( settings );\n\tconst editorSettings = useMemo(\n\t\t() => ( {\n\t\t\t...settings,\n\t\t\tstyles,\n\t\t\tonNavigateToEntityRecord,\n\t\t\tonNavigateToPreviousEntityRecord,\n\t\t\tdefaultRenderingMode: 'post-only',\n\t\t} ),\n\t\t[\n\t\t\tsettings,\n\t\t\tstyles,\n\t\t\tonNavigateToEntityRecord,\n\t\t\tonNavigateToPreviousEntityRecord,\n\t\t]\n\t);\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 ) || __( '(no 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 canCopyContent>\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\tforceIsDirty={ hasActiveMetaboxes }\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\tinitialSelection={ previousSelectedBlockPath }\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 />\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{ currentPostType === 'wp_block' && (\n\t\t\t\t\t\t\t<InitPatternModal />\n\t\t\t\t\t\t) }\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"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -203,6 +203,7 @@
203
203
  position: relative;
204
204
  z-index: 1;
205
205
  flex-flow: column;
206
+ text-wrap: pretty;
206
207
  }
207
208
 
208
209
  .admin-ui-page__header {
@@ -373,24 +374,30 @@
373
374
  display: flex;
374
375
  flex-direction: column;
375
376
  overflow: hidden;
376
- padding-block-start: 32px;
377
377
  }
378
378
 
379
379
  .edit-post-meta-boxes-main__presenter {
380
+ flex-shrink: 0;
380
381
  display: flex;
382
+ justify-content: center;
381
383
  box-shadow: 0 1px #ddd;
382
384
  outline: 1px solid transparent;
383
385
  position: relative;
384
- z-index: 10000;
385
- inset: 0 0 auto;
386
+ z-index: 1;
386
387
  height: 32px;
387
388
  }
389
+ @media (pointer: coarse) {
390
+ .edit-post-meta-boxes-main__presenter {
391
+ height: 36px;
392
+ }
393
+ }
388
394
  .edit-post-meta-boxes-main__presenter > button {
389
395
  appearance: none;
390
396
  padding: 0;
391
397
  border: none;
392
398
  outline: none;
393
399
  background-color: transparent;
400
+ touch-action: none;
394
401
  }
395
402
  .edit-post-meta-boxes-main__presenter > button[aria-expanded] {
396
403
  cursor: pointer;
@@ -413,14 +420,13 @@
413
420
  .edit-post-meta-boxes-main__presenter > button[aria-expanded] > svg {
414
421
  fill: currentColor;
415
422
  }
416
- .edit-post-meta-boxes-main__presenter button[role=separator] {
423
+ .edit-post-meta-boxes-main__presenter > button[role=separator] {
417
424
  cursor: row-resize;
418
- width: 64px;
419
- margin: auto;
420
425
  position: absolute;
421
- inset: 0;
426
+ width: 64px;
427
+ height: inherit;
422
428
  }
423
- .edit-post-meta-boxes-main__presenter button[role=separator]::before {
429
+ .edit-post-meta-boxes-main__presenter > button[role=separator]::before {
424
430
  content: "";
425
431
  background-color: #ddd;
426
432
  outline: 2px solid transparent;
@@ -433,23 +439,15 @@
433
439
  border-radius: 2px;
434
440
  }
435
441
  @media not (prefers-reduced-motion) {
436
- .edit-post-meta-boxes-main__presenter button[role=separator]::before {
442
+ .edit-post-meta-boxes-main__presenter > button[role=separator]::before {
437
443
  transition: width 0.3s ease-out;
438
444
  }
439
445
  }
440
- .edit-post-meta-boxes-main__presenter button[role=separator]:is(:hover, :focus-visible)::before {
446
+ .edit-post-meta-boxes-main__presenter > button[role=separator]:is(:hover, :focus)::before {
441
447
  background-color: var(--wp-admin-theme-color);
442
448
  width: 80px;
443
449
  }
444
450
 
445
- @media (pointer: coarse) {
446
- .edit-post-meta-boxes-main {
447
- padding-block-start: 36px;
448
- }
449
- .edit-post-meta-boxes-main__presenter {
450
- height: 36px;
451
- }
452
- }
453
451
  .edit-post-meta-boxes-main .edit-post-meta-boxes-main__liner {
454
452
  overflow: auto;
455
453
  }
@@ -203,6 +203,7 @@
203
203
  position: relative;
204
204
  z-index: 1;
205
205
  flex-flow: column;
206
+ text-wrap: pretty;
206
207
  }
207
208
 
208
209
  .admin-ui-page__header {
@@ -373,24 +374,30 @@
373
374
  display: flex;
374
375
  flex-direction: column;
375
376
  overflow: hidden;
376
- padding-block-start: 32px;
377
377
  }
378
378
 
379
379
  .edit-post-meta-boxes-main__presenter {
380
+ flex-shrink: 0;
380
381
  display: flex;
382
+ justify-content: center;
381
383
  box-shadow: 0 1px #ddd;
382
384
  outline: 1px solid transparent;
383
385
  position: relative;
384
- z-index: 10000;
385
- inset: 0 0 auto;
386
+ z-index: 1;
386
387
  height: 32px;
387
388
  }
389
+ @media (pointer: coarse) {
390
+ .edit-post-meta-boxes-main__presenter {
391
+ height: 36px;
392
+ }
393
+ }
388
394
  .edit-post-meta-boxes-main__presenter > button {
389
395
  appearance: none;
390
396
  padding: 0;
391
397
  border: none;
392
398
  outline: none;
393
399
  background-color: transparent;
400
+ touch-action: none;
394
401
  }
395
402
  .edit-post-meta-boxes-main__presenter > button[aria-expanded] {
396
403
  cursor: pointer;
@@ -413,14 +420,13 @@
413
420
  .edit-post-meta-boxes-main__presenter > button[aria-expanded] > svg {
414
421
  fill: currentColor;
415
422
  }
416
- .edit-post-meta-boxes-main__presenter button[role=separator] {
423
+ .edit-post-meta-boxes-main__presenter > button[role=separator] {
417
424
  cursor: row-resize;
418
- width: 64px;
419
- margin: auto;
420
425
  position: absolute;
421
- inset: 0;
426
+ width: 64px;
427
+ height: inherit;
422
428
  }
423
- .edit-post-meta-boxes-main__presenter button[role=separator]::before {
429
+ .edit-post-meta-boxes-main__presenter > button[role=separator]::before {
424
430
  content: "";
425
431
  background-color: #ddd;
426
432
  outline: 2px solid transparent;
@@ -433,23 +439,15 @@
433
439
  border-radius: 2px;
434
440
  }
435
441
  @media not (prefers-reduced-motion) {
436
- .edit-post-meta-boxes-main__presenter button[role=separator]::before {
442
+ .edit-post-meta-boxes-main__presenter > button[role=separator]::before {
437
443
  transition: width 0.3s ease-out;
438
444
  }
439
445
  }
440
- .edit-post-meta-boxes-main__presenter button[role=separator]:is(:hover, :focus-visible)::before {
446
+ .edit-post-meta-boxes-main__presenter > button[role=separator]:is(:hover, :focus)::before {
441
447
  background-color: var(--wp-admin-theme-color);
442
448
  width: 80px;
443
449
  }
444
450
 
445
- @media (pointer: coarse) {
446
- .edit-post-meta-boxes-main {
447
- padding-block-start: 36px;
448
- }
449
- .edit-post-meta-boxes-main__presenter {
450
- height: 36px;
451
- }
452
- }
453
451
  .edit-post-meta-boxes-main .edit-post-meta-boxes-main__liner {
454
452
  overflow: auto;
455
453
  }