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