@yuneta/gobj-js 7.13.4 → 7.13.6
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/README.md +13 -0
- package/dist/gobj-js.cjs.js +50 -13
- package/dist/gobj-js.cjs.js.map +1 -1
- package/dist/gobj-js.cjs.min.js +878 -863
- package/dist/gobj-js.cjs.min.js.map +1 -1
- package/dist/gobj-js.es.js +49 -14
- package/dist/gobj-js.es.js.map +1 -1
- package/dist/gobj-js.es.min.js +915 -899
- package/dist/gobj-js.es.min.js.map +1 -1
- package/dist/gobj-js.iife.js +50 -13
- package/dist/gobj-js.iife.js.map +1 -1
- package/dist/gobj-js.iife.min.js +878 -863
- package/dist/gobj-js.iife.min.js.map +1 -1
- package/dist/gobj-js.umd.js +50 -13
- package/dist/gobj-js.umd.js.map +1 -1
- package/dist/gobj-js.umd.min.js +878 -863
- package/dist/gobj-js.umd.min.js.map +1 -1
- package/package.json +1 -1
package/dist/gobj-js.umd.min.js
CHANGED
|
@@ -178,7 +178,7 @@
|
|
|
178
178
|
}
|
|
179
179
|
}, O = class {
|
|
180
180
|
constructor(e, t, n, r, o) {
|
|
181
|
-
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(o) || 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 =
|
|
181
|
+
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(o) || 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 = en(t.priv), this.running = !1, this.playing = !1, this.disabled = !1, this.bottom_gobj = null, this.trace_level = 0, this.no_trace_level = 0;
|
|
182
182
|
}
|
|
183
183
|
}, N = Object.freeze({
|
|
184
184
|
gcflag_manual_start: 1,
|
|
@@ -224,7 +224,7 @@
|
|
|
224
224
|
};
|
|
225
225
|
var C = 0;
|
|
226
226
|
function L(e) {
|
|
227
|
-
|
|
227
|
+
pn(e) && (e = JSON.stringify(e)), Qt(" ".repeat(Math.max(1, 2 * E)) + String(e));
|
|
228
228
|
}
|
|
229
229
|
var P = Object.freeze({
|
|
230
230
|
TRACE_MACHINE: 65536,
|
|
@@ -320,7 +320,7 @@
|
|
|
320
320
|
]
|
|
321
321
|
], F = 0, G = 0, V = 0;
|
|
322
322
|
function M(e, t) {
|
|
323
|
-
if (
|
|
323
|
+
if (Sn(e)) return 268369920;
|
|
324
324
|
if (/^[0-9]+$/.test(String(e))) {
|
|
325
325
|
const t = Number(e);
|
|
326
326
|
if (t) return t;
|
|
@@ -328,7 +328,7 @@
|
|
|
328
328
|
return function(e) {
|
|
329
329
|
for (const [t, n] of U) if (t === e) return n;
|
|
330
330
|
return 0;
|
|
331
|
-
}(String(e)) || (
|
|
331
|
+
}(String(e)) || (Ht(`${t}: trace level NOT FOUND: ${e}`), 0);
|
|
332
332
|
}
|
|
333
333
|
function W(e) {
|
|
334
334
|
if (V) return 4294967295;
|
|
@@ -342,11 +342,11 @@
|
|
|
342
342
|
function x() {
|
|
343
343
|
if (!p || !p.jn_attrs) return 0;
|
|
344
344
|
let e = 0;
|
|
345
|
-
if (
|
|
346
|
-
const t = Number(
|
|
345
|
+
if (ot(p, "tracing")) {
|
|
346
|
+
const t = Number(it(p, "tracing")) || 0;
|
|
347
347
|
t >= 1 && (e |= P.TRACE_MACHINE), t >= 2 && (e |= P.TRACE_EV_KW);
|
|
348
348
|
}
|
|
349
|
-
return
|
|
349
|
+
return ot(p, "trace_timer") && it(p, "trace_timer") && (e |= P.TRACE_TIMER), ot(p, "trace_creation") && it(p, "trace_creation") && (e |= P.TRACE_CREATE_DELETE), ot(p, "trace_start_stop") && it(p, "trace_start_stop") && (e |= P.TRACE_START_STOP), e;
|
|
350
350
|
}
|
|
351
351
|
function Y(e) {
|
|
352
352
|
return (W(e) | x()) & P.TRACE_CREATE_DELETE;
|
|
@@ -368,7 +368,7 @@
|
|
|
368
368
|
}
|
|
369
369
|
function H(e, t) {
|
|
370
370
|
let n = {};
|
|
371
|
-
if (!
|
|
371
|
+
if (!mn(t)) return Ht("sdata_desc MUST be an array"), Zt(t), n;
|
|
372
372
|
for (let r = 0; r < t.length; r++) {
|
|
373
373
|
const o = t[r];
|
|
374
374
|
o.name && z(e, n, o);
|
|
@@ -382,133 +382,133 @@
|
|
|
382
382
|
r = String(o);
|
|
383
383
|
break;
|
|
384
384
|
case T.DTP_BOOLEAN:
|
|
385
|
-
r =
|
|
385
|
+
r = On(o);
|
|
386
386
|
break;
|
|
387
387
|
case T.DTP_INTEGER:
|
|
388
|
-
r = parseInt(o), isNaN(r) &&
|
|
388
|
+
r = parseInt(o), isNaN(r) && Ht(`${Ve(e)}: attr NaN: ${n.name}`);
|
|
389
389
|
break;
|
|
390
390
|
case T.DTP_REAL:
|
|
391
|
-
r = Number(o), isNaN(r) &&
|
|
391
|
+
r = Number(o), isNaN(r) && Ht(`${Ve(e)}: attr NaN: ${n.name}`);
|
|
392
392
|
break;
|
|
393
393
|
case T.DTP_LIST:
|
|
394
|
-
if (
|
|
394
|
+
if (En(o)) try {
|
|
395
395
|
r = JSON.parse(o);
|
|
396
396
|
} catch (e) {
|
|
397
|
-
|
|
397
|
+
Ht(`JSON parse error: ${e.message}`);
|
|
398
398
|
}
|
|
399
399
|
else r = o;
|
|
400
|
-
|
|
400
|
+
mn(r) || (r = []);
|
|
401
401
|
break;
|
|
402
402
|
case T.DTP_DICT:
|
|
403
|
-
if (
|
|
403
|
+
if (En(o)) try {
|
|
404
404
|
r = JSON.parse(o);
|
|
405
405
|
} catch (e) {
|
|
406
|
-
|
|
406
|
+
Ht(`JSON parse error: ${e.message}`);
|
|
407
407
|
}
|
|
408
408
|
else r = o;
|
|
409
|
-
|
|
409
|
+
pn(r) || (r = {});
|
|
410
410
|
break;
|
|
411
411
|
case T.DTP_JSON:
|
|
412
|
-
if (
|
|
412
|
+
if (En(o)) try {
|
|
413
413
|
r = JSON.parse(o);
|
|
414
414
|
} catch (e) {
|
|
415
|
-
|
|
415
|
+
Ht(`JSON parse error: ${e.message}`);
|
|
416
416
|
}
|
|
417
417
|
else r = o;
|
|
418
418
|
break;
|
|
419
419
|
case T.DTP_POINTER: r = o;
|
|
420
420
|
}
|
|
421
|
-
return void 0 === r && (
|
|
421
|
+
return void 0 === r && (Ht(`default_value WRONG, it: ${n.name}, value: ${n.default_value}`), r = null), t[n.name] = r, 0;
|
|
422
422
|
}
|
|
423
423
|
function Q(e, t, n, r) {
|
|
424
424
|
let o;
|
|
425
425
|
switch (n.type) {
|
|
426
426
|
case T.DTP_STRING:
|
|
427
427
|
if (null == r) o = "";
|
|
428
|
-
else if (
|
|
428
|
+
else if (En(r)) o = String(r);
|
|
429
429
|
else {
|
|
430
430
|
let e = JSON.stringify(r);
|
|
431
431
|
e && (o = String(e));
|
|
432
432
|
}
|
|
433
433
|
break;
|
|
434
434
|
case T.DTP_BOOLEAN:
|
|
435
|
-
o =
|
|
435
|
+
o = On(r);
|
|
436
436
|
break;
|
|
437
437
|
case T.DTP_INTEGER:
|
|
438
|
-
o = parseInt(r), isNaN(o) &&
|
|
438
|
+
o = parseInt(r), isNaN(o) && Ht(`${Ve(e)}: attr NaN: ${n.name}`);
|
|
439
439
|
break;
|
|
440
440
|
case T.DTP_REAL:
|
|
441
|
-
o = Number(r), isNaN(o) &&
|
|
441
|
+
o = Number(r), isNaN(o) && Ht(`${Ve(e)}: attr NaN: ${n.name}`);
|
|
442
442
|
break;
|
|
443
443
|
case T.DTP_LIST:
|
|
444
|
-
if (
|
|
444
|
+
if (En(r)) try {
|
|
445
445
|
o = JSON.parse(r);
|
|
446
446
|
} catch (e) {
|
|
447
|
-
|
|
447
|
+
Ht(`JSON parse error: ${e.message}`);
|
|
448
448
|
}
|
|
449
449
|
else o = r;
|
|
450
|
-
if (!
|
|
450
|
+
if (!mn(o)) return Ht(`attr must be an array: ${n.name}`), -1;
|
|
451
451
|
break;
|
|
452
452
|
case T.DTP_DICT:
|
|
453
|
-
if (
|
|
453
|
+
if (En(r)) try {
|
|
454
454
|
o = JSON.parse(r);
|
|
455
455
|
} catch (e) {
|
|
456
|
-
|
|
456
|
+
Ht(`JSON parse error: ${e.message}`);
|
|
457
457
|
}
|
|
458
458
|
else o = r;
|
|
459
|
-
if (!
|
|
459
|
+
if (!pn(o)) return Ht(`attr must be an object: ${n.name}`), -1;
|
|
460
460
|
break;
|
|
461
461
|
case T.DTP_JSON:
|
|
462
|
-
if (
|
|
462
|
+
if (En(r)) try {
|
|
463
463
|
o = JSON.parse(r);
|
|
464
464
|
} catch (e) {
|
|
465
|
-
|
|
465
|
+
Ht(`JSON parse error: ${e.message}`);
|
|
466
466
|
}
|
|
467
467
|
else o = r;
|
|
468
|
-
if (!
|
|
468
|
+
if (!mn(o) && !pn(o)) return Ht(`attr must be a json dict/list: ${n.name}`), -1;
|
|
469
469
|
break;
|
|
470
470
|
case T.DTP_POINTER: o = r;
|
|
471
471
|
}
|
|
472
|
-
return void 0 === o &&
|
|
472
|
+
return void 0 === o && Ht(`${Ve(e)}: attr undefined: ${n.name}`), t[n.name] = o, pn(e.priv) && e.priv.hasOwnProperty(n.name) && (e.priv[n.name] = o), e.obflag & w.obflag_created && !(e.obflag & w.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, n.name), 0;
|
|
473
473
|
}
|
|
474
474
|
function X(e) {
|
|
475
475
|
return e.jn_attrs;
|
|
476
476
|
}
|
|
477
477
|
function Z(e, t, n) {
|
|
478
|
-
return
|
|
478
|
+
return ot(e, t) ? X(e) : e && e.bottom_gobj ? Z(e.bottom_gobj, t, n) : (n && Ht(`GClass Attribute NOT FOUND: ${Ve(e)}, attr ${t}`), null);
|
|
479
479
|
}
|
|
480
480
|
function ee(e, t, n) {
|
|
481
|
-
if (!(e && e instanceof S)) return n &&
|
|
481
|
+
if (!(e && e instanceof S)) return n && Ht("gclass NULL"), null;
|
|
482
482
|
if (!t) return e.attrs_table;
|
|
483
483
|
for (let n = 0; n < e.attrs_table.length; n++) {
|
|
484
484
|
const r = e.attrs_table[n];
|
|
485
485
|
if (r.name && r.name === t) return r;
|
|
486
486
|
}
|
|
487
|
-
return n &&
|
|
487
|
+
return n && Ht(`${e.gclass_name}: GClass Attribute NOT FOUND: ${t}`), null;
|
|
488
488
|
}
|
|
489
489
|
function te(e, t, n, r, o, i, l, s, _, a, u) {
|
|
490
|
-
if (
|
|
491
|
-
if (e.includes("`") || e.includes("^") || e.includes(".")) return
|
|
492
|
-
if (ce(e)) return
|
|
490
|
+
if (Sn(e)) return Ht("gclass_name EMPTY"), null;
|
|
491
|
+
if (e.includes("`") || e.includes("^") || e.includes(".")) return Ht(`GClass name CANNOT have '.' or '^' or '\`' char: ${e}`), null;
|
|
492
|
+
if (ce(e)) return Ht(`GClass ALREADY exists: ${e}`), null;
|
|
493
493
|
let c = new S(e, r, o, i, l, s, _, a, u);
|
|
494
494
|
(function(e, t) {
|
|
495
|
-
e && e instanceof S ? t ? d[t] ?
|
|
495
|
+
e && e instanceof S ? t ? d[t] ? Ht(`gclass ALREADY REGISTERED: ${t}`) : d[t] = e : Ht("gclass_name undefined") : Ht("gclass undefined");
|
|
496
496
|
})(c, e);
|
|
497
497
|
const f = n.length;
|
|
498
498
|
for (let e = 0; e < f; e++) {
|
|
499
499
|
let t = n[e][0], r = n[e][1];
|
|
500
|
-
if (
|
|
500
|
+
if (Sn(t)) continue;
|
|
501
501
|
if (ie(c, t) < 0) return ne(c), null;
|
|
502
502
|
const o = r.length;
|
|
503
503
|
for (let e = 0; e < o; e++) {
|
|
504
504
|
let n = r[e][0], o = r[e][1], i = r[e][2];
|
|
505
|
-
|
|
505
|
+
Sn(n) || le(c, t, n, o, i);
|
|
506
506
|
}
|
|
507
507
|
}
|
|
508
508
|
for (let e = 0; e < t.length; e++) {
|
|
509
509
|
let n = t[e][0], r = t[e][1];
|
|
510
|
-
if (!
|
|
511
|
-
if (ae(c, n)) return
|
|
510
|
+
if (!Sn(n)) {
|
|
511
|
+
if (ae(c, n)) return Ht(`SMachine: event repeated in input_events: ${n}`), ne(c), null;
|
|
512
512
|
_e(c, n, r);
|
|
513
513
|
}
|
|
514
514
|
}
|
|
@@ -520,13 +520,13 @@
|
|
|
520
520
|
}
|
|
521
521
|
function ne(e) {
|
|
522
522
|
let t;
|
|
523
|
-
if (
|
|
523
|
+
if (En(e)) t = e;
|
|
524
524
|
else {
|
|
525
|
-
if (!(e instanceof S)) return
|
|
525
|
+
if (!(e instanceof S)) return Ht("Cannot unregister gclass, type unknown"), -1;
|
|
526
526
|
t = e.gclass_name;
|
|
527
527
|
}
|
|
528
528
|
let n = d[t];
|
|
529
|
-
return n ? n.instances > 0 ? (
|
|
529
|
+
return n ? n.instances > 0 ? (Ht(`Cannot unregister gclass, instances in use: ${t}`), -1) : (delete d[t], 0) : (Ht(`Cannot unregister gclass, not found: ${t}`), -1);
|
|
530
530
|
}
|
|
531
531
|
function re(e, t) {
|
|
532
532
|
const n = e.dl_states.length, r = e.dl_states;
|
|
@@ -545,22 +545,22 @@
|
|
|
545
545
|
return null;
|
|
546
546
|
}
|
|
547
547
|
function ie(e, t) {
|
|
548
|
-
return e instanceof S ? re(e, t) ? (
|
|
548
|
+
return e instanceof S ? re(e, t) ? (Ht(`state already exists: ${t}`), -1) : (e.dl_states.push(new I(t)), 0) : (Ht("Cannot add state, typeof not GClass"), -1);
|
|
549
549
|
}
|
|
550
550
|
function le(e, t, n, r, o) {
|
|
551
|
-
if (!(e instanceof S)) return
|
|
552
|
-
if (
|
|
551
|
+
if (!(e instanceof S)) return Ht("Cannot add state, typeof not GClass"), -1;
|
|
552
|
+
if (Sn(t)) return Ht("state_name EMPTY"), -1;
|
|
553
553
|
let i = re(e, t);
|
|
554
|
-
return i ? oe(i, n) ? (
|
|
554
|
+
return i ? oe(i, n) ? (Ht(`event already exists: gclass ${e.gclass_name}, state ${t}, event ${n}`), -1) : (i.dl_actions.push(new k(n, r, o)), 0) : (Ht(`state not found: ${t}`), -1);
|
|
555
555
|
}
|
|
556
556
|
function se(e, t, n) {
|
|
557
|
-
|
|
557
|
+
Sn(t) || e.push(new $(t, n));
|
|
558
558
|
}
|
|
559
559
|
function _e(e, t, n) {
|
|
560
|
-
return e instanceof S ? se(e.dl_events, t, n) : (
|
|
560
|
+
return e instanceof S ? se(e.dl_events, t, n) : (Ht("Cannot add state, typeof not GClass"), -1);
|
|
561
561
|
}
|
|
562
562
|
function ae(e, t) {
|
|
563
|
-
if (!(e instanceof S)) return
|
|
563
|
+
if (!(e instanceof S)) return Ht("Cannot add state, typeof not GClass"), 0;
|
|
564
564
|
const n = e.dl_events.length, r = e.dl_events;
|
|
565
565
|
for (let e = 0; e < n; e++) {
|
|
566
566
|
let n = r[e];
|
|
@@ -569,25 +569,25 @@
|
|
|
569
569
|
return null;
|
|
570
570
|
}
|
|
571
571
|
function ue(e) {
|
|
572
|
-
if (!(e instanceof S)) return
|
|
572
|
+
if (!(e instanceof S)) return Ht("Cannot add state, typeof not GClass"), -1;
|
|
573
573
|
let t = 0;
|
|
574
|
-
|
|
574
|
+
dn(e.dl_states) || (Ht(`GClass without states: ${e.gclass_name}`), t += -1);
|
|
575
575
|
for (let n = 0; n < e.dl_states.length; n++) {
|
|
576
576
|
let r = e.dl_states[n];
|
|
577
|
-
if (!
|
|
577
|
+
if (!Sn(r.state_name)) for (let n = 0; n < r.dl_actions.length; n++) {
|
|
578
578
|
let o = r.dl_actions[n];
|
|
579
|
-
|
|
579
|
+
Sn(o.event_name) || (ae(e, o.event_name) || (Ht(`SMachine: state's event NOT in input_events: gclass ${e.gclass_name}, state ${r.state_name}, event ${o.event_name}`), t += -1), o.next_state && (re(e, o.next_state) || (Ht(`SMachine: next state NOT in state names: gclass ${e.gclass_name}, state ${r.state_name}, next_state ${o.next_state}`), t += -1)));
|
|
580
580
|
}
|
|
581
581
|
}
|
|
582
582
|
for (let n = 0; n < e.dl_events.length; n++) {
|
|
583
583
|
let r = e.dl_events[n];
|
|
584
|
-
if (!
|
|
584
|
+
if (!Sn(r.event_name) && (Tn(r.event_flag) || (Ht(`SMachine: event flag is NOT number: gclass ${e.gclass_name}, event ${r.event_name}`), t += -1), !(r.event_flag & D.EVF_OUTPUT_EVENT))) {
|
|
585
585
|
let n = !1;
|
|
586
586
|
for (let t = 0; t < e.dl_states.length; t++) {
|
|
587
587
|
let o = e.dl_states[t];
|
|
588
|
-
|
|
588
|
+
Sn(o.state_name) || oe(o, r.event_name) && (n = !0);
|
|
589
589
|
}
|
|
590
|
-
n || (
|
|
590
|
+
n || (Ht(`SMachine: input_list's event NOT in state: gclass ${e.gclass_name}, event ${r.event_name}`), t += -1);
|
|
591
591
|
}
|
|
592
592
|
}
|
|
593
593
|
return t;
|
|
@@ -597,62 +597,62 @@
|
|
|
597
597
|
try {
|
|
598
598
|
n = d[e];
|
|
599
599
|
} catch (e) {}
|
|
600
|
-
return n || (t &&
|
|
600
|
+
return n || (t && Ht(`gclass not found: ${e}`), null);
|
|
601
601
|
}
|
|
602
602
|
function fe() {
|
|
603
603
|
return !m || m.obflag & w.obflag_destroyed ? null : m;
|
|
604
604
|
}
|
|
605
605
|
function ge(e, t) {
|
|
606
606
|
e = e.toLowerCase();
|
|
607
|
-
return b[e] || (t &&
|
|
607
|
+
return b[e] || (t && Ht(`gobj service not found: ${e}`), null);
|
|
608
608
|
}
|
|
609
609
|
function de(e) {
|
|
610
610
|
let t = Fe(e);
|
|
611
|
-
return t = t.toLowerCase(), b[t] &&
|
|
611
|
+
return t = t.toLowerCase(), b[t] && Ht(`service ALREADY REGISTERED: ${t}. Will be UPDATED`), b[t] = e, 0;
|
|
612
612
|
}
|
|
613
613
|
function be(e, t) {
|
|
614
|
-
t.parent &&
|
|
614
|
+
t.parent && Ht(`_add_child() ALREADY HAS PARENT: ${t.gobj_name}`), e.dl_children.push(t), t.parent = e;
|
|
615
615
|
}
|
|
616
616
|
function pe(e, t) {
|
|
617
|
-
let n =
|
|
618
|
-
n >= 0 && (
|
|
617
|
+
let n = ur(e.dl_children, t);
|
|
618
|
+
n >= 0 && (fn(e.dl_children, n), t.parent = null);
|
|
619
619
|
}
|
|
620
620
|
function me(e, t) {
|
|
621
|
-
"__json_config_variables__" !== t &&
|
|
621
|
+
"__json_config_variables__" !== t && Ht(`GClass Attribute NOT FOUND: ${Ve(e)}, attr ${t}`);
|
|
622
622
|
}
|
|
623
623
|
function Ee(e, t, n) {
|
|
624
624
|
let r = t;
|
|
625
625
|
(function(e, t, n, r, o) {
|
|
626
|
-
if (!e || !t) return
|
|
626
|
+
if (!e || !t) return Ht("hsdata or kw NULL"), -1;
|
|
627
627
|
let i = 0;
|
|
628
628
|
for (const [l, s] of Object.entries(t)) {
|
|
629
629
|
const t = ee(o.gclass, l, !1);
|
|
630
|
-
t ? (-1 === n || t.flag & n) && (t.flag & h.SDF_DEPRECATED &&
|
|
630
|
+
t ? (-1 === n || t.flag & n) && (t.flag & h.SDF_DEPRECATED && zt(`${Ve(o)}: Deprecated attribute used in gobj creation: ${l}`), i += Q(o, e, t, s)) : r && (r(o, l), i--);
|
|
631
631
|
}
|
|
632
632
|
return i;
|
|
633
|
-
})(X(e), r, -1, e.gclass.gclass_flag & N.gcflag_ignore_unknown_attrs ? 0 : me, e) < 0 && (
|
|
633
|
+
})(X(e), r, -1, e.gclass.gclass_flag & N.gcflag_ignore_unknown_attrs ? 0 : me, e) < 0 && (Ht(`${Ve(e)} json2data() FAILED`), Zt(r));
|
|
634
634
|
}
|
|
635
635
|
function Te(e, t, r, o, i) {
|
|
636
636
|
if (i & R.gobj_flag_yuno) {
|
|
637
|
-
if (p) return
|
|
637
|
+
if (p) return Ht("__yuno__ already created"), null;
|
|
638
638
|
i |= R.gobj_flag_service;
|
|
639
639
|
} else {
|
|
640
|
-
if (!o) return
|
|
641
|
-
if (!("string" == typeof o || o instanceof O)) return
|
|
642
|
-
if (
|
|
640
|
+
if (!o) return Ht("gobj NEEDS a parent!"), null;
|
|
641
|
+
if (!("string" == typeof o || o instanceof O)) return Ht(`BAD TYPE of parent: ${o}`), null;
|
|
642
|
+
if (En(o) && !(o = ge(o))) return zt(`parent service not found: ${o}`), null;
|
|
643
643
|
}
|
|
644
|
-
if (i & R.gobj_flag_service && ge(e, !1)) return
|
|
644
|
+
if (i & R.gobj_flag_service && ge(e, !1)) return Ht(`service ALREADY registered: ${t}^${e}`), null;
|
|
645
645
|
if (i & R.gobj_flag_default_service) {
|
|
646
|
-
if (m) return
|
|
646
|
+
if (m) return Ht(`default service ALREADY registered: ${t}^${e}`), null;
|
|
647
647
|
i |= R.gobj_flag_service;
|
|
648
648
|
}
|
|
649
|
-
if (
|
|
649
|
+
if (Sn(t)) return Ht("gclass_name must be a string"), null;
|
|
650
650
|
let l = ce(t, !1);
|
|
651
|
-
if (!l) return
|
|
652
|
-
if (!
|
|
653
|
-
if (!
|
|
654
|
-
if (e.includes("`")) return
|
|
655
|
-
if (e.includes("^")) return
|
|
651
|
+
if (!l) return Ht(`GClass not registered: ${t}^${e}`), null;
|
|
652
|
+
if (!En(e)) return Ht(`gobj_name must be a string: ${t}`), null;
|
|
653
|
+
if (!Sn(e)) {
|
|
654
|
+
if (e.includes("`")) return Ht(`gobj_name cannot contain char ': ${t}^${e}`), null;
|
|
655
|
+
if (e.includes("^")) return Ht(`gobj_name cannot contain char ^: ${t}^${e}`), null;
|
|
656
656
|
}
|
|
657
657
|
let _ = new O(e, l, r, o, i);
|
|
658
658
|
_.jn_attrs = H(_, l.attrs_table);
|
|
@@ -664,19 +664,19 @@
|
|
|
664
664
|
return Te(e, t, n, r, R.gobj_flag_pure_child);
|
|
665
665
|
}
|
|
666
666
|
function ye(e) {
|
|
667
|
-
if (Ye(e)) return void
|
|
668
|
-
e.__refs__ > 0 &&
|
|
669
|
-
if (0 ===
|
|
670
|
-
for (let t of
|
|
671
|
-
|
|
667
|
+
if (Ye(e)) return void Ht("gobj NULL or DESTROYED");
|
|
668
|
+
e.__refs__ > 0 && Ht(`${Ve(e)}: gobj DESTROYING with references: ${e.__refs__}`), e.playing && (Ht(`Destroying a PLAYING gobj: ${Me(e)}`), De(e)), e.running && (Ht(`Destroying a RUNNING gobj: ${Me(e)}`), Oe(e)), e.obflag |= w.obflag_destroying, function(e) {
|
|
669
|
+
if (0 === ht.length) return;
|
|
670
|
+
for (let t of ht) t.src === e && (t.src = null);
|
|
671
|
+
ht = ht.filter((t) => t.dst !== e);
|
|
672
672
|
}(e);
|
|
673
673
|
let t = Y(e);
|
|
674
674
|
t && L(n("💔💔⏩ destroying: %s", Me(e)));
|
|
675
675
|
let r = We(e);
|
|
676
676
|
r && r.gclass.gmt.mt_child_removed && (t && L(n("👦👦🔴 child_removed(%s): %s", Me(r), Ve(e))), r.gclass.gmt.mt_child_removed(r, e)), e.gobj_flag & R.gobj_flag_service && function(e) {
|
|
677
677
|
let t = Fe(e);
|
|
678
|
-
t = t.toLowerCase(), b[t] ? delete b[t] :
|
|
679
|
-
}(e),
|
|
678
|
+
t = t.toLowerCase(), b[t] ? delete b[t] : Ht(`"service NOT found in register": ${t}`);
|
|
679
|
+
}(e), kt(e, e.dl_subscriptions, !0), kt(e, e.dl_subscribings, !0), r && (pe(r, e), Ke(e) && (Be(r) !== e || Ye(r) || Je(r, null))), function(e) {
|
|
680
680
|
let t = e.dl_children.slice();
|
|
681
681
|
for (let e = 0; e < t.length; e++) {
|
|
682
682
|
let n = t[e];
|
|
@@ -685,9 +685,9 @@
|
|
|
685
685
|
}(e), e.obflag & w.obflag_created && e.gclass.gmt.mt_destroy && e.gclass.gmt.mt_destroy(e), t && L(n("💔💔⏪ destroyed: %s", Me(e))), e.obflag |= w.obflag_destroyed, e.obflag & w.obflag_created && e.gclass.instances--;
|
|
686
686
|
}
|
|
687
687
|
function ve(e) {
|
|
688
|
-
if (Ye(e)) return
|
|
689
|
-
if (e.running) return
|
|
690
|
-
if (e.disabled) return
|
|
688
|
+
if (Ye(e)) return Ht("gobj NULL or DESTROYED"), -1;
|
|
689
|
+
if (e.running) return Ht(`${Ve(e)}: GObj ALREADY RUNNING`), -1;
|
|
690
|
+
if (e.disabled) return Ht(`${Ve(e)}: GObj DISABLED`), -1;
|
|
691
691
|
B(e) && L(n("⏺ ⏺ start: %s", Me(e))), e.running = !0;
|
|
692
692
|
let t = 0;
|
|
693
693
|
return e.gclass.gmt.mt_start && (t = e.gclass.gmt.mt_start(e)), t;
|
|
@@ -699,9 +699,9 @@
|
|
|
699
699
|
return e.gclass.gclass_flag & N.gcflag_manual_start || ke(e) ? 1 : (Ae(e) || ve(e), 0);
|
|
700
700
|
}
|
|
701
701
|
function Oe(e) {
|
|
702
|
-
if (Ye(e)) return
|
|
703
|
-
if (!e.running) return
|
|
704
|
-
e.playing && (
|
|
702
|
+
if (Ye(e)) return Ht("gobj NULL or DESTROYED"), -1;
|
|
703
|
+
if (!e.running) return Ht(`${Ve(e)}: GObj NOT RUNNING`), -1;
|
|
704
|
+
e.playing && (zt(`${Ve(e)}: GObj stopping without previous pause`), De(e)), B(e) && L(n("⏹ ⏹ stop: %s", Me(e))), e.running = !1;
|
|
705
705
|
let t = 0;
|
|
706
706
|
return e.gclass.gmt.mt_stop && (t = e.gclass.gmt.mt_stop(e)), t;
|
|
707
707
|
}
|
|
@@ -709,22 +709,22 @@
|
|
|
709
709
|
return Ae(e) && Oe(e), 0;
|
|
710
710
|
}
|
|
711
711
|
function Re(e) {
|
|
712
|
-
return Ye(e) ? (
|
|
712
|
+
return Ye(e) ? (Ht("gobj NULL or DESTROYED"), -1) : He(e, A.WALK_FIRST2LAST, Ne, 0, 0);
|
|
713
713
|
}
|
|
714
714
|
function we(e) {
|
|
715
|
-
if (Ye(e)) return
|
|
716
|
-
if (e.playing) return
|
|
717
|
-
if (e.disabled) return
|
|
715
|
+
if (Ye(e)) return Ht(`gobj NULL or DESTROYED: ${Ve(e)}`), -1;
|
|
716
|
+
if (e.playing) return Ht(`${Ve(e)}: GObj ALREADY PLAYING`), -1;
|
|
717
|
+
if (e.disabled) return Ht(`${Ve(e)}: GObj DISABLED`), -1;
|
|
718
718
|
if (!Ae(e)) {
|
|
719
|
-
if (e.gclass.gclass_flag & N.gcflag_required_start_to_play) return
|
|
720
|
-
|
|
719
|
+
if (e.gclass.gclass_flag & N.gcflag_required_start_to_play) return Ht(`${Ve(e)}: Cannot play, start not done`), -1;
|
|
720
|
+
zt(`${Ve(e)}: GObj playing without previous start`), ve(e);
|
|
721
721
|
}
|
|
722
722
|
B(e) && L(n("⏯ ⏯ play: %s", Me(e))), e.playing = !0;
|
|
723
723
|
let t = 0;
|
|
724
724
|
return e.gclass.gmt.mt_play && (t = e.gclass.gmt.mt_play(e), (t < 0 || !1 === t) && (e.playing = !1)), t;
|
|
725
725
|
}
|
|
726
726
|
function De(e) {
|
|
727
|
-
return Ye(e) ? (
|
|
727
|
+
return Ye(e) ? (Ht("gobj NULL or DESTROYED"), -1) : e.playing ? (B(e) && L(n("⏸ ⏸ pause: %s", Me(e))), e.playing = !1, e.gclass.gmt.mt_pause ? e.gclass.gmt.mt_pause(e) : 0) : (Ht(`${Ve(e)}: GObj NOT PLAYING`), -1);
|
|
728
728
|
}
|
|
729
729
|
function Ae(e) {
|
|
730
730
|
return !Ye(e) && e.running;
|
|
@@ -747,92 +747,95 @@
|
|
|
747
747
|
}
|
|
748
748
|
function Pe() {
|
|
749
749
|
let e = Ce();
|
|
750
|
-
return e ?
|
|
750
|
+
return e ? at(e, "yuno_role") : "";
|
|
751
751
|
}
|
|
752
752
|
function Ue() {
|
|
753
753
|
let e = Ce();
|
|
754
|
-
return e ?
|
|
754
|
+
return e ? at(e, "yuno_id") : "";
|
|
755
755
|
}
|
|
756
756
|
function Fe(e) {
|
|
757
|
-
return
|
|
757
|
+
return jn(e) ? e.gobj_name : (Ht("gobj bad type"), null);
|
|
758
758
|
}
|
|
759
759
|
function Ge(e) {
|
|
760
|
-
return
|
|
760
|
+
return jn(e) ? e.gclass.gclass_name : (Ht("gobj NULL of bad type"), null);
|
|
761
761
|
}
|
|
762
762
|
function Ve(e) {
|
|
763
|
-
return
|
|
763
|
+
return jn(e) ? e.gclass.gclass_name + "^" + Fe(e) : (Ht("gobj bad type"), null);
|
|
764
764
|
}
|
|
765
765
|
function Me(e) {
|
|
766
|
-
if (!
|
|
766
|
+
if (!jn(e)) return Ht("gobj NULL of bad type"), null;
|
|
767
767
|
let t = Ve(e), n = We(e);
|
|
768
768
|
for (; n;) t = Ve(n) + "`" + t, n = We(n);
|
|
769
769
|
return t;
|
|
770
770
|
}
|
|
771
771
|
function We(e) {
|
|
772
|
-
return
|
|
772
|
+
return jn(e) ? e.parent : (Ht("gobj NULL of bad type"), null);
|
|
773
773
|
}
|
|
774
774
|
function Ke(e) {
|
|
775
|
-
return
|
|
775
|
+
return jn(e) ? !!(e.gobj_flag & R.gobj_flag_volatil) : (Ht("gobj NULL of bad type"), null);
|
|
776
776
|
}
|
|
777
777
|
function xe(e) {
|
|
778
|
-
return
|
|
778
|
+
return jn(e) ? !!(e.gobj_flag & R.gobj_flag_pure_child) : (Ht("gobj NULL of bad type"), null);
|
|
779
779
|
}
|
|
780
780
|
function Ye(e) {
|
|
781
|
-
return !
|
|
781
|
+
return !jn(e) || !!(e.obflag & (w.obflag_destroyed | w.obflag_destroying));
|
|
782
782
|
}
|
|
783
783
|
function Be(e) {
|
|
784
|
-
return
|
|
784
|
+
return jn(e) ? e.bottom_gobj : (Ht("gobj NULL of bad type"), null);
|
|
785
785
|
}
|
|
786
786
|
function Je(e, t) {
|
|
787
|
-
if (!
|
|
788
|
-
e.bottom_gobj &&
|
|
787
|
+
if (!jn(e)) return Ht("gobj NULL of bad type"), null;
|
|
788
|
+
e.bottom_gobj && zt(`${Ve(e)}: bottom_gobj already set`), e.bottom_gobj = t;
|
|
789
789
|
}
|
|
790
790
|
function qe(e, t, n) {
|
|
791
|
-
return
|
|
791
|
+
return jn(e) ? t ? ee(e.gclass, t, n) : e.gclass.attrs_table : (Ht("gobj NULL of bad type"), null);
|
|
792
792
|
}
|
|
793
793
|
function He(e, t, n, r, o) {
|
|
794
|
-
return Ye(e) ? (
|
|
794
|
+
return Ye(e) ? (Ht("gobj NULL, destroying, or bad type"), 0) : Xe(e.dl_children, t, n, r, o);
|
|
795
795
|
}
|
|
796
796
|
function ze(e, t, n, r, o) {
|
|
797
|
-
return Ye(e) ? (
|
|
797
|
+
return Ye(e) ? (Ht("gobj NULL, destroying, or bad type"), 0) : et(e.dl_children, t, n, r, o);
|
|
798
798
|
}
|
|
799
|
-
function Qe(e
|
|
799
|
+
function Qe(e) {
|
|
800
|
+
return "number" == typeof e && isFinite(e) ? e : (null == e || Ht(`walk callback must return a NUMBER (-1 stop, 0 descend, >0 skip children), got ${typeof e}: taken as 0`), 0);
|
|
801
|
+
}
|
|
802
|
+
function Xe(e, t, n, r, o) {
|
|
800
803
|
let i, l = [...e];
|
|
801
804
|
if (t & A.WALK_LAST2FIRST) for (let e = l.length; e > 0; e--) {
|
|
802
805
|
i = l[e - 1];
|
|
803
|
-
let t = n(i, r, o);
|
|
806
|
+
let t = Qe(n(i, r, o));
|
|
804
807
|
if (t < 0) return t;
|
|
805
808
|
}
|
|
806
809
|
else for (let e = 0; e < l.length; e++) {
|
|
807
810
|
i = l[e];
|
|
808
|
-
let t = n(i, r, o);
|
|
811
|
+
let t = Qe(n(i, r, o));
|
|
809
812
|
if (t < 0) return t;
|
|
810
813
|
}
|
|
811
814
|
return 0;
|
|
812
815
|
}
|
|
813
|
-
function
|
|
814
|
-
let i, l =
|
|
816
|
+
function Ze(e, t, n, r, o) {
|
|
817
|
+
let i, l = Xe(e, t, n, r, o);
|
|
815
818
|
if (l < 0) return l;
|
|
816
819
|
if (t & A.WALK_LAST2FIRST) {
|
|
817
|
-
for (let s = e.length; s > 0; s--) if (i = e[s - 1], l =
|
|
818
|
-
} else for (let s = 0; s < e.length; s++) if (i = e[s], l =
|
|
820
|
+
for (let s = e.length; s > 0; s--) if (i = e[s - 1], l = Ze([...i.dl_children], t, n, r, o), l < 0) return l;
|
|
821
|
+
} else for (let s = 0; s < e.length; s++) if (i = e[s], l = Ze([...i.dl_children], t, n, r, o), l < 0) return l;
|
|
819
822
|
return l;
|
|
820
823
|
}
|
|
821
|
-
function
|
|
822
|
-
if (t & A.WALK_BYLEVEL) return
|
|
824
|
+
function et(e, t, n, r, o) {
|
|
825
|
+
if (t & A.WALK_BYLEVEL) return Ze(e, t, n, r, o);
|
|
823
826
|
let i, l;
|
|
824
827
|
if (t & A.WALK_BOTTOM2TOP) for (let s = e.length; s > 0; s--) {
|
|
825
|
-
if (l = e[s - 1], i =
|
|
826
|
-
if (i = n(l, r, o), i < 0) return i;
|
|
828
|
+
if (l = e[s - 1], i = et([...l.dl_children], t, n, r, o), i < 0) return i;
|
|
829
|
+
if (i = Qe(n(l, r, o)), i < 0) return i;
|
|
827
830
|
}
|
|
828
831
|
else for (let s = 0; s < e.length; s++) {
|
|
829
|
-
if (l = e[s], i = n(l, r, o), i < 0) return i;
|
|
830
|
-
if (0 === i && (i =
|
|
832
|
+
if (l = e[s], i = Qe(n(l, r, o)), i < 0) return i;
|
|
833
|
+
if (0 === i && (i = et([...l.dl_children], t, n, r, o), i < 0)) return i;
|
|
831
834
|
}
|
|
832
835
|
return 0;
|
|
833
836
|
}
|
|
834
|
-
function
|
|
835
|
-
if (!
|
|
837
|
+
function tt(e, t) {
|
|
838
|
+
if (!jn(e)) return Ht("gobj NULL of bad type"), !1;
|
|
836
839
|
let n = t.__gclass_name__, r = t.__gobj_name__, o = t.__prefix_gobj_name__;
|
|
837
840
|
t.__disabled__;
|
|
838
841
|
let i = t.__state__;
|
|
@@ -842,21 +845,21 @@
|
|
|
842
845
|
let t = o.length;
|
|
843
846
|
if (o !== Fe(e).substring(0, t)) return !1;
|
|
844
847
|
}
|
|
845
|
-
if (i && i !==
|
|
848
|
+
if (i && i !== pt(e)) return !1;
|
|
846
849
|
let l = e.jn_attrs;
|
|
847
|
-
for (const n of Object.keys(t)) if ("__gclass_name__" !== n && "__gobj_name__" !== n && "__prefix_gobj_name__" !== n && "__disabled__" !== n && "__state__" !== n &&
|
|
850
|
+
for (const n of Object.keys(t)) if ("__gclass_name__" !== n && "__gobj_name__" !== n && "__prefix_gobj_name__" !== n && "__disabled__" !== n && "__state__" !== n && ot(e, n) && l[n] !== t[n]) return !1;
|
|
848
851
|
return !0;
|
|
849
852
|
}
|
|
850
|
-
function
|
|
851
|
-
if (Ye(e)) return
|
|
853
|
+
function nt(e, t) {
|
|
854
|
+
if (Ye(e)) return Ht("gobj NULL or DESTROYED"), null;
|
|
852
855
|
const n = e.dl_children;
|
|
853
856
|
for (let e = 0; e < n.length; e++) {
|
|
854
857
|
const r = n[e];
|
|
855
|
-
if (
|
|
858
|
+
if (tt(r, t)) return r;
|
|
856
859
|
}
|
|
857
860
|
return null;
|
|
858
861
|
}
|
|
859
|
-
function
|
|
862
|
+
function rt(e, t) {
|
|
860
863
|
if (!t) return null;
|
|
861
864
|
let n = t.split("`");
|
|
862
865
|
if (!function(e, t) {
|
|
@@ -872,56 +875,56 @@
|
|
|
872
875
|
if (1 === n.length) return e;
|
|
873
876
|
let r = n[1].split("^"), o = {};
|
|
874
877
|
1 === r.length ? o.__gobj_name__ = r : (o.__gclass_name__ = r[0], o.__gobj_name__ = r[1]);
|
|
875
|
-
let i =
|
|
876
|
-
return i ? (n.splice(0, 1), n = n.join("`"),
|
|
878
|
+
let i = nt(e, o);
|
|
879
|
+
return i ? (n.splice(0, 1), n = n.join("`"), rt(i, n)) : null;
|
|
877
880
|
}
|
|
878
|
-
function
|
|
879
|
-
return !
|
|
881
|
+
function ot(e, t) {
|
|
882
|
+
return !Sn(t) && !!ee(e.gclass, t, !1);
|
|
880
883
|
}
|
|
881
|
-
function
|
|
884
|
+
function it(e, t, n) {
|
|
882
885
|
let r = e.jn_attrs;
|
|
883
886
|
if (t in r && r.hasOwnProperty(t)) {
|
|
884
887
|
let n = r[t];
|
|
885
888
|
return e.gclass.gmt.mt_reading ? e.gclass.gmt.mt_reading(e, t, n) : n;
|
|
886
889
|
}
|
|
887
|
-
return
|
|
890
|
+
return Ht(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), null;
|
|
888
891
|
}
|
|
889
|
-
function
|
|
892
|
+
function lt(e, t, n) {
|
|
890
893
|
let r = {}, o = e.gclass.attrs_table;
|
|
891
894
|
for (let n = 0; n < o.length; n++) {
|
|
892
895
|
const i = o[n];
|
|
893
896
|
if (i.name && (-1 === t || i.flag & t)) {
|
|
894
897
|
let t;
|
|
895
|
-
!e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ? t =
|
|
898
|
+
!e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ? t = ln(e.jn_attrs, i.name) : (t = e.gclass.gmt.mt_reading(e, i.name), void 0 === t && (t = ln(e.jn_attrs, i.name))), _n(r, i.name, t);
|
|
896
899
|
}
|
|
897
900
|
}
|
|
898
901
|
return r;
|
|
899
902
|
}
|
|
900
|
-
function
|
|
903
|
+
function st(e, t) {
|
|
901
904
|
if (t) {
|
|
902
|
-
if (0 ===
|
|
903
|
-
if (0 ===
|
|
904
|
-
if (0 ===
|
|
905
|
-
if (0 ===
|
|
905
|
+
if (0 === Rn(t, "__disabled__")) return ke(e);
|
|
906
|
+
if (0 === Rn(t, "__running__")) return Ae(e);
|
|
907
|
+
if (0 === Rn(t, "__playing__")) return $e(e);
|
|
908
|
+
if (0 === Rn(t, "__service__")) return Ie(e);
|
|
906
909
|
}
|
|
907
910
|
let n = Z(e, t, !1);
|
|
908
|
-
return n ? !e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ?
|
|
909
|
-
}
|
|
910
|
-
function st(e, t) {
|
|
911
|
-
t && Sn(t, "__trace_level__");
|
|
912
|
-
let n = Z(e, t, !1);
|
|
913
|
-
return n ? !e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ? nn(n, t) : e.gclass.gmt.mt_reading(e, t) : (Bt(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
|
|
911
|
+
return n ? !e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ? ln(n, t) : e.gclass.gmt.mt_reading(e, t) : (Ht(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
|
|
914
912
|
}
|
|
915
913
|
function _t(e, t) {
|
|
916
|
-
|
|
914
|
+
t && Rn(t, "__trace_level__");
|
|
917
915
|
let n = Z(e, t, !1);
|
|
918
|
-
return n ? !e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ?
|
|
916
|
+
return n ? !e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ? ln(n, t) : e.gclass.gmt.mt_reading(e, t) : (Ht(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
|
|
919
917
|
}
|
|
920
918
|
function at(e, t) {
|
|
919
|
+
if (t && 0 === Rn(t, "__state__")) return pt(e);
|
|
920
|
+
let n = Z(e, t, !1);
|
|
921
|
+
return n ? !e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ? ln(n, t) : e.gclass.gmt.mt_reading(e, t) : (Ht(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
|
|
922
|
+
}
|
|
923
|
+
function ut(e, t) {
|
|
921
924
|
let n = Z(e, t, !1);
|
|
922
|
-
return n ? !e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ?
|
|
925
|
+
return n ? !e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ? ln(n, t) : e.gclass.gmt.mt_reading(e, t) : (Ht(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
|
|
923
926
|
}
|
|
924
|
-
function
|
|
927
|
+
function ct(e, t, n, r) {
|
|
925
928
|
let o = X(e), i = 0;
|
|
926
929
|
for (const [r, l] of Object.entries(t)) {
|
|
927
930
|
let t = qe(e, r, !0);
|
|
@@ -929,34 +932,34 @@
|
|
|
929
932
|
}
|
|
930
933
|
return i;
|
|
931
934
|
}
|
|
932
|
-
function ct(e, t, n) {
|
|
933
|
-
let r = Z(e, t, !1);
|
|
934
|
-
return r ? (r[t] = vn(n), gn(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & w.obflag_created && !(e.obflag & w.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (Bt(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
|
|
935
|
-
}
|
|
936
935
|
function ft(e, t, n) {
|
|
937
936
|
let r = Z(e, t, !1);
|
|
938
|
-
return r ? (r[t] =
|
|
937
|
+
return r ? (r[t] = On(n), pn(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & w.obflag_created && !(e.obflag & w.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (Ht(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
|
|
939
938
|
}
|
|
940
939
|
function gt(e, t, n) {
|
|
941
940
|
let r = Z(e, t, !1);
|
|
942
|
-
return r ? (r[t] =
|
|
941
|
+
return r ? (r[t] = parseInt(n), pn(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & w.obflag_created && !(e.obflag & w.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (Ht(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
|
|
942
|
+
}
|
|
943
|
+
function dt(e, t, n) {
|
|
944
|
+
let r = Z(e, t, !1);
|
|
945
|
+
return r ? (r[t] = String(n), pn(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & w.obflag_created && !(e.obflag & w.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (Ht(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
|
|
943
946
|
}
|
|
944
|
-
function
|
|
945
|
-
if (Ye(e)) return
|
|
947
|
+
function bt(e, t) {
|
|
948
|
+
if (Ye(e)) return Ht("gobj NULL or DESTROYED"), null;
|
|
946
949
|
if (e.current_state.state_name === t) return !1;
|
|
947
950
|
let r = re(e.gclass, t);
|
|
948
|
-
if (!r) return
|
|
951
|
+
if (!r) return Ht(`${Ve(e)}: state unknown, state ${t}`), !1;
|
|
949
952
|
e.last_state = e.current_state, e.current_state = r;
|
|
950
953
|
let o = J(e, "EV_STATE_CHANGED"), i = !!function(e) {
|
|
951
954
|
return W(e) & P.TRACE_STATES;
|
|
952
955
|
}(e);
|
|
953
|
-
return (o || i) && L(n("🔀🔀 mach(%s%s^%s), new st(%s), prev st(%s)", e.running ? "" : "!!", Ge(e), Fe(e),
|
|
956
|
+
return (o || i) && L(n("🔀🔀 mach(%s%s^%s), new st(%s), prev st(%s)", e.running ? "" : "!!", Ge(e), Fe(e), pt(e), e.last_state.state_name)), !0;
|
|
954
957
|
}
|
|
955
|
-
function
|
|
956
|
-
return
|
|
958
|
+
function pt(e) {
|
|
959
|
+
return jn(e) ? e.current_state.state_name : (Ht("hgobj NULL"), "");
|
|
957
960
|
}
|
|
958
|
-
function
|
|
959
|
-
if (!
|
|
961
|
+
function mt(e, t, n) {
|
|
962
|
+
if (!jn(e)) return Ht("gobj NULL of bad type"), null;
|
|
960
963
|
let r = ae(e.gclass, t);
|
|
961
964
|
if (r) return r;
|
|
962
965
|
if (n) {
|
|
@@ -968,51 +971,51 @@
|
|
|
968
971
|
}
|
|
969
972
|
return null;
|
|
970
973
|
}
|
|
971
|
-
function
|
|
972
|
-
let r =
|
|
974
|
+
function Et(e, t, n) {
|
|
975
|
+
let r = mt(e, t, !1);
|
|
973
976
|
return !!r && !(n && !(r.event_flag & n));
|
|
974
977
|
}
|
|
975
|
-
function
|
|
976
|
-
let r =
|
|
978
|
+
function Tt(e, t, n) {
|
|
979
|
+
let r = mt(e, t, !1);
|
|
977
980
|
return !!r && !(n && !(r.event_flag & n)) && !!(r.event_flag & D.EVF_OUTPUT_EVENT);
|
|
978
981
|
}
|
|
979
|
-
var
|
|
980
|
-
function
|
|
981
|
-
|
|
982
|
-
let e =
|
|
983
|
-
|
|
982
|
+
var ht = [], yt = !1;
|
|
983
|
+
function vt() {
|
|
984
|
+
yt = !1;
|
|
985
|
+
let e = ht;
|
|
986
|
+
ht = [];
|
|
984
987
|
let t = 0;
|
|
985
|
-
for (let n of e) n.dst.obflag & (w.obflag_destroyed | w.obflag_destroying) || (
|
|
986
|
-
return
|
|
988
|
+
for (let n of e) n.dst.obflag & (w.obflag_destroyed | w.obflag_destroying) || (jt(n.dst, n.event, n.kw, n.src), t++);
|
|
989
|
+
return ht.length > 0 && !yt && (yt = !0, setTimeout(vt, 0)), t;
|
|
987
990
|
}
|
|
988
|
-
function
|
|
989
|
-
if (!(e && e instanceof O)) return
|
|
990
|
-
if (e.obflag & (w.obflag_destroyed | w.obflag_destroying)) return
|
|
991
|
+
function jt(e, t, r, o) {
|
|
992
|
+
if (!(e && e instanceof O)) return Ht("gobj dst NULL"), -1;
|
|
993
|
+
if (e.obflag & (w.obflag_destroyed | w.obflag_destroying)) return Ht("gobj dst DESTROYED"), -1;
|
|
991
994
|
let i = e.current_state;
|
|
992
|
-
if (!i) return
|
|
995
|
+
if (!i) return Ht(`${Ve(e)}: current_state NULL`), -1;
|
|
993
996
|
let l = J(e, t) && !q(o, t);
|
|
994
997
|
E++;
|
|
995
998
|
let s = oe(i, t);
|
|
996
|
-
if (!s) return e.gclass.gmt.mt_inject_event ? (E--, l && (L(n("🔃 mach(%s%s), st: %s, ev: %s, from(%s%s)", e.running ? "" : "!!", Ve(e), i.state_name, t || "", o && !o.running ? "!!" : "", Ve(o))), r && l > 1 &&
|
|
999
|
+
if (!s) return e.gclass.gmt.mt_inject_event ? (E--, l && (L(n("🔃 mach(%s%s), st: %s, ev: %s, from(%s%s)", e.running ? "" : "!!", Ve(e), i.state_name, t || "", o && !o.running ? "!!" : "", Ve(o))), r && l > 1 && gn(r) && Zt(r)), e.gclass.gmt.mt_inject_event(e, t, r, o)) : (l && L(n("📛 mach(%s%s^%s), st: %s, ev: %s, 📛📛ERROR Event NOT DEFINED in state📛📛, from(%s%s^%s)", e.running ? "" : "!!", Ge(e), Fe(e), i.state_name, t || "", o && !o.running ? "!!" : "", Ge(o), Fe(o))), Ht(`📛📛 Event NOT DEFINED in state 📛📛: ${Ve(e)}, ${i.state_name}, ${t}`), E--, -1);
|
|
997
1000
|
if (l) {
|
|
998
1001
|
if (1 === C) L(n("🔄 %s %s%s %s from %s%s", t || "", e.running ? "" : "!!", Ve(e), i.state_name, o && !o.running ? "!!" : "", Ve(o)));
|
|
999
1002
|
else {
|
|
1000
1003
|
let r = "";
|
|
1001
|
-
s.action && (r =
|
|
1004
|
+
s.action && (r = fr(s.action)), L(n("🔄 mach(%s%s^%s), st: %s, ev: %s%s%s, ac: %s, from(%s%s^%s)", e.running ? "" : "!!", Ge(e), Fe(e), i.state_name, "", t || "", "", r, o && !o.running ? "!!" : "", Ge(o), Fe(o)));
|
|
1002
1005
|
}
|
|
1003
|
-
r && (W(e) | x()) & P.TRACE_EV_KW &&
|
|
1006
|
+
r && (W(e) | x()) & P.TRACE_EV_KW && gn(r) && Zt(r);
|
|
1004
1007
|
}
|
|
1005
|
-
s.next_state &&
|
|
1008
|
+
s.next_state && bt(e, s.next_state);
|
|
1006
1009
|
let _ = -1;
|
|
1007
1010
|
try {
|
|
1008
1011
|
s.action && (_ = s.action(e, t, r, o));
|
|
1009
1012
|
} finally {}
|
|
1010
|
-
return !l || 1 === C || e.obflag & w.obflag_destroyed || L(n("<- mach(%s%s^%s), st: %s, ev: %s, ret: %d", e.running ? "" : "!!", Ge(e), Fe(e), e.current_state.state_name, t || "",
|
|
1013
|
+
return !l || 1 === C || e.obflag & w.obflag_destroyed || L(n("<- mach(%s%s^%s), st: %s, ev: %s, ret: %d", e.running ? "" : "!!", Ge(e), Fe(e), e.current_state.state_name, t || "", Tn(_) ? _ : 0)), E--, _;
|
|
1011
1014
|
}
|
|
1012
|
-
var
|
|
1015
|
+
var St = Object.freeze({
|
|
1013
1016
|
__hard_subscription__: 1,
|
|
1014
1017
|
__own_event__: 2
|
|
1015
|
-
}),
|
|
1018
|
+
}), Ot = [
|
|
1016
1019
|
j(T.DTP_POINTER, "publisher", 0, null, "publisher gobj"),
|
|
1017
1020
|
j(T.DTP_POINTER, "subscriber", 0, null, "subscriber gobj"),
|
|
1018
1021
|
j(T.DTP_STRING, "event", 0, "", "event name subscribed"),
|
|
@@ -1025,48 +1028,48 @@
|
|
|
1025
1028
|
j(T.DTP_STRING, "__service__", 0, "", "subscription service"),
|
|
1026
1029
|
v()
|
|
1027
1030
|
];
|
|
1028
|
-
function
|
|
1029
|
-
let i =
|
|
1030
|
-
if (t && t !==
|
|
1031
|
-
let t =
|
|
1032
|
-
|
|
1031
|
+
function Nt(e, t, n, r, o) {
|
|
1032
|
+
let i = Un(t, r, "__config__", null), l = Un(t, r, "__global__", null), s = Un(t, r, "__local__", null), _ = Fn(t, r, "__filter__", null), a = !0;
|
|
1033
|
+
if (t && t !== Pn(null, e, "publisher", null) && (a = !1), o && o !== Pn(null, e, "subscriber", null) && (a = !1), n && n !== Ln(null, e, "event", "") && (a = !1), bn(i) > 0) {
|
|
1034
|
+
let t = Un(null, e, "__config__", null);
|
|
1035
|
+
bn(t) > 0 && tn(t, i) || (a = !1);
|
|
1033
1036
|
}
|
|
1034
|
-
if (
|
|
1035
|
-
let t =
|
|
1036
|
-
|
|
1037
|
+
if (bn(l) > 0) {
|
|
1038
|
+
let t = Un(null, e, "__global__", null);
|
|
1039
|
+
bn(t) > 0 && tn(t, l) || (a = !1);
|
|
1037
1040
|
}
|
|
1038
|
-
if (
|
|
1039
|
-
let t =
|
|
1040
|
-
|
|
1041
|
+
if (bn(s) > 0) {
|
|
1042
|
+
let t = Un(null, e, "__local__", null);
|
|
1043
|
+
bn(t) > 0 && tn(t, s) || (a = !1);
|
|
1041
1044
|
}
|
|
1042
|
-
if (
|
|
1043
|
-
let t =
|
|
1044
|
-
|
|
1045
|
+
if (bn(_) > 0) {
|
|
1046
|
+
let t = Fn(null, e, "__filter__", null);
|
|
1047
|
+
bn(t) > 0 && tn(t, _) || (a = !1);
|
|
1045
1048
|
}
|
|
1046
1049
|
return a;
|
|
1047
1050
|
}
|
|
1048
|
-
function
|
|
1051
|
+
function Rt(e, t, n, r, o) {
|
|
1049
1052
|
let i = [];
|
|
1050
1053
|
for (let l = 0; l < e.length; l++) {
|
|
1051
1054
|
let s = e[l];
|
|
1052
|
-
|
|
1055
|
+
Nt(s, t, n, r, o) && un(i, s);
|
|
1053
1056
|
}
|
|
1054
1057
|
return i;
|
|
1055
1058
|
}
|
|
1056
|
-
function
|
|
1057
|
-
for (let i = 0; i < e.length; i++) if (
|
|
1059
|
+
function wt(e, t, n, r, o) {
|
|
1060
|
+
for (let i = 0; i < e.length; i++) if (Nt(e[i], t, n, r, o)) return i;
|
|
1058
1061
|
return -1;
|
|
1059
1062
|
}
|
|
1060
|
-
function wt(e, t, r, o) {
|
|
1061
|
-
let i = $n(e, t, "publisher", null, Ct.KW_REQUIRED), l = $n(e, t, "subscriber", null, Ct.KW_REQUIRED), s = In(e, t, "event", "", Ct.KW_REQUIRED);
|
|
1062
|
-
if (!!(kn(e, t, "subs_flag", null, Ct.KW_REQUIRED) & jt.__hard_subscription__) && !r) return -1;
|
|
1063
|
-
p && lt(p, "trace_subscriptions") && (L(n("💜💜👎 unsubscribing event '%s': publisher %s, subscriber'%s'", s || "", Ve(i), Ve(l))), zt(t)), i.obflag & w.obflag_destroyed || o || i.gclass.gmt.mt_subscription_deleted && i.gclass.gmt.mt_subscription_deleted(i, t);
|
|
1064
|
-
let _ = Rt(i.dl_subscriptions, i, s, t, l);
|
|
1065
|
-
return _ >= 0 ? an(i.dl_subscriptions, _) : (Bt(`${Ve(e)}: subscription in publisher not found`), zt(t)), _ = Rt(l.dl_subscribings, i, s, t, l), _ >= 0 ? an(l.dl_subscribings, _) : (Bt(`${Ve(e)}: subscription in subscriber not found`), zt(t)), 0;
|
|
1066
|
-
}
|
|
1067
1063
|
function Dt(e, t, r, o) {
|
|
1068
|
-
|
|
1069
|
-
if (
|
|
1064
|
+
let i = Pn(e, t, "publisher", null, Lt.KW_REQUIRED), l = Pn(e, t, "subscriber", null, Lt.KW_REQUIRED), s = Ln(e, t, "event", "", Lt.KW_REQUIRED);
|
|
1065
|
+
if (!!(Cn(e, t, "subs_flag", null, Lt.KW_REQUIRED) & St.__hard_subscription__) && !r) return -1;
|
|
1066
|
+
p && st(p, "trace_subscriptions") && (L(n("💜💜👎 unsubscribing event '%s': publisher %s, subscriber'%s'", s || "", Ve(i), Ve(l))), Zt(t)), i.obflag & w.obflag_destroyed || o || i.gclass.gmt.mt_subscription_deleted && i.gclass.gmt.mt_subscription_deleted(i, t);
|
|
1067
|
+
let _ = wt(i.dl_subscriptions, i, s, t, l);
|
|
1068
|
+
return _ >= 0 ? fn(i.dl_subscriptions, _) : (Ht(`${Ve(e)}: subscription in publisher not found`), Zt(t)), _ = wt(l.dl_subscribings, i, s, t, l), _ >= 0 ? fn(l.dl_subscribings, _) : (Ht(`${Ve(e)}: subscription in subscriber not found`), Zt(t)), 0;
|
|
1069
|
+
}
|
|
1070
|
+
function At(e, t, r, o) {
|
|
1071
|
+
if (null == r && (r = {}), !e) return Ht(`publisher NULL: ev ${t}`), 0;
|
|
1072
|
+
if (!o) return Ht(`subscriber NULL: ev ${t}`), 0;
|
|
1070
1073
|
const i = /* @__PURE__ */ new Set([
|
|
1071
1074
|
"__config__",
|
|
1072
1075
|
"__global__",
|
|
@@ -1075,57 +1078,57 @@
|
|
|
1075
1078
|
"__service__"
|
|
1076
1079
|
]);
|
|
1077
1080
|
if (Object.keys(r).forEach((n) => {
|
|
1078
|
-
i.has(n) ||
|
|
1079
|
-
}),
|
|
1080
|
-
else if (!(
|
|
1081
|
-
let l =
|
|
1082
|
-
|
|
1081
|
+
i.has(n) || Ht(`${Ve(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
|
|
1082
|
+
}), Sn(t)) t = "";
|
|
1083
|
+
else if (!(Tt(e, t, D.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & N.gcflag_no_check_output_events)) return Ht(`event NOT in output event list: ${Ve(e)}, ${t}`), 0;
|
|
1084
|
+
let l = Rt(e.dl_subscriptions, e, t, r, o);
|
|
1085
|
+
dn(l) > 0 && (Ht(`${Ve(e)}: ${dn(l)} subscription(s) REPEATED, will be deleted and override`), Zt(l, "subscription REPEATED"), kt(e, l, !1));
|
|
1083
1086
|
let s = function(e, t, n, r) {
|
|
1084
|
-
let o = H(e,
|
|
1085
|
-
|
|
1087
|
+
let o = H(e, Ot);
|
|
1088
|
+
an(o, "event", t), an(o, "subscriber", r), an(o, "publisher", e);
|
|
1086
1089
|
let i = 0;
|
|
1087
1090
|
if (n) {
|
|
1088
|
-
let t =
|
|
1089
|
-
if (
|
|
1090
|
-
let n =
|
|
1091
|
-
if (
|
|
1092
|
-
let t =
|
|
1093
|
-
|
|
1091
|
+
let t = Un(e, n, "__config__", null), r = Un(e, n, "__global__", null), l = Un(e, n, "__local__", null), s = Fn(e, n, "__filter__", null), _ = Ln(e, n, "__service__", "");
|
|
1092
|
+
if (bn(r) > 0 && an(o, "__global__", en(r)), bn(t) > 0) {
|
|
1093
|
+
let n = en(t);
|
|
1094
|
+
if (an(o, "__config__", n), An(n, "__hard_subscription__")) {
|
|
1095
|
+
let t = $n(e, n, "__hard_subscription__", !1);
|
|
1096
|
+
sn(n, "__hard_subscription__"), t && (i |= St.__hard_subscription__);
|
|
1094
1097
|
}
|
|
1095
|
-
if (
|
|
1096
|
-
let t =
|
|
1097
|
-
|
|
1098
|
+
if (An(n, "__own_event__")) {
|
|
1099
|
+
let t = $n(e, n, "__own_event__", !1);
|
|
1100
|
+
sn(n, "__own_event__"), t && (i |= St.__own_event__);
|
|
1098
1101
|
}
|
|
1099
1102
|
}
|
|
1100
|
-
|
|
1103
|
+
bn(l) > 0 && an(o, "__local__", en(l)), bn(s) > 0 && an(o, "__filter__", en(s)), Sn(_) || an(o, "__service__", _);
|
|
1101
1104
|
}
|
|
1102
|
-
return
|
|
1105
|
+
return an(o, "subs_flag", i), o;
|
|
1103
1106
|
}(e, t, r, o);
|
|
1104
|
-
if (!s) return
|
|
1105
|
-
if (
|
|
1107
|
+
if (!s) return Ht(`${Ve(e)}: _create_subscription() FAILED`), 0;
|
|
1108
|
+
if (un(e.dl_subscriptions, s), un(o.dl_subscribings, s), p && st(p, "trace_subscriptions") && (L(n("💜💜👍 subscribing event '%s', publisher '%s', subscriber %s", t || "", Ve(e), Ve(o))), r && Zt(r)), e.gclass.gmt.mt_subscription_added) {
|
|
1106
1109
|
let t = e.gclass.gmt.mt_subscription_added(e, s);
|
|
1107
|
-
(t < 0 || !1 === t) && (
|
|
1110
|
+
(t < 0 || !1 === t) && (Dt(e, s, !0, !0), s = 0);
|
|
1108
1111
|
}
|
|
1109
1112
|
return s;
|
|
1110
1113
|
}
|
|
1111
|
-
function
|
|
1114
|
+
function kt(e, t, n) {
|
|
1112
1115
|
let r = [...t];
|
|
1113
|
-
for (let t = 0; t < r.length; t++)
|
|
1116
|
+
for (let t = 0; t < r.length; t++) Dt(e, r[t], n, !1);
|
|
1114
1117
|
return 0;
|
|
1115
1118
|
}
|
|
1116
|
-
function kt(e, t, n, r) {
|
|
1117
|
-
return null == n && (n = {}), Nt(e.dl_subscriptions, e, t, n, r);
|
|
1118
|
-
}
|
|
1119
1119
|
function It(e, t, n, r) {
|
|
1120
|
-
return
|
|
1121
|
-
}
|
|
1122
|
-
function $t(e, t, r) {
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
if (
|
|
1127
|
-
|
|
1128
|
-
|
|
1120
|
+
return null == n && (n = {}), Rt(e.dl_subscriptions, e, t, n, r);
|
|
1121
|
+
}
|
|
1122
|
+
function $t(e, t, n, r) {
|
|
1123
|
+
return Rt(e.dl_subscribings, r, t, n, e);
|
|
1124
|
+
}
|
|
1125
|
+
function Ct(e, t, r) {
|
|
1126
|
+
if (pn(r) || (r = {}), !e || e.obflag & (w.obflag_destroyed | w.obflag_destroying)) return Ht("gobj NULL or DESTROYED"), -1;
|
|
1127
|
+
if (Sn(t)) return Ht(`${Ve(e)}: event EMPTY`), -1;
|
|
1128
|
+
let o = mt(e, t, !0);
|
|
1129
|
+
if (!(o && o.event_flag & (D.EVF_SYSTEM_EVENT | D.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & N.gcflag_no_check_output_events)) return Ht(`event NOT in output event list: ${Ve(e)}, ev ${t}`), -1;
|
|
1130
|
+
let i = p && st(p, "trace_subscriptions");
|
|
1131
|
+
if (i && (L(n("🔝🔝 mach(%s%s^%s), st: %s, ev: %s%s%s", e.running ? "" : "!!", Ge(e), Fe(e), e.current_state.state_name, "", t || "", "")), Zt(r)), e.gclass.gmt.mt_publish_event) {
|
|
1129
1132
|
let n = e.gclass.gmt.mt_publish_event(e, t, r);
|
|
1130
1133
|
if (n <= 0) return n;
|
|
1131
1134
|
}
|
|
@@ -1137,28 +1140,28 @@
|
|
|
1137
1140
|
if (n < 0) break;
|
|
1138
1141
|
if (!n) continue;
|
|
1139
1142
|
}
|
|
1140
|
-
let u =
|
|
1143
|
+
let u = Pn(e, a, "subscriber", null, Lt.KW_REQUIRED);
|
|
1141
1144
|
if (!u || Ye(u)) continue;
|
|
1142
|
-
let c =
|
|
1143
|
-
if (
|
|
1144
|
-
|
|
1145
|
-
let o =
|
|
1146
|
-
if (e.gclass.gmt.mt_publication_filter ? d = e.gclass.gmt.mt_publication_filter(e, t, g, u) :
|
|
1145
|
+
let c = Cn(e, a, "subs_flag", 0, Lt.KW_REQUIRED), f = Ln(e, a, "event", "", Lt.KW_REQUIRED);
|
|
1146
|
+
if (Sn(f) || 0 === Rn(f, t)) {
|
|
1147
|
+
Un(e, a, "__config__", null, 0);
|
|
1148
|
+
let o = Un(e, a, "__global__", null, 0), l = Un(e, a, "__local__", null, 0), f = Fn(e, a, "__filter__", null, 0), g = r, d = 1;
|
|
1149
|
+
if (e.gclass.gmt.mt_publication_filter ? d = e.gclass.gmt.mt_publication_filter(e, t, g, u) : bn(f) > 0 && (d = Wn(g, f) ? 1 : 0, i && (L(n("💜💜🔄%s publishing with filter, event '%s', subscriber'%s', publisher %s", d ? "👍" : "👎", t || "", Ve(u), Ve(e))), Zt(f))), d < 0) break;
|
|
1147
1150
|
if (!d) continue;
|
|
1148
|
-
let b =
|
|
1149
|
-
if (b && b.event_flag & D.EVF_SYSTEM_EVENT && !
|
|
1150
|
-
l &&
|
|
1151
|
-
let p =
|
|
1152
|
-
if (p < 0 && c &
|
|
1151
|
+
let b = mt(u, t, !0);
|
|
1152
|
+
if (b && b.event_flag & D.EVF_SYSTEM_EVENT && !Et(u, b.event_name, 0)) continue;
|
|
1153
|
+
l && Dn(g, l), o && nn(g, o), i && (L(n("🔝🔄 mach(%s%s), st: %s, ev: %s, from(%s%s)", u.running ? "" : "!!", Ve(u), pt(u), t || "", e && !e.running ? "!!" : "", Ve(e))), Zt(g));
|
|
1154
|
+
let p = jt(u, t, g, e);
|
|
1155
|
+
if (p < 0 && c & St.__own_event__) {
|
|
1153
1156
|
s = -1;
|
|
1154
1157
|
break;
|
|
1155
1158
|
}
|
|
1156
1159
|
if (_ += p, s++, Ye(e)) break;
|
|
1157
1160
|
}
|
|
1158
1161
|
}
|
|
1159
|
-
return s || o && o.event_flag & D.EVF_NO_WARN_SUBS ||
|
|
1162
|
+
return s || o && o.event_flag & D.EVF_NO_WARN_SUBS || zt(`${Ve(e)}: Publish event WITHOUT subscribers, ev ${t}`), _;
|
|
1160
1163
|
}
|
|
1161
|
-
var
|
|
1164
|
+
var Lt = Object.freeze({
|
|
1162
1165
|
KW_REQUIRED: 1,
|
|
1163
1166
|
KW_CREATE: 2,
|
|
1164
1167
|
KW_WILD_NUMBER: 4,
|
|
@@ -1178,23 +1181,33 @@
|
|
|
1178
1181
|
JSON_FALSE: 7,
|
|
1179
1182
|
JSON_NULL: 8
|
|
1180
1183
|
});
|
|
1181
|
-
var
|
|
1182
|
-
var
|
|
1183
|
-
var
|
|
1184
|
-
function
|
|
1185
|
-
if (
|
|
1186
|
-
|
|
1184
|
+
var Pt = "undefined" != typeof window ? window.console : console, Ut = Pt.error, Ft = Pt.warn, Gt = Pt.info, Vt = Pt.debug, Mt = null;
|
|
1185
|
+
var Wt = !0;
|
|
1186
|
+
var Kt = null;
|
|
1187
|
+
function xt(e, t) {
|
|
1188
|
+
if (!Wt) return !1;
|
|
1189
|
+
if (!Kt) return !0;
|
|
1190
|
+
try {
|
|
1191
|
+
return !!Kt(e, t);
|
|
1192
|
+
} catch (e) {
|
|
1193
|
+
return !0;
|
|
1194
|
+
}
|
|
1195
|
+
}
|
|
1196
|
+
var Yt = !1;
|
|
1197
|
+
function Bt(e, t, n) {
|
|
1198
|
+
if (Mt && !Yt) {
|
|
1199
|
+
Yt = !0;
|
|
1187
1200
|
try {
|
|
1188
|
-
|
|
1201
|
+
Mt(e, t, n);
|
|
1189
1202
|
} catch (e) {} finally {
|
|
1190
|
-
|
|
1203
|
+
Yt = !1;
|
|
1191
1204
|
}
|
|
1192
1205
|
}
|
|
1193
1206
|
}
|
|
1194
|
-
function
|
|
1195
|
-
e ? (
|
|
1207
|
+
function Jt(e) {
|
|
1208
|
+
e ? (Ut = e, Ft = e) : (Ut = Pt.error, Ft = Pt.warn);
|
|
1196
1209
|
}
|
|
1197
|
-
function
|
|
1210
|
+
function qt(e) {
|
|
1198
1211
|
const t = Array.prototype.slice.call(arguments);
|
|
1199
1212
|
let n = "";
|
|
1200
1213
|
if ("string" == typeof e) {
|
|
@@ -1216,36 +1229,36 @@
|
|
|
1216
1229
|
} else n = t.map((e) => "object" == typeof e ? JSON.stringify(e) : String(e)).join(" ");
|
|
1217
1230
|
return n;
|
|
1218
1231
|
}
|
|
1219
|
-
function
|
|
1220
|
-
let t =
|
|
1221
|
-
|
|
1232
|
+
function Ht(e) {
|
|
1233
|
+
let t = qt(e), n = ar();
|
|
1234
|
+
Ut && (Ut === Pt.error ? xt("error", t) && Ut("%c" + n + " ERROR: " + String(t), "color:red") : (xt("error", t) && Pt.error("%c" + n + " ERROR: " + String(t), "color:red"), Ut(`${n} ERROR: ${String(t)}`))), Bt("error", t, n);
|
|
1222
1235
|
}
|
|
1223
|
-
function
|
|
1224
|
-
let t =
|
|
1225
|
-
|
|
1236
|
+
function zt(e) {
|
|
1237
|
+
let t = qt(e), n = ar();
|
|
1238
|
+
Ft && (Ft === Pt.warn ? xt("warning", t) && Ft("%c" + n + " WARNING: " + String(t), "color:yellow") : (xt("warning", t) && Pt.warn("%c" + n + " WARNING: " + String(t), "color:yellow"), Ft(`${n} WARNING: ${String(t)}`))), Bt("warning", t, n);
|
|
1226
1239
|
}
|
|
1227
|
-
function
|
|
1228
|
-
let t =
|
|
1229
|
-
|
|
1240
|
+
function Qt(e) {
|
|
1241
|
+
let t = qt(e), n = ar();
|
|
1242
|
+
Vt && xt("debug", t) && Vt("%c" + n + " DEBUG: " + String(t), "color:silver"), Bt("debug", t, n);
|
|
1230
1243
|
}
|
|
1231
|
-
function
|
|
1232
|
-
let t =
|
|
1233
|
-
|
|
1244
|
+
function Xt(e) {
|
|
1245
|
+
let t = qt(e), n = ar();
|
|
1246
|
+
Vt && xt("msg", t) && Vt("%c" + n + " MSG: " + String(t), "color:cyan"), Bt("msg", t, n);
|
|
1234
1247
|
}
|
|
1235
|
-
function
|
|
1236
|
-
|
|
1248
|
+
function Zt(e, t) {
|
|
1249
|
+
xt("json", t) && (t && window.console.warn("=====> " + t), window.console.dir(e)), Bt("json", e, ar());
|
|
1237
1250
|
}
|
|
1238
|
-
function
|
|
1251
|
+
function en(e) {
|
|
1239
1252
|
return structuredClone(e);
|
|
1240
1253
|
}
|
|
1241
|
-
function
|
|
1254
|
+
function tn(e, t) {
|
|
1242
1255
|
if (e === t) return !0;
|
|
1243
1256
|
if (null === e || null === t) return e === t;
|
|
1244
1257
|
if (typeof e != typeof t) return !1;
|
|
1245
1258
|
if (Array.isArray(e) !== Array.isArray(t)) return !1;
|
|
1246
1259
|
if (Array.isArray(e)) {
|
|
1247
1260
|
if (e.length !== t.length) return !1;
|
|
1248
|
-
for (let n = 0; n < e.length; n++) if (!
|
|
1261
|
+
for (let n = 0; n < e.length; n++) if (!tn(e[n], t[n])) return !1;
|
|
1249
1262
|
return !0;
|
|
1250
1263
|
}
|
|
1251
1264
|
if ("object" == typeof e) {
|
|
@@ -1253,211 +1266,211 @@
|
|
|
1253
1266
|
if (n.length !== r.length) return !1;
|
|
1254
1267
|
for (let o = 0; o < n.length; o++) {
|
|
1255
1268
|
if (n[o] !== r[o]) return !1;
|
|
1256
|
-
if (!
|
|
1269
|
+
if (!tn(e[n[o]], t[r[o]])) return !1;
|
|
1257
1270
|
}
|
|
1258
1271
|
return !0;
|
|
1259
1272
|
}
|
|
1260
1273
|
return e === t;
|
|
1261
1274
|
}
|
|
1262
|
-
function
|
|
1275
|
+
function nn(e, t) {
|
|
1263
1276
|
if (!t) return e;
|
|
1264
1277
|
for (let n of Object.keys(t)) e[n] = t[n];
|
|
1265
1278
|
return e;
|
|
1266
1279
|
}
|
|
1267
|
-
function
|
|
1280
|
+
function rn(e, t) {
|
|
1268
1281
|
if (!t) return e;
|
|
1269
1282
|
for (let n in t) t.hasOwnProperty(n) && e.hasOwnProperty(n) && (e[n] = t[n]);
|
|
1270
1283
|
return e;
|
|
1271
1284
|
}
|
|
1272
|
-
function
|
|
1285
|
+
function on(e, t) {
|
|
1273
1286
|
if (!t) return e;
|
|
1274
1287
|
for (let n in t) t.hasOwnProperty(n) && !e.hasOwnProperty(n) && (e[n] = t[n]);
|
|
1275
1288
|
return e;
|
|
1276
1289
|
}
|
|
1277
|
-
function
|
|
1290
|
+
function ln(e, t) {
|
|
1278
1291
|
if (e && e.hasOwnProperty(t)) return e[t];
|
|
1279
1292
|
}
|
|
1280
|
-
function
|
|
1293
|
+
function sn(e, t) {
|
|
1281
1294
|
e && e.hasOwnProperty(t) && delete e[t];
|
|
1282
1295
|
}
|
|
1283
|
-
function
|
|
1296
|
+
function _n(e, t, n) {
|
|
1284
1297
|
e[t] = n;
|
|
1285
1298
|
}
|
|
1286
|
-
function
|
|
1299
|
+
function an(e, t, n) {
|
|
1287
1300
|
e[t] = n;
|
|
1288
1301
|
}
|
|
1289
|
-
function
|
|
1302
|
+
function un(e, t) {
|
|
1290
1303
|
e.push(t);
|
|
1291
1304
|
}
|
|
1292
|
-
function
|
|
1305
|
+
function cn(e, t) {
|
|
1293
1306
|
e.push(t);
|
|
1294
1307
|
}
|
|
1295
|
-
function
|
|
1308
|
+
function fn(e, t) {
|
|
1296
1309
|
e.splice(t, 1);
|
|
1297
1310
|
}
|
|
1298
|
-
function
|
|
1299
|
-
return
|
|
1311
|
+
function gn(e) {
|
|
1312
|
+
return pn(e) ? Object.keys(e).length : 0;
|
|
1300
1313
|
}
|
|
1301
|
-
function
|
|
1302
|
-
return
|
|
1314
|
+
function dn(e) {
|
|
1315
|
+
return mn(e) ? e.length : 0;
|
|
1303
1316
|
}
|
|
1304
|
-
function
|
|
1305
|
-
return
|
|
1317
|
+
function bn(e) {
|
|
1318
|
+
return pn(e) ? Object.keys(e).length : mn(e) ? e.length : En(e) && e.length > 0 ? 1 : 0;
|
|
1306
1319
|
}
|
|
1307
|
-
function
|
|
1320
|
+
function pn(e) {
|
|
1308
1321
|
return null !== e && "object" == typeof e && !Array.isArray(e);
|
|
1309
1322
|
}
|
|
1310
|
-
function
|
|
1323
|
+
function mn(e) {
|
|
1311
1324
|
return Array.isArray(e);
|
|
1312
1325
|
}
|
|
1313
|
-
function
|
|
1326
|
+
function En(e) {
|
|
1314
1327
|
return "string" == typeof e;
|
|
1315
1328
|
}
|
|
1316
|
-
function
|
|
1329
|
+
function Tn(e) {
|
|
1317
1330
|
return "number" == typeof e && Number.isFinite(e);
|
|
1318
1331
|
}
|
|
1319
|
-
function
|
|
1332
|
+
function hn(e) {
|
|
1320
1333
|
return "boolean" == typeof e;
|
|
1321
1334
|
}
|
|
1322
|
-
function
|
|
1335
|
+
function yn(e) {
|
|
1323
1336
|
return null == e;
|
|
1324
1337
|
}
|
|
1325
|
-
function
|
|
1338
|
+
function vn(e) {
|
|
1326
1339
|
return "function" == typeof e;
|
|
1327
1340
|
}
|
|
1328
|
-
function
|
|
1341
|
+
function jn(e) {
|
|
1329
1342
|
return e instanceof O;
|
|
1330
1343
|
}
|
|
1331
|
-
function
|
|
1332
|
-
return !
|
|
1344
|
+
function Sn(e) {
|
|
1345
|
+
return !En(e) || 0 === e.length;
|
|
1333
1346
|
}
|
|
1334
|
-
function
|
|
1335
|
-
return
|
|
1347
|
+
function On(e) {
|
|
1348
|
+
return Tn(e) ? Boolean(e) : /^\s*(true|1|on)\s*$/i.test(e);
|
|
1336
1349
|
}
|
|
1337
|
-
function
|
|
1350
|
+
function Nn(e, t) {
|
|
1338
1351
|
return e === t ? 0 : e > t ? 1 : -1;
|
|
1339
1352
|
}
|
|
1340
|
-
function
|
|
1353
|
+
function Rn(e, t) {
|
|
1341
1354
|
let n = e.toLowerCase(), r = t.toLowerCase();
|
|
1342
1355
|
return n === r ? 0 : n > r ? 1 : -1;
|
|
1343
1356
|
}
|
|
1344
|
-
function
|
|
1345
|
-
if (
|
|
1346
|
-
if (
|
|
1357
|
+
function wn(e, t) {
|
|
1358
|
+
if (pn(e) || pn(t) || mn(e) || mn(t)) return 0;
|
|
1359
|
+
if (Tn(e) || Tn(t)) {
|
|
1347
1360
|
let n = Number(e), r = Number(t);
|
|
1348
1361
|
return n > r ? 1 : n < r ? -1 : 0;
|
|
1349
1362
|
}
|
|
1350
|
-
if (
|
|
1363
|
+
if (hn(e) || hn(t)) {
|
|
1351
1364
|
let n = Number(e), r = Number(t);
|
|
1352
1365
|
return n > r ? 1 : n < r ? -1 : 0;
|
|
1353
1366
|
}
|
|
1354
|
-
return
|
|
1367
|
+
return Nn(String(e), String(t));
|
|
1355
1368
|
}
|
|
1356
|
-
function
|
|
1357
|
-
if ("object" != typeof t || Array.isArray(t)) if (Array.isArray(t)) for (const n of t)
|
|
1369
|
+
function Dn(e, t) {
|
|
1370
|
+
if ("object" != typeof t || Array.isArray(t)) if (Array.isArray(t)) for (const n of t) Dn(e, n);
|
|
1358
1371
|
else "string" == typeof t && delete e[t];
|
|
1359
1372
|
else for (const n of Object.keys(t)) delete e[n];
|
|
1360
1373
|
}
|
|
1361
|
-
function
|
|
1374
|
+
function An(e, t) {
|
|
1362
1375
|
return !(!(t in e) || !e.hasOwnProperty(t));
|
|
1363
1376
|
}
|
|
1364
|
-
function
|
|
1365
|
-
if (e && !
|
|
1366
|
-
if (!
|
|
1377
|
+
function kn(e, t, n, r) {
|
|
1378
|
+
if (e && !jn(e) && Ht("GObj bad instanceof"), !pn(t) && !mn(t)) return Ht(`${Ve(e)}: kw must be list or dict`), 0;
|
|
1379
|
+
if (!En(n)) return Ht(`${Ve(e)}: path must be a string: ${String(n)}`), 0;
|
|
1367
1380
|
let o = n.split("`");
|
|
1368
1381
|
if (o.length <= 1) return t[n];
|
|
1369
1382
|
let i = o.length;
|
|
1370
|
-
for (let l = 0; l < i; l++) if (void 0 === (t = t[o[l]])) return void (r &&
|
|
1383
|
+
for (let l = 0; l < i; l++) if (void 0 === (t = t[o[l]])) return void (r && Ht(`${Ve(e)}: path not found: ${String(n)}`));
|
|
1371
1384
|
return t;
|
|
1372
1385
|
}
|
|
1373
|
-
function
|
|
1374
|
-
e && !
|
|
1386
|
+
function In(e, t, n) {
|
|
1387
|
+
e && !jn(e) && Ht("GObj bad instanceof");
|
|
1375
1388
|
let [r, o] = function(e, t) {
|
|
1376
1389
|
let n = e.lastIndexOf(t);
|
|
1377
1390
|
return -1 === n ? [e, ""] : [e.substring(0, n), e.substring(n + 1)];
|
|
1378
1391
|
}(n, "`");
|
|
1379
|
-
return
|
|
1392
|
+
return Sn(o) ? sn(t, n) : sn(kn(e, t, r, !0), o), 0;
|
|
1380
1393
|
}
|
|
1381
|
-
function
|
|
1382
|
-
e && !
|
|
1383
|
-
let i =
|
|
1384
|
-
const l = o && o &
|
|
1394
|
+
function $n(e, t, n, r, o) {
|
|
1395
|
+
e && !jn(e) && Ht("GObj bad instanceof");
|
|
1396
|
+
let i = kn(e, t, n, !1);
|
|
1397
|
+
const l = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
|
|
1385
1398
|
if (void 0 === i) {
|
|
1386
1399
|
if (s) {
|
|
1387
1400
|
let o = Boolean(r);
|
|
1388
|
-
return
|
|
1401
|
+
return Gn(e, t, n, o), o;
|
|
1389
1402
|
}
|
|
1390
|
-
return l && (
|
|
1403
|
+
return l && (Ht(`path not found: '${n}'`), Zt(t)), Boolean(r);
|
|
1391
1404
|
}
|
|
1392
|
-
return _ &&
|
|
1405
|
+
return _ && In(e, t, n), Boolean(i);
|
|
1393
1406
|
}
|
|
1394
|
-
function
|
|
1395
|
-
e && !
|
|
1396
|
-
let i =
|
|
1397
|
-
const l = o && o &
|
|
1407
|
+
function Cn(e, t, n, r, o) {
|
|
1408
|
+
e && !jn(e) && Ht("GObj bad instanceof");
|
|
1409
|
+
let i = kn(e, t, n, !1);
|
|
1410
|
+
const l = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
|
|
1398
1411
|
if (void 0 === i) {
|
|
1399
1412
|
if (s) {
|
|
1400
1413
|
let o = parseInt(r);
|
|
1401
|
-
return
|
|
1414
|
+
return Gn(e, t, n, o), o;
|
|
1402
1415
|
}
|
|
1403
|
-
return l && (
|
|
1416
|
+
return l && (Ht(`path not found: '${n}'`), Zt(t)), parseInt(r);
|
|
1404
1417
|
}
|
|
1405
|
-
return _ &&
|
|
1418
|
+
return _ && In(e, t, n), Tn(i) ? parseInt(i) : (l && (Ht(`path value MUST BE a number: ${n}`), Xt(t)), parseInt(r));
|
|
1406
1419
|
}
|
|
1407
|
-
function
|
|
1408
|
-
e && !
|
|
1409
|
-
let i =
|
|
1410
|
-
const l = o && o &
|
|
1420
|
+
function Ln(e, t, n, r, o) {
|
|
1421
|
+
e && !jn(e) && Ht("GObj bad instanceof");
|
|
1422
|
+
let i = kn(e, t, n, !1);
|
|
1423
|
+
const l = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
|
|
1411
1424
|
if (void 0 === i) {
|
|
1412
1425
|
if (s) {
|
|
1413
1426
|
let o = String(r);
|
|
1414
|
-
return
|
|
1427
|
+
return Gn(e, t, n, o), o;
|
|
1415
1428
|
}
|
|
1416
|
-
return l && (
|
|
1429
|
+
return l && (Ht(`path not found: '${n}'`), Zt(t)), String(r);
|
|
1417
1430
|
}
|
|
1418
|
-
return _ &&
|
|
1431
|
+
return _ && In(e, t, n), En(i) ? String(i) : (l && (Ht(`${Ve(e)}: path value MUST BE a string: ${n}`), Xt(t)), String(r));
|
|
1419
1432
|
}
|
|
1420
|
-
function
|
|
1421
|
-
e && !
|
|
1422
|
-
let i =
|
|
1423
|
-
const l = o && o &
|
|
1433
|
+
function Pn(e, t, n, r, o) {
|
|
1434
|
+
e && !jn(e) && Ht("GObj bad instanceof");
|
|
1435
|
+
let i = kn(e, t, n, !1);
|
|
1436
|
+
const l = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
|
|
1424
1437
|
if (void 0 === i) {
|
|
1425
1438
|
if (s) {
|
|
1426
1439
|
let o = r;
|
|
1427
|
-
return
|
|
1440
|
+
return Gn(e, t, n, o), o;
|
|
1428
1441
|
}
|
|
1429
|
-
return l && (
|
|
1442
|
+
return l && (Ht(`path not found: '${n}'`), Zt(t)), r;
|
|
1430
1443
|
}
|
|
1431
|
-
return _ &&
|
|
1444
|
+
return _ && In(e, t, n), i;
|
|
1432
1445
|
}
|
|
1433
|
-
function
|
|
1434
|
-
e && !
|
|
1435
|
-
let i =
|
|
1436
|
-
const l = o && o &
|
|
1446
|
+
function Un(e, t, n, r, o) {
|
|
1447
|
+
e && !jn(e) && Ht("GObj bad instanceof");
|
|
1448
|
+
let i = kn(e, t, n, !1);
|
|
1449
|
+
const l = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
|
|
1437
1450
|
if (void 0 === i) {
|
|
1438
1451
|
if (s) {
|
|
1439
1452
|
let o = Object(r);
|
|
1440
|
-
return
|
|
1453
|
+
return Gn(e, t, n, o), o;
|
|
1441
1454
|
}
|
|
1442
|
-
return l && (
|
|
1455
|
+
return l && (Ht(`path not found: '${n}'`), Zt(t)), Object(r);
|
|
1443
1456
|
}
|
|
1444
|
-
return _ &&
|
|
1457
|
+
return _ && In(e, t, n), pn(i) ? Object(i) : (l && (Ht(`path value MUST BE a dict: ${n}`), Xt(t)), Object(r));
|
|
1445
1458
|
}
|
|
1446
|
-
function
|
|
1447
|
-
e && !
|
|
1448
|
-
let i =
|
|
1449
|
-
const l = o && o &
|
|
1459
|
+
function Fn(e, t, n, r, o) {
|
|
1460
|
+
e && !jn(e) && Ht("GObj bad instanceof");
|
|
1461
|
+
let i = kn(e, t, n, !1);
|
|
1462
|
+
const l = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
|
|
1450
1463
|
if (void 0 === i) {
|
|
1451
1464
|
if (s) {
|
|
1452
1465
|
let o = r;
|
|
1453
|
-
return
|
|
1466
|
+
return Gn(e, t, n, o), o;
|
|
1454
1467
|
}
|
|
1455
|
-
return l && (
|
|
1468
|
+
return l && (Ht(`path not found: '${n}'`), Zt(t)), r;
|
|
1456
1469
|
}
|
|
1457
|
-
return _ &&
|
|
1470
|
+
return _ && In(e, t, n), i;
|
|
1458
1471
|
}
|
|
1459
|
-
function
|
|
1460
|
-
if (e && !
|
|
1472
|
+
function Gn(e, t, n, r) {
|
|
1473
|
+
if (e && !jn(e) && Ht("GObj bad instanceof"), !pn(t)) return Ht("kw is not an object"), -1;
|
|
1461
1474
|
let o = n.split("`");
|
|
1462
1475
|
if (o.length <= 1) return t[n] = r, 0;
|
|
1463
1476
|
let i = o.length;
|
|
@@ -1467,34 +1480,34 @@
|
|
|
1467
1480
|
}
|
|
1468
1481
|
return 0;
|
|
1469
1482
|
}
|
|
1470
|
-
function
|
|
1471
|
-
if (e && !
|
|
1472
|
-
let i =
|
|
1473
|
-
return
|
|
1483
|
+
function Vn(e, t, n, r, o) {
|
|
1484
|
+
if (e && !jn(e) && Ht("GObj bad instanceof"), !pn(t)) return Ht("kw is not an object"), -1;
|
|
1485
|
+
let i = Un(e, t, n, {}, !0);
|
|
1486
|
+
return pn(i) ? (i[r] = o, 0) : (Ht("subdict is not an object"), -1);
|
|
1474
1487
|
}
|
|
1475
|
-
function
|
|
1488
|
+
function Mn(e, t, r) {
|
|
1476
1489
|
let o = "", i = !1;
|
|
1477
|
-
if (
|
|
1490
|
+
if (mn(t)) {
|
|
1478
1491
|
i = !1;
|
|
1479
1492
|
for (let l = 0; l < t.length; l++) {
|
|
1480
1493
|
let s = t[l];
|
|
1481
|
-
if (o =
|
|
1494
|
+
if (o = Sn(r) ? n("%s", r) : n("%s`%d", r, l), i = Mn(e, s, o), i) break;
|
|
1482
1495
|
}
|
|
1483
|
-
} else if (
|
|
1496
|
+
} else if (pn(t)) {
|
|
1484
1497
|
i = !0;
|
|
1485
1498
|
let l = Object.keys(t);
|
|
1486
1499
|
for (let s = 0; s < l.length; s++) {
|
|
1487
1500
|
let _ = l[s], a = t[_];
|
|
1488
|
-
if (o =
|
|
1489
|
-
if (i =
|
|
1501
|
+
if (o = Sn(r) ? n("%s", _) : n("%s`%s", r, _), mn(a) || pn(a)) {
|
|
1502
|
+
if (i = Mn(e, a, o), !i) break;
|
|
1490
1503
|
continue;
|
|
1491
1504
|
}
|
|
1492
|
-
let u =
|
|
1493
|
-
if (u || (u =
|
|
1505
|
+
let u = Fn(0, e, o, 0, 0);
|
|
1506
|
+
if (u || (u = ln(e, o)), !u) {
|
|
1494
1507
|
i = !1;
|
|
1495
1508
|
break;
|
|
1496
1509
|
}
|
|
1497
|
-
if (0 !==
|
|
1510
|
+
if (0 !== wn(u, a)) {
|
|
1498
1511
|
i = !1;
|
|
1499
1512
|
break;
|
|
1500
1513
|
}
|
|
@@ -1502,58 +1515,58 @@
|
|
|
1502
1515
|
}
|
|
1503
1516
|
return i;
|
|
1504
1517
|
}
|
|
1505
|
-
function
|
|
1506
|
-
return 0 ===
|
|
1518
|
+
function Wn(e, t) {
|
|
1519
|
+
return 0 === bn(t) || Mn(e, t, "");
|
|
1507
1520
|
}
|
|
1508
|
-
function
|
|
1509
|
-
e && !
|
|
1521
|
+
function Kn(e, t, n, r) {
|
|
1522
|
+
e && !jn(e) && Ht("GObj bad instanceof");
|
|
1510
1523
|
let o = {};
|
|
1511
|
-
if (
|
|
1524
|
+
if (En(n) && !Sn(n)) {
|
|
1512
1525
|
let i = n;
|
|
1513
|
-
t.hasOwnProperty(i) ? o[i] = t[i] : r &&
|
|
1514
|
-
} else if (
|
|
1526
|
+
t.hasOwnProperty(i) ? o[i] = t[i] : r && Ht(`${Ve(e)}: key not found: ${i}`);
|
|
1527
|
+
} else if (pn(n) && gn(n) > 0) for (let i of Object.keys(n)) t.hasOwnProperty(i) ? o[i] = t[i] : r && Ht(`${Ve(e)}: key not found: ${i}`);
|
|
1515
1528
|
else {
|
|
1516
|
-
if (!(
|
|
1529
|
+
if (!(mn(n) && dn(n) > 0)) return t;
|
|
1517
1530
|
for (let i = 0; i < n.length; i++) {
|
|
1518
1531
|
let l = n[i];
|
|
1519
|
-
t.hasOwnProperty(l) ? o[l] = t[l] : r &&
|
|
1532
|
+
t.hasOwnProperty(l) ? o[l] = t[l] : r && Ht(`${Ve(e)}: key not found: ${l}`);
|
|
1520
1533
|
}
|
|
1521
1534
|
}
|
|
1522
1535
|
return o;
|
|
1523
1536
|
}
|
|
1524
|
-
function
|
|
1537
|
+
function xn(e, t, n, r) {
|
|
1525
1538
|
let o = {};
|
|
1526
|
-
if (
|
|
1539
|
+
if (nn(o, t), En(n) && !Sn(n)) {
|
|
1527
1540
|
let i = n;
|
|
1528
|
-
|
|
1529
|
-
} else if (
|
|
1541
|
+
Fn(e, t, i, 0, 0) ? sn(o, i) : r && Ht(`${Ve(e)}: key not found: ${i}`);
|
|
1542
|
+
} else if (pn(n) && gn(n) > 0) for (let i of Object.keys(n)) t.hasOwnProperty(i) ? sn(o, i) : r && Ht(`${Ve(e)}: key not found: ${i}`);
|
|
1530
1543
|
else {
|
|
1531
|
-
if (!(
|
|
1544
|
+
if (!(mn(n) && dn(n) > 0)) return {};
|
|
1532
1545
|
for (let i = 0; i < n.length; i++) {
|
|
1533
1546
|
let l = n[i];
|
|
1534
|
-
t.hasOwnProperty(l) ?
|
|
1547
|
+
t.hasOwnProperty(l) ? sn(o, l) : r && Ht(`${Ve(e)}: key not found: ${l}`);
|
|
1535
1548
|
}
|
|
1536
1549
|
}
|
|
1537
1550
|
return o;
|
|
1538
1551
|
}
|
|
1539
|
-
function
|
|
1552
|
+
function Yn(e, t, n = !1) {
|
|
1540
1553
|
if ("undefined" != typeof window && window.localStorage) try {
|
|
1541
1554
|
let r = window.localStorage.getItem(e);
|
|
1542
|
-
return null === r ? (n &&
|
|
1555
|
+
return null === r ? (n && Bn(e, t), t) : JSON.parse(r);
|
|
1543
1556
|
} catch (n) {
|
|
1544
1557
|
return window.console.warn(`Error reading localStorage key "${e}":`, n), t;
|
|
1545
1558
|
}
|
|
1546
1559
|
}
|
|
1547
|
-
function
|
|
1560
|
+
function Bn(e, t) {
|
|
1548
1561
|
if ("undefined" == typeof window || !window.localStorage) return 0;
|
|
1549
|
-
if (!e || void 0 === t) return
|
|
1562
|
+
if (!e || void 0 === t) return Ht(`kw_set_local_storage_value(): invalid key or value: key=${e}`), -1;
|
|
1550
1563
|
try {
|
|
1551
1564
|
return window.localStorage.setItem(e, JSON.stringify(t)), 0;
|
|
1552
1565
|
} catch (t) {
|
|
1553
|
-
return
|
|
1566
|
+
return Ht(`kw_set_local_storage_value(): cannot save "${e}" (storage full or blocked?): ${t && t.message ? t.message : t}`), -1;
|
|
1554
1567
|
}
|
|
1555
1568
|
}
|
|
1556
|
-
function
|
|
1569
|
+
function Jn(e) {
|
|
1557
1570
|
if ("undefined" != typeof window && window.localStorage) if (e) try {
|
|
1558
1571
|
window.localStorage.removeItem(e);
|
|
1559
1572
|
} catch (t) {
|
|
@@ -1561,46 +1574,46 @@
|
|
|
1561
1574
|
}
|
|
1562
1575
|
else window.console.warn(`Invalid key for localStorage removal: ${e}`);
|
|
1563
1576
|
}
|
|
1564
|
-
function
|
|
1565
|
-
if (
|
|
1566
|
-
if (
|
|
1577
|
+
function qn(e, t) {
|
|
1578
|
+
if (yn(e) || yn(t)) return !0;
|
|
1579
|
+
if (mn(e)) {
|
|
1567
1580
|
if (0 === e.length) return !0;
|
|
1568
1581
|
for (let n = 0; n < e.length; n++) if (e[n] === t) return !0;
|
|
1569
|
-
} else if (
|
|
1582
|
+
} else if (pn(e)) {
|
|
1570
1583
|
if (0 === Object.keys(e).length) return !0;
|
|
1571
1584
|
for (let n in e) if (n === t) return !0;
|
|
1572
|
-
} else if (
|
|
1585
|
+
} else if (En(e) && e === t) return !0;
|
|
1573
1586
|
return !1;
|
|
1574
1587
|
}
|
|
1575
|
-
function
|
|
1576
|
-
if (e && !
|
|
1577
|
-
o || (o =
|
|
1588
|
+
function Hn(e, t, n, r, o) {
|
|
1589
|
+
if (e && !jn(e) && Ht("GObj bad instanceof"), !t) return null;
|
|
1590
|
+
o || (o = Wn);
|
|
1578
1591
|
let i = [];
|
|
1579
|
-
if (
|
|
1592
|
+
if (mn(t)) for (let l = 0; l < t.length; l++) {
|
|
1580
1593
|
let s, _ = t[l];
|
|
1581
|
-
if (
|
|
1594
|
+
if (pn(_)) s = Ln(e, _, "id", "", 0);
|
|
1582
1595
|
else {
|
|
1583
|
-
if (!
|
|
1596
|
+
if (!En(_)) continue;
|
|
1584
1597
|
s = _;
|
|
1585
1598
|
}
|
|
1586
|
-
|
|
1599
|
+
qn(n, s) && o(_, r) && i.push(_);
|
|
1587
1600
|
}
|
|
1588
1601
|
else {
|
|
1589
|
-
if (!
|
|
1602
|
+
if (!pn(t)) return Ht("kw_collect() BAD kw parameter"), null;
|
|
1590
1603
|
for (let e of Object.keys(t)) {
|
|
1591
1604
|
let l = t[e];
|
|
1592
|
-
|
|
1605
|
+
qn(n, e) && o(l, r) && i.push(l);
|
|
1593
1606
|
}
|
|
1594
1607
|
}
|
|
1595
1608
|
return i;
|
|
1596
1609
|
}
|
|
1597
|
-
function
|
|
1610
|
+
function zn(e, t) {
|
|
1598
1611
|
if (!e) return -1;
|
|
1599
1612
|
for (let n = 0; n < e.length; n++) if (e[n] && e[n].id === t) return n;
|
|
1600
1613
|
return -1;
|
|
1601
1614
|
}
|
|
1602
|
-
function
|
|
1603
|
-
if (!e || !t) return
|
|
1615
|
+
function Qn(e, t, n) {
|
|
1616
|
+
if (!e || !t) return Ht("ERROR: str_in_list() list or str empty"), !1;
|
|
1604
1617
|
let r = e.length;
|
|
1605
1618
|
if (n) {
|
|
1606
1619
|
t = t.toLowerCase();
|
|
@@ -1611,7 +1624,7 @@
|
|
|
1611
1624
|
} else for (let n = 0; n < r; n++) if (e[n] === t) return !0;
|
|
1612
1625
|
return !1;
|
|
1613
1626
|
}
|
|
1614
|
-
function
|
|
1627
|
+
function Xn(e, t) {
|
|
1615
1628
|
try {
|
|
1616
1629
|
let n = e.__md_iev__;
|
|
1617
1630
|
if (n) return n[t];
|
|
@@ -1619,35 +1632,35 @@
|
|
|
1619
1632
|
return;
|
|
1620
1633
|
}
|
|
1621
1634
|
}
|
|
1622
|
-
function
|
|
1635
|
+
function Zn(e, t, n) {
|
|
1623
1636
|
let r = e.__md_iev__;
|
|
1624
1637
|
r || (r = {}, e.__md_iev__ = r), r[t] = n;
|
|
1625
1638
|
}
|
|
1626
|
-
function
|
|
1627
|
-
if (!
|
|
1639
|
+
function er(e, t, n, r) {
|
|
1640
|
+
if (!jn(e)) return Ht("gobj is not a GObj"), null;
|
|
1628
1641
|
if (!t) return;
|
|
1629
|
-
let o =
|
|
1630
|
-
o || (o = [],
|
|
1642
|
+
let o = Xn(t, n);
|
|
1643
|
+
o || (o = [], Zn(t, n, o));
|
|
1631
1644
|
try {
|
|
1632
|
-
|
|
1645
|
+
mn(o) && o.unshift(r);
|
|
1633
1646
|
} catch (e) {
|
|
1634
|
-
|
|
1647
|
+
Ht(e);
|
|
1635
1648
|
}
|
|
1636
1649
|
}
|
|
1637
|
-
function
|
|
1638
|
-
if (!
|
|
1639
|
-
if (!
|
|
1640
|
-
let o =
|
|
1641
|
-
return o ? 0 === o.length ? (r &&
|
|
1650
|
+
function tr(e, t, n, r) {
|
|
1651
|
+
if (!jn(e)) return Ht("gobj is not a GObj"), null;
|
|
1652
|
+
if (!pn(t)) return Ht("kw is not a dict"), null;
|
|
1653
|
+
let o = Xn(t, n);
|
|
1654
|
+
return o ? 0 === o.length ? (r && Ht(`stack empty: ${n}`), null) : o[0] : (r && Ht(`stack NOT FOUND: ${n}`), null);
|
|
1642
1655
|
}
|
|
1643
|
-
function
|
|
1644
|
-
return
|
|
1656
|
+
function nr(e, t, n) {
|
|
1657
|
+
return Sn(n) ? In(e, t, "__md_iev__`__msg_type__") : Vn(e, t, "__md_iev__", "__msg_type__", n), 0;
|
|
1645
1658
|
}
|
|
1646
|
-
function
|
|
1647
|
-
return
|
|
1659
|
+
function rr(e, t) {
|
|
1660
|
+
return Ln(e, t, "__md_iev__`__msg_type__", "", 0);
|
|
1648
1661
|
}
|
|
1649
|
-
function
|
|
1650
|
-
void 0 !== n &&
|
|
1662
|
+
function or(e, t, n) {
|
|
1663
|
+
void 0 !== n && En(n) || (n = "");
|
|
1651
1664
|
for (let r of Object.keys(e)) {
|
|
1652
1665
|
if (!e.hasOwnProperty(r)) continue;
|
|
1653
1666
|
let o = (n.length ? "`" : "") + r;
|
|
@@ -1656,10 +1669,10 @@
|
|
|
1656
1669
|
r,
|
|
1657
1670
|
e[r],
|
|
1658
1671
|
n
|
|
1659
|
-
]),
|
|
1672
|
+
]), pn(e[r]) && or(e[r], t, n), n = n.slice(0, -o.length);
|
|
1660
1673
|
}
|
|
1661
1674
|
}
|
|
1662
|
-
function
|
|
1675
|
+
function ir(e, t, n, r) {
|
|
1663
1676
|
if (!e) return null;
|
|
1664
1677
|
let o, i = e.length;
|
|
1665
1678
|
for (o = 0; o < i; o++) {
|
|
@@ -1667,15 +1680,15 @@
|
|
|
1667
1680
|
if (i) {
|
|
1668
1681
|
let e = i.id;
|
|
1669
1682
|
if (e && e === n) return i;
|
|
1670
|
-
if (r &&
|
|
1671
|
-
let e =
|
|
1683
|
+
if (r && An(i, t)) {
|
|
1684
|
+
let e = ir(i[t], t, n, r);
|
|
1672
1685
|
if (e) return e;
|
|
1673
1686
|
}
|
|
1674
1687
|
}
|
|
1675
1688
|
}
|
|
1676
1689
|
return null;
|
|
1677
1690
|
}
|
|
1678
|
-
function
|
|
1691
|
+
function lr(e) {
|
|
1679
1692
|
function t(e) {
|
|
1680
1693
|
let t = e.replace(/-/g, "+").replace(/_/g, "/");
|
|
1681
1694
|
switch (t.length % 4) {
|
|
@@ -1706,38 +1719,38 @@
|
|
|
1706
1719
|
signature: t(n[2])
|
|
1707
1720
|
};
|
|
1708
1721
|
}
|
|
1709
|
-
function
|
|
1722
|
+
function sr(e) {
|
|
1710
1723
|
return null == e ? "" : String(e).replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """).replace(/'/g, "'");
|
|
1711
1724
|
}
|
|
1712
|
-
function
|
|
1725
|
+
function _r(e) {
|
|
1713
1726
|
const t = document.createElement("template");
|
|
1714
1727
|
return t.innerHTML = e.trim(), t.content.firstChild;
|
|
1715
1728
|
}
|
|
1716
|
-
function
|
|
1729
|
+
function ar() {
|
|
1717
1730
|
const e = /* @__PURE__ */ new Date(), t = e.toISOString().slice(0, 19), n = String(e.getMilliseconds()).padStart(3, "0"), r = e.getTimezoneOffset();
|
|
1718
1731
|
return `${t}.${n}${r > 0 ? "-" : "+"}${String(Math.abs(r) / 60).padStart(2, "0")}${String(Math.abs(r) % 60).padStart(2, "0")}`;
|
|
1719
1732
|
}
|
|
1720
|
-
function
|
|
1733
|
+
function ur(e, t) {
|
|
1721
1734
|
if (!e) throw "ERROR: index_in_list() list empty";
|
|
1722
1735
|
for (let n = 0; n < e.length; n++) if (t === e[n]) return n;
|
|
1723
1736
|
return -1;
|
|
1724
1737
|
}
|
|
1725
|
-
function
|
|
1738
|
+
function cr() {
|
|
1726
1739
|
let e = "";
|
|
1727
1740
|
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;
|
|
1728
1741
|
}
|
|
1729
|
-
function
|
|
1742
|
+
function fr(e) {
|
|
1730
1743
|
let t = null;
|
|
1731
1744
|
return "function" != typeof e && "object" != typeof e || (t = ("" + e).match(/function\s*([\w\$]*)\s*\(/)), null !== t ? t[1] + "()" : "";
|
|
1732
1745
|
}
|
|
1733
|
-
function
|
|
1746
|
+
function gr(e) {
|
|
1734
1747
|
return "persistent-attrs-" + Ve(e);
|
|
1735
1748
|
}
|
|
1736
|
-
function
|
|
1737
|
-
if (
|
|
1749
|
+
function dr(e, t) {
|
|
1750
|
+
if (En(t)) {
|
|
1738
1751
|
if (-1 === t.indexOf("^")) {
|
|
1739
1752
|
let n, r, o = e.fkey;
|
|
1740
|
-
if (1 !==
|
|
1753
|
+
if (1 !== gn(o)) return Ht("bad fkey 1"), Ht(e), Ht(t), null;
|
|
1741
1754
|
for (const e of Object.keys(o)) {
|
|
1742
1755
|
n = e, r = o[e];
|
|
1743
1756
|
break;
|
|
@@ -1750,20 +1763,20 @@
|
|
|
1750
1763
|
}
|
|
1751
1764
|
{
|
|
1752
1765
|
let n = t.split("^");
|
|
1753
|
-
return 3 !== n.length ? (
|
|
1766
|
+
return 3 !== n.length ? (Ht("bad fkey 2"), Ht(e), Ht(t), null) : {
|
|
1754
1767
|
topic_name: n[0],
|
|
1755
1768
|
id: n[1],
|
|
1756
1769
|
hook_name: n[2]
|
|
1757
1770
|
};
|
|
1758
1771
|
}
|
|
1759
1772
|
}
|
|
1760
|
-
return
|
|
1773
|
+
return pn(t) ? {
|
|
1761
1774
|
topic_name: t.topic_name,
|
|
1762
1775
|
id: t.id,
|
|
1763
1776
|
hook_name: t.hook_name
|
|
1764
|
-
} : (
|
|
1777
|
+
} : (Ht("bad fkey 3"), Ht(e), Ht(t), null);
|
|
1765
1778
|
}
|
|
1766
|
-
var
|
|
1779
|
+
var br = [
|
|
1767
1780
|
"string",
|
|
1768
1781
|
"integer",
|
|
1769
1782
|
"object",
|
|
@@ -1773,7 +1786,7 @@
|
|
|
1773
1786
|
"real",
|
|
1774
1787
|
"boolean",
|
|
1775
1788
|
"blob"
|
|
1776
|
-
],
|
|
1789
|
+
], pr = [
|
|
1777
1790
|
"persistent",
|
|
1778
1791
|
"required",
|
|
1779
1792
|
"notnull",
|
|
@@ -1785,7 +1798,7 @@
|
|
|
1785
1798
|
"stats",
|
|
1786
1799
|
"rstats",
|
|
1787
1800
|
"pstats"
|
|
1788
|
-
],
|
|
1801
|
+
], mr = [
|
|
1789
1802
|
"hook",
|
|
1790
1803
|
"fkey",
|
|
1791
1804
|
"enum",
|
|
@@ -1812,7 +1825,7 @@
|
|
|
1812
1825
|
"coordinates",
|
|
1813
1826
|
"gbuffer"
|
|
1814
1827
|
];
|
|
1815
|
-
function
|
|
1828
|
+
function Er(e) {
|
|
1816
1829
|
let t = {
|
|
1817
1830
|
name: e.id,
|
|
1818
1831
|
header: e.header,
|
|
@@ -1830,7 +1843,7 @@
|
|
|
1830
1843
|
if (!e.flag) return t;
|
|
1831
1844
|
for (let n = 0; n < e.flag.length; n++) {
|
|
1832
1845
|
let r = e.flag[n];
|
|
1833
|
-
if (
|
|
1846
|
+
if (Qn(mr, r)) {
|
|
1834
1847
|
switch (r) {
|
|
1835
1848
|
case "enum":
|
|
1836
1849
|
t.enum_list = e.enum;
|
|
@@ -1841,7 +1854,7 @@
|
|
|
1841
1854
|
case "table": t.enum_list = e.table;
|
|
1842
1855
|
}
|
|
1843
1856
|
t.type = r;
|
|
1844
|
-
} else if (
|
|
1857
|
+
} else if (Qn(pr, r)) switch (r) {
|
|
1845
1858
|
case "writable":
|
|
1846
1859
|
t.is_writable = !0;
|
|
1847
1860
|
break;
|
|
@@ -1854,36 +1867,36 @@
|
|
|
1854
1867
|
}
|
|
1855
1868
|
return t;
|
|
1856
1869
|
}
|
|
1857
|
-
var
|
|
1870
|
+
var Tr = [
|
|
1858
1871
|
j(T.DTP_POINTER, "subscriber", 0, null, "Subscriber of output events"),
|
|
1859
1872
|
j(T.DTP_BOOLEAN, "periodic", 0, 0, "True for periodic timeouts"),
|
|
1860
1873
|
j(T.DTP_INTEGER, "msec", 0, 0, "Timeout in milliseconds"),
|
|
1861
1874
|
v()
|
|
1862
|
-
],
|
|
1875
|
+
], hr = {
|
|
1863
1876
|
periodic: !1,
|
|
1864
1877
|
msec: 0,
|
|
1865
1878
|
timer_id: -1
|
|
1866
|
-
},
|
|
1867
|
-
function
|
|
1879
|
+
}, yr = null;
|
|
1880
|
+
function vr(e, t, n, r) {
|
|
1868
1881
|
let o = e.priv, i = o.periodic ? "EV_TIMEOUT_PERIODIC" : "EV_TIMEOUT";
|
|
1869
1882
|
return o.periodic && o.msec > 0 ? o.timer_id = setTimeout(function() {
|
|
1870
|
-
|
|
1871
|
-
}, o.msec) : o.timer_id = -1, xe(e) ?
|
|
1883
|
+
jt(e, "EV_TIMEOUT", {}, e);
|
|
1884
|
+
}, o.msec) : o.timer_id = -1, xe(e) ? jt(We(e), i, {}, e) : Ct(e, i, {}), o.periodic || -1 !== o.timer_id || Ae(e) && Oe(e), 0;
|
|
1872
1885
|
}
|
|
1873
|
-
var
|
|
1886
|
+
var jr = {
|
|
1874
1887
|
mt_create: function(e) {
|
|
1875
1888
|
let t = e.priv;
|
|
1876
|
-
const n =
|
|
1877
|
-
n &&
|
|
1889
|
+
const n = ut(e, "subscriber");
|
|
1890
|
+
n && At(e, null, {}, n), t.periodic = st(e, "periodic"), t.msec = _t(e, "msec");
|
|
1878
1891
|
},
|
|
1879
1892
|
mt_writing: function(e, t) {
|
|
1880
1893
|
let n = e.priv;
|
|
1881
1894
|
switch (t) {
|
|
1882
1895
|
case "periodic":
|
|
1883
|
-
n.periodic =
|
|
1896
|
+
n.periodic = st(e, "periodic");
|
|
1884
1897
|
break;
|
|
1885
|
-
case "msec": n.msec =
|
|
1886
|
-
|
|
1898
|
+
case "msec": n.msec = _t(e, "msec"), -1 !== n.timer_id && (clearTimeout(n.timer_id), n.timer_id = -1), n.msec > 0 && (n.timer_id = setTimeout(function() {
|
|
1899
|
+
jt(e, "EV_TIMEOUT", {}, e);
|
|
1887
1900
|
}, n.msec)), n.msec > 0 ? Ae(e) || ve(e) : Ae(e) && Oe(e);
|
|
1888
1901
|
}
|
|
1889
1902
|
},
|
|
@@ -1891,20 +1904,20 @@
|
|
|
1891
1904
|
return 0;
|
|
1892
1905
|
},
|
|
1893
1906
|
mt_stop: function(e) {
|
|
1894
|
-
return
|
|
1907
|
+
return gt(e, "msec", -1), 0;
|
|
1895
1908
|
},
|
|
1896
1909
|
mt_destroy: function(e) {}
|
|
1897
1910
|
};
|
|
1898
|
-
function
|
|
1899
|
-
return e instanceof O ? "C_TIMER" !== Ge(e) ? (
|
|
1911
|
+
function Sr(e, t) {
|
|
1912
|
+
return e instanceof O ? "C_TIMER" !== Ge(e) ? (Ht("not C_TIMER GObj"), -1) : (ft(e, "periodic", !1), void gt(e, "msec", t)) : (Ht("not GObj TYPE"), -1);
|
|
1900
1913
|
}
|
|
1901
|
-
function
|
|
1902
|
-
return e instanceof O ? "C_TIMER" !== Ge(e) ? (
|
|
1914
|
+
function Or(e, t) {
|
|
1915
|
+
return e instanceof O ? "C_TIMER" !== Ge(e) ? (Ht("not C_TIMER GObj"), -1) : (ft(e, "periodic", !0), void gt(e, "msec", t)) : (Ht("not GObj TYPE"), -1);
|
|
1903
1916
|
}
|
|
1904
|
-
function
|
|
1905
|
-
return e instanceof O ? "C_TIMER" !== Ge(e) ? (
|
|
1917
|
+
function Nr(e) {
|
|
1918
|
+
return e instanceof O ? "C_TIMER" !== Ge(e) ? (Ht("not C_TIMER GObj"), -1) : void gt(e, "msec", -1) : (Ht("not GObj TYPE"), -1);
|
|
1906
1919
|
}
|
|
1907
|
-
var
|
|
1920
|
+
var Rr = [
|
|
1908
1921
|
j(T.DTP_BOOLEAN, "changesLost", 0, !1, "Set true to warn about leaving page"),
|
|
1909
1922
|
j(T.DTP_BOOLEAN, "browser_beforeunload", 0, !1, "Set true to refreshing browser"),
|
|
1910
1923
|
j(T.DTP_STRING, "__username__", 0, "", "Username"),
|
|
@@ -1930,21 +1943,21 @@
|
|
|
1930
1943
|
j(T.DTP_BOOLEAN, "developer", 0, !1, "Developer mode enabled"),
|
|
1931
1944
|
j(T.DTP_INTEGER, "periodic_timeout", 0, "1000", "Timeout periodic, in miliseconds."),
|
|
1932
1945
|
v()
|
|
1933
|
-
],
|
|
1934
|
-
function
|
|
1935
|
-
return
|
|
1946
|
+
], wr = { gobj_timer: null }, Dr = null;
|
|
1947
|
+
function Ar(e, t, n, r) {
|
|
1948
|
+
return Ct(e, t, n), 0;
|
|
1936
1949
|
}
|
|
1937
|
-
var
|
|
1950
|
+
var kr = {
|
|
1938
1951
|
mt_create: function(e) {
|
|
1939
1952
|
let t = e.priv;
|
|
1940
|
-
|
|
1953
|
+
dt(e, "start_date", ar()), dt(e, "node_uuid", cr()), e.priv.gobj_timer = he(Fe(e), "C_TIMER", {}, e), t.periodic_timeout = it(e, "periodic_timeout");
|
|
1941
1954
|
},
|
|
1942
1955
|
mt_writing: function(e, t) {},
|
|
1943
1956
|
mt_start: function(e) {
|
|
1944
|
-
return
|
|
1957
|
+
return Or(e.priv.gobj_timer, e.priv.periodic_timeout), 0;
|
|
1945
1958
|
},
|
|
1946
1959
|
mt_stop: function(e) {
|
|
1947
|
-
return
|
|
1960
|
+
return Nr(e.priv.gobj_timer), Re(e), 0;
|
|
1948
1961
|
},
|
|
1949
1962
|
mt_destroy: function(e) {},
|
|
1950
1963
|
mt_play: function(e) {
|
|
@@ -1955,7 +1968,7 @@
|
|
|
1955
1968
|
return De(fe()), 0;
|
|
1956
1969
|
}
|
|
1957
1970
|
};
|
|
1958
|
-
var
|
|
1971
|
+
var Ir = "ievent_gate_stack", $r = [
|
|
1959
1972
|
j(T.DTP_STRING, "wanted_yuno_role", h.SDF_RD, "", "wanted yuno role"),
|
|
1960
1973
|
j(T.DTP_STRING, "wanted_yuno_name", h.SDF_RD, "", "wanted yuno name"),
|
|
1961
1974
|
j(T.DTP_STRING, "wanted_yuno_service", h.SDF_RD, "", "wanted yuno service"),
|
|
@@ -1972,7 +1985,7 @@
|
|
|
1972
1985
|
j(T.DTP_INTEGER, "timeout_idack", h.SDF_RD, "5000", "timeout waiting idAck"),
|
|
1973
1986
|
j(T.DTP_POINTER, "subscriber", 0, 0, "subscriber of output-events. If null then subscriber is the parent"),
|
|
1974
1987
|
v()
|
|
1975
|
-
],
|
|
1988
|
+
], Cr = {
|
|
1976
1989
|
url: null,
|
|
1977
1990
|
remote_yuno_name: null,
|
|
1978
1991
|
remote_yuno_role: null,
|
|
@@ -1982,87 +1995,87 @@
|
|
|
1982
1995
|
websocket: null,
|
|
1983
1996
|
inside_on_open: !1,
|
|
1984
1997
|
retry_ms: 0
|
|
1985
|
-
},
|
|
1986
|
-
function
|
|
1987
|
-
e.priv.websocket &&
|
|
1988
|
-
const t =
|
|
1998
|
+
}, Lr = null;
|
|
1999
|
+
function Pr(e) {
|
|
2000
|
+
e.priv.websocket && Ht("Websocket ALREADY setup");
|
|
2001
|
+
const t = at(e, "url");
|
|
1989
2002
|
let n;
|
|
1990
|
-
|
|
2003
|
+
Qt(`====> Starting WebSocket to '${t}' (${Ve(e)})`);
|
|
1991
2004
|
try {
|
|
1992
2005
|
n = new WebSocket(t);
|
|
1993
2006
|
} catch (n) {
|
|
1994
|
-
return
|
|
2007
|
+
return Ht(`${Ve(e)}: Cannot open WebSocket to '${t}', Error: ${n.message}`), null;
|
|
1995
2008
|
}
|
|
1996
2009
|
return n ? (n.onopen = () => {
|
|
1997
|
-
|
|
2010
|
+
jt(e, "EV_ON_OPEN", { url: t }, e);
|
|
1998
2011
|
}, n.onmessage = (n) => {
|
|
1999
|
-
|
|
2012
|
+
jt(e, "EV_ON_MESSAGE", {
|
|
2000
2013
|
url: t,
|
|
2001
2014
|
data: n.data
|
|
2002
2015
|
}, e);
|
|
2003
2016
|
}, n.onclose = (n) => {
|
|
2004
|
-
Ye(e) || (
|
|
2017
|
+
Ye(e) || (st(Ce(), "browser_beforeunload") ? zt("Close websocket by unload page") : jt(e, "EV_ON_CLOSE", {
|
|
2005
2018
|
url: t,
|
|
2006
2019
|
e: n
|
|
2007
2020
|
}, e));
|
|
2008
|
-
}, n) : (
|
|
2021
|
+
}, n) : (Ht(`${Ve(e)}: Failed to initialize WebSocket.`), null);
|
|
2009
2022
|
}
|
|
2010
|
-
function
|
|
2023
|
+
function Ur(e, t = 1e3, n = "") {
|
|
2011
2024
|
let r = e.priv, o = r.websocket;
|
|
2012
2025
|
if (r.websocket = null, o && o.readyState !== WebSocket.CLOSED && o.readyState !== WebSocket.CLOSING) {
|
|
2013
|
-
|
|
2026
|
+
Qt(`Closing WebSocket (Code: ${t}, Reason: "${n}")`);
|
|
2014
2027
|
try {
|
|
2015
2028
|
o.close(t, n);
|
|
2016
2029
|
} catch (e) {
|
|
2017
|
-
|
|
2030
|
+
Ht("Error closing WebSocket:", e.message);
|
|
2018
2031
|
}
|
|
2019
|
-
} else
|
|
2032
|
+
} else zt("WebSocket is already closed or in the process of closing.");
|
|
2020
2033
|
}
|
|
2021
|
-
function
|
|
2022
|
-
let r =
|
|
2034
|
+
function Fr(e, t, n) {
|
|
2035
|
+
let r = ar();
|
|
2023
2036
|
try {
|
|
2024
|
-
|
|
2037
|
+
Qt("\n" + r + " " + t + "\n"), Zt(n);
|
|
2025
2038
|
} catch (e) {
|
|
2026
|
-
|
|
2039
|
+
Qt("ERROR in trace_inter_event: " + e);
|
|
2027
2040
|
}
|
|
2028
2041
|
}
|
|
2029
|
-
var
|
|
2042
|
+
var Gr = class {
|
|
2030
2043
|
constructor(e, t) {
|
|
2031
2044
|
this.event = e, this.kw = t || {};
|
|
2032
2045
|
}
|
|
2033
2046
|
};
|
|
2034
|
-
function
|
|
2047
|
+
function Vr(e, t, n, r) {
|
|
2035
2048
|
return function(e, t) {
|
|
2036
2049
|
let n = e.priv, r = JSON.stringify(t);
|
|
2037
|
-
if (
|
|
2038
|
-
let n =
|
|
2039
|
-
i ? i(o, t, 1, r.length) :
|
|
2050
|
+
if (st(Ce(), "trace_inter_event")) {
|
|
2051
|
+
let n = at(e, "url"), o = Fe(Ce()) + " ==> " + n, i = it(Ce(), "trace_ievent_callback");
|
|
2052
|
+
i ? i(o, t, 1, r.length) : Fr(0, o, t);
|
|
2040
2053
|
}
|
|
2041
|
-
if (!n.websocket || n.websocket.readyState !== WebSocket.OPEN) return
|
|
2054
|
+
if (!n.websocket || n.websocket.readyState !== WebSocket.OPEN) return zt(`${Ve(e)}: send_iev(): websocket not open, message lost`), -1;
|
|
2042
2055
|
try {
|
|
2043
2056
|
n.websocket.send(r);
|
|
2044
2057
|
} catch (t) {
|
|
2045
|
-
|
|
2058
|
+
Ht(`${Ve(e)}: send_iev(): ${t}`);
|
|
2046
2059
|
}
|
|
2047
2060
|
return 0;
|
|
2048
2061
|
}(e, function(e, t) {
|
|
2049
|
-
return
|
|
2062
|
+
return Sn(e) ? (Ht("iev_create() event NULL"), null) : new Gr(e, t);
|
|
2050
2063
|
}(t, n));
|
|
2051
2064
|
}
|
|
2052
|
-
function
|
|
2053
|
-
return
|
|
2054
|
-
dst_yuno:
|
|
2055
|
-
dst_role:
|
|
2065
|
+
function Mr(e, t, n) {
|
|
2066
|
+
return Sn(n) && (n = at(e, "wanted_yuno_service")), {
|
|
2067
|
+
dst_yuno: at(e, "wanted_yuno_name"),
|
|
2068
|
+
dst_role: at(e, "wanted_yuno_role"),
|
|
2056
2069
|
dst_service: n,
|
|
2057
2070
|
src_yuno: Le(),
|
|
2058
2071
|
src_role: Pe(),
|
|
2059
2072
|
src_service: t,
|
|
2060
|
-
host:
|
|
2073
|
+
host: cr()
|
|
2061
2074
|
};
|
|
2062
2075
|
}
|
|
2063
|
-
function
|
|
2064
|
-
let t = e.priv, n = $e(Ce()), r =
|
|
2065
|
-
s && s.length || (s =
|
|
2076
|
+
function Wr(e) {
|
|
2077
|
+
let t = e.priv, n = $e(Ce()), r = at(Ce(), "yuno_version"), o = at(Ce(), "yuno_release"), i = at(Ce(), "yuno_tag"), s = it(e, "required_services");
|
|
2078
|
+
s && s.length || (s = it(Ce(), "required_services"));
|
|
2066
2079
|
let _ = {
|
|
2067
2080
|
yuno_role: Pe(),
|
|
2068
2081
|
yuno_id: Ue(),
|
|
@@ -2074,38 +2087,38 @@
|
|
|
2074
2087
|
playing: n,
|
|
2075
2088
|
pid: 0,
|
|
2076
2089
|
watcher_pid: 0,
|
|
2077
|
-
jwt:
|
|
2078
|
-
username:
|
|
2090
|
+
jwt: at(e, "jwt"),
|
|
2091
|
+
username: at(Ce(), "__username__"),
|
|
2079
2092
|
launch_id: 0,
|
|
2080
|
-
yuno_startdate:
|
|
2081
|
-
id:
|
|
2093
|
+
yuno_startdate: at(Ce(), "start_date"),
|
|
2094
|
+
id: cr(),
|
|
2082
2095
|
user_agent: "undefined" != typeof window ? window.navigator.userAgent : "",
|
|
2083
2096
|
language: "undefined" != typeof window ? window.navigator.language : "",
|
|
2084
2097
|
required_services: s
|
|
2085
2098
|
};
|
|
2086
|
-
return
|
|
2099
|
+
return er(e, _, Ir, Mr(e, Fe(We(e)), null)), nr(e, _, "__identity__"), Sr(t.gobj_timer, _t(e, "timeout_idack")), Vr(e, "EV_IDENTITY_CARD", _);
|
|
2087
2100
|
}
|
|
2088
|
-
function
|
|
2089
|
-
if (
|
|
2101
|
+
function Kr(e, t) {
|
|
2102
|
+
if (Sn(t.event)) return -1;
|
|
2090
2103
|
let n = {}, r = t.__global__, o = t.__config__, i = t.__filter__, l = t.__service__, s = t.subscriber;
|
|
2091
2104
|
o && (n.__config__ = o), r && (n.__global__ = r), i && (n.__filter__ = i);
|
|
2092
|
-
return
|
|
2105
|
+
return er(e, n, Ir, Mr(e, Fe(s), l)), nr(e, n, "__subscribing__"), Vr(e, t.event, n);
|
|
2093
2106
|
}
|
|
2094
|
-
function
|
|
2107
|
+
function xr(e, t, n, r) {
|
|
2095
2108
|
let o = e.priv;
|
|
2096
|
-
return Ae(e) && (o.websocket =
|
|
2109
|
+
return Ae(e) && (o.websocket = Pr(e)), 0;
|
|
2097
2110
|
}
|
|
2098
|
-
function
|
|
2099
|
-
return
|
|
2111
|
+
function Yr(e, t, n, r) {
|
|
2112
|
+
return Qt("Websocket opened: " + e.priv.url), Wr(e), 0;
|
|
2100
2113
|
}
|
|
2101
|
-
function
|
|
2114
|
+
function Br(e, t, n, r) {
|
|
2102
2115
|
let o = e.priv, i = n.e, l = n.url;
|
|
2103
|
-
return
|
|
2116
|
+
return Jt(), zt(`${Ve(e)}: WebSocket closed ${l} (Code: ${i.code}, Reason: "${i.reason}", Clean: ${i.wasClean})`), o.websocket && (o.websocket.onopen = null, o.websocket.onmessage = null, o.websocket.onerror = null, o.websocket.onclose = null, o.websocket = null), o.inform_on_close ? (o.inform_on_close = !1, Ct(e, "EV_ON_CLOSE", {
|
|
2104
2117
|
url: l,
|
|
2105
2118
|
remote_yuno_name: o.remote_yuno_name,
|
|
2106
2119
|
remote_yuno_role: o.remote_yuno_role,
|
|
2107
2120
|
remote_yuno_service: o.remote_yuno_service
|
|
2108
|
-
})) : (
|
|
2121
|
+
})) : (zt(`${Ve(e)}: EV_ON_OPEN_ERROR cannot open ${l} (Code: ${i.code}, Reason: "${i.reason}", Clean: ${i.wasClean})`), Ct(e, "EV_ON_OPEN_ERROR", {
|
|
2109
2122
|
url: l,
|
|
2110
2123
|
remote_yuno_name: o.remote_yuno_name,
|
|
2111
2124
|
remote_yuno_role: o.remote_yuno_role,
|
|
@@ -2113,27 +2126,27 @@
|
|
|
2113
2126
|
code: i.code,
|
|
2114
2127
|
reason: i.reason,
|
|
2115
2128
|
was_clean: i.wasClean
|
|
2116
|
-
})), Ae(e) &&
|
|
2117
|
-
let t = e.priv, n =
|
|
2129
|
+
})), Ae(e) && Sr(o.gobj_timer, function(e) {
|
|
2130
|
+
let t = e.priv, n = _t(e, "timeout_retry"), r = _t(e, "timeout_retry_max");
|
|
2118
2131
|
r < n && (r = n);
|
|
2119
2132
|
t.retry_ms = t.retry_ms ? Math.min(2 * t.retry_ms, r) : n;
|
|
2120
2133
|
let o = .2 * t.retry_ms, i = t.retry_ms - o + 2 * Math.random() * o;
|
|
2121
2134
|
return Math.max(1, Math.round(i));
|
|
2122
2135
|
}(e)), 0;
|
|
2123
2136
|
}
|
|
2124
|
-
function
|
|
2125
|
-
return
|
|
2137
|
+
function Jr(e, t, n, r) {
|
|
2138
|
+
return Wr(e), 0;
|
|
2126
2139
|
}
|
|
2127
|
-
function
|
|
2140
|
+
function qr(e, t, n, r) {
|
|
2128
2141
|
let o = e.priv;
|
|
2129
|
-
|
|
2130
|
-
let i =
|
|
2131
|
-
|
|
2132
|
-
let a =
|
|
2142
|
+
Nr(o.gobj_timer);
|
|
2143
|
+
let i = tr(e, n, Ir, !0), l = Ln(e, i, "src_yuno", ""), s = Ln(e, i, "src_role", ""), _ = Ln(e, i, "src_service", "");
|
|
2144
|
+
dt(e, "remote_yuno_name", l), dt(e, "remote_yuno_role", s), dt(e, "remote_yuno_service", _);
|
|
2145
|
+
let a = Cn(e, n, "result", -1, 0), u = Ln(e, n, "comment", "", 0), c = Ln(e, n, "username", "", 0), f = Fn(e, n, "services_roles", {});
|
|
2133
2146
|
if (a < 0) {
|
|
2134
|
-
|
|
2147
|
+
Ur(e);
|
|
2135
2148
|
let t = {
|
|
2136
|
-
url:
|
|
2149
|
+
url: at(e, "url"),
|
|
2137
2150
|
result: a,
|
|
2138
2151
|
comment: u,
|
|
2139
2152
|
username: c,
|
|
@@ -2141,9 +2154,9 @@
|
|
|
2141
2154
|
remote_yuno_role: s,
|
|
2142
2155
|
remote_yuno_service: _
|
|
2143
2156
|
};
|
|
2144
|
-
xe(e) ?
|
|
2157
|
+
xe(e) ? jt(We(e), "EV_ON_ID_NAK", t, e) : Ct(e, "EV_ON_ID_NAK", t);
|
|
2145
2158
|
} else {
|
|
2146
|
-
if (
|
|
2159
|
+
if (bt(e, "ST_SESSION"), o.inside_on_open = !0, o.retry_ms = 0, !o.inform_on_close) {
|
|
2147
2160
|
o.inform_on_close = !0;
|
|
2148
2161
|
let t = {
|
|
2149
2162
|
username: c,
|
|
@@ -2152,134 +2165,134 @@
|
|
|
2152
2165
|
remote_yuno_service: _,
|
|
2153
2166
|
services_roles: f
|
|
2154
2167
|
};
|
|
2155
|
-
xe(e) ?
|
|
2168
|
+
xe(e) ? jt(We(e), "EV_ON_OPEN", t, e) : Ct(e, "EV_ON_OPEN", t);
|
|
2156
2169
|
}
|
|
2157
2170
|
o.inside_on_open = !1, function(e) {
|
|
2158
|
-
let t =
|
|
2159
|
-
for (let n = 0; n < t.length; n++)
|
|
2171
|
+
let t = It(e, null, null, null);
|
|
2172
|
+
for (let n = 0; n < t.length; n++) Kr(e, t[n]);
|
|
2160
2173
|
}(e);
|
|
2161
2174
|
}
|
|
2162
2175
|
return 0;
|
|
2163
2176
|
}
|
|
2164
|
-
function
|
|
2177
|
+
function Hr(e, t, n, r) {
|
|
2165
2178
|
let o = e.priv.url, i = function(e, t) {
|
|
2166
2179
|
let n;
|
|
2167
2180
|
try {
|
|
2168
2181
|
n = JSON.parse(t);
|
|
2169
2182
|
} catch (e) {
|
|
2170
|
-
return
|
|
2183
|
+
return Ht("parsing inter_event json: " + e), null;
|
|
2171
2184
|
}
|
|
2172
|
-
if (!(n instanceof Object)) return
|
|
2185
|
+
if (!(n instanceof Object)) return Ht("parsing inter_event: websocket data not a json object"), null;
|
|
2173
2186
|
let r = n.event;
|
|
2174
|
-
if (!r) return
|
|
2175
|
-
if ("string" != typeof r) return
|
|
2187
|
+
if (!r) return Ht("parsing inter_event: no event"), null;
|
|
2188
|
+
if ("string" != typeof r) return Ht("parsing inter_event: event not a string"), null;
|
|
2176
2189
|
let o = n.kw;
|
|
2177
2190
|
return o ? o instanceof Object ? {
|
|
2178
2191
|
event: r,
|
|
2179
2192
|
kw: o || {}
|
|
2180
|
-
} : (
|
|
2193
|
+
} : (Ht("parsing inter_event: kw not a json object"), null) : (Ht("parsing inter_kw: no kw"), null);
|
|
2181
2194
|
}(0, n.data);
|
|
2182
|
-
if (
|
|
2183
|
-
let e = Fe(Ce()) + " <== " + o, t = n.data.length, r =
|
|
2184
|
-
r ? r(e, i, 2, t) :
|
|
2195
|
+
if (st(Ce(), "trace_inter_event")) {
|
|
2196
|
+
let e = Fe(Ce()) + " <== " + o, t = n.data.length, r = it(Ce(), "trace_ievent_callback");
|
|
2197
|
+
r ? r(e, i, 2, t) : Fr(0, e, i);
|
|
2185
2198
|
}
|
|
2186
2199
|
let l = i.event, s = i.kw;
|
|
2187
|
-
if ("ST_SESSION" !==
|
|
2188
|
-
if (
|
|
2189
|
-
if (
|
|
2190
|
-
} else
|
|
2191
|
-
return
|
|
2200
|
+
if ("ST_SESSION" !== pt(e)) {
|
|
2201
|
+
if (Et(e, l, D.EVF_PUBLIC_EVENT)) {
|
|
2202
|
+
if (!(jt(e, l, s, e) < 0)) return 0;
|
|
2203
|
+
} else Ht(`${Ve(e)}: event UNKNOWN in not-session state ${l}`);
|
|
2204
|
+
return Ur(e), -1;
|
|
2192
2205
|
}
|
|
2193
2206
|
i = null;
|
|
2194
|
-
let _ =
|
|
2195
|
-
if (u.toLowerCase() !== Pe().toLowerCase()) return
|
|
2196
|
-
let c =
|
|
2207
|
+
let _ = rr(e, s), a = tr(e, s, Ir), u = Ln(e, a, "dst_role", "");
|
|
2208
|
+
if (u.toLowerCase() !== Pe().toLowerCase()) return Ht(`"It's not my role, dst_role: ${u}, my_role: ${Pe()}`), 0;
|
|
2209
|
+
let c = Ln(e, a, "dst_service", "");
|
|
2197
2210
|
if ("__subscribing__" === _) return -1;
|
|
2198
2211
|
if ("__unsubscribing__" === _) return -1;
|
|
2199
|
-
if (
|
|
2212
|
+
if (Et(e, l, D.EVF_PUBLIC_EVENT)) return jt(e, l, s, e), 0;
|
|
2200
2213
|
let f = ge(c, !0);
|
|
2201
2214
|
if (f) {
|
|
2202
|
-
if (!
|
|
2203
|
-
|
|
2204
|
-
} else xe(e) ?
|
|
2215
|
+
if (!Et(f, l, D.EVF_PUBLIC_EVENT)) return Ht(`${Ve(e)}: Service found but no event or not public, service '${Ve(f)}', ev '${l}'`), -1;
|
|
2216
|
+
jt(f, l, s, e);
|
|
2217
|
+
} else xe(e) ? jt(We(e), l, s, e) : Ct(e, l, s);
|
|
2205
2218
|
return 0;
|
|
2206
2219
|
}
|
|
2207
|
-
function
|
|
2220
|
+
function zr(e, t, n, r) {
|
|
2208
2221
|
return 0;
|
|
2209
2222
|
}
|
|
2210
|
-
function
|
|
2223
|
+
function Qr(e, t, n, r) {
|
|
2211
2224
|
return 0;
|
|
2212
2225
|
}
|
|
2213
|
-
var
|
|
2226
|
+
var Xr = {
|
|
2214
2227
|
mt_create: function(e) {
|
|
2215
2228
|
let t = e.priv;
|
|
2216
|
-
t.gobj_timer = he(Fe(e), "C_TIMER", {}, e), t.url =
|
|
2217
|
-
const n =
|
|
2218
|
-
n &&
|
|
2229
|
+
t.gobj_timer = he(Fe(e), "C_TIMER", {}, e), t.url = at(e, "url"), t.remote_yuno_name = at(e, "remote_yuno_name"), t.remote_yuno_role = at(e, "remote_yuno_role"), t.remote_yuno_service = at(e, "remote_yuno_service"), dt(e, "wanted_yuno_name", t.remote_yuno_name), dt(e, "wanted_yuno_role", t.remote_yuno_role), dt(e, "wanted_yuno_service", t.remote_yuno_service);
|
|
2230
|
+
const n = ut(e, "subscriber");
|
|
2231
|
+
n && At(e, null, {}, n);
|
|
2219
2232
|
},
|
|
2220
2233
|
mt_writing: function(e, t) {
|
|
2221
2234
|
let n = e.priv;
|
|
2222
2235
|
switch (t) {
|
|
2223
2236
|
case "url":
|
|
2224
|
-
n.url =
|
|
2237
|
+
n.url = at(e, "url");
|
|
2225
2238
|
break;
|
|
2226
2239
|
case "remote_yuno_name":
|
|
2227
|
-
n.remote_yuno_name =
|
|
2240
|
+
n.remote_yuno_name = at(e, "remote_yuno_name");
|
|
2228
2241
|
break;
|
|
2229
2242
|
case "remote_yuno_role":
|
|
2230
|
-
n.remote_yuno_role =
|
|
2243
|
+
n.remote_yuno_role = at(e, "remote_yuno_role");
|
|
2231
2244
|
break;
|
|
2232
|
-
case "remote_yuno_service": n.remote_yuno_service =
|
|
2245
|
+
case "remote_yuno_service": n.remote_yuno_service = at(e, "remote_yuno_service");
|
|
2233
2246
|
}
|
|
2234
2247
|
},
|
|
2235
2248
|
mt_start: function(e) {
|
|
2236
2249
|
let t = e.priv;
|
|
2237
|
-
return t.retry_ms = 0, t.websocket =
|
|
2250
|
+
return t.retry_ms = 0, t.websocket = Pr(e), 0;
|
|
2238
2251
|
},
|
|
2239
2252
|
mt_stop: function(e) {
|
|
2240
2253
|
let t = e.priv;
|
|
2241
|
-
return
|
|
2254
|
+
return Nr(t.gobj_timer), t.websocket && Ur(e), 0;
|
|
2242
2255
|
},
|
|
2243
2256
|
mt_destroy: function(e) {},
|
|
2244
2257
|
mt_stats: function(e, t, n, r) {
|
|
2245
|
-
if ("ST_SESSION" !==
|
|
2258
|
+
if ("ST_SESSION" !== pt(e)) return Ht("Not in session"), null;
|
|
2246
2259
|
n || (n = {});
|
|
2247
|
-
let o =
|
|
2248
|
-
return i || (i = {}),
|
|
2260
|
+
let o = Mr(e, Fe(r), Ln(e, n, "service", null, 0)), i = Fn(e, n, "__md_stats__", null, Lt.KW_EXTRACT);
|
|
2261
|
+
return i || (i = {}), er(e, n, "stats_stack", {
|
|
2249
2262
|
stats: t,
|
|
2250
2263
|
kw: i
|
|
2251
|
-
}),
|
|
2264
|
+
}), er(e, n, Ir, o), n.__stats__ = t, nr(e, n, "__stats__"), Vr(e, "EV_MT_STATS", n, r), null;
|
|
2252
2265
|
},
|
|
2253
2266
|
mt_command_parser: function(e, t, n, r) {
|
|
2254
|
-
if ("ST_SESSION" !==
|
|
2267
|
+
if ("ST_SESSION" !== pt(e)) return Ht("Not in session"), null;
|
|
2255
2268
|
n || (n = {});
|
|
2256
|
-
let o =
|
|
2257
|
-
return i || (i = {}),
|
|
2269
|
+
let o = Mr(e, Fe(r), Ln(e, n, "service", "", 0)), i = Fn(e, n, "__md_command__", null, Lt.KW_EXTRACT);
|
|
2270
|
+
return i || (i = {}), er(e, n, "command_stack", {
|
|
2258
2271
|
command: t,
|
|
2259
2272
|
kw: i
|
|
2260
|
-
}),
|
|
2273
|
+
}), er(e, n, Ir, o), n.__command__ = t, nr(e, n, "__command__"), Vr(e, "EV_MT_COMMAND", n, r), null;
|
|
2261
2274
|
},
|
|
2262
2275
|
mt_inject_event: function(e, t, n, r) {
|
|
2263
|
-
if ("ST_SESSION" !==
|
|
2264
|
-
if (n || (n = {}),
|
|
2276
|
+
if ("ST_SESSION" !== pt(e)) return window.console.error("Not in session"), -1;
|
|
2277
|
+
if (n || (n = {}), tr(e, n, Ir));
|
|
2265
2278
|
else {
|
|
2266
|
-
let o =
|
|
2267
|
-
|
|
2279
|
+
let o = Mr(e, Fe(r), Ln(e, n, "__service__", 0, 0));
|
|
2280
|
+
sn(n, "__service__"), er(e, n, "__message__", t), er(e, n, Ir, o);
|
|
2268
2281
|
}
|
|
2269
|
-
return
|
|
2282
|
+
return nr(e, n, "__message__"), Vr(e, t, n, r);
|
|
2270
2283
|
},
|
|
2271
2284
|
mt_subscription_added: function(e, t) {
|
|
2272
2285
|
let n = e.priv;
|
|
2273
|
-
return "ST_SESSION" ===
|
|
2286
|
+
return "ST_SESSION" === pt(e) && n.websocket ? n.inside_on_open ? 0 : Kr(e, t) : 0;
|
|
2274
2287
|
},
|
|
2275
2288
|
mt_subscription_deleted: function(e, t) {
|
|
2276
2289
|
let n = e.priv;
|
|
2277
|
-
if ("ST_SESSION" !==
|
|
2290
|
+
if ("ST_SESSION" !== pt(e) || !n.websocket) return 0;
|
|
2278
2291
|
if (n.inside_on_open) return 0;
|
|
2279
|
-
if (
|
|
2292
|
+
if (Sn(t.event)) return 0;
|
|
2280
2293
|
let r = {}, o = t.__global__, i = t.__config__, l = t.__filter__, s = t.__service__, _ = t.subscriber;
|
|
2281
2294
|
i && (r.__config__ = i), o && (r.__global__ = o), l && (r.__filter__ = l);
|
|
2282
|
-
return
|
|
2295
|
+
return er(e, r, Ir, Mr(e, Fe(_), s)), nr(e, r, "__unsubscribing__"), Vr(e, t.event, r, e);
|
|
2283
2296
|
}
|
|
2284
2297
|
};
|
|
2285
2298
|
e.GObj = O, e.SDATA = j, e.SDATAAUTHZ = (e, t, n, r, o, i) => new y(e, t, n, null, i, r, null, 0, null, o, null), e.SDATACM = (e, t, n, r, o, i) => new y(e, t, 0, null, i, n, null, 0, o, r, null), e.SDATACM2 = (e, t, n, r, o, i, l) => new y(e, t, n, null, l, r, null, 0, i, o, null), e.SDATADF = (e, t, n, r, o, i) => new y(e, t, n, null, i, null, r, o), e.SDATAPM = (e, t, n, r, o) => new y(e, t, n, r, o), e.SDATAPM0 = (e, t, n, r, o) => new y(e, t, n, null, o, null, null, 0, null, null, r), e.SDATA_END = v, e.SDataDesc = y, e.YUNETA_VERSION = l, Object.defineProperty(e, "__yuno__", {
|
|
@@ -2293,50 +2306,50 @@
|
|
|
2293
2306
|
return t;
|
|
2294
2307
|
}, e.build_stats_response = i, e.clean_name = function(e) {
|
|
2295
2308
|
return e.replace(/[?# ^:]/g, "_");
|
|
2296
|
-
}, e.clear_timeout =
|
|
2309
|
+
}, e.clear_timeout = Nr, e.cmp_two_simple_json = wn, e.command_parser = function(e, t, n, r) {}, e.createElement2 = function e(t, n) {
|
|
2297
2310
|
let [r, o, i, l] = t;
|
|
2298
|
-
if (!r) return void
|
|
2311
|
+
if (!r) return void Ht("Tag must be a valid HTML element.");
|
|
2299
2312
|
let s = document.createElement(r), _ = "";
|
|
2300
2313
|
if (o && "object" == typeof o) for (let e of Object.keys(o)) if ("style" === e && "object" == typeof o[e]) {
|
|
2301
2314
|
let t = "";
|
|
2302
2315
|
for (const n of Object.keys(o[e])) t += `${n}: ${o[e][n]};`;
|
|
2303
2316
|
s.style.cssText = t;
|
|
2304
2317
|
} else "style" === e ? s.style.cssText = o[e] : "i18n" === e || "data-i18n" === e || "data_i18next" === e || "data-i18next" === e ? null !== o[e] && void 0 !== o[e] && (_ = o[e], s.setAttribute("data-i18n", _)) : s.setAttribute(e, o[e]);
|
|
2305
|
-
if (
|
|
2318
|
+
if (En(i)) if (i = i.trim(), i.length > 0 && "<" === i[0]) s.appendChild(_r(i));
|
|
2306
2319
|
else if (n && _) s.textContent = n(_) || i;
|
|
2307
2320
|
else s.textContent = i;
|
|
2308
|
-
else if (
|
|
2309
|
-
if (i.length > 0) if (
|
|
2321
|
+
else if (mn(i)) {
|
|
2322
|
+
if (i.length > 0) if (En(i[0])) s.appendChild(e(i, n));
|
|
2310
2323
|
else for (let t of i) Array.isArray(t) && t.length > 0 ? s.appendChild(e(t, n)) : t instanceof HTMLElement && s.appendChild(t);
|
|
2311
|
-
} else i instanceof HTMLElement || i instanceof Text || i instanceof SVGElement ? s.appendChild(i) : null != i && (
|
|
2324
|
+
} else i instanceof HTMLElement || i instanceof Text || i instanceof SVGElement ? s.appendChild(i) : null != i && (Ht("content ignored"), Zt(i));
|
|
2312
2325
|
if (l && "object" == typeof l) for (const e of Object.keys(l)) s.addEventListener(e, l[e]);
|
|
2313
2326
|
return s;
|
|
2314
|
-
}, e.createOneHtml =
|
|
2315
|
-
let n =
|
|
2316
|
-
return
|
|
2327
|
+
}, e.createOneHtml = _r, e.create_json_record = function(e, t) {
|
|
2328
|
+
let n = en(e);
|
|
2329
|
+
return rn(n, t), n;
|
|
2317
2330
|
}, e.create_template_record = function(e, t) {
|
|
2318
2331
|
let n = {};
|
|
2319
2332
|
return t || (t = {}), Object.entries(e).forEach(([e, r]) => {
|
|
2320
2333
|
let o;
|
|
2321
|
-
|
|
2322
|
-
let i =
|
|
2334
|
+
pn(r) && (o = r.default);
|
|
2335
|
+
let i = Fn(null, t, e, o);
|
|
2323
2336
|
n[e] = i;
|
|
2324
2337
|
}), n;
|
|
2325
|
-
}, e.current_timestamp =
|
|
2326
|
-
let n =
|
|
2327
|
-
return n &&
|
|
2338
|
+
}, e.current_timestamp = ar, e.data_type_t = T, e.db_list_persistent_attrs = function(e, t) {
|
|
2339
|
+
let n = Yn(gr(e), null, !1), r = {};
|
|
2340
|
+
return n && pn(n) && (r = Kn(e, n, t, !1)), r;
|
|
2328
2341
|
}, e.db_load_persistent_attrs = function(e, t) {
|
|
2329
|
-
let n =
|
|
2330
|
-
if (r &&
|
|
2331
|
-
let o =
|
|
2332
|
-
o =
|
|
2342
|
+
let n = lt(e, h.SDF_PERSIST), r = Yn(gr(e), null, !1);
|
|
2343
|
+
if (r && pn(r)) {
|
|
2344
|
+
let o = Kn(e, r, t, !1);
|
|
2345
|
+
o = Kn(e, o, n, !1), ct(e, o, h.SDF_PERSIST);
|
|
2333
2346
|
}
|
|
2334
2347
|
}, e.db_remove_persistent_attrs = function(e, t) {
|
|
2335
|
-
let n =
|
|
2336
|
-
0 ===
|
|
2348
|
+
let n = xn(e, Yn(gr(e), null, !1), t, !1);
|
|
2349
|
+
0 === gn(n) ? Jn(gr(e)) : Bn(gr(e), n);
|
|
2337
2350
|
}, e.db_save_persistent_attrs = function(e, t) {
|
|
2338
|
-
let n =
|
|
2339
|
-
return r &&
|
|
2351
|
+
let n = Kn(e, lt(e, h.SDF_PERSIST), t, !1), r = Yn(gr(e), null, !1);
|
|
2352
|
+
return r && pn(r) && on(n, r), Bn(gr(e), n);
|
|
2340
2353
|
}, e.debounce = function(e, t = 0, n = !1) {
|
|
2341
2354
|
let r = null, o = null, i = null;
|
|
2342
2355
|
const l = (...l) => {
|
|
@@ -2361,7 +2374,7 @@
|
|
|
2361
2374
|
Object.assign(t, e);
|
|
2362
2375
|
}
|
|
2363
2376
|
return t;
|
|
2364
|
-
}, e.empty_string =
|
|
2377
|
+
}, e.empty_string = Sn, e.escapeHtml = sr, e.event_flag_t = D, e.gclass_add_ev_action = le, e.gclass_add_event_type = _e, e.gclass_add_state = ie, e.gclass_check_fsm = ue, e.gclass_create = te, e.gclass_event_type = ae, e.gclass_find_by_name = ce, e.gclass_flag_t = N, e.gclass_unregister = ne, e.getPositionRelativeToBody = function(e) {
|
|
2365
2378
|
if (!e) return {
|
|
2366
2379
|
top: 0,
|
|
2367
2380
|
left: 0,
|
|
@@ -2380,14 +2393,14 @@
|
|
|
2380
2393
|
right: n + s + r,
|
|
2381
2394
|
bottom: t + l + o
|
|
2382
2395
|
};
|
|
2383
|
-
}, e.get_function_name =
|
|
2396
|
+
}, e.get_function_name = fr, e.get_now = function() {
|
|
2384
2397
|
return Math.floor(Date.now() / 1e3);
|
|
2385
2398
|
}, e.gobj_bottom_gobj = Be, e.gobj_change_parent = function(e, t) {
|
|
2386
|
-
return Ye(e) ? (
|
|
2387
|
-
}, e.gobj_change_state =
|
|
2388
|
-
if (Ye(e)) return
|
|
2389
|
-
let l = p &&
|
|
2390
|
-
return l && (L(n("🌀🌀 mach(%s%s), cmd: %s, src: %s", Ae(e) ? "" : "!!", Ve(e), t, Ve(i))), l > 1 &&
|
|
2399
|
+
return Ye(e) ? (Ht("gobj NULL or DESTROYED"), null) : t instanceof O ? (e.parent && e.parent.mt_child_removed && e.parent.mt_child_removed(e.parent, e), e.parent && (pe(e.parent, e), e.parent = null), be(t, e), t.mt_child_added && (Y(e) && Qt(n("👦👦🔵 child_added(%s): %s", Me(t), Ve(e))), t.mt_child_added(t, e)), 0) : (Ht(`${Ve(e)}: gobj_change_parent() BAD TYPE of parent`), -1);
|
|
2400
|
+
}, e.gobj_change_state = bt, e.gobj_command = function(e, t, r, i) {
|
|
2401
|
+
if (Ye(e)) return Ht("gobj NULL or DESTROYED"), -1;
|
|
2402
|
+
let l = p && _t(p, "tracing");
|
|
2403
|
+
return l && (L(n("🌀🌀 mach(%s%s), cmd: %s, src: %s", Ae(e) ? "" : "!!", Ve(e), t, Ve(i))), l > 1 && Zt(r)), e.gclass.gmt.mt_command_parser ? e.gclass.gmt.mt_command_parser(e, t, r, i) : e.gclass.command_table ? c ? c(e, t, r, i) : o(0, -1, n("%s: global command parser not available", Ve(e)), 0, 0) : o(0, -1, n("%s: command table not available", Ve(e)), 0, 0);
|
|
2391
2404
|
}, e.gobj_create = function(e, t, n, r) {
|
|
2392
2405
|
return Te(e, t, n, r, 0);
|
|
2393
2406
|
}, e.gobj_create2 = Te, e.gobj_create_default_service = function(e, t, n, r) {
|
|
@@ -2398,41 +2411,41 @@
|
|
|
2398
2411
|
return Te(e, t, n, r, R.gobj_flag_volatil);
|
|
2399
2412
|
}, e.gobj_create_yuno = function(e, t, n) {
|
|
2400
2413
|
return Te(e, t, n, null, R.gobj_flag_yuno);
|
|
2401
|
-
}, e.gobj_current_state =
|
|
2402
|
-
if (
|
|
2414
|
+
}, e.gobj_current_state = pt, e.gobj_default_service = fe, e.gobj_deliver_posted_events = vt, e.gobj_destroy = ye, e.gobj_find_child = nt, e.gobj_find_gobj = function(e, t) {
|
|
2415
|
+
if (Sn(t)) return null;
|
|
2403
2416
|
const n = t.toLowerCase();
|
|
2404
|
-
return "__default_service__" === n ? m : "__yuno__" === n || "__root__" === n ? p :
|
|
2405
|
-
}, e.gobj_find_service = ge, e.gobj_find_subscribings =
|
|
2417
|
+
return "__default_service__" === n ? m : "__yuno__" === n || "__root__" === n ? p : rt(p, t);
|
|
2418
|
+
}, e.gobj_find_service = ge, e.gobj_find_subscribings = $t, e.gobj_find_subscriptions = It, e.gobj_flag_t = R, e.gobj_full_name = Me, e.gobj_gclass_name = Ge, e.gobj_global_trace_level = function() {
|
|
2406
2419
|
return F;
|
|
2407
|
-
}, e.gobj_has_attr =
|
|
2420
|
+
}, e.gobj_has_attr = ot, e.gobj_has_event = Et, e.gobj_has_output_event = Tt, e.gobj_hsdata = X, e.gobj_is_destroying = Ye, e.gobj_is_playing = $e, e.gobj_is_pure_child = xe, e.gobj_is_running = Ae, e.gobj_is_service = Ie, e.gobj_is_volatil = Ke, e.gobj_list_persistent_attrs = function(e, t) {
|
|
2408
2421
|
return u ? u(e, t) : null;
|
|
2409
2422
|
}, e.gobj_list_subscriptions = function(e) {
|
|
2410
|
-
let t =
|
|
2423
|
+
let t = It(e, null, null, null);
|
|
2411
2424
|
for (let n = 0; n < t.length; n++) {
|
|
2412
|
-
let r = t[n], o =
|
|
2413
|
-
|
|
2425
|
+
let r = t[n], o = Pn(e, r, "publisher", null, Lt.KW_REQUIRED), i = Pn(e, r, "subscriber", null, Lt.KW_REQUIRED);
|
|
2426
|
+
an(r, "s_event", Ln(e, r, "event", "", Lt.KW_REQUIRED)), an(r, "s_publisher", Ve(o)), an(r, "s_subscriber", Ve(i));
|
|
2414
2427
|
}
|
|
2415
|
-
let n =
|
|
2428
|
+
let n = $t(e, 0, null, 0);
|
|
2416
2429
|
for (let t = 0; t < n.length; t++) {
|
|
2417
|
-
let r = n[t], o =
|
|
2418
|
-
|
|
2430
|
+
let r = n[t], o = Pn(e, r, "publisher", null, Lt.KW_REQUIRED), i = Pn(e, r, "subscriber", null, Lt.KW_REQUIRED);
|
|
2431
|
+
an(r, "s_event", Ln(e, r, "event", "", Lt.KW_REQUIRED)), an(r, "s_publisher", Ve(o)), an(r, "s_subscriber", Ve(i));
|
|
2419
2432
|
}
|
|
2420
2433
|
return {
|
|
2421
2434
|
subscriptions: t,
|
|
2422
2435
|
subscribings: n,
|
|
2423
|
-
"total subscriptions":
|
|
2424
|
-
total_subscribings:
|
|
2436
|
+
"total subscriptions": dn(t),
|
|
2437
|
+
total_subscribings: dn(n)
|
|
2425
2438
|
};
|
|
2426
2439
|
}, e.gobj_load_persistent_attrs = function(e, t) {
|
|
2427
|
-
return Ie(e) ? s ? s(e, t) : -1 : (
|
|
2440
|
+
return Ie(e) ? s ? s(e, t) : -1 : (Ht(`${Ve(e)}: Only gobj services can load/save writable-persistent`), -1);
|
|
2428
2441
|
}, e.gobj_match_children = function(e, t) {
|
|
2429
|
-
if (Ye(e)) return
|
|
2442
|
+
if (Ye(e)) return Ht("gobj NULL or DESTROYED"), null;
|
|
2430
2443
|
t = t || {};
|
|
2431
2444
|
let n = [];
|
|
2432
2445
|
const r = e.dl_children;
|
|
2433
2446
|
for (let e = 0; e < r.length; e++) {
|
|
2434
2447
|
const o = r[e];
|
|
2435
|
-
|
|
2448
|
+
tt(o, t) && n.push(o);
|
|
2436
2449
|
}
|
|
2437
2450
|
return n;
|
|
2438
2451
|
}, e.gobj_match_children_tree = function(e, t) {
|
|
@@ -2442,20 +2455,20 @@
|
|
|
2442
2455
|
let o = r.dl_children;
|
|
2443
2456
|
for (let r = 0; r < o.length; r++) {
|
|
2444
2457
|
let i = o[r];
|
|
2445
|
-
|
|
2458
|
+
tt(i, t) && n.push(i), e(n, i);
|
|
2446
2459
|
}
|
|
2447
2460
|
}(n, e), n;
|
|
2448
|
-
}, e.gobj_match_gobj =
|
|
2449
|
-
return e && e instanceof O ? e.obflag & (w.obflag_destroyed | w.obflag_destroying) ? (
|
|
2461
|
+
}, e.gobj_match_gobj = tt, e.gobj_name = Fe, e.gobj_parent = We, e.gobj_pause = De, e.gobj_play = we, e.gobj_post_event = function(e, t, r, o) {
|
|
2462
|
+
return e && e instanceof O ? e.obflag & (w.obflag_destroyed | w.obflag_destroying) ? (Ht(`gobj_post_event(): gobj dst DESTROYING, event ${t}`), -1) : Sn(t) ? (Ht("gobj_post_event(): event EMPTY"), -1) : Et(e, t, 0) ? ht.length >= 1e4 ? (Ht(`gobj_post_event(): too many posted events, this is NOT a work queue, event ${t}, pending ${ht.length}`), -1) : (ht.push({
|
|
2450
2463
|
dst: e,
|
|
2451
2464
|
event: t,
|
|
2452
2465
|
kw: r,
|
|
2453
2466
|
src: o
|
|
2454
|
-
}), J(e, t) && !q(o, t) && L(n("📬 posted(%s%s), ev: %s, pending: %d", e.running ? "" : "!!", Ve(e), t,
|
|
2467
|
+
}), J(e, t) && !q(o, t) && L(n("📬 posted(%s%s), ev: %s, pending: %d", e.running ? "" : "!!", Ve(e), t, ht.length)), yt || (yt = !0, setTimeout(vt, 0)), 0) : (Ht(`gobj_post_event(): event NOT DEFINED in gclass ${Ge(e)}, event ${t}`), -1) : (Ht(`gobj_post_event(): gobj dst NULL, event ${t}`), -1);
|
|
2455
2468
|
}, e.gobj_posted_events_size = function() {
|
|
2456
|
-
return
|
|
2457
|
-
}, e.gobj_publish_event =
|
|
2458
|
-
return Ie(e) ? a ? a(e, t) : -1 : (
|
|
2469
|
+
return ht.length;
|
|
2470
|
+
}, e.gobj_publish_event = Ct, e.gobj_read_attr = it, e.gobj_read_attrs = lt, e.gobj_read_bool_attr = st, e.gobj_read_integer_attr = _t, e.gobj_read_pointer_attr = ut, e.gobj_read_str_attr = at, e.gobj_remove_persistent_attrs = function(e, t) {
|
|
2471
|
+
return Ie(e) ? a ? a(e, t) : -1 : (Ht(`${Ve(e)}: Only gobj services can load/save writable-persistent`), -1);
|
|
2459
2472
|
}, e.gobj_repr_global_trace_levels = function() {
|
|
2460
2473
|
return U.map(([e, t, n]) => ({
|
|
2461
2474
|
name: e,
|
|
@@ -2465,33 +2478,33 @@
|
|
|
2465
2478
|
}));
|
|
2466
2479
|
}, e.gobj_reset_volatil_attrs = function(e) {
|
|
2467
2480
|
return function(e, t, n) {
|
|
2468
|
-
if (Ye(e)) return
|
|
2481
|
+
if (Ye(e)) return Ht("gobj NULL or DESTROYED"), -1;
|
|
2469
2482
|
let r = e.gclass.attrs_table;
|
|
2470
2483
|
for (let o = 0; o < r.length; o++) {
|
|
2471
2484
|
const i = r[o];
|
|
2472
2485
|
if (i.name && !(n && i.flag & n) && (-1 === t || i.flag & t)) {
|
|
2473
2486
|
const t = z(e, e.jn_attrs, i);
|
|
2474
|
-
|
|
2487
|
+
pn(e.priv) && e.priv.hasOwnProperty(i.name) && (e.priv[i.name] = t), e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, i.name);
|
|
2475
2488
|
}
|
|
2476
2489
|
}
|
|
2477
2490
|
return 0;
|
|
2478
2491
|
}(e, h.SDF_VOLATIL, 0);
|
|
2479
2492
|
}, e.gobj_save_persistent_attrs = function(e, t) {
|
|
2480
|
-
return Ie(e) ? _ ? _(e, t) : -1 : (
|
|
2481
|
-
}, e.gobj_search_path =
|
|
2493
|
+
return Ie(e) ? _ ? _(e, t) : -1 : (Ht(`${Ve(e)}: Only gobj services can load/save writable-persistent`), -1);
|
|
2494
|
+
}, e.gobj_search_path = rt, e.gobj_send_event = jt, e.gobj_services = function() {
|
|
2482
2495
|
let e = [];
|
|
2483
|
-
for (const t of Object.keys(b))
|
|
2496
|
+
for (const t of Object.keys(b)) cn(e, t);
|
|
2484
2497
|
return e;
|
|
2485
2498
|
}, e.gobj_set_bottom_gobj = Je, e.gobj_set_deep_trace = function(e) {
|
|
2486
2499
|
return V = Number(e) || 0, 0;
|
|
2487
2500
|
}, e.gobj_set_gclass_no_trace = function(e, t, n) {
|
|
2488
|
-
const r =
|
|
2489
|
-
if (!r) return
|
|
2501
|
+
const r = En(e) ? ce(e) : e;
|
|
2502
|
+
if (!r) return Ht(`gobj_set_gclass_no_trace: gclass NOT FOUND: ${e}`), -1;
|
|
2490
2503
|
const o = M(t, "gobj_set_gclass_no_trace");
|
|
2491
2504
|
return o ? (n ? r.no_trace_level |= o : r.no_trace_level &= ~o, 0) : -1;
|
|
2492
2505
|
}, e.gobj_set_gclass_trace = function(e, t, n) {
|
|
2493
|
-
const r =
|
|
2494
|
-
if (!r) return
|
|
2506
|
+
const r = En(e) ? ce(e) : e;
|
|
2507
|
+
if (!r) return Ht(`gobj_set_gclass_trace: gclass NOT FOUND: ${e}`), -1;
|
|
2495
2508
|
const o = M(t, "gobj_set_gclass_trace");
|
|
2496
2509
|
return o ? (n ? r.trace_level |= o : r.trace_level &= ~o, 0) : -1;
|
|
2497
2510
|
}, e.gobj_set_global_no_trace = function(e, t) {
|
|
@@ -2501,19 +2514,19 @@
|
|
|
2501
2514
|
const n = M(e, "gobj_set_global_trace");
|
|
2502
2515
|
return n ? (t ? F |= n : F &= ~n, 0) : -1;
|
|
2503
2516
|
}, e.gobj_set_gobj_no_trace = function(e, t, n) {
|
|
2504
|
-
if (!e) return
|
|
2517
|
+
if (!e) return Ht("gobj_set_gobj_no_trace: gobj NULL"), -1;
|
|
2505
2518
|
const r = M(t, "gobj_set_gobj_no_trace");
|
|
2506
2519
|
return r ? (n ? e.no_trace_level |= r : e.no_trace_level &= ~r, 0) : -1;
|
|
2507
2520
|
}, e.gobj_set_gobj_trace = function(e, t, n) {
|
|
2508
|
-
if (!e) return
|
|
2521
|
+
if (!e) return Ht("gobj_set_gobj_trace: gobj NULL"), -1;
|
|
2509
2522
|
const r = M(t, "gobj_set_gobj_trace");
|
|
2510
2523
|
return r ? (n ? e.trace_level |= r : e.trace_level &= ~r, 0) : -1;
|
|
2511
2524
|
}, e.gobj_set_trace_machine_format = function(e) {
|
|
2512
2525
|
C = 1 === Number(e) ? 1 : 0;
|
|
2513
2526
|
}, e.gobj_short_name = Ve, e.gobj_start = ve, e.gobj_start_children = function(e) {
|
|
2514
|
-
return Ye(e) ? (
|
|
2527
|
+
return Ye(e) ? (Ht("gobj NULL or DESTROYED"), -1) : He(e, A.WALK_FIRST2LAST, je, 0, 0);
|
|
2515
2528
|
}, e.gobj_start_tree = function(e) {
|
|
2516
|
-
return Ye(e) ? (
|
|
2529
|
+
return Ye(e) ? (Ht("gobj NULL or DESTROYED"), -1) : (B(e) && L(n("⏺ ⏺ ⏺ ⏺ start_tree: %s", Me(e))), e.gclass.gclass_flag & N.gcflag_manual_start || e.disabled ? 0 : (e.running || ve(e), ze(e, A.WALK_TOP2BOTTOM, Se, 0, 0)));
|
|
2517
2530
|
}, e.gobj_start_up = function(e, t, n, r, o, i, l) {
|
|
2518
2531
|
s = t, _ = n, a = r, u = o, c = i, f = l;
|
|
2519
2532
|
const d = [["EV_STATE_CHANGED", D.EVF_SYSTEM_EVENT | D.EVF_OUTPUT_EVENT | D.EVF_NO_WARN_SUBS], [0, 0]];
|
|
@@ -2523,14 +2536,14 @@
|
|
|
2523
2536
|
}
|
|
2524
2537
|
return 0;
|
|
2525
2538
|
}, e.gobj_stats = function(e, t, r, o) {
|
|
2526
|
-
return Ye(e) ? (
|
|
2539
|
+
return Ye(e) ? (Ht("gobj NULL or DESTROYED"), -1) : e.gclass.gmt.mt_stats ? e.gclass.gmt.mt_stats(e, t, r, o) : f ? f(e, t, r, o) : i(0, -1, n("%s, stats parser not available", Ve(e)), 0, 0);
|
|
2527
2540
|
}, e.gobj_stop = Oe, e.gobj_stop_children = Re, e.gobj_stop_tree = function(e) {
|
|
2528
|
-
return Ye(e) ? (
|
|
2529
|
-
}, e.gobj_subscribe_event =
|
|
2541
|
+
return Ye(e) ? (Ht("gobj NULL or DESTROYED"), -1) : (B(e) && L(n("⏹ ⏹ ⏹ ⏹ stop_tree: %s", Me(e))), Ae(e) && Oe(e), ze(e, A.WALK_TOP2BOTTOM, Ne, 0, 0));
|
|
2542
|
+
}, e.gobj_subscribe_event = At, e.gobj_trace_level = W, e.gobj_trace_machine_format = function() {
|
|
2530
2543
|
return C;
|
|
2531
2544
|
}, e.gobj_trace_no_level = K, e.gobj_unsubscribe_event = function(e, t, n, r) {
|
|
2532
|
-
if (null == n && (n = {}), !e) return
|
|
2533
|
-
if (!r) return
|
|
2545
|
+
if (null == n && (n = {}), !e) return Ht(`publisher NULL: ev ${t}`), 0;
|
|
2546
|
+
if (!r) return Ht(`subscriber NULL: ev ${t}`), 0;
|
|
2534
2547
|
const o = /* @__PURE__ */ new Set([
|
|
2535
2548
|
"__config__",
|
|
2536
2549
|
"__global__",
|
|
@@ -2539,102 +2552,102 @@
|
|
|
2539
2552
|
"__service__"
|
|
2540
2553
|
]);
|
|
2541
2554
|
if (Object.keys(n).forEach((n) => {
|
|
2542
|
-
o.has(n) ||
|
|
2543
|
-
}),
|
|
2544
|
-
else if (!(
|
|
2545
|
-
let i =
|
|
2555
|
+
o.has(n) || Ht(`${Ve(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
|
|
2556
|
+
}), Sn(t)) t = "";
|
|
2557
|
+
else if (!(Tt(e, t, D.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & N.gcflag_no_check_output_events)) return Ht(`event NOT in output event list: ${Ve(e)}, ev ${t}`), 0;
|
|
2558
|
+
let i = Rt(e.dl_subscriptions, e, t, n, r), l = 0;
|
|
2546
2559
|
for (let t = 0; t < i.length; t++) {
|
|
2547
2560
|
let n = i[t];
|
|
2548
|
-
|
|
2561
|
+
Dt(e, n, !1, !1), l++;
|
|
2549
2562
|
}
|
|
2550
|
-
return l || (
|
|
2551
|
-
}, e.gobj_unsubscribe_list =
|
|
2552
|
-
if (!
|
|
2563
|
+
return l || (zt(`${Ve(e)}: No subscription found`), Zt(n, "No subscription found")), 0;
|
|
2564
|
+
}, e.gobj_unsubscribe_list = kt, e.gobj_walk_gobj_children = He, e.gobj_walk_gobj_children_tree = ze, e.gobj_write_attr = function(e, t, r, o) {
|
|
2565
|
+
if (!En(t)) return Ht(n("gobj_write_attr(%s): path must be a string", Ve(e))), -1;
|
|
2553
2566
|
let i, l = e.jn_attrs, s = t.split("`");
|
|
2554
2567
|
if (s.length <= 1) {
|
|
2555
2568
|
let o = t;
|
|
2556
|
-
return o in l && l.hasOwnProperty(o) ? (l[o] = r,
|
|
2569
|
+
return o in l && l.hasOwnProperty(o) ? (l[o] = r, pn(e.priv) && e.priv.hasOwnProperty(o) && (e.priv[o] = r), e.obflag & w.obflag_created && !(e.obflag & w.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, o), 0) : (Ht(n("gobj_write_attr(%s): attr not found '%s'", Ve(e), o)), -1);
|
|
2557
2570
|
}
|
|
2558
2571
|
let _ = s.length;
|
|
2559
2572
|
for (let t = 0; t < _; t++) {
|
|
2560
2573
|
i = s[t];
|
|
2561
|
-
let n =
|
|
2574
|
+
let n = nt(e, { __gobj_name__: i });
|
|
2562
2575
|
if (n && t < _ - 1) {
|
|
2563
2576
|
e = n;
|
|
2564
2577
|
continue;
|
|
2565
2578
|
}
|
|
2566
2579
|
let o = e.jn_attrs;
|
|
2567
|
-
if (i in o && o.hasOwnProperty(i)) return o[i] = r,
|
|
2580
|
+
if (i in o && o.hasOwnProperty(i)) return o[i] = r, pn(e.priv) && e.priv.hasOwnProperty(i) && (e.priv[i] = r), e.obflag & w.obflag_created && !(e.obflag & w.obflag_destroyed) && e.mt_writing && e.mt_writing(e, i), 0;
|
|
2568
2581
|
break;
|
|
2569
2582
|
}
|
|
2570
|
-
return
|
|
2571
|
-
}, e.gobj_write_attrs =
|
|
2583
|
+
return Ht(n("gobj_write_attr(%s): attr not found '%s'", Ve(e), i)), -1;
|
|
2584
|
+
}, e.gobj_write_attrs = ct, e.gobj_write_bool_attr = ft, e.gobj_write_integer_attr = gt, e.gobj_write_str_attr = dt, e.gobj_yuno = Ce, e.gobj_yuno_id = Ue, e.gobj_yuno_name = Le, e.gobj_yuno_role = Pe, e.id_index_in_obj_list = zn, e.index_in_list = ur, e.is_array = mn, e.is_boolean = hn, e.is_date = function(e) {
|
|
2572
2585
|
return e instanceof Date && !isNaN(e);
|
|
2573
|
-
}, e.is_function =
|
|
2574
|
-
if (!
|
|
2586
|
+
}, e.is_function = vn, e.is_gobj = jn, e.is_metadata_key = function(e) {
|
|
2587
|
+
if (!En(e)) return !1;
|
|
2575
2588
|
let t;
|
|
2576
2589
|
for (t = 0; t < e.length && "_" === e[t] && !(t > 2); t++);
|
|
2577
2590
|
return 2 === t;
|
|
2578
|
-
}, e.is_null =
|
|
2579
|
-
if (!
|
|
2591
|
+
}, e.is_null = yn, e.is_number = Tn, e.is_object = pn, e.is_private_key = function(e) {
|
|
2592
|
+
if (!En(e)) return !1;
|
|
2580
2593
|
let t;
|
|
2581
2594
|
for (t = 0; t < e.length && "_" === e[t] && !(t > 2); t++);
|
|
2582
2595
|
return 1 === t;
|
|
2583
2596
|
}, e.is_pure_number = function(e) {
|
|
2584
|
-
if (
|
|
2585
|
-
if (!
|
|
2597
|
+
if (Tn(e)) return !0;
|
|
2598
|
+
if (!En(e)) return !1;
|
|
2586
2599
|
const t = Number(e);
|
|
2587
2600
|
return !isNaN(t) && "" !== e.trim() && !isNaN(t);
|
|
2588
|
-
}, e.is_string =
|
|
2589
|
-
let o =
|
|
2590
|
-
if (!o) return
|
|
2591
|
-
if (
|
|
2601
|
+
}, e.is_string = En, e.jdb_delete = function(e, t, n, r) {
|
|
2602
|
+
let o = Fn(null, Fn(null, e, "topics", null, 0), t, null, 0);
|
|
2603
|
+
if (!o) return Ht("jdb_delete: topic not found: " + t), null;
|
|
2604
|
+
if (Sn(r.id)) return Ht("jdb_delete: record without id: " + r), Xt(r), null;
|
|
2592
2605
|
let i, l = n.split("`"), s = o;
|
|
2593
|
-
for (; (i = l.shift()) && !
|
|
2594
|
-
if (0 === l.length && s) if (
|
|
2595
|
-
let e =
|
|
2606
|
+
for (; (i = l.shift()) && !Sn(i) && s;) pn(s) && (s = Fn(null, s, e.hook, null, 0)), s = ir(s, null, i, !1);
|
|
2607
|
+
if (0 === l.length && s) if (mn(s)) {
|
|
2608
|
+
let e = zn(s, r.id);
|
|
2596
2609
|
e >= 0 && s.splice(e, 1);
|
|
2597
2610
|
} else {
|
|
2598
|
-
let t =
|
|
2611
|
+
let t = Fn(null, s, e.hook, null, 0), n = zn(t, r.id);
|
|
2599
2612
|
n >= 0 && t.splice(n, 1);
|
|
2600
2613
|
}
|
|
2601
2614
|
return o;
|
|
2602
2615
|
}, e.jdb_get = function(e, t, n, r) {
|
|
2603
|
-
let o =
|
|
2604
|
-
return o ? (void 0 === r && (r = !0),
|
|
2616
|
+
let o = Fn(null, Fn(null, e, "topics", null, 0), t, null, 0);
|
|
2617
|
+
return o ? (void 0 === r && (r = !0), ir(o, e.hook, n, r)) : (Ht("jdb_get: topic not found: " + t), null);
|
|
2605
2618
|
}, e.jdb_get_by_idx = function(e, t, n) {
|
|
2606
|
-
let r =
|
|
2607
|
-
return r ? n < r.length ? r[n] : {} : (
|
|
2619
|
+
let r = Fn(null, Fn(null, e, "topics", null, 0), t, null, 0);
|
|
2620
|
+
return r ? n < r.length ? r[n] : {} : (Ht("jdb_get_by_idx: topic not found: " + t), null);
|
|
2608
2621
|
}, e.jdb_get_topic = function(e, t) {
|
|
2609
|
-
let n =
|
|
2610
|
-
if (!n) return
|
|
2611
|
-
return
|
|
2622
|
+
let n = Fn(null, e, "topics", null, 0);
|
|
2623
|
+
if (!n) return Ht("jdb topics section not found"), Xt(e), null;
|
|
2624
|
+
return Fn(null, n, t, null, 0) || (Ht("jdb topic not found: " + t), Xt(n), null);
|
|
2612
2625
|
}, e.jdb_init = function(e, t, n) {
|
|
2613
|
-
n && (e =
|
|
2614
|
-
let r =
|
|
2615
|
-
|
|
2616
|
-
let o =
|
|
2617
|
-
return
|
|
2618
|
-
"__" !== t.substring(0, 2) &&
|
|
2626
|
+
n && (e = en(e));
|
|
2627
|
+
let r = Fn(null, e, "type", [], 1);
|
|
2628
|
+
Ln(null, e, "hook", "data", 1);
|
|
2629
|
+
let o = Fn(null, e, "schema", {}, 1), i = Fn(null, e, "topics", {}, 1);
|
|
2630
|
+
return or(o, function(e, t, n, o) {
|
|
2631
|
+
"__" !== t.substring(0, 2) && Fn(null, i, o, en(r), 1);
|
|
2619
2632
|
}, t), e;
|
|
2620
2633
|
}, e.jdb_update = function(e, t, n, r) {
|
|
2621
|
-
let o =
|
|
2622
|
-
if (!o) return
|
|
2623
|
-
if (
|
|
2634
|
+
let o = Fn(null, Fn(null, e, "topics", null, 0), t, null, 0);
|
|
2635
|
+
if (!o) return Ht("jdb_update: topic not found: " + t), null;
|
|
2636
|
+
if (Sn(r.id)) return Ht("jdb_update: record without id: " + r), Xt(r), null;
|
|
2624
2637
|
let i, l = n.split("`"), s = o;
|
|
2625
|
-
for (; (i = l.shift()) && !
|
|
2626
|
-
if (0 === l.length && s) if (
|
|
2638
|
+
for (; (i = l.shift()) && !Sn(i) && s;) pn(s) && (s = Fn(null, s, e.hook, [], 1)), s = ir(s, null, i, !1);
|
|
2639
|
+
if (0 === l.length && s) if (mn(s)) s.push(r);
|
|
2627
2640
|
else if (s.id === r.id) Object.assign(s, r);
|
|
2628
2641
|
else {
|
|
2629
|
-
let t =
|
|
2642
|
+
let t = Fn(null, s, e.hook, [], 1), n = ir(t, e.hook, r.id, !1);
|
|
2630
2643
|
n ? Object.assign(n, r) : t.push(r);
|
|
2631
2644
|
}
|
|
2632
2645
|
return o;
|
|
2633
|
-
}, e.json_array_append =
|
|
2646
|
+
}, e.json_array_append = un, e.json_array_append_new = cn, e.json_array_extend = function(e, t) {
|
|
2634
2647
|
return t ? (Array.prototype.push.apply(e, t), e) : e;
|
|
2635
|
-
}, e.json_array_remove =
|
|
2648
|
+
}, e.json_array_remove = fn, e.json_array_size = dn, e.json_deep_copy = en, e.json_is_identical = tn, e.json_object_del = sn, e.json_object_get = ln, e.json_object_set = _n, e.json_object_set_new = an, e.json_object_size = gn, e.json_object_update = nn, e.json_object_update_existing = rn, e.json_object_update_missing = on, e.json_size = bn, e.jwt2json = function(e, t) {
|
|
2636
2649
|
try {
|
|
2637
|
-
let n =
|
|
2650
|
+
let n = lr(e);
|
|
2638
2651
|
switch (t) {
|
|
2639
2652
|
case "header": return JSON.parse(n.header);
|
|
2640
2653
|
case "signature": return JSON.parse(n.signature);
|
|
@@ -2643,122 +2656,122 @@
|
|
|
2643
2656
|
} catch (e) {
|
|
2644
2657
|
return null;
|
|
2645
2658
|
}
|
|
2646
|
-
}, e.jwtDecode =
|
|
2647
|
-
if (e && !
|
|
2648
|
-
r || (r =
|
|
2659
|
+
}, e.jwtDecode = lr, e.kw_clone_by_keys = Kn, e.kw_clone_by_not_keys = xn, e.kw_collect = function(e, t, n, r) {
|
|
2660
|
+
if (e && !jn(e) && Ht("GObj bad instanceof"), !t) return null;
|
|
2661
|
+
r || (r = Wn);
|
|
2649
2662
|
let o = [];
|
|
2650
|
-
if (
|
|
2663
|
+
if (mn(t)) for (let e = 0; e < t.length; e++) {
|
|
2651
2664
|
let i = t[e];
|
|
2652
2665
|
r(i, n) && o.push(i);
|
|
2653
2666
|
}
|
|
2654
2667
|
else {
|
|
2655
|
-
if (!
|
|
2668
|
+
if (!pn(t)) return Ht("kw_select() BAD kw parameter"), null;
|
|
2656
2669
|
r(t, n) && o.push(t);
|
|
2657
2670
|
}
|
|
2658
2671
|
return o;
|
|
2659
|
-
}, e.kw_delete =
|
|
2660
|
-
if (!n || !
|
|
2661
|
-
for (let e = 0; e < t.length; e++) if (
|
|
2662
|
-
return r &&
|
|
2663
|
-
}, e.kw_find_path =
|
|
2664
|
-
e && !
|
|
2665
|
-
let i =
|
|
2666
|
-
const l = o && o &
|
|
2672
|
+
}, e.kw_delete = In, e.kw_find_json_in_list = function(e, t, n, r) {
|
|
2673
|
+
if (!n || !mn(t)) return r && Ht("item NULL or kw_list is not a list"), -1;
|
|
2674
|
+
for (let e = 0; e < t.length; e++) if (tn(n, t[e])) return e;
|
|
2675
|
+
return r && Ht("item not found in this list"), -1;
|
|
2676
|
+
}, e.kw_find_path = kn, e.kw_flag_t = Lt, e.kw_get_bool = $n, e.kw_get_dict = Un, e.kw_get_dict_value = Fn, e.kw_get_int = Cn, e.kw_get_list = function(e, t, n, r, o) {
|
|
2677
|
+
e && !jn(e) && Ht("GObj bad instanceof");
|
|
2678
|
+
let i = kn(e, t, n, !1);
|
|
2679
|
+
const l = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
|
|
2667
2680
|
if (void 0 === i) {
|
|
2668
2681
|
if (s) {
|
|
2669
2682
|
let o = Array(r);
|
|
2670
|
-
return
|
|
2683
|
+
return Gn(e, t, n, o), o;
|
|
2671
2684
|
}
|
|
2672
|
-
return l && (
|
|
2685
|
+
return l && (Ht(`path not found: '${n}'`), Zt(t)), Array(r);
|
|
2673
2686
|
}
|
|
2674
|
-
return _ &&
|
|
2675
|
-
}, e.kw_get_local_storage_value =
|
|
2676
|
-
e && !
|
|
2677
|
-
let i =
|
|
2678
|
-
const l = o && o &
|
|
2687
|
+
return _ && In(e, t, n), mn(i) ? Array(i) : (l && (Ht(`path value MUST BE an array: ${n}`), Xt(t)), Array(r));
|
|
2688
|
+
}, e.kw_get_local_storage_value = Yn, e.kw_get_pointer = Pn, e.kw_get_real = function(e, t, n, r, o) {
|
|
2689
|
+
e && !jn(e) && Ht("GObj bad instanceof");
|
|
2690
|
+
let i = kn(e, t, n, !1);
|
|
2691
|
+
const l = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
|
|
2679
2692
|
if (void 0 === i) {
|
|
2680
2693
|
if (s) {
|
|
2681
2694
|
let o = Number(r);
|
|
2682
|
-
return
|
|
2695
|
+
return Gn(e, t, n, o), o;
|
|
2683
2696
|
}
|
|
2684
|
-
return l && (
|
|
2697
|
+
return l && (Ht(`path not found: '${n}'`), Zt(t)), Number(r);
|
|
2685
2698
|
}
|
|
2686
|
-
return _ &&
|
|
2687
|
-
}, e.kw_get_str =
|
|
2688
|
-
if (e && !
|
|
2689
|
-
r || (r =
|
|
2699
|
+
return _ && In(e, t, n), Tn(i) ? Number(i) : (l && (Ht(`path value MUST BE a number: ${n}`), Xt(t)), Number(r));
|
|
2700
|
+
}, e.kw_get_str = Ln, e.kw_has_key = An, e.kw_match_simple = Wn, e.kw_pop = Dn, e.kw_remove_local_storage_value = Jn, e.kw_select = function(e, t, n, r) {
|
|
2701
|
+
if (e && !jn(e) && Ht("GObj bad instanceof"), !t) return null;
|
|
2702
|
+
r || (r = Wn);
|
|
2690
2703
|
let o = [];
|
|
2691
|
-
if (
|
|
2704
|
+
if (mn(t)) for (let e = 0; e < t.length; e++) {
|
|
2692
2705
|
let i = t[e];
|
|
2693
|
-
r(i, n) && o.push(
|
|
2706
|
+
r(i, n) && o.push(en(i));
|
|
2694
2707
|
}
|
|
2695
2708
|
else {
|
|
2696
|
-
if (!
|
|
2697
|
-
r(t, n) && o.push(
|
|
2709
|
+
if (!pn(t)) return Ht("kw_select() BAD kw parameter"), null;
|
|
2710
|
+
r(t, n) && o.push(en(t));
|
|
2698
2711
|
}
|
|
2699
2712
|
return o;
|
|
2700
|
-
}, e.kw_set_dict_value =
|
|
2701
|
-
e && !
|
|
2702
|
-
let i =
|
|
2713
|
+
}, e.kw_set_dict_value = Gn, e.kw_set_local_storage_value = Bn, e.kw_set_subdict_value = Vn, e.kwid_collect = Hn, e.kwid_find_one_record = function(e, t, n, r, o) {
|
|
2714
|
+
e && !jn(e) && Ht("GObj bad instanceof");
|
|
2715
|
+
let i = Hn(e, t, n, r, o);
|
|
2703
2716
|
return i.length > 0 ? i[0] : null;
|
|
2704
2717
|
}, e.kwid_get_ids = function(e, t) {
|
|
2705
|
-
if (e && !
|
|
2718
|
+
if (e && !jn(e) && Ht("GObj bad instanceof"), !t) return [];
|
|
2706
2719
|
let n = [];
|
|
2707
|
-
if (
|
|
2708
|
-
else if (
|
|
2709
|
-
else
|
|
2710
|
-
if (
|
|
2711
|
-
else if (
|
|
2712
|
-
let r =
|
|
2720
|
+
if (En(t)) n.push(t);
|
|
2721
|
+
else if (pn(t)) for (let e in t) t.hasOwnProperty(e) && n.push(e);
|
|
2722
|
+
else mn(t) && t.forEach(function(t) {
|
|
2723
|
+
if (En(t)) Sn(t) || n.push(t);
|
|
2724
|
+
else if (pn(t)) {
|
|
2725
|
+
let r = Ln(e, t, "id", 0, 0);
|
|
2713
2726
|
r && n.push(r);
|
|
2714
2727
|
}
|
|
2715
2728
|
});
|
|
2716
2729
|
return n;
|
|
2717
|
-
}, e.kwid_match_id =
|
|
2718
|
-
e && !
|
|
2730
|
+
}, e.kwid_match_id = qn, e.kwid_new_dict = function(e, t, n) {
|
|
2731
|
+
e && !jn(e) && Ht("GObj bad instanceof");
|
|
2719
2732
|
let r = {};
|
|
2720
|
-
if (
|
|
2721
|
-
else if (
|
|
2722
|
-
let o = t[n], i =
|
|
2723
|
-
|
|
2733
|
+
if (Sn(n) || (t = kn(e, t, n)), pn(t)) r = t;
|
|
2734
|
+
else if (mn(t)) for (let n = 0; n < t.length; n++) {
|
|
2735
|
+
let o = t[n], i = Ln(e, o, "id", "", 0);
|
|
2736
|
+
Sn(i) || (r[i] = o);
|
|
2724
2737
|
}
|
|
2725
|
-
else
|
|
2738
|
+
else Ht(`${Ve(e)} kwid_new_dict: data type unknown`);
|
|
2726
2739
|
return r;
|
|
2727
2740
|
}, e.list2options = function(e, t, n) {
|
|
2728
2741
|
t = t || "id", n = n || "value";
|
|
2729
2742
|
let r = [];
|
|
2730
|
-
if (
|
|
2743
|
+
if (mn(e)) for (let o = 0; o < e.length; o++) {
|
|
2731
2744
|
let i = e[o];
|
|
2732
|
-
if (
|
|
2745
|
+
if (En(i)) r.push({
|
|
2733
2746
|
id: e[o],
|
|
2734
2747
|
value: e[o]
|
|
2735
2748
|
});
|
|
2736
|
-
else if (
|
|
2749
|
+
else if (pn(i)) {
|
|
2737
2750
|
let e = {};
|
|
2738
|
-
if (
|
|
2739
|
-
if (!
|
|
2740
|
-
if (!(
|
|
2741
|
-
|
|
2751
|
+
if (An(i, t)) {
|
|
2752
|
+
if (!An(i, n)) {
|
|
2753
|
+
if (!(bn(i) > 0)) {
|
|
2754
|
+
Ht("list2options(): object without field value: " + n);
|
|
2742
2755
|
continue;
|
|
2743
2756
|
}
|
|
2744
2757
|
n = Object.keys(i)[0];
|
|
2745
2758
|
}
|
|
2746
2759
|
e.id = i[t], e.value = i[n];
|
|
2747
2760
|
} else {
|
|
2748
|
-
if (!(
|
|
2749
|
-
|
|
2761
|
+
if (!(bn(i) > 0)) {
|
|
2762
|
+
Ht("list2options(): object without field id: " + t);
|
|
2750
2763
|
continue;
|
|
2751
2764
|
}
|
|
2752
2765
|
t = Object.keys(i)[0], e.id = t, e.value = i[t];
|
|
2753
2766
|
}
|
|
2754
2767
|
r.push(e);
|
|
2755
|
-
} else
|
|
2768
|
+
} else Ht("list2options(): case1 not implemented");
|
|
2756
2769
|
}
|
|
2757
|
-
else if (
|
|
2770
|
+
else if (pn(e)) for (let t of Object.keys(e)) r.push({
|
|
2758
2771
|
id: t,
|
|
2759
2772
|
value: t
|
|
2760
2773
|
});
|
|
2761
|
-
else
|
|
2774
|
+
else Ht("list2options(): case2 not implemented");
|
|
2762
2775
|
return r;
|
|
2763
2776
|
}, e.load_json_file = function(e, t, n) {
|
|
2764
2777
|
let r = new XMLHttpRequest();
|
|
@@ -2766,18 +2779,18 @@
|
|
|
2766
2779
|
if (4 === r.readyState) if (200 === r.status || 0 === (e = r).status && e.responseText && e.responseURL.startsWith("file:")) try {
|
|
2767
2780
|
t(JSON.parse(r.responseText));
|
|
2768
2781
|
} catch (e) {
|
|
2769
|
-
n && (
|
|
2782
|
+
n && (Ht(`JSON parse status ${r.status}, error: ${e.message}`), n(r.status));
|
|
2770
2783
|
}
|
|
2771
2784
|
else n && n(r.status);
|
|
2772
2785
|
var e;
|
|
2773
2786
|
}, r.send();
|
|
2774
|
-
}, e.log_debug =
|
|
2775
|
-
let t =
|
|
2776
|
-
|
|
2777
|
-
}, e.log_warning =
|
|
2787
|
+
}, e.log_debug = Qt, e.log_error = Ht, e.log_info = function(e) {
|
|
2788
|
+
let t = qt(e), n = ar();
|
|
2789
|
+
Gt && xt("info", t) && Gt("%c" + n + " INFO: " + String(t), "color:cyan"), Bt("info", t, n);
|
|
2790
|
+
}, e.log_warning = zt, e.msg_iev_get_msg_type = rr, e.msg_iev_get_stack = tr, e.msg_iev_push_stack = er, e.msg_iev_read_key = Xn, e.msg_iev_set_msg_type = nr, e.msg_iev_write_key = Zn, e.node_uuid = cr, e.parseBoolean = On, e.parseSVG = function(e) {
|
|
2778
2791
|
return new DOMParser().parseFromString(e, "image/svg+xml").firstChild;
|
|
2779
2792
|
}, e.refresh_language = function(e, t) {
|
|
2780
|
-
|
|
2793
|
+
vn(t) ? (e || (e = document), e.querySelectorAll("[data-i18n]").forEach(function(e) {
|
|
2781
2794
|
let n = e.getAttribute("data-i18n");
|
|
2782
2795
|
for (let r of e.childNodes) if (r.nodeType === Node.TEXT_NODE) {
|
|
2783
2796
|
n || (n = r.nodeValue), r.nodeValue = t(n);
|
|
@@ -2792,25 +2805,25 @@
|
|
|
2792
2805
|
}), e.querySelectorAll("[data-i18n-placeholder]").forEach(function(e) {
|
|
2793
2806
|
let n = e.getAttribute("data-i18n-placeholder");
|
|
2794
2807
|
n && e.setAttribute("placeholder", t(n));
|
|
2795
|
-
})) :
|
|
2808
|
+
})) : Ht("You must supply a translation function");
|
|
2796
2809
|
}, e.register_c_ievent_cli = function() {
|
|
2797
2810
|
return function(e) {
|
|
2798
|
-
if (
|
|
2811
|
+
if (Lr) return Ht(`GClass ALREADY created: ${e}`), -1;
|
|
2799
2812
|
const t = [
|
|
2800
2813
|
["ST_DISCONNECTED", [
|
|
2801
2814
|
[
|
|
2802
2815
|
"EV_ON_OPEN",
|
|
2803
|
-
|
|
2816
|
+
Yr,
|
|
2804
2817
|
"ST_WAIT_IDENTITY_CARD_ACK"
|
|
2805
2818
|
],
|
|
2806
2819
|
[
|
|
2807
2820
|
"EV_ON_CLOSE",
|
|
2808
|
-
|
|
2821
|
+
Br,
|
|
2809
2822
|
null
|
|
2810
2823
|
],
|
|
2811
2824
|
[
|
|
2812
2825
|
"EV_TIMEOUT",
|
|
2813
|
-
|
|
2826
|
+
xr,
|
|
2814
2827
|
null
|
|
2815
2828
|
],
|
|
2816
2829
|
[
|
|
@@ -2822,22 +2835,22 @@
|
|
|
2822
2835
|
["ST_WAIT_IDENTITY_CARD_ACK", [
|
|
2823
2836
|
[
|
|
2824
2837
|
"EV_ON_MESSAGE",
|
|
2825
|
-
|
|
2838
|
+
Hr,
|
|
2826
2839
|
null
|
|
2827
2840
|
],
|
|
2828
2841
|
[
|
|
2829
2842
|
"EV_IDENTITY_CARD_ACK",
|
|
2830
|
-
|
|
2843
|
+
qr,
|
|
2831
2844
|
null
|
|
2832
2845
|
],
|
|
2833
2846
|
[
|
|
2834
2847
|
"EV_ON_CLOSE",
|
|
2835
|
-
|
|
2848
|
+
Br,
|
|
2836
2849
|
"ST_DISCONNECTED"
|
|
2837
2850
|
],
|
|
2838
2851
|
[
|
|
2839
2852
|
"EV_TIMEOUT",
|
|
2840
|
-
|
|
2853
|
+
Jr,
|
|
2841
2854
|
null
|
|
2842
2855
|
],
|
|
2843
2856
|
[
|
|
@@ -2849,22 +2862,22 @@
|
|
|
2849
2862
|
["ST_SESSION", [
|
|
2850
2863
|
[
|
|
2851
2864
|
"EV_ON_MESSAGE",
|
|
2852
|
-
|
|
2865
|
+
Hr,
|
|
2853
2866
|
null
|
|
2854
2867
|
],
|
|
2855
2868
|
[
|
|
2856
2869
|
"EV_MT_STATS",
|
|
2857
|
-
|
|
2870
|
+
zr,
|
|
2858
2871
|
null
|
|
2859
2872
|
],
|
|
2860
2873
|
[
|
|
2861
2874
|
"EV_MT_COMMAND",
|
|
2862
|
-
|
|
2875
|
+
Qr,
|
|
2863
2876
|
null
|
|
2864
2877
|
],
|
|
2865
2878
|
[
|
|
2866
2879
|
"EV_ON_CLOSE",
|
|
2867
|
-
|
|
2880
|
+
Br,
|
|
2868
2881
|
"ST_DISCONNECTED"
|
|
2869
2882
|
],
|
|
2870
2883
|
[
|
|
@@ -2875,7 +2888,7 @@
|
|
|
2875
2888
|
]],
|
|
2876
2889
|
[null, null]
|
|
2877
2890
|
];
|
|
2878
|
-
return (
|
|
2891
|
+
return (Lr = te(e, [
|
|
2879
2892
|
["EV_ON_MESSAGE", D.EVF_OUTPUT_EVENT],
|
|
2880
2893
|
["EV_IDENTITY_CARD_ACK", D.EVF_PUBLIC_EVENT],
|
|
2881
2894
|
["EV_ON_ID_NAK", D.EVF_PUBLIC_EVENT | D.EVF_OUTPUT_EVENT],
|
|
@@ -2886,52 +2899,54 @@
|
|
|
2886
2899
|
["EV_ON_OPEN_ERROR", D.EVF_OUTPUT_EVENT | D.EVF_NO_WARN_SUBS],
|
|
2887
2900
|
["EV_TIMEOUT", 0],
|
|
2888
2901
|
[null, 0]
|
|
2889
|
-
], t,
|
|
2902
|
+
], t, Xr, 0, $r, Cr, 0, 0, 0, N.gcflag_no_check_output_events)) ? 0 : -1;
|
|
2890
2903
|
}("C_IEVENT_CLI");
|
|
2891
2904
|
}, e.register_c_timer = function() {
|
|
2892
2905
|
return function(e) {
|
|
2893
|
-
if (
|
|
2906
|
+
if (yr) return Ht(`GClass ALREADY created: ${e}`), -1;
|
|
2894
2907
|
const t = [["ST_IDLE", [[
|
|
2895
2908
|
"EV_TIMEOUT",
|
|
2896
|
-
|
|
2909
|
+
vr,
|
|
2897
2910
|
null
|
|
2898
2911
|
]]]];
|
|
2899
|
-
return (
|
|
2912
|
+
return (yr = te(e, [
|
|
2900
2913
|
["EV_TIMEOUT", D.EVF_OUTPUT_EVENT],
|
|
2901
2914
|
["EV_TIMEOUT_PERIODIC", D.EVF_OUTPUT_EVENT],
|
|
2902
2915
|
[0, 0]
|
|
2903
|
-
], t,
|
|
2916
|
+
], t, jr, 0, Tr, hr, 0, 0, 0, N.gcflag_manual_start)) ? 0 : -1;
|
|
2904
2917
|
}("C_TIMER");
|
|
2905
2918
|
}, e.register_c_yuno = function() {
|
|
2906
2919
|
return function(e) {
|
|
2907
|
-
if (
|
|
2920
|
+
if (Dr) return Ht(`GClass ALREADY created: ${e}`), -1;
|
|
2908
2921
|
const t = [["ST_IDLE", [[
|
|
2909
2922
|
"EV_TIMEOUT_PERIODIC",
|
|
2910
|
-
|
|
2923
|
+
Ar,
|
|
2911
2924
|
null
|
|
2912
2925
|
]]]];
|
|
2913
|
-
return (
|
|
2926
|
+
return (Dr = te(e, [["EV_TIMEOUT_PERIODIC", D.EVF_OUTPUT_EVENT | D.EVF_NO_WARN_SUBS], [0, 0]], t, kr, 0, Rr, wr, 0, 0, 0, 0)) ? 0 : -1;
|
|
2914
2927
|
}("C_YUNO");
|
|
2915
2928
|
}, e.safeSrc = function(e) {
|
|
2916
2929
|
if (!e) return "";
|
|
2917
2930
|
const t = String(e).trim();
|
|
2918
|
-
return /^javascript:/i.test(t) || /^data:/i.test(t) ? "" :
|
|
2931
|
+
return /^javascript:/i.test(t) || /^data:/i.test(t) ? "" : sr(t);
|
|
2919
2932
|
}, e.sdata_flag_t = h, e.send_http_json_post = function(e, t, n) {
|
|
2920
2933
|
let r = new XMLHttpRequest();
|
|
2921
2934
|
r.open("POST", e), r.setRequestHeader("Accept", "application/json"), r.setRequestHeader("Content-Type", "application/json"), r.onreadystatechange = function() {
|
|
2922
2935
|
4 === r.readyState && n(r.status, r.responseText);
|
|
2923
2936
|
}, r.send(t);
|
|
2924
2937
|
}, e.set_console_log_enabled = function(e) {
|
|
2925
|
-
|
|
2938
|
+
Wt = !!e;
|
|
2939
|
+
}, e.set_console_log_filter = function(e) {
|
|
2940
|
+
Kt = "function" == typeof e ? e : null;
|
|
2926
2941
|
}, e.set_log_callback = function(e) {
|
|
2927
|
-
|
|
2928
|
-
}, e.set_remote_log_functions =
|
|
2942
|
+
Mt = "function" == typeof e ? e : null;
|
|
2943
|
+
}, e.set_remote_log_functions = Jt, e.set_timeout = Sr, e.set_timeout_periodic = Or, e.sprintf = n, e.stats_parser = function(e, t, n, r) {}, e.str_in_list = Qn, e.strcasecmp = Rn, e.strcmp = Nn, e.strncmp = function(e, t, n) {
|
|
2929
2944
|
var r = (e + "").substring(0, n), o = (t + "").substring(0, n);
|
|
2930
2945
|
return r === o ? 0 : r > o ? 1 : -1;
|
|
2931
2946
|
}, e.strs_in_list = function(e, t, n) {
|
|
2932
|
-
if (!e) return
|
|
2933
|
-
if (!t) return
|
|
2934
|
-
for (let r = 0; r < t.length; r++) if (
|
|
2947
|
+
if (!e) return Ht("ERROR: strs_in_list() list empty"), !1;
|
|
2948
|
+
if (!t) return Ht("ERROR: strs_in_list() str empty"), !1;
|
|
2949
|
+
for (let r = 0; r < t.length; r++) if (Qn(e, t[r], n)) return !0;
|
|
2935
2950
|
return !1;
|
|
2936
2951
|
}, e.strstr = function(e, t, n) {
|
|
2937
2952
|
var r;
|
|
@@ -2950,13 +2965,13 @@
|
|
|
2950
2965
|
placeholder: void 0,
|
|
2951
2966
|
fkey: null
|
|
2952
2967
|
};
|
|
2953
|
-
if (
|
|
2968
|
+
if (En(t)) {
|
|
2954
2969
|
let e = t.split(".");
|
|
2955
2970
|
for (let t = 0; t < e.length; t++) {
|
|
2956
2971
|
let r = e[t];
|
|
2957
|
-
if (
|
|
2958
|
-
else if (
|
|
2959
|
-
else if (
|
|
2972
|
+
if (Qn(br, r)) n.real_type || (n.real_type = r);
|
|
2973
|
+
else if (Qn(mr, r)) n.type || (n.type = r);
|
|
2974
|
+
else if (Qn(pr, r)) switch (r) {
|
|
2960
2975
|
case "writable":
|
|
2961
2976
|
n.is_writable = !0;
|
|
2962
2977
|
break;
|
|
@@ -2968,23 +2983,23 @@
|
|
|
2968
2983
|
}
|
|
2969
2984
|
}
|
|
2970
2985
|
n.real_type || (n.real_type = "string");
|
|
2971
|
-
} else
|
|
2986
|
+
} else pn(t) ? (n = Er(t), n.name || (n.name = e), n.header || (n.header = e)) : mn(t) && (n.real_type = "array", n.enum_list = t);
|
|
2972
2987
|
return n.type || (n.type = n.real_type), n;
|
|
2973
2988
|
}, e.timeTracker = function(e = "Time Tracker", t = !1) {
|
|
2974
2989
|
const n = e, r = performance.now();
|
|
2975
2990
|
let o = r;
|
|
2976
|
-
return t &&
|
|
2991
|
+
return t && zt(`--\x3e ${n} - starting`), { mark: (e = "Intermediate", i = "") => {
|
|
2977
2992
|
const l = performance.now(), s = (l - o) / 1e3, _ = (l - r) / 1e3;
|
|
2978
|
-
return t &&
|
|
2993
|
+
return t && zt(`--\x3e ${n} ${e} - partial: ${s} sec, total: ${_} sec, ${i}`), o = l, {
|
|
2979
2994
|
partial: s,
|
|
2980
2995
|
total: _
|
|
2981
2996
|
};
|
|
2982
2997
|
} };
|
|
2983
|
-
}, e.trace_json =
|
|
2984
|
-
if (
|
|
2998
|
+
}, e.trace_json = Zt, e.trace_level_t = P, e.trace_msg = Xt, e.treedb_decoder_fkey = dr, e.treedb_decoder_hook = function(e, t) {
|
|
2999
|
+
if (En(t)) {
|
|
2985
3000
|
if (-1 === t.indexOf("^")) {
|
|
2986
3001
|
let n, r = e.hook;
|
|
2987
|
-
if (1 !==
|
|
3002
|
+
if (1 !== gn(r)) return Ht("bad hook 1"), Ht(e), Ht(t), null;
|
|
2988
3003
|
for (let e of Object.keys(r)) {
|
|
2989
3004
|
n = e, r[e];
|
|
2990
3005
|
break;
|
|
@@ -2996,28 +3011,28 @@
|
|
|
2996
3011
|
}
|
|
2997
3012
|
{
|
|
2998
3013
|
let n = t.split("^");
|
|
2999
|
-
return 2 !== n.length ? (
|
|
3014
|
+
return 2 !== n.length ? (Ht("bad hook 2"), Ht(e), Ht(t), null) : {
|
|
3000
3015
|
topic_name: n[0],
|
|
3001
3016
|
id: n[1]
|
|
3002
3017
|
};
|
|
3003
3018
|
}
|
|
3004
3019
|
}
|
|
3005
|
-
return
|
|
3020
|
+
return pn(t) ? {
|
|
3006
3021
|
topic_name: t.topic_name,
|
|
3007
3022
|
id: t.id
|
|
3008
|
-
} : (
|
|
3023
|
+
} : (Ht("bad hook 3"), Ht(e), Ht(t), null);
|
|
3009
3024
|
}, e.treedb_encoder_fkey = function(e, t) {
|
|
3010
|
-
let n =
|
|
3025
|
+
let n = dr(e, t);
|
|
3011
3026
|
return n ? n.topic_name + "^" + n.id + "^" + n.hook_name : null;
|
|
3012
|
-
}, e.treedb_get_field_desc =
|
|
3013
|
-
if (
|
|
3027
|
+
}, e.treedb_get_field_desc = Er, e.treedb_hook_data_size = function(e) {
|
|
3028
|
+
if (mn(e) && 1 === bn(e)) {
|
|
3014
3029
|
let t = e[0];
|
|
3015
|
-
return
|
|
3030
|
+
return An(t, "size") ? t.size : 1;
|
|
3016
3031
|
}
|
|
3017
|
-
return
|
|
3032
|
+
return bn(e);
|
|
3018
3033
|
}, e.vsprintf = function(e, t) {
|
|
3019
3034
|
return n.apply(null, [e].concat(t || []));
|
|
3020
|
-
};
|
|
3035
|
+
}, e.walk_type_t = A;
|
|
3021
3036
|
});
|
|
3022
3037
|
|
|
3023
3038
|
//# sourceMappingURL=gobj-js.umd.min.js.map
|