mol_wire_dom 0.0.1485 → 0.0.1486
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/node.d.ts +8 -4
- package/node.d.ts.map +1 -1
- package/node.deps.json +1 -1
- package/node.js +132 -15
- package/node.js.map +1 -1
- package/node.mjs +132 -15
- package/node.test.js +146 -37
- package/node.test.js.map +1 -1
- package/package.json +3 -2
- package/web.d.ts +8 -4
- package/web.d.ts.map +1 -1
- package/web.deps.json +1 -1
- package/web.js +143 -14
- package/web.js.map +1 -1
- package/web.mjs +143 -14
- package/web.test.js +14 -22
- package/web.test.js.map +1 -1
package/web.mjs
CHANGED
@@ -152,6 +152,16 @@ var $;
|
|
152
152
|
$.$mol_wire_affected = [];
|
153
153
|
})($ || ($ = {}));
|
154
154
|
|
155
|
+
;
|
156
|
+
"use strict";
|
157
|
+
var $;
|
158
|
+
(function ($) {
|
159
|
+
function $mol_fail_hidden(error) {
|
160
|
+
throw error;
|
161
|
+
}
|
162
|
+
$.$mol_fail_hidden = $mol_fail_hidden;
|
163
|
+
})($ || ($ = {}));
|
164
|
+
|
155
165
|
;
|
156
166
|
"use strict";
|
157
167
|
var $;
|
@@ -163,6 +173,17 @@ var $;
|
|
163
173
|
$.$mol_dev_format_register = $mol_dev_format_register;
|
164
174
|
$.$mol_dev_format_head = Symbol('$mol_dev_format_head');
|
165
175
|
$.$mol_dev_format_body = Symbol('$mol_dev_format_body');
|
176
|
+
function $mol_dev_format_button(label, click) {
|
177
|
+
return $mol_dev_format_auto({
|
178
|
+
[$.$mol_dev_format_head]() {
|
179
|
+
return $mol_dev_format_span({ color: 'cornflowerblue' }, label);
|
180
|
+
},
|
181
|
+
[$.$mol_dev_format_body]() {
|
182
|
+
Promise.resolve().then(click);
|
183
|
+
return $mol_dev_format_span({});
|
184
|
+
}
|
185
|
+
});
|
186
|
+
}
|
166
187
|
$mol_dev_format_register({
|
167
188
|
header: (val, config = false) => {
|
168
189
|
if (config)
|
@@ -180,13 +201,41 @@ var $;
|
|
180
201
|
if (typeof val === 'function') {
|
181
202
|
return $mol_dev_format_native(val);
|
182
203
|
}
|
204
|
+
if (Error.isError(val)) {
|
205
|
+
return $mol_dev_format_span({}, $mol_dev_format_native(val), ' ', $mol_dev_format_button('throw', () => $mol_fail_hidden(val)));
|
206
|
+
}
|
207
|
+
if (val instanceof Promise) {
|
208
|
+
return $.$mol_dev_format_shade($mol_dev_format_native(val), ' ', val[Symbol.toStringTag] ?? '');
|
209
|
+
}
|
183
210
|
if (Symbol.toStringTag in val) {
|
184
211
|
return $mol_dev_format_native(val);
|
185
212
|
}
|
186
213
|
return null;
|
187
214
|
},
|
188
|
-
hasBody: val =>
|
189
|
-
|
215
|
+
hasBody: (val, config = false) => {
|
216
|
+
if (config)
|
217
|
+
return false;
|
218
|
+
if (!val)
|
219
|
+
return false;
|
220
|
+
if (val[$.$mol_dev_format_body])
|
221
|
+
return true;
|
222
|
+
return false;
|
223
|
+
},
|
224
|
+
body: (val, config = false) => {
|
225
|
+
if (config)
|
226
|
+
return null;
|
227
|
+
if (!val)
|
228
|
+
return null;
|
229
|
+
if ($.$mol_dev_format_body in val) {
|
230
|
+
try {
|
231
|
+
return val[$.$mol_dev_format_body]();
|
232
|
+
}
|
233
|
+
catch (error) {
|
234
|
+
return $.$mol_dev_format_accent($mol_dev_format_native(val), '💨', $mol_dev_format_native(error), '');
|
235
|
+
}
|
236
|
+
}
|
237
|
+
return null;
|
238
|
+
},
|
190
239
|
});
|
191
240
|
function $mol_dev_format_native(obj) {
|
192
241
|
if (typeof obj === 'undefined')
|
@@ -252,6 +301,69 @@ var $;
|
|
252
301
|
$.$mol_dev_format_indent = $.$mol_dev_format_div.bind(null, {
|
253
302
|
'margin-left': '13px'
|
254
303
|
});
|
304
|
+
class Stack extends Array {
|
305
|
+
toString() {
|
306
|
+
return this.join('\n');
|
307
|
+
}
|
308
|
+
}
|
309
|
+
class Call extends Object {
|
310
|
+
type;
|
311
|
+
function;
|
312
|
+
method;
|
313
|
+
eval;
|
314
|
+
source;
|
315
|
+
offset;
|
316
|
+
pos;
|
317
|
+
object;
|
318
|
+
flags;
|
319
|
+
[Symbol.toStringTag];
|
320
|
+
constructor(call) {
|
321
|
+
super();
|
322
|
+
this.type = call.getTypeName() ?? '';
|
323
|
+
this.function = call.getFunctionName() ?? '';
|
324
|
+
this.method = call.getMethodName() ?? '';
|
325
|
+
if (this.method === this.function)
|
326
|
+
this.method = '';
|
327
|
+
this.pos = [call.getEnclosingLineNumber() ?? 0, call.getEnclosingColumnNumber() ?? 0];
|
328
|
+
this.eval = call.getEvalOrigin() ?? '';
|
329
|
+
this.source = call.getScriptNameOrSourceURL() ?? '';
|
330
|
+
this.object = call.getThis();
|
331
|
+
this.offset = call.getPosition();
|
332
|
+
const flags = [];
|
333
|
+
if (call.isAsync())
|
334
|
+
flags.push('async');
|
335
|
+
if (call.isConstructor())
|
336
|
+
flags.push('constructor');
|
337
|
+
if (call.isEval())
|
338
|
+
flags.push('eval');
|
339
|
+
if (call.isNative())
|
340
|
+
flags.push('native');
|
341
|
+
if (call.isPromiseAll())
|
342
|
+
flags.push('PromiseAll');
|
343
|
+
if (call.isToplevel())
|
344
|
+
flags.push('top');
|
345
|
+
this.flags = flags;
|
346
|
+
const type = this.type ? this.type + '.' : '';
|
347
|
+
const func = this.function || '<anon>';
|
348
|
+
const method = this.method ? ' [' + this.method + '] ' : '';
|
349
|
+
this[Symbol.toStringTag] = `${type}${func}${method}`;
|
350
|
+
}
|
351
|
+
[Symbol.toPrimitive]() {
|
352
|
+
return this.toString();
|
353
|
+
}
|
354
|
+
toString() {
|
355
|
+
const object = this.object || '';
|
356
|
+
const label = this[Symbol.toStringTag];
|
357
|
+
const source = `${this.source}:${this.pos.join(':')} #${this.offset}`;
|
358
|
+
return `\tat ${object}${label} (${source})`;
|
359
|
+
}
|
360
|
+
[$.$mol_dev_format_head]() {
|
361
|
+
return $.$mol_dev_format_div({}, $mol_dev_format_native(this), $.$mol_dev_format_shade(' '), ...this.object ? [
|
362
|
+
$mol_dev_format_native(this.object),
|
363
|
+
] : [], ...this.method ? [$.$mol_dev_format_shade(' ', ' [', this.method, ']')] : [], $.$mol_dev_format_shade(' ', this.flags.join(', ')));
|
364
|
+
}
|
365
|
+
}
|
366
|
+
Error.prepareStackTrace ??= (error, stack) => new Stack(...stack.map(call => new Call(call)));
|
255
367
|
})($ || ($ = {}));
|
256
368
|
|
257
369
|
;
|
@@ -493,16 +605,6 @@ var $;
|
|
493
605
|
$.$mol_owning_catch = $mol_owning_catch;
|
494
606
|
})($ || ($ = {}));
|
495
607
|
|
496
|
-
;
|
497
|
-
"use strict";
|
498
|
-
var $;
|
499
|
-
(function ($) {
|
500
|
-
function $mol_fail_hidden(error) {
|
501
|
-
throw error;
|
502
|
-
}
|
503
|
-
$.$mol_fail_hidden = $mol_fail_hidden;
|
504
|
-
})($ || ($ = {}));
|
505
|
-
|
506
608
|
;
|
507
609
|
"use strict";
|
508
610
|
|
@@ -997,7 +1099,7 @@ var $;
|
|
997
1099
|
if (left instanceof RegExp)
|
998
1100
|
return left.source === right.source && left.flags === right.flags;
|
999
1101
|
if (left instanceof Error)
|
1000
|
-
return left.message === right.message && left.stack
|
1102
|
+
return left.message === right.message && $mol_compare_deep(left.stack, right.stack);
|
1001
1103
|
let left_cache = $.$mol_compare_deep_cache.get(left);
|
1002
1104
|
if (left_cache) {
|
1003
1105
|
const right_cache = left_cache.get(right);
|
@@ -1283,6 +1385,33 @@ var $;
|
|
1283
1385
|
$.$mol_fail_catch = $mol_fail_catch;
|
1284
1386
|
})($ || ($ = {}));
|
1285
1387
|
|
1388
|
+
;
|
1389
|
+
"use strict";
|
1390
|
+
var $;
|
1391
|
+
(function ($) {
|
1392
|
+
let error;
|
1393
|
+
let result;
|
1394
|
+
let handler;
|
1395
|
+
function $mol_try(handler2) {
|
1396
|
+
handler = handler2;
|
1397
|
+
error = undefined;
|
1398
|
+
result = undefined;
|
1399
|
+
window.dispatchEvent(new Event('$mol_try'));
|
1400
|
+
const error2 = error;
|
1401
|
+
const result2 = result;
|
1402
|
+
error = undefined;
|
1403
|
+
result = undefined;
|
1404
|
+
return error2 || result2;
|
1405
|
+
}
|
1406
|
+
$.$mol_try = $mol_try;
|
1407
|
+
self.addEventListener('$mol_try', (event) => {
|
1408
|
+
result = handler();
|
1409
|
+
}, true);
|
1410
|
+
self.addEventListener('error', (event) => {
|
1411
|
+
error = event.error;
|
1412
|
+
}, true);
|
1413
|
+
})($ || ($ = {}));
|
1414
|
+
|
1286
1415
|
;
|
1287
1416
|
"use strict";
|
1288
1417
|
var $;
|
@@ -1292,7 +1421,7 @@ var $;
|
|
1292
1421
|
return false;
|
1293
1422
|
if (!$mol_fail_catch(error))
|
1294
1423
|
return false;
|
1295
|
-
|
1424
|
+
$mol_try(() => { $mol_fail_hidden(error); });
|
1296
1425
|
return true;
|
1297
1426
|
}
|
1298
1427
|
$.$mol_fail_log = $mol_fail_log;
|
package/web.test.js
CHANGED
@@ -783,7 +783,7 @@ var $;
|
|
783
783
|
catch (error) {
|
784
784
|
$.$mol_fail = fail;
|
785
785
|
if (typeof ErrorRight === 'string') {
|
786
|
-
$mol_assert_equal(error.message, ErrorRight);
|
786
|
+
$mol_assert_equal(error.message ?? error, ErrorRight);
|
787
787
|
}
|
788
788
|
else {
|
789
789
|
$mol_assert_equal(error instanceof ErrorRight, true);
|
@@ -807,7 +807,7 @@ var $;
|
|
807
807
|
continue;
|
808
808
|
if (!$mol_compare_deep(args[i], args[j]))
|
809
809
|
continue;
|
810
|
-
$mol_fail(new Error(`
|
810
|
+
return $mol_fail(new Error(`Uniquesess assertion failure`, { cause: { [i]: args[i], [i]: args[i] } }));
|
811
811
|
}
|
812
812
|
}
|
813
813
|
}
|
@@ -818,29 +818,10 @@ var $;
|
|
818
818
|
continue;
|
819
819
|
if (args[0] instanceof $mol_dom_context.Element && args[i] instanceof $mol_dom_context.Element && args[0].outerHTML === args[i].outerHTML)
|
820
820
|
continue;
|
821
|
-
return $mol_fail(new Error(`args[0]
|
821
|
+
return $mol_fail(new Error(`Equality assertion failure`, { cause: { 0: args[0], [i]: args[i] } }));
|
822
822
|
}
|
823
823
|
}
|
824
824
|
$.$mol_assert_equal = $mol_assert_equal;
|
825
|
-
const print = (val) => {
|
826
|
-
if (!val)
|
827
|
-
return val;
|
828
|
-
if (typeof val === 'bigint')
|
829
|
-
return String(val) + 'n';
|
830
|
-
if (typeof val === 'symbol')
|
831
|
-
return `Symbol(${val.description})`;
|
832
|
-
if (typeof val !== 'object')
|
833
|
-
return val;
|
834
|
-
if ('outerHTML' in val)
|
835
|
-
return val.outerHTML;
|
836
|
-
try {
|
837
|
-
return JSON.stringify(val, (k, v) => typeof v === 'bigint' ? String(v) : v, '\t');
|
838
|
-
}
|
839
|
-
catch (error) {
|
840
|
-
console.error(error);
|
841
|
-
return val;
|
842
|
-
}
|
843
|
-
};
|
844
825
|
})($ || ($ = {}));
|
845
826
|
|
846
827
|
;
|
@@ -1247,6 +1228,17 @@ var $;
|
|
1247
1228
|
;
|
1248
1229
|
"use strict";
|
1249
1230
|
|
1231
|
+
;
|
1232
|
+
"use strict";
|
1233
|
+
var $;
|
1234
|
+
(function ($) {
|
1235
|
+
$mol_test({
|
1236
|
+
'return result without errors'() {
|
1237
|
+
$mol_assert_equal($mol_try(() => false), false);
|
1238
|
+
},
|
1239
|
+
});
|
1240
|
+
})($ || ($ = {}));
|
1241
|
+
|
1250
1242
|
;
|
1251
1243
|
"use strict";
|
1252
1244
|
var $;
|