@yuneta/gobj-js 7.26.8 → 7.26.10
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 +48 -19
- package/dist/gobj-js.cjs.js.map +1 -1
- package/dist/gobj-js.cjs.min.js +177 -168
- package/dist/gobj-js.cjs.min.js.map +1 -1
- package/dist/gobj-js.es.js +48 -19
- package/dist/gobj-js.es.js.map +1 -1
- package/dist/gobj-js.es.min.js +24 -15
- package/dist/gobj-js.es.min.js.map +1 -1
- package/dist/gobj-js.iife.js +48 -19
- package/dist/gobj-js.iife.js.map +1 -1
- package/dist/gobj-js.iife.min.js +166 -157
- package/dist/gobj-js.iife.min.js.map +1 -1
- package/dist/gobj-js.umd.js +48 -19
- package/dist/gobj-js.umd.js.map +1 -1
- package/dist/gobj-js.umd.min.js +24 -15
- package/dist/gobj-js.umd.min.js.map +1 -1
- package/package.json +1 -1
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 E = Object.freeze({
|
|
144
144
|
SDF_NOTACCESS: 1,
|
|
145
145
|
SDF_RD: 2,
|
|
146
146
|
SDF_WR: 4,
|
|
@@ -163,12 +163,12 @@ var y = Object.freeze({
|
|
|
163
163
|
SDF_AUTHZ_S: 524288,
|
|
164
164
|
SDF_AUTHZ_RS: 1048576
|
|
165
165
|
});
|
|
166
|
-
|
|
167
|
-
var
|
|
166
|
+
E.SDF_RD, E.SDF_WR, E.SDF_STATS, E.SDF_PERSIST, E.SDF_VOLATIL, E.SDF_RSTATS, E.SDF_PSTATS, E.SDF_WR, E.SDF_PERSIST;
|
|
167
|
+
var y = 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 y(0, null), v = (e, t, n, r, o) => new y(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
|
}
|
|
@@ -194,12 +194,12 @@ var E = class {
|
|
|
194
194
|
obflag_destroying: 1,
|
|
195
195
|
obflag_destroyed: 2,
|
|
196
196
|
obflag_created: 4
|
|
197
|
-
}),
|
|
197
|
+
}), R = Object.freeze({
|
|
198
198
|
EVF_NO_WARN_SUBS: 1,
|
|
199
199
|
EVF_OUTPUT_EVENT: 2,
|
|
200
200
|
EVF_SYSTEM_EVENT: 4,
|
|
201
201
|
EVF_PUBLIC_EVENT: 8
|
|
202
|
-
}),
|
|
202
|
+
}), x = Object.freeze({
|
|
203
203
|
WALK_TOP2BOTTOM: 1,
|
|
204
204
|
WALK_BOTTOM2TOP: 2,
|
|
205
205
|
WALK_BYLEVEL: 4,
|
|
@@ -220,7 +220,7 @@ var E = class {
|
|
|
220
220
|
};
|
|
221
221
|
var A = 1;
|
|
222
222
|
function I(e) {
|
|
223
|
-
Xn(e) && (e = JSON.stringify(e)),
|
|
223
|
+
Xn(e) && (e = JSON.stringify(e)), En(" ".repeat(Math.max(1, 2 * m)) + String(e));
|
|
224
224
|
}
|
|
225
225
|
var C = Object.freeze({
|
|
226
226
|
TRACE_MACHINE: 65536,
|
|
@@ -557,7 +557,7 @@ function ge(e, t, n, r, o, s, l, i, _, a, u) {
|
|
|
557
557
|
let n = t[e][0], r = t[e][1];
|
|
558
558
|
if (!lr(n)) {
|
|
559
559
|
if (Te(c, n)) return mn(`SMachine: event repeated in input_events: ${n}`), pe(c), null;
|
|
560
|
-
|
|
560
|
+
ye(c, n, r);
|
|
561
561
|
}
|
|
562
562
|
}
|
|
563
563
|
if (!c.fsm_checked) {
|
|
@@ -601,11 +601,11 @@ function he(e, t, n, r, o) {
|
|
|
601
601
|
let s = de(e, t);
|
|
602
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
|
-
function
|
|
604
|
+
function Ee(e, t, n) {
|
|
605
605
|
lr(t) || e.push(new k(t, n));
|
|
606
606
|
}
|
|
607
|
-
function
|
|
608
|
-
return e instanceof j ?
|
|
607
|
+
function ye(e, t, n) {
|
|
608
|
+
return e instanceof j ? Ee(e.dl_events, t, n) : (mn("Cannot add state, typeof not GClass"), -1);
|
|
609
609
|
}
|
|
610
610
|
function Te(e, t) {
|
|
611
611
|
if (!(e instanceof j)) return mn("Cannot add state, typeof not GClass"), 0;
|
|
@@ -629,7 +629,7 @@ function ve(e) {
|
|
|
629
629
|
}
|
|
630
630
|
for (let n = 0; n < e.dl_events.length; n++) {
|
|
631
631
|
let r = e.dl_events[n];
|
|
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 &
|
|
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))) {
|
|
633
633
|
let n = !1;
|
|
634
634
|
for (let t = 0; t < e.dl_states.length; t++) {
|
|
635
635
|
let o = e.dl_states[t];
|
|
@@ -662,11 +662,11 @@ function we(e) {
|
|
|
662
662
|
function Ne(e, t) {
|
|
663
663
|
t.parent && mn(`_add_child() ALREADY HAS PARENT: ${t.gobj_name}`), e.dl_children.push(t), t.parent = e;
|
|
664
664
|
}
|
|
665
|
-
function
|
|
665
|
+
function Re(e, t) {
|
|
666
666
|
let n = eo(e.dl_children, t);
|
|
667
667
|
n >= 0 && (qn(e.dl_children, n), t.parent = null);
|
|
668
668
|
}
|
|
669
|
-
function
|
|
669
|
+
function xe(e, t) {
|
|
670
670
|
return Ye(e) ? i ? i(e, t) : -1 : (mn(`${Ze(e)}: Only gobj services can load/save writable-persistent`), -1);
|
|
671
671
|
}
|
|
672
672
|
function $e(e, t) {
|
|
@@ -679,7 +679,7 @@ function De(e, t, n) {
|
|
|
679
679
|
let s = 0;
|
|
680
680
|
for (const [l, i] of Object.entries(t)) {
|
|
681
681
|
const t = fe(o.gclass, l, !1);
|
|
682
|
-
t ? (-1 === n || t.flag & n) && (t.flag &
|
|
682
|
+
t ? (-1 === n || t.flag & n) && (t.flag & E.SDF_DEPRECATED && hn(`${Ze(o)}: Deprecated attribute used in gobj creation: ${l}`), s += ae(o, e, t, i)) : r && (r(o, l), s--);
|
|
683
683
|
}
|
|
684
684
|
return s;
|
|
685
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));
|
|
@@ -731,7 +731,7 @@ function Ie(e) {
|
|
|
731
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) {
|
|
732
732
|
let t = Qe(e);
|
|
733
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 && (
|
|
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) {
|
|
735
735
|
let t = e.dl_children.slice();
|
|
736
736
|
for (let e = 0; e < t.length; e++) {
|
|
737
737
|
let n = t[e];
|
|
@@ -764,7 +764,7 @@ function Fe(e, t, n) {
|
|
|
764
764
|
return We(e) && Ue(e), 0;
|
|
765
765
|
}
|
|
766
766
|
function Ve(e) {
|
|
767
|
-
return ot(e) ? (mn("gobj NULL or DESTROYED"), -1) : _t(e,
|
|
767
|
+
return ot(e) ? (mn("gobj NULL or DESTROYED"), -1) : _t(e, x.WALK_FIRST2LAST, Fe, 0, 0);
|
|
768
768
|
}
|
|
769
769
|
function Ge(e) {
|
|
770
770
|
if (ot(e)) return mn(`gobj NULL or DESTROYED: ${Ze(e)}`), -1;
|
|
@@ -856,7 +856,7 @@ function ut(e) {
|
|
|
856
856
|
}
|
|
857
857
|
function ct(e, t, n, r, o) {
|
|
858
858
|
let s, l = [...e];
|
|
859
|
-
if (t &
|
|
859
|
+
if (t & x.WALK_LAST2FIRST) for (let e = l.length; e > 0; e--) {
|
|
860
860
|
s = l[e - 1];
|
|
861
861
|
let t = ut(n(s, r, o));
|
|
862
862
|
if (t < 0) return t;
|
|
@@ -871,15 +871,15 @@ function ct(e, t, n, r, o) {
|
|
|
871
871
|
function ft(e, t, n, r, o) {
|
|
872
872
|
let s, l = ct(e, t, n, r, o);
|
|
873
873
|
if (l < 0) return l;
|
|
874
|
-
if (t &
|
|
874
|
+
if (t & x.WALK_LAST2FIRST) {
|
|
875
875
|
for (let i = e.length; i > 0; i--) if (s = e[i - 1], l = ft([...s.dl_children], t, n, r, o), l < 0) return l;
|
|
876
876
|
} else for (let i = 0; i < e.length; i++) if (s = e[i], l = ft([...s.dl_children], t, n, r, o), l < 0) return l;
|
|
877
877
|
return l;
|
|
878
878
|
}
|
|
879
879
|
function gt(e, t, n, r, o) {
|
|
880
|
-
if (t &
|
|
880
|
+
if (t & x.WALK_BYLEVEL) return ft(e, t, n, r, o);
|
|
881
881
|
let s, l;
|
|
882
|
-
if (t &
|
|
882
|
+
if (t & x.WALK_BOTTOM2TOP) for (let i = e.length; i > 0; i--) {
|
|
883
883
|
if (l = e[i - 1], s = gt([...l.dl_children], t, n, r, o), s < 0) return s;
|
|
884
884
|
if (s = ut(n(l, r, o)), s < 0) return s;
|
|
885
885
|
}
|
|
@@ -944,7 +944,7 @@ function ht(e, t, n) {
|
|
|
944
944
|
}
|
|
945
945
|
return mn(`${Ze(e)}: GClass Attribute NOT FOUND, attr ${t}`), null;
|
|
946
946
|
}
|
|
947
|
-
function
|
|
947
|
+
function Et(e, t, n) {
|
|
948
948
|
let r = {}, o = e.gclass.attrs_table;
|
|
949
949
|
for (let n = 0; n < o.length; n++) {
|
|
950
950
|
const s = o[n];
|
|
@@ -955,7 +955,7 @@ function yt(e, t, n) {
|
|
|
955
955
|
}
|
|
956
956
|
return r;
|
|
957
957
|
}
|
|
958
|
-
function
|
|
958
|
+
function yt(e, t) {
|
|
959
959
|
if (t) {
|
|
960
960
|
if (0 === ar(t, "__disabled__")) return Ke(e);
|
|
961
961
|
if (0 === ar(t, "__running__")) return We(e);
|
|
@@ -1016,11 +1016,11 @@ function Nt(e, t, n) {
|
|
|
1016
1016
|
let r = ce(e, t, !1);
|
|
1017
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);
|
|
1018
1018
|
}
|
|
1019
|
-
function
|
|
1019
|
+
function Rt(e, t, n) {
|
|
1020
1020
|
let r = ce(e, t, !1);
|
|
1021
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);
|
|
1022
1022
|
}
|
|
1023
|
-
function
|
|
1023
|
+
function xt(e, n) {
|
|
1024
1024
|
if (ot(e)) return mn("gobj NULL or DESTROYED"), null;
|
|
1025
1025
|
if (e.current_state.state_name === n) return !1;
|
|
1026
1026
|
let r = de(e.gclass, n);
|
|
@@ -1053,7 +1053,7 @@ function kt(e, t, n) {
|
|
|
1053
1053
|
}
|
|
1054
1054
|
function At(e, t, n) {
|
|
1055
1055
|
let r = Dt(e, t, !1);
|
|
1056
|
-
return !!r && !(n && !(r.event_flag & n)) && !!(r.event_flag &
|
|
1056
|
+
return !!r && !(n && !(r.event_flag & n)) && !!(r.event_flag & R.EVF_OUTPUT_EVENT);
|
|
1057
1057
|
}
|
|
1058
1058
|
var It = [], Ct = !1;
|
|
1059
1059
|
function Lt(e, n, r, o) {
|
|
@@ -1099,7 +1099,7 @@ function Ut(e, n, r, o) {
|
|
|
1099
1099
|
}
|
|
1100
1100
|
r && J(e) && Hn(r) && Ln(r);
|
|
1101
1101
|
}
|
|
1102
|
-
i.next_state &&
|
|
1102
|
+
i.next_state && xt(e, i.next_state);
|
|
1103
1103
|
let _ = -1;
|
|
1104
1104
|
try {
|
|
1105
1105
|
i.action && (_ = i.action(e, n, r, o));
|
|
@@ -1159,7 +1159,7 @@ function Mt(e, t) {
|
|
|
1159
1159
|
}
|
|
1160
1160
|
function Wt(e, t, n, r, o, s) {
|
|
1161
1161
|
let l = vr(t, o, "__config__", null), i = vr(t, o, "__global__", null), _ = vr(t, o, "__local__", null), a = jr(t, o, "__filter__", null), u = !0;
|
|
1162
|
-
if (t && t !== Tr(null, e, "publisher", null) && (u = !1), s && s !== Tr(null, e, "subscriber", null) && (u = !1), n && n !==
|
|
1162
|
+
if (t && t !== Tr(null, e, "publisher", null) && (u = !1), s && s !== Tr(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
1163
|
let t = vr(null, e, "__config__", null);
|
|
1164
1164
|
Qn(t) > 0 && Un(t, l) || (u = !1);
|
|
1165
1165
|
}
|
|
@@ -1189,8 +1189,8 @@ function Yt(e, t) {
|
|
|
1189
1189
|
return e.indexOf(t);
|
|
1190
1190
|
}
|
|
1191
1191
|
function Bt(e, n, r, o) {
|
|
1192
|
-
let s = Tr(e, n, "publisher", null, Xt.KW_REQUIRED), l = Tr(e, n, "subscriber", null, Xt.KW_REQUIRED), i =
|
|
1193
|
-
if (!!(
|
|
1192
|
+
let s = Tr(e, n, "publisher", null, Xt.KW_REQUIRED), l = Tr(e, n, "subscriber", null, Xt.KW_REQUIRED), i = yr(e, n, "event", "", Xt.KW_REQUIRED);
|
|
1193
|
+
if (!!(Er(e, n, "subs_flag", null, Xt.KW_REQUIRED) & Ft.__hard_subscription__) && !r) return -1;
|
|
1194
1194
|
let _ = Y(l) || Y(s);
|
|
1195
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
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);
|
|
@@ -1210,9 +1210,9 @@ function Jt(e, n, r, o) {
|
|
|
1210
1210
|
if (Object.keys(r).forEach((t) => {
|
|
1211
1211
|
s.has(t) || mn(`${Ze(e)}: key ignored in subscription (key: ${t}, event: ${n})`);
|
|
1212
1212
|
}), lr(n)) n = "";
|
|
1213
|
-
else if (!(At(e, 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
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 (
|
|
1215
|
+
for (let t = 0; t < i.length; t++) if (Er(e, i[t], "subs_flag", 0, Xt.KW_REQUIRED) & Ft.__hard_subscription__) {
|
|
1216
1216
|
_ = i[t];
|
|
1217
1217
|
break;
|
|
1218
1218
|
}
|
|
@@ -1223,11 +1223,11 @@ function Jt(e, n, r, o) {
|
|
|
1223
1223
|
Yn(o, "event", t), Yn(o, "subscriber", r), Yn(o, "publisher", e);
|
|
1224
1224
|
let s = 0;
|
|
1225
1225
|
if (n) {
|
|
1226
|
-
let r = vr(e, n, "__config__", null), l = vr(e, n, "__global__", null), i = vr(e, n, "__local__", null), _ = jr(e, n, "__filter__", null), a =
|
|
1226
|
+
let r = vr(e, n, "__config__", null), l = vr(e, n, "__global__", null), i = vr(e, n, "__local__", null), _ = jr(e, n, "__filter__", null), a = yr(e, n, "__service__", "");
|
|
1227
1227
|
if (Qn(l) > 0 && Yn(o, "__global__", Pn(l)), Qn(r) > 0) {
|
|
1228
1228
|
let n = Pn(r);
|
|
1229
1229
|
Yn(o, "__config__", n);
|
|
1230
|
-
let l =
|
|
1230
|
+
let l = yr(e, n, "__rename_event_name__", "");
|
|
1231
1231
|
if (!lr(l)) {
|
|
1232
1232
|
let r = Vt(l);
|
|
1233
1233
|
if (r) {
|
|
@@ -1271,7 +1271,7 @@ function Qt(e, n, r) {
|
|
|
1271
1271
|
if (Xn(r) || (r = {}), !e || e.obflag & (N.obflag_destroyed | N.obflag_destroying)) return mn("gobj NULL or DESTROYED"), -1;
|
|
1272
1272
|
if (lr(n)) return mn(`${Ze(e)}: event EMPTY`), -1;
|
|
1273
1273
|
let o = Dt(e, n, !0);
|
|
1274
|
-
if (!(o && o.event_flag & (
|
|
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;
|
|
1275
1275
|
let s = (Y(e) || q(e, n)) && !H(e, n);
|
|
1276
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) {
|
|
1277
1277
|
let t = e.gclass.gmt.mt_publish_event(e, n, r);
|
|
@@ -1287,7 +1287,7 @@ function Qt(e, n, r) {
|
|
|
1287
1287
|
}
|
|
1288
1288
|
let u = Tr(e, a, "subscriber", null, Xt.KW_REQUIRED);
|
|
1289
1289
|
if (!u || ot(u)) continue;
|
|
1290
|
-
let c =
|
|
1290
|
+
let c = Er(e, a, "subs_flag", 0, Xt.KW_REQUIRED), f = yr(e, a, "event", "", Xt.KW_REQUIRED);
|
|
1291
1291
|
if (lr(f) || 0 === ar(f, n)) {
|
|
1292
1292
|
vr(e, a, "__config__", null, 0);
|
|
1293
1293
|
let o = vr(e, a, "__global__", null, 0), l = vr(e, a, "__local__", null, 0), f = jr(e, a, "__filter__", null, 0), g = a.renamed_event;
|
|
@@ -1296,7 +1296,7 @@ function Qt(e, n, r) {
|
|
|
1296
1296
|
if (e.gclass.gmt.mt_publication_filter ? p = e.gclass.gmt.mt_publication_filter(e, n, r, u) : Qn(f) > 0 && (p = Nr(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;
|
|
1297
1297
|
if (!p) continue;
|
|
1298
1298
|
let d = Dt(u, n, !0);
|
|
1299
|
-
if (d && d.event_flag &
|
|
1299
|
+
if (d && d.event_flag & R.EVF_SYSTEM_EVENT && !kt(u, d.event_name, 0)) continue;
|
|
1300
1300
|
let b = r;
|
|
1301
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
1302
|
let m = Ut(u, g, b, e);
|
|
@@ -1307,7 +1307,7 @@ function Qt(e, n, r) {
|
|
|
1307
1307
|
if (_ += m, i++, ot(e)) break;
|
|
1308
1308
|
}
|
|
1309
1309
|
}
|
|
1310
|
-
return i || o && o.event_flag &
|
|
1310
|
+
return i || o && o.event_flag & R.EVF_NO_WARN_SUBS || hn(`${Ze(e)}: Publish event WITHOUT subscribers, ev ${n}`), _;
|
|
1311
1311
|
}
|
|
1312
1312
|
var Xt = Object.freeze({
|
|
1313
1313
|
KW_REQUIRED: 1,
|
|
@@ -1408,11 +1408,11 @@ function hn(e, ...t) {
|
|
|
1408
1408
|
let n = bn(e, ...t), r = Zr();
|
|
1409
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
1410
|
}
|
|
1411
|
-
function
|
|
1411
|
+
function En(e, ...t) {
|
|
1412
1412
|
let n = bn(e, ...t), r = Zr();
|
|
1413
1413
|
rn && un("debug", n) && rn("%c" + r + " DEBUG: " + String(n), "color:silver"), fn("debug", n, r);
|
|
1414
1414
|
}
|
|
1415
|
-
function
|
|
1415
|
+
function yn(e, ...t) {
|
|
1416
1416
|
let n = bn(e, ...t), r = Zr();
|
|
1417
1417
|
rn && un("msg", n) && rn("%c" + r + " MSG: " + String(n), "color:cyan"), fn("msg", n, r);
|
|
1418
1418
|
}
|
|
@@ -1494,10 +1494,10 @@ function wn(e, t, n) {
|
|
|
1494
1494
|
s = t;
|
|
1495
1495
|
}
|
|
1496
1496
|
}
|
|
1497
|
-
var Nn = 128,
|
|
1497
|
+
var Nn = 128, Rn = 4194304, xn = "<not shown: too large to mask>";
|
|
1498
1498
|
function $n(e) {
|
|
1499
1499
|
if ("string" != typeof e || e.indexOf("=") < 0) return null;
|
|
1500
|
-
if (e.length >
|
|
1500
|
+
if (e.length > Rn) return xn;
|
|
1501
1501
|
let t, n = !1, r = /(^|[ \t])attribute=["']?([^ \t"']*)/g;
|
|
1502
1502
|
for (; null !== (t = r.exec(e));) Sn(t[2].slice(-128)) && (n = !0);
|
|
1503
1503
|
let o = [], s = 0, l = !1, i = "", _ = 0, a = 0;
|
|
@@ -1531,7 +1531,7 @@ var Dn = 64, kn = "<not shown: the masking failed>";
|
|
|
1531
1531
|
var An = Symbol("mask-in-progress");
|
|
1532
1532
|
function In(e, t, n, r) {
|
|
1533
1533
|
if ("string" == typeof e) {
|
|
1534
|
-
if (e.length > r.left) return r.left = 0,
|
|
1534
|
+
if (e.length > r.left) return r.left = 0, xn;
|
|
1535
1535
|
r.left -= e.length;
|
|
1536
1536
|
let t = $n(e);
|
|
1537
1537
|
return null !== t ? t : e;
|
|
@@ -1542,7 +1542,7 @@ function In(e, t, n, r) {
|
|
|
1542
1542
|
let t = Object.getPrototypeOf(e);
|
|
1543
1543
|
return t === Object.prototype || null === t;
|
|
1544
1544
|
}(e)) return e;
|
|
1545
|
-
if (r.left <= 0) return
|
|
1545
|
+
if (r.left <= 0) return xn;
|
|
1546
1546
|
if (t.has(e)) {
|
|
1547
1547
|
let n = t.get(e);
|
|
1548
1548
|
return n === An ? "<cycle>" : n;
|
|
@@ -1561,7 +1561,7 @@ function In(e, t, n, r) {
|
|
|
1561
1561
|
let _ = In(e[o], t, n + 1, r);
|
|
1562
1562
|
_ !== e[o] && (l = !0), s.push(_);
|
|
1563
1563
|
}
|
|
1564
|
-
i && s.push(
|
|
1564
|
+
i && s.push(xn);
|
|
1565
1565
|
} else {
|
|
1566
1566
|
s = Object.create(Object.getPrototypeOf(e));
|
|
1567
1567
|
let o = "string" == typeof e.attribute && Sn(e.attribute.slice(-128));
|
|
@@ -1575,13 +1575,13 @@ function In(e, t, n, r) {
|
|
|
1575
1575
|
let a, u = e[_];
|
|
1576
1576
|
a = (Sn(_.slice(-128)) || o && "value" === _) && null != u && "" !== u ? "********" : In(u, t, n + 1, r), a !== u && (l = !0), pr(s, _, a);
|
|
1577
1577
|
}
|
|
1578
|
-
i && (s["<more>"] =
|
|
1578
|
+
i && (s["<more>"] = xn);
|
|
1579
1579
|
}
|
|
1580
1580
|
return l || i || (s = e), t.set(e, s), s;
|
|
1581
1581
|
}
|
|
1582
1582
|
function Cn(e) {
|
|
1583
1583
|
try {
|
|
1584
|
-
return In(e, /* @__PURE__ */ new WeakMap(), 0, { left:
|
|
1584
|
+
return In(e, /* @__PURE__ */ new WeakMap(), 0, { left: Rn });
|
|
1585
1585
|
} catch (e) {
|
|
1586
1586
|
return kn;
|
|
1587
1587
|
}
|
|
@@ -1784,7 +1784,7 @@ function hr(e, t, n, r, o) {
|
|
|
1784
1784
|
}
|
|
1785
1785
|
return _ && mr(e, t, n), u;
|
|
1786
1786
|
}
|
|
1787
|
-
function
|
|
1787
|
+
function Er(e, t, n, r, o) {
|
|
1788
1788
|
e && !sr(e) && mn("GObj bad instanceof");
|
|
1789
1789
|
let s = br(e, t, n, !1);
|
|
1790
1790
|
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;
|
|
@@ -1813,7 +1813,7 @@ function yr(e, t, n, r, o) {
|
|
|
1813
1813
|
}
|
|
1814
1814
|
return _ && mr(e, t, n), u;
|
|
1815
1815
|
}
|
|
1816
|
-
function
|
|
1816
|
+
function yr(e, t, n, r, o) {
|
|
1817
1817
|
e && !sr(e) && mn("GObj bad instanceof");
|
|
1818
1818
|
let s = br(e, t, n, !1);
|
|
1819
1819
|
const l = o && o & Xt.KW_REQUIRED, i = o && o & Xt.KW_CREATE, _ = o && o & Xt.KW_EXTRACT;
|
|
@@ -1861,6 +1861,7 @@ function jr(e, t, n, r, o) {
|
|
|
1861
1861
|
function Or(e, t, n, r) {
|
|
1862
1862
|
if (e && !sr(e) && mn("GObj bad instanceof"), !Xn(t)) return mn("kw is not an object"), -1;
|
|
1863
1863
|
if (!er(n)) return mn(`${e ? Ze(e) + ": " : ""}kw_set_dict_value(): path must be a string: ${String(n)}`), -1;
|
|
1864
|
+
if ("" === n) return mn((e ? Ze(e) + ": " : "") + "kw_set_dict_value(): path empty"), -1;
|
|
1864
1865
|
let o = n.split("`"), s = o.length;
|
|
1865
1866
|
for (let l = 0; l < s; l++) {
|
|
1866
1867
|
let i = o[l];
|
|
@@ -1883,7 +1884,19 @@ function Sr(e, t, n, r, o) {
|
|
|
1883
1884
|
if (e && !sr(e) && mn("GObj bad instanceof"), !Xn(t)) return mn("kw is not an object"), -1;
|
|
1884
1885
|
let s = br(e, t, n, !1);
|
|
1885
1886
|
if (void 0 === s) {
|
|
1886
|
-
if (!er(n))
|
|
1887
|
+
if (!er(n) || function(e, t) {
|
|
1888
|
+
let n = t.split("`"), r = e;
|
|
1889
|
+
for (let e = 0; e < n.length - 1; e++) {
|
|
1890
|
+
if (Zn(r)) {
|
|
1891
|
+
const t = dr(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 (!Xn(r) && !Zn(r)) return !0;
|
|
1897
|
+
}
|
|
1898
|
+
return !1;
|
|
1899
|
+
}(t, n)) return -1;
|
|
1887
1900
|
if (s = {}, Or(e, t, n, s) < 0) return -1;
|
|
1888
1901
|
}
|
|
1889
1902
|
return Xn(s) ? (pr(s, r, o), 0) : (mn(`subdict is not an object: '${n}'`), -1);
|
|
@@ -1921,7 +1934,7 @@ function wr(e, n, r) {
|
|
|
1921
1934
|
function Nr(e, t) {
|
|
1922
1935
|
return 0 === Qn(t) || wr(e, t, "");
|
|
1923
1936
|
}
|
|
1924
|
-
function
|
|
1937
|
+
function Rr(e, t, n, r) {
|
|
1925
1938
|
e && !sr(e) && mn("GObj bad instanceof");
|
|
1926
1939
|
let o = {};
|
|
1927
1940
|
if (er(n) && !lr(n)) {
|
|
@@ -1937,7 +1950,7 @@ function xr(e, t, n, r) {
|
|
|
1937
1950
|
}
|
|
1938
1951
|
return o;
|
|
1939
1952
|
}
|
|
1940
|
-
function
|
|
1953
|
+
function xr(e, t, n, r) {
|
|
1941
1954
|
let o = {};
|
|
1942
1955
|
if (!Xn(t)) return o;
|
|
1943
1956
|
if (Fn(o, t), er(n) && !lr(n)) {
|
|
@@ -1995,7 +2008,7 @@ function Ir(e, t, n, r, o) {
|
|
|
1995
2008
|
let s = [];
|
|
1996
2009
|
if (Zn(t)) for (let l = 0; l < t.length; l++) {
|
|
1997
2010
|
let i, _ = t[l];
|
|
1998
|
-
if (Xn(_)) i =
|
|
2011
|
+
if (Xn(_)) i = yr(e, _, "id", "", 0);
|
|
1999
2012
|
else {
|
|
2000
2013
|
if (!er(_)) continue;
|
|
2001
2014
|
i = _;
|
|
@@ -2061,7 +2074,7 @@ function Gr(e, t, n) {
|
|
|
2061
2074
|
return lr(n) ? mr(e, t, "__md_iev__`__msg_type__") : Sr(e, t, "__md_iev__", "__msg_type__", n), 0;
|
|
2062
2075
|
}
|
|
2063
2076
|
function Mr(e, t) {
|
|
2064
|
-
return
|
|
2077
|
+
return yr(e, t, "__md_iev__`__msg_type__", "", 0);
|
|
2065
2078
|
}
|
|
2066
2079
|
function Wr(e, t, n) {
|
|
2067
2080
|
void 0 !== n && er(n) || (n = "");
|
|
@@ -2338,17 +2351,17 @@ function ho(e, t, n, r) {
|
|
|
2338
2351
|
Ut(e, "EV_TIMEOUT", {}, e);
|
|
2339
2352
|
}, 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;
|
|
2340
2353
|
}
|
|
2341
|
-
var
|
|
2354
|
+
var Eo = {
|
|
2342
2355
|
mt_create: function(e) {
|
|
2343
2356
|
let t = e.priv;
|
|
2344
2357
|
const n = jt(e, "subscriber");
|
|
2345
|
-
n && Jt(e, null, {}, n), t.periodic =
|
|
2358
|
+
n && Jt(e, null, {}, n), t.periodic = yt(e, "periodic"), t.msec = Tt(e, "msec");
|
|
2346
2359
|
},
|
|
2347
2360
|
mt_writing: function(e, t) {
|
|
2348
2361
|
let n = e.priv;
|
|
2349
2362
|
switch (t) {
|
|
2350
2363
|
case "periodic":
|
|
2351
|
-
n.periodic =
|
|
2364
|
+
n.periodic = yt(e, "periodic");
|
|
2352
2365
|
break;
|
|
2353
2366
|
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() {
|
|
2354
2367
|
Ut(e, "EV_TIMEOUT", {}, e);
|
|
@@ -2363,7 +2376,7 @@ var yo = {
|
|
|
2363
2376
|
},
|
|
2364
2377
|
mt_destroy: function(e) {}
|
|
2365
2378
|
};
|
|
2366
|
-
function
|
|
2379
|
+
function yo(e, t) {
|
|
2367
2380
|
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);
|
|
2368
2381
|
}
|
|
2369
2382
|
function To(e, t) {
|
|
@@ -2386,8 +2399,8 @@ var jo = [
|
|
|
2386
2399
|
v(h.DTP_STRING, "yuno_version", 0, "", "Yuno version (APP_VERSION)"),
|
|
2387
2400
|
v(h.DTP_STRING, "yuneta_version", 0, s, "Yuneta version"),
|
|
2388
2401
|
v(h.DTP_LIST, "required_services", 0, "[]", "Required services"),
|
|
2389
|
-
v(h.DTP_DICT, "trace_levels",
|
|
2390
|
-
v(h.DTP_DICT, "no_trace_levels",
|
|
2402
|
+
v(h.DTP_DICT, "trace_levels", E.SDF_PERSIST, "{}", "Trace levels"),
|
|
2403
|
+
v(h.DTP_DICT, "no_trace_levels", E.SDF_PERSIST, "{}", "No trace levels"),
|
|
2391
2404
|
v(h.DTP_POINTER, "trace_ievent_callback", 0, null, "Where the traffic trace goes (C_IEVENT_CLI levels ievents/ievents2); console when null"),
|
|
2392
2405
|
v(h.DTP_BOOLEAN, "developer", 0, !1, "Developer mode enabled"),
|
|
2393
2406
|
v(h.DTP_INTEGER, "periodic_timeout", 0, "1000", "Timeout periodic, in miliseconds."),
|
|
@@ -2395,23 +2408,23 @@ var jo = [
|
|
|
2395
2408
|
], Oo = { gobj_timer: null }, So = null;
|
|
2396
2409
|
function wo(e, t, n, r) {
|
|
2397
2410
|
let o = ht(e, t);
|
|
2398
|
-
return Xn(o) || (o = {}), o[n] = r, Ot(e, t, o),
|
|
2411
|
+
return Xn(o) || (o = {}), o[n] = r, Ot(e, t, o), xe(e, t);
|
|
2399
2412
|
}
|
|
2400
2413
|
function No(e) {
|
|
2401
2414
|
if (!0 === e || !1 === e) return e;
|
|
2402
2415
|
let t = String(null == e ? "" : e).toLowerCase();
|
|
2403
2416
|
return "true" === t || "set" === t || "false" !== t && "reset" !== t && ("" === t || isNaN(Number(t)) ? null : !!Number(t));
|
|
2404
2417
|
}
|
|
2405
|
-
function
|
|
2418
|
+
function Ro() {
|
|
2406
2419
|
return `${He()}^${qe()}`;
|
|
2407
2420
|
}
|
|
2408
|
-
function
|
|
2421
|
+
function xo(e, t, n, r) {
|
|
2409
2422
|
return Qt(e, t, n), 0;
|
|
2410
2423
|
}
|
|
2411
2424
|
var $o = {
|
|
2412
2425
|
mt_create: function(e) {
|
|
2413
2426
|
let t = e.priv;
|
|
2414
|
-
|
|
2427
|
+
Rt(e, "start_date", Zr()), Rt(e, "node_uuid", to()), e.priv.gobj_timer = Ae(Qe(e), "C_TIMER", {}, e), t.periodic_timeout = ht(e, "periodic_timeout"), function(e) {
|
|
2415
2428
|
let t = ht(e, "trace_levels");
|
|
2416
2429
|
if (!Xn(t)) return 0;
|
|
2417
2430
|
let n = t.__global_trace__;
|
|
@@ -2466,37 +2479,37 @@ var $o = {
|
|
|
2466
2479
|
case "set-global-trace":
|
|
2467
2480
|
case "set-global-no-trace": {
|
|
2468
2481
|
let o = "set-global-no-trace" === t, s = n.level, l = No(n.set);
|
|
2469
|
-
return s ? null === l ? r(0, -1, `${
|
|
2482
|
+
return s ? null === l ? r(0, -1, `${Ro()}: bitmask set or re-set?`, null, null) : (o ? Q(s, l) : z(s, l)) < 0 ? r(0, -1, `${Ro()}: global trace level not found: ${s}`, null, null) : o ? (wo(e, "no_trace_levels", "__global_no_trace__", te()), r(0, 0, null, null, te())) : (wo(e, "trace_levels", "__global_trace__", ee()), r(0, 0, null, null, ee())) : r(0, -1, `${Ro()}: what level?`, null, null);
|
|
2470
2483
|
}
|
|
2471
2484
|
case "get-gclass-trace":
|
|
2472
2485
|
case "get-gclass-no-trace":
|
|
2473
2486
|
case "set-gclass-trace":
|
|
2474
2487
|
case "set-gclass-no-trace": {
|
|
2475
2488
|
let o = t.indexOf("no-trace") >= 0, s = n.gclass_name || n.gclass || "", l = je(s);
|
|
2476
|
-
if (!l) return r(0, -1, `${
|
|
2489
|
+
if (!l) return r(0, -1, `${Ro()}: what gclass is '${s}'?`, null, null);
|
|
2477
2490
|
if (0 === t.indexOf("get-")) return r(0, 0, null, null, o ? oe(l) : ne(l));
|
|
2478
2491
|
let i = n.level, _ = No(n.set);
|
|
2479
|
-
return i ? null === _ ? r(0, -1, `${
|
|
2492
|
+
return i ? null === _ ? r(0, -1, `${Ro()}: bitmask set or re-set?`, null, null) : (o ? le(l, i, _) : se(l, i, _)) < 0 ? r(0, -1, `${Ro()}: trace level of ${s} not found: ${i}`, null, null) : o ? (wo(e, "no_trace_levels", s, oe(l)), r(0, 0, null, null, oe(l))) : (wo(e, "trace_levels", s, re(l)), r(0, 0, null, null, ne(l))) : r(0, -1, `${Ro()}: what level?`, null, null);
|
|
2480
2493
|
}
|
|
2481
|
-
default: return r(0, -1, `${
|
|
2494
|
+
default: return r(0, -1, `${Ro()}: command not available: ${t}`, null, null);
|
|
2482
2495
|
}
|
|
2483
2496
|
}
|
|
2484
2497
|
};
|
|
2485
2498
|
var Do = "ievent_gate_stack", ko = [
|
|
2486
|
-
v(h.DTP_STRING, "wanted_yuno_role",
|
|
2487
|
-
v(h.DTP_STRING, "wanted_yuno_name",
|
|
2488
|
-
v(h.DTP_STRING, "wanted_yuno_service",
|
|
2489
|
-
v(h.DTP_STRING, "remote_yuno_role",
|
|
2490
|
-
v(h.DTP_STRING, "remote_yuno_name",
|
|
2491
|
-
v(h.DTP_STRING, "remote_yuno_service",
|
|
2492
|
-
v(h.DTP_STRING, "url",
|
|
2493
|
-
v(h.DTP_STRING, "jwt",
|
|
2494
|
-
v(h.DTP_STRING, "cert_pem",
|
|
2495
|
-
v(h.DTP_JSON, "extra_info",
|
|
2496
|
-
v(h.DTP_LIST, "required_services",
|
|
2497
|
-
v(h.DTP_INTEGER, "timeout_retry",
|
|
2498
|
-
v(h.DTP_INTEGER, "timeout_retry_max",
|
|
2499
|
-
v(h.DTP_INTEGER, "timeout_idack",
|
|
2499
|
+
v(h.DTP_STRING, "wanted_yuno_role", E.SDF_RD, "", "wanted yuno role"),
|
|
2500
|
+
v(h.DTP_STRING, "wanted_yuno_name", E.SDF_RD, "", "wanted yuno name"),
|
|
2501
|
+
v(h.DTP_STRING, "wanted_yuno_service", E.SDF_RD, "", "wanted yuno service"),
|
|
2502
|
+
v(h.DTP_STRING, "remote_yuno_role", E.SDF_RD, "", "confirmed remote yuno role"),
|
|
2503
|
+
v(h.DTP_STRING, "remote_yuno_name", E.SDF_RD, "", "confirmed remote yuno name"),
|
|
2504
|
+
v(h.DTP_STRING, "remote_yuno_service", E.SDF_RD, "", "confirmed remote yuno service"),
|
|
2505
|
+
v(h.DTP_STRING, "url", E.SDF_RD, "", "Url to connect"),
|
|
2506
|
+
v(h.DTP_STRING, "jwt", E.SDF_PERSIST, "", "JWT"),
|
|
2507
|
+
v(h.DTP_STRING, "cert_pem", E.SDF_PERSIST, "", "SSL server certification, PEM str format"),
|
|
2508
|
+
v(h.DTP_JSON, "extra_info", E.SDF_RD, "{}", "dict data set by user, added to the identity card msg."),
|
|
2509
|
+
v(h.DTP_LIST, "required_services", E.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
|
+
v(h.DTP_INTEGER, "timeout_retry", E.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
|
+
v(h.DTP_INTEGER, "timeout_retry_max", E.SDF_RD, "60000", "Cap of the reconnect backoff (ms). Set it equal to timeout_retry for the old fixed-interval behaviour"),
|
|
2512
|
+
v(h.DTP_INTEGER, "timeout_idack", E.SDF_RD, "5000", "timeout waiting idAck"),
|
|
2500
2513
|
v(h.DTP_POINTER, "subscriber", 0, 0, "subscriber of output-events. If null then subscriber is the parent"),
|
|
2501
2514
|
T()
|
|
2502
2515
|
], Ao = [
|
|
@@ -2521,7 +2534,7 @@ var Co = {
|
|
|
2521
2534
|
function Po(e) {
|
|
2522
2535
|
e.priv.websocket && mn("Websocket ALREADY setup");
|
|
2523
2536
|
const t = vt(e, "url");
|
|
2524
|
-
|
|
2537
|
+
En(`====> Starting WebSocket to '${t}' (${Ze(e)})`);
|
|
2525
2538
|
const n = ++e.priv.ws_seq;
|
|
2526
2539
|
let r;
|
|
2527
2540
|
try {
|
|
@@ -2533,7 +2546,7 @@ function Po(e) {
|
|
|
2533
2546
|
code: 1006,
|
|
2534
2547
|
reason: r.message,
|
|
2535
2548
|
was_clean: !1
|
|
2536
|
-
}, e) < 0 &&
|
|
2549
|
+
}, e) < 0 && yo(e.priv.gobj_timer, qo(e)), null;
|
|
2537
2550
|
}
|
|
2538
2551
|
return r ? (r.onopen = () => {
|
|
2539
2552
|
n !== e.priv.ws_seq || ot(e) || Ut(e, "EV_ON_OPEN", {
|
|
@@ -2546,7 +2559,7 @@ function Po(e) {
|
|
|
2546
2559
|
data: r.data
|
|
2547
2560
|
}, e);
|
|
2548
2561
|
}, r.onclose = (r) => {
|
|
2549
|
-
ot(e) || n === e.priv.ws_seq && (
|
|
2562
|
+
ot(e) || n === e.priv.ws_seq && (yt(Je(), "browser_beforeunload") ? hn("Close websocket by unload page") : Ut(e, "EV_ON_CLOSE", {
|
|
2550
2563
|
url: t,
|
|
2551
2564
|
ws_seq: n,
|
|
2552
2565
|
code: r.code,
|
|
@@ -2558,7 +2571,7 @@ function Po(e) {
|
|
|
2558
2571
|
function Uo(e, t = 1e3, n = "") {
|
|
2559
2572
|
let r = e.priv, o = r.websocket;
|
|
2560
2573
|
if (r.websocket = null, o && o.readyState !== WebSocket.CLOSED && o.readyState !== WebSocket.CLOSING) {
|
|
2561
|
-
|
|
2574
|
+
En(`Closing WebSocket (Code: ${t}, Reason: "${n}")`);
|
|
2562
2575
|
try {
|
|
2563
2576
|
o.close(t, n);
|
|
2564
2577
|
} catch (t) {
|
|
@@ -2569,9 +2582,9 @@ function Uo(e, t = 1e3, n = "") {
|
|
|
2569
2582
|
function Fo(e, t, n) {
|
|
2570
2583
|
let r = Zr();
|
|
2571
2584
|
try {
|
|
2572
|
-
|
|
2585
|
+
En("\n" + r + " " + t + "\n"), Ln(n);
|
|
2573
2586
|
} catch (e) {
|
|
2574
|
-
|
|
2587
|
+
En("ERROR in trace_inter_event: " + e);
|
|
2575
2588
|
}
|
|
2576
2589
|
}
|
|
2577
2590
|
var Vo = class {
|
|
@@ -2631,7 +2644,7 @@ function Wo(e) {
|
|
|
2631
2644
|
language: "undefined" != typeof window ? window.navigator.language : "",
|
|
2632
2645
|
required_services: i
|
|
2633
2646
|
};
|
|
2634
|
-
return Fr(e, _, Do, Mo(e, Qe(tt(e)), null)), Gr(e, _, "__identity__"),
|
|
2647
|
+
return Fr(e, _, Do, Mo(e, Qe(tt(e)), null)), Gr(e, _, "__identity__"), yo(t.gobj_timer, Tt(e, "timeout_idack")), Go(e, "EV_IDENTITY_CARD", _);
|
|
2635
2648
|
}
|
|
2636
2649
|
function Ko(e, t) {
|
|
2637
2650
|
if (lr(t.event)) return -1;
|
|
@@ -2644,7 +2657,7 @@ function Yo(e, t, n, r) {
|
|
|
2644
2657
|
return We(e) && (o.websocket = Po(e)), 0;
|
|
2645
2658
|
}
|
|
2646
2659
|
function Bo(e, t, n, r) {
|
|
2647
|
-
return
|
|
2660
|
+
return En("Websocket opened: " + e.priv.url), Wo(e), 0;
|
|
2648
2661
|
}
|
|
2649
2662
|
function Jo(e, t, n, r) {
|
|
2650
2663
|
let o = e.priv, s = n.url;
|
|
@@ -2661,7 +2674,7 @@ function Jo(e, t, n, r) {
|
|
|
2661
2674
|
code: n.code,
|
|
2662
2675
|
reason: n.reason,
|
|
2663
2676
|
was_clean: n.was_clean
|
|
2664
|
-
})), We(e) &&
|
|
2677
|
+
})), We(e) && yo(o.gobj_timer, qo(e))), 0;
|
|
2665
2678
|
}
|
|
2666
2679
|
function qo(e) {
|
|
2667
2680
|
let t = e.priv, n = Tt(e, "timeout_retry"), r = Tt(e, "timeout_retry_max");
|
|
@@ -2675,9 +2688,9 @@ function Ho(e, t, n, r) {
|
|
|
2675
2688
|
function zo(e, t, n, r) {
|
|
2676
2689
|
let o = e.priv;
|
|
2677
2690
|
vo(o.gobj_timer);
|
|
2678
|
-
let s = Vr(e, n, Do, !0), l =
|
|
2679
|
-
|
|
2680
|
-
let a =
|
|
2691
|
+
let s = Vr(e, n, Do, !0), l = yr(e, s, "src_yuno", ""), i = yr(e, s, "src_role", ""), _ = yr(e, s, "src_service", "");
|
|
2692
|
+
Rt(e, "remote_yuno_name", l), Rt(e, "remote_yuno_role", i), Rt(e, "remote_yuno_service", _);
|
|
2693
|
+
let a = Er(e, n, "result", -1, 0), u = yr(e, n, "comment", "", 0), c = yr(e, n, "username", "", 0), f = jr(e, n, "services_roles", {});
|
|
2681
2694
|
if (a < 0) {
|
|
2682
2695
|
Uo(e);
|
|
2683
2696
|
let t = {
|
|
@@ -2691,7 +2704,7 @@ function zo(e, t, n, r) {
|
|
|
2691
2704
|
};
|
|
2692
2705
|
rt(e) ? Ut(tt(e), "EV_ON_ID_NAK", t, e) : Qt(e, "EV_ON_ID_NAK", t);
|
|
2693
2706
|
} else {
|
|
2694
|
-
if (
|
|
2707
|
+
if (xt(e, "ST_SESSION"), o.inside_on_open = !0, o.retry_ms = 0, !o.inform_on_close) {
|
|
2695
2708
|
o.inform_on_close = !0;
|
|
2696
2709
|
let t = {
|
|
2697
2710
|
username: c,
|
|
@@ -2734,21 +2747,21 @@ function Qo(e, t, n, r) {
|
|
|
2734
2747
|
}
|
|
2735
2748
|
let l = s.event, i = s.kw;
|
|
2736
2749
|
if ("ST_SESSION" !== $t(e)) {
|
|
2737
|
-
if (kt(e, l,
|
|
2750
|
+
if (kt(e, l, R.EVF_PUBLIC_EVENT)) {
|
|
2738
2751
|
if (!(Ut(e, l, i, e) < 0)) return 0;
|
|
2739
2752
|
} else mn(`${Ze(e)}: event UNKNOWN in not-session state ${l}`);
|
|
2740
2753
|
return Uo(e), -1;
|
|
2741
2754
|
}
|
|
2742
2755
|
s = null;
|
|
2743
|
-
let _ = Mr(e, i), a = Vr(e, i, Do), u =
|
|
2756
|
+
let _ = Mr(e, i), a = Vr(e, i, Do), u = yr(e, a, "dst_role", "");
|
|
2744
2757
|
if (u.toLowerCase() !== He().toLowerCase()) return mn(`"It's not my role, dst_role: ${u}, my_role: ${He()}`), 0;
|
|
2745
|
-
let c =
|
|
2758
|
+
let c = yr(e, a, "dst_service", "");
|
|
2746
2759
|
if ("__subscribing__" === _) return hn(`${Ze(e)}: subscription event ignored, I'm client (service: ${c}, event: ${l})`), -1;
|
|
2747
2760
|
if ("__unsubscribing__" === _) return hn(`${Ze(e)}: unsubscription event ignored, I'm client (service: ${c}, event: ${l})`), -1;
|
|
2748
|
-
if (kt(e, l,
|
|
2761
|
+
if (kt(e, l, R.EVF_PUBLIC_EVENT)) return Ut(e, l, i, e), 0;
|
|
2749
2762
|
if (!lr(c)) {
|
|
2750
2763
|
let t = Se(c, !1);
|
|
2751
|
-
return t ? kt(t, l,
|
|
2764
|
+
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);
|
|
2752
2765
|
}
|
|
2753
2766
|
return rt(e) ? Ut(tt(e), l, i, e) : Qt(e, l, i), 0;
|
|
2754
2767
|
}
|
|
@@ -2761,7 +2774,7 @@ function Zo(e, t, n, r) {
|
|
|
2761
2774
|
var es = {
|
|
2762
2775
|
mt_create: function(e) {
|
|
2763
2776
|
let t = e.priv;
|
|
2764
|
-
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"),
|
|
2777
|
+
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);
|
|
2765
2778
|
const n = jt(e, "subscriber");
|
|
2766
2779
|
n && Jt(e, null, {}, n);
|
|
2767
2780
|
},
|
|
@@ -2798,7 +2811,7 @@ var es = {
|
|
|
2798
2811
|
mt_stats: function(e, t, n, r) {
|
|
2799
2812
|
if ("ST_SESSION" !== $t(e)) return mn("Not in session"), null;
|
|
2800
2813
|
n || (n = {});
|
|
2801
|
-
let o = Mo(e, Qe(r),
|
|
2814
|
+
let o = Mo(e, Qe(r), yr(e, n, "service", null, 0)), s = jr(e, n, "__md_stats__", null, Xt.KW_EXTRACT);
|
|
2802
2815
|
return s || (s = {}), Fr(e, n, "stats_stack", {
|
|
2803
2816
|
stats: t,
|
|
2804
2817
|
kw: s
|
|
@@ -2807,7 +2820,7 @@ var es = {
|
|
|
2807
2820
|
mt_command_parser: function(e, t, n, r) {
|
|
2808
2821
|
if ("ST_SESSION" !== $t(e)) return mn("Not in session"), null;
|
|
2809
2822
|
n || (n = {});
|
|
2810
|
-
let o = Mo(e, Qe(r),
|
|
2823
|
+
let o = Mo(e, Qe(r), yr(e, n, "service", "", 0)), s = jr(e, n, "__md_command__", null, Xt.KW_EXTRACT);
|
|
2811
2824
|
return s || (s = {}), Fr(e, n, "command_stack", {
|
|
2812
2825
|
command: t,
|
|
2813
2826
|
kw: s
|
|
@@ -2817,7 +2830,7 @@ var es = {
|
|
|
2817
2830
|
if ("ST_SESSION" !== $t(e)) return window.console.error("Not in session"), -1;
|
|
2818
2831
|
if (n = Fn({}, Xn(n) ? n : {}), Xn(n.__md_iev__) && (n.__md_iev__ = Pn(n.__md_iev__)), Vr(e, n, Do));
|
|
2819
2832
|
else {
|
|
2820
|
-
let o = Mo(e, Qe(r),
|
|
2833
|
+
let o = Mo(e, Qe(r), yr(e, n, "__service__", 0, 0));
|
|
2821
2834
|
Wn(n, "__service__"), Fr(e, n, "__message__", t), Fr(e, n, Do, o);
|
|
2822
2835
|
}
|
|
2823
2836
|
return Gr(e, n, "__message__"), Go(e, t, n, r);
|
|
@@ -2836,7 +2849,7 @@ var es = {
|
|
|
2836
2849
|
return Fr(e, r, Do, Mo(e, Qe(_), i)), Gr(e, r, "__unsubscribing__"), Go(e, t.event, r, e);
|
|
2837
2850
|
}
|
|
2838
2851
|
};
|
|
2839
|
-
exports.GObj = O, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) => new
|
|
2852
|
+
exports.GObj = O, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) => new y(e, t, n, null, s, r, null, 0, null, o, null), exports.SDATACM = (e, t, n, r, o, s) => new y(e, t, 0, null, s, n, null, 0, o, r, null), exports.SDATACM2 = (e, t, n, r, o, s, l) => new y(e, t, n, null, l, r, null, 0, s, o, null), exports.SDATADF = (e, t, n, r, o, s) => new y(e, t, n, null, s, null, r, o), exports.SDATAPM = (e, t, n, r, o) => new y(e, t, n, r, o), exports.SDATAPM0 = (e, t, n, r, o) => new y(e, t, n, null, o, null, null, 0, null, null, r), exports.SDATA_END = T, exports.SDataDesc = y, exports.YUNETA_VERSION = s, Object.defineProperty(exports, "__yuno__", {
|
|
2840
2853
|
enumerable: !0,
|
|
2841
2854
|
get: function() {
|
|
2842
2855
|
return d;
|
|
@@ -2883,18 +2896,18 @@ exports.GObj = O, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
|
|
|
2883
2896
|
}), n;
|
|
2884
2897
|
}, exports.current_timestamp = Zr, exports.data_type_t = h, exports.db_list_persistent_attrs = function(e, t) {
|
|
2885
2898
|
let n = $r(_o(e), null, !1), r = {};
|
|
2886
|
-
return n && Xn(n) && (r =
|
|
2899
|
+
return n && Xn(n) && (r = Rr(e, n, t, !1)), r;
|
|
2887
2900
|
}, exports.db_load_persistent_attrs = function(e, t) {
|
|
2888
|
-
let n =
|
|
2901
|
+
let n = Et(e, E.SDF_PERSIST), r = $r(_o(e), null, !1);
|
|
2889
2902
|
if (r && Xn(r)) {
|
|
2890
|
-
let o =
|
|
2891
|
-
o =
|
|
2903
|
+
let o = Rr(e, r, t, !1);
|
|
2904
|
+
o = Rr(e, o, n, !1), St(e, o, E.SDF_PERSIST);
|
|
2892
2905
|
}
|
|
2893
2906
|
}, exports.db_remove_persistent_attrs = function(e, t) {
|
|
2894
|
-
let n =
|
|
2907
|
+
let n = xr(e, $r(_o(e), null, !1), t, !1);
|
|
2895
2908
|
0 === Hn(n) ? kr(_o(e)) : Dr(_o(e), n);
|
|
2896
2909
|
}, exports.db_save_persistent_attrs = function(e, t) {
|
|
2897
|
-
let n =
|
|
2910
|
+
let n = Rr(e, Et(e, E.SDF_PERSIST), t, !1), r = $r(_o(e), null, !1);
|
|
2898
2911
|
return r && Xn(r) && Gn(n, r), Dr(_o(e), n);
|
|
2899
2912
|
}, exports.debounce = function(e, t = 0, n = !1) {
|
|
2900
2913
|
let r = null, o = null, s = null;
|
|
@@ -2919,7 +2932,7 @@ exports.GObj = O, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
|
|
|
2919
2932
|
return t;
|
|
2920
2933
|
}, exports.empty_json = function(e) {
|
|
2921
2934
|
return 0 === Qn(e);
|
|
2922
|
-
}, exports.empty_string = lr, exports.escapeHtml = Br, exports.event_flag_t =
|
|
2935
|
+
}, exports.empty_string = lr, exports.escapeHtml = Br, exports.event_flag_t = R, exports.flat2json = function(e) {
|
|
2923
2936
|
if (null === e || "object" != typeof e || Array.isArray(e)) throw new Error("flat2json: a flat json is an object of id -> value");
|
|
2924
2937
|
let t = null;
|
|
2925
2938
|
for (const n of Object.keys(e)) {
|
|
@@ -2980,7 +2993,7 @@ exports.GObj = O, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
|
|
|
2980
2993
|
return o;
|
|
2981
2994
|
}, exports.flat_key_join = function(e) {
|
|
2982
2995
|
return Array.isArray(e) && 0 !== e.length ? e.map((e) => "number" == typeof e ? `[${e}]` : so(e)).join("`") : "";
|
|
2983
|
-
}, exports.flat_key_split = lo, exports.gclass_add_ev_action = he, exports.gclass_add_event_type =
|
|
2996
|
+
}, exports.flat_key_split = lo, exports.gclass_add_ev_action = he, exports.gclass_add_event_type = ye, 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) {
|
|
2984
2997
|
if (!e) return {
|
|
2985
2998
|
top: 0,
|
|
2986
2999
|
left: 0,
|
|
@@ -3002,8 +3015,8 @@ exports.GObj = O, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
|
|
|
3002
3015
|
}, exports.get_function_name = no, exports.get_now = function() {
|
|
3003
3016
|
return Math.floor(Date.now() / 1e3);
|
|
3004
3017
|
}, exports.gobj_bottom_gobj = st, exports.gobj_change_parent = function(e, n) {
|
|
3005
|
-
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 && (
|
|
3006
|
-
}, exports.gobj_change_state =
|
|
3018
|
+
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) && En(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);
|
|
3019
|
+
}, exports.gobj_change_state = xt, exports.gobj_command = function(e, n, o, s) {
|
|
3007
3020
|
if (ot(e)) return mn("gobj NULL or DESTROYED"), -1;
|
|
3008
3021
|
if (function(e) {
|
|
3009
3022
|
return F > 1 || !!e && !!(M(e) & C.TRACE_COMMANDS);
|
|
@@ -3036,12 +3049,12 @@ exports.GObj = O, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
|
|
|
3036
3049
|
let t = Ht(e, null, null, null);
|
|
3037
3050
|
for (let n = 0; n < t.length; n++) {
|
|
3038
3051
|
let r = t[n], o = Tr(e, r, "publisher", null, Xt.KW_REQUIRED), s = Tr(e, r, "subscriber", null, Xt.KW_REQUIRED);
|
|
3039
|
-
Yn(r, "s_event",
|
|
3052
|
+
Yn(r, "s_event", yr(e, r, "event", "", Xt.KW_REQUIRED)), Yn(r, "s_publisher", Ze(o)), Yn(r, "s_subscriber", Ze(s));
|
|
3040
3053
|
}
|
|
3041
3054
|
let n = zt(e, 0, null, 0);
|
|
3042
3055
|
for (let t = 0; t < n.length; t++) {
|
|
3043
3056
|
let r = n[t], o = Tr(e, r, "publisher", null, Xt.KW_REQUIRED), s = Tr(e, r, "subscriber", null, Xt.KW_REQUIRED);
|
|
3044
|
-
Yn(r, "s_event",
|
|
3057
|
+
Yn(r, "s_event", yr(e, r, "event", "", Xt.KW_REQUIRED)), Yn(r, "s_publisher", Ze(o)), Yn(r, "s_subscriber", Ze(s));
|
|
3045
3058
|
}
|
|
3046
3059
|
return {
|
|
3047
3060
|
subscriptions: t,
|
|
@@ -3073,7 +3086,7 @@ exports.GObj = O, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
|
|
|
3073
3086
|
}(n, e), n;
|
|
3074
3087
|
}, 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() {
|
|
3075
3088
|
return It.length;
|
|
3076
|
-
}, exports.gobj_publish_event = Qt, exports.gobj_read_attr = ht, exports.gobj_read_attrs =
|
|
3089
|
+
}, exports.gobj_publish_event = Qt, exports.gobj_read_attr = ht, exports.gobj_read_attrs = Et, exports.gobj_read_bool_attr = yt, 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) {
|
|
3077
3090
|
return Ye(e) ? _ ? _(e, t) : -1 : (mn(`${Ze(e)}: Only gobj services can load/save writable-persistent`), -1);
|
|
3078
3091
|
}, exports.gobj_repr_global_trace_levels = function() {
|
|
3079
3092
|
return L.map(([e, t, n]) => ({
|
|
@@ -3091,8 +3104,8 @@ exports.GObj = O, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
|
|
|
3091
3104
|
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)));
|
|
3092
3105
|
}
|
|
3093
3106
|
return 0;
|
|
3094
|
-
}(e,
|
|
3095
|
-
}, exports.gobj_save_persistent_attrs =
|
|
3107
|
+
}(e, E.SDF_VOLATIL, 0);
|
|
3108
|
+
}, exports.gobj_save_persistent_attrs = xe, exports.gobj_search_path = bt, exports.gobj_send_event = Ut, exports.gobj_services = function() {
|
|
3096
3109
|
let e = [];
|
|
3097
3110
|
for (const t of Object.keys(p)) Jn(e, t);
|
|
3098
3111
|
return e;
|
|
@@ -3109,21 +3122,21 @@ exports.GObj = O, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
|
|
|
3109
3122
|
}, exports.gobj_set_trace_machine_format = function(e) {
|
|
3110
3123
|
A = 1 === Number(e) ? 1 : 0;
|
|
3111
3124
|
}, exports.gobj_short_name = Ze, exports.gobj_start = Ce, exports.gobj_start_children = function(e) {
|
|
3112
|
-
return ot(e) ? (mn("gobj NULL or DESTROYED"), -1) : _t(e,
|
|
3125
|
+
return ot(e) ? (mn("gobj NULL or DESTROYED"), -1) : _t(e, x.WALK_FIRST2LAST, Le, 0, 0);
|
|
3113
3126
|
}, exports.gobj_start_tree = function(e) {
|
|
3114
|
-
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,
|
|
3127
|
+
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)));
|
|
3115
3128
|
}, exports.gobj_start_up = function(e, t, n, r, o, s, g) {
|
|
3116
3129
|
l = t, i = n, _ = r, a = o, u = s, c = g;
|
|
3117
|
-
const p = [["EV_STATE_CHANGED",
|
|
3130
|
+
const p = [["EV_STATE_CHANGED", R.EVF_SYSTEM_EVENT | R.EVF_OUTPUT_EVENT | R.EVF_NO_WARN_SUBS], [0, 0]];
|
|
3118
3131
|
for (let e = 0; e < p.length; e++) {
|
|
3119
3132
|
let t = p[e][0], n = p[e][1];
|
|
3120
|
-
|
|
3133
|
+
Ee(f, t, n);
|
|
3121
3134
|
}
|
|
3122
3135
|
return 0;
|
|
3123
3136
|
}, exports.gobj_stats = function(e, n, r, s) {
|
|
3124
3137
|
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);
|
|
3125
3138
|
}, exports.gobj_stop = Ue, exports.gobj_stop_children = Ve, exports.gobj_stop_tree = function(e) {
|
|
3126
|
-
return ot(e) ? (mn("gobj NULL or DESTROYED"), -1) : (B(e) && I(t("⏹ ⏹ ⏹ ⏹ stop_tree: %s", et(e))), We(e) && Ue(e), at(e,
|
|
3139
|
+
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));
|
|
3127
3140
|
}, exports.gobj_subscribe_event = Jt, exports.gobj_trace_level = M, exports.gobj_trace_machine_format = function() {
|
|
3128
3141
|
return A;
|
|
3129
3142
|
}, exports.gobj_trace_no_level = W, exports.gobj_unsubscribe_event = function(e, t, n, r) {
|
|
@@ -3139,14 +3152,14 @@ exports.GObj = O, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
|
|
|
3139
3152
|
if (Object.keys(n).forEach((n) => {
|
|
3140
3153
|
o.has(n) || mn(`${Ze(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
|
|
3141
3154
|
}), lr(t)) t = "";
|
|
3142
|
-
else if (!(At(e, t,
|
|
3155
|
+
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;
|
|
3143
3156
|
let s = Mt(n, t), l = Kt(e.dl_subscriptions, e, t, s.renamed_event, s.kw, r), i = 0, _ = 0, a = 0;
|
|
3144
3157
|
for (let t = 0; t < l.length; t++) {
|
|
3145
3158
|
let n = l[t], r = Bt(e, n, !1, !1);
|
|
3146
3159
|
0 === r ? i++ : r < 0 ? _++ : a++;
|
|
3147
3160
|
}
|
|
3148
3161
|
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;
|
|
3149
|
-
}, 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 =
|
|
3162
|
+
}, 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.html_markup = function(e) {
|
|
3150
3163
|
return "string" != typeof e ? (mn("html_markup: not a string, type " + typeof e), new Jr("")) : new Jr(e);
|
|
3151
3164
|
}, exports.id_index_in_obj_list = Cr, exports.index_in_list = eo, exports.is_array = Zn, exports.is_boolean = nr, exports.is_date = function(e) {
|
|
3152
3165
|
return e instanceof Date && !isNaN(e);
|
|
@@ -3168,18 +3181,13 @@ exports.GObj = O, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
|
|
|
3168
3181
|
}, exports.is_secret_name = Sn, exports.is_string = er, exports.jdb_delete = function(e, t, n, r) {
|
|
3169
3182
|
let o = jr(null, jr(null, e, "topics", null, 0), t, null, 0);
|
|
3170
3183
|
if (!o) return mn("jdb_delete: topic not found: " + t), null;
|
|
3171
|
-
if (lr(r.id)) return mn("jdb_delete: record without id: " + r),
|
|
3184
|
+
if (lr(r.id)) return mn("jdb_delete: record without id: " + r), yn(r), null;
|
|
3172
3185
|
if (!er(n)) return mn(`jdb_delete: path must be a string: ${String(n)}`), null;
|
|
3173
3186
|
let s, l = n.split("`"), i = o;
|
|
3174
3187
|
for (; (s = l.shift()) && !lr(s) && i;) Xn(i) && (i = jr(null, i, e.hook, null, 0)), i = Kr(i, null, s, !1);
|
|
3175
|
-
if (0
|
|
3176
|
-
|
|
3177
|
-
|
|
3178
|
-
} else {
|
|
3179
|
-
let t = jr(null, i, e.hook, null, 0), n = Cr(t, r.id);
|
|
3180
|
-
n >= 0 && t.splice(n, 1);
|
|
3181
|
-
}
|
|
3182
|
-
return o;
|
|
3188
|
+
if (!i || 0 !== l.length) return mn(`jdb_delete: path not found in topic '${t}': '${n}'`), null;
|
|
3189
|
+
let _ = Zn(i) ? i : jr(null, i, e.hook, null, 0), a = Cr(_, r.id);
|
|
3190
|
+
return a < 0 ? (mn(`jdb_delete: record not found in topic '${t}': '${n}' '${r.id}'`), null) : (_.splice(a, 1), o);
|
|
3183
3191
|
}, exports.jdb_get = function(e, t, n, r) {
|
|
3184
3192
|
let o = jr(null, jr(null, e, "topics", null, 0), t, null, 0);
|
|
3185
3193
|
return o ? (void 0 === r && (r = !0), Kr(o, e.hook, n, r)) : (mn("jdb_get: topic not found: " + t), null);
|
|
@@ -3188,27 +3196,28 @@ exports.GObj = O, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
|
|
|
3188
3196
|
return r ? n < r.length ? r[n] : {} : (mn("jdb_get_by_idx: topic not found: " + t), null);
|
|
3189
3197
|
}, exports.jdb_get_topic = function(e, t) {
|
|
3190
3198
|
let n = jr(null, e, "topics", null, 0);
|
|
3191
|
-
if (!n) return mn("jdb topics section not found"),
|
|
3192
|
-
return jr(null, n, t, null, 0) || (mn("jdb topic not found: " + t),
|
|
3199
|
+
if (!n) return mn("jdb topics section not found"), yn(e), null;
|
|
3200
|
+
return jr(null, n, t, null, 0) || (mn("jdb topic not found: " + t), yn(n), null);
|
|
3193
3201
|
}, exports.jdb_init = function(e, t, n) {
|
|
3194
3202
|
n && (e = Pn(e));
|
|
3195
|
-
let r = jr(null, e, "type", [],
|
|
3196
|
-
|
|
3197
|
-
let o = jr(null, e, "schema", {},
|
|
3203
|
+
let r = jr(null, e, "type", [], Xt.KW_CREATE);
|
|
3204
|
+
yr(null, e, "hook", "data", Xt.KW_CREATE);
|
|
3205
|
+
let o = jr(null, e, "schema", {}, Xt.KW_CREATE), s = jr(null, e, "topics", {}, Xt.KW_CREATE);
|
|
3198
3206
|
return Wr(o, function(e, t, n, o) {
|
|
3199
|
-
"__"
|
|
3207
|
+
"__" === t.substring(0, 2) || Xn(n) || jr(null, s, o, Pn(r), Xt.KW_CREATE);
|
|
3200
3208
|
}, t), e;
|
|
3201
3209
|
}, exports.jdb_update = function(e, t, n, r) {
|
|
3202
3210
|
let o = jr(null, jr(null, e, "topics", null, 0), t, null, 0);
|
|
3203
3211
|
if (!o) return mn("jdb_update: topic not found: " + t), null;
|
|
3204
|
-
if (lr(r.id)) return mn("jdb_update: record without id: " + r),
|
|
3212
|
+
if (lr(r.id)) return mn("jdb_update: record without id: " + r), yn(r), null;
|
|
3205
3213
|
if (!er(n)) return mn(`jdb_update: path must be a string: ${String(n)}`), null;
|
|
3206
3214
|
let s, l = n.split("`"), i = o;
|
|
3207
|
-
for (; (s = l.shift()) && !lr(s) && i;) Xn(i) && (i = jr(null, i, e.hook, [],
|
|
3215
|
+
for (; (s = l.shift()) && !lr(s) && i;) Xn(i) && (i = jr(null, i, e.hook, [], Xt.KW_CREATE)), i = Kr(i, null, s, !1);
|
|
3216
|
+
if (!i || 0 !== l.length) return mn(`jdb_update: path not found in topic '${t}': '${n}'`), null;
|
|
3208
3217
|
if (0 === l.length && i) if (Zn(i)) i.push(r);
|
|
3209
3218
|
else if (i.id === r.id) Fn(i, r);
|
|
3210
3219
|
else {
|
|
3211
|
-
let t = jr(null, i, e.hook, [],
|
|
3220
|
+
let t = jr(null, i, e.hook, [], Xt.KW_CREATE), n = Kr(t, e.hook, r.id, !1);
|
|
3212
3221
|
n ? Fn(n, r) : t.push(r);
|
|
3213
3222
|
}
|
|
3214
3223
|
return o;
|
|
@@ -3246,7 +3255,7 @@ exports.GObj = O, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
|
|
|
3246
3255
|
} catch (e) {
|
|
3247
3256
|
return null;
|
|
3248
3257
|
}
|
|
3249
|
-
}, exports.jwtDecode = Yr, exports.kw_clone_by_keys =
|
|
3258
|
+
}, exports.jwtDecode = Yr, exports.kw_clone_by_keys = Rr, exports.kw_clone_by_not_keys = xr, exports.kw_collect = function(e, t, n, r) {
|
|
3250
3259
|
if (e && !sr(e) && mn("GObj bad instanceof"), !t) return null;
|
|
3251
3260
|
r || (r = Nr);
|
|
3252
3261
|
let o = [];
|
|
@@ -3263,7 +3272,7 @@ exports.GObj = O, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
|
|
|
3263
3272
|
if (!n || !Zn(t)) return r && mn("item NULL or kw_list is not a list"), -1;
|
|
3264
3273
|
for (let e = 0; e < t.length; e++) if (Un(n, t[e])) return e;
|
|
3265
3274
|
return r && mn("item not found in this list"), -1;
|
|
3266
|
-
}, exports.kw_find_path = br, exports.kw_flag_t = Xt, exports.kw_get_bool = hr, exports.kw_get_dict = vr, exports.kw_get_dict_value = jr, exports.kw_get_int =
|
|
3275
|
+
}, exports.kw_find_path = br, exports.kw_flag_t = Xt, exports.kw_get_bool = hr, exports.kw_get_dict = vr, exports.kw_get_dict_value = jr, exports.kw_get_int = Er, exports.kw_get_list = function(e, t, n, r, o) {
|
|
3267
3276
|
e && !sr(e) && mn("GObj bad instanceof");
|
|
3268
3277
|
let s = br(e, t, n, !1);
|
|
3269
3278
|
const l = o && o & Xt.KW_REQUIRED, i = o && o & Xt.KW_CREATE, _ = o && o & Xt.KW_EXTRACT;
|
|
@@ -3291,7 +3300,7 @@ exports.GObj = O, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
|
|
|
3291
3300
|
}
|
|
3292
3301
|
}
|
|
3293
3302
|
return _ && mr(e, t, n), u;
|
|
3294
|
-
}, exports.kw_get_str =
|
|
3303
|
+
}, exports.kw_get_str = yr, exports.kw_has_key = fr, exports.kw_match_simple = Nr, exports.kw_pop = cr, exports.kw_remove_local_storage_value = kr, exports.kw_select = function(e, t, n, r) {
|
|
3295
3304
|
if (e && !sr(e) && mn("GObj bad instanceof"), !t) return null;
|
|
3296
3305
|
r || (r = Nr);
|
|
3297
3306
|
let o = [];
|
|
@@ -3316,7 +3325,7 @@ exports.GObj = O, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
|
|
|
3316
3325
|
else Zn(t) && t.forEach(function(t) {
|
|
3317
3326
|
if (er(t)) lr(t) || n.push(t);
|
|
3318
3327
|
else if (Xn(t)) {
|
|
3319
|
-
let r =
|
|
3328
|
+
let r = yr(e, t, "id", 0, 0);
|
|
3320
3329
|
r && n.push(r);
|
|
3321
3330
|
}
|
|
3322
3331
|
});
|
|
@@ -3326,7 +3335,7 @@ exports.GObj = O, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
|
|
|
3326
3335
|
let r = {};
|
|
3327
3336
|
if (lr(n) || (t = br(e, t, n)), Xn(t)) r = t;
|
|
3328
3337
|
else if (Zn(t)) for (let n = 0; n < t.length; n++) {
|
|
3329
|
-
let o = t[n], s =
|
|
3338
|
+
let o = t[n], s = yr(e, o, "id", "", Xt.KW_REQUIRED);
|
|
3330
3339
|
lr(s) || pr(r, s, o);
|
|
3331
3340
|
}
|
|
3332
3341
|
else mn(`${Ze(e)} kwid_new_dict: data type unknown`);
|
|
@@ -3389,7 +3398,7 @@ exports.GObj = O, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
|
|
|
3389
3398
|
else n && n(r.status);
|
|
3390
3399
|
var e;
|
|
3391
3400
|
}, r.send();
|
|
3392
|
-
}, exports.log_debug =
|
|
3401
|
+
}, exports.log_debug = En, exports.log_error = mn, exports.log_info = function(e, ...t) {
|
|
3393
3402
|
let n = bn(e, ...t), r = Zr();
|
|
3394
3403
|
nn && un("info", n) && nn("%c" + r + " INFO: " + String(n), "color:cyan"), fn("info", n, r);
|
|
3395
3404
|
}, exports.log_warning = hn, exports.mask_secrets_inline = $n, exports.msg_iev_get_msg_type = Mr, exports.msg_iev_get_stack = Vr, exports.msg_iev_push_stack = Fr, exports.msg_iev_read_key = Pr, exports.msg_iev_set_msg_type = Gr, exports.msg_iev_write_key = Ur, exports.node_uuid = to, exports.parseBoolean = ir, exports.parseSVG = function(e) {
|
|
@@ -3500,14 +3509,14 @@ exports.GObj = O, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
|
|
|
3500
3509
|
[null, null]
|
|
3501
3510
|
];
|
|
3502
3511
|
return (Lo = ge(e, [
|
|
3503
|
-
["EV_ON_MESSAGE",
|
|
3504
|
-
["EV_IDENTITY_CARD_ACK",
|
|
3505
|
-
["EV_ON_ID_NAK",
|
|
3506
|
-
["EV_MT_STATS",
|
|
3507
|
-
["EV_MT_COMMAND",
|
|
3508
|
-
["EV_ON_OPEN",
|
|
3509
|
-
["EV_ON_CLOSE",
|
|
3510
|
-
["EV_ON_OPEN_ERROR",
|
|
3512
|
+
["EV_ON_MESSAGE", R.EVF_OUTPUT_EVENT],
|
|
3513
|
+
["EV_IDENTITY_CARD_ACK", R.EVF_PUBLIC_EVENT],
|
|
3514
|
+
["EV_ON_ID_NAK", R.EVF_PUBLIC_EVENT | R.EVF_OUTPUT_EVENT],
|
|
3515
|
+
["EV_MT_STATS", R.EVF_PUBLIC_EVENT],
|
|
3516
|
+
["EV_MT_COMMAND", R.EVF_PUBLIC_EVENT],
|
|
3517
|
+
["EV_ON_OPEN", R.EVF_OUTPUT_EVENT | R.EVF_NO_WARN_SUBS],
|
|
3518
|
+
["EV_ON_CLOSE", R.EVF_OUTPUT_EVENT | R.EVF_NO_WARN_SUBS],
|
|
3519
|
+
["EV_ON_OPEN_ERROR", R.EVF_OUTPUT_EVENT | R.EVF_NO_WARN_SUBS],
|
|
3511
3520
|
["EV_TIMEOUT", 0],
|
|
3512
3521
|
[null, 0]
|
|
3513
3522
|
], t, es, 0, ko, Co, 0, 0, Ao, S.gcflag_no_check_output_events)) ? 0 : -1;
|
|
@@ -3521,26 +3530,26 @@ exports.GObj = O, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
|
|
|
3521
3530
|
null
|
|
3522
3531
|
]]]];
|
|
3523
3532
|
return (mo = ge(e, [
|
|
3524
|
-
["EV_TIMEOUT",
|
|
3525
|
-
["EV_TIMEOUT_PERIODIC",
|
|
3533
|
+
["EV_TIMEOUT", R.EVF_OUTPUT_EVENT],
|
|
3534
|
+
["EV_TIMEOUT_PERIODIC", R.EVF_OUTPUT_EVENT],
|
|
3526
3535
|
[0, 0]
|
|
3527
|
-
], t,
|
|
3536
|
+
], t, Eo, 0, po, bo, 0, 0, 0, S.gcflag_manual_start)) ? 0 : -1;
|
|
3528
3537
|
}("C_TIMER");
|
|
3529
3538
|
}, exports.register_c_yuno = function() {
|
|
3530
3539
|
return function(e) {
|
|
3531
3540
|
if (So) return mn(`GClass ALREADY created: ${e}`), -1;
|
|
3532
3541
|
const t = [["ST_IDLE", [[
|
|
3533
3542
|
"EV_TIMEOUT_PERIODIC",
|
|
3534
|
-
|
|
3543
|
+
xo,
|
|
3535
3544
|
null
|
|
3536
3545
|
]]]];
|
|
3537
|
-
return (So = ge(e, [["EV_TIMEOUT_PERIODIC",
|
|
3546
|
+
return (So = ge(e, [["EV_TIMEOUT_PERIODIC", R.EVF_OUTPUT_EVENT | R.EVF_NO_WARN_SUBS], [0, 0]], t, $o, 0, jo, Oo, 0, 0, 0, 0)) ? 0 : -1;
|
|
3538
3547
|
}("C_YUNO");
|
|
3539
3548
|
}, exports.safeSrc = function(e) {
|
|
3540
3549
|
if (!e) return "";
|
|
3541
3550
|
const t = String(e).trim();
|
|
3542
3551
|
return /^javascript:/i.test(t) || /^data:/i.test(t) ? "" : Br(t);
|
|
3543
|
-
}, exports.sdata_flag_t =
|
|
3552
|
+
}, exports.sdata_flag_t = E, exports.send_http_json_post = function(e, t, n) {
|
|
3544
3553
|
let r = new XMLHttpRequest();
|
|
3545
3554
|
r.open("POST", e), r.setRequestHeader("Accept", "application/json"), r.setRequestHeader("Content-Type", "application/json"), r.onreadystatechange = function() {
|
|
3546
3555
|
4 === r.readyState && n(r.status, r.responseText);
|
|
@@ -3564,7 +3573,7 @@ exports.GObj = O, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
|
|
|
3564
3573
|
} else on = e;
|
|
3565
3574
|
}, exports.set_remote_log_functions = pn, exports.set_strings_are_text = function(e) {
|
|
3566
3575
|
zr = !!e;
|
|
3567
|
-
}, exports.set_timeout =
|
|
3576
|
+
}, exports.set_timeout = yo, exports.set_timeout_periodic = To, exports.sprintf = t, exports.stats_parser = function(e, t, n, r) {}, exports.str_in_list = Lr, exports.strcasecmp = ar, exports.strcmp = _r, exports.strings_are_text = function() {
|
|
3568
3577
|
return zr;
|
|
3569
3578
|
}, exports.strncmp = function(e, t, n) {
|
|
3570
3579
|
var r = (e + "").substring(0, n), o = (t + "").substring(0, n);
|
|
@@ -3621,7 +3630,7 @@ exports.GObj = O, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
|
|
|
3621
3630
|
total: _
|
|
3622
3631
|
};
|
|
3623
3632
|
} };
|
|
3624
|
-
}, exports.trace_json = Tn, exports.trace_json_masked = Ln, exports.trace_level_t = C, exports.trace_msg =
|
|
3633
|
+
}, exports.trace_json = Tn, exports.trace_json_masked = Ln, exports.trace_level_t = C, exports.trace_msg = yn, exports.treedb_decoder_fkey = ao, exports.treedb_decoder_hook = function(e, t) {
|
|
3625
3634
|
if (er(t)) {
|
|
3626
3635
|
if (-1 === t.indexOf("^")) {
|
|
3627
3636
|
let n, r = e.hook;
|
|
@@ -3658,6 +3667,6 @@ exports.GObj = O, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
|
|
|
3658
3667
|
return Qn(e);
|
|
3659
3668
|
}, exports.vsprintf = function(e, n) {
|
|
3660
3669
|
return t.apply(null, [e].concat(n || []));
|
|
3661
|
-
}, exports.walk_type_t =
|
|
3670
|
+
}, exports.walk_type_t = x;
|
|
3662
3671
|
|
|
3663
3672
|
//# sourceMappingURL=gobj-js.cjs.min.js.map
|