Spaces:
Sleeping
Sleeping
pythonic-rag-FastAPIReact
/
frontend
/node_modules
/@pmmmwh
/react-refresh-webpack-plugin
/client
/utils
/patchUrl.js
| /* global __react_refresh_polyfill_url__ */ | |
| /** | |
| * @typedef {Object} UrlAPIs | |
| * @property {typeof URL} URL | |
| * @property {typeof URLSearchParams} URLSearchParams | |
| */ | |
| /** | |
| * Runs a callback with patched the DOM URL APIs. | |
| * @param {function(UrlAPIs): void} callback The code to run with patched URL globals. | |
| * @returns {void} | |
| */ | |
| function runWithPatchedUrl(callback) { | |
| var __originalURL; | |
| var __originalURLSearchParams; | |
| // Polyfill the DOM URL and URLSearchParams constructors | |
| if (__react_refresh_polyfill_url__ || !window.URL) { | |
| __originalURL = window.URL; | |
| window.URL = require('core-js-pure/web/url'); | |
| } | |
| if (__react_refresh_polyfill_url__ || !window.URLSearchParams) { | |
| __originalURLSearchParams = window.URLSearchParams; | |
| window.URLSearchParams = require('core-js-pure/web/url-search-params'); | |
| } | |
| // Pass in URL APIs in case they are needed | |
| callback({ URL: window.URL, URLSearchParams: window.URLSearchParams }); | |
| // Restore polyfill-ed APIs to their original state | |
| if (__originalURL) { | |
| window.URL = __originalURL; | |
| } | |
| if (__originalURLSearchParams) { | |
| window.URLSearchParams = __originalURLSearchParams; | |
| } | |
| } | |
| module.exports = runWithPatchedUrl; | |