@yuneta/gobj-js 7.26.7 → 7.26.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/gobj-js.cjs.js +42 -9
- package/dist/gobj-js.cjs.js.map +1 -1
- package/dist/gobj-js.cjs.min.js +111 -93
- package/dist/gobj-js.cjs.min.js.map +1 -1
- package/dist/gobj-js.es.js +42 -9
- package/dist/gobj-js.es.js.map +1 -1
- package/dist/gobj-js.es.min.js +26 -8
- package/dist/gobj-js.es.min.js.map +1 -1
- package/dist/gobj-js.iife.js +42 -9
- package/dist/gobj-js.iife.js.map +1 -1
- package/dist/gobj-js.iife.min.js +168 -150
- package/dist/gobj-js.iife.min.js.map +1 -1
- package/dist/gobj-js.umd.js +42 -9
- package/dist/gobj-js.umd.js.map +1 -1
- package/dist/gobj-js.umd.min.js +168 -150
- package/dist/gobj-js.umd.min.js.map +1 -1
- package/package.json +1 -1
package/dist/gobj-js.iife.min.js
CHANGED
|
@@ -130,7 +130,7 @@ var gobjJs = function(e) {
|
|
|
130
130
|
data: l || []
|
|
131
131
|
};
|
|
132
132
|
}
|
|
133
|
-
var s = "7.0.0a", i = null, _ = null, a = null, u = null, c = null, f = null, g = [], d = Object.create(null), b = Object.create(null), p = null, m = null, h = 0,
|
|
133
|
+
var s = "7.0.0a", i = null, _ = null, a = null, u = null, c = null, f = null, g = [], d = Object.create(null), b = Object.create(null), p = null, m = null, h = 0, E = Object.freeze({
|
|
134
134
|
DTP_STRING: 1,
|
|
135
135
|
DTP_BOOLEAN: 2,
|
|
136
136
|
DTP_INTEGER: 3,
|
|
@@ -140,8 +140,8 @@ var gobjJs = function(e) {
|
|
|
140
140
|
DTP_JSON: 7,
|
|
141
141
|
DTP_POINTER: 8
|
|
142
142
|
});
|
|
143
|
-
|
|
144
|
-
var
|
|
143
|
+
E.DTP_POINTER;
|
|
144
|
+
var y = Object.freeze({
|
|
145
145
|
SDF_NOTACCESS: 1,
|
|
146
146
|
SDF_RD: 2,
|
|
147
147
|
SDF_WR: 4,
|
|
@@ -164,7 +164,7 @@ var gobjJs = function(e) {
|
|
|
164
164
|
SDF_AUTHZ_S: 524288,
|
|
165
165
|
SDF_AUTHZ_RS: 1048576
|
|
166
166
|
});
|
|
167
|
-
|
|
167
|
+
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;
|
|
168
168
|
var T = class {
|
|
169
169
|
constructor(e, t, n = 0, r = null, l = "", o = null, s = null, i = 0, _ = null, a = null, u = null) {
|
|
170
170
|
this.type = e, this.name = t, this.alias = o, this.flag = n, this.default_value = r, this.header = s, this.fillspace = i, this.description = l, this.json_fn = _, this.schema = a, this.authpth = u;
|
|
@@ -221,7 +221,7 @@ var gobjJs = function(e) {
|
|
|
221
221
|
};
|
|
222
222
|
var C = 1;
|
|
223
223
|
function L(e) {
|
|
224
|
-
Zn(e) && (e = JSON.stringify(e)),
|
|
224
|
+
Zn(e) && (e = JSON.stringify(e)), yn(" ".repeat(Math.max(1, 2 * h)) + String(e));
|
|
225
225
|
}
|
|
226
226
|
var P = Object.freeze({
|
|
227
227
|
TRACE_MACHINE: 65536,
|
|
@@ -425,19 +425,19 @@ var gobjJs = function(e) {
|
|
|
425
425
|
function ae(e, t, n) {
|
|
426
426
|
let r, l = n.default_value;
|
|
427
427
|
switch (n.type) {
|
|
428
|
-
case
|
|
428
|
+
case E.DTP_STRING:
|
|
429
429
|
r = String(l);
|
|
430
430
|
break;
|
|
431
|
-
case
|
|
431
|
+
case E.DTP_BOOLEAN:
|
|
432
432
|
r = _r(l);
|
|
433
433
|
break;
|
|
434
|
-
case
|
|
434
|
+
case E.DTP_INTEGER:
|
|
435
435
|
r = parseInt(l), isNaN(r) && hn(`${et(e)}: attr NaN: ${n.name}`);
|
|
436
436
|
break;
|
|
437
|
-
case
|
|
437
|
+
case E.DTP_REAL:
|
|
438
438
|
r = Number(l), isNaN(r) && hn(`${et(e)}: attr NaN: ${n.name}`);
|
|
439
439
|
break;
|
|
440
|
-
case
|
|
440
|
+
case E.DTP_LIST:
|
|
441
441
|
if (tr(l)) try {
|
|
442
442
|
r = JSON.parse(l);
|
|
443
443
|
} catch (e) {
|
|
@@ -446,7 +446,7 @@ var gobjJs = function(e) {
|
|
|
446
446
|
else r = l;
|
|
447
447
|
er(r) || (r = []);
|
|
448
448
|
break;
|
|
449
|
-
case
|
|
449
|
+
case E.DTP_DICT:
|
|
450
450
|
if (tr(l)) try {
|
|
451
451
|
r = JSON.parse(l);
|
|
452
452
|
} catch (e) {
|
|
@@ -455,7 +455,7 @@ var gobjJs = function(e) {
|
|
|
455
455
|
else r = l;
|
|
456
456
|
Zn(r) || (r = {});
|
|
457
457
|
break;
|
|
458
|
-
case
|
|
458
|
+
case E.DTP_JSON:
|
|
459
459
|
if ("" === l || void 0 === l) r = null;
|
|
460
460
|
else if (tr(l)) try {
|
|
461
461
|
r = JSON.parse(l);
|
|
@@ -464,14 +464,14 @@ var gobjJs = function(e) {
|
|
|
464
464
|
}
|
|
465
465
|
else r = l;
|
|
466
466
|
break;
|
|
467
|
-
case
|
|
467
|
+
case E.DTP_POINTER: r = l;
|
|
468
468
|
}
|
|
469
469
|
return void 0 === r && (hn(`default_value WRONG, it: ${n.name}, value: ${n.default_value}`), r = null), t[n.name] = r, 0;
|
|
470
470
|
}
|
|
471
471
|
function ue(e, t, n, r) {
|
|
472
472
|
let l;
|
|
473
473
|
switch (n.type) {
|
|
474
|
-
case
|
|
474
|
+
case E.DTP_STRING:
|
|
475
475
|
if (null == r) l = "";
|
|
476
476
|
else if (tr(r)) l = String(r);
|
|
477
477
|
else {
|
|
@@ -479,16 +479,16 @@ var gobjJs = function(e) {
|
|
|
479
479
|
e && (l = String(e));
|
|
480
480
|
}
|
|
481
481
|
break;
|
|
482
|
-
case
|
|
482
|
+
case E.DTP_BOOLEAN:
|
|
483
483
|
l = _r(r);
|
|
484
484
|
break;
|
|
485
|
-
case
|
|
485
|
+
case E.DTP_INTEGER:
|
|
486
486
|
if (l = parseInt(r), isNaN(l)) return hn(`${et(e)}: attr NaN: ${n.name}`), -1;
|
|
487
487
|
break;
|
|
488
|
-
case
|
|
488
|
+
case E.DTP_REAL:
|
|
489
489
|
if (l = Number(r), isNaN(l)) return hn(`${et(e)}: attr NaN: ${n.name}`), -1;
|
|
490
490
|
break;
|
|
491
|
-
case
|
|
491
|
+
case E.DTP_LIST:
|
|
492
492
|
if (tr(r)) try {
|
|
493
493
|
l = JSON.parse(r);
|
|
494
494
|
} catch (e) {
|
|
@@ -497,7 +497,7 @@ var gobjJs = function(e) {
|
|
|
497
497
|
else l = r;
|
|
498
498
|
if (!er(l)) return hn(`attr must be an array: ${n.name}`), -1;
|
|
499
499
|
break;
|
|
500
|
-
case
|
|
500
|
+
case E.DTP_DICT:
|
|
501
501
|
if (tr(r)) try {
|
|
502
502
|
l = JSON.parse(r);
|
|
503
503
|
} catch (e) {
|
|
@@ -506,7 +506,7 @@ var gobjJs = function(e) {
|
|
|
506
506
|
else l = r;
|
|
507
507
|
if (!Zn(l)) return hn(`attr must be an object: ${n.name}`), -1;
|
|
508
508
|
break;
|
|
509
|
-
case
|
|
509
|
+
case E.DTP_JSON:
|
|
510
510
|
if (l = r, tr(r)) {
|
|
511
511
|
const e = r.trim();
|
|
512
512
|
if (e.startsWith("{") || e.startsWith("[")) try {
|
|
@@ -516,7 +516,7 @@ var gobjJs = function(e) {
|
|
|
516
516
|
}
|
|
517
517
|
}
|
|
518
518
|
break;
|
|
519
|
-
case
|
|
519
|
+
case E.DTP_POINTER: l = r;
|
|
520
520
|
}
|
|
521
521
|
return void 0 === l && hn(`${et(e)}: attr undefined: ${n.name}`), t[n.name] = l, Zn(e.priv) && Object.prototype.hasOwnProperty.call(e.priv, n.name) && (e.priv[n.name] = l), e.obflag & R.obflag_created && !(e.obflag & R.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, n.name), 0;
|
|
522
522
|
}
|
|
@@ -551,7 +551,7 @@ var gobjJs = function(e) {
|
|
|
551
551
|
const l = r.length;
|
|
552
552
|
for (let e = 0; e < l; e++) {
|
|
553
553
|
let n = r[e][0], l = r[e][1], o = r[e][2];
|
|
554
|
-
ir(n) ||
|
|
554
|
+
ir(n) || Ee(c, t, n, l, o);
|
|
555
555
|
}
|
|
556
556
|
}
|
|
557
557
|
for (let e = 0; e < t.length; e++) {
|
|
@@ -596,17 +596,17 @@ var gobjJs = function(e) {
|
|
|
596
596
|
function he(e, t) {
|
|
597
597
|
return e instanceof O ? pe(e, t) ? (hn(`state already exists: ${t}`), -1) : (e.dl_states.push(new A(t)), 0) : (hn("Cannot add state, typeof not GClass"), -1);
|
|
598
598
|
}
|
|
599
|
-
function
|
|
599
|
+
function Ee(e, t, n, r, l) {
|
|
600
600
|
if (!(e instanceof O)) return hn("Cannot add state, typeof not GClass"), -1;
|
|
601
601
|
if (ir(t)) return hn("state_name EMPTY"), -1;
|
|
602
602
|
let o = pe(e, t);
|
|
603
603
|
return o ? me(o, n) ? (hn(`event already exists: gclass ${e.gclass_name}, state ${t}, event ${n}`), -1) : (o.dl_actions.push(new k(n, r, l)), 0) : (hn(`state not found: ${t}`), -1);
|
|
604
604
|
}
|
|
605
|
-
function
|
|
605
|
+
function ye(e, t, n) {
|
|
606
606
|
ir(t) || e.push(new I(t, n));
|
|
607
607
|
}
|
|
608
608
|
function Te(e, t, n) {
|
|
609
|
-
return e instanceof O ?
|
|
609
|
+
return e instanceof O ? ye(e.dl_events, t, n) : (hn("Cannot add state, typeof not GClass"), -1);
|
|
610
610
|
}
|
|
611
611
|
function ve(e, t) {
|
|
612
612
|
if (!(e instanceof O)) return hn("Cannot add state, typeof not GClass"), 0;
|
|
@@ -680,7 +680,7 @@ var gobjJs = function(e) {
|
|
|
680
680
|
let o = 0;
|
|
681
681
|
for (const [s, i] of Object.entries(t)) {
|
|
682
682
|
const t = ge(l.gclass, s, !1);
|
|
683
|
-
t ? (-1 === n || t.flag & n) && (t.flag &
|
|
683
|
+
t ? (-1 === n || t.flag & n) && (t.flag & y.SDF_DEPRECATED && En(`${et(l)}: Deprecated attribute used in gobj creation: ${s}`), o += ue(l, e, t, i)) : r && (r(l, s), o--);
|
|
684
684
|
}
|
|
685
685
|
return o;
|
|
686
686
|
})(ce(e), r, -1, e.gclass.gclass_flag & w.gcflag_ignore_unknown_attrs ? 0 : ke, e) < 0 && (hn(`${et(e)} json2data() FAILED`), Un(r));
|
|
@@ -694,7 +694,7 @@ var gobjJs = function(e) {
|
|
|
694
694
|
if (!("string" == typeof l || l instanceof S)) return hn(`BAD TYPE of parent: ${l}`), null;
|
|
695
695
|
if (tr(l)) {
|
|
696
696
|
const e = l;
|
|
697
|
-
if (!(l = we(e))) return
|
|
697
|
+
if (!(l = we(e))) return En(`parent service not found: ${e}`), null;
|
|
698
698
|
}
|
|
699
699
|
}
|
|
700
700
|
if (o & N.gobj_flag_service && we(e, !1)) return hn(`service ALREADY registered: ${t}^${e}`), null;
|
|
@@ -757,7 +757,7 @@ var gobjJs = function(e) {
|
|
|
757
757
|
function Ve(e) {
|
|
758
758
|
if (ot(e)) return hn("gobj NULL or DESTROYED"), -1;
|
|
759
759
|
if (!e.running) return hn(`${et(e)}: GObj NOT RUNNING`), -1;
|
|
760
|
-
e.playing && (
|
|
760
|
+
e.playing && (En(`${et(e)}: GObj stopping without previous pause`), xe(e)), J(e) && L(n("⏹ ⏹ stop: %s", tt(e))), e.running = !1;
|
|
761
761
|
let t = 0;
|
|
762
762
|
return e.gclass.gmt.mt_stop && (t = e.gclass.gmt.mt_stop(e)), t;
|
|
763
763
|
}
|
|
@@ -773,7 +773,7 @@ var gobjJs = function(e) {
|
|
|
773
773
|
if (e.disabled) return hn(`${et(e)}: GObj DISABLED`), -1;
|
|
774
774
|
if (!Ke(e)) {
|
|
775
775
|
if (e.gclass.gclass_flag & w.gcflag_required_start_to_play) return hn(`${et(e)}: Cannot play, start not done`), -1;
|
|
776
|
-
|
|
776
|
+
En(`${et(e)}: GObj playing without previous start`), Pe(e);
|
|
777
777
|
}
|
|
778
778
|
J(e) && L(n("⏯ ⏯ play: %s", tt(e))), e.playing = !0;
|
|
779
779
|
let t = 0;
|
|
@@ -841,7 +841,7 @@ var gobjJs = function(e) {
|
|
|
841
841
|
}
|
|
842
842
|
function it(e, t) {
|
|
843
843
|
if (!sr(e)) return hn("gobj NULL of bad type"), null;
|
|
844
|
-
e.bottom_gobj && t &&
|
|
844
|
+
e.bottom_gobj && t && En(`${et(e)}: bottom_gobj already set`), e.bottom_gobj = t;
|
|
845
845
|
}
|
|
846
846
|
function _t(e, t, n) {
|
|
847
847
|
return sr(e) ? t ? ge(e.gclass, t, n) : e.gclass.attrs_table : (hn("gobj NULL of bad type"), null);
|
|
@@ -937,7 +937,7 @@ var gobjJs = function(e) {
|
|
|
937
937
|
function ht(e, t) {
|
|
938
938
|
return !ir(t) && !!ge(e.gclass, t, !1);
|
|
939
939
|
}
|
|
940
|
-
function
|
|
940
|
+
function Et(e, t, n) {
|
|
941
941
|
let r = e.jn_attrs;
|
|
942
942
|
if (t in r && Object.prototype.hasOwnProperty.call(r, t)) {
|
|
943
943
|
let n = r[t];
|
|
@@ -945,7 +945,7 @@ var gobjJs = function(e) {
|
|
|
945
945
|
}
|
|
946
946
|
return hn(`${et(e)}: GClass Attribute NOT FOUND, attr ${t}`), null;
|
|
947
947
|
}
|
|
948
|
-
function
|
|
948
|
+
function yt(e, t, n) {
|
|
949
949
|
let r = {}, l = e.gclass.attrs_table;
|
|
950
950
|
for (let n = 0; n < l.length; n++) {
|
|
951
951
|
const o = l[n];
|
|
@@ -1132,16 +1132,16 @@ var gobjJs = function(e) {
|
|
|
1132
1132
|
return null;
|
|
1133
1133
|
}
|
|
1134
1134
|
var Wt = [
|
|
1135
|
-
j(
|
|
1136
|
-
j(
|
|
1137
|
-
j(
|
|
1138
|
-
j(
|
|
1139
|
-
j(
|
|
1140
|
-
j(
|
|
1141
|
-
j(
|
|
1142
|
-
j(
|
|
1143
|
-
j(
|
|
1144
|
-
j(
|
|
1135
|
+
j(E.DTP_POINTER, "publisher", 0, null, "publisher gobj"),
|
|
1136
|
+
j(E.DTP_POINTER, "subscriber", 0, null, "subscriber gobj"),
|
|
1137
|
+
j(E.DTP_STRING, "event", 0, "", "event name subscribed"),
|
|
1138
|
+
j(E.DTP_STRING, "renamed_event", 0, "", "rename event name"),
|
|
1139
|
+
j(E.DTP_INTEGER, "subs_flag", 0, 0, "subscription flag"),
|
|
1140
|
+
j(E.DTP_JSON, "__config__", 0, null, "subscription config"),
|
|
1141
|
+
j(E.DTP_JSON, "__global__", 0, null, "global kw, merge in publishing"),
|
|
1142
|
+
j(E.DTP_JSON, "__local__", 0, null, "local kw, remove in publishing"),
|
|
1143
|
+
j(E.DTP_JSON, "__filter__", 0, null, "filter kw, filter in publishing"),
|
|
1144
|
+
j(E.DTP_STRING, "__service__", 0, "", "subscription service"),
|
|
1145
1145
|
v()
|
|
1146
1146
|
];
|
|
1147
1147
|
function xt(e, t) {
|
|
@@ -1191,7 +1191,7 @@ var gobjJs = function(e) {
|
|
|
1191
1191
|
}
|
|
1192
1192
|
function Jt(e, t, r, l) {
|
|
1193
1193
|
let o = vr(e, t, "publisher", null, Zt.KW_REQUIRED), s = vr(e, t, "subscriber", null, Zt.KW_REQUIRED), i = Tr(e, t, "event", "", Zt.KW_REQUIRED);
|
|
1194
|
-
if (!!(
|
|
1194
|
+
if (!!(yr(e, t, "subs_flag", null, Zt.KW_REQUIRED) & Gt.__hard_subscription__) && !r) return -1;
|
|
1195
1195
|
let _ = B(s) || B(o);
|
|
1196
1196
|
if (Bt(o.dl_subscriptions, t) < 0) return _ && L(n("💜💜👎 unsubscribing event '%s': publisher %s, subscriber'%s', ALREADY REMOVED", i || "", et(o), et(s))), 1;
|
|
1197
1197
|
_ && (L(n("💜💜👎 unsubscribing event '%s': publisher %s, subscriber'%s'", i || "", et(o), et(s))), vn(t)), o.obflag & R.obflag_destroyed || l || o.gclass.gmt.mt_subscription_deleted && o.gclass.gmt.mt_subscription_deleted(o, t);
|
|
@@ -1213,11 +1213,11 @@ var gobjJs = function(e) {
|
|
|
1213
1213
|
}), ir(t)) t = "";
|
|
1214
1214
|
else if (!(Ct(e, t, $.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & w.gcflag_no_check_output_events)) return hn(`event NOT in output event list: ${et(e)}, ${t}`), 0;
|
|
1215
1215
|
let s = xt(r, t), i = Yt(e.dl_subscriptions, e, t, s.renamed_event, s.kw, l), _ = null;
|
|
1216
|
-
for (let t = 0; t < i.length; t++) if (
|
|
1216
|
+
for (let t = 0; t < i.length; t++) if (yr(e, i[t], "subs_flag", 0, Zt.KW_REQUIRED) & Gt.__hard_subscription__) {
|
|
1217
1217
|
_ = i[t];
|
|
1218
1218
|
break;
|
|
1219
1219
|
}
|
|
1220
|
-
if (_) return
|
|
1220
|
+
if (_) return En(`${et(e)}: Hard subscription REPEATED, the one there is kept and returned (event: ${t}, subscriber: ${et(l)})`), _;
|
|
1221
1221
|
Qn(i) > 0 && (hn(`${et(e)}: ${Qn(i)} subscription(s) REPEATED, will be deleted and override`), vn(i, "subscription REPEATED"), Ht(e, i, !1));
|
|
1222
1222
|
let a = function(e, t, n, r) {
|
|
1223
1223
|
let l = _e(e, Wt);
|
|
@@ -1238,11 +1238,11 @@ var gobjJs = function(e) {
|
|
|
1238
1238
|
} else hn(`${et(e)}: EVENT NOT FOUND (__rename_event_name__: ${s})`);
|
|
1239
1239
|
}
|
|
1240
1240
|
if (gr(n, "__hard_subscription__")) {
|
|
1241
|
-
let t =
|
|
1241
|
+
let t = Er(e, n, "__hard_subscription__", !1);
|
|
1242
1242
|
Kn(n, "__hard_subscription__"), t && (o |= Gt.__hard_subscription__);
|
|
1243
1243
|
}
|
|
1244
1244
|
if (gr(n, "__own_event__")) {
|
|
1245
|
-
let t =
|
|
1245
|
+
let t = Er(e, n, "__own_event__", !1);
|
|
1246
1246
|
Kn(n, "__own_event__"), t && (o |= Gt.__own_event__);
|
|
1247
1247
|
}
|
|
1248
1248
|
}
|
|
@@ -1260,7 +1260,7 @@ var gobjJs = function(e) {
|
|
|
1260
1260
|
function Ht(e, t, n) {
|
|
1261
1261
|
let r = [...t], l = 0;
|
|
1262
1262
|
for (let t = 0; t < r.length; t++) Jt(e, r[t], n, !1) > 0 && l++;
|
|
1263
|
-
return l &&
|
|
1263
|
+
return l && En(`${et(e)}: Subscription(s) already removed, nothing to remove (count: ${l})`), 0;
|
|
1264
1264
|
}
|
|
1265
1265
|
function zt(e, t, n, r) {
|
|
1266
1266
|
return null == n && (n = {}), Yt(e.dl_subscriptions, e, t, null, n, r);
|
|
@@ -1288,7 +1288,7 @@ var gobjJs = function(e) {
|
|
|
1288
1288
|
}
|
|
1289
1289
|
let u = vr(e, a, "subscriber", null, Zt.KW_REQUIRED);
|
|
1290
1290
|
if (!u || ot(u)) continue;
|
|
1291
|
-
let c =
|
|
1291
|
+
let c = yr(e, a, "subs_flag", 0, Zt.KW_REQUIRED), f = Tr(e, a, "event", "", Zt.KW_REQUIRED);
|
|
1292
1292
|
if (ir(f) || 0 === ur(f, t)) {
|
|
1293
1293
|
jr(e, a, "__config__", null, 0);
|
|
1294
1294
|
let l = jr(e, a, "__global__", null, 0), s = jr(e, a, "__local__", null, 0), f = Or(e, a, "__filter__", null, 0), g = a.renamed_event;
|
|
@@ -1308,7 +1308,7 @@ var gobjJs = function(e) {
|
|
|
1308
1308
|
if (_ += m, i++, ot(e)) break;
|
|
1309
1309
|
}
|
|
1310
1310
|
}
|
|
1311
|
-
return i || l && l.event_flag & $.EVF_NO_WARN_SUBS ||
|
|
1311
|
+
return i || l && l.event_flag & $.EVF_NO_WARN_SUBS || En(`${et(e)}: Publish event WITHOUT subscribers, ev ${t}`), _;
|
|
1312
1312
|
}
|
|
1313
1313
|
var Zt = Object.freeze({
|
|
1314
1314
|
KW_REQUIRED: 1,
|
|
@@ -1405,11 +1405,11 @@ var gobjJs = function(e) {
|
|
|
1405
1405
|
let n = mn(e, ...t), r = el();
|
|
1406
1406
|
tn && (tn === en.error ? cn("error", n) && tn("%c" + r + " ERROR: " + String(n), "color:red") : (cn("error", n) && en.error("%c" + r + " ERROR: " + String(n), "color:red"), tn(`${r} ERROR: ${String(n)}`))), gn("error", n, r);
|
|
1407
1407
|
}
|
|
1408
|
-
function
|
|
1408
|
+
function En(e, ...t) {
|
|
1409
1409
|
let n = mn(e, ...t), r = el();
|
|
1410
1410
|
nn && (nn === en.warn ? cn("warning", n) && nn("%c" + r + " WARNING: " + String(n), "color:yellow") : (cn("warning", n) && en.warn("%c" + r + " WARNING: " + String(n), "color:yellow"), nn(`${r} WARNING: ${String(n)}`))), gn("warning", n, r);
|
|
1411
1411
|
}
|
|
1412
|
-
function
|
|
1412
|
+
function yn(e, ...t) {
|
|
1413
1413
|
let n = mn(e, ...t), r = el();
|
|
1414
1414
|
ln && cn("debug", n) && ln("%c" + r + " DEBUG: " + String(n), "color:silver"), gn("debug", n, r);
|
|
1415
1415
|
}
|
|
@@ -1764,7 +1764,7 @@ var gobjJs = function(e) {
|
|
|
1764
1764
|
else if (s = mr(e, t, l, !0), void 0 === s) return -1;
|
|
1765
1765
|
return er(s) ? (hn(`${r}kw_delete(): cannot delete an item of a list: '${n}'`), -1) : Zn(s) && Object.prototype.hasOwnProperty.call(s, o) ? (delete s[o], 0) : (hn(`${r}kw_delete(): path not found: '${n}'`), -1);
|
|
1766
1766
|
}
|
|
1767
|
-
function
|
|
1767
|
+
function Er(e, t, n, r, l) {
|
|
1768
1768
|
e && !sr(e) && hn("GObj bad instanceof");
|
|
1769
1769
|
let o = mr(e, t, n, !1);
|
|
1770
1770
|
const s = l && l & Zt.KW_REQUIRED, i = l && l & Zt.KW_CREATE, _ = l && l & Zt.KW_EXTRACT, a = l && l & Zt.KW_WILD_NUMBER;
|
|
@@ -1785,7 +1785,7 @@ var gobjJs = function(e) {
|
|
|
1785
1785
|
}
|
|
1786
1786
|
return _ && hr(e, t, n), u;
|
|
1787
1787
|
}
|
|
1788
|
-
function
|
|
1788
|
+
function yr(e, t, n, r, l) {
|
|
1789
1789
|
e && !sr(e) && hn("GObj bad instanceof");
|
|
1790
1790
|
let o = mr(e, t, n, !1);
|
|
1791
1791
|
const s = l && l & Zt.KW_REQUIRED, i = l && l & Zt.KW_CREATE, _ = l && l & Zt.KW_EXTRACT, a = l && l & Zt.KW_WILD_NUMBER;
|
|
@@ -1882,8 +1882,24 @@ var gobjJs = function(e) {
|
|
|
1882
1882
|
}
|
|
1883
1883
|
function wr(e, t, n, r, l) {
|
|
1884
1884
|
if (e && !sr(e) && hn("GObj bad instanceof"), !Zn(t)) return hn("kw is not an object"), -1;
|
|
1885
|
-
let o =
|
|
1886
|
-
|
|
1885
|
+
let o = mr(e, t, n, !1);
|
|
1886
|
+
if (void 0 === o) {
|
|
1887
|
+
if (!tr(n) || function(e, t) {
|
|
1888
|
+
let n = t.split("`"), r = e;
|
|
1889
|
+
for (let e = 0; e < n.length - 1; e++) {
|
|
1890
|
+
if (er(r)) {
|
|
1891
|
+
const t = pr(r, n[e]);
|
|
1892
|
+
if (t < 0) return !1;
|
|
1893
|
+
r = r[t];
|
|
1894
|
+
} else r = Object.prototype.hasOwnProperty.call(r, n[e]) ? r[n[e]] : void 0;
|
|
1895
|
+
if (null == r) return !1;
|
|
1896
|
+
if (!Zn(r) && !er(r)) return !0;
|
|
1897
|
+
}
|
|
1898
|
+
return !1;
|
|
1899
|
+
}(t, n)) return -1;
|
|
1900
|
+
if (o = {}, Sr(e, t, n, o) < 0) return -1;
|
|
1901
|
+
}
|
|
1902
|
+
return Zn(o) ? (br(o, r, l), 0) : (hn(`subdict is not an object: '${n}'`), -1);
|
|
1887
1903
|
}
|
|
1888
1904
|
function Nr(e, t, r) {
|
|
1889
1905
|
let l = "", o = !1;
|
|
@@ -2320,9 +2336,9 @@ var gobjJs = function(e) {
|
|
|
2320
2336
|
return t.is_file && (t.type = "file"), t;
|
|
2321
2337
|
}
|
|
2322
2338
|
var bl = [
|
|
2323
|
-
j(
|
|
2324
|
-
j(
|
|
2325
|
-
j(
|
|
2339
|
+
j(E.DTP_POINTER, "subscriber", 0, null, "Subscriber of output events"),
|
|
2340
|
+
j(E.DTP_BOOLEAN, "periodic", 0, 0, "True for periodic timeouts"),
|
|
2341
|
+
j(E.DTP_INTEGER, "msec", 0, 0, "Timeout in milliseconds"),
|
|
2326
2342
|
v()
|
|
2327
2343
|
], pl = {
|
|
2328
2344
|
periodic: !1,
|
|
@@ -2335,7 +2351,7 @@ var gobjJs = function(e) {
|
|
|
2335
2351
|
Vt(e, "EV_TIMEOUT", {}, e);
|
|
2336
2352
|
}, l.msec) : l.timer_id = -1, lt(e) ? Vt(nt(e), o, {}, e) : Xt(e, o, {}), l.periodic || -1 !== l.timer_id || Ke(e) && Ve(e), 0;
|
|
2337
2353
|
}
|
|
2338
|
-
var
|
|
2354
|
+
var El = {
|
|
2339
2355
|
mt_create: function(e) {
|
|
2340
2356
|
let t = e.priv;
|
|
2341
2357
|
const n = Ot(e, "subscriber");
|
|
@@ -2360,7 +2376,7 @@ var gobjJs = function(e) {
|
|
|
2360
2376
|
},
|
|
2361
2377
|
mt_destroy: function(e) {}
|
|
2362
2378
|
};
|
|
2363
|
-
function
|
|
2379
|
+
function yl(e, t) {
|
|
2364
2380
|
return e instanceof S ? "C_TIMER" !== Ze(e) ? (hn("not C_TIMER GObj"), -1) : (Nt(e, "periodic", !1), void Rt(e, "msec", t)) : (hn("not GObj TYPE"), -1);
|
|
2365
2381
|
}
|
|
2366
2382
|
function Tl(e, t) {
|
|
@@ -2370,28 +2386,28 @@ var gobjJs = function(e) {
|
|
|
2370
2386
|
return e instanceof S ? "C_TIMER" !== Ze(e) ? (hn("not C_TIMER GObj"), -1) : void Rt(e, "msec", -1) : (hn("not GObj TYPE"), -1);
|
|
2371
2387
|
}
|
|
2372
2388
|
var jl = [
|
|
2373
|
-
j(
|
|
2374
|
-
j(
|
|
2375
|
-
j(
|
|
2376
|
-
j(
|
|
2377
|
-
j(
|
|
2378
|
-
j(
|
|
2379
|
-
j(
|
|
2380
|
-
j(
|
|
2381
|
-
j(
|
|
2382
|
-
j(
|
|
2383
|
-
j(
|
|
2384
|
-
j(
|
|
2385
|
-
j(
|
|
2386
|
-
j(
|
|
2387
|
-
j(
|
|
2388
|
-
j(
|
|
2389
|
-
j(
|
|
2390
|
-
j(
|
|
2389
|
+
j(E.DTP_BOOLEAN, "changesLost", 0, !1, "Set true to warn about leaving page"),
|
|
2390
|
+
j(E.DTP_BOOLEAN, "browser_beforeunload", 0, !1, "Set true to refreshing browser"),
|
|
2391
|
+
j(E.DTP_STRING, "__username__", 0, "", "Username"),
|
|
2392
|
+
j(E.DTP_STRING, "start_date", 0, "", "Yuno starting date"),
|
|
2393
|
+
j(E.DTP_STRING, "node_uuid", 0, "", "uuid of node"),
|
|
2394
|
+
j(E.DTP_STRING, "yuno_role", 0, "", "Yuno role"),
|
|
2395
|
+
j(E.DTP_STRING, "yuno_id", 0, "", "Yuno Id. Set by agent"),
|
|
2396
|
+
j(E.DTP_STRING, "yuno_name", 0, "", "Yuno name. Set by agent"),
|
|
2397
|
+
j(E.DTP_STRING, "yuno_tag", 0, "", "Tags of yuno. Set by agent"),
|
|
2398
|
+
j(E.DTP_STRING, "yuno_release", 0, "", "Yuno Release. Set by agent"),
|
|
2399
|
+
j(E.DTP_STRING, "yuno_version", 0, "", "Yuno version (APP_VERSION)"),
|
|
2400
|
+
j(E.DTP_STRING, "yuneta_version", 0, s, "Yuneta version"),
|
|
2401
|
+
j(E.DTP_LIST, "required_services", 0, "[]", "Required services"),
|
|
2402
|
+
j(E.DTP_DICT, "trace_levels", y.SDF_PERSIST, "{}", "Trace levels"),
|
|
2403
|
+
j(E.DTP_DICT, "no_trace_levels", y.SDF_PERSIST, "{}", "No trace levels"),
|
|
2404
|
+
j(E.DTP_POINTER, "trace_ievent_callback", 0, null, "Where the traffic trace goes (C_IEVENT_CLI levels ievents/ievents2); console when null"),
|
|
2405
|
+
j(E.DTP_BOOLEAN, "developer", 0, !1, "Developer mode enabled"),
|
|
2406
|
+
j(E.DTP_INTEGER, "periodic_timeout", 0, "1000", "Timeout periodic, in miliseconds."),
|
|
2391
2407
|
v()
|
|
2392
2408
|
], Ol = { gobj_timer: null }, Sl = null;
|
|
2393
2409
|
function wl(e, t, n, r) {
|
|
2394
|
-
let l =
|
|
2410
|
+
let l = Et(e, t);
|
|
2395
2411
|
return Zn(l) || (l = {}), l[n] = r, St(e, t, l), De(e, t);
|
|
2396
2412
|
}
|
|
2397
2413
|
function Nl(e) {
|
|
@@ -2408,8 +2424,8 @@ var gobjJs = function(e) {
|
|
|
2408
2424
|
var Dl = {
|
|
2409
2425
|
mt_create: function(e) {
|
|
2410
2426
|
let t = e.priv;
|
|
2411
|
-
$t(e, "start_date", el()), $t(e, "node_uuid", nl()), e.priv.gobj_timer = Ce(Xe(e), "C_TIMER", {}, e), t.periodic_timeout =
|
|
2412
|
-
let t =
|
|
2427
|
+
$t(e, "start_date", el()), $t(e, "node_uuid", nl()), e.priv.gobj_timer = Ce(Xe(e), "C_TIMER", {}, e), t.periodic_timeout = Et(e, "periodic_timeout"), function(e) {
|
|
2428
|
+
let t = Et(e, "trace_levels");
|
|
2413
2429
|
if (!Zn(t)) return 0;
|
|
2414
2430
|
let n = t.__global_trace__;
|
|
2415
2431
|
if (er(n)) {
|
|
@@ -2424,7 +2440,7 @@ var gobjJs = function(e) {
|
|
|
2424
2440
|
} else hn(`${Xe(e)}: trace_levels of ${n} MUST be a list`);
|
|
2425
2441
|
}
|
|
2426
2442
|
}(e), function(e) {
|
|
2427
|
-
let t =
|
|
2443
|
+
let t = Et(e, "no_trace_levels");
|
|
2428
2444
|
if (!Zn(t)) return 0;
|
|
2429
2445
|
let n = t.__global_no_trace__;
|
|
2430
2446
|
if (er(n)) {
|
|
@@ -2480,21 +2496,21 @@ var gobjJs = function(e) {
|
|
|
2480
2496
|
}
|
|
2481
2497
|
};
|
|
2482
2498
|
var kl = "ievent_gate_stack", Al = [
|
|
2483
|
-
j(
|
|
2484
|
-
j(
|
|
2485
|
-
j(
|
|
2486
|
-
j(
|
|
2487
|
-
j(
|
|
2488
|
-
j(
|
|
2489
|
-
j(
|
|
2490
|
-
j(
|
|
2491
|
-
j(
|
|
2492
|
-
j(
|
|
2493
|
-
j(
|
|
2494
|
-
j(
|
|
2495
|
-
j(
|
|
2496
|
-
j(
|
|
2497
|
-
j(
|
|
2499
|
+
j(E.DTP_STRING, "wanted_yuno_role", y.SDF_RD, "", "wanted yuno role"),
|
|
2500
|
+
j(E.DTP_STRING, "wanted_yuno_name", y.SDF_RD, "", "wanted yuno name"),
|
|
2501
|
+
j(E.DTP_STRING, "wanted_yuno_service", y.SDF_RD, "", "wanted yuno service"),
|
|
2502
|
+
j(E.DTP_STRING, "remote_yuno_role", y.SDF_RD, "", "confirmed remote yuno role"),
|
|
2503
|
+
j(E.DTP_STRING, "remote_yuno_name", y.SDF_RD, "", "confirmed remote yuno name"),
|
|
2504
|
+
j(E.DTP_STRING, "remote_yuno_service", y.SDF_RD, "", "confirmed remote yuno service"),
|
|
2505
|
+
j(E.DTP_STRING, "url", y.SDF_RD, "", "Url to connect"),
|
|
2506
|
+
j(E.DTP_STRING, "jwt", y.SDF_PERSIST, "", "JWT"),
|
|
2507
|
+
j(E.DTP_STRING, "cert_pem", y.SDF_PERSIST, "", "SSL server certification, PEM str format"),
|
|
2508
|
+
j(E.DTP_JSON, "extra_info", y.SDF_RD, "{}", "dict data set by user, added to the identity card msg."),
|
|
2509
|
+
j(E.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."),
|
|
2510
|
+
j(E.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"),
|
|
2511
|
+
j(E.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"),
|
|
2512
|
+
j(E.DTP_INTEGER, "timeout_idack", y.SDF_RD, "5000", "timeout waiting idAck"),
|
|
2513
|
+
j(E.DTP_POINTER, "subscriber", 0, 0, "subscriber of output-events. If null then subscriber is the parent"),
|
|
2498
2514
|
v()
|
|
2499
2515
|
], Il = [
|
|
2500
2516
|
["ievents", "Trace inter-events with metadata of kw"],
|
|
@@ -2518,7 +2534,7 @@ var gobjJs = function(e) {
|
|
|
2518
2534
|
function Ul(e) {
|
|
2519
2535
|
e.priv.websocket && hn("Websocket ALREADY setup");
|
|
2520
2536
|
const t = jt(e, "url");
|
|
2521
|
-
|
|
2537
|
+
yn(`====> Starting WebSocket to '${t}' (${et(e)})`);
|
|
2522
2538
|
const n = ++e.priv.ws_seq;
|
|
2523
2539
|
let r;
|
|
2524
2540
|
try {
|
|
@@ -2530,7 +2546,7 @@ var gobjJs = function(e) {
|
|
|
2530
2546
|
code: 1006,
|
|
2531
2547
|
reason: r.message,
|
|
2532
2548
|
was_clean: !1
|
|
2533
|
-
}, e) < 0 &&
|
|
2549
|
+
}, e) < 0 && yl(e.priv.gobj_timer, ql(e)), null;
|
|
2534
2550
|
}
|
|
2535
2551
|
return r ? (r.onopen = () => {
|
|
2536
2552
|
n !== e.priv.ws_seq || ot(e) || Vt(e, "EV_ON_OPEN", {
|
|
@@ -2543,7 +2559,7 @@ var gobjJs = function(e) {
|
|
|
2543
2559
|
data: r.data
|
|
2544
2560
|
}, e);
|
|
2545
2561
|
}, r.onclose = (r) => {
|
|
2546
|
-
ot(e) || n === e.priv.ws_seq && (Tt(qe(), "browser_beforeunload") ?
|
|
2562
|
+
ot(e) || n === e.priv.ws_seq && (Tt(qe(), "browser_beforeunload") ? En("Close websocket by unload page") : Vt(e, "EV_ON_CLOSE", {
|
|
2547
2563
|
url: t,
|
|
2548
2564
|
ws_seq: n,
|
|
2549
2565
|
code: r.code,
|
|
@@ -2555,20 +2571,20 @@ var gobjJs = function(e) {
|
|
|
2555
2571
|
function Fl(e, t = 1e3, n = "") {
|
|
2556
2572
|
let r = e.priv, l = r.websocket;
|
|
2557
2573
|
if (r.websocket = null, l && l.readyState !== WebSocket.CLOSED && l.readyState !== WebSocket.CLOSING) {
|
|
2558
|
-
|
|
2574
|
+
yn(`Closing WebSocket (Code: ${t}, Reason: "${n}")`);
|
|
2559
2575
|
try {
|
|
2560
2576
|
l.close(t, n);
|
|
2561
2577
|
} catch (t) {
|
|
2562
2578
|
hn(`${et(e)}: Error closing WebSocket: ${t.message}`);
|
|
2563
2579
|
}
|
|
2564
|
-
} else
|
|
2580
|
+
} else En("WebSocket is already closed or in the process of closing.");
|
|
2565
2581
|
}
|
|
2566
2582
|
function Vl(e, t, n) {
|
|
2567
2583
|
let r = el();
|
|
2568
2584
|
try {
|
|
2569
|
-
|
|
2585
|
+
yn("\n" + r + " " + t + "\n"), Un(n);
|
|
2570
2586
|
} catch (e) {
|
|
2571
|
-
|
|
2587
|
+
yn("ERROR in trace_inter_event: " + e);
|
|
2572
2588
|
}
|
|
2573
2589
|
}
|
|
2574
2590
|
var Gl = class {
|
|
@@ -2580,10 +2596,10 @@ var gobjJs = function(e) {
|
|
|
2580
2596
|
return function(e, t) {
|
|
2581
2597
|
let n = e.priv, r = JSON.stringify(t);
|
|
2582
2598
|
if (Cl(e)) {
|
|
2583
|
-
let n = jt(e, "url"), l = Xe(qe()) + " ==> " + n, o =
|
|
2599
|
+
let n = jt(e, "url"), l = Xe(qe()) + " ==> " + n, o = Et(qe(), "trace_ievent_callback");
|
|
2584
2600
|
o ? o(l, t, 1, r.length) : Vl(0, l, t);
|
|
2585
2601
|
}
|
|
2586
|
-
if (!n.websocket || n.websocket.readyState !== WebSocket.OPEN) return
|
|
2602
|
+
if (!n.websocket || n.websocket.readyState !== WebSocket.OPEN) return En(`${et(e)}: send_iev(): websocket not open, message lost`), -1;
|
|
2587
2603
|
try {
|
|
2588
2604
|
n.websocket.send(r);
|
|
2589
2605
|
} catch (t) {
|
|
@@ -2606,8 +2622,8 @@ var gobjJs = function(e) {
|
|
|
2606
2622
|
};
|
|
2607
2623
|
}
|
|
2608
2624
|
function xl(e) {
|
|
2609
|
-
let t = e.priv, n = Je(qe()), r = jt(qe(), "yuno_version"), l = jt(qe(), "yuno_release"), o = jt(qe(), "yuno_tag"), i =
|
|
2610
|
-
i && i.length || (i =
|
|
2625
|
+
let t = e.priv, n = Je(qe()), r = jt(qe(), "yuno_version"), l = jt(qe(), "yuno_release"), o = jt(qe(), "yuno_tag"), i = Et(e, "required_services");
|
|
2626
|
+
i && i.length || (i = Et(qe(), "required_services"));
|
|
2611
2627
|
let _ = {
|
|
2612
2628
|
yuno_role: ze(),
|
|
2613
2629
|
yuno_id: Qe(),
|
|
@@ -2628,7 +2644,7 @@ var gobjJs = function(e) {
|
|
|
2628
2644
|
language: "undefined" != typeof window ? window.navigator.language : "",
|
|
2629
2645
|
required_services: i
|
|
2630
2646
|
};
|
|
2631
|
-
return Gr(e, _, kl, Wl(e, Xe(nt(e)), null)), Wr(e, _, "__identity__"),
|
|
2647
|
+
return Gr(e, _, kl, Wl(e, Xe(nt(e)), null)), Wr(e, _, "__identity__"), yl(t.gobj_timer, vt(e, "timeout_idack")), Ml(e, "EV_IDENTITY_CARD", _);
|
|
2632
2648
|
}
|
|
2633
2649
|
function Kl(e, t) {
|
|
2634
2650
|
if (ir(t.event)) return -1;
|
|
@@ -2641,16 +2657,16 @@ var gobjJs = function(e) {
|
|
|
2641
2657
|
return Ke(e) && (l.websocket = Ul(e)), 0;
|
|
2642
2658
|
}
|
|
2643
2659
|
function Bl(e, t, n, r) {
|
|
2644
|
-
return
|
|
2660
|
+
return yn("Websocket opened: " + e.priv.url), xl(e), 0;
|
|
2645
2661
|
}
|
|
2646
2662
|
function Jl(e, t, n, r) {
|
|
2647
2663
|
let l = e.priv, o = n.url;
|
|
2648
|
-
return void 0 !== n.ws_seq && n.ws_seq !== l.ws_seq || (bn(),
|
|
2664
|
+
return void 0 !== n.ws_seq && n.ws_seq !== l.ws_seq || (bn(), En(`${et(e)}: WebSocket closed ${o} (Code: ${n.code}, Reason: "${n.reason}", Clean: ${n.was_clean})`), l.websocket && (l.websocket.onopen = null, l.websocket.onmessage = null, l.websocket.onerror = null, l.websocket.onclose = null, l.websocket = null), l.inform_on_close ? (l.inform_on_close = !1, Xt(e, "EV_ON_CLOSE", {
|
|
2649
2665
|
url: o,
|
|
2650
2666
|
remote_yuno_name: l.remote_yuno_name,
|
|
2651
2667
|
remote_yuno_role: l.remote_yuno_role,
|
|
2652
2668
|
remote_yuno_service: l.remote_yuno_service
|
|
2653
|
-
})) : Ke(e) && (
|
|
2669
|
+
})) : Ke(e) && (En(`${et(e)}: EV_ON_OPEN_ERROR cannot open ${o} (Code: ${n.code}, Reason: "${n.reason}", Clean: ${n.was_clean})`), Xt(e, "EV_ON_OPEN_ERROR", {
|
|
2654
2670
|
url: o,
|
|
2655
2671
|
remote_yuno_name: l.remote_yuno_name,
|
|
2656
2672
|
remote_yuno_role: l.remote_yuno_role,
|
|
@@ -2658,7 +2674,7 @@ var gobjJs = function(e) {
|
|
|
2658
2674
|
code: n.code,
|
|
2659
2675
|
reason: n.reason,
|
|
2660
2676
|
was_clean: n.was_clean
|
|
2661
|
-
})), Ke(e) &&
|
|
2677
|
+
})), Ke(e) && yl(l.gobj_timer, ql(e))), 0;
|
|
2662
2678
|
}
|
|
2663
2679
|
function ql(e) {
|
|
2664
2680
|
let t = e.priv, n = vt(e, "timeout_retry"), r = vt(e, "timeout_retry_max");
|
|
@@ -2674,7 +2690,7 @@ var gobjJs = function(e) {
|
|
|
2674
2690
|
vl(l.gobj_timer);
|
|
2675
2691
|
let o = Mr(e, n, kl, !0), s = Tr(e, o, "src_yuno", ""), i = Tr(e, o, "src_role", ""), _ = Tr(e, o, "src_service", "");
|
|
2676
2692
|
$t(e, "remote_yuno_name", s), $t(e, "remote_yuno_role", i), $t(e, "remote_yuno_service", _);
|
|
2677
|
-
let a =
|
|
2693
|
+
let a = yr(e, n, "result", -1, 0), u = Tr(e, n, "comment", "", 0), c = Tr(e, n, "username", "", 0), f = Or(e, n, "services_roles", {});
|
|
2678
2694
|
if (a < 0) {
|
|
2679
2695
|
Fl(e);
|
|
2680
2696
|
let t = {
|
|
@@ -2712,21 +2728,21 @@ var gobjJs = function(e) {
|
|
|
2712
2728
|
try {
|
|
2713
2729
|
n = JSON.parse(t);
|
|
2714
2730
|
} catch (t) {
|
|
2715
|
-
return
|
|
2731
|
+
return En(`${et(e)}: parsing inter_event json: ${t}`), null;
|
|
2716
2732
|
}
|
|
2717
|
-
if (!(n instanceof Object)) return
|
|
2733
|
+
if (!(n instanceof Object)) return En(`${et(e)}: parsing inter_event: websocket data not a json object`), null;
|
|
2718
2734
|
let r = n.event;
|
|
2719
|
-
if (!r) return
|
|
2720
|
-
if ("string" != typeof r) return
|
|
2735
|
+
if (!r) return En(`${et(e)}: parsing inter_event: no event`), null;
|
|
2736
|
+
if ("string" != typeof r) return En(`${et(e)}: parsing inter_event: event not a string`), null;
|
|
2721
2737
|
let l = n.kw;
|
|
2722
2738
|
return l ? l instanceof Object ? {
|
|
2723
2739
|
event: r,
|
|
2724
2740
|
kw: l || {}
|
|
2725
|
-
} : (
|
|
2741
|
+
} : (En(`${et(e)}: parsing inter_event: kw not a json object`), null) : (En(`${et(e)}: parsing inter_kw: no kw`), null);
|
|
2726
2742
|
}(e, n.data);
|
|
2727
|
-
if (!o) return
|
|
2743
|
+
if (!o) return En(`${et(e)}: frame dropped from ${l}: ${String(n.data).substring(0, 256)}`), -1;
|
|
2728
2744
|
if (Cl(e)) {
|
|
2729
|
-
let e = Xe(qe()) + " <== " + l, t = n.data.length, r =
|
|
2745
|
+
let e = Xe(qe()) + " <== " + l, t = n.data.length, r = Et(qe(), "trace_ievent_callback");
|
|
2730
2746
|
r ? r(e, o, 2, t) : Vl(0, e, o);
|
|
2731
2747
|
}
|
|
2732
2748
|
let s = o.event, i = o.kw;
|
|
@@ -2740,12 +2756,12 @@ var gobjJs = function(e) {
|
|
|
2740
2756
|
let _ = xr(e, i), a = Mr(e, i, kl), u = Tr(e, a, "dst_role", "");
|
|
2741
2757
|
if (u.toLowerCase() !== ze().toLowerCase()) return hn(`"It's not my role, dst_role: ${u}, my_role: ${ze()}`), 0;
|
|
2742
2758
|
let c = Tr(e, a, "dst_service", "");
|
|
2743
|
-
if ("__subscribing__" === _) return
|
|
2744
|
-
if ("__unsubscribing__" === _) return
|
|
2759
|
+
if ("__subscribing__" === _) return En(`${et(e)}: subscription event ignored, I'm client (service: ${c}, event: ${s})`), -1;
|
|
2760
|
+
if ("__unsubscribing__" === _) return En(`${et(e)}: unsubscription event ignored, I'm client (service: ${c}, event: ${s})`), -1;
|
|
2745
2761
|
if (It(e, s, $.EVF_PUBLIC_EVENT)) return Vt(e, s, i, e), 0;
|
|
2746
2762
|
if (!ir(c)) {
|
|
2747
2763
|
let t = we(c, !1);
|
|
2748
|
-
return t ? It(t, s, $.EVF_PUBLIC_EVENT) ? (Vt(t, s, i, e), 0) : (hn(`${et(e)}: Service found but no event or not public, service '${et(t)}', ev '${s}'`), -1) : (
|
|
2764
|
+
return t ? It(t, s, $.EVF_PUBLIC_EVENT) ? (Vt(t, s, i, e), 0) : (hn(`${et(e)}: Service found but no event or not public, service '${et(t)}', ev '${s}'`), -1) : (En(`${et(e)}: event for a service that is gone, DROPPED: service '${c}', ev '${s}'`), 0);
|
|
2749
2765
|
}
|
|
2750
2766
|
return lt(e) ? Vt(nt(e), s, i, e) : Xt(e, s, i), 0;
|
|
2751
2767
|
}
|
|
@@ -2858,7 +2874,7 @@ var gobjJs = function(e) {
|
|
|
2858
2874
|
else if (o.length > 0 && "<" === o[0] && function(e) {
|
|
2859
2875
|
if (Xr.size >= 100) return;
|
|
2860
2876
|
const t = e.slice(0, 80);
|
|
2861
|
-
Xr.has(t) || (Xr.add(t),
|
|
2877
|
+
Xr.has(t) || (Xr.add(t), En(`createElement2: a string that starts with '<' is TEXT (set_strings_are_text): use html_markup() if it is markup: ${JSON.stringify(t)}`));
|
|
2862
2878
|
}(o), n && _) i.textContent = n(_) || o;
|
|
2863
2879
|
else i.textContent = o;
|
|
2864
2880
|
else if (er(o)) {
|
|
@@ -2878,20 +2894,20 @@ var gobjJs = function(e) {
|
|
|
2878
2894
|
let o = Or(null, t, e, l);
|
|
2879
2895
|
Yn(n, e, o);
|
|
2880
2896
|
}), n;
|
|
2881
|
-
}, e.current_timestamp = el, e.data_type_t =
|
|
2897
|
+
}, e.current_timestamp = el, e.data_type_t = E, e.db_list_persistent_attrs = function(e, t) {
|
|
2882
2898
|
let n = kr(al(e), null, !1), r = {};
|
|
2883
2899
|
return n && Zn(n) && (r = $r(e, n, t, !1)), r;
|
|
2884
2900
|
}, e.db_load_persistent_attrs = function(e, t) {
|
|
2885
|
-
let n =
|
|
2901
|
+
let n = yt(e, y.SDF_PERSIST), r = kr(al(e), null, !1);
|
|
2886
2902
|
if (r && Zn(r)) {
|
|
2887
2903
|
let l = $r(e, r, t, !1);
|
|
2888
|
-
l = $r(e, l, n, !1), wt(e, l,
|
|
2904
|
+
l = $r(e, l, n, !1), wt(e, l, y.SDF_PERSIST);
|
|
2889
2905
|
}
|
|
2890
2906
|
}, e.db_remove_persistent_attrs = function(e, t) {
|
|
2891
2907
|
let n = Dr(e, kr(al(e), null, !1), t, !1);
|
|
2892
2908
|
0 === zn(n) ? Ir(al(e)) : Ar(al(e), n);
|
|
2893
2909
|
}, e.db_save_persistent_attrs = function(e, t) {
|
|
2894
|
-
let n = $r(e,
|
|
2910
|
+
let n = $r(e, yt(e, y.SDF_PERSIST), t, !1), r = kr(al(e), null, !1);
|
|
2895
2911
|
return r && Zn(r) && Wn(n, r), Ar(al(e), n);
|
|
2896
2912
|
}, e.debounce = function(e, t = 0, n = !1) {
|
|
2897
2913
|
let r = null, l = null, o = null;
|
|
@@ -2977,7 +2993,7 @@ var gobjJs = function(e) {
|
|
|
2977
2993
|
return l;
|
|
2978
2994
|
}, e.flat_key_join = function(e) {
|
|
2979
2995
|
return Array.isArray(e) && 0 !== e.length ? e.map((e) => "number" == typeof e ? `[${e}]` : sl(e)).join("`") : "";
|
|
2980
|
-
}, e.flat_key_split = il, e.gclass_add_ev_action =
|
|
2996
|
+
}, e.flat_key_split = il, e.gclass_add_ev_action = Ee, e.gclass_add_event_type = Te, e.gclass_add_state = he, e.gclass_check_fsm = je, e.gclass_create = de, e.gclass_event_type = ve, e.gclass_find_by_name = Oe, e.gclass_flag_t = w, e.gclass_unregister = be, e.getPositionRelativeToBody = function(e) {
|
|
2981
2997
|
if (!e) return {
|
|
2982
2998
|
top: 0,
|
|
2983
2999
|
left: 0,
|
|
@@ -2999,7 +3015,7 @@ var gobjJs = function(e) {
|
|
|
2999
3015
|
}, e.get_function_name = rl, e.get_now = function() {
|
|
3000
3016
|
return Math.floor(Date.now() / 1e3);
|
|
3001
3017
|
}, e.gobj_bottom_gobj = st, e.gobj_change_parent = function(e, t) {
|
|
3002
|
-
return ot(e) ? (hn("gobj NULL or DESTROYED"), null) : t instanceof S ? (e.parent && e.parent.gclass.gmt.mt_child_removed && e.parent.gclass.gmt.mt_child_removed(e.parent, e), e.parent && ($e(e.parent, e), e.parent = null), Re(t, e), t.gclass.gmt.mt_child_added && (Y(e) &&
|
|
3018
|
+
return ot(e) ? (hn("gobj NULL or DESTROYED"), null) : t instanceof S ? (e.parent && e.parent.gclass.gmt.mt_child_removed && e.parent.gclass.gmt.mt_child_removed(e.parent, e), e.parent && ($e(e.parent, e), e.parent = null), Re(t, e), t.gclass.gmt.mt_child_added && (Y(e) && yn(n("👦👦🔵 child_added(%s): %s", tt(t), et(e))), t.gclass.gmt.mt_child_added(t, e)), 0) : (hn(`${et(e)}: gobj_change_parent() BAD TYPE of parent`), -1);
|
|
3003
3019
|
}, e.gobj_change_state = Dt, e.gobj_command = function(e, t, r, o) {
|
|
3004
3020
|
if (ot(e)) return hn("gobj NULL or DESTROYED"), -1;
|
|
3005
3021
|
if (function(e) {
|
|
@@ -3070,7 +3086,7 @@ var gobjJs = function(e) {
|
|
|
3070
3086
|
}(n, e), n;
|
|
3071
3087
|
}, e.gobj_match_gobj = bt, e.gobj_name = Xe, e.gobj_parent = nt, e.gobj_pause = xe, e.gobj_play = We, e.gobj_post_event = Ut, e.gobj_posted_events_size = function() {
|
|
3072
3088
|
return Lt.length;
|
|
3073
|
-
}, e.gobj_publish_event = Xt, e.gobj_read_attr =
|
|
3089
|
+
}, e.gobj_publish_event = Xt, e.gobj_read_attr = Et, e.gobj_read_attrs = yt, e.gobj_read_bool_attr = Tt, e.gobj_read_integer_attr = vt, e.gobj_read_pointer_attr = Ot, e.gobj_read_str_attr = jt, e.gobj_remove_persistent_attrs = function(e, t) {
|
|
3074
3090
|
return Be(e) ? a ? a(e, t) : -1 : (hn(`${et(e)}: Only gobj services can load/save writable-persistent`), -1);
|
|
3075
3091
|
}, e.gobj_repr_global_trace_levels = function() {
|
|
3076
3092
|
return U.map(([e, t, n]) => ({
|
|
@@ -3088,7 +3104,7 @@ var gobjJs = function(e) {
|
|
|
3088
3104
|
o.name && (n && o.flag & n || (-1 === t || o.flag & t) && (ae(e, e.jn_attrs, o), Zn(e.priv) && Object.prototype.hasOwnProperty.call(e.priv, o.name) && (e.priv[o.name] = e.jn_attrs[o.name]), e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, o.name)));
|
|
3089
3105
|
}
|
|
3090
3106
|
return 0;
|
|
3091
|
-
}(e,
|
|
3107
|
+
}(e, y.SDF_VOLATIL, 0);
|
|
3092
3108
|
}, e.gobj_save_persistent_attrs = De, e.gobj_search_path = mt, e.gobj_send_event = Vt, e.gobj_services = function() {
|
|
3093
3109
|
let e = [];
|
|
3094
3110
|
for (const t of Object.keys(b)) qn(e, t);
|
|
@@ -3114,7 +3130,7 @@ var gobjJs = function(e) {
|
|
|
3114
3130
|
const d = [["EV_STATE_CHANGED", $.EVF_SYSTEM_EVENT | $.EVF_OUTPUT_EVENT | $.EVF_NO_WARN_SUBS], [0, 0]];
|
|
3115
3131
|
for (let e = 0; e < d.length; e++) {
|
|
3116
3132
|
let t = d[e][0], n = d[e][1];
|
|
3117
|
-
|
|
3133
|
+
ye(g, t, n);
|
|
3118
3134
|
}
|
|
3119
3135
|
return 0;
|
|
3120
3136
|
}, e.gobj_stats = function(e, t, r, l) {
|
|
@@ -3142,7 +3158,7 @@ var gobjJs = function(e) {
|
|
|
3142
3158
|
let n = s[t], r = Jt(e, n, !1, !1);
|
|
3143
3159
|
0 === r ? i++ : r < 0 ? _++ : a++;
|
|
3144
3160
|
}
|
|
3145
|
-
return _ ?
|
|
3161
|
+
return _ ? En(`${et(e)}: Hard subscription not removed, only gobj_unsubscribe_list() with force removes it (event: ${t}, hard: ${_})`) : i || a || (En(`${et(e)}: No subscription found`), Un(n, "No subscription found")), 0;
|
|
3146
3162
|
}, e.gobj_unsubscribe_list = Ht, e.gobj_walk_gobj_children = at, e.gobj_walk_gobj_children_tree = ut, e.gobj_write_attr = St, e.gobj_write_attrs = wt, e.gobj_write_bool_attr = Nt, e.gobj_write_integer_attr = Rt, e.gobj_write_str_attr = $t, e.gobj_yuno = qe, e.gobj_yuno_id = Qe, e.gobj_yuno_name = He, e.gobj_yuno_role = ze, e.html_markup = function(e) {
|
|
3147
3163
|
return "string" != typeof e ? (hn("html_markup: not a string, type " + typeof e), new qr("")) : new qr(e);
|
|
3148
3164
|
}, e.id_index_in_obj_list = Pr, e.index_in_list = tl, e.is_array = er, e.is_boolean = rr, e.is_date = function(e) {
|
|
@@ -3166,6 +3182,7 @@ var gobjJs = function(e) {
|
|
|
3166
3182
|
let l = Or(null, Or(null, e, "topics", null, 0), t, null, 0);
|
|
3167
3183
|
if (!l) return hn("jdb_delete: topic not found: " + t), null;
|
|
3168
3184
|
if (ir(r.id)) return hn("jdb_delete: record without id: " + r), Tn(r), null;
|
|
3185
|
+
if (!tr(n)) return hn(`jdb_delete: path must be a string: ${String(n)}`), null;
|
|
3169
3186
|
let o, s = n.split("`"), i = l;
|
|
3170
3187
|
for (; (o = s.shift()) && !ir(o) && i;) Zn(i) && (i = Or(null, i, e.hook, null, 0)), i = Yr(i, null, o, !1);
|
|
3171
3188
|
if (0 === s.length && i) if (er(i)) {
|
|
@@ -3188,22 +3205,23 @@ var gobjJs = function(e) {
|
|
|
3188
3205
|
return Or(null, n, t, null, 0) || (hn("jdb topic not found: " + t), Tn(n), null);
|
|
3189
3206
|
}, e.jdb_init = function(e, t, n) {
|
|
3190
3207
|
n && (e = Fn(e));
|
|
3191
|
-
let r = Or(null, e, "type", [],
|
|
3192
|
-
Tr(null, e, "hook", "data",
|
|
3193
|
-
let l = Or(null, e, "schema", {},
|
|
3208
|
+
let r = Or(null, e, "type", [], Zt.KW_CREATE);
|
|
3209
|
+
Tr(null, e, "hook", "data", Zt.KW_CREATE);
|
|
3210
|
+
let l = Or(null, e, "schema", {}, Zt.KW_CREATE), o = Or(null, e, "topics", {}, Zt.KW_CREATE);
|
|
3194
3211
|
return Kr(l, function(e, t, n, l) {
|
|
3195
|
-
"__" !== t.substring(0, 2) && Or(null, o, l, Fn(r),
|
|
3212
|
+
"__" !== t.substring(0, 2) && Or(null, o, l, Fn(r), Zt.KW_CREATE);
|
|
3196
3213
|
}, t), e;
|
|
3197
3214
|
}, e.jdb_update = function(e, t, n, r) {
|
|
3198
3215
|
let l = Or(null, Or(null, e, "topics", null, 0), t, null, 0);
|
|
3199
3216
|
if (!l) return hn("jdb_update: topic not found: " + t), null;
|
|
3200
3217
|
if (ir(r.id)) return hn("jdb_update: record without id: " + r), Tn(r), null;
|
|
3218
|
+
if (!tr(n)) return hn(`jdb_update: path must be a string: ${String(n)}`), null;
|
|
3201
3219
|
let o, s = n.split("`"), i = l;
|
|
3202
|
-
for (; (o = s.shift()) && !ir(o) && i;) Zn(i) && (i = Or(null, i, e.hook, [],
|
|
3220
|
+
for (; (o = s.shift()) && !ir(o) && i;) Zn(i) && (i = Or(null, i, e.hook, [], Zt.KW_CREATE)), i = Yr(i, null, o, !1);
|
|
3203
3221
|
if (0 === s.length && i) if (er(i)) i.push(r);
|
|
3204
3222
|
else if (i.id === r.id) Gn(i, r);
|
|
3205
3223
|
else {
|
|
3206
|
-
let t = Or(null, i, e.hook, [],
|
|
3224
|
+
let t = Or(null, i, e.hook, [], Zt.KW_CREATE), n = Yr(t, e.hook, r.id, !1);
|
|
3207
3225
|
n ? Gn(n, r) : t.push(r);
|
|
3208
3226
|
}
|
|
3209
3227
|
return l;
|
|
@@ -3258,7 +3276,7 @@ var gobjJs = function(e) {
|
|
|
3258
3276
|
if (!n || !er(t)) return r && hn("item NULL or kw_list is not a list"), -1;
|
|
3259
3277
|
for (let e = 0; e < t.length; e++) if (Vn(n, t[e])) return e;
|
|
3260
3278
|
return r && hn("item not found in this list"), -1;
|
|
3261
|
-
}, e.kw_find_path = mr, e.kw_flag_t = Zt, e.kw_get_bool =
|
|
3279
|
+
}, e.kw_find_path = mr, e.kw_flag_t = Zt, e.kw_get_bool = Er, e.kw_get_dict = jr, e.kw_get_dict_value = Or, e.kw_get_int = yr, e.kw_get_list = function(e, t, n, r, l) {
|
|
3262
3280
|
e && !sr(e) && hn("GObj bad instanceof");
|
|
3263
3281
|
let o = mr(e, t, n, !1);
|
|
3264
3282
|
const s = l && l & Zt.KW_REQUIRED, i = l && l & Zt.KW_CREATE, _ = l && l & Zt.KW_EXTRACT;
|
|
@@ -3384,10 +3402,10 @@ var gobjJs = function(e) {
|
|
|
3384
3402
|
else n && n(r.status);
|
|
3385
3403
|
var e;
|
|
3386
3404
|
}, r.send();
|
|
3387
|
-
}, e.log_debug =
|
|
3405
|
+
}, e.log_debug = yn, e.log_error = hn, e.log_info = function(e, ...t) {
|
|
3388
3406
|
let n = mn(e, ...t), r = el();
|
|
3389
3407
|
rn && cn("info", n) && rn("%c" + r + " INFO: " + String(n), "color:cyan"), gn("info", n, r);
|
|
3390
|
-
}, e.log_warning =
|
|
3408
|
+
}, e.log_warning = En, e.mask_secrets_inline = kn, e.msg_iev_get_msg_type = xr, e.msg_iev_get_stack = Mr, e.msg_iev_push_stack = Gr, e.msg_iev_read_key = Fr, e.msg_iev_set_msg_type = Wr, e.msg_iev_write_key = Vr, e.node_uuid = nl, e.parseBoolean = _r, e.parseSVG = function(e) {
|
|
3391
3409
|
return new DOMParser().parseFromString(e, "image/svg+xml").firstChild;
|
|
3392
3410
|
}, e.refresh_language = function(e, t) {
|
|
3393
3411
|
if (!or(t)) return void hn("You must supply a translation function");
|
|
@@ -3519,7 +3537,7 @@ var gobjJs = function(e) {
|
|
|
3519
3537
|
["EV_TIMEOUT", $.EVF_OUTPUT_EVENT],
|
|
3520
3538
|
["EV_TIMEOUT_PERIODIC", $.EVF_OUTPUT_EVENT],
|
|
3521
3539
|
[0, 0]
|
|
3522
|
-
], t,
|
|
3540
|
+
], t, El, 0, bl, pl, 0, 0, 0, w.gcflag_manual_start)) ? 0 : -1;
|
|
3523
3541
|
}("C_TIMER");
|
|
3524
3542
|
}, e.register_c_yuno = function() {
|
|
3525
3543
|
return function(e) {
|
|
@@ -3535,7 +3553,7 @@ var gobjJs = function(e) {
|
|
|
3535
3553
|
if (!e) return "";
|
|
3536
3554
|
const t = String(e).trim();
|
|
3537
3555
|
return /^javascript:/i.test(t) || /^data:/i.test(t) ? "" : Jr(t);
|
|
3538
|
-
}, e.sdata_flag_t =
|
|
3556
|
+
}, e.sdata_flag_t = y, e.send_http_json_post = function(e, t, n) {
|
|
3539
3557
|
let r = new XMLHttpRequest();
|
|
3540
3558
|
r.open("POST", e), r.setRequestHeader("Accept", "application/json"), r.setRequestHeader("Content-Type", "application/json"), r.onreadystatechange = function() {
|
|
3541
3559
|
4 === r.readyState && n(r.status, r.responseText);
|
|
@@ -3559,7 +3577,7 @@ var gobjJs = function(e) {
|
|
|
3559
3577
|
} else on = e;
|
|
3560
3578
|
}, e.set_remote_log_functions = bn, e.set_strings_are_text = function(e) {
|
|
3561
3579
|
Qr = !!e;
|
|
3562
|
-
}, e.set_timeout =
|
|
3580
|
+
}, e.set_timeout = yl, e.set_timeout_periodic = Tl, e.sprintf = n, e.stats_parser = function(e, t, n, r) {}, e.str_in_list = Ur, e.strcasecmp = ur, e.strcmp = ar, e.strings_are_text = function() {
|
|
3563
3581
|
return Qr;
|
|
3564
3582
|
}, e.strncmp = function(e, t, n) {
|
|
3565
3583
|
var r = (e + "").substring(0, n), l = (t + "").substring(0, n);
|
|
@@ -3609,9 +3627,9 @@ var gobjJs = function(e) {
|
|
|
3609
3627
|
}, e.timeTracker = function(e = "Time Tracker", t = !1) {
|
|
3610
3628
|
const n = e, r = performance.now();
|
|
3611
3629
|
let l = r;
|
|
3612
|
-
return t &&
|
|
3630
|
+
return t && En(`--\x3e ${n} - starting`), { mark: (e = "Intermediate", o = "") => {
|
|
3613
3631
|
const s = performance.now(), i = (s - l) / 1e3, _ = (s - r) / 1e3;
|
|
3614
|
-
return t &&
|
|
3632
|
+
return t && En(`--\x3e ${n} ${e} - partial: ${i} sec, total: ${_} sec, ${o}`), l = s, {
|
|
3615
3633
|
partial: i,
|
|
3616
3634
|
total: _
|
|
3617
3635
|
};
|