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