12345678910111213141516171819202122232425262728293031323334353637383940 |
- 'use strict'
- // In case of breaking changes, increase the version
- // number to avoid conflicts.
- const globalOrigin = Symbol.for('undici.globalOrigin.1')
- function getGlobalOrigin () {
- return globalThis[globalOrigin]
- }
- function setGlobalOrigin (newOrigin) {
- if (newOrigin === undefined) {
- Object.defineProperty(globalThis, globalOrigin, {
- value: undefined,
- writable: true,
- enumerable: false,
- configurable: false
- })
- return
- }
- const parsedURL = new URL(newOrigin)
- if (parsedURL.protocol !== 'http:' && parsedURL.protocol !== 'https:') {
- throw new TypeError(`Only http & https urls are allowed, received ${parsedURL.protocol}`)
- }
- Object.defineProperty(globalThis, globalOrigin, {
- value: parsedURL,
- writable: true,
- enumerable: false,
- configurable: false
- })
- }
- module.exports = {
- getGlobalOrigin,
- setGlobalOrigin
- }
|