@yuneta/gobj-js 7.26.17 → 7.26.18
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 +6 -1
- 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 +6 -1
- 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 +6 -1
- 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 +6 -1
- 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 = Wn(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
|
+
rr(e) && (e = JSON.stringify(e)), On(" ".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 (cr(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) || (vn(`${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 = or(e) ? Oe(e) : e;
|
|
396
|
+
return t ? M(t.trace_level | F, t.s_user_trace_level) : (vn(`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 = or(e) ? Oe(e) : e;
|
|
400
|
+
return t ? M(t.trace_level, t.s_user_trace_level) : (vn(`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 = or(e) ? Oe(e) : e;
|
|
404
|
+
return t ? M(t.no_trace_level, t.s_user_trace_level) : (vn(`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 = or(e) ? Oe(e) : e;
|
|
408
|
+
if (!r) return vn(`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 = or(e) ? Oe(e) : e;
|
|
414
|
+
if (!r) return vn(`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 (!lr(t)) return vn("sdata_desc MUST be an array"), wn(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 = fr(l);
|
|
435
435
|
break;
|
|
436
436
|
case y.DTP_INTEGER:
|
|
437
|
-
r = parseInt(l), isNaN(r) &&
|
|
437
|
+
r = parseInt(l), isNaN(r) && vn(`${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) && vn(`${et(e)}: attr NaN: ${n.name}`);
|
|
441
441
|
break;
|
|
442
442
|
case y.DTP_LIST:
|
|
443
|
-
if (
|
|
443
|
+
if (or(l)) try {
|
|
444
444
|
r = JSON.parse(l);
|
|
445
445
|
} catch (e) {
|
|
446
|
-
|
|
446
|
+
vn(`JSON parse error: ${e.message}`);
|
|
447
447
|
}
|
|
448
448
|
else r = l;
|
|
449
|
-
|
|
449
|
+
lr(r) || (r = []);
|
|
450
450
|
break;
|
|
451
451
|
case y.DTP_DICT:
|
|
452
|
-
if (
|
|
452
|
+
if (or(l)) try {
|
|
453
453
|
r = JSON.parse(l);
|
|
454
454
|
} catch (e) {
|
|
455
|
-
|
|
455
|
+
vn(`JSON parse error: ${e.message}`);
|
|
456
456
|
}
|
|
457
457
|
else r = l;
|
|
458
|
-
|
|
458
|
+
rr(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 (or(l)) try {
|
|
463
463
|
r = JSON.parse(l);
|
|
464
464
|
} catch (e) {
|
|
465
|
-
|
|
465
|
+
vn(`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 && (vn(`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 (or(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 = fr(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 vn(`${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 vn(`${et(e)}: attr NaN: ${n.name}`), -1;
|
|
492
492
|
break;
|
|
493
493
|
case y.DTP_LIST:
|
|
494
|
-
if (
|
|
494
|
+
if (or(r)) try {
|
|
495
495
|
l = JSON.parse(r);
|
|
496
496
|
} catch (e) {
|
|
497
|
-
|
|
497
|
+
vn(`JSON parse error: ${e.message}`);
|
|
498
498
|
}
|
|
499
499
|
else l = r;
|
|
500
|
-
if (!
|
|
500
|
+
if (!lr(l)) return vn(`attr must be an array: ${n.name}`), -1;
|
|
501
501
|
break;
|
|
502
502
|
case y.DTP_DICT:
|
|
503
|
-
if (
|
|
503
|
+
if (or(r)) try {
|
|
504
504
|
l = JSON.parse(r);
|
|
505
505
|
} catch (e) {
|
|
506
|
-
|
|
506
|
+
vn(`JSON parse error: ${e.message}`);
|
|
507
507
|
}
|
|
508
508
|
else l = r;
|
|
509
|
-
if (!
|
|
509
|
+
if (!rr(l)) return vn(`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, or(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 && vn(`${et(e)}: attr undefined: ${n.name}`), t[n.name] = l, rr(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 && vn(`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 && vn("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 && vn(`${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 (cr(e)) return vn("gclass_name EMPTY"), null;
|
|
542
|
+
if (e.includes("`") || e.includes("^") || e.includes(".")) return vn(`GClass name CANNOT have '.' or '^' or '\`' char: ${e}`), null;
|
|
543
|
+
if (Oe(e)) return vn(`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] ? vn(`gclass ALREADY REGISTERED: ${t}`) : d[t] = e : vn("gclass_name undefined") : vn("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 (cr(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
|
+
cr(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 (!cr(n)) {
|
|
562
|
+
if (ve(c, n)) return vn(`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 (or(e)) t = e;
|
|
575
575
|
else {
|
|
576
|
-
if (!(e instanceof O)) return
|
|
576
|
+
if (!(e instanceof O)) return vn("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 ? (vn(`Cannot unregister gclass, instances in use: ${t}`), -1) : (delete d[t], 0) : (vn(`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) ? (vn(`state already exists: ${t}`), -1) : (e.dl_states.push(new A(t)), 0) : (vn("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 vn("Cannot add state, typeof not GClass"), -1;
|
|
603
|
+
if (cr(t)) return vn("state_name EMPTY"), -1;
|
|
604
604
|
let o = pe(e, t);
|
|
605
|
-
return o ? me(o, n) ? (
|
|
605
|
+
return o ? me(o, n) ? (vn(`event already exists: gclass ${e.gclass_name}, state ${t}, event ${n}`), -1) : (o.dl_actions.push(new k(n, r, l)), 0) : (vn(`state not found: ${t}`), -1);
|
|
606
606
|
}
|
|
607
607
|
function Ee(e, t, n) {
|
|
608
|
-
|
|
608
|
+
cr(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) : (vn("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 vn("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 vn("Cannot add state, typeof not GClass"), -1;
|
|
624
624
|
let t = 0;
|
|
625
|
-
|
|
625
|
+
tr(e.dl_states) || (vn(`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 (!cr(r.state_name)) for (let n = 0; n < r.dl_actions.length; n++) {
|
|
629
629
|
let l = r.dl_actions[n];
|
|
630
|
-
|
|
630
|
+
cr(l.event_name) || (ve(e, l.event_name) || (vn(`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) || (vn(`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 (!cr(r.event_name) && (sr(r.event_flag) || (vn(`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
|
+
cr(l.state_name) || me(l, r.event_name) && (n = !0);
|
|
640
640
|
}
|
|
641
|
-
n || (
|
|
641
|
+
n || (vn(`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 && vn(`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 (!or(e)) return vn(`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 && vn(`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] && vn(`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 && vn(`_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 = ol(e.dl_children, t);
|
|
670
|
+
n >= 0 && (Zn(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 : (vn(`${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 && vn(`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 vn("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 && jn(`${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 && (vn(`${et(e)} json2data() FAILED`), Mn(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 vn("__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 vn("gobj NEEDS a parent!"), null;
|
|
696
|
+
if (!("string" == typeof l || l instanceof S)) return vn(`BAD TYPE of parent: ${l}`), null;
|
|
697
|
+
if (or(l)) {
|
|
698
698
|
const e = l;
|
|
699
|
-
if (!(l = we(e))) return
|
|
699
|
+
if (!(l = we(e))) return jn(`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 vn(`service ALREADY registered: ${t}^${e}`), null;
|
|
703
703
|
if (o & N.gobj_flag_default_service) {
|
|
704
|
-
if (m) return
|
|
704
|
+
if (m) return vn(`default service ALREADY registered: ${t}^${e}`), null;
|
|
705
705
|
o |= N.gobj_flag_service;
|
|
706
706
|
}
|
|
707
|
-
if (
|
|
707
|
+
if (cr(t)) return vn("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 vn(`GClass not registered: ${t}^${e}`), null;
|
|
710
|
+
if (!or(e)) return vn(`gobj_name must be a string: ${t}`), null;
|
|
711
|
+
if (!cr(e)) {
|
|
712
|
+
if (e.includes("`")) return vn(`gobj_name cannot contain char ': ${t}^${e}`), null;
|
|
713
|
+
if (e.includes("^")) return vn(`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 vn("gobj NULL or DESTROYED");
|
|
726
|
+
e.__refs__ > 0 && vn(`${et(e)}: gobj DESTROYING with references: ${e.__refs__}`), e.playing && (vn(`Destroying a PLAYING gobj: ${tt(e)}`), xe(e)), e.running && (vn(`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] : vn(`"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 vn("gobj NULL or DESTROYED"), -1;
|
|
747
|
+
if (e.running) return vn(`${et(e)}: GObj ALREADY RUNNING`), -1;
|
|
748
|
+
if (e.disabled) return vn(`${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 vn("gobj NULL or DESTROYED"), -1;
|
|
761
|
+
if (!e.running) return vn(`${et(e)}: GObj NOT RUNNING`), -1;
|
|
762
|
+
e.playing && (jn(`${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) ? (vn("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 vn(`gobj NULL or DESTROYED: ${et(e)}`), -1;
|
|
774
|
+
if (e.playing) return vn(`${et(e)}: GObj ALREADY PLAYING`), -1;
|
|
775
|
+
if (e.disabled) return vn(`${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 vn(`${et(e)}: Cannot play, start not done`), -1;
|
|
778
|
+
jn(`${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) ? (vn("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) : (vn(`${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 ur(e) ? e.gobj_name : (vn("gobj bad type"), null);
|
|
816
816
|
}
|
|
817
817
|
function Ze(e) {
|
|
818
|
-
return
|
|
818
|
+
return ur(e) ? e.gclass.gclass_name : (vn("gobj NULL of bad type"), null);
|
|
819
819
|
}
|
|
820
820
|
function et(e) {
|
|
821
|
-
return
|
|
821
|
+
return ur(e) ? e.gclass.gclass_name + "^" + Xe(e) : (vn("gobj bad type"), null);
|
|
822
822
|
}
|
|
823
823
|
function tt(e) {
|
|
824
|
-
if (!
|
|
824
|
+
if (!ur(e)) return vn("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 ur(e) ? e.parent : (vn("gobj NULL of bad type"), null);
|
|
831
831
|
}
|
|
832
832
|
function rt(e) {
|
|
833
|
-
return
|
|
833
|
+
return ur(e) ? !!(e.gobj_flag & N.gobj_flag_volatil) : (vn("gobj NULL of bad type"), null);
|
|
834
834
|
}
|
|
835
835
|
function lt(e) {
|
|
836
|
-
return
|
|
836
|
+
return ur(e) ? !!(e.gobj_flag & N.gobj_flag_pure_child) : (vn("gobj NULL of bad type"), null);
|
|
837
837
|
}
|
|
838
838
|
function ot(e) {
|
|
839
|
-
return !
|
|
839
|
+
return !ur(e) || !!(e.obflag & ($.obflag_destroyed | $.obflag_destroying));
|
|
840
840
|
}
|
|
841
841
|
function st(e) {
|
|
842
|
-
return
|
|
842
|
+
return ur(e) ? e.bottom_gobj : (vn("gobj NULL of bad type"), null);
|
|
843
843
|
}
|
|
844
844
|
function it(e, t) {
|
|
845
|
-
if (!
|
|
846
|
-
e.bottom_gobj && t &&
|
|
845
|
+
if (!ur(e)) return vn("gobj NULL of bad type"), null;
|
|
846
|
+
e.bottom_gobj && t && jn(`${et(e)}: bottom_gobj already set`), e.bottom_gobj = t;
|
|
847
847
|
}
|
|
848
848
|
function _t(e, t, n) {
|
|
849
|
-
return
|
|
849
|
+
return ur(e) ? t ? ge(e.gclass, t, n) : e.gclass.attrs_table : (vn("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) ? (vn("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) ? (vn("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 || vn(`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 (!ur(e)) return vn("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 vn("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 !cr(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 vn(`${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 = Jn(e.jn_attrs, o.name) : (t = e.gclass.gmt.mt_reading(e, o.name), void 0 === t && (t = Jn(e.jn_attrs, o.name))), Hn(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 === dr(t, "__disabled__")) return Ye(e);
|
|
964
|
+
if (0 === dr(t, "__running__")) return Ke(e);
|
|
965
|
+
if (0 === dr(t, "__playing__")) return Je(e);
|
|
966
|
+
if (0 === dr(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 ? Jn(n, t) : e.gclass.gmt.mt_reading(e, t) : (vn(`${et(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
|
|
970
970
|
}
|
|
971
971
|
function vt(e, t) {
|
|
972
|
-
t &&
|
|
972
|
+
t && dr(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 ? Jn(n, t) : e.gclass.gmt.mt_reading(e, t) : (vn(`${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 === dr(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 ? Jn(n, t) : e.gclass.gmt.mt_reading(e, t) : (vn(`${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 ? Jn(n, t) : e.gclass.gmt.mt_reading(e, t) : (vn(`${et(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
|
|
984
984
|
}
|
|
985
985
|
function St(e, t, r, l) {
|
|
986
|
-
if (!
|
|
986
|
+
if (!or(t)) return vn(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, rr(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) : (vn(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, rr(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 vn(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] = fr(n), rr(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) : (vn(`${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), rr(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) : (vn(`${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), rr(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) : (vn(`${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 vn("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 vn(`${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 ur(e) ? e.current_state.state_name : (vn("hgobj NULL"), "");
|
|
1039
1039
|
}
|
|
1040
1040
|
function At(e, t, n) {
|
|
1041
|
-
if (!
|
|
1041
|
+
if (!ur(e)) return vn("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) ? (vn(`gobj_post_event(): gobj dst DESTROYING, event ${t}`), -1) : cr(t) ? (vn("gobj_post_event(): event EMPTY"), -1) : It(e, t, 0) ? Lt.length >= 1e4 ? (vn(`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) : (vn(`gobj_post_event(): event NOT DEFINED in gclass ${Ze(e)}, event ${t}`), -1) : (vn(`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 vn("gobj dst NULL"), -1;
|
|
1090
|
+
if (e.obflag & ($.obflag_destroyed | $.obflag_destroying)) return vn("gobj dst DESTROYED"), -1;
|
|
1091
1091
|
let o = e.current_state;
|
|
1092
|
-
if (!o) return
|
|
1092
|
+
if (!o) return vn(`${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) && er(r) && Mn(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))), vn(`📛📛 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 = il(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) && er(r) && Mn(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
|
+
vn(`${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 || "", sr(_) ? _ : 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 (!rr(n) || !mr(n, "__hard_subscription__") && !mr(n, "__own_event__") && !mr(n, "__rename_event_name__")) return {
|
|
1152
1152
|
kw: e,
|
|
1153
1153
|
renamed_event: ""
|
|
1154
1154
|
};
|
|
1155
|
-
let r =
|
|
1155
|
+
let r = Kn({}, e), l = Kn({}, 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 || cr(s) ? null : Mt(s);
|
|
1158
|
+
return i && (o = i.event_name, delete l.__rename_event_name__, t && nr(r.__global__) > 0 && (r.__global__ = Kn(Kn({}, 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 = Nr(t, l, "__config__", null), i = Nr(t, l, "__global__", null), _ = Nr(t, l, "__local__", null), a = $r(t, l, "__filter__", null), u = !0;
|
|
1165
|
+
if (t && t !== wr(null, e, "publisher", null) && (u = !1), o && o !== wr(null, e, "subscriber", null) && (u = !1), n && n !== Sr(null, e, "event", "") && (u = !1), r && r !== Sr(null, e, "renamed_event", "") && (u = !1), nr(s) > 0) {
|
|
1166
|
+
let t = Nr(null, e, "__config__", null);
|
|
1167
|
+
nr(t) > 0 && xn(t, s) || (u = !1);
|
|
1168
1168
|
}
|
|
1169
|
-
if (
|
|
1170
|
-
let t =
|
|
1171
|
-
|
|
1169
|
+
if (nr(i) > 0) {
|
|
1170
|
+
let t = Nr(null, e, "__global__", null);
|
|
1171
|
+
nr(t) > 0 && xn(t, i) || (u = !1);
|
|
1172
1172
|
}
|
|
1173
|
-
if (
|
|
1174
|
-
let t =
|
|
1175
|
-
|
|
1173
|
+
if (nr(_) > 0) {
|
|
1174
|
+
let t = Nr(null, e, "__local__", null);
|
|
1175
|
+
nr(t) > 0 && xn(t, _) || (u = !1);
|
|
1176
1176
|
}
|
|
1177
|
-
if (
|
|
1178
|
-
let t =
|
|
1179
|
-
|
|
1177
|
+
if (nr(a) > 0) {
|
|
1178
|
+
let t = $r(null, e, "__filter__", null);
|
|
1179
|
+
nr(t) > 0 && xn(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) && Qn(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 = wr(e, t, "publisher", null, Zt.KW_REQUIRED), s = wr(e, t, "subscriber", null, Zt.KW_REQUIRED), i = Sr(e, t, "event", "", Zt.KW_REQUIRED);
|
|
1196
|
+
if (!!(Or(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))), wn(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 ? Zn(o.dl_subscriptions, a) : (vn(`${et(e)}: subscription in publisher not found`), wn(t)), a = Bt(s.dl_subscribings, t), a >= 0 ? Zn(s.dl_subscribings, a) : (vn(`${et(e)}: subscription in subscriber not found`), wn(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 vn(`publisher NULL: ev ${t}`), 0;
|
|
1205
|
+
if (!l) return vn(`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) || vn(`${et(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
|
|
1215
|
+
}), cr(t)) t = "";
|
|
1216
|
+
else if (!(Ct(e, t, R.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & w.gcflag_no_check_output_events)) return vn(`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 (Or(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 jn(`${et(e)}: Hard subscription REPEATED, the one there is kept and returned (event: ${t}, subscriber: ${et(l)})`), _;
|
|
1223
|
+
tr(i) > 0 && (vn(`${et(e)}: ${tr(i)} subscription(s) REPEATED, will be deleted and override`), wn(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
|
+
zn(l, "event", t), zn(l, "subscriber", r), zn(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 = Nr(e, n, "__config__", null), s = Nr(e, n, "__global__", null), i = Nr(e, n, "__local__", null), _ = $r(e, n, "__filter__", null), a = Sr(e, n, "__service__", "");
|
|
1230
|
+
if (nr(s) > 0 && zn(l, "__global__", Wn(s)), nr(r) > 0) {
|
|
1231
|
+
let n = Wn(r);
|
|
1232
|
+
zn(l, "__config__", n);
|
|
1233
|
+
let s = Sr(e, n, "__rename_event_name__", "");
|
|
1234
|
+
if (!cr(s)) {
|
|
1235
1235
|
let r = Mt(s);
|
|
1236
1236
|
if (r) {
|
|
1237
|
-
|
|
1238
|
-
let s =
|
|
1239
|
-
|
|
1240
|
-
} else
|
|
1237
|
+
zn(l, "renamed_event", r.event_name), delete n.__rename_event_name__, o |= Gt.__rename_event_name__;
|
|
1238
|
+
let s = Nr(e, l, "__global__", null);
|
|
1239
|
+
rr(s) || (s = {}, zn(l, "__global__", s)), s.__original_event_name__ = t;
|
|
1240
|
+
} else vn(`${et(e)}: EVENT NOT FOUND (__rename_event_name__: ${s})`);
|
|
1241
1241
|
}
|
|
1242
|
-
if (
|
|
1243
|
-
let t =
|
|
1244
|
-
|
|
1242
|
+
if (mr(n, "__hard_subscription__")) {
|
|
1243
|
+
let t = jr(e, n, "__hard_subscription__", !1);
|
|
1244
|
+
qn(n, "__hard_subscription__"), t && (o |= Gt.__hard_subscription__);
|
|
1245
1245
|
}
|
|
1246
|
-
if (
|
|
1247
|
-
let t =
|
|
1248
|
-
|
|
1246
|
+
if (mr(n, "__own_event__")) {
|
|
1247
|
+
let t = jr(e, n, "__own_event__", !1);
|
|
1248
|
+
qn(n, "__own_event__"), t && (o |= Gt.__own_event__);
|
|
1249
1249
|
}
|
|
1250
1250
|
}
|
|
1251
|
-
|
|
1251
|
+
nr(i) > 0 && zn(l, "__local__", Wn(i)), nr(_) > 0 && zn(l, "__filter__", Wn(_)), cr(a) || zn(l, "__service__", a);
|
|
1252
1252
|
}
|
|
1253
|
-
return
|
|
1253
|
+
return zn(l, "subs_flag", o), l;
|
|
1254
1254
|
}(e, t, r, l);
|
|
1255
|
-
if (!a) return
|
|
1256
|
-
if (
|
|
1255
|
+
if (!a) return vn(`${et(e)}: _create_subscription() FAILED`), 0;
|
|
1256
|
+
if (Qn(e.dl_subscriptions, a), Qn(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)) && Mn(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 && jn(`${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 (rr(r) || (r = {}), !e || e.obflag & ($.obflag_destroyed | $.obflag_destroying)) return vn("gobj NULL or DESTROYED"), -1;
|
|
1275
|
+
if (cr(t)) return vn(`${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 vn(`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) && er(r) && Mn(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 = wr(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 = Or(e, a, "subs_flag", 0, Zt.KW_REQUIRED), f = Sr(e, a, "event", "", Zt.KW_REQUIRED);
|
|
1294
|
+
if (cr(f) || 0 === dr(f, t)) {
|
|
1295
|
+
Nr(e, a, "__config__", null, 0);
|
|
1296
|
+
let l = Nr(e, a, "__global__", null, 0), s = Nr(e, a, "__local__", null, 0), f = $r(e, a, "__filter__", null, 0), g = a.renamed_event;
|
|
1297
|
+
cr(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) : nr(f) > 0 && (d = Ar(r, f) ? 1 : 0, o && (L(n("💜💜🔄%s publishing with filter, event '%s', subscriber'%s', publisher %s", d ? "👍" : "👎", t || "", et(u), et(e))), wn(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
|
+
(nr(s) > 0 || nr(l) > 0) && (p = Kn({}, r)), nr(s) > 0 && pr(p, s), nr(l) > 0 && Kn(p, Wn(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) && er(p) && Mn(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 || jn(`${et(e)}: Publish event WITHOUT subscribers, ev ${t}`), _;
|
|
1314
1314
|
}
|
|
1315
1315
|
var Zt = Object.freeze({
|
|
1316
1316
|
KW_REQUIRED: 1,
|
|
@@ -1370,7 +1370,7 @@
|
|
|
1370
1370
|
}
|
|
1371
1371
|
function pn(e) {
|
|
1372
1372
|
try {
|
|
1373
|
-
return JSON.stringify(e);
|
|
1373
|
+
return JSON.stringify(e, (e, t) => "bigint" == typeof t ? t.toString() : t);
|
|
1374
1374
|
} catch (t) {
|
|
1375
1375
|
try {
|
|
1376
1376
|
return String(e);
|
|
@@ -1418,35 +1418,41 @@
|
|
|
1418
1418
|
} else n = t.map((e) => "object" == typeof e ? pn(e) : mn(e)).join(" ");
|
|
1419
1419
|
return n;
|
|
1420
1420
|
}
|
|
1421
|
-
|
|
1422
|
-
|
|
1423
|
-
|
|
1424
|
-
|
|
1421
|
+
var En = !1;
|
|
1422
|
+
function Tn(e, ...t) {
|
|
1423
|
+
if (!En) {
|
|
1424
|
+
En = !0;
|
|
1425
1425
|
try {
|
|
1426
|
-
|
|
1427
|
-
} catch (e) {
|
|
1426
|
+
e(...t);
|
|
1427
|
+
} catch (e) {
|
|
1428
|
+
try {
|
|
1429
|
+
en.error("a log function threw:", e);
|
|
1430
|
+
} catch (e) {}
|
|
1431
|
+
} finally {
|
|
1432
|
+
En = !1;
|
|
1433
|
+
}
|
|
1428
1434
|
}
|
|
1429
1435
|
}
|
|
1430
|
-
function Tn(e, ...t) {
|
|
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);
|
|
1433
|
-
}
|
|
1434
1436
|
function vn(e, ...t) {
|
|
1435
|
-
let n = yn(e, ...t), r =
|
|
1436
|
-
|
|
1437
|
+
let n = yn(e, ...t), r = ll();
|
|
1438
|
+
tn && (tn === en.error ? cn("error", n) && Tn(tn, "%c" + r + " ERROR: " + String(n), "color:red") : (cn("error", n) && en.error("%c" + r + " ERROR: " + String(n), "color:red"), Tn(tn, `${r} ERROR: ${String(n)}`))), gn("error", n, r);
|
|
1437
1439
|
}
|
|
1438
1440
|
function jn(e, ...t) {
|
|
1439
|
-
let n = yn(e, ...t), r =
|
|
1440
|
-
|
|
1441
|
+
let n = yn(e, ...t), r = ll();
|
|
1442
|
+
nn && (nn === en.warn ? cn("warning", n) && Tn(nn, "%c" + r + " WARNING: " + String(n), "color:yellow") : (cn("warning", n) && en.warn("%c" + r + " WARNING: " + String(n), "color:yellow"), Tn(nn, `${r} WARNING: ${String(n)}`))), gn("warning", n, r);
|
|
1441
1443
|
}
|
|
1442
1444
|
function On(e, ...t) {
|
|
1443
|
-
let n = yn(e, ...t), r =
|
|
1444
|
-
ln && cn("
|
|
1445
|
+
let n = yn(e, ...t), r = ll();
|
|
1446
|
+
ln && cn("debug", n) && Tn(ln, "%c" + r + " DEBUG: " + String(n), "color:silver"), gn("debug", n, r);
|
|
1447
|
+
}
|
|
1448
|
+
function Sn(e, ...t) {
|
|
1449
|
+
let n = yn(e, ...t), r = ll();
|
|
1450
|
+
ln && cn("msg", n) && Tn(ln, "%c" + r + " MSG: " + String(n), "color:cyan"), gn("msg", n, r);
|
|
1445
1451
|
}
|
|
1446
|
-
function
|
|
1447
|
-
cn("json", t) && (t &&
|
|
1452
|
+
function wn(e, t) {
|
|
1453
|
+
cn("json", t) && (t && Tn(en.warn, "=====> " + mn(t)), Tn(en.dir, e)), gn("json", e, ll());
|
|
1448
1454
|
}
|
|
1449
|
-
var
|
|
1455
|
+
var Nn = [
|
|
1450
1456
|
"passw",
|
|
1451
1457
|
"pwd",
|
|
1452
1458
|
"passphrase",
|
|
@@ -1458,12 +1464,12 @@
|
|
|
1458
1464
|
"cookie",
|
|
1459
1465
|
"credential",
|
|
1460
1466
|
"salt"
|
|
1461
|
-
],
|
|
1467
|
+
], $n = [
|
|
1462
1468
|
"apikey",
|
|
1463
1469
|
"sessionid",
|
|
1464
1470
|
"sessionkey",
|
|
1465
1471
|
"authdata"
|
|
1466
|
-
],
|
|
1472
|
+
], Rn = /* @__PURE__ */ new Set([
|
|
1467
1473
|
"endpoint",
|
|
1468
1474
|
"url",
|
|
1469
1475
|
"uri",
|
|
@@ -1487,25 +1493,25 @@
|
|
|
1487
1493
|
"expires",
|
|
1488
1494
|
"mode"
|
|
1489
1495
|
]);
|
|
1490
|
-
function
|
|
1496
|
+
function Dn(e) {
|
|
1491
1497
|
if ("string" != typeof e || e.length < 3) return !1;
|
|
1492
1498
|
let t = e.toLowerCase(), n = !1;
|
|
1493
|
-
for (const e of
|
|
1499
|
+
for (const e of Nn) if (t.indexOf(e) >= 0) {
|
|
1494
1500
|
n = !0;
|
|
1495
1501
|
break;
|
|
1496
1502
|
}
|
|
1497
1503
|
if (!n) {
|
|
1498
1504
|
let e = t.replace(/[_\-. \t]/g, "");
|
|
1499
|
-
for (const t of
|
|
1505
|
+
for (const t of $n) if (e.indexOf(t) >= 0) {
|
|
1500
1506
|
n = !0;
|
|
1501
1507
|
break;
|
|
1502
1508
|
}
|
|
1503
1509
|
}
|
|
1504
1510
|
if (n || (n = t.indexOf("priv") >= 0 && t.indexOf("key") >= 0), !n) return !1;
|
|
1505
|
-
for (const e of t.split(/[_\-. \t]/)) if (
|
|
1511
|
+
for (const e of t.split(/[_\-. \t]/)) if (Rn.has(e)) return !1;
|
|
1506
1512
|
return !0;
|
|
1507
1513
|
}
|
|
1508
|
-
function
|
|
1514
|
+
function kn(e, t, n) {
|
|
1509
1515
|
const r = (e) => " " === e || " " === e, l = (t) => n && e[t] === n && (t + 1 >= e.length || r(e[t + 1]));
|
|
1510
1516
|
let o = t;
|
|
1511
1517
|
for (;;) {
|
|
@@ -1521,12 +1527,12 @@
|
|
|
1521
1527
|
o = t;
|
|
1522
1528
|
}
|
|
1523
1529
|
}
|
|
1524
|
-
var
|
|
1525
|
-
function
|
|
1530
|
+
var An = 128, In = 4194304, Cn = "<not shown: too large to mask>";
|
|
1531
|
+
function Ln(e) {
|
|
1526
1532
|
if ("string" != typeof e || e.indexOf("=") < 0) return null;
|
|
1527
|
-
if (e.length >
|
|
1533
|
+
if (e.length > In) return Cn;
|
|
1528
1534
|
let t, n = !1, r = /(^|[ \t])attribute=["']?([^ \t"']*)/g;
|
|
1529
|
-
for (; null !== (t = r.exec(e));)
|
|
1535
|
+
for (; null !== (t = r.exec(e));) Dn(t[2].slice(-128)) && (n = !0);
|
|
1530
1536
|
let l = [], o = 0, s = !1, i = "", _ = 0, a = 0;
|
|
1531
1537
|
const u = (t) => t >= e.length || " " === e[t] || " " === e[t];
|
|
1532
1538
|
for (; a < e.length;) {
|
|
@@ -1539,8 +1545,8 @@
|
|
|
1539
1545
|
a++;
|
|
1540
1546
|
continue;
|
|
1541
1547
|
}
|
|
1542
|
-
let r = e.substring(Math.max(_, a -
|
|
1543
|
-
if (_ = a + 1, !(
|
|
1548
|
+
let r = e.substring(Math.max(_, a - An), a);
|
|
1549
|
+
if (_ = a + 1, !(Dn(r) || n && "value" === r.toLowerCase())) {
|
|
1544
1550
|
a++;
|
|
1545
1551
|
continue;
|
|
1546
1552
|
}
|
|
@@ -1549,18 +1555,18 @@
|
|
|
1549
1555
|
if (f) {
|
|
1550
1556
|
for (c = a + 1; c < e.length && e[c] !== f;) c++;
|
|
1551
1557
|
e[c] === f && c++;
|
|
1552
|
-
} else c =
|
|
1558
|
+
} else c = kn(e, a, i);
|
|
1553
1559
|
c > a && (l.push(e.substring(o, a)), l.push("********"), o = c, s = !0), a = c, _ = a;
|
|
1554
1560
|
}
|
|
1555
1561
|
return s ? (l.push(e.substring(o)), l.join("")) : null;
|
|
1556
1562
|
}
|
|
1557
|
-
var
|
|
1558
|
-
var
|
|
1559
|
-
function
|
|
1563
|
+
var Pn = 64, Un = "<not shown: the masking failed>";
|
|
1564
|
+
var Fn = Symbol("mask-in-progress");
|
|
1565
|
+
function Vn(e, t, n, r) {
|
|
1560
1566
|
if ("string" == typeof e) {
|
|
1561
|
-
if (e.length > r.left) return r.left = 0,
|
|
1567
|
+
if (e.length > r.left) return r.left = 0, Cn;
|
|
1562
1568
|
r.left -= e.length;
|
|
1563
|
-
let t =
|
|
1569
|
+
let t = Ln(e);
|
|
1564
1570
|
return null !== t ? t : e;
|
|
1565
1571
|
}
|
|
1566
1572
|
let l = Array.isArray(e);
|
|
@@ -1569,13 +1575,13 @@
|
|
|
1569
1575
|
let t = Object.getPrototypeOf(e);
|
|
1570
1576
|
return t === Object.prototype || null === t;
|
|
1571
1577
|
}(e)) return e;
|
|
1572
|
-
if (r.left <= 0) return
|
|
1578
|
+
if (r.left <= 0) return Cn;
|
|
1573
1579
|
if (t.has(e)) {
|
|
1574
1580
|
let n = t.get(e);
|
|
1575
|
-
return n ===
|
|
1581
|
+
return n === Fn ? "<cycle>" : n;
|
|
1576
1582
|
}
|
|
1577
|
-
if (n >=
|
|
1578
|
-
r.left -= 1, t.set(e,
|
|
1583
|
+
if (n >= Pn) return "<deeper not shown>";
|
|
1584
|
+
r.left -= 1, t.set(e, Fn);
|
|
1579
1585
|
let o, s = !1, i = !1;
|
|
1580
1586
|
if (l) {
|
|
1581
1587
|
o = [];
|
|
@@ -1585,13 +1591,13 @@
|
|
|
1585
1591
|
break;
|
|
1586
1592
|
}
|
|
1587
1593
|
r.left -= 1;
|
|
1588
|
-
let _ =
|
|
1594
|
+
let _ = Vn(e[l], t, n + 1, r);
|
|
1589
1595
|
_ !== e[l] && (s = !0), o.push(_);
|
|
1590
1596
|
}
|
|
1591
|
-
i && o.push(
|
|
1597
|
+
i && o.push(Cn);
|
|
1592
1598
|
} else {
|
|
1593
1599
|
o = Object.create(Object.getPrototypeOf(e));
|
|
1594
|
-
let l = "string" == typeof e.attribute &&
|
|
1600
|
+
let l = "string" == typeof e.attribute && Dn(e.attribute.slice(-128));
|
|
1595
1601
|
for (const _ in e) {
|
|
1596
1602
|
if (!Object.prototype.hasOwnProperty.call(e, _)) continue;
|
|
1597
1603
|
if (r.left <= 0) {
|
|
@@ -1600,33 +1606,33 @@
|
|
|
1600
1606
|
}
|
|
1601
1607
|
r.left -= 1 + _.length;
|
|
1602
1608
|
let a, u = e[_];
|
|
1603
|
-
a = (
|
|
1609
|
+
a = (Dn(_.slice(-128)) || l && "value" === _) && null != u && "" !== u ? "********" : Vn(u, t, n + 1, r), a !== u && (s = !0), yr(o, _, a);
|
|
1604
1610
|
}
|
|
1605
|
-
i && (o["<more>"] =
|
|
1611
|
+
i && (o["<more>"] = Cn);
|
|
1606
1612
|
}
|
|
1607
1613
|
return s || i || (o = e), t.set(e, o), o;
|
|
1608
1614
|
}
|
|
1609
|
-
function
|
|
1615
|
+
function Gn(e) {
|
|
1610
1616
|
try {
|
|
1611
|
-
return
|
|
1617
|
+
return Vn(e, /* @__PURE__ */ new WeakMap(), 0, { left: In });
|
|
1612
1618
|
} catch (e) {
|
|
1613
|
-
return
|
|
1619
|
+
return Un;
|
|
1614
1620
|
}
|
|
1615
1621
|
}
|
|
1616
|
-
function
|
|
1617
|
-
|
|
1622
|
+
function Mn(e, t) {
|
|
1623
|
+
wn(Gn(e), t);
|
|
1618
1624
|
}
|
|
1619
|
-
function
|
|
1625
|
+
function Wn(e) {
|
|
1620
1626
|
return structuredClone(e);
|
|
1621
1627
|
}
|
|
1622
|
-
function
|
|
1628
|
+
function xn(e, t) {
|
|
1623
1629
|
if (e === t) return !0;
|
|
1624
1630
|
if (null === e || null === t) return e === t;
|
|
1625
1631
|
if (typeof e != typeof t) return !1;
|
|
1626
1632
|
if (Array.isArray(e) !== Array.isArray(t)) return !1;
|
|
1627
1633
|
if (Array.isArray(e)) {
|
|
1628
1634
|
if (e.length !== t.length) return !1;
|
|
1629
|
-
for (let n = 0; n < e.length; n++) if (!
|
|
1635
|
+
for (let n = 0; n < e.length; n++) if (!xn(e[n], t[n])) return !1;
|
|
1630
1636
|
return !0;
|
|
1631
1637
|
}
|
|
1632
1638
|
if ("object" == typeof e) {
|
|
@@ -1634,118 +1640,118 @@
|
|
|
1634
1640
|
if (n.length !== r.length) return !1;
|
|
1635
1641
|
for (let l = 0; l < n.length; l++) {
|
|
1636
1642
|
if (n[l] !== r[l]) return !1;
|
|
1637
|
-
if (!
|
|
1643
|
+
if (!xn(e[n[l]], t[r[l]])) return !1;
|
|
1638
1644
|
}
|
|
1639
1645
|
return !0;
|
|
1640
1646
|
}
|
|
1641
1647
|
return e === t;
|
|
1642
1648
|
}
|
|
1643
|
-
function xn(e, t) {
|
|
1644
|
-
if (!t) return e;
|
|
1645
|
-
for (let n of Object.keys(t)) hr(e, n, t[n]);
|
|
1646
|
-
return e;
|
|
1647
|
-
}
|
|
1648
1649
|
function Kn(e, t) {
|
|
1649
1650
|
if (!t) return e;
|
|
1650
|
-
for (let n
|
|
1651
|
+
for (let n of Object.keys(t)) yr(e, n, t[n]);
|
|
1651
1652
|
return e;
|
|
1652
1653
|
}
|
|
1653
1654
|
function Yn(e, t) {
|
|
1654
1655
|
if (!t) return e;
|
|
1655
|
-
for (let n in t) Object.prototype.hasOwnProperty.call(t, n) &&
|
|
1656
|
+
for (let n in t) Object.prototype.hasOwnProperty.call(t, n) && Object.prototype.hasOwnProperty.call(e, n) && yr(e, n, t[n]);
|
|
1656
1657
|
return e;
|
|
1657
1658
|
}
|
|
1658
1659
|
function Bn(e, t) {
|
|
1659
|
-
if (
|
|
1660
|
+
if (!t) return e;
|
|
1661
|
+
for (let n in t) Object.prototype.hasOwnProperty.call(t, n) && !Object.prototype.hasOwnProperty.call(e, n) && yr(e, n, t[n]);
|
|
1662
|
+
return e;
|
|
1660
1663
|
}
|
|
1661
1664
|
function Jn(e, t) {
|
|
1662
|
-
e && Object.prototype.hasOwnProperty.call(e, t)
|
|
1665
|
+
if (e && Object.prototype.hasOwnProperty.call(e, t)) return e[t];
|
|
1663
1666
|
}
|
|
1664
|
-
function qn(e, t
|
|
1665
|
-
|
|
1667
|
+
function qn(e, t) {
|
|
1668
|
+
e && Object.prototype.hasOwnProperty.call(e, t) && delete e[t];
|
|
1666
1669
|
}
|
|
1667
1670
|
function Hn(e, t, n) {
|
|
1668
|
-
|
|
1671
|
+
yr(e, t, n);
|
|
1669
1672
|
}
|
|
1670
|
-
function zn(e, t) {
|
|
1671
|
-
e
|
|
1673
|
+
function zn(e, t, n) {
|
|
1674
|
+
yr(e, t, n);
|
|
1672
1675
|
}
|
|
1673
1676
|
function Qn(e, t) {
|
|
1674
1677
|
e.push(t);
|
|
1675
1678
|
}
|
|
1676
1679
|
function Xn(e, t) {
|
|
1677
|
-
e.
|
|
1680
|
+
e.push(t);
|
|
1678
1681
|
}
|
|
1679
|
-
function Zn(e) {
|
|
1680
|
-
|
|
1682
|
+
function Zn(e, t) {
|
|
1683
|
+
e.splice(t, 1);
|
|
1681
1684
|
}
|
|
1682
1685
|
function er(e) {
|
|
1683
|
-
return rr(e) ? e.length : 0;
|
|
1686
|
+
return rr(e) ? Object.keys(e).length : 0;
|
|
1684
1687
|
}
|
|
1685
1688
|
function tr(e) {
|
|
1686
|
-
return
|
|
1689
|
+
return lr(e) ? e.length : 0;
|
|
1687
1690
|
}
|
|
1688
1691
|
function nr(e) {
|
|
1689
|
-
return
|
|
1692
|
+
return rr(e) ? Object.keys(e).length : lr(e) ? e.length : or(e) && e.length > 0 ? 1 : 0;
|
|
1690
1693
|
}
|
|
1691
1694
|
function rr(e) {
|
|
1692
|
-
return Array.isArray(e);
|
|
1695
|
+
return null !== e && "object" == typeof e && !Array.isArray(e);
|
|
1693
1696
|
}
|
|
1694
1697
|
function lr(e) {
|
|
1695
|
-
return
|
|
1698
|
+
return Array.isArray(e);
|
|
1696
1699
|
}
|
|
1697
1700
|
function or(e) {
|
|
1698
|
-
return "
|
|
1701
|
+
return "string" == typeof e;
|
|
1699
1702
|
}
|
|
1700
1703
|
function sr(e) {
|
|
1701
|
-
return "
|
|
1704
|
+
return "number" == typeof e && Number.isFinite(e);
|
|
1702
1705
|
}
|
|
1703
1706
|
function ir(e) {
|
|
1704
|
-
return
|
|
1707
|
+
return "boolean" == typeof e;
|
|
1705
1708
|
}
|
|
1706
1709
|
function _r(e) {
|
|
1707
|
-
return
|
|
1710
|
+
return null == e;
|
|
1708
1711
|
}
|
|
1709
1712
|
function ar(e) {
|
|
1710
|
-
return
|
|
1713
|
+
return "function" == typeof e;
|
|
1711
1714
|
}
|
|
1712
1715
|
function ur(e) {
|
|
1713
|
-
return
|
|
1716
|
+
return e instanceof S;
|
|
1714
1717
|
}
|
|
1715
1718
|
function cr(e) {
|
|
1716
|
-
return or(e)
|
|
1719
|
+
return !or(e) || 0 === e.length;
|
|
1717
1720
|
}
|
|
1718
|
-
function fr(e
|
|
1719
|
-
return e
|
|
1721
|
+
function fr(e) {
|
|
1722
|
+
return sr(e) ? Boolean(e) : /^\s*(true|1|on)\s*$/i.test(e);
|
|
1720
1723
|
}
|
|
1721
1724
|
function gr(e, t) {
|
|
1725
|
+
return e === t ? 0 : e > t ? 1 : -1;
|
|
1726
|
+
}
|
|
1727
|
+
function dr(e, t) {
|
|
1722
1728
|
let n = e.toLowerCase(), r = t.toLowerCase();
|
|
1723
1729
|
return n === r ? 0 : n > r ? 1 : -1;
|
|
1724
1730
|
}
|
|
1725
|
-
function
|
|
1726
|
-
if (
|
|
1727
|
-
if (
|
|
1731
|
+
function br(e, t) {
|
|
1732
|
+
if (rr(e) || rr(t) || lr(e) || lr(t)) return 0;
|
|
1733
|
+
if (sr(e) || sr(t)) {
|
|
1728
1734
|
let n = Number(e), r = Number(t);
|
|
1729
1735
|
return Number.isNaN(n) && (n = 0), Number.isNaN(r) && (r = 0), n > r ? 1 : n < r ? -1 : 0;
|
|
1730
1736
|
}
|
|
1731
|
-
if (
|
|
1737
|
+
if (ir(e) || ir(t)) {
|
|
1732
1738
|
let n = Number(e), r = Number(t);
|
|
1733
1739
|
return n > r ? 1 : n < r ? -1 : 0;
|
|
1734
1740
|
}
|
|
1735
|
-
return
|
|
1741
|
+
return gr(String(e), String(t));
|
|
1736
1742
|
}
|
|
1737
|
-
function
|
|
1738
|
-
if ("object" != typeof t || Array.isArray(t)) if (Array.isArray(t)) for (const n of t)
|
|
1743
|
+
function pr(e, t) {
|
|
1744
|
+
if ("object" != typeof t || Array.isArray(t)) if (Array.isArray(t)) for (const n of t) pr(e, n);
|
|
1739
1745
|
else "string" == typeof t && delete e[t];
|
|
1740
1746
|
else for (const n of Object.keys(t)) delete e[n];
|
|
1741
1747
|
}
|
|
1742
|
-
function
|
|
1748
|
+
function mr(e, t) {
|
|
1743
1749
|
return !(!(t in e) || !Object.prototype.hasOwnProperty.call(e, t));
|
|
1744
1750
|
}
|
|
1745
|
-
function
|
|
1751
|
+
function hr(e, t) {
|
|
1746
1752
|
return !Object.prototype.hasOwnProperty.call(e, t);
|
|
1747
1753
|
}
|
|
1748
|
-
function
|
|
1754
|
+
function yr(e, t, n) {
|
|
1749
1755
|
"__proto__" === t ? Object.defineProperty(e, t, {
|
|
1750
1756
|
value: n,
|
|
1751
1757
|
writable: !0,
|
|
@@ -1753,205 +1759,205 @@
|
|
|
1753
1759
|
configurable: !0
|
|
1754
1760
|
}) : e[t] = n;
|
|
1755
1761
|
}
|
|
1756
|
-
function
|
|
1762
|
+
function Er(e, t) {
|
|
1757
1763
|
if (!/^[0-9]+$/.test(t)) return -1;
|
|
1758
1764
|
const n = Number(t);
|
|
1759
1765
|
return n >= e.length ? -1 : n;
|
|
1760
1766
|
}
|
|
1761
|
-
function
|
|
1762
|
-
e && !
|
|
1767
|
+
function Tr(e, t, n, r) {
|
|
1768
|
+
e && !ur(e) && vn("GObj bad instanceof");
|
|
1763
1769
|
const l = e ? `${et(e)}: ` : "";
|
|
1764
|
-
if (!
|
|
1765
|
-
if (!
|
|
1770
|
+
if (!rr(t) && !lr(t)) return void vn(`${l}kw must be list or dict: '${String(n)}'`);
|
|
1771
|
+
if (!or(n)) return void vn(`${l}path must be a string: ${String(n)}`);
|
|
1766
1772
|
let o = n.split("`"), s = o.length;
|
|
1767
1773
|
for (let e = 0; e < s; e++) {
|
|
1768
|
-
if (
|
|
1769
|
-
const s =
|
|
1770
|
-
if (s < 0) return void (r &&
|
|
1774
|
+
if (lr(t)) {
|
|
1775
|
+
const s = Er(t, o[e]);
|
|
1776
|
+
if (s < 0) return void (r && vn(`${l}path not found: '${n}'`));
|
|
1771
1777
|
o[e] = String(s);
|
|
1772
1778
|
}
|
|
1773
|
-
if (
|
|
1779
|
+
if (hr(t, o[e])) return void (r && vn(`${l}path not found: '${n}'`));
|
|
1774
1780
|
if (e === s - 1) break;
|
|
1775
|
-
if (null == (t = t[o[e]])) return void (r &&
|
|
1776
|
-
if (!
|
|
1781
|
+
if (null == (t = t[o[e]])) return void (r && vn(`${l}path not found: '${n}'`));
|
|
1782
|
+
if (!rr(t) && !lr(t)) return void vn(`${l}kw must be list or dict: '${n}'`);
|
|
1777
1783
|
}
|
|
1778
1784
|
let i = t[o[s - 1]];
|
|
1779
|
-
return void 0 === i && r &&
|
|
1785
|
+
return void 0 === i && r && vn(`${l}path not found: '${n}'`), i;
|
|
1780
1786
|
}
|
|
1781
|
-
function
|
|
1782
|
-
e && !
|
|
1787
|
+
function vr(e, t, n) {
|
|
1788
|
+
e && !ur(e) && vn("GObj bad instanceof");
|
|
1783
1789
|
const r = e ? et(e) + ": " : "";
|
|
1784
|
-
if (!
|
|
1790
|
+
if (!or(n)) return vn(`${r}kw_delete(): path must be a string: ${String(n)}`), -1;
|
|
1785
1791
|
let [l, o] = function(e, t) {
|
|
1786
1792
|
let n = e.lastIndexOf(t);
|
|
1787
1793
|
return -1 === n ? [e, ""] : [e.substring(0, n), e.substring(n + 1)];
|
|
1788
1794
|
}(n, "`"), s = t;
|
|
1789
|
-
if (
|
|
1790
|
-
else if (s =
|
|
1791
|
-
return
|
|
1795
|
+
if (cr(o)) o = n;
|
|
1796
|
+
else if (s = Tr(e, t, l, !0), void 0 === s) return -1;
|
|
1797
|
+
return lr(s) ? (vn(`${r}kw_delete(): cannot delete an item of a list: '${n}'`), -1) : rr(s) && Object.prototype.hasOwnProperty.call(s, o) ? (delete s[o], 0) : (vn(`${r}kw_delete(): path not found: '${n}'`), -1);
|
|
1792
1798
|
}
|
|
1793
|
-
function
|
|
1794
|
-
e && !
|
|
1795
|
-
let o =
|
|
1799
|
+
function jr(e, t, n, r, l) {
|
|
1800
|
+
e && !ur(e) && vn("GObj bad instanceof");
|
|
1801
|
+
let o = Tr(e, t, n, !1);
|
|
1796
1802
|
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;
|
|
1797
1803
|
if (void 0 === o) {
|
|
1798
1804
|
if (i && t) {
|
|
1799
1805
|
let l = Boolean(r);
|
|
1800
|
-
return
|
|
1806
|
+
return Rr(e, t, n, l), l;
|
|
1801
1807
|
}
|
|
1802
|
-
return s && (
|
|
1808
|
+
return s && (vn(`path not found: '${n}'`), Mn(t)), Boolean(r);
|
|
1803
1809
|
}
|
|
1804
1810
|
let u;
|
|
1805
|
-
if (
|
|
1806
|
-
else if (a &&
|
|
1807
|
-
else if (a &&
|
|
1811
|
+
if (ir(o)) u = o;
|
|
1812
|
+
else if (a && sr(o)) u = 0 !== o;
|
|
1813
|
+
else if (a && or(o)) u = "true" === o.toLowerCase() || "false" !== o.toLowerCase() && 0 !== (parseInt(o, 10) || 0);
|
|
1808
1814
|
else {
|
|
1809
|
-
if (!a || null !== o) return a ? (
|
|
1815
|
+
if (!a || null !== o) return a ? (vn(`${e ? et(e) + ": " : ""}path MUST BE a simple json element: '${n}'`), Mn(t), !1) : (vn(`${e ? et(e) + ": " : ""}path MUST BE a json boolean: '${n}'`), Mn(t), Boolean(r));
|
|
1810
1816
|
u = !1;
|
|
1811
1817
|
}
|
|
1812
|
-
return _ &&
|
|
1818
|
+
return _ && vr(e, t, n), u;
|
|
1813
1819
|
}
|
|
1814
|
-
function
|
|
1815
|
-
e && !
|
|
1816
|
-
let o =
|
|
1820
|
+
function Or(e, t, n, r, l) {
|
|
1821
|
+
e && !ur(e) && vn("GObj bad instanceof");
|
|
1822
|
+
let o = Tr(e, t, n, !1);
|
|
1817
1823
|
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;
|
|
1818
1824
|
if (void 0 === o) {
|
|
1819
1825
|
if (i && t) {
|
|
1820
1826
|
let l = parseInt(r);
|
|
1821
|
-
return
|
|
1827
|
+
return Rr(e, t, n, l), l;
|
|
1822
1828
|
}
|
|
1823
|
-
return s && (
|
|
1829
|
+
return s && (vn(`path not found: '${n}'`), Mn(t)), parseInt(r);
|
|
1824
1830
|
}
|
|
1825
1831
|
let u;
|
|
1826
|
-
if (
|
|
1832
|
+
if (sr(o)) u = Math.trunc(o);
|
|
1827
1833
|
else {
|
|
1828
|
-
if (!a) return
|
|
1829
|
-
if (
|
|
1830
|
-
else if (
|
|
1834
|
+
if (!a) return vn(`${e ? et(e) + ": " : ""}path MUST BE a json integer: '${n}'`), Mn(t), parseInt(r);
|
|
1835
|
+
if (ir(o)) u = o ? 1 : 0;
|
|
1836
|
+
else if (or(o)) u = function(e) {
|
|
1831
1837
|
const t = /^\s*([+-]?)(0[xX][0-9a-fA-F]+|0[0-7]*|[1-9][0-9]*)/.exec(e);
|
|
1832
1838
|
if (!t) return 0;
|
|
1833
1839
|
let n, r = t[2];
|
|
1834
1840
|
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;
|
|
1835
1841
|
}(o);
|
|
1836
1842
|
else {
|
|
1837
|
-
if (null !== o) return
|
|
1843
|
+
if (null !== o) return vn(`${e ? et(e) + ": " : ""}path MUST BE a simple json element: '${n}'`), Mn(t), 0;
|
|
1838
1844
|
u = 0;
|
|
1839
1845
|
}
|
|
1840
1846
|
}
|
|
1841
|
-
return _ &&
|
|
1847
|
+
return _ && vr(e, t, n), u;
|
|
1842
1848
|
}
|
|
1843
|
-
function
|
|
1844
|
-
e && !
|
|
1845
|
-
let o =
|
|
1849
|
+
function Sr(e, t, n, r, l) {
|
|
1850
|
+
e && !ur(e) && vn("GObj bad instanceof");
|
|
1851
|
+
let o = Tr(e, t, n, !1);
|
|
1846
1852
|
const s = l && l & Zt.KW_REQUIRED, i = l && l & Zt.KW_CREATE, _ = l && l & Zt.KW_EXTRACT;
|
|
1847
|
-
return void 0 === o ? i && t ? (
|
|
1848
|
-
let n =
|
|
1853
|
+
return void 0 === o ? i && t ? (Rr(e, t, n, or(r) ? r : null), r) : (s && !function(e, t) {
|
|
1854
|
+
let n = or(t) ? t.split("`") : [], r = e;
|
|
1849
1855
|
for (let e = 0; e < n.length - 1; e++) {
|
|
1850
|
-
if (!
|
|
1856
|
+
if (!rr(r) && !lr(r)) return !1;
|
|
1851
1857
|
r = r[n[e]];
|
|
1852
1858
|
}
|
|
1853
|
-
return !(!
|
|
1854
|
-
}(t, n) && (
|
|
1859
|
+
return !(!rr(r) && !lr(r) || 0 === n.length) && Object.prototype.hasOwnProperty.call(r, n[n.length - 1]);
|
|
1860
|
+
}(t, n) && (vn(`path not found: '${n}'`), Mn(t)), r) : or(o) ? (_ && vr(e, t, n), o) : (null !== o && (vn(`${e ? et(e) + ": " : ""}path MUST BE a json str: '${n}'`), Mn(t)), r);
|
|
1855
1861
|
}
|
|
1856
|
-
function
|
|
1857
|
-
e && !
|
|
1858
|
-
let o =
|
|
1862
|
+
function wr(e, t, n, r, l) {
|
|
1863
|
+
e && !ur(e) && vn("GObj bad instanceof");
|
|
1864
|
+
let o = Tr(e, t, n, !1);
|
|
1859
1865
|
const s = l && l & Zt.KW_REQUIRED, i = l && l & Zt.KW_CREATE, _ = l && l & Zt.KW_EXTRACT;
|
|
1860
1866
|
if (void 0 === o) {
|
|
1861
1867
|
if (i) {
|
|
1862
1868
|
let l = r;
|
|
1863
|
-
return
|
|
1869
|
+
return Rr(e, t, n, l), l;
|
|
1864
1870
|
}
|
|
1865
|
-
return s && (
|
|
1871
|
+
return s && (vn(`path not found: '${n}'`), Mn(t)), r;
|
|
1866
1872
|
}
|
|
1867
|
-
return _ &&
|
|
1873
|
+
return _ && vr(e, t, n), o;
|
|
1868
1874
|
}
|
|
1869
|
-
function
|
|
1870
|
-
e && !
|
|
1871
|
-
let o =
|
|
1875
|
+
function Nr(e, t, n, r, l) {
|
|
1876
|
+
e && !ur(e) && vn("GObj bad instanceof");
|
|
1877
|
+
let o = Tr(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
|
-
return void 0 === o ? i &&
|
|
1879
|
+
return void 0 === o ? i && rr(r) && t ? (Rr(e, t, n, r), r) : (s && (vn(`path not found: '${n}'`), Mn(t)), r) : rr(o) ? (_ && vr(e, t, n), o) : i && null === o && rr(r) ? (Rr(e, t, n, r), r) : i && null === o ? (s && (vn(`path not found: '${n}'`), Mn(t)), r) : ((s || i) && (vn(`${e ? et(e) + ": " : ""}path MUST BE a json dict: '${n}'` + (i ? ", cannot create" : "")), Mn(t)), r);
|
|
1874
1880
|
}
|
|
1875
|
-
function
|
|
1876
|
-
e && !
|
|
1877
|
-
let o =
|
|
1881
|
+
function $r(e, t, n, r, l) {
|
|
1882
|
+
e && !ur(e) && vn("GObj bad instanceof");
|
|
1883
|
+
let o = Tr(e, t, n, !1);
|
|
1878
1884
|
const s = l && l & Zt.KW_REQUIRED, i = l && l & Zt.KW_CREATE, _ = l && l & Zt.KW_EXTRACT;
|
|
1879
1885
|
if (void 0 === o) {
|
|
1880
1886
|
if (i) {
|
|
1881
1887
|
let l = r;
|
|
1882
|
-
return
|
|
1888
|
+
return Rr(e, t, n, l), l;
|
|
1883
1889
|
}
|
|
1884
|
-
return s && (
|
|
1890
|
+
return s && (vn(`path not found: '${n}'`), Mn(t)), r;
|
|
1885
1891
|
}
|
|
1886
|
-
return _ &&
|
|
1892
|
+
return _ && vr(e, t, n), o;
|
|
1887
1893
|
}
|
|
1888
|
-
function
|
|
1889
|
-
if (e && !
|
|
1890
|
-
if (!
|
|
1891
|
-
if ("" === n) return
|
|
1892
|
-
if (n.split("`").includes("")) return
|
|
1894
|
+
function Rr(e, t, n, r) {
|
|
1895
|
+
if (e && !ur(e) && vn("GObj bad instanceof"), !rr(t)) return vn("kw is not an object"), -1;
|
|
1896
|
+
if (!or(n)) return vn(`${e ? et(e) + ": " : ""}kw_set_dict_value(): path must be a string: ${String(n)}`), -1;
|
|
1897
|
+
if ("" === n) return vn((e ? et(e) + ": " : "") + "kw_set_dict_value(): path empty"), -1;
|
|
1898
|
+
if (n.split("`").includes("")) return vn(`${e ? et(e) + ": " : ""}kw_set_dict_value(): empty segment in path: '${n}'`), -1;
|
|
1893
1899
|
let l = n.split("`"), o = l.length;
|
|
1894
1900
|
for (let s = 0; s < o; s++) {
|
|
1895
1901
|
let i = l[s];
|
|
1896
|
-
if (
|
|
1897
|
-
const r =
|
|
1898
|
-
if (r < 0) return
|
|
1902
|
+
if (lr(t)) {
|
|
1903
|
+
const r = Er(t, i);
|
|
1904
|
+
if (r < 0) return vn(`${e ? et(e) + ": " : ""}kw_set_dict_value(): segment '${i}' is not an index of its list: '${n}'`), -1;
|
|
1899
1905
|
i = String(r);
|
|
1900
1906
|
}
|
|
1901
|
-
if (s === o - 1)
|
|
1907
|
+
if (s === o - 1) yr(t, i, r);
|
|
1902
1908
|
else {
|
|
1903
|
-
let r =
|
|
1904
|
-
if (void 0 === r)
|
|
1905
|
-
else if (!
|
|
1909
|
+
let r = hr(t, i) ? void 0 : t[i];
|
|
1910
|
+
if (void 0 === r) yr(t, i, {});
|
|
1911
|
+
else if (!rr(r) && !lr(r)) return vn(`${e ? et(e) + ": " : ""}kw_set_dict_value(): segment '${i}' is not a dict or a list: '${n}'`), -1;
|
|
1906
1912
|
t = t[i];
|
|
1907
1913
|
}
|
|
1908
1914
|
}
|
|
1909
1915
|
return 0;
|
|
1910
1916
|
}
|
|
1911
|
-
function
|
|
1912
|
-
if (e && !
|
|
1913
|
-
let o =
|
|
1917
|
+
function Dr(e, t, n, r, l) {
|
|
1918
|
+
if (e && !ur(e) && vn("GObj bad instanceof"), !rr(t)) return vn("kw is not an object"), -1;
|
|
1919
|
+
let o = Tr(e, t, n, !1);
|
|
1914
1920
|
if (void 0 === o) {
|
|
1915
|
-
if (!
|
|
1921
|
+
if (!or(n) || function(e, t) {
|
|
1916
1922
|
let n = t.split("`"), r = e;
|
|
1917
1923
|
for (let e = 0; e < n.length - 1; e++) {
|
|
1918
|
-
if (
|
|
1919
|
-
const t =
|
|
1924
|
+
if (lr(r)) {
|
|
1925
|
+
const t = Er(r, n[e]);
|
|
1920
1926
|
if (t < 0) return !1;
|
|
1921
1927
|
r = r[t];
|
|
1922
1928
|
} else r = Object.prototype.hasOwnProperty.call(r, n[e]) ? r[n[e]] : void 0;
|
|
1923
1929
|
if (null == r) return !1;
|
|
1924
|
-
if (!
|
|
1930
|
+
if (!rr(r) && !lr(r)) return !0;
|
|
1925
1931
|
}
|
|
1926
1932
|
return !1;
|
|
1927
1933
|
}(t, n)) return -1;
|
|
1928
|
-
if (o = {},
|
|
1934
|
+
if (o = {}, Rr(e, t, n, o) < 0) return -1;
|
|
1929
1935
|
}
|
|
1930
|
-
return
|
|
1936
|
+
return rr(o) ? (yr(o, r, l), 0) : (vn(`subdict is not an object: '${n}'`), -1);
|
|
1931
1937
|
}
|
|
1932
|
-
function
|
|
1938
|
+
function kr(e, t, r) {
|
|
1933
1939
|
let l = "", o = !1;
|
|
1934
|
-
if (
|
|
1940
|
+
if (lr(t)) {
|
|
1935
1941
|
o = !1;
|
|
1936
1942
|
for (let s = 0; s < t.length; s++) {
|
|
1937
1943
|
let i = t[s];
|
|
1938
|
-
if (l =
|
|
1944
|
+
if (l = cr(r) ? n("%s", r) : n("%s`%d", r, s), o = kr(e, i, l), o) break;
|
|
1939
1945
|
}
|
|
1940
|
-
} else if (
|
|
1946
|
+
} else if (rr(t)) {
|
|
1941
1947
|
o = !0;
|
|
1942
1948
|
let s = Object.keys(t);
|
|
1943
1949
|
for (let i = 0; i < s.length; i++) {
|
|
1944
1950
|
let _ = s[i], a = t[_];
|
|
1945
|
-
if (l =
|
|
1946
|
-
if (o =
|
|
1951
|
+
if (l = cr(r) ? n("%s", _) : n("%s`%s", r, _), lr(a) || rr(a)) {
|
|
1952
|
+
if (o = kr(e, a, l), !o) break;
|
|
1947
1953
|
continue;
|
|
1948
1954
|
}
|
|
1949
|
-
let u =
|
|
1950
|
-
if (void 0 === u && (u =
|
|
1955
|
+
let u = $r(0, e, l, void 0, 0);
|
|
1956
|
+
if (void 0 === u && (u = Jn(e, l)), void 0 === u) {
|
|
1951
1957
|
o = !1;
|
|
1952
1958
|
break;
|
|
1953
1959
|
}
|
|
1954
|
-
if (0 !==
|
|
1960
|
+
if (0 !== br(u, a)) {
|
|
1955
1961
|
o = !1;
|
|
1956
1962
|
break;
|
|
1957
1963
|
}
|
|
@@ -1959,59 +1965,59 @@
|
|
|
1959
1965
|
}
|
|
1960
1966
|
return o;
|
|
1961
1967
|
}
|
|
1962
|
-
function
|
|
1963
|
-
return 0 ===
|
|
1968
|
+
function Ar(e, t) {
|
|
1969
|
+
return 0 === nr(t) || kr(e, t, "");
|
|
1964
1970
|
}
|
|
1965
|
-
function
|
|
1966
|
-
e && !
|
|
1971
|
+
function Ir(e, t, n, r) {
|
|
1972
|
+
e && !ur(e) && vn("GObj bad instanceof");
|
|
1967
1973
|
let l = {};
|
|
1968
|
-
if (
|
|
1974
|
+
if (or(n) && !cr(n)) {
|
|
1969
1975
|
let o = n;
|
|
1970
|
-
Object.prototype.hasOwnProperty.call(t, o) ?
|
|
1971
|
-
} else if (
|
|
1976
|
+
Object.prototype.hasOwnProperty.call(t, o) ? yr(l, o, t[o]) : r && vn(`${et(e)}: key not found: ${o}`);
|
|
1977
|
+
} else if (rr(n) && er(n) > 0) for (let o of Object.keys(n)) Object.prototype.hasOwnProperty.call(t, o) ? yr(l, o, t[o]) : r && vn(`${et(e)}: key not found: ${o}`);
|
|
1972
1978
|
else {
|
|
1973
|
-
if (!(
|
|
1979
|
+
if (!(lr(n) && tr(n) > 0)) return t;
|
|
1974
1980
|
for (let o = 0; o < n.length; o++) {
|
|
1975
1981
|
let s = n[o];
|
|
1976
|
-
Object.prototype.hasOwnProperty.call(t, s) ?
|
|
1982
|
+
Object.prototype.hasOwnProperty.call(t, s) ? yr(l, s, t[s]) : r && vn(`${et(e)}: key not found: ${s}`);
|
|
1977
1983
|
}
|
|
1978
1984
|
}
|
|
1979
1985
|
return l;
|
|
1980
1986
|
}
|
|
1981
|
-
function
|
|
1987
|
+
function Cr(e, t, n, r) {
|
|
1982
1988
|
let l = {};
|
|
1983
|
-
if (!
|
|
1984
|
-
if (
|
|
1989
|
+
if (!rr(t)) return l;
|
|
1990
|
+
if (Kn(l, t), or(n) && !cr(n)) {
|
|
1985
1991
|
let o = n;
|
|
1986
|
-
Object.prototype.hasOwnProperty.call(t, o) ?
|
|
1987
|
-
} else if (
|
|
1992
|
+
Object.prototype.hasOwnProperty.call(t, o) ? qn(l, o) : r && vn(`${et(e)}: key not found: ${o}`);
|
|
1993
|
+
} else if (rr(n) && er(n) > 0) for (let o of Object.keys(n)) Object.prototype.hasOwnProperty.call(t, o) ? qn(l, o) : r && vn(`${et(e)}: key not found: ${o}`);
|
|
1988
1994
|
else {
|
|
1989
|
-
if (!(
|
|
1995
|
+
if (!(lr(n) && tr(n) > 0)) return {};
|
|
1990
1996
|
for (let o = 0; o < n.length; o++) {
|
|
1991
1997
|
let s = n[o];
|
|
1992
|
-
Object.prototype.hasOwnProperty.call(t, s) ?
|
|
1998
|
+
Object.prototype.hasOwnProperty.call(t, s) ? qn(l, s) : r && vn(`${et(e)}: key not found: ${s}`);
|
|
1993
1999
|
}
|
|
1994
2000
|
}
|
|
1995
2001
|
return l;
|
|
1996
2002
|
}
|
|
1997
|
-
function
|
|
2003
|
+
function Lr(e, t, n = !1) {
|
|
1998
2004
|
if ("undefined" != typeof window && window.localStorage) try {
|
|
1999
2005
|
let r = window.localStorage.getItem(e);
|
|
2000
|
-
return null === r ? (n &&
|
|
2006
|
+
return null === r ? (n && Pr(e, t), t) : JSON.parse(r);
|
|
2001
2007
|
} catch (n) {
|
|
2002
2008
|
return window.console.warn(`Error reading localStorage key "${e}":`, n), t;
|
|
2003
2009
|
}
|
|
2004
2010
|
}
|
|
2005
|
-
function
|
|
2011
|
+
function Pr(e, t) {
|
|
2006
2012
|
if ("undefined" == typeof window || !window.localStorage) return 0;
|
|
2007
|
-
if (!e || void 0 === t) return
|
|
2013
|
+
if (!e || void 0 === t) return vn(`kw_set_local_storage_value(): invalid key or value: key=${e}`), -1;
|
|
2008
2014
|
try {
|
|
2009
2015
|
return window.localStorage.setItem(e, JSON.stringify(t)), 0;
|
|
2010
2016
|
} catch (t) {
|
|
2011
|
-
return
|
|
2017
|
+
return vn(`kw_set_local_storage_value(): cannot save "${e}" (storage full or blocked?): ${t && t.message ? t.message : t}`), -1;
|
|
2012
2018
|
}
|
|
2013
2019
|
}
|
|
2014
|
-
function
|
|
2020
|
+
function Ur(e) {
|
|
2015
2021
|
if ("undefined" != typeof window && window.localStorage) if (e) try {
|
|
2016
2022
|
window.localStorage.removeItem(e);
|
|
2017
2023
|
} catch (t) {
|
|
@@ -2019,46 +2025,46 @@
|
|
|
2019
2025
|
}
|
|
2020
2026
|
else window.console.warn(`Invalid key for localStorage removal: ${e}`);
|
|
2021
2027
|
}
|
|
2022
|
-
function
|
|
2023
|
-
if (
|
|
2024
|
-
if (
|
|
2028
|
+
function Fr(e, t) {
|
|
2029
|
+
if (_r(e) || _r(t)) return !0;
|
|
2030
|
+
if (lr(e)) {
|
|
2025
2031
|
if (0 === e.length) return !0;
|
|
2026
2032
|
for (let n = 0; n < e.length; n++) if (e[n] === t) return !0;
|
|
2027
|
-
} else if (
|
|
2033
|
+
} else if (rr(e)) {
|
|
2028
2034
|
if (0 === Object.keys(e).length) return !0;
|
|
2029
2035
|
for (let n in e) if (n === t) return !0;
|
|
2030
|
-
} else if (
|
|
2036
|
+
} else if (or(e) && e === t) return !0;
|
|
2031
2037
|
return !1;
|
|
2032
2038
|
}
|
|
2033
|
-
function
|
|
2034
|
-
if (e && !
|
|
2035
|
-
l || (l =
|
|
2039
|
+
function Vr(e, t, n, r, l) {
|
|
2040
|
+
if (e && !ur(e) && vn("GObj bad instanceof"), !t) return null;
|
|
2041
|
+
l || (l = Ar);
|
|
2036
2042
|
let o = [];
|
|
2037
|
-
if (
|
|
2043
|
+
if (lr(t)) for (let s = 0; s < t.length; s++) {
|
|
2038
2044
|
let i, _ = t[s];
|
|
2039
|
-
if (
|
|
2045
|
+
if (rr(_)) i = Sr(e, _, "id", "", 0);
|
|
2040
2046
|
else {
|
|
2041
|
-
if (!
|
|
2047
|
+
if (!or(_)) continue;
|
|
2042
2048
|
i = _;
|
|
2043
2049
|
}
|
|
2044
|
-
|
|
2050
|
+
Fr(n, i) && l(_, r) && o.push(_);
|
|
2045
2051
|
}
|
|
2046
2052
|
else {
|
|
2047
|
-
if (!
|
|
2053
|
+
if (!rr(t)) return vn("kw_collect() BAD kw parameter"), null;
|
|
2048
2054
|
for (let e of Object.keys(t)) {
|
|
2049
2055
|
let s = t[e];
|
|
2050
|
-
|
|
2056
|
+
Fr(n, e) && l(s, r) && o.push(s);
|
|
2051
2057
|
}
|
|
2052
2058
|
}
|
|
2053
2059
|
return o;
|
|
2054
2060
|
}
|
|
2055
|
-
function
|
|
2061
|
+
function Gr(e, t) {
|
|
2056
2062
|
if (!e) return -1;
|
|
2057
2063
|
for (let n = 0; n < e.length; n++) if (e[n] && e[n].id === t) return n;
|
|
2058
2064
|
return -1;
|
|
2059
2065
|
}
|
|
2060
|
-
function
|
|
2061
|
-
if (!e || !t) return
|
|
2066
|
+
function Mr(e, t, n) {
|
|
2067
|
+
if (!e || !t) return vn("ERROR: str_in_list() list or str empty"), !1;
|
|
2062
2068
|
let r = e.length;
|
|
2063
2069
|
if (n) {
|
|
2064
2070
|
t = t.toLowerCase();
|
|
@@ -2069,7 +2075,7 @@
|
|
|
2069
2075
|
} else for (let n = 0; n < r; n++) if (e[n] === t) return !0;
|
|
2070
2076
|
return !1;
|
|
2071
2077
|
}
|
|
2072
|
-
function
|
|
2078
|
+
function Wr(e, t) {
|
|
2073
2079
|
try {
|
|
2074
2080
|
let n = e.__md_iev__;
|
|
2075
2081
|
if (n) return n[t];
|
|
@@ -2077,35 +2083,35 @@
|
|
|
2077
2083
|
return;
|
|
2078
2084
|
}
|
|
2079
2085
|
}
|
|
2080
|
-
function
|
|
2086
|
+
function xr(e, t, n) {
|
|
2081
2087
|
let r = e.__md_iev__;
|
|
2082
2088
|
r || (r = {}, e.__md_iev__ = r), r[t] = n;
|
|
2083
2089
|
}
|
|
2084
|
-
function
|
|
2085
|
-
if (!
|
|
2090
|
+
function Kr(e, t, n, r) {
|
|
2091
|
+
if (!ur(e)) return vn("gobj is not a GObj"), null;
|
|
2086
2092
|
if (!t) return;
|
|
2087
|
-
let l =
|
|
2088
|
-
l || (l = [],
|
|
2093
|
+
let l = Wr(t, n);
|
|
2094
|
+
l || (l = [], xr(t, n, l));
|
|
2089
2095
|
try {
|
|
2090
|
-
|
|
2096
|
+
lr(l) && l.unshift(r);
|
|
2091
2097
|
} catch (e) {
|
|
2092
|
-
|
|
2098
|
+
vn(e);
|
|
2093
2099
|
}
|
|
2094
2100
|
}
|
|
2095
|
-
function
|
|
2096
|
-
if (!
|
|
2097
|
-
if (!
|
|
2098
|
-
let l =
|
|
2099
|
-
return l ? 0 === l.length ? (r &&
|
|
2101
|
+
function Yr(e, t, n, r) {
|
|
2102
|
+
if (!ur(e)) return vn("gobj is not a GObj"), null;
|
|
2103
|
+
if (!rr(t)) return vn("kw is not a dict"), null;
|
|
2104
|
+
let l = Wr(t, n);
|
|
2105
|
+
return l ? 0 === l.length ? (r && vn(`stack empty: ${n}`), null) : l[0] : (r && vn(`stack NOT FOUND: ${n}`), null);
|
|
2100
2106
|
}
|
|
2101
|
-
function
|
|
2102
|
-
return
|
|
2107
|
+
function Br(e, t, n) {
|
|
2108
|
+
return cr(n) ? vr(e, t, "__md_iev__`__msg_type__") : Dr(e, t, "__md_iev__", "__msg_type__", n), 0;
|
|
2103
2109
|
}
|
|
2104
|
-
function
|
|
2105
|
-
return
|
|
2110
|
+
function Jr(e, t) {
|
|
2111
|
+
return Sr(e, t, "__md_iev__`__msg_type__", "", 0);
|
|
2106
2112
|
}
|
|
2107
|
-
function
|
|
2108
|
-
void 0 !== n &&
|
|
2113
|
+
function qr(e, t, n) {
|
|
2114
|
+
void 0 !== n && or(n) || (n = "");
|
|
2109
2115
|
for (let r of Object.keys(e)) {
|
|
2110
2116
|
if (!Object.prototype.hasOwnProperty.call(e, r)) continue;
|
|
2111
2117
|
let l = (n.length ? "`" : "") + r;
|
|
@@ -2114,10 +2120,10 @@
|
|
|
2114
2120
|
r,
|
|
2115
2121
|
e[r],
|
|
2116
2122
|
n
|
|
2117
|
-
]),
|
|
2123
|
+
]), rr(e[r]) && qr(e[r], t, n), n = n.slice(0, -l.length);
|
|
2118
2124
|
}
|
|
2119
2125
|
}
|
|
2120
|
-
function
|
|
2126
|
+
function Hr(e, t, n, r) {
|
|
2121
2127
|
if (!e) return null;
|
|
2122
2128
|
let l, o = e.length;
|
|
2123
2129
|
for (l = 0; l < o; l++) {
|
|
@@ -2125,15 +2131,15 @@
|
|
|
2125
2131
|
if (o) {
|
|
2126
2132
|
let e = o.id;
|
|
2127
2133
|
if (e && e === n) return o;
|
|
2128
|
-
if (r &&
|
|
2129
|
-
let e =
|
|
2134
|
+
if (r && mr(o, t)) {
|
|
2135
|
+
let e = Hr(o[t], t, n, r);
|
|
2130
2136
|
if (e) return e;
|
|
2131
2137
|
}
|
|
2132
2138
|
}
|
|
2133
2139
|
}
|
|
2134
2140
|
return null;
|
|
2135
2141
|
}
|
|
2136
|
-
function
|
|
2142
|
+
function zr(e) {
|
|
2137
2143
|
function t(e) {
|
|
2138
2144
|
let t = e.replace(/-/g, "+").replace(/_/g, "/");
|
|
2139
2145
|
switch (t.length % 4) {
|
|
@@ -2164,10 +2170,10 @@
|
|
|
2164
2170
|
signature: t(n[2])
|
|
2165
2171
|
};
|
|
2166
2172
|
}
|
|
2167
|
-
function
|
|
2173
|
+
function Qr(e) {
|
|
2168
2174
|
return null == e ? "" : String(e).replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """).replace(/'/g, "'");
|
|
2169
2175
|
}
|
|
2170
|
-
var
|
|
2176
|
+
var Xr = class {
|
|
2171
2177
|
constructor(e) {
|
|
2172
2178
|
this.html = e, Object.freeze(this);
|
|
2173
2179
|
}
|
|
@@ -2175,41 +2181,41 @@
|
|
|
2175
2181
|
return this.html;
|
|
2176
2182
|
}
|
|
2177
2183
|
};
|
|
2178
|
-
function Xr(e) {
|
|
2179
|
-
return e instanceof Qr;
|
|
2180
|
-
}
|
|
2181
2184
|
function Zr(e) {
|
|
2185
|
+
return e instanceof Xr;
|
|
2186
|
+
}
|
|
2187
|
+
function el(e) {
|
|
2182
2188
|
const t = document.createElement("template");
|
|
2183
2189
|
return t.innerHTML = e.html.trim(), t.content;
|
|
2184
2190
|
}
|
|
2185
|
-
var
|
|
2186
|
-
function
|
|
2191
|
+
var tl = !1, nl = /* @__PURE__ */ new Set();
|
|
2192
|
+
function rl(e) {
|
|
2187
2193
|
const t = document.createElement("template");
|
|
2188
2194
|
return t.innerHTML = e.trim(), t.content.firstChild;
|
|
2189
2195
|
}
|
|
2190
|
-
function
|
|
2196
|
+
function ll(e) {
|
|
2191
2197
|
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();
|
|
2192
2198
|
return `${n}.${r}${l > 0 ? "-" : "+"}${t(Math.floor(Math.abs(l) / 60), 2)}${t(Math.abs(l) % 60, 2)}`;
|
|
2193
2199
|
}
|
|
2194
|
-
function
|
|
2200
|
+
function ol(e, t) {
|
|
2195
2201
|
if (!e) throw "ERROR: index_in_list() list empty";
|
|
2196
2202
|
for (let n = 0; n < e.length; n++) if (t === e[n]) return n;
|
|
2197
2203
|
return -1;
|
|
2198
2204
|
}
|
|
2199
|
-
function
|
|
2205
|
+
function sl() {
|
|
2200
2206
|
let e = "";
|
|
2201
2207
|
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;
|
|
2202
2208
|
}
|
|
2203
|
-
function
|
|
2209
|
+
function il(e) {
|
|
2204
2210
|
let t = null;
|
|
2205
2211
|
return "function" != typeof e && "object" != typeof e || (t = ("" + e).match(/function\s*([\w\$]*)\s*\(/)), null !== t ? t[1] + "()" : "";
|
|
2206
2212
|
}
|
|
2207
|
-
var
|
|
2208
|
-
function
|
|
2213
|
+
var _l = 256, al = 1e5;
|
|
2214
|
+
function ul(e) {
|
|
2209
2215
|
const t = String(e).replace(/`/g, "``");
|
|
2210
2216
|
return "[" === t[0] ? "[" + t : t;
|
|
2211
2217
|
}
|
|
2212
|
-
function
|
|
2218
|
+
function cl(e) {
|
|
2213
2219
|
if ("string" != typeof e) return null;
|
|
2214
2220
|
let t = [], n = "";
|
|
2215
2221
|
for (let r = 0; r < e.length; r++) if ("`" !== e[r]) n += e[r];
|
|
@@ -2230,17 +2236,17 @@
|
|
|
2230
2236
|
return null !== t ? t : "[" === e[0] && "[" === e[1] ? e.slice(1) : e;
|
|
2231
2237
|
});
|
|
2232
2238
|
}
|
|
2233
|
-
function
|
|
2239
|
+
function fl(e, t) {
|
|
2234
2240
|
return e === t || null !== e && null !== t && "object" == typeof e && "object" == typeof t && JSON.stringify(e) === JSON.stringify(t);
|
|
2235
2241
|
}
|
|
2236
|
-
function
|
|
2242
|
+
function gl(e) {
|
|
2237
2243
|
return "persistent-attrs-" + et(e);
|
|
2238
2244
|
}
|
|
2239
|
-
function
|
|
2240
|
-
if (
|
|
2245
|
+
function dl(e, t) {
|
|
2246
|
+
if (or(t)) {
|
|
2241
2247
|
if (-1 === t.indexOf("^")) {
|
|
2242
2248
|
let n, r, l = e.fkey;
|
|
2243
|
-
if (1 !==
|
|
2249
|
+
if (1 !== er(l)) return vn("bad fkey 1"), vn(e), vn(t), null;
|
|
2244
2250
|
for (const e of Object.keys(l)) {
|
|
2245
2251
|
n = e, r = l[e];
|
|
2246
2252
|
break;
|
|
@@ -2253,20 +2259,20 @@
|
|
|
2253
2259
|
}
|
|
2254
2260
|
{
|
|
2255
2261
|
let n = t.split("^");
|
|
2256
|
-
return 3 !== n.length ? (
|
|
2262
|
+
return 3 !== n.length ? (vn("bad fkey 2"), vn(e), vn(t), null) : {
|
|
2257
2263
|
topic_name: n[0],
|
|
2258
2264
|
id: n[1],
|
|
2259
2265
|
hook_name: n[2]
|
|
2260
2266
|
};
|
|
2261
2267
|
}
|
|
2262
2268
|
}
|
|
2263
|
-
return
|
|
2269
|
+
return rr(t) ? {
|
|
2264
2270
|
topic_name: t.topic_name,
|
|
2265
2271
|
id: t.id,
|
|
2266
2272
|
hook_name: t.hook_name
|
|
2267
|
-
} : (
|
|
2273
|
+
} : (vn("bad fkey 3"), vn(e), vn(t), null);
|
|
2268
2274
|
}
|
|
2269
|
-
var
|
|
2275
|
+
var bl = [
|
|
2270
2276
|
"string",
|
|
2271
2277
|
"integer",
|
|
2272
2278
|
"object",
|
|
@@ -2276,7 +2282,7 @@
|
|
|
2276
2282
|
"real",
|
|
2277
2283
|
"boolean",
|
|
2278
2284
|
"blob"
|
|
2279
|
-
],
|
|
2285
|
+
], pl = [
|
|
2280
2286
|
"persistent",
|
|
2281
2287
|
"required",
|
|
2282
2288
|
"notnull",
|
|
@@ -2288,7 +2294,7 @@
|
|
|
2288
2294
|
"stats",
|
|
2289
2295
|
"rstats",
|
|
2290
2296
|
"pstats"
|
|
2291
|
-
],
|
|
2297
|
+
], ml = [
|
|
2292
2298
|
"hook",
|
|
2293
2299
|
"fkey",
|
|
2294
2300
|
"enum",
|
|
@@ -2317,7 +2323,7 @@
|
|
|
2317
2323
|
"coordinates",
|
|
2318
2324
|
"gbuffer"
|
|
2319
2325
|
];
|
|
2320
|
-
function
|
|
2326
|
+
function hl(e) {
|
|
2321
2327
|
let t = {
|
|
2322
2328
|
name: e.id,
|
|
2323
2329
|
header: e.header,
|
|
@@ -2336,7 +2342,7 @@
|
|
|
2336
2342
|
if (!e.flag) return t;
|
|
2337
2343
|
for (let n = 0; n < e.flag.length; n++) {
|
|
2338
2344
|
let r = e.flag[n];
|
|
2339
|
-
if (
|
|
2345
|
+
if (Mr(ml, r)) {
|
|
2340
2346
|
switch (r) {
|
|
2341
2347
|
case "enum":
|
|
2342
2348
|
t.enum_list = e.enum;
|
|
@@ -2350,7 +2356,7 @@
|
|
|
2350
2356
|
case "file": t.is_file = !0;
|
|
2351
2357
|
}
|
|
2352
2358
|
t.type = r;
|
|
2353
|
-
} else if (
|
|
2359
|
+
} else if (Mr(pl, r)) switch (r) {
|
|
2354
2360
|
case "writable":
|
|
2355
2361
|
t.is_writable = !0;
|
|
2356
2362
|
break;
|
|
@@ -2363,23 +2369,23 @@
|
|
|
2363
2369
|
}
|
|
2364
2370
|
return t.is_file && (t.type = "file"), t;
|
|
2365
2371
|
}
|
|
2366
|
-
var
|
|
2372
|
+
var yl = [
|
|
2367
2373
|
j(y.DTP_POINTER, "subscriber", 0, null, "Subscriber of output events"),
|
|
2368
2374
|
j(y.DTP_BOOLEAN, "periodic", 0, 0, "True for periodic timeouts"),
|
|
2369
2375
|
j(y.DTP_INTEGER, "msec", 0, 0, "Timeout in milliseconds"),
|
|
2370
2376
|
v()
|
|
2371
|
-
],
|
|
2377
|
+
], El = {
|
|
2372
2378
|
periodic: !1,
|
|
2373
2379
|
msec: 0,
|
|
2374
2380
|
timer_id: -1
|
|
2375
|
-
},
|
|
2376
|
-
function
|
|
2381
|
+
}, Tl = null;
|
|
2382
|
+
function vl(e, t, n, r) {
|
|
2377
2383
|
let l = e.priv, o = l.periodic ? "EV_TIMEOUT_PERIODIC" : "EV_TIMEOUT";
|
|
2378
2384
|
return l.periodic && l.msec > 0 ? l.timer_id = setTimeout(function() {
|
|
2379
2385
|
Vt(e, "EV_TIMEOUT", {}, e);
|
|
2380
2386
|
}, 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;
|
|
2381
2387
|
}
|
|
2382
|
-
var
|
|
2388
|
+
var jl = {
|
|
2383
2389
|
mt_create: function(e) {
|
|
2384
2390
|
let t = e.priv;
|
|
2385
2391
|
const n = Ot(e, "subscriber");
|
|
@@ -2404,16 +2410,16 @@
|
|
|
2404
2410
|
},
|
|
2405
2411
|
mt_destroy: function(e) {}
|
|
2406
2412
|
};
|
|
2407
|
-
function jl(e, t) {
|
|
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);
|
|
2409
|
-
}
|
|
2410
2413
|
function Ol(e, t) {
|
|
2411
|
-
return e instanceof S ? "C_TIMER" !== Ze(e) ? (
|
|
2414
|
+
return e instanceof S ? "C_TIMER" !== Ze(e) ? (vn("not C_TIMER GObj"), -1) : (Nt(e, "periodic", !1), void $t(e, "msec", t)) : (vn("not GObj TYPE"), -1);
|
|
2415
|
+
}
|
|
2416
|
+
function Sl(e, t) {
|
|
2417
|
+
return e instanceof S ? "C_TIMER" !== Ze(e) ? (vn("not C_TIMER GObj"), -1) : (Nt(e, "periodic", !0), void $t(e, "msec", t)) : (vn("not GObj TYPE"), -1);
|
|
2412
2418
|
}
|
|
2413
|
-
function
|
|
2414
|
-
return e instanceof S ? "C_TIMER" !== Ze(e) ? (
|
|
2419
|
+
function wl(e) {
|
|
2420
|
+
return e instanceof S ? "C_TIMER" !== Ze(e) ? (vn("not C_TIMER GObj"), -1) : void $t(e, "msec", -1) : (vn("not GObj TYPE"), -1);
|
|
2415
2421
|
}
|
|
2416
|
-
var
|
|
2422
|
+
var Nl = [
|
|
2417
2423
|
j(y.DTP_BOOLEAN, "changesLost", 0, !1, "Set true to warn about leaving page"),
|
|
2418
2424
|
j(y.DTP_BOOLEAN, "browser_beforeunload", 0, !1, "Set true to refreshing browser"),
|
|
2419
2425
|
j(y.DTP_STRING, "__username__", 0, "", "Username"),
|
|
@@ -2433,63 +2439,63 @@
|
|
|
2433
2439
|
j(y.DTP_BOOLEAN, "developer", 0, !1, "Developer mode enabled"),
|
|
2434
2440
|
j(y.DTP_INTEGER, "periodic_timeout", 0, "1000", "Timeout periodic, in miliseconds."),
|
|
2435
2441
|
v()
|
|
2436
|
-
],
|
|
2437
|
-
function
|
|
2442
|
+
], $l = { gobj_timer: null }, Rl = null;
|
|
2443
|
+
function Dl(e, t, n, r) {
|
|
2438
2444
|
let l = yt(e, t);
|
|
2439
|
-
return
|
|
2445
|
+
return rr(l) || (l = {}), l[n] = r, St(e, t, l), De(e, t);
|
|
2440
2446
|
}
|
|
2441
|
-
function
|
|
2447
|
+
function kl(e) {
|
|
2442
2448
|
if (!0 === e || !1 === e) return e;
|
|
2443
2449
|
let t = String(null == e ? "" : e).toLowerCase();
|
|
2444
2450
|
return "true" === t || "set" === t || "false" !== t && "reset" !== t && ("" === t || isNaN(Number(t)) ? null : !!Number(t));
|
|
2445
2451
|
}
|
|
2446
|
-
function
|
|
2452
|
+
function Al() {
|
|
2447
2453
|
return `${ze()}^${He()}`;
|
|
2448
2454
|
}
|
|
2449
|
-
function
|
|
2455
|
+
function Il(e, t, n, r) {
|
|
2450
2456
|
return Xt(e, t, n), 0;
|
|
2451
2457
|
}
|
|
2452
|
-
var
|
|
2458
|
+
var Cl = {
|
|
2453
2459
|
mt_create: function(e) {
|
|
2454
2460
|
let t = e.priv;
|
|
2455
|
-
Rt(e, "start_date",
|
|
2461
|
+
Rt(e, "start_date", ll()), Rt(e, "node_uuid", sl()), e.priv.gobj_timer = Ce(Xe(e), "C_TIMER", {}, e), t.periodic_timeout = yt(e, "periodic_timeout"), function(e) {
|
|
2456
2462
|
let t = yt(e, "trace_levels");
|
|
2457
|
-
if (!
|
|
2463
|
+
if (!rr(t)) return 0;
|
|
2458
2464
|
let n = t.__global_trace__;
|
|
2459
|
-
if (
|
|
2465
|
+
if (lr(n)) {
|
|
2460
2466
|
Z(4294967295, !1);
|
|
2461
2467
|
for (let e of n) Q(e, !0);
|
|
2462
2468
|
}
|
|
2463
2469
|
for (const [n, r] of Object.entries(t)) {
|
|
2464
2470
|
let t = Oe(n);
|
|
2465
|
-
if (t) if (
|
|
2471
|
+
if (t) if (lr(r)) {
|
|
2466
2472
|
se(t, null, !1);
|
|
2467
2473
|
for (let e of r) se(t, e, !0);
|
|
2468
|
-
} else
|
|
2474
|
+
} else vn(`${Xe(e)}: trace_levels of ${n} MUST be a list`);
|
|
2469
2475
|
}
|
|
2470
2476
|
}(e), function(e) {
|
|
2471
2477
|
let t = yt(e, "no_trace_levels");
|
|
2472
|
-
if (!
|
|
2478
|
+
if (!rr(t)) return 0;
|
|
2473
2479
|
let n = t.__global_no_trace__;
|
|
2474
|
-
if (
|
|
2480
|
+
if (lr(n)) {
|
|
2475
2481
|
ee(4294967295, !1);
|
|
2476
2482
|
for (let e of n) X(e, !0);
|
|
2477
2483
|
}
|
|
2478
2484
|
for (const [n, r] of Object.entries(t)) {
|
|
2479
2485
|
let t = Oe(n);
|
|
2480
|
-
if (t) if (
|
|
2486
|
+
if (t) if (lr(r)) {
|
|
2481
2487
|
ie(t, null, !1);
|
|
2482
2488
|
for (let e of r) ie(t, e, !0);
|
|
2483
|
-
} else
|
|
2489
|
+
} else vn(`${Xe(e)}: no_trace_levels of ${n} MUST be a list`);
|
|
2484
2490
|
}
|
|
2485
2491
|
}(e);
|
|
2486
2492
|
},
|
|
2487
2493
|
mt_writing: function(e, t) {},
|
|
2488
2494
|
mt_start: function(e) {
|
|
2489
|
-
return
|
|
2495
|
+
return Sl(e.priv.gobj_timer, e.priv.periodic_timeout), 0;
|
|
2490
2496
|
},
|
|
2491
2497
|
mt_stop: function(e) {
|
|
2492
|
-
return
|
|
2498
|
+
return wl(e.priv.gobj_timer), Me(e), 0;
|
|
2493
2499
|
},
|
|
2494
2500
|
mt_destroy: function(e) {},
|
|
2495
2501
|
mt_play: function(e) {
|
|
@@ -2506,24 +2512,24 @@
|
|
|
2506
2512
|
case "get-global-no-trace": return l(0, 0, null, null, ne());
|
|
2507
2513
|
case "set-global-trace":
|
|
2508
2514
|
case "set-global-no-trace": {
|
|
2509
|
-
let r = "set-global-no-trace" === t, o = n.level, s =
|
|
2510
|
-
return o ? null === s ? l(0, -1, `${
|
|
2515
|
+
let r = "set-global-no-trace" === t, o = n.level, s = kl(n.set);
|
|
2516
|
+
return o ? null === s ? l(0, -1, `${Al()}: bitmask set or re-set?`, null, null) : (r ? X(o, s) : Q(o, s)) < 0 ? l(0, -1, `${Al()}: global trace level not found: ${o}`, null, null) : r ? (Dl(e, "no_trace_levels", "__global_no_trace__", ne()), l(0, 0, null, null, ne())) : (Dl(e, "trace_levels", "__global_trace__", te()), l(0, 0, null, null, te())) : l(0, -1, `${Al()}: what level?`, null, null);
|
|
2511
2517
|
}
|
|
2512
2518
|
case "get-gclass-trace":
|
|
2513
2519
|
case "get-gclass-no-trace":
|
|
2514
2520
|
case "set-gclass-trace":
|
|
2515
2521
|
case "set-gclass-no-trace": {
|
|
2516
2522
|
let r = t.indexOf("no-trace") >= 0, o = n.gclass_name || n.gclass || "", s = Oe(o);
|
|
2517
|
-
if (!s) return l(0, -1, `${
|
|
2523
|
+
if (!s) return l(0, -1, `${Al()}: what gclass is '${o}'?`, null, null);
|
|
2518
2524
|
if (0 === t.indexOf("get-")) return l(0, 0, null, null, r ? oe(s) : re(s));
|
|
2519
|
-
let i = n.level, _ =
|
|
2520
|
-
return i ? null === _ ? l(0, -1, `${
|
|
2525
|
+
let i = n.level, _ = kl(n.set);
|
|
2526
|
+
return i ? null === _ ? l(0, -1, `${Al()}: bitmask set or re-set?`, null, null) : (r ? ie(s, i, _) : se(s, i, _)) < 0 ? l(0, -1, `${Al()}: trace level of ${o} not found: ${i}`, null, null) : r ? (Dl(e, "no_trace_levels", o, oe(s)), l(0, 0, null, null, oe(s))) : (Dl(e, "trace_levels", o, le(s)), l(0, 0, null, null, re(s))) : l(0, -1, `${Al()}: what level?`, null, null);
|
|
2521
2527
|
}
|
|
2522
|
-
default: return l(0, -1, `${
|
|
2528
|
+
default: return l(0, -1, `${Al()}: command not available: ${t}`, null, null);
|
|
2523
2529
|
}
|
|
2524
2530
|
}
|
|
2525
2531
|
};
|
|
2526
|
-
var
|
|
2532
|
+
var Ll = "ievent_gate_stack", Pl = [
|
|
2527
2533
|
j(y.DTP_STRING, "wanted_yuno_role", E.SDF_RD, "", "wanted yuno role"),
|
|
2528
2534
|
j(y.DTP_STRING, "wanted_yuno_name", E.SDF_RD, "", "wanted yuno name"),
|
|
2529
2535
|
j(y.DTP_STRING, "wanted_yuno_service", E.SDF_RD, "", "wanted yuno service"),
|
|
@@ -2540,15 +2546,15 @@
|
|
|
2540
2546
|
j(y.DTP_INTEGER, "timeout_idack", E.SDF_RD, "5000", "timeout waiting idAck"),
|
|
2541
2547
|
j(y.DTP_POINTER, "subscriber", 0, 0, "subscriber of output-events. If null then subscriber is the parent"),
|
|
2542
2548
|
v()
|
|
2543
|
-
],
|
|
2549
|
+
], Ul = [
|
|
2544
2550
|
["ievents", "Trace inter-events with metadata of kw"],
|
|
2545
2551
|
["ievents2", "Trace inter-events with full kw"],
|
|
2546
2552
|
["identity-card", "Trace identity_card messages"]
|
|
2547
2553
|
];
|
|
2548
|
-
function
|
|
2554
|
+
function Fl(e) {
|
|
2549
2555
|
return !!(3 & x(e));
|
|
2550
2556
|
}
|
|
2551
|
-
var
|
|
2557
|
+
var Vl = {
|
|
2552
2558
|
url: null,
|
|
2553
2559
|
remote_yuno_name: null,
|
|
2554
2560
|
remote_yuno_role: null,
|
|
@@ -2558,23 +2564,23 @@
|
|
|
2558
2564
|
websocket: null,
|
|
2559
2565
|
inside_on_open: !1,
|
|
2560
2566
|
retry_ms: 0
|
|
2561
|
-
},
|
|
2562
|
-
function
|
|
2563
|
-
e.priv.websocket &&
|
|
2567
|
+
}, Gl = null;
|
|
2568
|
+
function Ml(e) {
|
|
2569
|
+
e.priv.websocket && vn("Websocket ALREADY setup");
|
|
2564
2570
|
const t = jt(e, "url");
|
|
2565
|
-
|
|
2571
|
+
On(`====> Starting WebSocket to '${t}' (${et(e)})`);
|
|
2566
2572
|
const n = ++e.priv.ws_seq;
|
|
2567
2573
|
let r;
|
|
2568
2574
|
try {
|
|
2569
2575
|
r = new WebSocket(t);
|
|
2570
2576
|
} catch (r) {
|
|
2571
|
-
return
|
|
2577
|
+
return vn(`${et(e)}: Cannot open WebSocket to '${t}', Error: ${r.message}`), Ut(e, "EV_ON_CLOSE", {
|
|
2572
2578
|
url: t,
|
|
2573
2579
|
ws_seq: n,
|
|
2574
2580
|
code: 1006,
|
|
2575
2581
|
reason: r.message,
|
|
2576
2582
|
was_clean: !1
|
|
2577
|
-
}, e) < 0 &&
|
|
2583
|
+
}, e) < 0 && Ol(e.priv.gobj_timer, Xl(e)), null;
|
|
2578
2584
|
}
|
|
2579
2585
|
return r ? (r.onopen = () => {
|
|
2580
2586
|
n !== e.priv.ws_seq || ot(e) || Vt(e, "EV_ON_OPEN", {
|
|
@@ -2587,69 +2593,69 @@
|
|
|
2587
2593
|
data: r.data
|
|
2588
2594
|
}, e);
|
|
2589
2595
|
}, r.onclose = (r) => {
|
|
2590
|
-
ot(e) || n === e.priv.ws_seq && (Tt(qe(), "browser_beforeunload") ?
|
|
2596
|
+
ot(e) || n === e.priv.ws_seq && (Tt(qe(), "browser_beforeunload") ? jn("Close websocket by unload page") : Vt(e, "EV_ON_CLOSE", {
|
|
2591
2597
|
url: t,
|
|
2592
2598
|
ws_seq: n,
|
|
2593
2599
|
code: r.code,
|
|
2594
2600
|
reason: r.reason,
|
|
2595
2601
|
was_clean: r.wasClean
|
|
2596
2602
|
}, e));
|
|
2597
|
-
}, r) : (
|
|
2603
|
+
}, r) : (vn(`${et(e)}: Failed to initialize WebSocket.`), null);
|
|
2598
2604
|
}
|
|
2599
|
-
function
|
|
2605
|
+
function Wl(e, t = 1e3, n = "") {
|
|
2600
2606
|
let r = e.priv, l = r.websocket;
|
|
2601
2607
|
if (r.websocket = null, l && l.readyState !== WebSocket.CLOSED && l.readyState !== WebSocket.CLOSING) {
|
|
2602
|
-
|
|
2608
|
+
On(`Closing WebSocket (Code: ${t}, Reason: "${n}")`);
|
|
2603
2609
|
try {
|
|
2604
2610
|
l.close(t, n);
|
|
2605
2611
|
} catch (t) {
|
|
2606
|
-
|
|
2612
|
+
vn(`${et(e)}: Error closing WebSocket: ${t.message}`);
|
|
2607
2613
|
}
|
|
2608
|
-
} else
|
|
2614
|
+
} else jn("WebSocket is already closed or in the process of closing.");
|
|
2609
2615
|
}
|
|
2610
|
-
function
|
|
2611
|
-
let r =
|
|
2616
|
+
function xl(e, t, n) {
|
|
2617
|
+
let r = ll();
|
|
2612
2618
|
try {
|
|
2613
|
-
|
|
2619
|
+
On("\n" + r + " " + t + "\n"), Mn(n);
|
|
2614
2620
|
} catch (e) {
|
|
2615
|
-
|
|
2621
|
+
On("ERROR in trace_inter_event: " + e);
|
|
2616
2622
|
}
|
|
2617
2623
|
}
|
|
2618
|
-
var
|
|
2624
|
+
var Kl = class {
|
|
2619
2625
|
constructor(e, t) {
|
|
2620
2626
|
this.event = e, this.kw = t || {};
|
|
2621
2627
|
}
|
|
2622
2628
|
};
|
|
2623
|
-
function
|
|
2629
|
+
function Yl(e, t, n, r) {
|
|
2624
2630
|
return function(e, t) {
|
|
2625
2631
|
let n = e.priv, r = JSON.stringify(t);
|
|
2626
|
-
if (
|
|
2632
|
+
if (Fl(e)) {
|
|
2627
2633
|
let n = jt(e, "url"), l = Xe(qe()) + " ==> " + n, o = yt(qe(), "trace_ievent_callback");
|
|
2628
|
-
o ? o(l, t, 1, r.length) :
|
|
2634
|
+
o ? o(l, t, 1, r.length) : xl(0, l, t);
|
|
2629
2635
|
}
|
|
2630
|
-
if (!n.websocket || n.websocket.readyState !== WebSocket.OPEN) return
|
|
2636
|
+
if (!n.websocket || n.websocket.readyState !== WebSocket.OPEN) return jn(`${et(e)}: send_iev(): websocket not open, message lost`), -1;
|
|
2631
2637
|
try {
|
|
2632
2638
|
n.websocket.send(r);
|
|
2633
2639
|
} catch (t) {
|
|
2634
|
-
|
|
2640
|
+
vn(`${et(e)}: send_iev(): ${t}`);
|
|
2635
2641
|
}
|
|
2636
2642
|
return 0;
|
|
2637
2643
|
}(e, function(e, t) {
|
|
2638
|
-
return
|
|
2644
|
+
return cr(e) ? (vn("iev_create() event NULL"), null) : new Kl(e, t);
|
|
2639
2645
|
}(t, n));
|
|
2640
2646
|
}
|
|
2641
|
-
function
|
|
2642
|
-
return
|
|
2647
|
+
function Bl(e, t, n) {
|
|
2648
|
+
return cr(n) && (n = jt(e, "wanted_yuno_service")), {
|
|
2643
2649
|
dst_yuno: jt(e, "wanted_yuno_name"),
|
|
2644
2650
|
dst_role: jt(e, "wanted_yuno_role"),
|
|
2645
2651
|
dst_service: n,
|
|
2646
2652
|
src_yuno: He(),
|
|
2647
2653
|
src_role: ze(),
|
|
2648
2654
|
src_service: t,
|
|
2649
|
-
host:
|
|
2655
|
+
host: sl()
|
|
2650
2656
|
};
|
|
2651
2657
|
}
|
|
2652
|
-
function
|
|
2658
|
+
function Jl(e) {
|
|
2653
2659
|
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");
|
|
2654
2660
|
i && i.length || (i = yt(qe(), "required_services"));
|
|
2655
2661
|
let _ = {
|
|
@@ -2667,34 +2673,34 @@
|
|
|
2667
2673
|
username: jt(qe(), "__username__"),
|
|
2668
2674
|
launch_id: 0,
|
|
2669
2675
|
yuno_startdate: jt(qe(), "start_date"),
|
|
2670
|
-
id:
|
|
2676
|
+
id: sl(),
|
|
2671
2677
|
user_agent: "undefined" != typeof window ? window.navigator.userAgent : "",
|
|
2672
2678
|
language: "undefined" != typeof window ? window.navigator.language : "",
|
|
2673
2679
|
required_services: i
|
|
2674
2680
|
};
|
|
2675
|
-
return
|
|
2681
|
+
return Kr(e, _, Ll, Bl(e, Xe(nt(e)), null)), Br(e, _, "__identity__"), Ol(t.gobj_timer, vt(e, "timeout_idack")), Yl(e, "EV_IDENTITY_CARD", _);
|
|
2676
2682
|
}
|
|
2677
|
-
function
|
|
2678
|
-
if (
|
|
2683
|
+
function ql(e, t) {
|
|
2684
|
+
if (cr(t.event)) return -1;
|
|
2679
2685
|
let n = {}, r = t.__global__, l = t.__config__, o = t.__filter__, s = t.__service__, i = t.subscriber;
|
|
2680
2686
|
l && (n.__config__ = l), r && (n.__global__ = r), o && (n.__filter__ = o);
|
|
2681
|
-
return
|
|
2682
|
-
}
|
|
2683
|
-
function ql(e, t, n, r) {
|
|
2684
|
-
let l = e.priv;
|
|
2685
|
-
return Ke(e) && (l.websocket = Gl(e)), 0;
|
|
2687
|
+
return Kr(e, n, Ll, Bl(e, Xe(i), s)), Br(e, n, "__subscribing__"), Yl(e, t.event, n);
|
|
2686
2688
|
}
|
|
2687
2689
|
function Hl(e, t, n, r) {
|
|
2688
|
-
|
|
2690
|
+
let l = e.priv;
|
|
2691
|
+
return Ke(e) && (l.websocket = Ml(e)), 0;
|
|
2689
2692
|
}
|
|
2690
2693
|
function zl(e, t, n, r) {
|
|
2694
|
+
return On("Websocket opened: " + e.priv.url), Jl(e), 0;
|
|
2695
|
+
}
|
|
2696
|
+
function Ql(e, t, n, r) {
|
|
2691
2697
|
let l = e.priv, o = n.url;
|
|
2692
|
-
return void 0 !== n.ws_seq && n.ws_seq !== l.ws_seq || (bn(),
|
|
2698
|
+
return void 0 !== n.ws_seq && n.ws_seq !== l.ws_seq || (bn(), jn(`${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", {
|
|
2693
2699
|
url: o,
|
|
2694
2700
|
remote_yuno_name: l.remote_yuno_name,
|
|
2695
2701
|
remote_yuno_role: l.remote_yuno_role,
|
|
2696
2702
|
remote_yuno_service: l.remote_yuno_service
|
|
2697
|
-
})) : Ke(e) && (
|
|
2703
|
+
})) : Ke(e) && (jn(`${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", {
|
|
2698
2704
|
url: o,
|
|
2699
2705
|
remote_yuno_name: l.remote_yuno_name,
|
|
2700
2706
|
remote_yuno_role: l.remote_yuno_role,
|
|
@@ -2702,25 +2708,25 @@
|
|
|
2702
2708
|
code: n.code,
|
|
2703
2709
|
reason: n.reason,
|
|
2704
2710
|
was_clean: n.was_clean
|
|
2705
|
-
})), Ke(e) &&
|
|
2711
|
+
})), Ke(e) && Ol(l.gobj_timer, Xl(e))), 0;
|
|
2706
2712
|
}
|
|
2707
|
-
function
|
|
2713
|
+
function Xl(e) {
|
|
2708
2714
|
let t = e.priv, n = vt(e, "timeout_retry"), r = vt(e, "timeout_retry_max");
|
|
2709
2715
|
r < n && (r = n), t.retry_ms = t.retry_ms ? Math.min(2 * t.retry_ms, r) : n;
|
|
2710
2716
|
let l = .2 * t.retry_ms, o = t.retry_ms - l + 2 * Math.random() * l;
|
|
2711
2717
|
return Math.max(1, Math.round(o));
|
|
2712
2718
|
}
|
|
2713
|
-
function Xl(e, t, n, r) {
|
|
2714
|
-
return Bl(e), 0;
|
|
2715
|
-
}
|
|
2716
2719
|
function Zl(e, t, n, r) {
|
|
2720
|
+
return Jl(e), 0;
|
|
2721
|
+
}
|
|
2722
|
+
function eo(e, t, n, r) {
|
|
2717
2723
|
let l = e.priv;
|
|
2718
|
-
|
|
2719
|
-
let o =
|
|
2724
|
+
wl(l.gobj_timer);
|
|
2725
|
+
let o = Yr(e, n, Ll, !0), s = Sr(e, o, "src_yuno", ""), i = Sr(e, o, "src_role", ""), _ = Sr(e, o, "src_service", "");
|
|
2720
2726
|
Rt(e, "remote_yuno_name", s), Rt(e, "remote_yuno_role", i), Rt(e, "remote_yuno_service", _);
|
|
2721
|
-
let a =
|
|
2727
|
+
let a = Or(e, n, "result", -1, 0), u = Sr(e, n, "comment", "", 0), c = Sr(e, n, "username", "", 0), f = $r(e, n, "services_roles", {});
|
|
2722
2728
|
if (a < 0) {
|
|
2723
|
-
|
|
2729
|
+
Wl(e);
|
|
2724
2730
|
let t = {
|
|
2725
2731
|
url: jt(e, "url"),
|
|
2726
2732
|
result: a,
|
|
@@ -2745,61 +2751,61 @@
|
|
|
2745
2751
|
}
|
|
2746
2752
|
l.inside_on_open = !1, function(e) {
|
|
2747
2753
|
let t = zt(e, null, null, null);
|
|
2748
|
-
for (let n = 0; n < t.length; n++)
|
|
2754
|
+
for (let n = 0; n < t.length; n++) ql(e, t[n]);
|
|
2749
2755
|
}(e);
|
|
2750
2756
|
}
|
|
2751
2757
|
return 0;
|
|
2752
2758
|
}
|
|
2753
|
-
function
|
|
2759
|
+
function to(e, t, n, r) {
|
|
2754
2760
|
let l = e.priv.url, o = function(e, t) {
|
|
2755
2761
|
let n;
|
|
2756
2762
|
try {
|
|
2757
2763
|
n = JSON.parse(t);
|
|
2758
2764
|
} catch (t) {
|
|
2759
|
-
return
|
|
2765
|
+
return jn(`${et(e)}: parsing inter_event json: ${t}`), null;
|
|
2760
2766
|
}
|
|
2761
|
-
if (!(n instanceof Object)) return
|
|
2767
|
+
if (!(n instanceof Object)) return jn(`${et(e)}: parsing inter_event: websocket data not a json object`), null;
|
|
2762
2768
|
let r = n.event;
|
|
2763
|
-
if (!r) return
|
|
2764
|
-
if ("string" != typeof r) return
|
|
2769
|
+
if (!r) return jn(`${et(e)}: parsing inter_event: no event`), null;
|
|
2770
|
+
if ("string" != typeof r) return jn(`${et(e)}: parsing inter_event: event not a string`), null;
|
|
2765
2771
|
let l = n.kw;
|
|
2766
2772
|
return l ? l instanceof Object ? {
|
|
2767
2773
|
event: r,
|
|
2768
2774
|
kw: l || {}
|
|
2769
|
-
} : (
|
|
2775
|
+
} : (jn(`${et(e)}: parsing inter_event: kw not a json object`), null) : (jn(`${et(e)}: parsing inter_kw: no kw`), null);
|
|
2770
2776
|
}(e, n.data);
|
|
2771
|
-
if (!o) return
|
|
2772
|
-
if (
|
|
2777
|
+
if (!o) return jn(`${et(e)}: frame dropped from ${l}: ${String(n.data).substring(0, 256)}`), -1;
|
|
2778
|
+
if (Fl(e)) {
|
|
2773
2779
|
let e = Xe(qe()) + " <== " + l, t = n.data.length, r = yt(qe(), "trace_ievent_callback");
|
|
2774
|
-
r ? r(e, o, 2, t) :
|
|
2780
|
+
r ? r(e, o, 2, t) : xl(0, e, o);
|
|
2775
2781
|
}
|
|
2776
2782
|
let s = o.event, i = o.kw;
|
|
2777
2783
|
if ("ST_SESSION" !== kt(e)) {
|
|
2778
2784
|
if (It(e, s, R.EVF_PUBLIC_EVENT)) {
|
|
2779
2785
|
if (!(Vt(e, s, i, e) < 0)) return 0;
|
|
2780
|
-
} else
|
|
2781
|
-
return
|
|
2786
|
+
} else vn(`${et(e)}: event UNKNOWN in not-session state ${s}`);
|
|
2787
|
+
return Wl(e), -1;
|
|
2782
2788
|
}
|
|
2783
2789
|
o = null;
|
|
2784
|
-
let _ =
|
|
2785
|
-
if (u.toLowerCase() !== ze().toLowerCase()) return
|
|
2786
|
-
let c =
|
|
2787
|
-
if ("__subscribing__" === _) return
|
|
2788
|
-
if ("__unsubscribing__" === _) return
|
|
2790
|
+
let _ = Jr(e, i), a = Yr(e, i, Ll), u = Sr(e, a, "dst_role", "");
|
|
2791
|
+
if (u.toLowerCase() !== ze().toLowerCase()) return vn(`"It's not my role, dst_role: ${u}, my_role: ${ze()}`), 0;
|
|
2792
|
+
let c = Sr(e, a, "dst_service", "");
|
|
2793
|
+
if ("__subscribing__" === _) return jn(`${et(e)}: subscription event ignored, I'm client (service: ${c}, event: ${s})`), -1;
|
|
2794
|
+
if ("__unsubscribing__" === _) return jn(`${et(e)}: unsubscription event ignored, I'm client (service: ${c}, event: ${s})`), -1;
|
|
2789
2795
|
if (It(e, s, R.EVF_PUBLIC_EVENT)) return Vt(e, s, i, e), 0;
|
|
2790
|
-
if (!
|
|
2796
|
+
if (!cr(c)) {
|
|
2791
2797
|
let t = we(c, !1);
|
|
2792
|
-
return t ? It(t, s, R.EVF_PUBLIC_EVENT) ? (Vt(t, s, i, e), 0) : (
|
|
2798
|
+
return t ? It(t, s, R.EVF_PUBLIC_EVENT) ? (Vt(t, s, i, e), 0) : (vn(`${et(e)}: Service found but no event or not public, service '${et(t)}', ev '${s}'`), -1) : (jn(`${et(e)}: event for a service that is gone, DROPPED: service '${c}', ev '${s}'`), 0);
|
|
2793
2799
|
}
|
|
2794
2800
|
return lt(e) ? Vt(nt(e), s, i, e) : Xt(e, s, i), 0;
|
|
2795
2801
|
}
|
|
2796
|
-
function
|
|
2802
|
+
function no(e, t, n, r) {
|
|
2797
2803
|
return 0;
|
|
2798
2804
|
}
|
|
2799
|
-
function
|
|
2805
|
+
function ro(e, t, n, r) {
|
|
2800
2806
|
return 0;
|
|
2801
2807
|
}
|
|
2802
|
-
var
|
|
2808
|
+
var lo = {
|
|
2803
2809
|
mt_create: function(e) {
|
|
2804
2810
|
let t = e.priv;
|
|
2805
2811
|
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);
|
|
@@ -2829,52 +2835,52 @@
|
|
|
2829
2835
|
code: 1e3,
|
|
2830
2836
|
reason: "restarted",
|
|
2831
2837
|
was_clean: !0
|
|
2832
|
-
}, e),
|
|
2838
|
+
}, e), wl(t.gobj_timer)), t.websocket = Ml(e), 0;
|
|
2833
2839
|
},
|
|
2834
2840
|
mt_stop: function(e) {
|
|
2835
2841
|
let t = e.priv;
|
|
2836
|
-
return
|
|
2842
|
+
return wl(t.gobj_timer), t.websocket && Wl(e), 0;
|
|
2837
2843
|
},
|
|
2838
2844
|
mt_destroy: function(e) {},
|
|
2839
2845
|
mt_stats: function(e, t, n, r) {
|
|
2840
|
-
if ("ST_SESSION" !== kt(e)) return
|
|
2846
|
+
if ("ST_SESSION" !== kt(e)) return vn("Not in session"), null;
|
|
2841
2847
|
n || (n = {});
|
|
2842
|
-
let l =
|
|
2843
|
-
return o || (o = {}),
|
|
2848
|
+
let l = Bl(e, Xe(r), Sr(e, n, "service", null, 0)), o = $r(e, n, "__md_stats__", null, Zt.KW_EXTRACT);
|
|
2849
|
+
return o || (o = {}), Kr(e, n, "stats_stack", {
|
|
2844
2850
|
stats: t,
|
|
2845
2851
|
kw: o
|
|
2846
|
-
}),
|
|
2852
|
+
}), Kr(e, n, Ll, l), n.__stats__ = t, Br(e, n, "__stats__"), Yl(e, "EV_MT_STATS", n, r), null;
|
|
2847
2853
|
},
|
|
2848
2854
|
mt_command_parser: function(e, t, n, r) {
|
|
2849
|
-
if ("ST_SESSION" !== kt(e)) return
|
|
2855
|
+
if ("ST_SESSION" !== kt(e)) return vn("Not in session"), null;
|
|
2850
2856
|
n || (n = {});
|
|
2851
|
-
let l =
|
|
2852
|
-
return o || (o = {}),
|
|
2857
|
+
let l = Bl(e, Xe(r), Sr(e, n, "service", "", 0)), o = $r(e, n, "__md_command__", null, Zt.KW_EXTRACT);
|
|
2858
|
+
return o || (o = {}), Kr(e, n, "command_stack", {
|
|
2853
2859
|
command: t,
|
|
2854
2860
|
kw: o
|
|
2855
|
-
}),
|
|
2861
|
+
}), Kr(e, n, Ll, l), n.__command__ = t, Br(e, n, "__command__"), Yl(e, "EV_MT_COMMAND", n, r), null;
|
|
2856
2862
|
},
|
|
2857
2863
|
mt_inject_event: function(e, t, n, r) {
|
|
2858
2864
|
if ("ST_SESSION" !== kt(e)) return window.console.error("Not in session"), -1;
|
|
2859
|
-
if (n =
|
|
2865
|
+
if (n = Kn({}, rr(n) ? n : {}), rr(n.__md_iev__) && (n.__md_iev__ = Wn(n.__md_iev__)), Yr(e, n, Ll));
|
|
2860
2866
|
else {
|
|
2861
|
-
let l =
|
|
2862
|
-
|
|
2867
|
+
let l = Bl(e, Xe(r), Sr(e, n, "__service__", 0, 0));
|
|
2868
|
+
qn(n, "__service__"), Kr(e, n, "__message__", t), Kr(e, n, Ll, l);
|
|
2863
2869
|
}
|
|
2864
|
-
return
|
|
2870
|
+
return Br(e, n, "__message__"), Yl(e, t, n, r);
|
|
2865
2871
|
},
|
|
2866
2872
|
mt_subscription_added: function(e, t) {
|
|
2867
2873
|
let n = e.priv;
|
|
2868
|
-
return "ST_SESSION" === kt(e) && n.websocket ? n.inside_on_open ? 0 :
|
|
2874
|
+
return "ST_SESSION" === kt(e) && n.websocket ? n.inside_on_open ? 0 : ql(e, t) : 0;
|
|
2869
2875
|
},
|
|
2870
2876
|
mt_subscription_deleted: function(e, t) {
|
|
2871
2877
|
let n = e.priv;
|
|
2872
2878
|
if ("ST_SESSION" !== kt(e) || !n.websocket) return 0;
|
|
2873
2879
|
if (n.inside_on_open) return 0;
|
|
2874
|
-
if (
|
|
2880
|
+
if (cr(t.event)) return 0;
|
|
2875
2881
|
let r = {}, l = t.__global__, o = t.__config__, s = t.__filter__, i = t.__service__, _ = t.subscriber;
|
|
2876
2882
|
o && (r.__config__ = o), l && (r.__global__ = l), s && (r.__filter__ = s);
|
|
2877
|
-
return
|
|
2883
|
+
return Kr(e, r, Ll, Bl(e, Xe(_), i)), Br(e, r, "__unsubscribing__"), Yl(e, t.event, r, e);
|
|
2878
2884
|
}
|
|
2879
2885
|
};
|
|
2880
2886
|
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__", {
|
|
@@ -2888,55 +2894,55 @@
|
|
|
2888
2894
|
return t;
|
|
2889
2895
|
}, e.build_stats_response = o, e.clean_name = function(e) {
|
|
2890
2896
|
return e.replace(/[?# ^:]/g, "_");
|
|
2891
|
-
}, e.clear_timeout =
|
|
2897
|
+
}, e.clear_timeout = wl, e.cmp_two_simple_json = br, e.command_parser = function(e, t, n, r) {}, e.createElement2 = function e(t, n) {
|
|
2892
2898
|
let [r, l, o, s] = t;
|
|
2893
|
-
if (!r) return void
|
|
2899
|
+
if (!r) return void vn("Tag must be a valid HTML element.");
|
|
2894
2900
|
let i = document.createElement(r), _ = "";
|
|
2895
2901
|
if (l && "object" == typeof l) for (let e of Object.keys(l)) if ("style" === e && "object" == typeof l[e]) {
|
|
2896
2902
|
let t = "";
|
|
2897
2903
|
for (const n of Object.keys(l[e])) t += `${n}: ${l[e][n]};`;
|
|
2898
2904
|
i.style.cssText = t;
|
|
2899
2905
|
} 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]);
|
|
2900
|
-
if (
|
|
2901
|
-
else if (
|
|
2906
|
+
if (Zr(o)) i.appendChild(el(o));
|
|
2907
|
+
else if (or(o)) if (o = o.trim(), o.length > 0 && "<" === o[0] && !tl) i.appendChild(rl(o));
|
|
2902
2908
|
else if (o.length > 0 && "<" === o[0] && function(e) {
|
|
2903
|
-
if (
|
|
2909
|
+
if (nl.size >= 100) return;
|
|
2904
2910
|
const t = e.slice(0, 80);
|
|
2905
|
-
|
|
2911
|
+
nl.has(t) || (nl.add(t), jn(`createElement2: a string that starts with '<' is TEXT (set_strings_are_text): use html_markup() if it is markup: ${JSON.stringify(t)}`));
|
|
2906
2912
|
}(o), n && _) i.textContent = n(_) || o;
|
|
2907
2913
|
else i.textContent = o;
|
|
2908
|
-
else if (
|
|
2909
|
-
if (o.length > 0) if (
|
|
2910
|
-
else for (let t of o) Array.isArray(t) ? t.length > 0 && i.appendChild(e(t, n)) : t instanceof Node ? i.appendChild(t) :
|
|
2911
|
-
} else o instanceof HTMLElement || o instanceof Text || o instanceof SVGElement ? i.appendChild(o) : null != o && (
|
|
2914
|
+
else if (lr(o)) {
|
|
2915
|
+
if (o.length > 0) if (or(o[0])) i.appendChild(e(o, n));
|
|
2916
|
+
else for (let t of o) Array.isArray(t) ? t.length > 0 && i.appendChild(e(t, n)) : t instanceof Node ? i.appendChild(t) : Zr(t) ? i.appendChild(el(t)) : or(t) ? i.appendChild(document.createTextNode(t)) : null != t && !1 !== t && vn("createElement2: child ignored, type " + typeof t);
|
|
2917
|
+
} else o instanceof HTMLElement || o instanceof Text || o instanceof SVGElement ? i.appendChild(o) : null != o && (vn("content ignored"), wn(o));
|
|
2912
2918
|
if (s && "object" == typeof s) for (const e of Object.keys(s)) i.addEventListener(e, s[e]);
|
|
2913
2919
|
return i;
|
|
2914
|
-
}, e.createOneHtml =
|
|
2915
|
-
let n =
|
|
2916
|
-
return
|
|
2920
|
+
}, e.createOneHtml = rl, e.create_json_record = function(e, t) {
|
|
2921
|
+
let n = Wn(e);
|
|
2922
|
+
return Yn(n, t), n;
|
|
2917
2923
|
}, e.create_template_record = function(e, t) {
|
|
2918
2924
|
let n = {};
|
|
2919
2925
|
return t || (t = {}), Object.entries(e).forEach(([e, r]) => {
|
|
2920
2926
|
let l;
|
|
2921
|
-
|
|
2922
|
-
let o =
|
|
2923
|
-
|
|
2927
|
+
rr(r) && (l = r.default);
|
|
2928
|
+
let o = $r(null, t, e, l);
|
|
2929
|
+
Hn(n, e, o);
|
|
2924
2930
|
}), n;
|
|
2925
|
-
}, e.current_timestamp =
|
|
2926
|
-
let n =
|
|
2927
|
-
return n &&
|
|
2931
|
+
}, e.current_timestamp = ll, e.data_type_t = y, e.db_list_persistent_attrs = function(e, t) {
|
|
2932
|
+
let n = Lr(gl(e), null, !1), r = {};
|
|
2933
|
+
return n && rr(n) && (r = Ir(e, n, t, !1)), r;
|
|
2928
2934
|
}, e.db_load_persistent_attrs = function(e, t) {
|
|
2929
|
-
let n = Et(e, E.SDF_PERSIST), r =
|
|
2930
|
-
if (r &&
|
|
2931
|
-
let l =
|
|
2932
|
-
l =
|
|
2935
|
+
let n = Et(e, E.SDF_PERSIST), r = Lr(gl(e), null, !1);
|
|
2936
|
+
if (r && rr(r)) {
|
|
2937
|
+
let l = Ir(e, r, t, !1);
|
|
2938
|
+
l = Ir(e, l, n, !1), wt(e, l, E.SDF_PERSIST);
|
|
2933
2939
|
}
|
|
2934
2940
|
}, e.db_remove_persistent_attrs = function(e, t) {
|
|
2935
|
-
let n =
|
|
2936
|
-
0 ===
|
|
2941
|
+
let n = Cr(e, Lr(gl(e), null, !1), t, !1);
|
|
2942
|
+
0 === er(n) ? Ur(gl(e)) : Pr(gl(e), n);
|
|
2937
2943
|
}, e.db_save_persistent_attrs = function(e, t) {
|
|
2938
|
-
let n =
|
|
2939
|
-
return r &&
|
|
2944
|
+
let n = Ir(e, Et(e, E.SDF_PERSIST), t, !1), r = Lr(gl(e), null, !1);
|
|
2945
|
+
return r && rr(r) && Bn(n, r), Pr(gl(e), n);
|
|
2940
2946
|
}, e.debounce = function(e, t = 0, n = !1) {
|
|
2941
2947
|
let r = null, l = null, o = null;
|
|
2942
2948
|
const s = (...s) => {
|
|
@@ -2956,24 +2962,24 @@
|
|
|
2956
2962
|
return !1;
|
|
2957
2963
|
}, e.duplicate_objects = function(...e) {
|
|
2958
2964
|
const t = {};
|
|
2959
|
-
for (const n of e)
|
|
2965
|
+
for (const n of e) Kn(t, structuredClone(n));
|
|
2960
2966
|
return t;
|
|
2961
2967
|
}, e.empty_json = function(e) {
|
|
2962
|
-
return 0 ===
|
|
2963
|
-
}, e.empty_string =
|
|
2968
|
+
return 0 === nr(e);
|
|
2969
|
+
}, e.empty_string = cr, e.escapeHtml = Qr, e.event_flag_t = R, e.flat2json = function(e) {
|
|
2964
2970
|
if (null === e || "object" != typeof e || Array.isArray(e)) throw new Error("flat2json: a flat json is an object of id -> value");
|
|
2965
2971
|
let t = null;
|
|
2966
2972
|
for (const n of Object.keys(e)) {
|
|
2967
|
-
const r =
|
|
2973
|
+
const r = cl(n);
|
|
2968
2974
|
if (!r || 0 === r.length) throw new Error(`flat2json: malformed flat id: '${n}'`);
|
|
2969
|
-
if (r.length >
|
|
2975
|
+
if (r.length > _l) throw new Error(`flat2json: '${n}' deeper than 256`);
|
|
2970
2976
|
const l = "number" == typeof r[0];
|
|
2971
2977
|
if (null === t) t = l ? [] : {};
|
|
2972
2978
|
else if (l !== Array.isArray(t)) throw new Error(`flat2json: '${n}' does not fit a ${Array.isArray(t) ? "array" : "object"} root`);
|
|
2973
2979
|
let o = t;
|
|
2974
2980
|
for (let t = 0; t < r.length; t++) {
|
|
2975
2981
|
const l = r[t], s = "number" == typeof l, i = t === r.length - 1, _ = !i && "number" == typeof r[t + 1];
|
|
2976
|
-
if (s && l >
|
|
2982
|
+
if (s && l > al) throw new Error(`flat2json: array index ${l} over the limit (100000) in '${n}'`);
|
|
2977
2983
|
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"}`);
|
|
2978
2984
|
if (i) {
|
|
2979
2985
|
if (Array.isArray(o)) {
|
|
@@ -2981,7 +2987,7 @@
|
|
|
2981
2987
|
o[l] = e[n];
|
|
2982
2988
|
} else {
|
|
2983
2989
|
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`);
|
|
2984
|
-
|
|
2990
|
+
yr(o, l, e[n]);
|
|
2985
2991
|
}
|
|
2986
2992
|
break;
|
|
2987
2993
|
}
|
|
@@ -2989,7 +2995,7 @@
|
|
|
2989
2995
|
if (Array.isArray(o)) {
|
|
2990
2996
|
for (; o.length <= l;) o.push(null);
|
|
2991
2997
|
a = o[l], null == a && (a = _ ? [] : {}, o[l] = a);
|
|
2992
|
-
} else a =
|
|
2998
|
+
} else a = hr(o, l) ? void 0 : o[l], void 0 === a && (a = _ ? [] : {}, yr(o, l, a));
|
|
2993
2999
|
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`);
|
|
2994
3000
|
if (_ !== Array.isArray(a)) throw new Error(`flat2json: '${n}' needs a ${_ ? "array" : "object"} where the tree already has a ${Array.isArray(a) ? "array" : "object"}`);
|
|
2995
3001
|
o = a;
|
|
@@ -3000,11 +3006,11 @@
|
|
|
3000
3006
|
if (null === e || "object" != typeof e || Array.isArray(e)) throw new Error("flat_apply: a flat json is an object of id -> value");
|
|
3001
3007
|
if (null === t || "object" != typeof t) throw new Error("flat_apply: a diff is the object flat_diff() answers");
|
|
3002
3008
|
for (const n of Object.keys(t.removed || {})) delete e[n];
|
|
3003
|
-
for (const n of Object.keys(t.added || {}))
|
|
3009
|
+
for (const n of Object.keys(t.added || {})) yr(e, n, t.added[n]);
|
|
3004
3010
|
for (const n of Object.keys(t.changed || {})) {
|
|
3005
3011
|
const r = t.changed[n];
|
|
3006
3012
|
if (!r || !Object.prototype.hasOwnProperty.call(r, "to")) throw new Error(`flat_apply: changed '${n}' without a 'to'`);
|
|
3007
|
-
|
|
3013
|
+
yr(e, n, r.to);
|
|
3008
3014
|
}
|
|
3009
3015
|
return e;
|
|
3010
3016
|
}, e.flat_diff = function(e, t) {
|
|
@@ -3013,15 +3019,15 @@
|
|
|
3013
3019
|
removed: {},
|
|
3014
3020
|
changed: {}
|
|
3015
3021
|
};
|
|
3016
|
-
for (const e of Object.keys(n)) Object.prototype.hasOwnProperty.call(r, e) ?
|
|
3022
|
+
for (const e of Object.keys(n)) Object.prototype.hasOwnProperty.call(r, e) ? fl(n[e], r[e]) || yr(l.changed, e, {
|
|
3017
3023
|
from: n[e],
|
|
3018
3024
|
to: r[e]
|
|
3019
|
-
}) :
|
|
3020
|
-
for (const e of Object.keys(r)) Object.prototype.hasOwnProperty.call(n, e) ||
|
|
3025
|
+
}) : yr(l.removed, e, n[e]);
|
|
3026
|
+
for (const e of Object.keys(r)) Object.prototype.hasOwnProperty.call(n, e) || yr(l.added, e, r[e]);
|
|
3021
3027
|
return l;
|
|
3022
3028
|
}, e.flat_key_join = function(e) {
|
|
3023
|
-
return Array.isArray(e) && 0 !== e.length ? e.map((e) => "number" == typeof e ? `[${e}]` :
|
|
3024
|
-
}, e.flat_key_split =
|
|
3029
|
+
return Array.isArray(e) && 0 !== e.length ? e.map((e) => "number" == typeof e ? `[${e}]` : ul(e)).join("`") : "";
|
|
3030
|
+
}, e.flat_key_split = cl, 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) {
|
|
3025
3031
|
if (!e) return {
|
|
3026
3032
|
top: 0,
|
|
3027
3033
|
left: 0,
|
|
@@ -3040,17 +3046,17 @@
|
|
|
3040
3046
|
right: n + i + r,
|
|
3041
3047
|
bottom: t + s + l
|
|
3042
3048
|
};
|
|
3043
|
-
}, e.get_function_name =
|
|
3049
|
+
}, e.get_function_name = il, e.get_now = function() {
|
|
3044
3050
|
return Math.floor(Date.now() / 1e3);
|
|
3045
3051
|
}, e.gobj_bottom_gobj = st, e.gobj_change_parent = function(e, t) {
|
|
3046
|
-
return ot(e) ? (
|
|
3052
|
+
return ot(e) ? (vn("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) && On(n("👦👦🔵 child_added(%s): %s", tt(t), et(e))), t.gclass.gmt.mt_child_added(t, e)), 0) : (vn(`${et(e)}: gobj_change_parent() BAD TYPE of parent`), -1);
|
|
3047
3053
|
}, e.gobj_change_state = Dt, e.gobj_command = function(e, t, r, o) {
|
|
3048
|
-
if (ot(e)) return
|
|
3054
|
+
if (ot(e)) return vn("gobj NULL or DESTROYED"), -1;
|
|
3049
3055
|
if (function(e) {
|
|
3050
3056
|
return G > 1 || !!e && !!(x(e) & P.TRACE_COMMANDS);
|
|
3051
3057
|
}(e) || H(e, null) && !z(o, null)) {
|
|
3052
|
-
let l =
|
|
3053
|
-
L(n("🌀🌀 mach(%s%s), cmd: %s, src: %s", Ke(e) ? "" : "!!", et(e), null !== l ? l : t, et(o))), q(e) &&
|
|
3058
|
+
let l = Ln(t);
|
|
3059
|
+
L(n("🌀🌀 mach(%s%s), cmd: %s, src: %s", Ke(e) ? "" : "!!", et(e), null !== l ? l : t, et(o))), q(e) && Mn(r);
|
|
3054
3060
|
}
|
|
3055
3061
|
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);
|
|
3056
3062
|
}, e.gobj_create = function(e, t, n, r) {
|
|
@@ -3064,7 +3070,7 @@
|
|
|
3064
3070
|
}, e.gobj_create_yuno = function(e, t, n) {
|
|
3065
3071
|
return Ie(e, t, n, null, N.gobj_flag_yuno);
|
|
3066
3072
|
}, 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) {
|
|
3067
|
-
if (
|
|
3073
|
+
if (cr(t)) return null;
|
|
3068
3074
|
const n = t.toLowerCase();
|
|
3069
3075
|
return "__default_service__" === n ? m : "__yuno__" === n || "__root__" === n ? p : mt(p, t);
|
|
3070
3076
|
}, 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() {
|
|
@@ -3076,24 +3082,24 @@
|
|
|
3076
3082
|
}, e.gobj_list_subscriptions = function(e) {
|
|
3077
3083
|
let t = zt(e, null, null, null);
|
|
3078
3084
|
for (let n = 0; n < t.length; n++) {
|
|
3079
|
-
let r = t[n], l =
|
|
3080
|
-
|
|
3085
|
+
let r = t[n], l = wr(e, r, "publisher", null, Zt.KW_REQUIRED), o = wr(e, r, "subscriber", null, Zt.KW_REQUIRED);
|
|
3086
|
+
zn(r, "s_event", Sr(e, r, "event", "", Zt.KW_REQUIRED)), zn(r, "s_publisher", et(l)), zn(r, "s_subscriber", et(o));
|
|
3081
3087
|
}
|
|
3082
3088
|
let n = Qt(e, 0, null, 0);
|
|
3083
3089
|
for (let t = 0; t < n.length; t++) {
|
|
3084
|
-
let r = n[t], l =
|
|
3085
|
-
|
|
3090
|
+
let r = n[t], l = wr(e, r, "publisher", null, Zt.KW_REQUIRED), o = wr(e, r, "subscriber", null, Zt.KW_REQUIRED);
|
|
3091
|
+
zn(r, "s_event", Sr(e, r, "event", "", Zt.KW_REQUIRED)), zn(r, "s_publisher", et(l)), zn(r, "s_subscriber", et(o));
|
|
3086
3092
|
}
|
|
3087
3093
|
return {
|
|
3088
3094
|
subscriptions: t,
|
|
3089
3095
|
subscribings: n,
|
|
3090
|
-
"total subscriptions":
|
|
3091
|
-
total_subscribings:
|
|
3096
|
+
"total subscriptions": tr(t),
|
|
3097
|
+
total_subscribings: tr(n)
|
|
3092
3098
|
};
|
|
3093
3099
|
}, e.gobj_load_persistent_attrs = function(e, t) {
|
|
3094
|
-
return Be(e) ? i ? i(e, t) : -1 : (
|
|
3100
|
+
return Be(e) ? i ? i(e, t) : -1 : (vn(`${et(e)}: Only gobj services can load/save writable-persistent`), -1);
|
|
3095
3101
|
}, e.gobj_match_children = function(e, t) {
|
|
3096
|
-
if (ot(e)) return
|
|
3102
|
+
if (ot(e)) return vn("gobj NULL or DESTROYED"), null;
|
|
3097
3103
|
t = t || {};
|
|
3098
3104
|
let n = [];
|
|
3099
3105
|
const r = e.dl_children;
|
|
@@ -3115,7 +3121,7 @@
|
|
|
3115
3121
|
}, 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() {
|
|
3116
3122
|
return Lt.length;
|
|
3117
3123
|
}, 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) {
|
|
3118
|
-
return Be(e) ? a ? a(e, t) : -1 : (
|
|
3124
|
+
return Be(e) ? a ? a(e, t) : -1 : (vn(`${et(e)}: Only gobj services can load/save writable-persistent`), -1);
|
|
3119
3125
|
}, e.gobj_repr_global_trace_levels = function() {
|
|
3120
3126
|
return U.map(([e, t, n]) => ({
|
|
3121
3127
|
name: e,
|
|
@@ -3125,34 +3131,34 @@
|
|
|
3125
3131
|
}));
|
|
3126
3132
|
}, e.gobj_reset_volatil_attrs = function(e) {
|
|
3127
3133
|
return function(e, t, n) {
|
|
3128
|
-
if (ot(e)) return
|
|
3134
|
+
if (ot(e)) return vn("gobj NULL or DESTROYED"), -1;
|
|
3129
3135
|
let r = e.gclass.attrs_table;
|
|
3130
3136
|
for (let l = 0; l < r.length; l++) {
|
|
3131
3137
|
const o = r[l];
|
|
3132
|
-
o.name && (n && o.flag & n || (-1 === t || o.flag & t) && (ae(e, e.jn_attrs, o),
|
|
3138
|
+
o.name && (n && o.flag & n || (-1 === t || o.flag & t) && (ae(e, e.jn_attrs, o), rr(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)));
|
|
3133
3139
|
}
|
|
3134
3140
|
return 0;
|
|
3135
3141
|
}(e, E.SDF_VOLATIL, 0);
|
|
3136
3142
|
}, e.gobj_save_persistent_attrs = De, e.gobj_search_path = mt, e.gobj_send_event = Vt, e.gobj_services = function() {
|
|
3137
3143
|
let e = [];
|
|
3138
|
-
for (const t of Object.keys(b))
|
|
3144
|
+
for (const t of Object.keys(b)) Xn(e, t);
|
|
3139
3145
|
return e;
|
|
3140
3146
|
}, e.gobj_set_bottom_gobj = it, e.gobj_set_deep_trace = function(e) {
|
|
3141
3147
|
return G = Number(e) || 0, 0;
|
|
3142
3148
|
}, 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) {
|
|
3143
|
-
if (!e) return
|
|
3149
|
+
if (!e) return vn("gobj_set_gobj_no_trace: gobj NULL"), -1;
|
|
3144
3150
|
const r = W(t, "gobj_set_gobj_no_trace", e.gclass && e.gclass.s_user_trace_level || null);
|
|
3145
3151
|
return r ? (n ? e.no_trace_level |= r : e.no_trace_level &= ~r, 0) : -1;
|
|
3146
3152
|
}, e.gobj_set_gobj_trace = function(e, t, n) {
|
|
3147
|
-
if (!e) return
|
|
3153
|
+
if (!e) return vn("gobj_set_gobj_trace: gobj NULL"), -1;
|
|
3148
3154
|
const r = W(t, "gobj_set_gobj_trace", e.gclass && e.gclass.s_user_trace_level || null);
|
|
3149
3155
|
return r ? (n ? e.trace_level |= r : e.trace_level &= ~r, 0) : -1;
|
|
3150
3156
|
}, e.gobj_set_trace_machine_format = function(e) {
|
|
3151
3157
|
C = 1 === Number(e) ? 1 : 0;
|
|
3152
3158
|
}, e.gobj_short_name = et, e.gobj_start = Pe, e.gobj_start_children = function(e) {
|
|
3153
|
-
return ot(e) ? (
|
|
3159
|
+
return ot(e) ? (vn("gobj NULL or DESTROYED"), -1) : at(e, D.WALK_FIRST2LAST, Ue, 0, 0);
|
|
3154
3160
|
}, e.gobj_start_tree = function(e) {
|
|
3155
|
-
return ot(e) ? (
|
|
3161
|
+
return ot(e) ? (vn("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)));
|
|
3156
3162
|
}, e.gobj_start_up = function(e, t, n, r, l, o, s) {
|
|
3157
3163
|
i = t, _ = n, a = r, u = l, c = o, f = s;
|
|
3158
3164
|
const d = [["EV_STATE_CHANGED", R.EVF_SYSTEM_EVENT | R.EVF_OUTPUT_EVENT | R.EVF_NO_WARN_SUBS], [0, 0]];
|
|
@@ -3162,14 +3168,14 @@
|
|
|
3162
3168
|
}
|
|
3163
3169
|
return 0;
|
|
3164
3170
|
}, e.gobj_stats = function(e, t, r, l) {
|
|
3165
|
-
return ot(e) ? (
|
|
3171
|
+
return ot(e) ? (vn("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);
|
|
3166
3172
|
}, e.gobj_stop = Ve, e.gobj_stop_children = Me, e.gobj_stop_tree = function(e) {
|
|
3167
|
-
return ot(e) ? (
|
|
3173
|
+
return ot(e) ? (vn("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));
|
|
3168
3174
|
}, e.gobj_subscribe_event = qt, e.gobj_trace_level = x, e.gobj_trace_machine_format = function() {
|
|
3169
3175
|
return C;
|
|
3170
3176
|
}, e.gobj_trace_no_level = K, e.gobj_unsubscribe_event = function(e, t, n, r) {
|
|
3171
|
-
if (null == n && (n = {}), !e) return
|
|
3172
|
-
if (!r) return
|
|
3177
|
+
if (null == n && (n = {}), !e) return vn(`publisher NULL: ev ${t}`), 0;
|
|
3178
|
+
if (!r) return vn(`subscriber NULL: ev ${t}`), 0;
|
|
3173
3179
|
const l = /* @__PURE__ */ new Set([
|
|
3174
3180
|
"__config__",
|
|
3175
3181
|
"__global__",
|
|
@@ -3178,83 +3184,83 @@
|
|
|
3178
3184
|
"__service__"
|
|
3179
3185
|
]);
|
|
3180
3186
|
if (Object.keys(n).forEach((n) => {
|
|
3181
|
-
l.has(n) ||
|
|
3182
|
-
}),
|
|
3183
|
-
else if (!(Ct(e, t, R.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & w.gcflag_no_check_output_events)) return
|
|
3187
|
+
l.has(n) || vn(`${et(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
|
|
3188
|
+
}), cr(t)) t = "";
|
|
3189
|
+
else if (!(Ct(e, t, R.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & w.gcflag_no_check_output_events)) return vn(`event NOT in output event list: ${et(e)}, ev ${t}`), 0;
|
|
3184
3190
|
let o = xt(n, t), s = Yt(e.dl_subscriptions, e, t, o.renamed_event, o.kw, r), i = 0, _ = 0, a = 0;
|
|
3185
3191
|
for (let t = 0; t < s.length; t++) {
|
|
3186
3192
|
let n = s[t], r = Jt(e, n, !1, !1);
|
|
3187
3193
|
0 === r ? i++ : r < 0 ? _++ : a++;
|
|
3188
3194
|
}
|
|
3189
|
-
return _ ?
|
|
3195
|
+
return _ ? jn(`${et(e)}: Hard subscription not removed, only gobj_unsubscribe_list() with force removes it (event: ${t}, hard: ${_})`) : i || a || (jn(`${et(e)}: No subscription found`), Mn(n, "No subscription found")), 0;
|
|
3190
3196
|
}, 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) {
|
|
3191
|
-
return "string" != typeof e ? (
|
|
3192
|
-
}, e.id_index_in_obj_list =
|
|
3197
|
+
return "string" != typeof e ? (vn("html_markup: not a string, type " + typeof e), new Xr("")) : new Xr(e);
|
|
3198
|
+
}, e.id_index_in_obj_list = Gr, e.index_in_list = ol, e.is_array = lr, e.is_boolean = ir, e.is_date = function(e) {
|
|
3193
3199
|
return e instanceof Date && !isNaN(e);
|
|
3194
|
-
}, e.is_function =
|
|
3195
|
-
if (!
|
|
3200
|
+
}, e.is_function = ar, e.is_gobj = ur, e.is_html_markup = Zr, e.is_metadata_key = function(e) {
|
|
3201
|
+
if (!or(e)) return !1;
|
|
3196
3202
|
let t = 0;
|
|
3197
3203
|
for (; t < e.length && "_" === e[t] && !(t > 2); t++);
|
|
3198
3204
|
return 2 === t;
|
|
3199
|
-
}, e.is_null =
|
|
3200
|
-
if (!
|
|
3205
|
+
}, e.is_null = _r, e.is_number = sr, e.is_object = rr, e.is_private_key = function(e) {
|
|
3206
|
+
if (!or(e)) return !1;
|
|
3201
3207
|
let t = 0;
|
|
3202
3208
|
for (; t < e.length && "_" === e[t] && !(t > 2); t++);
|
|
3203
3209
|
return 1 === t;
|
|
3204
3210
|
}, e.is_pure_number = function(e) {
|
|
3205
|
-
if (
|
|
3206
|
-
if (!
|
|
3211
|
+
if (sr(e)) return !0;
|
|
3212
|
+
if (!or(e)) return !1;
|
|
3207
3213
|
const t = Number(e);
|
|
3208
3214
|
return !isNaN(t) && "" !== e.trim() && !isNaN(t);
|
|
3209
|
-
}, e.is_secret_name =
|
|
3210
|
-
let l =
|
|
3211
|
-
if (!l) return
|
|
3212
|
-
if (!
|
|
3213
|
-
if (!
|
|
3214
|
-
if ("" !== n && n.split("`").includes("")) return
|
|
3215
|
+
}, e.is_secret_name = Dn, e.is_string = or, e.jdb_delete = function(e, t, n, r) {
|
|
3216
|
+
let l = $r(null, $r(null, e, "topics", null, 0), t, null, 0);
|
|
3217
|
+
if (!l) return vn("jdb_delete: topic not found: " + t), null;
|
|
3218
|
+
if (!rr(r) || cr(r.id)) return vn(`jdb_delete: record without id: ${pn(r)}`), null;
|
|
3219
|
+
if (!or(n)) return vn(`jdb_delete: path must be a string: ${String(n)}`), null;
|
|
3220
|
+
if ("" !== n && n.split("`").includes("")) return vn(`jdb_delete: empty segment in path: '${n}'`), null;
|
|
3215
3221
|
let o, s = n.split("`"), i = l;
|
|
3216
|
-
for (; (o = s.shift()) && !
|
|
3217
|
-
if (!i || 0 !== s.length) return
|
|
3218
|
-
let _ =
|
|
3219
|
-
return a < 0 ? (
|
|
3222
|
+
for (; (o = s.shift()) && !cr(o) && i;) rr(i) && (i = $r(null, i, e.hook, null, 0)), i = Hr(i, null, o, !1);
|
|
3223
|
+
if (!i || 0 !== s.length) return vn(`jdb_delete: path not found in topic '${t}': '${n}'`), null;
|
|
3224
|
+
let _ = lr(i) ? i : $r(null, i, e.hook, null, 0), a = Gr(_, r.id);
|
|
3225
|
+
return a < 0 ? (vn(`jdb_delete: record not found in topic '${t}': '${n}' '${r.id}'`), null) : (_.splice(a, 1), l);
|
|
3220
3226
|
}, e.jdb_get = function(e, t, n, r) {
|
|
3221
|
-
let l =
|
|
3222
|
-
return l ? (void 0 === r && (r = !0),
|
|
3227
|
+
let l = $r(null, $r(null, e, "topics", null, 0), t, null, 0);
|
|
3228
|
+
return l ? (void 0 === r && (r = !0), Hr(l, e.hook, n, r)) : (vn("jdb_get: topic not found: " + t), null);
|
|
3223
3229
|
}, e.jdb_get_by_idx = function(e, t, n) {
|
|
3224
|
-
let r =
|
|
3225
|
-
return r ? n < r.length ? r[n] : {} : (
|
|
3230
|
+
let r = $r(null, $r(null, e, "topics", null, 0), t, null, 0);
|
|
3231
|
+
return r ? n < r.length ? r[n] : {} : (vn("jdb_get_by_idx: topic not found: " + t), null);
|
|
3226
3232
|
}, e.jdb_get_topic = function(e, t) {
|
|
3227
|
-
let n =
|
|
3228
|
-
if (!n) return
|
|
3229
|
-
return
|
|
3233
|
+
let n = $r(null, e, "topics", null, 0);
|
|
3234
|
+
if (!n) return vn("jdb topics section not found"), Sn(e), null;
|
|
3235
|
+
return $r(null, n, t, null, 0) || (vn("jdb topic not found: " + t), Sn(n), null);
|
|
3230
3236
|
}, e.jdb_init = function(e, t, n) {
|
|
3231
|
-
n && (e =
|
|
3232
|
-
let r =
|
|
3233
|
-
|
|
3234
|
-
let l =
|
|
3235
|
-
return
|
|
3236
|
-
"__" === t.substring(0, 2) ||
|
|
3237
|
+
n && (e = Wn(e));
|
|
3238
|
+
let r = $r(null, e, "type", [], Zt.KW_CREATE);
|
|
3239
|
+
Sr(null, e, "hook", "data", Zt.KW_CREATE);
|
|
3240
|
+
let l = $r(null, e, "schema", {}, Zt.KW_CREATE), o = $r(null, e, "topics", {}, Zt.KW_CREATE);
|
|
3241
|
+
return qr(l, function(e, t, n, l) {
|
|
3242
|
+
"__" === t.substring(0, 2) || rr(n) || $r(null, o, l, Wn(r), Zt.KW_CREATE);
|
|
3237
3243
|
}, t), e;
|
|
3238
3244
|
}, e.jdb_update = function(e, t, n, r) {
|
|
3239
|
-
let l =
|
|
3240
|
-
if (!l) return
|
|
3241
|
-
if (!
|
|
3242
|
-
if (!
|
|
3243
|
-
if ("" !== n && n.split("`").includes("")) return
|
|
3245
|
+
let l = $r(null, $r(null, e, "topics", null, 0), t, null, 0);
|
|
3246
|
+
if (!l) return vn("jdb_update: topic not found: " + t), null;
|
|
3247
|
+
if (!rr(r) || cr(r.id)) return vn(`jdb_update: record without id: ${pn(r)}`), null;
|
|
3248
|
+
if (!or(n)) return vn(`jdb_update: path must be a string: ${String(n)}`), null;
|
|
3249
|
+
if ("" !== n && n.split("`").includes("")) return vn(`jdb_update: empty segment in path: '${n}'`), null;
|
|
3244
3250
|
let o, s, i = n.split("`"), _ = l;
|
|
3245
|
-
for (; (o = i.shift()) && !
|
|
3246
|
-
if (!_ || 0 !== i.length) return
|
|
3247
|
-
if (
|
|
3251
|
+
for (; (o = i.shift()) && !cr(o) && _;) rr(_) && (_ = $r(null, _, e.hook, null, 0)), _ = Hr(_, null, o, !1);
|
|
3252
|
+
if (!_ || 0 !== i.length) return vn(`jdb_update: path not found in topic '${t}': '${n}'`), null;
|
|
3253
|
+
if (lr(_)) s = _;
|
|
3248
3254
|
else {
|
|
3249
|
-
if (_.id === r.id) return
|
|
3250
|
-
if (s =
|
|
3251
|
-
else if (!
|
|
3255
|
+
if (_.id === r.id) return Kn(_, r), l;
|
|
3256
|
+
if (s = $r(null, _, e.hook, null, 0), null == s) s = [], Hn(_, e.hook, s);
|
|
3257
|
+
else if (!lr(s)) return vn(`jdb_update: the hook '${e.hook}' of '${n}' is not a list in topic '${t}'`), null;
|
|
3252
3258
|
}
|
|
3253
|
-
let a =
|
|
3254
|
-
return a ?
|
|
3259
|
+
let a = Hr(s, e.hook, r.id, !1);
|
|
3260
|
+
return a ? Kn(a, r) : s.push(r), l;
|
|
3255
3261
|
}, e.json2flat = function(e) {
|
|
3256
3262
|
const t = {}, n = (e, r, l) => {
|
|
3257
|
-
if (l >
|
|
3263
|
+
if (l > _l) throw new Error("json2flat: deeper than 256");
|
|
3258
3264
|
if (null === e || "object" != typeof e || Array.isArray(e)) {
|
|
3259
3265
|
if (Array.isArray(e) && e.length > 0) return void e.forEach((e, t) => {
|
|
3260
3266
|
const o = `[${t}]`;
|
|
@@ -3264,20 +3270,20 @@
|
|
|
3264
3270
|
const t = Object.keys(e);
|
|
3265
3271
|
if (t.length > 0) {
|
|
3266
3272
|
for (const o of t) {
|
|
3267
|
-
const t =
|
|
3273
|
+
const t = ul(o);
|
|
3268
3274
|
n(e[o], 0 === l ? t : r + "`" + t, l + 1);
|
|
3269
3275
|
}
|
|
3270
3276
|
return;
|
|
3271
3277
|
}
|
|
3272
3278
|
}
|
|
3273
|
-
0 !== l &&
|
|
3279
|
+
0 !== l && yr(t, r, e);
|
|
3274
3280
|
};
|
|
3275
3281
|
return null == e || n(e, "", 0), t;
|
|
3276
|
-
}, e.json_array_append =
|
|
3282
|
+
}, e.json_array_append = Qn, e.json_array_append_new = Xn, e.json_array_extend = function(e, t) {
|
|
3277
3283
|
return t ? (Array.prototype.push.apply(e, t), e) : e;
|
|
3278
|
-
}, e.json_array_remove =
|
|
3284
|
+
}, e.json_array_remove = Zn, e.json_array_size = tr, e.json_deep_copy = Wn, e.json_is_identical = xn, e.json_mask_secrets = Gn, e.json_object_del = qn, e.json_object_get = Jn, e.json_object_set = Hn, e.json_object_set_new = zn, e.json_object_size = er, e.json_object_update = Kn, e.json_object_update_existing = Yn, e.json_object_update_missing = Bn, e.json_size = nr, e.jwt2json = function(e, t) {
|
|
3279
3285
|
try {
|
|
3280
|
-
let n =
|
|
3286
|
+
let n = zr(e);
|
|
3281
3287
|
switch (t) {
|
|
3282
3288
|
case "header": return JSON.parse(n.header);
|
|
3283
3289
|
case "signature": return JSON.parse(n.signature);
|
|
@@ -3286,137 +3292,137 @@
|
|
|
3286
3292
|
} catch (e) {
|
|
3287
3293
|
return null;
|
|
3288
3294
|
}
|
|
3289
|
-
}, e.jwtDecode =
|
|
3290
|
-
if (e && !
|
|
3291
|
-
r || (r =
|
|
3295
|
+
}, e.jwtDecode = zr, e.kw_clone_by_keys = Ir, e.kw_clone_by_not_keys = Cr, e.kw_collect = function(e, t, n, r) {
|
|
3296
|
+
if (e && !ur(e) && vn("GObj bad instanceof"), !t) return null;
|
|
3297
|
+
r || (r = Ar);
|
|
3292
3298
|
let l = [];
|
|
3293
|
-
if (
|
|
3299
|
+
if (lr(t)) for (let e = 0; e < t.length; e++) {
|
|
3294
3300
|
let o = t[e];
|
|
3295
3301
|
r(o, n) && l.push(o);
|
|
3296
3302
|
}
|
|
3297
3303
|
else {
|
|
3298
|
-
if (!
|
|
3304
|
+
if (!rr(t)) return vn("kw_select() BAD kw parameter"), null;
|
|
3299
3305
|
r(t, n) && l.push(t);
|
|
3300
3306
|
}
|
|
3301
3307
|
return l;
|
|
3302
|
-
}, e.kw_delete =
|
|
3303
|
-
if (!n || !
|
|
3304
|
-
for (let e = 0; e < t.length; e++) if (
|
|
3305
|
-
return r &&
|
|
3306
|
-
}, e.kw_find_path =
|
|
3307
|
-
e && !
|
|
3308
|
-
let o =
|
|
3308
|
+
}, e.kw_delete = vr, e.kw_find_json_in_list = function(e, t, n, r) {
|
|
3309
|
+
if (!n || !lr(t)) return r && vn("item NULL or kw_list is not a list"), -1;
|
|
3310
|
+
for (let e = 0; e < t.length; e++) if (xn(n, t[e])) return e;
|
|
3311
|
+
return r && vn("item not found in this list"), -1;
|
|
3312
|
+
}, e.kw_find_path = Tr, e.kw_flag_t = Zt, e.kw_get_bool = jr, e.kw_get_dict = Nr, e.kw_get_dict_value = $r, e.kw_get_int = Or, e.kw_get_list = function(e, t, n, r, l) {
|
|
3313
|
+
e && !ur(e) && vn("GObj bad instanceof");
|
|
3314
|
+
let o = Tr(e, t, n, !1);
|
|
3309
3315
|
const s = l && l & Zt.KW_REQUIRED, i = l && l & Zt.KW_CREATE, _ = l && l & Zt.KW_EXTRACT;
|
|
3310
|
-
return void 0 === o ? i &&
|
|
3311
|
-
}, e.kw_get_local_storage_value =
|
|
3312
|
-
e && !
|
|
3313
|
-
let o =
|
|
3316
|
+
return void 0 === o ? i && lr(r) && t ? (Rr(e, t, n, r), r) : (s && (vn(`path not found: '${n}'`), Mn(t)), r) : lr(o) ? (_ && vr(e, t, n), o) : i && null === o && lr(r) ? (Rr(e, t, n, r), r) : i && null === o ? (s && (vn(`path not found: '${n}'`), Mn(t)), r) : ((s || i) && (vn(`${e ? et(e) + ": " : ""}path MUST BE a json list: '${n}'` + (i ? ", cannot create" : "")), Mn(t)), r);
|
|
3317
|
+
}, e.kw_get_local_storage_value = Lr, e.kw_get_pointer = wr, e.kw_get_real = function(e, t, n, r, l) {
|
|
3318
|
+
e && !ur(e) && vn("GObj bad instanceof");
|
|
3319
|
+
let o = Tr(e, t, n, !1);
|
|
3314
3320
|
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;
|
|
3315
3321
|
if (void 0 === o) {
|
|
3316
3322
|
if (i && t) {
|
|
3317
3323
|
let l = Number(r);
|
|
3318
|
-
return
|
|
3324
|
+
return Rr(e, t, n, l), l;
|
|
3319
3325
|
}
|
|
3320
|
-
return s && (
|
|
3326
|
+
return s && (vn(`path not found: '${n}'`), Mn(t)), Number(r);
|
|
3321
3327
|
}
|
|
3322
3328
|
let u;
|
|
3323
|
-
if (
|
|
3329
|
+
if (sr(o)) u = o;
|
|
3324
3330
|
else {
|
|
3325
|
-
if (!a) return
|
|
3326
|
-
if (
|
|
3327
|
-
else if (
|
|
3331
|
+
if (!a) return vn(`${e ? et(e) + ": " : ""}path MUST BE a json real: '${n}'`), Mn(t), Number(r);
|
|
3332
|
+
if (ir(o)) u = o ? 1 : 0;
|
|
3333
|
+
else if (or(o)) u = parseFloat(o), Number.isNaN(u) && (u = 0);
|
|
3328
3334
|
else {
|
|
3329
|
-
if (null !== o) return
|
|
3335
|
+
if (null !== o) return vn(`${e ? et(e) + ": " : ""}path MUST BE a simple json element: '${n}'`), Mn(t), 0;
|
|
3330
3336
|
u = 0;
|
|
3331
3337
|
}
|
|
3332
3338
|
}
|
|
3333
|
-
return _ &&
|
|
3334
|
-
}, e.kw_get_str =
|
|
3335
|
-
if (e && !
|
|
3336
|
-
r || (r =
|
|
3339
|
+
return _ && vr(e, t, n), u;
|
|
3340
|
+
}, e.kw_get_str = Sr, e.kw_has_key = mr, e.kw_match_simple = Ar, e.kw_pop = pr, e.kw_remove_local_storage_value = Ur, e.kw_select = function(e, t, n, r) {
|
|
3341
|
+
if (e && !ur(e) && vn("GObj bad instanceof"), !t) return null;
|
|
3342
|
+
r || (r = Ar);
|
|
3337
3343
|
let l = [];
|
|
3338
|
-
if (
|
|
3344
|
+
if (lr(t)) for (let e = 0; e < t.length; e++) {
|
|
3339
3345
|
let o = t[e];
|
|
3340
|
-
r(o, n) && l.push(
|
|
3346
|
+
r(o, n) && l.push(Wn(o));
|
|
3341
3347
|
}
|
|
3342
3348
|
else {
|
|
3343
|
-
if (!
|
|
3344
|
-
r(t, n) && l.push(
|
|
3349
|
+
if (!rr(t)) return vn("kw_select() BAD kw parameter"), null;
|
|
3350
|
+
r(t, n) && l.push(Wn(t));
|
|
3345
3351
|
}
|
|
3346
3352
|
return l;
|
|
3347
|
-
}, e.kw_set_dict_value =
|
|
3348
|
-
e && !
|
|
3349
|
-
let o =
|
|
3353
|
+
}, e.kw_set_dict_value = Rr, e.kw_set_local_storage_value = Pr, e.kw_set_subdict_value = Dr, e.kwid_collect = Vr, e.kwid_find_one_record = function(e, t, n, r, l) {
|
|
3354
|
+
e && !ur(e) && vn("GObj bad instanceof");
|
|
3355
|
+
let o = Vr(e, t, n, r, l);
|
|
3350
3356
|
return o && 0 !== o.length ? o[0] : null;
|
|
3351
3357
|
}, e.kwid_get_ids = function(e, t) {
|
|
3352
|
-
if (e && !
|
|
3358
|
+
if (e && !ur(e) && vn("GObj bad instanceof"), !t) return [];
|
|
3353
3359
|
let n = [];
|
|
3354
|
-
if (
|
|
3355
|
-
else if (
|
|
3356
|
-
else
|
|
3357
|
-
if (
|
|
3358
|
-
else if (
|
|
3359
|
-
let r =
|
|
3360
|
+
if (or(t)) n.push(t);
|
|
3361
|
+
else if (rr(t)) for (let e in t) Object.prototype.hasOwnProperty.call(t, e) && n.push(e);
|
|
3362
|
+
else lr(t) && t.forEach(function(t) {
|
|
3363
|
+
if (or(t)) cr(t) || n.push(t);
|
|
3364
|
+
else if (rr(t)) {
|
|
3365
|
+
let r = Sr(e, t, "id", 0, 0);
|
|
3360
3366
|
r && n.push(r);
|
|
3361
3367
|
}
|
|
3362
3368
|
});
|
|
3363
3369
|
return n;
|
|
3364
|
-
}, e.kwid_match_id =
|
|
3365
|
-
e && !
|
|
3370
|
+
}, e.kwid_match_id = Fr, e.kwid_new_dict = function(e, t, n) {
|
|
3371
|
+
e && !ur(e) && vn("GObj bad instanceof");
|
|
3366
3372
|
let r = {};
|
|
3367
|
-
if (
|
|
3368
|
-
else if (
|
|
3369
|
-
let l = t[n], o =
|
|
3370
|
-
|
|
3373
|
+
if (cr(n) || (t = Tr(e, t, n)), rr(t)) r = t;
|
|
3374
|
+
else if (lr(t)) for (let n = 0; n < t.length; n++) {
|
|
3375
|
+
let l = t[n], o = Sr(e, l, "id", "", Zt.KW_REQUIRED);
|
|
3376
|
+
cr(o) || yr(r, o, l);
|
|
3371
3377
|
}
|
|
3372
|
-
else
|
|
3378
|
+
else vn(`${et(e)} kwid_new_dict: data type unknown`);
|
|
3373
3379
|
return r;
|
|
3374
3380
|
}, e.kwid_new_list = function(e, t, n) {
|
|
3375
|
-
if (e && !
|
|
3376
|
-
if (
|
|
3381
|
+
if (e && !ur(e) && vn("GObj bad instanceof"), cr(n) || (t = Tr(e, t, n)), lr(t)) return t;
|
|
3382
|
+
if (rr(t)) {
|
|
3377
3383
|
let n = [];
|
|
3378
3384
|
for (let r of Object.keys(t)) {
|
|
3379
3385
|
let l = t[r];
|
|
3380
|
-
|
|
3386
|
+
rr(l) ? (l.id = r, n.push(l)) : vn(`${et(e)} kwid_new_list: not a record: '${r}'`);
|
|
3381
3387
|
}
|
|
3382
3388
|
return n;
|
|
3383
3389
|
}
|
|
3384
|
-
return
|
|
3390
|
+
return vn(`${et(e)} kwid_new_list: wrong type for list`), [];
|
|
3385
3391
|
}, e.list2options = function(e, t, n) {
|
|
3386
3392
|
t = t || "id", n = n || "value";
|
|
3387
3393
|
let r = [];
|
|
3388
|
-
if (
|
|
3394
|
+
if (lr(e)) for (let l = 0; l < e.length; l++) {
|
|
3389
3395
|
let o = e[l];
|
|
3390
|
-
if (
|
|
3396
|
+
if (or(o)) r.push({
|
|
3391
3397
|
id: e[l],
|
|
3392
3398
|
value: e[l]
|
|
3393
3399
|
});
|
|
3394
|
-
else if (
|
|
3400
|
+
else if (rr(o)) {
|
|
3395
3401
|
let e = {};
|
|
3396
|
-
if (
|
|
3397
|
-
if (!
|
|
3398
|
-
if (!(
|
|
3399
|
-
|
|
3402
|
+
if (mr(o, t)) {
|
|
3403
|
+
if (!mr(o, n)) {
|
|
3404
|
+
if (!(nr(o) > 0)) {
|
|
3405
|
+
vn("list2options(): object without field value: " + n);
|
|
3400
3406
|
continue;
|
|
3401
3407
|
}
|
|
3402
3408
|
n = Object.keys(o)[0];
|
|
3403
3409
|
}
|
|
3404
3410
|
e.id = o[t], e.value = o[n];
|
|
3405
3411
|
} else {
|
|
3406
|
-
if (!(
|
|
3407
|
-
|
|
3412
|
+
if (!(nr(o) > 0)) {
|
|
3413
|
+
vn("list2options(): object without field id: " + t);
|
|
3408
3414
|
continue;
|
|
3409
3415
|
}
|
|
3410
3416
|
t = Object.keys(o)[0], e.id = t, e.value = o[t];
|
|
3411
3417
|
}
|
|
3412
3418
|
r.push(e);
|
|
3413
|
-
} else
|
|
3419
|
+
} else vn("list2options(): case1 not implemented");
|
|
3414
3420
|
}
|
|
3415
|
-
else if (
|
|
3421
|
+
else if (rr(e)) for (let t of Object.keys(e)) r.push({
|
|
3416
3422
|
id: t,
|
|
3417
3423
|
value: t
|
|
3418
3424
|
});
|
|
3419
|
-
else
|
|
3425
|
+
else vn("list2options(): case2 not implemented");
|
|
3420
3426
|
return r;
|
|
3421
3427
|
}, e.load_json_file = function(e, t, n) {
|
|
3422
3428
|
let r = new XMLHttpRequest();
|
|
@@ -3424,18 +3430,18 @@
|
|
|
3424
3430
|
if (4 === r.readyState) if (200 === r.status || 0 === (e = r).status && e.responseText && e.responseURL.startsWith("file:")) try {
|
|
3425
3431
|
t(JSON.parse(r.responseText));
|
|
3426
3432
|
} catch (e) {
|
|
3427
|
-
n && (
|
|
3433
|
+
n && (vn(`JSON parse status ${r.status}, error: ${e.message}`), n(r.status));
|
|
3428
3434
|
}
|
|
3429
3435
|
else n && n(r.status);
|
|
3430
3436
|
var e;
|
|
3431
3437
|
}, r.send();
|
|
3432
|
-
}, e.log_debug =
|
|
3433
|
-
let n = yn(e, ...t), r =
|
|
3434
|
-
rn && cn("info", n) &&
|
|
3435
|
-
}, e.log_warning =
|
|
3438
|
+
}, e.log_debug = On, e.log_error = vn, e.log_info = function(e, ...t) {
|
|
3439
|
+
let n = yn(e, ...t), r = ll();
|
|
3440
|
+
rn && cn("info", n) && Tn(rn, "%c" + r + " INFO: " + String(n), "color:cyan"), gn("info", n, r);
|
|
3441
|
+
}, e.log_warning = jn, e.mask_secrets_inline = Ln, e.msg_iev_get_msg_type = Jr, e.msg_iev_get_stack = Yr, e.msg_iev_push_stack = Kr, e.msg_iev_read_key = Wr, e.msg_iev_set_msg_type = Br, e.msg_iev_write_key = xr, e.node_uuid = sl, e.parseBoolean = fr, e.parseSVG = function(e) {
|
|
3436
3442
|
return new DOMParser().parseFromString(e, "image/svg+xml").firstChild;
|
|
3437
3443
|
}, e.refresh_language = function(e, t) {
|
|
3438
|
-
if (!
|
|
3444
|
+
if (!ar(t)) return void vn("You must supply a translation function");
|
|
3439
3445
|
e || (e = document);
|
|
3440
3446
|
const n = (t) => {
|
|
3441
3447
|
let n = [];
|
|
@@ -3459,22 +3465,22 @@
|
|
|
3459
3465
|
});
|
|
3460
3466
|
}, e.register_c_ievent_cli = function() {
|
|
3461
3467
|
return function(e) {
|
|
3462
|
-
if (
|
|
3468
|
+
if (Gl) return vn(`GClass ALREADY created: ${e}`), -1;
|
|
3463
3469
|
const t = [
|
|
3464
3470
|
["ST_DISCONNECTED", [
|
|
3465
3471
|
[
|
|
3466
3472
|
"EV_ON_OPEN",
|
|
3467
|
-
|
|
3473
|
+
zl,
|
|
3468
3474
|
"ST_WAIT_IDENTITY_CARD_ACK"
|
|
3469
3475
|
],
|
|
3470
3476
|
[
|
|
3471
3477
|
"EV_ON_CLOSE",
|
|
3472
|
-
|
|
3478
|
+
Ql,
|
|
3473
3479
|
null
|
|
3474
3480
|
],
|
|
3475
3481
|
[
|
|
3476
3482
|
"EV_TIMEOUT",
|
|
3477
|
-
|
|
3483
|
+
Hl,
|
|
3478
3484
|
null
|
|
3479
3485
|
],
|
|
3480
3486
|
[
|
|
@@ -3486,22 +3492,22 @@
|
|
|
3486
3492
|
["ST_WAIT_IDENTITY_CARD_ACK", [
|
|
3487
3493
|
[
|
|
3488
3494
|
"EV_ON_MESSAGE",
|
|
3489
|
-
|
|
3495
|
+
to,
|
|
3490
3496
|
null
|
|
3491
3497
|
],
|
|
3492
3498
|
[
|
|
3493
3499
|
"EV_IDENTITY_CARD_ACK",
|
|
3494
|
-
|
|
3500
|
+
eo,
|
|
3495
3501
|
null
|
|
3496
3502
|
],
|
|
3497
3503
|
[
|
|
3498
3504
|
"EV_ON_CLOSE",
|
|
3499
|
-
|
|
3505
|
+
Ql,
|
|
3500
3506
|
"ST_DISCONNECTED"
|
|
3501
3507
|
],
|
|
3502
3508
|
[
|
|
3503
3509
|
"EV_TIMEOUT",
|
|
3504
|
-
|
|
3510
|
+
Zl,
|
|
3505
3511
|
null
|
|
3506
3512
|
],
|
|
3507
3513
|
[
|
|
@@ -3513,22 +3519,22 @@
|
|
|
3513
3519
|
["ST_SESSION", [
|
|
3514
3520
|
[
|
|
3515
3521
|
"EV_ON_MESSAGE",
|
|
3516
|
-
|
|
3522
|
+
to,
|
|
3517
3523
|
null
|
|
3518
3524
|
],
|
|
3519
3525
|
[
|
|
3520
3526
|
"EV_MT_STATS",
|
|
3521
|
-
|
|
3527
|
+
no,
|
|
3522
3528
|
null
|
|
3523
3529
|
],
|
|
3524
3530
|
[
|
|
3525
3531
|
"EV_MT_COMMAND",
|
|
3526
|
-
|
|
3532
|
+
ro,
|
|
3527
3533
|
null
|
|
3528
3534
|
],
|
|
3529
3535
|
[
|
|
3530
3536
|
"EV_ON_CLOSE",
|
|
3531
|
-
|
|
3537
|
+
Ql,
|
|
3532
3538
|
"ST_DISCONNECTED"
|
|
3533
3539
|
],
|
|
3534
3540
|
[
|
|
@@ -3539,7 +3545,7 @@
|
|
|
3539
3545
|
]],
|
|
3540
3546
|
[null, null]
|
|
3541
3547
|
];
|
|
3542
|
-
return (
|
|
3548
|
+
return (Gl = de(e, [
|
|
3543
3549
|
["EV_ON_MESSAGE", R.EVF_OUTPUT_EVENT],
|
|
3544
3550
|
["EV_IDENTITY_CARD_ACK", R.EVF_PUBLIC_EVENT],
|
|
3545
3551
|
["EV_ON_ID_NAK", R.EVF_PUBLIC_EVENT | R.EVF_OUTPUT_EVENT],
|
|
@@ -3550,36 +3556,36 @@
|
|
|
3550
3556
|
["EV_ON_OPEN_ERROR", R.EVF_OUTPUT_EVENT | R.EVF_NO_WARN_SUBS],
|
|
3551
3557
|
["EV_TIMEOUT", 0],
|
|
3552
3558
|
[null, 0]
|
|
3553
|
-
], t,
|
|
3559
|
+
], t, lo, 0, Pl, Vl, 0, 0, Ul, w.gcflag_no_check_output_events)) ? 0 : -1;
|
|
3554
3560
|
}("C_IEVENT_CLI");
|
|
3555
3561
|
}, e.register_c_timer = function() {
|
|
3556
3562
|
return function(e) {
|
|
3557
|
-
if (
|
|
3563
|
+
if (Tl) return vn(`GClass ALREADY created: ${e}`), -1;
|
|
3558
3564
|
const t = [["ST_IDLE", [[
|
|
3559
3565
|
"EV_TIMEOUT",
|
|
3560
|
-
|
|
3566
|
+
vl,
|
|
3561
3567
|
null
|
|
3562
3568
|
]]]];
|
|
3563
|
-
return (
|
|
3569
|
+
return (Tl = de(e, [
|
|
3564
3570
|
["EV_TIMEOUT", R.EVF_OUTPUT_EVENT],
|
|
3565
3571
|
["EV_TIMEOUT_PERIODIC", R.EVF_OUTPUT_EVENT],
|
|
3566
3572
|
[0, 0]
|
|
3567
|
-
], t,
|
|
3573
|
+
], t, jl, 0, yl, El, 0, 0, 0, w.gcflag_manual_start)) ? 0 : -1;
|
|
3568
3574
|
}("C_TIMER");
|
|
3569
3575
|
}, e.register_c_yuno = function() {
|
|
3570
3576
|
return function(e) {
|
|
3571
|
-
if (
|
|
3577
|
+
if (Rl) return vn(`GClass ALREADY created: ${e}`), -1;
|
|
3572
3578
|
const t = [["ST_IDLE", [[
|
|
3573
3579
|
"EV_TIMEOUT_PERIODIC",
|
|
3574
|
-
|
|
3580
|
+
Il,
|
|
3575
3581
|
null
|
|
3576
3582
|
]]]];
|
|
3577
|
-
return (
|
|
3583
|
+
return (Rl = de(e, [["EV_TIMEOUT_PERIODIC", R.EVF_OUTPUT_EVENT | R.EVF_NO_WARN_SUBS], [0, 0]], t, Cl, 0, Nl, $l, 0, 0, 0, 0)) ? 0 : -1;
|
|
3578
3584
|
}("C_YUNO");
|
|
3579
3585
|
}, e.safeSrc = function(e) {
|
|
3580
3586
|
if (!e) return "";
|
|
3581
3587
|
const t = String(e).trim();
|
|
3582
|
-
return /^javascript:/i.test(t) || /^data:/i.test(t) ? "" :
|
|
3588
|
+
return /^javascript:/i.test(t) || /^data:/i.test(t) ? "" : Qr(t);
|
|
3583
3589
|
}, e.sdata_flag_t = E, e.send_http_json_post = function(e, t, n) {
|
|
3584
3590
|
let r = new XMLHttpRequest();
|
|
3585
3591
|
r.open("POST", e), r.setRequestHeader("Accept", "application/json"), r.setRequestHeader("Content-Type", "application/json"), r.onreadystatechange = function() {
|
|
@@ -3603,16 +3609,16 @@
|
|
|
3603
3609
|
}
|
|
3604
3610
|
} else on = e;
|
|
3605
3611
|
}, e.set_remote_log_functions = bn, e.set_strings_are_text = function(e) {
|
|
3606
|
-
|
|
3607
|
-
}, e.set_timeout =
|
|
3608
|
-
return
|
|
3612
|
+
tl = !!e;
|
|
3613
|
+
}, e.set_timeout = Ol, e.set_timeout_periodic = Sl, e.sprintf = n, e.stats_parser = function(e, t, n, r) {}, e.str_in_list = Mr, e.strcasecmp = dr, e.strcmp = gr, e.strings_are_text = function() {
|
|
3614
|
+
return tl;
|
|
3609
3615
|
}, e.strncmp = function(e, t, n) {
|
|
3610
3616
|
var r = (e + "").substring(0, n), l = (t + "").substring(0, n);
|
|
3611
3617
|
return r === l ? 0 : r > l ? 1 : -1;
|
|
3612
3618
|
}, e.strs_in_list = function(e, t, n) {
|
|
3613
|
-
if (!e) return
|
|
3614
|
-
if (!t) return
|
|
3615
|
-
for (let r = 0; r < t.length; r++) if (
|
|
3619
|
+
if (!e) return vn("ERROR: strs_in_list() list empty"), !1;
|
|
3620
|
+
if (!t) return vn("ERROR: strs_in_list() str empty"), !1;
|
|
3621
|
+
for (let r = 0; r < t.length; r++) if (Mr(e, t[r], n)) return !0;
|
|
3616
3622
|
return !1;
|
|
3617
3623
|
}, e.strstr = function(e, t, n) {
|
|
3618
3624
|
var r;
|
|
@@ -3631,13 +3637,13 @@
|
|
|
3631
3637
|
placeholder: void 0,
|
|
3632
3638
|
fkey: null
|
|
3633
3639
|
};
|
|
3634
|
-
if (
|
|
3640
|
+
if (or(t)) {
|
|
3635
3641
|
let e = t.split(".");
|
|
3636
3642
|
for (let t = 0; t < e.length; t++) {
|
|
3637
3643
|
let r = e[t];
|
|
3638
|
-
if (
|
|
3639
|
-
else if (
|
|
3640
|
-
else if (
|
|
3644
|
+
if (Mr(bl, r)) n.real_type || (n.real_type = r);
|
|
3645
|
+
else if (Mr(ml, r)) n.type || (n.type = r);
|
|
3646
|
+
else if (Mr(pl, r)) switch (r) {
|
|
3641
3647
|
case "writable":
|
|
3642
3648
|
n.is_writable = !0;
|
|
3643
3649
|
break;
|
|
@@ -3649,23 +3655,23 @@
|
|
|
3649
3655
|
}
|
|
3650
3656
|
}
|
|
3651
3657
|
n.real_type || (n.real_type = "string");
|
|
3652
|
-
} else
|
|
3658
|
+
} else rr(t) ? (n = hl(t), n.name || (n.name = e), n.header || (n.header = e)) : lr(t) && (n.real_type = "array", n.enum_list = t);
|
|
3653
3659
|
return n.type || (n.type = n.real_type), n;
|
|
3654
3660
|
}, e.timeTracker = function(e = "Time Tracker", t = !1) {
|
|
3655
3661
|
const n = e, r = performance.now();
|
|
3656
3662
|
let l = r;
|
|
3657
|
-
return t &&
|
|
3663
|
+
return t && jn(`--\x3e ${n} - starting`), { mark: (e = "Intermediate", o = "") => {
|
|
3658
3664
|
const s = performance.now(), i = (s - l) / 1e3, _ = (s - r) / 1e3;
|
|
3659
|
-
return t &&
|
|
3665
|
+
return t && jn(`--\x3e ${n} ${e} - partial: ${i} sec, total: ${_} sec, ${o}`), l = s, {
|
|
3660
3666
|
partial: i,
|
|
3661
3667
|
total: _
|
|
3662
3668
|
};
|
|
3663
3669
|
} };
|
|
3664
|
-
}, e.trace_json =
|
|
3665
|
-
if (
|
|
3670
|
+
}, e.trace_json = wn, e.trace_json_masked = Mn, e.trace_level_t = P, e.trace_msg = Sn, e.treedb_decoder_fkey = dl, e.treedb_decoder_hook = function(e, t) {
|
|
3671
|
+
if (or(t)) {
|
|
3666
3672
|
if (-1 === t.indexOf("^")) {
|
|
3667
3673
|
let n, r = e.hook;
|
|
3668
|
-
if (1 !==
|
|
3674
|
+
if (1 !== er(r)) return vn("bad hook 1"), vn(e), vn(t), null;
|
|
3669
3675
|
for (let e of Object.keys(r)) {
|
|
3670
3676
|
n = e, r[e];
|
|
3671
3677
|
break;
|
|
@@ -3677,25 +3683,25 @@
|
|
|
3677
3683
|
}
|
|
3678
3684
|
{
|
|
3679
3685
|
let n = t.split("^");
|
|
3680
|
-
return 2 !== n.length ? (
|
|
3686
|
+
return 2 !== n.length ? (vn("bad hook 2"), vn(e), vn(t), null) : {
|
|
3681
3687
|
topic_name: n[0],
|
|
3682
3688
|
id: n[1]
|
|
3683
3689
|
};
|
|
3684
3690
|
}
|
|
3685
3691
|
}
|
|
3686
|
-
return
|
|
3692
|
+
return rr(t) ? {
|
|
3687
3693
|
topic_name: t.topic_name,
|
|
3688
3694
|
id: t.id
|
|
3689
|
-
} : (
|
|
3695
|
+
} : (vn("bad hook 3"), vn(e), vn(t), null);
|
|
3690
3696
|
}, e.treedb_encoder_fkey = function(e, t) {
|
|
3691
|
-
let n =
|
|
3697
|
+
let n = dl(e, t);
|
|
3692
3698
|
return n ? n.topic_name + "^" + n.id + "^" + n.hook_name : null;
|
|
3693
|
-
}, e.treedb_get_field_desc =
|
|
3694
|
-
if (
|
|
3699
|
+
}, e.treedb_get_field_desc = hl, e.treedb_hook_data_size = function(e) {
|
|
3700
|
+
if (lr(e) && 1 === nr(e)) {
|
|
3695
3701
|
let t = e[0];
|
|
3696
|
-
return
|
|
3702
|
+
return mr(t, "size") ? t.size : 1;
|
|
3697
3703
|
}
|
|
3698
|
-
return
|
|
3704
|
+
return nr(e);
|
|
3699
3705
|
}, e.vsprintf = function(e, t) {
|
|
3700
3706
|
return n.apply(null, [e].concat(t || []));
|
|
3701
3707
|
}, e.walk_type_t = D;
|