[ Index ]

PHP Cross Reference of WordPress Trunk (Updated Daily)

Search

title

Body

[close]

/wp-includes/js/dist/ -> edit-post.js (source)

   1  var wp;
   2  (wp ||= {}).editPost = (() => {
   3    var __create = Object.create;
   4    var __defProp = Object.defineProperty;
   5    var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
   6    var __getOwnPropNames = Object.getOwnPropertyNames;
   7    var __getProtoOf = Object.getPrototypeOf;
   8    var __hasOwnProp = Object.prototype.hasOwnProperty;
   9    var __commonJS = (cb, mod) => function __require() {
  10      return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
  11    };
  12    var __export = (target, all) => {
  13      for (var name in all)
  14        __defProp(target, name, { get: all[name], enumerable: true });
  15    };
  16    var __copyProps = (to, from, except, desc) => {
  17      if (from && typeof from === "object" || typeof from === "function") {
  18        for (let key of __getOwnPropNames(from))
  19          if (!__hasOwnProp.call(to, key) && key !== except)
  20            __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
  21      }
  22      return to;
  23    };
  24    var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
  25      // If the importer is in node compatibility mode or this is not an ESM
  26      // file that has been converted to a CommonJS file using a Babel-
  27      // compatible transform (i.e. "__esModule" has not been set), then set
  28      // "default" to the CommonJS "module.exports" for node compatibility.
  29      isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
  30      mod
  31    ));
  32    var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
  33  
  34    // package-external:@wordpress/blocks
  35    var require_blocks = __commonJS({
  36      "package-external:@wordpress/blocks"(exports, module) {
  37        module.exports = window.wp.blocks;
  38      }
  39    });
  40  
  41    // package-external:@wordpress/block-library
  42    var require_block_library = __commonJS({
  43      "package-external:@wordpress/block-library"(exports, module) {
  44        module.exports = window.wp.blockLibrary;
  45      }
  46    });
  47  
  48    // package-external:@wordpress/deprecated
  49    var require_deprecated = __commonJS({
  50      "package-external:@wordpress/deprecated"(exports, module) {
  51        module.exports = window.wp.deprecated;
  52      }
  53    });
  54  
  55    // package-external:@wordpress/element
  56    var require_element = __commonJS({
  57      "package-external:@wordpress/element"(exports, module) {
  58        module.exports = window.wp.element;
  59      }
  60    });
  61  
  62    // package-external:@wordpress/data
  63    var require_data = __commonJS({
  64      "package-external:@wordpress/data"(exports, module) {
  65        module.exports = window.wp.data;
  66      }
  67    });
  68  
  69    // package-external:@wordpress/preferences
  70    var require_preferences = __commonJS({
  71      "package-external:@wordpress/preferences"(exports, module) {
  72        module.exports = window.wp.preferences;
  73      }
  74    });
  75  
  76    // package-external:@wordpress/widgets
  77    var require_widgets = __commonJS({
  78      "package-external:@wordpress/widgets"(exports, module) {
  79        module.exports = window.wp.widgets;
  80      }
  81    });
  82  
  83    // package-external:@wordpress/editor
  84    var require_editor = __commonJS({
  85      "package-external:@wordpress/editor"(exports, module) {
  86        module.exports = window.wp.editor;
  87      }
  88    });
  89  
  90    // package-external:@wordpress/i18n
  91    var require_i18n = __commonJS({
  92      "package-external:@wordpress/i18n"(exports, module) {
  93        module.exports = window.wp.i18n;
  94      }
  95    });
  96  
  97    // package-external:@wordpress/components
  98    var require_components = __commonJS({
  99      "package-external:@wordpress/components"(exports, module) {
 100        module.exports = window.wp.components;
 101      }
 102    });
 103  
 104    // vendor-external:react/jsx-runtime
 105    var require_jsx_runtime = __commonJS({
 106      "vendor-external:react/jsx-runtime"(exports, module) {
 107        module.exports = window.ReactJSXRuntime;
 108      }
 109    });
 110  
 111    // package-external:@wordpress/block-editor
 112    var require_block_editor = __commonJS({
 113      "package-external:@wordpress/block-editor"(exports, module) {
 114        module.exports = window.wp.blockEditor;
 115      }
 116    });
 117  
 118    // package-external:@wordpress/style-engine
 119    var require_style_engine = __commonJS({
 120      "package-external:@wordpress/style-engine"(exports, module) {
 121        module.exports = window.wp.styleEngine;
 122      }
 123    });
 124  
 125    // package-external:@wordpress/plugins
 126    var require_plugins = __commonJS({
 127      "package-external:@wordpress/plugins"(exports, module) {
 128        module.exports = window.wp.plugins;
 129      }
 130    });
 131  
 132    // package-external:@wordpress/primitives
 133    var require_primitives = __commonJS({
 134      "package-external:@wordpress/primitives"(exports, module) {
 135        module.exports = window.wp.primitives;
 136      }
 137    });
 138  
 139    // package-external:@wordpress/notices
 140    var require_notices = __commonJS({
 141      "package-external:@wordpress/notices"(exports, module) {
 142        module.exports = window.wp.notices;
 143      }
 144    });
 145  
 146    // package-external:@wordpress/commands
 147    var require_commands = __commonJS({
 148      "package-external:@wordpress/commands"(exports, module) {
 149        module.exports = window.wp.commands;
 150      }
 151    });
 152  
 153    // package-external:@wordpress/url
 154    var require_url = __commonJS({
 155      "package-external:@wordpress/url"(exports, module) {
 156        module.exports = window.wp.url;
 157      }
 158    });
 159  
 160    // package-external:@wordpress/html-entities
 161    var require_html_entities = __commonJS({
 162      "package-external:@wordpress/html-entities"(exports, module) {
 163        module.exports = window.wp.htmlEntities;
 164      }
 165    });
 166  
 167    // package-external:@wordpress/core-data
 168    var require_core_data = __commonJS({
 169      "package-external:@wordpress/core-data"(exports, module) {
 170        module.exports = window.wp.coreData;
 171      }
 172    });
 173  
 174    // package-external:@wordpress/compose
 175    var require_compose = __commonJS({
 176      "package-external:@wordpress/compose"(exports, module) {
 177        module.exports = window.wp.compose;
 178      }
 179    });
 180  
 181    // package-external:@wordpress/private-apis
 182    var require_private_apis = __commonJS({
 183      "package-external:@wordpress/private-apis"(exports, module) {
 184        module.exports = window.wp.privateApis;
 185      }
 186    });
 187  
 188    // package-external:@wordpress/keyboard-shortcuts
 189    var require_keyboard_shortcuts = __commonJS({
 190      "package-external:@wordpress/keyboard-shortcuts"(exports, module) {
 191        module.exports = window.wp.keyboardShortcuts;
 192      }
 193    });
 194  
 195    // package-external:@wordpress/api-fetch
 196    var require_api_fetch = __commonJS({
 197      "package-external:@wordpress/api-fetch"(exports, module) {
 198        module.exports = window.wp.apiFetch;
 199      }
 200    });
 201  
 202    // package-external:@wordpress/hooks
 203    var require_hooks = __commonJS({
 204      "package-external:@wordpress/hooks"(exports, module) {
 205        module.exports = window.wp.hooks;
 206      }
 207    });
 208  
 209    // package-external:@wordpress/keycodes
 210    var require_keycodes = __commonJS({
 211      "package-external:@wordpress/keycodes"(exports, module) {
 212        module.exports = window.wp.keycodes;
 213      }
 214    });
 215  
 216    // packages/edit-post/build-module/index.js
 217    var index_exports = {};
 218    __export(index_exports, {
 219      PluginBlockSettingsMenuItem: () => PluginBlockSettingsMenuItem,
 220      PluginDocumentSettingPanel: () => PluginDocumentSettingPanel,
 221      PluginMoreMenuItem: () => PluginMoreMenuItem,
 222      PluginPostPublishPanel: () => PluginPostPublishPanel,
 223      PluginPostStatusInfo: () => PluginPostStatusInfo,
 224      PluginPrePublishPanel: () => PluginPrePublishPanel,
 225      PluginSidebar: () => PluginSidebar,
 226      PluginSidebarMoreMenuItem: () => PluginSidebarMoreMenuItem,
 227      __experimentalFullscreenModeClose: () => fullscreen_mode_close_default,
 228      __experimentalMainDashboardButton: () => __experimentalMainDashboardButton,
 229      __experimentalPluginPostExcerpt: () => __experimentalPluginPostExcerpt,
 230      initializeEditor: () => initializeEditor,
 231      reinitializeEditor: () => reinitializeEditor,
 232      store: () => store
 233    });
 234    var import_blocks3 = __toESM(require_blocks());
 235    var import_block_library2 = __toESM(require_block_library());
 236    var import_deprecated4 = __toESM(require_deprecated());
 237    var import_element13 = __toESM(require_element());
 238    var import_data26 = __toESM(require_data());
 239    var import_preferences11 = __toESM(require_preferences());
 240    var import_widgets = __toESM(require_widgets());
 241    var import_editor20 = __toESM(require_editor());
 242  
 243    // node_modules/clsx/dist/clsx.mjs
 244    function r(e) {
 245      var t, f, n = "";
 246      if ("string" == typeof e || "number" == typeof e) n += e;
 247      else if ("object" == typeof e) if (Array.isArray(e)) {
 248        var o = e.length;
 249        for (t = 0; t < o; t++) e[t] && (f = r(e[t])) && (n && (n += " "), n += f);
 250      } else for (f in e) e[f] && (n && (n += " "), n += f);
 251      return n;
 252    }
 253    function clsx() {
 254      for (var e, t, f = 0, n = "", o = arguments.length; f < o; f++) (e = arguments[f]) && (t = r(e)) && (n && (n += " "), n += t);
 255      return n;
 256    }
 257    var clsx_default = clsx;
 258  
 259    // packages/admin-ui/build-module/navigable-region/index.js
 260    var import_element = __toESM(require_element());
 261    var import_jsx_runtime = __toESM(require_jsx_runtime());
 262    var NavigableRegion = (0, import_element.forwardRef)(
 263      ({ children, className, ariaLabel, as: Tag = "div", ...props }, ref) => {
 264        return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
 265          Tag,
 266          {
 267            ref,
 268            className: clsx_default("admin-ui-navigable-region", className),
 269            "aria-label": ariaLabel,
 270            role: "region",
 271            tabIndex: "-1",
 272            ...props,
 273            children
 274          }
 275        );
 276      }
 277    );
 278    NavigableRegion.displayName = "NavigableRegion";
 279    var navigable_region_default = NavigableRegion;
 280  
 281    // packages/edit-post/build-module/components/layout/index.js
 282    var import_editor18 = __toESM(require_editor());
 283    var import_data25 = __toESM(require_data());
 284    var import_block_editor2 = __toESM(require_block_editor());
 285  
 286    // packages/global-styles-engine/build-module/utils/common.js
 287    var import_style_engine = __toESM(require_style_engine());
 288    var ROOT_BLOCK_SELECTOR = "body";
 289    var ROOT_CSS_PROPERTIES_SELECTOR = ":root";
 290  
 291    // packages/global-styles-engine/build-module/core/render.js
 292    var import_blocks = __toESM(require_blocks());
 293    var import_style_engine2 = __toESM(require_style_engine());
 294    var import_data = __toESM(require_data());
 295  
 296    // packages/global-styles-engine/build-module/utils/spacing.js
 297    function getSpacingPresetCssVar(value) {
 298      if (!value) {
 299        return;
 300      }
 301      const slug = value.match(/var:preset\|spacing\|(.+)/);
 302      if (!slug) {
 303        return value;
 304      }
 305      return `var(--wp--preset--spacing--$slug[1]})`;
 306    }
 307  
 308    // packages/global-styles-engine/build-module/utils/gap.js
 309    function getGapBoxControlValueFromStyle(blockGapValue) {
 310      if (!blockGapValue) {
 311        return null;
 312      }
 313      const isValueString = typeof blockGapValue === "string";
 314      return {
 315        top: isValueString ? blockGapValue : blockGapValue?.top,
 316        left: isValueString ? blockGapValue : blockGapValue?.left
 317      };
 318    }
 319    function getGapCSSValue(blockGapValue, defaultValue = "0") {
 320      const blockGapBoxControlValue = getGapBoxControlValueFromStyle(blockGapValue);
 321      if (!blockGapBoxControlValue) {
 322        return null;
 323      }
 324      const row = getSpacingPresetCssVar(blockGapBoxControlValue?.top) || defaultValue;
 325      const column = getSpacingPresetCssVar(blockGapBoxControlValue?.left) || defaultValue;
 326      return row === column ? row : `$row} $column}`;
 327    }
 328  
 329    // packages/global-styles-engine/build-module/utils/layout.js
 330    var LAYOUT_DEFINITIONS = {
 331      default: {
 332        name: "default",
 333        slug: "flow",
 334        className: "is-layout-flow",
 335        baseStyles: [
 336          {
 337            selector: " > .alignleft",
 338            rules: {
 339              float: "left",
 340              "margin-inline-start": "0",
 341              "margin-inline-end": "2em"
 342            }
 343          },
 344          {
 345            selector: " > .alignright",
 346            rules: {
 347              float: "right",
 348              "margin-inline-start": "2em",
 349              "margin-inline-end": "0"
 350            }
 351          },
 352          {
 353            selector: " > .aligncenter",
 354            rules: {
 355              "margin-left": "auto !important",
 356              "margin-right": "auto !important"
 357            }
 358          }
 359        ],
 360        spacingStyles: [
 361          {
 362            selector: " > :first-child",
 363            rules: {
 364              "margin-block-start": "0"
 365            }
 366          },
 367          {
 368            selector: " > :last-child",
 369            rules: {
 370              "margin-block-end": "0"
 371            }
 372          },
 373          {
 374            selector: " > *",
 375            rules: {
 376              "margin-block-start": null,
 377              "margin-block-end": "0"
 378            }
 379          }
 380        ]
 381      },
 382      constrained: {
 383        name: "constrained",
 384        slug: "constrained",
 385        className: "is-layout-constrained",
 386        baseStyles: [
 387          {
 388            selector: " > .alignleft",
 389            rules: {
 390              float: "left",
 391              "margin-inline-start": "0",
 392              "margin-inline-end": "2em"
 393            }
 394          },
 395          {
 396            selector: " > .alignright",
 397            rules: {
 398              float: "right",
 399              "margin-inline-start": "2em",
 400              "margin-inline-end": "0"
 401            }
 402          },
 403          {
 404            selector: " > .aligncenter",
 405            rules: {
 406              "margin-left": "auto !important",
 407              "margin-right": "auto !important"
 408            }
 409          },
 410          {
 411            selector: " > :where(:not(.alignleft):not(.alignright):not(.alignfull))",
 412            rules: {
 413              "max-width": "var(--wp--style--global--content-size)",
 414              "margin-left": "auto !important",
 415              "margin-right": "auto !important"
 416            }
 417          },
 418          {
 419            selector: " > .alignwide",
 420            rules: {
 421              "max-width": "var(--wp--style--global--wide-size)"
 422            }
 423          }
 424        ],
 425        spacingStyles: [
 426          {
 427            selector: " > :first-child",
 428            rules: {
 429              "margin-block-start": "0"
 430            }
 431          },
 432          {
 433            selector: " > :last-child",
 434            rules: {
 435              "margin-block-end": "0"
 436            }
 437          },
 438          {
 439            selector: " > *",
 440            rules: {
 441              "margin-block-start": null,
 442              "margin-block-end": "0"
 443            }
 444          }
 445        ]
 446      },
 447      flex: {
 448        name: "flex",
 449        slug: "flex",
 450        className: "is-layout-flex",
 451        displayMode: "flex",
 452        baseStyles: [
 453          {
 454            selector: "",
 455            rules: {
 456              "flex-wrap": "wrap",
 457              "align-items": "center"
 458            }
 459          },
 460          {
 461            selector: " > :is(*, div)",
 462            // :is(*, div) instead of just * increases the specificity by 001.
 463            rules: {
 464              margin: "0"
 465            }
 466          }
 467        ],
 468        spacingStyles: [
 469          {
 470            selector: "",
 471            rules: {
 472              gap: null
 473            }
 474          }
 475        ]
 476      },
 477      grid: {
 478        name: "grid",
 479        slug: "grid",
 480        className: "is-layout-grid",
 481        displayMode: "grid",
 482        baseStyles: [
 483          {
 484            selector: " > :is(*, div)",
 485            // :is(*, div) instead of just * increases the specificity by 001.
 486            rules: {
 487              margin: "0"
 488            }
 489          }
 490        ],
 491        spacingStyles: [
 492          {
 493            selector: "",
 494            rules: {
 495              gap: null
 496            }
 497          }
 498        ]
 499      }
 500    };
 501  
 502    // packages/global-styles-engine/build-module/core/render.js
 503    function getLayoutStyles({
 504      layoutDefinitions = LAYOUT_DEFINITIONS,
 505      style,
 506      selector,
 507      hasBlockGapSupport,
 508      hasFallbackGapSupport,
 509      fallbackGapValue
 510    }) {
 511      let ruleset = "";
 512      let gapValue = hasBlockGapSupport ? getGapCSSValue(style?.spacing?.blockGap) : "";
 513      if (hasFallbackGapSupport) {
 514        if (selector === ROOT_BLOCK_SELECTOR) {
 515          gapValue = !gapValue ? "0.5em" : gapValue;
 516        } else if (!hasBlockGapSupport && fallbackGapValue) {
 517          gapValue = fallbackGapValue;
 518        }
 519      }
 520      if (gapValue && layoutDefinitions) {
 521        Object.values(layoutDefinitions).forEach(
 522          ({ className, name, spacingStyles }) => {
 523            if (!hasBlockGapSupport && "flex" !== name && "grid" !== name) {
 524              return;
 525            }
 526            if (spacingStyles?.length) {
 527              spacingStyles.forEach((spacingStyle) => {
 528                const declarations = [];
 529                if (spacingStyle.rules) {
 530                  Object.entries(spacingStyle.rules).forEach(
 531                    ([cssProperty, cssValue]) => {
 532                      declarations.push(
 533                        `$cssProperty}: $cssValue ? cssValue : gapValue}`
 534                      );
 535                    }
 536                  );
 537                }
 538                if (declarations.length) {
 539                  let combinedSelector = "";
 540                  if (!hasBlockGapSupport) {
 541                    combinedSelector = selector === ROOT_BLOCK_SELECTOR ? `:where(.$className}$spacingStyle?.selector || ""})` : `:where($selector}.$className}$spacingStyle?.selector || ""})`;
 542                  } else {
 543                    combinedSelector = selector === ROOT_BLOCK_SELECTOR ? `:root :where(.$className})$spacingStyle?.selector || ""}` : `:root :where($selector}-$className})$spacingStyle?.selector || ""}`;
 544                  }
 545                  ruleset += `$combinedSelector} { $declarations.join(
 546                    "; "
 547                  )}; }`;
 548                }
 549              });
 550            }
 551          }
 552        );
 553        if (selector === ROOT_BLOCK_SELECTOR && hasBlockGapSupport) {
 554          ruleset += `$ROOT_CSS_PROPERTIES_SELECTOR} { --wp--style--block-gap: $gapValue}; }`;
 555        }
 556      }
 557      if (selector === ROOT_BLOCK_SELECTOR && layoutDefinitions) {
 558        const validDisplayModes = ["block", "flex", "grid"];
 559        Object.values(layoutDefinitions).forEach(
 560          ({ className, displayMode, baseStyles }) => {
 561            if (displayMode && validDisplayModes.includes(displayMode)) {
 562              ruleset += `$selector} .$className} { display:$displayMode}; }`;
 563            }
 564            if (baseStyles?.length) {
 565              baseStyles.forEach((baseStyle) => {
 566                const declarations = [];
 567                if (baseStyle.rules) {
 568                  Object.entries(baseStyle.rules).forEach(
 569                    ([cssProperty, cssValue]) => {
 570                      declarations.push(
 571                        `$cssProperty}: $cssValue}`
 572                      );
 573                    }
 574                  );
 575                }
 576                if (declarations.length) {
 577                  const combinedSelector = `.$className}$baseStyle?.selector || ""}`;
 578                  ruleset += `$combinedSelector} { $declarations.join(
 579                    "; "
 580                  )}; }`;
 581                }
 582              });
 583            }
 584          }
 585        );
 586      }
 587      return ruleset;
 588    }
 589  
 590    // packages/edit-post/build-module/components/layout/index.js
 591    var import_plugins = __toESM(require_plugins());
 592    var import_i18n14 = __toESM(require_i18n());
 593    var import_element12 = __toESM(require_element());
 594  
 595    // packages/icons/build-module/library/arrow-up-left.js
 596    var import_primitives = __toESM(require_primitives());
 597    var import_jsx_runtime2 = __toESM(require_jsx_runtime());
 598    var arrow_up_left_default = /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_primitives.SVG, { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_primitives.Path, { d: "M14 6H6v8h1.5V8.5L17 18l1-1-9.5-9.5H14V6Z" }) });
 599  
 600    // packages/icons/build-module/library/chevron-down.js
 601    var import_primitives2 = __toESM(require_primitives());
 602    var import_jsx_runtime3 = __toESM(require_jsx_runtime());
 603    var chevron_down_default = /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_primitives2.SVG, { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_primitives2.Path, { d: "M17.5 11.6L12 16l-5.5-4.4.9-1.2L12 14l4.5-3.6 1 1.2z" }) });
 604  
 605    // packages/icons/build-module/library/chevron-up.js
 606    var import_primitives3 = __toESM(require_primitives());
 607    var import_jsx_runtime4 = __toESM(require_jsx_runtime());
 608    var chevron_up_default = /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_primitives3.SVG, { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_primitives3.Path, { d: "M6.5 12.4L12 8l5.5 4.4-.9 1.2L12 10l-4.5 3.6-1-1.2z" }) });
 609  
 610    // packages/icons/build-module/library/fullscreen.js
 611    var import_primitives4 = __toESM(require_primitives());
 612    var import_jsx_runtime5 = __toESM(require_jsx_runtime());
 613    var fullscreen_default = /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_primitives4.SVG, { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_primitives4.Path, { d: "M6 4a2 2 0 0 0-2 2v3h1.5V6a.5.5 0 0 1 .5-.5h3V4H6Zm3 14.5H6a.5.5 0 0 1-.5-.5v-3H4v3a2 2 0 0 0 2 2h3v-1.5Zm6 1.5v-1.5h3a.5.5 0 0 0 .5-.5v-3H20v3a2 2 0 0 1-2 2h-3Zm3-16a2 2 0 0 1 2 2v3h-1.5V6a.5.5 0 0 0-.5-.5h-3V4h3Z" }) });
 614  
 615    // packages/icons/build-module/library/wordpress.js
 616    var import_primitives5 = __toESM(require_primitives());
 617    var import_jsx_runtime6 = __toESM(require_jsx_runtime());
 618    var wordpress_default = /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_primitives5.SVG, { xmlns: "http://www.w3.org/2000/svg", viewBox: "-2 -2 24 24", children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_primitives5.Path, { d: "M20 10c0-5.51-4.49-10-10-10C4.48 0 0 4.49 0 10c0 5.52 4.48 10 10 10 5.51 0 10-4.48 10-10zM7.78 15.37L4.37 6.22c.55-.02 1.17-.08 1.17-.08.5-.06.44-1.13-.06-1.11 0 0-1.45.11-2.37.11-.18 0-.37 0-.58-.01C4.12 2.69 6.87 1.11 10 1.11c2.33 0 4.45.87 6.05 2.34-.68-.11-1.65.39-1.65 1.58 0 .74.45 1.36.9 2.1.35.61.55 1.36.55 2.46 0 1.49-1.4 5-1.4 5l-3.03-8.37c.54-.02.82-.17.82-.17.5-.05.44-1.25-.06-1.22 0 0-1.44.12-2.38.12-.87 0-2.33-.12-2.33-.12-.5-.03-.56 1.2-.06 1.22l.92.08 1.26 3.41zM17.41 10c.24-.64.74-1.87.43-4.25.7 1.29 1.05 2.71 1.05 4.25 0 3.29-1.73 6.24-4.4 7.78.97-2.59 1.94-5.2 2.92-7.78zM6.1 18.09C3.12 16.65 1.11 13.53 1.11 10c0-1.3.23-2.48.72-3.59C3.25 10.3 4.67 14.2 6.1 18.09zm4.03-6.63l2.58 6.98c-.86.29-1.76.45-2.71.45-.79 0-1.57-.11-2.29-.33.81-2.38 1.62-4.74 2.42-7.1z" }) });
 619  
 620    // packages/edit-post/build-module/components/layout/index.js
 621    var import_notices3 = __toESM(require_notices());
 622    var import_preferences10 = __toESM(require_preferences());
 623    var import_commands2 = __toESM(require_commands());
 624    var import_block_library = __toESM(require_block_library());
 625    var import_url5 = __toESM(require_url());
 626    var import_html_entities = __toESM(require_html_entities());
 627    var import_core_data6 = __toESM(require_core_data());
 628    var import_components9 = __toESM(require_components());
 629    var import_compose3 = __toESM(require_compose());
 630  
 631    // packages/edit-post/build-module/components/back-button/index.js
 632    var import_editor2 = __toESM(require_editor());
 633    var import_components2 = __toESM(require_components());
 634  
 635    // packages/edit-post/build-module/components/back-button/fullscreen-mode-close.js
 636    var import_data2 = __toESM(require_data());
 637    var import_components = __toESM(require_components());
 638    var import_i18n = __toESM(require_i18n());
 639    var import_url = __toESM(require_url());
 640    var import_editor = __toESM(require_editor());
 641    var import_core_data = __toESM(require_core_data());
 642    var import_compose = __toESM(require_compose());
 643    var import_jsx_runtime7 = __toESM(require_jsx_runtime());
 644    var siteIconVariants = {
 645      edit: {
 646        clipPath: "inset(0% round 0px)"
 647      },
 648      hover: {
 649        clipPath: "inset( 22% round 2px )"
 650      },
 651      tap: {
 652        clipPath: "inset(0% round 0px)"
 653      }
 654    };
 655    var toggleHomeIconVariants = {
 656      edit: {
 657        opacity: 0,
 658        scale: 0.2
 659      },
 660      hover: {
 661        opacity: 1,
 662        scale: 1,
 663        clipPath: "inset( 22% round 2px )"
 664      }
 665    };
 666    function FullscreenModeClose({ showTooltip, icon, href, initialPost }) {
 667      const { isRequestingSiteIcon, postType, siteIconUrl } = (0, import_data2.useSelect)(
 668        (select3) => {
 669          const { getCurrentPostType } = select3(import_editor.store);
 670          const { getEntityRecord, getPostType, isResolving } = select3(import_core_data.store);
 671          const siteData = getEntityRecord("root", "__unstableBase", void 0) || {};
 672          const _postType = initialPost?.type || getCurrentPostType();
 673          return {
 674            isRequestingSiteIcon: isResolving("getEntityRecord", [
 675              "root",
 676              "__unstableBase",
 677              void 0
 678            ]),
 679            postType: getPostType(_postType),
 680            siteIconUrl: siteData.site_icon_url
 681          };
 682        },
 683        [initialPost?.type]
 684      );
 685      const disableMotion = (0, import_compose.useReducedMotion)();
 686      const transition = {
 687        duration: disableMotion ? 0 : 0.2
 688      };
 689      if (!postType) {
 690        return null;
 691      }
 692      let siteIconContent;
 693      if (isRequestingSiteIcon && !siteIconUrl) {
 694        siteIconContent = /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { className: "edit-post-fullscreen-mode-close-site-icon__image" });
 695      } else if (siteIconUrl) {
 696        siteIconContent = /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
 697          "img",
 698          {
 699            className: "edit-post-fullscreen-mode-close-site-icon__image",
 700            alt: (0, import_i18n.__)("Site Icon"),
 701            src: siteIconUrl
 702          }
 703        );
 704      } else {
 705        siteIconContent = /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
 706          import_components.Icon,
 707          {
 708            className: "edit-post-fullscreen-mode-close-site-icon__icon",
 709            icon: wordpress_default,
 710            size: 48
 711          }
 712        );
 713      }
 714      const buttonIcon = icon ? /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_components.Icon, { size: "36px", icon }) : /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { className: "edit-post-fullscreen-mode-close-site-icon", children: siteIconContent });
 715      const classes = clsx_default("edit-post-fullscreen-mode-close", {
 716        "has-icon": siteIconUrl
 717      });
 718      const buttonHref = href ?? (0, import_url.addQueryArgs)("edit.php", {
 719        post_type: postType.slug
 720      });
 721      const buttonLabel = postType?.labels?.view_items ?? (0, import_i18n.__)("Back");
 722      return /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
 723        import_components.__unstableMotion.div,
 724        {
 725          className: "edit-post-fullscreen-mode-close__view-mode-toggle",
 726          animate: "edit",
 727          initial: "edit",
 728          whileHover: "hover",
 729          whileTap: "tap",
 730          transition,
 731          children: [
 732            /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
 733              import_components.Button,
 734              {
 735                __next40pxDefaultSize: true,
 736                className: classes,
 737                href: buttonHref,
 738                label: buttonLabel,
 739                showTooltip,
 740                tooltipPosition: "middle right",
 741                children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_components.__unstableMotion.div, { variants: !disableMotion && siteIconVariants, children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { className: "edit-post-fullscreen-mode-close__view-mode-toggle-icon", children: buttonIcon }) })
 742              }
 743            ),
 744            /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
 745              import_components.__unstableMotion.div,
 746              {
 747                className: clsx_default(
 748                  "edit-post-fullscreen-mode-close__back-icon",
 749                  {
 750                    "has-site-icon": siteIconUrl
 751                  }
 752                ),
 753                variants: !disableMotion && toggleHomeIconVariants,
 754                children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_components.Icon, { icon: arrow_up_left_default })
 755              }
 756            )
 757          ]
 758        }
 759      );
 760    }
 761    var fullscreen_mode_close_default = FullscreenModeClose;
 762  
 763    // packages/edit-post/build-module/lock-unlock.js
 764    var import_private_apis = __toESM(require_private_apis());
 765    var { lock, unlock } = (0, import_private_apis.__dangerousOptInToUnstableAPIsOnlyForCoreModules)(
 766      "I acknowledge private features are not for use in themes or plugins and doing so will break in the next version of WordPress.",
 767      "@wordpress/edit-post"
 768    );
 769  
 770    // packages/edit-post/build-module/components/back-button/index.js
 771    var import_jsx_runtime8 = __toESM(require_jsx_runtime());
 772    var { BackButton: BackButtonFill } = unlock(import_editor2.privateApis);
 773    var slideX = {
 774      hidden: { x: "-100%" },
 775      distractionFreeInactive: { x: 0 },
 776      hover: { x: 0, transition: { type: "tween", delay: 0.2 } }
 777    };
 778    function BackButton({ initialPost }) {
 779      return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(BackButtonFill, { children: ({ length }) => length <= 1 && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
 780        import_components2.__unstableMotion.div,
 781        {
 782          variants: slideX,
 783          transition: { type: "tween", delay: 0.8 },
 784          children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
 785            fullscreen_mode_close_default,
 786            {
 787              showTooltip: true,
 788              initialPost
 789            }
 790          )
 791        }
 792      ) });
 793    }
 794    var back_button_default = BackButton;
 795  
 796    // packages/edit-post/build-module/components/editor-initialization/listener-hooks.js
 797    var import_data3 = __toESM(require_data());
 798    var import_element2 = __toESM(require_element());
 799    var import_editor3 = __toESM(require_editor());
 800    var import_core_data2 = __toESM(require_core_data());
 801  
 802    // packages/edit-post/build-module/store/constants.js
 803    var STORE_NAME = "core/edit-post";
 804    var VIEW_AS_LINK_SELECTOR = "#wp-admin-bar-view a";
 805    var VIEW_AS_PREVIEW_LINK_SELECTOR = "#wp-admin-bar-preview a";
 806  
 807    // packages/edit-post/build-module/components/editor-initialization/listener-hooks.js
 808    var useUpdatePostLinkListener = () => {
 809      const { isViewable, newPermalink } = (0, import_data3.useSelect)((select3) => {
 810        const { getPostType } = select3(import_core_data2.store);
 811        const { getCurrentPost, getEditedPostAttribute } = select3(import_editor3.store);
 812        const postType = getPostType(getEditedPostAttribute("type"));
 813        return {
 814          isViewable: postType?.viewable,
 815          newPermalink: getCurrentPost().link
 816        };
 817      }, []);
 818      const nodeToUpdateRef = (0, import_element2.useRef)();
 819      (0, import_element2.useEffect)(() => {
 820        nodeToUpdateRef.current = document.querySelector(VIEW_AS_PREVIEW_LINK_SELECTOR) || document.querySelector(VIEW_AS_LINK_SELECTOR);
 821      }, []);
 822      (0, import_element2.useEffect)(() => {
 823        if (!newPermalink || !nodeToUpdateRef.current) {
 824          return;
 825        }
 826        if (!isViewable) {
 827          nodeToUpdateRef.current.style.display = "none";
 828          return;
 829        }
 830        nodeToUpdateRef.current.style.display = "";
 831        nodeToUpdateRef.current.setAttribute("href", newPermalink);
 832      }, [newPermalink, isViewable]);
 833    };
 834  
 835    // packages/edit-post/build-module/components/editor-initialization/index.js
 836    function EditorInitialization() {
 837      useUpdatePostLinkListener();
 838      return null;
 839    }
 840  
 841    // packages/edit-post/build-module/components/keyboard-shortcuts/index.js
 842    var import_element3 = __toESM(require_element());
 843    var import_data7 = __toESM(require_data());
 844    var import_keyboard_shortcuts = __toESM(require_keyboard_shortcuts());
 845    var import_i18n3 = __toESM(require_i18n());
 846  
 847    // packages/edit-post/build-module/store/index.js
 848    var import_data6 = __toESM(require_data());
 849  
 850    // packages/edit-post/build-module/store/reducer.js
 851    var import_data4 = __toESM(require_data());
 852    function isSavingMetaBoxes(state = false, action) {
 853      switch (action.type) {
 854        case "REQUEST_META_BOX_UPDATES":
 855          return true;
 856        case "META_BOX_UPDATES_SUCCESS":
 857        case "META_BOX_UPDATES_FAILURE":
 858          return false;
 859        default:
 860          return state;
 861      }
 862    }
 863    function mergeMetaboxes(metaboxes = [], newMetaboxes) {
 864      const mergedMetaboxes = [...metaboxes];
 865      for (const metabox of newMetaboxes) {
 866        const existing = mergedMetaboxes.findIndex(
 867          (box) => box.id === metabox.id
 868        );
 869        if (existing !== -1) {
 870          mergedMetaboxes[existing] = metabox;
 871        } else {
 872          mergedMetaboxes.push(metabox);
 873        }
 874      }
 875      return mergedMetaboxes;
 876    }
 877    function metaBoxLocations(state = {}, action) {
 878      switch (action.type) {
 879        case "SET_META_BOXES_PER_LOCATIONS": {
 880          const newState = { ...state };
 881          for (const [location, metaboxes] of Object.entries(
 882            action.metaBoxesPerLocation
 883          )) {
 884            newState[location] = mergeMetaboxes(
 885              newState[location],
 886              metaboxes
 887            );
 888          }
 889          return newState;
 890        }
 891      }
 892      return state;
 893    }
 894    function metaBoxesInitialized(state = false, action) {
 895      switch (action.type) {
 896        case "META_BOXES_INITIALIZED":
 897          return true;
 898      }
 899      return state;
 900    }
 901    var metaBoxes = (0, import_data4.combineReducers)({
 902      isSaving: isSavingMetaBoxes,
 903      locations: metaBoxLocations,
 904      initialized: metaBoxesInitialized
 905    });
 906    var reducer_default = (0, import_data4.combineReducers)({
 907      metaBoxes
 908    });
 909  
 910    // packages/edit-post/build-module/store/actions.js
 911    var actions_exports = {};
 912    __export(actions_exports, {
 913      __experimentalSetPreviewDeviceType: () => __experimentalSetPreviewDeviceType,
 914      __unstableCreateTemplate: () => __unstableCreateTemplate,
 915      closeGeneralSidebar: () => closeGeneralSidebar,
 916      closeModal: () => closeModal,
 917      closePublishSidebar: () => closePublishSidebar,
 918      hideBlockTypes: () => hideBlockTypes,
 919      initializeMetaBoxes: () => initializeMetaBoxes,
 920      metaBoxUpdatesFailure: () => metaBoxUpdatesFailure,
 921      metaBoxUpdatesSuccess: () => metaBoxUpdatesSuccess,
 922      openGeneralSidebar: () => openGeneralSidebar,
 923      openModal: () => openModal,
 924      openPublishSidebar: () => openPublishSidebar,
 925      removeEditorPanel: () => removeEditorPanel,
 926      requestMetaBoxUpdates: () => requestMetaBoxUpdates,
 927      setAvailableMetaBoxesPerLocation: () => setAvailableMetaBoxesPerLocation,
 928      setIsEditingTemplate: () => setIsEditingTemplate,
 929      setIsInserterOpened: () => setIsInserterOpened,
 930      setIsListViewOpened: () => setIsListViewOpened,
 931      showBlockTypes: () => showBlockTypes,
 932      switchEditorMode: () => switchEditorMode,
 933      toggleDistractionFree: () => toggleDistractionFree,
 934      toggleEditorPanelEnabled: () => toggleEditorPanelEnabled,
 935      toggleEditorPanelOpened: () => toggleEditorPanelOpened,
 936      toggleFeature: () => toggleFeature,
 937      toggleFullscreenMode: () => toggleFullscreenMode,
 938      togglePinnedPluginItem: () => togglePinnedPluginItem,
 939      togglePublishSidebar: () => togglePublishSidebar,
 940      updatePreferredStyleVariations: () => updatePreferredStyleVariations
 941    });
 942    var import_api_fetch = __toESM(require_api_fetch());
 943    var import_preferences = __toESM(require_preferences());
 944    var import_editor4 = __toESM(require_editor());
 945    var import_deprecated = __toESM(require_deprecated());
 946    var import_hooks = __toESM(require_hooks());
 947    var import_core_data3 = __toESM(require_core_data());
 948    var import_notices = __toESM(require_notices());
 949    var import_i18n2 = __toESM(require_i18n());
 950  
 951    // packages/edit-post/build-module/utils/meta-boxes.js
 952    var getMetaBoxContainer = (location) => {
 953      const area = document.querySelector(
 954        `.edit-post-meta-boxes-area.is-$location} .metabox-location-$location}`
 955      );
 956      if (area) {
 957        return area;
 958      }
 959      return document.querySelector("#metaboxes .metabox-location-" + location);
 960    };
 961  
 962    // packages/edit-post/build-module/store/actions.js
 963    var { interfaceStore } = unlock(import_editor4.privateApis);
 964    var openGeneralSidebar = (name) => ({ registry }) => {
 965      registry.dispatch(interfaceStore).enableComplementaryArea("core", name);
 966    };
 967    var closeGeneralSidebar = () => ({ registry }) => registry.dispatch(interfaceStore).disableComplementaryArea("core");
 968    var openModal = (name) => ({ registry }) => {
 969      (0, import_deprecated.default)("select( 'core/edit-post' ).openModal( name )", {
 970        since: "6.3",
 971        alternative: "select( 'core/interface').openModal( name )"
 972      });
 973      return registry.dispatch(interfaceStore).openModal(name);
 974    };
 975    var closeModal = () => ({ registry }) => {
 976      (0, import_deprecated.default)("select( 'core/edit-post' ).closeModal()", {
 977        since: "6.3",
 978        alternative: "select( 'core/interface').closeModal()"
 979      });
 980      return registry.dispatch(interfaceStore).closeModal();
 981    };
 982    var openPublishSidebar = () => ({ registry }) => {
 983      (0, import_deprecated.default)("dispatch( 'core/edit-post' ).openPublishSidebar", {
 984        since: "6.6",
 985        alternative: "dispatch( 'core/editor').openPublishSidebar"
 986      });
 987      registry.dispatch(import_editor4.store).openPublishSidebar();
 988    };
 989    var closePublishSidebar = () => ({ registry }) => {
 990      (0, import_deprecated.default)("dispatch( 'core/edit-post' ).closePublishSidebar", {
 991        since: "6.6",
 992        alternative: "dispatch( 'core/editor').closePublishSidebar"
 993      });
 994      registry.dispatch(import_editor4.store).closePublishSidebar();
 995    };
 996    var togglePublishSidebar = () => ({ registry }) => {
 997      (0, import_deprecated.default)("dispatch( 'core/edit-post' ).togglePublishSidebar", {
 998        since: "6.6",
 999        alternative: "dispatch( 'core/editor').togglePublishSidebar"
1000      });
1001      registry.dispatch(import_editor4.store).togglePublishSidebar();
1002    };
1003    var toggleEditorPanelEnabled = (panelName) => ({ registry }) => {
1004      (0, import_deprecated.default)("dispatch( 'core/edit-post' ).toggleEditorPanelEnabled", {
1005        since: "6.5",
1006        alternative: "dispatch( 'core/editor').toggleEditorPanelEnabled"
1007      });
1008      registry.dispatch(import_editor4.store).toggleEditorPanelEnabled(panelName);
1009    };
1010    var toggleEditorPanelOpened = (panelName) => ({ registry }) => {
1011      (0, import_deprecated.default)("dispatch( 'core/edit-post' ).toggleEditorPanelOpened", {
1012        since: "6.5",
1013        alternative: "dispatch( 'core/editor').toggleEditorPanelOpened"
1014      });
1015      registry.dispatch(import_editor4.store).toggleEditorPanelOpened(panelName);
1016    };
1017    var removeEditorPanel = (panelName) => ({ registry }) => {
1018      (0, import_deprecated.default)("dispatch( 'core/edit-post' ).removeEditorPanel", {
1019        since: "6.5",
1020        alternative: "dispatch( 'core/editor').removeEditorPanel"
1021      });
1022      registry.dispatch(import_editor4.store).removeEditorPanel(panelName);
1023    };
1024    var toggleFeature = (feature) => ({ registry }) => registry.dispatch(import_preferences.store).toggle("core/edit-post", feature);
1025    var switchEditorMode = (mode) => ({ registry }) => {
1026      (0, import_deprecated.default)("dispatch( 'core/edit-post' ).switchEditorMode", {
1027        since: "6.6",
1028        alternative: "dispatch( 'core/editor').switchEditorMode"
1029      });
1030      registry.dispatch(import_editor4.store).switchEditorMode(mode);
1031    };
1032    var togglePinnedPluginItem = (pluginName) => ({ registry }) => {
1033      const isPinned = registry.select(interfaceStore).isItemPinned("core", pluginName);
1034      registry.dispatch(interfaceStore)[isPinned ? "unpinItem" : "pinItem"]("core", pluginName);
1035    };
1036    function updatePreferredStyleVariations() {
1037      (0, import_deprecated.default)("dispatch( 'core/edit-post' ).updatePreferredStyleVariations", {
1038        since: "6.6",
1039        hint: "Preferred Style Variations are not supported anymore."
1040      });
1041      return { type: "NOTHING" };
1042    }
1043    var showBlockTypes = (blockNames) => ({ registry }) => {
1044      unlock(registry.dispatch(import_editor4.store)).showBlockTypes(blockNames);
1045    };
1046    var hideBlockTypes = (blockNames) => ({ registry }) => {
1047      unlock(registry.dispatch(import_editor4.store)).hideBlockTypes(blockNames);
1048    };
1049    function setAvailableMetaBoxesPerLocation(metaBoxesPerLocation) {
1050      return {
1051        type: "SET_META_BOXES_PER_LOCATIONS",
1052        metaBoxesPerLocation
1053      };
1054    }
1055    var requestMetaBoxUpdates = () => async ({ registry, select: select3, dispatch: dispatch2 }) => {
1056      dispatch2({
1057        type: "REQUEST_META_BOX_UPDATES"
1058      });
1059      if (window.tinyMCE) {
1060        window.tinyMCE.triggerSave();
1061      }
1062      const baseFormData = new window.FormData(
1063        document.querySelector(".metabox-base-form")
1064      );
1065      const postId = baseFormData.get("post_ID");
1066      const postType = baseFormData.get("post_type");
1067      const post = registry.select(import_core_data3.store).getEditedEntityRecord("postType", postType, postId);
1068      const additionalData = [
1069        post.comment_status ? ["comment_status", post.comment_status] : false,
1070        post.ping_status ? ["ping_status", post.ping_status] : false,
1071        post.sticky ? ["sticky", post.sticky] : false,
1072        post.author ? ["post_author", post.author] : false
1073      ].filter(Boolean);
1074      const activeMetaBoxLocations = select3.getActiveMetaBoxLocations();
1075      const formDataToMerge = [
1076        baseFormData,
1077        ...activeMetaBoxLocations.map(
1078          (location) => new window.FormData(getMetaBoxContainer(location))
1079        )
1080      ];
1081      const formData = formDataToMerge.reduce((memo, currentFormData) => {
1082        for (const [key, value] of currentFormData) {
1083          memo.append(key, value);
1084        }
1085        return memo;
1086      }, new window.FormData());
1087      additionalData.forEach(
1088        ([key, value]) => formData.append(key, value)
1089      );
1090      try {
1091        await (0, import_api_fetch.default)({
1092          url: window._wpMetaBoxUrl,
1093          method: "POST",
1094          body: formData,
1095          parse: false
1096        });
1097        dispatch2.metaBoxUpdatesSuccess();
1098      } catch {
1099        dispatch2.metaBoxUpdatesFailure();
1100      }
1101    };
1102    function metaBoxUpdatesSuccess() {
1103      return {
1104        type: "META_BOX_UPDATES_SUCCESS"
1105      };
1106    }
1107    function metaBoxUpdatesFailure() {
1108      return {
1109        type: "META_BOX_UPDATES_FAILURE"
1110      };
1111    }
1112    var __experimentalSetPreviewDeviceType = (deviceType) => ({ registry }) => {
1113      (0, import_deprecated.default)(
1114        "dispatch( 'core/edit-post' ).__experimentalSetPreviewDeviceType",
1115        {
1116          since: "6.5",
1117          version: "6.7",
1118          hint: "registry.dispatch( editorStore ).setDeviceType"
1119        }
1120      );
1121      registry.dispatch(import_editor4.store).setDeviceType(deviceType);
1122    };
1123    var setIsInserterOpened = (value) => ({ registry }) => {
1124      (0, import_deprecated.default)("dispatch( 'core/edit-post' ).setIsInserterOpened", {
1125        since: "6.5",
1126        alternative: "dispatch( 'core/editor').setIsInserterOpened"
1127      });
1128      registry.dispatch(import_editor4.store).setIsInserterOpened(value);
1129    };
1130    var setIsListViewOpened = (isOpen) => ({ registry }) => {
1131      (0, import_deprecated.default)("dispatch( 'core/edit-post' ).setIsListViewOpened", {
1132        since: "6.5",
1133        alternative: "dispatch( 'core/editor').setIsListViewOpened"
1134      });
1135      registry.dispatch(import_editor4.store).setIsListViewOpened(isOpen);
1136    };
1137    function setIsEditingTemplate() {
1138      (0, import_deprecated.default)("dispatch( 'core/edit-post' ).setIsEditingTemplate", {
1139        since: "6.5",
1140        alternative: "dispatch( 'core/editor').setRenderingMode"
1141      });
1142      return { type: "NOTHING" };
1143    }
1144    function __unstableCreateTemplate() {
1145      (0, import_deprecated.default)("dispatch( 'core/edit-post' ).__unstableCreateTemplate", {
1146        since: "6.5"
1147      });
1148      return { type: "NOTHING" };
1149    }
1150    var metaBoxesInitialized2 = false;
1151    var initializeMetaBoxes = () => ({ registry, select: select3, dispatch: dispatch2 }) => {
1152      const isEditorReady = registry.select(import_editor4.store).__unstableIsEditorReady();
1153      if (!isEditorReady) {
1154        return;
1155      }
1156      if (metaBoxesInitialized2) {
1157        return;
1158      }
1159      const postType = registry.select(import_editor4.store).getCurrentPostType();
1160      if (window.postboxes.page !== postType) {
1161        window.postboxes.add_postbox_toggles(postType);
1162      }
1163      metaBoxesInitialized2 = true;
1164      (0, import_hooks.addAction)(
1165        "editor.savePost",
1166        "core/edit-post/save-metaboxes",
1167        async (post, options) => {
1168          if (!options.isAutosave && select3.hasMetaBoxes()) {
1169            await dispatch2.requestMetaBoxUpdates();
1170          }
1171        }
1172      );
1173      dispatch2({
1174        type: "META_BOXES_INITIALIZED"
1175      });
1176    };
1177    var toggleDistractionFree = () => ({ registry }) => {
1178      (0, import_deprecated.default)("dispatch( 'core/edit-post' ).toggleDistractionFree", {
1179        since: "6.6",
1180        alternative: "dispatch( 'core/editor').toggleDistractionFree"
1181      });
1182      registry.dispatch(import_editor4.store).toggleDistractionFree();
1183    };
1184    var toggleFullscreenMode = () => ({ registry }) => {
1185      const isFullscreen = registry.select(import_preferences.store).get("core/edit-post", "fullscreenMode");
1186      registry.dispatch(import_preferences.store).toggle("core/edit-post", "fullscreenMode");
1187      registry.dispatch(import_notices.store).createInfoNotice(
1188        isFullscreen ? (0, import_i18n2.__)("Fullscreen mode deactivated.") : (0, import_i18n2.__)("Fullscreen mode activated."),
1189        {
1190          id: "core/edit-post/toggle-fullscreen-mode/notice",
1191          type: "snackbar",
1192          actions: [
1193            {
1194              label: (0, import_i18n2.__)("Undo"),
1195              onClick: () => {
1196                registry.dispatch(import_preferences.store).toggle(
1197                  "core/edit-post",
1198                  "fullscreenMode"
1199                );
1200              }
1201            }
1202          ]
1203        }
1204      );
1205    };
1206  
1207    // packages/edit-post/build-module/store/selectors.js
1208    var selectors_exports = {};
1209    __export(selectors_exports, {
1210      __experimentalGetInsertionPoint: () => __experimentalGetInsertionPoint,
1211      __experimentalGetPreviewDeviceType: () => __experimentalGetPreviewDeviceType,
1212      areMetaBoxesInitialized: () => areMetaBoxesInitialized,
1213      getActiveGeneralSidebarName: () => getActiveGeneralSidebarName,
1214      getActiveMetaBoxLocations: () => getActiveMetaBoxLocations,
1215      getAllMetaBoxes: () => getAllMetaBoxes,
1216      getEditedPostTemplate: () => getEditedPostTemplate,
1217      getEditorMode: () => getEditorMode,
1218      getHiddenBlockTypes: () => getHiddenBlockTypes,
1219      getMetaBoxesPerLocation: () => getMetaBoxesPerLocation,
1220      getPreference: () => getPreference,
1221      getPreferences: () => getPreferences,
1222      hasMetaBoxes: () => hasMetaBoxes,
1223      isEditingTemplate: () => isEditingTemplate,
1224      isEditorPanelEnabled: () => isEditorPanelEnabled,
1225      isEditorPanelOpened: () => isEditorPanelOpened,
1226      isEditorPanelRemoved: () => isEditorPanelRemoved,
1227      isEditorSidebarOpened: () => isEditorSidebarOpened,
1228      isFeatureActive: () => isFeatureActive,
1229      isInserterOpened: () => isInserterOpened,
1230      isListViewOpened: () => isListViewOpened,
1231      isMetaBoxLocationActive: () => isMetaBoxLocationActive,
1232      isMetaBoxLocationVisible: () => isMetaBoxLocationVisible,
1233      isModalActive: () => isModalActive,
1234      isPluginItemPinned: () => isPluginItemPinned,
1235      isPluginSidebarOpened: () => isPluginSidebarOpened,
1236      isPublishSidebarOpened: () => isPublishSidebarOpened,
1237      isSavingMetaBoxes: () => isSavingMetaBoxes2
1238    });
1239    var import_data5 = __toESM(require_data());
1240    var import_preferences2 = __toESM(require_preferences());
1241    var import_core_data4 = __toESM(require_core_data());
1242    var import_editor5 = __toESM(require_editor());
1243    var import_deprecated2 = __toESM(require_deprecated());
1244    var { interfaceStore: interfaceStore2 } = unlock(import_editor5.privateApis);
1245    var EMPTY_ARRAY = [];
1246    var EMPTY_OBJECT = {};
1247    var getEditorMode = (0, import_data5.createRegistrySelector)(
1248      (select3) => () => select3(import_preferences2.store).get("core", "editorMode") ?? "visual"
1249    );
1250    var isEditorSidebarOpened = (0, import_data5.createRegistrySelector)(
1251      (select3) => () => {
1252        const activeGeneralSidebar = select3(interfaceStore2).getActiveComplementaryArea("core");
1253        return ["edit-post/document", "edit-post/block"].includes(
1254          activeGeneralSidebar
1255        );
1256      }
1257    );
1258    var isPluginSidebarOpened = (0, import_data5.createRegistrySelector)(
1259      (select3) => () => {
1260        const activeGeneralSidebar = select3(interfaceStore2).getActiveComplementaryArea("core");
1261        return !!activeGeneralSidebar && !["edit-post/document", "edit-post/block"].includes(
1262          activeGeneralSidebar
1263        );
1264      }
1265    );
1266    var getActiveGeneralSidebarName = (0, import_data5.createRegistrySelector)(
1267      (select3) => () => {
1268        return select3(interfaceStore2).getActiveComplementaryArea("core");
1269      }
1270    );
1271    function convertPanelsToOldFormat(inactivePanels, openPanels) {
1272      const panelsWithEnabledState = inactivePanels?.reduce(
1273        (accumulatedPanels, panelName) => ({
1274          ...accumulatedPanels,
1275          [panelName]: {
1276            enabled: false
1277          }
1278        }),
1279        {}
1280      );
1281      const panels = openPanels?.reduce((accumulatedPanels, panelName) => {
1282        const currentPanelState = accumulatedPanels?.[panelName];
1283        return {
1284          ...accumulatedPanels,
1285          [panelName]: {
1286            ...currentPanelState,
1287            opened: true
1288          }
1289        };
1290      }, panelsWithEnabledState ?? {});
1291      return panels ?? panelsWithEnabledState ?? EMPTY_OBJECT;
1292    }
1293    var getPreferences = (0, import_data5.createRegistrySelector)((select3) => () => {
1294      (0, import_deprecated2.default)(`select( 'core/edit-post' ).getPreferences`, {
1295        since: "6.0",
1296        alternative: `select( 'core/preferences' ).get`
1297      });
1298      const corePreferences = ["editorMode", "hiddenBlockTypes"].reduce(
1299        (accumulatedPrefs, preferenceKey) => {
1300          const value = select3(import_preferences2.store).get(
1301            "core",
1302            preferenceKey
1303          );
1304          return {
1305            ...accumulatedPrefs,
1306            [preferenceKey]: value
1307          };
1308        },
1309        {}
1310      );
1311      const inactivePanels = select3(import_preferences2.store).get(
1312        "core",
1313        "inactivePanels"
1314      );
1315      const openPanels = select3(import_preferences2.store).get("core", "openPanels");
1316      const panels = convertPanelsToOldFormat(inactivePanels, openPanels);
1317      return {
1318        ...corePreferences,
1319        panels
1320      };
1321    });
1322    function getPreference(state, preferenceKey, defaultValue) {
1323      (0, import_deprecated2.default)(`select( 'core/edit-post' ).getPreference`, {
1324        since: "6.0",
1325        alternative: `select( 'core/preferences' ).get`
1326      });
1327      const preferences = getPreferences(state);
1328      const value = preferences[preferenceKey];
1329      return value === void 0 ? defaultValue : value;
1330    }
1331    var getHiddenBlockTypes = (0, import_data5.createRegistrySelector)((select3) => () => {
1332      return select3(import_preferences2.store).get("core", "hiddenBlockTypes") ?? EMPTY_ARRAY;
1333    });
1334    var isPublishSidebarOpened = (0, import_data5.createRegistrySelector)(
1335      (select3) => () => {
1336        (0, import_deprecated2.default)(`select( 'core/edit-post' ).isPublishSidebarOpened`, {
1337          since: "6.6",
1338          alternative: `select( 'core/editor' ).isPublishSidebarOpened`
1339        });
1340        return select3(import_editor5.store).isPublishSidebarOpened();
1341      }
1342    );
1343    var isEditorPanelRemoved = (0, import_data5.createRegistrySelector)(
1344      (select3) => (state, panelName) => {
1345        (0, import_deprecated2.default)(`select( 'core/edit-post' ).isEditorPanelRemoved`, {
1346          since: "6.5",
1347          alternative: `select( 'core/editor' ).isEditorPanelRemoved`
1348        });
1349        return select3(import_editor5.store).isEditorPanelRemoved(panelName);
1350      }
1351    );
1352    var isEditorPanelEnabled = (0, import_data5.createRegistrySelector)(
1353      (select3) => (state, panelName) => {
1354        (0, import_deprecated2.default)(`select( 'core/edit-post' ).isEditorPanelEnabled`, {
1355          since: "6.5",
1356          alternative: `select( 'core/editor' ).isEditorPanelEnabled`
1357        });
1358        return select3(import_editor5.store).isEditorPanelEnabled(panelName);
1359      }
1360    );
1361    var isEditorPanelOpened = (0, import_data5.createRegistrySelector)(
1362      (select3) => (state, panelName) => {
1363        (0, import_deprecated2.default)(`select( 'core/edit-post' ).isEditorPanelOpened`, {
1364          since: "6.5",
1365          alternative: `select( 'core/editor' ).isEditorPanelOpened`
1366        });
1367        return select3(import_editor5.store).isEditorPanelOpened(panelName);
1368      }
1369    );
1370    var isModalActive = (0, import_data5.createRegistrySelector)(
1371      (select3) => (state, modalName) => {
1372        (0, import_deprecated2.default)(`select( 'core/edit-post' ).isModalActive`, {
1373          since: "6.3",
1374          alternative: `select( 'core/interface' ).isModalActive`
1375        });
1376        return !!select3(interfaceStore2).isModalActive(modalName);
1377      }
1378    );
1379    var isFeatureActive = (0, import_data5.createRegistrySelector)(
1380      (select3) => (state, feature) => {
1381        return !!select3(import_preferences2.store).get("core/edit-post", feature);
1382      }
1383    );
1384    var isPluginItemPinned = (0, import_data5.createRegistrySelector)(
1385      (select3) => (state, pluginName) => {
1386        return select3(interfaceStore2).isItemPinned("core", pluginName);
1387      }
1388    );
1389    var getActiveMetaBoxLocations = (0, import_data5.createSelector)(
1390      (state) => {
1391        return Object.keys(state.metaBoxes.locations).filter(
1392          (location) => isMetaBoxLocationActive(state, location)
1393        );
1394      },
1395      (state) => [state.metaBoxes.locations]
1396    );
1397    var isMetaBoxLocationVisible = (0, import_data5.createRegistrySelector)(
1398      (select3) => (state, location) => {
1399        return isMetaBoxLocationActive(state, location) && getMetaBoxesPerLocation(state, location)?.some(({ id }) => {
1400          return select3(import_editor5.store).isEditorPanelEnabled(
1401            `meta-box-$id}`
1402          );
1403        });
1404      }
1405    );
1406    function isMetaBoxLocationActive(state, location) {
1407      const metaBoxes2 = getMetaBoxesPerLocation(state, location);
1408      return !!metaBoxes2 && metaBoxes2.length !== 0;
1409    }
1410    function getMetaBoxesPerLocation(state, location) {
1411      return state.metaBoxes.locations[location];
1412    }
1413    var getAllMetaBoxes = (0, import_data5.createSelector)(
1414      (state) => {
1415        return Object.values(state.metaBoxes.locations).flat();
1416      },
1417      (state) => [state.metaBoxes.locations]
1418    );
1419    function hasMetaBoxes(state) {
1420      return getActiveMetaBoxLocations(state).length > 0;
1421    }
1422    function isSavingMetaBoxes2(state) {
1423      return state.metaBoxes.isSaving;
1424    }
1425    var __experimentalGetPreviewDeviceType = (0, import_data5.createRegistrySelector)(
1426      (select3) => () => {
1427        (0, import_deprecated2.default)(
1428          `select( 'core/edit-site' ).__experimentalGetPreviewDeviceType`,
1429          {
1430            since: "6.5",
1431            version: "6.7",
1432            alternative: `select( 'core/editor' ).getDeviceType`
1433          }
1434        );
1435        return select3(import_editor5.store).getDeviceType();
1436      }
1437    );
1438    var isInserterOpened = (0, import_data5.createRegistrySelector)((select3) => () => {
1439      (0, import_deprecated2.default)(`select( 'core/edit-post' ).isInserterOpened`, {
1440        since: "6.5",
1441        alternative: `select( 'core/editor' ).isInserterOpened`
1442      });
1443      return select3(import_editor5.store).isInserterOpened();
1444    });
1445    var __experimentalGetInsertionPoint = (0, import_data5.createRegistrySelector)(
1446      (select3) => () => {
1447        (0, import_deprecated2.default)(
1448          `select( 'core/edit-post' ).__experimentalGetInsertionPoint`,
1449          {
1450            since: "6.5",
1451            version: "6.7"
1452          }
1453        );
1454        return unlock(select3(import_editor5.store)).getInserter();
1455      }
1456    );
1457    var isListViewOpened = (0, import_data5.createRegistrySelector)((select3) => () => {
1458      (0, import_deprecated2.default)(`select( 'core/edit-post' ).isListViewOpened`, {
1459        since: "6.5",
1460        alternative: `select( 'core/editor' ).isListViewOpened`
1461      });
1462      return select3(import_editor5.store).isListViewOpened();
1463    });
1464    var isEditingTemplate = (0, import_data5.createRegistrySelector)((select3) => () => {
1465      (0, import_deprecated2.default)(`select( 'core/edit-post' ).isEditingTemplate`, {
1466        since: "6.5",
1467        alternative: `select( 'core/editor' ).getRenderingMode`
1468      });
1469      return select3(import_editor5.store).getCurrentPostType() === "wp_template";
1470    });
1471    function areMetaBoxesInitialized(state) {
1472      return state.metaBoxes.initialized;
1473    }
1474    var getEditedPostTemplate = (0, import_data5.createRegistrySelector)(
1475      (select3) => () => {
1476        const { id: postId, type: postType } = select3(import_editor5.store).getCurrentPost();
1477        const templateId = unlock(select3(import_core_data4.store)).getTemplateId(
1478          postType,
1479          postId
1480        );
1481        if (!templateId) {
1482          return void 0;
1483        }
1484        return select3(import_core_data4.store).getEditedEntityRecord(
1485          "postType",
1486          "wp_template",
1487          templateId
1488        );
1489      }
1490    );
1491  
1492    // packages/edit-post/build-module/store/index.js
1493    var store = (0, import_data6.createReduxStore)(STORE_NAME, {
1494      reducer: reducer_default,
1495      actions: actions_exports,
1496      selectors: selectors_exports
1497    });
1498    (0, import_data6.register)(store);
1499  
1500    // packages/edit-post/build-module/components/keyboard-shortcuts/index.js
1501    function KeyboardShortcuts() {
1502      const { toggleFullscreenMode: toggleFullscreenMode2 } = (0, import_data7.useDispatch)(store);
1503      const { registerShortcut } = (0, import_data7.useDispatch)(import_keyboard_shortcuts.store);
1504      (0, import_element3.useEffect)(() => {
1505        registerShortcut({
1506          name: "core/edit-post/toggle-fullscreen",
1507          category: "global",
1508          description: (0, import_i18n3.__)("Enable or disable fullscreen mode."),
1509          keyCombination: {
1510            modifier: "secondary",
1511            character: "f"
1512          }
1513        });
1514      }, []);
1515      (0, import_keyboard_shortcuts.useShortcut)("core/edit-post/toggle-fullscreen", () => {
1516        toggleFullscreenMode2();
1517      });
1518      return null;
1519    }
1520    var keyboard_shortcuts_default = KeyboardShortcuts;
1521  
1522    // packages/edit-post/build-module/components/init-pattern-modal/index.js
1523    var import_data8 = __toESM(require_data());
1524    var import_i18n4 = __toESM(require_i18n());
1525    var import_components3 = __toESM(require_components());
1526    var import_element4 = __toESM(require_element());
1527    var import_editor6 = __toESM(require_editor());
1528    var import_jsx_runtime9 = __toESM(require_jsx_runtime());
1529    function InitPatternModal() {
1530      const { editPost } = (0, import_data8.useDispatch)(import_editor6.store);
1531      const [syncType, setSyncType] = (0, import_element4.useState)(void 0);
1532      const [title, setTitle] = (0, import_element4.useState)("");
1533      const isNewPost = (0, import_data8.useSelect)(
1534        (select3) => select3(import_editor6.store).isCleanNewPost(),
1535        []
1536      );
1537      const [isModalOpen, setIsModalOpen] = (0, import_element4.useState)(() => isNewPost);
1538      if (!isNewPost) {
1539        return null;
1540      }
1541      return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_jsx_runtime9.Fragment, { children: isModalOpen && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
1542        import_components3.Modal,
1543        {
1544          title: (0, import_i18n4.__)("Create pattern"),
1545          onRequestClose: () => {
1546            setIsModalOpen(false);
1547          },
1548          overlayClassName: "reusable-blocks-menu-items__convert-modal",
1549          children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
1550            "form",
1551            {
1552              onSubmit: (event) => {
1553                event.preventDefault();
1554                setIsModalOpen(false);
1555                editPost({
1556                  title,
1557                  meta: {
1558                    wp_pattern_sync_status: syncType
1559                  }
1560                });
1561              },
1562              children: /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(import_components3.__experimentalVStack, { spacing: "5", children: [
1563                /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
1564                  import_components3.TextControl,
1565                  {
1566                    label: (0, import_i18n4.__)("Name"),
1567                    value: title,
1568                    onChange: setTitle,
1569                    placeholder: (0, import_i18n4.__)("My pattern"),
1570                    className: "patterns-create-modal__name-input",
1571                    __next40pxDefaultSize: true
1572                  }
1573                ),
1574                /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
1575                  import_components3.ToggleControl,
1576                  {
1577                    label: (0, import_i18n4._x)("Synced", "pattern (singular)"),
1578                    help: (0, import_i18n4.__)(
1579                      "Sync this pattern across multiple locations."
1580                    ),
1581                    checked: !syncType,
1582                    onChange: () => {
1583                      setSyncType(
1584                        !syncType ? "unsynced" : void 0
1585                      );
1586                    }
1587                  }
1588                ),
1589                /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_components3.__experimentalHStack, { justify: "right", children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
1590                  import_components3.Button,
1591                  {
1592                    __next40pxDefaultSize: true,
1593                    variant: "primary",
1594                    type: "submit",
1595                    disabled: !title,
1596                    accessibleWhenDisabled: true,
1597                    children: (0, import_i18n4.__)("Create")
1598                  }
1599                ) })
1600              ] })
1601            }
1602          )
1603        }
1604      ) });
1605    }
1606  
1607    // packages/edit-post/build-module/components/browser-url/index.js
1608    var import_element5 = __toESM(require_element());
1609    var import_data9 = __toESM(require_data());
1610    var import_url2 = __toESM(require_url());
1611    var import_editor7 = __toESM(require_editor());
1612    function getPostEditURL(postId) {
1613      return (0, import_url2.addQueryArgs)("post.php", { post: postId, action: "edit" });
1614    }
1615    function BrowserURL() {
1616      const [historyId, setHistoryId] = (0, import_element5.useState)(null);
1617      const { postId, postStatus } = (0, import_data9.useSelect)((select3) => {
1618        const { getCurrentPost } = select3(import_editor7.store);
1619        const post = getCurrentPost();
1620        let { id, status, type } = post;
1621        const isTemplate = ["wp_template", "wp_template_part"].includes(
1622          type
1623        );
1624        if (isTemplate) {
1625          id = post.wp_id;
1626        }
1627        return {
1628          postId: id,
1629          postStatus: status
1630        };
1631      }, []);
1632      (0, import_element5.useEffect)(() => {
1633        if (postId && postId !== historyId && postStatus !== "auto-draft") {
1634          window.history.replaceState(
1635            { id: postId },
1636            "Post " + postId,
1637            getPostEditURL(postId)
1638          );
1639          setHistoryId(postId);
1640        }
1641      }, [postId, postStatus, historyId]);
1642      return null;
1643    }
1644  
1645    // packages/edit-post/build-module/components/meta-boxes/index.js
1646    var import_data12 = __toESM(require_data());
1647  
1648    // packages/edit-post/build-module/components/meta-boxes/meta-boxes-area/index.js
1649    var import_element6 = __toESM(require_element());
1650    var import_components4 = __toESM(require_components());
1651    var import_data10 = __toESM(require_data());
1652    var import_jsx_runtime10 = __toESM(require_jsx_runtime());
1653    function MetaBoxesArea({ location }) {
1654      const container = (0, import_element6.useRef)(null);
1655      const formRef = (0, import_element6.useRef)(null);
1656      (0, import_element6.useEffect)(() => {
1657        formRef.current = document.querySelector(
1658          ".metabox-location-" + location
1659        );
1660        if (formRef.current) {
1661          container.current.appendChild(formRef.current);
1662        }
1663        return () => {
1664          if (formRef.current) {
1665            document.querySelector("#metaboxes").appendChild(formRef.current);
1666          }
1667        };
1668      }, [location]);
1669      const isSaving = (0, import_data10.useSelect)((select3) => {
1670        return select3(store).isSavingMetaBoxes();
1671      }, []);
1672      const classes = clsx_default("edit-post-meta-boxes-area", `is-$location}`, {
1673        "is-loading": isSaving
1674      });
1675      return /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { className: classes, children: [
1676        isSaving && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_components4.Spinner, {}),
1677        /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
1678          "div",
1679          {
1680            className: "edit-post-meta-boxes-area__container",
1681            ref: container
1682          }
1683        ),
1684        /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("div", { className: "edit-post-meta-boxes-area__clear" })
1685      ] });
1686    }
1687    var meta_boxes_area_default = MetaBoxesArea;
1688  
1689    // packages/edit-post/build-module/components/meta-boxes/meta-box-visibility.js
1690    var import_element7 = __toESM(require_element());
1691    var import_data11 = __toESM(require_data());
1692    var import_editor8 = __toESM(require_editor());
1693    function MetaBoxVisibility({ id }) {
1694      const isVisible = (0, import_data11.useSelect)(
1695        (select3) => {
1696          return select3(import_editor8.store).isEditorPanelEnabled(
1697            `meta-box-$id}`
1698          );
1699        },
1700        [id]
1701      );
1702      (0, import_element7.useEffect)(() => {
1703        const element = document.getElementById(id);
1704        if (!element) {
1705          return;
1706        }
1707        if (isVisible) {
1708          element.classList.remove("is-hidden");
1709        } else {
1710          element.classList.add("is-hidden");
1711        }
1712      }, [id, isVisible]);
1713      return null;
1714    }
1715  
1716    // packages/edit-post/build-module/components/meta-boxes/index.js
1717    var import_jsx_runtime11 = __toESM(require_jsx_runtime());
1718    function MetaBoxes({ location }) {
1719      const metaBoxes2 = (0, import_data12.useSelect)(
1720        (select3) => select3(store).getMetaBoxesPerLocation(location),
1721        [location]
1722      );
1723      return /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(import_jsx_runtime11.Fragment, { children: [
1724        (metaBoxes2 ?? []).map(({ id }) => /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(MetaBoxVisibility, { id }, id)),
1725        /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(meta_boxes_area_default, { location })
1726      ] });
1727    }
1728  
1729    // packages/edit-post/build-module/components/more-menu/index.js
1730    var import_i18n10 = __toESM(require_i18n());
1731    var import_compose2 = __toESM(require_compose());
1732    var import_editor14 = __toESM(require_editor());
1733    var import_keycodes = __toESM(require_keycodes());
1734    var import_preferences8 = __toESM(require_preferences());
1735  
1736    // packages/edit-post/build-module/components/more-menu/manage-patterns-menu-item.js
1737    var import_components5 = __toESM(require_components());
1738    var import_core_data5 = __toESM(require_core_data());
1739    var import_data13 = __toESM(require_data());
1740    var import_i18n5 = __toESM(require_i18n());
1741    var import_url3 = __toESM(require_url());
1742    var import_jsx_runtime12 = __toESM(require_jsx_runtime());
1743    function ManagePatternsMenuItem() {
1744      const url = (0, import_data13.useSelect)((select3) => {
1745        const { canUser } = select3(import_core_data5.store);
1746        const defaultUrl = (0, import_url3.addQueryArgs)("edit.php", {
1747          post_type: "wp_block"
1748        });
1749        const patternsUrl = (0, import_url3.addQueryArgs)("site-editor.php", {
1750          p: "/pattern"
1751        });
1752        return canUser("create", {
1753          kind: "postType",
1754          name: "wp_template"
1755        }) ? patternsUrl : defaultUrl;
1756      }, []);
1757      return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_components5.MenuItem, { role: "menuitem", href: url, children: (0, import_i18n5.__)("Manage patterns") });
1758    }
1759    var manage_patterns_menu_item_default = ManagePatternsMenuItem;
1760  
1761    // packages/edit-post/build-module/components/more-menu/welcome-guide-menu-item.js
1762    var import_data14 = __toESM(require_data());
1763    var import_preferences3 = __toESM(require_preferences());
1764    var import_i18n6 = __toESM(require_i18n());
1765    var import_editor9 = __toESM(require_editor());
1766    var import_jsx_runtime13 = __toESM(require_jsx_runtime());
1767    function WelcomeGuideMenuItem() {
1768      const isEditingTemplate2 = (0, import_data14.useSelect)(
1769        (select3) => select3(import_editor9.store).getCurrentPostType() === "wp_template",
1770        []
1771      );
1772      return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
1773        import_preferences3.PreferenceToggleMenuItem,
1774        {
1775          scope: "core/edit-post",
1776          name: isEditingTemplate2 ? "welcomeGuideTemplate" : "welcomeGuide",
1777          label: (0, import_i18n6.__)("Welcome Guide")
1778        }
1779      );
1780    }
1781  
1782    // packages/edit-post/build-module/components/preferences-modal/index.js
1783    var import_i18n9 = __toESM(require_i18n());
1784    var import_preferences7 = __toESM(require_preferences());
1785    var import_editor13 = __toESM(require_editor());
1786  
1787    // packages/edit-post/build-module/components/preferences-modal/meta-boxes-section.js
1788    var import_i18n8 = __toESM(require_i18n());
1789    var import_data17 = __toESM(require_data());
1790    var import_editor12 = __toESM(require_editor());
1791    var import_preferences6 = __toESM(require_preferences());
1792  
1793    // packages/edit-post/build-module/components/preferences-modal/enable-custom-fields.js
1794    var import_element8 = __toESM(require_element());
1795    var import_i18n7 = __toESM(require_i18n());
1796    var import_components6 = __toESM(require_components());
1797    var import_data15 = __toESM(require_data());
1798    var import_editor10 = __toESM(require_editor());
1799    var import_preferences4 = __toESM(require_preferences());
1800    var import_url4 = __toESM(require_url());
1801    var import_jsx_runtime14 = __toESM(require_jsx_runtime());
1802    var { PreferenceBaseOption } = unlock(import_preferences4.privateApis);
1803    function submitCustomFieldsForm() {
1804      const customFieldsForm = document.getElementById(
1805        "toggle-custom-fields-form"
1806      );
1807      customFieldsForm.querySelector('[name="_wp_http_referer"]').setAttribute("value", (0, import_url4.getPathAndQueryString)(window.location.href));
1808      customFieldsForm.submit();
1809    }
1810    function CustomFieldsConfirmation({ willEnable }) {
1811      const [isReloading, setIsReloading] = (0, import_element8.useState)(false);
1812      return /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(import_jsx_runtime14.Fragment, { children: [
1813        /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("p", { className: "edit-post-preferences-modal__custom-fields-confirmation-message", children: (0, import_i18n7.__)(
1814          "A page reload is required for this change. Make sure your content is saved before reloading."
1815        ) }),
1816        /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
1817          import_components6.Button,
1818          {
1819            __next40pxDefaultSize: true,
1820            variant: "secondary",
1821            isBusy: isReloading,
1822            accessibleWhenDisabled: true,
1823            disabled: isReloading,
1824            onClick: () => {
1825              setIsReloading(true);
1826              submitCustomFieldsForm();
1827            },
1828            children: willEnable ? (0, import_i18n7.__)("Show & Reload Page") : (0, import_i18n7.__)("Hide & Reload Page")
1829          }
1830        )
1831      ] });
1832    }
1833    function EnableCustomFieldsOption({ label }) {
1834      const areCustomFieldsEnabled = (0, import_data15.useSelect)((select3) => {
1835        return !!select3(import_editor10.store).getEditorSettings().enableCustomFields;
1836      }, []);
1837      const [isChecked, setIsChecked] = (0, import_element8.useState)(areCustomFieldsEnabled);
1838      return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
1839        PreferenceBaseOption,
1840        {
1841          label,
1842          isChecked,
1843          onChange: setIsChecked,
1844          children: isChecked !== areCustomFieldsEnabled && /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(CustomFieldsConfirmation, { willEnable: isChecked })
1845        }
1846      );
1847    }
1848  
1849    // packages/edit-post/build-module/components/preferences-modal/enable-panel.js
1850    var import_data16 = __toESM(require_data());
1851    var import_editor11 = __toESM(require_editor());
1852    var import_preferences5 = __toESM(require_preferences());
1853    var import_jsx_runtime15 = __toESM(require_jsx_runtime());
1854    var { PreferenceBaseOption: PreferenceBaseOption2 } = unlock(import_preferences5.privateApis);
1855    function EnablePanelOption(props) {
1856      const { toggleEditorPanelEnabled: toggleEditorPanelEnabled2 } = (0, import_data16.useDispatch)(import_editor11.store);
1857      const { isChecked, isRemoved } = (0, import_data16.useSelect)(
1858        (select3) => {
1859          const { isEditorPanelEnabled: isEditorPanelEnabled2, isEditorPanelRemoved: isEditorPanelRemoved2 } = select3(import_editor11.store);
1860          return {
1861            isChecked: isEditorPanelEnabled2(props.panelName),
1862            isRemoved: isEditorPanelRemoved2(props.panelName)
1863          };
1864        },
1865        [props.panelName]
1866      );
1867      if (isRemoved) {
1868        return null;
1869      }
1870      return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1871        PreferenceBaseOption2,
1872        {
1873          isChecked,
1874          onChange: () => toggleEditorPanelEnabled2(props.panelName),
1875          ...props
1876        }
1877      );
1878    }
1879  
1880    // packages/edit-post/build-module/components/preferences-modal/meta-boxes-section.js
1881    var import_jsx_runtime16 = __toESM(require_jsx_runtime());
1882    var { PreferencesModalSection } = unlock(import_preferences6.privateApis);
1883    function MetaBoxesSection({
1884      areCustomFieldsRegistered,
1885      metaBoxes: metaBoxes2,
1886      ...sectionProps
1887    }) {
1888      const thirdPartyMetaBoxes = metaBoxes2.filter(
1889        ({ id }) => id !== "postcustom"
1890      );
1891      if (!areCustomFieldsRegistered && thirdPartyMetaBoxes.length === 0) {
1892        return null;
1893      }
1894      return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(PreferencesModalSection, { ...sectionProps, children: [
1895        areCustomFieldsRegistered && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(EnableCustomFieldsOption, { label: (0, import_i18n8.__)("Custom fields") }),
1896        thirdPartyMetaBoxes.map(({ id, title }) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1897          EnablePanelOption,
1898          {
1899            label: title,
1900            panelName: `meta-box-$id}`
1901          },
1902          id
1903        ))
1904      ] });
1905    }
1906    var meta_boxes_section_default = (0, import_data17.withSelect)((select3) => {
1907      const { getEditorSettings } = select3(import_editor12.store);
1908      const { getAllMetaBoxes: getAllMetaBoxes2 } = select3(store);
1909      return {
1910        // This setting should not live in the block editor's store.
1911        areCustomFieldsRegistered: getEditorSettings().enableCustomFields !== void 0,
1912        metaBoxes: getAllMetaBoxes2()
1913      };
1914    })(MetaBoxesSection);
1915  
1916    // packages/edit-post/build-module/components/preferences-modal/index.js
1917    var import_jsx_runtime17 = __toESM(require_jsx_runtime());
1918    var { PreferenceToggleControl } = unlock(import_preferences7.privateApis);
1919    var { PreferencesModal } = unlock(import_editor13.privateApis);
1920    function EditPostPreferencesModal() {
1921      const extraSections = {
1922        general: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(meta_boxes_section_default, { title: (0, import_i18n9.__)("Advanced") }),
1923        appearance: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
1924          PreferenceToggleControl,
1925          {
1926            scope: "core/edit-post",
1927            featureName: "themeStyles",
1928            help: (0, import_i18n9.__)("Make the editor look like your theme."),
1929            label: (0, import_i18n9.__)("Use theme styles")
1930          }
1931        )
1932      };
1933      return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(PreferencesModal, { extraSections });
1934    }
1935  
1936    // packages/edit-post/build-module/components/more-menu/index.js
1937    var import_jsx_runtime18 = __toESM(require_jsx_runtime());
1938    var { ToolsMoreMenuGroup, ViewMoreMenuGroup } = unlock(import_editor14.privateApis);
1939    var MoreMenu = () => {
1940      const isLargeViewport = (0, import_compose2.useViewportMatch)("large");
1941      return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(import_jsx_runtime18.Fragment, { children: [
1942        isLargeViewport && /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(ViewMoreMenuGroup, { children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
1943          import_preferences8.PreferenceToggleMenuItem,
1944          {
1945            scope: "core/edit-post",
1946            name: "fullscreenMode",
1947            label: (0, import_i18n10.__)("Fullscreen mode"),
1948            info: (0, import_i18n10.__)("Show and hide the admin user interface"),
1949            messageActivated: (0, import_i18n10.__)("Fullscreen mode activated."),
1950            messageDeactivated: (0, import_i18n10.__)(
1951              "Fullscreen mode deactivated."
1952            ),
1953            shortcut: import_keycodes.displayShortcut.secondary("f")
1954          }
1955        ) }),
1956        /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(ToolsMoreMenuGroup, { children: [
1957          /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(manage_patterns_menu_item_default, {}),
1958          /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(WelcomeGuideMenuItem, {})
1959        ] }),
1960        /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(EditPostPreferencesModal, {})
1961      ] });
1962    };
1963    var more_menu_default = MoreMenu;
1964  
1965    // packages/edit-post/build-module/components/welcome-guide/index.js
1966    var import_data20 = __toESM(require_data());
1967  
1968    // packages/edit-post/build-module/components/welcome-guide/default.js
1969    var import_data18 = __toESM(require_data());
1970    var import_components7 = __toESM(require_components());
1971    var import_i18n11 = __toESM(require_i18n());
1972    var import_element9 = __toESM(require_element());
1973  
1974    // packages/edit-post/build-module/components/welcome-guide/image.js
1975    var import_jsx_runtime19 = __toESM(require_jsx_runtime());
1976    function WelcomeGuideImage({ nonAnimatedSrc, animatedSrc }) {
1977      return /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)("picture", { className: "edit-post-welcome-guide__image", children: [
1978        /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
1979          "source",
1980          {
1981            srcSet: nonAnimatedSrc,
1982            media: "(prefers-reduced-motion: reduce)"
1983          }
1984        ),
1985        /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("img", { src: animatedSrc, width: "312", height: "240", alt: "" })
1986      ] });
1987    }
1988  
1989    // packages/edit-post/build-module/components/welcome-guide/default.js
1990    var import_jsx_runtime20 = __toESM(require_jsx_runtime());
1991    function WelcomeGuideDefault() {
1992      const { toggleFeature: toggleFeature2 } = (0, import_data18.useDispatch)(store);
1993      return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
1994        import_components7.Guide,
1995        {
1996          className: "edit-post-welcome-guide",
1997          contentLabel: (0, import_i18n11.__)("Welcome to the editor"),
1998          finishButtonText: (0, import_i18n11.__)("Get started"),
1999          onFinish: () => toggleFeature2("welcomeGuide"),
2000          pages: [
2001            {
2002              image: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
2003                WelcomeGuideImage,
2004                {
2005                  nonAnimatedSrc: "https://s.w.org/images/block-editor/welcome-canvas.svg",
2006                  animatedSrc: "https://s.w.org/images/block-editor/welcome-canvas.gif"
2007                }
2008              ),
2009              content: /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_jsx_runtime20.Fragment, { children: [
2010                /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("h1", { className: "edit-post-welcome-guide__heading", children: (0, import_i18n11.__)("Welcome to the editor") }),
2011                /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("p", { className: "edit-post-welcome-guide__text", children: (0, import_i18n11.__)(
2012                  "In the WordPress editor, each paragraph, image, or video is presented as a distinct \u201Cblock\u201D of content."
2013                ) })
2014              ] })
2015            },
2016            {
2017              image: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
2018                WelcomeGuideImage,
2019                {
2020                  nonAnimatedSrc: "https://s.w.org/images/block-editor/welcome-editor.svg",
2021                  animatedSrc: "https://s.w.org/images/block-editor/welcome-editor.gif"
2022                }
2023              ),
2024              content: /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_jsx_runtime20.Fragment, { children: [
2025                /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("h1", { className: "edit-post-welcome-guide__heading", children: (0, import_i18n11.__)("Customize each block") }),
2026                /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("p", { className: "edit-post-welcome-guide__text", children: (0, import_i18n11.__)(
2027                  "Each block comes with its own set of controls for changing things like color, width, and alignment. These will show and hide automatically when you have a block selected."
2028                ) })
2029              ] })
2030            },
2031            {
2032              image: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
2033                WelcomeGuideImage,
2034                {
2035                  nonAnimatedSrc: "https://s.w.org/images/block-editor/welcome-library.svg",
2036                  animatedSrc: "https://s.w.org/images/block-editor/welcome-library.gif"
2037                }
2038              ),
2039              content: /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_jsx_runtime20.Fragment, { children: [
2040                /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("h1", { className: "edit-post-welcome-guide__heading", children: (0, import_i18n11.__)("Explore all blocks") }),
2041                /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("p", { className: "edit-post-welcome-guide__text", children: (0, import_element9.createInterpolateElement)(
2042                  (0, import_i18n11.__)(
2043                    "All of the blocks available to you live in the block library. You\u2019ll find it wherever you see the <InserterIconImage /> icon."
2044                  ),
2045                  {
2046                    InserterIconImage: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
2047                      "img",
2048                      {
2049                        alt: (0, import_i18n11.__)("inserter"),
2050                        src: "data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='18' height='18' rx='2' fill='%231E1E1E'/%3E%3Cpath d='M9.22727 4V14M4 8.77273H14' stroke='white' stroke-width='1.5'/%3E%3C/svg%3E%0A"
2051                      }
2052                    )
2053                  }
2054                ) })
2055              ] })
2056            },
2057            {
2058              image: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
2059                WelcomeGuideImage,
2060                {
2061                  nonAnimatedSrc: "https://s.w.org/images/block-editor/welcome-documentation.svg",
2062                  animatedSrc: "https://s.w.org/images/block-editor/welcome-documentation.gif"
2063                }
2064              ),
2065              content: /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_jsx_runtime20.Fragment, { children: [
2066                /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("h1", { className: "edit-post-welcome-guide__heading", children: (0, import_i18n11.__)("Learn more") }),
2067                /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("p", { className: "edit-post-welcome-guide__text", children: (0, import_element9.createInterpolateElement)(
2068                  (0, import_i18n11.__)(
2069                    "New to the block editor? Want to learn more about using it? <a>Here's a detailed guide.</a>"
2070                  ),
2071                  {
2072                    a: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
2073                      import_components7.ExternalLink,
2074                      {
2075                        href: (0, import_i18n11.__)(
2076                          "https://wordpress.org/documentation/article/wordpress-block-editor/"
2077                        )
2078                      }
2079                    )
2080                  }
2081                ) })
2082              ] })
2083            }
2084          ]
2085        }
2086      );
2087    }
2088  
2089    // packages/edit-post/build-module/components/welcome-guide/template.js
2090    var import_data19 = __toESM(require_data());
2091    var import_components8 = __toESM(require_components());
2092    var import_i18n12 = __toESM(require_i18n());
2093    var import_jsx_runtime21 = __toESM(require_jsx_runtime());
2094    function WelcomeGuideTemplate() {
2095      const { toggleFeature: toggleFeature2 } = (0, import_data19.useDispatch)(store);
2096      return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
2097        import_components8.Guide,
2098        {
2099          className: "edit-template-welcome-guide",
2100          contentLabel: (0, import_i18n12.__)("Welcome to the template editor"),
2101          finishButtonText: (0, import_i18n12.__)("Get started"),
2102          onFinish: () => toggleFeature2("welcomeGuideTemplate"),
2103          pages: [
2104            {
2105              image: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
2106                WelcomeGuideImage,
2107                {
2108                  nonAnimatedSrc: "https://s.w.org/images/block-editor/welcome-template-editor.svg",
2109                  animatedSrc: "https://s.w.org/images/block-editor/welcome-template-editor.gif"
2110                }
2111              ),
2112              content: /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(import_jsx_runtime21.Fragment, { children: [
2113                /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("h1", { className: "edit-post-welcome-guide__heading", children: (0, import_i18n12.__)("Welcome to the template editor") }),
2114                /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("p", { className: "edit-post-welcome-guide__text", children: (0, import_i18n12.__)(
2115                  "Templates help define the layout of the site. You can customize all aspects of your posts and pages using blocks and patterns in this editor."
2116                ) })
2117              ] })
2118            }
2119          ]
2120        }
2121      );
2122    }
2123  
2124    // packages/edit-post/build-module/components/welcome-guide/index.js
2125    var import_jsx_runtime22 = __toESM(require_jsx_runtime());
2126    function WelcomeGuide({ postType }) {
2127      const { isActive, isEditingTemplate: isEditingTemplate2 } = (0, import_data20.useSelect)(
2128        (select3) => {
2129          const { isFeatureActive: isFeatureActive2 } = select3(store);
2130          const _isEditingTemplate = postType === "wp_template";
2131          const feature = _isEditingTemplate ? "welcomeGuideTemplate" : "welcomeGuide";
2132          return {
2133            isActive: isFeatureActive2(feature),
2134            isEditingTemplate: _isEditingTemplate
2135          };
2136        },
2137        [postType]
2138      );
2139      if (!isActive) {
2140        return null;
2141      }
2142      return isEditingTemplate2 ? /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(WelcomeGuideTemplate, {}) : /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(WelcomeGuideDefault, {});
2143    }
2144  
2145    // packages/edit-post/build-module/commands/use-commands.js
2146    var import_data21 = __toESM(require_data());
2147    var import_i18n13 = __toESM(require_i18n());
2148    var import_commands = __toESM(require_commands());
2149    var import_preferences9 = __toESM(require_preferences());
2150    var import_notices2 = __toESM(require_notices());
2151    function useCommands() {
2152      const { isFullscreen } = (0, import_data21.useSelect)((select3) => {
2153        const { get } = select3(import_preferences9.store);
2154        return {
2155          isFullscreen: get("core/edit-post", "fullscreenMode")
2156        };
2157      }, []);
2158      const { toggle } = (0, import_data21.useDispatch)(import_preferences9.store);
2159      const { createInfoNotice } = (0, import_data21.useDispatch)(import_notices2.store);
2160      (0, import_commands.useCommand)({
2161        name: "core/toggle-fullscreen-mode",
2162        label: isFullscreen ? (0, import_i18n13.__)("Exit fullscreen") : (0, import_i18n13.__)("Enter fullscreen"),
2163        icon: fullscreen_default,
2164        callback: ({ close }) => {
2165          toggle("core/edit-post", "fullscreenMode");
2166          close();
2167          createInfoNotice(
2168            isFullscreen ? (0, import_i18n13.__)("Fullscreen off.") : (0, import_i18n13.__)("Fullscreen on."),
2169            {
2170              id: "core/edit-post/toggle-fullscreen-mode/notice",
2171              type: "snackbar",
2172              actions: [
2173                {
2174                  label: (0, import_i18n13.__)("Undo"),
2175                  onClick: () => {
2176                    toggle("core/edit-post", "fullscreenMode");
2177                  }
2178                }
2179              ]
2180            }
2181          );
2182        }
2183      });
2184    }
2185  
2186    // packages/edit-post/build-module/components/layout/use-should-iframe.js
2187    var import_editor15 = __toESM(require_editor());
2188    var import_data22 = __toESM(require_data());
2189    var import_blocks2 = __toESM(require_blocks());
2190    var import_block_editor = __toESM(require_block_editor());
2191    var isGutenbergPlugin = false ? true : false;
2192    function useShouldIframe() {
2193      return (0, import_data22.useSelect)((select3) => {
2194        const { getEditorSettings, getCurrentPostType, getDeviceType } = select3(import_editor15.store);
2195        return (
2196          // If the theme is block based and the Gutenberg plugin is active,
2197          // we ALWAYS use the iframe for consistency across the post and site
2198          // editor.
2199          isGutenbergPlugin && getEditorSettings().__unstableIsBlockBasedTheme || // We also still want to iframe all the special
2200          // editor features and modes such as device previews, zoom out, and
2201          // template/pattern editing.
2202          getDeviceType() !== "Desktop" || ["wp_template", "wp_block"].includes(getCurrentPostType()) || unlock(select3(import_block_editor.store)).isZoomOut() || // Finally, still iframe the editor if all blocks are v3 (which means
2203          // they are marked as iframe-compatible).
2204          select3(import_blocks2.store).getBlockTypes().every((type) => type.apiVersion >= 3)
2205        );
2206      }, []);
2207    }
2208  
2209    // packages/edit-post/build-module/hooks/use-navigate-to-entity-record.js
2210    var import_element10 = __toESM(require_element());
2211    var import_data23 = __toESM(require_data());
2212    var import_editor16 = __toESM(require_editor());
2213    var { useGenerateBlockPath } = unlock(import_editor16.privateApis);
2214    function useNavigateToEntityRecord(initialPostId, initialPostType, defaultRenderingMode) {
2215      const generateBlockPath = useGenerateBlockPath();
2216      const [postHistory, dispatch2] = (0, import_element10.useReducer)(
2217        (historyState, { type, post: post2, previousRenderingMode: previousRenderingMode2, selectedBlockPath: selectedBlockPath2 }) => {
2218          if (type === "push") {
2219            const updatedHistory = [...historyState];
2220            const currentIndex = updatedHistory.length - 1;
2221            updatedHistory[currentIndex] = {
2222              ...updatedHistory[currentIndex],
2223              selectedBlockPath: selectedBlockPath2
2224            };
2225            return [...updatedHistory, { post: post2, previousRenderingMode: previousRenderingMode2 }];
2226          }
2227          if (type === "pop") {
2228            if (historyState.length > 1) {
2229              return historyState.slice(0, -1);
2230            }
2231          }
2232          return historyState;
2233        },
2234        [
2235          {
2236            post: { postId: initialPostId, postType: initialPostType }
2237          }
2238        ]
2239      );
2240      const { post, previousRenderingMode, selectedBlockPath } = postHistory[postHistory.length - 1];
2241      const { getRenderingMode } = (0, import_data23.useSelect)(import_editor16.store);
2242      const { setRenderingMode } = (0, import_data23.useDispatch)(import_editor16.store);
2243      const onNavigateToEntityRecord = (0, import_element10.useCallback)(
2244        (params) => {
2245          const blockPath = params.selectedBlockClientId ? generateBlockPath(params.selectedBlockClientId) : null;
2246          dispatch2({
2247            type: "push",
2248            post: { postId: params.postId, postType: params.postType },
2249            // Save the current rendering mode so we can restore it when navigating back.
2250            previousRenderingMode: getRenderingMode(),
2251            selectedBlockPath: blockPath
2252          });
2253          setRenderingMode(defaultRenderingMode);
2254        },
2255        [
2256          getRenderingMode,
2257          setRenderingMode,
2258          defaultRenderingMode,
2259          generateBlockPath
2260        ]
2261      );
2262      const onNavigateToPreviousEntityRecord = (0, import_element10.useCallback)(() => {
2263        dispatch2({
2264          type: "pop"
2265        });
2266        if (previousRenderingMode) {
2267          setRenderingMode(previousRenderingMode);
2268        }
2269      }, [setRenderingMode, previousRenderingMode]);
2270      return {
2271        currentPost: post,
2272        onNavigateToEntityRecord,
2273        onNavigateToPreviousEntityRecord: postHistory.length > 1 ? onNavigateToPreviousEntityRecord : void 0,
2274        // Return the selected block path from the current history item
2275        previousSelectedBlockPath: selectedBlockPath
2276      };
2277    }
2278  
2279    // packages/edit-post/build-module/components/meta-boxes/use-meta-box-initialization.js
2280    var import_data24 = __toESM(require_data());
2281    var import_editor17 = __toESM(require_editor());
2282    var import_element11 = __toESM(require_element());
2283    var useMetaBoxInitialization = (enabled) => {
2284      const isEnabledAndEditorReady = (0, import_data24.useSelect)(
2285        (select3) => enabled && select3(import_editor17.store).__unstableIsEditorReady(),
2286        [enabled]
2287      );
2288      const { initializeMetaBoxes: initializeMetaBoxes2 } = (0, import_data24.useDispatch)(store);
2289      (0, import_element11.useEffect)(() => {
2290        if (isEnabledAndEditorReady) {
2291          initializeMetaBoxes2();
2292        }
2293      }, [isEnabledAndEditorReady, initializeMetaBoxes2]);
2294    };
2295  
2296    // packages/edit-post/build-module/components/layout/index.js
2297    var import_jsx_runtime23 = __toESM(require_jsx_runtime());
2298    var { useCommandContext } = unlock(import_commands2.privateApis);
2299    var { Editor, FullscreenMode } = unlock(import_editor18.privateApis);
2300    var { BlockKeyboardShortcuts } = unlock(import_block_library.privateApis);
2301    var DESIGN_POST_TYPES = [
2302      "wp_template",
2303      "wp_template_part",
2304      "wp_block",
2305      "wp_navigation"
2306    ];
2307    function useEditorStyles(settings) {
2308      const { hasThemeStyleSupport } = (0, import_data25.useSelect)((select3) => {
2309        return {
2310          hasThemeStyleSupport: select3(store).isFeatureActive("themeStyles")
2311        };
2312      }, []);
2313      return (0, import_element12.useMemo)(() => {
2314        const presetStyles = settings.styles?.filter(
2315          (style) => style.__unstableType && style.__unstableType !== "theme"
2316        ) ?? [];
2317        const defaultEditorStyles = [
2318          ...settings?.defaultEditorStyles ?? [],
2319          ...presetStyles
2320        ];
2321        const hasThemeStyles = hasThemeStyleSupport && presetStyles.length !== (settings.styles?.length ?? 0);
2322        if (!settings.disableLayoutStyles && !hasThemeStyles) {
2323          defaultEditorStyles.push({
2324            css: getLayoutStyles({
2325              style: {},
2326              selector: "body",
2327              hasBlockGapSupport: false,
2328              hasFallbackGapSupport: true,
2329              fallbackGapValue: "0.5em"
2330            })
2331          });
2332        }
2333        return hasThemeStyles ? settings.styles ?? [] : defaultEditorStyles;
2334      }, [
2335        settings.defaultEditorStyles,
2336        settings.disableLayoutStyles,
2337        settings.styles,
2338        hasThemeStyleSupport
2339      ]);
2340    }
2341    function MetaBoxesMain({ isLegacy }) {
2342      const [isOpen, openHeight, hasAnyVisible] = (0, import_data25.useSelect)((select3) => {
2343        const { get } = select3(import_preferences10.store);
2344        const { isMetaBoxLocationVisible: isMetaBoxLocationVisible2 } = select3(store);
2345        return [
2346          !!get("core/edit-post", "metaBoxesMainIsOpen"),
2347          get("core/edit-post", "metaBoxesMainOpenHeight"),
2348          isMetaBoxLocationVisible2("normal") || isMetaBoxLocationVisible2("advanced") || isMetaBoxLocationVisible2("side")
2349        ];
2350      }, []);
2351      const { set: setPreference } = (0, import_data25.useDispatch)(import_preferences10.store);
2352      const metaBoxesMainRef = (0, import_element12.useRef)();
2353      const isShort = (0, import_compose3.useMediaQuery)("(max-height: 549px)");
2354      const [{ min, max }, setHeightConstraints] = (0, import_element12.useState)(() => ({}));
2355      const effectSizeConstraints = (0, import_compose3.useRefEffect)((node) => {
2356        const container = node.closest(
2357          ".interface-interface-skeleton__content"
2358        );
2359        if (!container) {
2360          return;
2361        }
2362        const noticeLists = container.querySelectorAll(
2363          ":scope > .components-notice-list"
2364        );
2365        const resizeHandle = container.querySelector(
2366          ".edit-post-meta-boxes-main__presenter"
2367        );
2368        const deriveConstraints = () => {
2369          const fullHeight = container.offsetHeight;
2370          let nextMax = fullHeight;
2371          for (const element of noticeLists) {
2372            nextMax -= element.offsetHeight;
2373          }
2374          const nextMin = resizeHandle.offsetHeight;
2375          setHeightConstraints({ min: nextMin, max: nextMax });
2376        };
2377        const observer = new window.ResizeObserver(deriveConstraints);
2378        observer.observe(container);
2379        for (const element of noticeLists) {
2380          observer.observe(element);
2381        }
2382        return () => observer.disconnect();
2383      }, []);
2384      const resizeDataRef = (0, import_element12.useRef)({});
2385      const separatorRef = (0, import_element12.useRef)();
2386      const separatorHelpId = (0, import_element12.useId)();
2387      const applyHeight = (candidateHeight = "auto", isPersistent, isInstant) => {
2388        if (candidateHeight === "auto") {
2389          isPersistent = false;
2390        } else {
2391          candidateHeight = Math.min(max, Math.max(min, candidateHeight));
2392        }
2393        if (isPersistent) {
2394          setPreference(
2395            "core/edit-post",
2396            "metaBoxesMainOpenHeight",
2397            candidateHeight
2398          );
2399        } else if (!isShort) {
2400          separatorRef.current.ariaValueNow = getAriaValueNow(candidateHeight);
2401        }
2402        if (isInstant) {
2403          metaBoxesMainRef.current.updateSize({
2404            height: candidateHeight,
2405            // Oddly, when the event that triggered this was not from the mouse (e.g. keydown),
2406            // if `width` is left unspecified a subsequent drag gesture applies a fixed
2407            // width and the pane fails to widen/narrow with parent width changes from
2408            // sidebars opening/closing or window resizes.
2409            width: "auto"
2410          });
2411        }
2412      };
2413      const getRenderValues = (0, import_compose3.useEvent)(() => ({ isOpen, openHeight, min }));
2414      (0, import_element12.useEffect)(() => {
2415        const fresh = getRenderValues();
2416        if (fresh.min !== void 0 && metaBoxesMainRef.current) {
2417          const usedOpenHeight = isShort ? "auto" : fresh.openHeight;
2418          const usedHeight = fresh.isOpen ? usedOpenHeight : fresh.min;
2419          applyHeight(usedHeight, false, true);
2420        }
2421      }, [isShort]);
2422      if (!hasAnyVisible) {
2423        return;
2424      }
2425      const contents = /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(
2426        "div",
2427        {
2428          className: "edit-post-layout__metaboxes edit-post-meta-boxes-main__liner",
2429          hidden: !isLegacy && !isOpen,
2430          children: [
2431            /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(MetaBoxes, { location: "normal" }),
2432            /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(MetaBoxes, { location: "advanced" })
2433          ]
2434        }
2435      );
2436      if (isLegacy) {
2437        return contents;
2438      }
2439      const isAutoHeight = openHeight === void 0;
2440      const getAriaValueNow = (height) => Math.round((height - min) / (max - min) * 100);
2441      const usedAriaValueNow = max === void 0 || isAutoHeight ? 50 : getAriaValueNow(openHeight);
2442      const persistIsOpen = (to = !isOpen) => setPreference("core/edit-post", "metaBoxesMainIsOpen", to);
2443      const onSeparatorKeyDown = (event) => {
2444        const delta = { ArrowUp: 20, ArrowDown: -20 }[event.key];
2445        if (delta) {
2446          const pane = metaBoxesMainRef.current.resizable;
2447          const fromHeight = isAutoHeight ? pane.offsetHeight : openHeight;
2448          const nextHeight = delta + fromHeight;
2449          applyHeight(nextHeight, true, true);
2450          persistIsOpen(nextHeight > min);
2451          event.preventDefault();
2452        }
2453      };
2454      const paneLabel = (0, import_i18n14.__)("Meta Boxes");
2455      const toggle = /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(
2456        "button",
2457        {
2458          "aria-expanded": isOpen,
2459          onClick: ({ detail }) => {
2460            const { isToggleInferred } = resizeDataRef.current;
2461            if (isShort || !detail || isToggleInferred) {
2462              persistIsOpen();
2463              const usedOpenHeight = isShort ? "auto" : openHeight;
2464              const usedHeight = isOpen ? min : usedOpenHeight;
2465              applyHeight(usedHeight, false, true);
2466            }
2467          },
2468          ...isShort && {
2469            onMouseDown: (event) => event.stopPropagation(),
2470            onTouchStart: (event) => event.stopPropagation()
2471          },
2472          children: [
2473            paneLabel,
2474            /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(import_components9.Icon, { icon: isOpen ? chevron_up_default : chevron_down_default })
2475          ]
2476        }
2477      );
2478      const separator = !isShort && /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(import_jsx_runtime23.Fragment, { children: [
2479        /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(import_components9.Tooltip, { text: (0, import_i18n14.__)("Drag to resize"), children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
2480          "button",
2481          {
2482            ref: separatorRef,
2483            role: "separator",
2484            "aria-valuenow": usedAriaValueNow,
2485            "aria-label": (0, import_i18n14.__)("Drag to resize"),
2486            "aria-describedby": separatorHelpId,
2487            onKeyDown: onSeparatorKeyDown
2488          }
2489        ) }),
2490        /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(import_components9.VisuallyHidden, { id: separatorHelpId, children: (0, import_i18n14.__)(
2491          "Use up and down arrow keys to resize the meta box panel."
2492        ) })
2493      ] });
2494      const paneProps = (
2495        /** @type {Parameters<typeof ResizableBox>[0]} */
2496        {
2497          as: navigable_region_default,
2498          ref: metaBoxesMainRef,
2499          className: "edit-post-meta-boxes-main",
2500          defaultSize: { height: isOpen ? openHeight : 0 },
2501          minHeight: min,
2502          maxHeight: max,
2503          enable: { top: true },
2504          handleClasses: { top: "edit-post-meta-boxes-main__presenter" },
2505          handleComponent: {
2506            top: /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(import_jsx_runtime23.Fragment, { children: [
2507              toggle,
2508              separator
2509            ] })
2510          },
2511          // Avoids hiccups while dragging over objects like iframes and ensures that
2512          // the event to end the drag is captured by the target (resize handle)
2513          // whether or not it’s under the pointer.
2514          onPointerDown: ({ pointerId, target }) => {
2515            if (separatorRef.current?.parentElement.contains(target)) {
2516              target.setPointerCapture(pointerId);
2517            }
2518          },
2519          onResizeStart: ({ timeStamp }, direction, elementRef) => {
2520            if (isAutoHeight) {
2521              applyHeight(elementRef.offsetHeight, false, true);
2522            }
2523            elementRef.classList.add("is-resizing");
2524            resizeDataRef.current = { timeStamp, maxDelta: 0 };
2525          },
2526          onResize: (event, direction, elementRef, delta) => {
2527            const { maxDelta } = resizeDataRef.current;
2528            const newDelta = Math.abs(delta.height);
2529            resizeDataRef.current.maxDelta = Math.max(maxDelta, newDelta);
2530            applyHeight(metaBoxesMainRef.current.state.height);
2531          },
2532          onResizeStop: (event, direction, elementRef) => {
2533            elementRef.classList.remove("is-resizing");
2534            const duration = event.timeStamp - resizeDataRef.current.timeStamp;
2535            const wasSeparator = event.target === separatorRef.current;
2536            const { maxDelta } = resizeDataRef.current;
2537            const isToggleInferred = maxDelta < 1 || duration < 144 && maxDelta < 5;
2538            if (isShort || !wasSeparator && isToggleInferred) {
2539              resizeDataRef.current.isToggleInferred = true;
2540            } else {
2541              const { height } = metaBoxesMainRef.current.state;
2542              const nextIsOpen = height > min;
2543              persistIsOpen(nextIsOpen);
2544              if (nextIsOpen) {
2545                applyHeight(height, true);
2546              }
2547            }
2548          }
2549        }
2550      );
2551      return /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(import_components9.ResizableBox, { "aria-label": paneLabel, ...paneProps, children: [
2552        /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("meta", { ref: effectSizeConstraints }),
2553        contents
2554      ] });
2555    }
2556    function Layout({
2557      postId: initialPostId,
2558      postType: initialPostType,
2559      settings,
2560      initialEdits
2561    }) {
2562      useCommands();
2563      const shouldIframe = useShouldIframe();
2564      const { createErrorNotice } = (0, import_data25.useDispatch)(import_notices3.store);
2565      const {
2566        currentPost: { postId: currentPostId, postType: currentPostType },
2567        onNavigateToEntityRecord,
2568        onNavigateToPreviousEntityRecord,
2569        previousSelectedBlockPath
2570      } = useNavigateToEntityRecord(
2571        initialPostId,
2572        initialPostType,
2573        "post-only"
2574      );
2575      const isEditingTemplate2 = currentPostType === "wp_template";
2576      const {
2577        mode,
2578        isFullscreenActive,
2579        hasResolvedMode,
2580        hasActiveMetaboxes,
2581        hasBlockSelected,
2582        showIconLabels,
2583        isDistractionFree,
2584        showMetaBoxes,
2585        isWelcomeGuideVisible,
2586        templateId,
2587        isDevicePreview
2588      } = (0, import_data25.useSelect)(
2589        (select3) => {
2590          const { get } = select3(import_preferences10.store);
2591          const { isFeatureActive: isFeatureActive2, hasMetaBoxes: hasMetaBoxes2 } = select3(store);
2592          const { canUser, getPostType, getTemplateId } = unlock(
2593            select3(import_core_data6.store)
2594          );
2595          const supportsTemplateMode = settings.supportsTemplateMode;
2596          const isViewable = getPostType(currentPostType)?.viewable ?? false;
2597          const canViewTemplate = canUser("read", {
2598            kind: "postType",
2599            name: "wp_template"
2600          });
2601          const { getBlockSelectionStart, isZoomOut } = unlock(
2602            select3(import_block_editor2.store)
2603          );
2604          const { getEditorMode: getEditorMode2, getDefaultRenderingMode, getDeviceType } = unlock(select3(import_editor18.store));
2605          const isNotDesignPostType = !DESIGN_POST_TYPES.includes(currentPostType);
2606          const isDirectlyEditingPattern = currentPostType === "wp_block" && !onNavigateToPreviousEntityRecord;
2607          const _templateId = getTemplateId(currentPostType, currentPostId);
2608          const defaultMode = getDefaultRenderingMode(currentPostType);
2609          return {
2610            mode: getEditorMode2(),
2611            isFullscreenActive: isFeatureActive2("fullscreenMode"),
2612            hasActiveMetaboxes: hasMetaBoxes2(),
2613            hasResolvedMode: defaultMode === "template-locked" ? !!_templateId : defaultMode !== void 0,
2614            hasBlockSelected: !!getBlockSelectionStart(),
2615            showIconLabels: get("core", "showIconLabels"),
2616            isDistractionFree: get("core", "distractionFree"),
2617            showMetaBoxes: isNotDesignPostType && !isZoomOut() || isDirectlyEditingPattern,
2618            isWelcomeGuideVisible: isFeatureActive2("welcomeGuide"),
2619            templateId: supportsTemplateMode && isViewable && canViewTemplate && !isEditingTemplate2 ? _templateId : null,
2620            isDevicePreview: getDeviceType() !== "Desktop"
2621          };
2622        },
2623        [
2624          currentPostType,
2625          currentPostId,
2626          isEditingTemplate2,
2627          settings.supportsTemplateMode,
2628          onNavigateToPreviousEntityRecord
2629        ]
2630      );
2631      useMetaBoxInitialization(hasActiveMetaboxes && hasResolvedMode);
2632      const commandContext = hasBlockSelected ? "block-selection-edit" : "entity-edit";
2633      useCommandContext(commandContext);
2634      const styles = useEditorStyles(settings);
2635      const editorSettings = (0, import_element12.useMemo)(
2636        () => ({
2637          ...settings,
2638          styles,
2639          onNavigateToEntityRecord,
2640          onNavigateToPreviousEntityRecord,
2641          defaultRenderingMode: "post-only"
2642        }),
2643        [
2644          settings,
2645          styles,
2646          onNavigateToEntityRecord,
2647          onNavigateToPreviousEntityRecord
2648        ]
2649      );
2650      if (showIconLabels) {
2651        document.body.classList.add("show-icon-labels");
2652      } else {
2653        document.body.classList.remove("show-icon-labels");
2654      }
2655      const navigateRegionsProps = (0, import_components9.__unstableUseNavigateRegions)();
2656      const className = clsx_default("edit-post-layout", "is-mode-" + mode, {
2657        "has-metaboxes": hasActiveMetaboxes
2658      });
2659      function onPluginAreaError(name) {
2660        createErrorNotice(
2661          (0, import_i18n14.sprintf)(
2662            /* translators: %s: plugin name */
2663            (0, import_i18n14.__)(
2664              'The "%s" plugin has encountered an error and cannot be rendered.'
2665            ),
2666            name
2667          )
2668        );
2669      }
2670      const { createSuccessNotice } = (0, import_data25.useDispatch)(import_notices3.store);
2671      const onActionPerformed = (0, import_element12.useCallback)(
2672        (actionId, items) => {
2673          switch (actionId) {
2674            case "move-to-trash":
2675              {
2676                document.location.href = (0, import_url5.addQueryArgs)("edit.php", {
2677                  trashed: 1,
2678                  post_type: items[0].type,
2679                  ids: items[0].id
2680                });
2681              }
2682              break;
2683            case "duplicate-post":
2684              {
2685                const newItem = items[0];
2686                const title = typeof newItem.title === "string" ? newItem.title : newItem.title?.rendered;
2687                createSuccessNotice(
2688                  (0, import_i18n14.sprintf)(
2689                    // translators: %s: Title of the created post or template, e.g: "Hello world".
2690                    (0, import_i18n14.__)('"%s" successfully created.'),
2691                    (0, import_html_entities.decodeEntities)(title) || (0, import_i18n14.__)("(no title)")
2692                  ),
2693                  {
2694                    type: "snackbar",
2695                    id: "duplicate-post-action",
2696                    actions: [
2697                      {
2698                        label: (0, import_i18n14.__)("Edit"),
2699                        onClick: () => {
2700                          const postId = newItem.id;
2701                          document.location.href = (0, import_url5.addQueryArgs)("post.php", {
2702                            post: postId,
2703                            action: "edit"
2704                          });
2705                        }
2706                      }
2707                    ]
2708                  }
2709                );
2710              }
2711              break;
2712          }
2713        },
2714        [createSuccessNotice]
2715      );
2716      const initialPost = (0, import_element12.useMemo)(() => {
2717        return {
2718          type: initialPostType,
2719          id: initialPostId
2720        };
2721      }, [initialPostType, initialPostId]);
2722      const backButton = (0, import_compose3.useViewportMatch)("medium") && isFullscreenActive ? /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(back_button_default, { initialPost }) : null;
2723      return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(import_components9.SlotFillProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(import_editor18.ErrorBoundary, { canCopyContent: true, children: [
2724        /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(WelcomeGuide, { postType: currentPostType }),
2725        /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
2726          "div",
2727          {
2728            className: navigateRegionsProps.className,
2729            ...navigateRegionsProps,
2730            ref: navigateRegionsProps.ref,
2731            children: /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(
2732              Editor,
2733              {
2734                settings: editorSettings,
2735                initialEdits,
2736                postType: currentPostType,
2737                postId: currentPostId,
2738                templateId,
2739                className,
2740                forceIsDirty: hasActiveMetaboxes,
2741                disableIframe: !shouldIframe,
2742                autoFocus: !isWelcomeGuideVisible,
2743                onActionPerformed,
2744                initialSelection: previousSelectedBlockPath,
2745                extraSidebarPanels: showMetaBoxes && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(MetaBoxes, { location: "side" }),
2746                extraContent: !isDistractionFree && showMetaBoxes && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
2747                  MetaBoxesMain,
2748                  {
2749                    isLegacy: !shouldIframe || isDevicePreview
2750                  }
2751                ),
2752                children: [
2753                  /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(import_editor18.PostLockedModal, {}),
2754                  /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(EditorInitialization, {}),
2755                  /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(FullscreenMode, { isActive: isFullscreenActive }),
2756                  /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(BrowserURL, {}),
2757                  /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(import_editor18.UnsavedChangesWarning, {}),
2758                  /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(import_editor18.AutosaveMonitor, {}),
2759                  /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(import_editor18.LocalAutosaveMonitor, {}),
2760                  /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(keyboard_shortcuts_default, {}),
2761                  /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(import_editor18.EditorKeyboardShortcutsRegister, {}),
2762                  /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(BlockKeyboardShortcuts, {}),
2763                  currentPostType === "wp_block" && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(InitPatternModal, {}),
2764                  /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(import_plugins.PluginArea, { onError: onPluginAreaError }),
2765                  /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(more_menu_default, {}),
2766                  backButton,
2767                  /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(import_editor18.EditorSnackbars, {})
2768                ]
2769              }
2770            )
2771          }
2772        )
2773      ] }) });
2774    }
2775    var layout_default = Layout;
2776  
2777    // packages/edit-post/build-module/deprecated.js
2778    var import_editor19 = __toESM(require_editor());
2779    var import_url6 = __toESM(require_url());
2780    var import_deprecated3 = __toESM(require_deprecated());
2781    var import_jsx_runtime24 = __toESM(require_jsx_runtime());
2782    var { PluginPostExcerpt } = unlock(import_editor19.privateApis);
2783    var isSiteEditor = (0, import_url6.getPath)(window.location.href)?.includes(
2784      "site-editor.php"
2785    );
2786    var deprecateSlot = (name) => {
2787      (0, import_deprecated3.default)(`wp.editPost.$name}`, {
2788        since: "6.6",
2789        alternative: `wp.editor.$name}`
2790      });
2791    };
2792    function PluginBlockSettingsMenuItem(props) {
2793      if (isSiteEditor) {
2794        return null;
2795      }
2796      deprecateSlot("PluginBlockSettingsMenuItem");
2797      return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(import_editor19.PluginBlockSettingsMenuItem, { ...props });
2798    }
2799    function PluginDocumentSettingPanel(props) {
2800      if (isSiteEditor) {
2801        return null;
2802      }
2803      deprecateSlot("PluginDocumentSettingPanel");
2804      return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(import_editor19.PluginDocumentSettingPanel, { ...props });
2805    }
2806    function PluginMoreMenuItem(props) {
2807      if (isSiteEditor) {
2808        return null;
2809      }
2810      deprecateSlot("PluginMoreMenuItem");
2811      return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(import_editor19.PluginMoreMenuItem, { ...props });
2812    }
2813    function PluginPrePublishPanel(props) {
2814      if (isSiteEditor) {
2815        return null;
2816      }
2817      deprecateSlot("PluginPrePublishPanel");
2818      return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(import_editor19.PluginPrePublishPanel, { ...props });
2819    }
2820    function PluginPostPublishPanel(props) {
2821      if (isSiteEditor) {
2822        return null;
2823      }
2824      deprecateSlot("PluginPostPublishPanel");
2825      return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(import_editor19.PluginPostPublishPanel, { ...props });
2826    }
2827    function PluginPostStatusInfo(props) {
2828      if (isSiteEditor) {
2829        return null;
2830      }
2831      deprecateSlot("PluginPostStatusInfo");
2832      return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(import_editor19.PluginPostStatusInfo, { ...props });
2833    }
2834    function PluginSidebar(props) {
2835      if (isSiteEditor) {
2836        return null;
2837      }
2838      deprecateSlot("PluginSidebar");
2839      return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(import_editor19.PluginSidebar, { ...props });
2840    }
2841    function PluginSidebarMoreMenuItem(props) {
2842      if (isSiteEditor) {
2843        return null;
2844      }
2845      deprecateSlot("PluginSidebarMoreMenuItem");
2846      return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(import_editor19.PluginSidebarMoreMenuItem, { ...props });
2847    }
2848    function __experimentalPluginPostExcerpt() {
2849      if (isSiteEditor) {
2850        return null;
2851      }
2852      (0, import_deprecated3.default)("wp.editPost.__experimentalPluginPostExcerpt", {
2853        since: "6.6",
2854        hint: "Core and custom panels can be access programmatically using their panel name.",
2855        link: "https://developer.wordpress.org/block-editor/reference-guides/slotfills/plugin-document-setting-panel/#accessing-a-panel-programmatically"
2856      });
2857      return PluginPostExcerpt;
2858    }
2859  
2860    // packages/edit-post/build-module/index.js
2861    var import_jsx_runtime25 = __toESM(require_jsx_runtime());
2862    var {
2863      BackButton: __experimentalMainDashboardButton,
2864      registerCoreBlockBindingsSources
2865    } = unlock(import_editor20.privateApis);
2866    function initializeEditor(id, postType, postId, settings, initialEdits) {
2867      const isMediumOrBigger = window.matchMedia("(min-width: 782px)").matches;
2868      const target = document.getElementById(id);
2869      const root = (0, import_element13.createRoot)(target);
2870      (0, import_data26.dispatch)(import_preferences11.store).setDefaults("core/edit-post", {
2871        fullscreenMode: true,
2872        themeStyles: true,
2873        welcomeGuide: true,
2874        welcomeGuideTemplate: true
2875      });
2876      (0, import_data26.dispatch)(import_preferences11.store).setDefaults("core", {
2877        allowRightClickOverrides: true,
2878        editorMode: "visual",
2879        editorTool: "edit",
2880        fixedToolbar: false,
2881        hiddenBlockTypes: [],
2882        inactivePanels: [],
2883        openPanels: ["post-status"],
2884        showBlockBreadcrumbs: true,
2885        showIconLabels: false,
2886        showListViewByDefault: false,
2887        enableChoosePatternModal: true,
2888        isPublishSidebarEnabled: true
2889      });
2890      if (window.__experimentalMediaProcessing) {
2891        (0, import_data26.dispatch)(import_preferences11.store).setDefaults("core/media", {
2892          requireApproval: true,
2893          optimizeOnUpload: true
2894        });
2895      }
2896      (0, import_data26.dispatch)(import_blocks3.store).reapplyBlockTypeFilters();
2897      if (isMediumOrBigger && (0, import_data26.select)(import_preferences11.store).get("core", "showListViewByDefault") && !(0, import_data26.select)(import_preferences11.store).get("core", "distractionFree")) {
2898        (0, import_data26.dispatch)(import_editor20.store).setIsListViewOpened(true);
2899      }
2900      (0, import_block_library2.registerCoreBlocks)();
2901      registerCoreBlockBindingsSources();
2902      (0, import_widgets.registerLegacyWidgetBlock)({ inserter: false });
2903      (0, import_widgets.registerWidgetGroupBlock)({ inserter: false });
2904      if (false) {
2905        (0, import_block_library2.__experimentalRegisterExperimentalCoreBlocks)({
2906          enableFSEBlocks: settings.__unstableEnableFullSiteEditingBlocks
2907        });
2908      }
2909      const documentMode = document.compatMode === "CSS1Compat" ? "Standards" : "Quirks";
2910      if (documentMode !== "Standards") {
2911        console.warn(
2912          "Your browser is using Quirks Mode. \nThis can cause rendering issues such as blocks overlaying meta boxes in the editor. Quirks Mode can be triggered by PHP errors or HTML code appearing before the opening <!DOCTYPE html>. Try checking the raw page source or your site's PHP error log and resolving errors there, removing any HTML before the doctype, or disabling plugins."
2913        );
2914      }
2915      const isIphone = window.navigator.userAgent.indexOf("iPhone") !== -1;
2916      if (isIphone) {
2917        window.addEventListener("scroll", (event) => {
2918          const editorScrollContainer = document.getElementsByClassName(
2919            "interface-interface-skeleton__body"
2920          )[0];
2921          if (event.target === document) {
2922            if (window.scrollY > 100) {
2923              editorScrollContainer.scrollTop = editorScrollContainer.scrollTop + window.scrollY;
2924            }
2925            if (document.getElementsByClassName("is-mode-visual")[0]) {
2926              window.scrollTo(0, 0);
2927            }
2928          }
2929        });
2930      }
2931      window.addEventListener("dragover", (e) => e.preventDefault(), false);
2932      window.addEventListener("drop", (e) => e.preventDefault(), false);
2933      root.render(
2934        /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_element13.StrictMode, { children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
2935          layout_default,
2936          {
2937            settings,
2938            postId,
2939            postType,
2940            initialEdits
2941          }
2942        ) })
2943      );
2944      return root;
2945    }
2946    function reinitializeEditor() {
2947      (0, import_deprecated4.default)("wp.editPost.reinitializeEditor", {
2948        since: "6.2",
2949        version: "6.3"
2950      });
2951    }
2952    return __toCommonJS(index_exports);
2953  })();


Generated : Wed Apr 15 08:20:10 2026 Cross-referenced by PHPXref