@shgysk8zer0/polyfills 0.4.2 → 0.4.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +23 -0
- package/CSSStyleSheet.js +2 -2
- package/JSON.js +3 -1
- package/Record.js +1 -1
- package/Tuple.js +1 -1
- package/all.js +3 -42
- package/all.min.js +11 -11
- package/all.min.js.map +1 -1
- package/array.js +19 -29
- package/assets/dedent.js +173 -159
- package/assets/url-pattern.js +34 -9
- package/browser.js +43 -0
- package/browser.min.js +56 -0
- package/browser.min.js.map +1 -0
- package/errors.js +10 -0
- package/map.js +37 -41
- package/node.js +1 -0
- package/node.min.js +2 -2
- package/node.min.js.map +1 -1
- package/package.json +17 -4
- package/regexp.js +8 -0
- package/deprecated/.gitkeep +0 -0
- package/rollup.config.js +0 -39
package/array.js
CHANGED
|
@@ -190,41 +190,32 @@ if (! (Array.prototype.equals instanceof Function)) {
|
|
|
190
190
|
*/
|
|
191
191
|
if (! (Array.prototype.uniqueBy instanceof Function)) {
|
|
192
192
|
Array.prototype.uniqueBy = function uniqueBy(arg) {
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
const found = [];
|
|
197
|
-
|
|
198
|
-
return this.filter(obj => {
|
|
199
|
-
const key = obj[arg];
|
|
200
|
-
if (found.includes(key)) {
|
|
201
|
-
return false;
|
|
202
|
-
} else {
|
|
203
|
-
found.push(key);
|
|
204
|
-
return true;
|
|
205
|
-
}
|
|
206
|
-
});
|
|
207
|
-
} else if (arg instanceof Function) {
|
|
208
|
-
const found = [];
|
|
193
|
+
switch (typeof arg) {
|
|
194
|
+
case 'undefined':
|
|
195
|
+
return [...new Set(this)];
|
|
209
196
|
|
|
210
|
-
|
|
211
|
-
|
|
197
|
+
case 'string':
|
|
198
|
+
case 'number':
|
|
199
|
+
case 'symbol':
|
|
200
|
+
return this.uniqueBy(entry => entry[arg]);
|
|
201
|
+
|
|
202
|
+
case 'function': {
|
|
203
|
+
const found = new Set(); //Cannot use `WeakSet` in case of primative values
|
|
204
|
+
|
|
205
|
+
return this.filter((...args) => {
|
|
212
206
|
const key = arg.apply(this, args);
|
|
213
207
|
|
|
214
|
-
if (
|
|
215
|
-
return false;
|
|
216
|
-
} else if (found.includes(key)) {
|
|
208
|
+
if (found.has(key)) {
|
|
217
209
|
return false;
|
|
218
210
|
} else {
|
|
219
|
-
found.
|
|
211
|
+
found.add(key);
|
|
220
212
|
return true;
|
|
221
213
|
}
|
|
222
|
-
}
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
throw new TypeError('Not a valid argument for uniqueBy');
|
|
214
|
+
});
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
default:
|
|
218
|
+
throw new TypeError('Not a valid argument for uniqueBy');
|
|
228
219
|
}
|
|
229
220
|
};
|
|
230
221
|
}
|
|
@@ -301,7 +292,6 @@ if (! (Uint8Array.prototype.toBase64 instanceof Function)) {
|
|
|
301
292
|
}
|
|
302
293
|
|
|
303
294
|
return btoa(str);
|
|
304
|
-
// return btoa(new TextDecoder().decode(this));
|
|
305
295
|
} else if (alphabet === 'base64url') {
|
|
306
296
|
return this.toBase64({ alphabet: 'base64' }).replaceAll('+', '-').replaceAll('/', '_');
|
|
307
297
|
} else {
|
package/assets/dedent.js
CHANGED
|
@@ -1,172 +1,186 @@
|
|
|
1
|
-
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
|
2
|
-
|
|
3
1
|
function getDefaultExportFromCjs (x) {
|
|
4
2
|
return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
|
|
5
3
|
}
|
|
6
4
|
|
|
7
|
-
var dedent_umd = {exports: {}};
|
|
5
|
+
var dedent_umd$1 = {exports: {}};
|
|
6
|
+
|
|
7
|
+
var dedent_umd = dedent_umd$1.exports;
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
(function (global, factory) {
|
|
11
|
-
module.exports = factory() ;
|
|
12
|
-
})(commonjsGlobal, (function () {
|
|
13
|
-
const cache = new WeakMap();
|
|
14
|
-
const newline = /(\n|\r\n?|\u2028|\u2029)/g;
|
|
15
|
-
const leadingWhitespace = /^\s*/;
|
|
16
|
-
const nonWhitespace = /\S/;
|
|
17
|
-
const slice = Array.prototype.slice;
|
|
18
|
-
function dedent(arg) {
|
|
19
|
-
if (typeof arg === 'string') {
|
|
20
|
-
return process([arg])[0];
|
|
21
|
-
}
|
|
22
|
-
if (typeof arg === 'function') {
|
|
23
|
-
return function () {
|
|
24
|
-
const args = slice.call(arguments);
|
|
25
|
-
args[0] = processTemplateStringsArray(args[0]);
|
|
26
|
-
return arg.apply(this, args);
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
const strings = processTemplateStringsArray(arg);
|
|
30
|
-
// TODO: This is just `String.cooked`: https://tc39.es/proposal-string-cooked/
|
|
31
|
-
let s = getCooked(strings, 0);
|
|
32
|
-
for (let i = 1; i < strings.length; i++) {
|
|
33
|
-
s += arguments[i] + getCooked(strings, i);
|
|
34
|
-
}
|
|
35
|
-
return s;
|
|
36
|
-
}
|
|
37
|
-
function getCooked(strings, index) {
|
|
38
|
-
const str = strings[index];
|
|
39
|
-
if (str === undefined)
|
|
40
|
-
throw new TypeError(`invalid cooked string at index ${index}`);
|
|
41
|
-
return str;
|
|
42
|
-
}
|
|
43
|
-
function processTemplateStringsArray(strings) {
|
|
44
|
-
const cached = cache.get(strings);
|
|
45
|
-
if (cached)
|
|
46
|
-
return cached;
|
|
47
|
-
const dedented = process(strings);
|
|
48
|
-
cache.set(strings, dedented);
|
|
49
|
-
Object.defineProperty(dedented, 'raw', {
|
|
50
|
-
value: Object.freeze(process(strings.raw)),
|
|
51
|
-
});
|
|
52
|
-
Object.freeze(dedented);
|
|
53
|
-
return dedented;
|
|
54
|
-
}
|
|
55
|
-
function process(strings) {
|
|
56
|
-
// splitQuasis is now an array of arrays. The inner array is contains text content lines on the
|
|
57
|
-
// even indices, and the newline char that ends the text content line on the odd indices.
|
|
58
|
-
// In the first array, the inner array's 0 index is the opening line of the template literal.
|
|
59
|
-
// In all other arrays, the inner array's 0 index is the continuation of the line directly after a
|
|
60
|
-
// template expression.
|
|
61
|
-
//
|
|
62
|
-
// Eg, in the following case:
|
|
63
|
-
//
|
|
64
|
-
// ```
|
|
65
|
-
// String.dedent`
|
|
66
|
-
// first
|
|
67
|
-
// ${expression} second
|
|
68
|
-
// third
|
|
69
|
-
// `
|
|
70
|
-
// ```
|
|
71
|
-
//
|
|
72
|
-
// We expect the following splitQuasis:
|
|
73
|
-
//
|
|
74
|
-
// ```
|
|
75
|
-
// [
|
|
76
|
-
// ["", "\n", " first", "\n", " "],
|
|
77
|
-
// [" second", "\n", " third", "\n", ""],
|
|
78
|
-
// ]
|
|
79
|
-
// ```
|
|
80
|
-
const splitQuasis = strings.map((quasi) => quasi === null || quasi === void 0 ? void 0 : quasi.split(newline));
|
|
81
|
-
let common;
|
|
82
|
-
for (let i = 0; i < splitQuasis.length; i++) {
|
|
83
|
-
const lines = splitQuasis[i];
|
|
84
|
-
if (lines === undefined)
|
|
85
|
-
continue;
|
|
86
|
-
// The first split is the static text starting at the opening line until the first template
|
|
87
|
-
// expression (or the end of the template if there are no expressions).
|
|
88
|
-
const firstSplit = i === 0;
|
|
89
|
-
// The last split is all the static text after the final template expression until the closing
|
|
90
|
-
// line. If there are no template expressions, then the first split is also the last split.
|
|
91
|
-
const lastSplit = i + 1 === splitQuasis.length;
|
|
92
|
-
// The opening line must be empty (it very likely is) and it must not contain a template
|
|
93
|
-
// expression. The opening line's trailing newline char is removed.
|
|
94
|
-
if (firstSplit) {
|
|
95
|
-
// Length > 1 ensures there is a newline, and there is not a template expression.
|
|
96
|
-
if (lines.length === 1 || lines[0].length > 0) {
|
|
97
|
-
throw new Error('invalid content on opening line');
|
|
98
|
-
}
|
|
99
|
-
// Clear the captured newline char.
|
|
100
|
-
lines[1] = '';
|
|
101
|
-
}
|
|
102
|
-
// The closing line may only contain whitespace and must not contain a template expression. The
|
|
103
|
-
// closing line and its preceding newline are removed.
|
|
104
|
-
if (lastSplit) {
|
|
105
|
-
// Length > 1 ensures there is a newline, and there is not a template expression.
|
|
106
|
-
if (lines.length === 1 || nonWhitespace.test(lines[lines.length - 1])) {
|
|
107
|
-
throw new Error('invalid content on closing line');
|
|
108
|
-
}
|
|
109
|
-
// Clear the captured newline char, and the whitespace on the closing line.
|
|
110
|
-
lines[lines.length - 2] = '';
|
|
111
|
-
lines[lines.length - 1] = '';
|
|
112
|
-
}
|
|
113
|
-
// In the first spit, the index 0 is the opening line (which must be empty by now), and in all
|
|
114
|
-
// other splits, its the content trailing the template expression (and so can't be part of
|
|
115
|
-
// leading whitespace).
|
|
116
|
-
// Every odd index is the captured newline char, so we'll skip and only process evens.
|
|
117
|
-
for (let j = 2; j < lines.length; j += 2) {
|
|
118
|
-
const text = lines[j];
|
|
119
|
-
// If we are on the last line of this split, and we are not processing the last split (which
|
|
120
|
-
// is after all template expressions), then this line contains a template expression.
|
|
121
|
-
const lineContainsTemplateExpression = j + 1 === lines.length && !lastSplit;
|
|
122
|
-
// leadingWhitespace is guaranteed to match something, but it could be 0 chars.
|
|
123
|
-
const leading = leadingWhitespace.exec(text)[0];
|
|
124
|
-
// Empty lines do not affect the common indentation, and whitespace only lines are emptied
|
|
125
|
-
// (and also don't affect the comon indentation).
|
|
126
|
-
if (!lineContainsTemplateExpression && leading.length === text.length) {
|
|
127
|
-
lines[j] = '';
|
|
128
|
-
continue;
|
|
129
|
-
}
|
|
130
|
-
common = commonStart(leading, common);
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
const min = common ? common.length : 0;
|
|
134
|
-
return splitQuasis.map((lines) => {
|
|
135
|
-
if (lines === undefined)
|
|
136
|
-
return lines;
|
|
137
|
-
let quasi = lines[0];
|
|
138
|
-
for (let i = 1; i < lines.length; i += 2) {
|
|
139
|
-
const newline = lines[i];
|
|
140
|
-
const text = lines[i + 1];
|
|
141
|
-
quasi += newline + text.slice(min);
|
|
142
|
-
}
|
|
143
|
-
return quasi;
|
|
144
|
-
});
|
|
145
|
-
}
|
|
146
|
-
function commonStart(a, b) {
|
|
147
|
-
if (b === undefined || a === b)
|
|
148
|
-
return a;
|
|
149
|
-
let i = 0;
|
|
150
|
-
for (const len = Math.min(a.length, b.length); i < len; i++) {
|
|
151
|
-
if (a[i] !== b[i])
|
|
152
|
-
break;
|
|
153
|
-
}
|
|
154
|
-
return a.slice(0, i);
|
|
155
|
-
}
|
|
9
|
+
var hasRequiredDedent_umd;
|
|
156
10
|
|
|
157
|
-
|
|
11
|
+
function requireDedent_umd () {
|
|
12
|
+
if (hasRequiredDedent_umd) return dedent_umd$1.exports;
|
|
13
|
+
hasRequiredDedent_umd = 1;
|
|
14
|
+
(function (module, exports) {
|
|
15
|
+
(function (global, factory) {
|
|
16
|
+
module.exports = factory() ;
|
|
17
|
+
})(dedent_umd, (function () {
|
|
18
|
+
const cache = new WeakMap();
|
|
19
|
+
const newline = /(\n|\r\n?|\u2028|\u2029)/g;
|
|
20
|
+
const leadingWhitespace = /^\s*/;
|
|
21
|
+
const nonWhitespace = /\S/;
|
|
22
|
+
const slice = Array.prototype.slice;
|
|
23
|
+
function dedent(arg) {
|
|
24
|
+
if (typeof arg === 'string') {
|
|
25
|
+
return process([arg])[0];
|
|
26
|
+
}
|
|
27
|
+
if (typeof arg === 'function') {
|
|
28
|
+
return function () {
|
|
29
|
+
const args = slice.call(arguments);
|
|
30
|
+
args[0] = processTemplateStringsArray(args[0]);
|
|
31
|
+
return arg.apply(this, args);
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
const strings = processTemplateStringsArray(arg);
|
|
35
|
+
// TODO: This is just `String.cooked`: https://tc39.es/proposal-string-cooked/
|
|
36
|
+
let s = getCooked(strings, 0);
|
|
37
|
+
for (let i = 1; i < strings.length; i++) {
|
|
38
|
+
s += arguments[i] + getCooked(strings, i);
|
|
39
|
+
}
|
|
40
|
+
return s;
|
|
41
|
+
}
|
|
42
|
+
function getCooked(strings, index) {
|
|
43
|
+
const str = strings[index];
|
|
44
|
+
if (str === undefined)
|
|
45
|
+
throw new TypeError(`invalid cooked string at index ${index}`);
|
|
46
|
+
return str;
|
|
47
|
+
}
|
|
48
|
+
function processTemplateStringsArray(strings) {
|
|
49
|
+
const cached = cache.get(strings);
|
|
50
|
+
if (cached)
|
|
51
|
+
return cached;
|
|
52
|
+
const dedented = process(strings);
|
|
53
|
+
cache.set(strings, dedented);
|
|
54
|
+
Object.defineProperty(dedented, 'raw', {
|
|
55
|
+
value: Object.freeze(process(strings.raw)),
|
|
56
|
+
});
|
|
57
|
+
Object.freeze(dedented);
|
|
58
|
+
return dedented;
|
|
59
|
+
}
|
|
60
|
+
function process(strings) {
|
|
61
|
+
// splitQuasis is now an array of arrays. The inner array is contains text content lines on the
|
|
62
|
+
// even indices, and the newline char that ends the text content line on the odd indices.
|
|
63
|
+
// In the first array, the inner array's 0 index is the opening line of the template literal.
|
|
64
|
+
// In all other arrays, the inner array's 0 index is the continuation of the line directly after a
|
|
65
|
+
// template expression.
|
|
66
|
+
//
|
|
67
|
+
// Eg, in the following case:
|
|
68
|
+
//
|
|
69
|
+
// ```
|
|
70
|
+
// String.dedent`
|
|
71
|
+
// first
|
|
72
|
+
// ${expression} second
|
|
73
|
+
// third
|
|
74
|
+
// `
|
|
75
|
+
// ```
|
|
76
|
+
//
|
|
77
|
+
// We expect the following splitQuasis:
|
|
78
|
+
//
|
|
79
|
+
// ```
|
|
80
|
+
// [
|
|
81
|
+
// ["", "\n", " first", "\n", " "],
|
|
82
|
+
// [" second", "\n", " third", "\n", ""],
|
|
83
|
+
// ]
|
|
84
|
+
// ```
|
|
85
|
+
const splitQuasis = strings.map((quasi) => quasi === null || quasi === void 0 ? void 0 : quasi.split(newline));
|
|
86
|
+
let common;
|
|
87
|
+
for (let i = 0; i < splitQuasis.length; i++) {
|
|
88
|
+
const lines = splitQuasis[i];
|
|
89
|
+
if (lines === undefined)
|
|
90
|
+
continue;
|
|
91
|
+
// The first split is the static text starting at the opening line until the first template
|
|
92
|
+
// expression (or the end of the template if there are no expressions).
|
|
93
|
+
const firstSplit = i === 0;
|
|
94
|
+
// The last split is all the static text after the final template expression until the closing
|
|
95
|
+
// line. If there are no template expressions, then the first split is also the last split.
|
|
96
|
+
const lastSplit = i + 1 === splitQuasis.length;
|
|
97
|
+
// The opening line must be empty (it very likely is) and it must not contain a template
|
|
98
|
+
// expression. The opening line's trailing newline char is removed.
|
|
99
|
+
if (firstSplit) {
|
|
100
|
+
// Length > 1 ensures there is a newline, and there is not a template expression.
|
|
101
|
+
if (lines.length === 1 || lines[0].length > 0) {
|
|
102
|
+
throw new Error('invalid content on opening line');
|
|
103
|
+
}
|
|
104
|
+
// Clear the captured newline char.
|
|
105
|
+
lines[1] = '';
|
|
106
|
+
}
|
|
107
|
+
// The closing line may only contain whitespace and must not contain a template expression. The
|
|
108
|
+
// closing line and its preceding newline are removed.
|
|
109
|
+
if (lastSplit) {
|
|
110
|
+
// Length > 1 ensures there is a newline, and there is not a template expression.
|
|
111
|
+
if (lines.length === 1 || nonWhitespace.test(lines[lines.length - 1])) {
|
|
112
|
+
throw new Error('invalid content on closing line');
|
|
113
|
+
}
|
|
114
|
+
// Clear the captured newline char, and the whitespace on the closing line.
|
|
115
|
+
lines[lines.length - 2] = '';
|
|
116
|
+
lines[lines.length - 1] = '';
|
|
117
|
+
}
|
|
118
|
+
// In the first spit, the index 0 is the opening line (which must be empty by now), and in all
|
|
119
|
+
// other splits, its the content trailing the template expression (and so can't be part of
|
|
120
|
+
// leading whitespace).
|
|
121
|
+
// Every odd index is the captured newline char, so we'll skip and only process evens.
|
|
122
|
+
for (let j = 2; j < lines.length; j += 2) {
|
|
123
|
+
const text = lines[j];
|
|
124
|
+
// If we are on the last line of this split, and we are not processing the last split (which
|
|
125
|
+
// is after all template expressions), then this line contains a template expression.
|
|
126
|
+
const lineContainsTemplateExpression = j + 1 === lines.length && !lastSplit;
|
|
127
|
+
// leadingWhitespace is guaranteed to match something, but it could be 0 chars.
|
|
128
|
+
const leading = leadingWhitespace.exec(text)[0];
|
|
129
|
+
// Empty lines do not affect the common indentation, and whitespace only lines are emptied
|
|
130
|
+
// (and also don't affect the comon indentation).
|
|
131
|
+
if (!lineContainsTemplateExpression && leading.length === text.length) {
|
|
132
|
+
lines[j] = '';
|
|
133
|
+
continue;
|
|
134
|
+
}
|
|
135
|
+
common = commonStart(leading, common);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
const min = common ? common.length : 0;
|
|
139
|
+
return splitQuasis.map((lines) => {
|
|
140
|
+
if (lines === undefined)
|
|
141
|
+
return lines;
|
|
142
|
+
let quasi = lines[0];
|
|
143
|
+
for (let i = 1; i < lines.length; i += 2) {
|
|
144
|
+
const newline = lines[i];
|
|
145
|
+
const text = lines[i + 1];
|
|
146
|
+
quasi += newline + text.slice(min);
|
|
147
|
+
}
|
|
148
|
+
return quasi;
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
function commonStart(a, b) {
|
|
152
|
+
if (b === undefined || a === b)
|
|
153
|
+
return a;
|
|
154
|
+
let i = 0;
|
|
155
|
+
for (const len = Math.min(a.length, b.length); i < len; i++) {
|
|
156
|
+
if (a[i] !== b[i])
|
|
157
|
+
break;
|
|
158
|
+
}
|
|
159
|
+
return a.slice(0, i);
|
|
160
|
+
}
|
|
158
161
|
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
} (dedent_umd));
|
|
162
|
+
return dedent;
|
|
162
163
|
|
|
163
|
-
|
|
164
|
+
}));
|
|
165
|
+
|
|
166
|
+
} (dedent_umd$1));
|
|
167
|
+
return dedent_umd$1.exports;
|
|
168
|
+
}
|
|
164
169
|
|
|
165
170
|
/* eslint-env node */
|
|
166
171
|
|
|
167
|
-
|
|
168
|
-
var
|
|
172
|
+
var dedent$1;
|
|
173
|
+
var hasRequiredDedent;
|
|
174
|
+
|
|
175
|
+
function requireDedent () {
|
|
176
|
+
if (hasRequiredDedent) return dedent$1;
|
|
177
|
+
hasRequiredDedent = 1;
|
|
178
|
+
// This exists just to re-export dedent as a module in the codebase
|
|
179
|
+
dedent$1 = requireDedent_umd();
|
|
180
|
+
return dedent$1;
|
|
181
|
+
}
|
|
169
182
|
|
|
170
|
-
var
|
|
183
|
+
var dedentExports = requireDedent();
|
|
184
|
+
var dedent = /*@__PURE__*/getDefaultExportFromCjs(dedentExports);
|
|
171
185
|
|
|
172
|
-
export { dedent
|
|
186
|
+
export { dedent as default };
|
package/assets/url-pattern.js
CHANGED
|
@@ -2,21 +2,46 @@ function getDefaultExportFromCjs (x) {
|
|
|
2
2
|
return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
|
|
3
3
|
}
|
|
4
4
|
|
|
5
|
-
var M=Object.defineProperty;var Pe=Object.getOwnPropertyDescriptor;var Re=Object.getOwnPropertyNames;var Ee=Object.prototype.hasOwnProperty;var Oe=(e,t)=>{for(var r in t)M(e,r,{get:t[r],enumerable:!0});},ke=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of Re(t))!Ee.call(e,a)&&a!==r&&M(e,a,{get:()=>t[a],enumerable:!(n=Pe(t,a))||n.enumerable});return e};var Te=e=>ke(M({},"__esModule",{value:!0}),e);var Ne={};Oe(Ne,{URLPattern:()=>Y});var urlpattern=Te(Ne);var R=class{type=3;name="";prefix="";value="";suffix="";modifier=3;constructor(t,r,n,a,c,l){this.type=t,this.name=r,this.prefix=n,this.value=a,this.suffix=c,this.modifier=l;}hasCustomName(){return this.name!==""&&typeof this.name!="number"}},Ae=/[$_\p{ID_Start}]/u,ye=/[$_\u200C\u200D\p{ID_Continue}]/u,v=".*";function we(e,t){return (t?/^[\x00-\xFF]*$/:/^[\x00-\x7F]*$/).test(e)}function D(e,t=!1){let r=[],n=0;for(;n<e.length;){let a=e[n],c=function(l){if(!t)throw new TypeError(l);r.push({type:"INVALID_CHAR",index:n,value:e[n++]});};if(a==="*"){r.push({type:"ASTERISK",index:n,value:e[n++]});continue}if(a==="+"||a==="?"){r.push({type:"OTHER_MODIFIER",index:n,value:e[n++]});continue}if(a==="\\"){r.push({type:"ESCAPED_CHAR",index:n++,value:e[n++]});continue}if(a==="{"){r.push({type:"OPEN",index:n,value:e[n++]});continue}if(a==="}"){r.push({type:"CLOSE",index:n,value:e[n++]});continue}if(a===":"){let l="",s=n+1;for(;s<e.length;){let i=e.substr(s,1);if(s===n+1&&Ae.test(i)||s!==n+1&&ye.test(i)){l+=e[s++];continue}break}if(!l){c(`Missing parameter name at ${n}`);continue}r.push({type:"NAME",index:n,value:l}),n=s;continue}if(a==="("){let l=1,s="",i=n+1,o=!1;if(e[i]==="?"){c(`Pattern cannot start with "?" at ${i}`);continue}for(;i<e.length;){if(!we(e[i],!1)){c(`Invalid character '${e[i]}' at ${i}.`),o=!0;break}if(e[i]==="\\"){s+=e[i++]+e[i++];continue}if(e[i]===")"){if(l--,l===0){i++;break}}else if(e[i]==="("&&(l++,e[i+1]!=="?")){c(`Capturing groups are not allowed at ${i}`),o=!0;break}s+=e[i++];}if(o)continue;if(l){c(`Unbalanced pattern at ${n}`);continue}if(!s){c(`Missing pattern at ${n}`);continue}r.push({type:"REGEX",index:n,value:s}),n=i;continue}r.push({type:"CHAR",index:n,value:e[n++]});}return r.push({type:"END",index:n,value:""}),r}function F(e,t={}){let r=D(e);t.delimiter??="/#?",t.prefixes??="./";let n=`[^${S(t.delimiter)}]+?`,a=[],c=0,l=0,i=new Set,o=h=>{if(l<r.length&&r[l].type===h)return r[l++].value},f=()=>o("OTHER_MODIFIER")??o("ASTERISK"),d=h=>{let u=o(h);if(u!==void 0)return u;let{type:p,index:A}=r[l];throw new TypeError(`Unexpected ${p} at ${A}, expected ${h}`)},T=()=>{let h="",u;for(;u=o("CHAR")??o("ESCAPED_CHAR");)h+=u;return h},xe=h=>h,L=t.encodePart||xe,I="",U=h=>{I+=h;},$=()=>{I.length&&(a.push(new R(3,"","",L(I),"",3)),I="");},X=(h,u,p,A,Z)=>{let g=3;switch(Z){case"?":g=1;break;case"*":g=0;break;case"+":g=2;break}if(!u&&!p&&g===3){U(h);return}if($(),!u&&!p){if(!h)return;a.push(new R(3,"","",L(h),"",g));return}let m;p?p==="*"?m=v:m=p:m=n;let O=2;m===n?(O=1,m=""):m===v&&(O=0,m="");let P;if(u?P=u:p&&(P=c++),i.has(P))throw new TypeError(`Duplicate name '${P}'.`);i.add(P),a.push(new R(O,P,L(h),m,L(A),g));};for(;l<r.length;){let h=o("CHAR"),u=o("NAME"),p=o("REGEX");if(!u&&!p&&(p=o("ASTERISK")),u||p){let g=h??"";t.prefixes.indexOf(g)===-1&&(U(g),g=""),$();let m=f();X(g,u,p,"",m);continue}let A=h??o("ESCAPED_CHAR");if(A){U(A);continue}if(o("OPEN")){let g=T(),m=o("NAME"),O=o("REGEX");!m&&!O&&(O=o("ASTERISK"));let P=T();d("CLOSE");let be=f();X(g,m,O,P,be);continue}$(),d("END");}return a}function S(e){return e.replace(/([.+*?^${}()[\]|/\\])/g,"\\$1")}function B(e){return e&&e.ignoreCase?"ui":"u"}function q(e,t,r){return W(F(e,r),t,r)}function k(e){switch(e){case 0:return "*";case 1:return "?";case 2:return "+";case 3:return ""}}function W(e,t,r={}){r.delimiter??="/#?",r.prefixes??="./",r.sensitive??=!1,r.strict??=!1,r.end??=!0,r.start??=!0,r.endsWith="";let n=r.start?"^":"";for(let s of e){if(s.type===3){s.modifier===3?n+=S(s.value):n+=`(?:${S(s.value)})${k(s.modifier)}`;continue}t&&t.push(s.name);let i=`[^${S(r.delimiter)}]+?`,o=s.value;if(s.type===1?o=i:s.type===0&&(o=v),!s.prefix.length&&!s.suffix.length){s.modifier===3||s.modifier===1?n+=`(${o})${k(s.modifier)}`:n+=`((?:${o})${k(s.modifier)})`;continue}if(s.modifier===3||s.modifier===1){n+=`(?:${S(s.prefix)}(${o})${S(s.suffix)})`,n+=k(s.modifier);continue}n+=`(?:${S(s.prefix)}`,n+=`((?:${o})(?:`,n+=S(s.suffix),n+=S(s.prefix),n+=`(?:${o}))*)${S(s.suffix)})`,s.modifier===0&&(n+="?");}let a=`[${S(r.endsWith)}]|$`,c=`[${S(r.delimiter)}]`;if(r.end)return r.strict||(n+=`${c}?`),r.endsWith.length?n+=`(?=${a})`:n+="$",new RegExp(n,B(r));r.strict||(n+=`(?:${c}(?=${a}))?`);let l=!1;if(e.length){let s=e[e.length-1];s.type===3&&s.modifier===3&&(l=r.delimiter.indexOf(s)>-1);}return l||(n+=`(?=${c}|${a})`),new RegExp(n,B(r))}var x={delimiter:"",prefixes:"",sensitive:!0,strict:!0},J={delimiter:".",prefixes:"",sensitive:!0,strict:!0},Q={delimiter:"/",prefixes:"/",sensitive:!0,strict:!0};function ee(e,t){return e.length?e[0]==="/"?!0:!t||e.length<2?!1:(e[0]=="\\"||e[0]=="{")&&e[1]=="/":!1}function te(e,t){return e.startsWith(t)?e.substring(t.length,e.length):e}function Ce(e,t){return e.endsWith(t)?e.substr(0,e.length-t.length):e}function _(e){return !e||e.length<2?!1:e[0]==="["||(e[0]==="\\"||e[0]==="{")&&e[1]==="["}var re=["ftp","file","http","https","ws","wss"];function N(e){if(!e)return !0;for(let t of re)if(e.test(t))return !0;return !1}function ne(e,t){if(e=te(e,"#"),t||e==="")return e;let r=new URL("https://example.com");return r.hash=e,r.hash?r.hash.substring(1,r.hash.length):""}function se(e,t){if(e=te(e,"?"),t||e==="")return e;let r=new URL("https://example.com");return r.search=e,r.search?r.search.substring(1,r.search.length):""}function ie(e,t){return t||e===""?e:_(e)?K(e):j(e)}function ae(e,t){if(t||e==="")return e;let r=new URL("https://example.com");return r.password=e,r.password}function oe(e,t){if(t||e==="")return e;let r=new URL("https://example.com");return r.username=e,r.username}function ce(e,t,r){if(r||e==="")return e;if(t&&!re.includes(t))return new URL(`${t}:${e}`).pathname;let n=e[0]=="/";return e=new URL(n?e:"/-"+e,"https://example.com").pathname,n||(e=e.substring(2,e.length)),e}function le(e,t,r){return z(t)===e&&(e=""),r||e===""?e:G(e)}function fe(e,t){return e=Ce(e,":"),t||e===""?e:y(e)}function z(e){switch(e){case"ws":case"http":return "80";case"wws":case"https":return "443";case"ftp":return "21";default:return ""}}function y(e){if(e==="")return e;if(/^[-+.A-Za-z0-9]*$/.test(e))return e.toLowerCase();throw new TypeError(`Invalid protocol '${e}'.`)}function he(e){if(e==="")return e;let t=new URL("https://example.com");return t.username=e,t.username}function ue(e){if(e==="")return e;let t=new URL("https://example.com");return t.password=e,t.password}function j(e){if(e==="")return e;if(/[\t\n\r #%/:<>?@[\]^\\|]/g.test(e))throw new TypeError(`Invalid hostname '${e}'`);let t=new URL("https://example.com");return t.hostname=e,t.hostname}function K(e){if(e==="")return e;if(/[^0-9a-fA-F[\]:]/g.test(e))throw new TypeError(`Invalid IPv6 hostname '${e}'`);return e.toLowerCase()}function G(e){if(e===""||/^[0-9]*$/.test(e)&&parseInt(e)<=65535)return e;throw new TypeError(`Invalid port '${e}'.`)}function de(e){if(e==="")return e;let t=new URL("https://example.com");return t.pathname=e[0]!=="/"?"/-"+e:e,e[0]!=="/"?t.pathname.substring(2,t.pathname.length):t.pathname}function pe(e){return e===""?e:new URL(`data:${e}`).pathname}function ge(e){if(e==="")return e;let t=new URL("https://example.com");return t.search=e,t.search.substring(1,t.search.length)}function me(e){if(e==="")return e;let t=new URL("https://example.com");return t.hash=e,t.hash.substring(1,t.hash.length)}var H=class{#i;#n=[];#t={};#e=0;#s=1;#l=0;#o=0;#d=0;#p=0;#g=!1;constructor(t){this.#i=t;}get result(){return this.#t}parse(){for(this.#n=D(this.#i,!0);this.#e<this.#n.length;this.#e+=this.#s){if(this.#s=1,this.#n[this.#e].type==="END"){if(this.#o===0){this.#b(),this.#f()?this.#r(9,1):this.#h()?this.#r(8,1):this.#r(7,0);continue}else if(this.#o===2){this.#u(5);continue}this.#r(10,0);break}if(this.#d>0)if(this.#A())this.#d-=1;else continue;if(this.#T()){this.#d+=1;continue}switch(this.#o){case 0:this.#P()&&this.#u(1);break;case 1:if(this.#P()){this.#C();let t=7,r=1;this.#E()?(t=2,r=3):this.#g&&(t=2),this.#r(t,r);}break;case 2:this.#S()?this.#u(3):(this.#x()||this.#h()||this.#f())&&this.#u(5);break;case 3:this.#O()?this.#r(4,1):this.#S()&&this.#r(5,1);break;case 4:this.#S()&&this.#r(5,1);break;case 5:this.#y()?this.#p+=1:this.#w()&&(this.#p-=1),this.#k()&&!this.#p?this.#r(6,1):this.#x()?this.#r(7,0):this.#h()?this.#r(8,1):this.#f()&&this.#r(9,1);break;case 6:this.#x()?this.#r(7,0):this.#h()?this.#r(8,1):this.#f()&&this.#r(9,1);break;case 7:this.#h()?this.#r(8,1):this.#f()&&this.#r(9,1);break;case 8:this.#f()&&this.#r(9,1);break;}}this.#t.hostname!==void 0&&this.#t.port===void 0&&(this.#t.port="");}#r(t,r){switch(this.#o){case 0:break;case 1:this.#t.protocol=this.#c();break;case 2:break;case 3:this.#t.username=this.#c();break;case 4:this.#t.password=this.#c();break;case 5:this.#t.hostname=this.#c();break;case 6:this.#t.port=this.#c();break;case 7:this.#t.pathname=this.#c();break;case 8:this.#t.search=this.#c();break;case 9:this.#t.hash=this.#c();break;}this.#o!==0&&t!==10&&([1,2,3,4].includes(this.#o)&&[6,7,8,9].includes(t)&&(this.#t.hostname??=""),[1,2,3,4,5,6].includes(this.#o)&&[8,9].includes(t)&&(this.#t.pathname??=this.#g?"/":""),[1,2,3,4,5,6,7].includes(this.#o)&&t===9&&(this.#t.search??="")),this.#R(t,r);}#R(t,r){this.#o=t,this.#l=this.#e+r,this.#e+=r,this.#s=0;}#b(){this.#e=this.#l,this.#s=0;}#u(t){this.#b(),this.#o=t;}#m(t){return t<0&&(t=this.#n.length-t),t<this.#n.length?this.#n[t]:this.#n[this.#n.length-1]}#a(t,r){let n=this.#m(t);return n.value===r&&(n.type==="CHAR"||n.type==="ESCAPED_CHAR"||n.type==="INVALID_CHAR")}#P(){return this.#a(this.#e,":")}#E(){return this.#a(this.#e+1,"/")&&this.#a(this.#e+2,"/")}#S(){return this.#a(this.#e,"@")}#O(){return this.#a(this.#e,":")}#k(){return this.#a(this.#e,":")}#x(){return this.#a(this.#e,"/")}#h(){if(this.#a(this.#e,"?"))return !0;if(this.#n[this.#e].value!=="?")return !1;let t=this.#m(this.#e-1);return t.type!=="NAME"&&t.type!=="REGEX"&&t.type!=="CLOSE"&&t.type!=="ASTERISK"}#f(){return this.#a(this.#e,"#")}#T(){return this.#n[this.#e].type=="OPEN"}#A(){return this.#n[this.#e].type=="CLOSE"}#y(){return this.#a(this.#e,"[")}#w(){return this.#a(this.#e,"]")}#c(){let t=this.#n[this.#e],r=this.#m(this.#l).index;return this.#i.substring(r,t.index)}#C(){let t={};Object.assign(t,x),t.encodePart=y;let r=q(this.#c(),void 0,t);this.#g=N(r);}};var V=["protocol","username","password","hostname","port","pathname","search","hash"],E="*";function Se(e,t){if(typeof e!="string")throw new TypeError("parameter 1 is not of type 'string'.");let r=new URL(e,t);return {protocol:r.protocol.substring(0,r.protocol.length-1),username:r.username,password:r.password,hostname:r.hostname,port:r.port,pathname:r.pathname,search:r.search!==""?r.search.substring(1,r.search.length):void 0,hash:r.hash!==""?r.hash.substring(1,r.hash.length):void 0}}function b(e,t){return t?C(e):e}function w(e,t,r){let n;if(typeof t.baseURL=="string")try{n=new URL(t.baseURL),t.protocol===void 0&&(e.protocol=b(n.protocol.substring(0,n.protocol.length-1),r)),!r&&t.protocol===void 0&&t.hostname===void 0&&t.port===void 0&&t.username===void 0&&(e.username=b(n.username,r)),!r&&t.protocol===void 0&&t.hostname===void 0&&t.port===void 0&&t.username===void 0&&t.password===void 0&&(e.password=b(n.password,r)),t.protocol===void 0&&t.hostname===void 0&&(e.hostname=b(n.hostname,r)),t.protocol===void 0&&t.hostname===void 0&&t.port===void 0&&(e.port=b(n.port,r)),t.protocol===void 0&&t.hostname===void 0&&t.port===void 0&&t.pathname===void 0&&(e.pathname=b(n.pathname,r)),t.protocol===void 0&&t.hostname===void 0&&t.port===void 0&&t.pathname===void 0&&t.search===void 0&&(e.search=b(n.search.substring(1,n.search.length),r)),t.protocol===void 0&&t.hostname===void 0&&t.port===void 0&&t.pathname===void 0&&t.search===void 0&&t.hash===void 0&&(e.hash=b(n.hash.substring(1,n.hash.length),r));}catch{throw new TypeError(`invalid baseURL '${t.baseURL}'.`)}if(typeof t.protocol=="string"&&(e.protocol=fe(t.protocol,r)),typeof t.username=="string"&&(e.username=oe(t.username,r)),typeof t.password=="string"&&(e.password=ae(t.password,r)),typeof t.hostname=="string"&&(e.hostname=ie(t.hostname,r)),typeof t.port=="string"&&(e.port=le(t.port,e.protocol,r)),typeof t.pathname=="string"){if(e.pathname=t.pathname,n&&!ee(e.pathname,r)){let a=n.pathname.lastIndexOf("/");a>=0&&(e.pathname=b(n.pathname.substring(0,a+1),r)+e.pathname);}e.pathname=ce(e.pathname,e.protocol,r);}return typeof t.search=="string"&&(e.search=se(t.search,r)),typeof t.hash=="string"&&(e.hash=ne(t.hash,r)),e}function C(e){return e.replace(/([+*?:{}()\\])/g,"\\$1")}function Le(e){return e.replace(/([.+*?^${}()[\]|/\\])/g,"\\$1")}function Ie(e,t){t.delimiter??="/#?",t.prefixes??="./",t.sensitive??=!1,t.strict??=!1,t.end??=!0,t.start??=!0,t.endsWith="";let r=".*",n=`[^${Le(t.delimiter)}]+?`,a=/[$_\u200C\u200D\p{ID_Continue}]/u,c="";for(let l=0;l<e.length;++l){let s=e[l];if(s.type===3){if(s.modifier===3){c+=C(s.value);continue}c+=`{${C(s.value)}}${k(s.modifier)}`;continue}let i=s.hasCustomName(),o=!!s.suffix.length||!!s.prefix.length&&(s.prefix.length!==1||!t.prefixes.includes(s.prefix)),f=l>0?e[l-1]:null,d=l<e.length-1?e[l+1]:null;if(!o&&i&&s.type===1&&s.modifier===3&&d&&!d.prefix.length&&!d.suffix.length)if(d.type===3){let T=d.value.length>0?d.value[0]:"";o=a.test(T);}else o=!d.hasCustomName();if(!o&&!s.prefix.length&&f&&f.type===3){let T=f.value[f.value.length-1];o=t.prefixes.includes(T);}o&&(c+="{"),c+=C(s.prefix),i&&(c+=`:${s.name}`),s.type===2?c+=`(${s.value})`:s.type===1?i||(c+=`(${n})`):s.type===0&&(!i&&(!f||f.type===3||f.modifier!==3||o||s.prefix!=="")?c+="*":c+=`(${r})`),s.type===1&&i&&s.suffix.length&&a.test(s.suffix[0])&&(c+="\\"),c+=C(s.suffix),o&&(c+="}"),s.modifier!==3&&(c+=k(s.modifier));}return c}var Y=class{#i;#n={};#t={};#e={};#s={};#l=!1;constructor(t={},r,n){try{let a;if(typeof r=="string"?a=r:n=r,typeof t=="string"){let i=new H(t);if(i.parse(),t=i.result,a===void 0&&typeof t.protocol!="string")throw new TypeError("A base URL must be provided for a relative constructor string.");t.baseURL=a;}else {if(!t||typeof t!="object")throw new TypeError("parameter 1 is not of type 'string' and cannot convert to dictionary.");if(a)throw new TypeError("parameter 1 is not of type 'string'.")}typeof n>"u"&&(n={ignoreCase:!1});let c={ignoreCase:n.ignoreCase===!0},l={pathname:E,protocol:E,username:E,password:E,hostname:E,port:E,search:E,hash:E};this.#i=w(l,t,!0),z(this.#i.protocol)===this.#i.port&&(this.#i.port="");let s;for(s of V){if(!(s in this.#i))continue;let i={},o=this.#i[s];switch(this.#t[s]=[],s){case"protocol":Object.assign(i,x),i.encodePart=y;break;case"username":Object.assign(i,x),i.encodePart=he;break;case"password":Object.assign(i,x),i.encodePart=ue;break;case"hostname":Object.assign(i,J),_(o)?i.encodePart=K:i.encodePart=j;break;case"port":Object.assign(i,x),i.encodePart=G;break;case"pathname":N(this.#n.protocol)?(Object.assign(i,Q,c),i.encodePart=de):(Object.assign(i,x,c),i.encodePart=pe);break;case"search":Object.assign(i,x,c),i.encodePart=ge;break;case"hash":Object.assign(i,x,c),i.encodePart=me;break}try{this.#s[s]=F(o,i),this.#n[s]=W(this.#s[s],this.#t[s],i),this.#e[s]=Ie(this.#s[s],i),this.#l=this.#l||this.#s[s].some(f=>f.type===2);}catch{throw new TypeError(`invalid ${s} pattern '${this.#i[s]}'.`)}}}catch(a){throw new TypeError(`Failed to construct 'URLPattern': ${a.message}`)}}test(t={},r){let n={pathname:"",protocol:"",username:"",password:"",hostname:"",port:"",search:"",hash:""};if(typeof t!="string"&&r)throw new TypeError("parameter 1 is not of type 'string'.");if(typeof t>"u")return !1;try{typeof t=="object"?n=w(n,t,!1):n=w(n,Se(t,r),!1);}catch{return !1}let a;for(a of V)if(!this.#n[a].exec(n[a]))return !1;return !0}exec(t={},r){let n={pathname:"",protocol:"",username:"",password:"",hostname:"",port:"",search:"",hash:""};if(typeof t!="string"&&r)throw new TypeError("parameter 1 is not of type 'string'.");if(typeof t>"u")return;try{typeof t=="object"?n=w(n,t,!1):n=w(n,Se(t,r),!1);}catch{return null}let a={};r?a.inputs=[t,r]:a.inputs=[t];let c;for(c of V){let l=this.#n[c].exec(n[c]);if(!l)return null;let s={};for(let[i,o]of this.#t[c].entries())if(typeof o=="string"||typeof o=="number"){let f=l[i+1];s[o]=f;}a[c]={input:n[c]??"",groups:s};}return a}static compareComponent(t,r,n){let a=(i,o)=>{for(let f of ["type","modifier","prefix","value","suffix"]){if(i[f]<o[f])return -1;if(i[f]===o[f])continue;return 1}return 0},c=new R(3,"","","","",3),l=new R(0,"","","","",3),s=(i,o)=>{let f=0;for(;f<Math.min(i.length,o.length);++f){let d=a(i[f],o[f]);if(d)return d}return i.length===o.length?0:a(i[f]??c,o[f]??c)};return !r.#e[t]&&!n.#e[t]?0:r.#e[t]&&!n.#e[t]?s(r.#s[t],[l]):!r.#e[t]&&n.#e[t]?s([l],n.#s[t]):s(r.#s[t],n.#s[t])}get protocol(){return this.#e.protocol}get username(){return this.#e.username}get password(){return this.#e.password}get hostname(){return this.#e.hostname}get port(){return this.#e.port}get pathname(){return this.#e.pathname}get search(){return this.#e.search}get hash(){return this.#e.hash}get hasRegExpGroups(){return this.#l}};
|
|
5
|
+
var urlpattern;
|
|
6
|
+
var hasRequiredUrlpattern;
|
|
7
|
+
|
|
8
|
+
function requireUrlpattern () {
|
|
9
|
+
if (hasRequiredUrlpattern) return urlpattern;
|
|
10
|
+
hasRequiredUrlpattern = 1;
|
|
11
|
+
var M=Object.defineProperty;var Pe=Object.getOwnPropertyDescriptor;var Re=Object.getOwnPropertyNames;var Ee=Object.prototype.hasOwnProperty;var Oe=(e,t)=>{for(var r in t)M(e,r,{get:t[r],enumerable:!0});},ke=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of Re(t))!Ee.call(e,a)&&a!==r&&M(e,a,{get:()=>t[a],enumerable:!(n=Pe(t,a))||n.enumerable});return e};var Te=e=>ke(M({},"__esModule",{value:!0}),e);var Ne={};Oe(Ne,{URLPattern:()=>Y});urlpattern=Te(Ne);var R=class{type=3;name="";prefix="";value="";suffix="";modifier=3;constructor(t,r,n,a,c,l){this.type=t,this.name=r,this.prefix=n,this.value=a,this.suffix=c,this.modifier=l;}hasCustomName(){return this.name!==""&&typeof this.name!="number"}},Ae=/[$_\p{ID_Start}]/u,ye=/[$_\u200C\u200D\p{ID_Continue}]/u,v=".*";function we(e,t){return (t?/^[\x00-\xFF]*$/:/^[\x00-\x7F]*$/).test(e)}function D(e,t=!1){let r=[],n=0;for(;n<e.length;){let a=e[n],c=function(l){if(!t)throw new TypeError(l);r.push({type:"INVALID_CHAR",index:n,value:e[n++]});};if(a==="*"){r.push({type:"ASTERISK",index:n,value:e[n++]});continue}if(a==="+"||a==="?"){r.push({type:"OTHER_MODIFIER",index:n,value:e[n++]});continue}if(a==="\\"){r.push({type:"ESCAPED_CHAR",index:n++,value:e[n++]});continue}if(a==="{"){r.push({type:"OPEN",index:n,value:e[n++]});continue}if(a==="}"){r.push({type:"CLOSE",index:n,value:e[n++]});continue}if(a===":"){let l="",s=n+1;for(;s<e.length;){let i=e.substr(s,1);if(s===n+1&&Ae.test(i)||s!==n+1&&ye.test(i)){l+=e[s++];continue}break}if(!l){c(`Missing parameter name at ${n}`);continue}r.push({type:"NAME",index:n,value:l}),n=s;continue}if(a==="("){let l=1,s="",i=n+1,o=!1;if(e[i]==="?"){c(`Pattern cannot start with "?" at ${i}`);continue}for(;i<e.length;){if(!we(e[i],!1)){c(`Invalid character '${e[i]}' at ${i}.`),o=!0;break}if(e[i]==="\\"){s+=e[i++]+e[i++];continue}if(e[i]===")"){if(l--,l===0){i++;break}}else if(e[i]==="("&&(l++,e[i+1]!=="?")){c(`Capturing groups are not allowed at ${i}`),o=!0;break}s+=e[i++];}if(o)continue;if(l){c(`Unbalanced pattern at ${n}`);continue}if(!s){c(`Missing pattern at ${n}`);continue}r.push({type:"REGEX",index:n,value:s}),n=i;continue}r.push({type:"CHAR",index:n,value:e[n++]});}return r.push({type:"END",index:n,value:""}),r}function F(e,t={}){let r=D(e);t.delimiter??="/#?",t.prefixes??="./";let n=`[^${S(t.delimiter)}]+?`,a=[],c=0,l=0,i=new Set,o=h=>{if(l<r.length&&r[l].type===h)return r[l++].value},f=()=>o("OTHER_MODIFIER")??o("ASTERISK"),d=h=>{let u=o(h);if(u!==void 0)return u;let{type:p,index:A}=r[l];throw new TypeError(`Unexpected ${p} at ${A}, expected ${h}`)},T=()=>{let h="",u;for(;u=o("CHAR")??o("ESCAPED_CHAR");)h+=u;return h},xe=h=>h,L=t.encodePart||xe,I="",U=h=>{I+=h;},$=()=>{I.length&&(a.push(new R(3,"","",L(I),"",3)),I="");},X=(h,u,p,A,Z)=>{let g=3;switch(Z){case"?":g=1;break;case"*":g=0;break;case"+":g=2;break}if(!u&&!p&&g===3){U(h);return}if($(),!u&&!p){if(!h)return;a.push(new R(3,"","",L(h),"",g));return}let m;p?p==="*"?m=v:m=p:m=n;let O=2;m===n?(O=1,m=""):m===v&&(O=0,m="");let P;if(u?P=u:p&&(P=c++),i.has(P))throw new TypeError(`Duplicate name '${P}'.`);i.add(P),a.push(new R(O,P,L(h),m,L(A),g));};for(;l<r.length;){let h=o("CHAR"),u=o("NAME"),p=o("REGEX");if(!u&&!p&&(p=o("ASTERISK")),u||p){let g=h??"";t.prefixes.indexOf(g)===-1&&(U(g),g=""),$();let m=f();X(g,u,p,"",m);continue}let A=h??o("ESCAPED_CHAR");if(A){U(A);continue}if(o("OPEN")){let g=T(),m=o("NAME"),O=o("REGEX");!m&&!O&&(O=o("ASTERISK"));let P=T();d("CLOSE");let be=f();X(g,m,O,P,be);continue}$(),d("END");}return a}function S(e){return e.replace(/([.+*?^${}()[\]|/\\])/g,"\\$1")}function B(e){return e&&e.ignoreCase?"ui":"u"}function q(e,t,r){return W(F(e,r),t,r)}function k(e){switch(e){case 0:return "*";case 1:return "?";case 2:return "+";case 3:return ""}}function W(e,t,r={}){r.delimiter??="/#?",r.prefixes??="./",r.sensitive??=!1,r.strict??=!1,r.end??=!0,r.start??=!0,r.endsWith="";let n=r.start?"^":"";for(let s of e){if(s.type===3){s.modifier===3?n+=S(s.value):n+=`(?:${S(s.value)})${k(s.modifier)}`;continue}t&&t.push(s.name);let i=`[^${S(r.delimiter)}]+?`,o=s.value;if(s.type===1?o=i:s.type===0&&(o=v),!s.prefix.length&&!s.suffix.length){s.modifier===3||s.modifier===1?n+=`(${o})${k(s.modifier)}`:n+=`((?:${o})${k(s.modifier)})`;continue}if(s.modifier===3||s.modifier===1){n+=`(?:${S(s.prefix)}(${o})${S(s.suffix)})`,n+=k(s.modifier);continue}n+=`(?:${S(s.prefix)}`,n+=`((?:${o})(?:`,n+=S(s.suffix),n+=S(s.prefix),n+=`(?:${o}))*)${S(s.suffix)})`,s.modifier===0&&(n+="?");}let a=`[${S(r.endsWith)}]|$`,c=`[${S(r.delimiter)}]`;if(r.end)return r.strict||(n+=`${c}?`),r.endsWith.length?n+=`(?=${a})`:n+="$",new RegExp(n,B(r));r.strict||(n+=`(?:${c}(?=${a}))?`);let l=!1;if(e.length){let s=e[e.length-1];s.type===3&&s.modifier===3&&(l=r.delimiter.indexOf(s)>-1);}return l||(n+=`(?=${c}|${a})`),new RegExp(n,B(r))}var x={delimiter:"",prefixes:"",sensitive:!0,strict:!0},J={delimiter:".",prefixes:"",sensitive:!0,strict:!0},Q={delimiter:"/",prefixes:"/",sensitive:!0,strict:!0};function ee(e,t){return e.length?e[0]==="/"?!0:!t||e.length<2?!1:(e[0]=="\\"||e[0]=="{")&&e[1]=="/":!1}function te(e,t){return e.startsWith(t)?e.substring(t.length,e.length):e}function Ce(e,t){return e.endsWith(t)?e.substr(0,e.length-t.length):e}function _(e){return !e||e.length<2?!1:e[0]==="["||(e[0]==="\\"||e[0]==="{")&&e[1]==="["}var re=["ftp","file","http","https","ws","wss"];function N(e){if(!e)return !0;for(let t of re)if(e.test(t))return !0;return !1}function ne(e,t){if(e=te(e,"#"),t||e==="")return e;let r=new URL("https://example.com");return r.hash=e,r.hash?r.hash.substring(1,r.hash.length):""}function se(e,t){if(e=te(e,"?"),t||e==="")return e;let r=new URL("https://example.com");return r.search=e,r.search?r.search.substring(1,r.search.length):""}function ie(e,t){return t||e===""?e:_(e)?K(e):j(e)}function ae(e,t){if(t||e==="")return e;let r=new URL("https://example.com");return r.password=e,r.password}function oe(e,t){if(t||e==="")return e;let r=new URL("https://example.com");return r.username=e,r.username}function ce(e,t,r){if(r||e==="")return e;if(t&&!re.includes(t))return new URL(`${t}:${e}`).pathname;let n=e[0]=="/";return e=new URL(n?e:"/-"+e,"https://example.com").pathname,n||(e=e.substring(2,e.length)),e}function le(e,t,r){return z(t)===e&&(e=""),r||e===""?e:G(e)}function fe(e,t){return e=Ce(e,":"),t||e===""?e:y(e)}function z(e){switch(e){case"ws":case"http":return "80";case"wws":case"https":return "443";case"ftp":return "21";default:return ""}}function y(e){if(e==="")return e;if(/^[-+.A-Za-z0-9]*$/.test(e))return e.toLowerCase();throw new TypeError(`Invalid protocol '${e}'.`)}function he(e){if(e==="")return e;let t=new URL("https://example.com");return t.username=e,t.username}function ue(e){if(e==="")return e;let t=new URL("https://example.com");return t.password=e,t.password}function j(e){if(e==="")return e;if(/[\t\n\r #%/:<>?@[\]^\\|]/g.test(e))throw new TypeError(`Invalid hostname '${e}'`);let t=new URL("https://example.com");return t.hostname=e,t.hostname}function K(e){if(e==="")return e;if(/[^0-9a-fA-F[\]:]/g.test(e))throw new TypeError(`Invalid IPv6 hostname '${e}'`);return e.toLowerCase()}function G(e){if(e===""||/^[0-9]*$/.test(e)&&parseInt(e)<=65535)return e;throw new TypeError(`Invalid port '${e}'.`)}function de(e){if(e==="")return e;let t=new URL("https://example.com");return t.pathname=e[0]!=="/"?"/-"+e:e,e[0]!=="/"?t.pathname.substring(2,t.pathname.length):t.pathname}function pe(e){return e===""?e:new URL(`data:${e}`).pathname}function ge(e){if(e==="")return e;let t=new URL("https://example.com");return t.search=e,t.search.substring(1,t.search.length)}function me(e){if(e==="")return e;let t=new URL("https://example.com");return t.hash=e,t.hash.substring(1,t.hash.length)}var H=class{#i;#n=[];#t={};#e=0;#s=1;#l=0;#o=0;#d=0;#p=0;#g=!1;constructor(t){this.#i=t;}get result(){return this.#t}parse(){for(this.#n=D(this.#i,!0);this.#e<this.#n.length;this.#e+=this.#s){if(this.#s=1,this.#n[this.#e].type==="END"){if(this.#o===0){this.#b(),this.#f()?this.#r(9,1):this.#h()?this.#r(8,1):this.#r(7,0);continue}else if(this.#o===2){this.#u(5);continue}this.#r(10,0);break}if(this.#d>0)if(this.#A())this.#d-=1;else continue;if(this.#T()){this.#d+=1;continue}switch(this.#o){case 0:this.#P()&&this.#u(1);break;case 1:if(this.#P()){this.#C();let t=7,r=1;this.#E()?(t=2,r=3):this.#g&&(t=2),this.#r(t,r);}break;case 2:this.#S()?this.#u(3):(this.#x()||this.#h()||this.#f())&&this.#u(5);break;case 3:this.#O()?this.#r(4,1):this.#S()&&this.#r(5,1);break;case 4:this.#S()&&this.#r(5,1);break;case 5:this.#y()?this.#p+=1:this.#w()&&(this.#p-=1),this.#k()&&!this.#p?this.#r(6,1):this.#x()?this.#r(7,0):this.#h()?this.#r(8,1):this.#f()&&this.#r(9,1);break;case 6:this.#x()?this.#r(7,0):this.#h()?this.#r(8,1):this.#f()&&this.#r(9,1);break;case 7:this.#h()?this.#r(8,1):this.#f()&&this.#r(9,1);break;case 8:this.#f()&&this.#r(9,1);break;}}this.#t.hostname!==void 0&&this.#t.port===void 0&&(this.#t.port="");}#r(t,r){switch(this.#o){case 0:break;case 1:this.#t.protocol=this.#c();break;case 2:break;case 3:this.#t.username=this.#c();break;case 4:this.#t.password=this.#c();break;case 5:this.#t.hostname=this.#c();break;case 6:this.#t.port=this.#c();break;case 7:this.#t.pathname=this.#c();break;case 8:this.#t.search=this.#c();break;case 9:this.#t.hash=this.#c();break;}this.#o!==0&&t!==10&&([1,2,3,4].includes(this.#o)&&[6,7,8,9].includes(t)&&(this.#t.hostname??=""),[1,2,3,4,5,6].includes(this.#o)&&[8,9].includes(t)&&(this.#t.pathname??=this.#g?"/":""),[1,2,3,4,5,6,7].includes(this.#o)&&t===9&&(this.#t.search??="")),this.#R(t,r);}#R(t,r){this.#o=t,this.#l=this.#e+r,this.#e+=r,this.#s=0;}#b(){this.#e=this.#l,this.#s=0;}#u(t){this.#b(),this.#o=t;}#m(t){return t<0&&(t=this.#n.length-t),t<this.#n.length?this.#n[t]:this.#n[this.#n.length-1]}#a(t,r){let n=this.#m(t);return n.value===r&&(n.type==="CHAR"||n.type==="ESCAPED_CHAR"||n.type==="INVALID_CHAR")}#P(){return this.#a(this.#e,":")}#E(){return this.#a(this.#e+1,"/")&&this.#a(this.#e+2,"/")}#S(){return this.#a(this.#e,"@")}#O(){return this.#a(this.#e,":")}#k(){return this.#a(this.#e,":")}#x(){return this.#a(this.#e,"/")}#h(){if(this.#a(this.#e,"?"))return !0;if(this.#n[this.#e].value!=="?")return !1;let t=this.#m(this.#e-1);return t.type!=="NAME"&&t.type!=="REGEX"&&t.type!=="CLOSE"&&t.type!=="ASTERISK"}#f(){return this.#a(this.#e,"#")}#T(){return this.#n[this.#e].type=="OPEN"}#A(){return this.#n[this.#e].type=="CLOSE"}#y(){return this.#a(this.#e,"[")}#w(){return this.#a(this.#e,"]")}#c(){let t=this.#n[this.#e],r=this.#m(this.#l).index;return this.#i.substring(r,t.index)}#C(){let t={};Object.assign(t,x),t.encodePart=y;let r=q(this.#c(),void 0,t);this.#g=N(r);}};var V=["protocol","username","password","hostname","port","pathname","search","hash"],E="*";function Se(e,t){if(typeof e!="string")throw new TypeError("parameter 1 is not of type 'string'.");let r=new URL(e,t);return {protocol:r.protocol.substring(0,r.protocol.length-1),username:r.username,password:r.password,hostname:r.hostname,port:r.port,pathname:r.pathname,search:r.search!==""?r.search.substring(1,r.search.length):void 0,hash:r.hash!==""?r.hash.substring(1,r.hash.length):void 0}}function b(e,t){return t?C(e):e}function w(e,t,r){let n;if(typeof t.baseURL=="string")try{n=new URL(t.baseURL),t.protocol===void 0&&(e.protocol=b(n.protocol.substring(0,n.protocol.length-1),r)),!r&&t.protocol===void 0&&t.hostname===void 0&&t.port===void 0&&t.username===void 0&&(e.username=b(n.username,r)),!r&&t.protocol===void 0&&t.hostname===void 0&&t.port===void 0&&t.username===void 0&&t.password===void 0&&(e.password=b(n.password,r)),t.protocol===void 0&&t.hostname===void 0&&(e.hostname=b(n.hostname,r)),t.protocol===void 0&&t.hostname===void 0&&t.port===void 0&&(e.port=b(n.port,r)),t.protocol===void 0&&t.hostname===void 0&&t.port===void 0&&t.pathname===void 0&&(e.pathname=b(n.pathname,r)),t.protocol===void 0&&t.hostname===void 0&&t.port===void 0&&t.pathname===void 0&&t.search===void 0&&(e.search=b(n.search.substring(1,n.search.length),r)),t.protocol===void 0&&t.hostname===void 0&&t.port===void 0&&t.pathname===void 0&&t.search===void 0&&t.hash===void 0&&(e.hash=b(n.hash.substring(1,n.hash.length),r));}catch{throw new TypeError(`invalid baseURL '${t.baseURL}'.`)}if(typeof t.protocol=="string"&&(e.protocol=fe(t.protocol,r)),typeof t.username=="string"&&(e.username=oe(t.username,r)),typeof t.password=="string"&&(e.password=ae(t.password,r)),typeof t.hostname=="string"&&(e.hostname=ie(t.hostname,r)),typeof t.port=="string"&&(e.port=le(t.port,e.protocol,r)),typeof t.pathname=="string"){if(e.pathname=t.pathname,n&&!ee(e.pathname,r)){let a=n.pathname.lastIndexOf("/");a>=0&&(e.pathname=b(n.pathname.substring(0,a+1),r)+e.pathname);}e.pathname=ce(e.pathname,e.protocol,r);}return typeof t.search=="string"&&(e.search=se(t.search,r)),typeof t.hash=="string"&&(e.hash=ne(t.hash,r)),e}function C(e){return e.replace(/([+*?:{}()\\])/g,"\\$1")}function Le(e){return e.replace(/([.+*?^${}()[\]|/\\])/g,"\\$1")}function Ie(e,t){t.delimiter??="/#?",t.prefixes??="./",t.sensitive??=!1,t.strict??=!1,t.end??=!0,t.start??=!0,t.endsWith="";let r=".*",n=`[^${Le(t.delimiter)}]+?`,a=/[$_\u200C\u200D\p{ID_Continue}]/u,c="";for(let l=0;l<e.length;++l){let s=e[l];if(s.type===3){if(s.modifier===3){c+=C(s.value);continue}c+=`{${C(s.value)}}${k(s.modifier)}`;continue}let i=s.hasCustomName(),o=!!s.suffix.length||!!s.prefix.length&&(s.prefix.length!==1||!t.prefixes.includes(s.prefix)),f=l>0?e[l-1]:null,d=l<e.length-1?e[l+1]:null;if(!o&&i&&s.type===1&&s.modifier===3&&d&&!d.prefix.length&&!d.suffix.length)if(d.type===3){let T=d.value.length>0?d.value[0]:"";o=a.test(T);}else o=!d.hasCustomName();if(!o&&!s.prefix.length&&f&&f.type===3){let T=f.value[f.value.length-1];o=t.prefixes.includes(T);}o&&(c+="{"),c+=C(s.prefix),i&&(c+=`:${s.name}`),s.type===2?c+=`(${s.value})`:s.type===1?i||(c+=`(${n})`):s.type===0&&(!i&&(!f||f.type===3||f.modifier!==3||o||s.prefix!=="")?c+="*":c+=`(${r})`),s.type===1&&i&&s.suffix.length&&a.test(s.suffix[0])&&(c+="\\"),c+=C(s.suffix),o&&(c+="}"),s.modifier!==3&&(c+=k(s.modifier));}return c}var Y=class{#i;#n={};#t={};#e={};#s={};#l=!1;constructor(t={},r,n){try{let a;if(typeof r=="string"?a=r:n=r,typeof t=="string"){let i=new H(t);if(i.parse(),t=i.result,a===void 0&&typeof t.protocol!="string")throw new TypeError("A base URL must be provided for a relative constructor string.");t.baseURL=a;}else {if(!t||typeof t!="object")throw new TypeError("parameter 1 is not of type 'string' and cannot convert to dictionary.");if(a)throw new TypeError("parameter 1 is not of type 'string'.")}typeof n>"u"&&(n={ignoreCase:!1});let c={ignoreCase:n.ignoreCase===!0},l={pathname:E,protocol:E,username:E,password:E,hostname:E,port:E,search:E,hash:E};this.#i=w(l,t,!0),z(this.#i.protocol)===this.#i.port&&(this.#i.port="");let s;for(s of V){if(!(s in this.#i))continue;let i={},o=this.#i[s];switch(this.#t[s]=[],s){case"protocol":Object.assign(i,x),i.encodePart=y;break;case"username":Object.assign(i,x),i.encodePart=he;break;case"password":Object.assign(i,x),i.encodePart=ue;break;case"hostname":Object.assign(i,J),_(o)?i.encodePart=K:i.encodePart=j;break;case"port":Object.assign(i,x),i.encodePart=G;break;case"pathname":N(this.#n.protocol)?(Object.assign(i,Q,c),i.encodePart=de):(Object.assign(i,x,c),i.encodePart=pe);break;case"search":Object.assign(i,x,c),i.encodePart=ge;break;case"hash":Object.assign(i,x,c),i.encodePart=me;break}try{this.#s[s]=F(o,i),this.#n[s]=W(this.#s[s],this.#t[s],i),this.#e[s]=Ie(this.#s[s],i),this.#l=this.#l||this.#s[s].some(f=>f.type===2);}catch{throw new TypeError(`invalid ${s} pattern '${this.#i[s]}'.`)}}}catch(a){throw new TypeError(`Failed to construct 'URLPattern': ${a.message}`)}}test(t={},r){let n={pathname:"",protocol:"",username:"",password:"",hostname:"",port:"",search:"",hash:""};if(typeof t!="string"&&r)throw new TypeError("parameter 1 is not of type 'string'.");if(typeof t>"u")return !1;try{typeof t=="object"?n=w(n,t,!1):n=w(n,Se(t,r),!1);}catch{return !1}let a;for(a of V)if(!this.#n[a].exec(n[a]))return !1;return !0}exec(t={},r){let n={pathname:"",protocol:"",username:"",password:"",hostname:"",port:"",search:"",hash:""};if(typeof t!="string"&&r)throw new TypeError("parameter 1 is not of type 'string'.");if(typeof t>"u")return;try{typeof t=="object"?n=w(n,t,!1):n=w(n,Se(t,r),!1);}catch{return null}let a={};r?a.inputs=[t,r]:a.inputs=[t];let c;for(c of V){let l=this.#n[c].exec(n[c]);if(!l)return null;let s={};for(let[i,o]of this.#t[c].entries())if(typeof o=="string"||typeof o=="number"){let f=l[i+1];s[o]=f;}a[c]={input:n[c]??"",groups:s};}return a}static compareComponent(t,r,n){let a=(i,o)=>{for(let f of ["type","modifier","prefix","value","suffix"]){if(i[f]<o[f])return -1;if(i[f]===o[f])continue;return 1}return 0},c=new R(3,"","","","",3),l=new R(0,"","","","",3),s=(i,o)=>{let f=0;for(;f<Math.min(i.length,o.length);++f){let d=a(i[f],o[f]);if(d)return d}return i.length===o.length?0:a(i[f]??c,o[f]??c)};return !r.#e[t]&&!n.#e[t]?0:r.#e[t]&&!n.#e[t]?s(r.#s[t],[l]):!r.#e[t]&&n.#e[t]?s([l],n.#s[t]):s(r.#s[t],n.#s[t])}get protocol(){return this.#e.protocol}get username(){return this.#e.username}get password(){return this.#e.password}get hostname(){return this.#e.hostname}get port(){return this.#e.port}get pathname(){return this.#e.pathname}get search(){return this.#e.search}get hash(){return this.#e.hash}get hasRegExpGroups(){return this.#l}};
|
|
12
|
+
return urlpattern;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
var urlpatternPolyfill;
|
|
16
|
+
var hasRequiredUrlpatternPolyfill;
|
|
6
17
|
|
|
7
|
-
|
|
18
|
+
function requireUrlpatternPolyfill () {
|
|
19
|
+
if (hasRequiredUrlpatternPolyfill) return urlpatternPolyfill;
|
|
20
|
+
hasRequiredUrlpatternPolyfill = 1;
|
|
21
|
+
const { URLPattern } = requireUrlpattern();
|
|
8
22
|
|
|
9
|
-
|
|
23
|
+
urlpatternPolyfill = { URLPattern };
|
|
10
24
|
|
|
11
|
-
if (!globalThis.URLPattern) {
|
|
12
|
-
|
|
25
|
+
if (!globalThis.URLPattern) {
|
|
26
|
+
globalThis.URLPattern = URLPattern;
|
|
27
|
+
}
|
|
28
|
+
return urlpatternPolyfill;
|
|
13
29
|
}
|
|
14
30
|
|
|
15
31
|
/* eslint-env node */
|
|
16
32
|
|
|
17
|
-
|
|
18
|
-
var
|
|
33
|
+
var urlPattern$1;
|
|
34
|
+
var hasRequiredUrlPattern;
|
|
35
|
+
|
|
36
|
+
function requireUrlPattern () {
|
|
37
|
+
if (hasRequiredUrlPattern) return urlPattern$1;
|
|
38
|
+
hasRequiredUrlPattern = 1;
|
|
39
|
+
// This exists just to re-export urlpattern-polyfill as a module in the codebase
|
|
40
|
+
urlPattern$1 = requireUrlpatternPolyfill();
|
|
41
|
+
return urlPattern$1;
|
|
42
|
+
}
|
|
19
43
|
|
|
20
|
-
var
|
|
44
|
+
var urlPatternExports = requireUrlPattern();
|
|
45
|
+
var urlPattern = /*@__PURE__*/getDefaultExportFromCjs(urlPatternExports);
|
|
21
46
|
|
|
22
|
-
export { urlPattern
|
|
47
|
+
export { urlPattern as default };
|
package/browser.js
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @copyright 2023-2024 Chris Zuber <admin@kernvalley.us>
|
|
3
|
+
*/
|
|
4
|
+
import './globalThis.js';
|
|
5
|
+
import './string.js';
|
|
6
|
+
import './deprefixer.js';
|
|
7
|
+
import './object.js';
|
|
8
|
+
import './map.js';
|
|
9
|
+
import './array.js';
|
|
10
|
+
import './symbols.js';
|
|
11
|
+
import './function.js';
|
|
12
|
+
import './url.js';
|
|
13
|
+
import './number.js';
|
|
14
|
+
import './iterator.js';
|
|
15
|
+
import './math.js';
|
|
16
|
+
import './secure-context.js';
|
|
17
|
+
import './navigator.js';
|
|
18
|
+
import './performance.js';
|
|
19
|
+
import './abort.js';
|
|
20
|
+
import './errors.js';
|
|
21
|
+
import './match-media.js';
|
|
22
|
+
import './promise.js';
|
|
23
|
+
import './textEncoder.js';
|
|
24
|
+
import './crypto.js';
|
|
25
|
+
import './cookieStore.js';
|
|
26
|
+
import './animation.js';
|
|
27
|
+
import './trustedTypes.js';
|
|
28
|
+
import './Document.js';
|
|
29
|
+
import './ShadowRoot.js';
|
|
30
|
+
import './CSSStyleSheet.js';
|
|
31
|
+
import './element.js';
|
|
32
|
+
import './set.js';
|
|
33
|
+
import './weakMap.js';
|
|
34
|
+
import './window.js';
|
|
35
|
+
import './scheduler.js';
|
|
36
|
+
import './elementInternals.js';
|
|
37
|
+
import './blob.js';
|
|
38
|
+
import './request.js';
|
|
39
|
+
import './response.js';
|
|
40
|
+
import './Record.js';
|
|
41
|
+
import './Tuple.js';
|
|
42
|
+
import './JSON.js';
|
|
43
|
+
import './regexp.js';
|