[ Index ]

PHP Cross Reference of WordPress Trunk (Updated Daily)

Search

title

Body

[close]

/wp-includes/js/dist/script-modules/interactivity-router/ -> index.js (source)

   1  import * as __WEBPACK_EXTERNAL_MODULE__wordpress_interactivity_8e89b257__ from "@wordpress/interactivity";
   2  /******/ var __webpack_modules__ = ({
   3  
   4  /***/ 317:
   5  /***/ ((module) => {
   6  
   7  module.exports = import("@wordpress/a11y");;
   8  
   9  /***/ })
  10  
  11  /******/ });
  12  /************************************************************************/
  13  /******/ // The module cache
  14  /******/ var __webpack_module_cache__ = {};
  15  /******/ 
  16  /******/ // The require function
  17  /******/ function __webpack_require__(moduleId) {
  18  /******/     // Check if module is in cache
  19  /******/     var cachedModule = __webpack_module_cache__[moduleId];
  20  /******/     if (cachedModule !== undefined) {
  21  /******/         return cachedModule.exports;
  22  /******/     }
  23  /******/     // Create a new module (and put it into the cache)
  24  /******/     var module = __webpack_module_cache__[moduleId] = {
  25  /******/         // no module.id needed
  26  /******/         // no module.loaded needed
  27  /******/         exports: {}
  28  /******/     };
  29  /******/ 
  30  /******/     // Execute the module function
  31  /******/     __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
  32  /******/ 
  33  /******/     // Return the exports of the module
  34  /******/     return module.exports;
  35  /******/ }
  36  /******/ 
  37  /************************************************************************/
  38  /******/ /* webpack/runtime/define property getters */
  39  /******/ (() => {
  40  /******/     // define getter functions for harmony exports
  41  /******/     __webpack_require__.d = (exports, definition) => {
  42  /******/         for(var key in definition) {
  43  /******/             if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
  44  /******/                 Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
  45  /******/             }
  46  /******/         }
  47  /******/     };
  48  /******/ })();
  49  /******/ 
  50  /******/ /* webpack/runtime/hasOwnProperty shorthand */
  51  /******/ (() => {
  52  /******/     __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
  53  /******/ })();
  54  /******/ 
  55  /************************************************************************/
  56  var __webpack_exports__ = {};
  57  
  58  // EXPORTS
  59  __webpack_require__.d(__webpack_exports__, {
  60    o: () => (/* binding */ actions),
  61    w: () => (/* binding */ state)
  62  });
  63  
  64  ;// external "@wordpress/interactivity"
  65  var x = (y) => {
  66      var x = {}; __webpack_require__.d(x, y); return x
  67  } 
  68  var y = (x) => (() => (x))
  69  const interactivity_namespaceObject = x({ ["getConfig"]: () => (__WEBPACK_EXTERNAL_MODULE__wordpress_interactivity_8e89b257__.getConfig), ["privateApis"]: () => (__WEBPACK_EXTERNAL_MODULE__wordpress_interactivity_8e89b257__.privateApis), ["store"]: () => (__WEBPACK_EXTERNAL_MODULE__wordpress_interactivity_8e89b257__.store) });
  70  ;// ./node_modules/@wordpress/interactivity-router/build-module/assets/scs.js
  71  function shortestCommonSupersequence(X, Y, isEqual = (a, b) => a === b) {
  72    const m = X.length;
  73    const n = Y.length;
  74    const dp = Array.from(
  75      { length: m + 1 },
  76      () => Array(n + 1).fill(null)
  77    );
  78    for (let i = 0; i <= m; i++) {
  79      dp[i][0] = X.slice(0, i);
  80    }
  81    for (let j = 0; j <= n; j++) {
  82      dp[0][j] = Y.slice(0, j);
  83    }
  84    for (let i = 1; i <= m; i++) {
  85      for (let j = 1; j <= n; j++) {
  86        if (isEqual(X[i - 1], Y[j - 1])) {
  87          dp[i][j] = dp[i - 1][j - 1].concat(X[i - 1]);
  88        } else {
  89          const option1 = dp[i - 1][j].concat(X[i - 1]);
  90          const option2 = dp[i][j - 1].concat(Y[j - 1]);
  91          dp[i][j] = option1.length <= option2.length ? option1 : option2;
  92        }
  93      }
  94    }
  95    return dp[m][n];
  96  }
  97  
  98  
  99  ;// ./node_modules/@wordpress/interactivity-router/build-module/assets/styles.js
 100  
 101  const areNodesEqual = (a, b) => a.isEqualNode(b);
 102  const normalizeMedia = (element) => {
 103    element = element.cloneNode(true);
 104    const media = element.media;
 105    const { originalMedia } = element.dataset;
 106    if (media === "preload") {
 107      element.media = originalMedia || "all";
 108      element.removeAttribute("data-original-media");
 109    } else if (!element.media) {
 110      element.media = "all";
 111    }
 112    return element;
 113  };
 114  function updateStylesWithSCS(X, Y, parent = window.document.head) {
 115    if (X.length === 0) {
 116      return Y.map((element) => {
 117        const promise = prepareStylePromise(element);
 118        parent.appendChild(element);
 119        return promise;
 120      });
 121    }
 122    const xNormalized = X.map(normalizeMedia);
 123    const yNormalized = Y.map(normalizeMedia);
 124    const scs = shortestCommonSupersequence(
 125      xNormalized,
 126      yNormalized,
 127      areNodesEqual
 128    );
 129    const xLength = X.length;
 130    const yLength = Y.length;
 131    const promises = [];
 132    let last = X[xLength - 1];
 133    let xIndex = 0;
 134    let yIndex = 0;
 135    for (const scsElement of scs) {
 136      const xElement = X[xIndex];
 137      const yElement = Y[yIndex];
 138      const xNormEl = xNormalized[xIndex];
 139      const yNormEl = yNormalized[yIndex];
 140      if (xIndex < xLength && areNodesEqual(xNormEl, scsElement)) {
 141        if (yIndex < yLength && areNodesEqual(yNormEl, scsElement)) {
 142          promises.push(prepareStylePromise(xElement));
 143          yIndex++;
 144        }
 145        xIndex++;
 146      } else {
 147        promises.push(prepareStylePromise(yElement));
 148        if (xIndex < xLength) {
 149          xElement.before(yElement);
 150        } else {
 151          last.after(yElement);
 152          last = yElement;
 153        }
 154        yIndex++;
 155      }
 156    }
 157    return promises;
 158  }
 159  const stylePromiseCache = /* @__PURE__ */ new WeakMap();
 160  const prepareStylePromise = (element) => {
 161    if (stylePromiseCache.has(element)) {
 162      return stylePromiseCache.get(element);
 163    }
 164    if (window.document.contains(element) && element.media !== "preload") {
 165      const promise2 = Promise.resolve(element);
 166      stylePromiseCache.set(element, promise2);
 167      return promise2;
 168    }
 169    if (element.hasAttribute("media") && element.media !== "all") {
 170      element.dataset.originalMedia = element.media;
 171    }
 172    element.media = "preload";
 173    if (element instanceof HTMLStyleElement) {
 174      const promise2 = Promise.resolve(element);
 175      stylePromiseCache.set(element, promise2);
 176      return promise2;
 177    }
 178    const promise = new Promise((resolve, reject) => {
 179      element.addEventListener("load", () => resolve(element));
 180      element.addEventListener("error", (event) => {
 181        const { href } = event.target;
 182        reject(
 183          Error(
 184            `The style sheet with the following URL failed to load: $href}`
 185          )
 186        );
 187      });
 188    });
 189    stylePromiseCache.set(element, promise);
 190    return promise;
 191  };
 192  const styleSheetCache = /* @__PURE__ */ new Map();
 193  const preloadStyles = (doc, url) => {
 194    if (!styleSheetCache.has(url)) {
 195      const currentStyleElements = Array.from(
 196        window.document.querySelectorAll(
 197          "style,link[rel=stylesheet]"
 198        )
 199      );
 200      const newStyleElements = Array.from(
 201        doc.querySelectorAll("style,link[rel=stylesheet]")
 202      );
 203      const stylePromises = updateStylesWithSCS(
 204        currentStyleElements,
 205        newStyleElements
 206      );
 207      styleSheetCache.set(url, stylePromises);
 208    }
 209    return styleSheetCache.get(url);
 210  };
 211  const applyStyles = (styles) => {
 212    window.document.querySelectorAll("style,link[rel=stylesheet]").forEach((el) => {
 213      if (el.sheet) {
 214        if (styles.includes(el)) {
 215          if (el.sheet.media.mediaText === "preload") {
 216            const { originalMedia = "all" } = el.dataset;
 217            el.sheet.media.mediaText = originalMedia;
 218          }
 219          el.sheet.disabled = false;
 220        } else {
 221          el.sheet.disabled = true;
 222        }
 223      }
 224    });
 225  };
 226  
 227  
 228  ;// ./node_modules/@wordpress/interactivity-router/build-module/assets/dynamic-importmap/resolver.js
 229  const backslashRegEx = /\\/g;
 230  function isURL(url) {
 231    if (url.indexOf(":") === -1) {
 232      return false;
 233    }
 234    try {
 235      new URL(url);
 236      return true;
 237    } catch (_) {
 238      return false;
 239    }
 240  }
 241  function resolveIfNotPlainOrUrl(relUrl, parentUrl) {
 242    const hIdx = parentUrl.indexOf("#"), qIdx = parentUrl.indexOf("?");
 243    if (hIdx + qIdx > -2) {
 244      parentUrl = parentUrl.slice(
 245        0,
 246        // eslint-disable-next-line no-nested-ternary
 247        hIdx === -1 ? qIdx : qIdx === -1 || qIdx > hIdx ? hIdx : qIdx
 248      );
 249    }
 250    if (relUrl.indexOf("\\") !== -1) {
 251      relUrl = relUrl.replace(backslashRegEx, "/");
 252    }
 253    if (relUrl[0] === "/" && relUrl[1] === "/") {
 254      return parentUrl.slice(0, parentUrl.indexOf(":") + 1) + relUrl;
 255    } else if (relUrl[0] === "." && (relUrl[1] === "/" || relUrl[1] === "." && (relUrl[2] === "/" || relUrl.length === 2 && (relUrl += "/")) || relUrl.length === 1 && (relUrl += "/")) || relUrl[0] === "/") {
 256      const parentProtocol = parentUrl.slice(
 257        0,
 258        parentUrl.indexOf(":") + 1
 259      );
 260      let pathname;
 261      if (parentUrl[parentProtocol.length + 1] === "/") {
 262        if (parentProtocol !== "file:") {
 263          pathname = parentUrl.slice(parentProtocol.length + 2);
 264          pathname = pathname.slice(pathname.indexOf("/") + 1);
 265        } else {
 266          pathname = parentUrl.slice(8);
 267        }
 268      } else {
 269        pathname = parentUrl.slice(
 270          parentProtocol.length + (parentUrl[parentProtocol.length] === "/")
 271        );
 272      }
 273      if (relUrl[0] === "/") {
 274        return parentUrl.slice(0, parentUrl.length - pathname.length - 1) + relUrl;
 275      }
 276      const segmented = pathname.slice(0, pathname.lastIndexOf("/") + 1) + relUrl;
 277      const output = [];
 278      let segmentIndex = -1;
 279      for (let i = 0; i < segmented.length; i++) {
 280        if (segmentIndex !== -1) {
 281          if (segmented[i] === "/") {
 282            output.push(segmented.slice(segmentIndex, i + 1));
 283            segmentIndex = -1;
 284          }
 285          continue;
 286        } else if (segmented[i] === ".") {
 287          if (segmented[i + 1] === "." && (segmented[i + 2] === "/" || i + 2 === segmented.length)) {
 288            output.pop();
 289            i += 2;
 290            continue;
 291          } else if (segmented[i + 1] === "/" || i + 1 === segmented.length) {
 292            i += 1;
 293            continue;
 294          }
 295        }
 296        while (segmented[i] === "/") {
 297          i++;
 298        }
 299        segmentIndex = i;
 300      }
 301      if (segmentIndex !== -1) {
 302        output.push(segmented.slice(segmentIndex));
 303      }
 304      return parentUrl.slice(0, parentUrl.length - pathname.length) + output.join("");
 305    }
 306  }
 307  function resolveUrl(relUrl, parentUrl) {
 308    return resolveIfNotPlainOrUrl(relUrl, parentUrl) || (isURL(relUrl) ? relUrl : resolveIfNotPlainOrUrl("./" + relUrl, parentUrl));
 309  }
 310  function getMatch(path, matchObj) {
 311    if (matchObj[path]) {
 312      return path;
 313    }
 314    let sepIndex = path.length;
 315    do {
 316      const segment = path.slice(0, sepIndex + 1);
 317      if (segment in matchObj) {
 318        return segment;
 319      }
 320    } while ((sepIndex = path.lastIndexOf("/", sepIndex - 1)) !== -1);
 321  }
 322  function applyPackages(id, packages) {
 323    const pkgName = getMatch(id, packages);
 324    if (pkgName) {
 325      const pkg = packages[pkgName];
 326      if (pkg === null) {
 327        return;
 328      }
 329      return pkg + id.slice(pkgName.length);
 330    }
 331  }
 332  function resolveImportMap(importMap2, resolvedOrPlain, parentUrl) {
 333    let scopeUrl = parentUrl && getMatch(parentUrl, importMap2.scopes);
 334    while (scopeUrl) {
 335      const packageResolution = applyPackages(
 336        resolvedOrPlain,
 337        importMap2.scopes[scopeUrl]
 338      );
 339      if (packageResolution) {
 340        return packageResolution;
 341      }
 342      scopeUrl = getMatch(
 343        scopeUrl.slice(0, scopeUrl.lastIndexOf("/")),
 344        importMap2.scopes
 345      );
 346    }
 347    return applyPackages(resolvedOrPlain, importMap2.imports) || resolvedOrPlain.indexOf(":") !== -1 && resolvedOrPlain;
 348  }
 349  function resolveAndComposePackages(packages, outPackages, baseUrl2, parentMap) {
 350    for (const p in packages) {
 351      const resolvedLhs = resolveIfNotPlainOrUrl(p, baseUrl2) || p;
 352      const target = packages[p];
 353      if (typeof target !== "string") {
 354        continue;
 355      }
 356      const mapped = resolveImportMap(
 357        parentMap,
 358        resolveIfNotPlainOrUrl(target, baseUrl2) || target,
 359        baseUrl2
 360      );
 361      if (mapped) {
 362        outPackages[resolvedLhs] = mapped;
 363        continue;
 364      }
 365    }
 366  }
 367  function resolveAndComposeImportMap(json, baseUrl2, parentMap) {
 368    const outMap = {
 369      imports: Object.assign({}, parentMap.imports),
 370      scopes: Object.assign({}, parentMap.scopes)
 371    };
 372    if (json.imports) {
 373      resolveAndComposePackages(
 374        json.imports,
 375        outMap.imports,
 376        baseUrl2,
 377        parentMap
 378      );
 379    }
 380    if (json.scopes) {
 381      for (const s in json.scopes) {
 382        const resolvedScope = resolveUrl(s, baseUrl2);
 383        resolveAndComposePackages(
 384          json.scopes[s],
 385          outMap.scopes[resolvedScope] || (outMap.scopes[resolvedScope] = {}),
 386          baseUrl2,
 387          parentMap
 388        );
 389      }
 390    }
 391    return outMap;
 392  }
 393  let importMap = { imports: {}, scopes: {} };
 394  const baseUrl = document.baseURI;
 395  const pageBaseUrl = baseUrl;
 396  function resolver_addImportMap(importMapIn) {
 397    importMap = resolveAndComposeImportMap(
 398      importMapIn,
 399      pageBaseUrl,
 400      importMap
 401    );
 402  }
 403  function resolve(id, parentUrl) {
 404    const urlResolved = resolveIfNotPlainOrUrl(id, parentUrl);
 405    return resolveImportMap(importMap, urlResolved || id, parentUrl) || id;
 406  }
 407  
 408  
 409  ;// ./node_modules/es-module-lexer/dist/lexer.js
 410  /* es-module-lexer 1.7.0 */
 411  var ImportType;!function(A){A[A.Static=1]="Static",A[A.Dynamic=2]="Dynamic",A[A.ImportMeta=3]="ImportMeta",A[A.StaticSourcePhase=4]="StaticSourcePhase",A[A.DynamicSourcePhase=5]="DynamicSourcePhase",A[A.StaticDeferPhase=6]="StaticDeferPhase",A[A.DynamicDeferPhase=7]="DynamicDeferPhase"}(ImportType||(ImportType={}));const A=1===new Uint8Array(new Uint16Array([1]).buffer)[0];function parse(E,g="@"){if(!C)return init.then((()=>parse(E)));const I=E.length+1,w=(C.__heap_base.value||C.__heap_base)+4*I-C.memory.buffer.byteLength;w>0&&C.memory.grow(Math.ceil(w/65536));const K=C.sa(I-1);if((A?B:Q)(E,new Uint16Array(C.memory.buffer,K,I)),!C.parse())throw Object.assign(new Error(`Parse error $g}:$E.slice(0,C.e()).split("\n").length}:$C.e()-E.lastIndexOf("\n",C.e()-1)}`),{idx:C.e()});const o=[],D=[];for(;C.ri();){const A=C.is(),Q=C.ie(),B=C.it(),g=C.ai(),I=C.id(),w=C.ss(),K=C.se();let D;C.ip()&&(D=k(E.slice(-1===I?A-1:A,-1===I?Q+1:Q))),o.push({n:D,t:B,s:A,e:Q,ss:w,se:K,d:I,a:g})}for(;C.re();){const A=C.es(),Q=C.ee(),B=C.els(),g=C.ele(),I=E.slice(A,Q),w=I[0],K=B<0?void 0:E.slice(B,g),o=K?K[0]:"";D.push({s:A,e:Q,ls:B,le:g,n:'"'===w||"'"===w?k(I):I,ln:'"'===o||"'"===o?k(K):K})}function k(A){try{return(0,eval)(A)}catch(A){}}return[o,D,!!C.f(),!!C.ms()]}function Q(A,Q){const B=A.length;let C=0;for(;C<B;){const B=A.charCodeAt(C);Q[C++]=(255&B)<<8|B>>>8}}function B(A,Q){const B=A.length;let C=0;for(;C<B;)Q[C]=A.charCodeAt(C++)}let C;const E=()=>{return A="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GzYCHAtBAEEAKAKwCkECajYCsAoCQAJAAkACQEEAECkiAUHhAEYNACABQfcARg0BQQAoArAKIQEMAgtBACgCsAoiAUECakHACEEKEC8NAUEGIQIMAgtBACgCsAoiAS8BAkHpAEcNACABLwEEQfQARw0AQQQhAiABLwEGQegARg0BC0EAIAFBfmo2ArAKDwtBACABIAJBAXRqNgKwCgJAQQEQKUH7AEYNAEEAIAE2ArAKDwtBACgCsAoiACECA0BBACACQQJqNgKwCgJAAkACQEEBECkiAkEiRg0AIAJBJ0cNAUEnEBpBAEEAKAKwCkECajYCsApBARApIQIMAgtBIhAaQQBBACgCsApBAmo2ArAKQQEQKSECDAELIAIQLCECCwJAIAJBOkYNAEEAIAE2ArAKDwtBAEEAKAKwCkECajYCsAoCQEEBECkiAkEiRg0AIAJBJ0YNAEEAIAE2ArAKDwsgAhAaQQBBACgCsApBAmo2ArAKAkACQEEBECkiAkEsRg0AIAJB/QBGDQFBACABNgKwCg8LQQBBACgCsApBAmo2ArAKQQEQKUH9AEYNAEEAKAKwCiECDAELC0EAKALwCSIBIAA2AhAgAUEAKAKwCkECajYCDAttAQJ/AkACQANAAkAgAEH//wNxIgFBd2oiAkEXSw0AQQEgAnRBn4CABHENAgsgAUGgAUYNASAAIQIgARAoDQJBACECQQBBACgCsAoiAEECajYCsAogAC8BAiIADQAMAgsLIAAhAgsgAkH//wNxC6sBAQR/AkACQEEAKAKwCiICLwEAIgNB4QBGDQAgASEEIAAhBQwBC0EAIAJBBGo2ArAKQQEQKSECQQAoArAKIQUCQAJAIAJBIkYNACACQSdGDQAgAhAsGkEAKAKwCiEEDAELIAIQGkEAQQAoArAKQQJqIgQ2ArAKC0EBECkhA0EAKAKwCiECCwJAIAIgBUYNACAFIARBACAAIAAgAUYiAhtBACABIAIbEAILIAMLcgEEf0EAKAKwCiEAQQAoArQKIQECQAJAA0AgAEECaiECIAAgAU8NAQJAAkAgAi8BACIDQaR/ag4CAQQACyACIQAgA0F2ag4EAgEBAgELIABBBGohAAwACwtBACACNgKwChAlQQAPC0EAIAI2ArAKQd0AC0kBA39BACEDAkAgAkUNAAJAA0AgAC0AACIEIAEtAAAiBUcNASABQQFqIQEgAEEBaiEAIAJBf2oiAg0ADAILCyAEIAVrIQMLIAMLC+wBAgBBgAgLzgEAAHgAcABvAHIAdABtAHAAbwByAHQAZgBvAHIAZQB0AGEAbwB1AHIAYwBlAHIAbwBtAHUAbgBjAHQAaQBvAG4AcwBzAGUAcgB0AHYAbwB5AGkAZQBkAGUAbABlAGMAbwBuAHQAaQBuAGkAbgBzAHQAYQBuAHQAeQBiAHIAZQBhAHIAZQB0AHUAcgBkAGUAYgB1AGcAZwBlAGEAdwBhAGkAdABoAHIAdwBoAGkAbABlAGkAZgBjAGEAdABjAGYAaQBuAGEAbABsAGUAbABzAABB0AkLEAEAAAACAAAAAAQAAEA5AAA=","undefined"!=typeof Buffer?Buffer.from(A,"base64"):Uint8Array.from(atob(A),(A=>A.charCodeAt(0)));var A};const init=WebAssembly.compile(E()).then(WebAssembly.instantiate).then((({exports:A})=>{C=A}));const initSync=()=>{if(C)return;const A=new WebAssembly.Module(E());C=new WebAssembly.Instance(A).exports};
 412  ;// ./node_modules/@wordpress/interactivity-router/build-module/assets/dynamic-importmap/fetch.js
 413  const fetching = (url, parent) => {
 414    return ` fetching $url}$parent ? ` from $parent}` : ""}`;
 415  };
 416  const jsContentType = /^(text|application)\/(x-)?javascript(;|$)/;
 417  async function fetchModule(url, fetchOpts, parent) {
 418    let res;
 419    try {
 420      res = await fetch(url, fetchOpts);
 421    } catch (e) {
 422      throw Error(`Network error$fetching(url, parent)}.`);
 423    }
 424    if (!res.ok) {
 425      throw Error(`Error $res.status}$fetching(url, parent)}.`);
 426    }
 427    const contentType = res.headers.get("content-type");
 428    if (!jsContentType.test(contentType)) {
 429      throw Error(
 430        `Bad Content-Type "$contentType}"$fetching(url, parent)}.`
 431      );
 432    }
 433    return { responseUrl: res.url, source: await res.text() };
 434  }
 435  
 436  
 437  ;// ./node_modules/@wordpress/interactivity-router/build-module/assets/dynamic-importmap/loader.js
 438  
 439  
 440  
 441  const initPromise = init;
 442  const initialImportMapElement = window.document.querySelector(
 443    "script#wp-importmap[type=importmap]"
 444  );
 445  const initialImportMap = initialImportMapElement ? JSON.parse(initialImportMapElement.text) : { imports: {}, scopes: {} };
 446  const skip = (id) => Object.keys(initialImportMap.imports).includes(id);
 447  const fetchCache = {};
 448  const registry = {};
 449  Object.keys(initialImportMap.imports).forEach((id) => {
 450    registry[id] = {
 451      blobUrl: id
 452    };
 453  });
 454  async function loadAll(load, seen) {
 455    if (load.blobUrl || seen[load.url]) {
 456      return;
 457    }
 458    seen[load.url] = 1;
 459    await load.linkPromise;
 460    await Promise.all(load.deps.map((dep) => loadAll(dep, seen)));
 461  }
 462  function urlJsString(url) {
 463    return `'$url.replace(/'/g, "\\'")}'`;
 464  }
 465  const createBlob = (source, type = "text/javascript") => URL.createObjectURL(new Blob([source], { type }));
 466  function resolveDeps(load, seen) {
 467    if (load.blobUrl || !seen[load.url]) {
 468      return;
 469    }
 470    seen[load.url] = 0;
 471    for (const dep of load.deps) {
 472      resolveDeps(dep, seen);
 473    }
 474    const [imports, exports] = load.analysis;
 475    const source = load.source;
 476    let resolvedSource = "";
 477    if (!imports.length) {
 478      resolvedSource += source;
 479    } else {
 480      let pushStringTo = function(originalIndex) {
 481        while (dynamicImportEndStack.length && dynamicImportEndStack[dynamicImportEndStack.length - 1] < originalIndex) {
 482          const dynamicImportEnd = dynamicImportEndStack.pop();
 483          resolvedSource += `$source.slice(
 484            lastIndex,
 485            dynamicImportEnd
 486          )}, $urlJsString(load.responseUrl)}`;
 487          lastIndex = dynamicImportEnd;
 488        }
 489        resolvedSource += source.slice(lastIndex, originalIndex);
 490        lastIndex = originalIndex;
 491      };
 492      let lastIndex = 0;
 493      let depIndex = 0;
 494      const dynamicImportEndStack = [];
 495      for (const {
 496        s: start,
 497        ss: statementStart,
 498        se: statementEnd,
 499        d: dynamicImportIndex
 500      } of imports) {
 501        if (dynamicImportIndex === -1) {
 502          const depLoad = load.deps[depIndex++];
 503          let blobUrl = depLoad.blobUrl;
 504          const cycleShell = !blobUrl;
 505          if (cycleShell) {
 506            if (!(blobUrl = depLoad.shellUrl)) {
 507              blobUrl = depLoad.shellUrl = createBlob(
 508                `export function u$_(m){$depLoad.analysis[1].map(({ s, e }, i) => {
 509                  const q = depLoad.source[s] === '"' || depLoad.source[s] === "'";
 510                  return `e$_$i}=m$q ? `[` : "."}$depLoad.source.slice(s, e)}$q ? `]` : ""}`;
 511                }).join(",")}}$depLoad.analysis[1].length ? `let $depLoad.analysis[1].map((_, i) => `e$_$i}`).join(",")};` : ""}export {$depLoad.analysis[1].map(
 512                  ({ s, e }, i) => `e$_$i} as $depLoad.source.slice(
 513                    s,
 514                    e
 515                  )}`
 516                ).join(",")}}
 517  //# sourceURL=${depLoad.responseUrl}?cycle`
 518              );
 519            }
 520          }
 521          pushStringTo(start - 1);
 522          resolvedSource += `/*${source.slice(
 523            start - 1,
 524            statementEnd
 525          )}*/$urlJsString(blobUrl)}`;
 526          if (!cycleShell && depLoad.shellUrl) {
 527            resolvedSource += `;import*as m$_$depIndex} from'$depLoad.blobUrl}';import{u$_ as u$_$depIndex}}from'$depLoad.shellUrl}';u$_$depIndex}(m$_$depIndex})`;
 528            depLoad.shellUrl = void 0;
 529          }
 530          lastIndex = statementEnd;
 531        } else if (dynamicImportIndex === -2) {
 532          throw Error("The import.meta property is not supported.");
 533        } else {
 534          pushStringTo(statementStart);
 535          resolvedSource += `wpInteractivityRouterImport(`;
 536          dynamicImportEndStack.push(statementEnd - 1);
 537          lastIndex = start;
 538        }
 539      }
 540      if (load.shellUrl) {
 541        resolvedSource += `
 542  ;import{u$_}from'$load.shellUrl}';try{u$_({$exports.filter((e) => e.ln).map(({ s, e, ln }) => `$source.slice(s, e)}:$ln}`).join(",")}})}catch(_){};
 543  `;
 544      }
 545      pushStringTo(source.length);
 546    }
 547    let hasSourceURL = false;
 548    resolvedSource = resolvedSource.replace(
 549      sourceMapURLRegEx,
 550      (match, isMapping, url) => {
 551        hasSourceURL = !isMapping;
 552        return match.replace(
 553          url,
 554          () => new URL(url, load.responseUrl).toString()
 555        );
 556      }
 557    );
 558    if (!hasSourceURL) {
 559      resolvedSource += "\n//# sourceURL=" + load.responseUrl;
 560    }
 561    load.blobUrl = createBlob(resolvedSource);
 562    load.source = void 0;
 563  }
 564  const sourceMapURLRegEx = /\n\/\/# source(Mapping)?URL=([^\n]+)\s*((;|\/\/[^#][^\n]*)\s*)*$/;
 565  function getOrCreateLoad(url, fetchOpts, parent) {
 566    let load = registry[url];
 567    if (load) {
 568      return load;
 569    }
 570    load = { url };
 571    if (registry[url]) {
 572      let i = 0;
 573      while (registry[load.url + ++i]) {
 574      }
 575      load.url += i;
 576    }
 577    registry[load.url] = load;
 578    load.fetchPromise = (async () => {
 579      let source;
 580      ({ responseUrl: load.responseUrl, source } = await (fetchCache[url] || fetchModule(url, fetchOpts, parent)));
 581      try {
 582        load.analysis = parse(source, load.url);
 583      } catch (e) {
 584        console.error(e);
 585        load.analysis = [[], [], false, false];
 586      }
 587      load.source = source;
 588      return load;
 589    })();
 590    load.linkPromise = load.fetchPromise.then(async () => {
 591      let childFetchOpts = fetchOpts;
 592      load.deps = (await Promise.all(
 593        load.analysis[0].map(async ({ n, d }) => {
 594          if (d !== -1 || !n) {
 595            return void 0;
 596          }
 597          const responseUrl = resolve(
 598            n,
 599            load.responseUrl || load.url
 600          );
 601          if (skip && skip(responseUrl)) {
 602            return { blobUrl: responseUrl };
 603          }
 604          if (childFetchOpts.integrity) {
 605            childFetchOpts = {
 606              ...childFetchOpts,
 607              integrity: void 0
 608            };
 609          }
 610          return getOrCreateLoad(
 611            responseUrl,
 612            childFetchOpts,
 613            load.responseUrl
 614          ).fetchPromise;
 615        })
 616      )).filter((l) => l);
 617    });
 618    return load;
 619  }
 620  const dynamicImport = (u) => import(
 621    /* webpackIgnore: true */
 622    u
 623  );
 624  async function preloadModule(url, fetchOpts) {
 625    await initPromise;
 626    const load = getOrCreateLoad(url, fetchOpts, null);
 627    const seen = {};
 628    await loadAll(load, seen);
 629    resolveDeps(load, seen);
 630    await Promise.resolve();
 631    return load;
 632  }
 633  async function importPreloadedModule(load) {
 634    const module = await dynamicImport(load.blobUrl);
 635    if (load.shellUrl) {
 636      (await dynamicImport(load.shellUrl)).u$_(module);
 637    }
 638    return module;
 639  }
 640  async function topLevelLoad(url, fetchOpts) {
 641    const load = await preloadModule(url, fetchOpts);
 642    return importPreloadedModule(load);
 643  }
 644  
 645  
 646  ;// ./node_modules/@wordpress/interactivity-router/build-module/assets/dynamic-importmap/index.js
 647  
 648  
 649  const dynamic_importmap_baseUrl = document.baseURI;
 650  const dynamic_importmap_pageBaseUrl = dynamic_importmap_baseUrl;
 651  Object.defineProperty(self, "wpInteractivityRouterImport", {
 652    value: importShim,
 653    writable: false,
 654    enumerable: false,
 655    configurable: false
 656  });
 657  async function importShim(id) {
 658    await initPromise;
 659    return topLevelLoad(resolve(id, dynamic_importmap_pageBaseUrl), {
 660      credentials: "same-origin"
 661    });
 662  }
 663  async function importWithMap(id, importMapIn) {
 664    addImportMap(importMapIn);
 665    return importShim(id);
 666  }
 667  async function preloadWithMap(id, importMapIn) {
 668    resolver_addImportMap(importMapIn);
 669    await initPromise;
 670    return preloadModule(resolve(id, dynamic_importmap_pageBaseUrl), {
 671      credentials: "same-origin"
 672    });
 673  }
 674  
 675  
 676  
 677  ;// ./node_modules/@wordpress/interactivity-router/build-module/assets/script-modules.js
 678  
 679  const resolvedScriptModules = /* @__PURE__ */ new Set();
 680  const markScriptModuleAsResolved = (url) => {
 681    resolvedScriptModules.add(url);
 682  };
 683  const preloadScriptModules = (doc) => {
 684    const importMapElement = doc.querySelector(
 685      "script#wp-importmap[type=importmap]"
 686    );
 687    const importMap = importMapElement ? JSON.parse(importMapElement.text) : { imports: {}, scopes: {} };
 688    for (const key in initialImportMap.imports) {
 689      delete importMap.imports[key];
 690    }
 691    const moduleUrls = [
 692      ...doc.querySelectorAll(
 693        "script[type=module][src][data-wp-router-options]"
 694      )
 695    ].filter((script) => {
 696      try {
 697        const parsed = JSON.parse(
 698          script.getAttribute("data-wp-router-options")
 699        );
 700        return parsed?.loadOnClientNavigation === true;
 701      } catch {
 702        return false;
 703      }
 704    }).map((script) => script.src);
 705    return moduleUrls.filter((url) => !resolvedScriptModules.has(url)).map((url) => preloadWithMap(url, importMap));
 706  };
 707  const importScriptModules = (modules) => Promise.all(modules.map((m) => importPreloadedModule(m)));
 708  
 709  
 710  ;// ./node_modules/@wordpress/interactivity-router/build-module/index.js
 711  
 712  
 713  
 714  const {
 715    getRegionRootFragment,
 716    initialVdom,
 717    toVdom,
 718    render,
 719    parseServerData,
 720    populateServerData,
 721    batch,
 722    routerRegions,
 723    cloneElement,
 724    navigationSignal
 725  } = (0,interactivity_namespaceObject.privateApis)(
 726    "I acknowledge that using private APIs means my theme or plugin will inevitably break in the next version of WordPress."
 727  );
 728  const regionAttr = `data-wp-router-region`;
 729  const interactiveAttr = `data-wp-interactive`;
 730  const regionsSelector = `[$interactiveAttr}][$regionAttr}], [$interactiveAttr}] [$interactiveAttr}][$regionAttr}]`;
 731  const pages = /* @__PURE__ */ new Map();
 732  const getPagePath = (url) => {
 733    const u = new URL(url, window.location.href);
 734    return u.pathname + u.search;
 735  };
 736  const parseRegionAttribute = (region) => {
 737    const value = region.getAttribute(regionAttr);
 738    try {
 739      const { id, attachTo } = JSON.parse(value);
 740      return { id, attachTo };
 741    } catch (e) {
 742      return { id: value };
 743    }
 744  };
 745  const cloneRouterRegionContent = (vdom) => {
 746    if (!vdom) {
 747      return vdom;
 748    }
 749    const allPriorityLevels = vdom.props.priorityLevels;
 750    const routerRegionLevel = allPriorityLevels.findIndex(
 751      (level) => level.includes("router-region")
 752    );
 753    const priorityLevels = routerRegionLevel !== -1 ? allPriorityLevels.slice(routerRegionLevel + 1) : allPriorityLevels;
 754    return priorityLevels.length > 0 ? cloneElement(vdom, {
 755      ...vdom.props,
 756      priorityLevels
 757    }) : vdom.props.element;
 758  };
 759  const regionsToAttachByParent = /* @__PURE__ */ new WeakMap();
 760  const rootFragmentsByParent = /* @__PURE__ */ new WeakMap();
 761  const fetchPage = async (url, { html }) => {
 762    try {
 763      if (!html) {
 764        const res = await window.fetch(url);
 765        if (res.status !== 200) {
 766          return false;
 767        }
 768        html = await res.text();
 769      }
 770      const dom = new window.DOMParser().parseFromString(html, "text/html");
 771      return await preparePage(url, dom);
 772    } catch (e) {
 773      return false;
 774    }
 775  };
 776  const preparePage = async (url, dom, { vdom } = {}) => {
 777    dom.querySelectorAll("noscript").forEach((el) => el.remove());
 778    const regions = {};
 779    const regionsToAttach = {};
 780    dom.querySelectorAll(regionsSelector).forEach((region) => {
 781      const { id, attachTo } = parseRegionAttribute(region);
 782      if (region.parentElement.closest(`[$regionAttr}]`)) {
 783        regions[id] = void 0;
 784      } else {
 785        regions[id] = vdom?.has(region) ? vdom.get(region) : toVdom(region);
 786      }
 787      if (attachTo) {
 788        regionsToAttach[id] = attachTo;
 789      }
 790    });
 791    const title = dom.querySelector("title")?.innerText;
 792    const initialData = parseServerData(dom);
 793    const [styles, scriptModules] = await Promise.all([
 794      Promise.all(preloadStyles(dom, url)),
 795      Promise.all(preloadScriptModules(dom))
 796    ]);
 797    return {
 798      regions,
 799      regionsToAttach,
 800      styles,
 801      scriptModules,
 802      title,
 803      initialData,
 804      url
 805    };
 806  };
 807  const renderPage = (page) => {
 808    applyStyles(page.styles);
 809    const regionsToAttach = { ...page.regionsToAttach };
 810    batch(() => {
 811      populateServerData(page.initialData);
 812      navigationSignal.value += 1;
 813      routerRegions.forEach((signal) => {
 814        signal.value = null;
 815      });
 816      const parentsToUpdate = /* @__PURE__ */ new Set();
 817      for (const id in regionsToAttach) {
 818        const parent = document.querySelector(regionsToAttach[id]);
 819        if (!regionsToAttachByParent.has(parent)) {
 820          regionsToAttachByParent.set(parent, []);
 821        }
 822        const regions = regionsToAttachByParent.get(parent);
 823        if (!regions.includes(id)) {
 824          regions.push(id);
 825          parentsToUpdate.add(parent);
 826        }
 827      }
 828      for (const id in page.regions) {
 829        if (routerRegions.has(id)) {
 830          routerRegions.get(id).value = cloneRouterRegionContent(
 831            page.regions[id]
 832          );
 833        }
 834      }
 835      parentsToUpdate.forEach((parent) => {
 836        const ids = regionsToAttachByParent.get(parent);
 837        const vdoms = ids.map((id) => page.regions[id]);
 838        if (!rootFragmentsByParent.has(parent)) {
 839          const regions = vdoms.map(({ props, type }) => {
 840            const elementType = typeof type === "function" ? props.type : type;
 841            const region = document.createElement(elementType);
 842            parent.appendChild(region);
 843            return region;
 844          });
 845          rootFragmentsByParent.set(
 846            parent,
 847            getRegionRootFragment(regions)
 848          );
 849        }
 850        const fragment = rootFragmentsByParent.get(parent);
 851        render(vdoms, fragment);
 852      });
 853    });
 854    if (page.title) {
 855      document.title = page.title;
 856    }
 857  };
 858  const forcePageReload = (href) => {
 859    window.location.assign(href);
 860    return new Promise(() => {
 861    });
 862  };
 863  window.addEventListener("popstate", async () => {
 864    const pagePath = getPagePath(window.location.href);
 865    const page = pages.has(pagePath) && await pages.get(pagePath);
 866    if (page) {
 867      batch(() => {
 868        state.url = window.location.href;
 869        renderPage(page);
 870      });
 871    } else {
 872      window.location.reload();
 873    }
 874  });
 875  window.document.querySelectorAll("script[type=module][src]").forEach(({ src }) => markScriptModuleAsResolved(src));
 876  pages.set(
 877    getPagePath(window.location.href),
 878    Promise.resolve(
 879      preparePage(getPagePath(window.location.href), document, {
 880        vdom: initialVdom
 881      })
 882    )
 883  );
 884  let navigatingTo = "";
 885  let hasLoadedNavigationTextsData = false;
 886  const navigationTexts = {
 887    loading: "Loading page, please wait.",
 888    loaded: "Page Loaded."
 889  };
 890  const { state, actions } = (0,interactivity_namespaceObject.store)("core/router", {
 891    state: {
 892      url: window.location.href,
 893      navigation: {
 894        hasStarted: false,
 895        hasFinished: false
 896      }
 897    },
 898    actions: {
 899      /**
 900       * Navigates to the specified page.
 901       *
 902       * This function normalizes the passed href, fetches the page HTML if
 903       * needed, and updates any interactive regions whose contents have
 904       * changed. It also creates a new entry in the browser session history.
 905       *
 906       * @param href                               The page href.
 907       * @param [options]                          Options object.
 908       * @param [options.force]                    If true, it forces re-fetching the URL.
 909       * @param [options.html]                     HTML string to be used instead of fetching the requested URL.
 910       * @param [options.replace]                  If true, it replaces the current entry in the browser session history.
 911       * @param [options.timeout]                  Time until the navigation is aborted, in milliseconds. Default is 10000.
 912       * @param [options.loadingAnimation]         Whether an animation should be shown while navigating. Default to `true`.
 913       * @param [options.screenReaderAnnouncement] Whether a message for screen readers should be announced while navigating. Default to `true`.
 914       *
 915       * @return  Promise that resolves once the navigation is completed or aborted.
 916       */
 917      *navigate(href, options = {}) {
 918        const { clientNavigationDisabled } = (0,interactivity_namespaceObject.getConfig)();
 919        if (clientNavigationDisabled) {
 920          yield forcePageReload(href);
 921        }
 922        const pagePath = getPagePath(href);
 923        const { navigation } = state;
 924        const {
 925          loadingAnimation = true,
 926          screenReaderAnnouncement = true,
 927          timeout = 1e4
 928        } = options;
 929        navigatingTo = href;
 930        actions.prefetch(pagePath, options);
 931        const timeoutPromise = new Promise(
 932          (resolve) => setTimeout(resolve, timeout)
 933        );
 934        const loadingTimeout = setTimeout(() => {
 935          if (navigatingTo !== href) {
 936            return;
 937          }
 938          if (loadingAnimation) {
 939            navigation.hasStarted = true;
 940            navigation.hasFinished = false;
 941          }
 942          if (screenReaderAnnouncement) {
 943            a11ySpeak("loading");
 944          }
 945        }, 400);
 946        const page = yield Promise.race([
 947          pages.get(pagePath),
 948          timeoutPromise
 949        ]);
 950        clearTimeout(loadingTimeout);
 951        if (navigatingTo !== href) {
 952          return;
 953        }
 954        if (page && !page.initialData?.config?.["core/router"]?.clientNavigationDisabled) {
 955          yield importScriptModules(page.scriptModules);
 956          batch(() => {
 957            state.url = href;
 958            if (loadingAnimation) {
 959              navigation.hasStarted = false;
 960              navigation.hasFinished = true;
 961            }
 962            renderPage(page);
 963          });
 964          window.history[options.replace ? "replaceState" : "pushState"]({}, "", href);
 965          if (screenReaderAnnouncement) {
 966            a11ySpeak("loaded");
 967          }
 968          const { hash } = new URL(href, window.location.href);
 969          if (hash) {
 970            document.querySelector(hash)?.scrollIntoView();
 971          }
 972        } else {
 973          yield forcePageReload(href);
 974        }
 975      },
 976      /**
 977       * Prefetches the page with the passed URL.
 978       *
 979       * The function normalizes the URL and stores internally the fetch
 980       * promise, to avoid triggering a second fetch for an ongoing request.
 981       *
 982       * @param url             The page URL.
 983       * @param [options]       Options object.
 984       * @param [options.force] Force fetching the URL again.
 985       * @param [options.html]  HTML string to be used instead of fetching the requested URL.
 986       *
 987       * @return  Promise that resolves once the page has been fetched.
 988       */
 989      *prefetch(url, options = {}) {
 990        const { clientNavigationDisabled } = (0,interactivity_namespaceObject.getConfig)();
 991        if (clientNavigationDisabled) {
 992          return;
 993        }
 994        const pagePath = getPagePath(url);
 995        if (options.force || !pages.has(pagePath)) {
 996          pages.set(
 997            pagePath,
 998            fetchPage(pagePath, { html: options.html })
 999          );
1000        }
1001        yield pages.get(pagePath);
1002      }
1003    }
1004  });
1005  function a11ySpeak(messageKey) {
1006    if (!hasLoadedNavigationTextsData) {
1007      hasLoadedNavigationTextsData = true;
1008      const content = document.getElementById(
1009        "wp-script-module-data-@wordpress/interactivity-router"
1010      )?.textContent;
1011      if (content) {
1012        try {
1013          const parsed = JSON.parse(content);
1014          if (typeof parsed?.i18n?.loading === "string") {
1015            navigationTexts.loading = parsed.i18n.loading;
1016          }
1017          if (typeof parsed?.i18n?.loaded === "string") {
1018            navigationTexts.loaded = parsed.i18n.loaded;
1019          }
1020        } catch {
1021        }
1022      } else {
1023        if (state.navigation.texts?.loading) {
1024          navigationTexts.loading = state.navigation.texts.loading;
1025        }
1026        if (state.navigation.texts?.loaded) {
1027          navigationTexts.loaded = state.navigation.texts.loaded;
1028        }
1029      }
1030    }
1031    const message = navigationTexts[messageKey];
1032    Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 317)).then(
1033      ({ speak }) => speak(message),
1034      // Ignore failures to load the a11y module.
1035      () => {
1036      }
1037    );
1038  }
1039  
1040  
1041  var __webpack_exports__actions = __webpack_exports__.o;
1042  var __webpack_exports__state = __webpack_exports__.w;
1043  export { __webpack_exports__actions as actions, __webpack_exports__state as state };


Generated : Mon Oct 27 08:20:06 2025 Cross-referenced by PHPXref