@yuneta/gobj-js 7.16.4 → 7.16.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/gobj-js.cjs.js +17 -6
- package/dist/gobj-js.cjs.js.map +1 -1
- package/dist/gobj-js.cjs.min.js +290 -280
- package/dist/gobj-js.cjs.min.js.map +1 -1
- package/dist/gobj-js.es.js +17 -6
- package/dist/gobj-js.es.js.map +1 -1
- package/dist/gobj-js.es.min.js +18 -8
- package/dist/gobj-js.es.min.js.map +1 -1
- package/dist/gobj-js.iife.js +17 -6
- package/dist/gobj-js.iife.js.map +1 -1
- package/dist/gobj-js.iife.min.js +608 -598
- package/dist/gobj-js.iife.min.js.map +1 -1
- package/dist/gobj-js.umd.js +17 -6
- package/dist/gobj-js.umd.js.map +1 -1
- package/dist/gobj-js.umd.min.js +608 -598
- package/dist/gobj-js.umd.min.js.map +1 -1
- package/package.json +1 -1
package/dist/gobj-js.iife.min.js
CHANGED
|
@@ -19,12 +19,12 @@ var gobjJs = function(e) {
|
|
|
19
19
|
};
|
|
20
20
|
function n(e) {
|
|
21
21
|
return function(e, r) {
|
|
22
|
-
var o,
|
|
23
|
-
for (
|
|
24
|
-
else if ("object" == typeof e[
|
|
25
|
-
if ((s = e[
|
|
26
|
-
if (null == o) throw new Error(n("[sprintf] Cannot access property \"%s\" of undefined value \"%s\"", s.keys[
|
|
27
|
-
o = o[s.keys[
|
|
22
|
+
var o, i, l, s, _, a, u, c, f, g = 1, d = e.length, b = "";
|
|
23
|
+
for (i = 0; i < d; i++) if ("string" == typeof e[i]) b += e[i];
|
|
24
|
+
else if ("object" == typeof e[i]) {
|
|
25
|
+
if ((s = e[i]).keys) for (o = r[g], l = 0; l < s.keys.length; l++) {
|
|
26
|
+
if (null == o) throw new Error(n("[sprintf] Cannot access property \"%s\" of undefined value \"%s\"", s.keys[l], s.keys[l - 1]));
|
|
27
|
+
o = o[s.keys[l]];
|
|
28
28
|
}
|
|
29
29
|
else o = s.param_no ? r[s.param_no] : r[g++];
|
|
30
30
|
if (t.not_type.test(s.type) && t.not_primitive.test(s.type) && o instanceof Function && (o = o()), t.numeric_arg.test(s.type) && "number" != typeof o && isNaN(o)) throw new TypeError(n("[sprintf] expecting number but found %T", o));
|
|
@@ -79,14 +79,14 @@ var gobjJs = function(e) {
|
|
|
79
79
|
return b;
|
|
80
80
|
}(function(e) {
|
|
81
81
|
if (r[e]) return r[e];
|
|
82
|
-
let n, o = e,
|
|
82
|
+
let n, o = e, i = [], l = 0;
|
|
83
83
|
for (; o;) {
|
|
84
|
-
if (null !== (n = t.text.exec(o)))
|
|
85
|
-
else if (null !== (n = t.modulo.exec(o)))
|
|
84
|
+
if (null !== (n = t.text.exec(o))) i.push(n[0]);
|
|
85
|
+
else if (null !== (n = t.modulo.exec(o))) i.push("%");
|
|
86
86
|
else {
|
|
87
87
|
if (null === (n = t.placeholder.exec(o))) throw new SyntaxError("[sprintf] unexpected placeholder");
|
|
88
88
|
if (n[2]) {
|
|
89
|
-
|
|
89
|
+
l |= 1;
|
|
90
90
|
var s = [], _ = n[2], a = [];
|
|
91
91
|
if (null === (a = t.key.exec(_))) throw new SyntaxError("[sprintf] failed to parse named argument key");
|
|
92
92
|
for (s.push(a[1]); "" !== (_ = _.substring(a[0].length));) if (null !== (a = t.key_access.exec(_))) s.push(a[1]);
|
|
@@ -95,9 +95,9 @@ var gobjJs = function(e) {
|
|
|
95
95
|
s.push(a[1]);
|
|
96
96
|
}
|
|
97
97
|
n[2] = s;
|
|
98
|
-
} else
|
|
99
|
-
if (3 ===
|
|
100
|
-
|
|
98
|
+
} else l |= 2;
|
|
99
|
+
if (3 === l) throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");
|
|
100
|
+
i.push({
|
|
101
101
|
placeholder: n[0],
|
|
102
102
|
param_no: n[1],
|
|
103
103
|
keys: n[2],
|
|
@@ -111,7 +111,7 @@ var gobjJs = function(e) {
|
|
|
111
111
|
}
|
|
112
112
|
o = o.substring(n[0].length);
|
|
113
113
|
}
|
|
114
|
-
return r[e] =
|
|
114
|
+
return r[e] = i;
|
|
115
115
|
}(e), arguments);
|
|
116
116
|
}
|
|
117
117
|
var r = Object.create(null);
|
|
@@ -123,7 +123,7 @@ var gobjJs = function(e) {
|
|
|
123
123
|
data: o || []
|
|
124
124
|
};
|
|
125
125
|
}
|
|
126
|
-
function
|
|
126
|
+
function i(e, t, n, r, o) {
|
|
127
127
|
return {
|
|
128
128
|
result: t,
|
|
129
129
|
comment: n || {},
|
|
@@ -131,7 +131,7 @@ var gobjJs = function(e) {
|
|
|
131
131
|
data: o || []
|
|
132
132
|
};
|
|
133
133
|
}
|
|
134
|
-
var
|
|
134
|
+
var l = "7.0.0a", s = null, _ = null, a = null, u = null, c = null, f = null, g = [], d = Object.create(null), b = {}, p = null, m = null, E = 0, T = Object.freeze({
|
|
135
135
|
DTP_STRING: 1,
|
|
136
136
|
DTP_BOOLEAN: 2,
|
|
137
137
|
DTP_INTEGER: 3,
|
|
@@ -167,12 +167,12 @@ var gobjJs = function(e) {
|
|
|
167
167
|
});
|
|
168
168
|
h.SDF_RD, h.SDF_WR, h.SDF_STATS, h.SDF_PERSIST, h.SDF_VOLATIL, h.SDF_RSTATS, h.SDF_PSTATS, h.SDF_WR, h.SDF_PERSIST;
|
|
169
169
|
var y = class {
|
|
170
|
-
constructor(e, t, n = 0, r = null, o = "",
|
|
171
|
-
this.type = e, this.name = t, this.alias =
|
|
170
|
+
constructor(e, t, n = 0, r = null, o = "", i = null, l = null, s = 0, _ = null, a = null, u = null) {
|
|
171
|
+
this.type = e, this.name = t, this.alias = i, this.flag = n, this.default_value = r, this.header = l, this.fillspace = s, this.description = o, this.json_fn = _, this.schema = a, this.authpth = u;
|
|
172
172
|
}
|
|
173
173
|
}, j = () => new y(0, null), v = (e, t, n, r, o) => new y(e, t, n, r, o), S = class {
|
|
174
|
-
constructor(e, t, n, r, o,
|
|
175
|
-
this.gclass_name = e, this.dl_states = [], this.dl_events = [], this.gmt = t, this.lmt = n, this.attrs_table = r, this.priv = o, this.authz_table =
|
|
174
|
+
constructor(e, t, n, r, o, i, l, s, _) {
|
|
175
|
+
this.gclass_name = e, this.dl_states = [], this.dl_events = [], this.gmt = t, this.lmt = n, this.attrs_table = r, this.priv = o, this.authz_table = i, this.command_table = l, this.s_user_trace_level = s, this.gclass_flag = Number(_) || 0, this.instances = 0, this.trace_level = 0, this.no_trace_level = 0, this.jn_trace_filter = null, this.fsm_checked = !1;
|
|
176
176
|
}
|
|
177
177
|
}, O = class {
|
|
178
178
|
constructor(e, t, n, r, o) {
|
|
@@ -326,7 +326,7 @@ var gobjJs = function(e) {
|
|
|
326
326
|
return function(e) {
|
|
327
327
|
for (const [t, n] of U) if (t === e) return n;
|
|
328
328
|
return 0;
|
|
329
|
-
}(String(e)) || (
|
|
329
|
+
}(String(e)) || (qt(`${t}: trace level NOT FOUND: ${e}`), 0);
|
|
330
330
|
}
|
|
331
331
|
function W(e) {
|
|
332
332
|
if (V) return 4294967295;
|
|
@@ -341,10 +341,10 @@ var gobjJs = function(e) {
|
|
|
341
341
|
if (!p || !p.jn_attrs) return 0;
|
|
342
342
|
let e = 0;
|
|
343
343
|
if (ot(p, "tracing")) {
|
|
344
|
-
const t = Number(
|
|
344
|
+
const t = Number(it(p, "tracing")) || 0;
|
|
345
345
|
t >= 1 && (e |= P.TRACE_MACHINE), t >= 2 && (e |= P.TRACE_EV_KW);
|
|
346
346
|
}
|
|
347
|
-
return ot(p, "trace_timer") &&
|
|
347
|
+
return ot(p, "trace_timer") && it(p, "trace_timer") && (e |= P.TRACE_TIMER), ot(p, "trace_creation") && it(p, "trace_creation") && (e |= P.TRACE_CREATE_DELETE), ot(p, "trace_start_stop") && it(p, "trace_start_stop") && (e |= P.TRACE_START_STOP), e;
|
|
348
348
|
}
|
|
349
349
|
function Y(e) {
|
|
350
350
|
return (W(e) | x()) & P.TRACE_CREATE_DELETE;
|
|
@@ -358,15 +358,15 @@ var gobjJs = function(e) {
|
|
|
358
358
|
const n = W(e) | x();
|
|
359
359
|
return !!(n & P.TRACE_MACHINE || n & P.TRACE_TIMER_PERIODIC && "EV_TIMEOUT_PERIODIC" === t || n & P.TRACE_TIMER && "EV_TIMEOUT" === t);
|
|
360
360
|
}
|
|
361
|
-
function
|
|
361
|
+
function H(e, t) {
|
|
362
362
|
if (V > 1) return !1;
|
|
363
363
|
if (!e) return !0;
|
|
364
364
|
const n = K(e);
|
|
365
365
|
return !!(n & P.TRACE_MACHINE || n & P.TRACE_TIMER_PERIODIC && "EV_TIMEOUT_PERIODIC" === t || n & P.TRACE_TIMER && "EV_TIMEOUT" === t);
|
|
366
366
|
}
|
|
367
|
-
function
|
|
367
|
+
function q(e, t) {
|
|
368
368
|
let n = {};
|
|
369
|
-
if (!mn(t)) return
|
|
369
|
+
if (!mn(t)) return qt("sdata_desc MUST be an array"), Zt(t), n;
|
|
370
370
|
for (let r = 0; r < t.length; r++) {
|
|
371
371
|
const o = t[r];
|
|
372
372
|
o.name && z(e, n, o);
|
|
@@ -383,16 +383,16 @@ var gobjJs = function(e) {
|
|
|
383
383
|
r = On(o);
|
|
384
384
|
break;
|
|
385
385
|
case T.DTP_INTEGER:
|
|
386
|
-
r = parseInt(o), isNaN(r) &&
|
|
386
|
+
r = parseInt(o), isNaN(r) && qt(`${Ve(e)}: attr NaN: ${n.name}`);
|
|
387
387
|
break;
|
|
388
388
|
case T.DTP_REAL:
|
|
389
|
-
r = Number(o), isNaN(r) &&
|
|
389
|
+
r = Number(o), isNaN(r) && qt(`${Ve(e)}: attr NaN: ${n.name}`);
|
|
390
390
|
break;
|
|
391
391
|
case T.DTP_LIST:
|
|
392
392
|
if (En(o)) try {
|
|
393
393
|
r = JSON.parse(o);
|
|
394
394
|
} catch (e) {
|
|
395
|
-
|
|
395
|
+
qt(`JSON parse error: ${e.message}`);
|
|
396
396
|
}
|
|
397
397
|
else r = o;
|
|
398
398
|
mn(r) || (r = []);
|
|
@@ -401,7 +401,7 @@ var gobjJs = function(e) {
|
|
|
401
401
|
if (En(o)) try {
|
|
402
402
|
r = JSON.parse(o);
|
|
403
403
|
} catch (e) {
|
|
404
|
-
|
|
404
|
+
qt(`JSON parse error: ${e.message}`);
|
|
405
405
|
}
|
|
406
406
|
else r = o;
|
|
407
407
|
pn(r) || (r = {});
|
|
@@ -410,13 +410,13 @@ var gobjJs = function(e) {
|
|
|
410
410
|
if (En(o)) try {
|
|
411
411
|
r = JSON.parse(o);
|
|
412
412
|
} catch (e) {
|
|
413
|
-
|
|
413
|
+
qt(`JSON parse error: ${e.message}`);
|
|
414
414
|
}
|
|
415
415
|
else r = o;
|
|
416
416
|
break;
|
|
417
417
|
case T.DTP_POINTER: r = o;
|
|
418
418
|
}
|
|
419
|
-
return void 0 === r && (
|
|
419
|
+
return void 0 === r && (qt(`default_value WRONG, it: ${n.name}, value: ${n.default_value}`), r = null), t[n.name] = r, 0;
|
|
420
420
|
}
|
|
421
421
|
function Q(e, t, n, r) {
|
|
422
422
|
let o;
|
|
@@ -433,80 +433,80 @@ var gobjJs = function(e) {
|
|
|
433
433
|
o = On(r);
|
|
434
434
|
break;
|
|
435
435
|
case T.DTP_INTEGER:
|
|
436
|
-
o = parseInt(r), isNaN(o) &&
|
|
436
|
+
o = parseInt(r), isNaN(o) && qt(`${Ve(e)}: attr NaN: ${n.name}`);
|
|
437
437
|
break;
|
|
438
438
|
case T.DTP_REAL:
|
|
439
|
-
o = Number(r), isNaN(o) &&
|
|
439
|
+
o = Number(r), isNaN(o) && qt(`${Ve(e)}: attr NaN: ${n.name}`);
|
|
440
440
|
break;
|
|
441
441
|
case T.DTP_LIST:
|
|
442
442
|
if (En(r)) try {
|
|
443
443
|
o = JSON.parse(r);
|
|
444
444
|
} catch (e) {
|
|
445
|
-
|
|
445
|
+
qt(`JSON parse error: ${e.message}`);
|
|
446
446
|
}
|
|
447
447
|
else o = r;
|
|
448
|
-
if (!mn(o)) return
|
|
448
|
+
if (!mn(o)) return qt(`attr must be an array: ${n.name}`), -1;
|
|
449
449
|
break;
|
|
450
450
|
case T.DTP_DICT:
|
|
451
451
|
if (En(r)) try {
|
|
452
452
|
o = JSON.parse(r);
|
|
453
453
|
} catch (e) {
|
|
454
|
-
|
|
454
|
+
qt(`JSON parse error: ${e.message}`);
|
|
455
455
|
}
|
|
456
456
|
else o = r;
|
|
457
|
-
if (!pn(o)) return
|
|
457
|
+
if (!pn(o)) return qt(`attr must be an object: ${n.name}`), -1;
|
|
458
458
|
break;
|
|
459
459
|
case T.DTP_JSON:
|
|
460
460
|
if (En(r)) try {
|
|
461
461
|
o = JSON.parse(r);
|
|
462
462
|
} catch (e) {
|
|
463
|
-
|
|
463
|
+
qt(`JSON parse error: ${e.message}`);
|
|
464
464
|
}
|
|
465
465
|
else o = r;
|
|
466
|
-
if (!mn(o) && !pn(o)) return
|
|
466
|
+
if (!mn(o) && !pn(o)) return qt(`attr must be a json dict/list: ${n.name}`), -1;
|
|
467
467
|
break;
|
|
468
468
|
case T.DTP_POINTER: o = r;
|
|
469
469
|
}
|
|
470
|
-
return void 0 === o &&
|
|
470
|
+
return void 0 === o && qt(`${Ve(e)}: attr undefined: ${n.name}`), t[n.name] = o, pn(e.priv) && e.priv.hasOwnProperty(n.name) && (e.priv[n.name] = o), e.obflag & R.obflag_created && !(e.obflag & R.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, n.name), 0;
|
|
471
471
|
}
|
|
472
472
|
function X(e) {
|
|
473
473
|
return e.jn_attrs;
|
|
474
474
|
}
|
|
475
475
|
function Z(e, t, n) {
|
|
476
|
-
return ot(e, t) ? X(e) : e && e.bottom_gobj ? Z(e.bottom_gobj, t, n) : (n &&
|
|
476
|
+
return ot(e, t) ? X(e) : e && e.bottom_gobj ? Z(e.bottom_gobj, t, n) : (n && qt(`GClass Attribute NOT FOUND: ${Ve(e)}, attr ${t}`), null);
|
|
477
477
|
}
|
|
478
478
|
function ee(e, t, n) {
|
|
479
|
-
if (!(e && e instanceof S)) return n &&
|
|
479
|
+
if (!(e && e instanceof S)) return n && qt("gclass NULL"), null;
|
|
480
480
|
if (!t) return e.attrs_table;
|
|
481
481
|
for (let n = 0; n < e.attrs_table.length; n++) {
|
|
482
482
|
const r = e.attrs_table[n];
|
|
483
483
|
if (r.name && r.name === t) return r;
|
|
484
484
|
}
|
|
485
|
-
return n &&
|
|
485
|
+
return n && qt(`${e.gclass_name}: GClass Attribute NOT FOUND: ${t}`), null;
|
|
486
486
|
}
|
|
487
|
-
function te(e, t, n, r, o,
|
|
488
|
-
if (Sn(e)) return
|
|
489
|
-
if (e.includes("`") || e.includes("^") || e.includes(".")) return
|
|
490
|
-
if (ce(e)) return
|
|
491
|
-
let c = new S(e, r, o,
|
|
487
|
+
function te(e, t, n, r, o, i, l, s, _, a, u) {
|
|
488
|
+
if (Sn(e)) return qt("gclass_name EMPTY"), null;
|
|
489
|
+
if (e.includes("`") || e.includes("^") || e.includes(".")) return qt(`GClass name CANNOT have '.' or '^' or '\`' char: ${e}`), null;
|
|
490
|
+
if (ce(e)) return qt(`GClass ALREADY exists: ${e}`), null;
|
|
491
|
+
let c = new S(e, r, o, i, l, s, _, a, u);
|
|
492
492
|
(function(e, t) {
|
|
493
|
-
e && e instanceof S ? t ? d[t] ?
|
|
493
|
+
e && e instanceof S ? t ? d[t] ? qt(`gclass ALREADY REGISTERED: ${t}`) : d[t] = e : qt("gclass_name undefined") : qt("gclass undefined");
|
|
494
494
|
})(c, e);
|
|
495
495
|
const f = n.length;
|
|
496
496
|
for (let e = 0; e < f; e++) {
|
|
497
497
|
let t = n[e][0], r = n[e][1];
|
|
498
498
|
if (Sn(t)) continue;
|
|
499
|
-
if (
|
|
499
|
+
if (ie(c, t) < 0) return ne(c), null;
|
|
500
500
|
const o = r.length;
|
|
501
501
|
for (let e = 0; e < o; e++) {
|
|
502
|
-
let n = r[e][0], o = r[e][1],
|
|
503
|
-
Sn(n) ||
|
|
502
|
+
let n = r[e][0], o = r[e][1], i = r[e][2];
|
|
503
|
+
Sn(n) || le(c, t, n, o, i);
|
|
504
504
|
}
|
|
505
505
|
}
|
|
506
506
|
for (let e = 0; e < t.length; e++) {
|
|
507
507
|
let n = t[e][0], r = t[e][1];
|
|
508
508
|
if (!Sn(n)) {
|
|
509
|
-
if (ae(c, n)) return
|
|
509
|
+
if (ae(c, n)) return qt(`SMachine: event repeated in input_events: ${n}`), ne(c), null;
|
|
510
510
|
_e(c, n, r);
|
|
511
511
|
}
|
|
512
512
|
}
|
|
@@ -520,11 +520,11 @@ var gobjJs = function(e) {
|
|
|
520
520
|
let t;
|
|
521
521
|
if (En(e)) t = e;
|
|
522
522
|
else {
|
|
523
|
-
if (!(e instanceof S)) return
|
|
523
|
+
if (!(e instanceof S)) return qt("Cannot unregister gclass, type unknown"), -1;
|
|
524
524
|
t = e.gclass_name;
|
|
525
525
|
}
|
|
526
526
|
let n = d[t];
|
|
527
|
-
return n ? n.instances > 0 ? (
|
|
527
|
+
return n ? n.instances > 0 ? (qt(`Cannot unregister gclass, instances in use: ${t}`), -1) : (delete d[t], 0) : (qt(`Cannot unregister gclass, not found: ${t}`), -1);
|
|
528
528
|
}
|
|
529
529
|
function re(e, t) {
|
|
530
530
|
const n = e.dl_states.length, r = e.dl_states;
|
|
@@ -542,23 +542,23 @@ var gobjJs = function(e) {
|
|
|
542
542
|
}
|
|
543
543
|
return null;
|
|
544
544
|
}
|
|
545
|
-
function
|
|
546
|
-
return e instanceof S ? re(e, t) ? (
|
|
545
|
+
function ie(e, t) {
|
|
546
|
+
return e instanceof S ? re(e, t) ? (qt(`state already exists: ${t}`), -1) : (e.dl_states.push(new I(t)), 0) : (qt("Cannot add state, typeof not GClass"), -1);
|
|
547
547
|
}
|
|
548
|
-
function
|
|
549
|
-
if (!(e instanceof S)) return
|
|
550
|
-
if (Sn(t)) return
|
|
551
|
-
let
|
|
552
|
-
return
|
|
548
|
+
function le(e, t, n, r, o) {
|
|
549
|
+
if (!(e instanceof S)) return qt("Cannot add state, typeof not GClass"), -1;
|
|
550
|
+
if (Sn(t)) return qt("state_name EMPTY"), -1;
|
|
551
|
+
let i = re(e, t);
|
|
552
|
+
return i ? oe(i, n) ? (qt(`event already exists: gclass ${e.gclass_name}, state ${t}, event ${n}`), -1) : (i.dl_actions.push(new k(n, r, o)), 0) : (qt(`state not found: ${t}`), -1);
|
|
553
553
|
}
|
|
554
554
|
function se(e, t, n) {
|
|
555
555
|
Sn(t) || e.push(new $(t, n));
|
|
556
556
|
}
|
|
557
557
|
function _e(e, t, n) {
|
|
558
|
-
return e instanceof S ? se(e.dl_events, t, n) : (
|
|
558
|
+
return e instanceof S ? se(e.dl_events, t, n) : (qt("Cannot add state, typeof not GClass"), -1);
|
|
559
559
|
}
|
|
560
560
|
function ae(e, t) {
|
|
561
|
-
if (!(e instanceof S)) return
|
|
561
|
+
if (!(e instanceof S)) return qt("Cannot add state, typeof not GClass"), 0;
|
|
562
562
|
const n = e.dl_events.length, r = e.dl_events;
|
|
563
563
|
for (let e = 0; e < n; e++) {
|
|
564
564
|
let n = r[e];
|
|
@@ -567,25 +567,25 @@ var gobjJs = function(e) {
|
|
|
567
567
|
return null;
|
|
568
568
|
}
|
|
569
569
|
function ue(e) {
|
|
570
|
-
if (!(e instanceof S)) return
|
|
570
|
+
if (!(e instanceof S)) return qt("Cannot add state, typeof not GClass"), -1;
|
|
571
571
|
let t = 0;
|
|
572
|
-
dn(e.dl_states) || (
|
|
572
|
+
dn(e.dl_states) || (qt(`GClass without states: ${e.gclass_name}`), t += -1);
|
|
573
573
|
for (let n = 0; n < e.dl_states.length; n++) {
|
|
574
574
|
let r = e.dl_states[n];
|
|
575
575
|
if (!Sn(r.state_name)) for (let n = 0; n < r.dl_actions.length; n++) {
|
|
576
576
|
let o = r.dl_actions[n];
|
|
577
|
-
Sn(o.event_name) || (ae(e, o.event_name) || (
|
|
577
|
+
Sn(o.event_name) || (ae(e, o.event_name) || (qt(`SMachine: state's event NOT in input_events: gclass ${e.gclass_name}, state ${r.state_name}, event ${o.event_name}`), t += -1), o.next_state && (re(e, o.next_state) || (qt(`SMachine: next state NOT in state names: gclass ${e.gclass_name}, state ${r.state_name}, next_state ${o.next_state}`), t += -1)));
|
|
578
578
|
}
|
|
579
579
|
}
|
|
580
580
|
for (let n = 0; n < e.dl_events.length; n++) {
|
|
581
581
|
let r = e.dl_events[n];
|
|
582
|
-
if (!Sn(r.event_name) && (Tn(r.event_flag) || (
|
|
582
|
+
if (!Sn(r.event_name) && (Tn(r.event_flag) || (qt(`SMachine: event flag is NOT number: gclass ${e.gclass_name}, event ${r.event_name}`), t += -1), !(r.event_flag & D.EVF_OUTPUT_EVENT))) {
|
|
583
583
|
let n = !1;
|
|
584
584
|
for (let t = 0; t < e.dl_states.length; t++) {
|
|
585
585
|
let o = e.dl_states[t];
|
|
586
586
|
Sn(o.state_name) || oe(o, r.event_name) && (n = !0);
|
|
587
587
|
}
|
|
588
|
-
n || (
|
|
588
|
+
n || (qt(`SMachine: input_list's event NOT in state: gclass ${e.gclass_name}, event ${r.event_name}`), t += -1);
|
|
589
589
|
}
|
|
590
590
|
}
|
|
591
591
|
return t;
|
|
@@ -595,75 +595,75 @@ var gobjJs = function(e) {
|
|
|
595
595
|
try {
|
|
596
596
|
n = d[e];
|
|
597
597
|
} catch (e) {}
|
|
598
|
-
return n || (t &&
|
|
598
|
+
return n || (t && qt(`gclass not found: ${e}`), null);
|
|
599
599
|
}
|
|
600
600
|
function fe() {
|
|
601
601
|
return !m || m.obflag & R.obflag_destroyed ? null : m;
|
|
602
602
|
}
|
|
603
603
|
function ge(e, t) {
|
|
604
604
|
e = e.toLowerCase();
|
|
605
|
-
return b[e] || (t &&
|
|
605
|
+
return b[e] || (t && qt(`gobj service not found: ${e}`), null);
|
|
606
606
|
}
|
|
607
607
|
function de(e) {
|
|
608
608
|
let t = Fe(e);
|
|
609
|
-
return t = t.toLowerCase(), b[t] &&
|
|
609
|
+
return t = t.toLowerCase(), b[t] && qt(`service ALREADY REGISTERED: ${t}. Will be UPDATED`), b[t] = e, 0;
|
|
610
610
|
}
|
|
611
611
|
function be(e, t) {
|
|
612
|
-
t.parent &&
|
|
612
|
+
t.parent && qt(`_add_child() ALREADY HAS PARENT: ${t.gobj_name}`), e.dl_children.push(t), t.parent = e;
|
|
613
613
|
}
|
|
614
614
|
function pe(e, t) {
|
|
615
615
|
let n = ur(e.dl_children, t);
|
|
616
616
|
n >= 0 && (fn(e.dl_children, n), t.parent = null);
|
|
617
617
|
}
|
|
618
618
|
function me(e, t) {
|
|
619
|
-
"__json_config_variables__" !== t &&
|
|
619
|
+
"__json_config_variables__" !== t && qt(`GClass Attribute NOT FOUND: ${Ve(e)}, attr ${t}`);
|
|
620
620
|
}
|
|
621
621
|
function Ee(e, t, n) {
|
|
622
622
|
let r = t;
|
|
623
623
|
(function(e, t, n, r, o) {
|
|
624
|
-
if (!e || !t) return
|
|
625
|
-
let
|
|
626
|
-
for (const [
|
|
627
|
-
const t = ee(o.gclass,
|
|
628
|
-
t ? (-1 === n || t.flag & n) && (t.flag & h.SDF_DEPRECATED && zt(`${Ve(o)}: Deprecated attribute used in gobj creation: ${
|
|
624
|
+
if (!e || !t) return qt("hsdata or kw NULL"), -1;
|
|
625
|
+
let i = 0;
|
|
626
|
+
for (const [l, s] of Object.entries(t)) {
|
|
627
|
+
const t = ee(o.gclass, l, !1);
|
|
628
|
+
t ? (-1 === n || t.flag & n) && (t.flag & h.SDF_DEPRECATED && zt(`${Ve(o)}: Deprecated attribute used in gobj creation: ${l}`), i += Q(o, e, t, s)) : r && (r(o, l), i--);
|
|
629
629
|
}
|
|
630
|
-
return
|
|
631
|
-
})(X(e), r, -1, e.gclass.gclass_flag & N.gcflag_ignore_unknown_attrs ? 0 : me, e) < 0 && (
|
|
630
|
+
return i;
|
|
631
|
+
})(X(e), r, -1, e.gclass.gclass_flag & N.gcflag_ignore_unknown_attrs ? 0 : me, e) < 0 && (qt(`${Ve(e)} json2data() FAILED`), Zt(r));
|
|
632
632
|
}
|
|
633
|
-
function Te(e, t, r, o,
|
|
634
|
-
if (
|
|
635
|
-
if (p) return
|
|
636
|
-
|
|
633
|
+
function Te(e, t, r, o, i) {
|
|
634
|
+
if (i & w.gobj_flag_yuno) {
|
|
635
|
+
if (p) return qt("__yuno__ already created"), null;
|
|
636
|
+
i |= w.gobj_flag_service;
|
|
637
637
|
} else {
|
|
638
|
-
if (!o) return
|
|
639
|
-
if (!("string" == typeof o || o instanceof O)) return
|
|
638
|
+
if (!o) return qt("gobj NEEDS a parent!"), null;
|
|
639
|
+
if (!("string" == typeof o || o instanceof O)) return qt(`BAD TYPE of parent: ${o}`), null;
|
|
640
640
|
if (En(o) && !(o = ge(o))) return zt(`parent service not found: ${o}`), null;
|
|
641
641
|
}
|
|
642
|
-
if (
|
|
643
|
-
if (
|
|
644
|
-
if (m) return
|
|
645
|
-
|
|
642
|
+
if (i & w.gobj_flag_service && ge(e, !1)) return qt(`service ALREADY registered: ${t}^${e}`), null;
|
|
643
|
+
if (i & w.gobj_flag_default_service) {
|
|
644
|
+
if (m) return qt(`default service ALREADY registered: ${t}^${e}`), null;
|
|
645
|
+
i |= w.gobj_flag_service;
|
|
646
646
|
}
|
|
647
|
-
if (Sn(t)) return
|
|
648
|
-
let
|
|
649
|
-
if (!
|
|
650
|
-
if (!En(e)) return
|
|
647
|
+
if (Sn(t)) return qt("gclass_name must be a string"), null;
|
|
648
|
+
let l = ce(t, !1);
|
|
649
|
+
if (!l) return qt(`GClass not registered: ${t}^${e}`), null;
|
|
650
|
+
if (!En(e)) return qt(`gobj_name must be a string: ${t}`), null;
|
|
651
651
|
if (!Sn(e)) {
|
|
652
|
-
if (e.includes("`")) return
|
|
653
|
-
if (e.includes("^")) return
|
|
652
|
+
if (e.includes("`")) return qt(`gobj_name cannot contain char ': ${t}^${e}`), null;
|
|
653
|
+
if (e.includes("^")) return qt(`gobj_name cannot contain char ^: ${t}^${e}`), null;
|
|
654
654
|
}
|
|
655
|
-
let _ = new O(e,
|
|
656
|
-
_.jn_attrs =
|
|
655
|
+
let _ = new O(e, l, r, o, i);
|
|
656
|
+
_.jn_attrs = q(_, l.attrs_table);
|
|
657
657
|
for (const [e, t] of Object.entries(_.jn_attrs)) e in _.priv && (_.priv[e] = t);
|
|
658
658
|
let a = Y(_);
|
|
659
|
-
return a && L(n("💙💙⏩ creating: %s^%s",
|
|
659
|
+
return a && L(n("💙💙⏩ creating: %s^%s", l.gclass_name, e)), _.gobj_flag & w.gobj_flag_service && de(_), _.gobj_flag & w.gobj_flag_yuno && (p = _), _.gobj_flag & w.gobj_flag_default_service && (m = _), _.gobj_flag & w.gobj_flag_yuno || be(o, _), _.obflag |= R.obflag_created, _.gclass.instances++, Ee(_, r), _.gobj_flag & w.gobj_flag_service && s && s(_, null), _.gclass.gmt.mt_create2 ? _.gclass.gmt.mt_create2(_, r) : _.gclass.gmt.mt_create && _.gclass.gmt.mt_create(_), o && o.gclass.gmt.mt_child_added && (a && L(n("👦👦🔵 child_added(%s): %s", Me(o), Ve(_))), o.gclass.gmt.mt_child_added(o, _)), a && L(n("💙💙⏪ created: %s", Me(_))), _;
|
|
660
660
|
}
|
|
661
661
|
function he(e, t, n, r) {
|
|
662
662
|
return Te(e, t, n, r, w.gobj_flag_pure_child);
|
|
663
663
|
}
|
|
664
664
|
function ye(e) {
|
|
665
|
-
if (Ye(e)) return void
|
|
666
|
-
e.__refs__ > 0 &&
|
|
665
|
+
if (Ye(e)) return void qt("gobj NULL or DESTROYED");
|
|
666
|
+
e.__refs__ > 0 && qt(`${Ve(e)}: gobj DESTROYING with references: ${e.__refs__}`), e.playing && (qt(`Destroying a PLAYING gobj: ${Me(e)}`), De(e)), e.running && (qt(`Destroying a RUNNING gobj: ${Me(e)}`), Oe(e)), e.obflag |= R.obflag_destroying, function(e) {
|
|
667
667
|
if (0 === ht.length) return;
|
|
668
668
|
for (let t of ht) t.src === e && (t.src = null);
|
|
669
669
|
ht = ht.filter((t) => t.dst !== e);
|
|
@@ -673,7 +673,7 @@ var gobjJs = function(e) {
|
|
|
673
673
|
let r = We(e);
|
|
674
674
|
r && r.gclass.gmt.mt_child_removed && (t && L(n("👦👦🔴 child_removed(%s): %s", Me(r), Ve(e))), r.gclass.gmt.mt_child_removed(r, e)), e.gobj_flag & w.gobj_flag_service && function(e) {
|
|
675
675
|
let t = Fe(e);
|
|
676
|
-
t = t.toLowerCase(), b[t] ? delete b[t] :
|
|
676
|
+
t = t.toLowerCase(), b[t] ? delete b[t] : qt(`"service NOT found in register": ${t}`);
|
|
677
677
|
}(e), kt(e, e.dl_subscriptions, !0), kt(e, e.dl_subscribings, !0), r && (pe(r, e), Ke(e) && (Be(r) !== e || Ye(r) || Je(r, null))), function(e) {
|
|
678
678
|
let t = e.dl_children.slice();
|
|
679
679
|
for (let e = 0; e < t.length; e++) {
|
|
@@ -683,9 +683,9 @@ var gobjJs = function(e) {
|
|
|
683
683
|
}(e), e.obflag & R.obflag_created && e.gclass.gmt.mt_destroy && e.gclass.gmt.mt_destroy(e), t && L(n("💔💔⏪ destroyed: %s", Me(e))), e.obflag |= R.obflag_destroyed, e.obflag & R.obflag_created && e.gclass.instances--;
|
|
684
684
|
}
|
|
685
685
|
function je(e) {
|
|
686
|
-
if (Ye(e)) return
|
|
687
|
-
if (e.running) return
|
|
688
|
-
if (e.disabled) return
|
|
686
|
+
if (Ye(e)) return qt("gobj NULL or DESTROYED"), -1;
|
|
687
|
+
if (e.running) return qt(`${Ve(e)}: GObj ALREADY RUNNING`), -1;
|
|
688
|
+
if (e.disabled) return qt(`${Ve(e)}: GObj DISABLED`), -1;
|
|
689
689
|
B(e) && L(n("⏺ ⏺ start: %s", Me(e))), e.running = !0;
|
|
690
690
|
let t = 0;
|
|
691
691
|
return e.gclass.gmt.mt_start && (t = e.gclass.gmt.mt_start(e)), t;
|
|
@@ -697,8 +697,8 @@ var gobjJs = function(e) {
|
|
|
697
697
|
return e.gclass.gclass_flag & N.gcflag_manual_start || ke(e) ? 1 : (Ae(e) || je(e), 0);
|
|
698
698
|
}
|
|
699
699
|
function Oe(e) {
|
|
700
|
-
if (Ye(e)) return
|
|
701
|
-
if (!e.running) return
|
|
700
|
+
if (Ye(e)) return qt("gobj NULL or DESTROYED"), -1;
|
|
701
|
+
if (!e.running) return qt(`${Ve(e)}: GObj NOT RUNNING`), -1;
|
|
702
702
|
e.playing && (zt(`${Ve(e)}: GObj stopping without previous pause`), De(e)), B(e) && L(n("⏹ ⏹ stop: %s", Me(e))), e.running = !1;
|
|
703
703
|
let t = 0;
|
|
704
704
|
return e.gclass.gmt.mt_stop && (t = e.gclass.gmt.mt_stop(e)), t;
|
|
@@ -707,14 +707,14 @@ var gobjJs = function(e) {
|
|
|
707
707
|
return Ae(e) && Oe(e), 0;
|
|
708
708
|
}
|
|
709
709
|
function we(e) {
|
|
710
|
-
return Ye(e) ? (
|
|
710
|
+
return Ye(e) ? (qt("gobj NULL or DESTROYED"), -1) : qe(e, A.WALK_FIRST2LAST, Ne, 0, 0);
|
|
711
711
|
}
|
|
712
712
|
function Re(e) {
|
|
713
|
-
if (Ye(e)) return
|
|
714
|
-
if (e.playing) return
|
|
715
|
-
if (e.disabled) return
|
|
713
|
+
if (Ye(e)) return qt(`gobj NULL or DESTROYED: ${Ve(e)}`), -1;
|
|
714
|
+
if (e.playing) return qt(`${Ve(e)}: GObj ALREADY PLAYING`), -1;
|
|
715
|
+
if (e.disabled) return qt(`${Ve(e)}: GObj DISABLED`), -1;
|
|
716
716
|
if (!Ae(e)) {
|
|
717
|
-
if (e.gclass.gclass_flag & N.gcflag_required_start_to_play) return
|
|
717
|
+
if (e.gclass.gclass_flag & N.gcflag_required_start_to_play) return qt(`${Ve(e)}: Cannot play, start not done`), -1;
|
|
718
718
|
zt(`${Ve(e)}: GObj playing without previous start`), je(e);
|
|
719
719
|
}
|
|
720
720
|
B(e) && L(n("⏯ ⏯ play: %s", Me(e))), e.playing = !0;
|
|
@@ -722,7 +722,7 @@ var gobjJs = function(e) {
|
|
|
722
722
|
return e.gclass.gmt.mt_play && (t = e.gclass.gmt.mt_play(e), (t < 0 || !1 === t) && (e.playing = !1)), t;
|
|
723
723
|
}
|
|
724
724
|
function De(e) {
|
|
725
|
-
return Ye(e) ? (
|
|
725
|
+
return Ye(e) ? (qt("gobj NULL or DESTROYED"), -1) : e.playing ? (B(e) && L(n("⏸ ⏸ pause: %s", Me(e))), e.playing = !1, e.gclass.gmt.mt_pause ? e.gclass.gmt.mt_pause(e) : 0) : (qt(`${Ve(e)}: GObj NOT PLAYING`), -1);
|
|
726
726
|
}
|
|
727
727
|
function Ae(e) {
|
|
728
728
|
return !Ye(e) && e.running;
|
|
@@ -752,104 +752,104 @@ var gobjJs = function(e) {
|
|
|
752
752
|
return e ? at(e, "yuno_id") : "";
|
|
753
753
|
}
|
|
754
754
|
function Fe(e) {
|
|
755
|
-
return vn(e) ? e.gobj_name : (
|
|
755
|
+
return vn(e) ? e.gobj_name : (qt("gobj bad type"), null);
|
|
756
756
|
}
|
|
757
757
|
function Ge(e) {
|
|
758
|
-
return vn(e) ? e.gclass.gclass_name : (
|
|
758
|
+
return vn(e) ? e.gclass.gclass_name : (qt("gobj NULL of bad type"), null);
|
|
759
759
|
}
|
|
760
760
|
function Ve(e) {
|
|
761
|
-
return vn(e) ? e.gclass.gclass_name + "^" + Fe(e) : (
|
|
761
|
+
return vn(e) ? e.gclass.gclass_name + "^" + Fe(e) : (qt("gobj bad type"), null);
|
|
762
762
|
}
|
|
763
763
|
function Me(e) {
|
|
764
|
-
if (!vn(e)) return
|
|
764
|
+
if (!vn(e)) return qt("gobj NULL of bad type"), null;
|
|
765
765
|
let t = Ve(e), n = We(e);
|
|
766
766
|
for (; n;) t = Ve(n) + "`" + t, n = We(n);
|
|
767
767
|
return t;
|
|
768
768
|
}
|
|
769
769
|
function We(e) {
|
|
770
|
-
return vn(e) ? e.parent : (
|
|
770
|
+
return vn(e) ? e.parent : (qt("gobj NULL of bad type"), null);
|
|
771
771
|
}
|
|
772
772
|
function Ke(e) {
|
|
773
|
-
return vn(e) ? !!(e.gobj_flag & w.gobj_flag_volatil) : (
|
|
773
|
+
return vn(e) ? !!(e.gobj_flag & w.gobj_flag_volatil) : (qt("gobj NULL of bad type"), null);
|
|
774
774
|
}
|
|
775
775
|
function xe(e) {
|
|
776
|
-
return vn(e) ? !!(e.gobj_flag & w.gobj_flag_pure_child) : (
|
|
776
|
+
return vn(e) ? !!(e.gobj_flag & w.gobj_flag_pure_child) : (qt("gobj NULL of bad type"), null);
|
|
777
777
|
}
|
|
778
778
|
function Ye(e) {
|
|
779
779
|
return !vn(e) || !!(e.obflag & (R.obflag_destroyed | R.obflag_destroying));
|
|
780
780
|
}
|
|
781
781
|
function Be(e) {
|
|
782
|
-
return vn(e) ? e.bottom_gobj : (
|
|
782
|
+
return vn(e) ? e.bottom_gobj : (qt("gobj NULL of bad type"), null);
|
|
783
783
|
}
|
|
784
784
|
function Je(e, t) {
|
|
785
|
-
if (!vn(e)) return
|
|
785
|
+
if (!vn(e)) return qt("gobj NULL of bad type"), null;
|
|
786
786
|
e.bottom_gobj && zt(`${Ve(e)}: bottom_gobj already set`), e.bottom_gobj = t;
|
|
787
787
|
}
|
|
788
|
-
function
|
|
789
|
-
return vn(e) ? t ? ee(e.gclass, t, n) : e.gclass.attrs_table : (
|
|
788
|
+
function He(e, t, n) {
|
|
789
|
+
return vn(e) ? t ? ee(e.gclass, t, n) : e.gclass.attrs_table : (qt("gobj NULL of bad type"), null);
|
|
790
790
|
}
|
|
791
|
-
function
|
|
792
|
-
return Ye(e) ? (
|
|
791
|
+
function qe(e, t, n, r, o) {
|
|
792
|
+
return Ye(e) ? (qt("gobj NULL, destroying, or bad type"), 0) : Xe(e.dl_children, t, n, r, o);
|
|
793
793
|
}
|
|
794
794
|
function ze(e, t, n, r, o) {
|
|
795
|
-
return Ye(e) ? (
|
|
795
|
+
return Ye(e) ? (qt("gobj NULL, destroying, or bad type"), 0) : et(e.dl_children, t, n, r, o);
|
|
796
796
|
}
|
|
797
797
|
function Qe(e) {
|
|
798
|
-
return "number" == typeof e && isFinite(e) ? e : (null == e ||
|
|
798
|
+
return "number" == typeof e && isFinite(e) ? e : (null == e || qt(`walk callback must return a NUMBER (-1 stop, 0 descend, >0 skip children), got ${typeof e}: taken as 0`), 0);
|
|
799
799
|
}
|
|
800
800
|
function Xe(e, t, n, r, o) {
|
|
801
|
-
let
|
|
802
|
-
if (t & A.WALK_LAST2FIRST) for (let e =
|
|
803
|
-
|
|
804
|
-
let t = Qe(n(
|
|
801
|
+
let i, l = [...e];
|
|
802
|
+
if (t & A.WALK_LAST2FIRST) for (let e = l.length; e > 0; e--) {
|
|
803
|
+
i = l[e - 1];
|
|
804
|
+
let t = Qe(n(i, r, o));
|
|
805
805
|
if (t < 0) return t;
|
|
806
806
|
}
|
|
807
|
-
else for (let e = 0; e <
|
|
808
|
-
|
|
809
|
-
let t = Qe(n(
|
|
807
|
+
else for (let e = 0; e < l.length; e++) {
|
|
808
|
+
i = l[e];
|
|
809
|
+
let t = Qe(n(i, r, o));
|
|
810
810
|
if (t < 0) return t;
|
|
811
811
|
}
|
|
812
812
|
return 0;
|
|
813
813
|
}
|
|
814
814
|
function Ze(e, t, n, r, o) {
|
|
815
|
-
let
|
|
816
|
-
if (
|
|
815
|
+
let i, l = Xe(e, t, n, r, o);
|
|
816
|
+
if (l < 0) return l;
|
|
817
817
|
if (t & A.WALK_LAST2FIRST) {
|
|
818
|
-
for (let s = e.length; s > 0; s--) if (
|
|
819
|
-
} else for (let s = 0; s < e.length; s++) if (
|
|
820
|
-
return
|
|
818
|
+
for (let s = e.length; s > 0; s--) if (i = e[s - 1], l = Ze([...i.dl_children], t, n, r, o), l < 0) return l;
|
|
819
|
+
} else for (let s = 0; s < e.length; s++) if (i = e[s], l = Ze([...i.dl_children], t, n, r, o), l < 0) return l;
|
|
820
|
+
return l;
|
|
821
821
|
}
|
|
822
822
|
function et(e, t, n, r, o) {
|
|
823
823
|
if (t & A.WALK_BYLEVEL) return Ze(e, t, n, r, o);
|
|
824
|
-
let
|
|
824
|
+
let i, l;
|
|
825
825
|
if (t & A.WALK_BOTTOM2TOP) for (let s = e.length; s > 0; s--) {
|
|
826
|
-
if (
|
|
827
|
-
if (
|
|
826
|
+
if (l = e[s - 1], i = et([...l.dl_children], t, n, r, o), i < 0) return i;
|
|
827
|
+
if (i = Qe(n(l, r, o)), i < 0) return i;
|
|
828
828
|
}
|
|
829
829
|
else for (let s = 0; s < e.length; s++) {
|
|
830
|
-
if (
|
|
831
|
-
if (0 ===
|
|
830
|
+
if (l = e[s], i = Qe(n(l, r, o)), i < 0) return i;
|
|
831
|
+
if (0 === i && (i = et([...l.dl_children], t, n, r, o), i < 0)) return i;
|
|
832
832
|
}
|
|
833
833
|
return 0;
|
|
834
834
|
}
|
|
835
835
|
function tt(e, t) {
|
|
836
|
-
if (!vn(e)) return
|
|
836
|
+
if (!vn(e)) return qt("gobj NULL of bad type"), !1;
|
|
837
837
|
let n = t.__gclass_name__, r = t.__gobj_name__, o = t.__prefix_gobj_name__;
|
|
838
838
|
t.__disabled__;
|
|
839
|
-
let
|
|
839
|
+
let i = t.__state__;
|
|
840
840
|
if (n && n !== Ge(e)) return !1;
|
|
841
841
|
if (r && r !== Fe(e)) return !1;
|
|
842
842
|
if (o) {
|
|
843
843
|
let t = o.length;
|
|
844
844
|
if (o !== Fe(e).substring(0, t)) return !1;
|
|
845
845
|
}
|
|
846
|
-
if (
|
|
847
|
-
let
|
|
848
|
-
for (const n of Object.keys(t)) if ("__gclass_name__" !== n && "__gobj_name__" !== n && "__prefix_gobj_name__" !== n && "__disabled__" !== n && "__state__" !== n && ot(e, n) &&
|
|
846
|
+
if (i && i !== pt(e)) return !1;
|
|
847
|
+
let l = e.jn_attrs;
|
|
848
|
+
for (const n of Object.keys(t)) if ("__gclass_name__" !== n && "__gobj_name__" !== n && "__prefix_gobj_name__" !== n && "__disabled__" !== n && "__state__" !== n && ot(e, n) && l[n] !== t[n]) return !1;
|
|
849
849
|
return !0;
|
|
850
850
|
}
|
|
851
851
|
function nt(e, t) {
|
|
852
|
-
if (Ye(e)) return
|
|
852
|
+
if (Ye(e)) return qt("gobj NULL or DESTROYED"), null;
|
|
853
853
|
const n = e.dl_children;
|
|
854
854
|
for (let e = 0; e < n.length; e++) {
|
|
855
855
|
const r = n[e];
|
|
@@ -873,27 +873,27 @@ var gobjJs = function(e) {
|
|
|
873
873
|
if (1 === n.length) return e;
|
|
874
874
|
let r = n[1].split("^"), o = {};
|
|
875
875
|
1 === r.length ? o.__gobj_name__ = r : (o.__gclass_name__ = r[0], o.__gobj_name__ = r[1]);
|
|
876
|
-
let
|
|
877
|
-
return
|
|
876
|
+
let i = nt(e, o);
|
|
877
|
+
return i ? (n.splice(0, 1), n = n.join("`"), rt(i, n)) : null;
|
|
878
878
|
}
|
|
879
879
|
function ot(e, t) {
|
|
880
880
|
return !Sn(t) && !!ee(e.gclass, t, !1);
|
|
881
881
|
}
|
|
882
|
-
function
|
|
882
|
+
function it(e, t, n) {
|
|
883
883
|
let r = e.jn_attrs;
|
|
884
884
|
if (t in r && r.hasOwnProperty(t)) {
|
|
885
885
|
let n = r[t];
|
|
886
886
|
return e.gclass.gmt.mt_reading ? e.gclass.gmt.mt_reading(e, t, n) : n;
|
|
887
887
|
}
|
|
888
|
-
return
|
|
888
|
+
return qt(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), null;
|
|
889
889
|
}
|
|
890
|
-
function
|
|
890
|
+
function lt(e, t, n) {
|
|
891
891
|
let r = {}, o = e.gclass.attrs_table;
|
|
892
892
|
for (let n = 0; n < o.length; n++) {
|
|
893
|
-
const
|
|
894
|
-
if (
|
|
893
|
+
const i = o[n];
|
|
894
|
+
if (i.name && (-1 === t || i.flag & t)) {
|
|
895
895
|
let t;
|
|
896
|
-
!e.gclass.gmt.mt_reading || e.obflag & R.obflag_destroyed ? t = ln(e.jn_attrs,
|
|
896
|
+
!e.gclass.gmt.mt_reading || e.obflag & R.obflag_destroyed ? t = ln(e.jn_attrs, i.name) : (t = e.gclass.gmt.mt_reading(e, i.name), void 0 === t && (t = ln(e.jn_attrs, i.name))), _n(r, i.name, t);
|
|
897
897
|
}
|
|
898
898
|
}
|
|
899
899
|
return r;
|
|
@@ -906,58 +906,58 @@ var gobjJs = function(e) {
|
|
|
906
906
|
if (0 === wn(t, "__service__")) return Ie(e);
|
|
907
907
|
}
|
|
908
908
|
let n = Z(e, t, !1);
|
|
909
|
-
return n ? !e.gclass.gmt.mt_reading || e.obflag & R.obflag_destroyed ? ln(n, t) : e.gclass.gmt.mt_reading(e, t) : (
|
|
909
|
+
return n ? !e.gclass.gmt.mt_reading || e.obflag & R.obflag_destroyed ? ln(n, t) : e.gclass.gmt.mt_reading(e, t) : (qt(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
|
|
910
910
|
}
|
|
911
911
|
function _t(e, t) {
|
|
912
912
|
t && wn(t, "__trace_level__");
|
|
913
913
|
let n = Z(e, t, !1);
|
|
914
|
-
return n ? !e.gclass.gmt.mt_reading || e.obflag & R.obflag_destroyed ? ln(n, t) : e.gclass.gmt.mt_reading(e, t) : (
|
|
914
|
+
return n ? !e.gclass.gmt.mt_reading || e.obflag & R.obflag_destroyed ? ln(n, t) : e.gclass.gmt.mt_reading(e, t) : (qt(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
|
|
915
915
|
}
|
|
916
916
|
function at(e, t) {
|
|
917
917
|
if (t && 0 === wn(t, "__state__")) return pt(e);
|
|
918
918
|
let n = Z(e, t, !1);
|
|
919
|
-
return n ? !e.gclass.gmt.mt_reading || e.obflag & R.obflag_destroyed ? ln(n, t) : e.gclass.gmt.mt_reading(e, t) : (
|
|
919
|
+
return n ? !e.gclass.gmt.mt_reading || e.obflag & R.obflag_destroyed ? ln(n, t) : e.gclass.gmt.mt_reading(e, t) : (qt(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
|
|
920
920
|
}
|
|
921
921
|
function ut(e, t) {
|
|
922
922
|
let n = Z(e, t, !1);
|
|
923
|
-
return n ? !e.gclass.gmt.mt_reading || e.obflag & R.obflag_destroyed ? ln(n, t) : e.gclass.gmt.mt_reading(e, t) : (
|
|
923
|
+
return n ? !e.gclass.gmt.mt_reading || e.obflag & R.obflag_destroyed ? ln(n, t) : e.gclass.gmt.mt_reading(e, t) : (qt(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
|
|
924
924
|
}
|
|
925
925
|
function ct(e, t, n, r) {
|
|
926
|
-
let o = X(e),
|
|
927
|
-
for (const [r,
|
|
928
|
-
let t =
|
|
929
|
-
t && (-1 === n || t.flag & n) && (
|
|
926
|
+
let o = X(e), i = 0;
|
|
927
|
+
for (const [r, l] of Object.entries(t)) {
|
|
928
|
+
let t = He(e, r, !0);
|
|
929
|
+
t && (-1 === n || t.flag & n) && (i += Q(e, o, t, l));
|
|
930
930
|
}
|
|
931
|
-
return
|
|
931
|
+
return i;
|
|
932
932
|
}
|
|
933
933
|
function ft(e, t, n) {
|
|
934
934
|
let r = Z(e, t, !1);
|
|
935
|
-
return r ? (r[t] = On(n), pn(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & R.obflag_created && !(e.obflag & R.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (
|
|
935
|
+
return r ? (r[t] = On(n), pn(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & R.obflag_created && !(e.obflag & R.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (qt(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
|
|
936
936
|
}
|
|
937
937
|
function gt(e, t, n) {
|
|
938
938
|
let r = Z(e, t, !1);
|
|
939
|
-
return r ? (r[t] = parseInt(n), pn(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & R.obflag_created && !(e.obflag & R.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (
|
|
939
|
+
return r ? (r[t] = parseInt(n), pn(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & R.obflag_created && !(e.obflag & R.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (qt(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
|
|
940
940
|
}
|
|
941
941
|
function dt(e, t, n) {
|
|
942
942
|
let r = Z(e, t, !1);
|
|
943
|
-
return r ? (r[t] = String(n), pn(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & R.obflag_created && !(e.obflag & R.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (
|
|
943
|
+
return r ? (r[t] = String(n), pn(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & R.obflag_created && !(e.obflag & R.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (qt(`${Ve(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
|
|
944
944
|
}
|
|
945
945
|
function bt(e, t) {
|
|
946
|
-
if (Ye(e)) return
|
|
946
|
+
if (Ye(e)) return qt("gobj NULL or DESTROYED"), null;
|
|
947
947
|
if (e.current_state.state_name === t) return !1;
|
|
948
948
|
let r = re(e.gclass, t);
|
|
949
|
-
if (!r) return
|
|
949
|
+
if (!r) return qt(`${Ve(e)}: state unknown, state ${t}`), !1;
|
|
950
950
|
e.last_state = e.current_state, e.current_state = r;
|
|
951
|
-
let o = J(e, "EV_STATE_CHANGED"),
|
|
951
|
+
let o = J(e, "EV_STATE_CHANGED"), i = !!function(e) {
|
|
952
952
|
return W(e) & P.TRACE_STATES;
|
|
953
953
|
}(e);
|
|
954
|
-
return (o ||
|
|
954
|
+
return (o || i) && (1 === C || L(n("🔀🔀 mach(%s%s^%s), new st(%s), prev st(%s)", e.running ? "" : "!!", Ge(e), Fe(e), pt(e), e.last_state.state_name))), !0;
|
|
955
955
|
}
|
|
956
956
|
function pt(e) {
|
|
957
|
-
return vn(e) ? e.current_state.state_name : (
|
|
957
|
+
return vn(e) ? e.current_state.state_name : (qt("hgobj NULL"), "");
|
|
958
958
|
}
|
|
959
959
|
function mt(e, t, n) {
|
|
960
|
-
if (!vn(e)) return
|
|
960
|
+
if (!vn(e)) return qt("gobj NULL of bad type"), null;
|
|
961
961
|
let r = ae(e.gclass, t);
|
|
962
962
|
if (r) return r;
|
|
963
963
|
if (n) {
|
|
@@ -987,19 +987,19 @@ var gobjJs = function(e) {
|
|
|
987
987
|
return ht.length > 0 && !yt && (yt = !0, setTimeout(jt, 0)), t;
|
|
988
988
|
}
|
|
989
989
|
function vt(e, t, r, o) {
|
|
990
|
-
if (!(e && e instanceof O)) return
|
|
991
|
-
if (e.obflag & (R.obflag_destroyed | R.obflag_destroying)) return
|
|
992
|
-
let
|
|
993
|
-
if (!
|
|
994
|
-
let
|
|
990
|
+
if (!(e && e instanceof O)) return qt("gobj dst NULL"), -1;
|
|
991
|
+
if (e.obflag & (R.obflag_destroyed | R.obflag_destroying)) return qt("gobj dst DESTROYED"), -1;
|
|
992
|
+
let i = e.current_state;
|
|
993
|
+
if (!i) return qt(`${Ve(e)}: current_state NULL`), -1;
|
|
994
|
+
let l = J(e, t) && !H(o, t);
|
|
995
995
|
E++;
|
|
996
|
-
let s = oe(
|
|
997
|
-
if (!s) return e.gclass.gmt.mt_inject_event ? (E--,
|
|
998
|
-
if (
|
|
999
|
-
if (1 === C) L(n("🔄 %s %s%s %s from %s%s", t || "", e.running ? "" : "!!", Ve(e),
|
|
996
|
+
let s = oe(i, t);
|
|
997
|
+
if (!s) return e.gclass.gmt.mt_inject_event ? (E--, l && (L(1 === C ? n("🔜 %s %s%s %s", t || "", e.running ? "" : "!!", Ve(e), i.state_name) : n("🔃 mach(%s%s), st: %s, ev: %s, from(%s%s)", e.running ? "" : "!!", Ve(e), i.state_name, t || "", o && !o.running ? "!!" : "", Ve(o))), r && l > 1 && gn(r) && Zt(r)), e.gclass.gmt.mt_inject_event(e, t, r, o)) : (l && L(n("📛 mach(%s%s^%s), st: %s, ev: %s, 📛📛ERROR Event NOT DEFINED in state📛📛, from(%s%s^%s)", e.running ? "" : "!!", Ge(e), Fe(e), i.state_name, t || "", o && !o.running ? "!!" : "", Ge(o), Fe(o))), qt(`📛📛 Event NOT DEFINED in state 📛📛: ${Ve(e)}, ${i.state_name}, ${t}`), E--, -1);
|
|
998
|
+
if (l) {
|
|
999
|
+
if (1 === C) L(n("🔄 %s %s%s %s from %s%s", t || "", e.running ? "" : "!!", Ve(e), i.state_name, o && !o.running ? "!!" : "", Ve(o)));
|
|
1000
1000
|
else {
|
|
1001
1001
|
let r = "";
|
|
1002
|
-
s.action && (r = fr(s.action)), L(n("🔄 mach(%s%s^%s), st: %s, ev: %s%s%s, ac: %s, from(%s%s^%s)", e.running ? "" : "!!", Ge(e), Fe(e),
|
|
1002
|
+
s.action && (r = fr(s.action)), L(n("🔄 mach(%s%s^%s), st: %s, ev: %s%s%s, ac: %s, from(%s%s^%s)", e.running ? "" : "!!", Ge(e), Fe(e), i.state_name, "", t || "", "", r, o && !o.running ? "!!" : "", Ge(o), Fe(o)));
|
|
1003
1003
|
}
|
|
1004
1004
|
r && (W(e) | x()) & P.TRACE_EV_KW && gn(r) && Zt(r);
|
|
1005
1005
|
}
|
|
@@ -1008,7 +1008,7 @@ var gobjJs = function(e) {
|
|
|
1008
1008
|
try {
|
|
1009
1009
|
s.action && (_ = s.action(e, t, r, o));
|
|
1010
1010
|
} finally {}
|
|
1011
|
-
return !
|
|
1011
|
+
return !l || 1 === C || e.obflag & R.obflag_destroyed || L(n("<- mach(%s%s^%s), st: %s, ev: %s, ret: %d", e.running ? "" : "!!", Ge(e), Fe(e), e.current_state.state_name, t || "", Tn(_) ? _ : 0)), E--, _;
|
|
1012
1012
|
}
|
|
1013
1013
|
var St = Object.freeze({
|
|
1014
1014
|
__hard_subscription__: 1,
|
|
@@ -1027,14 +1027,14 @@ var gobjJs = function(e) {
|
|
|
1027
1027
|
j()
|
|
1028
1028
|
];
|
|
1029
1029
|
function Nt(e, t, n, r, o) {
|
|
1030
|
-
let
|
|
1031
|
-
if (t && t !== Pn(null, e, "publisher", null) && (a = !1), o && o !== Pn(null, e, "subscriber", null) && (a = !1), n && n !== Ln(null, e, "event", "") && (a = !1), bn(
|
|
1030
|
+
let i = Un(t, r, "__config__", null), l = Un(t, r, "__global__", null), s = Un(t, r, "__local__", null), _ = Fn(t, r, "__filter__", null), a = !0;
|
|
1031
|
+
if (t && t !== Pn(null, e, "publisher", null) && (a = !1), o && o !== Pn(null, e, "subscriber", null) && (a = !1), n && n !== Ln(null, e, "event", "") && (a = !1), bn(i) > 0) {
|
|
1032
1032
|
let t = Un(null, e, "__config__", null);
|
|
1033
|
-
bn(t) > 0 && tn(t,
|
|
1033
|
+
bn(t) > 0 && tn(t, i) || (a = !1);
|
|
1034
1034
|
}
|
|
1035
|
-
if (bn(
|
|
1035
|
+
if (bn(l) > 0) {
|
|
1036
1036
|
let t = Un(null, e, "__global__", null);
|
|
1037
|
-
bn(t) > 0 && tn(t,
|
|
1037
|
+
bn(t) > 0 && tn(t, l) || (a = !1);
|
|
1038
1038
|
}
|
|
1039
1039
|
if (bn(s) > 0) {
|
|
1040
1040
|
let t = Un(null, e, "__local__", null);
|
|
@@ -1047,28 +1047,28 @@ var gobjJs = function(e) {
|
|
|
1047
1047
|
return a;
|
|
1048
1048
|
}
|
|
1049
1049
|
function wt(e, t, n, r, o) {
|
|
1050
|
-
let
|
|
1051
|
-
for (let
|
|
1052
|
-
let s = e[
|
|
1053
|
-
Nt(s, t, n, r, o) && un(
|
|
1050
|
+
let i = [];
|
|
1051
|
+
for (let l = 0; l < e.length; l++) {
|
|
1052
|
+
let s = e[l];
|
|
1053
|
+
Nt(s, t, n, r, o) && un(i, s);
|
|
1054
1054
|
}
|
|
1055
|
-
return
|
|
1055
|
+
return i;
|
|
1056
1056
|
}
|
|
1057
1057
|
function Rt(e, t, n, r, o) {
|
|
1058
|
-
for (let
|
|
1058
|
+
for (let i = 0; i < e.length; i++) if (Nt(e[i], t, n, r, o)) return i;
|
|
1059
1059
|
return -1;
|
|
1060
1060
|
}
|
|
1061
1061
|
function Dt(e, t, r, o) {
|
|
1062
|
-
let
|
|
1062
|
+
let i = Pn(e, t, "publisher", null, Lt.KW_REQUIRED), l = Pn(e, t, "subscriber", null, Lt.KW_REQUIRED), s = Ln(e, t, "event", "", Lt.KW_REQUIRED);
|
|
1063
1063
|
if (!!(Cn(e, t, "subs_flag", null, Lt.KW_REQUIRED) & St.__hard_subscription__) && !r) return -1;
|
|
1064
|
-
p && st(p, "trace_subscriptions") && (L(n("💜💜👎 unsubscribing event '%s': publisher %s, subscriber'%s'", s || "", Ve(
|
|
1065
|
-
let _ = Rt(
|
|
1066
|
-
return _ >= 0 ? fn(
|
|
1064
|
+
p && st(p, "trace_subscriptions") && (L(n("💜💜👎 unsubscribing event '%s': publisher %s, subscriber'%s'", s || "", Ve(i), Ve(l))), Zt(t)), i.obflag & R.obflag_destroyed || o || i.gclass.gmt.mt_subscription_deleted && i.gclass.gmt.mt_subscription_deleted(i, t);
|
|
1065
|
+
let _ = Rt(i.dl_subscriptions, i, s, t, l);
|
|
1066
|
+
return _ >= 0 ? fn(i.dl_subscriptions, _) : (qt(`${Ve(e)}: subscription in publisher not found`), Zt(t)), _ = Rt(l.dl_subscribings, i, s, t, l), _ >= 0 ? fn(l.dl_subscribings, _) : (qt(`${Ve(e)}: subscription in subscriber not found`), Zt(t)), 0;
|
|
1067
1067
|
}
|
|
1068
1068
|
function At(e, t, r, o) {
|
|
1069
|
-
if (null == r && (r = {}), !e) return
|
|
1070
|
-
if (!o) return
|
|
1071
|
-
const
|
|
1069
|
+
if (null == r && (r = {}), !e) return qt(`publisher NULL: ev ${t}`), 0;
|
|
1070
|
+
if (!o) return qt(`subscriber NULL: ev ${t}`), 0;
|
|
1071
|
+
const i = /* @__PURE__ */ new Set([
|
|
1072
1072
|
"__config__",
|
|
1073
1073
|
"__global__",
|
|
1074
1074
|
"__local__",
|
|
@@ -1076,33 +1076,33 @@ var gobjJs = function(e) {
|
|
|
1076
1076
|
"__service__"
|
|
1077
1077
|
]);
|
|
1078
1078
|
if (Object.keys(r).forEach((n) => {
|
|
1079
|
-
|
|
1079
|
+
i.has(n) || qt(`${Ve(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
|
|
1080
1080
|
}), Sn(t)) t = "";
|
|
1081
|
-
else if (!(Tt(e, t, D.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & N.gcflag_no_check_output_events)) return
|
|
1082
|
-
let
|
|
1083
|
-
dn(
|
|
1081
|
+
else if (!(Tt(e, t, D.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & N.gcflag_no_check_output_events)) return qt(`event NOT in output event list: ${Ve(e)}, ${t}`), 0;
|
|
1082
|
+
let l = wt(e.dl_subscriptions, e, t, r, o);
|
|
1083
|
+
dn(l) > 0 && (qt(`${Ve(e)}: ${dn(l)} subscription(s) REPEATED, will be deleted and override`), Zt(l, "subscription REPEATED"), kt(e, l, !1));
|
|
1084
1084
|
let s = function(e, t, n, r) {
|
|
1085
|
-
let o =
|
|
1085
|
+
let o = q(e, Ot);
|
|
1086
1086
|
an(o, "event", t), an(o, "subscriber", r), an(o, "publisher", e);
|
|
1087
|
-
let
|
|
1087
|
+
let i = 0;
|
|
1088
1088
|
if (n) {
|
|
1089
|
-
let t = Un(e, n, "__config__", null), r = Un(e, n, "__global__", null),
|
|
1089
|
+
let t = Un(e, n, "__config__", null), r = Un(e, n, "__global__", null), l = Un(e, n, "__local__", null), s = Fn(e, n, "__filter__", null), _ = Ln(e, n, "__service__", "");
|
|
1090
1090
|
if (bn(r) > 0 && an(o, "__global__", en(r)), bn(t) > 0) {
|
|
1091
1091
|
let n = en(t);
|
|
1092
1092
|
if (an(o, "__config__", n), An(n, "__hard_subscription__")) {
|
|
1093
1093
|
let t = $n(e, n, "__hard_subscription__", !1);
|
|
1094
|
-
sn(n, "__hard_subscription__"), t && (
|
|
1094
|
+
sn(n, "__hard_subscription__"), t && (i |= St.__hard_subscription__);
|
|
1095
1095
|
}
|
|
1096
1096
|
if (An(n, "__own_event__")) {
|
|
1097
1097
|
let t = $n(e, n, "__own_event__", !1);
|
|
1098
|
-
sn(n, "__own_event__"), t && (
|
|
1098
|
+
sn(n, "__own_event__"), t && (i |= St.__own_event__);
|
|
1099
1099
|
}
|
|
1100
1100
|
}
|
|
1101
|
-
bn(
|
|
1101
|
+
bn(l) > 0 && an(o, "__local__", en(l)), bn(s) > 0 && an(o, "__filter__", en(s)), Sn(_) || an(o, "__service__", _);
|
|
1102
1102
|
}
|
|
1103
|
-
return an(o, "subs_flag",
|
|
1103
|
+
return an(o, "subs_flag", i), o;
|
|
1104
1104
|
}(e, t, r, o);
|
|
1105
|
-
if (!s) return
|
|
1105
|
+
if (!s) return qt(`${Ve(e)}: _create_subscription() FAILED`), 0;
|
|
1106
1106
|
if (un(e.dl_subscriptions, s), un(o.dl_subscribings, s), p && st(p, "trace_subscriptions") && (L(n("💜💜👍 subscribing event '%s', publisher '%s', subscriber %s", t || "", Ve(e), Ve(o))), r && Zt(r)), e.gclass.gmt.mt_subscription_added) {
|
|
1107
1107
|
let t = e.gclass.gmt.mt_subscription_added(e, s);
|
|
1108
1108
|
(t < 0 || !1 === t) && (Dt(e, s, !0, !0), s = 0);
|
|
@@ -1121,18 +1121,18 @@ var gobjJs = function(e) {
|
|
|
1121
1121
|
return wt(e.dl_subscribings, r, t, n, e);
|
|
1122
1122
|
}
|
|
1123
1123
|
function Ct(e, t, r) {
|
|
1124
|
-
if (pn(r) || (r = {}), !e || e.obflag & (R.obflag_destroyed | R.obflag_destroying)) return
|
|
1125
|
-
if (Sn(t)) return
|
|
1124
|
+
if (pn(r) || (r = {}), !e || e.obflag & (R.obflag_destroyed | R.obflag_destroying)) return qt("gobj NULL or DESTROYED"), -1;
|
|
1125
|
+
if (Sn(t)) return qt(`${Ve(e)}: event EMPTY`), -1;
|
|
1126
1126
|
let o = mt(e, t, !0);
|
|
1127
|
-
if (!(o && o.event_flag & (D.EVF_SYSTEM_EVENT | D.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & N.gcflag_no_check_output_events)) return
|
|
1128
|
-
let
|
|
1129
|
-
if (
|
|
1127
|
+
if (!(o && o.event_flag & (D.EVF_SYSTEM_EVENT | D.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & N.gcflag_no_check_output_events)) return qt(`event NOT in output event list: ${Ve(e)}, ev ${t}`), -1;
|
|
1128
|
+
let i = p && st(p, "trace_subscriptions");
|
|
1129
|
+
if (i && (L(1 === C ? n("🔝🔝 %s %s%s %s", t || "", e.running ? "" : "!!", Ve(e), e.current_state.state_name) : n("🔝🔝 mach(%s%s^%s), st: %s, ev: %s%s%s", e.running ? "" : "!!", Ge(e), Fe(e), e.current_state.state_name, "", t || "", "")), gn(r) && Zt(r)), e.gclass.gmt.mt_publish_event) {
|
|
1130
1130
|
let n = e.gclass.gmt.mt_publish_event(e, t, r);
|
|
1131
1131
|
if (n <= 0) return n;
|
|
1132
1132
|
}
|
|
1133
|
-
let
|
|
1134
|
-
for (let o = 0; o <
|
|
1135
|
-
let a =
|
|
1133
|
+
let l = [...e.dl_subscriptions], s = 0, _ = 0;
|
|
1134
|
+
for (let o = 0; o < l.length; o++) {
|
|
1135
|
+
let a = l[o];
|
|
1136
1136
|
if (e.gclass.gmt.mt_publication_pre_filter) {
|
|
1137
1137
|
let n = e.gclass.gmt.mt_publication_pre_filter(e, a, t, r);
|
|
1138
1138
|
if (n < 0) break;
|
|
@@ -1143,12 +1143,12 @@ var gobjJs = function(e) {
|
|
|
1143
1143
|
let c = Cn(e, a, "subs_flag", 0, Lt.KW_REQUIRED), f = Ln(e, a, "event", "", Lt.KW_REQUIRED);
|
|
1144
1144
|
if (Sn(f) || 0 === wn(f, t)) {
|
|
1145
1145
|
Un(e, a, "__config__", null, 0);
|
|
1146
|
-
let o = Un(e, a, "__global__", null, 0),
|
|
1147
|
-
if (e.gclass.gmt.mt_publication_filter ? d = e.gclass.gmt.mt_publication_filter(e, t, g, u) : bn(f) > 0 && (d = Wn(g, f) ? 1 : 0,
|
|
1146
|
+
let o = Un(e, a, "__global__", null, 0), l = Un(e, a, "__local__", null, 0), f = Fn(e, a, "__filter__", null, 0), g = r, d = 1;
|
|
1147
|
+
if (e.gclass.gmt.mt_publication_filter ? d = e.gclass.gmt.mt_publication_filter(e, t, g, u) : bn(f) > 0 && (d = Wn(g, f) ? 1 : 0, i && (L(n("💜💜🔄%s publishing with filter, event '%s', subscriber'%s', publisher %s", d ? "👍" : "👎", t || "", Ve(u), Ve(e))), Zt(f))), d < 0) break;
|
|
1148
1148
|
if (!d) continue;
|
|
1149
1149
|
let b = mt(u, t, !0);
|
|
1150
1150
|
if (b && b.event_flag & D.EVF_SYSTEM_EVENT && !Et(u, b.event_name, 0)) continue;
|
|
1151
|
-
|
|
1151
|
+
l && Dn(g, l), o && nn(g, o), i && (L(1 === C ? n("🔝🔄 %s (%s) %s%s", t || "", t || "", u.running ? "" : "!!", Ve(u)) : n("🔝🔄 mach(%s%s), st: %s, ev: %s, from(%s%s)", u.running ? "" : "!!", Ve(u), pt(u), t || "", e && !e.running ? "!!" : "", Ve(e))), gn(g) && Zt(g));
|
|
1152
1152
|
let p = vt(u, t, g, e);
|
|
1153
1153
|
if (p < 0 && c & St.__own_event__) {
|
|
1154
1154
|
s = -1;
|
|
@@ -1205,7 +1205,7 @@ var gobjJs = function(e) {
|
|
|
1205
1205
|
function Jt(e) {
|
|
1206
1206
|
e ? (Ut = e, Ft = e) : (Ut = Pt.error, Ft = Pt.warn);
|
|
1207
1207
|
}
|
|
1208
|
-
function
|
|
1208
|
+
function Ht(e) {
|
|
1209
1209
|
const t = Array.prototype.slice.call(arguments);
|
|
1210
1210
|
let n = "";
|
|
1211
1211
|
if ("string" == typeof e) {
|
|
@@ -1227,20 +1227,20 @@ var gobjJs = function(e) {
|
|
|
1227
1227
|
} else n = t.map((e) => "object" == typeof e ? JSON.stringify(e) : String(e)).join(" ");
|
|
1228
1228
|
return n;
|
|
1229
1229
|
}
|
|
1230
|
-
function
|
|
1231
|
-
let t =
|
|
1230
|
+
function qt(e) {
|
|
1231
|
+
let t = Ht(e), n = ar();
|
|
1232
1232
|
Ut && (Ut === Pt.error ? xt("error", t) && Ut("%c" + n + " ERROR: " + String(t), "color:red") : (xt("error", t) && Pt.error("%c" + n + " ERROR: " + String(t), "color:red"), Ut(`${n} ERROR: ${String(t)}`))), Bt("error", t, n);
|
|
1233
1233
|
}
|
|
1234
1234
|
function zt(e) {
|
|
1235
|
-
let t =
|
|
1235
|
+
let t = Ht(e), n = ar();
|
|
1236
1236
|
Ft && (Ft === Pt.warn ? xt("warning", t) && Ft("%c" + n + " WARNING: " + String(t), "color:yellow") : (xt("warning", t) && Pt.warn("%c" + n + " WARNING: " + String(t), "color:yellow"), Ft(`${n} WARNING: ${String(t)}`))), Bt("warning", t, n);
|
|
1237
1237
|
}
|
|
1238
1238
|
function Qt(e) {
|
|
1239
|
-
let t =
|
|
1239
|
+
let t = Ht(e), n = ar();
|
|
1240
1240
|
Vt && xt("debug", t) && Vt("%c" + n + " DEBUG: " + String(t), "color:silver"), Bt("debug", t, n);
|
|
1241
1241
|
}
|
|
1242
1242
|
function Xt(e) {
|
|
1243
|
-
let t =
|
|
1243
|
+
let t = Ht(e), n = ar();
|
|
1244
1244
|
Vt && xt("msg", t) && Vt("%c" + n + " MSG: " + String(t), "color:cyan"), Bt("msg", t, n);
|
|
1245
1245
|
}
|
|
1246
1246
|
function Zt(e, t) {
|
|
@@ -1373,16 +1373,16 @@ var gobjJs = function(e) {
|
|
|
1373
1373
|
return !(!(t in e) || !e.hasOwnProperty(t));
|
|
1374
1374
|
}
|
|
1375
1375
|
function kn(e, t, n, r) {
|
|
1376
|
-
if (e && !vn(e) &&
|
|
1377
|
-
if (!En(n)) return
|
|
1376
|
+
if (e && !vn(e) && qt("GObj bad instanceof"), !pn(t) && !mn(t)) return qt(`${Ve(e)}: kw must be list or dict`), 0;
|
|
1377
|
+
if (!En(n)) return qt(`${Ve(e)}: path must be a string: ${String(n)}`), 0;
|
|
1378
1378
|
let o = n.split("`");
|
|
1379
1379
|
if (o.length <= 1) return t[n];
|
|
1380
|
-
let
|
|
1381
|
-
for (let
|
|
1380
|
+
let i = o.length;
|
|
1381
|
+
for (let l = 0; l < i; l++) if (void 0 === (t = t[o[l]])) return void (r && qt(`${Ve(e)}: path not found: ${String(n)}`));
|
|
1382
1382
|
return t;
|
|
1383
1383
|
}
|
|
1384
1384
|
function In(e, t, n) {
|
|
1385
|
-
e && !vn(e) &&
|
|
1385
|
+
e && !vn(e) && qt("GObj bad instanceof");
|
|
1386
1386
|
let [r, o] = function(e, t) {
|
|
1387
1387
|
let n = e.lastIndexOf(t);
|
|
1388
1388
|
return -1 === n ? [e, ""] : [e.substring(0, n), e.substring(n + 1)];
|
|
@@ -1390,144 +1390,144 @@ var gobjJs = function(e) {
|
|
|
1390
1390
|
return Sn(o) ? sn(t, n) : sn(kn(e, t, r, !0), o), 0;
|
|
1391
1391
|
}
|
|
1392
1392
|
function $n(e, t, n, r, o) {
|
|
1393
|
-
e && !vn(e) &&
|
|
1394
|
-
let
|
|
1395
|
-
const
|
|
1396
|
-
if (void 0 ===
|
|
1393
|
+
e && !vn(e) && qt("GObj bad instanceof");
|
|
1394
|
+
let i = kn(e, t, n, !1);
|
|
1395
|
+
const l = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
|
|
1396
|
+
if (void 0 === i) {
|
|
1397
1397
|
if (s) {
|
|
1398
1398
|
let o = Boolean(r);
|
|
1399
1399
|
return Gn(e, t, n, o), o;
|
|
1400
1400
|
}
|
|
1401
|
-
return
|
|
1401
|
+
return l && (qt(`path not found: '${n}'`), Zt(t)), Boolean(r);
|
|
1402
1402
|
}
|
|
1403
|
-
return _ && In(e, t, n), Boolean(
|
|
1403
|
+
return _ && In(e, t, n), Boolean(i);
|
|
1404
1404
|
}
|
|
1405
1405
|
function Cn(e, t, n, r, o) {
|
|
1406
|
-
e && !vn(e) &&
|
|
1407
|
-
let
|
|
1408
|
-
const
|
|
1409
|
-
if (void 0 ===
|
|
1406
|
+
e && !vn(e) && qt("GObj bad instanceof");
|
|
1407
|
+
let i = kn(e, t, n, !1);
|
|
1408
|
+
const l = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
|
|
1409
|
+
if (void 0 === i) {
|
|
1410
1410
|
if (s) {
|
|
1411
1411
|
let o = parseInt(r);
|
|
1412
1412
|
return Gn(e, t, n, o), o;
|
|
1413
1413
|
}
|
|
1414
|
-
return
|
|
1414
|
+
return l && (qt(`path not found: '${n}'`), Zt(t)), parseInt(r);
|
|
1415
1415
|
}
|
|
1416
|
-
return _ && In(e, t, n), Tn(
|
|
1416
|
+
return _ && In(e, t, n), Tn(i) ? parseInt(i) : (l && (qt(`path value MUST BE a number: ${n}`), Xt(t)), parseInt(r));
|
|
1417
1417
|
}
|
|
1418
1418
|
function Ln(e, t, n, r, o) {
|
|
1419
|
-
e && !vn(e) &&
|
|
1420
|
-
let
|
|
1421
|
-
const
|
|
1422
|
-
if (void 0 ===
|
|
1419
|
+
e && !vn(e) && qt("GObj bad instanceof");
|
|
1420
|
+
let i = kn(e, t, n, !1);
|
|
1421
|
+
const l = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
|
|
1422
|
+
if (void 0 === i) {
|
|
1423
1423
|
if (s) {
|
|
1424
1424
|
let o = String(r);
|
|
1425
1425
|
return Gn(e, t, n, o), o;
|
|
1426
1426
|
}
|
|
1427
|
-
return
|
|
1427
|
+
return l && (qt(`path not found: '${n}'`), Zt(t)), String(r);
|
|
1428
1428
|
}
|
|
1429
|
-
return _ && In(e, t, n), En(
|
|
1429
|
+
return _ && In(e, t, n), En(i) ? String(i) : (l && (qt(`${Ve(e)}: path value MUST BE a string: ${n}`), Xt(t)), String(r));
|
|
1430
1430
|
}
|
|
1431
1431
|
function Pn(e, t, n, r, o) {
|
|
1432
|
-
e && !vn(e) &&
|
|
1433
|
-
let
|
|
1434
|
-
const
|
|
1435
|
-
if (void 0 ===
|
|
1432
|
+
e && !vn(e) && qt("GObj bad instanceof");
|
|
1433
|
+
let i = kn(e, t, n, !1);
|
|
1434
|
+
const l = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
|
|
1435
|
+
if (void 0 === i) {
|
|
1436
1436
|
if (s) {
|
|
1437
1437
|
let o = r;
|
|
1438
1438
|
return Gn(e, t, n, o), o;
|
|
1439
1439
|
}
|
|
1440
|
-
return
|
|
1440
|
+
return l && (qt(`path not found: '${n}'`), Zt(t)), r;
|
|
1441
1441
|
}
|
|
1442
|
-
return _ && In(e, t, n),
|
|
1442
|
+
return _ && In(e, t, n), i;
|
|
1443
1443
|
}
|
|
1444
1444
|
function Un(e, t, n, r, o) {
|
|
1445
|
-
e && !vn(e) &&
|
|
1446
|
-
let
|
|
1447
|
-
const
|
|
1448
|
-
if (void 0 ===
|
|
1445
|
+
e && !vn(e) && qt("GObj bad instanceof");
|
|
1446
|
+
let i = kn(e, t, n, !1);
|
|
1447
|
+
const l = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
|
|
1448
|
+
if (void 0 === i) {
|
|
1449
1449
|
if (s) {
|
|
1450
1450
|
let o = Object(r);
|
|
1451
1451
|
return Gn(e, t, n, o), o;
|
|
1452
1452
|
}
|
|
1453
|
-
return
|
|
1453
|
+
return l && (qt(`path not found: '${n}'`), Zt(t)), Object(r);
|
|
1454
1454
|
}
|
|
1455
|
-
return _ && In(e, t, n), pn(
|
|
1455
|
+
return _ && In(e, t, n), pn(i) ? Object(i) : (l && (qt(`path value MUST BE a dict: ${n}`), Xt(t)), Object(r));
|
|
1456
1456
|
}
|
|
1457
1457
|
function Fn(e, t, n, r, o) {
|
|
1458
|
-
e && !vn(e) &&
|
|
1459
|
-
let
|
|
1460
|
-
const
|
|
1461
|
-
if (void 0 ===
|
|
1458
|
+
e && !vn(e) && qt("GObj bad instanceof");
|
|
1459
|
+
let i = kn(e, t, n, !1);
|
|
1460
|
+
const l = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
|
|
1461
|
+
if (void 0 === i) {
|
|
1462
1462
|
if (s) {
|
|
1463
1463
|
let o = r;
|
|
1464
1464
|
return Gn(e, t, n, o), o;
|
|
1465
1465
|
}
|
|
1466
|
-
return
|
|
1466
|
+
return l && (qt(`path not found: '${n}'`), Zt(t)), r;
|
|
1467
1467
|
}
|
|
1468
|
-
return _ && In(e, t, n),
|
|
1468
|
+
return _ && In(e, t, n), i;
|
|
1469
1469
|
}
|
|
1470
1470
|
function Gn(e, t, n, r) {
|
|
1471
|
-
if (e && !vn(e) &&
|
|
1471
|
+
if (e && !vn(e) && qt("GObj bad instanceof"), !pn(t)) return qt("kw is not an object"), -1;
|
|
1472
1472
|
let o = n.split("`");
|
|
1473
1473
|
if (o.length <= 1) return t[n] = r, 0;
|
|
1474
|
-
let
|
|
1475
|
-
for (let e = 0; e <
|
|
1474
|
+
let i = o.length;
|
|
1475
|
+
for (let e = 0; e < i; e++) {
|
|
1476
1476
|
let n = o[e];
|
|
1477
|
-
e ===
|
|
1477
|
+
e === i - 1 ? t[n] = r : (void 0 === t[n] && (t[n] = {}), t = t[n]);
|
|
1478
1478
|
}
|
|
1479
1479
|
return 0;
|
|
1480
1480
|
}
|
|
1481
1481
|
function Vn(e, t, n, r, o) {
|
|
1482
|
-
if (e && !vn(e) &&
|
|
1483
|
-
let
|
|
1484
|
-
return pn(
|
|
1482
|
+
if (e && !vn(e) && qt("GObj bad instanceof"), !pn(t)) return qt("kw is not an object"), -1;
|
|
1483
|
+
let i = Un(e, t, n, {}, !0);
|
|
1484
|
+
return pn(i) ? (i[r] = o, 0) : (qt("subdict is not an object"), -1);
|
|
1485
1485
|
}
|
|
1486
1486
|
function Mn(e, t, r) {
|
|
1487
|
-
let o = "",
|
|
1487
|
+
let o = "", i = !1;
|
|
1488
1488
|
if (mn(t)) {
|
|
1489
|
-
|
|
1490
|
-
for (let
|
|
1491
|
-
let s = t[
|
|
1492
|
-
if (o = Sn(r) ? n("%s", r) : n("%s`%d", r,
|
|
1489
|
+
i = !1;
|
|
1490
|
+
for (let l = 0; l < t.length; l++) {
|
|
1491
|
+
let s = t[l];
|
|
1492
|
+
if (o = Sn(r) ? n("%s", r) : n("%s`%d", r, l), i = Mn(e, s, o), i) break;
|
|
1493
1493
|
}
|
|
1494
1494
|
} else if (pn(t)) {
|
|
1495
|
-
|
|
1496
|
-
let
|
|
1497
|
-
for (let s = 0; s <
|
|
1498
|
-
let _ =
|
|
1495
|
+
i = !0;
|
|
1496
|
+
let l = Object.keys(t);
|
|
1497
|
+
for (let s = 0; s < l.length; s++) {
|
|
1498
|
+
let _ = l[s], a = t[_];
|
|
1499
1499
|
if (o = Sn(r) ? n("%s", _) : n("%s`%s", r, _), mn(a) || pn(a)) {
|
|
1500
|
-
if (
|
|
1500
|
+
if (i = Mn(e, a, o), !i) break;
|
|
1501
1501
|
continue;
|
|
1502
1502
|
}
|
|
1503
1503
|
let u = Fn(0, e, o, 0, 0);
|
|
1504
1504
|
if (u || (u = ln(e, o)), !u) {
|
|
1505
|
-
|
|
1505
|
+
i = !1;
|
|
1506
1506
|
break;
|
|
1507
1507
|
}
|
|
1508
1508
|
if (0 !== Rn(u, a)) {
|
|
1509
|
-
|
|
1509
|
+
i = !1;
|
|
1510
1510
|
break;
|
|
1511
1511
|
}
|
|
1512
1512
|
}
|
|
1513
1513
|
}
|
|
1514
|
-
return
|
|
1514
|
+
return i;
|
|
1515
1515
|
}
|
|
1516
1516
|
function Wn(e, t) {
|
|
1517
1517
|
return 0 === bn(t) || Mn(e, t, "");
|
|
1518
1518
|
}
|
|
1519
1519
|
function Kn(e, t, n, r) {
|
|
1520
|
-
e && !vn(e) &&
|
|
1520
|
+
e && !vn(e) && qt("GObj bad instanceof");
|
|
1521
1521
|
let o = {};
|
|
1522
1522
|
if (En(n) && !Sn(n)) {
|
|
1523
|
-
let
|
|
1524
|
-
t.hasOwnProperty(
|
|
1525
|
-
} else if (pn(n) && gn(n) > 0) for (let
|
|
1523
|
+
let i = n;
|
|
1524
|
+
t.hasOwnProperty(i) ? o[i] = t[i] : r && qt(`${Ve(e)}: key not found: ${i}`);
|
|
1525
|
+
} else if (pn(n) && gn(n) > 0) for (let i of Object.keys(n)) t.hasOwnProperty(i) ? o[i] = t[i] : r && qt(`${Ve(e)}: key not found: ${i}`);
|
|
1526
1526
|
else {
|
|
1527
1527
|
if (!(mn(n) && dn(n) > 0)) return t;
|
|
1528
|
-
for (let
|
|
1529
|
-
let
|
|
1530
|
-
t.hasOwnProperty(
|
|
1528
|
+
for (let i = 0; i < n.length; i++) {
|
|
1529
|
+
let l = n[i];
|
|
1530
|
+
t.hasOwnProperty(l) ? o[l] = t[l] : r && qt(`${Ve(e)}: key not found: ${l}`);
|
|
1531
1531
|
}
|
|
1532
1532
|
}
|
|
1533
1533
|
return o;
|
|
@@ -1535,14 +1535,14 @@ var gobjJs = function(e) {
|
|
|
1535
1535
|
function xn(e, t, n, r) {
|
|
1536
1536
|
let o = {};
|
|
1537
1537
|
if (nn(o, t), En(n) && !Sn(n)) {
|
|
1538
|
-
let
|
|
1539
|
-
Fn(e, t,
|
|
1540
|
-
} else if (pn(n) && gn(n) > 0) for (let
|
|
1538
|
+
let i = n;
|
|
1539
|
+
Fn(e, t, i, 0, 0) ? sn(o, i) : r && qt(`${Ve(e)}: key not found: ${i}`);
|
|
1540
|
+
} else if (pn(n) && gn(n) > 0) for (let i of Object.keys(n)) t.hasOwnProperty(i) ? sn(o, i) : r && qt(`${Ve(e)}: key not found: ${i}`);
|
|
1541
1541
|
else {
|
|
1542
1542
|
if (!(mn(n) && dn(n) > 0)) return {};
|
|
1543
|
-
for (let
|
|
1544
|
-
let
|
|
1545
|
-
t.hasOwnProperty(
|
|
1543
|
+
for (let i = 0; i < n.length; i++) {
|
|
1544
|
+
let l = n[i];
|
|
1545
|
+
t.hasOwnProperty(l) ? sn(o, l) : r && qt(`${Ve(e)}: key not found: ${l}`);
|
|
1546
1546
|
}
|
|
1547
1547
|
}
|
|
1548
1548
|
return o;
|
|
@@ -1557,11 +1557,11 @@ var gobjJs = function(e) {
|
|
|
1557
1557
|
}
|
|
1558
1558
|
function Bn(e, t) {
|
|
1559
1559
|
if ("undefined" == typeof window || !window.localStorage) return 0;
|
|
1560
|
-
if (!e || void 0 === t) return
|
|
1560
|
+
if (!e || void 0 === t) return qt(`kw_set_local_storage_value(): invalid key or value: key=${e}`), -1;
|
|
1561
1561
|
try {
|
|
1562
1562
|
return window.localStorage.setItem(e, JSON.stringify(t)), 0;
|
|
1563
1563
|
} catch (t) {
|
|
1564
|
-
return
|
|
1564
|
+
return qt(`kw_set_local_storage_value(): cannot save "${e}" (storage full or blocked?): ${t && t.message ? t.message : t}`), -1;
|
|
1565
1565
|
}
|
|
1566
1566
|
}
|
|
1567
1567
|
function Jn(e) {
|
|
@@ -1572,7 +1572,7 @@ var gobjJs = function(e) {
|
|
|
1572
1572
|
}
|
|
1573
1573
|
else window.console.warn(`Invalid key for localStorage removal: ${e}`);
|
|
1574
1574
|
}
|
|
1575
|
-
function
|
|
1575
|
+
function Hn(e, t) {
|
|
1576
1576
|
if (yn(e) || yn(t)) return !0;
|
|
1577
1577
|
if (mn(e)) {
|
|
1578
1578
|
if (0 === e.length) return !0;
|
|
@@ -1583,27 +1583,27 @@ var gobjJs = function(e) {
|
|
|
1583
1583
|
} else if (En(e) && e === t) return !0;
|
|
1584
1584
|
return !1;
|
|
1585
1585
|
}
|
|
1586
|
-
function
|
|
1587
|
-
if (e && !vn(e) &&
|
|
1586
|
+
function qn(e, t, n, r, o) {
|
|
1587
|
+
if (e && !vn(e) && qt("GObj bad instanceof"), !t) return null;
|
|
1588
1588
|
o || (o = Wn);
|
|
1589
|
-
let
|
|
1590
|
-
if (mn(t)) for (let
|
|
1591
|
-
let s, _ = t[
|
|
1589
|
+
let i = [];
|
|
1590
|
+
if (mn(t)) for (let l = 0; l < t.length; l++) {
|
|
1591
|
+
let s, _ = t[l];
|
|
1592
1592
|
if (pn(_)) s = Ln(e, _, "id", "", 0);
|
|
1593
1593
|
else {
|
|
1594
1594
|
if (!En(_)) continue;
|
|
1595
1595
|
s = _;
|
|
1596
1596
|
}
|
|
1597
|
-
|
|
1597
|
+
Hn(n, s) && o(_, r) && i.push(_);
|
|
1598
1598
|
}
|
|
1599
1599
|
else {
|
|
1600
|
-
if (!pn(t)) return
|
|
1600
|
+
if (!pn(t)) return qt("kw_collect() BAD kw parameter"), null;
|
|
1601
1601
|
for (let e of Object.keys(t)) {
|
|
1602
|
-
let
|
|
1603
|
-
|
|
1602
|
+
let l = t[e];
|
|
1603
|
+
Hn(n, e) && o(l, r) && i.push(l);
|
|
1604
1604
|
}
|
|
1605
1605
|
}
|
|
1606
|
-
return
|
|
1606
|
+
return i;
|
|
1607
1607
|
}
|
|
1608
1608
|
function zn(e, t) {
|
|
1609
1609
|
if (!e) return -1;
|
|
@@ -1611,7 +1611,7 @@ var gobjJs = function(e) {
|
|
|
1611
1611
|
return -1;
|
|
1612
1612
|
}
|
|
1613
1613
|
function Qn(e, t, n) {
|
|
1614
|
-
if (!e || !t) return
|
|
1614
|
+
if (!e || !t) return qt("ERROR: str_in_list() list or str empty"), !1;
|
|
1615
1615
|
let r = e.length;
|
|
1616
1616
|
if (n) {
|
|
1617
1617
|
t = t.toLowerCase();
|
|
@@ -1635,21 +1635,21 @@ var gobjJs = function(e) {
|
|
|
1635
1635
|
r || (r = {}, e.__md_iev__ = r), r[t] = n;
|
|
1636
1636
|
}
|
|
1637
1637
|
function er(e, t, n, r) {
|
|
1638
|
-
if (!vn(e)) return
|
|
1638
|
+
if (!vn(e)) return qt("gobj is not a GObj"), null;
|
|
1639
1639
|
if (!t) return;
|
|
1640
1640
|
let o = Xn(t, n);
|
|
1641
1641
|
o || (o = [], Zn(t, n, o));
|
|
1642
1642
|
try {
|
|
1643
1643
|
mn(o) && o.unshift(r);
|
|
1644
1644
|
} catch (e) {
|
|
1645
|
-
|
|
1645
|
+
qt(e);
|
|
1646
1646
|
}
|
|
1647
1647
|
}
|
|
1648
1648
|
function tr(e, t, n, r) {
|
|
1649
|
-
if (!vn(e)) return
|
|
1650
|
-
if (!pn(t)) return
|
|
1649
|
+
if (!vn(e)) return qt("gobj is not a GObj"), null;
|
|
1650
|
+
if (!pn(t)) return qt("kw is not a dict"), null;
|
|
1651
1651
|
let o = Xn(t, n);
|
|
1652
|
-
return o ? 0 === o.length ? (r &&
|
|
1652
|
+
return o ? 0 === o.length ? (r && qt(`stack empty: ${n}`), null) : o[0] : (r && qt(`stack NOT FOUND: ${n}`), null);
|
|
1653
1653
|
}
|
|
1654
1654
|
function nr(e, t, n) {
|
|
1655
1655
|
return Sn(n) ? In(e, t, "__md_iev__`__msg_type__") : Vn(e, t, "__md_iev__", "__msg_type__", n), 0;
|
|
@@ -1670,23 +1670,23 @@ var gobjJs = function(e) {
|
|
|
1670
1670
|
]), pn(e[r]) && or(e[r], t, n), n = n.slice(0, -o.length);
|
|
1671
1671
|
}
|
|
1672
1672
|
}
|
|
1673
|
-
function
|
|
1673
|
+
function ir(e, t, n, r) {
|
|
1674
1674
|
if (!e) return null;
|
|
1675
|
-
let o,
|
|
1676
|
-
for (o = 0; o <
|
|
1677
|
-
let
|
|
1678
|
-
if (
|
|
1679
|
-
let e =
|
|
1680
|
-
if (e && e === n) return
|
|
1681
|
-
if (r && An(
|
|
1682
|
-
let e =
|
|
1675
|
+
let o, i = e.length;
|
|
1676
|
+
for (o = 0; o < i; o++) {
|
|
1677
|
+
let i = e[o];
|
|
1678
|
+
if (i) {
|
|
1679
|
+
let e = i.id;
|
|
1680
|
+
if (e && e === n) return i;
|
|
1681
|
+
if (r && An(i, t)) {
|
|
1682
|
+
let e = ir(i[t], t, n, r);
|
|
1683
1683
|
if (e) return e;
|
|
1684
1684
|
}
|
|
1685
1685
|
}
|
|
1686
1686
|
}
|
|
1687
1687
|
return null;
|
|
1688
1688
|
}
|
|
1689
|
-
function
|
|
1689
|
+
function lr(e) {
|
|
1690
1690
|
function t(e) {
|
|
1691
1691
|
let t = e.replace(/-/g, "+").replace(/_/g, "/");
|
|
1692
1692
|
switch (t.length % 4) {
|
|
@@ -1777,7 +1777,7 @@ var gobjJs = function(e) {
|
|
|
1777
1777
|
if (En(t)) {
|
|
1778
1778
|
if (-1 === t.indexOf("^")) {
|
|
1779
1779
|
let n, r, o = e.fkey;
|
|
1780
|
-
if (1 !== gn(o)) return
|
|
1780
|
+
if (1 !== gn(o)) return qt("bad fkey 1"), qt(e), qt(t), null;
|
|
1781
1781
|
for (const e of Object.keys(o)) {
|
|
1782
1782
|
n = e, r = o[e];
|
|
1783
1783
|
break;
|
|
@@ -1790,7 +1790,7 @@ var gobjJs = function(e) {
|
|
|
1790
1790
|
}
|
|
1791
1791
|
{
|
|
1792
1792
|
let n = t.split("^");
|
|
1793
|
-
return 3 !== n.length ? (
|
|
1793
|
+
return 3 !== n.length ? (qt("bad fkey 2"), qt(e), qt(t), null) : {
|
|
1794
1794
|
topic_name: n[0],
|
|
1795
1795
|
id: n[1],
|
|
1796
1796
|
hook_name: n[2]
|
|
@@ -1801,7 +1801,7 @@ var gobjJs = function(e) {
|
|
|
1801
1801
|
topic_name: t.topic_name,
|
|
1802
1802
|
id: t.id,
|
|
1803
1803
|
hook_name: t.hook_name
|
|
1804
|
-
} : (
|
|
1804
|
+
} : (qt("bad fkey 3"), qt(e), qt(t), null);
|
|
1805
1805
|
}
|
|
1806
1806
|
var hr = [
|
|
1807
1807
|
"string",
|
|
@@ -1867,7 +1867,8 @@ var gobjJs = function(e) {
|
|
|
1867
1867
|
default_value: e.default,
|
|
1868
1868
|
placeholder: e.placeholder,
|
|
1869
1869
|
fillspace: e.fillspace || 4,
|
|
1870
|
-
fkey: e.fkey || null
|
|
1870
|
+
fkey: e.fkey || null,
|
|
1871
|
+
is_file: !1
|
|
1871
1872
|
};
|
|
1872
1873
|
if (!e.flag) return t;
|
|
1873
1874
|
for (let n = 0; n < e.flag.length; n++) {
|
|
@@ -1880,7 +1881,10 @@ var gobjJs = function(e) {
|
|
|
1880
1881
|
case "template":
|
|
1881
1882
|
t.enum_list = e.template;
|
|
1882
1883
|
break;
|
|
1883
|
-
case "table":
|
|
1884
|
+
case "table":
|
|
1885
|
+
t.enum_list = e.table;
|
|
1886
|
+
break;
|
|
1887
|
+
case "file": t.is_file = !0;
|
|
1884
1888
|
}
|
|
1885
1889
|
t.type = r;
|
|
1886
1890
|
} else if (Qn(yr, r)) switch (r) {
|
|
@@ -1894,7 +1898,7 @@ var gobjJs = function(e) {
|
|
|
1894
1898
|
case "hidden": t.is_hidden = !0;
|
|
1895
1899
|
}
|
|
1896
1900
|
}
|
|
1897
|
-
return t;
|
|
1901
|
+
return t.is_file && (t.type = "file"), t;
|
|
1898
1902
|
}
|
|
1899
1903
|
var Sr = [
|
|
1900
1904
|
v(T.DTP_POINTER, "subscriber", 0, null, "Subscriber of output events"),
|
|
@@ -1907,10 +1911,10 @@ var gobjJs = function(e) {
|
|
|
1907
1911
|
timer_id: -1
|
|
1908
1912
|
}, Nr = null;
|
|
1909
1913
|
function wr(e, t, n, r) {
|
|
1910
|
-
let o = e.priv,
|
|
1914
|
+
let o = e.priv, i = o.periodic ? "EV_TIMEOUT_PERIODIC" : "EV_TIMEOUT";
|
|
1911
1915
|
return o.periodic && o.msec > 0 ? o.timer_id = setTimeout(function() {
|
|
1912
1916
|
vt(e, "EV_TIMEOUT", {}, e);
|
|
1913
|
-
}, o.msec) : o.timer_id = -1, xe(e) ? vt(We(e),
|
|
1917
|
+
}, o.msec) : o.timer_id = -1, xe(e) ? vt(We(e), i, {}, e) : Ct(e, i, {}), o.periodic || -1 !== o.timer_id || Ae(e) && Oe(e), 0;
|
|
1914
1918
|
}
|
|
1915
1919
|
var Rr = {
|
|
1916
1920
|
mt_create: function(e) {
|
|
@@ -1938,13 +1942,13 @@ var gobjJs = function(e) {
|
|
|
1938
1942
|
mt_destroy: function(e) {}
|
|
1939
1943
|
};
|
|
1940
1944
|
function Dr(e, t) {
|
|
1941
|
-
return e instanceof O ? "C_TIMER" !== Ge(e) ? (
|
|
1945
|
+
return e instanceof O ? "C_TIMER" !== Ge(e) ? (qt("not C_TIMER GObj"), -1) : (ft(e, "periodic", !1), void gt(e, "msec", t)) : (qt("not GObj TYPE"), -1);
|
|
1942
1946
|
}
|
|
1943
1947
|
function Ar(e, t) {
|
|
1944
|
-
return e instanceof O ? "C_TIMER" !== Ge(e) ? (
|
|
1948
|
+
return e instanceof O ? "C_TIMER" !== Ge(e) ? (qt("not C_TIMER GObj"), -1) : (ft(e, "periodic", !0), void gt(e, "msec", t)) : (qt("not GObj TYPE"), -1);
|
|
1945
1949
|
}
|
|
1946
1950
|
function kr(e) {
|
|
1947
|
-
return e instanceof O ? "C_TIMER" !== Ge(e) ? (
|
|
1951
|
+
return e instanceof O ? "C_TIMER" !== Ge(e) ? (qt("not C_TIMER GObj"), -1) : void gt(e, "msec", -1) : (qt("not GObj TYPE"), -1);
|
|
1948
1952
|
}
|
|
1949
1953
|
var Ir = [
|
|
1950
1954
|
v(T.DTP_BOOLEAN, "changesLost", 0, !1, "Set true to warn about leaving page"),
|
|
@@ -1958,7 +1962,7 @@ var gobjJs = function(e) {
|
|
|
1958
1962
|
v(T.DTP_STRING, "yuno_tag", 0, "", "Tags of yuno. Set by agent"),
|
|
1959
1963
|
v(T.DTP_STRING, "yuno_release", 0, "", "Yuno Release. Set by agent"),
|
|
1960
1964
|
v(T.DTP_STRING, "yuno_version", 0, "", "Yuno version (APP_VERSION)"),
|
|
1961
|
-
v(T.DTP_STRING, "yuneta_version", 0,
|
|
1965
|
+
v(T.DTP_STRING, "yuneta_version", 0, l, "Yuneta version"),
|
|
1962
1966
|
v(T.DTP_LIST, "required_services", 0, "[]", "Required services"),
|
|
1963
1967
|
v(T.DTP_INTEGER, "tracing", 0, 0, "Tracing level"),
|
|
1964
1968
|
v(T.DTP_BOOLEAN, "trace_timer", 0, 0, "Trace timers"),
|
|
@@ -1979,7 +1983,7 @@ var gobjJs = function(e) {
|
|
|
1979
1983
|
var Pr = {
|
|
1980
1984
|
mt_create: function(e) {
|
|
1981
1985
|
let t = e.priv;
|
|
1982
|
-
dt(e, "start_date", ar()), dt(e, "node_uuid", cr()), e.priv.gobj_timer = he(Fe(e), "C_TIMER", {}, e), t.periodic_timeout =
|
|
1986
|
+
dt(e, "start_date", ar()), dt(e, "node_uuid", cr()), e.priv.gobj_timer = he(Fe(e), "C_TIMER", {}, e), t.periodic_timeout = it(e, "periodic_timeout");
|
|
1983
1987
|
},
|
|
1984
1988
|
mt_writing: function(e, t) {},
|
|
1985
1989
|
mt_start: function(e) {
|
|
@@ -2026,14 +2030,14 @@ var gobjJs = function(e) {
|
|
|
2026
2030
|
retry_ms: 0
|
|
2027
2031
|
}, Vr = null;
|
|
2028
2032
|
function Mr(e) {
|
|
2029
|
-
e.priv.websocket &&
|
|
2033
|
+
e.priv.websocket && qt("Websocket ALREADY setup");
|
|
2030
2034
|
const t = at(e, "url");
|
|
2031
2035
|
let n;
|
|
2032
2036
|
Qt(`====> Starting WebSocket to '${t}' (${Ve(e)})`);
|
|
2033
2037
|
try {
|
|
2034
2038
|
n = new WebSocket(t);
|
|
2035
2039
|
} catch (n) {
|
|
2036
|
-
return
|
|
2040
|
+
return qt(`${Ve(e)}: Cannot open WebSocket to '${t}', Error: ${n.message}`), null;
|
|
2037
2041
|
}
|
|
2038
2042
|
return n ? (n.onopen = () => {
|
|
2039
2043
|
vt(e, "EV_ON_OPEN", { url: t }, e);
|
|
@@ -2047,7 +2051,7 @@ var gobjJs = function(e) {
|
|
|
2047
2051
|
url: t,
|
|
2048
2052
|
e: n
|
|
2049
2053
|
}, e));
|
|
2050
|
-
}, n) : (
|
|
2054
|
+
}, n) : (qt(`${Ve(e)}: Failed to initialize WebSocket.`), null);
|
|
2051
2055
|
}
|
|
2052
2056
|
function Wr(e, t = 1e3, n = "") {
|
|
2053
2057
|
let r = e.priv, o = r.websocket;
|
|
@@ -2056,7 +2060,7 @@ var gobjJs = function(e) {
|
|
|
2056
2060
|
try {
|
|
2057
2061
|
o.close(t, n);
|
|
2058
2062
|
} catch (e) {
|
|
2059
|
-
|
|
2063
|
+
qt("Error closing WebSocket:", e.message);
|
|
2060
2064
|
}
|
|
2061
2065
|
} else zt("WebSocket is already closed or in the process of closing.");
|
|
2062
2066
|
}
|
|
@@ -2077,18 +2081,18 @@ var gobjJs = function(e) {
|
|
|
2077
2081
|
return function(e, t) {
|
|
2078
2082
|
let n = e.priv, r = JSON.stringify(t);
|
|
2079
2083
|
if (st(Ce(), "trace_inter_event")) {
|
|
2080
|
-
let n = at(e, "url"), o = Fe(Ce()) + " ==> " + n,
|
|
2081
|
-
|
|
2084
|
+
let n = at(e, "url"), o = Fe(Ce()) + " ==> " + n, i = it(Ce(), "trace_ievent_callback");
|
|
2085
|
+
i ? i(o, t, 1, r.length) : Kr(0, o, t);
|
|
2082
2086
|
}
|
|
2083
2087
|
if (!n.websocket || n.websocket.readyState !== WebSocket.OPEN) return zt(`${Ve(e)}: send_iev(): websocket not open, message lost`), -1;
|
|
2084
2088
|
try {
|
|
2085
2089
|
n.websocket.send(r);
|
|
2086
2090
|
} catch (t) {
|
|
2087
|
-
|
|
2091
|
+
qt(`${Ve(e)}: send_iev(): ${t}`);
|
|
2088
2092
|
}
|
|
2089
2093
|
return 0;
|
|
2090
2094
|
}(e, function(e, t) {
|
|
2091
|
-
return Sn(e) ? (
|
|
2095
|
+
return Sn(e) ? (qt("iev_create() event NULL"), null) : new xr(e, t);
|
|
2092
2096
|
}(t, n));
|
|
2093
2097
|
}
|
|
2094
2098
|
function Br(e, t, n) {
|
|
@@ -2103,16 +2107,16 @@ var gobjJs = function(e) {
|
|
|
2103
2107
|
};
|
|
2104
2108
|
}
|
|
2105
2109
|
function Jr(e) {
|
|
2106
|
-
let t = e.priv, n = $e(Ce()), r = at(Ce(), "yuno_version"), o = at(Ce(), "yuno_release"),
|
|
2107
|
-
s && s.length || (s =
|
|
2110
|
+
let t = e.priv, n = $e(Ce()), r = at(Ce(), "yuno_version"), o = at(Ce(), "yuno_release"), i = at(Ce(), "yuno_tag"), s = it(e, "required_services");
|
|
2111
|
+
s && s.length || (s = it(Ce(), "required_services"));
|
|
2108
2112
|
let _ = {
|
|
2109
2113
|
yuno_role: Pe(),
|
|
2110
2114
|
yuno_id: Ue(),
|
|
2111
2115
|
yuno_name: Le(),
|
|
2112
|
-
yuno_tag:
|
|
2116
|
+
yuno_tag: i,
|
|
2113
2117
|
yuno_version: r,
|
|
2114
2118
|
yuno_release: o,
|
|
2115
|
-
yuneta_version:
|
|
2119
|
+
yuneta_version: l,
|
|
2116
2120
|
playing: n,
|
|
2117
2121
|
pid: 0,
|
|
2118
2122
|
watcher_pid: 0,
|
|
@@ -2127,13 +2131,13 @@ var gobjJs = function(e) {
|
|
|
2127
2131
|
};
|
|
2128
2132
|
return er(e, _, Ur, Br(e, Fe(We(e)), null)), nr(e, _, "__identity__"), Dr(t.gobj_timer, _t(e, "timeout_idack")), Yr(e, "EV_IDENTITY_CARD", _);
|
|
2129
2133
|
}
|
|
2130
|
-
function
|
|
2134
|
+
function Hr(e, t) {
|
|
2131
2135
|
if (Sn(t.event)) return -1;
|
|
2132
|
-
let n = {}, r = t.__global__, o = t.__config__,
|
|
2133
|
-
o && (n.__config__ = o), r && (n.__global__ = r),
|
|
2134
|
-
return er(e, n, Ur, Br(e, Fe(s),
|
|
2136
|
+
let n = {}, r = t.__global__, o = t.__config__, i = t.__filter__, l = t.__service__, s = t.subscriber;
|
|
2137
|
+
o && (n.__config__ = o), r && (n.__global__ = r), i && (n.__filter__ = i);
|
|
2138
|
+
return er(e, n, Ur, Br(e, Fe(s), l)), nr(e, n, "__subscribing__"), Yr(e, t.event, n);
|
|
2135
2139
|
}
|
|
2136
|
-
function
|
|
2140
|
+
function qr(e, t, n, r) {
|
|
2137
2141
|
let o = e.priv;
|
|
2138
2142
|
return Ae(e) && (o.websocket = Mr(e)), 0;
|
|
2139
2143
|
}
|
|
@@ -2141,26 +2145,26 @@ var gobjJs = function(e) {
|
|
|
2141
2145
|
return Qt("Websocket opened: " + e.priv.url), Jr(e), 0;
|
|
2142
2146
|
}
|
|
2143
2147
|
function Qr(e, t, n, r) {
|
|
2144
|
-
let o = e.priv,
|
|
2145
|
-
return Jt(), zt(`${Ve(e)}: WebSocket closed ${
|
|
2146
|
-
url:
|
|
2148
|
+
let o = e.priv, i = n.e, l = n.url;
|
|
2149
|
+
return Jt(), zt(`${Ve(e)}: WebSocket closed ${l} (Code: ${i.code}, Reason: "${i.reason}", Clean: ${i.wasClean})`), o.websocket && (o.websocket.onopen = null, o.websocket.onmessage = null, o.websocket.onerror = null, o.websocket.onclose = null, o.websocket = null), o.inform_on_close ? (o.inform_on_close = !1, Ct(e, "EV_ON_CLOSE", {
|
|
2150
|
+
url: l,
|
|
2147
2151
|
remote_yuno_name: o.remote_yuno_name,
|
|
2148
2152
|
remote_yuno_role: o.remote_yuno_role,
|
|
2149
2153
|
remote_yuno_service: o.remote_yuno_service
|
|
2150
|
-
})) : (zt(`${Ve(e)}: EV_ON_OPEN_ERROR cannot open ${
|
|
2151
|
-
url:
|
|
2154
|
+
})) : (zt(`${Ve(e)}: EV_ON_OPEN_ERROR cannot open ${l} (Code: ${i.code}, Reason: "${i.reason}", Clean: ${i.wasClean})`), Ct(e, "EV_ON_OPEN_ERROR", {
|
|
2155
|
+
url: l,
|
|
2152
2156
|
remote_yuno_name: o.remote_yuno_name,
|
|
2153
2157
|
remote_yuno_role: o.remote_yuno_role,
|
|
2154
2158
|
remote_yuno_service: o.remote_yuno_service,
|
|
2155
|
-
code:
|
|
2156
|
-
reason:
|
|
2157
|
-
was_clean:
|
|
2159
|
+
code: i.code,
|
|
2160
|
+
reason: i.reason,
|
|
2161
|
+
was_clean: i.wasClean
|
|
2158
2162
|
})), Ae(e) && Dr(o.gobj_timer, function(e) {
|
|
2159
2163
|
let t = e.priv, n = _t(e, "timeout_retry"), r = _t(e, "timeout_retry_max");
|
|
2160
2164
|
r < n && (r = n);
|
|
2161
2165
|
t.retry_ms = t.retry_ms ? Math.min(2 * t.retry_ms, r) : n;
|
|
2162
|
-
let o = .2 * t.retry_ms,
|
|
2163
|
-
return Math.max(1, Math.round(
|
|
2166
|
+
let o = .2 * t.retry_ms, i = t.retry_ms - o + 2 * Math.random() * o;
|
|
2167
|
+
return Math.max(1, Math.round(i));
|
|
2164
2168
|
}(e)), 0;
|
|
2165
2169
|
}
|
|
2166
2170
|
function Xr(e, t, n, r) {
|
|
@@ -2169,8 +2173,8 @@ var gobjJs = function(e) {
|
|
|
2169
2173
|
function Zr(e, t, n, r) {
|
|
2170
2174
|
let o = e.priv;
|
|
2171
2175
|
kr(o.gobj_timer);
|
|
2172
|
-
let
|
|
2173
|
-
dt(e, "remote_yuno_name",
|
|
2176
|
+
let i = tr(e, n, Ur, !0), l = Ln(e, i, "src_yuno", ""), s = Ln(e, i, "src_role", ""), _ = Ln(e, i, "src_service", "");
|
|
2177
|
+
dt(e, "remote_yuno_name", l), dt(e, "remote_yuno_role", s), dt(e, "remote_yuno_service", _);
|
|
2174
2178
|
let a = Cn(e, n, "result", -1, 0), u = Ln(e, n, "comment", "", 0), c = Ln(e, n, "username", "", 0), f = Fn(e, n, "services_roles", {});
|
|
2175
2179
|
if (a < 0) {
|
|
2176
2180
|
Wr(e);
|
|
@@ -2179,7 +2183,7 @@ var gobjJs = function(e) {
|
|
|
2179
2183
|
result: a,
|
|
2180
2184
|
comment: u,
|
|
2181
2185
|
username: c,
|
|
2182
|
-
remote_yuno_name:
|
|
2186
|
+
remote_yuno_name: l,
|
|
2183
2187
|
remote_yuno_role: s,
|
|
2184
2188
|
remote_yuno_service: _
|
|
2185
2189
|
};
|
|
@@ -2189,7 +2193,7 @@ var gobjJs = function(e) {
|
|
|
2189
2193
|
o.inform_on_close = !0;
|
|
2190
2194
|
let t = {
|
|
2191
2195
|
username: c,
|
|
2192
|
-
remote_yuno_name:
|
|
2196
|
+
remote_yuno_name: l,
|
|
2193
2197
|
remote_yuno_role: s,
|
|
2194
2198
|
remote_yuno_service: _,
|
|
2195
2199
|
services_roles: f
|
|
@@ -2198,52 +2202,52 @@ var gobjJs = function(e) {
|
|
|
2198
2202
|
}
|
|
2199
2203
|
o.inside_on_open = !1, function(e) {
|
|
2200
2204
|
let t = It(e, null, null, null);
|
|
2201
|
-
for (let n = 0; n < t.length; n++)
|
|
2205
|
+
for (let n = 0; n < t.length; n++) Hr(e, t[n]);
|
|
2202
2206
|
}(e);
|
|
2203
2207
|
}
|
|
2204
2208
|
return 0;
|
|
2205
2209
|
}
|
|
2206
2210
|
function eo(e, t, n, r) {
|
|
2207
|
-
let o = e.priv.url,
|
|
2211
|
+
let o = e.priv.url, i = function(e, t) {
|
|
2208
2212
|
let n;
|
|
2209
2213
|
try {
|
|
2210
2214
|
n = JSON.parse(t);
|
|
2211
2215
|
} catch (e) {
|
|
2212
|
-
return
|
|
2216
|
+
return qt("parsing inter_event json: " + e), null;
|
|
2213
2217
|
}
|
|
2214
|
-
if (!(n instanceof Object)) return
|
|
2218
|
+
if (!(n instanceof Object)) return qt("parsing inter_event: websocket data not a json object"), null;
|
|
2215
2219
|
let r = n.event;
|
|
2216
|
-
if (!r) return
|
|
2217
|
-
if ("string" != typeof r) return
|
|
2220
|
+
if (!r) return qt("parsing inter_event: no event"), null;
|
|
2221
|
+
if ("string" != typeof r) return qt("parsing inter_event: event not a string"), null;
|
|
2218
2222
|
let o = n.kw;
|
|
2219
2223
|
return o ? o instanceof Object ? {
|
|
2220
2224
|
event: r,
|
|
2221
2225
|
kw: o || {}
|
|
2222
|
-
} : (
|
|
2226
|
+
} : (qt("parsing inter_event: kw not a json object"), null) : (qt("parsing inter_kw: no kw"), null);
|
|
2223
2227
|
}(0, n.data);
|
|
2224
2228
|
if (st(Ce(), "trace_inter_event")) {
|
|
2225
|
-
let e = Fe(Ce()) + " <== " + o, t = n.data.length, r =
|
|
2226
|
-
r ? r(e,
|
|
2229
|
+
let e = Fe(Ce()) + " <== " + o, t = n.data.length, r = it(Ce(), "trace_ievent_callback");
|
|
2230
|
+
r ? r(e, i, 2, t) : Kr(0, e, i);
|
|
2227
2231
|
}
|
|
2228
|
-
let
|
|
2232
|
+
let l = i.event, s = i.kw;
|
|
2229
2233
|
if ("ST_SESSION" !== pt(e)) {
|
|
2230
|
-
if (Et(e,
|
|
2231
|
-
if (!(vt(e,
|
|
2232
|
-
} else
|
|
2234
|
+
if (Et(e, l, D.EVF_PUBLIC_EVENT)) {
|
|
2235
|
+
if (!(vt(e, l, s, e) < 0)) return 0;
|
|
2236
|
+
} else qt(`${Ve(e)}: event UNKNOWN in not-session state ${l}`);
|
|
2233
2237
|
return Wr(e), -1;
|
|
2234
2238
|
}
|
|
2235
|
-
|
|
2239
|
+
i = null;
|
|
2236
2240
|
let _ = rr(e, s), a = tr(e, s, Ur), u = Ln(e, a, "dst_role", "");
|
|
2237
|
-
if (u.toLowerCase() !== Pe().toLowerCase()) return
|
|
2241
|
+
if (u.toLowerCase() !== Pe().toLowerCase()) return qt(`"It's not my role, dst_role: ${u}, my_role: ${Pe()}`), 0;
|
|
2238
2242
|
let c = Ln(e, a, "dst_service", "");
|
|
2239
2243
|
if ("__subscribing__" === _) return -1;
|
|
2240
2244
|
if ("__unsubscribing__" === _) return -1;
|
|
2241
|
-
if (Et(e,
|
|
2245
|
+
if (Et(e, l, D.EVF_PUBLIC_EVENT)) return vt(e, l, s, e), 0;
|
|
2242
2246
|
if (!Sn(c)) {
|
|
2243
2247
|
let t = ge(c, !1);
|
|
2244
|
-
return t ? Et(t,
|
|
2248
|
+
return t ? Et(t, l, D.EVF_PUBLIC_EVENT) ? (vt(t, l, s, e), 0) : (qt(`${Ve(e)}: Service found but no event or not public, service '${Ve(t)}', ev '${l}'`), -1) : (zt(`${Ve(e)}: event for a service that is gone, DROPPED: service '${c}', ev '${l}'`), 0);
|
|
2245
2249
|
}
|
|
2246
|
-
return xe(e) ? vt(We(e),
|
|
2250
|
+
return xe(e) ? vt(We(e), l, s, e) : Ct(e, l, s), 0;
|
|
2247
2251
|
}
|
|
2248
2252
|
function to(e, t, n, r) {
|
|
2249
2253
|
return 0;
|
|
@@ -2283,21 +2287,21 @@ var gobjJs = function(e) {
|
|
|
2283
2287
|
},
|
|
2284
2288
|
mt_destroy: function(e) {},
|
|
2285
2289
|
mt_stats: function(e, t, n, r) {
|
|
2286
|
-
if ("ST_SESSION" !== pt(e)) return
|
|
2290
|
+
if ("ST_SESSION" !== pt(e)) return qt("Not in session"), null;
|
|
2287
2291
|
n || (n = {});
|
|
2288
|
-
let o = Br(e, Fe(r), Ln(e, n, "service", null, 0)),
|
|
2289
|
-
return
|
|
2292
|
+
let o = Br(e, Fe(r), Ln(e, n, "service", null, 0)), i = Fn(e, n, "__md_stats__", null, Lt.KW_EXTRACT);
|
|
2293
|
+
return i || (i = {}), er(e, n, "stats_stack", {
|
|
2290
2294
|
stats: t,
|
|
2291
|
-
kw:
|
|
2295
|
+
kw: i
|
|
2292
2296
|
}), er(e, n, Ur, o), n.__stats__ = t, nr(e, n, "__stats__"), Yr(e, "EV_MT_STATS", n, r), null;
|
|
2293
2297
|
},
|
|
2294
2298
|
mt_command_parser: function(e, t, n, r) {
|
|
2295
|
-
if ("ST_SESSION" !== pt(e)) return
|
|
2299
|
+
if ("ST_SESSION" !== pt(e)) return qt("Not in session"), null;
|
|
2296
2300
|
n || (n = {});
|
|
2297
|
-
let o = Br(e, Fe(r), Ln(e, n, "service", "", 0)),
|
|
2298
|
-
return
|
|
2301
|
+
let o = Br(e, Fe(r), Ln(e, n, "service", "", 0)), i = Fn(e, n, "__md_command__", null, Lt.KW_EXTRACT);
|
|
2302
|
+
return i || (i = {}), er(e, n, "command_stack", {
|
|
2299
2303
|
command: t,
|
|
2300
|
-
kw:
|
|
2304
|
+
kw: i
|
|
2301
2305
|
}), er(e, n, Ur, o), n.__command__ = t, nr(e, n, "__command__"), Yr(e, "EV_MT_COMMAND", n, r), null;
|
|
2302
2306
|
},
|
|
2303
2307
|
mt_inject_event: function(e, t, n, r) {
|
|
@@ -2311,19 +2315,19 @@ var gobjJs = function(e) {
|
|
|
2311
2315
|
},
|
|
2312
2316
|
mt_subscription_added: function(e, t) {
|
|
2313
2317
|
let n = e.priv;
|
|
2314
|
-
return "ST_SESSION" === pt(e) && n.websocket ? n.inside_on_open ? 0 :
|
|
2318
|
+
return "ST_SESSION" === pt(e) && n.websocket ? n.inside_on_open ? 0 : Hr(e, t) : 0;
|
|
2315
2319
|
},
|
|
2316
2320
|
mt_subscription_deleted: function(e, t) {
|
|
2317
2321
|
let n = e.priv;
|
|
2318
2322
|
if ("ST_SESSION" !== pt(e) || !n.websocket) return 0;
|
|
2319
2323
|
if (n.inside_on_open) return 0;
|
|
2320
2324
|
if (Sn(t.event)) return 0;
|
|
2321
|
-
let r = {}, o = t.__global__,
|
|
2322
|
-
|
|
2325
|
+
let r = {}, o = t.__global__, i = t.__config__, l = t.__filter__, s = t.__service__, _ = t.subscriber;
|
|
2326
|
+
i && (r.__config__ = i), o && (r.__global__ = o), l && (r.__filter__ = l);
|
|
2323
2327
|
return er(e, r, Ur, Br(e, Fe(_), s)), nr(e, r, "__unsubscribing__"), Yr(e, t.event, r, e);
|
|
2324
2328
|
}
|
|
2325
2329
|
};
|
|
2326
|
-
return e.GObj = O, e.SDATA = v, e.SDATAAUTHZ = (e, t, n, r, o,
|
|
2330
|
+
return e.GObj = O, e.SDATA = v, e.SDATAAUTHZ = (e, t, n, r, o, i) => new y(e, t, n, null, i, r, null, 0, null, o, null), e.SDATACM = (e, t, n, r, o, i) => new y(e, t, 0, null, i, n, null, 0, o, r, null), e.SDATACM2 = (e, t, n, r, o, i, l) => new y(e, t, n, null, l, r, null, 0, i, o, null), e.SDATADF = (e, t, n, r, o, i) => new y(e, t, n, null, i, null, r, o), e.SDATAPM = (e, t, n, r, o) => new y(e, t, n, r, o), e.SDATAPM0 = (e, t, n, r, o) => new y(e, t, n, null, o, null, null, 0, null, null, r), e.SDATA_END = j, e.SDataDesc = y, e.YUNETA_VERSION = l, Object.defineProperty(e, "__yuno__", {
|
|
2327
2331
|
enumerable: !0,
|
|
2328
2332
|
get: function() {
|
|
2329
2333
|
return p;
|
|
@@ -2332,25 +2336,25 @@ var gobjJs = function(e) {
|
|
|
2332
2336
|
let t = "", n = 0;
|
|
2333
2337
|
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++));
|
|
2334
2338
|
return t;
|
|
2335
|
-
}, e.build_stats_response =
|
|
2339
|
+
}, e.build_stats_response = i, e.clean_name = function(e) {
|
|
2336
2340
|
return e.replace(/[?# ^:]/g, "_");
|
|
2337
2341
|
}, e.clear_timeout = kr, e.cmp_two_simple_json = Rn, e.command_parser = function(e, t, n, r) {}, e.createElement2 = function e(t, n) {
|
|
2338
|
-
let [r, o,
|
|
2339
|
-
if (!r) return void
|
|
2342
|
+
let [r, o, i, l] = t;
|
|
2343
|
+
if (!r) return void qt("Tag must be a valid HTML element.");
|
|
2340
2344
|
let s = document.createElement(r), _ = "";
|
|
2341
2345
|
if (o && "object" == typeof o) for (let e of Object.keys(o)) if ("style" === e && "object" == typeof o[e]) {
|
|
2342
2346
|
let t = "";
|
|
2343
2347
|
for (const n of Object.keys(o[e])) t += `${n}: ${o[e][n]};`;
|
|
2344
2348
|
s.style.cssText = t;
|
|
2345
2349
|
} else "style" === e ? s.style.cssText = o[e] : "i18n" === e || "data-i18n" === e || "data_i18next" === e || "data-i18next" === e ? null !== o[e] && void 0 !== o[e] && (_ = o[e], s.setAttribute("data-i18n", _)) : s.setAttribute(e, o[e]);
|
|
2346
|
-
if (En(
|
|
2347
|
-
else if (n && _) s.textContent = n(_) ||
|
|
2348
|
-
else s.textContent =
|
|
2349
|
-
else if (mn(
|
|
2350
|
-
if (
|
|
2351
|
-
else for (let t of
|
|
2352
|
-
} else
|
|
2353
|
-
if (
|
|
2350
|
+
if (En(i)) if (i = i.trim(), i.length > 0 && "<" === i[0]) s.appendChild(_r(i));
|
|
2351
|
+
else if (n && _) s.textContent = n(_) || i;
|
|
2352
|
+
else s.textContent = i;
|
|
2353
|
+
else if (mn(i)) {
|
|
2354
|
+
if (i.length > 0) if (En(i[0])) s.appendChild(e(i, n));
|
|
2355
|
+
else for (let t of i) Array.isArray(t) && t.length > 0 ? s.appendChild(e(t, n)) : t instanceof HTMLElement && s.appendChild(t);
|
|
2356
|
+
} else i instanceof HTMLElement || i instanceof Text || i instanceof SVGElement ? s.appendChild(i) : null != i && (qt("content ignored"), Zt(i));
|
|
2357
|
+
if (l && "object" == typeof l) for (const e of Object.keys(l)) s.addEventListener(e, l[e]);
|
|
2354
2358
|
return s;
|
|
2355
2359
|
}, e.createOneHtml = _r, e.create_json_record = function(e, t) {
|
|
2356
2360
|
let n = en(e);
|
|
@@ -2360,14 +2364,14 @@ var gobjJs = function(e) {
|
|
|
2360
2364
|
return t || (t = {}), Object.entries(e).forEach(([e, r]) => {
|
|
2361
2365
|
let o;
|
|
2362
2366
|
pn(r) && (o = r.default);
|
|
2363
|
-
let
|
|
2364
|
-
n[e] =
|
|
2367
|
+
let i = Fn(null, t, e, o);
|
|
2368
|
+
n[e] = i;
|
|
2365
2369
|
}), n;
|
|
2366
2370
|
}, e.current_timestamp = ar, e.data_type_t = T, e.db_list_persistent_attrs = function(e, t) {
|
|
2367
2371
|
let n = Yn(Er(e), null, !1), r = {};
|
|
2368
2372
|
return n && pn(n) && (r = Kn(e, n, t, !1)), r;
|
|
2369
2373
|
}, e.db_load_persistent_attrs = function(e, t) {
|
|
2370
|
-
let n =
|
|
2374
|
+
let n = lt(e, h.SDF_PERSIST), r = Yn(Er(e), null, !1);
|
|
2371
2375
|
if (r && pn(r)) {
|
|
2372
2376
|
let o = Kn(e, r, t, !1);
|
|
2373
2377
|
o = Kn(e, o, n, !1), ct(e, o, h.SDF_PERSIST);
|
|
@@ -2376,22 +2380,22 @@ var gobjJs = function(e) {
|
|
|
2376
2380
|
let n = xn(e, Yn(Er(e), null, !1), t, !1);
|
|
2377
2381
|
0 === gn(n) ? Jn(Er(e)) : Bn(Er(e), n);
|
|
2378
2382
|
}, e.db_save_persistent_attrs = function(e, t) {
|
|
2379
|
-
let n = Kn(e,
|
|
2383
|
+
let n = Kn(e, lt(e, h.SDF_PERSIST), t, !1), r = Yn(Er(e), null, !1);
|
|
2380
2384
|
return r && pn(r) && on(n, r), Bn(Er(e), n);
|
|
2381
2385
|
}, e.debounce = function(e, t = 0, n = !1) {
|
|
2382
|
-
let r = null, o = null,
|
|
2383
|
-
const
|
|
2384
|
-
|
|
2386
|
+
let r = null, o = null, i = null;
|
|
2387
|
+
const l = (...l) => {
|
|
2388
|
+
i = this, o = l;
|
|
2385
2389
|
const s = n && !r;
|
|
2386
2390
|
clearTimeout(r), r = setTimeout(() => {
|
|
2387
|
-
r = null, n || e.apply(
|
|
2388
|
-
}, t), s && e.apply(
|
|
2391
|
+
r = null, n || e.apply(i, o);
|
|
2392
|
+
}, t), s && e.apply(i, o);
|
|
2389
2393
|
};
|
|
2390
|
-
return
|
|
2391
|
-
r && (clearTimeout(r), r = null, e.apply(
|
|
2392
|
-
},
|
|
2393
|
-
clearTimeout(r), r = null, o = null,
|
|
2394
|
-
},
|
|
2394
|
+
return l.flush = () => {
|
|
2395
|
+
r && (clearTimeout(r), r = null, e.apply(i, o));
|
|
2396
|
+
}, l.cancel = () => {
|
|
2397
|
+
clearTimeout(r), r = null, o = null, i = null;
|
|
2398
|
+
}, l;
|
|
2395
2399
|
}, e.delete_from_list = function(e, t) {
|
|
2396
2400
|
for (let n = 0; n < e.length; n++) if (t === e[n]) return e.splice(n, 1), !0;
|
|
2397
2401
|
return !1;
|
|
@@ -2414,29 +2418,29 @@ var gobjJs = function(e) {
|
|
|
2414
2418
|
const o = "number" == typeof r[0];
|
|
2415
2419
|
if (null === t) t = o ? [] : {};
|
|
2416
2420
|
else if (o !== Array.isArray(t)) throw new Error(`flat2json: '${n}' does not fit a ${Array.isArray(t) ? "array" : "object"} root`);
|
|
2417
|
-
let
|
|
2421
|
+
let i = t;
|
|
2418
2422
|
for (let t = 0; t < r.length; t++) {
|
|
2419
|
-
const o = r[t],
|
|
2420
|
-
if (
|
|
2421
|
-
if (
|
|
2423
|
+
const o = r[t], l = "number" == typeof o, s = t === r.length - 1, _ = !s && "number" == typeof r[t + 1];
|
|
2424
|
+
if (l && o > dr) throw new Error(`flat2json: array index ${o} over the limit (100000) in '${n}'`);
|
|
2425
|
+
if (l !== Array.isArray(i)) throw new Error(`flat2json: '${n}' uses a ${l ? "array index" : "key"} where the tree already has a ${Array.isArray(i) ? "array" : "object"}`);
|
|
2422
2426
|
if (s) {
|
|
2423
|
-
if (Array.isArray(
|
|
2424
|
-
for (;
|
|
2425
|
-
|
|
2427
|
+
if (Array.isArray(i)) {
|
|
2428
|
+
for (; i.length <= o;) i.push(null);
|
|
2429
|
+
i[o] = e[n];
|
|
2426
2430
|
} else {
|
|
2427
|
-
if (Object.prototype.hasOwnProperty.call(
|
|
2428
|
-
|
|
2431
|
+
if (Object.prototype.hasOwnProperty.call(i, o)) throw new Error(`flat2json: '${n}' is written twice, or once as a value and once as a container`);
|
|
2432
|
+
i[o] = e[n];
|
|
2429
2433
|
}
|
|
2430
2434
|
break;
|
|
2431
2435
|
}
|
|
2432
2436
|
let a;
|
|
2433
|
-
if (Array.isArray(
|
|
2434
|
-
for (;
|
|
2435
|
-
a =
|
|
2436
|
-
} else a =
|
|
2437
|
+
if (Array.isArray(i)) {
|
|
2438
|
+
for (; i.length <= o;) i.push(null);
|
|
2439
|
+
a = i[o], null == a && (a = _ ? [] : {}, i[o] = a);
|
|
2440
|
+
} else a = i[o], void 0 === a && (a = _ ? [] : {}, i[o] = a);
|
|
2437
2441
|
if (null === a || "object" != typeof a) throw new Error(`flat2json: '${n}' walks through a value: the same id is a leaf and a container at once`);
|
|
2438
2442
|
if (_ !== Array.isArray(a)) throw new Error(`flat2json: '${n}' needs a ${_ ? "array" : "object"} where the tree already has a ${Array.isArray(a) ? "array" : "object"}`);
|
|
2439
|
-
|
|
2443
|
+
i = a;
|
|
2440
2444
|
}
|
|
2441
2445
|
}
|
|
2442
2446
|
return null === t ? {} : t;
|
|
@@ -2465,7 +2469,7 @@ var gobjJs = function(e) {
|
|
|
2465
2469
|
return o;
|
|
2466
2470
|
}, e.flat_key_join = function(e) {
|
|
2467
2471
|
return Array.isArray(e) && 0 !== e.length ? e.map((e) => "number" == typeof e ? `[${e}]` : br(e)).join("`") : "";
|
|
2468
|
-
}, e.flat_key_split = pr, e.gclass_add_ev_action =
|
|
2472
|
+
}, e.flat_key_split = pr, e.gclass_add_ev_action = le, e.gclass_add_event_type = _e, e.gclass_add_state = ie, e.gclass_check_fsm = ue, e.gclass_create = te, e.gclass_event_type = ae, e.gclass_find_by_name = ce, e.gclass_flag_t = N, e.gclass_unregister = ne, e.getPositionRelativeToBody = function(e) {
|
|
2469
2473
|
if (!e) return {
|
|
2470
2474
|
top: 0,
|
|
2471
2475
|
left: 0,
|
|
@@ -2477,21 +2481,21 @@ var gobjJs = function(e) {
|
|
|
2477
2481
|
left: 0,
|
|
2478
2482
|
width: 0,
|
|
2479
2483
|
height: 0
|
|
2480
|
-
},
|
|
2484
|
+
}, i = "undefined" != typeof window, l = i && (window.scrollY || document.documentElement?.scrollTop || document.body?.scrollTop) || 0, s = i && (window.scrollX || document.documentElement?.scrollLeft || document.body?.scrollLeft) || 0;
|
|
2481
2485
|
return {
|
|
2482
|
-
top: t +
|
|
2486
|
+
top: t + l,
|
|
2483
2487
|
left: n + s,
|
|
2484
2488
|
right: n + s + r,
|
|
2485
|
-
bottom: t +
|
|
2489
|
+
bottom: t + l + o
|
|
2486
2490
|
};
|
|
2487
2491
|
}, e.get_function_name = fr, e.get_now = function() {
|
|
2488
2492
|
return Math.floor(Date.now() / 1e3);
|
|
2489
2493
|
}, e.gobj_bottom_gobj = Be, e.gobj_change_parent = function(e, t) {
|
|
2490
|
-
return Ye(e) ? (
|
|
2491
|
-
}, e.gobj_change_state = bt, e.gobj_command = function(e, t, r,
|
|
2492
|
-
if (Ye(e)) return
|
|
2493
|
-
let
|
|
2494
|
-
return
|
|
2494
|
+
return Ye(e) ? (qt("gobj NULL or DESTROYED"), null) : t instanceof O ? (e.parent && e.parent.mt_child_removed && e.parent.mt_child_removed(e.parent, e), e.parent && (pe(e.parent, e), e.parent = null), be(t, e), t.mt_child_added && (Y(e) && Qt(n("👦👦🔵 child_added(%s): %s", Me(t), Ve(e))), t.mt_child_added(t, e)), 0) : (qt(`${Ve(e)}: gobj_change_parent() BAD TYPE of parent`), -1);
|
|
2495
|
+
}, e.gobj_change_state = bt, e.gobj_command = function(e, t, r, i) {
|
|
2496
|
+
if (Ye(e)) return qt("gobj NULL or DESTROYED"), -1;
|
|
2497
|
+
let l = p && _t(p, "tracing");
|
|
2498
|
+
return l && (L(n("🌀🌀 mach(%s%s), cmd: %s, src: %s", Ae(e) ? "" : "!!", Ve(e), t, Ve(i))), l > 1 && Zt(r)), e.gclass.gmt.mt_command_parser ? e.gclass.gmt.mt_command_parser(e, t, r, i) : e.gclass.command_table ? c ? c(e, t, r, i) : o(0, -1, n("%s: global command parser not available", Ve(e)), 0, 0) : o(0, -1, n("%s: command table not available", Ve(e)), 0, 0);
|
|
2495
2499
|
}, e.gobj_create = function(e, t, n, r) {
|
|
2496
2500
|
return Te(e, t, n, r, 0);
|
|
2497
2501
|
}, e.gobj_create2 = Te, e.gobj_create_default_service = function(e, t, n, r) {
|
|
@@ -2513,13 +2517,13 @@ var gobjJs = function(e) {
|
|
|
2513
2517
|
}, e.gobj_list_subscriptions = function(e) {
|
|
2514
2518
|
let t = It(e, null, null, null);
|
|
2515
2519
|
for (let n = 0; n < t.length; n++) {
|
|
2516
|
-
let r = t[n], o = Pn(e, r, "publisher", null, Lt.KW_REQUIRED),
|
|
2517
|
-
an(r, "s_event", Ln(e, r, "event", "", Lt.KW_REQUIRED)), an(r, "s_publisher", Ve(o)), an(r, "s_subscriber", Ve(
|
|
2520
|
+
let r = t[n], o = Pn(e, r, "publisher", null, Lt.KW_REQUIRED), i = Pn(e, r, "subscriber", null, Lt.KW_REQUIRED);
|
|
2521
|
+
an(r, "s_event", Ln(e, r, "event", "", Lt.KW_REQUIRED)), an(r, "s_publisher", Ve(o)), an(r, "s_subscriber", Ve(i));
|
|
2518
2522
|
}
|
|
2519
2523
|
let n = $t(e, 0, null, 0);
|
|
2520
2524
|
for (let t = 0; t < n.length; t++) {
|
|
2521
|
-
let r = n[t], o = Pn(e, r, "publisher", null, Lt.KW_REQUIRED),
|
|
2522
|
-
an(r, "s_event", Ln(e, r, "event", "", Lt.KW_REQUIRED)), an(r, "s_publisher", Ve(o)), an(r, "s_subscriber", Ve(
|
|
2525
|
+
let r = n[t], o = Pn(e, r, "publisher", null, Lt.KW_REQUIRED), i = Pn(e, r, "subscriber", null, Lt.KW_REQUIRED);
|
|
2526
|
+
an(r, "s_event", Ln(e, r, "event", "", Lt.KW_REQUIRED)), an(r, "s_publisher", Ve(o)), an(r, "s_subscriber", Ve(i));
|
|
2523
2527
|
}
|
|
2524
2528
|
return {
|
|
2525
2529
|
subscriptions: t,
|
|
@@ -2528,9 +2532,9 @@ var gobjJs = function(e) {
|
|
|
2528
2532
|
total_subscribings: dn(n)
|
|
2529
2533
|
};
|
|
2530
2534
|
}, e.gobj_load_persistent_attrs = function(e, t) {
|
|
2531
|
-
return Ie(e) ? s ? s(e, t) : -1 : (
|
|
2535
|
+
return Ie(e) ? s ? s(e, t) : -1 : (qt(`${Ve(e)}: Only gobj services can load/save writable-persistent`), -1);
|
|
2532
2536
|
}, e.gobj_match_children = function(e, t) {
|
|
2533
|
-
if (Ye(e)) return
|
|
2537
|
+
if (Ye(e)) return qt("gobj NULL or DESTROYED"), null;
|
|
2534
2538
|
t = t || {};
|
|
2535
2539
|
let n = [];
|
|
2536
2540
|
const r = e.dl_children;
|
|
@@ -2545,21 +2549,21 @@ var gobjJs = function(e) {
|
|
|
2545
2549
|
return function e(n, r) {
|
|
2546
2550
|
let o = r.dl_children;
|
|
2547
2551
|
for (let r = 0; r < o.length; r++) {
|
|
2548
|
-
let
|
|
2549
|
-
tt(
|
|
2552
|
+
let i = o[r];
|
|
2553
|
+
tt(i, t) && n.push(i), e(n, i);
|
|
2550
2554
|
}
|
|
2551
2555
|
}(n, e), n;
|
|
2552
2556
|
}, e.gobj_match_gobj = tt, e.gobj_name = Fe, e.gobj_parent = We, e.gobj_pause = De, e.gobj_play = Re, e.gobj_post_event = function(e, t, r, o) {
|
|
2553
|
-
return e && e instanceof O ? e.obflag & (R.obflag_destroyed | R.obflag_destroying) ? (
|
|
2557
|
+
return e && e instanceof O ? e.obflag & (R.obflag_destroyed | R.obflag_destroying) ? (qt(`gobj_post_event(): gobj dst DESTROYING, event ${t}`), -1) : Sn(t) ? (qt("gobj_post_event(): event EMPTY"), -1) : Et(e, t, 0) ? ht.length >= 1e4 ? (qt(`gobj_post_event(): too many posted events, this is NOT a work queue, event ${t}, pending ${ht.length}`), -1) : (ht.push({
|
|
2554
2558
|
dst: e,
|
|
2555
2559
|
event: t,
|
|
2556
2560
|
kw: r,
|
|
2557
2561
|
src: o
|
|
2558
|
-
}), J(e, t) && !
|
|
2562
|
+
}), J(e, t) && !H(o, t) && L(n("📬 posted(%s%s), ev: %s, pending: %d", e.running ? "" : "!!", Ve(e), t, ht.length)), yt || (yt = !0, setTimeout(jt, 0)), 0) : (qt(`gobj_post_event(): event NOT DEFINED in gclass ${Ge(e)}, event ${t}`), -1) : (qt(`gobj_post_event(): gobj dst NULL, event ${t}`), -1);
|
|
2559
2563
|
}, e.gobj_posted_events_size = function() {
|
|
2560
2564
|
return ht.length;
|
|
2561
|
-
}, e.gobj_publish_event = Ct, e.gobj_read_attr =
|
|
2562
|
-
return Ie(e) ? a ? a(e, t) : -1 : (
|
|
2565
|
+
}, e.gobj_publish_event = Ct, e.gobj_read_attr = it, e.gobj_read_attrs = lt, e.gobj_read_bool_attr = st, e.gobj_read_integer_attr = _t, e.gobj_read_pointer_attr = ut, e.gobj_read_str_attr = at, e.gobj_remove_persistent_attrs = function(e, t) {
|
|
2566
|
+
return Ie(e) ? a ? a(e, t) : -1 : (qt(`${Ve(e)}: Only gobj services can load/save writable-persistent`), -1);
|
|
2563
2567
|
}, e.gobj_repr_global_trace_levels = function() {
|
|
2564
2568
|
return U.map(([e, t, n]) => ({
|
|
2565
2569
|
name: e,
|
|
@@ -2569,19 +2573,19 @@ var gobjJs = function(e) {
|
|
|
2569
2573
|
}));
|
|
2570
2574
|
}, e.gobj_reset_volatil_attrs = function(e) {
|
|
2571
2575
|
return function(e, t, n) {
|
|
2572
|
-
if (Ye(e)) return
|
|
2576
|
+
if (Ye(e)) return qt("gobj NULL or DESTROYED"), -1;
|
|
2573
2577
|
let r = e.gclass.attrs_table;
|
|
2574
2578
|
for (let o = 0; o < r.length; o++) {
|
|
2575
|
-
const
|
|
2576
|
-
if (
|
|
2577
|
-
const t = z(e, e.jn_attrs,
|
|
2578
|
-
pn(e.priv) && e.priv.hasOwnProperty(
|
|
2579
|
+
const i = r[o];
|
|
2580
|
+
if (i.name && !(n && i.flag & n) && (-1 === t || i.flag & t)) {
|
|
2581
|
+
const t = z(e, e.jn_attrs, i);
|
|
2582
|
+
pn(e.priv) && e.priv.hasOwnProperty(i.name) && (e.priv[i.name] = t), e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, i.name);
|
|
2579
2583
|
}
|
|
2580
2584
|
}
|
|
2581
2585
|
return 0;
|
|
2582
2586
|
}(e, h.SDF_VOLATIL, 0);
|
|
2583
2587
|
}, e.gobj_save_persistent_attrs = function(e, t) {
|
|
2584
|
-
return Ie(e) ? _ ? _(e, t) : -1 : (
|
|
2588
|
+
return Ie(e) ? _ ? _(e, t) : -1 : (qt(`${Ve(e)}: Only gobj services can load/save writable-persistent`), -1);
|
|
2585
2589
|
}, e.gobj_search_path = rt, e.gobj_send_event = vt, e.gobj_services = function() {
|
|
2586
2590
|
let e = [];
|
|
2587
2591
|
for (const t of Object.keys(b)) cn(e, t);
|
|
@@ -2590,12 +2594,12 @@ var gobjJs = function(e) {
|
|
|
2590
2594
|
return V = Number(e) || 0, 0;
|
|
2591
2595
|
}, e.gobj_set_gclass_no_trace = function(e, t, n) {
|
|
2592
2596
|
const r = En(e) ? ce(e) : e;
|
|
2593
|
-
if (!r) return
|
|
2597
|
+
if (!r) return qt(`gobj_set_gclass_no_trace: gclass NOT FOUND: ${e}`), -1;
|
|
2594
2598
|
const o = M(t, "gobj_set_gclass_no_trace");
|
|
2595
2599
|
return o ? (n ? r.no_trace_level |= o : r.no_trace_level &= ~o, 0) : -1;
|
|
2596
2600
|
}, e.gobj_set_gclass_trace = function(e, t, n) {
|
|
2597
2601
|
const r = En(e) ? ce(e) : e;
|
|
2598
|
-
if (!r) return
|
|
2602
|
+
if (!r) return qt(`gobj_set_gclass_trace: gclass NOT FOUND: ${e}`), -1;
|
|
2599
2603
|
const o = M(t, "gobj_set_gclass_trace");
|
|
2600
2604
|
return o ? (n ? r.trace_level |= o : r.trace_level &= ~o, 0) : -1;
|
|
2601
2605
|
}, e.gobj_set_global_no_trace = function(e, t) {
|
|
@@ -2605,21 +2609,21 @@ var gobjJs = function(e) {
|
|
|
2605
2609
|
const n = M(e, "gobj_set_global_trace");
|
|
2606
2610
|
return n ? (t ? F |= n : F &= ~n, 0) : -1;
|
|
2607
2611
|
}, e.gobj_set_gobj_no_trace = function(e, t, n) {
|
|
2608
|
-
if (!e) return
|
|
2612
|
+
if (!e) return qt("gobj_set_gobj_no_trace: gobj NULL"), -1;
|
|
2609
2613
|
const r = M(t, "gobj_set_gobj_no_trace");
|
|
2610
2614
|
return r ? (n ? e.no_trace_level |= r : e.no_trace_level &= ~r, 0) : -1;
|
|
2611
2615
|
}, e.gobj_set_gobj_trace = function(e, t, n) {
|
|
2612
|
-
if (!e) return
|
|
2616
|
+
if (!e) return qt("gobj_set_gobj_trace: gobj NULL"), -1;
|
|
2613
2617
|
const r = M(t, "gobj_set_gobj_trace");
|
|
2614
2618
|
return r ? (n ? e.trace_level |= r : e.trace_level &= ~r, 0) : -1;
|
|
2615
2619
|
}, e.gobj_set_trace_machine_format = function(e) {
|
|
2616
2620
|
C = 1 === Number(e) ? 1 : 0;
|
|
2617
2621
|
}, e.gobj_short_name = Ve, e.gobj_start = je, e.gobj_start_children = function(e) {
|
|
2618
|
-
return Ye(e) ? (
|
|
2622
|
+
return Ye(e) ? (qt("gobj NULL or DESTROYED"), -1) : qe(e, A.WALK_FIRST2LAST, ve, 0, 0);
|
|
2619
2623
|
}, e.gobj_start_tree = function(e) {
|
|
2620
|
-
return Ye(e) ? (
|
|
2621
|
-
}, e.gobj_start_up = function(e, t, n, r, o,
|
|
2622
|
-
s = t, _ = n, a = r, u = o, c =
|
|
2624
|
+
return Ye(e) ? (qt("gobj NULL or DESTROYED"), -1) : (B(e) && L(n("⏺ ⏺ ⏺ ⏺ start_tree: %s", Me(e))), e.gclass.gclass_flag & N.gcflag_manual_start || e.disabled ? 0 : (e.running || je(e), ze(e, A.WALK_TOP2BOTTOM, Se, 0, 0)));
|
|
2625
|
+
}, e.gobj_start_up = function(e, t, n, r, o, i, l) {
|
|
2626
|
+
s = t, _ = n, a = r, u = o, c = i, f = l;
|
|
2623
2627
|
const d = [["EV_STATE_CHANGED", D.EVF_SYSTEM_EVENT | D.EVF_OUTPUT_EVENT | D.EVF_NO_WARN_SUBS], [0, 0]];
|
|
2624
2628
|
for (let e = 0; e < d.length; e++) {
|
|
2625
2629
|
let t = d[e][0], n = d[e][1];
|
|
@@ -2627,14 +2631,14 @@ var gobjJs = function(e) {
|
|
|
2627
2631
|
}
|
|
2628
2632
|
return 0;
|
|
2629
2633
|
}, e.gobj_stats = function(e, t, r, o) {
|
|
2630
|
-
return Ye(e) ? (
|
|
2634
|
+
return Ye(e) ? (qt("gobj NULL or DESTROYED"), -1) : e.gclass.gmt.mt_stats ? e.gclass.gmt.mt_stats(e, t, r, o) : f ? f(e, t, r, o) : i(0, -1, n("%s, stats parser not available", Ve(e)), 0, 0);
|
|
2631
2635
|
}, e.gobj_stop = Oe, e.gobj_stop_children = we, e.gobj_stop_tree = function(e) {
|
|
2632
|
-
return Ye(e) ? (
|
|
2636
|
+
return Ye(e) ? (qt("gobj NULL or DESTROYED"), -1) : (B(e) && L(n("⏹ ⏹ ⏹ ⏹ stop_tree: %s", Me(e))), Ae(e) && Oe(e), ze(e, A.WALK_TOP2BOTTOM, Ne, 0, 0));
|
|
2633
2637
|
}, e.gobj_subscribe_event = At, e.gobj_trace_level = W, e.gobj_trace_machine_format = function() {
|
|
2634
2638
|
return C;
|
|
2635
2639
|
}, e.gobj_trace_no_level = K, e.gobj_unsubscribe_event = function(e, t, n, r) {
|
|
2636
|
-
if (null == n && (n = {}), !e) return
|
|
2637
|
-
if (!r) return
|
|
2640
|
+
if (null == n && (n = {}), !e) return qt(`publisher NULL: ev ${t}`), 0;
|
|
2641
|
+
if (!r) return qt(`subscriber NULL: ev ${t}`), 0;
|
|
2638
2642
|
const o = /* @__PURE__ */ new Set([
|
|
2639
2643
|
"__config__",
|
|
2640
2644
|
"__global__",
|
|
@@ -2643,35 +2647,35 @@ var gobjJs = function(e) {
|
|
|
2643
2647
|
"__service__"
|
|
2644
2648
|
]);
|
|
2645
2649
|
if (Object.keys(n).forEach((n) => {
|
|
2646
|
-
o.has(n) ||
|
|
2650
|
+
o.has(n) || qt(`${Ve(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
|
|
2647
2651
|
}), Sn(t)) t = "";
|
|
2648
|
-
else if (!(Tt(e, t, D.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & N.gcflag_no_check_output_events)) return
|
|
2649
|
-
let
|
|
2650
|
-
for (let t = 0; t <
|
|
2651
|
-
let n =
|
|
2652
|
-
Dt(e, n, !1, !1),
|
|
2653
|
-
}
|
|
2654
|
-
return
|
|
2655
|
-
}, e.gobj_unsubscribe_list = kt, e.gobj_walk_gobj_children =
|
|
2656
|
-
if (!En(t)) return
|
|
2657
|
-
let
|
|
2652
|
+
else if (!(Tt(e, t, D.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & N.gcflag_no_check_output_events)) return qt(`event NOT in output event list: ${Ve(e)}, ev ${t}`), 0;
|
|
2653
|
+
let i = wt(e.dl_subscriptions, e, t, n, r), l = 0;
|
|
2654
|
+
for (let t = 0; t < i.length; t++) {
|
|
2655
|
+
let n = i[t];
|
|
2656
|
+
Dt(e, n, !1, !1), l++;
|
|
2657
|
+
}
|
|
2658
|
+
return l || (zt(`${Ve(e)}: No subscription found`), Zt(n, "No subscription found")), 0;
|
|
2659
|
+
}, e.gobj_unsubscribe_list = kt, e.gobj_walk_gobj_children = qe, e.gobj_walk_gobj_children_tree = ze, e.gobj_write_attr = function(e, t, r, o) {
|
|
2660
|
+
if (!En(t)) return qt(n("gobj_write_attr(%s): path must be a string", Ve(e))), -1;
|
|
2661
|
+
let i, l = e.jn_attrs, s = t.split("`");
|
|
2658
2662
|
if (s.length <= 1) {
|
|
2659
2663
|
let o = t;
|
|
2660
|
-
return o in
|
|
2664
|
+
return o in l && l.hasOwnProperty(o) ? (l[o] = r, pn(e.priv) && e.priv.hasOwnProperty(o) && (e.priv[o] = r), e.obflag & R.obflag_created && !(e.obflag & R.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, o), 0) : (qt(n("gobj_write_attr(%s): attr not found '%s'", Ve(e), o)), -1);
|
|
2661
2665
|
}
|
|
2662
2666
|
let _ = s.length;
|
|
2663
2667
|
for (let t = 0; t < _; t++) {
|
|
2664
|
-
|
|
2665
|
-
let n = nt(e, { __gobj_name__:
|
|
2668
|
+
i = s[t];
|
|
2669
|
+
let n = nt(e, { __gobj_name__: i });
|
|
2666
2670
|
if (n && t < _ - 1) {
|
|
2667
2671
|
e = n;
|
|
2668
2672
|
continue;
|
|
2669
2673
|
}
|
|
2670
2674
|
let o = e.jn_attrs;
|
|
2671
|
-
if (
|
|
2675
|
+
if (i in o && o.hasOwnProperty(i)) return o[i] = r, pn(e.priv) && e.priv.hasOwnProperty(i) && (e.priv[i] = r), e.obflag & R.obflag_created && !(e.obflag & R.obflag_destroyed) && e.mt_writing && e.mt_writing(e, i), 0;
|
|
2672
2676
|
break;
|
|
2673
2677
|
}
|
|
2674
|
-
return
|
|
2678
|
+
return qt(n("gobj_write_attr(%s): attr not found '%s'", Ve(e), i)), -1;
|
|
2675
2679
|
}, e.gobj_write_attrs = ct, e.gobj_write_bool_attr = ft, e.gobj_write_integer_attr = gt, e.gobj_write_str_attr = dt, e.gobj_yuno = Ce, e.gobj_yuno_id = Ue, e.gobj_yuno_name = Le, e.gobj_yuno_role = Pe, e.id_index_in_obj_list = zn, e.index_in_list = ur, e.is_array = mn, e.is_boolean = hn, e.is_date = function(e) {
|
|
2676
2680
|
return e instanceof Date && !isNaN(e);
|
|
2677
2681
|
}, e.is_function = jn, e.is_gobj = vn, e.is_metadata_key = function(e) {
|
|
@@ -2691,11 +2695,11 @@ var gobjJs = function(e) {
|
|
|
2691
2695
|
return !isNaN(t) && "" !== e.trim() && !isNaN(t);
|
|
2692
2696
|
}, e.is_string = En, e.jdb_delete = function(e, t, n, r) {
|
|
2693
2697
|
let o = Fn(null, Fn(null, e, "topics", null, 0), t, null, 0);
|
|
2694
|
-
if (!o) return
|
|
2695
|
-
if (Sn(r.id)) return
|
|
2696
|
-
let
|
|
2697
|
-
for (; (
|
|
2698
|
-
if (0 ===
|
|
2698
|
+
if (!o) return qt("jdb_delete: topic not found: " + t), null;
|
|
2699
|
+
if (Sn(r.id)) return qt("jdb_delete: record without id: " + r), Xt(r), null;
|
|
2700
|
+
let i, l = n.split("`"), s = o;
|
|
2701
|
+
for (; (i = l.shift()) && !Sn(i) && s;) pn(s) && (s = Fn(null, s, e.hook, null, 0)), s = ir(s, null, i, !1);
|
|
2702
|
+
if (0 === l.length && s) if (mn(s)) {
|
|
2699
2703
|
let e = zn(s, r.id);
|
|
2700
2704
|
e >= 0 && s.splice(e, 1);
|
|
2701
2705
|
} else {
|
|
@@ -2705,32 +2709,32 @@ var gobjJs = function(e) {
|
|
|
2705
2709
|
return o;
|
|
2706
2710
|
}, e.jdb_get = function(e, t, n, r) {
|
|
2707
2711
|
let o = Fn(null, Fn(null, e, "topics", null, 0), t, null, 0);
|
|
2708
|
-
return o ? (void 0 === r && (r = !0),
|
|
2712
|
+
return o ? (void 0 === r && (r = !0), ir(o, e.hook, n, r)) : (qt("jdb_get: topic not found: " + t), null);
|
|
2709
2713
|
}, e.jdb_get_by_idx = function(e, t, n) {
|
|
2710
2714
|
let r = Fn(null, Fn(null, e, "topics", null, 0), t, null, 0);
|
|
2711
|
-
return r ? n < r.length ? r[n] : {} : (
|
|
2715
|
+
return r ? n < r.length ? r[n] : {} : (qt("jdb_get_by_idx: topic not found: " + t), null);
|
|
2712
2716
|
}, e.jdb_get_topic = function(e, t) {
|
|
2713
2717
|
let n = Fn(null, e, "topics", null, 0);
|
|
2714
|
-
if (!n) return
|
|
2715
|
-
return Fn(null, n, t, null, 0) || (
|
|
2718
|
+
if (!n) return qt("jdb topics section not found"), Xt(e), null;
|
|
2719
|
+
return Fn(null, n, t, null, 0) || (qt("jdb topic not found: " + t), Xt(n), null);
|
|
2716
2720
|
}, e.jdb_init = function(e, t, n) {
|
|
2717
2721
|
n && (e = en(e));
|
|
2718
2722
|
let r = Fn(null, e, "type", [], 1);
|
|
2719
2723
|
Ln(null, e, "hook", "data", 1);
|
|
2720
|
-
let o = Fn(null, e, "schema", {}, 1),
|
|
2724
|
+
let o = Fn(null, e, "schema", {}, 1), i = Fn(null, e, "topics", {}, 1);
|
|
2721
2725
|
return or(o, function(e, t, n, o) {
|
|
2722
|
-
"__" !== t.substring(0, 2) && Fn(null,
|
|
2726
|
+
"__" !== t.substring(0, 2) && Fn(null, i, o, en(r), 1);
|
|
2723
2727
|
}, t), e;
|
|
2724
2728
|
}, e.jdb_update = function(e, t, n, r) {
|
|
2725
2729
|
let o = Fn(null, Fn(null, e, "topics", null, 0), t, null, 0);
|
|
2726
|
-
if (!o) return
|
|
2727
|
-
if (Sn(r.id)) return
|
|
2728
|
-
let
|
|
2729
|
-
for (; (
|
|
2730
|
-
if (0 ===
|
|
2730
|
+
if (!o) return qt("jdb_update: topic not found: " + t), null;
|
|
2731
|
+
if (Sn(r.id)) return qt("jdb_update: record without id: " + r), Xt(r), null;
|
|
2732
|
+
let i, l = n.split("`"), s = o;
|
|
2733
|
+
for (; (i = l.shift()) && !Sn(i) && s;) pn(s) && (s = Fn(null, s, e.hook, [], 1)), s = ir(s, null, i, !1);
|
|
2734
|
+
if (0 === l.length && s) if (mn(s)) s.push(r);
|
|
2731
2735
|
else if (s.id === r.id) Object.assign(s, r);
|
|
2732
2736
|
else {
|
|
2733
|
-
let t = Fn(null, s, e.hook, [], 1), n =
|
|
2737
|
+
let t = Fn(null, s, e.hook, [], 1), n = ir(t, e.hook, r.id, !1);
|
|
2734
2738
|
n ? Object.assign(n, r) : t.push(r);
|
|
2735
2739
|
}
|
|
2736
2740
|
return o;
|
|
@@ -2739,15 +2743,15 @@ var gobjJs = function(e) {
|
|
|
2739
2743
|
if (o > gr) throw new Error("json2flat: deeper than 256");
|
|
2740
2744
|
if (null === e || "object" != typeof e || Array.isArray(e)) {
|
|
2741
2745
|
if (Array.isArray(e) && e.length > 0) return void e.forEach((e, t) => {
|
|
2742
|
-
const
|
|
2743
|
-
n(e, 0 === o ?
|
|
2746
|
+
const i = `[${t}]`;
|
|
2747
|
+
n(e, 0 === o ? i : r + "`" + i, o + 1);
|
|
2744
2748
|
});
|
|
2745
2749
|
} else {
|
|
2746
2750
|
const t = Object.keys(e);
|
|
2747
2751
|
if (t.length > 0) {
|
|
2748
|
-
for (const
|
|
2749
|
-
const t = br(
|
|
2750
|
-
n(e[
|
|
2752
|
+
for (const i of t) {
|
|
2753
|
+
const t = br(i);
|
|
2754
|
+
n(e[i], 0 === o ? t : r + "`" + t, o + 1);
|
|
2751
2755
|
}
|
|
2752
2756
|
return;
|
|
2753
2757
|
}
|
|
@@ -2759,7 +2763,7 @@ var gobjJs = function(e) {
|
|
|
2759
2763
|
return t ? (Array.prototype.push.apply(e, t), e) : e;
|
|
2760
2764
|
}, e.json_array_remove = fn, e.json_array_size = dn, e.json_deep_copy = en, e.json_is_identical = tn, e.json_object_del = sn, e.json_object_get = ln, e.json_object_set = _n, e.json_object_set_new = an, e.json_object_size = gn, e.json_object_update = nn, e.json_object_update_existing = rn, e.json_object_update_missing = on, e.json_size = bn, e.jwt2json = function(e, t) {
|
|
2761
2765
|
try {
|
|
2762
|
-
let n =
|
|
2766
|
+
let n = lr(e);
|
|
2763
2767
|
switch (t) {
|
|
2764
2768
|
case "header": return JSON.parse(n.header);
|
|
2765
2769
|
case "signature": return JSON.parse(n.signature);
|
|
@@ -2768,66 +2772,66 @@ var gobjJs = function(e) {
|
|
|
2768
2772
|
} catch (e) {
|
|
2769
2773
|
return null;
|
|
2770
2774
|
}
|
|
2771
|
-
}, e.jwtDecode =
|
|
2772
|
-
if (e && !vn(e) &&
|
|
2775
|
+
}, e.jwtDecode = lr, e.kw_clone_by_keys = Kn, e.kw_clone_by_not_keys = xn, e.kw_collect = function(e, t, n, r) {
|
|
2776
|
+
if (e && !vn(e) && qt("GObj bad instanceof"), !t) return null;
|
|
2773
2777
|
r || (r = Wn);
|
|
2774
2778
|
let o = [];
|
|
2775
2779
|
if (mn(t)) for (let e = 0; e < t.length; e++) {
|
|
2776
|
-
let
|
|
2777
|
-
r(
|
|
2780
|
+
let i = t[e];
|
|
2781
|
+
r(i, n) && o.push(i);
|
|
2778
2782
|
}
|
|
2779
2783
|
else {
|
|
2780
|
-
if (!pn(t)) return
|
|
2784
|
+
if (!pn(t)) return qt("kw_select() BAD kw parameter"), null;
|
|
2781
2785
|
r(t, n) && o.push(t);
|
|
2782
2786
|
}
|
|
2783
2787
|
return o;
|
|
2784
2788
|
}, e.kw_delete = In, e.kw_find_json_in_list = function(e, t, n, r) {
|
|
2785
|
-
if (!n || !mn(t)) return r &&
|
|
2789
|
+
if (!n || !mn(t)) return r && qt("item NULL or kw_list is not a list"), -1;
|
|
2786
2790
|
for (let e = 0; e < t.length; e++) if (tn(n, t[e])) return e;
|
|
2787
|
-
return r &&
|
|
2791
|
+
return r && qt("item not found in this list"), -1;
|
|
2788
2792
|
}, e.kw_find_path = kn, e.kw_flag_t = Lt, e.kw_get_bool = $n, e.kw_get_dict = Un, e.kw_get_dict_value = Fn, e.kw_get_int = Cn, e.kw_get_list = function(e, t, n, r, o) {
|
|
2789
|
-
e && !vn(e) &&
|
|
2790
|
-
let
|
|
2791
|
-
const
|
|
2792
|
-
if (void 0 ===
|
|
2793
|
+
e && !vn(e) && qt("GObj bad instanceof");
|
|
2794
|
+
let i = kn(e, t, n, !1);
|
|
2795
|
+
const l = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
|
|
2796
|
+
if (void 0 === i) {
|
|
2793
2797
|
if (s) {
|
|
2794
2798
|
let o = Array(r);
|
|
2795
2799
|
return Gn(e, t, n, o), o;
|
|
2796
2800
|
}
|
|
2797
|
-
return
|
|
2801
|
+
return l && (qt(`path not found: '${n}'`), Zt(t)), Array(r);
|
|
2798
2802
|
}
|
|
2799
|
-
return _ && In(e, t, n), mn(
|
|
2803
|
+
return _ && In(e, t, n), mn(i) ? Array(i) : (l && (qt(`path value MUST BE an array: ${n}`), Xt(t)), Array(r));
|
|
2800
2804
|
}, e.kw_get_local_storage_value = Yn, e.kw_get_pointer = Pn, e.kw_get_real = function(e, t, n, r, o) {
|
|
2801
|
-
e && !vn(e) &&
|
|
2802
|
-
let
|
|
2803
|
-
const
|
|
2804
|
-
if (void 0 ===
|
|
2805
|
+
e && !vn(e) && qt("GObj bad instanceof");
|
|
2806
|
+
let i = kn(e, t, n, !1);
|
|
2807
|
+
const l = o && o & Lt.KW_REQUIRED, s = o && o & Lt.KW_CREATE, _ = o && o & Lt.KW_EXTRACT;
|
|
2808
|
+
if (void 0 === i) {
|
|
2805
2809
|
if (s) {
|
|
2806
2810
|
let o = Number(r);
|
|
2807
2811
|
return Gn(e, t, n, o), o;
|
|
2808
2812
|
}
|
|
2809
|
-
return
|
|
2813
|
+
return l && (qt(`path not found: '${n}'`), Zt(t)), Number(r);
|
|
2810
2814
|
}
|
|
2811
|
-
return _ && In(e, t, n), Tn(
|
|
2815
|
+
return _ && In(e, t, n), Tn(i) ? Number(i) : (l && (qt(`path value MUST BE a number: ${n}`), Xt(t)), Number(r));
|
|
2812
2816
|
}, e.kw_get_str = Ln, e.kw_has_key = An, e.kw_match_simple = Wn, e.kw_pop = Dn, e.kw_remove_local_storage_value = Jn, e.kw_select = function(e, t, n, r) {
|
|
2813
|
-
if (e && !vn(e) &&
|
|
2817
|
+
if (e && !vn(e) && qt("GObj bad instanceof"), !t) return null;
|
|
2814
2818
|
r || (r = Wn);
|
|
2815
2819
|
let o = [];
|
|
2816
2820
|
if (mn(t)) for (let e = 0; e < t.length; e++) {
|
|
2817
|
-
let
|
|
2818
|
-
r(
|
|
2821
|
+
let i = t[e];
|
|
2822
|
+
r(i, n) && o.push(en(i));
|
|
2819
2823
|
}
|
|
2820
2824
|
else {
|
|
2821
|
-
if (!pn(t)) return
|
|
2825
|
+
if (!pn(t)) return qt("kw_select() BAD kw parameter"), null;
|
|
2822
2826
|
r(t, n) && o.push(en(t));
|
|
2823
2827
|
}
|
|
2824
2828
|
return o;
|
|
2825
|
-
}, e.kw_set_dict_value = Gn, e.kw_set_local_storage_value = Bn, e.kw_set_subdict_value = Vn, e.kwid_collect =
|
|
2826
|
-
e && !vn(e) &&
|
|
2827
|
-
let
|
|
2828
|
-
return
|
|
2829
|
+
}, e.kw_set_dict_value = Gn, e.kw_set_local_storage_value = Bn, e.kw_set_subdict_value = Vn, e.kwid_collect = qn, e.kwid_find_one_record = function(e, t, n, r, o) {
|
|
2830
|
+
e && !vn(e) && qt("GObj bad instanceof");
|
|
2831
|
+
let i = qn(e, t, n, r, o);
|
|
2832
|
+
return i.length > 0 ? i[0] : null;
|
|
2829
2833
|
}, e.kwid_get_ids = function(e, t) {
|
|
2830
|
-
if (e && !vn(e) &&
|
|
2834
|
+
if (e && !vn(e) && qt("GObj bad instanceof"), !t) return [];
|
|
2831
2835
|
let n = [];
|
|
2832
2836
|
if (En(t)) n.push(t);
|
|
2833
2837
|
else if (pn(t)) for (let e in t) t.hasOwnProperty(e) && n.push(e);
|
|
@@ -2839,51 +2843,51 @@ var gobjJs = function(e) {
|
|
|
2839
2843
|
}
|
|
2840
2844
|
});
|
|
2841
2845
|
return n;
|
|
2842
|
-
}, e.kwid_match_id =
|
|
2843
|
-
e && !vn(e) &&
|
|
2846
|
+
}, e.kwid_match_id = Hn, e.kwid_new_dict = function(e, t, n) {
|
|
2847
|
+
e && !vn(e) && qt("GObj bad instanceof");
|
|
2844
2848
|
let r = {};
|
|
2845
2849
|
if (Sn(n) || (t = kn(e, t, n)), pn(t)) r = t;
|
|
2846
2850
|
else if (mn(t)) for (let n = 0; n < t.length; n++) {
|
|
2847
|
-
let o = t[n],
|
|
2848
|
-
Sn(
|
|
2851
|
+
let o = t[n], i = Ln(e, o, "id", "", 0);
|
|
2852
|
+
Sn(i) || (r[i] = o);
|
|
2849
2853
|
}
|
|
2850
|
-
else
|
|
2854
|
+
else qt(`${Ve(e)} kwid_new_dict: data type unknown`);
|
|
2851
2855
|
return r;
|
|
2852
2856
|
}, e.list2options = function(e, t, n) {
|
|
2853
2857
|
t = t || "id", n = n || "value";
|
|
2854
2858
|
let r = [];
|
|
2855
2859
|
if (mn(e)) for (let o = 0; o < e.length; o++) {
|
|
2856
|
-
let
|
|
2857
|
-
if (En(
|
|
2860
|
+
let i = e[o];
|
|
2861
|
+
if (En(i)) r.push({
|
|
2858
2862
|
id: e[o],
|
|
2859
2863
|
value: e[o]
|
|
2860
2864
|
});
|
|
2861
|
-
else if (pn(
|
|
2865
|
+
else if (pn(i)) {
|
|
2862
2866
|
let e = {};
|
|
2863
|
-
if (An(
|
|
2864
|
-
if (!An(
|
|
2865
|
-
if (!(bn(
|
|
2866
|
-
|
|
2867
|
+
if (An(i, t)) {
|
|
2868
|
+
if (!An(i, n)) {
|
|
2869
|
+
if (!(bn(i) > 0)) {
|
|
2870
|
+
qt("list2options(): object without field value: " + n);
|
|
2867
2871
|
continue;
|
|
2868
2872
|
}
|
|
2869
|
-
n = Object.keys(
|
|
2873
|
+
n = Object.keys(i)[0];
|
|
2870
2874
|
}
|
|
2871
|
-
e.id =
|
|
2875
|
+
e.id = i[t], e.value = i[n];
|
|
2872
2876
|
} else {
|
|
2873
|
-
if (!(bn(
|
|
2874
|
-
|
|
2877
|
+
if (!(bn(i) > 0)) {
|
|
2878
|
+
qt("list2options(): object without field id: " + t);
|
|
2875
2879
|
continue;
|
|
2876
2880
|
}
|
|
2877
|
-
t = Object.keys(
|
|
2881
|
+
t = Object.keys(i)[0], e.id = t, e.value = i[t];
|
|
2878
2882
|
}
|
|
2879
2883
|
r.push(e);
|
|
2880
|
-
} else
|
|
2884
|
+
} else qt("list2options(): case1 not implemented");
|
|
2881
2885
|
}
|
|
2882
2886
|
else if (pn(e)) for (let t of Object.keys(e)) r.push({
|
|
2883
2887
|
id: t,
|
|
2884
2888
|
value: t
|
|
2885
2889
|
});
|
|
2886
|
-
else
|
|
2890
|
+
else qt("list2options(): case2 not implemented");
|
|
2887
2891
|
return r;
|
|
2888
2892
|
}, e.load_json_file = function(e, t, n) {
|
|
2889
2893
|
let r = new XMLHttpRequest();
|
|
@@ -2891,36 +2895,42 @@ var gobjJs = function(e) {
|
|
|
2891
2895
|
if (4 === r.readyState) if (200 === r.status || 0 === (e = r).status && e.responseText && e.responseURL.startsWith("file:")) try {
|
|
2892
2896
|
t(JSON.parse(r.responseText));
|
|
2893
2897
|
} catch (e) {
|
|
2894
|
-
n && (
|
|
2898
|
+
n && (qt(`JSON parse status ${r.status}, error: ${e.message}`), n(r.status));
|
|
2895
2899
|
}
|
|
2896
2900
|
else n && n(r.status);
|
|
2897
2901
|
var e;
|
|
2898
2902
|
}, r.send();
|
|
2899
|
-
}, e.log_debug = Qt, e.log_error =
|
|
2900
|
-
let t =
|
|
2903
|
+
}, e.log_debug = Qt, e.log_error = qt, e.log_info = function(e) {
|
|
2904
|
+
let t = Ht(e), n = ar();
|
|
2901
2905
|
Gt && xt("info", t) && Gt("%c" + n + " INFO: " + String(t), "color:cyan"), Bt("info", t, n);
|
|
2902
2906
|
}, e.log_warning = zt, e.msg_iev_get_msg_type = rr, e.msg_iev_get_stack = tr, e.msg_iev_push_stack = er, e.msg_iev_read_key = Xn, e.msg_iev_set_msg_type = nr, e.msg_iev_write_key = Zn, e.node_uuid = cr, e.parseBoolean = On, e.parseSVG = function(e) {
|
|
2903
2907
|
return new DOMParser().parseFromString(e, "image/svg+xml").firstChild;
|
|
2904
2908
|
}, e.refresh_language = function(e, t) {
|
|
2905
|
-
jn(t)
|
|
2909
|
+
if (!jn(t)) return void qt("You must supply a translation function");
|
|
2910
|
+
e || (e = document);
|
|
2911
|
+
const n = (t) => {
|
|
2912
|
+
let n = [];
|
|
2913
|
+
return "function" == typeof e.matches && e.matches(t) && n.push(e), n.push(...e.querySelectorAll(t)), n;
|
|
2914
|
+
};
|
|
2915
|
+
n("[data-i18n]").forEach(function(e) {
|
|
2906
2916
|
let n = e.getAttribute("data-i18n");
|
|
2907
2917
|
for (let r of e.childNodes) if (r.nodeType === Node.TEXT_NODE) {
|
|
2908
2918
|
n || (n = r.nodeValue), r.nodeValue = t(n);
|
|
2909
2919
|
break;
|
|
2910
2920
|
}
|
|
2911
|
-
}),
|
|
2921
|
+
}), n("[data-i18n-title]").forEach(function(e) {
|
|
2912
2922
|
let n = e.getAttribute("data-i18n-title");
|
|
2913
2923
|
n && e.setAttribute("title", t(n));
|
|
2914
|
-
}),
|
|
2924
|
+
}), n("[data-i18n-aria-label]").forEach(function(e) {
|
|
2915
2925
|
let n = e.getAttribute("data-i18n-aria-label");
|
|
2916
2926
|
n && e.setAttribute("aria-label", t(n));
|
|
2917
|
-
}),
|
|
2927
|
+
}), n("[data-i18n-placeholder]").forEach(function(e) {
|
|
2918
2928
|
let n = e.getAttribute("data-i18n-placeholder");
|
|
2919
2929
|
n && e.setAttribute("placeholder", t(n));
|
|
2920
|
-
})
|
|
2930
|
+
});
|
|
2921
2931
|
}, e.register_c_ievent_cli = function() {
|
|
2922
2932
|
return function(e) {
|
|
2923
|
-
if (Vr) return
|
|
2933
|
+
if (Vr) return qt(`GClass ALREADY created: ${e}`), -1;
|
|
2924
2934
|
const t = [
|
|
2925
2935
|
["ST_DISCONNECTED", [
|
|
2926
2936
|
[
|
|
@@ -2935,7 +2945,7 @@ var gobjJs = function(e) {
|
|
|
2935
2945
|
],
|
|
2936
2946
|
[
|
|
2937
2947
|
"EV_TIMEOUT",
|
|
2938
|
-
|
|
2948
|
+
qr,
|
|
2939
2949
|
null
|
|
2940
2950
|
],
|
|
2941
2951
|
[
|
|
@@ -3015,7 +3025,7 @@ var gobjJs = function(e) {
|
|
|
3015
3025
|
}("C_IEVENT_CLI");
|
|
3016
3026
|
}, e.register_c_timer = function() {
|
|
3017
3027
|
return function(e) {
|
|
3018
|
-
if (Nr) return
|
|
3028
|
+
if (Nr) return qt(`GClass ALREADY created: ${e}`), -1;
|
|
3019
3029
|
const t = [["ST_IDLE", [[
|
|
3020
3030
|
"EV_TIMEOUT",
|
|
3021
3031
|
wr,
|
|
@@ -3029,7 +3039,7 @@ var gobjJs = function(e) {
|
|
|
3029
3039
|
}("C_TIMER");
|
|
3030
3040
|
}, e.register_c_yuno = function() {
|
|
3031
3041
|
return function(e) {
|
|
3032
|
-
if (Cr) return
|
|
3042
|
+
if (Cr) return qt(`GClass ALREADY created: ${e}`), -1;
|
|
3033
3043
|
const t = [["ST_IDLE", [[
|
|
3034
3044
|
"EV_TIMEOUT_PERIODIC",
|
|
3035
3045
|
Lr,
|
|
@@ -3056,8 +3066,8 @@ var gobjJs = function(e) {
|
|
|
3056
3066
|
var r = (e + "").substring(0, n), o = (t + "").substring(0, n);
|
|
3057
3067
|
return r === o ? 0 : r > o ? 1 : -1;
|
|
3058
3068
|
}, e.strs_in_list = function(e, t, n) {
|
|
3059
|
-
if (!e) return
|
|
3060
|
-
if (!t) return
|
|
3069
|
+
if (!e) return qt("ERROR: strs_in_list() list empty"), !1;
|
|
3070
|
+
if (!t) return qt("ERROR: strs_in_list() str empty"), !1;
|
|
3061
3071
|
for (let r = 0; r < t.length; r++) if (Qn(e, t[r], n)) return !0;
|
|
3062
3072
|
return !1;
|
|
3063
3073
|
}, e.strstr = function(e, t, n) {
|
|
@@ -3100,9 +3110,9 @@ var gobjJs = function(e) {
|
|
|
3100
3110
|
}, e.timeTracker = function(e = "Time Tracker", t = !1) {
|
|
3101
3111
|
const n = e, r = performance.now();
|
|
3102
3112
|
let o = r;
|
|
3103
|
-
return t && zt(`--\x3e ${n} - starting`), { mark: (e = "Intermediate",
|
|
3104
|
-
const
|
|
3105
|
-
return t && zt(`--\x3e ${n} ${e} - partial: ${s} sec, total: ${_} sec, ${
|
|
3113
|
+
return t && zt(`--\x3e ${n} - starting`), { mark: (e = "Intermediate", i = "") => {
|
|
3114
|
+
const l = performance.now(), s = (l - o) / 1e3, _ = (l - r) / 1e3;
|
|
3115
|
+
return t && zt(`--\x3e ${n} ${e} - partial: ${s} sec, total: ${_} sec, ${i}`), o = l, {
|
|
3106
3116
|
partial: s,
|
|
3107
3117
|
total: _
|
|
3108
3118
|
};
|
|
@@ -3111,7 +3121,7 @@ var gobjJs = function(e) {
|
|
|
3111
3121
|
if (En(t)) {
|
|
3112
3122
|
if (-1 === t.indexOf("^")) {
|
|
3113
3123
|
let n, r = e.hook;
|
|
3114
|
-
if (1 !== gn(r)) return
|
|
3124
|
+
if (1 !== gn(r)) return qt("bad hook 1"), qt(e), qt(t), null;
|
|
3115
3125
|
for (let e of Object.keys(r)) {
|
|
3116
3126
|
n = e, r[e];
|
|
3117
3127
|
break;
|
|
@@ -3123,7 +3133,7 @@ var gobjJs = function(e) {
|
|
|
3123
3133
|
}
|
|
3124
3134
|
{
|
|
3125
3135
|
let n = t.split("^");
|
|
3126
|
-
return 2 !== n.length ? (
|
|
3136
|
+
return 2 !== n.length ? (qt("bad hook 2"), qt(e), qt(t), null) : {
|
|
3127
3137
|
topic_name: n[0],
|
|
3128
3138
|
id: n[1]
|
|
3129
3139
|
};
|
|
@@ -3132,7 +3142,7 @@ var gobjJs = function(e) {
|
|
|
3132
3142
|
return pn(t) ? {
|
|
3133
3143
|
topic_name: t.topic_name,
|
|
3134
3144
|
id: t.id
|
|
3135
|
-
} : (
|
|
3145
|
+
} : (qt("bad hook 3"), qt(e), qt(t), null);
|
|
3136
3146
|
}, e.treedb_encoder_fkey = function(e, t) {
|
|
3137
3147
|
let n = Tr(e, t);
|
|
3138
3148
|
return n ? n.topic_name + "^" + n.id + "^" + n.hook_name : null;
|