use standard URLSearchParams insead of custom functions
This commit is contained in:
15
node_modules/@ungap/url-search-params/LICENSE
generated
vendored
Normal file
15
node_modules/@ungap/url-search-params/LICENSE
generated
vendored
Normal file
@@ -0,0 +1,15 @@
|
||||
ISC License
|
||||
|
||||
Copyright (c) 2018, Andrea Giammarchi, @WebReflection
|
||||
|
||||
Permission to use, copy, modify, and/or distribute this software for any
|
||||
purpose with or without fee is hereby granted, provided that the above
|
||||
copyright notice and this permission notice appear in all copies.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
||||
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
||||
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
||||
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
|
||||
OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
PERFORMANCE OF THIS SOFTWARE.
|
22
node_modules/@ungap/url-search-params/README.md
generated
vendored
Normal file
22
node_modules/@ungap/url-search-params/README.md
generated
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
# URLSearchParams
|
||||
|
||||
[](https://travis-ci.com/ungap/url-search-params) [](https://coveralls.io/github/ungap/url-search-params?branch=master) [](https://greenkeeper.io/) 
|
||||
|
||||
|
||||
The [URLSearchParams](https://developer.mozilla.org/en-US/docs/Web/API/URLSearchParams) polyfill.
|
||||
|
||||
Previously known as [url-search-params](https://github.com/WebReflection/url-search-params).
|
||||
|
||||
All detections have been included and the code covered 100% (DOM patches are not measured on NodeJS though).
|
||||
|
||||
* CDN global patch via https://unpkg.com/@ungap/url-search-params
|
||||
* ESM via `import URLSearchParams from '@ungap/url-search-params'`
|
||||
* CJS via `const URLSearchParams = require('@ungap/url-search-params')`
|
||||
|
||||
[Live test](https://ungap.github.io/url-search-params/test/)
|
||||
|
||||
### ⚠ Webpack Users
|
||||
|
||||
If you have issues just requiring `@ungap/url-search-params`, be sure you require `@ungap/url-search-params/cjs` instead.
|
||||
|
||||
No issue should happen if you just `import` the module instead.
|
375
node_modules/@ungap/url-search-params/cjs/index.js
generated
vendored
Normal file
375
node_modules/@ungap/url-search-params/cjs/index.js
generated
vendored
Normal file
@@ -0,0 +1,375 @@
|
||||
/*! (c) Andrea Giammarchi - ISC */
|
||||
var self = this || /* istanbul ignore next */ {};
|
||||
try {
|
||||
(function (URLSearchParams, plus) {
|
||||
if (
|
||||
new URLSearchParams('q=%2B').get('q') !== plus ||
|
||||
new URLSearchParams({q: plus}).get('q') !== plus ||
|
||||
new URLSearchParams([['q', plus]]).get('q') !== plus ||
|
||||
new URLSearchParams('q=\n').toString() !== 'q=%0A' ||
|
||||
new URLSearchParams({q: ' &'}).toString() !== 'q=+%26' ||
|
||||
new URLSearchParams({q: '%zx'}).toString() !== 'q=%25zx'
|
||||
)
|
||||
throw URLSearchParams;
|
||||
self.URLSearchParams = URLSearchParams;
|
||||
}(URLSearchParams, '+'));
|
||||
} catch(URLSearchParams) {
|
||||
(function (Object, String, isArray) {'use strict';
|
||||
var create = Object.create;
|
||||
var defineProperty = Object.defineProperty;
|
||||
var find = /[!'\(\)~]|%20|%00/g;
|
||||
var findPercentSign = /%(?![0-9a-fA-F]{2})/g;
|
||||
var plus = /\+/g;
|
||||
var replace = {
|
||||
'!': '%21',
|
||||
"'": '%27',
|
||||
'(': '%28',
|
||||
')': '%29',
|
||||
'~': '%7E',
|
||||
'%20': '+',
|
||||
'%00': '\x00'
|
||||
};
|
||||
var proto = {
|
||||
append: function (key, value) {
|
||||
appendTo(this._ungap, key, value);
|
||||
},
|
||||
delete: function (key) {
|
||||
delete this._ungap[key];
|
||||
},
|
||||
get: function (key) {
|
||||
return this.has(key) ? this._ungap[key][0] : null;
|
||||
},
|
||||
getAll: function (key) {
|
||||
return this.has(key) ? this._ungap[key].slice(0) : [];
|
||||
},
|
||||
has: function (key) {
|
||||
return key in this._ungap;
|
||||
},
|
||||
set: function (key, value) {
|
||||
this._ungap[key] = [String(value)];
|
||||
},
|
||||
forEach: function (callback, thisArg) {
|
||||
var self = this;
|
||||
for (var key in self._ungap)
|
||||
self._ungap[key].forEach(invoke, key);
|
||||
function invoke(value) {
|
||||
callback.call(thisArg, value, String(key), self);
|
||||
}
|
||||
},
|
||||
toJSON: function () {
|
||||
return {};
|
||||
},
|
||||
toString: function () {
|
||||
var query = [];
|
||||
for (var key in this._ungap) {
|
||||
var encoded = encode(key);
|
||||
for (var
|
||||
i = 0,
|
||||
value = this._ungap[key];
|
||||
i < value.length; i++
|
||||
) {
|
||||
query.push(encoded + '=' + encode(value[i]));
|
||||
}
|
||||
}
|
||||
return query.join('&');
|
||||
}
|
||||
};
|
||||
for (var key in proto)
|
||||
defineProperty(URLSearchParams.prototype, key, {
|
||||
configurable: true,
|
||||
writable: true,
|
||||
value: proto[key]
|
||||
});
|
||||
self.URLSearchParams = URLSearchParams;
|
||||
function URLSearchParams(query) {
|
||||
var dict = create(null);
|
||||
defineProperty(this, '_ungap', {value: dict});
|
||||
switch (true) {
|
||||
case !query:
|
||||
break;
|
||||
case typeof query === 'string':
|
||||
if (query.charAt(0) === '?') {
|
||||
query = query.slice(1);
|
||||
}
|
||||
for (var
|
||||
pairs = query.split('&'),
|
||||
i = 0,
|
||||
length = pairs.length; i < length; i++
|
||||
) {
|
||||
var value = pairs[i];
|
||||
var index = value.indexOf('=');
|
||||
if (-1 < index) {
|
||||
appendTo(
|
||||
dict,
|
||||
decode(value.slice(0, index)),
|
||||
decode(value.slice(index + 1))
|
||||
);
|
||||
} else if (value.length){
|
||||
appendTo(
|
||||
dict,
|
||||
decode(value),
|
||||
''
|
||||
);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case isArray(query):
|
||||
for (var
|
||||
i = 0,
|
||||
length = query.length; i < length; i++
|
||||
) {
|
||||
var value = query[i];
|
||||
appendTo(dict, value[0], value[1]);
|
||||
}
|
||||
break;
|
||||
case 'forEach' in query:
|
||||
query.forEach(addEach, dict);
|
||||
break;
|
||||
default:
|
||||
for (var key in query)
|
||||
appendTo(dict, key, query[key]);
|
||||
}
|
||||
}
|
||||
|
||||
function addEach(value, key) {
|
||||
appendTo(this, key, value);
|
||||
}
|
||||
|
||||
function appendTo(dict, key, value) {
|
||||
var res = isArray(value) ? value.join(',') : value;
|
||||
if (key in dict)
|
||||
dict[key].push(res);
|
||||
else
|
||||
dict[key] = [res];
|
||||
}
|
||||
|
||||
function decode(str) {
|
||||
return decodeURIComponent(str.replace(findPercentSign, '%25').replace(plus, ' '));
|
||||
}
|
||||
|
||||
function encode(str) {
|
||||
return encodeURIComponent(str).replace(find, replacer);
|
||||
}
|
||||
|
||||
function replacer(match) {
|
||||
return replace[match];
|
||||
}
|
||||
|
||||
}(Object, String, Array.isArray));
|
||||
}
|
||||
|
||||
(function (URLSearchParamsProto) {
|
||||
|
||||
var iterable = false;
|
||||
try { iterable = !!Symbol.iterator; } catch (o_O) {}
|
||||
|
||||
/* istanbul ignore else */
|
||||
if (!('forEach' in URLSearchParamsProto)) {
|
||||
URLSearchParamsProto.forEach = function forEach(callback, thisArg) {
|
||||
var self = this;
|
||||
var names = Object.create(null);
|
||||
this.toString()
|
||||
.replace(/=[\s\S]*?(?:&|$)/g, '=')
|
||||
.split('=')
|
||||
.forEach(function (name) {
|
||||
if (!name.length || name in names)
|
||||
return;
|
||||
(names[name] = self.getAll(name)).forEach(function(value) {
|
||||
callback.call(thisArg, value, name, self);
|
||||
});
|
||||
});
|
||||
};
|
||||
}
|
||||
|
||||
/* istanbul ignore else */
|
||||
if (!('keys' in URLSearchParamsProto)) {
|
||||
URLSearchParamsProto.keys = function keys() {
|
||||
return iterator(this, function(value, key) { this.push(key); });
|
||||
};
|
||||
}
|
||||
|
||||
/* istanbul ignore else */
|
||||
if (!('values' in URLSearchParamsProto)) {
|
||||
URLSearchParamsProto.values = function values() {
|
||||
return iterator(this, function(value, key) { this.push(value); });
|
||||
};
|
||||
}
|
||||
|
||||
/* istanbul ignore else */
|
||||
if (!('entries' in URLSearchParamsProto)) {
|
||||
URLSearchParamsProto.entries = function entries() {
|
||||
return iterator(this, function(value, key) { this.push([key, value]); });
|
||||
};
|
||||
}
|
||||
|
||||
/* istanbul ignore else */
|
||||
if (iterable && !(Symbol.iterator in URLSearchParamsProto)) {
|
||||
URLSearchParamsProto[Symbol.iterator] = URLSearchParamsProto.entries;
|
||||
}
|
||||
|
||||
/* istanbul ignore else */
|
||||
if (!('sort' in URLSearchParamsProto)) {
|
||||
URLSearchParamsProto.sort = function sort() {
|
||||
var
|
||||
entries = this.entries(),
|
||||
entry = entries.next(),
|
||||
done = entry.done,
|
||||
keys = [],
|
||||
values = Object.create(null),
|
||||
i, key, value
|
||||
;
|
||||
while (!done) {
|
||||
value = entry.value;
|
||||
key = value[0];
|
||||
keys.push(key);
|
||||
if (!(key in values)) {
|
||||
values[key] = [];
|
||||
}
|
||||
values[key].push(value[1]);
|
||||
entry = entries.next();
|
||||
done = entry.done;
|
||||
}
|
||||
// not the champion in efficiency
|
||||
// but these two bits just do the job
|
||||
keys.sort();
|
||||
for (i = 0; i < keys.length; i++) {
|
||||
this.delete(keys[i]);
|
||||
}
|
||||
for (i = 0; i < keys.length; i++) {
|
||||
key = keys[i];
|
||||
this.append(key, values[key].shift());
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
function iterator(self, callback) {
|
||||
var items = [];
|
||||
self.forEach(callback, items);
|
||||
return iterable ?
|
||||
items[Symbol.iterator]() :
|
||||
{
|
||||
next: function() {
|
||||
var value = items.shift();
|
||||
return {done: value === undefined, value: value};
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
/* istanbul ignore next */
|
||||
(function (Object) {
|
||||
var
|
||||
dP = Object.defineProperty,
|
||||
gOPD = Object.getOwnPropertyDescriptor,
|
||||
createSearchParamsPollute = function (search) {
|
||||
function append(name, value) {
|
||||
URLSearchParamsProto.append.call(this, name, value);
|
||||
name = this.toString();
|
||||
search.set.call(this._usp, name ? ('?' + name) : '');
|
||||
}
|
||||
function del(name) {
|
||||
URLSearchParamsProto.delete.call(this, name);
|
||||
name = this.toString();
|
||||
search.set.call(this._usp, name ? ('?' + name) : '');
|
||||
}
|
||||
function set(name, value) {
|
||||
URLSearchParamsProto.set.call(this, name, value);
|
||||
name = this.toString();
|
||||
search.set.call(this._usp, name ? ('?' + name) : '');
|
||||
}
|
||||
return function (sp, value) {
|
||||
sp.append = append;
|
||||
sp.delete = del;
|
||||
sp.set = set;
|
||||
return dP(sp, '_usp', {
|
||||
configurable: true,
|
||||
writable: true,
|
||||
value: value
|
||||
});
|
||||
};
|
||||
},
|
||||
createSearchParamsCreate = function (polluteSearchParams) {
|
||||
return function (obj, sp) {
|
||||
dP(
|
||||
obj, '_searchParams', {
|
||||
configurable: true,
|
||||
writable: true,
|
||||
value: polluteSearchParams(sp, obj)
|
||||
}
|
||||
);
|
||||
return sp;
|
||||
};
|
||||
},
|
||||
updateSearchParams = function (sp) {
|
||||
var append = sp.append;
|
||||
sp.append = URLSearchParamsProto.append;
|
||||
URLSearchParams.call(sp, sp._usp.search.slice(1));
|
||||
sp.append = append;
|
||||
},
|
||||
verifySearchParams = function (obj, Class) {
|
||||
if (!(obj instanceof Class)) throw new TypeError(
|
||||
"'searchParams' accessed on an object that " +
|
||||
"does not implement interface " + Class.name
|
||||
);
|
||||
},
|
||||
upgradeClass = function (Class) {
|
||||
var
|
||||
ClassProto = Class.prototype,
|
||||
searchParams = gOPD(ClassProto, 'searchParams'),
|
||||
href = gOPD(ClassProto, 'href'),
|
||||
search = gOPD(ClassProto, 'search'),
|
||||
createSearchParams
|
||||
;
|
||||
if (!searchParams && search && search.set) {
|
||||
createSearchParams = createSearchParamsCreate(
|
||||
createSearchParamsPollute(search)
|
||||
);
|
||||
Object.defineProperties(
|
||||
ClassProto,
|
||||
{
|
||||
href: {
|
||||
get: function () {
|
||||
return href.get.call(this);
|
||||
},
|
||||
set: function (value) {
|
||||
var sp = this._searchParams;
|
||||
href.set.call(this, value);
|
||||
if (sp) updateSearchParams(sp);
|
||||
}
|
||||
},
|
||||
search: {
|
||||
get: function () {
|
||||
return search.get.call(this);
|
||||
},
|
||||
set: function (value) {
|
||||
var sp = this._searchParams;
|
||||
search.set.call(this, value);
|
||||
if (sp) updateSearchParams(sp);
|
||||
}
|
||||
},
|
||||
searchParams: {
|
||||
get: function () {
|
||||
verifySearchParams(this, Class);
|
||||
return this._searchParams || createSearchParams(
|
||||
this,
|
||||
new URLSearchParams(this.search.slice(1))
|
||||
);
|
||||
},
|
||||
set: function (sp) {
|
||||
verifySearchParams(this, Class);
|
||||
createSearchParams(this, sp);
|
||||
}
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
}
|
||||
;
|
||||
try {
|
||||
upgradeClass(HTMLAnchorElement);
|
||||
if (/^function|object$/.test(typeof URL) && URL.prototype)
|
||||
upgradeClass(URL);
|
||||
} catch (meh) {}
|
||||
}(Object));
|
||||
|
||||
}(self.URLSearchParams.prototype, Object));
|
||||
module.exports = self.URLSearchParams;
|
375
node_modules/@ungap/url-search-params/esm/index.js
generated
vendored
Normal file
375
node_modules/@ungap/url-search-params/esm/index.js
generated
vendored
Normal file
@@ -0,0 +1,375 @@
|
||||
/*! (c) Andrea Giammarchi - ISC */
|
||||
var self = this || /* istanbul ignore next */ {};
|
||||
try {
|
||||
(function (URLSearchParams, plus) {
|
||||
if (
|
||||
new URLSearchParams('q=%2B').get('q') !== plus ||
|
||||
new URLSearchParams({q: plus}).get('q') !== plus ||
|
||||
new URLSearchParams([['q', plus]]).get('q') !== plus ||
|
||||
new URLSearchParams('q=\n').toString() !== 'q=%0A' ||
|
||||
new URLSearchParams({q: ' &'}).toString() !== 'q=+%26' ||
|
||||
new URLSearchParams({q: '%zx'}).toString() !== 'q=%25zx'
|
||||
)
|
||||
throw URLSearchParams;
|
||||
self.URLSearchParams = URLSearchParams;
|
||||
}(URLSearchParams, '+'));
|
||||
} catch(URLSearchParams) {
|
||||
(function (Object, String, isArray) {'use strict';
|
||||
var create = Object.create;
|
||||
var defineProperty = Object.defineProperty;
|
||||
var find = /[!'\(\)~]|%20|%00/g;
|
||||
var findPercentSign = /%(?![0-9a-fA-F]{2})/g;
|
||||
var plus = /\+/g;
|
||||
var replace = {
|
||||
'!': '%21',
|
||||
"'": '%27',
|
||||
'(': '%28',
|
||||
')': '%29',
|
||||
'~': '%7E',
|
||||
'%20': '+',
|
||||
'%00': '\x00'
|
||||
};
|
||||
var proto = {
|
||||
append: function (key, value) {
|
||||
appendTo(this._ungap, key, value);
|
||||
},
|
||||
delete: function (key) {
|
||||
delete this._ungap[key];
|
||||
},
|
||||
get: function (key) {
|
||||
return this.has(key) ? this._ungap[key][0] : null;
|
||||
},
|
||||
getAll: function (key) {
|
||||
return this.has(key) ? this._ungap[key].slice(0) : [];
|
||||
},
|
||||
has: function (key) {
|
||||
return key in this._ungap;
|
||||
},
|
||||
set: function (key, value) {
|
||||
this._ungap[key] = [String(value)];
|
||||
},
|
||||
forEach: function (callback, thisArg) {
|
||||
var self = this;
|
||||
for (var key in self._ungap)
|
||||
self._ungap[key].forEach(invoke, key);
|
||||
function invoke(value) {
|
||||
callback.call(thisArg, value, String(key), self);
|
||||
}
|
||||
},
|
||||
toJSON: function () {
|
||||
return {};
|
||||
},
|
||||
toString: function () {
|
||||
var query = [];
|
||||
for (var key in this._ungap) {
|
||||
var encoded = encode(key);
|
||||
for (var
|
||||
i = 0,
|
||||
value = this._ungap[key];
|
||||
i < value.length; i++
|
||||
) {
|
||||
query.push(encoded + '=' + encode(value[i]));
|
||||
}
|
||||
}
|
||||
return query.join('&');
|
||||
}
|
||||
};
|
||||
for (var key in proto)
|
||||
defineProperty(URLSearchParams.prototype, key, {
|
||||
configurable: true,
|
||||
writable: true,
|
||||
value: proto[key]
|
||||
});
|
||||
self.URLSearchParams = URLSearchParams;
|
||||
function URLSearchParams(query) {
|
||||
var dict = create(null);
|
||||
defineProperty(this, '_ungap', {value: dict});
|
||||
switch (true) {
|
||||
case !query:
|
||||
break;
|
||||
case typeof query === 'string':
|
||||
if (query.charAt(0) === '?') {
|
||||
query = query.slice(1);
|
||||
}
|
||||
for (var
|
||||
pairs = query.split('&'),
|
||||
i = 0,
|
||||
length = pairs.length; i < length; i++
|
||||
) {
|
||||
var value = pairs[i];
|
||||
var index = value.indexOf('=');
|
||||
if (-1 < index) {
|
||||
appendTo(
|
||||
dict,
|
||||
decode(value.slice(0, index)),
|
||||
decode(value.slice(index + 1))
|
||||
);
|
||||
} else if (value.length){
|
||||
appendTo(
|
||||
dict,
|
||||
decode(value),
|
||||
''
|
||||
);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case isArray(query):
|
||||
for (var
|
||||
i = 0,
|
||||
length = query.length; i < length; i++
|
||||
) {
|
||||
var value = query[i];
|
||||
appendTo(dict, value[0], value[1]);
|
||||
}
|
||||
break;
|
||||
case 'forEach' in query:
|
||||
query.forEach(addEach, dict);
|
||||
break;
|
||||
default:
|
||||
for (var key in query)
|
||||
appendTo(dict, key, query[key]);
|
||||
}
|
||||
}
|
||||
|
||||
function addEach(value, key) {
|
||||
appendTo(this, key, value);
|
||||
}
|
||||
|
||||
function appendTo(dict, key, value) {
|
||||
var res = isArray(value) ? value.join(',') : value;
|
||||
if (key in dict)
|
||||
dict[key].push(res);
|
||||
else
|
||||
dict[key] = [res];
|
||||
}
|
||||
|
||||
function decode(str) {
|
||||
return decodeURIComponent(str.replace(findPercentSign, '%25').replace(plus, ' '));
|
||||
}
|
||||
|
||||
function encode(str) {
|
||||
return encodeURIComponent(str).replace(find, replacer);
|
||||
}
|
||||
|
||||
function replacer(match) {
|
||||
return replace[match];
|
||||
}
|
||||
|
||||
}(Object, String, Array.isArray));
|
||||
}
|
||||
|
||||
(function (URLSearchParamsProto) {
|
||||
|
||||
var iterable = false;
|
||||
try { iterable = !!Symbol.iterator; } catch (o_O) {}
|
||||
|
||||
/* istanbul ignore else */
|
||||
if (!('forEach' in URLSearchParamsProto)) {
|
||||
URLSearchParamsProto.forEach = function forEach(callback, thisArg) {
|
||||
var self = this;
|
||||
var names = Object.create(null);
|
||||
this.toString()
|
||||
.replace(/=[\s\S]*?(?:&|$)/g, '=')
|
||||
.split('=')
|
||||
.forEach(function (name) {
|
||||
if (!name.length || name in names)
|
||||
return;
|
||||
(names[name] = self.getAll(name)).forEach(function(value) {
|
||||
callback.call(thisArg, value, name, self);
|
||||
});
|
||||
});
|
||||
};
|
||||
}
|
||||
|
||||
/* istanbul ignore else */
|
||||
if (!('keys' in URLSearchParamsProto)) {
|
||||
URLSearchParamsProto.keys = function keys() {
|
||||
return iterator(this, function(value, key) { this.push(key); });
|
||||
};
|
||||
}
|
||||
|
||||
/* istanbul ignore else */
|
||||
if (!('values' in URLSearchParamsProto)) {
|
||||
URLSearchParamsProto.values = function values() {
|
||||
return iterator(this, function(value, key) { this.push(value); });
|
||||
};
|
||||
}
|
||||
|
||||
/* istanbul ignore else */
|
||||
if (!('entries' in URLSearchParamsProto)) {
|
||||
URLSearchParamsProto.entries = function entries() {
|
||||
return iterator(this, function(value, key) { this.push([key, value]); });
|
||||
};
|
||||
}
|
||||
|
||||
/* istanbul ignore else */
|
||||
if (iterable && !(Symbol.iterator in URLSearchParamsProto)) {
|
||||
URLSearchParamsProto[Symbol.iterator] = URLSearchParamsProto.entries;
|
||||
}
|
||||
|
||||
/* istanbul ignore else */
|
||||
if (!('sort' in URLSearchParamsProto)) {
|
||||
URLSearchParamsProto.sort = function sort() {
|
||||
var
|
||||
entries = this.entries(),
|
||||
entry = entries.next(),
|
||||
done = entry.done,
|
||||
keys = [],
|
||||
values = Object.create(null),
|
||||
i, key, value
|
||||
;
|
||||
while (!done) {
|
||||
value = entry.value;
|
||||
key = value[0];
|
||||
keys.push(key);
|
||||
if (!(key in values)) {
|
||||
values[key] = [];
|
||||
}
|
||||
values[key].push(value[1]);
|
||||
entry = entries.next();
|
||||
done = entry.done;
|
||||
}
|
||||
// not the champion in efficiency
|
||||
// but these two bits just do the job
|
||||
keys.sort();
|
||||
for (i = 0; i < keys.length; i++) {
|
||||
this.delete(keys[i]);
|
||||
}
|
||||
for (i = 0; i < keys.length; i++) {
|
||||
key = keys[i];
|
||||
this.append(key, values[key].shift());
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
function iterator(self, callback) {
|
||||
var items = [];
|
||||
self.forEach(callback, items);
|
||||
return iterable ?
|
||||
items[Symbol.iterator]() :
|
||||
{
|
||||
next: function() {
|
||||
var value = items.shift();
|
||||
return {done: value === undefined, value: value};
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
/* istanbul ignore next */
|
||||
(function (Object) {
|
||||
var
|
||||
dP = Object.defineProperty,
|
||||
gOPD = Object.getOwnPropertyDescriptor,
|
||||
createSearchParamsPollute = function (search) {
|
||||
function append(name, value) {
|
||||
URLSearchParamsProto.append.call(this, name, value);
|
||||
name = this.toString();
|
||||
search.set.call(this._usp, name ? ('?' + name) : '');
|
||||
}
|
||||
function del(name) {
|
||||
URLSearchParamsProto.delete.call(this, name);
|
||||
name = this.toString();
|
||||
search.set.call(this._usp, name ? ('?' + name) : '');
|
||||
}
|
||||
function set(name, value) {
|
||||
URLSearchParamsProto.set.call(this, name, value);
|
||||
name = this.toString();
|
||||
search.set.call(this._usp, name ? ('?' + name) : '');
|
||||
}
|
||||
return function (sp, value) {
|
||||
sp.append = append;
|
||||
sp.delete = del;
|
||||
sp.set = set;
|
||||
return dP(sp, '_usp', {
|
||||
configurable: true,
|
||||
writable: true,
|
||||
value: value
|
||||
});
|
||||
};
|
||||
},
|
||||
createSearchParamsCreate = function (polluteSearchParams) {
|
||||
return function (obj, sp) {
|
||||
dP(
|
||||
obj, '_searchParams', {
|
||||
configurable: true,
|
||||
writable: true,
|
||||
value: polluteSearchParams(sp, obj)
|
||||
}
|
||||
);
|
||||
return sp;
|
||||
};
|
||||
},
|
||||
updateSearchParams = function (sp) {
|
||||
var append = sp.append;
|
||||
sp.append = URLSearchParamsProto.append;
|
||||
URLSearchParams.call(sp, sp._usp.search.slice(1));
|
||||
sp.append = append;
|
||||
},
|
||||
verifySearchParams = function (obj, Class) {
|
||||
if (!(obj instanceof Class)) throw new TypeError(
|
||||
"'searchParams' accessed on an object that " +
|
||||
"does not implement interface " + Class.name
|
||||
);
|
||||
},
|
||||
upgradeClass = function (Class) {
|
||||
var
|
||||
ClassProto = Class.prototype,
|
||||
searchParams = gOPD(ClassProto, 'searchParams'),
|
||||
href = gOPD(ClassProto, 'href'),
|
||||
search = gOPD(ClassProto, 'search'),
|
||||
createSearchParams
|
||||
;
|
||||
if (!searchParams && search && search.set) {
|
||||
createSearchParams = createSearchParamsCreate(
|
||||
createSearchParamsPollute(search)
|
||||
);
|
||||
Object.defineProperties(
|
||||
ClassProto,
|
||||
{
|
||||
href: {
|
||||
get: function () {
|
||||
return href.get.call(this);
|
||||
},
|
||||
set: function (value) {
|
||||
var sp = this._searchParams;
|
||||
href.set.call(this, value);
|
||||
if (sp) updateSearchParams(sp);
|
||||
}
|
||||
},
|
||||
search: {
|
||||
get: function () {
|
||||
return search.get.call(this);
|
||||
},
|
||||
set: function (value) {
|
||||
var sp = this._searchParams;
|
||||
search.set.call(this, value);
|
||||
if (sp) updateSearchParams(sp);
|
||||
}
|
||||
},
|
||||
searchParams: {
|
||||
get: function () {
|
||||
verifySearchParams(this, Class);
|
||||
return this._searchParams || createSearchParams(
|
||||
this,
|
||||
new URLSearchParams(this.search.slice(1))
|
||||
);
|
||||
},
|
||||
set: function (sp) {
|
||||
verifySearchParams(this, Class);
|
||||
createSearchParams(this, sp);
|
||||
}
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
}
|
||||
;
|
||||
try {
|
||||
upgradeClass(HTMLAnchorElement);
|
||||
if (/^function|object$/.test(typeof URL) && URL.prototype)
|
||||
upgradeClass(URL);
|
||||
} catch (meh) {}
|
||||
}(Object));
|
||||
|
||||
}(self.URLSearchParams.prototype, Object));
|
||||
export default self.URLSearchParams;
|
1
node_modules/@ungap/url-search-params/index.d.ts
generated
vendored
Normal file
1
node_modules/@ungap/url-search-params/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export = URLSearchParams
|
374
node_modules/@ungap/url-search-params/index.js
generated
vendored
Normal file
374
node_modules/@ungap/url-search-params/index.js
generated
vendored
Normal file
@@ -0,0 +1,374 @@
|
||||
/*! (c) Andrea Giammarchi - ISC */
|
||||
var self = this || /* istanbul ignore next */ {};
|
||||
try {
|
||||
(function (URLSearchParams, plus) {
|
||||
if (
|
||||
new URLSearchParams('q=%2B').get('q') !== plus ||
|
||||
new URLSearchParams({q: plus}).get('q') !== plus ||
|
||||
new URLSearchParams([['q', plus]]).get('q') !== plus ||
|
||||
new URLSearchParams('q=\n').toString() !== 'q=%0A' ||
|
||||
new URLSearchParams({q: ' &'}).toString() !== 'q=+%26' ||
|
||||
new URLSearchParams({q: '%zx'}).toString() !== 'q=%25zx'
|
||||
)
|
||||
throw URLSearchParams;
|
||||
self.URLSearchParams = URLSearchParams;
|
||||
}(URLSearchParams, '+'));
|
||||
} catch(URLSearchParams) {
|
||||
(function (Object, String, isArray) {'use strict';
|
||||
var create = Object.create;
|
||||
var defineProperty = Object.defineProperty;
|
||||
var find = /[!'\(\)~]|%20|%00/g;
|
||||
var findPercentSign = /%(?![0-9a-fA-F]{2})/g;
|
||||
var plus = /\+/g;
|
||||
var replace = {
|
||||
'!': '%21',
|
||||
"'": '%27',
|
||||
'(': '%28',
|
||||
')': '%29',
|
||||
'~': '%7E',
|
||||
'%20': '+',
|
||||
'%00': '\x00'
|
||||
};
|
||||
var proto = {
|
||||
append: function (key, value) {
|
||||
appendTo(this._ungap, key, value);
|
||||
},
|
||||
delete: function (key) {
|
||||
delete this._ungap[key];
|
||||
},
|
||||
get: function (key) {
|
||||
return this.has(key) ? this._ungap[key][0] : null;
|
||||
},
|
||||
getAll: function (key) {
|
||||
return this.has(key) ? this._ungap[key].slice(0) : [];
|
||||
},
|
||||
has: function (key) {
|
||||
return key in this._ungap;
|
||||
},
|
||||
set: function (key, value) {
|
||||
this._ungap[key] = [String(value)];
|
||||
},
|
||||
forEach: function (callback, thisArg) {
|
||||
var self = this;
|
||||
for (var key in self._ungap)
|
||||
self._ungap[key].forEach(invoke, key);
|
||||
function invoke(value) {
|
||||
callback.call(thisArg, value, String(key), self);
|
||||
}
|
||||
},
|
||||
toJSON: function () {
|
||||
return {};
|
||||
},
|
||||
toString: function () {
|
||||
var query = [];
|
||||
for (var key in this._ungap) {
|
||||
var encoded = encode(key);
|
||||
for (var
|
||||
i = 0,
|
||||
value = this._ungap[key];
|
||||
i < value.length; i++
|
||||
) {
|
||||
query.push(encoded + '=' + encode(value[i]));
|
||||
}
|
||||
}
|
||||
return query.join('&');
|
||||
}
|
||||
};
|
||||
for (var key in proto)
|
||||
defineProperty(URLSearchParams.prototype, key, {
|
||||
configurable: true,
|
||||
writable: true,
|
||||
value: proto[key]
|
||||
});
|
||||
self.URLSearchParams = URLSearchParams;
|
||||
function URLSearchParams(query) {
|
||||
var dict = create(null);
|
||||
defineProperty(this, '_ungap', {value: dict});
|
||||
switch (true) {
|
||||
case !query:
|
||||
break;
|
||||
case typeof query === 'string':
|
||||
if (query.charAt(0) === '?') {
|
||||
query = query.slice(1);
|
||||
}
|
||||
for (var
|
||||
pairs = query.split('&'),
|
||||
i = 0,
|
||||
length = pairs.length; i < length; i++
|
||||
) {
|
||||
var value = pairs[i];
|
||||
var index = value.indexOf('=');
|
||||
if (-1 < index) {
|
||||
appendTo(
|
||||
dict,
|
||||
decode(value.slice(0, index)),
|
||||
decode(value.slice(index + 1))
|
||||
);
|
||||
} else if (value.length){
|
||||
appendTo(
|
||||
dict,
|
||||
decode(value),
|
||||
''
|
||||
);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case isArray(query):
|
||||
for (var
|
||||
i = 0,
|
||||
length = query.length; i < length; i++
|
||||
) {
|
||||
var value = query[i];
|
||||
appendTo(dict, value[0], value[1]);
|
||||
}
|
||||
break;
|
||||
case 'forEach' in query:
|
||||
query.forEach(addEach, dict);
|
||||
break;
|
||||
default:
|
||||
for (var key in query)
|
||||
appendTo(dict, key, query[key]);
|
||||
}
|
||||
}
|
||||
|
||||
function addEach(value, key) {
|
||||
appendTo(this, key, value);
|
||||
}
|
||||
|
||||
function appendTo(dict, key, value) {
|
||||
var res = isArray(value) ? value.join(',') : value;
|
||||
if (key in dict)
|
||||
dict[key].push(res);
|
||||
else
|
||||
dict[key] = [res];
|
||||
}
|
||||
|
||||
function decode(str) {
|
||||
return decodeURIComponent(str.replace(findPercentSign, '%25').replace(plus, ' '));
|
||||
}
|
||||
|
||||
function encode(str) {
|
||||
return encodeURIComponent(str).replace(find, replacer);
|
||||
}
|
||||
|
||||
function replacer(match) {
|
||||
return replace[match];
|
||||
}
|
||||
|
||||
}(Object, String, Array.isArray));
|
||||
}
|
||||
|
||||
(function (URLSearchParamsProto) {
|
||||
|
||||
var iterable = false;
|
||||
try { iterable = !!Symbol.iterator; } catch (o_O) {}
|
||||
|
||||
/* istanbul ignore else */
|
||||
if (!('forEach' in URLSearchParamsProto)) {
|
||||
URLSearchParamsProto.forEach = function forEach(callback, thisArg) {
|
||||
var self = this;
|
||||
var names = Object.create(null);
|
||||
this.toString()
|
||||
.replace(/=[\s\S]*?(?:&|$)/g, '=')
|
||||
.split('=')
|
||||
.forEach(function (name) {
|
||||
if (!name.length || name in names)
|
||||
return;
|
||||
(names[name] = self.getAll(name)).forEach(function(value) {
|
||||
callback.call(thisArg, value, name, self);
|
||||
});
|
||||
});
|
||||
};
|
||||
}
|
||||
|
||||
/* istanbul ignore else */
|
||||
if (!('keys' in URLSearchParamsProto)) {
|
||||
URLSearchParamsProto.keys = function keys() {
|
||||
return iterator(this, function(value, key) { this.push(key); });
|
||||
};
|
||||
}
|
||||
|
||||
/* istanbul ignore else */
|
||||
if (!('values' in URLSearchParamsProto)) {
|
||||
URLSearchParamsProto.values = function values() {
|
||||
return iterator(this, function(value, key) { this.push(value); });
|
||||
};
|
||||
}
|
||||
|
||||
/* istanbul ignore else */
|
||||
if (!('entries' in URLSearchParamsProto)) {
|
||||
URLSearchParamsProto.entries = function entries() {
|
||||
return iterator(this, function(value, key) { this.push([key, value]); });
|
||||
};
|
||||
}
|
||||
|
||||
/* istanbul ignore else */
|
||||
if (iterable && !(Symbol.iterator in URLSearchParamsProto)) {
|
||||
URLSearchParamsProto[Symbol.iterator] = URLSearchParamsProto.entries;
|
||||
}
|
||||
|
||||
/* istanbul ignore else */
|
||||
if (!('sort' in URLSearchParamsProto)) {
|
||||
URLSearchParamsProto.sort = function sort() {
|
||||
var
|
||||
entries = this.entries(),
|
||||
entry = entries.next(),
|
||||
done = entry.done,
|
||||
keys = [],
|
||||
values = Object.create(null),
|
||||
i, key, value
|
||||
;
|
||||
while (!done) {
|
||||
value = entry.value;
|
||||
key = value[0];
|
||||
keys.push(key);
|
||||
if (!(key in values)) {
|
||||
values[key] = [];
|
||||
}
|
||||
values[key].push(value[1]);
|
||||
entry = entries.next();
|
||||
done = entry.done;
|
||||
}
|
||||
// not the champion in efficiency
|
||||
// but these two bits just do the job
|
||||
keys.sort();
|
||||
for (i = 0; i < keys.length; i++) {
|
||||
this.delete(keys[i]);
|
||||
}
|
||||
for (i = 0; i < keys.length; i++) {
|
||||
key = keys[i];
|
||||
this.append(key, values[key].shift());
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
function iterator(self, callback) {
|
||||
var items = [];
|
||||
self.forEach(callback, items);
|
||||
return iterable ?
|
||||
items[Symbol.iterator]() :
|
||||
{
|
||||
next: function() {
|
||||
var value = items.shift();
|
||||
return {done: value === undefined, value: value};
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
/* istanbul ignore next */
|
||||
(function (Object) {
|
||||
var
|
||||
dP = Object.defineProperty,
|
||||
gOPD = Object.getOwnPropertyDescriptor,
|
||||
createSearchParamsPollute = function (search) {
|
||||
function append(name, value) {
|
||||
URLSearchParamsProto.append.call(this, name, value);
|
||||
name = this.toString();
|
||||
search.set.call(this._usp, name ? ('?' + name) : '');
|
||||
}
|
||||
function del(name) {
|
||||
URLSearchParamsProto.delete.call(this, name);
|
||||
name = this.toString();
|
||||
search.set.call(this._usp, name ? ('?' + name) : '');
|
||||
}
|
||||
function set(name, value) {
|
||||
URLSearchParamsProto.set.call(this, name, value);
|
||||
name = this.toString();
|
||||
search.set.call(this._usp, name ? ('?' + name) : '');
|
||||
}
|
||||
return function (sp, value) {
|
||||
sp.append = append;
|
||||
sp.delete = del;
|
||||
sp.set = set;
|
||||
return dP(sp, '_usp', {
|
||||
configurable: true,
|
||||
writable: true,
|
||||
value: value
|
||||
});
|
||||
};
|
||||
},
|
||||
createSearchParamsCreate = function (polluteSearchParams) {
|
||||
return function (obj, sp) {
|
||||
dP(
|
||||
obj, '_searchParams', {
|
||||
configurable: true,
|
||||
writable: true,
|
||||
value: polluteSearchParams(sp, obj)
|
||||
}
|
||||
);
|
||||
return sp;
|
||||
};
|
||||
},
|
||||
updateSearchParams = function (sp) {
|
||||
var append = sp.append;
|
||||
sp.append = URLSearchParamsProto.append;
|
||||
URLSearchParams.call(sp, sp._usp.search.slice(1));
|
||||
sp.append = append;
|
||||
},
|
||||
verifySearchParams = function (obj, Class) {
|
||||
if (!(obj instanceof Class)) throw new TypeError(
|
||||
"'searchParams' accessed on an object that " +
|
||||
"does not implement interface " + Class.name
|
||||
);
|
||||
},
|
||||
upgradeClass = function (Class) {
|
||||
var
|
||||
ClassProto = Class.prototype,
|
||||
searchParams = gOPD(ClassProto, 'searchParams'),
|
||||
href = gOPD(ClassProto, 'href'),
|
||||
search = gOPD(ClassProto, 'search'),
|
||||
createSearchParams
|
||||
;
|
||||
if (!searchParams && search && search.set) {
|
||||
createSearchParams = createSearchParamsCreate(
|
||||
createSearchParamsPollute(search)
|
||||
);
|
||||
Object.defineProperties(
|
||||
ClassProto,
|
||||
{
|
||||
href: {
|
||||
get: function () {
|
||||
return href.get.call(this);
|
||||
},
|
||||
set: function (value) {
|
||||
var sp = this._searchParams;
|
||||
href.set.call(this, value);
|
||||
if (sp) updateSearchParams(sp);
|
||||
}
|
||||
},
|
||||
search: {
|
||||
get: function () {
|
||||
return search.get.call(this);
|
||||
},
|
||||
set: function (value) {
|
||||
var sp = this._searchParams;
|
||||
search.set.call(this, value);
|
||||
if (sp) updateSearchParams(sp);
|
||||
}
|
||||
},
|
||||
searchParams: {
|
||||
get: function () {
|
||||
verifySearchParams(this, Class);
|
||||
return this._searchParams || createSearchParams(
|
||||
this,
|
||||
new URLSearchParams(this.search.slice(1))
|
||||
);
|
||||
},
|
||||
set: function (sp) {
|
||||
verifySearchParams(this, Class);
|
||||
createSearchParams(this, sp);
|
||||
}
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
}
|
||||
;
|
||||
try {
|
||||
upgradeClass(HTMLAnchorElement);
|
||||
if (/^function|object$/.test(typeof URL) && URL.prototype)
|
||||
upgradeClass(URL);
|
||||
} catch (meh) {}
|
||||
}(Object));
|
||||
|
||||
}(self.URLSearchParams.prototype, Object));
|
2
node_modules/@ungap/url-search-params/min.js
generated
vendored
Normal file
2
node_modules/@ungap/url-search-params/min.js
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
/*! (c) Andrea Giammarchi - ISC */
|
||||
var self=this||{};try{!function(t,e){if(new t("q=%2B").get("q")!==e||new t({q:e}).get("q")!==e||new t([["q",e]]).get("q")!==e||"q=%0A"!==new t("q=\n").toString()||"q=+%26"!==new t({q:" &"}).toString()||"q=%25zx"!==new t({q:"%zx"}).toString())throw t;self.URLSearchParams=t}(URLSearchParams,"+")}catch(t){!function(t,a,o){"use strict";var u=t.create,h=t.defineProperty,e=/[!'\(\)~]|%20|%00/g,n=/%(?![0-9a-fA-F]{2})/g,r=/\+/g,i={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"},s={append:function(t,e){p(this._ungap,t,e)},delete:function(t){delete this._ungap[t]},get:function(t){return this.has(t)?this._ungap[t][0]:null},getAll:function(t){return this.has(t)?this._ungap[t].slice(0):[]},has:function(t){return t in this._ungap},set:function(t,e){this._ungap[t]=[a(e)]},forEach:function(e,n){var r=this;for(var i in r._ungap)r._ungap[i].forEach(t,i);function t(t){e.call(n,t,a(i),r)}},toJSON:function(){return{}},toString:function(){var t=[];for(var e in this._ungap)for(var n=v(e),r=0,i=this._ungap[e];r<i.length;r++)t.push(n+"="+v(i[r]));return t.join("&")}};for(var c in s)h(f.prototype,c,{configurable:!0,writable:!0,value:s[c]});function f(t){var e=u(null);switch(h(this,"_ungap",{value:e}),!0){case!t:break;case"string"==typeof t:"?"===t.charAt(0)&&(t=t.slice(1));for(var n=t.split("&"),r=0,i=n.length;r<i;r++){var a=(s=n[r]).indexOf("=");-1<a?p(e,g(s.slice(0,a)),g(s.slice(a+1))):s.length&&p(e,g(s),"")}break;case o(t):for(r=0,i=t.length;r<i;r++){var s;p(e,(s=t[r])[0],s[1])}break;case"forEach"in t:t.forEach(l,e);break;default:for(var c in t)p(e,c,t[c])}}function l(t,e){p(this,e,t)}function p(t,e,n){var r=o(n)?n.join(","):n;e in t?t[e].push(r):t[e]=[r]}function g(t){return decodeURIComponent(t.replace(n,"%25").replace(r," "))}function v(t){return encodeURIComponent(t).replace(e,d)}function d(t){return i[t]}self.URLSearchParams=f}(Object,String,Array.isArray)}!function(d){var r=!1;try{r=!!Symbol.iterator}catch(t){}function t(t,e){var n=[];return t.forEach(e,n),r?n[Symbol.iterator]():{next:function(){var t=n.shift();return{done:void 0===t,value:t}}}}"forEach"in d||(d.forEach=function(n,r){var i=this,t=Object.create(null);this.toString().replace(/=[\s\S]*?(?:&|$)/g,"=").split("=").forEach(function(e){!e.length||e in t||(t[e]=i.getAll(e)).forEach(function(t){n.call(r,t,e,i)})})}),"keys"in d||(d.keys=function(){return t(this,function(t,e){this.push(e)})}),"values"in d||(d.values=function(){return t(this,function(t,e){this.push(t)})}),"entries"in d||(d.entries=function(){return t(this,function(t,e){this.push([e,t])})}),!r||Symbol.iterator in d||(d[Symbol.iterator]=d.entries),"sort"in d||(d.sort=function(){for(var t,e,n,r=this.entries(),i=r.next(),a=i.done,s=[],c=Object.create(null);!a;)e=(n=i.value)[0],s.push(e),e in c||(c[e]=[]),c[e].push(n[1]),a=(i=r.next()).done;for(s.sort(),t=0;t<s.length;t++)this.delete(s[t]);for(t=0;t<s.length;t++)e=s[t],this.append(e,c[e].shift())}),function(f){function l(t){var e=t.append;t.append=d.append,URLSearchParams.call(t,t._usp.search.slice(1)),t.append=e}function p(t,e){if(!(t instanceof e))throw new TypeError("'searchParams' accessed on an object that does not implement interface "+e.name)}function t(e){var n,r,i,t=e.prototype,a=v(t,"searchParams"),s=v(t,"href"),c=v(t,"search");function o(t,e){d.append.call(this,t,e),t=this.toString(),i.set.call(this._usp,t?"?"+t:"")}function u(t){d.delete.call(this,t),t=this.toString(),i.set.call(this._usp,t?"?"+t:"")}function h(t,e){d.set.call(this,t,e),t=this.toString(),i.set.call(this._usp,t?"?"+t:"")}!a&&c&&c.set&&(i=c,r=function(t,e){return t.append=o,t.delete=u,t.set=h,g(t,"_usp",{configurable:!0,writable:!0,value:e})},n=function(t,e){return g(t,"_searchParams",{configurable:!0,writable:!0,value:r(e,t)}),e},f.defineProperties(t,{href:{get:function(){return s.get.call(this)},set:function(t){var e=this._searchParams;s.set.call(this,t),e&&l(e)}},search:{get:function(){return c.get.call(this)},set:function(t){var e=this._searchParams;c.set.call(this,t),e&&l(e)}},searchParams:{get:function(){return p(this,e),this._searchParams||n(this,new URLSearchParams(this.search.slice(1)))},set:function(t){p(this,e),n(this,t)}}}))}var g=f.defineProperty,v=f.getOwnPropertyDescriptor;try{t(HTMLAnchorElement),/^function|object$/.test(typeof URL)&&URL.prototype&&t(URL)}catch(t){}}(Object)}(self.URLSearchParams.prototype,Object);
|
68
node_modules/@ungap/url-search-params/package.json
generated
vendored
Normal file
68
node_modules/@ungap/url-search-params/package.json
generated
vendored
Normal file
@@ -0,0 +1,68 @@
|
||||
{
|
||||
"_args": [
|
||||
[
|
||||
"@ungap/url-search-params@0.1.4",
|
||||
"/home/s2/Code/vanillajs-seed"
|
||||
]
|
||||
],
|
||||
"_from": "@ungap/url-search-params@0.1.4",
|
||||
"_id": "@ungap/url-search-params@0.1.4",
|
||||
"_inBundle": false,
|
||||
"_integrity": "sha512-RLwrxCTDNiNev9hpr9rDq8NyeQ8Nn0X1we4Wu7Tlf368I8r+7hBj3uObhifhuLk74egaYaSX5nUsBlWz6kjj+A==",
|
||||
"_location": "/@ungap/url-search-params",
|
||||
"_phantomChildren": {},
|
||||
"_requested": {
|
||||
"type": "version",
|
||||
"registry": true,
|
||||
"raw": "@ungap/url-search-params@0.1.4",
|
||||
"name": "@ungap/url-search-params",
|
||||
"escapedName": "@ungap%2furl-search-params",
|
||||
"scope": "@ungap",
|
||||
"rawSpec": "0.1.4",
|
||||
"saveSpec": null,
|
||||
"fetchSpec": "0.1.4"
|
||||
},
|
||||
"_requiredBy": [
|
||||
"/"
|
||||
],
|
||||
"_resolved": "https://registry.npmjs.org/@ungap/url-search-params/-/url-search-params-0.1.4.tgz",
|
||||
"_spec": "0.1.4",
|
||||
"_where": "/home/s2/Code/vanillajs-seed",
|
||||
"author": {
|
||||
"name": "Andrea Giammarchi"
|
||||
},
|
||||
"bugs": {
|
||||
"url": "https://github.com/ungap/url-search-params/issues"
|
||||
},
|
||||
"description": "The URLSearchParams polyfill.",
|
||||
"devDependencies": {
|
||||
"coveralls": "^3.0.9",
|
||||
"istanbul": "^0.4.5",
|
||||
"uglify-js": "^3.7.0"
|
||||
},
|
||||
"homepage": "https://github.com/ungap/url-search-params#readme",
|
||||
"keywords": [
|
||||
"URLSearchParams",
|
||||
"polyfill",
|
||||
"ungap"
|
||||
],
|
||||
"license": "ISC",
|
||||
"main": "cjs/index.js",
|
||||
"module": "esm/index.js",
|
||||
"name": "@ungap/url-search-params",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/ungap/url-search-params.git"
|
||||
},
|
||||
"scripts": {
|
||||
"build": "npm run cjs && npm run esm && npm run min && npm run test && npm run size",
|
||||
"cjs": "cp index.js cjs/ && echo 'module.exports = self.URLSearchParams;' >> cjs/index.js",
|
||||
"coveralls": "cat ./coverage/lcov.info | coveralls",
|
||||
"esm": "cp index.js esm/ && echo 'export default self.URLSearchParams;' >> esm/index.js",
|
||||
"min": "uglifyjs index.js --support-ie8 --comments=/^!/ -c -m -o min.js",
|
||||
"size": "cat index.js | wc -c && cat min.js | wc -c && gzip -c9 min.js | wc -c && cat min.js | brotli | wc -c",
|
||||
"test": "istanbul cover test/index.js"
|
||||
},
|
||||
"unpkg": "min.js",
|
||||
"version": "0.1.4"
|
||||
}
|
Reference in New Issue
Block a user