| @@ -38,15 +38,8 @@ | ||
| 38 | 38 | module.exports = window.wp.i18n; |
| 39 | 39 | } |
| 40 | 40 | }); |
| 41 | 41 | |
| 42 | - // package-external:@wordpress/private-apis | |
| 43 | - var require_private_apis = __commonJS({ | |
| 44 | - "package-external:@wordpress/private-apis"(exports, module) { | |
| 45 | - module.exports = window.wp.privateApis; | |
| 46 | - } | |
| 47 | - }); | |
| 48 | - | |
| 49 | 42 | // package-external:@wordpress/url |
| 50 | 43 | var require_url = __commonJS({ |
| 51 | 44 | "package-external:@wordpress/url"(exports, module) { |
| 52 | 45 | module.exports = window.wp.url; |
| @@ -59,15 +52,8 @@ | ||
| 59 | 52 | default: () => index_default |
| 60 | 53 | }); |
| 61 | 54 | var import_i18n3 = __toESM(require_i18n(), 1); |
| 62 | 55 | |
| 63 | - // packages/api-fetch/build-module/lock-unlock.mjs | |
| 64 | - var import_private_apis = __toESM(require_private_apis(), 1); | |
| 65 | - var { lock, unlock } = (0, import_private_apis.__dangerousOptInToUnstableAPIsOnlyForCoreModules)( | |
| 66 | - "I acknowledge private features are not for use in themes or plugins and doing so will break in the next version of WordPress.", | |
| 67 | - "@wordpress/api-fetch" | |
| 68 | - ); | |
| 69 | - | |
| 70 | 56 | // packages/api-fetch/build-module/middlewares/nonce.mjs |
| 71 | 57 | function createNonceMiddleware(nonce) { |
| 72 | 58 | const middleware = (options, next) => { |
| 73 | 59 | const { headers = {} } = options; |
| @@ -137,21 +123,16 @@ | ||
| 137 | 123 | var root_url_default = createRootURLMiddleware; |
| 138 | 124 | |
| 139 | 125 | // packages/api-fetch/build-module/middlewares/preloading.mjs |
| 140 | 126 | var import_url = __toESM(require_url(), 1); |
| 141 | - var ENABLE_MULTI_USE = /* @__PURE__ */ Symbol("preloadingEnableMultiUse"); | |
| 142 | - var CLEAR = /* @__PURE__ */ Symbol("preloadingClear"); | |
| 143 | 127 | function createPreloadingMiddleware(preloadedData) { |
| 144 | - const { OPTIONS = {}, ...GET } = Object.fromEntries( | |
| 128 | + const cache = Object.fromEntries( | |
| 145 | 129 | Object.entries(preloadedData).map(([path, data]) => [ |
| 146 | 130 | (0, import_url.normalizePath)(path), |
| 147 | 131 | data |
| 148 | 132 | ]) |
| 149 | 133 | ); |
| 150 | - const unusedGet = new Set(Object.keys(GET)); | |
| 151 | - const unusedOptions = new Set(Object.keys(OPTIONS)); | |
| 152 | - let multiUse = false; | |
| 153 | - const middleware = (options, next) => { | |
| 134 | + return (options, next) => { | |
| 154 | 135 | const { parse = true } = options; |
| 155 | 136 | let rawPath = options.path; |
| 156 | 137 | if (!rawPath && options.url) { |
| 157 | 138 | const { rest_route: pathFromQuery, ...queryArgs } = (0, import_url.getQueryArgs)( |
| @@ -165,51 +146,19 @@ | ||
| 165 | 146 | return next(options); |
| 166 | 147 | } |
| 167 | 148 | const method = options.method || "GET"; |
| 168 | 149 | const path = (0, import_url.normalizePath)(rawPath); |
| 169 | - if ("GET" === method && GET[path]) { | |
| 170 | - const data = GET[path]; | |
| 171 | - if (!multiUse) { | |
| 172 | - delete GET[path]; | |
| 173 | - } | |
| 174 | - unusedGet.delete(path); | |
| 175 | - return prepareResponse(data, !!parse); | |
| 176 | - } else if ("OPTIONS" === method && OPTIONS[path]) { | |
| 177 | - const data = OPTIONS[path]; | |
| 178 | - if (!multiUse) { | |
| 179 | - delete OPTIONS[path]; | |
| 180 | - } | |
| 181 | - unusedOptions.delete(path); | |
| 182 | - return prepareResponse(data, !!parse); | |
| 150 | + if ("GET" === method && cache[path]) { | |
| 151 | + const cacheData = cache[path]; | |
| 152 | + delete cache[path]; | |
| 153 | + return prepareResponse(cacheData, !!parse); | |
| 154 | + } else if ("OPTIONS" === method && cache[method] && cache[method][path]) { | |
| 155 | + const cacheData = cache[method][path]; | |
| 156 | + delete cache[method][path]; | |
| 157 | + return prepareResponse(cacheData, !!parse); | |
| 183 | 158 | } |
| 184 | 159 | return next(options); |
| 185 | 160 | }; |
| 186 | - middleware[ENABLE_MULTI_USE] = () => { | |
| 187 | - multiUse = true; | |
| 188 | - }; | |
| 189 | - middleware[CLEAR] = () => { | |
| 190 | - const tags = [ | |
| 191 | - ...Array.from(unusedGet, (p) => `GET ${p}`), | |
| 192 | - ...Array.from(unusedOptions, (p) => `OPTIONS ${p}`) | |
| 193 | - ]; | |
| 194 | - if (tags.length) { | |
| 195 | - console.warn( | |
| 196 | - "[api-fetch][preload] Some preloads were never consumed:", | |
| 197 | - tags | |
| 198 | - ); | |
| 199 | - } else { | |
| 200 | - console.log("[api-fetch][preload] All preloads consumed."); | |
| 201 | - } | |
| 202 | - unusedGet.clear(); | |
| 203 | - unusedOptions.clear(); | |
| 204 | - for (const key of Object.keys(GET)) { | |
| 205 | - delete GET[key]; | |
| 206 | - } | |
| 207 | - for (const key of Object.keys(OPTIONS)) { | |
| 208 | - delete OPTIONS[key]; | |
| 209 | - } | |
| 210 | - }; | |
| 211 | - return middleware; | |
| 212 | 161 | } |
| 213 | 162 | function prepareResponse(responseData, parse) { |
| 214 | 163 | if (parse) { |
| 215 | 164 | return Promise.resolve(responseData.body); |
| @@ -318,11 +267,11 @@ | ||
| 318 | 267 | if (OVERRIDE_METHODS.has(method.toUpperCase())) { |
| 319 | 268 | options = { |
| 320 | 269 | ...options, |
| 321 | 270 | headers: { |
| 322 | - "Content-Type": "application/json", | |
| 323 | 271 | ...options.headers, |
| 324 | - "X-HTTP-Method-Override": method | |
| 272 | + "X-HTTP-Method-Override": method, | |
| 273 | + "Content-Type": "application/json" | |
| 325 | 274 | }, |
| 326 | 275 | method: "POST" |
| 327 | 276 | }; |
| 328 | 277 | } |
| @@ -489,18 +438,8 @@ | ||
| 489 | 438 | ]; |
| 490 | 439 | function registerMiddleware(middleware) { |
| 491 | 440 | middlewares.unshift(middleware); |
| 492 | 441 | } |
| 493 | - function enablePreloadMultiUse() { | |
| 494 | - for (const middleware of middlewares) { | |
| 495 | - middleware[ENABLE_MULTI_USE]?.(); | |
| 496 | - } | |
| 497 | - } | |
| 498 | - function clearPreloadedData() { | |
| 499 | - for (const middleware of middlewares) { | |
| 500 | - middleware[CLEAR]?.(); | |
| 501 | - } | |
| 502 | - } | |
| 503 | 442 | var defaultFetchHandler = (nextOptions) => { |
| 504 | 443 | const { url, path, data, parse = true, ...remainingOptions } = nextOptions; |
| 505 | 444 | let { body, headers } = nextOptions; |
| 506 | 445 | headers = { ...DEFAULT_HEADERS, ...headers }; |
| @@ -573,13 +512,8 @@ | ||
| 573 | 512 | }); |
| 574 | 513 | }; |
| 575 | 514 | apiFetch.use = registerMiddleware; |
| 576 | 515 | apiFetch.setFetchHandler = setFetchHandler; |
| 577 | - apiFetch.privateApis = {}; | |
| 578 | - lock(apiFetch.privateApis, { | |
| 579 | - enablePreloadMultiUse, | |
| 580 | - clearPreloadedData | |
| 581 | - }); | |
| 582 | 516 | apiFetch.createNonceMiddleware = nonce_default; |
| 583 | 517 | apiFetch.createPreloadingMiddleware = preloading_default; |
| 584 | 518 | apiFetch.createRootURLMiddleware = root_url_default; |
| 585 | 519 | apiFetch.fetchAllMiddleware = fetch_all_middleware_default; |