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