@builder.io/sdk 2.2.6 → 2.2.7-0
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/dist/index.browser.js +50 -40
- package/dist/index.browser.js.map +1 -1
- package/dist/index.cjs.js +50 -40
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +50 -40
- package/dist/index.esm.js.map +1 -1
- package/dist/index.umd.js +50 -40
- package/dist/index.umd.js.map +1 -1
- package/dist/src/builder.class.js +50 -40
- package/dist/src/builder.class.js.map +1 -1
- package/dist/src/classes/promise.class.js +150 -154
- package/dist/src/classes/query-string.class.js +73 -74
- package/dist/src/classes/query-string.class.test.js +20 -20
- package/dist/src/functions/assign.function.js +19 -19
- package/dist/src/functions/fetch.function.js +97 -75
- package/dist/src/functions/finder.function.js +389 -274
- package/dist/src/functions/get-top-level-domain.js +8 -8
- package/dist/src/functions/next-tick.function.js +26 -23
- package/dist/src/functions/omit.function.js +13 -13
- package/dist/src/functions/server-only-require.function.js +10 -9
- package/dist/src/functions/throttle.function.js +35 -37
- package/dist/src/functions/to-error.js +5 -6
- package/dist/src/functions/uuid.js +9 -8
- package/dist/src/types/api-version.js +3 -3
- package/dist/src/types/element.js +3 -3
- package/dist/src/url.test.js +222 -118
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -3
- package/.yarnrc.yml +0 -1
|
@@ -1,340 +1,455 @@
|
|
|
1
|
-
|
|
2
|
-
var __assign =
|
|
3
|
-
|
|
1
|
+
'use strict';
|
|
2
|
+
var __assign =
|
|
3
|
+
(this && this.__assign) ||
|
|
4
|
+
function () {
|
|
5
|
+
__assign =
|
|
6
|
+
Object.assign ||
|
|
7
|
+
function (t) {
|
|
4
8
|
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
t[p] = s[p];
|
|
9
|
+
s = arguments[i];
|
|
10
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
|
|
8
11
|
}
|
|
9
12
|
return t;
|
|
10
|
-
|
|
13
|
+
};
|
|
11
14
|
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
|
-
var __generator =
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
15
|
+
};
|
|
16
|
+
var __generator =
|
|
17
|
+
(this && this.__generator) ||
|
|
18
|
+
function (thisArg, body) {
|
|
19
|
+
var _ = {
|
|
20
|
+
label: 0,
|
|
21
|
+
sent: function () {
|
|
22
|
+
if (t[0] & 1) throw t[1];
|
|
23
|
+
return t[1];
|
|
24
|
+
},
|
|
25
|
+
trys: [],
|
|
26
|
+
ops: [],
|
|
27
|
+
},
|
|
28
|
+
f,
|
|
29
|
+
y,
|
|
30
|
+
t,
|
|
31
|
+
g;
|
|
32
|
+
return (
|
|
33
|
+
(g = { next: verb(0), throw: verb(1), return: verb(2) }),
|
|
34
|
+
typeof Symbol === 'function' &&
|
|
35
|
+
(g[Symbol.iterator] = function () {
|
|
36
|
+
return this;
|
|
37
|
+
}),
|
|
38
|
+
g
|
|
39
|
+
);
|
|
40
|
+
function verb(n) {
|
|
41
|
+
return function (v) {
|
|
42
|
+
return step([n, v]);
|
|
43
|
+
};
|
|
44
|
+
}
|
|
17
45
|
function step(op) {
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
46
|
+
if (f) throw new TypeError('Generator is already executing.');
|
|
47
|
+
while ((g && ((g = 0), op[0] && (_ = 0)), _))
|
|
48
|
+
try {
|
|
49
|
+
if (
|
|
50
|
+
((f = 1),
|
|
51
|
+
y &&
|
|
52
|
+
(t =
|
|
53
|
+
op[0] & 2
|
|
54
|
+
? y['return']
|
|
55
|
+
: op[0]
|
|
56
|
+
? y['throw'] || ((t = y['return']) && t.call(y), 0)
|
|
57
|
+
: y.next) &&
|
|
58
|
+
!(t = t.call(y, op[1])).done)
|
|
59
|
+
)
|
|
60
|
+
return t;
|
|
61
|
+
if (((y = 0), t)) op = [op[0] & 2, t.value];
|
|
62
|
+
switch (op[0]) {
|
|
63
|
+
case 0:
|
|
64
|
+
case 1:
|
|
65
|
+
t = op;
|
|
66
|
+
break;
|
|
67
|
+
case 4:
|
|
68
|
+
_.label++;
|
|
69
|
+
return { value: op[1], done: false };
|
|
70
|
+
case 5:
|
|
71
|
+
_.label++;
|
|
72
|
+
y = op[1];
|
|
73
|
+
op = [0];
|
|
74
|
+
continue;
|
|
75
|
+
case 7:
|
|
76
|
+
op = _.ops.pop();
|
|
77
|
+
_.trys.pop();
|
|
78
|
+
continue;
|
|
79
|
+
default:
|
|
80
|
+
if (
|
|
81
|
+
!((t = _.trys), (t = t.length > 0 && t[t.length - 1])) &&
|
|
82
|
+
(op[0] === 6 || op[0] === 2)
|
|
83
|
+
) {
|
|
84
|
+
_ = 0;
|
|
85
|
+
continue;
|
|
86
|
+
}
|
|
87
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) {
|
|
88
|
+
_.label = op[1];
|
|
89
|
+
break;
|
|
90
|
+
}
|
|
91
|
+
if (op[0] === 6 && _.label < t[1]) {
|
|
92
|
+
_.label = t[1];
|
|
93
|
+
t = op;
|
|
94
|
+
break;
|
|
95
|
+
}
|
|
96
|
+
if (t && _.label < t[2]) {
|
|
97
|
+
_.label = t[2];
|
|
98
|
+
_.ops.push(op);
|
|
99
|
+
break;
|
|
100
|
+
}
|
|
101
|
+
if (t[2]) _.ops.pop();
|
|
102
|
+
_.trys.pop();
|
|
103
|
+
continue;
|
|
104
|
+
}
|
|
105
|
+
op = body.call(thisArg, _);
|
|
106
|
+
} catch (e) {
|
|
107
|
+
op = [6, e];
|
|
108
|
+
y = 0;
|
|
109
|
+
} finally {
|
|
110
|
+
f = t = 0;
|
|
111
|
+
}
|
|
112
|
+
if (op[0] & 5) throw op[1];
|
|
113
|
+
return { value: op[0] ? op[1] : void 0, done: true };
|
|
38
114
|
}
|
|
39
|
-
};
|
|
40
|
-
var __spreadArray =
|
|
41
|
-
|
|
115
|
+
};
|
|
116
|
+
var __spreadArray =
|
|
117
|
+
(this && this.__spreadArray) ||
|
|
118
|
+
function (to, from, pack) {
|
|
119
|
+
if (pack || arguments.length === 2)
|
|
120
|
+
for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
42
121
|
if (ar || !(i in from)) {
|
|
43
|
-
|
|
44
|
-
|
|
122
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
123
|
+
ar[i] = from[i];
|
|
45
124
|
}
|
|
46
|
-
|
|
125
|
+
}
|
|
47
126
|
return to.concat(ar || Array.prototype.slice.call(from));
|
|
48
|
-
};
|
|
49
|
-
var __values =
|
|
50
|
-
|
|
127
|
+
};
|
|
128
|
+
var __values =
|
|
129
|
+
(this && this.__values) ||
|
|
130
|
+
function (o) {
|
|
131
|
+
var s = typeof Symbol === 'function' && Symbol.iterator,
|
|
132
|
+
m = s && o[s],
|
|
133
|
+
i = 0;
|
|
51
134
|
if (m) return m.call(o);
|
|
52
|
-
if (o && typeof o.length ===
|
|
135
|
+
if (o && typeof o.length === 'number')
|
|
136
|
+
return {
|
|
53
137
|
next: function () {
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
throw new TypeError(s ?
|
|
59
|
-
};
|
|
60
|
-
Object.defineProperty(exports,
|
|
138
|
+
if (o && i >= o.length) o = void 0;
|
|
139
|
+
return { value: o && o[i++], done: !o };
|
|
140
|
+
},
|
|
141
|
+
};
|
|
142
|
+
throw new TypeError(s ? 'Object is not iterable.' : 'Symbol.iterator is not defined.');
|
|
143
|
+
};
|
|
144
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
61
145
|
var Limit;
|
|
62
146
|
(function (Limit) {
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
147
|
+
Limit[(Limit['All'] = 0)] = 'All';
|
|
148
|
+
Limit[(Limit['Two'] = 1)] = 'Two';
|
|
149
|
+
Limit[(Limit['One'] = 2)] = 'One';
|
|
66
150
|
})(Limit || (Limit = {}));
|
|
67
151
|
var config;
|
|
68
152
|
var rootDocument;
|
|
69
153
|
function default_1(input, options) {
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
154
|
+
if (input.nodeType !== Node.ELEMENT_NODE) {
|
|
155
|
+
throw new Error("Can't generate CSS selector for non-element node type.");
|
|
156
|
+
}
|
|
157
|
+
if ('html' === input.tagName.toLowerCase()) {
|
|
158
|
+
return input.tagName.toLowerCase();
|
|
159
|
+
}
|
|
160
|
+
var defaults = {
|
|
161
|
+
root: document.body,
|
|
162
|
+
idName: function (name) {
|
|
163
|
+
return true;
|
|
164
|
+
},
|
|
165
|
+
className: function (name) {
|
|
166
|
+
return true;
|
|
167
|
+
},
|
|
168
|
+
tagName: function (name) {
|
|
169
|
+
return true;
|
|
170
|
+
},
|
|
171
|
+
seedMinLength: 1,
|
|
172
|
+
optimizedMinLength: 2,
|
|
173
|
+
threshold: 1000,
|
|
174
|
+
};
|
|
175
|
+
config = __assign(__assign({}, defaults), options);
|
|
176
|
+
rootDocument = findRootDocument(config.root, defaults);
|
|
177
|
+
var path = bottomUpSearch(input, Limit.All, function () {
|
|
178
|
+
return bottomUpSearch(input, Limit.Two, function () {
|
|
179
|
+
return bottomUpSearch(input, Limit.One);
|
|
89
180
|
});
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
return selector(path);
|
|
96
|
-
}
|
|
97
|
-
else {
|
|
98
|
-
throw new Error("Selector was not found.");
|
|
181
|
+
});
|
|
182
|
+
if (path) {
|
|
183
|
+
var optimized = sort(optimize(path, input));
|
|
184
|
+
if (optimized.length > 0) {
|
|
185
|
+
path = optimized[0];
|
|
99
186
|
}
|
|
187
|
+
return selector(path);
|
|
188
|
+
} else {
|
|
189
|
+
throw new Error('Selector was not found.');
|
|
190
|
+
}
|
|
100
191
|
}
|
|
101
192
|
exports.default = default_1;
|
|
102
193
|
function findRootDocument(rootNode, defaults) {
|
|
103
|
-
|
|
104
|
-
return rootNode;
|
|
105
|
-
}
|
|
106
|
-
if (rootNode === defaults.root) {
|
|
107
|
-
return rootNode.ownerDocument;
|
|
108
|
-
}
|
|
194
|
+
if (rootNode.nodeType === Node.DOCUMENT_NODE) {
|
|
109
195
|
return rootNode;
|
|
196
|
+
}
|
|
197
|
+
if (rootNode === defaults.root) {
|
|
198
|
+
return rootNode.ownerDocument;
|
|
199
|
+
}
|
|
200
|
+
return rootNode;
|
|
110
201
|
}
|
|
111
202
|
function bottomUpSearch(input, limit, fallback) {
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
}
|
|
148
|
-
current = current.parentElement;
|
|
149
|
-
i++;
|
|
150
|
-
};
|
|
151
|
-
while (current && current !== config.root.parentElement) {
|
|
152
|
-
var state_1 = _loop_1();
|
|
153
|
-
if (state_1 === "break")
|
|
154
|
-
break;
|
|
203
|
+
var path = null;
|
|
204
|
+
var stack = [];
|
|
205
|
+
var current = input;
|
|
206
|
+
var i = 0;
|
|
207
|
+
var _loop_1 = function () {
|
|
208
|
+
var level = maybe(id(current)) ||
|
|
209
|
+
maybe.apply(void 0, classNames(current)) ||
|
|
210
|
+
maybe(tagName(current)) || [any()];
|
|
211
|
+
var nth = index(current);
|
|
212
|
+
if (limit === Limit.All) {
|
|
213
|
+
if (nth) {
|
|
214
|
+
level = level.concat(
|
|
215
|
+
level.filter(dispensableNth).map(function (node) {
|
|
216
|
+
return nthChild(node, nth);
|
|
217
|
+
})
|
|
218
|
+
);
|
|
219
|
+
}
|
|
220
|
+
} else if (limit === Limit.Two) {
|
|
221
|
+
level = level.slice(0, 1);
|
|
222
|
+
if (nth) {
|
|
223
|
+
level = level.concat(
|
|
224
|
+
level.filter(dispensableNth).map(function (node) {
|
|
225
|
+
return nthChild(node, nth);
|
|
226
|
+
})
|
|
227
|
+
);
|
|
228
|
+
}
|
|
229
|
+
} else if (limit === Limit.One) {
|
|
230
|
+
var node = (level = level.slice(0, 1))[0];
|
|
231
|
+
if (nth && dispensableNth(node)) {
|
|
232
|
+
level = [nthChild(node, nth)];
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
for (var _i = 0, level_1 = level; _i < level_1.length; _i++) {
|
|
236
|
+
var node = level_1[_i];
|
|
237
|
+
node.level = i;
|
|
155
238
|
}
|
|
156
|
-
|
|
157
|
-
|
|
239
|
+
stack.push(level);
|
|
240
|
+
if (stack.length >= config.seedMinLength) {
|
|
241
|
+
path = findUniquePath(stack, fallback);
|
|
242
|
+
if (path) {
|
|
243
|
+
return 'break';
|
|
244
|
+
}
|
|
158
245
|
}
|
|
159
|
-
|
|
246
|
+
current = current.parentElement;
|
|
247
|
+
i++;
|
|
248
|
+
};
|
|
249
|
+
while (current && current !== config.root.parentElement) {
|
|
250
|
+
var state_1 = _loop_1();
|
|
251
|
+
if (state_1 === 'break') break;
|
|
252
|
+
}
|
|
253
|
+
if (!path) {
|
|
254
|
+
path = findUniquePath(stack, fallback);
|
|
255
|
+
}
|
|
256
|
+
return path;
|
|
160
257
|
}
|
|
161
258
|
function findUniquePath(stack, fallback) {
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
259
|
+
var paths = sort(combinations(stack));
|
|
260
|
+
if (paths.length > config.threshold) {
|
|
261
|
+
return fallback ? fallback() : null;
|
|
262
|
+
}
|
|
263
|
+
for (var _i = 0, paths_1 = paths; _i < paths_1.length; _i++) {
|
|
264
|
+
var candidate = paths_1[_i];
|
|
265
|
+
if (unique(candidate)) {
|
|
266
|
+
return candidate;
|
|
165
267
|
}
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
if (unique(candidate)) {
|
|
169
|
-
return candidate;
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
return null;
|
|
268
|
+
}
|
|
269
|
+
return null;
|
|
173
270
|
}
|
|
174
271
|
function selector(path) {
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
query = "".concat(path[i].name, " ").concat(query);
|
|
184
|
-
}
|
|
185
|
-
node = path[i];
|
|
272
|
+
var node = path[0];
|
|
273
|
+
var query = node.name;
|
|
274
|
+
for (var i = 1; i < path.length; i++) {
|
|
275
|
+
var level = path[i].level || 0;
|
|
276
|
+
if (node.level === level - 1) {
|
|
277
|
+
query = ''.concat(path[i].name, ' > ').concat(query);
|
|
278
|
+
} else {
|
|
279
|
+
query = ''.concat(path[i].name, ' ').concat(query);
|
|
186
280
|
}
|
|
187
|
-
|
|
281
|
+
node = path[i];
|
|
282
|
+
}
|
|
283
|
+
return query;
|
|
188
284
|
}
|
|
189
285
|
function penalty(path) {
|
|
190
|
-
|
|
286
|
+
return path
|
|
287
|
+
.map(function (node) {
|
|
288
|
+
return node.penalty;
|
|
289
|
+
})
|
|
290
|
+
.reduce(function (acc, i) {
|
|
291
|
+
return acc + i;
|
|
292
|
+
}, 0);
|
|
191
293
|
}
|
|
192
294
|
function unique(path) {
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
295
|
+
switch (rootDocument.querySelectorAll(selector(path)).length) {
|
|
296
|
+
case 0:
|
|
297
|
+
throw new Error("Can't select any node with this selector: ".concat(selector(path)));
|
|
298
|
+
case 1:
|
|
299
|
+
return true;
|
|
300
|
+
default:
|
|
301
|
+
return false;
|
|
302
|
+
}
|
|
201
303
|
}
|
|
202
304
|
function id(input) {
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
305
|
+
var elementId = input.getAttribute('id');
|
|
306
|
+
if (elementId && config.idName(elementId)) {
|
|
307
|
+
return {
|
|
308
|
+
name: '#' + elementId,
|
|
309
|
+
penalty: 0,
|
|
310
|
+
};
|
|
311
|
+
}
|
|
312
|
+
return null;
|
|
211
313
|
}
|
|
212
314
|
function classNames(input) {
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
315
|
+
var names = [].slice.call(input.classList).filter(config.className);
|
|
316
|
+
return names.map(function (name) {
|
|
317
|
+
return {
|
|
318
|
+
name: '.' + name,
|
|
319
|
+
penalty: 1,
|
|
320
|
+
};
|
|
321
|
+
});
|
|
218
322
|
}
|
|
219
323
|
function tagName(input) {
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
return {
|
|
223
|
-
name: name,
|
|
224
|
-
penalty: 2,
|
|
225
|
-
};
|
|
226
|
-
}
|
|
227
|
-
return null;
|
|
228
|
-
}
|
|
229
|
-
function any() {
|
|
324
|
+
var name = input.tagName.toLowerCase();
|
|
325
|
+
if (config.tagName(name)) {
|
|
230
326
|
return {
|
|
231
|
-
|
|
232
|
-
|
|
327
|
+
name: name,
|
|
328
|
+
penalty: 2,
|
|
233
329
|
};
|
|
330
|
+
}
|
|
331
|
+
return null;
|
|
332
|
+
}
|
|
333
|
+
function any() {
|
|
334
|
+
return {
|
|
335
|
+
name: '*',
|
|
336
|
+
penalty: 3,
|
|
337
|
+
};
|
|
234
338
|
}
|
|
235
339
|
function index(input) {
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
340
|
+
var parent = input.parentNode;
|
|
341
|
+
if (!parent) {
|
|
342
|
+
return null;
|
|
343
|
+
}
|
|
344
|
+
var child = parent.firstChild;
|
|
345
|
+
if (!child) {
|
|
346
|
+
return null;
|
|
347
|
+
}
|
|
348
|
+
var i = 0;
|
|
349
|
+
while (child) {
|
|
350
|
+
if (child.nodeType === Node.ELEMENT_NODE) {
|
|
351
|
+
i++;
|
|
243
352
|
}
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
if (child.nodeType === Node.ELEMENT_NODE) {
|
|
247
|
-
i++;
|
|
248
|
-
}
|
|
249
|
-
if (child === input) {
|
|
250
|
-
break;
|
|
251
|
-
}
|
|
252
|
-
child = child.nextSibling;
|
|
353
|
+
if (child === input) {
|
|
354
|
+
break;
|
|
253
355
|
}
|
|
254
|
-
|
|
356
|
+
child = child.nextSibling;
|
|
357
|
+
}
|
|
358
|
+
return i;
|
|
255
359
|
}
|
|
256
360
|
function nthChild(node, i) {
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
361
|
+
return {
|
|
362
|
+
name: node.name + ':nth-child('.concat(i, ')'),
|
|
363
|
+
penalty: node.penalty + 1,
|
|
364
|
+
};
|
|
261
365
|
}
|
|
262
366
|
function dispensableNth(node) {
|
|
263
|
-
|
|
367
|
+
return node.name !== 'html' && !(node.name[0] === '#');
|
|
264
368
|
}
|
|
265
369
|
function maybe() {
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
370
|
+
var level = [];
|
|
371
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
372
|
+
level[_i] = arguments[_i];
|
|
373
|
+
}
|
|
374
|
+
var list = level.filter(notEmpty);
|
|
375
|
+
if (list.length > 0) {
|
|
376
|
+
return list;
|
|
377
|
+
}
|
|
378
|
+
return null;
|
|
275
379
|
}
|
|
276
380
|
function notEmpty(value) {
|
|
277
|
-
|
|
381
|
+
return value !== null && value !== undefined;
|
|
278
382
|
}
|
|
279
383
|
function combinations(stack, path) {
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
384
|
+
var _i, _a, node;
|
|
385
|
+
if (path === void 0) {
|
|
386
|
+
path = [];
|
|
387
|
+
}
|
|
388
|
+
return __generator(this, function (_b) {
|
|
389
|
+
switch (_b.label) {
|
|
390
|
+
case 0:
|
|
391
|
+
if (!(stack.length > 0)) return [3 /*break*/, 5];
|
|
392
|
+
(_i = 0), (_a = stack[0]);
|
|
393
|
+
_b.label = 1;
|
|
394
|
+
case 1:
|
|
395
|
+
if (!(_i < _a.length)) return [3 /*break*/, 4];
|
|
396
|
+
node = _a[_i];
|
|
397
|
+
return [
|
|
398
|
+
5 /*yield**/,
|
|
399
|
+
__values(combinations(stack.slice(1, stack.length), path.concat(node))),
|
|
400
|
+
];
|
|
401
|
+
case 2:
|
|
402
|
+
_b.sent();
|
|
403
|
+
_b.label = 3;
|
|
404
|
+
case 3:
|
|
405
|
+
_i++;
|
|
406
|
+
return [3 /*break*/, 1];
|
|
407
|
+
case 4:
|
|
408
|
+
return [3 /*break*/, 7];
|
|
409
|
+
case 5:
|
|
410
|
+
return [4 /*yield*/, path];
|
|
411
|
+
case 6:
|
|
412
|
+
_b.sent();
|
|
413
|
+
_b.label = 7;
|
|
414
|
+
case 7:
|
|
415
|
+
return [2 /*return*/];
|
|
416
|
+
}
|
|
417
|
+
});
|
|
306
418
|
}
|
|
307
419
|
function sort(paths) {
|
|
308
|
-
|
|
420
|
+
return [].slice.call(paths).sort(function (a, b) {
|
|
421
|
+
return penalty(a) - penalty(b);
|
|
422
|
+
});
|
|
309
423
|
}
|
|
310
424
|
function optimize(path, input) {
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
}
|
|
425
|
+
var i, newPath;
|
|
426
|
+
return __generator(this, function (_a) {
|
|
427
|
+
switch (_a.label) {
|
|
428
|
+
case 0:
|
|
429
|
+
if (!(path.length > 2 && path.length > config.optimizedMinLength)) return [3 /*break*/, 5];
|
|
430
|
+
i = 1;
|
|
431
|
+
_a.label = 1;
|
|
432
|
+
case 1:
|
|
433
|
+
if (!(i < path.length - 1)) return [3 /*break*/, 5];
|
|
434
|
+
newPath = __spreadArray([], path, true);
|
|
435
|
+
newPath.splice(i, 1);
|
|
436
|
+
if (!(unique(newPath) && same(newPath, input))) return [3 /*break*/, 4];
|
|
437
|
+
return [4 /*yield*/, newPath];
|
|
438
|
+
case 2:
|
|
439
|
+
_a.sent();
|
|
440
|
+
return [5 /*yield**/, __values(optimize(newPath, input))];
|
|
441
|
+
case 3:
|
|
442
|
+
_a.sent();
|
|
443
|
+
_a.label = 4;
|
|
444
|
+
case 4:
|
|
445
|
+
i++;
|
|
446
|
+
return [3 /*break*/, 1];
|
|
447
|
+
case 5:
|
|
448
|
+
return [2 /*return*/];
|
|
449
|
+
}
|
|
450
|
+
});
|
|
336
451
|
}
|
|
337
452
|
function same(path, input) {
|
|
338
|
-
|
|
453
|
+
return rootDocument.querySelector(selector(path)) === input;
|
|
339
454
|
}
|
|
340
|
-
//# sourceMappingURL=finder.function.js.map
|
|
455
|
+
//# sourceMappingURL=finder.function.js.map
|