source: frontend/node_modules/@pmmmwh/react-refresh-webpack-plugin/client/utils/patchUrl.js

Last change on this file was 9af201e, checked in by MBK <marija.karapandzova@…>, 13 days ago

Fix frontend appearance

  • Property mode set to 100644
File size: 1.2 KB
Line 
1/* global __react_refresh_polyfill_url__ */
2
3/**
4 * @typedef {Object} UrlAPIs
5 * @property {typeof URL} URL
6 * @property {typeof URLSearchParams} URLSearchParams
7 */
8
9/**
10 * Runs a callback with patched the DOM URL APIs.
11 * @param {function(UrlAPIs): void} callback The code to run with patched URL globals.
12 * @returns {void}
13 */
14function runWithPatchedUrl(callback) {
15 var __originalURL;
16 var __originalURLSearchParams;
17
18 // Polyfill the DOM URL and URLSearchParams constructors
19 if (__react_refresh_polyfill_url__ || !window.URL) {
20 __originalURL = window.URL;
21 window.URL = require('core-js-pure/web/url');
22 }
23 if (__react_refresh_polyfill_url__ || !window.URLSearchParams) {
24 __originalURLSearchParams = window.URLSearchParams;
25 window.URLSearchParams = require('core-js-pure/web/url-search-params');
26 }
27
28 // Pass in URL APIs in case they are needed
29 callback({ URL: window.URL, URLSearchParams: window.URLSearchParams });
30
31 // Restore polyfill-ed APIs to their original state
32 if (__originalURL) {
33 window.URL = __originalURL;
34 }
35 if (__originalURLSearchParams) {
36 window.URLSearchParams = __originalURLSearchParams;
37 }
38}
39
40module.exports = runWithPatchedUrl;
Note: See TracBrowser for help on using the repository browser.