@yuneta/gobj-js 7.26.16 → 7.26.17
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/gobj-js.cjs.js +28 -17
- package/dist/gobj-js.cjs.js.map +1 -1
- package/dist/gobj-js.cjs.min.js +877 -871
- package/dist/gobj-js.cjs.min.js.map +1 -1
- package/dist/gobj-js.es.js +28 -17
- package/dist/gobj-js.es.js.map +1 -1
- package/dist/gobj-js.es.min.js +915 -909
- package/dist/gobj-js.es.min.js.map +1 -1
- package/dist/gobj-js.iife.js +28 -17
- package/dist/gobj-js.iife.js.map +1 -1
- package/dist/gobj-js.iife.min.js +877 -871
- package/dist/gobj-js.iife.min.js.map +1 -1
- package/dist/gobj-js.umd.js +28 -17
- package/dist/gobj-js.umd.js.map +1 -1
- package/dist/gobj-js.umd.min.js +877 -871
- package/dist/gobj-js.umd.min.js.map +1 -1
- package/package.json +1 -1
package/dist/gobj-js.umd.min.js
CHANGED
|
@@ -177,7 +177,7 @@
|
|
|
177
177
|
}
|
|
178
178
|
}, S = class {
|
|
179
179
|
constructor(e, t, n, r, l) {
|
|
180
|
-
this.__refs__ = 0, this.gclass = t, this.parent = null, this.dl_children = [], this.dl_subscriptions = [], this.dl_subscribings = [], this.current_state = t.dl_states[0], this.last_state = null, this.obflag = 0, this.gobj_flag = Number(l) || 0, this.gobj_name = e, this.jn_attrs = null, this.jn_stats = {}, this.jn_user_data = {}, this.full_name = null, this.short_name = null, this.priv =
|
|
180
|
+
this.__refs__ = 0, this.gclass = t, this.parent = null, this.dl_children = [], this.dl_subscriptions = [], this.dl_subscribings = [], this.current_state = t.dl_states[0], this.last_state = null, this.obflag = 0, this.gobj_flag = Number(l) || 0, this.gobj_name = e, this.jn_attrs = null, this.jn_stats = {}, this.jn_user_data = {}, this.full_name = null, this.short_name = null, this.priv = Mn(t.priv), this.running = !1, this.playing = !1, this.disabled = !1, this.bottom_gobj = null, this.trace_level = 0, this.no_trace_level = 0;
|
|
181
181
|
}
|
|
182
182
|
}, w = Object.freeze({
|
|
183
183
|
gcflag_manual_start: 1,
|
|
@@ -223,7 +223,7 @@
|
|
|
223
223
|
};
|
|
224
224
|
var C = 1;
|
|
225
225
|
function L(e) {
|
|
226
|
-
|
|
226
|
+
nr(e) && (e = JSON.stringify(e)), jn(" ".repeat(Math.max(1, 2 * h)) + String(e));
|
|
227
227
|
}
|
|
228
228
|
var P = Object.freeze({
|
|
229
229
|
TRACE_MACHINE: 65536,
|
|
@@ -325,7 +325,7 @@
|
|
|
325
325
|
return n;
|
|
326
326
|
}
|
|
327
327
|
function W(e, t, n) {
|
|
328
|
-
if (
|
|
328
|
+
if (ur(e)) return void 0 === n ? 268369920 : 65535;
|
|
329
329
|
if (/^[0-9]+$/.test(String(e))) {
|
|
330
330
|
const t = Number(e);
|
|
331
331
|
if (t) return t;
|
|
@@ -336,7 +336,7 @@
|
|
|
336
336
|
for (let n = 0; n < t.length && n < 16; n++) if (t[n] && t[n][0] === e) return 1 << n;
|
|
337
337
|
}
|
|
338
338
|
return 0;
|
|
339
|
-
}(String(e), n) || (
|
|
339
|
+
}(String(e), n) || (Tn(`${t}: trace level NOT FOUND: ${e}`), 0);
|
|
340
340
|
}
|
|
341
341
|
function x(e) {
|
|
342
342
|
if (G) return 4294967295;
|
|
@@ -392,32 +392,32 @@
|
|
|
392
392
|
return M(V, null);
|
|
393
393
|
}
|
|
394
394
|
function re(e) {
|
|
395
|
-
const t =
|
|
396
|
-
return t ? M(t.trace_level | F, t.s_user_trace_level) : (
|
|
395
|
+
const t = lr(e) ? Oe(e) : e;
|
|
396
|
+
return t ? M(t.trace_level | F, t.s_user_trace_level) : (Tn(`gobj_get_gclass_trace_level: gclass NOT FOUND: ${e}`), []);
|
|
397
397
|
}
|
|
398
398
|
function le(e) {
|
|
399
|
-
const t =
|
|
400
|
-
return t ? M(t.trace_level, t.s_user_trace_level) : (
|
|
399
|
+
const t = lr(e) ? Oe(e) : e;
|
|
400
|
+
return t ? M(t.trace_level, t.s_user_trace_level) : (Tn(`gobj_get_gclass_trace_level2: gclass NOT FOUND: ${e}`), []);
|
|
401
401
|
}
|
|
402
402
|
function oe(e) {
|
|
403
|
-
const t =
|
|
404
|
-
return t ? M(t.no_trace_level, t.s_user_trace_level) : (
|
|
403
|
+
const t = lr(e) ? Oe(e) : e;
|
|
404
|
+
return t ? M(t.no_trace_level, t.s_user_trace_level) : (Tn(`gobj_get_gclass_trace_no_level: gclass NOT FOUND: ${e}`), []);
|
|
405
405
|
}
|
|
406
406
|
function se(e, t, n) {
|
|
407
|
-
const r =
|
|
408
|
-
if (!r) return
|
|
407
|
+
const r = lr(e) ? Oe(e) : e;
|
|
408
|
+
if (!r) return Tn(`gobj_set_gclass_trace: gclass NOT FOUND: ${e}`), -1;
|
|
409
409
|
const l = null === t ? 4294967295 : W(t, "gobj_set_gclass_trace", r.s_user_trace_level || null);
|
|
410
410
|
return l ? (n ? r.trace_level |= l : r.trace_level &= ~l, 0) : -1;
|
|
411
411
|
}
|
|
412
412
|
function ie(e, t, n) {
|
|
413
|
-
const r =
|
|
414
|
-
if (!r) return
|
|
413
|
+
const r = lr(e) ? Oe(e) : e;
|
|
414
|
+
if (!r) return Tn(`gobj_set_gclass_no_trace: gclass NOT FOUND: ${e}`), -1;
|
|
415
415
|
const l = null === t ? 4294967295 : W(t, "gobj_set_gclass_no_trace", r.s_user_trace_level || null);
|
|
416
416
|
return l ? (n ? r.no_trace_level |= l : r.no_trace_level &= ~l, 0) : -1;
|
|
417
417
|
}
|
|
418
418
|
function _e(e, t) {
|
|
419
419
|
let n = {};
|
|
420
|
-
if (!
|
|
420
|
+
if (!rr(t)) return Tn("sdata_desc MUST be an array"), Sn(t), n;
|
|
421
421
|
for (let r = 0; r < t.length; r++) {
|
|
422
422
|
const l = t[r];
|
|
423
423
|
l.name && ae(e, n, l);
|
|
@@ -431,85 +431,85 @@
|
|
|
431
431
|
r = String(l);
|
|
432
432
|
break;
|
|
433
433
|
case y.DTP_BOOLEAN:
|
|
434
|
-
r =
|
|
434
|
+
r = cr(l);
|
|
435
435
|
break;
|
|
436
436
|
case y.DTP_INTEGER:
|
|
437
|
-
r = parseInt(l), isNaN(r) &&
|
|
437
|
+
r = parseInt(l), isNaN(r) && Tn(`${et(e)}: attr NaN: ${n.name}`);
|
|
438
438
|
break;
|
|
439
439
|
case y.DTP_REAL:
|
|
440
|
-
r = Number(l), isNaN(r) &&
|
|
440
|
+
r = Number(l), isNaN(r) && Tn(`${et(e)}: attr NaN: ${n.name}`);
|
|
441
441
|
break;
|
|
442
442
|
case y.DTP_LIST:
|
|
443
|
-
if (
|
|
443
|
+
if (lr(l)) try {
|
|
444
444
|
r = JSON.parse(l);
|
|
445
445
|
} catch (e) {
|
|
446
|
-
|
|
446
|
+
Tn(`JSON parse error: ${e.message}`);
|
|
447
447
|
}
|
|
448
448
|
else r = l;
|
|
449
|
-
|
|
449
|
+
rr(r) || (r = []);
|
|
450
450
|
break;
|
|
451
451
|
case y.DTP_DICT:
|
|
452
|
-
if (
|
|
452
|
+
if (lr(l)) try {
|
|
453
453
|
r = JSON.parse(l);
|
|
454
454
|
} catch (e) {
|
|
455
|
-
|
|
455
|
+
Tn(`JSON parse error: ${e.message}`);
|
|
456
456
|
}
|
|
457
457
|
else r = l;
|
|
458
|
-
|
|
458
|
+
nr(r) || (r = {});
|
|
459
459
|
break;
|
|
460
460
|
case y.DTP_JSON:
|
|
461
461
|
if ("" === l || void 0 === l) r = null;
|
|
462
|
-
else if (
|
|
462
|
+
else if (lr(l)) try {
|
|
463
463
|
r = JSON.parse(l);
|
|
464
464
|
} catch (e) {
|
|
465
|
-
|
|
465
|
+
Tn(`JSON parse error: ${e.message}`);
|
|
466
466
|
}
|
|
467
467
|
else r = l;
|
|
468
468
|
break;
|
|
469
469
|
case y.DTP_POINTER: r = l;
|
|
470
470
|
}
|
|
471
|
-
return void 0 === r && (
|
|
471
|
+
return void 0 === r && (Tn(`default_value WRONG, it: ${n.name}, value: ${n.default_value}`), r = null), t[n.name] = r, 0;
|
|
472
472
|
}
|
|
473
473
|
function ue(e, t, n, r) {
|
|
474
474
|
let l;
|
|
475
475
|
switch (n.type) {
|
|
476
476
|
case y.DTP_STRING:
|
|
477
477
|
if (null == r) l = "";
|
|
478
|
-
else if (
|
|
478
|
+
else if (lr(r)) l = String(r);
|
|
479
479
|
else {
|
|
480
480
|
let e = JSON.stringify(r);
|
|
481
481
|
e && (l = String(e));
|
|
482
482
|
}
|
|
483
483
|
break;
|
|
484
484
|
case y.DTP_BOOLEAN:
|
|
485
|
-
l =
|
|
485
|
+
l = cr(r);
|
|
486
486
|
break;
|
|
487
487
|
case y.DTP_INTEGER:
|
|
488
|
-
if (l = parseInt(r), isNaN(l)) return
|
|
488
|
+
if (l = parseInt(r), isNaN(l)) return Tn(`${et(e)}: attr NaN: ${n.name}`), -1;
|
|
489
489
|
break;
|
|
490
490
|
case y.DTP_REAL:
|
|
491
|
-
if (l = Number(r), isNaN(l)) return
|
|
491
|
+
if (l = Number(r), isNaN(l)) return Tn(`${et(e)}: attr NaN: ${n.name}`), -1;
|
|
492
492
|
break;
|
|
493
493
|
case y.DTP_LIST:
|
|
494
|
-
if (
|
|
494
|
+
if (lr(r)) try {
|
|
495
495
|
l = JSON.parse(r);
|
|
496
496
|
} catch (e) {
|
|
497
|
-
|
|
497
|
+
Tn(`JSON parse error: ${e.message}`);
|
|
498
498
|
}
|
|
499
499
|
else l = r;
|
|
500
|
-
if (!
|
|
500
|
+
if (!rr(l)) return Tn(`attr must be an array: ${n.name}`), -1;
|
|
501
501
|
break;
|
|
502
502
|
case y.DTP_DICT:
|
|
503
|
-
if (
|
|
503
|
+
if (lr(r)) try {
|
|
504
504
|
l = JSON.parse(r);
|
|
505
505
|
} catch (e) {
|
|
506
|
-
|
|
506
|
+
Tn(`JSON parse error: ${e.message}`);
|
|
507
507
|
}
|
|
508
508
|
else l = r;
|
|
509
|
-
if (!
|
|
509
|
+
if (!nr(l)) return Tn(`attr must be an object: ${n.name}`), -1;
|
|
510
510
|
break;
|
|
511
511
|
case y.DTP_JSON:
|
|
512
|
-
if (l = r,
|
|
512
|
+
if (l = r, lr(r)) {
|
|
513
513
|
const e = r.trim();
|
|
514
514
|
if (e.startsWith("{") || e.startsWith("[")) try {
|
|
515
515
|
l = JSON.parse(e);
|
|
@@ -520,46 +520,46 @@
|
|
|
520
520
|
break;
|
|
521
521
|
case y.DTP_POINTER: l = r;
|
|
522
522
|
}
|
|
523
|
-
return void 0 === l &&
|
|
523
|
+
return void 0 === l && Tn(`${et(e)}: attr undefined: ${n.name}`), t[n.name] = l, nr(e.priv) && Object.prototype.hasOwnProperty.call(e.priv, n.name) && (e.priv[n.name] = l), e.obflag & $.obflag_created && !(e.obflag & $.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, n.name), 0;
|
|
524
524
|
}
|
|
525
525
|
function ce(e) {
|
|
526
526
|
return e.jn_attrs;
|
|
527
527
|
}
|
|
528
528
|
function fe(e, t, n) {
|
|
529
|
-
return ht(e, t) ? ce(e) : e && e.bottom_gobj ? fe(e.bottom_gobj, t, n) : (n &&
|
|
529
|
+
return ht(e, t) ? ce(e) : e && e.bottom_gobj ? fe(e.bottom_gobj, t, n) : (n && Tn(`GClass Attribute NOT FOUND: ${et(e)}, attr ${t}`), null);
|
|
530
530
|
}
|
|
531
531
|
function ge(e, t, n) {
|
|
532
|
-
if (!(e && e instanceof O)) return n &&
|
|
532
|
+
if (!(e && e instanceof O)) return n && Tn("gclass NULL"), null;
|
|
533
533
|
if (!t) return e.attrs_table;
|
|
534
534
|
for (let n = 0; n < e.attrs_table.length; n++) {
|
|
535
535
|
const r = e.attrs_table[n];
|
|
536
536
|
if (r.name && r.name === t) return r;
|
|
537
537
|
}
|
|
538
|
-
return n &&
|
|
538
|
+
return n && Tn(`${e.gclass_name}: GClass Attribute NOT FOUND: ${t}`), null;
|
|
539
539
|
}
|
|
540
540
|
function de(e, t, n, r, l, o, s, i, _, a, u) {
|
|
541
|
-
if (
|
|
542
|
-
if (e.includes("`") || e.includes("^") || e.includes(".")) return
|
|
543
|
-
if (Oe(e)) return
|
|
541
|
+
if (ur(e)) return Tn("gclass_name EMPTY"), null;
|
|
542
|
+
if (e.includes("`") || e.includes("^") || e.includes(".")) return Tn(`GClass name CANNOT have '.' or '^' or '\`' char: ${e}`), null;
|
|
543
|
+
if (Oe(e)) return Tn(`GClass ALREADY exists: ${e}`), null;
|
|
544
544
|
let c = new O(e, r, l, o, s, i, _, a, u);
|
|
545
545
|
(function(e, t) {
|
|
546
|
-
e && e instanceof O ? t ? d[t] ?
|
|
546
|
+
e && e instanceof O ? t ? d[t] ? Tn(`gclass ALREADY REGISTERED: ${t}`) : d[t] = e : Tn("gclass_name undefined") : Tn("gclass undefined");
|
|
547
547
|
})(c, e);
|
|
548
548
|
const f = n.length;
|
|
549
549
|
for (let e = 0; e < f; e++) {
|
|
550
550
|
let t = n[e][0], r = n[e][1];
|
|
551
|
-
if (
|
|
551
|
+
if (ur(t)) continue;
|
|
552
552
|
if (he(c, t) < 0) return be(c), null;
|
|
553
553
|
const l = r.length;
|
|
554
554
|
for (let e = 0; e < l; e++) {
|
|
555
555
|
let n = r[e][0], l = r[e][1], o = r[e][2];
|
|
556
|
-
|
|
556
|
+
ur(n) || ye(c, t, n, l, o);
|
|
557
557
|
}
|
|
558
558
|
}
|
|
559
559
|
for (let e = 0; e < t.length; e++) {
|
|
560
560
|
let n = t[e][0], r = t[e][1];
|
|
561
|
-
if (!
|
|
562
|
-
if (ve(c, n)) return
|
|
561
|
+
if (!ur(n)) {
|
|
562
|
+
if (ve(c, n)) return Tn(`SMachine: event repeated in input_events: ${n}`), be(c), null;
|
|
563
563
|
Te(c, n, r);
|
|
564
564
|
}
|
|
565
565
|
}
|
|
@@ -571,13 +571,13 @@
|
|
|
571
571
|
}
|
|
572
572
|
function be(e) {
|
|
573
573
|
let t;
|
|
574
|
-
if (
|
|
574
|
+
if (lr(e)) t = e;
|
|
575
575
|
else {
|
|
576
|
-
if (!(e instanceof O)) return
|
|
576
|
+
if (!(e instanceof O)) return Tn("Cannot unregister gclass, type unknown"), -1;
|
|
577
577
|
t = e.gclass_name;
|
|
578
578
|
}
|
|
579
579
|
let n = d[t];
|
|
580
|
-
return n ? n.instances > 0 ? (
|
|
580
|
+
return n ? n.instances > 0 ? (Tn(`Cannot unregister gclass, instances in use: ${t}`), -1) : (delete d[t], 0) : (Tn(`Cannot unregister gclass, not found: ${t}`), -1);
|
|
581
581
|
}
|
|
582
582
|
function pe(e, t) {
|
|
583
583
|
const n = e.dl_states.length, r = e.dl_states;
|
|
@@ -596,22 +596,22 @@
|
|
|
596
596
|
return null;
|
|
597
597
|
}
|
|
598
598
|
function he(e, t) {
|
|
599
|
-
return e instanceof O ? pe(e, t) ? (
|
|
599
|
+
return e instanceof O ? pe(e, t) ? (Tn(`state already exists: ${t}`), -1) : (e.dl_states.push(new A(t)), 0) : (Tn("Cannot add state, typeof not GClass"), -1);
|
|
600
600
|
}
|
|
601
601
|
function ye(e, t, n, r, l) {
|
|
602
|
-
if (!(e instanceof O)) return
|
|
603
|
-
if (
|
|
602
|
+
if (!(e instanceof O)) return Tn("Cannot add state, typeof not GClass"), -1;
|
|
603
|
+
if (ur(t)) return Tn("state_name EMPTY"), -1;
|
|
604
604
|
let o = pe(e, t);
|
|
605
|
-
return o ? me(o, n) ? (
|
|
605
|
+
return o ? me(o, n) ? (Tn(`event already exists: gclass ${e.gclass_name}, state ${t}, event ${n}`), -1) : (o.dl_actions.push(new k(n, r, l)), 0) : (Tn(`state not found: ${t}`), -1);
|
|
606
606
|
}
|
|
607
607
|
function Ee(e, t, n) {
|
|
608
|
-
|
|
608
|
+
ur(t) || e.push(new I(t, n));
|
|
609
609
|
}
|
|
610
610
|
function Te(e, t, n) {
|
|
611
|
-
return e instanceof O ? Ee(e.dl_events, t, n) : (
|
|
611
|
+
return e instanceof O ? Ee(e.dl_events, t, n) : (Tn("Cannot add state, typeof not GClass"), -1);
|
|
612
612
|
}
|
|
613
613
|
function ve(e, t) {
|
|
614
|
-
if (!(e instanceof O)) return
|
|
614
|
+
if (!(e instanceof O)) return Tn("Cannot add state, typeof not GClass"), 0;
|
|
615
615
|
const n = e.dl_events.length, r = e.dl_events;
|
|
616
616
|
for (let e = 0; e < n; e++) {
|
|
617
617
|
let n = r[e];
|
|
@@ -620,25 +620,25 @@
|
|
|
620
620
|
return null;
|
|
621
621
|
}
|
|
622
622
|
function je(e) {
|
|
623
|
-
if (!(e instanceof O)) return
|
|
623
|
+
if (!(e instanceof O)) return Tn("Cannot add state, typeof not GClass"), -1;
|
|
624
624
|
let t = 0;
|
|
625
|
-
|
|
625
|
+
er(e.dl_states) || (Tn(`GClass without states: ${e.gclass_name}`), t += -1);
|
|
626
626
|
for (let n = 0; n < e.dl_states.length; n++) {
|
|
627
627
|
let r = e.dl_states[n];
|
|
628
|
-
if (!
|
|
628
|
+
if (!ur(r.state_name)) for (let n = 0; n < r.dl_actions.length; n++) {
|
|
629
629
|
let l = r.dl_actions[n];
|
|
630
|
-
|
|
630
|
+
ur(l.event_name) || (ve(e, l.event_name) || (Tn(`SMachine: state's event NOT in input_events: gclass ${e.gclass_name}, state ${r.state_name}, event ${l.event_name}`), t += -1), l.next_state && (pe(e, l.next_state) || (Tn(`SMachine: next state NOT in state names: gclass ${e.gclass_name}, state ${r.state_name}, next_state ${l.next_state}`), t += -1)));
|
|
631
631
|
}
|
|
632
632
|
}
|
|
633
633
|
for (let n = 0; n < e.dl_events.length; n++) {
|
|
634
634
|
let r = e.dl_events[n];
|
|
635
|
-
if (!
|
|
635
|
+
if (!ur(r.event_name) && (or(r.event_flag) || (Tn(`SMachine: event flag is NOT number: gclass ${e.gclass_name}, event ${r.event_name}`), t += -1), !(r.event_flag & R.EVF_OUTPUT_EVENT))) {
|
|
636
636
|
let n = !1;
|
|
637
637
|
for (let t = 0; t < e.dl_states.length; t++) {
|
|
638
638
|
let l = e.dl_states[t];
|
|
639
|
-
|
|
639
|
+
ur(l.state_name) || me(l, r.event_name) && (n = !0);
|
|
640
640
|
}
|
|
641
|
-
n || (
|
|
641
|
+
n || (Tn(`SMachine: input_list's event NOT in state: gclass ${e.gclass_name}, event ${r.event_name}`), t += -1);
|
|
642
642
|
}
|
|
643
643
|
}
|
|
644
644
|
return t;
|
|
@@ -648,69 +648,69 @@
|
|
|
648
648
|
try {
|
|
649
649
|
n = d[e];
|
|
650
650
|
} catch (e) {}
|
|
651
|
-
return n || (t &&
|
|
651
|
+
return n || (t && Tn(`gclass not found: ${e}`), null);
|
|
652
652
|
}
|
|
653
653
|
function Se() {
|
|
654
654
|
return !m || m.obflag & $.obflag_destroyed ? null : m;
|
|
655
655
|
}
|
|
656
656
|
function we(e, t) {
|
|
657
|
-
if (!
|
|
657
|
+
if (!lr(e)) return Tn(`gobj_find_service(): service name must be a string: ${e}`), null;
|
|
658
658
|
e = e.toLowerCase();
|
|
659
|
-
return b[e] || (t &&
|
|
659
|
+
return b[e] || (t && Tn(`gobj service not found: ${e}`), null);
|
|
660
660
|
}
|
|
661
661
|
function Ne(e) {
|
|
662
662
|
let t = Xe(e);
|
|
663
|
-
return t = t.toLowerCase(), b[t] &&
|
|
663
|
+
return t = t.toLowerCase(), b[t] && Tn(`service ALREADY REGISTERED: ${t}. Will be UPDATED`), b[t] = e, 0;
|
|
664
664
|
}
|
|
665
665
|
function $e(e, t) {
|
|
666
|
-
t.parent &&
|
|
666
|
+
t.parent && Tn(`_add_child() ALREADY HAS PARENT: ${t.gobj_name}`), e.dl_children.push(t), t.parent = e;
|
|
667
667
|
}
|
|
668
668
|
function Re(e, t) {
|
|
669
|
-
let n =
|
|
670
|
-
n >= 0 && (
|
|
669
|
+
let n = ll(e.dl_children, t);
|
|
670
|
+
n >= 0 && (Xn(e.dl_children, n), t.parent = null);
|
|
671
671
|
}
|
|
672
672
|
function De(e, t) {
|
|
673
|
-
return Be(e) ? _ ? _(e, t) : -1 : (
|
|
673
|
+
return Be(e) ? _ ? _(e, t) : -1 : (Tn(`${et(e)}: Only gobj services can load/save writable-persistent`), -1);
|
|
674
674
|
}
|
|
675
675
|
function ke(e, t) {
|
|
676
|
-
"__json_config_variables__" !== t &&
|
|
676
|
+
"__json_config_variables__" !== t && Tn(`GClass Attribute NOT FOUND: ${et(e)}, attr ${t}`);
|
|
677
677
|
}
|
|
678
678
|
function Ae(e, t, n) {
|
|
679
679
|
let r = t;
|
|
680
680
|
(function(e, t, n, r, l) {
|
|
681
|
-
if (!e || !t) return
|
|
681
|
+
if (!e || !t) return Tn("hsdata or kw NULL"), -1;
|
|
682
682
|
let o = 0;
|
|
683
683
|
for (const [s, i] of Object.entries(t)) {
|
|
684
684
|
const t = ge(l.gclass, s, !1);
|
|
685
|
-
t ? (-1 === n || t.flag & n) && (t.flag & E.SDF_DEPRECATED &&
|
|
685
|
+
t ? (-1 === n || t.flag & n) && (t.flag & E.SDF_DEPRECATED && vn(`${et(l)}: Deprecated attribute used in gobj creation: ${s}`), o += ue(l, e, t, i)) : r && (r(l, s), o--);
|
|
686
686
|
}
|
|
687
687
|
return o;
|
|
688
|
-
})(ce(e), r, -1, e.gclass.gclass_flag & w.gcflag_ignore_unknown_attrs ? 0 : ke, e) < 0 && (
|
|
688
|
+
})(ce(e), r, -1, e.gclass.gclass_flag & w.gcflag_ignore_unknown_attrs ? 0 : ke, e) < 0 && (Tn(`${et(e)} json2data() FAILED`), Gn(r));
|
|
689
689
|
}
|
|
690
690
|
function Ie(e, t, r, l, o) {
|
|
691
691
|
if (o & N.gobj_flag_yuno) {
|
|
692
|
-
if (p) return
|
|
692
|
+
if (p) return Tn("__yuno__ already created"), null;
|
|
693
693
|
o |= N.gobj_flag_service;
|
|
694
694
|
} else {
|
|
695
|
-
if (!l) return
|
|
696
|
-
if (!("string" == typeof l || l instanceof S)) return
|
|
697
|
-
if (
|
|
695
|
+
if (!l) return Tn("gobj NEEDS a parent!"), null;
|
|
696
|
+
if (!("string" == typeof l || l instanceof S)) return Tn(`BAD TYPE of parent: ${l}`), null;
|
|
697
|
+
if (lr(l)) {
|
|
698
698
|
const e = l;
|
|
699
|
-
if (!(l = we(e))) return
|
|
699
|
+
if (!(l = we(e))) return vn(`parent service not found: ${e}`), null;
|
|
700
700
|
}
|
|
701
701
|
}
|
|
702
|
-
if (o & N.gobj_flag_service && we(e, !1)) return
|
|
702
|
+
if (o & N.gobj_flag_service && we(e, !1)) return Tn(`service ALREADY registered: ${t}^${e}`), null;
|
|
703
703
|
if (o & N.gobj_flag_default_service) {
|
|
704
|
-
if (m) return
|
|
704
|
+
if (m) return Tn(`default service ALREADY registered: ${t}^${e}`), null;
|
|
705
705
|
o |= N.gobj_flag_service;
|
|
706
706
|
}
|
|
707
|
-
if (
|
|
707
|
+
if (ur(t)) return Tn("gclass_name must be a string"), null;
|
|
708
708
|
let s = Oe(t, !1);
|
|
709
|
-
if (!s) return
|
|
710
|
-
if (!
|
|
711
|
-
if (!
|
|
712
|
-
if (e.includes("`")) return
|
|
713
|
-
if (e.includes("^")) return
|
|
709
|
+
if (!s) return Tn(`GClass not registered: ${t}^${e}`), null;
|
|
710
|
+
if (!lr(e)) return Tn(`gobj_name must be a string: ${t}`), null;
|
|
711
|
+
if (!ur(e)) {
|
|
712
|
+
if (e.includes("`")) return Tn(`gobj_name cannot contain char ': ${t}^${e}`), null;
|
|
713
|
+
if (e.includes("^")) return Tn(`gobj_name cannot contain char ^: ${t}^${e}`), null;
|
|
714
714
|
}
|
|
715
715
|
let _ = new S(e, s, r, l, o);
|
|
716
716
|
_.jn_attrs = _e(_, s.attrs_table);
|
|
@@ -722,8 +722,8 @@
|
|
|
722
722
|
return Ie(e, t, n, r, N.gobj_flag_pure_child);
|
|
723
723
|
}
|
|
724
724
|
function Le(e) {
|
|
725
|
-
if (ot(e)) return void
|
|
726
|
-
e.__refs__ > 0 &&
|
|
725
|
+
if (ot(e)) return void Tn("gobj NULL or DESTROYED");
|
|
726
|
+
e.__refs__ > 0 && Tn(`${et(e)}: gobj DESTROYING with references: ${e.__refs__}`), e.playing && (Tn(`Destroying a PLAYING gobj: ${tt(e)}`), xe(e)), e.running && (Tn(`Destroying a RUNNING gobj: ${tt(e)}`), Ve(e)), e.obflag |= $.obflag_destroying, function(e) {
|
|
727
727
|
if (0 === Lt.length) return;
|
|
728
728
|
for (let t of Lt) t.src === e && (t.src = null);
|
|
729
729
|
Lt = Lt.filter((t) => t.dst !== e);
|
|
@@ -733,7 +733,7 @@
|
|
|
733
733
|
let r = nt(e);
|
|
734
734
|
r && r.gclass.gmt.mt_child_removed && (t && L(n("👦👦🔴 child_removed(%s): %s", tt(r), et(e))), r.gclass.gmt.mt_child_removed(r, e)), e.gobj_flag & N.gobj_flag_service && function(e) {
|
|
735
735
|
let t = Xe(e);
|
|
736
|
-
t = t.toLowerCase(), b[t] ? delete b[t] :
|
|
736
|
+
t = t.toLowerCase(), b[t] ? delete b[t] : Tn(`"service NOT found in register": ${t}`);
|
|
737
737
|
}(e), e === m && (m = null), Ht(e, e.dl_subscriptions, !0), Ht(e, e.dl_subscribings, !0), r && (Re(r, e), rt(e) && (st(r) !== e || ot(r) || it(r, null))), function(e) {
|
|
738
738
|
let t = e.dl_children.slice();
|
|
739
739
|
for (let e = 0; e < t.length; e++) {
|
|
@@ -743,9 +743,9 @@
|
|
|
743
743
|
}(e), e.obflag & $.obflag_created && e.gclass.gmt.mt_destroy && e.gclass.gmt.mt_destroy(e), t && L(n("💔💔⏪ destroyed: %s", tt(e))), e.obflag |= $.obflag_destroyed, e.obflag & $.obflag_created && e.gclass.instances--;
|
|
744
744
|
}
|
|
745
745
|
function Pe(e) {
|
|
746
|
-
if (ot(e)) return
|
|
747
|
-
if (e.running) return
|
|
748
|
-
if (e.disabled) return
|
|
746
|
+
if (ot(e)) return Tn("gobj NULL or DESTROYED"), -1;
|
|
747
|
+
if (e.running) return Tn(`${et(e)}: GObj ALREADY RUNNING`), -1;
|
|
748
|
+
if (e.disabled) return Tn(`${et(e)}: GObj DISABLED`), -1;
|
|
749
749
|
J(e) && L(n("⏺ ⏺ start: %s", tt(e))), e.running = !0;
|
|
750
750
|
let t = 0;
|
|
751
751
|
return e.gclass.gmt.mt_start && (t = e.gclass.gmt.mt_start(e)), t;
|
|
@@ -757,9 +757,9 @@
|
|
|
757
757
|
return e.gclass.gclass_flag & w.gcflag_manual_start || Ye(e) ? 1 : (Ke(e) || Pe(e), 0);
|
|
758
758
|
}
|
|
759
759
|
function Ve(e) {
|
|
760
|
-
if (ot(e)) return
|
|
761
|
-
if (!e.running) return
|
|
762
|
-
e.playing && (
|
|
760
|
+
if (ot(e)) return Tn("gobj NULL or DESTROYED"), -1;
|
|
761
|
+
if (!e.running) return Tn(`${et(e)}: GObj NOT RUNNING`), -1;
|
|
762
|
+
e.playing && (vn(`${et(e)}: GObj stopping without previous pause`), xe(e)), J(e) && L(n("⏹ ⏹ stop: %s", tt(e))), e.running = !1;
|
|
763
763
|
let t = 0;
|
|
764
764
|
return e.gclass.gmt.mt_stop && (t = e.gclass.gmt.mt_stop(e)), t;
|
|
765
765
|
}
|
|
@@ -767,22 +767,22 @@
|
|
|
767
767
|
return Ke(e) && Ve(e), 0;
|
|
768
768
|
}
|
|
769
769
|
function Me(e) {
|
|
770
|
-
return ot(e) ? (
|
|
770
|
+
return ot(e) ? (Tn("gobj NULL or DESTROYED"), -1) : at(e, D.WALK_FIRST2LAST, Ge, 0, 0);
|
|
771
771
|
}
|
|
772
772
|
function We(e) {
|
|
773
|
-
if (ot(e)) return
|
|
774
|
-
if (e.playing) return
|
|
775
|
-
if (e.disabled) return
|
|
773
|
+
if (ot(e)) return Tn(`gobj NULL or DESTROYED: ${et(e)}`), -1;
|
|
774
|
+
if (e.playing) return Tn(`${et(e)}: GObj ALREADY PLAYING`), -1;
|
|
775
|
+
if (e.disabled) return Tn(`${et(e)}: GObj DISABLED`), -1;
|
|
776
776
|
if (!Ke(e)) {
|
|
777
|
-
if (e.gclass.gclass_flag & w.gcflag_required_start_to_play) return
|
|
778
|
-
|
|
777
|
+
if (e.gclass.gclass_flag & w.gcflag_required_start_to_play) return Tn(`${et(e)}: Cannot play, start not done`), -1;
|
|
778
|
+
vn(`${et(e)}: GObj playing without previous start`), Pe(e);
|
|
779
779
|
}
|
|
780
780
|
J(e) && L(n("⏯ ⏯ play: %s", tt(e))), e.playing = !0;
|
|
781
781
|
let t = 0;
|
|
782
782
|
return e.gclass.gmt.mt_play && (t = e.gclass.gmt.mt_play(e), (t < 0 || !1 === t) && (e.playing = !1)), t;
|
|
783
783
|
}
|
|
784
784
|
function xe(e) {
|
|
785
|
-
return ot(e) ? (
|
|
785
|
+
return ot(e) ? (Tn("gobj NULL or DESTROYED"), -1) : e.playing ? (J(e) && L(n("⏸ ⏸ pause: %s", tt(e))), e.playing = !1, e.gclass.gmt.mt_pause ? e.gclass.gmt.mt_pause(e) : 0) : (Tn(`${et(e)}: GObj NOT PLAYING`), -1);
|
|
786
786
|
}
|
|
787
787
|
function Ke(e) {
|
|
788
788
|
return !ot(e) && e.running;
|
|
@@ -812,50 +812,50 @@
|
|
|
812
812
|
return e ? jt(e, "yuno_id") : "";
|
|
813
813
|
}
|
|
814
814
|
function Xe(e) {
|
|
815
|
-
return
|
|
815
|
+
return ar(e) ? e.gobj_name : (Tn("gobj bad type"), null);
|
|
816
816
|
}
|
|
817
817
|
function Ze(e) {
|
|
818
|
-
return
|
|
818
|
+
return ar(e) ? e.gclass.gclass_name : (Tn("gobj NULL of bad type"), null);
|
|
819
819
|
}
|
|
820
820
|
function et(e) {
|
|
821
|
-
return
|
|
821
|
+
return ar(e) ? e.gclass.gclass_name + "^" + Xe(e) : (Tn("gobj bad type"), null);
|
|
822
822
|
}
|
|
823
823
|
function tt(e) {
|
|
824
|
-
if (!
|
|
824
|
+
if (!ar(e)) return Tn("gobj NULL of bad type"), null;
|
|
825
825
|
let t = et(e), n = nt(e);
|
|
826
826
|
for (; n;) t = et(n) + "`" + t, n = nt(n);
|
|
827
827
|
return t;
|
|
828
828
|
}
|
|
829
829
|
function nt(e) {
|
|
830
|
-
return
|
|
830
|
+
return ar(e) ? e.parent : (Tn("gobj NULL of bad type"), null);
|
|
831
831
|
}
|
|
832
832
|
function rt(e) {
|
|
833
|
-
return
|
|
833
|
+
return ar(e) ? !!(e.gobj_flag & N.gobj_flag_volatil) : (Tn("gobj NULL of bad type"), null);
|
|
834
834
|
}
|
|
835
835
|
function lt(e) {
|
|
836
|
-
return
|
|
836
|
+
return ar(e) ? !!(e.gobj_flag & N.gobj_flag_pure_child) : (Tn("gobj NULL of bad type"), null);
|
|
837
837
|
}
|
|
838
838
|
function ot(e) {
|
|
839
|
-
return !
|
|
839
|
+
return !ar(e) || !!(e.obflag & ($.obflag_destroyed | $.obflag_destroying));
|
|
840
840
|
}
|
|
841
841
|
function st(e) {
|
|
842
|
-
return
|
|
842
|
+
return ar(e) ? e.bottom_gobj : (Tn("gobj NULL of bad type"), null);
|
|
843
843
|
}
|
|
844
844
|
function it(e, t) {
|
|
845
|
-
if (!
|
|
846
|
-
e.bottom_gobj && t &&
|
|
845
|
+
if (!ar(e)) return Tn("gobj NULL of bad type"), null;
|
|
846
|
+
e.bottom_gobj && t && vn(`${et(e)}: bottom_gobj already set`), e.bottom_gobj = t;
|
|
847
847
|
}
|
|
848
848
|
function _t(e, t, n) {
|
|
849
|
-
return
|
|
849
|
+
return ar(e) ? t ? ge(e.gclass, t, n) : e.gclass.attrs_table : (Tn("gobj NULL of bad type"), null);
|
|
850
850
|
}
|
|
851
851
|
function at(e, t, n, r, l) {
|
|
852
|
-
return ot(e) ? (
|
|
852
|
+
return ot(e) ? (Tn("gobj NULL, destroying, or bad type"), 0) : ft(e.dl_children, t, n, r, l);
|
|
853
853
|
}
|
|
854
854
|
function ut(e, t, n, r, l) {
|
|
855
|
-
return ot(e) ? (
|
|
855
|
+
return ot(e) ? (Tn("gobj NULL, destroying, or bad type"), 0) : dt(e.dl_children, t, n, r, l);
|
|
856
856
|
}
|
|
857
857
|
function ct(e) {
|
|
858
|
-
return "number" == typeof e && isFinite(e) ? e : (null == e ||
|
|
858
|
+
return "number" == typeof e && isFinite(e) ? e : (null == e || Tn(`walk callback must return a NUMBER (-1 stop, 0 descend, >0 skip children), got ${typeof e}: taken as 0`), 0);
|
|
859
859
|
}
|
|
860
860
|
function ft(e, t, n, r, l) {
|
|
861
861
|
let o, s = [...e];
|
|
@@ -893,7 +893,7 @@
|
|
|
893
893
|
return 0;
|
|
894
894
|
}
|
|
895
895
|
function bt(e, t) {
|
|
896
|
-
if (!
|
|
896
|
+
if (!ar(e)) return Tn("gobj NULL of bad type"), !1;
|
|
897
897
|
let n = t.__gclass_name__, r = t.__gobj_name__, l = t.__prefix_gobj_name__;
|
|
898
898
|
t.__disabled__;
|
|
899
899
|
let o = t.__state__;
|
|
@@ -909,7 +909,7 @@
|
|
|
909
909
|
return !0;
|
|
910
910
|
}
|
|
911
911
|
function pt(e, t) {
|
|
912
|
-
if (ot(e)) return
|
|
912
|
+
if (ot(e)) return Tn("gobj NULL or DESTROYED"), null;
|
|
913
913
|
const n = e.dl_children;
|
|
914
914
|
for (let e = 0; e < n.length; e++) {
|
|
915
915
|
const r = n[e];
|
|
@@ -937,7 +937,7 @@
|
|
|
937
937
|
return o ? (n.splice(0, 1), n = n.join("`"), mt(o, n)) : null;
|
|
938
938
|
}
|
|
939
939
|
function ht(e, t) {
|
|
940
|
-
return !
|
|
940
|
+
return !ur(t) && !!ge(e.gclass, t, !1);
|
|
941
941
|
}
|
|
942
942
|
function yt(e, t, n) {
|
|
943
943
|
let r = e.jn_attrs;
|
|
@@ -945,7 +945,7 @@
|
|
|
945
945
|
let n = r[t];
|
|
946
946
|
return e.gclass.gmt.mt_reading ? e.gclass.gmt.mt_reading(e, t, n) : n;
|
|
947
947
|
}
|
|
948
|
-
return
|
|
948
|
+
return Tn(`${et(e)}: GClass Attribute NOT FOUND, attr ${t}`), null;
|
|
949
949
|
}
|
|
950
950
|
function Et(e, t, n) {
|
|
951
951
|
let r = {}, l = e.gclass.attrs_table;
|
|
@@ -953,41 +953,41 @@
|
|
|
953
953
|
const o = l[n];
|
|
954
954
|
if (o.name && (-1 === t || o.flag & t)) {
|
|
955
955
|
let t;
|
|
956
|
-
!e.gclass.gmt.mt_reading || e.obflag & $.obflag_destroyed ? t =
|
|
956
|
+
!e.gclass.gmt.mt_reading || e.obflag & $.obflag_destroyed ? t = Bn(e.jn_attrs, o.name) : (t = e.gclass.gmt.mt_reading(e, o.name), void 0 === t && (t = Bn(e.jn_attrs, o.name))), qn(r, o.name, t);
|
|
957
957
|
}
|
|
958
958
|
}
|
|
959
959
|
return r;
|
|
960
960
|
}
|
|
961
961
|
function Tt(e, t) {
|
|
962
962
|
if (t) {
|
|
963
|
-
if (0 ===
|
|
964
|
-
if (0 ===
|
|
965
|
-
if (0 ===
|
|
966
|
-
if (0 ===
|
|
963
|
+
if (0 === gr(t, "__disabled__")) return Ye(e);
|
|
964
|
+
if (0 === gr(t, "__running__")) return Ke(e);
|
|
965
|
+
if (0 === gr(t, "__playing__")) return Je(e);
|
|
966
|
+
if (0 === gr(t, "__service__")) return Be(e);
|
|
967
967
|
}
|
|
968
968
|
let n = fe(e, t, !1);
|
|
969
|
-
return n ? !e.gclass.gmt.mt_reading || e.obflag & $.obflag_destroyed ?
|
|
969
|
+
return n ? !e.gclass.gmt.mt_reading || e.obflag & $.obflag_destroyed ? Bn(n, t) : e.gclass.gmt.mt_reading(e, t) : (Tn(`${et(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
|
|
970
970
|
}
|
|
971
971
|
function vt(e, t) {
|
|
972
|
-
t &&
|
|
972
|
+
t && gr(t, "__trace_level__");
|
|
973
973
|
let n = fe(e, t, !1);
|
|
974
|
-
return n ? !e.gclass.gmt.mt_reading || e.obflag & $.obflag_destroyed ?
|
|
974
|
+
return n ? !e.gclass.gmt.mt_reading || e.obflag & $.obflag_destroyed ? Bn(n, t) : e.gclass.gmt.mt_reading(e, t) : (Tn(`${et(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
|
|
975
975
|
}
|
|
976
976
|
function jt(e, t) {
|
|
977
|
-
if (t && 0 ===
|
|
977
|
+
if (t && 0 === gr(t, "__state__")) return kt(e);
|
|
978
978
|
let n = fe(e, t, !1);
|
|
979
|
-
return n ? !e.gclass.gmt.mt_reading || e.obflag & $.obflag_destroyed ?
|
|
979
|
+
return n ? !e.gclass.gmt.mt_reading || e.obflag & $.obflag_destroyed ? Bn(n, t) : e.gclass.gmt.mt_reading(e, t) : (Tn(`${et(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
|
|
980
980
|
}
|
|
981
981
|
function Ot(e, t) {
|
|
982
982
|
let n = fe(e, t, !1);
|
|
983
|
-
return n ? !e.gclass.gmt.mt_reading || e.obflag & $.obflag_destroyed ?
|
|
983
|
+
return n ? !e.gclass.gmt.mt_reading || e.obflag & $.obflag_destroyed ? Bn(n, t) : e.gclass.gmt.mt_reading(e, t) : (Tn(`${et(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
|
|
984
984
|
}
|
|
985
985
|
function St(e, t, r, l) {
|
|
986
|
-
if (!
|
|
986
|
+
if (!lr(t)) return Tn(n("gobj_write_attr(%s): path must be a string", et(e))), -1;
|
|
987
987
|
let o, s = e.jn_attrs, i = t.split("`");
|
|
988
988
|
if (i.length <= 1) {
|
|
989
989
|
let l = t;
|
|
990
|
-
return l in s && Object.prototype.hasOwnProperty.call(s, l) ? (s[l] = r,
|
|
990
|
+
return l in s && Object.prototype.hasOwnProperty.call(s, l) ? (s[l] = r, nr(e.priv) && Object.prototype.hasOwnProperty.call(e.priv, l) && (e.priv[l] = r), e.obflag & $.obflag_created && !(e.obflag & $.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, l), 0) : (Tn(n("gobj_write_attr(%s): attr not found '%s'", et(e), l)), -1);
|
|
991
991
|
}
|
|
992
992
|
let _ = i.length;
|
|
993
993
|
for (let t = 0; t < _; t++) {
|
|
@@ -998,10 +998,10 @@
|
|
|
998
998
|
continue;
|
|
999
999
|
}
|
|
1000
1000
|
let l = e.jn_attrs;
|
|
1001
|
-
if (o in l && Object.prototype.hasOwnProperty.call(l, o)) return l[o] = r,
|
|
1001
|
+
if (o in l && Object.prototype.hasOwnProperty.call(l, o)) return l[o] = r, nr(e.priv) && Object.prototype.hasOwnProperty.call(e.priv, o) && (e.priv[o] = r), e.obflag & $.obflag_created && !(e.obflag & $.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, o), 0;
|
|
1002
1002
|
break;
|
|
1003
1003
|
}
|
|
1004
|
-
return
|
|
1004
|
+
return Tn(n("gobj_write_attr(%s): attr not found '%s'", et(e), o)), -1;
|
|
1005
1005
|
}
|
|
1006
1006
|
function wt(e, t, n, r) {
|
|
1007
1007
|
let l = ce(e), o = 0;
|
|
@@ -1013,21 +1013,21 @@
|
|
|
1013
1013
|
}
|
|
1014
1014
|
function Nt(e, t, n) {
|
|
1015
1015
|
let r = fe(e, t, !1);
|
|
1016
|
-
return r ? (r[t] =
|
|
1016
|
+
return r ? (r[t] = cr(n), nr(e.priv) && Object.prototype.hasOwnProperty.call(e.priv, t) && (e.priv[t] = r[t]), e.obflag & $.obflag_created && !(e.obflag & $.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (Tn(`${et(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
|
|
1017
1017
|
}
|
|
1018
1018
|
function $t(e, t, n) {
|
|
1019
1019
|
let r = fe(e, t, !1);
|
|
1020
|
-
return r ? (r[t] = parseInt(n),
|
|
1020
|
+
return r ? (r[t] = parseInt(n), nr(e.priv) && Object.prototype.hasOwnProperty.call(e.priv, t) && (e.priv[t] = r[t]), e.obflag & $.obflag_created && !(e.obflag & $.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (Tn(`${et(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
|
|
1021
1021
|
}
|
|
1022
1022
|
function Rt(e, t, n) {
|
|
1023
1023
|
let r = fe(e, t, !1);
|
|
1024
|
-
return r ? (r[t] = String(n),
|
|
1024
|
+
return r ? (r[t] = String(n), nr(e.priv) && Object.prototype.hasOwnProperty.call(e.priv, t) && (e.priv[t] = r[t]), e.obflag & $.obflag_created && !(e.obflag & $.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (Tn(`${et(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
|
|
1025
1025
|
}
|
|
1026
1026
|
function Dt(e, t) {
|
|
1027
|
-
if (ot(e)) return
|
|
1027
|
+
if (ot(e)) return Tn("gobj NULL or DESTROYED"), null;
|
|
1028
1028
|
if (e.current_state.state_name === t) return !1;
|
|
1029
1029
|
let r = pe(e.gclass, t);
|
|
1030
|
-
if (!r) return
|
|
1030
|
+
if (!r) return Tn(`${et(e)}: state unknown, state ${t}`), !1;
|
|
1031
1031
|
e.last_state = e.current_state, e.current_state = r;
|
|
1032
1032
|
let l = H(e, "EV_STATE_CHANGED"), o = !!function(e) {
|
|
1033
1033
|
return x(e) & P.TRACE_STATES;
|
|
@@ -1035,10 +1035,10 @@
|
|
|
1035
1035
|
return (l || o) && (1 === C || L(n("🔀🔀 mach(%s%s^%s), new st(%s), prev st(%s)", e.running ? "" : "!!", Ze(e), Xe(e), kt(e), e.last_state.state_name))), !0;
|
|
1036
1036
|
}
|
|
1037
1037
|
function kt(e) {
|
|
1038
|
-
return
|
|
1038
|
+
return ar(e) ? e.current_state.state_name : (Tn("hgobj NULL"), "");
|
|
1039
1039
|
}
|
|
1040
1040
|
function At(e, t, n) {
|
|
1041
|
-
if (!
|
|
1041
|
+
if (!ar(e)) return Tn("gobj NULL of bad type"), null;
|
|
1042
1042
|
let r = ve(e.gclass, t);
|
|
1043
1043
|
if (r) return r;
|
|
1044
1044
|
if (n) {
|
|
@@ -1060,12 +1060,12 @@
|
|
|
1060
1060
|
}
|
|
1061
1061
|
var Lt = [], Pt = !1;
|
|
1062
1062
|
function Ut(e, t, r, l) {
|
|
1063
|
-
return e && e instanceof S ? e.obflag & ($.obflag_destroyed | $.obflag_destroying) ? (
|
|
1063
|
+
return e && e instanceof S ? e.obflag & ($.obflag_destroyed | $.obflag_destroying) ? (Tn(`gobj_post_event(): gobj dst DESTROYING, event ${t}`), -1) : ur(t) ? (Tn("gobj_post_event(): event EMPTY"), -1) : It(e, t, 0) ? Lt.length >= 1e4 ? (Tn(`gobj_post_event(): too many posted events, this is NOT a work queue, event ${t}, pending ${Lt.length}`), -1) : (Lt.push({
|
|
1064
1064
|
dst: e,
|
|
1065
1065
|
event: t,
|
|
1066
1066
|
kw: r,
|
|
1067
1067
|
src: l
|
|
1068
|
-
}), H(e, t) && !z(l, t) && L(n("📬 posted(%s%s), ev: %s, pending: %d", e.running ? "" : "!!", et(e), t, Lt.length)), Pt || (Pt = !0, setTimeout(Ft, 0)), 0) : (
|
|
1068
|
+
}), H(e, t) && !z(l, t) && L(n("📬 posted(%s%s), ev: %s, pending: %d", e.running ? "" : "!!", et(e), t, Lt.length)), Pt || (Pt = !0, setTimeout(Ft, 0)), 0) : (Tn(`gobj_post_event(): event NOT DEFINED in gclass ${Ze(e)}, event ${t}`), -1) : (Tn(`gobj_post_event(): gobj dst NULL, event ${t}`), -1);
|
|
1069
1069
|
}
|
|
1070
1070
|
function Ft() {
|
|
1071
1071
|
Pt = !1;
|
|
@@ -1086,21 +1086,21 @@
|
|
|
1086
1086
|
return Lt.length > 0 && !Pt && (Pt = !0, setTimeout(Ft, 0)), t;
|
|
1087
1087
|
}
|
|
1088
1088
|
function Vt(e, t, r, l) {
|
|
1089
|
-
if (!(e && e instanceof S)) return
|
|
1090
|
-
if (e.obflag & ($.obflag_destroyed | $.obflag_destroying)) return
|
|
1089
|
+
if (!(e && e instanceof S)) return Tn("gobj dst NULL"), -1;
|
|
1090
|
+
if (e.obflag & ($.obflag_destroyed | $.obflag_destroying)) return Tn("gobj dst DESTROYED"), -1;
|
|
1091
1091
|
let o = e.current_state;
|
|
1092
|
-
if (!o) return
|
|
1092
|
+
if (!o) return Tn(`${et(e)}: current_state NULL`), -1;
|
|
1093
1093
|
let s = H(e, t) && !z(l, t);
|
|
1094
1094
|
h++;
|
|
1095
1095
|
let i = me(o, t);
|
|
1096
|
-
if (!i) return e.gclass.gmt.mt_inject_event ? (h--, s && (L(1 === C ? n("🔜 %s %s%s %s", t || "", e.running ? "" : "!!", et(e), o.state_name) : n("🔃 mach(%s%s), st: %s, ev: %s, from(%s%s)", e.running ? "" : "!!", et(e), o.state_name, t || "", l && !l.running ? "!!" : "", et(l))), r && q(e) &&
|
|
1096
|
+
if (!i) return e.gclass.gmt.mt_inject_event ? (h--, s && (L(1 === C ? n("🔜 %s %s%s %s", t || "", e.running ? "" : "!!", et(e), o.state_name) : n("🔃 mach(%s%s), st: %s, ev: %s, from(%s%s)", e.running ? "" : "!!", et(e), o.state_name, t || "", l && !l.running ? "!!" : "", et(l))), r && q(e) && Zn(r) && Gn(r)), e.gclass.gmt.mt_inject_event(e, t, r, l)) : (s && L(n("📛 mach(%s%s^%s), st: %s, ev: %s, 📛📛ERROR Event NOT DEFINED in state📛📛, from(%s%s^%s)", e.running ? "" : "!!", Ze(e), Xe(e), o.state_name, t || "", l && !l.running ? "!!" : "", Ze(l), Xe(l))), Tn(`📛📛 Event NOT DEFINED in state 📛📛: ${et(e)}, ${o.state_name}, ${t}`), h--, -1);
|
|
1097
1097
|
if (s) {
|
|
1098
1098
|
if (1 === C) L(n("🔄 %s %s%s %s from %s%s", t || "", e.running ? "" : "!!", et(e), o.state_name, l && !l.running ? "!!" : "", et(l)));
|
|
1099
1099
|
else {
|
|
1100
1100
|
let r = "";
|
|
1101
|
-
i.action && (r =
|
|
1101
|
+
i.action && (r = sl(i.action)), L(n("🔄 mach(%s%s^%s), st: %s, ev: %s%s%s, ac: %s, from(%s%s^%s)", e.running ? "" : "!!", Ze(e), Xe(e), o.state_name, "", t || "", "", r, l && !l.running ? "!!" : "", Ze(l), Xe(l)));
|
|
1102
1102
|
}
|
|
1103
|
-
r && q(e) &&
|
|
1103
|
+
r && q(e) && Zn(r) && Gn(r);
|
|
1104
1104
|
}
|
|
1105
1105
|
i.next_state && Dt(e, i.next_state);
|
|
1106
1106
|
let _ = -1;
|
|
@@ -1108,14 +1108,14 @@
|
|
|
1108
1108
|
i.action && (_ = i.action(e, t, r, l));
|
|
1109
1109
|
} catch (n) {
|
|
1110
1110
|
if (h--, !n || !n.__gobj_logged__) {
|
|
1111
|
-
|
|
1111
|
+
Tn(`${et(e)}: action of ${t} in ${o.state_name} THREW: ${n && n.stack ? n.stack : n}`);
|
|
1112
1112
|
try {
|
|
1113
1113
|
n.__gobj_logged__ = !0;
|
|
1114
1114
|
} catch (e) {}
|
|
1115
1115
|
}
|
|
1116
1116
|
throw n;
|
|
1117
1117
|
}
|
|
1118
|
-
return !s || 1 === C || e.obflag & $.obflag_destroyed || L(n("<- mach(%s%s^%s), st: %s, ev: %s, ret: %d", e.running ? "" : "!!", Ze(e), Xe(e), e.current_state.state_name, t || "",
|
|
1118
|
+
return !s || 1 === C || e.obflag & $.obflag_destroyed || L(n("<- mach(%s%s^%s), st: %s, ev: %s, ret: %d", e.running ? "" : "!!", Ze(e), Xe(e), e.current_state.state_name, t || "", or(_) ? _ : 0)), h--, _;
|
|
1119
1119
|
}
|
|
1120
1120
|
var Gt = Object.freeze({
|
|
1121
1121
|
__rename_event_name__: 1,
|
|
@@ -1148,35 +1148,35 @@
|
|
|
1148
1148
|
];
|
|
1149
1149
|
function xt(e, t) {
|
|
1150
1150
|
let n = e ? e.__config__ : null;
|
|
1151
|
-
if (!
|
|
1151
|
+
if (!nr(n) || !pr(n, "__hard_subscription__") && !pr(n, "__own_event__") && !pr(n, "__rename_event_name__")) return {
|
|
1152
1152
|
kw: e,
|
|
1153
1153
|
renamed_event: ""
|
|
1154
1154
|
};
|
|
1155
|
-
let r =
|
|
1155
|
+
let r = xn({}, e), l = xn({}, n);
|
|
1156
1156
|
r.__config__ = l;
|
|
1157
|
-
let o = "", s = l.__rename_event_name__, i = "string" != typeof s ||
|
|
1158
|
-
return i && (o = i.event_name, delete l.__rename_event_name__, t &&
|
|
1157
|
+
let o = "", s = l.__rename_event_name__, i = "string" != typeof s || ur(s) ? null : Mt(s);
|
|
1158
|
+
return i && (o = i.event_name, delete l.__rename_event_name__, t && tr(r.__global__) > 0 && (r.__global__ = xn(xn({}, r.__global__), { __original_event_name__: t }))), delete l.__hard_subscription__, delete l.__own_event__, {
|
|
1159
1159
|
kw: r,
|
|
1160
1160
|
renamed_event: o
|
|
1161
1161
|
};
|
|
1162
1162
|
}
|
|
1163
1163
|
function Kt(e, t, n, r, l, o) {
|
|
1164
|
-
let s =
|
|
1165
|
-
if (t && t !==
|
|
1166
|
-
let t =
|
|
1167
|
-
|
|
1164
|
+
let s = wr(t, l, "__config__", null), i = wr(t, l, "__global__", null), _ = wr(t, l, "__local__", null), a = Nr(t, l, "__filter__", null), u = !0;
|
|
1165
|
+
if (t && t !== Sr(null, e, "publisher", null) && (u = !1), o && o !== Sr(null, e, "subscriber", null) && (u = !1), n && n !== Or(null, e, "event", "") && (u = !1), r && r !== Or(null, e, "renamed_event", "") && (u = !1), tr(s) > 0) {
|
|
1166
|
+
let t = wr(null, e, "__config__", null);
|
|
1167
|
+
tr(t) > 0 && Wn(t, s) || (u = !1);
|
|
1168
1168
|
}
|
|
1169
|
-
if (
|
|
1170
|
-
let t =
|
|
1171
|
-
|
|
1169
|
+
if (tr(i) > 0) {
|
|
1170
|
+
let t = wr(null, e, "__global__", null);
|
|
1171
|
+
tr(t) > 0 && Wn(t, i) || (u = !1);
|
|
1172
1172
|
}
|
|
1173
|
-
if (
|
|
1174
|
-
let t =
|
|
1175
|
-
|
|
1173
|
+
if (tr(_) > 0) {
|
|
1174
|
+
let t = wr(null, e, "__local__", null);
|
|
1175
|
+
tr(t) > 0 && Wn(t, _) || (u = !1);
|
|
1176
1176
|
}
|
|
1177
|
-
if (
|
|
1178
|
-
let t =
|
|
1179
|
-
|
|
1177
|
+
if (tr(a) > 0) {
|
|
1178
|
+
let t = Nr(null, e, "__filter__", null);
|
|
1179
|
+
tr(t) > 0 && Wn(t, a) || (u = !1);
|
|
1180
1180
|
}
|
|
1181
1181
|
return u;
|
|
1182
1182
|
}
|
|
@@ -1184,7 +1184,7 @@
|
|
|
1184
1184
|
let s = [];
|
|
1185
1185
|
for (let i = 0; i < e.length; i++) {
|
|
1186
1186
|
let _ = e[i];
|
|
1187
|
-
Kt(_, t, n, r, l, o) &&
|
|
1187
|
+
Kt(_, t, n, r, l, o) && zn(s, _);
|
|
1188
1188
|
}
|
|
1189
1189
|
return s;
|
|
1190
1190
|
}
|
|
@@ -1192,17 +1192,17 @@
|
|
|
1192
1192
|
return e.indexOf(t);
|
|
1193
1193
|
}
|
|
1194
1194
|
function Jt(e, t, r, l) {
|
|
1195
|
-
let o =
|
|
1196
|
-
if (!!(
|
|
1195
|
+
let o = Sr(e, t, "publisher", null, Zt.KW_REQUIRED), s = Sr(e, t, "subscriber", null, Zt.KW_REQUIRED), i = Or(e, t, "event", "", Zt.KW_REQUIRED);
|
|
1196
|
+
if (!!(jr(e, t, "subs_flag", null, Zt.KW_REQUIRED) & Gt.__hard_subscription__) && !r) return -1;
|
|
1197
1197
|
let _ = B(s) || B(o);
|
|
1198
1198
|
if (Bt(o.dl_subscriptions, t) < 0) return _ && L(n("💜💜👎 unsubscribing event '%s': publisher %s, subscriber'%s', ALREADY REMOVED", i || "", et(o), et(s))), 1;
|
|
1199
|
-
_ && (L(n("💜💜👎 unsubscribing event '%s': publisher %s, subscriber'%s'", i || "", et(o), et(s))),
|
|
1199
|
+
_ && (L(n("💜💜👎 unsubscribing event '%s': publisher %s, subscriber'%s'", i || "", et(o), et(s))), Sn(t)), o.obflag & $.obflag_destroyed || l || o.gclass.gmt.mt_subscription_deleted && o.gclass.gmt.mt_subscription_deleted(o, t);
|
|
1200
1200
|
let a = Bt(o.dl_subscriptions, t);
|
|
1201
|
-
return a >= 0 ?
|
|
1201
|
+
return a >= 0 ? Xn(o.dl_subscriptions, a) : (Tn(`${et(e)}: subscription in publisher not found`), Sn(t)), a = Bt(s.dl_subscribings, t), a >= 0 ? Xn(s.dl_subscribings, a) : (Tn(`${et(e)}: subscription in subscriber not found`), Sn(t)), 0;
|
|
1202
1202
|
}
|
|
1203
1203
|
function qt(e, t, r, l) {
|
|
1204
|
-
if (null == r && (r = {}), !e) return
|
|
1205
|
-
if (!l) return
|
|
1204
|
+
if (null == r && (r = {}), !e) return Tn(`publisher NULL: ev ${t}`), 0;
|
|
1205
|
+
if (!l) return Tn(`subscriber NULL: ev ${t}`), 0;
|
|
1206
1206
|
const o = /* @__PURE__ */ new Set([
|
|
1207
1207
|
"__config__",
|
|
1208
1208
|
"__global__",
|
|
@@ -1211,49 +1211,49 @@
|
|
|
1211
1211
|
"__service__"
|
|
1212
1212
|
]);
|
|
1213
1213
|
if (Object.keys(r).forEach((n) => {
|
|
1214
|
-
o.has(n) ||
|
|
1215
|
-
}),
|
|
1216
|
-
else if (!(Ct(e, t, R.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & w.gcflag_no_check_output_events)) return
|
|
1214
|
+
o.has(n) || Tn(`${et(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
|
|
1215
|
+
}), ur(t)) t = "";
|
|
1216
|
+
else if (!(Ct(e, t, R.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & w.gcflag_no_check_output_events)) return Tn(`event NOT in output event list: ${et(e)}, ${t}`), 0;
|
|
1217
1217
|
let s = xt(r, t), i = Yt(e.dl_subscriptions, e, t, s.renamed_event, s.kw, l), _ = null;
|
|
1218
|
-
for (let t = 0; t < i.length; t++) if (
|
|
1218
|
+
for (let t = 0; t < i.length; t++) if (jr(e, i[t], "subs_flag", 0, Zt.KW_REQUIRED) & Gt.__hard_subscription__) {
|
|
1219
1219
|
_ = i[t];
|
|
1220
1220
|
break;
|
|
1221
1221
|
}
|
|
1222
|
-
if (_) return
|
|
1223
|
-
|
|
1222
|
+
if (_) return vn(`${et(e)}: Hard subscription REPEATED, the one there is kept and returned (event: ${t}, subscriber: ${et(l)})`), _;
|
|
1223
|
+
er(i) > 0 && (Tn(`${et(e)}: ${er(i)} subscription(s) REPEATED, will be deleted and override`), Sn(i, "subscription REPEATED"), Ht(e, i, !1));
|
|
1224
1224
|
let a = function(e, t, n, r) {
|
|
1225
1225
|
let l = _e(e, Wt);
|
|
1226
|
-
|
|
1226
|
+
Hn(l, "event", t), Hn(l, "subscriber", r), Hn(l, "publisher", e);
|
|
1227
1227
|
let o = 0;
|
|
1228
1228
|
if (n) {
|
|
1229
|
-
let r =
|
|
1230
|
-
if (
|
|
1231
|
-
let n =
|
|
1232
|
-
|
|
1233
|
-
let s =
|
|
1234
|
-
if (!
|
|
1229
|
+
let r = wr(e, n, "__config__", null), s = wr(e, n, "__global__", null), i = wr(e, n, "__local__", null), _ = Nr(e, n, "__filter__", null), a = Or(e, n, "__service__", "");
|
|
1230
|
+
if (tr(s) > 0 && Hn(l, "__global__", Mn(s)), tr(r) > 0) {
|
|
1231
|
+
let n = Mn(r);
|
|
1232
|
+
Hn(l, "__config__", n);
|
|
1233
|
+
let s = Or(e, n, "__rename_event_name__", "");
|
|
1234
|
+
if (!ur(s)) {
|
|
1235
1235
|
let r = Mt(s);
|
|
1236
1236
|
if (r) {
|
|
1237
|
-
|
|
1238
|
-
let s =
|
|
1239
|
-
|
|
1240
|
-
} else
|
|
1237
|
+
Hn(l, "renamed_event", r.event_name), delete n.__rename_event_name__, o |= Gt.__rename_event_name__;
|
|
1238
|
+
let s = wr(e, l, "__global__", null);
|
|
1239
|
+
nr(s) || (s = {}, Hn(l, "__global__", s)), s.__original_event_name__ = t;
|
|
1240
|
+
} else Tn(`${et(e)}: EVENT NOT FOUND (__rename_event_name__: ${s})`);
|
|
1241
1241
|
}
|
|
1242
|
-
if (
|
|
1243
|
-
let t =
|
|
1244
|
-
|
|
1242
|
+
if (pr(n, "__hard_subscription__")) {
|
|
1243
|
+
let t = vr(e, n, "__hard_subscription__", !1);
|
|
1244
|
+
Jn(n, "__hard_subscription__"), t && (o |= Gt.__hard_subscription__);
|
|
1245
1245
|
}
|
|
1246
|
-
if (
|
|
1247
|
-
let t =
|
|
1248
|
-
|
|
1246
|
+
if (pr(n, "__own_event__")) {
|
|
1247
|
+
let t = vr(e, n, "__own_event__", !1);
|
|
1248
|
+
Jn(n, "__own_event__"), t && (o |= Gt.__own_event__);
|
|
1249
1249
|
}
|
|
1250
1250
|
}
|
|
1251
|
-
|
|
1251
|
+
tr(i) > 0 && Hn(l, "__local__", Mn(i)), tr(_) > 0 && Hn(l, "__filter__", Mn(_)), ur(a) || Hn(l, "__service__", a);
|
|
1252
1252
|
}
|
|
1253
|
-
return
|
|
1253
|
+
return Hn(l, "subs_flag", o), l;
|
|
1254
1254
|
}(e, t, r, l);
|
|
1255
|
-
if (!a) return
|
|
1256
|
-
if (
|
|
1255
|
+
if (!a) return Tn(`${et(e)}: _create_subscription() FAILED`), 0;
|
|
1256
|
+
if (zn(e.dl_subscriptions, a), zn(l.dl_subscribings, a), (B(l) || B(e)) && (L(n("💜💜👍 subscribing event '%s', publisher '%s', subscriber %s", t || "", et(e), et(l))), r && (q(l) || q(e)) && Gn(r)), e.gclass.gmt.mt_subscription_added) {
|
|
1257
1257
|
let t = e.gclass.gmt.mt_subscription_added(e, a);
|
|
1258
1258
|
(t < 0 || !1 === t) && (Jt(e, a, !0, !0), a = 0);
|
|
1259
1259
|
}
|
|
@@ -1262,7 +1262,7 @@
|
|
|
1262
1262
|
function Ht(e, t, n) {
|
|
1263
1263
|
let r = [...t], l = 0;
|
|
1264
1264
|
for (let t = 0; t < r.length; t++) Jt(e, r[t], n, !1) > 0 && l++;
|
|
1265
|
-
return l &&
|
|
1265
|
+
return l && vn(`${et(e)}: Subscription(s) already removed, nothing to remove (count: ${l})`), 0;
|
|
1266
1266
|
}
|
|
1267
1267
|
function zt(e, t, n, r) {
|
|
1268
1268
|
return null == n && (n = {}), Yt(e.dl_subscriptions, e, t, null, n, r);
|
|
@@ -1271,12 +1271,12 @@
|
|
|
1271
1271
|
return Yt(e.dl_subscribings, r, t, null, n, e);
|
|
1272
1272
|
}
|
|
1273
1273
|
function Xt(e, t, r) {
|
|
1274
|
-
if (
|
|
1275
|
-
if (
|
|
1274
|
+
if (nr(r) || (r = {}), !e || e.obflag & ($.obflag_destroyed | $.obflag_destroying)) return Tn("gobj NULL or DESTROYED"), -1;
|
|
1275
|
+
if (ur(t)) return Tn(`${et(e)}: event EMPTY`), -1;
|
|
1276
1276
|
let l = At(e, t, !0);
|
|
1277
|
-
if (!(l && l.event_flag & (R.EVF_SYSTEM_EVENT | R.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & w.gcflag_no_check_output_events)) return
|
|
1277
|
+
if (!(l && l.event_flag & (R.EVF_SYSTEM_EVENT | R.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & w.gcflag_no_check_output_events)) return Tn(`event NOT in output event list: ${et(e)}, ev ${t}`), -1;
|
|
1278
1278
|
let o = (B(e) || H(e, t)) && !z(e, t);
|
|
1279
|
-
if (o && (L(1 === C ? n("🔝🔝 %s %s%s %s", t || "", e.running ? "" : "!!", et(e), e.current_state.state_name) : n("🔝🔝 mach(%s%s^%s), st: %s, ev: %s%s%s", e.running ? "" : "!!", Ze(e), Xe(e), e.current_state.state_name, "", t || "", "")), q(e) &&
|
|
1279
|
+
if (o && (L(1 === C ? n("🔝🔝 %s %s%s %s", t || "", e.running ? "" : "!!", et(e), e.current_state.state_name) : n("🔝🔝 mach(%s%s^%s), st: %s, ev: %s%s%s", e.running ? "" : "!!", Ze(e), Xe(e), e.current_state.state_name, "", t || "", "")), q(e) && Zn(r) && Gn(r)), e.gclass.gmt.mt_publish_event) {
|
|
1280
1280
|
let n = e.gclass.gmt.mt_publish_event(e, t, r);
|
|
1281
1281
|
if (n <= 0) return n;
|
|
1282
1282
|
}
|
|
@@ -1288,20 +1288,20 @@
|
|
|
1288
1288
|
if (n < 0) break;
|
|
1289
1289
|
if (!n) continue;
|
|
1290
1290
|
}
|
|
1291
|
-
let u =
|
|
1291
|
+
let u = Sr(e, a, "subscriber", null, Zt.KW_REQUIRED);
|
|
1292
1292
|
if (!u || ot(u)) continue;
|
|
1293
|
-
let c =
|
|
1294
|
-
if (
|
|
1295
|
-
|
|
1296
|
-
let l =
|
|
1297
|
-
|
|
1293
|
+
let c = jr(e, a, "subs_flag", 0, Zt.KW_REQUIRED), f = Or(e, a, "event", "", Zt.KW_REQUIRED);
|
|
1294
|
+
if (ur(f) || 0 === gr(f, t)) {
|
|
1295
|
+
wr(e, a, "__config__", null, 0);
|
|
1296
|
+
let l = wr(e, a, "__global__", null, 0), s = wr(e, a, "__local__", null, 0), f = Nr(e, a, "__filter__", null, 0), g = a.renamed_event;
|
|
1297
|
+
ur(g) && (g = t);
|
|
1298
1298
|
let d = 1;
|
|
1299
|
-
if (e.gclass.gmt.mt_publication_filter ? d = e.gclass.gmt.mt_publication_filter(e, t, r, u) :
|
|
1299
|
+
if (e.gclass.gmt.mt_publication_filter ? d = e.gclass.gmt.mt_publication_filter(e, t, r, u) : tr(f) > 0 && (d = kr(r, f) ? 1 : 0, o && (L(n("💜💜🔄%s publishing with filter, event '%s', subscriber'%s', publisher %s", d ? "👍" : "👎", t || "", et(u), et(e))), Sn(f))), d < 0) break;
|
|
1300
1300
|
if (!d) continue;
|
|
1301
1301
|
let b = At(u, t, !0);
|
|
1302
1302
|
if (b && b.event_flag & R.EVF_SYSTEM_EVENT && !It(u, b.event_name, 0)) continue;
|
|
1303
1303
|
let p = r;
|
|
1304
|
-
(
|
|
1304
|
+
(tr(s) > 0 || tr(l) > 0) && (p = xn({}, r)), tr(s) > 0 && br(p, s), tr(l) > 0 && xn(p, Mn(l)), o && (L(1 === C ? n("🔝🔄 %s (%s) %s%s", t || "", g || "", u.running ? "" : "!!", et(u)) : n("🔝🔄 mach(%s%s), st: %s, ev: %s (%s), from(%s%s)", u.running ? "" : "!!", et(u), kt(u), t || "", g || "", e && !e.running ? "!!" : "", et(e))), q(e) && Zn(p) && Gn(p));
|
|
1305
1305
|
let m = Vt(u, g, p, e);
|
|
1306
1306
|
if (m < 0 && c & Gt.__own_event__) {
|
|
1307
1307
|
i = -1;
|
|
@@ -1310,7 +1310,7 @@
|
|
|
1310
1310
|
if (_ += m, i++, ot(e)) break;
|
|
1311
1311
|
}
|
|
1312
1312
|
}
|
|
1313
|
-
return i || l && l.event_flag & R.EVF_NO_WARN_SUBS ||
|
|
1313
|
+
return i || l && l.event_flag & R.EVF_NO_WARN_SUBS || vn(`${et(e)}: Publish event WITHOUT subscribers, ev ${t}`), _;
|
|
1314
1314
|
}
|
|
1315
1315
|
var Zt = Object.freeze({
|
|
1316
1316
|
KW_REQUIRED: 1,
|
|
@@ -1348,12 +1348,7 @@
|
|
|
1348
1348
|
function gn(e, t, n) {
|
|
1349
1349
|
fn || (function(e, t, n) {
|
|
1350
1350
|
let r = t;
|
|
1351
|
-
|
|
1352
|
-
r = JSON.stringify(t);
|
|
1353
|
-
} catch (e) {
|
|
1354
|
-
r = String(t);
|
|
1355
|
-
}
|
|
1356
|
-
_n.push([
|
|
1351
|
+
"json" === e && (r = pn(t)), _n.push([
|
|
1357
1352
|
e,
|
|
1358
1353
|
r,
|
|
1359
1354
|
n
|
|
@@ -1404,13 +1399,15 @@
|
|
|
1404
1399
|
if ("string" == typeof e) {
|
|
1405
1400
|
if (1 === t.length) return e;
|
|
1406
1401
|
let r = 1;
|
|
1407
|
-
n = e.replace(/%[
|
|
1402
|
+
n = e.replace(/%[sdifoOj%]/g, (e) => {
|
|
1403
|
+
if ("%%" === e) return "%";
|
|
1408
1404
|
const n = t[r++];
|
|
1409
1405
|
switch (e) {
|
|
1410
1406
|
case "%s": return mn(n);
|
|
1411
1407
|
case "%d":
|
|
1412
|
-
case "%i": return hn(parseInt, n);
|
|
1413
|
-
case "%f": return hn(parseFloat, n);
|
|
1408
|
+
case "%i": return "bigint" == typeof n ? n.toString() : hn(parseInt, n);
|
|
1409
|
+
case "%f": return "bigint" == typeof n ? n.toString() : hn(parseFloat, n);
|
|
1410
|
+
case "%j": return pn(n);
|
|
1414
1411
|
case "%o":
|
|
1415
1412
|
case "%O": return "object" == typeof n ? pn(n) : mn(n);
|
|
1416
1413
|
default: return e;
|
|
@@ -1422,25 +1419,34 @@
|
|
|
1422
1419
|
return n;
|
|
1423
1420
|
}
|
|
1424
1421
|
function En(e, ...t) {
|
|
1425
|
-
|
|
1426
|
-
|
|
1422
|
+
try {
|
|
1423
|
+
e(...t);
|
|
1424
|
+
} catch (e) {
|
|
1425
|
+
try {
|
|
1426
|
+
en.error("a log function threw:", e);
|
|
1427
|
+
} catch (e) {}
|
|
1428
|
+
}
|
|
1427
1429
|
}
|
|
1428
1430
|
function Tn(e, ...t) {
|
|
1429
|
-
let n = yn(e, ...t), r =
|
|
1430
|
-
|
|
1431
|
+
let n = yn(e, ...t), r = rl();
|
|
1432
|
+
tn && (tn === en.error ? cn("error", n) && En(tn, "%c" + r + " ERROR: " + String(n), "color:red") : (cn("error", n) && en.error("%c" + r + " ERROR: " + String(n), "color:red"), En(tn, `${r} ERROR: ${String(n)}`))), gn("error", n, r);
|
|
1431
1433
|
}
|
|
1432
1434
|
function vn(e, ...t) {
|
|
1433
|
-
let n = yn(e, ...t), r =
|
|
1434
|
-
|
|
1435
|
+
let n = yn(e, ...t), r = rl();
|
|
1436
|
+
nn && (nn === en.warn ? cn("warning", n) && En(nn, "%c" + r + " WARNING: " + String(n), "color:yellow") : (cn("warning", n) && en.warn("%c" + r + " WARNING: " + String(n), "color:yellow"), En(nn, `${r} WARNING: ${String(n)}`))), gn("warning", n, r);
|
|
1435
1437
|
}
|
|
1436
1438
|
function jn(e, ...t) {
|
|
1437
|
-
let n = yn(e, ...t), r =
|
|
1438
|
-
ln && cn("
|
|
1439
|
+
let n = yn(e, ...t), r = rl();
|
|
1440
|
+
ln && cn("debug", n) && En(ln, "%c" + r + " DEBUG: " + String(n), "color:silver"), gn("debug", n, r);
|
|
1439
1441
|
}
|
|
1440
|
-
function On(e, t) {
|
|
1441
|
-
|
|
1442
|
+
function On(e, ...t) {
|
|
1443
|
+
let n = yn(e, ...t), r = rl();
|
|
1444
|
+
ln && cn("msg", n) && En(ln, "%c" + r + " MSG: " + String(n), "color:cyan"), gn("msg", n, r);
|
|
1442
1445
|
}
|
|
1443
|
-
|
|
1446
|
+
function Sn(e, t) {
|
|
1447
|
+
cn("json", t) && (t && En(en.warn, "=====> " + mn(t)), En(en.dir, e)), gn("json", e, rl());
|
|
1448
|
+
}
|
|
1449
|
+
var wn = [
|
|
1444
1450
|
"passw",
|
|
1445
1451
|
"pwd",
|
|
1446
1452
|
"passphrase",
|
|
@@ -1452,12 +1458,12 @@
|
|
|
1452
1458
|
"cookie",
|
|
1453
1459
|
"credential",
|
|
1454
1460
|
"salt"
|
|
1455
|
-
],
|
|
1461
|
+
], Nn = [
|
|
1456
1462
|
"apikey",
|
|
1457
1463
|
"sessionid",
|
|
1458
1464
|
"sessionkey",
|
|
1459
1465
|
"authdata"
|
|
1460
|
-
],
|
|
1466
|
+
], $n = /* @__PURE__ */ new Set([
|
|
1461
1467
|
"endpoint",
|
|
1462
1468
|
"url",
|
|
1463
1469
|
"uri",
|
|
@@ -1481,25 +1487,25 @@
|
|
|
1481
1487
|
"expires",
|
|
1482
1488
|
"mode"
|
|
1483
1489
|
]);
|
|
1484
|
-
function
|
|
1490
|
+
function Rn(e) {
|
|
1485
1491
|
if ("string" != typeof e || e.length < 3) return !1;
|
|
1486
1492
|
let t = e.toLowerCase(), n = !1;
|
|
1487
|
-
for (const e of
|
|
1493
|
+
for (const e of wn) if (t.indexOf(e) >= 0) {
|
|
1488
1494
|
n = !0;
|
|
1489
1495
|
break;
|
|
1490
1496
|
}
|
|
1491
1497
|
if (!n) {
|
|
1492
1498
|
let e = t.replace(/[_\-. \t]/g, "");
|
|
1493
|
-
for (const t of
|
|
1499
|
+
for (const t of Nn) if (e.indexOf(t) >= 0) {
|
|
1494
1500
|
n = !0;
|
|
1495
1501
|
break;
|
|
1496
1502
|
}
|
|
1497
1503
|
}
|
|
1498
1504
|
if (n || (n = t.indexOf("priv") >= 0 && t.indexOf("key") >= 0), !n) return !1;
|
|
1499
|
-
for (const e of t.split(/[_\-. \t]/)) if (
|
|
1505
|
+
for (const e of t.split(/[_\-. \t]/)) if ($n.has(e)) return !1;
|
|
1500
1506
|
return !0;
|
|
1501
1507
|
}
|
|
1502
|
-
function
|
|
1508
|
+
function Dn(e, t, n) {
|
|
1503
1509
|
const r = (e) => " " === e || " " === e, l = (t) => n && e[t] === n && (t + 1 >= e.length || r(e[t + 1]));
|
|
1504
1510
|
let o = t;
|
|
1505
1511
|
for (;;) {
|
|
@@ -1515,12 +1521,12 @@
|
|
|
1515
1521
|
o = t;
|
|
1516
1522
|
}
|
|
1517
1523
|
}
|
|
1518
|
-
var
|
|
1519
|
-
function
|
|
1524
|
+
var kn = 128, An = 4194304, In = "<not shown: too large to mask>";
|
|
1525
|
+
function Cn(e) {
|
|
1520
1526
|
if ("string" != typeof e || e.indexOf("=") < 0) return null;
|
|
1521
|
-
if (e.length >
|
|
1527
|
+
if (e.length > An) return In;
|
|
1522
1528
|
let t, n = !1, r = /(^|[ \t])attribute=["']?([^ \t"']*)/g;
|
|
1523
|
-
for (; null !== (t = r.exec(e));)
|
|
1529
|
+
for (; null !== (t = r.exec(e));) Rn(t[2].slice(-128)) && (n = !0);
|
|
1524
1530
|
let l = [], o = 0, s = !1, i = "", _ = 0, a = 0;
|
|
1525
1531
|
const u = (t) => t >= e.length || " " === e[t] || " " === e[t];
|
|
1526
1532
|
for (; a < e.length;) {
|
|
@@ -1533,8 +1539,8 @@
|
|
|
1533
1539
|
a++;
|
|
1534
1540
|
continue;
|
|
1535
1541
|
}
|
|
1536
|
-
let r = e.substring(Math.max(_, a -
|
|
1537
|
-
if (_ = a + 1, !(
|
|
1542
|
+
let r = e.substring(Math.max(_, a - kn), a);
|
|
1543
|
+
if (_ = a + 1, !(Rn(r) || n && "value" === r.toLowerCase())) {
|
|
1538
1544
|
a++;
|
|
1539
1545
|
continue;
|
|
1540
1546
|
}
|
|
@@ -1543,18 +1549,18 @@
|
|
|
1543
1549
|
if (f) {
|
|
1544
1550
|
for (c = a + 1; c < e.length && e[c] !== f;) c++;
|
|
1545
1551
|
e[c] === f && c++;
|
|
1546
|
-
} else c =
|
|
1552
|
+
} else c = Dn(e, a, i);
|
|
1547
1553
|
c > a && (l.push(e.substring(o, a)), l.push("********"), o = c, s = !0), a = c, _ = a;
|
|
1548
1554
|
}
|
|
1549
1555
|
return s ? (l.push(e.substring(o)), l.join("")) : null;
|
|
1550
1556
|
}
|
|
1551
|
-
var
|
|
1552
|
-
var
|
|
1553
|
-
function
|
|
1557
|
+
var Ln = 64, Pn = "<not shown: the masking failed>";
|
|
1558
|
+
var Un = Symbol("mask-in-progress");
|
|
1559
|
+
function Fn(e, t, n, r) {
|
|
1554
1560
|
if ("string" == typeof e) {
|
|
1555
|
-
if (e.length > r.left) return r.left = 0,
|
|
1561
|
+
if (e.length > r.left) return r.left = 0, In;
|
|
1556
1562
|
r.left -= e.length;
|
|
1557
|
-
let t =
|
|
1563
|
+
let t = Cn(e);
|
|
1558
1564
|
return null !== t ? t : e;
|
|
1559
1565
|
}
|
|
1560
1566
|
let l = Array.isArray(e);
|
|
@@ -1563,13 +1569,13 @@
|
|
|
1563
1569
|
let t = Object.getPrototypeOf(e);
|
|
1564
1570
|
return t === Object.prototype || null === t;
|
|
1565
1571
|
}(e)) return e;
|
|
1566
|
-
if (r.left <= 0) return
|
|
1572
|
+
if (r.left <= 0) return In;
|
|
1567
1573
|
if (t.has(e)) {
|
|
1568
1574
|
let n = t.get(e);
|
|
1569
|
-
return n ===
|
|
1575
|
+
return n === Un ? "<cycle>" : n;
|
|
1570
1576
|
}
|
|
1571
|
-
if (n >=
|
|
1572
|
-
r.left -= 1, t.set(e,
|
|
1577
|
+
if (n >= Ln) return "<deeper not shown>";
|
|
1578
|
+
r.left -= 1, t.set(e, Un);
|
|
1573
1579
|
let o, s = !1, i = !1;
|
|
1574
1580
|
if (l) {
|
|
1575
1581
|
o = [];
|
|
@@ -1579,13 +1585,13 @@
|
|
|
1579
1585
|
break;
|
|
1580
1586
|
}
|
|
1581
1587
|
r.left -= 1;
|
|
1582
|
-
let _ =
|
|
1588
|
+
let _ = Fn(e[l], t, n + 1, r);
|
|
1583
1589
|
_ !== e[l] && (s = !0), o.push(_);
|
|
1584
1590
|
}
|
|
1585
|
-
i && o.push(
|
|
1591
|
+
i && o.push(In);
|
|
1586
1592
|
} else {
|
|
1587
1593
|
o = Object.create(Object.getPrototypeOf(e));
|
|
1588
|
-
let l = "string" == typeof e.attribute &&
|
|
1594
|
+
let l = "string" == typeof e.attribute && Rn(e.attribute.slice(-128));
|
|
1589
1595
|
for (const _ in e) {
|
|
1590
1596
|
if (!Object.prototype.hasOwnProperty.call(e, _)) continue;
|
|
1591
1597
|
if (r.left <= 0) {
|
|
@@ -1594,33 +1600,33 @@
|
|
|
1594
1600
|
}
|
|
1595
1601
|
r.left -= 1 + _.length;
|
|
1596
1602
|
let a, u = e[_];
|
|
1597
|
-
a = (
|
|
1603
|
+
a = (Rn(_.slice(-128)) || l && "value" === _) && null != u && "" !== u ? "********" : Fn(u, t, n + 1, r), a !== u && (s = !0), hr(o, _, a);
|
|
1598
1604
|
}
|
|
1599
|
-
i && (o["<more>"] =
|
|
1605
|
+
i && (o["<more>"] = In);
|
|
1600
1606
|
}
|
|
1601
1607
|
return s || i || (o = e), t.set(e, o), o;
|
|
1602
1608
|
}
|
|
1603
|
-
function
|
|
1609
|
+
function Vn(e) {
|
|
1604
1610
|
try {
|
|
1605
|
-
return
|
|
1611
|
+
return Fn(e, /* @__PURE__ */ new WeakMap(), 0, { left: An });
|
|
1606
1612
|
} catch (e) {
|
|
1607
|
-
return
|
|
1613
|
+
return Pn;
|
|
1608
1614
|
}
|
|
1609
1615
|
}
|
|
1610
|
-
function
|
|
1611
|
-
|
|
1616
|
+
function Gn(e, t) {
|
|
1617
|
+
Sn(Vn(e), t);
|
|
1612
1618
|
}
|
|
1613
|
-
function
|
|
1619
|
+
function Mn(e) {
|
|
1614
1620
|
return structuredClone(e);
|
|
1615
1621
|
}
|
|
1616
|
-
function
|
|
1622
|
+
function Wn(e, t) {
|
|
1617
1623
|
if (e === t) return !0;
|
|
1618
1624
|
if (null === e || null === t) return e === t;
|
|
1619
1625
|
if (typeof e != typeof t) return !1;
|
|
1620
1626
|
if (Array.isArray(e) !== Array.isArray(t)) return !1;
|
|
1621
1627
|
if (Array.isArray(e)) {
|
|
1622
1628
|
if (e.length !== t.length) return !1;
|
|
1623
|
-
for (let n = 0; n < e.length; n++) if (!
|
|
1629
|
+
for (let n = 0; n < e.length; n++) if (!Wn(e[n], t[n])) return !1;
|
|
1624
1630
|
return !0;
|
|
1625
1631
|
}
|
|
1626
1632
|
if ("object" == typeof e) {
|
|
@@ -1628,118 +1634,118 @@
|
|
|
1628
1634
|
if (n.length !== r.length) return !1;
|
|
1629
1635
|
for (let l = 0; l < n.length; l++) {
|
|
1630
1636
|
if (n[l] !== r[l]) return !1;
|
|
1631
|
-
if (!
|
|
1637
|
+
if (!Wn(e[n[l]], t[r[l]])) return !1;
|
|
1632
1638
|
}
|
|
1633
1639
|
return !0;
|
|
1634
1640
|
}
|
|
1635
1641
|
return e === t;
|
|
1636
1642
|
}
|
|
1637
|
-
function Wn(e, t) {
|
|
1638
|
-
if (!t) return e;
|
|
1639
|
-
for (let n of Object.keys(t)) mr(e, n, t[n]);
|
|
1640
|
-
return e;
|
|
1641
|
-
}
|
|
1642
1643
|
function xn(e, t) {
|
|
1643
1644
|
if (!t) return e;
|
|
1644
|
-
for (let n
|
|
1645
|
+
for (let n of Object.keys(t)) hr(e, n, t[n]);
|
|
1645
1646
|
return e;
|
|
1646
1647
|
}
|
|
1647
1648
|
function Kn(e, t) {
|
|
1648
1649
|
if (!t) return e;
|
|
1649
|
-
for (let n in t) Object.prototype.hasOwnProperty.call(t, n) &&
|
|
1650
|
+
for (let n in t) Object.prototype.hasOwnProperty.call(t, n) && Object.prototype.hasOwnProperty.call(e, n) && hr(e, n, t[n]);
|
|
1650
1651
|
return e;
|
|
1651
1652
|
}
|
|
1652
1653
|
function Yn(e, t) {
|
|
1653
|
-
if (
|
|
1654
|
+
if (!t) return e;
|
|
1655
|
+
for (let n in t) Object.prototype.hasOwnProperty.call(t, n) && !Object.prototype.hasOwnProperty.call(e, n) && hr(e, n, t[n]);
|
|
1656
|
+
return e;
|
|
1654
1657
|
}
|
|
1655
1658
|
function Bn(e, t) {
|
|
1656
|
-
e && Object.prototype.hasOwnProperty.call(e, t)
|
|
1659
|
+
if (e && Object.prototype.hasOwnProperty.call(e, t)) return e[t];
|
|
1657
1660
|
}
|
|
1658
|
-
function Jn(e, t
|
|
1659
|
-
|
|
1661
|
+
function Jn(e, t) {
|
|
1662
|
+
e && Object.prototype.hasOwnProperty.call(e, t) && delete e[t];
|
|
1660
1663
|
}
|
|
1661
1664
|
function qn(e, t, n) {
|
|
1662
|
-
|
|
1665
|
+
hr(e, t, n);
|
|
1663
1666
|
}
|
|
1664
|
-
function Hn(e, t) {
|
|
1665
|
-
e
|
|
1667
|
+
function Hn(e, t, n) {
|
|
1668
|
+
hr(e, t, n);
|
|
1666
1669
|
}
|
|
1667
1670
|
function zn(e, t) {
|
|
1668
1671
|
e.push(t);
|
|
1669
1672
|
}
|
|
1670
1673
|
function Qn(e, t) {
|
|
1671
|
-
e.
|
|
1674
|
+
e.push(t);
|
|
1672
1675
|
}
|
|
1673
|
-
function Xn(e) {
|
|
1674
|
-
|
|
1676
|
+
function Xn(e, t) {
|
|
1677
|
+
e.splice(t, 1);
|
|
1675
1678
|
}
|
|
1676
1679
|
function Zn(e) {
|
|
1677
|
-
return nr(e) ? e.length : 0;
|
|
1680
|
+
return nr(e) ? Object.keys(e).length : 0;
|
|
1678
1681
|
}
|
|
1679
1682
|
function er(e) {
|
|
1680
|
-
return
|
|
1683
|
+
return rr(e) ? e.length : 0;
|
|
1681
1684
|
}
|
|
1682
1685
|
function tr(e) {
|
|
1683
|
-
return
|
|
1686
|
+
return nr(e) ? Object.keys(e).length : rr(e) ? e.length : lr(e) && e.length > 0 ? 1 : 0;
|
|
1684
1687
|
}
|
|
1685
1688
|
function nr(e) {
|
|
1686
|
-
return Array.isArray(e);
|
|
1689
|
+
return null !== e && "object" == typeof e && !Array.isArray(e);
|
|
1687
1690
|
}
|
|
1688
1691
|
function rr(e) {
|
|
1689
|
-
return
|
|
1692
|
+
return Array.isArray(e);
|
|
1690
1693
|
}
|
|
1691
1694
|
function lr(e) {
|
|
1692
|
-
return "
|
|
1695
|
+
return "string" == typeof e;
|
|
1693
1696
|
}
|
|
1694
1697
|
function or(e) {
|
|
1695
|
-
return "
|
|
1698
|
+
return "number" == typeof e && Number.isFinite(e);
|
|
1696
1699
|
}
|
|
1697
1700
|
function sr(e) {
|
|
1698
|
-
return
|
|
1701
|
+
return "boolean" == typeof e;
|
|
1699
1702
|
}
|
|
1700
1703
|
function ir(e) {
|
|
1701
|
-
return
|
|
1704
|
+
return null == e;
|
|
1702
1705
|
}
|
|
1703
1706
|
function _r(e) {
|
|
1704
|
-
return
|
|
1707
|
+
return "function" == typeof e;
|
|
1705
1708
|
}
|
|
1706
1709
|
function ar(e) {
|
|
1707
|
-
return
|
|
1710
|
+
return e instanceof S;
|
|
1708
1711
|
}
|
|
1709
1712
|
function ur(e) {
|
|
1710
|
-
return lr(e)
|
|
1713
|
+
return !lr(e) || 0 === e.length;
|
|
1711
1714
|
}
|
|
1712
|
-
function cr(e
|
|
1713
|
-
return e
|
|
1715
|
+
function cr(e) {
|
|
1716
|
+
return or(e) ? Boolean(e) : /^\s*(true|1|on)\s*$/i.test(e);
|
|
1714
1717
|
}
|
|
1715
1718
|
function fr(e, t) {
|
|
1719
|
+
return e === t ? 0 : e > t ? 1 : -1;
|
|
1720
|
+
}
|
|
1721
|
+
function gr(e, t) {
|
|
1716
1722
|
let n = e.toLowerCase(), r = t.toLowerCase();
|
|
1717
1723
|
return n === r ? 0 : n > r ? 1 : -1;
|
|
1718
1724
|
}
|
|
1719
|
-
function
|
|
1720
|
-
if (
|
|
1721
|
-
if (
|
|
1725
|
+
function dr(e, t) {
|
|
1726
|
+
if (nr(e) || nr(t) || rr(e) || rr(t)) return 0;
|
|
1727
|
+
if (or(e) || or(t)) {
|
|
1722
1728
|
let n = Number(e), r = Number(t);
|
|
1723
1729
|
return Number.isNaN(n) && (n = 0), Number.isNaN(r) && (r = 0), n > r ? 1 : n < r ? -1 : 0;
|
|
1724
1730
|
}
|
|
1725
|
-
if (
|
|
1731
|
+
if (sr(e) || sr(t)) {
|
|
1726
1732
|
let n = Number(e), r = Number(t);
|
|
1727
1733
|
return n > r ? 1 : n < r ? -1 : 0;
|
|
1728
1734
|
}
|
|
1729
|
-
return
|
|
1735
|
+
return fr(String(e), String(t));
|
|
1730
1736
|
}
|
|
1731
|
-
function
|
|
1732
|
-
if ("object" != typeof t || Array.isArray(t)) if (Array.isArray(t)) for (const n of t)
|
|
1737
|
+
function br(e, t) {
|
|
1738
|
+
if ("object" != typeof t || Array.isArray(t)) if (Array.isArray(t)) for (const n of t) br(e, n);
|
|
1733
1739
|
else "string" == typeof t && delete e[t];
|
|
1734
1740
|
else for (const n of Object.keys(t)) delete e[n];
|
|
1735
1741
|
}
|
|
1736
|
-
function
|
|
1742
|
+
function pr(e, t) {
|
|
1737
1743
|
return !(!(t in e) || !Object.prototype.hasOwnProperty.call(e, t));
|
|
1738
1744
|
}
|
|
1739
|
-
function
|
|
1745
|
+
function mr(e, t) {
|
|
1740
1746
|
return !Object.prototype.hasOwnProperty.call(e, t);
|
|
1741
1747
|
}
|
|
1742
|
-
function
|
|
1748
|
+
function hr(e, t, n) {
|
|
1743
1749
|
"__proto__" === t ? Object.defineProperty(e, t, {
|
|
1744
1750
|
value: n,
|
|
1745
1751
|
writable: !0,
|
|
@@ -1747,205 +1753,205 @@
|
|
|
1747
1753
|
configurable: !0
|
|
1748
1754
|
}) : e[t] = n;
|
|
1749
1755
|
}
|
|
1750
|
-
function
|
|
1756
|
+
function yr(e, t) {
|
|
1751
1757
|
if (!/^[0-9]+$/.test(t)) return -1;
|
|
1752
1758
|
const n = Number(t);
|
|
1753
1759
|
return n >= e.length ? -1 : n;
|
|
1754
1760
|
}
|
|
1755
|
-
function
|
|
1756
|
-
e && !
|
|
1761
|
+
function Er(e, t, n, r) {
|
|
1762
|
+
e && !ar(e) && Tn("GObj bad instanceof");
|
|
1757
1763
|
const l = e ? `${et(e)}: ` : "";
|
|
1758
|
-
if (!
|
|
1759
|
-
if (!
|
|
1764
|
+
if (!nr(t) && !rr(t)) return void Tn(`${l}kw must be list or dict: '${String(n)}'`);
|
|
1765
|
+
if (!lr(n)) return void Tn(`${l}path must be a string: ${String(n)}`);
|
|
1760
1766
|
let o = n.split("`"), s = o.length;
|
|
1761
1767
|
for (let e = 0; e < s; e++) {
|
|
1762
|
-
if (
|
|
1763
|
-
const s =
|
|
1764
|
-
if (s < 0) return void (r &&
|
|
1768
|
+
if (rr(t)) {
|
|
1769
|
+
const s = yr(t, o[e]);
|
|
1770
|
+
if (s < 0) return void (r && Tn(`${l}path not found: '${n}'`));
|
|
1765
1771
|
o[e] = String(s);
|
|
1766
1772
|
}
|
|
1767
|
-
if (
|
|
1773
|
+
if (mr(t, o[e])) return void (r && Tn(`${l}path not found: '${n}'`));
|
|
1768
1774
|
if (e === s - 1) break;
|
|
1769
|
-
if (null == (t = t[o[e]])) return void (r &&
|
|
1770
|
-
if (!
|
|
1775
|
+
if (null == (t = t[o[e]])) return void (r && Tn(`${l}path not found: '${n}'`));
|
|
1776
|
+
if (!nr(t) && !rr(t)) return void Tn(`${l}kw must be list or dict: '${n}'`);
|
|
1771
1777
|
}
|
|
1772
1778
|
let i = t[o[s - 1]];
|
|
1773
|
-
return void 0 === i && r &&
|
|
1779
|
+
return void 0 === i && r && Tn(`${l}path not found: '${n}'`), i;
|
|
1774
1780
|
}
|
|
1775
|
-
function
|
|
1776
|
-
e && !
|
|
1781
|
+
function Tr(e, t, n) {
|
|
1782
|
+
e && !ar(e) && Tn("GObj bad instanceof");
|
|
1777
1783
|
const r = e ? et(e) + ": " : "";
|
|
1778
|
-
if (!
|
|
1784
|
+
if (!lr(n)) return Tn(`${r}kw_delete(): path must be a string: ${String(n)}`), -1;
|
|
1779
1785
|
let [l, o] = function(e, t) {
|
|
1780
1786
|
let n = e.lastIndexOf(t);
|
|
1781
1787
|
return -1 === n ? [e, ""] : [e.substring(0, n), e.substring(n + 1)];
|
|
1782
1788
|
}(n, "`"), s = t;
|
|
1783
|
-
if (
|
|
1784
|
-
else if (s =
|
|
1785
|
-
return
|
|
1789
|
+
if (ur(o)) o = n;
|
|
1790
|
+
else if (s = Er(e, t, l, !0), void 0 === s) return -1;
|
|
1791
|
+
return rr(s) ? (Tn(`${r}kw_delete(): cannot delete an item of a list: '${n}'`), -1) : nr(s) && Object.prototype.hasOwnProperty.call(s, o) ? (delete s[o], 0) : (Tn(`${r}kw_delete(): path not found: '${n}'`), -1);
|
|
1786
1792
|
}
|
|
1787
|
-
function
|
|
1788
|
-
e && !
|
|
1789
|
-
let o =
|
|
1793
|
+
function vr(e, t, n, r, l) {
|
|
1794
|
+
e && !ar(e) && Tn("GObj bad instanceof");
|
|
1795
|
+
let o = Er(e, t, n, !1);
|
|
1790
1796
|
const s = l && l & Zt.KW_REQUIRED, i = l && l & Zt.KW_CREATE, _ = l && l & Zt.KW_EXTRACT, a = l && l & Zt.KW_WILD_NUMBER;
|
|
1791
1797
|
if (void 0 === o) {
|
|
1792
1798
|
if (i && t) {
|
|
1793
1799
|
let l = Boolean(r);
|
|
1794
|
-
return
|
|
1800
|
+
return $r(e, t, n, l), l;
|
|
1795
1801
|
}
|
|
1796
|
-
return s && (
|
|
1802
|
+
return s && (Tn(`path not found: '${n}'`), Gn(t)), Boolean(r);
|
|
1797
1803
|
}
|
|
1798
1804
|
let u;
|
|
1799
|
-
if (
|
|
1800
|
-
else if (a &&
|
|
1801
|
-
else if (a &&
|
|
1805
|
+
if (sr(o)) u = o;
|
|
1806
|
+
else if (a && or(o)) u = 0 !== o;
|
|
1807
|
+
else if (a && lr(o)) u = "true" === o.toLowerCase() || "false" !== o.toLowerCase() && 0 !== (parseInt(o, 10) || 0);
|
|
1802
1808
|
else {
|
|
1803
|
-
if (!a || null !== o) return a ? (
|
|
1809
|
+
if (!a || null !== o) return a ? (Tn(`${e ? et(e) + ": " : ""}path MUST BE a simple json element: '${n}'`), Gn(t), !1) : (Tn(`${e ? et(e) + ": " : ""}path MUST BE a json boolean: '${n}'`), Gn(t), Boolean(r));
|
|
1804
1810
|
u = !1;
|
|
1805
1811
|
}
|
|
1806
|
-
return _ &&
|
|
1812
|
+
return _ && Tr(e, t, n), u;
|
|
1807
1813
|
}
|
|
1808
|
-
function
|
|
1809
|
-
e && !
|
|
1810
|
-
let o =
|
|
1814
|
+
function jr(e, t, n, r, l) {
|
|
1815
|
+
e && !ar(e) && Tn("GObj bad instanceof");
|
|
1816
|
+
let o = Er(e, t, n, !1);
|
|
1811
1817
|
const s = l && l & Zt.KW_REQUIRED, i = l && l & Zt.KW_CREATE, _ = l && l & Zt.KW_EXTRACT, a = l && l & Zt.KW_WILD_NUMBER;
|
|
1812
1818
|
if (void 0 === o) {
|
|
1813
1819
|
if (i && t) {
|
|
1814
1820
|
let l = parseInt(r);
|
|
1815
|
-
return
|
|
1821
|
+
return $r(e, t, n, l), l;
|
|
1816
1822
|
}
|
|
1817
|
-
return s && (
|
|
1823
|
+
return s && (Tn(`path not found: '${n}'`), Gn(t)), parseInt(r);
|
|
1818
1824
|
}
|
|
1819
1825
|
let u;
|
|
1820
|
-
if (
|
|
1826
|
+
if (or(o)) u = Math.trunc(o);
|
|
1821
1827
|
else {
|
|
1822
|
-
if (!a) return
|
|
1823
|
-
if (
|
|
1824
|
-
else if (
|
|
1828
|
+
if (!a) return Tn(`${e ? et(e) + ": " : ""}path MUST BE a json integer: '${n}'`), Gn(t), parseInt(r);
|
|
1829
|
+
if (sr(o)) u = o ? 1 : 0;
|
|
1830
|
+
else if (lr(o)) u = function(e) {
|
|
1825
1831
|
const t = /^\s*([+-]?)(0[xX][0-9a-fA-F]+|0[0-7]*|[1-9][0-9]*)/.exec(e);
|
|
1826
1832
|
if (!t) return 0;
|
|
1827
1833
|
let n, r = t[2];
|
|
1828
1834
|
return n = r.length > 1 && ("x" === r[1] || "X" === r[1]) ? parseInt(r.substring(2), 16) : "0" === r[0] ? parseInt(r, 8) : parseInt(r, 10), "-" === t[1] ? -n : n;
|
|
1829
1835
|
}(o);
|
|
1830
1836
|
else {
|
|
1831
|
-
if (null !== o) return
|
|
1837
|
+
if (null !== o) return Tn(`${e ? et(e) + ": " : ""}path MUST BE a simple json element: '${n}'`), Gn(t), 0;
|
|
1832
1838
|
u = 0;
|
|
1833
1839
|
}
|
|
1834
1840
|
}
|
|
1835
|
-
return _ &&
|
|
1841
|
+
return _ && Tr(e, t, n), u;
|
|
1836
1842
|
}
|
|
1837
|
-
function
|
|
1838
|
-
e && !
|
|
1839
|
-
let o =
|
|
1843
|
+
function Or(e, t, n, r, l) {
|
|
1844
|
+
e && !ar(e) && Tn("GObj bad instanceof");
|
|
1845
|
+
let o = Er(e, t, n, !1);
|
|
1840
1846
|
const s = l && l & Zt.KW_REQUIRED, i = l && l & Zt.KW_CREATE, _ = l && l & Zt.KW_EXTRACT;
|
|
1841
|
-
return void 0 === o ? i && t ? (
|
|
1842
|
-
let n =
|
|
1847
|
+
return void 0 === o ? i && t ? ($r(e, t, n, lr(r) ? r : null), r) : (s && !function(e, t) {
|
|
1848
|
+
let n = lr(t) ? t.split("`") : [], r = e;
|
|
1843
1849
|
for (let e = 0; e < n.length - 1; e++) {
|
|
1844
|
-
if (!
|
|
1850
|
+
if (!nr(r) && !rr(r)) return !1;
|
|
1845
1851
|
r = r[n[e]];
|
|
1846
1852
|
}
|
|
1847
|
-
return !(!
|
|
1848
|
-
}(t, n) && (
|
|
1853
|
+
return !(!nr(r) && !rr(r) || 0 === n.length) && Object.prototype.hasOwnProperty.call(r, n[n.length - 1]);
|
|
1854
|
+
}(t, n) && (Tn(`path not found: '${n}'`), Gn(t)), r) : lr(o) ? (_ && Tr(e, t, n), o) : (null !== o && (Tn(`${e ? et(e) + ": " : ""}path MUST BE a json str: '${n}'`), Gn(t)), r);
|
|
1849
1855
|
}
|
|
1850
|
-
function
|
|
1851
|
-
e && !
|
|
1852
|
-
let o =
|
|
1856
|
+
function Sr(e, t, n, r, l) {
|
|
1857
|
+
e && !ar(e) && Tn("GObj bad instanceof");
|
|
1858
|
+
let o = Er(e, t, n, !1);
|
|
1853
1859
|
const s = l && l & Zt.KW_REQUIRED, i = l && l & Zt.KW_CREATE, _ = l && l & Zt.KW_EXTRACT;
|
|
1854
1860
|
if (void 0 === o) {
|
|
1855
1861
|
if (i) {
|
|
1856
1862
|
let l = r;
|
|
1857
|
-
return
|
|
1863
|
+
return $r(e, t, n, l), l;
|
|
1858
1864
|
}
|
|
1859
|
-
return s && (
|
|
1865
|
+
return s && (Tn(`path not found: '${n}'`), Gn(t)), r;
|
|
1860
1866
|
}
|
|
1861
|
-
return _ &&
|
|
1867
|
+
return _ && Tr(e, t, n), o;
|
|
1862
1868
|
}
|
|
1863
|
-
function
|
|
1864
|
-
e && !
|
|
1865
|
-
let o =
|
|
1869
|
+
function wr(e, t, n, r, l) {
|
|
1870
|
+
e && !ar(e) && Tn("GObj bad instanceof");
|
|
1871
|
+
let o = Er(e, t, n, !1);
|
|
1866
1872
|
const s = l && l & Zt.KW_REQUIRED, i = l && l & Zt.KW_CREATE, _ = l && l & Zt.KW_EXTRACT;
|
|
1867
|
-
return void 0 === o ? i &&
|
|
1873
|
+
return void 0 === o ? i && nr(r) && t ? ($r(e, t, n, r), r) : (s && (Tn(`path not found: '${n}'`), Gn(t)), r) : nr(o) ? (_ && Tr(e, t, n), o) : i && null === o && nr(r) ? ($r(e, t, n, r), r) : i && null === o ? (s && (Tn(`path not found: '${n}'`), Gn(t)), r) : ((s || i) && (Tn(`${e ? et(e) + ": " : ""}path MUST BE a json dict: '${n}'` + (i ? ", cannot create" : "")), Gn(t)), r);
|
|
1868
1874
|
}
|
|
1869
|
-
function
|
|
1870
|
-
e && !
|
|
1871
|
-
let o =
|
|
1875
|
+
function Nr(e, t, n, r, l) {
|
|
1876
|
+
e && !ar(e) && Tn("GObj bad instanceof");
|
|
1877
|
+
let o = Er(e, t, n, !1);
|
|
1872
1878
|
const s = l && l & Zt.KW_REQUIRED, i = l && l & Zt.KW_CREATE, _ = l && l & Zt.KW_EXTRACT;
|
|
1873
1879
|
if (void 0 === o) {
|
|
1874
1880
|
if (i) {
|
|
1875
1881
|
let l = r;
|
|
1876
|
-
return
|
|
1882
|
+
return $r(e, t, n, l), l;
|
|
1877
1883
|
}
|
|
1878
|
-
return s && (
|
|
1884
|
+
return s && (Tn(`path not found: '${n}'`), Gn(t)), r;
|
|
1879
1885
|
}
|
|
1880
|
-
return _ &&
|
|
1886
|
+
return _ && Tr(e, t, n), o;
|
|
1881
1887
|
}
|
|
1882
|
-
function
|
|
1883
|
-
if (e && !
|
|
1884
|
-
if (!
|
|
1885
|
-
if ("" === n) return
|
|
1886
|
-
if (n.split("`").includes("")) return
|
|
1888
|
+
function $r(e, t, n, r) {
|
|
1889
|
+
if (e && !ar(e) && Tn("GObj bad instanceof"), !nr(t)) return Tn("kw is not an object"), -1;
|
|
1890
|
+
if (!lr(n)) return Tn(`${e ? et(e) + ": " : ""}kw_set_dict_value(): path must be a string: ${String(n)}`), -1;
|
|
1891
|
+
if ("" === n) return Tn((e ? et(e) + ": " : "") + "kw_set_dict_value(): path empty"), -1;
|
|
1892
|
+
if (n.split("`").includes("")) return Tn(`${e ? et(e) + ": " : ""}kw_set_dict_value(): empty segment in path: '${n}'`), -1;
|
|
1887
1893
|
let l = n.split("`"), o = l.length;
|
|
1888
1894
|
for (let s = 0; s < o; s++) {
|
|
1889
1895
|
let i = l[s];
|
|
1890
|
-
if (
|
|
1891
|
-
const r =
|
|
1892
|
-
if (r < 0) return
|
|
1896
|
+
if (rr(t)) {
|
|
1897
|
+
const r = yr(t, i);
|
|
1898
|
+
if (r < 0) return Tn(`${e ? et(e) + ": " : ""}kw_set_dict_value(): segment '${i}' is not an index of its list: '${n}'`), -1;
|
|
1893
1899
|
i = String(r);
|
|
1894
1900
|
}
|
|
1895
|
-
if (s === o - 1)
|
|
1901
|
+
if (s === o - 1) hr(t, i, r);
|
|
1896
1902
|
else {
|
|
1897
|
-
let r =
|
|
1898
|
-
if (void 0 === r)
|
|
1899
|
-
else if (!
|
|
1903
|
+
let r = mr(t, i) ? void 0 : t[i];
|
|
1904
|
+
if (void 0 === r) hr(t, i, {});
|
|
1905
|
+
else if (!nr(r) && !rr(r)) return Tn(`${e ? et(e) + ": " : ""}kw_set_dict_value(): segment '${i}' is not a dict or a list: '${n}'`), -1;
|
|
1900
1906
|
t = t[i];
|
|
1901
1907
|
}
|
|
1902
1908
|
}
|
|
1903
1909
|
return 0;
|
|
1904
1910
|
}
|
|
1905
|
-
function
|
|
1906
|
-
if (e && !
|
|
1907
|
-
let o =
|
|
1911
|
+
function Rr(e, t, n, r, l) {
|
|
1912
|
+
if (e && !ar(e) && Tn("GObj bad instanceof"), !nr(t)) return Tn("kw is not an object"), -1;
|
|
1913
|
+
let o = Er(e, t, n, !1);
|
|
1908
1914
|
if (void 0 === o) {
|
|
1909
|
-
if (!
|
|
1915
|
+
if (!lr(n) || function(e, t) {
|
|
1910
1916
|
let n = t.split("`"), r = e;
|
|
1911
1917
|
for (let e = 0; e < n.length - 1; e++) {
|
|
1912
|
-
if (
|
|
1913
|
-
const t =
|
|
1918
|
+
if (rr(r)) {
|
|
1919
|
+
const t = yr(r, n[e]);
|
|
1914
1920
|
if (t < 0) return !1;
|
|
1915
1921
|
r = r[t];
|
|
1916
1922
|
} else r = Object.prototype.hasOwnProperty.call(r, n[e]) ? r[n[e]] : void 0;
|
|
1917
1923
|
if (null == r) return !1;
|
|
1918
|
-
if (!
|
|
1924
|
+
if (!nr(r) && !rr(r)) return !0;
|
|
1919
1925
|
}
|
|
1920
1926
|
return !1;
|
|
1921
1927
|
}(t, n)) return -1;
|
|
1922
|
-
if (o = {},
|
|
1928
|
+
if (o = {}, $r(e, t, n, o) < 0) return -1;
|
|
1923
1929
|
}
|
|
1924
|
-
return
|
|
1930
|
+
return nr(o) ? (hr(o, r, l), 0) : (Tn(`subdict is not an object: '${n}'`), -1);
|
|
1925
1931
|
}
|
|
1926
|
-
function
|
|
1932
|
+
function Dr(e, t, r) {
|
|
1927
1933
|
let l = "", o = !1;
|
|
1928
|
-
if (
|
|
1934
|
+
if (rr(t)) {
|
|
1929
1935
|
o = !1;
|
|
1930
1936
|
for (let s = 0; s < t.length; s++) {
|
|
1931
1937
|
let i = t[s];
|
|
1932
|
-
if (l =
|
|
1938
|
+
if (l = ur(r) ? n("%s", r) : n("%s`%d", r, s), o = Dr(e, i, l), o) break;
|
|
1933
1939
|
}
|
|
1934
|
-
} else if (
|
|
1940
|
+
} else if (nr(t)) {
|
|
1935
1941
|
o = !0;
|
|
1936
1942
|
let s = Object.keys(t);
|
|
1937
1943
|
for (let i = 0; i < s.length; i++) {
|
|
1938
1944
|
let _ = s[i], a = t[_];
|
|
1939
|
-
if (l =
|
|
1940
|
-
if (o =
|
|
1945
|
+
if (l = ur(r) ? n("%s", _) : n("%s`%s", r, _), rr(a) || nr(a)) {
|
|
1946
|
+
if (o = Dr(e, a, l), !o) break;
|
|
1941
1947
|
continue;
|
|
1942
1948
|
}
|
|
1943
|
-
let u =
|
|
1944
|
-
if (void 0 === u && (u =
|
|
1949
|
+
let u = Nr(0, e, l, void 0, 0);
|
|
1950
|
+
if (void 0 === u && (u = Bn(e, l)), void 0 === u) {
|
|
1945
1951
|
o = !1;
|
|
1946
1952
|
break;
|
|
1947
1953
|
}
|
|
1948
|
-
if (0 !==
|
|
1954
|
+
if (0 !== dr(u, a)) {
|
|
1949
1955
|
o = !1;
|
|
1950
1956
|
break;
|
|
1951
1957
|
}
|
|
@@ -1953,59 +1959,59 @@
|
|
|
1953
1959
|
}
|
|
1954
1960
|
return o;
|
|
1955
1961
|
}
|
|
1956
|
-
function
|
|
1957
|
-
return 0 ===
|
|
1962
|
+
function kr(e, t) {
|
|
1963
|
+
return 0 === tr(t) || Dr(e, t, "");
|
|
1958
1964
|
}
|
|
1959
|
-
function
|
|
1960
|
-
e && !
|
|
1965
|
+
function Ar(e, t, n, r) {
|
|
1966
|
+
e && !ar(e) && Tn("GObj bad instanceof");
|
|
1961
1967
|
let l = {};
|
|
1962
|
-
if (
|
|
1968
|
+
if (lr(n) && !ur(n)) {
|
|
1963
1969
|
let o = n;
|
|
1964
|
-
Object.prototype.hasOwnProperty.call(t, o) ?
|
|
1965
|
-
} else if (
|
|
1970
|
+
Object.prototype.hasOwnProperty.call(t, o) ? hr(l, o, t[o]) : r && Tn(`${et(e)}: key not found: ${o}`);
|
|
1971
|
+
} else if (nr(n) && Zn(n) > 0) for (let o of Object.keys(n)) Object.prototype.hasOwnProperty.call(t, o) ? hr(l, o, t[o]) : r && Tn(`${et(e)}: key not found: ${o}`);
|
|
1966
1972
|
else {
|
|
1967
|
-
if (!(
|
|
1973
|
+
if (!(rr(n) && er(n) > 0)) return t;
|
|
1968
1974
|
for (let o = 0; o < n.length; o++) {
|
|
1969
1975
|
let s = n[o];
|
|
1970
|
-
Object.prototype.hasOwnProperty.call(t, s) ?
|
|
1976
|
+
Object.prototype.hasOwnProperty.call(t, s) ? hr(l, s, t[s]) : r && Tn(`${et(e)}: key not found: ${s}`);
|
|
1971
1977
|
}
|
|
1972
1978
|
}
|
|
1973
1979
|
return l;
|
|
1974
1980
|
}
|
|
1975
|
-
function
|
|
1981
|
+
function Ir(e, t, n, r) {
|
|
1976
1982
|
let l = {};
|
|
1977
|
-
if (!
|
|
1978
|
-
if (
|
|
1983
|
+
if (!nr(t)) return l;
|
|
1984
|
+
if (xn(l, t), lr(n) && !ur(n)) {
|
|
1979
1985
|
let o = n;
|
|
1980
|
-
Object.prototype.hasOwnProperty.call(t, o) ?
|
|
1981
|
-
} else if (
|
|
1986
|
+
Object.prototype.hasOwnProperty.call(t, o) ? Jn(l, o) : r && Tn(`${et(e)}: key not found: ${o}`);
|
|
1987
|
+
} else if (nr(n) && Zn(n) > 0) for (let o of Object.keys(n)) Object.prototype.hasOwnProperty.call(t, o) ? Jn(l, o) : r && Tn(`${et(e)}: key not found: ${o}`);
|
|
1982
1988
|
else {
|
|
1983
|
-
if (!(
|
|
1989
|
+
if (!(rr(n) && er(n) > 0)) return {};
|
|
1984
1990
|
for (let o = 0; o < n.length; o++) {
|
|
1985
1991
|
let s = n[o];
|
|
1986
|
-
Object.prototype.hasOwnProperty.call(t, s) ?
|
|
1992
|
+
Object.prototype.hasOwnProperty.call(t, s) ? Jn(l, s) : r && Tn(`${et(e)}: key not found: ${s}`);
|
|
1987
1993
|
}
|
|
1988
1994
|
}
|
|
1989
1995
|
return l;
|
|
1990
1996
|
}
|
|
1991
|
-
function
|
|
1997
|
+
function Cr(e, t, n = !1) {
|
|
1992
1998
|
if ("undefined" != typeof window && window.localStorage) try {
|
|
1993
1999
|
let r = window.localStorage.getItem(e);
|
|
1994
|
-
return null === r ? (n &&
|
|
2000
|
+
return null === r ? (n && Lr(e, t), t) : JSON.parse(r);
|
|
1995
2001
|
} catch (n) {
|
|
1996
2002
|
return window.console.warn(`Error reading localStorage key "${e}":`, n), t;
|
|
1997
2003
|
}
|
|
1998
2004
|
}
|
|
1999
|
-
function
|
|
2005
|
+
function Lr(e, t) {
|
|
2000
2006
|
if ("undefined" == typeof window || !window.localStorage) return 0;
|
|
2001
|
-
if (!e || void 0 === t) return
|
|
2007
|
+
if (!e || void 0 === t) return Tn(`kw_set_local_storage_value(): invalid key or value: key=${e}`), -1;
|
|
2002
2008
|
try {
|
|
2003
2009
|
return window.localStorage.setItem(e, JSON.stringify(t)), 0;
|
|
2004
2010
|
} catch (t) {
|
|
2005
|
-
return
|
|
2011
|
+
return Tn(`kw_set_local_storage_value(): cannot save "${e}" (storage full or blocked?): ${t && t.message ? t.message : t}`), -1;
|
|
2006
2012
|
}
|
|
2007
2013
|
}
|
|
2008
|
-
function
|
|
2014
|
+
function Pr(e) {
|
|
2009
2015
|
if ("undefined" != typeof window && window.localStorage) if (e) try {
|
|
2010
2016
|
window.localStorage.removeItem(e);
|
|
2011
2017
|
} catch (t) {
|
|
@@ -2013,46 +2019,46 @@
|
|
|
2013
2019
|
}
|
|
2014
2020
|
else window.console.warn(`Invalid key for localStorage removal: ${e}`);
|
|
2015
2021
|
}
|
|
2016
|
-
function
|
|
2017
|
-
if (
|
|
2018
|
-
if (
|
|
2022
|
+
function Ur(e, t) {
|
|
2023
|
+
if (ir(e) || ir(t)) return !0;
|
|
2024
|
+
if (rr(e)) {
|
|
2019
2025
|
if (0 === e.length) return !0;
|
|
2020
2026
|
for (let n = 0; n < e.length; n++) if (e[n] === t) return !0;
|
|
2021
|
-
} else if (
|
|
2027
|
+
} else if (nr(e)) {
|
|
2022
2028
|
if (0 === Object.keys(e).length) return !0;
|
|
2023
2029
|
for (let n in e) if (n === t) return !0;
|
|
2024
|
-
} else if (
|
|
2030
|
+
} else if (lr(e) && e === t) return !0;
|
|
2025
2031
|
return !1;
|
|
2026
2032
|
}
|
|
2027
|
-
function
|
|
2028
|
-
if (e && !
|
|
2029
|
-
l || (l =
|
|
2033
|
+
function Fr(e, t, n, r, l) {
|
|
2034
|
+
if (e && !ar(e) && Tn("GObj bad instanceof"), !t) return null;
|
|
2035
|
+
l || (l = kr);
|
|
2030
2036
|
let o = [];
|
|
2031
|
-
if (
|
|
2037
|
+
if (rr(t)) for (let s = 0; s < t.length; s++) {
|
|
2032
2038
|
let i, _ = t[s];
|
|
2033
|
-
if (
|
|
2039
|
+
if (nr(_)) i = Or(e, _, "id", "", 0);
|
|
2034
2040
|
else {
|
|
2035
|
-
if (!
|
|
2041
|
+
if (!lr(_)) continue;
|
|
2036
2042
|
i = _;
|
|
2037
2043
|
}
|
|
2038
|
-
|
|
2044
|
+
Ur(n, i) && l(_, r) && o.push(_);
|
|
2039
2045
|
}
|
|
2040
2046
|
else {
|
|
2041
|
-
if (!
|
|
2047
|
+
if (!nr(t)) return Tn("kw_collect() BAD kw parameter"), null;
|
|
2042
2048
|
for (let e of Object.keys(t)) {
|
|
2043
2049
|
let s = t[e];
|
|
2044
|
-
|
|
2050
|
+
Ur(n, e) && l(s, r) && o.push(s);
|
|
2045
2051
|
}
|
|
2046
2052
|
}
|
|
2047
2053
|
return o;
|
|
2048
2054
|
}
|
|
2049
|
-
function
|
|
2055
|
+
function Vr(e, t) {
|
|
2050
2056
|
if (!e) return -1;
|
|
2051
2057
|
for (let n = 0; n < e.length; n++) if (e[n] && e[n].id === t) return n;
|
|
2052
2058
|
return -1;
|
|
2053
2059
|
}
|
|
2054
|
-
function
|
|
2055
|
-
if (!e || !t) return
|
|
2060
|
+
function Gr(e, t, n) {
|
|
2061
|
+
if (!e || !t) return Tn("ERROR: str_in_list() list or str empty"), !1;
|
|
2056
2062
|
let r = e.length;
|
|
2057
2063
|
if (n) {
|
|
2058
2064
|
t = t.toLowerCase();
|
|
@@ -2063,7 +2069,7 @@
|
|
|
2063
2069
|
} else for (let n = 0; n < r; n++) if (e[n] === t) return !0;
|
|
2064
2070
|
return !1;
|
|
2065
2071
|
}
|
|
2066
|
-
function
|
|
2072
|
+
function Mr(e, t) {
|
|
2067
2073
|
try {
|
|
2068
2074
|
let n = e.__md_iev__;
|
|
2069
2075
|
if (n) return n[t];
|
|
@@ -2071,35 +2077,35 @@
|
|
|
2071
2077
|
return;
|
|
2072
2078
|
}
|
|
2073
2079
|
}
|
|
2074
|
-
function
|
|
2080
|
+
function Wr(e, t, n) {
|
|
2075
2081
|
let r = e.__md_iev__;
|
|
2076
2082
|
r || (r = {}, e.__md_iev__ = r), r[t] = n;
|
|
2077
2083
|
}
|
|
2078
|
-
function
|
|
2079
|
-
if (!
|
|
2084
|
+
function xr(e, t, n, r) {
|
|
2085
|
+
if (!ar(e)) return Tn("gobj is not a GObj"), null;
|
|
2080
2086
|
if (!t) return;
|
|
2081
|
-
let l =
|
|
2082
|
-
l || (l = [],
|
|
2087
|
+
let l = Mr(t, n);
|
|
2088
|
+
l || (l = [], Wr(t, n, l));
|
|
2083
2089
|
try {
|
|
2084
|
-
|
|
2090
|
+
rr(l) && l.unshift(r);
|
|
2085
2091
|
} catch (e) {
|
|
2086
|
-
|
|
2092
|
+
Tn(e);
|
|
2087
2093
|
}
|
|
2088
2094
|
}
|
|
2089
|
-
function
|
|
2090
|
-
if (!
|
|
2091
|
-
if (!
|
|
2092
|
-
let l =
|
|
2093
|
-
return l ? 0 === l.length ? (r &&
|
|
2095
|
+
function Kr(e, t, n, r) {
|
|
2096
|
+
if (!ar(e)) return Tn("gobj is not a GObj"), null;
|
|
2097
|
+
if (!nr(t)) return Tn("kw is not a dict"), null;
|
|
2098
|
+
let l = Mr(t, n);
|
|
2099
|
+
return l ? 0 === l.length ? (r && Tn(`stack empty: ${n}`), null) : l[0] : (r && Tn(`stack NOT FOUND: ${n}`), null);
|
|
2094
2100
|
}
|
|
2095
|
-
function
|
|
2096
|
-
return
|
|
2101
|
+
function Yr(e, t, n) {
|
|
2102
|
+
return ur(n) ? Tr(e, t, "__md_iev__`__msg_type__") : Rr(e, t, "__md_iev__", "__msg_type__", n), 0;
|
|
2097
2103
|
}
|
|
2098
|
-
function
|
|
2099
|
-
return
|
|
2104
|
+
function Br(e, t) {
|
|
2105
|
+
return Or(e, t, "__md_iev__`__msg_type__", "", 0);
|
|
2100
2106
|
}
|
|
2101
|
-
function
|
|
2102
|
-
void 0 !== n &&
|
|
2107
|
+
function Jr(e, t, n) {
|
|
2108
|
+
void 0 !== n && lr(n) || (n = "");
|
|
2103
2109
|
for (let r of Object.keys(e)) {
|
|
2104
2110
|
if (!Object.prototype.hasOwnProperty.call(e, r)) continue;
|
|
2105
2111
|
let l = (n.length ? "`" : "") + r;
|
|
@@ -2108,10 +2114,10 @@
|
|
|
2108
2114
|
r,
|
|
2109
2115
|
e[r],
|
|
2110
2116
|
n
|
|
2111
|
-
]),
|
|
2117
|
+
]), nr(e[r]) && Jr(e[r], t, n), n = n.slice(0, -l.length);
|
|
2112
2118
|
}
|
|
2113
2119
|
}
|
|
2114
|
-
function
|
|
2120
|
+
function qr(e, t, n, r) {
|
|
2115
2121
|
if (!e) return null;
|
|
2116
2122
|
let l, o = e.length;
|
|
2117
2123
|
for (l = 0; l < o; l++) {
|
|
@@ -2119,15 +2125,15 @@
|
|
|
2119
2125
|
if (o) {
|
|
2120
2126
|
let e = o.id;
|
|
2121
2127
|
if (e && e === n) return o;
|
|
2122
|
-
if (r &&
|
|
2123
|
-
let e =
|
|
2128
|
+
if (r && pr(o, t)) {
|
|
2129
|
+
let e = qr(o[t], t, n, r);
|
|
2124
2130
|
if (e) return e;
|
|
2125
2131
|
}
|
|
2126
2132
|
}
|
|
2127
2133
|
}
|
|
2128
2134
|
return null;
|
|
2129
2135
|
}
|
|
2130
|
-
function
|
|
2136
|
+
function Hr(e) {
|
|
2131
2137
|
function t(e) {
|
|
2132
2138
|
let t = e.replace(/-/g, "+").replace(/_/g, "/");
|
|
2133
2139
|
switch (t.length % 4) {
|
|
@@ -2158,10 +2164,10 @@
|
|
|
2158
2164
|
signature: t(n[2])
|
|
2159
2165
|
};
|
|
2160
2166
|
}
|
|
2161
|
-
function
|
|
2167
|
+
function zr(e) {
|
|
2162
2168
|
return null == e ? "" : String(e).replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """).replace(/'/g, "'");
|
|
2163
2169
|
}
|
|
2164
|
-
var
|
|
2170
|
+
var Qr = class {
|
|
2165
2171
|
constructor(e) {
|
|
2166
2172
|
this.html = e, Object.freeze(this);
|
|
2167
2173
|
}
|
|
@@ -2169,41 +2175,41 @@
|
|
|
2169
2175
|
return this.html;
|
|
2170
2176
|
}
|
|
2171
2177
|
};
|
|
2172
|
-
function Qr(e) {
|
|
2173
|
-
return e instanceof zr;
|
|
2174
|
-
}
|
|
2175
2178
|
function Xr(e) {
|
|
2179
|
+
return e instanceof Qr;
|
|
2180
|
+
}
|
|
2181
|
+
function Zr(e) {
|
|
2176
2182
|
const t = document.createElement("template");
|
|
2177
2183
|
return t.innerHTML = e.html.trim(), t.content;
|
|
2178
2184
|
}
|
|
2179
|
-
var
|
|
2180
|
-
function
|
|
2185
|
+
var el = !1, tl = /* @__PURE__ */ new Set();
|
|
2186
|
+
function nl(e) {
|
|
2181
2187
|
const t = document.createElement("template");
|
|
2182
2188
|
return t.innerHTML = e.trim(), t.content.firstChild;
|
|
2183
2189
|
}
|
|
2184
|
-
function
|
|
2190
|
+
function rl(e) {
|
|
2185
2191
|
const t = (e, t) => String(e).padStart(t, "0"), n = `${(e = e || /* @__PURE__ */ new Date()).getFullYear()}-${t(e.getMonth() + 1, 2)}-${t(e.getDate(), 2)}T${t(e.getHours(), 2)}:${t(e.getMinutes(), 2)}:${t(e.getSeconds(), 2)}`, r = t(e.getMilliseconds(), 3), l = e.getTimezoneOffset();
|
|
2186
2192
|
return `${n}.${r}${l > 0 ? "-" : "+"}${t(Math.floor(Math.abs(l) / 60), 2)}${t(Math.abs(l) % 60, 2)}`;
|
|
2187
2193
|
}
|
|
2188
|
-
function
|
|
2194
|
+
function ll(e, t) {
|
|
2189
2195
|
if (!e) throw "ERROR: index_in_list() list empty";
|
|
2190
2196
|
for (let n = 0; n < e.length; n++) if (t === e[n]) return n;
|
|
2191
2197
|
return -1;
|
|
2192
2198
|
}
|
|
2193
|
-
function
|
|
2199
|
+
function ol() {
|
|
2194
2200
|
let e = "";
|
|
2195
2201
|
return "undefined" != typeof window && window.localStorage ? (e = window.localStorage.getItem("host_uuid"), !e && window.crypto?.randomUUID && (e = window.crypto.randomUUID(), window.localStorage.setItem("host_uuid", e))) : e = "undefined" != typeof globalThis && globalThis.crypto?.randomUUID ? globalThis.crypto.randomUUID() : "00000000-0000-0000-0000-000000000000", e;
|
|
2196
2202
|
}
|
|
2197
|
-
function
|
|
2203
|
+
function sl(e) {
|
|
2198
2204
|
let t = null;
|
|
2199
2205
|
return "function" != typeof e && "object" != typeof e || (t = ("" + e).match(/function\s*([\w\$]*)\s*\(/)), null !== t ? t[1] + "()" : "";
|
|
2200
2206
|
}
|
|
2201
|
-
var
|
|
2202
|
-
function
|
|
2207
|
+
var il = 256, _l = 1e5;
|
|
2208
|
+
function al(e) {
|
|
2203
2209
|
const t = String(e).replace(/`/g, "``");
|
|
2204
2210
|
return "[" === t[0] ? "[" + t : t;
|
|
2205
2211
|
}
|
|
2206
|
-
function
|
|
2212
|
+
function ul(e) {
|
|
2207
2213
|
if ("string" != typeof e) return null;
|
|
2208
2214
|
let t = [], n = "";
|
|
2209
2215
|
for (let r = 0; r < e.length; r++) if ("`" !== e[r]) n += e[r];
|
|
@@ -2224,17 +2230,17 @@
|
|
|
2224
2230
|
return null !== t ? t : "[" === e[0] && "[" === e[1] ? e.slice(1) : e;
|
|
2225
2231
|
});
|
|
2226
2232
|
}
|
|
2227
|
-
function
|
|
2233
|
+
function cl(e, t) {
|
|
2228
2234
|
return e === t || null !== e && null !== t && "object" == typeof e && "object" == typeof t && JSON.stringify(e) === JSON.stringify(t);
|
|
2229
2235
|
}
|
|
2230
|
-
function
|
|
2236
|
+
function fl(e) {
|
|
2231
2237
|
return "persistent-attrs-" + et(e);
|
|
2232
2238
|
}
|
|
2233
|
-
function
|
|
2234
|
-
if (
|
|
2239
|
+
function gl(e, t) {
|
|
2240
|
+
if (lr(t)) {
|
|
2235
2241
|
if (-1 === t.indexOf("^")) {
|
|
2236
2242
|
let n, r, l = e.fkey;
|
|
2237
|
-
if (1 !==
|
|
2243
|
+
if (1 !== Zn(l)) return Tn("bad fkey 1"), Tn(e), Tn(t), null;
|
|
2238
2244
|
for (const e of Object.keys(l)) {
|
|
2239
2245
|
n = e, r = l[e];
|
|
2240
2246
|
break;
|
|
@@ -2247,20 +2253,20 @@
|
|
|
2247
2253
|
}
|
|
2248
2254
|
{
|
|
2249
2255
|
let n = t.split("^");
|
|
2250
|
-
return 3 !== n.length ? (
|
|
2256
|
+
return 3 !== n.length ? (Tn("bad fkey 2"), Tn(e), Tn(t), null) : {
|
|
2251
2257
|
topic_name: n[0],
|
|
2252
2258
|
id: n[1],
|
|
2253
2259
|
hook_name: n[2]
|
|
2254
2260
|
};
|
|
2255
2261
|
}
|
|
2256
2262
|
}
|
|
2257
|
-
return
|
|
2263
|
+
return nr(t) ? {
|
|
2258
2264
|
topic_name: t.topic_name,
|
|
2259
2265
|
id: t.id,
|
|
2260
2266
|
hook_name: t.hook_name
|
|
2261
|
-
} : (
|
|
2267
|
+
} : (Tn("bad fkey 3"), Tn(e), Tn(t), null);
|
|
2262
2268
|
}
|
|
2263
|
-
var
|
|
2269
|
+
var dl = [
|
|
2264
2270
|
"string",
|
|
2265
2271
|
"integer",
|
|
2266
2272
|
"object",
|
|
@@ -2270,7 +2276,7 @@
|
|
|
2270
2276
|
"real",
|
|
2271
2277
|
"boolean",
|
|
2272
2278
|
"blob"
|
|
2273
|
-
],
|
|
2279
|
+
], bl = [
|
|
2274
2280
|
"persistent",
|
|
2275
2281
|
"required",
|
|
2276
2282
|
"notnull",
|
|
@@ -2282,7 +2288,7 @@
|
|
|
2282
2288
|
"stats",
|
|
2283
2289
|
"rstats",
|
|
2284
2290
|
"pstats"
|
|
2285
|
-
],
|
|
2291
|
+
], pl = [
|
|
2286
2292
|
"hook",
|
|
2287
2293
|
"fkey",
|
|
2288
2294
|
"enum",
|
|
@@ -2311,7 +2317,7 @@
|
|
|
2311
2317
|
"coordinates",
|
|
2312
2318
|
"gbuffer"
|
|
2313
2319
|
];
|
|
2314
|
-
function
|
|
2320
|
+
function ml(e) {
|
|
2315
2321
|
let t = {
|
|
2316
2322
|
name: e.id,
|
|
2317
2323
|
header: e.header,
|
|
@@ -2330,7 +2336,7 @@
|
|
|
2330
2336
|
if (!e.flag) return t;
|
|
2331
2337
|
for (let n = 0; n < e.flag.length; n++) {
|
|
2332
2338
|
let r = e.flag[n];
|
|
2333
|
-
if (
|
|
2339
|
+
if (Gr(pl, r)) {
|
|
2334
2340
|
switch (r) {
|
|
2335
2341
|
case "enum":
|
|
2336
2342
|
t.enum_list = e.enum;
|
|
@@ -2344,7 +2350,7 @@
|
|
|
2344
2350
|
case "file": t.is_file = !0;
|
|
2345
2351
|
}
|
|
2346
2352
|
t.type = r;
|
|
2347
|
-
} else if (
|
|
2353
|
+
} else if (Gr(bl, r)) switch (r) {
|
|
2348
2354
|
case "writable":
|
|
2349
2355
|
t.is_writable = !0;
|
|
2350
2356
|
break;
|
|
@@ -2357,23 +2363,23 @@
|
|
|
2357
2363
|
}
|
|
2358
2364
|
return t.is_file && (t.type = "file"), t;
|
|
2359
2365
|
}
|
|
2360
|
-
var
|
|
2366
|
+
var hl = [
|
|
2361
2367
|
j(y.DTP_POINTER, "subscriber", 0, null, "Subscriber of output events"),
|
|
2362
2368
|
j(y.DTP_BOOLEAN, "periodic", 0, 0, "True for periodic timeouts"),
|
|
2363
2369
|
j(y.DTP_INTEGER, "msec", 0, 0, "Timeout in milliseconds"),
|
|
2364
2370
|
v()
|
|
2365
|
-
],
|
|
2371
|
+
], yl = {
|
|
2366
2372
|
periodic: !1,
|
|
2367
2373
|
msec: 0,
|
|
2368
2374
|
timer_id: -1
|
|
2369
|
-
},
|
|
2370
|
-
function
|
|
2375
|
+
}, El = null;
|
|
2376
|
+
function Tl(e, t, n, r) {
|
|
2371
2377
|
let l = e.priv, o = l.periodic ? "EV_TIMEOUT_PERIODIC" : "EV_TIMEOUT";
|
|
2372
2378
|
return l.periodic && l.msec > 0 ? l.timer_id = setTimeout(function() {
|
|
2373
2379
|
Vt(e, "EV_TIMEOUT", {}, e);
|
|
2374
2380
|
}, l.msec) : l.timer_id = -1, lt(e) ? Vt(nt(e), o, {}, e) : Xt(e, o, {}), l.periodic || -1 !== l.timer_id || Ke(e) && Ve(e), 0;
|
|
2375
2381
|
}
|
|
2376
|
-
var
|
|
2382
|
+
var vl = {
|
|
2377
2383
|
mt_create: function(e) {
|
|
2378
2384
|
let t = e.priv;
|
|
2379
2385
|
const n = Ot(e, "subscriber");
|
|
@@ -2398,16 +2404,16 @@
|
|
|
2398
2404
|
},
|
|
2399
2405
|
mt_destroy: function(e) {}
|
|
2400
2406
|
};
|
|
2401
|
-
function vl(e, t) {
|
|
2402
|
-
return e instanceof S ? "C_TIMER" !== Ze(e) ? (En("not C_TIMER GObj"), -1) : (Nt(e, "periodic", !1), void $t(e, "msec", t)) : (En("not GObj TYPE"), -1);
|
|
2403
|
-
}
|
|
2404
2407
|
function jl(e, t) {
|
|
2405
|
-
return e instanceof S ? "C_TIMER" !== Ze(e) ? (
|
|
2408
|
+
return e instanceof S ? "C_TIMER" !== Ze(e) ? (Tn("not C_TIMER GObj"), -1) : (Nt(e, "periodic", !1), void $t(e, "msec", t)) : (Tn("not GObj TYPE"), -1);
|
|
2406
2409
|
}
|
|
2407
|
-
function Ol(e) {
|
|
2408
|
-
return e instanceof S ? "C_TIMER" !== Ze(e) ? (
|
|
2410
|
+
function Ol(e, t) {
|
|
2411
|
+
return e instanceof S ? "C_TIMER" !== Ze(e) ? (Tn("not C_TIMER GObj"), -1) : (Nt(e, "periodic", !0), void $t(e, "msec", t)) : (Tn("not GObj TYPE"), -1);
|
|
2409
2412
|
}
|
|
2410
|
-
|
|
2413
|
+
function Sl(e) {
|
|
2414
|
+
return e instanceof S ? "C_TIMER" !== Ze(e) ? (Tn("not C_TIMER GObj"), -1) : void $t(e, "msec", -1) : (Tn("not GObj TYPE"), -1);
|
|
2415
|
+
}
|
|
2416
|
+
var wl = [
|
|
2411
2417
|
j(y.DTP_BOOLEAN, "changesLost", 0, !1, "Set true to warn about leaving page"),
|
|
2412
2418
|
j(y.DTP_BOOLEAN, "browser_beforeunload", 0, !1, "Set true to refreshing browser"),
|
|
2413
2419
|
j(y.DTP_STRING, "__username__", 0, "", "Username"),
|
|
@@ -2427,63 +2433,63 @@
|
|
|
2427
2433
|
j(y.DTP_BOOLEAN, "developer", 0, !1, "Developer mode enabled"),
|
|
2428
2434
|
j(y.DTP_INTEGER, "periodic_timeout", 0, "1000", "Timeout periodic, in miliseconds."),
|
|
2429
2435
|
v()
|
|
2430
|
-
],
|
|
2431
|
-
function
|
|
2436
|
+
], Nl = { gobj_timer: null }, $l = null;
|
|
2437
|
+
function Rl(e, t, n, r) {
|
|
2432
2438
|
let l = yt(e, t);
|
|
2433
|
-
return
|
|
2439
|
+
return nr(l) || (l = {}), l[n] = r, St(e, t, l), De(e, t);
|
|
2434
2440
|
}
|
|
2435
|
-
function
|
|
2441
|
+
function Dl(e) {
|
|
2436
2442
|
if (!0 === e || !1 === e) return e;
|
|
2437
2443
|
let t = String(null == e ? "" : e).toLowerCase();
|
|
2438
2444
|
return "true" === t || "set" === t || "false" !== t && "reset" !== t && ("" === t || isNaN(Number(t)) ? null : !!Number(t));
|
|
2439
2445
|
}
|
|
2440
|
-
function
|
|
2446
|
+
function kl() {
|
|
2441
2447
|
return `${ze()}^${He()}`;
|
|
2442
2448
|
}
|
|
2443
|
-
function
|
|
2449
|
+
function Al(e, t, n, r) {
|
|
2444
2450
|
return Xt(e, t, n), 0;
|
|
2445
2451
|
}
|
|
2446
|
-
var
|
|
2452
|
+
var Il = {
|
|
2447
2453
|
mt_create: function(e) {
|
|
2448
2454
|
let t = e.priv;
|
|
2449
|
-
Rt(e, "start_date",
|
|
2455
|
+
Rt(e, "start_date", rl()), Rt(e, "node_uuid", ol()), e.priv.gobj_timer = Ce(Xe(e), "C_TIMER", {}, e), t.periodic_timeout = yt(e, "periodic_timeout"), function(e) {
|
|
2450
2456
|
let t = yt(e, "trace_levels");
|
|
2451
|
-
if (!
|
|
2457
|
+
if (!nr(t)) return 0;
|
|
2452
2458
|
let n = t.__global_trace__;
|
|
2453
|
-
if (
|
|
2459
|
+
if (rr(n)) {
|
|
2454
2460
|
Z(4294967295, !1);
|
|
2455
2461
|
for (let e of n) Q(e, !0);
|
|
2456
2462
|
}
|
|
2457
2463
|
for (const [n, r] of Object.entries(t)) {
|
|
2458
2464
|
let t = Oe(n);
|
|
2459
|
-
if (t) if (
|
|
2465
|
+
if (t) if (rr(r)) {
|
|
2460
2466
|
se(t, null, !1);
|
|
2461
2467
|
for (let e of r) se(t, e, !0);
|
|
2462
|
-
} else
|
|
2468
|
+
} else Tn(`${Xe(e)}: trace_levels of ${n} MUST be a list`);
|
|
2463
2469
|
}
|
|
2464
2470
|
}(e), function(e) {
|
|
2465
2471
|
let t = yt(e, "no_trace_levels");
|
|
2466
|
-
if (!
|
|
2472
|
+
if (!nr(t)) return 0;
|
|
2467
2473
|
let n = t.__global_no_trace__;
|
|
2468
|
-
if (
|
|
2474
|
+
if (rr(n)) {
|
|
2469
2475
|
ee(4294967295, !1);
|
|
2470
2476
|
for (let e of n) X(e, !0);
|
|
2471
2477
|
}
|
|
2472
2478
|
for (const [n, r] of Object.entries(t)) {
|
|
2473
2479
|
let t = Oe(n);
|
|
2474
|
-
if (t) if (
|
|
2480
|
+
if (t) if (rr(r)) {
|
|
2475
2481
|
ie(t, null, !1);
|
|
2476
2482
|
for (let e of r) ie(t, e, !0);
|
|
2477
|
-
} else
|
|
2483
|
+
} else Tn(`${Xe(e)}: no_trace_levels of ${n} MUST be a list`);
|
|
2478
2484
|
}
|
|
2479
2485
|
}(e);
|
|
2480
2486
|
},
|
|
2481
2487
|
mt_writing: function(e, t) {},
|
|
2482
2488
|
mt_start: function(e) {
|
|
2483
|
-
return
|
|
2489
|
+
return Ol(e.priv.gobj_timer, e.priv.periodic_timeout), 0;
|
|
2484
2490
|
},
|
|
2485
2491
|
mt_stop: function(e) {
|
|
2486
|
-
return
|
|
2492
|
+
return Sl(e.priv.gobj_timer), Me(e), 0;
|
|
2487
2493
|
},
|
|
2488
2494
|
mt_destroy: function(e) {},
|
|
2489
2495
|
mt_play: function(e) {
|
|
@@ -2500,24 +2506,24 @@
|
|
|
2500
2506
|
case "get-global-no-trace": return l(0, 0, null, null, ne());
|
|
2501
2507
|
case "set-global-trace":
|
|
2502
2508
|
case "set-global-no-trace": {
|
|
2503
|
-
let r = "set-global-no-trace" === t, o = n.level, s =
|
|
2504
|
-
return o ? null === s ? l(0, -1, `${
|
|
2509
|
+
let r = "set-global-no-trace" === t, o = n.level, s = Dl(n.set);
|
|
2510
|
+
return o ? null === s ? l(0, -1, `${kl()}: bitmask set or re-set?`, null, null) : (r ? X(o, s) : Q(o, s)) < 0 ? l(0, -1, `${kl()}: global trace level not found: ${o}`, null, null) : r ? (Rl(e, "no_trace_levels", "__global_no_trace__", ne()), l(0, 0, null, null, ne())) : (Rl(e, "trace_levels", "__global_trace__", te()), l(0, 0, null, null, te())) : l(0, -1, `${kl()}: what level?`, null, null);
|
|
2505
2511
|
}
|
|
2506
2512
|
case "get-gclass-trace":
|
|
2507
2513
|
case "get-gclass-no-trace":
|
|
2508
2514
|
case "set-gclass-trace":
|
|
2509
2515
|
case "set-gclass-no-trace": {
|
|
2510
2516
|
let r = t.indexOf("no-trace") >= 0, o = n.gclass_name || n.gclass || "", s = Oe(o);
|
|
2511
|
-
if (!s) return l(0, -1, `${
|
|
2517
|
+
if (!s) return l(0, -1, `${kl()}: what gclass is '${o}'?`, null, null);
|
|
2512
2518
|
if (0 === t.indexOf("get-")) return l(0, 0, null, null, r ? oe(s) : re(s));
|
|
2513
|
-
let i = n.level, _ =
|
|
2514
|
-
return i ? null === _ ? l(0, -1, `${
|
|
2519
|
+
let i = n.level, _ = Dl(n.set);
|
|
2520
|
+
return i ? null === _ ? l(0, -1, `${kl()}: bitmask set or re-set?`, null, null) : (r ? ie(s, i, _) : se(s, i, _)) < 0 ? l(0, -1, `${kl()}: trace level of ${o} not found: ${i}`, null, null) : r ? (Rl(e, "no_trace_levels", o, oe(s)), l(0, 0, null, null, oe(s))) : (Rl(e, "trace_levels", o, le(s)), l(0, 0, null, null, re(s))) : l(0, -1, `${kl()}: what level?`, null, null);
|
|
2515
2521
|
}
|
|
2516
|
-
default: return l(0, -1, `${
|
|
2522
|
+
default: return l(0, -1, `${kl()}: command not available: ${t}`, null, null);
|
|
2517
2523
|
}
|
|
2518
2524
|
}
|
|
2519
2525
|
};
|
|
2520
|
-
var
|
|
2526
|
+
var Cl = "ievent_gate_stack", Ll = [
|
|
2521
2527
|
j(y.DTP_STRING, "wanted_yuno_role", E.SDF_RD, "", "wanted yuno role"),
|
|
2522
2528
|
j(y.DTP_STRING, "wanted_yuno_name", E.SDF_RD, "", "wanted yuno name"),
|
|
2523
2529
|
j(y.DTP_STRING, "wanted_yuno_service", E.SDF_RD, "", "wanted yuno service"),
|
|
@@ -2534,15 +2540,15 @@
|
|
|
2534
2540
|
j(y.DTP_INTEGER, "timeout_idack", E.SDF_RD, "5000", "timeout waiting idAck"),
|
|
2535
2541
|
j(y.DTP_POINTER, "subscriber", 0, 0, "subscriber of output-events. If null then subscriber is the parent"),
|
|
2536
2542
|
v()
|
|
2537
|
-
],
|
|
2543
|
+
], Pl = [
|
|
2538
2544
|
["ievents", "Trace inter-events with metadata of kw"],
|
|
2539
2545
|
["ievents2", "Trace inter-events with full kw"],
|
|
2540
2546
|
["identity-card", "Trace identity_card messages"]
|
|
2541
2547
|
];
|
|
2542
|
-
function
|
|
2548
|
+
function Ul(e) {
|
|
2543
2549
|
return !!(3 & x(e));
|
|
2544
2550
|
}
|
|
2545
|
-
var
|
|
2551
|
+
var Fl = {
|
|
2546
2552
|
url: null,
|
|
2547
2553
|
remote_yuno_name: null,
|
|
2548
2554
|
remote_yuno_role: null,
|
|
@@ -2552,23 +2558,23 @@
|
|
|
2552
2558
|
websocket: null,
|
|
2553
2559
|
inside_on_open: !1,
|
|
2554
2560
|
retry_ms: 0
|
|
2555
|
-
},
|
|
2556
|
-
function
|
|
2557
|
-
e.priv.websocket &&
|
|
2561
|
+
}, Vl = null;
|
|
2562
|
+
function Gl(e) {
|
|
2563
|
+
e.priv.websocket && Tn("Websocket ALREADY setup");
|
|
2558
2564
|
const t = jt(e, "url");
|
|
2559
|
-
|
|
2565
|
+
jn(`====> Starting WebSocket to '${t}' (${et(e)})`);
|
|
2560
2566
|
const n = ++e.priv.ws_seq;
|
|
2561
2567
|
let r;
|
|
2562
2568
|
try {
|
|
2563
2569
|
r = new WebSocket(t);
|
|
2564
2570
|
} catch (r) {
|
|
2565
|
-
return
|
|
2571
|
+
return Tn(`${et(e)}: Cannot open WebSocket to '${t}', Error: ${r.message}`), Ut(e, "EV_ON_CLOSE", {
|
|
2566
2572
|
url: t,
|
|
2567
2573
|
ws_seq: n,
|
|
2568
2574
|
code: 1006,
|
|
2569
2575
|
reason: r.message,
|
|
2570
2576
|
was_clean: !1
|
|
2571
|
-
}, e) < 0 &&
|
|
2577
|
+
}, e) < 0 && jl(e.priv.gobj_timer, Ql(e)), null;
|
|
2572
2578
|
}
|
|
2573
2579
|
return r ? (r.onopen = () => {
|
|
2574
2580
|
n !== e.priv.ws_seq || ot(e) || Vt(e, "EV_ON_OPEN", {
|
|
@@ -2581,69 +2587,69 @@
|
|
|
2581
2587
|
data: r.data
|
|
2582
2588
|
}, e);
|
|
2583
2589
|
}, r.onclose = (r) => {
|
|
2584
|
-
ot(e) || n === e.priv.ws_seq && (Tt(qe(), "browser_beforeunload") ?
|
|
2590
|
+
ot(e) || n === e.priv.ws_seq && (Tt(qe(), "browser_beforeunload") ? vn("Close websocket by unload page") : Vt(e, "EV_ON_CLOSE", {
|
|
2585
2591
|
url: t,
|
|
2586
2592
|
ws_seq: n,
|
|
2587
2593
|
code: r.code,
|
|
2588
2594
|
reason: r.reason,
|
|
2589
2595
|
was_clean: r.wasClean
|
|
2590
2596
|
}, e));
|
|
2591
|
-
}, r) : (
|
|
2597
|
+
}, r) : (Tn(`${et(e)}: Failed to initialize WebSocket.`), null);
|
|
2592
2598
|
}
|
|
2593
|
-
function
|
|
2599
|
+
function Ml(e, t = 1e3, n = "") {
|
|
2594
2600
|
let r = e.priv, l = r.websocket;
|
|
2595
2601
|
if (r.websocket = null, l && l.readyState !== WebSocket.CLOSED && l.readyState !== WebSocket.CLOSING) {
|
|
2596
|
-
|
|
2602
|
+
jn(`Closing WebSocket (Code: ${t}, Reason: "${n}")`);
|
|
2597
2603
|
try {
|
|
2598
2604
|
l.close(t, n);
|
|
2599
2605
|
} catch (t) {
|
|
2600
|
-
|
|
2606
|
+
Tn(`${et(e)}: Error closing WebSocket: ${t.message}`);
|
|
2601
2607
|
}
|
|
2602
|
-
} else
|
|
2608
|
+
} else vn("WebSocket is already closed or in the process of closing.");
|
|
2603
2609
|
}
|
|
2604
|
-
function
|
|
2605
|
-
let r =
|
|
2610
|
+
function Wl(e, t, n) {
|
|
2611
|
+
let r = rl();
|
|
2606
2612
|
try {
|
|
2607
|
-
|
|
2613
|
+
jn("\n" + r + " " + t + "\n"), Gn(n);
|
|
2608
2614
|
} catch (e) {
|
|
2609
|
-
|
|
2615
|
+
jn("ERROR in trace_inter_event: " + e);
|
|
2610
2616
|
}
|
|
2611
2617
|
}
|
|
2612
|
-
var
|
|
2618
|
+
var xl = class {
|
|
2613
2619
|
constructor(e, t) {
|
|
2614
2620
|
this.event = e, this.kw = t || {};
|
|
2615
2621
|
}
|
|
2616
2622
|
};
|
|
2617
|
-
function
|
|
2623
|
+
function Kl(e, t, n, r) {
|
|
2618
2624
|
return function(e, t) {
|
|
2619
2625
|
let n = e.priv, r = JSON.stringify(t);
|
|
2620
|
-
if (
|
|
2626
|
+
if (Ul(e)) {
|
|
2621
2627
|
let n = jt(e, "url"), l = Xe(qe()) + " ==> " + n, o = yt(qe(), "trace_ievent_callback");
|
|
2622
|
-
o ? o(l, t, 1, r.length) :
|
|
2628
|
+
o ? o(l, t, 1, r.length) : Wl(0, l, t);
|
|
2623
2629
|
}
|
|
2624
|
-
if (!n.websocket || n.websocket.readyState !== WebSocket.OPEN) return
|
|
2630
|
+
if (!n.websocket || n.websocket.readyState !== WebSocket.OPEN) return vn(`${et(e)}: send_iev(): websocket not open, message lost`), -1;
|
|
2625
2631
|
try {
|
|
2626
2632
|
n.websocket.send(r);
|
|
2627
2633
|
} catch (t) {
|
|
2628
|
-
|
|
2634
|
+
Tn(`${et(e)}: send_iev(): ${t}`);
|
|
2629
2635
|
}
|
|
2630
2636
|
return 0;
|
|
2631
2637
|
}(e, function(e, t) {
|
|
2632
|
-
return
|
|
2638
|
+
return ur(e) ? (Tn("iev_create() event NULL"), null) : new xl(e, t);
|
|
2633
2639
|
}(t, n));
|
|
2634
2640
|
}
|
|
2635
|
-
function
|
|
2636
|
-
return
|
|
2641
|
+
function Yl(e, t, n) {
|
|
2642
|
+
return ur(n) && (n = jt(e, "wanted_yuno_service")), {
|
|
2637
2643
|
dst_yuno: jt(e, "wanted_yuno_name"),
|
|
2638
2644
|
dst_role: jt(e, "wanted_yuno_role"),
|
|
2639
2645
|
dst_service: n,
|
|
2640
2646
|
src_yuno: He(),
|
|
2641
2647
|
src_role: ze(),
|
|
2642
2648
|
src_service: t,
|
|
2643
|
-
host:
|
|
2649
|
+
host: ol()
|
|
2644
2650
|
};
|
|
2645
2651
|
}
|
|
2646
|
-
function
|
|
2652
|
+
function Bl(e) {
|
|
2647
2653
|
let t = e.priv, n = Je(qe()), r = jt(qe(), "yuno_version"), l = jt(qe(), "yuno_release"), o = jt(qe(), "yuno_tag"), i = yt(e, "required_services");
|
|
2648
2654
|
i && i.length || (i = yt(qe(), "required_services"));
|
|
2649
2655
|
let _ = {
|
|
@@ -2661,34 +2667,34 @@
|
|
|
2661
2667
|
username: jt(qe(), "__username__"),
|
|
2662
2668
|
launch_id: 0,
|
|
2663
2669
|
yuno_startdate: jt(qe(), "start_date"),
|
|
2664
|
-
id:
|
|
2670
|
+
id: ol(),
|
|
2665
2671
|
user_agent: "undefined" != typeof window ? window.navigator.userAgent : "",
|
|
2666
2672
|
language: "undefined" != typeof window ? window.navigator.language : "",
|
|
2667
2673
|
required_services: i
|
|
2668
2674
|
};
|
|
2669
|
-
return
|
|
2675
|
+
return xr(e, _, Cl, Yl(e, Xe(nt(e)), null)), Yr(e, _, "__identity__"), jl(t.gobj_timer, vt(e, "timeout_idack")), Kl(e, "EV_IDENTITY_CARD", _);
|
|
2670
2676
|
}
|
|
2671
|
-
function
|
|
2672
|
-
if (
|
|
2677
|
+
function Jl(e, t) {
|
|
2678
|
+
if (ur(t.event)) return -1;
|
|
2673
2679
|
let n = {}, r = t.__global__, l = t.__config__, o = t.__filter__, s = t.__service__, i = t.subscriber;
|
|
2674
2680
|
l && (n.__config__ = l), r && (n.__global__ = r), o && (n.__filter__ = o);
|
|
2675
|
-
return
|
|
2676
|
-
}
|
|
2677
|
-
function Jl(e, t, n, r) {
|
|
2678
|
-
let l = e.priv;
|
|
2679
|
-
return Ke(e) && (l.websocket = Vl(e)), 0;
|
|
2681
|
+
return xr(e, n, Cl, Yl(e, Xe(i), s)), Yr(e, n, "__subscribing__"), Kl(e, t.event, n);
|
|
2680
2682
|
}
|
|
2681
2683
|
function ql(e, t, n, r) {
|
|
2682
|
-
|
|
2684
|
+
let l = e.priv;
|
|
2685
|
+
return Ke(e) && (l.websocket = Gl(e)), 0;
|
|
2683
2686
|
}
|
|
2684
2687
|
function Hl(e, t, n, r) {
|
|
2688
|
+
return jn("Websocket opened: " + e.priv.url), Bl(e), 0;
|
|
2689
|
+
}
|
|
2690
|
+
function zl(e, t, n, r) {
|
|
2685
2691
|
let l = e.priv, o = n.url;
|
|
2686
|
-
return void 0 !== n.ws_seq && n.ws_seq !== l.ws_seq || (bn(),
|
|
2692
|
+
return void 0 !== n.ws_seq && n.ws_seq !== l.ws_seq || (bn(), vn(`${et(e)}: WebSocket closed ${o} (Code: ${n.code}, Reason: "${n.reason}", Clean: ${n.was_clean})`), l.websocket && (l.websocket.onopen = null, l.websocket.onmessage = null, l.websocket.onerror = null, l.websocket.onclose = null, l.websocket = null), l.inform_on_close ? (l.inform_on_close = !1, Xt(e, "EV_ON_CLOSE", {
|
|
2687
2693
|
url: o,
|
|
2688
2694
|
remote_yuno_name: l.remote_yuno_name,
|
|
2689
2695
|
remote_yuno_role: l.remote_yuno_role,
|
|
2690
2696
|
remote_yuno_service: l.remote_yuno_service
|
|
2691
|
-
})) : Ke(e) && (
|
|
2697
|
+
})) : Ke(e) && (vn(`${et(e)}: EV_ON_OPEN_ERROR cannot open ${o} (Code: ${n.code}, Reason: "${n.reason}", Clean: ${n.was_clean})`), Xt(e, "EV_ON_OPEN_ERROR", {
|
|
2692
2698
|
url: o,
|
|
2693
2699
|
remote_yuno_name: l.remote_yuno_name,
|
|
2694
2700
|
remote_yuno_role: l.remote_yuno_role,
|
|
@@ -2696,25 +2702,25 @@
|
|
|
2696
2702
|
code: n.code,
|
|
2697
2703
|
reason: n.reason,
|
|
2698
2704
|
was_clean: n.was_clean
|
|
2699
|
-
})), Ke(e) &&
|
|
2705
|
+
})), Ke(e) && jl(l.gobj_timer, Ql(e))), 0;
|
|
2700
2706
|
}
|
|
2701
|
-
function
|
|
2707
|
+
function Ql(e) {
|
|
2702
2708
|
let t = e.priv, n = vt(e, "timeout_retry"), r = vt(e, "timeout_retry_max");
|
|
2703
2709
|
r < n && (r = n), t.retry_ms = t.retry_ms ? Math.min(2 * t.retry_ms, r) : n;
|
|
2704
2710
|
let l = .2 * t.retry_ms, o = t.retry_ms - l + 2 * Math.random() * l;
|
|
2705
2711
|
return Math.max(1, Math.round(o));
|
|
2706
2712
|
}
|
|
2707
|
-
function Ql(e, t, n, r) {
|
|
2708
|
-
return Yl(e), 0;
|
|
2709
|
-
}
|
|
2710
2713
|
function Xl(e, t, n, r) {
|
|
2714
|
+
return Bl(e), 0;
|
|
2715
|
+
}
|
|
2716
|
+
function Zl(e, t, n, r) {
|
|
2711
2717
|
let l = e.priv;
|
|
2712
|
-
|
|
2713
|
-
let o =
|
|
2718
|
+
Sl(l.gobj_timer);
|
|
2719
|
+
let o = Kr(e, n, Cl, !0), s = Or(e, o, "src_yuno", ""), i = Or(e, o, "src_role", ""), _ = Or(e, o, "src_service", "");
|
|
2714
2720
|
Rt(e, "remote_yuno_name", s), Rt(e, "remote_yuno_role", i), Rt(e, "remote_yuno_service", _);
|
|
2715
|
-
let a =
|
|
2721
|
+
let a = jr(e, n, "result", -1, 0), u = Or(e, n, "comment", "", 0), c = Or(e, n, "username", "", 0), f = Nr(e, n, "services_roles", {});
|
|
2716
2722
|
if (a < 0) {
|
|
2717
|
-
|
|
2723
|
+
Ml(e);
|
|
2718
2724
|
let t = {
|
|
2719
2725
|
url: jt(e, "url"),
|
|
2720
2726
|
result: a,
|
|
@@ -2739,61 +2745,61 @@
|
|
|
2739
2745
|
}
|
|
2740
2746
|
l.inside_on_open = !1, function(e) {
|
|
2741
2747
|
let t = zt(e, null, null, null);
|
|
2742
|
-
for (let n = 0; n < t.length; n++)
|
|
2748
|
+
for (let n = 0; n < t.length; n++) Jl(e, t[n]);
|
|
2743
2749
|
}(e);
|
|
2744
2750
|
}
|
|
2745
2751
|
return 0;
|
|
2746
2752
|
}
|
|
2747
|
-
function
|
|
2753
|
+
function eo(e, t, n, r) {
|
|
2748
2754
|
let l = e.priv.url, o = function(e, t) {
|
|
2749
2755
|
let n;
|
|
2750
2756
|
try {
|
|
2751
2757
|
n = JSON.parse(t);
|
|
2752
2758
|
} catch (t) {
|
|
2753
|
-
return
|
|
2759
|
+
return vn(`${et(e)}: parsing inter_event json: ${t}`), null;
|
|
2754
2760
|
}
|
|
2755
|
-
if (!(n instanceof Object)) return
|
|
2761
|
+
if (!(n instanceof Object)) return vn(`${et(e)}: parsing inter_event: websocket data not a json object`), null;
|
|
2756
2762
|
let r = n.event;
|
|
2757
|
-
if (!r) return
|
|
2758
|
-
if ("string" != typeof r) return
|
|
2763
|
+
if (!r) return vn(`${et(e)}: parsing inter_event: no event`), null;
|
|
2764
|
+
if ("string" != typeof r) return vn(`${et(e)}: parsing inter_event: event not a string`), null;
|
|
2759
2765
|
let l = n.kw;
|
|
2760
2766
|
return l ? l instanceof Object ? {
|
|
2761
2767
|
event: r,
|
|
2762
2768
|
kw: l || {}
|
|
2763
|
-
} : (
|
|
2769
|
+
} : (vn(`${et(e)}: parsing inter_event: kw not a json object`), null) : (vn(`${et(e)}: parsing inter_kw: no kw`), null);
|
|
2764
2770
|
}(e, n.data);
|
|
2765
|
-
if (!o) return
|
|
2766
|
-
if (
|
|
2771
|
+
if (!o) return vn(`${et(e)}: frame dropped from ${l}: ${String(n.data).substring(0, 256)}`), -1;
|
|
2772
|
+
if (Ul(e)) {
|
|
2767
2773
|
let e = Xe(qe()) + " <== " + l, t = n.data.length, r = yt(qe(), "trace_ievent_callback");
|
|
2768
|
-
r ? r(e, o, 2, t) :
|
|
2774
|
+
r ? r(e, o, 2, t) : Wl(0, e, o);
|
|
2769
2775
|
}
|
|
2770
2776
|
let s = o.event, i = o.kw;
|
|
2771
2777
|
if ("ST_SESSION" !== kt(e)) {
|
|
2772
2778
|
if (It(e, s, R.EVF_PUBLIC_EVENT)) {
|
|
2773
2779
|
if (!(Vt(e, s, i, e) < 0)) return 0;
|
|
2774
|
-
} else
|
|
2775
|
-
return
|
|
2780
|
+
} else Tn(`${et(e)}: event UNKNOWN in not-session state ${s}`);
|
|
2781
|
+
return Ml(e), -1;
|
|
2776
2782
|
}
|
|
2777
2783
|
o = null;
|
|
2778
|
-
let _ =
|
|
2779
|
-
if (u.toLowerCase() !== ze().toLowerCase()) return
|
|
2780
|
-
let c =
|
|
2781
|
-
if ("__subscribing__" === _) return
|
|
2782
|
-
if ("__unsubscribing__" === _) return
|
|
2784
|
+
let _ = Br(e, i), a = Kr(e, i, Cl), u = Or(e, a, "dst_role", "");
|
|
2785
|
+
if (u.toLowerCase() !== ze().toLowerCase()) return Tn(`"It's not my role, dst_role: ${u}, my_role: ${ze()}`), 0;
|
|
2786
|
+
let c = Or(e, a, "dst_service", "");
|
|
2787
|
+
if ("__subscribing__" === _) return vn(`${et(e)}: subscription event ignored, I'm client (service: ${c}, event: ${s})`), -1;
|
|
2788
|
+
if ("__unsubscribing__" === _) return vn(`${et(e)}: unsubscription event ignored, I'm client (service: ${c}, event: ${s})`), -1;
|
|
2783
2789
|
if (It(e, s, R.EVF_PUBLIC_EVENT)) return Vt(e, s, i, e), 0;
|
|
2784
|
-
if (!
|
|
2790
|
+
if (!ur(c)) {
|
|
2785
2791
|
let t = we(c, !1);
|
|
2786
|
-
return t ? It(t, s, R.EVF_PUBLIC_EVENT) ? (Vt(t, s, i, e), 0) : (
|
|
2792
|
+
return t ? It(t, s, R.EVF_PUBLIC_EVENT) ? (Vt(t, s, i, e), 0) : (Tn(`${et(e)}: Service found but no event or not public, service '${et(t)}', ev '${s}'`), -1) : (vn(`${et(e)}: event for a service that is gone, DROPPED: service '${c}', ev '${s}'`), 0);
|
|
2787
2793
|
}
|
|
2788
2794
|
return lt(e) ? Vt(nt(e), s, i, e) : Xt(e, s, i), 0;
|
|
2789
2795
|
}
|
|
2790
|
-
function
|
|
2796
|
+
function to(e, t, n, r) {
|
|
2791
2797
|
return 0;
|
|
2792
2798
|
}
|
|
2793
|
-
function
|
|
2799
|
+
function no(e, t, n, r) {
|
|
2794
2800
|
return 0;
|
|
2795
2801
|
}
|
|
2796
|
-
var
|
|
2802
|
+
var ro = {
|
|
2797
2803
|
mt_create: function(e) {
|
|
2798
2804
|
let t = e.priv;
|
|
2799
2805
|
t.gobj_timer = Ce(Xe(e), "C_TIMER", {}, e), t.ws_seq = 0, t.url = jt(e, "url"), t.remote_yuno_name = jt(e, "remote_yuno_name"), t.remote_yuno_role = jt(e, "remote_yuno_role"), t.remote_yuno_service = jt(e, "remote_yuno_service"), Rt(e, "wanted_yuno_name", t.remote_yuno_name), Rt(e, "wanted_yuno_role", t.remote_yuno_role), Rt(e, "wanted_yuno_service", t.remote_yuno_service);
|
|
@@ -2823,52 +2829,52 @@
|
|
|
2823
2829
|
code: 1e3,
|
|
2824
2830
|
reason: "restarted",
|
|
2825
2831
|
was_clean: !0
|
|
2826
|
-
}, e),
|
|
2832
|
+
}, e), Sl(t.gobj_timer)), t.websocket = Gl(e), 0;
|
|
2827
2833
|
},
|
|
2828
2834
|
mt_stop: function(e) {
|
|
2829
2835
|
let t = e.priv;
|
|
2830
|
-
return
|
|
2836
|
+
return Sl(t.gobj_timer), t.websocket && Ml(e), 0;
|
|
2831
2837
|
},
|
|
2832
2838
|
mt_destroy: function(e) {},
|
|
2833
2839
|
mt_stats: function(e, t, n, r) {
|
|
2834
|
-
if ("ST_SESSION" !== kt(e)) return
|
|
2840
|
+
if ("ST_SESSION" !== kt(e)) return Tn("Not in session"), null;
|
|
2835
2841
|
n || (n = {});
|
|
2836
|
-
let l =
|
|
2837
|
-
return o || (o = {}),
|
|
2842
|
+
let l = Yl(e, Xe(r), Or(e, n, "service", null, 0)), o = Nr(e, n, "__md_stats__", null, Zt.KW_EXTRACT);
|
|
2843
|
+
return o || (o = {}), xr(e, n, "stats_stack", {
|
|
2838
2844
|
stats: t,
|
|
2839
2845
|
kw: o
|
|
2840
|
-
}),
|
|
2846
|
+
}), xr(e, n, Cl, l), n.__stats__ = t, Yr(e, n, "__stats__"), Kl(e, "EV_MT_STATS", n, r), null;
|
|
2841
2847
|
},
|
|
2842
2848
|
mt_command_parser: function(e, t, n, r) {
|
|
2843
|
-
if ("ST_SESSION" !== kt(e)) return
|
|
2849
|
+
if ("ST_SESSION" !== kt(e)) return Tn("Not in session"), null;
|
|
2844
2850
|
n || (n = {});
|
|
2845
|
-
let l =
|
|
2846
|
-
return o || (o = {}),
|
|
2851
|
+
let l = Yl(e, Xe(r), Or(e, n, "service", "", 0)), o = Nr(e, n, "__md_command__", null, Zt.KW_EXTRACT);
|
|
2852
|
+
return o || (o = {}), xr(e, n, "command_stack", {
|
|
2847
2853
|
command: t,
|
|
2848
2854
|
kw: o
|
|
2849
|
-
}),
|
|
2855
|
+
}), xr(e, n, Cl, l), n.__command__ = t, Yr(e, n, "__command__"), Kl(e, "EV_MT_COMMAND", n, r), null;
|
|
2850
2856
|
},
|
|
2851
2857
|
mt_inject_event: function(e, t, n, r) {
|
|
2852
2858
|
if ("ST_SESSION" !== kt(e)) return window.console.error("Not in session"), -1;
|
|
2853
|
-
if (n =
|
|
2859
|
+
if (n = xn({}, nr(n) ? n : {}), nr(n.__md_iev__) && (n.__md_iev__ = Mn(n.__md_iev__)), Kr(e, n, Cl));
|
|
2854
2860
|
else {
|
|
2855
|
-
let l =
|
|
2856
|
-
|
|
2861
|
+
let l = Yl(e, Xe(r), Or(e, n, "__service__", 0, 0));
|
|
2862
|
+
Jn(n, "__service__"), xr(e, n, "__message__", t), xr(e, n, Cl, l);
|
|
2857
2863
|
}
|
|
2858
|
-
return
|
|
2864
|
+
return Yr(e, n, "__message__"), Kl(e, t, n, r);
|
|
2859
2865
|
},
|
|
2860
2866
|
mt_subscription_added: function(e, t) {
|
|
2861
2867
|
let n = e.priv;
|
|
2862
|
-
return "ST_SESSION" === kt(e) && n.websocket ? n.inside_on_open ? 0 :
|
|
2868
|
+
return "ST_SESSION" === kt(e) && n.websocket ? n.inside_on_open ? 0 : Jl(e, t) : 0;
|
|
2863
2869
|
},
|
|
2864
2870
|
mt_subscription_deleted: function(e, t) {
|
|
2865
2871
|
let n = e.priv;
|
|
2866
2872
|
if ("ST_SESSION" !== kt(e) || !n.websocket) return 0;
|
|
2867
2873
|
if (n.inside_on_open) return 0;
|
|
2868
|
-
if (
|
|
2874
|
+
if (ur(t.event)) return 0;
|
|
2869
2875
|
let r = {}, l = t.__global__, o = t.__config__, s = t.__filter__, i = t.__service__, _ = t.subscriber;
|
|
2870
2876
|
o && (r.__config__ = o), l && (r.__global__ = l), s && (r.__filter__ = s);
|
|
2871
|
-
return
|
|
2877
|
+
return xr(e, r, Cl, Yl(e, Xe(_), i)), Yr(e, r, "__unsubscribing__"), Kl(e, t.event, r, e);
|
|
2872
2878
|
}
|
|
2873
2879
|
};
|
|
2874
2880
|
e.GObj = S, e.SDATA = j, e.SDATAAUTHZ = (e, t, n, r, l, o) => new T(e, t, n, null, o, r, null, 0, null, l, null), e.SDATACM = (e, t, n, r, l, o) => new T(e, t, 0, null, o, n, null, 0, l, r, null), e.SDATACM2 = (e, t, n, r, l, o, s) => new T(e, t, n, null, s, r, null, 0, o, l, null), e.SDATADF = (e, t, n, r, l, o) => new T(e, t, n, null, o, null, r, l), e.SDATAPM = (e, t, n, r, l) => new T(e, t, n, r, l), e.SDATAPM0 = (e, t, n, r, l) => new T(e, t, n, null, l, null, null, 0, null, null, r), e.SDATA_END = v, e.SDataDesc = T, e.YUNETA_VERSION = s, Object.defineProperty(e, "__yuno__", {
|
|
@@ -2882,55 +2888,55 @@
|
|
|
2882
2888
|
return t;
|
|
2883
2889
|
}, e.build_stats_response = o, e.clean_name = function(e) {
|
|
2884
2890
|
return e.replace(/[?# ^:]/g, "_");
|
|
2885
|
-
}, e.clear_timeout =
|
|
2891
|
+
}, e.clear_timeout = Sl, e.cmp_two_simple_json = dr, e.command_parser = function(e, t, n, r) {}, e.createElement2 = function e(t, n) {
|
|
2886
2892
|
let [r, l, o, s] = t;
|
|
2887
|
-
if (!r) return void
|
|
2893
|
+
if (!r) return void Tn("Tag must be a valid HTML element.");
|
|
2888
2894
|
let i = document.createElement(r), _ = "";
|
|
2889
2895
|
if (l && "object" == typeof l) for (let e of Object.keys(l)) if ("style" === e && "object" == typeof l[e]) {
|
|
2890
2896
|
let t = "";
|
|
2891
2897
|
for (const n of Object.keys(l[e])) t += `${n}: ${l[e][n]};`;
|
|
2892
2898
|
i.style.cssText = t;
|
|
2893
2899
|
} else "style" === e ? i.style.cssText = l[e] : "i18n" === e || "data-i18n" === e || "data_i18next" === e || "data-i18next" === e ? null !== l[e] && void 0 !== l[e] && (_ = l[e], i.setAttribute("data-i18n", _)) : i.setAttribute(e, l[e]);
|
|
2894
|
-
if (
|
|
2895
|
-
else if (
|
|
2900
|
+
if (Xr(o)) i.appendChild(Zr(o));
|
|
2901
|
+
else if (lr(o)) if (o = o.trim(), o.length > 0 && "<" === o[0] && !el) i.appendChild(nl(o));
|
|
2896
2902
|
else if (o.length > 0 && "<" === o[0] && function(e) {
|
|
2897
|
-
if (
|
|
2903
|
+
if (tl.size >= 100) return;
|
|
2898
2904
|
const t = e.slice(0, 80);
|
|
2899
|
-
|
|
2905
|
+
tl.has(t) || (tl.add(t), vn(`createElement2: a string that starts with '<' is TEXT (set_strings_are_text): use html_markup() if it is markup: ${JSON.stringify(t)}`));
|
|
2900
2906
|
}(o), n && _) i.textContent = n(_) || o;
|
|
2901
2907
|
else i.textContent = o;
|
|
2902
|
-
else if (
|
|
2903
|
-
if (o.length > 0) if (
|
|
2904
|
-
else for (let t of o) Array.isArray(t) ? t.length > 0 && i.appendChild(e(t, n)) : t instanceof Node ? i.appendChild(t) :
|
|
2905
|
-
} else o instanceof HTMLElement || o instanceof Text || o instanceof SVGElement ? i.appendChild(o) : null != o && (
|
|
2908
|
+
else if (rr(o)) {
|
|
2909
|
+
if (o.length > 0) if (lr(o[0])) i.appendChild(e(o, n));
|
|
2910
|
+
else for (let t of o) Array.isArray(t) ? t.length > 0 && i.appendChild(e(t, n)) : t instanceof Node ? i.appendChild(t) : Xr(t) ? i.appendChild(Zr(t)) : lr(t) ? i.appendChild(document.createTextNode(t)) : null != t && !1 !== t && Tn("createElement2: child ignored, type " + typeof t);
|
|
2911
|
+
} else o instanceof HTMLElement || o instanceof Text || o instanceof SVGElement ? i.appendChild(o) : null != o && (Tn("content ignored"), Sn(o));
|
|
2906
2912
|
if (s && "object" == typeof s) for (const e of Object.keys(s)) i.addEventListener(e, s[e]);
|
|
2907
2913
|
return i;
|
|
2908
|
-
}, e.createOneHtml =
|
|
2909
|
-
let n =
|
|
2910
|
-
return
|
|
2914
|
+
}, e.createOneHtml = nl, e.create_json_record = function(e, t) {
|
|
2915
|
+
let n = Mn(e);
|
|
2916
|
+
return Kn(n, t), n;
|
|
2911
2917
|
}, e.create_template_record = function(e, t) {
|
|
2912
2918
|
let n = {};
|
|
2913
2919
|
return t || (t = {}), Object.entries(e).forEach(([e, r]) => {
|
|
2914
2920
|
let l;
|
|
2915
|
-
|
|
2916
|
-
let o =
|
|
2917
|
-
|
|
2921
|
+
nr(r) && (l = r.default);
|
|
2922
|
+
let o = Nr(null, t, e, l);
|
|
2923
|
+
qn(n, e, o);
|
|
2918
2924
|
}), n;
|
|
2919
|
-
}, e.current_timestamp =
|
|
2920
|
-
let n =
|
|
2921
|
-
return n &&
|
|
2925
|
+
}, e.current_timestamp = rl, e.data_type_t = y, e.db_list_persistent_attrs = function(e, t) {
|
|
2926
|
+
let n = Cr(fl(e), null, !1), r = {};
|
|
2927
|
+
return n && nr(n) && (r = Ar(e, n, t, !1)), r;
|
|
2922
2928
|
}, e.db_load_persistent_attrs = function(e, t) {
|
|
2923
|
-
let n = Et(e, E.SDF_PERSIST), r =
|
|
2924
|
-
if (r &&
|
|
2925
|
-
let l =
|
|
2926
|
-
l =
|
|
2929
|
+
let n = Et(e, E.SDF_PERSIST), r = Cr(fl(e), null, !1);
|
|
2930
|
+
if (r && nr(r)) {
|
|
2931
|
+
let l = Ar(e, r, t, !1);
|
|
2932
|
+
l = Ar(e, l, n, !1), wt(e, l, E.SDF_PERSIST);
|
|
2927
2933
|
}
|
|
2928
2934
|
}, e.db_remove_persistent_attrs = function(e, t) {
|
|
2929
|
-
let n =
|
|
2930
|
-
0 ===
|
|
2935
|
+
let n = Ir(e, Cr(fl(e), null, !1), t, !1);
|
|
2936
|
+
0 === Zn(n) ? Pr(fl(e)) : Lr(fl(e), n);
|
|
2931
2937
|
}, e.db_save_persistent_attrs = function(e, t) {
|
|
2932
|
-
let n =
|
|
2933
|
-
return r &&
|
|
2938
|
+
let n = Ar(e, Et(e, E.SDF_PERSIST), t, !1), r = Cr(fl(e), null, !1);
|
|
2939
|
+
return r && nr(r) && Yn(n, r), Lr(fl(e), n);
|
|
2934
2940
|
}, e.debounce = function(e, t = 0, n = !1) {
|
|
2935
2941
|
let r = null, l = null, o = null;
|
|
2936
2942
|
const s = (...s) => {
|
|
@@ -2950,24 +2956,24 @@
|
|
|
2950
2956
|
return !1;
|
|
2951
2957
|
}, e.duplicate_objects = function(...e) {
|
|
2952
2958
|
const t = {};
|
|
2953
|
-
for (const n of e)
|
|
2959
|
+
for (const n of e) xn(t, structuredClone(n));
|
|
2954
2960
|
return t;
|
|
2955
2961
|
}, e.empty_json = function(e) {
|
|
2956
|
-
return 0 ===
|
|
2957
|
-
}, e.empty_string =
|
|
2962
|
+
return 0 === tr(e);
|
|
2963
|
+
}, e.empty_string = ur, e.escapeHtml = zr, e.event_flag_t = R, e.flat2json = function(e) {
|
|
2958
2964
|
if (null === e || "object" != typeof e || Array.isArray(e)) throw new Error("flat2json: a flat json is an object of id -> value");
|
|
2959
2965
|
let t = null;
|
|
2960
2966
|
for (const n of Object.keys(e)) {
|
|
2961
|
-
const r =
|
|
2967
|
+
const r = ul(n);
|
|
2962
2968
|
if (!r || 0 === r.length) throw new Error(`flat2json: malformed flat id: '${n}'`);
|
|
2963
|
-
if (r.length >
|
|
2969
|
+
if (r.length > il) throw new Error(`flat2json: '${n}' deeper than 256`);
|
|
2964
2970
|
const l = "number" == typeof r[0];
|
|
2965
2971
|
if (null === t) t = l ? [] : {};
|
|
2966
2972
|
else if (l !== Array.isArray(t)) throw new Error(`flat2json: '${n}' does not fit a ${Array.isArray(t) ? "array" : "object"} root`);
|
|
2967
2973
|
let o = t;
|
|
2968
2974
|
for (let t = 0; t < r.length; t++) {
|
|
2969
2975
|
const l = r[t], s = "number" == typeof l, i = t === r.length - 1, _ = !i && "number" == typeof r[t + 1];
|
|
2970
|
-
if (s && l >
|
|
2976
|
+
if (s && l > _l) throw new Error(`flat2json: array index ${l} over the limit (100000) in '${n}'`);
|
|
2971
2977
|
if (s !== Array.isArray(o)) throw new Error(`flat2json: '${n}' uses a ${s ? "array index" : "key"} where the tree already has a ${Array.isArray(o) ? "array" : "object"}`);
|
|
2972
2978
|
if (i) {
|
|
2973
2979
|
if (Array.isArray(o)) {
|
|
@@ -2975,7 +2981,7 @@
|
|
|
2975
2981
|
o[l] = e[n];
|
|
2976
2982
|
} else {
|
|
2977
2983
|
if (Object.prototype.hasOwnProperty.call(o, l)) throw new Error(`flat2json: '${n}' is written twice, or once as a value and once as a container`);
|
|
2978
|
-
|
|
2984
|
+
hr(o, l, e[n]);
|
|
2979
2985
|
}
|
|
2980
2986
|
break;
|
|
2981
2987
|
}
|
|
@@ -2983,7 +2989,7 @@
|
|
|
2983
2989
|
if (Array.isArray(o)) {
|
|
2984
2990
|
for (; o.length <= l;) o.push(null);
|
|
2985
2991
|
a = o[l], null == a && (a = _ ? [] : {}, o[l] = a);
|
|
2986
|
-
} else a =
|
|
2992
|
+
} else a = mr(o, l) ? void 0 : o[l], void 0 === a && (a = _ ? [] : {}, hr(o, l, a));
|
|
2987
2993
|
if (null === a || "object" != typeof a) throw new Error(`flat2json: '${n}' walks through a value: the same id is a leaf and a container at once`);
|
|
2988
2994
|
if (_ !== Array.isArray(a)) throw new Error(`flat2json: '${n}' needs a ${_ ? "array" : "object"} where the tree already has a ${Array.isArray(a) ? "array" : "object"}`);
|
|
2989
2995
|
o = a;
|
|
@@ -2994,11 +3000,11 @@
|
|
|
2994
3000
|
if (null === e || "object" != typeof e || Array.isArray(e)) throw new Error("flat_apply: a flat json is an object of id -> value");
|
|
2995
3001
|
if (null === t || "object" != typeof t) throw new Error("flat_apply: a diff is the object flat_diff() answers");
|
|
2996
3002
|
for (const n of Object.keys(t.removed || {})) delete e[n];
|
|
2997
|
-
for (const n of Object.keys(t.added || {}))
|
|
3003
|
+
for (const n of Object.keys(t.added || {})) hr(e, n, t.added[n]);
|
|
2998
3004
|
for (const n of Object.keys(t.changed || {})) {
|
|
2999
3005
|
const r = t.changed[n];
|
|
3000
3006
|
if (!r || !Object.prototype.hasOwnProperty.call(r, "to")) throw new Error(`flat_apply: changed '${n}' without a 'to'`);
|
|
3001
|
-
|
|
3007
|
+
hr(e, n, r.to);
|
|
3002
3008
|
}
|
|
3003
3009
|
return e;
|
|
3004
3010
|
}, e.flat_diff = function(e, t) {
|
|
@@ -3007,15 +3013,15 @@
|
|
|
3007
3013
|
removed: {},
|
|
3008
3014
|
changed: {}
|
|
3009
3015
|
};
|
|
3010
|
-
for (const e of Object.keys(n)) Object.prototype.hasOwnProperty.call(r, e) ?
|
|
3016
|
+
for (const e of Object.keys(n)) Object.prototype.hasOwnProperty.call(r, e) ? cl(n[e], r[e]) || hr(l.changed, e, {
|
|
3011
3017
|
from: n[e],
|
|
3012
3018
|
to: r[e]
|
|
3013
|
-
}) :
|
|
3014
|
-
for (const e of Object.keys(r)) Object.prototype.hasOwnProperty.call(n, e) ||
|
|
3019
|
+
}) : hr(l.removed, e, n[e]);
|
|
3020
|
+
for (const e of Object.keys(r)) Object.prototype.hasOwnProperty.call(n, e) || hr(l.added, e, r[e]);
|
|
3015
3021
|
return l;
|
|
3016
3022
|
}, e.flat_key_join = function(e) {
|
|
3017
|
-
return Array.isArray(e) && 0 !== e.length ? e.map((e) => "number" == typeof e ? `[${e}]` :
|
|
3018
|
-
}, e.flat_key_split =
|
|
3023
|
+
return Array.isArray(e) && 0 !== e.length ? e.map((e) => "number" == typeof e ? `[${e}]` : al(e)).join("`") : "";
|
|
3024
|
+
}, e.flat_key_split = ul, e.gclass_add_ev_action = ye, e.gclass_add_event_type = Te, e.gclass_add_state = he, e.gclass_check_fsm = je, e.gclass_create = de, e.gclass_event_type = ve, e.gclass_find_by_name = Oe, e.gclass_flag_t = w, e.gclass_unregister = be, e.getPositionRelativeToBody = function(e) {
|
|
3019
3025
|
if (!e) return {
|
|
3020
3026
|
top: 0,
|
|
3021
3027
|
left: 0,
|
|
@@ -3034,17 +3040,17 @@
|
|
|
3034
3040
|
right: n + i + r,
|
|
3035
3041
|
bottom: t + s + l
|
|
3036
3042
|
};
|
|
3037
|
-
}, e.get_function_name =
|
|
3043
|
+
}, e.get_function_name = sl, e.get_now = function() {
|
|
3038
3044
|
return Math.floor(Date.now() / 1e3);
|
|
3039
3045
|
}, e.gobj_bottom_gobj = st, e.gobj_change_parent = function(e, t) {
|
|
3040
|
-
return ot(e) ? (
|
|
3046
|
+
return ot(e) ? (Tn("gobj NULL or DESTROYED"), null) : t instanceof S ? (e.parent && e.parent.gclass.gmt.mt_child_removed && e.parent.gclass.gmt.mt_child_removed(e.parent, e), e.parent && (Re(e.parent, e), e.parent = null), $e(t, e), t.gclass.gmt.mt_child_added && (Y(e) && jn(n("👦👦🔵 child_added(%s): %s", tt(t), et(e))), t.gclass.gmt.mt_child_added(t, e)), 0) : (Tn(`${et(e)}: gobj_change_parent() BAD TYPE of parent`), -1);
|
|
3041
3047
|
}, e.gobj_change_state = Dt, e.gobj_command = function(e, t, r, o) {
|
|
3042
|
-
if (ot(e)) return
|
|
3048
|
+
if (ot(e)) return Tn("gobj NULL or DESTROYED"), -1;
|
|
3043
3049
|
if (function(e) {
|
|
3044
3050
|
return G > 1 || !!e && !!(x(e) & P.TRACE_COMMANDS);
|
|
3045
3051
|
}(e) || H(e, null) && !z(o, null)) {
|
|
3046
|
-
let l =
|
|
3047
|
-
L(n("🌀🌀 mach(%s%s), cmd: %s, src: %s", Ke(e) ? "" : "!!", et(e), null !== l ? l : t, et(o))), q(e) &&
|
|
3052
|
+
let l = Cn(t);
|
|
3053
|
+
L(n("🌀🌀 mach(%s%s), cmd: %s, src: %s", Ke(e) ? "" : "!!", et(e), null !== l ? l : t, et(o))), q(e) && Gn(r);
|
|
3048
3054
|
}
|
|
3049
3055
|
return e.gclass.gmt.mt_command_parser ? e.gclass.gmt.mt_command_parser(e, t, r, o) : e.gclass.command_table ? c ? c(e, t, r, o) : l(0, -1, n("%s: global command parser not available", et(e)), 0, 0) : l(0, -1, n("%s: command table not available", et(e)), 0, 0);
|
|
3050
3056
|
}, e.gobj_create = function(e, t, n, r) {
|
|
@@ -3058,7 +3064,7 @@
|
|
|
3058
3064
|
}, e.gobj_create_yuno = function(e, t, n) {
|
|
3059
3065
|
return Ie(e, t, n, null, N.gobj_flag_yuno);
|
|
3060
3066
|
}, e.gobj_current_state = kt, e.gobj_default_service = Se, e.gobj_deliver_posted_events = Ft, e.gobj_destroy = Le, e.gobj_find_child = pt, e.gobj_find_gobj = function(e, t) {
|
|
3061
|
-
if (
|
|
3067
|
+
if (ur(t)) return null;
|
|
3062
3068
|
const n = t.toLowerCase();
|
|
3063
3069
|
return "__default_service__" === n ? m : "__yuno__" === n || "__root__" === n ? p : mt(p, t);
|
|
3064
3070
|
}, e.gobj_find_service = we, e.gobj_find_subscribings = Qt, e.gobj_find_subscriptions = zt, e.gobj_flag_t = N, e.gobj_full_name = tt, e.gobj_gclass_name = Ze, e.gobj_get_gclass_trace_level = re, e.gobj_get_gclass_trace_level2 = le, e.gobj_get_gclass_trace_no_level = oe, e.gobj_get_global_trace_level = te, e.gobj_get_global_trace_no_level = ne, e.gobj_global_trace_level = function() {
|
|
@@ -3070,24 +3076,24 @@
|
|
|
3070
3076
|
}, e.gobj_list_subscriptions = function(e) {
|
|
3071
3077
|
let t = zt(e, null, null, null);
|
|
3072
3078
|
for (let n = 0; n < t.length; n++) {
|
|
3073
|
-
let r = t[n], l =
|
|
3074
|
-
|
|
3079
|
+
let r = t[n], l = Sr(e, r, "publisher", null, Zt.KW_REQUIRED), o = Sr(e, r, "subscriber", null, Zt.KW_REQUIRED);
|
|
3080
|
+
Hn(r, "s_event", Or(e, r, "event", "", Zt.KW_REQUIRED)), Hn(r, "s_publisher", et(l)), Hn(r, "s_subscriber", et(o));
|
|
3075
3081
|
}
|
|
3076
3082
|
let n = Qt(e, 0, null, 0);
|
|
3077
3083
|
for (let t = 0; t < n.length; t++) {
|
|
3078
|
-
let r = n[t], l =
|
|
3079
|
-
|
|
3084
|
+
let r = n[t], l = Sr(e, r, "publisher", null, Zt.KW_REQUIRED), o = Sr(e, r, "subscriber", null, Zt.KW_REQUIRED);
|
|
3085
|
+
Hn(r, "s_event", Or(e, r, "event", "", Zt.KW_REQUIRED)), Hn(r, "s_publisher", et(l)), Hn(r, "s_subscriber", et(o));
|
|
3080
3086
|
}
|
|
3081
3087
|
return {
|
|
3082
3088
|
subscriptions: t,
|
|
3083
3089
|
subscribings: n,
|
|
3084
|
-
"total subscriptions":
|
|
3085
|
-
total_subscribings:
|
|
3090
|
+
"total subscriptions": er(t),
|
|
3091
|
+
total_subscribings: er(n)
|
|
3086
3092
|
};
|
|
3087
3093
|
}, e.gobj_load_persistent_attrs = function(e, t) {
|
|
3088
|
-
return Be(e) ? i ? i(e, t) : -1 : (
|
|
3094
|
+
return Be(e) ? i ? i(e, t) : -1 : (Tn(`${et(e)}: Only gobj services can load/save writable-persistent`), -1);
|
|
3089
3095
|
}, e.gobj_match_children = function(e, t) {
|
|
3090
|
-
if (ot(e)) return
|
|
3096
|
+
if (ot(e)) return Tn("gobj NULL or DESTROYED"), null;
|
|
3091
3097
|
t = t || {};
|
|
3092
3098
|
let n = [];
|
|
3093
3099
|
const r = e.dl_children;
|
|
@@ -3109,7 +3115,7 @@
|
|
|
3109
3115
|
}, e.gobj_match_gobj = bt, e.gobj_name = Xe, e.gobj_parent = nt, e.gobj_pause = xe, e.gobj_play = We, e.gobj_post_event = Ut, e.gobj_posted_events_size = function() {
|
|
3110
3116
|
return Lt.length;
|
|
3111
3117
|
}, e.gobj_publish_event = Xt, e.gobj_read_attr = yt, e.gobj_read_attrs = Et, e.gobj_read_bool_attr = Tt, e.gobj_read_integer_attr = vt, e.gobj_read_pointer_attr = Ot, e.gobj_read_str_attr = jt, e.gobj_remove_persistent_attrs = function(e, t) {
|
|
3112
|
-
return Be(e) ? a ? a(e, t) : -1 : (
|
|
3118
|
+
return Be(e) ? a ? a(e, t) : -1 : (Tn(`${et(e)}: Only gobj services can load/save writable-persistent`), -1);
|
|
3113
3119
|
}, e.gobj_repr_global_trace_levels = function() {
|
|
3114
3120
|
return U.map(([e, t, n]) => ({
|
|
3115
3121
|
name: e,
|
|
@@ -3119,34 +3125,34 @@
|
|
|
3119
3125
|
}));
|
|
3120
3126
|
}, e.gobj_reset_volatil_attrs = function(e) {
|
|
3121
3127
|
return function(e, t, n) {
|
|
3122
|
-
if (ot(e)) return
|
|
3128
|
+
if (ot(e)) return Tn("gobj NULL or DESTROYED"), -1;
|
|
3123
3129
|
let r = e.gclass.attrs_table;
|
|
3124
3130
|
for (let l = 0; l < r.length; l++) {
|
|
3125
3131
|
const o = r[l];
|
|
3126
|
-
o.name && (n && o.flag & n || (-1 === t || o.flag & t) && (ae(e, e.jn_attrs, o),
|
|
3132
|
+
o.name && (n && o.flag & n || (-1 === t || o.flag & t) && (ae(e, e.jn_attrs, o), nr(e.priv) && Object.prototype.hasOwnProperty.call(e.priv, o.name) && (e.priv[o.name] = e.jn_attrs[o.name]), e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, o.name)));
|
|
3127
3133
|
}
|
|
3128
3134
|
return 0;
|
|
3129
3135
|
}(e, E.SDF_VOLATIL, 0);
|
|
3130
3136
|
}, e.gobj_save_persistent_attrs = De, e.gobj_search_path = mt, e.gobj_send_event = Vt, e.gobj_services = function() {
|
|
3131
3137
|
let e = [];
|
|
3132
|
-
for (const t of Object.keys(b))
|
|
3138
|
+
for (const t of Object.keys(b)) Qn(e, t);
|
|
3133
3139
|
return e;
|
|
3134
3140
|
}, e.gobj_set_bottom_gobj = it, e.gobj_set_deep_trace = function(e) {
|
|
3135
3141
|
return G = Number(e) || 0, 0;
|
|
3136
3142
|
}, e.gobj_set_gclass_no_trace = ie, e.gobj_set_gclass_trace = se, e.gobj_set_global_no_trace = X, e.gobj_set_global_no_trace2 = ee, e.gobj_set_global_trace = Q, e.gobj_set_global_trace2 = Z, e.gobj_set_gobj_no_trace = function(e, t, n) {
|
|
3137
|
-
if (!e) return
|
|
3143
|
+
if (!e) return Tn("gobj_set_gobj_no_trace: gobj NULL"), -1;
|
|
3138
3144
|
const r = W(t, "gobj_set_gobj_no_trace", e.gclass && e.gclass.s_user_trace_level || null);
|
|
3139
3145
|
return r ? (n ? e.no_trace_level |= r : e.no_trace_level &= ~r, 0) : -1;
|
|
3140
3146
|
}, e.gobj_set_gobj_trace = function(e, t, n) {
|
|
3141
|
-
if (!e) return
|
|
3147
|
+
if (!e) return Tn("gobj_set_gobj_trace: gobj NULL"), -1;
|
|
3142
3148
|
const r = W(t, "gobj_set_gobj_trace", e.gclass && e.gclass.s_user_trace_level || null);
|
|
3143
3149
|
return r ? (n ? e.trace_level |= r : e.trace_level &= ~r, 0) : -1;
|
|
3144
3150
|
}, e.gobj_set_trace_machine_format = function(e) {
|
|
3145
3151
|
C = 1 === Number(e) ? 1 : 0;
|
|
3146
3152
|
}, e.gobj_short_name = et, e.gobj_start = Pe, e.gobj_start_children = function(e) {
|
|
3147
|
-
return ot(e) ? (
|
|
3153
|
+
return ot(e) ? (Tn("gobj NULL or DESTROYED"), -1) : at(e, D.WALK_FIRST2LAST, Ue, 0, 0);
|
|
3148
3154
|
}, e.gobj_start_tree = function(e) {
|
|
3149
|
-
return ot(e) ? (
|
|
3155
|
+
return ot(e) ? (Tn("gobj NULL or DESTROYED"), -1) : (J(e) && L(n("⏺ ⏺ ⏺ ⏺ start_tree: %s", tt(e))), e.gclass.gclass_flag & w.gcflag_manual_start || e.disabled ? 0 : (e.running || Pe(e), ut(e, D.WALK_TOP2BOTTOM, Fe, 0, 0)));
|
|
3150
3156
|
}, e.gobj_start_up = function(e, t, n, r, l, o, s) {
|
|
3151
3157
|
i = t, _ = n, a = r, u = l, c = o, f = s;
|
|
3152
3158
|
const d = [["EV_STATE_CHANGED", R.EVF_SYSTEM_EVENT | R.EVF_OUTPUT_EVENT | R.EVF_NO_WARN_SUBS], [0, 0]];
|
|
@@ -3156,14 +3162,14 @@
|
|
|
3156
3162
|
}
|
|
3157
3163
|
return 0;
|
|
3158
3164
|
}, e.gobj_stats = function(e, t, r, l) {
|
|
3159
|
-
return ot(e) ? (
|
|
3165
|
+
return ot(e) ? (Tn("gobj NULL or DESTROYED"), -1) : e.gclass.gmt.mt_stats ? e.gclass.gmt.mt_stats(e, t, r, l) : f ? f(e, t, r, l) : o(0, -1, n("%s, stats parser not available", et(e)), 0, 0);
|
|
3160
3166
|
}, e.gobj_stop = Ve, e.gobj_stop_children = Me, e.gobj_stop_tree = function(e) {
|
|
3161
|
-
return ot(e) ? (
|
|
3167
|
+
return ot(e) ? (Tn("gobj NULL or DESTROYED"), -1) : (J(e) && L(n("⏹ ⏹ ⏹ ⏹ stop_tree: %s", tt(e))), Ke(e) && Ve(e), ut(e, D.WALK_TOP2BOTTOM, Ge, 0, 0));
|
|
3162
3168
|
}, e.gobj_subscribe_event = qt, e.gobj_trace_level = x, e.gobj_trace_machine_format = function() {
|
|
3163
3169
|
return C;
|
|
3164
3170
|
}, e.gobj_trace_no_level = K, e.gobj_unsubscribe_event = function(e, t, n, r) {
|
|
3165
|
-
if (null == n && (n = {}), !e) return
|
|
3166
|
-
if (!r) return
|
|
3171
|
+
if (null == n && (n = {}), !e) return Tn(`publisher NULL: ev ${t}`), 0;
|
|
3172
|
+
if (!r) return Tn(`subscriber NULL: ev ${t}`), 0;
|
|
3167
3173
|
const l = /* @__PURE__ */ new Set([
|
|
3168
3174
|
"__config__",
|
|
3169
3175
|
"__global__",
|
|
@@ -3172,83 +3178,83 @@
|
|
|
3172
3178
|
"__service__"
|
|
3173
3179
|
]);
|
|
3174
3180
|
if (Object.keys(n).forEach((n) => {
|
|
3175
|
-
l.has(n) ||
|
|
3176
|
-
}),
|
|
3177
|
-
else if (!(Ct(e, t, R.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & w.gcflag_no_check_output_events)) return
|
|
3181
|
+
l.has(n) || Tn(`${et(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
|
|
3182
|
+
}), ur(t)) t = "";
|
|
3183
|
+
else if (!(Ct(e, t, R.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & w.gcflag_no_check_output_events)) return Tn(`event NOT in output event list: ${et(e)}, ev ${t}`), 0;
|
|
3178
3184
|
let o = xt(n, t), s = Yt(e.dl_subscriptions, e, t, o.renamed_event, o.kw, r), i = 0, _ = 0, a = 0;
|
|
3179
3185
|
for (let t = 0; t < s.length; t++) {
|
|
3180
3186
|
let n = s[t], r = Jt(e, n, !1, !1);
|
|
3181
3187
|
0 === r ? i++ : r < 0 ? _++ : a++;
|
|
3182
3188
|
}
|
|
3183
|
-
return _ ?
|
|
3189
|
+
return _ ? vn(`${et(e)}: Hard subscription not removed, only gobj_unsubscribe_list() with force removes it (event: ${t}, hard: ${_})`) : i || a || (vn(`${et(e)}: No subscription found`), Gn(n, "No subscription found")), 0;
|
|
3184
3190
|
}, e.gobj_unsubscribe_list = Ht, e.gobj_walk_gobj_children = at, e.gobj_walk_gobj_children_tree = ut, e.gobj_write_attr = St, e.gobj_write_attrs = wt, e.gobj_write_bool_attr = Nt, e.gobj_write_integer_attr = $t, e.gobj_write_str_attr = Rt, e.gobj_yuno = qe, e.gobj_yuno_id = Qe, e.gobj_yuno_name = He, e.gobj_yuno_role = ze, e.html_markup = function(e) {
|
|
3185
|
-
return "string" != typeof e ? (
|
|
3186
|
-
}, e.id_index_in_obj_list =
|
|
3191
|
+
return "string" != typeof e ? (Tn("html_markup: not a string, type " + typeof e), new Qr("")) : new Qr(e);
|
|
3192
|
+
}, e.id_index_in_obj_list = Vr, e.index_in_list = ll, e.is_array = rr, e.is_boolean = sr, e.is_date = function(e) {
|
|
3187
3193
|
return e instanceof Date && !isNaN(e);
|
|
3188
|
-
}, e.is_function =
|
|
3189
|
-
if (!
|
|
3194
|
+
}, e.is_function = _r, e.is_gobj = ar, e.is_html_markup = Xr, e.is_metadata_key = function(e) {
|
|
3195
|
+
if (!lr(e)) return !1;
|
|
3190
3196
|
let t = 0;
|
|
3191
3197
|
for (; t < e.length && "_" === e[t] && !(t > 2); t++);
|
|
3192
3198
|
return 2 === t;
|
|
3193
|
-
}, e.is_null =
|
|
3194
|
-
if (!
|
|
3199
|
+
}, e.is_null = ir, e.is_number = or, e.is_object = nr, e.is_private_key = function(e) {
|
|
3200
|
+
if (!lr(e)) return !1;
|
|
3195
3201
|
let t = 0;
|
|
3196
3202
|
for (; t < e.length && "_" === e[t] && !(t > 2); t++);
|
|
3197
3203
|
return 1 === t;
|
|
3198
3204
|
}, e.is_pure_number = function(e) {
|
|
3199
|
-
if (
|
|
3200
|
-
if (!
|
|
3205
|
+
if (or(e)) return !0;
|
|
3206
|
+
if (!lr(e)) return !1;
|
|
3201
3207
|
const t = Number(e);
|
|
3202
3208
|
return !isNaN(t) && "" !== e.trim() && !isNaN(t);
|
|
3203
|
-
}, e.is_secret_name =
|
|
3204
|
-
let l =
|
|
3205
|
-
if (!l) return
|
|
3206
|
-
if (!
|
|
3207
|
-
if (!
|
|
3208
|
-
if ("" !== n && n.split("`").includes("")) return
|
|
3209
|
+
}, e.is_secret_name = Rn, e.is_string = lr, e.jdb_delete = function(e, t, n, r) {
|
|
3210
|
+
let l = Nr(null, Nr(null, e, "topics", null, 0), t, null, 0);
|
|
3211
|
+
if (!l) return Tn("jdb_delete: topic not found: " + t), null;
|
|
3212
|
+
if (!nr(r) || ur(r.id)) return Tn(`jdb_delete: record without id: ${pn(r)}`), null;
|
|
3213
|
+
if (!lr(n)) return Tn(`jdb_delete: path must be a string: ${String(n)}`), null;
|
|
3214
|
+
if ("" !== n && n.split("`").includes("")) return Tn(`jdb_delete: empty segment in path: '${n}'`), null;
|
|
3209
3215
|
let o, s = n.split("`"), i = l;
|
|
3210
|
-
for (; (o = s.shift()) && !
|
|
3211
|
-
if (!i || 0 !== s.length) return
|
|
3212
|
-
let _ =
|
|
3213
|
-
return a < 0 ? (
|
|
3216
|
+
for (; (o = s.shift()) && !ur(o) && i;) nr(i) && (i = Nr(null, i, e.hook, null, 0)), i = qr(i, null, o, !1);
|
|
3217
|
+
if (!i || 0 !== s.length) return Tn(`jdb_delete: path not found in topic '${t}': '${n}'`), null;
|
|
3218
|
+
let _ = rr(i) ? i : Nr(null, i, e.hook, null, 0), a = Vr(_, r.id);
|
|
3219
|
+
return a < 0 ? (Tn(`jdb_delete: record not found in topic '${t}': '${n}' '${r.id}'`), null) : (_.splice(a, 1), l);
|
|
3214
3220
|
}, e.jdb_get = function(e, t, n, r) {
|
|
3215
|
-
let l =
|
|
3216
|
-
return l ? (void 0 === r && (r = !0),
|
|
3221
|
+
let l = Nr(null, Nr(null, e, "topics", null, 0), t, null, 0);
|
|
3222
|
+
return l ? (void 0 === r && (r = !0), qr(l, e.hook, n, r)) : (Tn("jdb_get: topic not found: " + t), null);
|
|
3217
3223
|
}, e.jdb_get_by_idx = function(e, t, n) {
|
|
3218
|
-
let r =
|
|
3219
|
-
return r ? n < r.length ? r[n] : {} : (
|
|
3224
|
+
let r = Nr(null, Nr(null, e, "topics", null, 0), t, null, 0);
|
|
3225
|
+
return r ? n < r.length ? r[n] : {} : (Tn("jdb_get_by_idx: topic not found: " + t), null);
|
|
3220
3226
|
}, e.jdb_get_topic = function(e, t) {
|
|
3221
|
-
let n =
|
|
3222
|
-
if (!n) return
|
|
3223
|
-
return
|
|
3227
|
+
let n = Nr(null, e, "topics", null, 0);
|
|
3228
|
+
if (!n) return Tn("jdb topics section not found"), On(e), null;
|
|
3229
|
+
return Nr(null, n, t, null, 0) || (Tn("jdb topic not found: " + t), On(n), null);
|
|
3224
3230
|
}, e.jdb_init = function(e, t, n) {
|
|
3225
|
-
n && (e =
|
|
3226
|
-
let r =
|
|
3227
|
-
|
|
3228
|
-
let l =
|
|
3229
|
-
return
|
|
3230
|
-
"__" === t.substring(0, 2) ||
|
|
3231
|
+
n && (e = Mn(e));
|
|
3232
|
+
let r = Nr(null, e, "type", [], Zt.KW_CREATE);
|
|
3233
|
+
Or(null, e, "hook", "data", Zt.KW_CREATE);
|
|
3234
|
+
let l = Nr(null, e, "schema", {}, Zt.KW_CREATE), o = Nr(null, e, "topics", {}, Zt.KW_CREATE);
|
|
3235
|
+
return Jr(l, function(e, t, n, l) {
|
|
3236
|
+
"__" === t.substring(0, 2) || nr(n) || Nr(null, o, l, Mn(r), Zt.KW_CREATE);
|
|
3231
3237
|
}, t), e;
|
|
3232
3238
|
}, e.jdb_update = function(e, t, n, r) {
|
|
3233
|
-
let l =
|
|
3234
|
-
if (!l) return
|
|
3235
|
-
if (!
|
|
3236
|
-
if (!
|
|
3237
|
-
if ("" !== n && n.split("`").includes("")) return
|
|
3239
|
+
let l = Nr(null, Nr(null, e, "topics", null, 0), t, null, 0);
|
|
3240
|
+
if (!l) return Tn("jdb_update: topic not found: " + t), null;
|
|
3241
|
+
if (!nr(r) || ur(r.id)) return Tn(`jdb_update: record without id: ${pn(r)}`), null;
|
|
3242
|
+
if (!lr(n)) return Tn(`jdb_update: path must be a string: ${String(n)}`), null;
|
|
3243
|
+
if ("" !== n && n.split("`").includes("")) return Tn(`jdb_update: empty segment in path: '${n}'`), null;
|
|
3238
3244
|
let o, s, i = n.split("`"), _ = l;
|
|
3239
|
-
for (; (o = i.shift()) && !
|
|
3240
|
-
if (!_ || 0 !== i.length) return
|
|
3241
|
-
if (
|
|
3245
|
+
for (; (o = i.shift()) && !ur(o) && _;) nr(_) && (_ = Nr(null, _, e.hook, null, 0)), _ = qr(_, null, o, !1);
|
|
3246
|
+
if (!_ || 0 !== i.length) return Tn(`jdb_update: path not found in topic '${t}': '${n}'`), null;
|
|
3247
|
+
if (rr(_)) s = _;
|
|
3242
3248
|
else {
|
|
3243
|
-
if (_.id === r.id) return
|
|
3244
|
-
if (s =
|
|
3245
|
-
else if (!
|
|
3249
|
+
if (_.id === r.id) return xn(_, r), l;
|
|
3250
|
+
if (s = Nr(null, _, e.hook, null, 0), null == s) s = [], qn(_, e.hook, s);
|
|
3251
|
+
else if (!rr(s)) return Tn(`jdb_update: the hook '${e.hook}' of '${n}' is not a list in topic '${t}'`), null;
|
|
3246
3252
|
}
|
|
3247
|
-
let a =
|
|
3248
|
-
return a ?
|
|
3253
|
+
let a = qr(s, e.hook, r.id, !1);
|
|
3254
|
+
return a ? xn(a, r) : s.push(r), l;
|
|
3249
3255
|
}, e.json2flat = function(e) {
|
|
3250
3256
|
const t = {}, n = (e, r, l) => {
|
|
3251
|
-
if (l >
|
|
3257
|
+
if (l > il) throw new Error("json2flat: deeper than 256");
|
|
3252
3258
|
if (null === e || "object" != typeof e || Array.isArray(e)) {
|
|
3253
3259
|
if (Array.isArray(e) && e.length > 0) return void e.forEach((e, t) => {
|
|
3254
3260
|
const o = `[${t}]`;
|
|
@@ -3258,20 +3264,20 @@
|
|
|
3258
3264
|
const t = Object.keys(e);
|
|
3259
3265
|
if (t.length > 0) {
|
|
3260
3266
|
for (const o of t) {
|
|
3261
|
-
const t =
|
|
3267
|
+
const t = al(o);
|
|
3262
3268
|
n(e[o], 0 === l ? t : r + "`" + t, l + 1);
|
|
3263
3269
|
}
|
|
3264
3270
|
return;
|
|
3265
3271
|
}
|
|
3266
3272
|
}
|
|
3267
|
-
0 !== l &&
|
|
3273
|
+
0 !== l && hr(t, r, e);
|
|
3268
3274
|
};
|
|
3269
3275
|
return null == e || n(e, "", 0), t;
|
|
3270
|
-
}, e.json_array_append =
|
|
3276
|
+
}, e.json_array_append = zn, e.json_array_append_new = Qn, e.json_array_extend = function(e, t) {
|
|
3271
3277
|
return t ? (Array.prototype.push.apply(e, t), e) : e;
|
|
3272
|
-
}, e.json_array_remove =
|
|
3278
|
+
}, e.json_array_remove = Xn, e.json_array_size = er, e.json_deep_copy = Mn, e.json_is_identical = Wn, e.json_mask_secrets = Vn, e.json_object_del = Jn, e.json_object_get = Bn, e.json_object_set = qn, e.json_object_set_new = Hn, e.json_object_size = Zn, e.json_object_update = xn, e.json_object_update_existing = Kn, e.json_object_update_missing = Yn, e.json_size = tr, e.jwt2json = function(e, t) {
|
|
3273
3279
|
try {
|
|
3274
|
-
let n =
|
|
3280
|
+
let n = Hr(e);
|
|
3275
3281
|
switch (t) {
|
|
3276
3282
|
case "header": return JSON.parse(n.header);
|
|
3277
3283
|
case "signature": return JSON.parse(n.signature);
|
|
@@ -3280,137 +3286,137 @@
|
|
|
3280
3286
|
} catch (e) {
|
|
3281
3287
|
return null;
|
|
3282
3288
|
}
|
|
3283
|
-
}, e.jwtDecode =
|
|
3284
|
-
if (e && !
|
|
3285
|
-
r || (r =
|
|
3289
|
+
}, e.jwtDecode = Hr, e.kw_clone_by_keys = Ar, e.kw_clone_by_not_keys = Ir, e.kw_collect = function(e, t, n, r) {
|
|
3290
|
+
if (e && !ar(e) && Tn("GObj bad instanceof"), !t) return null;
|
|
3291
|
+
r || (r = kr);
|
|
3286
3292
|
let l = [];
|
|
3287
|
-
if (
|
|
3293
|
+
if (rr(t)) for (let e = 0; e < t.length; e++) {
|
|
3288
3294
|
let o = t[e];
|
|
3289
3295
|
r(o, n) && l.push(o);
|
|
3290
3296
|
}
|
|
3291
3297
|
else {
|
|
3292
|
-
if (!
|
|
3298
|
+
if (!nr(t)) return Tn("kw_select() BAD kw parameter"), null;
|
|
3293
3299
|
r(t, n) && l.push(t);
|
|
3294
3300
|
}
|
|
3295
3301
|
return l;
|
|
3296
|
-
}, e.kw_delete =
|
|
3297
|
-
if (!n || !
|
|
3298
|
-
for (let e = 0; e < t.length; e++) if (
|
|
3299
|
-
return r &&
|
|
3300
|
-
}, e.kw_find_path =
|
|
3301
|
-
e && !
|
|
3302
|
-
let o =
|
|
3302
|
+
}, e.kw_delete = Tr, e.kw_find_json_in_list = function(e, t, n, r) {
|
|
3303
|
+
if (!n || !rr(t)) return r && Tn("item NULL or kw_list is not a list"), -1;
|
|
3304
|
+
for (let e = 0; e < t.length; e++) if (Wn(n, t[e])) return e;
|
|
3305
|
+
return r && Tn("item not found in this list"), -1;
|
|
3306
|
+
}, e.kw_find_path = Er, e.kw_flag_t = Zt, e.kw_get_bool = vr, e.kw_get_dict = wr, e.kw_get_dict_value = Nr, e.kw_get_int = jr, e.kw_get_list = function(e, t, n, r, l) {
|
|
3307
|
+
e && !ar(e) && Tn("GObj bad instanceof");
|
|
3308
|
+
let o = Er(e, t, n, !1);
|
|
3303
3309
|
const s = l && l & Zt.KW_REQUIRED, i = l && l & Zt.KW_CREATE, _ = l && l & Zt.KW_EXTRACT;
|
|
3304
|
-
return void 0 === o ? i &&
|
|
3305
|
-
}, e.kw_get_local_storage_value =
|
|
3306
|
-
e && !
|
|
3307
|
-
let o =
|
|
3310
|
+
return void 0 === o ? i && rr(r) && t ? ($r(e, t, n, r), r) : (s && (Tn(`path not found: '${n}'`), Gn(t)), r) : rr(o) ? (_ && Tr(e, t, n), o) : i && null === o && rr(r) ? ($r(e, t, n, r), r) : i && null === o ? (s && (Tn(`path not found: '${n}'`), Gn(t)), r) : ((s || i) && (Tn(`${e ? et(e) + ": " : ""}path MUST BE a json list: '${n}'` + (i ? ", cannot create" : "")), Gn(t)), r);
|
|
3311
|
+
}, e.kw_get_local_storage_value = Cr, e.kw_get_pointer = Sr, e.kw_get_real = function(e, t, n, r, l) {
|
|
3312
|
+
e && !ar(e) && Tn("GObj bad instanceof");
|
|
3313
|
+
let o = Er(e, t, n, !1);
|
|
3308
3314
|
const s = l && l & Zt.KW_REQUIRED, i = l && l & Zt.KW_CREATE, _ = l && l & Zt.KW_EXTRACT, a = l && l & Zt.KW_WILD_NUMBER;
|
|
3309
3315
|
if (void 0 === o) {
|
|
3310
3316
|
if (i && t) {
|
|
3311
3317
|
let l = Number(r);
|
|
3312
|
-
return
|
|
3318
|
+
return $r(e, t, n, l), l;
|
|
3313
3319
|
}
|
|
3314
|
-
return s && (
|
|
3320
|
+
return s && (Tn(`path not found: '${n}'`), Gn(t)), Number(r);
|
|
3315
3321
|
}
|
|
3316
3322
|
let u;
|
|
3317
|
-
if (
|
|
3323
|
+
if (or(o)) u = o;
|
|
3318
3324
|
else {
|
|
3319
|
-
if (!a) return
|
|
3320
|
-
if (
|
|
3321
|
-
else if (
|
|
3325
|
+
if (!a) return Tn(`${e ? et(e) + ": " : ""}path MUST BE a json real: '${n}'`), Gn(t), Number(r);
|
|
3326
|
+
if (sr(o)) u = o ? 1 : 0;
|
|
3327
|
+
else if (lr(o)) u = parseFloat(o), Number.isNaN(u) && (u = 0);
|
|
3322
3328
|
else {
|
|
3323
|
-
if (null !== o) return
|
|
3329
|
+
if (null !== o) return Tn(`${e ? et(e) + ": " : ""}path MUST BE a simple json element: '${n}'`), Gn(t), 0;
|
|
3324
3330
|
u = 0;
|
|
3325
3331
|
}
|
|
3326
3332
|
}
|
|
3327
|
-
return _ &&
|
|
3328
|
-
}, e.kw_get_str =
|
|
3329
|
-
if (e && !
|
|
3330
|
-
r || (r =
|
|
3333
|
+
return _ && Tr(e, t, n), u;
|
|
3334
|
+
}, e.kw_get_str = Or, e.kw_has_key = pr, e.kw_match_simple = kr, e.kw_pop = br, e.kw_remove_local_storage_value = Pr, e.kw_select = function(e, t, n, r) {
|
|
3335
|
+
if (e && !ar(e) && Tn("GObj bad instanceof"), !t) return null;
|
|
3336
|
+
r || (r = kr);
|
|
3331
3337
|
let l = [];
|
|
3332
|
-
if (
|
|
3338
|
+
if (rr(t)) for (let e = 0; e < t.length; e++) {
|
|
3333
3339
|
let o = t[e];
|
|
3334
|
-
r(o, n) && l.push(
|
|
3340
|
+
r(o, n) && l.push(Mn(o));
|
|
3335
3341
|
}
|
|
3336
3342
|
else {
|
|
3337
|
-
if (!
|
|
3338
|
-
r(t, n) && l.push(
|
|
3343
|
+
if (!nr(t)) return Tn("kw_select() BAD kw parameter"), null;
|
|
3344
|
+
r(t, n) && l.push(Mn(t));
|
|
3339
3345
|
}
|
|
3340
3346
|
return l;
|
|
3341
|
-
}, e.kw_set_dict_value =
|
|
3342
|
-
e && !
|
|
3343
|
-
let o =
|
|
3347
|
+
}, e.kw_set_dict_value = $r, e.kw_set_local_storage_value = Lr, e.kw_set_subdict_value = Rr, e.kwid_collect = Fr, e.kwid_find_one_record = function(e, t, n, r, l) {
|
|
3348
|
+
e && !ar(e) && Tn("GObj bad instanceof");
|
|
3349
|
+
let o = Fr(e, t, n, r, l);
|
|
3344
3350
|
return o && 0 !== o.length ? o[0] : null;
|
|
3345
3351
|
}, e.kwid_get_ids = function(e, t) {
|
|
3346
|
-
if (e && !
|
|
3352
|
+
if (e && !ar(e) && Tn("GObj bad instanceof"), !t) return [];
|
|
3347
3353
|
let n = [];
|
|
3348
|
-
if (
|
|
3349
|
-
else if (
|
|
3350
|
-
else
|
|
3351
|
-
if (
|
|
3352
|
-
else if (
|
|
3353
|
-
let r =
|
|
3354
|
+
if (lr(t)) n.push(t);
|
|
3355
|
+
else if (nr(t)) for (let e in t) Object.prototype.hasOwnProperty.call(t, e) && n.push(e);
|
|
3356
|
+
else rr(t) && t.forEach(function(t) {
|
|
3357
|
+
if (lr(t)) ur(t) || n.push(t);
|
|
3358
|
+
else if (nr(t)) {
|
|
3359
|
+
let r = Or(e, t, "id", 0, 0);
|
|
3354
3360
|
r && n.push(r);
|
|
3355
3361
|
}
|
|
3356
3362
|
});
|
|
3357
3363
|
return n;
|
|
3358
|
-
}, e.kwid_match_id =
|
|
3359
|
-
e && !
|
|
3364
|
+
}, e.kwid_match_id = Ur, e.kwid_new_dict = function(e, t, n) {
|
|
3365
|
+
e && !ar(e) && Tn("GObj bad instanceof");
|
|
3360
3366
|
let r = {};
|
|
3361
|
-
if (
|
|
3362
|
-
else if (
|
|
3363
|
-
let l = t[n], o =
|
|
3364
|
-
|
|
3367
|
+
if (ur(n) || (t = Er(e, t, n)), nr(t)) r = t;
|
|
3368
|
+
else if (rr(t)) for (let n = 0; n < t.length; n++) {
|
|
3369
|
+
let l = t[n], o = Or(e, l, "id", "", Zt.KW_REQUIRED);
|
|
3370
|
+
ur(o) || hr(r, o, l);
|
|
3365
3371
|
}
|
|
3366
|
-
else
|
|
3372
|
+
else Tn(`${et(e)} kwid_new_dict: data type unknown`);
|
|
3367
3373
|
return r;
|
|
3368
3374
|
}, e.kwid_new_list = function(e, t, n) {
|
|
3369
|
-
if (e && !
|
|
3370
|
-
if (
|
|
3375
|
+
if (e && !ar(e) && Tn("GObj bad instanceof"), ur(n) || (t = Er(e, t, n)), rr(t)) return t;
|
|
3376
|
+
if (nr(t)) {
|
|
3371
3377
|
let n = [];
|
|
3372
3378
|
for (let r of Object.keys(t)) {
|
|
3373
3379
|
let l = t[r];
|
|
3374
|
-
|
|
3380
|
+
nr(l) ? (l.id = r, n.push(l)) : Tn(`${et(e)} kwid_new_list: not a record: '${r}'`);
|
|
3375
3381
|
}
|
|
3376
3382
|
return n;
|
|
3377
3383
|
}
|
|
3378
|
-
return
|
|
3384
|
+
return Tn(`${et(e)} kwid_new_list: wrong type for list`), [];
|
|
3379
3385
|
}, e.list2options = function(e, t, n) {
|
|
3380
3386
|
t = t || "id", n = n || "value";
|
|
3381
3387
|
let r = [];
|
|
3382
|
-
if (
|
|
3388
|
+
if (rr(e)) for (let l = 0; l < e.length; l++) {
|
|
3383
3389
|
let o = e[l];
|
|
3384
|
-
if (
|
|
3390
|
+
if (lr(o)) r.push({
|
|
3385
3391
|
id: e[l],
|
|
3386
3392
|
value: e[l]
|
|
3387
3393
|
});
|
|
3388
|
-
else if (
|
|
3394
|
+
else if (nr(o)) {
|
|
3389
3395
|
let e = {};
|
|
3390
|
-
if (
|
|
3391
|
-
if (!
|
|
3392
|
-
if (!(
|
|
3393
|
-
|
|
3396
|
+
if (pr(o, t)) {
|
|
3397
|
+
if (!pr(o, n)) {
|
|
3398
|
+
if (!(tr(o) > 0)) {
|
|
3399
|
+
Tn("list2options(): object without field value: " + n);
|
|
3394
3400
|
continue;
|
|
3395
3401
|
}
|
|
3396
3402
|
n = Object.keys(o)[0];
|
|
3397
3403
|
}
|
|
3398
3404
|
e.id = o[t], e.value = o[n];
|
|
3399
3405
|
} else {
|
|
3400
|
-
if (!(
|
|
3401
|
-
|
|
3406
|
+
if (!(tr(o) > 0)) {
|
|
3407
|
+
Tn("list2options(): object without field id: " + t);
|
|
3402
3408
|
continue;
|
|
3403
3409
|
}
|
|
3404
3410
|
t = Object.keys(o)[0], e.id = t, e.value = o[t];
|
|
3405
3411
|
}
|
|
3406
3412
|
r.push(e);
|
|
3407
|
-
} else
|
|
3413
|
+
} else Tn("list2options(): case1 not implemented");
|
|
3408
3414
|
}
|
|
3409
|
-
else if (
|
|
3415
|
+
else if (nr(e)) for (let t of Object.keys(e)) r.push({
|
|
3410
3416
|
id: t,
|
|
3411
3417
|
value: t
|
|
3412
3418
|
});
|
|
3413
|
-
else
|
|
3419
|
+
else Tn("list2options(): case2 not implemented");
|
|
3414
3420
|
return r;
|
|
3415
3421
|
}, e.load_json_file = function(e, t, n) {
|
|
3416
3422
|
let r = new XMLHttpRequest();
|
|
@@ -3418,18 +3424,18 @@
|
|
|
3418
3424
|
if (4 === r.readyState) if (200 === r.status || 0 === (e = r).status && e.responseText && e.responseURL.startsWith("file:")) try {
|
|
3419
3425
|
t(JSON.parse(r.responseText));
|
|
3420
3426
|
} catch (e) {
|
|
3421
|
-
n && (
|
|
3427
|
+
n && (Tn(`JSON parse status ${r.status}, error: ${e.message}`), n(r.status));
|
|
3422
3428
|
}
|
|
3423
3429
|
else n && n(r.status);
|
|
3424
3430
|
var e;
|
|
3425
3431
|
}, r.send();
|
|
3426
|
-
}, e.log_debug =
|
|
3427
|
-
let n = yn(e, ...t), r =
|
|
3428
|
-
rn && cn("info", n) && rn
|
|
3429
|
-
}, e.log_warning =
|
|
3432
|
+
}, e.log_debug = jn, e.log_error = Tn, e.log_info = function(e, ...t) {
|
|
3433
|
+
let n = yn(e, ...t), r = rl();
|
|
3434
|
+
rn && cn("info", n) && En(rn, "%c" + r + " INFO: " + String(n), "color:cyan"), gn("info", n, r);
|
|
3435
|
+
}, e.log_warning = vn, e.mask_secrets_inline = Cn, e.msg_iev_get_msg_type = Br, e.msg_iev_get_stack = Kr, e.msg_iev_push_stack = xr, e.msg_iev_read_key = Mr, e.msg_iev_set_msg_type = Yr, e.msg_iev_write_key = Wr, e.node_uuid = ol, e.parseBoolean = cr, e.parseSVG = function(e) {
|
|
3430
3436
|
return new DOMParser().parseFromString(e, "image/svg+xml").firstChild;
|
|
3431
3437
|
}, e.refresh_language = function(e, t) {
|
|
3432
|
-
if (!
|
|
3438
|
+
if (!_r(t)) return void Tn("You must supply a translation function");
|
|
3433
3439
|
e || (e = document);
|
|
3434
3440
|
const n = (t) => {
|
|
3435
3441
|
let n = [];
|
|
@@ -3453,22 +3459,22 @@
|
|
|
3453
3459
|
});
|
|
3454
3460
|
}, e.register_c_ievent_cli = function() {
|
|
3455
3461
|
return function(e) {
|
|
3456
|
-
if (
|
|
3462
|
+
if (Vl) return Tn(`GClass ALREADY created: ${e}`), -1;
|
|
3457
3463
|
const t = [
|
|
3458
3464
|
["ST_DISCONNECTED", [
|
|
3459
3465
|
[
|
|
3460
3466
|
"EV_ON_OPEN",
|
|
3461
|
-
|
|
3467
|
+
Hl,
|
|
3462
3468
|
"ST_WAIT_IDENTITY_CARD_ACK"
|
|
3463
3469
|
],
|
|
3464
3470
|
[
|
|
3465
3471
|
"EV_ON_CLOSE",
|
|
3466
|
-
|
|
3472
|
+
zl,
|
|
3467
3473
|
null
|
|
3468
3474
|
],
|
|
3469
3475
|
[
|
|
3470
3476
|
"EV_TIMEOUT",
|
|
3471
|
-
|
|
3477
|
+
ql,
|
|
3472
3478
|
null
|
|
3473
3479
|
],
|
|
3474
3480
|
[
|
|
@@ -3480,22 +3486,22 @@
|
|
|
3480
3486
|
["ST_WAIT_IDENTITY_CARD_ACK", [
|
|
3481
3487
|
[
|
|
3482
3488
|
"EV_ON_MESSAGE",
|
|
3483
|
-
|
|
3489
|
+
eo,
|
|
3484
3490
|
null
|
|
3485
3491
|
],
|
|
3486
3492
|
[
|
|
3487
3493
|
"EV_IDENTITY_CARD_ACK",
|
|
3488
|
-
|
|
3494
|
+
Zl,
|
|
3489
3495
|
null
|
|
3490
3496
|
],
|
|
3491
3497
|
[
|
|
3492
3498
|
"EV_ON_CLOSE",
|
|
3493
|
-
|
|
3499
|
+
zl,
|
|
3494
3500
|
"ST_DISCONNECTED"
|
|
3495
3501
|
],
|
|
3496
3502
|
[
|
|
3497
3503
|
"EV_TIMEOUT",
|
|
3498
|
-
|
|
3504
|
+
Xl,
|
|
3499
3505
|
null
|
|
3500
3506
|
],
|
|
3501
3507
|
[
|
|
@@ -3507,22 +3513,22 @@
|
|
|
3507
3513
|
["ST_SESSION", [
|
|
3508
3514
|
[
|
|
3509
3515
|
"EV_ON_MESSAGE",
|
|
3510
|
-
|
|
3516
|
+
eo,
|
|
3511
3517
|
null
|
|
3512
3518
|
],
|
|
3513
3519
|
[
|
|
3514
3520
|
"EV_MT_STATS",
|
|
3515
|
-
|
|
3521
|
+
to,
|
|
3516
3522
|
null
|
|
3517
3523
|
],
|
|
3518
3524
|
[
|
|
3519
3525
|
"EV_MT_COMMAND",
|
|
3520
|
-
|
|
3526
|
+
no,
|
|
3521
3527
|
null
|
|
3522
3528
|
],
|
|
3523
3529
|
[
|
|
3524
3530
|
"EV_ON_CLOSE",
|
|
3525
|
-
|
|
3531
|
+
zl,
|
|
3526
3532
|
"ST_DISCONNECTED"
|
|
3527
3533
|
],
|
|
3528
3534
|
[
|
|
@@ -3533,7 +3539,7 @@
|
|
|
3533
3539
|
]],
|
|
3534
3540
|
[null, null]
|
|
3535
3541
|
];
|
|
3536
|
-
return (
|
|
3542
|
+
return (Vl = de(e, [
|
|
3537
3543
|
["EV_ON_MESSAGE", R.EVF_OUTPUT_EVENT],
|
|
3538
3544
|
["EV_IDENTITY_CARD_ACK", R.EVF_PUBLIC_EVENT],
|
|
3539
3545
|
["EV_ON_ID_NAK", R.EVF_PUBLIC_EVENT | R.EVF_OUTPUT_EVENT],
|
|
@@ -3544,36 +3550,36 @@
|
|
|
3544
3550
|
["EV_ON_OPEN_ERROR", R.EVF_OUTPUT_EVENT | R.EVF_NO_WARN_SUBS],
|
|
3545
3551
|
["EV_TIMEOUT", 0],
|
|
3546
3552
|
[null, 0]
|
|
3547
|
-
], t,
|
|
3553
|
+
], t, ro, 0, Ll, Fl, 0, 0, Pl, w.gcflag_no_check_output_events)) ? 0 : -1;
|
|
3548
3554
|
}("C_IEVENT_CLI");
|
|
3549
3555
|
}, e.register_c_timer = function() {
|
|
3550
3556
|
return function(e) {
|
|
3551
|
-
if (
|
|
3557
|
+
if (El) return Tn(`GClass ALREADY created: ${e}`), -1;
|
|
3552
3558
|
const t = [["ST_IDLE", [[
|
|
3553
3559
|
"EV_TIMEOUT",
|
|
3554
|
-
|
|
3560
|
+
Tl,
|
|
3555
3561
|
null
|
|
3556
3562
|
]]]];
|
|
3557
|
-
return (
|
|
3563
|
+
return (El = de(e, [
|
|
3558
3564
|
["EV_TIMEOUT", R.EVF_OUTPUT_EVENT],
|
|
3559
3565
|
["EV_TIMEOUT_PERIODIC", R.EVF_OUTPUT_EVENT],
|
|
3560
3566
|
[0, 0]
|
|
3561
|
-
], t,
|
|
3567
|
+
], t, vl, 0, hl, yl, 0, 0, 0, w.gcflag_manual_start)) ? 0 : -1;
|
|
3562
3568
|
}("C_TIMER");
|
|
3563
3569
|
}, e.register_c_yuno = function() {
|
|
3564
3570
|
return function(e) {
|
|
3565
|
-
if (
|
|
3571
|
+
if ($l) return Tn(`GClass ALREADY created: ${e}`), -1;
|
|
3566
3572
|
const t = [["ST_IDLE", [[
|
|
3567
3573
|
"EV_TIMEOUT_PERIODIC",
|
|
3568
|
-
|
|
3574
|
+
Al,
|
|
3569
3575
|
null
|
|
3570
3576
|
]]]];
|
|
3571
|
-
return (
|
|
3577
|
+
return ($l = de(e, [["EV_TIMEOUT_PERIODIC", R.EVF_OUTPUT_EVENT | R.EVF_NO_WARN_SUBS], [0, 0]], t, Il, 0, wl, Nl, 0, 0, 0, 0)) ? 0 : -1;
|
|
3572
3578
|
}("C_YUNO");
|
|
3573
3579
|
}, e.safeSrc = function(e) {
|
|
3574
3580
|
if (!e) return "";
|
|
3575
3581
|
const t = String(e).trim();
|
|
3576
|
-
return /^javascript:/i.test(t) || /^data:/i.test(t) ? "" :
|
|
3582
|
+
return /^javascript:/i.test(t) || /^data:/i.test(t) ? "" : zr(t);
|
|
3577
3583
|
}, e.sdata_flag_t = E, e.send_http_json_post = function(e, t, n) {
|
|
3578
3584
|
let r = new XMLHttpRequest();
|
|
3579
3585
|
r.open("POST", e), r.setRequestHeader("Accept", "application/json"), r.setRequestHeader("Content-Type", "application/json"), r.onreadystatechange = function() {
|
|
@@ -3597,16 +3603,16 @@
|
|
|
3597
3603
|
}
|
|
3598
3604
|
} else on = e;
|
|
3599
3605
|
}, e.set_remote_log_functions = bn, e.set_strings_are_text = function(e) {
|
|
3600
|
-
|
|
3601
|
-
}, e.set_timeout =
|
|
3602
|
-
return
|
|
3606
|
+
el = !!e;
|
|
3607
|
+
}, e.set_timeout = jl, e.set_timeout_periodic = Ol, e.sprintf = n, e.stats_parser = function(e, t, n, r) {}, e.str_in_list = Gr, e.strcasecmp = gr, e.strcmp = fr, e.strings_are_text = function() {
|
|
3608
|
+
return el;
|
|
3603
3609
|
}, e.strncmp = function(e, t, n) {
|
|
3604
3610
|
var r = (e + "").substring(0, n), l = (t + "").substring(0, n);
|
|
3605
3611
|
return r === l ? 0 : r > l ? 1 : -1;
|
|
3606
3612
|
}, e.strs_in_list = function(e, t, n) {
|
|
3607
|
-
if (!e) return
|
|
3608
|
-
if (!t) return
|
|
3609
|
-
for (let r = 0; r < t.length; r++) if (
|
|
3613
|
+
if (!e) return Tn("ERROR: strs_in_list() list empty"), !1;
|
|
3614
|
+
if (!t) return Tn("ERROR: strs_in_list() str empty"), !1;
|
|
3615
|
+
for (let r = 0; r < t.length; r++) if (Gr(e, t[r], n)) return !0;
|
|
3610
3616
|
return !1;
|
|
3611
3617
|
}, e.strstr = function(e, t, n) {
|
|
3612
3618
|
var r;
|
|
@@ -3625,13 +3631,13 @@
|
|
|
3625
3631
|
placeholder: void 0,
|
|
3626
3632
|
fkey: null
|
|
3627
3633
|
};
|
|
3628
|
-
if (
|
|
3634
|
+
if (lr(t)) {
|
|
3629
3635
|
let e = t.split(".");
|
|
3630
3636
|
for (let t = 0; t < e.length; t++) {
|
|
3631
3637
|
let r = e[t];
|
|
3632
|
-
if (
|
|
3633
|
-
else if (
|
|
3634
|
-
else if (
|
|
3638
|
+
if (Gr(dl, r)) n.real_type || (n.real_type = r);
|
|
3639
|
+
else if (Gr(pl, r)) n.type || (n.type = r);
|
|
3640
|
+
else if (Gr(bl, r)) switch (r) {
|
|
3635
3641
|
case "writable":
|
|
3636
3642
|
n.is_writable = !0;
|
|
3637
3643
|
break;
|
|
@@ -3643,23 +3649,23 @@
|
|
|
3643
3649
|
}
|
|
3644
3650
|
}
|
|
3645
3651
|
n.real_type || (n.real_type = "string");
|
|
3646
|
-
} else
|
|
3652
|
+
} else nr(t) ? (n = ml(t), n.name || (n.name = e), n.header || (n.header = e)) : rr(t) && (n.real_type = "array", n.enum_list = t);
|
|
3647
3653
|
return n.type || (n.type = n.real_type), n;
|
|
3648
3654
|
}, e.timeTracker = function(e = "Time Tracker", t = !1) {
|
|
3649
3655
|
const n = e, r = performance.now();
|
|
3650
3656
|
let l = r;
|
|
3651
|
-
return t &&
|
|
3657
|
+
return t && vn(`--\x3e ${n} - starting`), { mark: (e = "Intermediate", o = "") => {
|
|
3652
3658
|
const s = performance.now(), i = (s - l) / 1e3, _ = (s - r) / 1e3;
|
|
3653
|
-
return t &&
|
|
3659
|
+
return t && vn(`--\x3e ${n} ${e} - partial: ${i} sec, total: ${_} sec, ${o}`), l = s, {
|
|
3654
3660
|
partial: i,
|
|
3655
3661
|
total: _
|
|
3656
3662
|
};
|
|
3657
3663
|
} };
|
|
3658
|
-
}, e.trace_json =
|
|
3659
|
-
if (
|
|
3664
|
+
}, e.trace_json = Sn, e.trace_json_masked = Gn, e.trace_level_t = P, e.trace_msg = On, e.treedb_decoder_fkey = gl, e.treedb_decoder_hook = function(e, t) {
|
|
3665
|
+
if (lr(t)) {
|
|
3660
3666
|
if (-1 === t.indexOf("^")) {
|
|
3661
3667
|
let n, r = e.hook;
|
|
3662
|
-
if (1 !==
|
|
3668
|
+
if (1 !== Zn(r)) return Tn("bad hook 1"), Tn(e), Tn(t), null;
|
|
3663
3669
|
for (let e of Object.keys(r)) {
|
|
3664
3670
|
n = e, r[e];
|
|
3665
3671
|
break;
|
|
@@ -3671,25 +3677,25 @@
|
|
|
3671
3677
|
}
|
|
3672
3678
|
{
|
|
3673
3679
|
let n = t.split("^");
|
|
3674
|
-
return 2 !== n.length ? (
|
|
3680
|
+
return 2 !== n.length ? (Tn("bad hook 2"), Tn(e), Tn(t), null) : {
|
|
3675
3681
|
topic_name: n[0],
|
|
3676
3682
|
id: n[1]
|
|
3677
3683
|
};
|
|
3678
3684
|
}
|
|
3679
3685
|
}
|
|
3680
|
-
return
|
|
3686
|
+
return nr(t) ? {
|
|
3681
3687
|
topic_name: t.topic_name,
|
|
3682
3688
|
id: t.id
|
|
3683
|
-
} : (
|
|
3689
|
+
} : (Tn("bad hook 3"), Tn(e), Tn(t), null);
|
|
3684
3690
|
}, e.treedb_encoder_fkey = function(e, t) {
|
|
3685
|
-
let n =
|
|
3691
|
+
let n = gl(e, t);
|
|
3686
3692
|
return n ? n.topic_name + "^" + n.id + "^" + n.hook_name : null;
|
|
3687
|
-
}, e.treedb_get_field_desc =
|
|
3688
|
-
if (
|
|
3693
|
+
}, e.treedb_get_field_desc = ml, e.treedb_hook_data_size = function(e) {
|
|
3694
|
+
if (rr(e) && 1 === tr(e)) {
|
|
3689
3695
|
let t = e[0];
|
|
3690
|
-
return
|
|
3696
|
+
return pr(t, "size") ? t.size : 1;
|
|
3691
3697
|
}
|
|
3692
|
-
return
|
|
3698
|
+
return tr(e);
|
|
3693
3699
|
}, e.vsprintf = function(e, t) {
|
|
3694
3700
|
return n.apply(null, [e].concat(t || []));
|
|
3695
3701
|
}, e.walk_type_t = D;
|