@yuneta/gobj-js 7.8.0 → 7.9.4
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 +9 -9
- package/dist/gobj-js.cjs.js.map +1 -1
- package/dist/gobj-js.cjs.min.js +3 -3
- package/dist/gobj-js.cjs.min.js.map +1 -1
- package/dist/gobj-js.es.js +9 -9
- package/dist/gobj-js.es.js.map +1 -1
- package/dist/gobj-js.es.min.js +39 -39
- package/dist/gobj-js.es.min.js.map +1 -1
- package/dist/gobj-js.iife.js +9 -9
- package/dist/gobj-js.iife.js.map +1 -1
- package/dist/gobj-js.iife.min.js +516 -516
- package/dist/gobj-js.iife.min.js.map +1 -1
- package/dist/gobj-js.umd.js +9 -9
- package/dist/gobj-js.umd.js.map +1 -1
- package/dist/gobj-js.umd.min.js +516 -516
- package/dist/gobj-js.umd.min.js.map +1 -1
- package/package.json +1 -1
package/dist/gobj-js.iife.min.js
CHANGED
|
@@ -19,72 +19,72 @@ var gobjJs = function(e) {
|
|
|
19
19
|
};
|
|
20
20
|
function n(e) {
|
|
21
21
|
return function(e, r) {
|
|
22
|
-
var
|
|
23
|
-
for (
|
|
24
|
-
else if ("object" == typeof e[
|
|
25
|
-
if ((s = e[
|
|
26
|
-
if (null ==
|
|
27
|
-
|
|
22
|
+
var o, i, l, s, _, a, u, c, f, g = 1, d = e.length, b = "";
|
|
23
|
+
for (i = 0; i < d; i++) if ("string" == typeof e[i]) b += e[i];
|
|
24
|
+
else if ("object" == typeof e[i]) {
|
|
25
|
+
if ((s = e[i]).keys) for (o = r[g], l = 0; l < s.keys.length; l++) {
|
|
26
|
+
if (null == o) throw new Error(n("[sprintf] Cannot access property \"%s\" of undefined value \"%s\"", s.keys[l], s.keys[l - 1]));
|
|
27
|
+
o = o[s.keys[l]];
|
|
28
28
|
}
|
|
29
|
-
else
|
|
30
|
-
if (t.not_type.test(s.type) && t.not_primitive.test(s.type) &&
|
|
31
|
-
switch (t.number.test(s.type) && (c =
|
|
29
|
+
else o = s.param_no ? r[s.param_no] : r[g++];
|
|
30
|
+
if (t.not_type.test(s.type) && t.not_primitive.test(s.type) && o instanceof Function && (o = o()), t.numeric_arg.test(s.type) && "number" != typeof o && isNaN(o)) throw new TypeError(n("[sprintf] expecting number but found %T", o));
|
|
31
|
+
switch (t.number.test(s.type) && (c = o >= 0), s.type) {
|
|
32
32
|
case "b":
|
|
33
|
-
|
|
33
|
+
o = parseInt(o, 10).toString(2);
|
|
34
34
|
break;
|
|
35
35
|
case "c":
|
|
36
|
-
|
|
36
|
+
o = String.fromCharCode(parseInt(o, 10));
|
|
37
37
|
break;
|
|
38
38
|
case "d":
|
|
39
39
|
case "i":
|
|
40
|
-
|
|
40
|
+
o = parseInt(o, 10);
|
|
41
41
|
break;
|
|
42
42
|
case "j":
|
|
43
|
-
|
|
43
|
+
o = JSON.stringify(o, null, s.width ? parseInt(s.width) : 0);
|
|
44
44
|
break;
|
|
45
45
|
case "e":
|
|
46
|
-
|
|
46
|
+
o = s.precision ? parseFloat(o).toExponential(s.precision) : parseFloat(o).toExponential();
|
|
47
47
|
break;
|
|
48
48
|
case "f":
|
|
49
|
-
|
|
49
|
+
o = s.precision ? parseFloat(o).toFixed(s.precision) : parseFloat(o);
|
|
50
50
|
break;
|
|
51
51
|
case "g":
|
|
52
|
-
|
|
52
|
+
o = s.precision ? String(Number(o.toPrecision(s.precision))) : parseFloat(o);
|
|
53
53
|
break;
|
|
54
54
|
case "o":
|
|
55
|
-
|
|
55
|
+
o = (parseInt(o, 10) >>> 0).toString(8);
|
|
56
56
|
break;
|
|
57
57
|
case "s":
|
|
58
|
-
|
|
58
|
+
o = String(o), o = s.precision ? o.substring(0, s.precision) : o;
|
|
59
59
|
break;
|
|
60
60
|
case "t":
|
|
61
|
-
|
|
61
|
+
o = String(!!o), o = s.precision ? o.substring(0, s.precision) : o;
|
|
62
62
|
break;
|
|
63
63
|
case "T":
|
|
64
|
-
|
|
64
|
+
o = Object.prototype.toString.call(o).slice(8, -1).toLowerCase(), o = s.precision ? o.substring(0, s.precision) : o;
|
|
65
65
|
break;
|
|
66
66
|
case "u":
|
|
67
|
-
|
|
67
|
+
o = parseInt(o, 10) >>> 0;
|
|
68
68
|
break;
|
|
69
69
|
case "v":
|
|
70
|
-
|
|
70
|
+
o = o.valueOf(), o = s.precision ? o.substring(0, s.precision) : o;
|
|
71
71
|
break;
|
|
72
72
|
case "x":
|
|
73
|
-
|
|
73
|
+
o = (parseInt(o, 10) >>> 0).toString(16);
|
|
74
74
|
break;
|
|
75
|
-
case "X":
|
|
75
|
+
case "X": o = (parseInt(o, 10) >>> 0).toString(16).toUpperCase();
|
|
76
76
|
}
|
|
77
|
-
t.json.test(s.type) ? b +=
|
|
77
|
+
t.json.test(s.type) ? b += o : (!t.number.test(s.type) || c && !s.sign ? f = "" : (f = c ? "+" : "-", o = o.toString().replace(t.sign, "")), a = s.pad_char ? "0" === s.pad_char ? "0" : s.pad_char.charAt(1) : " ", u = s.width - (f + o).length, _ = s.width && u > 0 ? a.repeat(u) : "", b += s.align ? f + o + _ : "0" === a ? f + _ + o : _ + f + o);
|
|
78
78
|
}
|
|
79
79
|
return b;
|
|
80
80
|
}(function(e) {
|
|
81
81
|
if (r[e]) return r[e];
|
|
82
|
-
let n,
|
|
83
|
-
for (;
|
|
84
|
-
if (null !== (n = t.text.exec(
|
|
85
|
-
else if (null !== (n = t.modulo.exec(
|
|
82
|
+
let n, o = e, i = [], l = 0;
|
|
83
|
+
for (; o;) {
|
|
84
|
+
if (null !== (n = t.text.exec(o))) i.push(n[0]);
|
|
85
|
+
else if (null !== (n = t.modulo.exec(o))) i.push("%");
|
|
86
86
|
else {
|
|
87
|
-
if (null === (n = t.placeholder.exec(
|
|
87
|
+
if (null === (n = t.placeholder.exec(o))) throw new SyntaxError("[sprintf] unexpected placeholder");
|
|
88
88
|
if (n[2]) {
|
|
89
89
|
l |= 1;
|
|
90
90
|
var s = [], _ = n[2], a = [];
|
|
@@ -97,7 +97,7 @@ var gobjJs = function(e) {
|
|
|
97
97
|
n[2] = s;
|
|
98
98
|
} else l |= 2;
|
|
99
99
|
if (3 === l) throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");
|
|
100
|
-
|
|
100
|
+
i.push({
|
|
101
101
|
placeholder: n[0],
|
|
102
102
|
param_no: n[1],
|
|
103
103
|
keys: n[2],
|
|
@@ -109,26 +109,26 @@ var gobjJs = function(e) {
|
|
|
109
109
|
type: n[8]
|
|
110
110
|
});
|
|
111
111
|
}
|
|
112
|
-
|
|
112
|
+
o = o.substring(n[0].length);
|
|
113
113
|
}
|
|
114
|
-
return r[e] =
|
|
114
|
+
return r[e] = i;
|
|
115
115
|
}(e), arguments);
|
|
116
116
|
}
|
|
117
117
|
var r = Object.create(null);
|
|
118
|
-
function
|
|
118
|
+
function o(e, t, n, r, o) {
|
|
119
119
|
return {
|
|
120
120
|
result: t,
|
|
121
121
|
comment: n || {},
|
|
122
122
|
schema: r || {},
|
|
123
|
-
data:
|
|
123
|
+
data: o || []
|
|
124
124
|
};
|
|
125
125
|
}
|
|
126
|
-
function
|
|
126
|
+
function i(e, t, n, r, o) {
|
|
127
127
|
return {
|
|
128
128
|
result: t,
|
|
129
129
|
comment: n || {},
|
|
130
130
|
schema: r || {},
|
|
131
|
-
data:
|
|
131
|
+
data: o || []
|
|
132
132
|
};
|
|
133
133
|
}
|
|
134
134
|
var l = "7.0.0a", s = null, _ = null, a = null, u = null, c = null, f = null, g = [], d = Object.create(null), b = {}, p = null, m = null, h = 0, y = Object.freeze({
|
|
@@ -167,16 +167,16 @@ var gobjJs = function(e) {
|
|
|
167
167
|
});
|
|
168
168
|
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;
|
|
169
169
|
var T = class {
|
|
170
|
-
constructor(e, t, n = 0, r = null,
|
|
171
|
-
this.type = e, this.name = t, this.alias =
|
|
170
|
+
constructor(e, t, n = 0, r = null, o = "", i = null, l = null, s = 0, _ = null, a = null, u = null) {
|
|
171
|
+
this.type = e, this.name = t, this.alias = i, this.flag = n, this.default_value = r, this.header = l, this.fillspace = s, this.description = o, this.json_fn = _, this.schema = a, this.authpth = u;
|
|
172
172
|
}
|
|
173
|
-
}, v = () => new T(0, null), S = (e, t, n, r,
|
|
174
|
-
constructor(e, t, n, r,
|
|
175
|
-
this.gclass_name = e, this.dl_states = [], this.dl_events = [], this.gmt = t, this.lmt = n, this.attrs_table = r, this.priv =
|
|
173
|
+
}, v = () => new T(0, null), S = (e, t, n, r, o) => new T(e, t, n, r, o), j = class {
|
|
174
|
+
constructor(e, t, n, r, o, i, l, s, _) {
|
|
175
|
+
this.gclass_name = e, this.dl_states = [], this.dl_events = [], this.gmt = t, this.lmt = n, this.attrs_table = r, this.priv = o, this.authz_table = i, this.command_table = l, this.s_user_trace_level = s, this.gclass_flag = Number(_) || 0, this.instances = 0, this.trace_level = 0, this.no_trace_level = 0, this.jn_trace_filter = null, this.fsm_checked = !1;
|
|
176
176
|
}
|
|
177
177
|
}, O = class {
|
|
178
|
-
constructor(e, t, n, r,
|
|
179
|
-
this.__refs__ = 0, this.gclass = t, this.parent = null, this.dl_children = [], this.dl_subscriptions = [], this.dl_subscribings = [], this.current_state = t.dl_states[0], this.last_state = null, this.obflag = 0, this.gobj_flag = Number(
|
|
178
|
+
constructor(e, t, n, r, o) {
|
|
179
|
+
this.__refs__ = 0, this.gclass = t, this.parent = null, this.dl_children = [], this.dl_subscriptions = [], this.dl_subscribings = [], this.current_state = t.dl_states[0], this.last_state = null, this.obflag = 0, this.gobj_flag = Number(o) || 0, this.gobj_name = e, this.jn_attrs = null, this.jn_stats = {}, this.jn_user_data = {}, this.full_name = null, this.short_name = null, this.priv = Pt(t.priv), this.running = !1, this.playing = !1, this.disabled = !1, this.bottom_gobj = null, this.trace_level = 0, this.no_trace_level = 0;
|
|
180
180
|
}
|
|
181
181
|
}, N = Object.freeze({
|
|
182
182
|
gcflag_manual_start: 1,
|
|
@@ -228,106 +228,106 @@ var gobjJs = function(e) {
|
|
|
228
228
|
let n = {};
|
|
229
229
|
if (!Ht(t)) return kt("sdata_desc MUST be an array"), Lt(t), n;
|
|
230
230
|
for (let r = 0; r < t.length; r++) {
|
|
231
|
-
const
|
|
232
|
-
|
|
231
|
+
const o = t[r];
|
|
232
|
+
o.name && C(e, n, o);
|
|
233
233
|
}
|
|
234
234
|
return n;
|
|
235
235
|
}
|
|
236
236
|
function C(e, t, n) {
|
|
237
|
-
let r,
|
|
237
|
+
let r, o = n.default_value;
|
|
238
238
|
switch (n.type) {
|
|
239
239
|
case y.DTP_STRING:
|
|
240
|
-
r = String(
|
|
240
|
+
r = String(o);
|
|
241
241
|
break;
|
|
242
242
|
case y.DTP_BOOLEAN:
|
|
243
|
-
r = ln(
|
|
243
|
+
r = ln(o);
|
|
244
244
|
break;
|
|
245
245
|
case y.DTP_INTEGER:
|
|
246
|
-
r = parseInt(
|
|
246
|
+
r = parseInt(o), isNaN(r) && kt(`${we(e)}: attr NaN: ${n.name}`);
|
|
247
247
|
break;
|
|
248
248
|
case y.DTP_REAL:
|
|
249
|
-
r = Number(
|
|
249
|
+
r = Number(o), isNaN(r) && kt(`${we(e)}: attr NaN: ${n.name}`);
|
|
250
250
|
break;
|
|
251
251
|
case y.DTP_LIST:
|
|
252
|
-
if (Xt(
|
|
253
|
-
r = JSON.parse(
|
|
252
|
+
if (Xt(o)) try {
|
|
253
|
+
r = JSON.parse(o);
|
|
254
254
|
} catch (e) {
|
|
255
255
|
kt(`JSON parse error: ${e.message}`);
|
|
256
256
|
}
|
|
257
|
-
else r =
|
|
257
|
+
else r = o;
|
|
258
258
|
Ht(r) || (r = []);
|
|
259
259
|
break;
|
|
260
260
|
case y.DTP_DICT:
|
|
261
|
-
if (Xt(
|
|
262
|
-
r = JSON.parse(
|
|
261
|
+
if (Xt(o)) try {
|
|
262
|
+
r = JSON.parse(o);
|
|
263
263
|
} catch (e) {
|
|
264
264
|
kt(`JSON parse error: ${e.message}`);
|
|
265
265
|
}
|
|
266
|
-
else r =
|
|
266
|
+
else r = o;
|
|
267
267
|
Qt(r) || (r = {});
|
|
268
268
|
break;
|
|
269
269
|
case y.DTP_JSON:
|
|
270
|
-
if (Xt(
|
|
271
|
-
r = JSON.parse(
|
|
270
|
+
if (Xt(o)) try {
|
|
271
|
+
r = JSON.parse(o);
|
|
272
272
|
} catch (e) {
|
|
273
273
|
kt(`JSON parse error: ${e.message}`);
|
|
274
274
|
}
|
|
275
|
-
else r =
|
|
275
|
+
else r = o;
|
|
276
276
|
break;
|
|
277
|
-
case y.DTP_POINTER: r =
|
|
277
|
+
case y.DTP_POINTER: r = o;
|
|
278
278
|
}
|
|
279
279
|
return void 0 === r && (kt(`default_value WRONG, it: ${n.name}, value: ${n.default_value}`), r = null), t[n.name] = r, 0;
|
|
280
280
|
}
|
|
281
281
|
function F(e, t, n, r) {
|
|
282
|
-
let
|
|
282
|
+
let o;
|
|
283
283
|
switch (n.type) {
|
|
284
284
|
case y.DTP_STRING:
|
|
285
|
-
if (null == r)
|
|
286
|
-
else if (Xt(r))
|
|
285
|
+
if (null == r) o = "";
|
|
286
|
+
else if (Xt(r)) o = String(r);
|
|
287
287
|
else {
|
|
288
288
|
let e = JSON.stringify(r);
|
|
289
|
-
e && (
|
|
289
|
+
e && (o = String(e));
|
|
290
290
|
}
|
|
291
291
|
break;
|
|
292
292
|
case y.DTP_BOOLEAN:
|
|
293
|
-
|
|
293
|
+
o = ln(r);
|
|
294
294
|
break;
|
|
295
295
|
case y.DTP_INTEGER:
|
|
296
|
-
|
|
296
|
+
o = parseInt(r), isNaN(o) && kt(`${we(e)}: attr NaN: ${n.name}`);
|
|
297
297
|
break;
|
|
298
298
|
case y.DTP_REAL:
|
|
299
|
-
|
|
299
|
+
o = Number(r), isNaN(o) && kt(`${we(e)}: attr NaN: ${n.name}`);
|
|
300
300
|
break;
|
|
301
301
|
case y.DTP_LIST:
|
|
302
302
|
if (Xt(r)) try {
|
|
303
|
-
|
|
303
|
+
o = JSON.parse(r);
|
|
304
304
|
} catch (e) {
|
|
305
305
|
kt(`JSON parse error: ${e.message}`);
|
|
306
306
|
}
|
|
307
|
-
else
|
|
308
|
-
if (!Ht(
|
|
307
|
+
else o = r;
|
|
308
|
+
if (!Ht(o)) return kt(`attr must be an array: ${n.name}`), -1;
|
|
309
309
|
break;
|
|
310
310
|
case y.DTP_DICT:
|
|
311
311
|
if (Xt(r)) try {
|
|
312
|
-
|
|
312
|
+
o = JSON.parse(r);
|
|
313
313
|
} catch (e) {
|
|
314
314
|
kt(`JSON parse error: ${e.message}`);
|
|
315
315
|
}
|
|
316
|
-
else
|
|
317
|
-
if (!Qt(
|
|
316
|
+
else o = r;
|
|
317
|
+
if (!Qt(o)) return kt(`attr must be an object: ${n.name}`), -1;
|
|
318
318
|
break;
|
|
319
319
|
case y.DTP_JSON:
|
|
320
320
|
if (Xt(r)) try {
|
|
321
|
-
|
|
321
|
+
o = JSON.parse(r);
|
|
322
322
|
} catch (e) {
|
|
323
323
|
kt(`JSON parse error: ${e.message}`);
|
|
324
324
|
}
|
|
325
|
-
else
|
|
326
|
-
if (!Ht(
|
|
325
|
+
else o = r;
|
|
326
|
+
if (!Ht(o) && !Qt(o)) return kt(`attr must be a json dict/list: ${n.name}`), -1;
|
|
327
327
|
break;
|
|
328
|
-
case y.DTP_POINTER:
|
|
328
|
+
case y.DTP_POINTER: o = r;
|
|
329
329
|
}
|
|
330
|
-
return void 0 ===
|
|
330
|
+
return void 0 === o && kt(`${we(e)}: attr undefined: ${n.name}`), t[n.name] = o, Qt(e.priv) && e.priv.hasOwnProperty(n.name) && (e.priv[n.name] = o), e.obflag & D.obflag_created && !(e.obflag & D.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, n.name), 0;
|
|
331
331
|
}
|
|
332
332
|
function G(e) {
|
|
333
333
|
return e.jn_attrs;
|
|
@@ -344,11 +344,11 @@ var gobjJs = function(e) {
|
|
|
344
344
|
}
|
|
345
345
|
return n && kt(`${e.gclass_name}: GClass Attribute NOT FOUND: ${t}`), null;
|
|
346
346
|
}
|
|
347
|
-
function M(e, t, n, r,
|
|
347
|
+
function M(e, t, n, r, o, i, l, s, _, a, u) {
|
|
348
348
|
if (on(e)) return kt("gclass_name EMPTY"), null;
|
|
349
349
|
if (e.includes("`") || e.includes("^") || e.includes(".")) return kt(`GClass name CANNOT have '.' or '^' or '\`' char: ${e}`), null;
|
|
350
350
|
if (X(e)) return kt(`GClass ALREADY exists: ${e}`), null;
|
|
351
|
-
let c = new j(e, r,
|
|
351
|
+
let c = new j(e, r, o, i, l, s, _, a, u);
|
|
352
352
|
(function(e, t) {
|
|
353
353
|
e && e instanceof j ? t ? d[t] ? kt(`gclass ALREADY REGISTERED: ${t}`) : d[t] = e : kt("gclass_name undefined") : kt("gclass undefined");
|
|
354
354
|
})(c, e);
|
|
@@ -357,10 +357,10 @@ var gobjJs = function(e) {
|
|
|
357
357
|
let t = n[e][0], r = n[e][1];
|
|
358
358
|
if (on(t)) continue;
|
|
359
359
|
if (B(c, t) < 0) return K(c), null;
|
|
360
|
-
const
|
|
361
|
-
for (let e = 0; e <
|
|
362
|
-
let n = r[e][0],
|
|
363
|
-
on(n) || J(c, t, n,
|
|
360
|
+
const o = r.length;
|
|
361
|
+
for (let e = 0; e < o; e++) {
|
|
362
|
+
let n = r[e][0], o = r[e][1], i = r[e][2];
|
|
363
|
+
on(n) || J(c, t, n, o, i);
|
|
364
364
|
}
|
|
365
365
|
}
|
|
366
366
|
for (let e = 0; e < t.length; e++) {
|
|
@@ -405,11 +405,11 @@ var gobjJs = function(e) {
|
|
|
405
405
|
function B(e, t) {
|
|
406
406
|
return e instanceof j ? x(e, t) ? (kt(`state already exists: ${t}`), -1) : (e.dl_states.push(new A(t)), 0) : (kt("Cannot add state, typeof not GClass"), -1);
|
|
407
407
|
}
|
|
408
|
-
function J(e, t, n, r,
|
|
408
|
+
function J(e, t, n, r, o) {
|
|
409
409
|
if (!(e instanceof j)) return kt("Cannot add state, typeof not GClass"), -1;
|
|
410
410
|
if (on(t)) return kt("state_name EMPTY"), -1;
|
|
411
|
-
let
|
|
412
|
-
return
|
|
411
|
+
let i = x(e, t);
|
|
412
|
+
return i ? Y(i, n) ? (kt(`event already exists: gclass ${e.gclass_name}, state ${t}, event ${n}`), -1) : (i.dl_actions.push(new $(n, r, o)), 0) : (kt(`state not found: ${t}`), -1);
|
|
413
413
|
}
|
|
414
414
|
function q(e, t, n) {
|
|
415
415
|
on(t) || e.push(new I(t, n));
|
|
@@ -433,8 +433,8 @@ var gobjJs = function(e) {
|
|
|
433
433
|
for (let n = 0; n < e.dl_states.length; n++) {
|
|
434
434
|
let r = e.dl_states[n];
|
|
435
435
|
if (!on(r.state_name)) for (let n = 0; n < r.dl_actions.length; n++) {
|
|
436
|
-
let
|
|
437
|
-
on(
|
|
436
|
+
let o = r.dl_actions[n];
|
|
437
|
+
on(o.event_name) || (Q(e, o.event_name) || (kt(`SMachine: state's event NOT in input_events: gclass ${e.gclass_name}, state ${r.state_name}, event ${o.event_name}`), t += -1), o.next_state && (x(e, o.next_state) || (kt(`SMachine: next state NOT in state names: gclass ${e.gclass_name}, state ${r.state_name}, next_state ${o.next_state}`), t += -1)));
|
|
438
438
|
}
|
|
439
439
|
}
|
|
440
440
|
for (let n = 0; n < e.dl_events.length; n++) {
|
|
@@ -442,8 +442,8 @@ var gobjJs = function(e) {
|
|
|
442
442
|
if (!on(r.event_name) && (Zt(r.event_flag) || (kt(`SMachine: event flag is NOT number: gclass ${e.gclass_name}, event ${r.event_name}`), t += -1), !(r.event_flag & R.EVF_OUTPUT_EVENT))) {
|
|
443
443
|
let n = !1;
|
|
444
444
|
for (let t = 0; t < e.dl_states.length; t++) {
|
|
445
|
-
let
|
|
446
|
-
on(
|
|
445
|
+
let o = e.dl_states[t];
|
|
446
|
+
on(o.state_name) || Y(o, r.event_name) && (n = !0);
|
|
447
447
|
}
|
|
448
448
|
n || (kt(`SMachine: input_list's event NOT in state: gclass ${e.gclass_name}, event ${r.event_name}`), t += -1);
|
|
449
449
|
}
|
|
@@ -476,34 +476,34 @@ var gobjJs = function(e) {
|
|
|
476
476
|
let n = Yn(e.dl_children, t);
|
|
477
477
|
n >= 0 && (Bt(e.dl_children, n), t.parent = null);
|
|
478
478
|
}
|
|
479
|
-
function
|
|
479
|
+
function oe(e, t) {
|
|
480
480
|
"__json_config_variables__" !== t && kt(`GClass Attribute NOT FOUND: ${we(e)}, attr ${t}`);
|
|
481
481
|
}
|
|
482
|
-
function
|
|
482
|
+
function ie(e, t, n) {
|
|
483
483
|
let r = t;
|
|
484
|
-
(function(e, t, n, r,
|
|
484
|
+
(function(e, t, n, r, o) {
|
|
485
485
|
if (!e || !t) return kt("hsdata or kw NULL"), -1;
|
|
486
|
-
let
|
|
486
|
+
let i = 0;
|
|
487
487
|
for (const [l, s] of Object.entries(t)) {
|
|
488
|
-
const t = W(
|
|
489
|
-
t ? (-1 === n || t.flag & n) && (t.flag & E.SDF_DEPRECATED && $t(`${we(
|
|
488
|
+
const t = W(o.gclass, l, !1);
|
|
489
|
+
t ? (-1 === n || t.flag & n) && (t.flag & E.SDF_DEPRECATED && $t(`${we(o)}: Deprecated attribute used in gobj creation: ${l}`), i += F(o, e, t, s)) : r && (r(o, l), i--);
|
|
490
490
|
}
|
|
491
|
-
return
|
|
492
|
-
})(G(e), r, -1, e.gclass.gclass_flag & N.gcflag_ignore_unknown_attrs ? 0 :
|
|
491
|
+
return i;
|
|
492
|
+
})(G(e), r, -1, e.gclass.gclass_flag & N.gcflag_ignore_unknown_attrs ? 0 : oe, e) < 0 && (kt(`${we(e)} json2data() FAILED`), Lt(r));
|
|
493
493
|
}
|
|
494
|
-
function le(e, t, r,
|
|
495
|
-
if (
|
|
494
|
+
function le(e, t, r, o, i) {
|
|
495
|
+
if (i & w.gobj_flag_yuno) {
|
|
496
496
|
if (p) return kt("__yuno__ already created"), null;
|
|
497
|
-
|
|
497
|
+
i |= w.gobj_flag_service;
|
|
498
498
|
} else {
|
|
499
|
-
if (!
|
|
500
|
-
if (!("string" == typeof
|
|
501
|
-
if (Xt(
|
|
499
|
+
if (!o) return kt("gobj NEEDS a parent!"), null;
|
|
500
|
+
if (!("string" == typeof o || o instanceof O)) return kt(`BAD TYPE of parent: ${o}`), null;
|
|
501
|
+
if (Xt(o) && !(o = ee(o))) return $t(`parent service not found: ${o}`), null;
|
|
502
502
|
}
|
|
503
|
-
if (
|
|
504
|
-
if (
|
|
503
|
+
if (i & w.gobj_flag_service && ee(e, !1)) return kt(`service ALREADY registered: ${t}^${e}`), null;
|
|
504
|
+
if (i & w.gobj_flag_default_service) {
|
|
505
505
|
if (m) return kt(`default service ALREADY registered: ${t}^${e}`), null;
|
|
506
|
-
|
|
506
|
+
i |= w.gobj_flag_service;
|
|
507
507
|
}
|
|
508
508
|
if (on(t)) return kt("gclass_name must be a string"), null;
|
|
509
509
|
let l = X(t, !1);
|
|
@@ -513,25 +513,25 @@ var gobjJs = function(e) {
|
|
|
513
513
|
if (e.includes("`")) return kt(`gobj_name cannot contain char ': ${t}^${e}`), null;
|
|
514
514
|
if (e.includes("^")) return kt(`gobj_name cannot contain char ^: ${t}^${e}`), null;
|
|
515
515
|
}
|
|
516
|
-
let _ = new O(e, l, r,
|
|
516
|
+
let _ = new O(e, l, r, o, i);
|
|
517
517
|
_.jn_attrs = U(_, l.attrs_table);
|
|
518
518
|
for (const [e, t] of Object.entries(_.jn_attrs)) e in _.priv && (_.priv[e] = t);
|
|
519
519
|
let a = p && Je(p, "trace_creation");
|
|
520
|
-
return a && P(n("💙💙⏩ creating: %s^%s", l.gclass_name, e)), _.gobj_flag & w.gobj_flag_service && te(_), _.gobj_flag & w.gobj_flag_yuno && (p = _), _.gobj_flag & w.gobj_flag_default_service && (m = _), _.gobj_flag & w.gobj_flag_yuno || ne(
|
|
520
|
+
return a && P(n("💙💙⏩ creating: %s^%s", l.gclass_name, e)), _.gobj_flag & w.gobj_flag_service && te(_), _.gobj_flag & w.gobj_flag_yuno && (p = _), _.gobj_flag & w.gobj_flag_default_service && (m = _), _.gobj_flag & w.gobj_flag_yuno || ne(o, _), _.obflag |= D.obflag_created, _.gclass.instances++, ie(_, r), _.gobj_flag & w.gobj_flag_service && s && s(_, null), _.gclass.gmt.mt_create2 ? _.gclass.gmt.mt_create2(_, r) : _.gclass.gmt.mt_create && _.gclass.gmt.mt_create(_), o && o.gclass.gmt.mt_child_added && (a && P(n("👦👦🔵 child_added(%s): %s", De(o), we(_))), o.gclass.gmt.mt_child_added(o, _)), a && P(n("💙💙⏪ created: %s", De(_))), _;
|
|
521
521
|
}
|
|
522
522
|
function se(e, t, n, r) {
|
|
523
523
|
return le(e, t, n, r, w.gobj_flag_pure_child);
|
|
524
524
|
}
|
|
525
525
|
function _e(e) {
|
|
526
526
|
if (Ae(e)) return void kt("gobj NULL or DESTROYED");
|
|
527
|
-
e.__refs__ > 0 && kt(`${we(e)}: gobj DESTROYING with references: ${e.__refs__}`), e.obflag |= D.obflag_destroying;
|
|
527
|
+
e.__refs__ > 0 && kt(`${we(e)}: gobj DESTROYING with references: ${e.__refs__}`), e.playing && (kt(`Destroying a PLAYING gobj: ${De(e)}`), pe(e)), e.running && (kt(`Destroying a RUNNING gobj: ${De(e)}`), fe(e)), e.obflag |= D.obflag_destroying;
|
|
528
528
|
let t = p && Je(p, "trace_creation");
|
|
529
529
|
t && P(n("💔💔⏩ destroying: %s", De(e)));
|
|
530
530
|
let r = Re(e);
|
|
531
531
|
r && r.gclass.gmt.mt_child_removed && (t && P(n("👦👦🔴 child_removed(%s): %s", De(r), we(e))), r.gclass.gmt.mt_child_removed(r, e)), e.gobj_flag & w.gobj_flag_service && function(e) {
|
|
532
532
|
let t = Oe(e);
|
|
533
533
|
t = t.toLowerCase(), b[t] ? delete b[t] : kt(`"service NOT found in register": ${t}`);
|
|
534
|
-
}(e),
|
|
534
|
+
}(e), dt(e, e.dl_subscriptions, !0), dt(e, e.dl_subscribings, !0), r && (re(r, e), ke(e) && (Ie(r) !== e || Ae(r) || Le(r, null))), function(e) {
|
|
535
535
|
let t = e.dl_children.slice();
|
|
536
536
|
for (let e = 0; e < t.length; e++) {
|
|
537
537
|
let n = t[e];
|
|
@@ -645,59 +645,59 @@ var gobjJs = function(e) {
|
|
|
645
645
|
function Pe(e, t, n) {
|
|
646
646
|
return rn(e) ? t ? W(e.gclass, t, n) : e.gclass.attrs_table : (kt("gobj NULL of bad type"), null);
|
|
647
647
|
}
|
|
648
|
-
function Ue(e, t, n, r,
|
|
649
|
-
return Ae(e) ? (kt("gobj NULL, destroying, or bad type"), 0) : Fe(e.dl_children, t, n, r,
|
|
648
|
+
function Ue(e, t, n, r, o) {
|
|
649
|
+
return Ae(e) ? (kt("gobj NULL, destroying, or bad type"), 0) : Fe(e.dl_children, t, n, r, o);
|
|
650
650
|
}
|
|
651
|
-
function Ce(e, t, n, r,
|
|
652
|
-
return Ae(e) ? (kt("gobj NULL, destroying, or bad type"), 0) : Ve(e.dl_children, t, n, r,
|
|
651
|
+
function Ce(e, t, n, r, o) {
|
|
652
|
+
return Ae(e) ? (kt("gobj NULL, destroying, or bad type"), 0) : Ve(e.dl_children, t, n, r, o);
|
|
653
653
|
}
|
|
654
|
-
function Fe(e, t, n, r,
|
|
655
|
-
let
|
|
654
|
+
function Fe(e, t, n, r, o) {
|
|
655
|
+
let i, l = [...e];
|
|
656
656
|
if (t & k.WALK_LAST2FIRST) for (let e = l.length; e > 0; e--) {
|
|
657
|
-
|
|
658
|
-
let t = n(
|
|
657
|
+
i = l[e - 1];
|
|
658
|
+
let t = n(i, r, o);
|
|
659
659
|
if (t < 0) return t;
|
|
660
660
|
}
|
|
661
661
|
else for (let e = 0; e < l.length; e++) {
|
|
662
|
-
|
|
663
|
-
let t = n(
|
|
662
|
+
i = l[e];
|
|
663
|
+
let t = n(i, r, o);
|
|
664
664
|
if (t < 0) return t;
|
|
665
665
|
}
|
|
666
666
|
return 0;
|
|
667
667
|
}
|
|
668
|
-
function Ge(e, t, n, r,
|
|
669
|
-
let
|
|
668
|
+
function Ge(e, t, n, r, o) {
|
|
669
|
+
let i, l = Fe(e, t, n, r, o);
|
|
670
670
|
if (l < 0) return l;
|
|
671
671
|
if (t & k.WALK_LAST2FIRST) {
|
|
672
|
-
for (let s = e.length; s > 0; s--) if (
|
|
673
|
-
} else for (let s = 0; s < e.length; s++) if (
|
|
672
|
+
for (let s = e.length; s > 0; s--) if (i = e[s - 1], l = Ge([...i.dl_children], t, n, r, o), l < 0) return l;
|
|
673
|
+
} else for (let s = 0; s < e.length; s++) if (i = e[s], l = Ge([...i.dl_children], t, n, r, o), l < 0) return l;
|
|
674
674
|
return l;
|
|
675
675
|
}
|
|
676
|
-
function Ve(e, t, n, r,
|
|
677
|
-
if (t & k.WALK_BYLEVEL) return Ge(e, t, n, r,
|
|
678
|
-
let
|
|
676
|
+
function Ve(e, t, n, r, o) {
|
|
677
|
+
if (t & k.WALK_BYLEVEL) return Ge(e, t, n, r, o);
|
|
678
|
+
let i, l;
|
|
679
679
|
if (t & k.WALK_BOTTOM2TOP) for (let s = e.length; s > 0; s--) {
|
|
680
|
-
if (l = e[s - 1],
|
|
681
|
-
if (
|
|
680
|
+
if (l = e[s - 1], i = Ve([...l.dl_children], t, n, r, o), i < 0) return i;
|
|
681
|
+
if (i = n(l, r, o), i < 0) return i;
|
|
682
682
|
}
|
|
683
683
|
else for (let s = 0; s < e.length; s++) {
|
|
684
|
-
if (l = e[s],
|
|
685
|
-
if (0 ===
|
|
684
|
+
if (l = e[s], i = n(l, r, o), i < 0) return i;
|
|
685
|
+
if (0 === i && (i = Ve([...l.dl_children], t, n, r, o), i < 0)) return i;
|
|
686
686
|
}
|
|
687
687
|
return 0;
|
|
688
688
|
}
|
|
689
689
|
function We(e, t) {
|
|
690
690
|
if (!rn(e)) return kt("gobj NULL of bad type"), !1;
|
|
691
|
-
let n = t.__gclass_name__, r = t.__gobj_name__,
|
|
691
|
+
let n = t.__gclass_name__, r = t.__gobj_name__, o = t.__prefix_gobj_name__;
|
|
692
692
|
t.__disabled__;
|
|
693
|
-
let
|
|
693
|
+
let i = t.__state__;
|
|
694
694
|
if (n && n !== Ne(e)) return !1;
|
|
695
695
|
if (r && r !== Oe(e)) return !1;
|
|
696
|
-
if (
|
|
697
|
-
let t =
|
|
698
|
-
if (
|
|
696
|
+
if (o) {
|
|
697
|
+
let t = o.length;
|
|
698
|
+
if (o !== Oe(e).substring(0, t)) return !1;
|
|
699
699
|
}
|
|
700
|
-
if (
|
|
700
|
+
if (i && i !== nt(e)) return !1;
|
|
701
701
|
let l = e.jn_attrs;
|
|
702
702
|
for (const n of Object.keys(t)) if ("__gclass_name__" !== n && "__gobj_name__" !== n && "__prefix_gobj_name__" !== n && "__disabled__" !== n && "__state__" !== n && xe(e, n) && l[n] !== t[n]) return !1;
|
|
703
703
|
return !0;
|
|
@@ -715,9 +715,9 @@ var gobjJs = function(e) {
|
|
|
715
715
|
if (!t) return null;
|
|
716
716
|
let n = t.split("`");
|
|
717
717
|
if (!function(e, t) {
|
|
718
|
-
let n = t.split("^"), r = null,
|
|
718
|
+
let n = t.split("^"), r = null, o = null;
|
|
719
719
|
if (2 === n.length) {
|
|
720
|
-
if (
|
|
720
|
+
if (o = n[0], r = n[1], o !== Ne(e)) return !1;
|
|
721
721
|
} else {
|
|
722
722
|
if (1 !== n.length) return !1;
|
|
723
723
|
r = n[0];
|
|
@@ -725,10 +725,10 @@ var gobjJs = function(e) {
|
|
|
725
725
|
return r === Oe(e);
|
|
726
726
|
}(e, n[0])) return null;
|
|
727
727
|
if (1 === n.length) return e;
|
|
728
|
-
let r = n[1].split("^"),
|
|
729
|
-
1 === r.length ?
|
|
730
|
-
let
|
|
731
|
-
return
|
|
728
|
+
let r = n[1].split("^"), o = {};
|
|
729
|
+
1 === r.length ? o.__gobj_name__ = r : (o.__gclass_name__ = r[0], o.__gobj_name__ = r[1]);
|
|
730
|
+
let i = Me(e, o);
|
|
731
|
+
return i ? (n.splice(0, 1), n = n.join("`"), Ke(i, n)) : null;
|
|
732
732
|
}
|
|
733
733
|
function xe(e, t) {
|
|
734
734
|
return !on(t) && !!W(e.gclass, t, !1);
|
|
@@ -742,12 +742,12 @@ var gobjJs = function(e) {
|
|
|
742
742
|
return kt(`${we(e)}: GClass Attribute NOT FOUND, attr ${t}`), null;
|
|
743
743
|
}
|
|
744
744
|
function Be(e, t, n) {
|
|
745
|
-
let r = {},
|
|
746
|
-
for (let n = 0; n <
|
|
747
|
-
const
|
|
748
|
-
if (
|
|
745
|
+
let r = {}, o = e.gclass.attrs_table;
|
|
746
|
+
for (let n = 0; n < o.length; n++) {
|
|
747
|
+
const i = o[n];
|
|
748
|
+
if (i.name && (-1 === t || i.flag & t)) {
|
|
749
749
|
let t;
|
|
750
|
-
!e.gclass.gmt.mt_reading || e.obflag & D.obflag_destroyed ? t = Vt(e.jn_attrs,
|
|
750
|
+
!e.gclass.gmt.mt_reading || e.obflag & D.obflag_destroyed ? t = Vt(e.jn_attrs, i.name) : (t = e.gclass.gmt.mt_reading(e, i.name), void 0 === t && (t = Vt(e.jn_attrs, i.name))), Mt(r, i.name, t);
|
|
751
751
|
}
|
|
752
752
|
}
|
|
753
753
|
return r;
|
|
@@ -777,12 +777,12 @@ var gobjJs = function(e) {
|
|
|
777
777
|
return n ? !e.gclass.gmt.mt_reading || e.obflag & D.obflag_destroyed ? Vt(n, t) : e.gclass.gmt.mt_reading(e, t) : (kt(`${we(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
|
|
778
778
|
}
|
|
779
779
|
function He(e, t, n, r) {
|
|
780
|
-
let
|
|
780
|
+
let o = G(e), i = 0;
|
|
781
781
|
for (const [r, l] of Object.entries(t)) {
|
|
782
782
|
let t = Pe(e, r, !0);
|
|
783
|
-
t && (-1 === n || t.flag & n) && (
|
|
783
|
+
t && (-1 === n || t.flag & n) && (i += F(e, o, t, l));
|
|
784
784
|
}
|
|
785
|
-
return
|
|
785
|
+
return i;
|
|
786
786
|
}
|
|
787
787
|
function Xe(e, t, n) {
|
|
788
788
|
let r = V(e, t, !1);
|
|
@@ -818,35 +818,35 @@ var gobjJs = function(e) {
|
|
|
818
818
|
}
|
|
819
819
|
return null;
|
|
820
820
|
}
|
|
821
|
-
function
|
|
821
|
+
function ot(e, t, n) {
|
|
822
822
|
let r = rt(e, t, !1);
|
|
823
823
|
return !!r && !(n && !(r.event_flag & n));
|
|
824
824
|
}
|
|
825
|
-
function
|
|
825
|
+
function it(e, t, n) {
|
|
826
826
|
let r = rt(e, t, !1);
|
|
827
827
|
return !!r && !(n && !(r.event_flag & n)) && !!(r.event_flag & R.EVF_OUTPUT_EVENT);
|
|
828
828
|
}
|
|
829
|
-
function lt(e, t, r,
|
|
829
|
+
function lt(e, t, r, o) {
|
|
830
830
|
if (!(e && e instanceof O)) return kt("gobj dst NULL"), -1;
|
|
831
831
|
if (e.obflag & (D.obflag_destroyed | D.obflag_destroying)) return kt("gobj dst DESTROYED"), -1;
|
|
832
|
-
let
|
|
833
|
-
if (!
|
|
832
|
+
let i = e.current_state;
|
|
833
|
+
if (!i) return kt(`${we(e)}: current_state NULL`), -1;
|
|
834
834
|
let l = 0;
|
|
835
|
-
l = p && qe(p, "tracing"), "C_TIMER" === Ne(
|
|
836
|
-
let s = Y(
|
|
837
|
-
if (!s) return e.gclass.gmt.mt_inject_event ? (h--, l && (P(n("🔃 mach(%s%s), st: %s, ev: %s, from(%s%s)", e.running ? "" : "!!", we(e),
|
|
835
|
+
l = p && qe(p, "tracing"), "C_TIMER" === Ne(o) && (l = p && qe(p, "trace_timer")), h++;
|
|
836
|
+
let s = Y(i, t);
|
|
837
|
+
if (!s) return e.gclass.gmt.mt_inject_event ? (h--, l && (P(n("🔃 mach(%s%s), st: %s, ev: %s, from(%s%s)", e.running ? "" : "!!", we(e), i.state_name, t || "", o && !o.running ? "!!" : "", we(o))), r && l > 1 && Jt(r) && Lt(r)), e.gclass.gmt.mt_inject_event(e, t, r, o)) : (l && P(n("📛 mach(%s%s^%s), st: %s, ev: %s, 📛📛ERROR Event NOT DEFINED in state📛📛, from(%s%s^%s)", e.running ? "" : "!!", Ne(e), Oe(e), i.state_name, t || "", o && !o.running ? "!!" : "", Ne(o), Oe(o))), kt(`📛📛 Event NOT DEFINED in state 📛📛: ${we(e)}, ${i.state_name}, ${t}`), h--, -1);
|
|
838
838
|
if (l) {
|
|
839
|
-
if (1 === L) P(n("🔄 %s %s%s %s from %s%s", t || "", e.running ? "" : "!!", we(e),
|
|
839
|
+
if (1 === L) P(n("🔄 %s %s%s %s from %s%s", t || "", e.running ? "" : "!!", we(e), i.state_name, o && !o.running ? "!!" : "", we(o)));
|
|
840
840
|
else {
|
|
841
841
|
let r = "";
|
|
842
|
-
s.action && (r = Jn(s.action)), P(n("🔄 mach(%s%s^%s), st: %s, ev: %s%s%s, ac: %s, from(%s%s^%s)", e.running ? "" : "!!", Ne(e), Oe(e),
|
|
842
|
+
s.action && (r = Jn(s.action)), P(n("🔄 mach(%s%s^%s), st: %s, ev: %s%s%s, ac: %s, from(%s%s^%s)", e.running ? "" : "!!", Ne(e), Oe(e), i.state_name, "", t || "", "", r, o && !o.running ? "!!" : "", Ne(o), Oe(o)));
|
|
843
843
|
}
|
|
844
844
|
r && l > 1 && Jt(r) && Lt(r);
|
|
845
845
|
}
|
|
846
846
|
s.next_state && tt(e, s.next_state);
|
|
847
847
|
let _ = -1;
|
|
848
848
|
try {
|
|
849
|
-
s.action && (_ = s.action(e, t, r,
|
|
849
|
+
s.action && (_ = s.action(e, t, r, o));
|
|
850
850
|
} finally {}
|
|
851
851
|
return !l || 1 === L || e.obflag & D.obflag_destroyed || P(n("<- mach(%s%s^%s), st: %s, ev: %s, ret: %d", e.running ? "" : "!!", Ne(e), Oe(e), e.current_state.state_name, t || "", Zt(_) ? _ : 0)), h--, _;
|
|
852
852
|
}
|
|
@@ -866,11 +866,11 @@ var gobjJs = function(e) {
|
|
|
866
866
|
S(y.DTP_STRING, "__service__", 0, "", "subscription service"),
|
|
867
867
|
v()
|
|
868
868
|
];
|
|
869
|
-
function at(e, t, n, r,
|
|
870
|
-
let
|
|
871
|
-
if (t && t !== mn(null, e, "publisher", null) && (a = !1),
|
|
869
|
+
function at(e, t, n, r, o) {
|
|
870
|
+
let i = hn(t, r, "__config__", null), l = hn(t, r, "__global__", null), s = hn(t, r, "__local__", null), _ = yn(t, r, "__filter__", null), a = !0;
|
|
871
|
+
if (t && t !== mn(null, e, "publisher", null) && (a = !1), o && o !== mn(null, e, "subscriber", null) && (a = !1), n && n !== pn(null, e, "event", "") && (a = !1), zt(i) > 0) {
|
|
872
872
|
let t = hn(null, e, "__config__", null);
|
|
873
|
-
zt(t) > 0 && Ut(t,
|
|
873
|
+
zt(t) > 0 && Ut(t, i) || (a = !1);
|
|
874
874
|
}
|
|
875
875
|
if (zt(l) > 0) {
|
|
876
876
|
let t = hn(null, e, "__global__", null);
|
|
@@ -886,29 +886,29 @@ var gobjJs = function(e) {
|
|
|
886
886
|
}
|
|
887
887
|
return a;
|
|
888
888
|
}
|
|
889
|
-
function ut(e, t, n, r,
|
|
890
|
-
let
|
|
889
|
+
function ut(e, t, n, r, o) {
|
|
890
|
+
let i = [];
|
|
891
891
|
for (let l = 0; l < e.length; l++) {
|
|
892
892
|
let s = e[l];
|
|
893
|
-
at(s, t, n, r,
|
|
893
|
+
at(s, t, n, r, o) && xt(i, s);
|
|
894
894
|
}
|
|
895
|
-
return
|
|
895
|
+
return i;
|
|
896
896
|
}
|
|
897
|
-
function ct(e, t, n, r,
|
|
898
|
-
for (let
|
|
897
|
+
function ct(e, t, n, r, o) {
|
|
898
|
+
for (let i = 0; i < e.length; i++) if (at(e[i], t, n, r, o)) return i;
|
|
899
899
|
return -1;
|
|
900
900
|
}
|
|
901
|
-
function ft(e, t, r,
|
|
902
|
-
let
|
|
901
|
+
function ft(e, t, r, o) {
|
|
902
|
+
let i = mn(e, t, "publisher", null, ht.KW_REQUIRED), l = mn(e, t, "subscriber", null, ht.KW_REQUIRED), s = pn(e, t, "event", "", ht.KW_REQUIRED);
|
|
903
903
|
if (!!(bn(e, t, "subs_flag", null, ht.KW_REQUIRED) & st.__hard_subscription__) && !r) return -1;
|
|
904
|
-
p && Je(p, "trace_subscriptions") && (P(n("💜💜👎 unsubscribing event '%s': publisher %s, subscriber'%s'", s || "", we(
|
|
905
|
-
let _ = ct(
|
|
906
|
-
return _ >= 0 ? Bt(
|
|
904
|
+
p && Je(p, "trace_subscriptions") && (P(n("💜💜👎 unsubscribing event '%s': publisher %s, subscriber'%s'", s || "", we(i), we(l))), Lt(t)), i.obflag & D.obflag_destroyed || o || i.gclass.gmt.mt_subscription_deleted && i.gclass.gmt.mt_subscription_deleted(i, t);
|
|
905
|
+
let _ = ct(i.dl_subscriptions, i, s, t, l);
|
|
906
|
+
return _ >= 0 ? Bt(i.dl_subscriptions, _) : (kt(`${we(e)}: subscription in publisher not found`), Lt(t)), _ = ct(l.dl_subscribings, i, s, t, l), _ >= 0 ? Bt(l.dl_subscribings, _) : (kt(`${we(e)}: subscription in subscriber not found`), Lt(t)), 0;
|
|
907
907
|
}
|
|
908
|
-
function gt(e, t, r,
|
|
908
|
+
function gt(e, t, r, o) {
|
|
909
909
|
if (null == r && (r = {}), !e) return kt(`publisher NULL: ev ${t}`), 0;
|
|
910
|
-
if (!
|
|
911
|
-
const
|
|
910
|
+
if (!o) return kt(`subscriber NULL: ev ${t}`), 0;
|
|
911
|
+
const i = new Set([
|
|
912
912
|
"__config__",
|
|
913
913
|
"__global__",
|
|
914
914
|
"__local__",
|
|
@@ -916,33 +916,33 @@ var gobjJs = function(e) {
|
|
|
916
916
|
"__service__"
|
|
917
917
|
]);
|
|
918
918
|
if (Object.keys(r).forEach((n) => {
|
|
919
|
-
|
|
919
|
+
i.has(n) || kt(`${we(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
|
|
920
920
|
}), on(t)) t = "";
|
|
921
|
-
else if (!(
|
|
922
|
-
let l = ut(e.dl_subscriptions, e, t, r,
|
|
921
|
+
else if (!(it(e, t, R.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & N.gcflag_no_check_output_events)) return kt(`event NOT in output event list: ${we(e)}, ${t}`), 0;
|
|
922
|
+
let l = ut(e.dl_subscriptions, e, t, r, o);
|
|
923
923
|
qt(l) > 0 && (kt(`${we(e)}: ${qt(l)} subscription(s) REPEATED, will be deleted and override`), Lt(l, "subscription REPEATED"), dt(e, l, !1));
|
|
924
924
|
let s = function(e, t, n, r) {
|
|
925
|
-
let
|
|
926
|
-
Kt(
|
|
927
|
-
let
|
|
925
|
+
let o = U(e, _t);
|
|
926
|
+
Kt(o, "event", t), Kt(o, "subscriber", r), Kt(o, "publisher", e);
|
|
927
|
+
let i = 0;
|
|
928
928
|
if (n) {
|
|
929
929
|
let t = hn(e, n, "__config__", null), r = hn(e, n, "__global__", null), l = hn(e, n, "__local__", null), s = yn(e, n, "__filter__", null), _ = pn(e, n, "__service__", "");
|
|
930
|
-
if (zt(r) > 0 && Kt(
|
|
930
|
+
if (zt(r) > 0 && Kt(o, "__global__", Pt(r)), zt(t) > 0) {
|
|
931
931
|
let n = Pt(t);
|
|
932
|
-
if (Kt(
|
|
932
|
+
if (Kt(o, "__config__", n), cn(n, "__hard_subscription__")) {
|
|
933
933
|
let t = dn(e, n, "__hard_subscription__", !1);
|
|
934
|
-
Wt(n, "__hard_subscription__"), t && (
|
|
934
|
+
Wt(n, "__hard_subscription__"), t && (i |= st.__hard_subscription__);
|
|
935
935
|
}
|
|
936
936
|
if (cn(n, "__own_event__")) {
|
|
937
937
|
let t = dn(e, n, "__own_event__", !1);
|
|
938
|
-
Wt(n, "__own_event__"), t && (
|
|
938
|
+
Wt(n, "__own_event__"), t && (i |= st.__own_event__);
|
|
939
939
|
}
|
|
940
940
|
}
|
|
941
|
-
zt(l) > 0 && Kt(
|
|
941
|
+
zt(l) > 0 && Kt(o, "__local__", Pt(l)), zt(s) > 0 && Kt(o, "__filter__", Pt(s)), on(_) || Kt(o, "__service__", _);
|
|
942
942
|
}
|
|
943
|
-
return Kt(
|
|
944
|
-
}(e, t, r,
|
|
945
|
-
return s ? (xt(e.dl_subscriptions, s), xt(
|
|
943
|
+
return Kt(o, "subs_flag", i), o;
|
|
944
|
+
}(e, t, r, o);
|
|
945
|
+
return s ? (xt(e.dl_subscriptions, s), xt(o.dl_subscribings, s), p && Je(p, "trace_subscriptions") && (P(n("💜💜👍 subscribing event '%s', publisher '%s', subscriber %s", t || "", we(e), we(o))), r && Lt(r)), e.gclass.gmt.mt_subscription_added && e.gclass.gmt.mt_subscription_added(e, s) < 0 && (ft(e, s, !0, !0), s = 0), s) : (kt(`${we(e)}: _create_subscription() FAILED`), 0);
|
|
946
946
|
}
|
|
947
947
|
function dt(e, t, n) {
|
|
948
948
|
let r = [...t];
|
|
@@ -958,16 +958,16 @@ var gobjJs = function(e) {
|
|
|
958
958
|
function mt(e, t, r) {
|
|
959
959
|
if (Qt(r) || (r = {}), !e || e.obflag & (D.obflag_destroyed | D.obflag_destroying)) return kt("gobj NULL or DESTROYED"), -1;
|
|
960
960
|
if (on(t)) return kt(`${we(e)}: event EMPTY`), -1;
|
|
961
|
-
let
|
|
962
|
-
if (!(
|
|
963
|
-
let
|
|
964
|
-
if (
|
|
961
|
+
let o = rt(e, t, !0);
|
|
962
|
+
if (!(o && o.event_flag & (R.EVF_SYSTEM_EVENT | R.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & N.gcflag_no_check_output_events)) return kt(`event NOT in output event list: ${we(e)}, ev ${t}`), -1;
|
|
963
|
+
let i = p && Je(p, "trace_subscriptions");
|
|
964
|
+
if (i && (P(n("🔝🔝 mach(%s%s^%s), st: %s, ev: %s%s%s", e.running ? "" : "!!", Ne(e), Oe(e), e.current_state.state_name, "", t || "", "")), Lt(r)), e.gclass.gmt.mt_publish_event) {
|
|
965
965
|
let n = e.gclass.gmt.mt_publish_event(e, t, r);
|
|
966
966
|
if (n <= 0) return n;
|
|
967
967
|
}
|
|
968
968
|
let l = [...e.dl_subscriptions], s = 0, _ = 0;
|
|
969
|
-
for (let
|
|
970
|
-
let a = l[
|
|
969
|
+
for (let o = 0; o < l.length; o++) {
|
|
970
|
+
let a = l[o];
|
|
971
971
|
if (e.gclass.gmt.mt_publication_pre_filter) {
|
|
972
972
|
let n = e.gclass.gmt.mt_publication_pre_filter(e, a, t, r);
|
|
973
973
|
if (n < 0) break;
|
|
@@ -978,12 +978,12 @@ var gobjJs = function(e) {
|
|
|
978
978
|
let c = bn(e, a, "subs_flag", 0, ht.KW_REQUIRED), f = pn(e, a, "event", "", ht.KW_REQUIRED);
|
|
979
979
|
if (on(f) || 0 === _n(f, t)) {
|
|
980
980
|
hn(e, a, "__config__", null, 0);
|
|
981
|
-
let
|
|
982
|
-
if (e.gclass.gmt.mt_publication_filter ? d = e.gclass.gmt.mt_publication_filter(e, t, g, u) : zt(f) > 0 && (d = Sn(g, f),
|
|
981
|
+
let o = hn(e, a, "__global__", null, 0), l = hn(e, a, "__local__", null, 0), f = yn(e, a, "__filter__", null, 0), g = r, d = 1;
|
|
982
|
+
if (e.gclass.gmt.mt_publication_filter ? d = e.gclass.gmt.mt_publication_filter(e, t, g, u) : zt(f) > 0 && (d = Sn(g, f), i && (P(n("💜💜🔄%s publishing with filter, event '%s', subscriber'%s', publisher %s", d ? "👍" : "👎", t || "", we(u), we(e))), Lt(f))), d < 0) break;
|
|
983
983
|
if (0 === d) continue;
|
|
984
984
|
let b = rt(u, t, !0);
|
|
985
|
-
if (b && b.event_flag & R.EVF_SYSTEM_EVENT && !
|
|
986
|
-
l && un(g, l),
|
|
985
|
+
if (b && b.event_flag & R.EVF_SYSTEM_EVENT && !ot(u, b.event_name, 0)) continue;
|
|
986
|
+
l && un(g, l), o && Ct(g, o), i && (P(n("🔝🔄 mach(%s%s), st: %s, ev: %s, from(%s%s)", u.running ? "" : "!!", we(u), nt(u), t || "", e && !e.running ? "!!" : "", we(e))), Lt(g));
|
|
987
987
|
let p = lt(u, t, g, e);
|
|
988
988
|
if (p < 0 && c & st.__own_event__) {
|
|
989
989
|
s = -1;
|
|
@@ -992,7 +992,7 @@ var gobjJs = function(e) {
|
|
|
992
992
|
if (_ += p, s++, Ae(e)) break;
|
|
993
993
|
}
|
|
994
994
|
}
|
|
995
|
-
return s ||
|
|
995
|
+
return s || o && o.event_flag & R.EVF_NO_WARN_SUBS || $t(`${we(e)}: Publish event WITHOUT subscribers, ev ${t}`), _;
|
|
996
996
|
}
|
|
997
997
|
var ht = Object.freeze({
|
|
998
998
|
KW_REQUIRED: 1,
|
|
@@ -1045,8 +1045,8 @@ var gobjJs = function(e) {
|
|
|
1045
1045
|
default: return e;
|
|
1046
1046
|
}
|
|
1047
1047
|
});
|
|
1048
|
-
const
|
|
1049
|
-
|
|
1048
|
+
const o = t.slice(r).map((e) => "object" == typeof e ? JSON.stringify(e) : String(e));
|
|
1049
|
+
o.length > 0 && (n += " " + o.join(" "));
|
|
1050
1050
|
} else n = t.map((e) => "object" == typeof e ? JSON.stringify(e) : String(e)).join(" ");
|
|
1051
1051
|
return n;
|
|
1052
1052
|
}
|
|
@@ -1085,9 +1085,9 @@ var gobjJs = function(e) {
|
|
|
1085
1085
|
if ("object" == typeof e) {
|
|
1086
1086
|
let n = Object.keys(e).sort(), r = Object.keys(t).sort();
|
|
1087
1087
|
if (n.length !== r.length) return !1;
|
|
1088
|
-
for (let
|
|
1089
|
-
if (n[
|
|
1090
|
-
if (!Ut(e[n[
|
|
1088
|
+
for (let o = 0; o < n.length; o++) {
|
|
1089
|
+
if (n[o] !== r[o]) return !1;
|
|
1090
|
+
if (!Ut(e[n[o]], t[r[o]])) return !1;
|
|
1091
1091
|
}
|
|
1092
1092
|
return !0;
|
|
1093
1093
|
}
|
|
@@ -1198,177 +1198,177 @@ var gobjJs = function(e) {
|
|
|
1198
1198
|
function fn(e, t, n, r) {
|
|
1199
1199
|
if (e && !rn(e) && kt("GObj bad instanceof"), !Qt(t) && !Ht(t)) return kt(`${we(e)}: kw must be list or dict`), 0;
|
|
1200
1200
|
if (!Xt(n)) return kt(`${we(e)}: path must be a string: ${String(n)}`), 0;
|
|
1201
|
-
let
|
|
1202
|
-
if (
|
|
1203
|
-
let
|
|
1204
|
-
for (let l = 0; l <
|
|
1201
|
+
let o = n.split("`");
|
|
1202
|
+
if (o.length <= 1) return t[n];
|
|
1203
|
+
let i = o.length;
|
|
1204
|
+
for (let l = 0; l < i; l++) if (void 0 === (t = t[o[l]])) return void (r && kt(`${we(e)}: path not found: ${String(n)}`));
|
|
1205
1205
|
return t;
|
|
1206
1206
|
}
|
|
1207
1207
|
function gn(e, t, n) {
|
|
1208
1208
|
e && !rn(e) && kt("GObj bad instanceof");
|
|
1209
|
-
let [r,
|
|
1209
|
+
let [r, o] = function(e, t) {
|
|
1210
1210
|
let n = e.lastIndexOf(t);
|
|
1211
1211
|
return -1 === n ? [e, ""] : [e.substring(0, n), e.substring(n + 1)];
|
|
1212
1212
|
}(n, "`");
|
|
1213
|
-
return on(
|
|
1213
|
+
return on(o) ? Wt(t, n) : Wt(fn(e, t, r, !0), o), 0;
|
|
1214
1214
|
}
|
|
1215
|
-
function dn(e, t, n, r,
|
|
1215
|
+
function dn(e, t, n, r, o) {
|
|
1216
1216
|
e && !rn(e) && kt("GObj bad instanceof");
|
|
1217
|
-
let
|
|
1218
|
-
const l =
|
|
1219
|
-
if (void 0 ===
|
|
1217
|
+
let i = fn(e, t, n, !1);
|
|
1218
|
+
const l = o && o & ht.KW_REQUIRED, s = o && o & ht.KW_CREATE, _ = o && o & ht.KW_EXTRACT;
|
|
1219
|
+
if (void 0 === i) {
|
|
1220
1220
|
if (s) {
|
|
1221
|
-
let
|
|
1222
|
-
return En(e, t, n,
|
|
1221
|
+
let o = Boolean(r);
|
|
1222
|
+
return En(e, t, n, o), o;
|
|
1223
1223
|
}
|
|
1224
1224
|
return l && (kt(`path not found: '${n}'`), Lt(t)), Boolean(r);
|
|
1225
1225
|
}
|
|
1226
|
-
return _ && gn(e, t, n), Boolean(
|
|
1226
|
+
return _ && gn(e, t, n), Boolean(i);
|
|
1227
1227
|
}
|
|
1228
|
-
function bn(e, t, n, r,
|
|
1228
|
+
function bn(e, t, n, r, o) {
|
|
1229
1229
|
e && !rn(e) && kt("GObj bad instanceof");
|
|
1230
|
-
let
|
|
1231
|
-
const l =
|
|
1232
|
-
if (void 0 ===
|
|
1230
|
+
let i = fn(e, t, n, !1);
|
|
1231
|
+
const l = o && o & ht.KW_REQUIRED, s = o && o & ht.KW_CREATE, _ = o && o & ht.KW_EXTRACT;
|
|
1232
|
+
if (void 0 === i) {
|
|
1233
1233
|
if (s) {
|
|
1234
|
-
let
|
|
1235
|
-
return En(e, t, n,
|
|
1234
|
+
let o = parseInt(r);
|
|
1235
|
+
return En(e, t, n, o), o;
|
|
1236
1236
|
}
|
|
1237
1237
|
return l && (kt(`path not found: '${n}'`), Lt(t)), parseInt(r);
|
|
1238
1238
|
}
|
|
1239
|
-
return _ && gn(e, t, n), Zt(
|
|
1239
|
+
return _ && gn(e, t, n), Zt(i) ? parseInt(i) : (l && (kt(`path value MUST BE a number: ${n}`), It(t)), parseInt(r));
|
|
1240
1240
|
}
|
|
1241
|
-
function pn(e, t, n, r,
|
|
1241
|
+
function pn(e, t, n, r, o) {
|
|
1242
1242
|
e && !rn(e) && kt("GObj bad instanceof");
|
|
1243
|
-
let
|
|
1244
|
-
const l =
|
|
1245
|
-
if (void 0 ===
|
|
1243
|
+
let i = fn(e, t, n, !1);
|
|
1244
|
+
const l = o && o & ht.KW_REQUIRED, s = o && o & ht.KW_CREATE, _ = o && o & ht.KW_EXTRACT;
|
|
1245
|
+
if (void 0 === i) {
|
|
1246
1246
|
if (s) {
|
|
1247
|
-
let
|
|
1248
|
-
return En(e, t, n,
|
|
1247
|
+
let o = String(r);
|
|
1248
|
+
return En(e, t, n, o), o;
|
|
1249
1249
|
}
|
|
1250
1250
|
return l && (kt(`path not found: '${n}'`), Lt(t)), String(r);
|
|
1251
1251
|
}
|
|
1252
|
-
return _ && gn(e, t, n), Xt(
|
|
1252
|
+
return _ && gn(e, t, n), Xt(i) ? String(i) : (l && (kt(`${we(e)}: path value MUST BE a string: ${n}`), It(t)), String(r));
|
|
1253
1253
|
}
|
|
1254
|
-
function mn(e, t, n, r,
|
|
1254
|
+
function mn(e, t, n, r, o) {
|
|
1255
1255
|
e && !rn(e) && kt("GObj bad instanceof");
|
|
1256
|
-
let
|
|
1257
|
-
const l =
|
|
1258
|
-
if (void 0 ===
|
|
1256
|
+
let i = fn(e, t, n, !1);
|
|
1257
|
+
const l = o && o & ht.KW_REQUIRED, s = o && o & ht.KW_CREATE, _ = o && o & ht.KW_EXTRACT;
|
|
1258
|
+
if (void 0 === i) {
|
|
1259
1259
|
if (s) {
|
|
1260
|
-
let
|
|
1261
|
-
return En(e, t, n,
|
|
1260
|
+
let o = r;
|
|
1261
|
+
return En(e, t, n, o), o;
|
|
1262
1262
|
}
|
|
1263
1263
|
return l && (kt(`path not found: '${n}'`), Lt(t)), r;
|
|
1264
1264
|
}
|
|
1265
|
-
return _ && gn(e, t, n),
|
|
1265
|
+
return _ && gn(e, t, n), i;
|
|
1266
1266
|
}
|
|
1267
|
-
function hn(e, t, n, r,
|
|
1267
|
+
function hn(e, t, n, r, o) {
|
|
1268
1268
|
e && !rn(e) && kt("GObj bad instanceof");
|
|
1269
|
-
let
|
|
1270
|
-
const l =
|
|
1271
|
-
if (void 0 ===
|
|
1269
|
+
let i = fn(e, t, n, !1);
|
|
1270
|
+
const l = o && o & ht.KW_REQUIRED, s = o && o & ht.KW_CREATE, _ = o && o & ht.KW_EXTRACT;
|
|
1271
|
+
if (void 0 === i) {
|
|
1272
1272
|
if (s) {
|
|
1273
|
-
let
|
|
1274
|
-
return En(e, t, n,
|
|
1273
|
+
let o = Object(r);
|
|
1274
|
+
return En(e, t, n, o), o;
|
|
1275
1275
|
}
|
|
1276
1276
|
return l && (kt(`path not found: '${n}'`), Lt(t)), Object(r);
|
|
1277
1277
|
}
|
|
1278
|
-
return _ && gn(e, t, n), Qt(
|
|
1278
|
+
return _ && gn(e, t, n), Qt(i) ? Object(i) : (l && (kt(`path value MUST BE a dict: ${n}`), It(t)), Object(r));
|
|
1279
1279
|
}
|
|
1280
|
-
function yn(e, t, n, r,
|
|
1280
|
+
function yn(e, t, n, r, o) {
|
|
1281
1281
|
e && !rn(e) && kt("GObj bad instanceof");
|
|
1282
|
-
let
|
|
1283
|
-
const l =
|
|
1284
|
-
if (void 0 ===
|
|
1282
|
+
let i = fn(e, t, n, !1);
|
|
1283
|
+
const l = o && o & ht.KW_REQUIRED, s = o && o & ht.KW_CREATE, _ = o && o & ht.KW_EXTRACT;
|
|
1284
|
+
if (void 0 === i) {
|
|
1285
1285
|
if (s) {
|
|
1286
|
-
let
|
|
1287
|
-
return En(e, t, n,
|
|
1286
|
+
let o = r;
|
|
1287
|
+
return En(e, t, n, o), o;
|
|
1288
1288
|
}
|
|
1289
1289
|
return l && (kt(`path not found: '${n}'`), Lt(t)), r;
|
|
1290
1290
|
}
|
|
1291
|
-
return _ && gn(e, t, n),
|
|
1291
|
+
return _ && gn(e, t, n), i;
|
|
1292
1292
|
}
|
|
1293
1293
|
function En(e, t, n, r) {
|
|
1294
1294
|
if (e && !rn(e) && kt("GObj bad instanceof"), !Qt(t)) return kt("kw is not an object"), -1;
|
|
1295
|
-
let
|
|
1296
|
-
if (
|
|
1297
|
-
let
|
|
1298
|
-
for (let e = 0; e <
|
|
1299
|
-
let n =
|
|
1300
|
-
e ===
|
|
1295
|
+
let o = n.split("`");
|
|
1296
|
+
if (o.length <= 1) return t[n] = r, 0;
|
|
1297
|
+
let i = o.length;
|
|
1298
|
+
for (let e = 0; e < i; e++) {
|
|
1299
|
+
let n = o[e];
|
|
1300
|
+
e === i - 1 ? t[n] = r : (void 0 === t[n] && (t[n] = {}), t = t[n]);
|
|
1301
1301
|
}
|
|
1302
1302
|
return 0;
|
|
1303
1303
|
}
|
|
1304
|
-
function Tn(e, t, n, r,
|
|
1304
|
+
function Tn(e, t, n, r, o) {
|
|
1305
1305
|
if (e && !rn(e) && kt("GObj bad instanceof"), !Qt(t)) return kt("kw is not an object"), -1;
|
|
1306
|
-
let
|
|
1307
|
-
return Qt(
|
|
1306
|
+
let i = hn(e, t, n, {}, !0);
|
|
1307
|
+
return Qt(i) ? (i[r] = o, 0) : (kt("subdict is not an object"), -1);
|
|
1308
1308
|
}
|
|
1309
1309
|
function vn(e, t, r) {
|
|
1310
|
-
let
|
|
1310
|
+
let o = "", i = !1;
|
|
1311
1311
|
if (Ht(t)) {
|
|
1312
|
-
|
|
1312
|
+
i = !1;
|
|
1313
1313
|
for (let l = 0; l < t.length; l++) {
|
|
1314
1314
|
let s = t[l];
|
|
1315
|
-
if (
|
|
1315
|
+
if (o = on(r) ? n("%s", r) : n("%s`%d", r, l), i = vn(e, s, o), i) break;
|
|
1316
1316
|
}
|
|
1317
1317
|
} else if (Qt(t)) {
|
|
1318
|
-
|
|
1318
|
+
i = !0;
|
|
1319
1319
|
let l = Object.keys(t);
|
|
1320
1320
|
for (let s = 0; s < l.length; s++) {
|
|
1321
1321
|
let _ = l[s], a = t[_];
|
|
1322
|
-
if (
|
|
1323
|
-
if (
|
|
1322
|
+
if (o = on(r) ? n("%s", _) : n("%s`%s", r, _), Ht(a) || Qt(a)) {
|
|
1323
|
+
if (i = vn(e, a, o), !i) break;
|
|
1324
1324
|
continue;
|
|
1325
1325
|
}
|
|
1326
|
-
let u = yn(0, e,
|
|
1327
|
-
if (u || (u = Vt(e,
|
|
1328
|
-
|
|
1326
|
+
let u = yn(0, e, o, 0, 0);
|
|
1327
|
+
if (u || (u = Vt(e, o)), !u) {
|
|
1328
|
+
i = !1;
|
|
1329
1329
|
break;
|
|
1330
1330
|
}
|
|
1331
1331
|
if (0 !== an(u, a)) {
|
|
1332
|
-
|
|
1332
|
+
i = !1;
|
|
1333
1333
|
break;
|
|
1334
1334
|
}
|
|
1335
1335
|
}
|
|
1336
1336
|
}
|
|
1337
|
-
return
|
|
1337
|
+
return i;
|
|
1338
1338
|
}
|
|
1339
1339
|
function Sn(e, t) {
|
|
1340
1340
|
return 0 === zt(t) || vn(e, t, "");
|
|
1341
1341
|
}
|
|
1342
1342
|
function jn(e, t, n, r) {
|
|
1343
1343
|
e && !rn(e) && kt("GObj bad instanceof");
|
|
1344
|
-
let
|
|
1344
|
+
let o = {};
|
|
1345
1345
|
if (Xt(n) && !on(n)) {
|
|
1346
|
-
let
|
|
1347
|
-
t.hasOwnProperty(
|
|
1348
|
-
} else if (Qt(n) && Jt(n) > 0) for (let
|
|
1346
|
+
let i = n;
|
|
1347
|
+
t.hasOwnProperty(i) ? o[i] = t[i] : r && kt(`${we(e)}: key not found: ${i}`);
|
|
1348
|
+
} else if (Qt(n) && Jt(n) > 0) for (let i of Object.keys(n)) t.hasOwnProperty(i) ? o[i] = t[i] : r && kt(`${we(e)}: key not found: ${i}`);
|
|
1349
1349
|
else {
|
|
1350
1350
|
if (!(Ht(n) && qt(n) > 0)) return t;
|
|
1351
|
-
for (let
|
|
1352
|
-
let l = n[
|
|
1353
|
-
t.hasOwnProperty(l) ?
|
|
1351
|
+
for (let i = 0; i < n.length; i++) {
|
|
1352
|
+
let l = n[i];
|
|
1353
|
+
t.hasOwnProperty(l) ? o[l] = t[l] : r && kt(`${we(e)}: key not found: ${l}`);
|
|
1354
1354
|
}
|
|
1355
1355
|
}
|
|
1356
|
-
return
|
|
1356
|
+
return o;
|
|
1357
1357
|
}
|
|
1358
1358
|
function On(e, t, n, r) {
|
|
1359
|
-
let
|
|
1360
|
-
if (Ct(
|
|
1361
|
-
let
|
|
1362
|
-
yn(e, t,
|
|
1363
|
-
} else if (Qt(n) && Jt(n) > 0) for (let
|
|
1359
|
+
let o = {};
|
|
1360
|
+
if (Ct(o, t), Xt(n) && !on(n)) {
|
|
1361
|
+
let i = n;
|
|
1362
|
+
yn(e, t, i, 0, 0) ? Wt(o, i) : r && kt(`${we(e)}: key not found: ${i}`);
|
|
1363
|
+
} else if (Qt(n) && Jt(n) > 0) for (let i of Object.keys(n)) t.hasOwnProperty(i) ? Wt(o, i) : r && kt(`${we(e)}: key not found: ${i}`);
|
|
1364
1364
|
else {
|
|
1365
1365
|
if (!(Ht(n) && qt(n) > 0)) return {};
|
|
1366
|
-
for (let
|
|
1367
|
-
let l = n[
|
|
1368
|
-
t.hasOwnProperty(l) ? Wt(
|
|
1366
|
+
for (let i = 0; i < n.length; i++) {
|
|
1367
|
+
let l = n[i];
|
|
1368
|
+
t.hasOwnProperty(l) ? Wt(o, l) : r && kt(`${we(e)}: key not found: ${l}`);
|
|
1369
1369
|
}
|
|
1370
1370
|
}
|
|
1371
|
-
return
|
|
1371
|
+
return o;
|
|
1372
1372
|
}
|
|
1373
1373
|
function Nn(e, t, n = !1) {
|
|
1374
1374
|
if ("undefined" != typeof window && window.localStorage) try {
|
|
@@ -1406,10 +1406,10 @@ var gobjJs = function(e) {
|
|
|
1406
1406
|
} else if (Xt(e) && e === t) return !0;
|
|
1407
1407
|
return !1;
|
|
1408
1408
|
}
|
|
1409
|
-
function kn(e, t, n, r,
|
|
1409
|
+
function kn(e, t, n, r, o) {
|
|
1410
1410
|
if (e && !rn(e) && kt("GObj bad instanceof"), !t) return null;
|
|
1411
|
-
|
|
1412
|
-
let
|
|
1411
|
+
o || (o = Sn);
|
|
1412
|
+
let i = [];
|
|
1413
1413
|
if (Ht(t)) for (let l = 0; l < t.length; l++) {
|
|
1414
1414
|
let s, _ = t[l];
|
|
1415
1415
|
if (Qt(_)) s = pn(e, _, "id", "", 0);
|
|
@@ -1417,16 +1417,16 @@ var gobjJs = function(e) {
|
|
|
1417
1417
|
if (!Xt(_)) continue;
|
|
1418
1418
|
s = _;
|
|
1419
1419
|
}
|
|
1420
|
-
Rn(n, s) &&
|
|
1420
|
+
Rn(n, s) && o(_, r) && i.push(_);
|
|
1421
1421
|
}
|
|
1422
1422
|
else {
|
|
1423
1423
|
if (!Qt(t)) return kt("kw_collect() BAD kw parameter"), null;
|
|
1424
1424
|
for (let e of Object.keys(t)) {
|
|
1425
1425
|
let l = t[e];
|
|
1426
|
-
Rn(n, e) &&
|
|
1426
|
+
Rn(n, e) && o(l, r) && i.push(l);
|
|
1427
1427
|
}
|
|
1428
1428
|
}
|
|
1429
|
-
return
|
|
1429
|
+
return i;
|
|
1430
1430
|
}
|
|
1431
1431
|
function $n(e, t) {
|
|
1432
1432
|
if (!e) return -1;
|
|
@@ -1460,10 +1460,10 @@ var gobjJs = function(e) {
|
|
|
1460
1460
|
function Pn(e, t, n, r) {
|
|
1461
1461
|
if (!rn(e)) return kt("gobj is not a GObj"), null;
|
|
1462
1462
|
if (!t) return;
|
|
1463
|
-
let
|
|
1464
|
-
|
|
1463
|
+
let o = In(t, n);
|
|
1464
|
+
o || (o = [], Ln(t, n, o));
|
|
1465
1465
|
try {
|
|
1466
|
-
Ht(
|
|
1466
|
+
Ht(o) && o.unshift(r);
|
|
1467
1467
|
} catch (e) {
|
|
1468
1468
|
kt(e);
|
|
1469
1469
|
}
|
|
@@ -1471,8 +1471,8 @@ var gobjJs = function(e) {
|
|
|
1471
1471
|
function Un(e, t, n, r) {
|
|
1472
1472
|
if (!rn(e)) return kt("gobj is not a GObj"), null;
|
|
1473
1473
|
if (!Qt(t)) return kt("kw is not a dict"), null;
|
|
1474
|
-
let
|
|
1475
|
-
return
|
|
1474
|
+
let o = In(t, n);
|
|
1475
|
+
return o ? 0 === o.length ? (r && kt(`stack empty: ${n}`), null) : o[0] : (r && kt(`stack NOT FOUND: ${n}`), null);
|
|
1476
1476
|
}
|
|
1477
1477
|
function Cn(e, t, n) {
|
|
1478
1478
|
return on(n) ? gn(e, t, "__md_iev__`__msg_type__") : Tn(e, t, "__md_iev__", "__msg_type__", n), 0;
|
|
@@ -1484,25 +1484,25 @@ var gobjJs = function(e) {
|
|
|
1484
1484
|
void 0 !== n && Xt(n) || (n = "");
|
|
1485
1485
|
for (let r of Object.keys(e)) {
|
|
1486
1486
|
if (!e.hasOwnProperty(r)) continue;
|
|
1487
|
-
let
|
|
1488
|
-
n +=
|
|
1487
|
+
let o = (n.length ? "`" : "") + r;
|
|
1488
|
+
n += o, t.apply(this, [
|
|
1489
1489
|
e,
|
|
1490
1490
|
r,
|
|
1491
1491
|
e[r],
|
|
1492
1492
|
n
|
|
1493
|
-
]), Qt(e[r]) && Gn(e[r], t, n), n = n.slice(0, -
|
|
1493
|
+
]), Qt(e[r]) && Gn(e[r], t, n), n = n.slice(0, -o.length);
|
|
1494
1494
|
}
|
|
1495
1495
|
}
|
|
1496
1496
|
function Vn(e, t, n, r) {
|
|
1497
1497
|
if (!e) return null;
|
|
1498
|
-
let
|
|
1499
|
-
for (
|
|
1500
|
-
let
|
|
1501
|
-
if (
|
|
1502
|
-
let e =
|
|
1503
|
-
if (e && e === n) return
|
|
1504
|
-
if (r && cn(
|
|
1505
|
-
let e = Vn(
|
|
1498
|
+
let o, i = e.length;
|
|
1499
|
+
for (o = 0; o < i; o++) {
|
|
1500
|
+
let i = e[o];
|
|
1501
|
+
if (i) {
|
|
1502
|
+
let e = i.id;
|
|
1503
|
+
if (e && e === n) return i;
|
|
1504
|
+
if (r && cn(i, t)) {
|
|
1505
|
+
let e = Vn(i[t], t, n, r);
|
|
1506
1506
|
if (e) return e;
|
|
1507
1507
|
}
|
|
1508
1508
|
}
|
|
@@ -1570,10 +1570,10 @@ var gobjJs = function(e) {
|
|
|
1570
1570
|
function zn(e, t) {
|
|
1571
1571
|
if (Xt(t)) {
|
|
1572
1572
|
if (-1 === t.indexOf("^")) {
|
|
1573
|
-
let n, r,
|
|
1574
|
-
if (1 !== Jt(
|
|
1575
|
-
for (const e of Object.keys(
|
|
1576
|
-
n = e, r =
|
|
1573
|
+
let n, r, o = e.fkey;
|
|
1574
|
+
if (1 !== Jt(o)) return kt("bad fkey 1"), kt(e), kt(t), null;
|
|
1575
|
+
for (const e of Object.keys(o)) {
|
|
1576
|
+
n = e, r = o[e];
|
|
1577
1577
|
break;
|
|
1578
1578
|
}
|
|
1579
1579
|
return {
|
|
@@ -1698,12 +1698,12 @@ var gobjJs = function(e) {
|
|
|
1698
1698
|
timer_id: -1
|
|
1699
1699
|
}, nr = null;
|
|
1700
1700
|
function rr(e, t, n, r) {
|
|
1701
|
-
let
|
|
1702
|
-
return $e(e) ? lt(Re(e),
|
|
1701
|
+
let o = e.priv, i = o.periodic ? "EV_TIMEOUT_PERIODIC" : "EV_TIMEOUT";
|
|
1702
|
+
return $e(e) ? lt(Re(e), i, {}, e) : mt(e, i, {}), o.periodic && (o.timer_id = setTimeout(function() {
|
|
1703
1703
|
lt(e, "EV_TIMEOUT", {}, e);
|
|
1704
|
-
},
|
|
1704
|
+
}, o.msec)), 0;
|
|
1705
1705
|
}
|
|
1706
|
-
var
|
|
1706
|
+
var or = {
|
|
1707
1707
|
mt_create: function(e) {
|
|
1708
1708
|
let t = e.priv;
|
|
1709
1709
|
const n = Qe(e, "subscriber");
|
|
@@ -1728,7 +1728,7 @@ var gobjJs = function(e) {
|
|
|
1728
1728
|
},
|
|
1729
1729
|
mt_destroy: function(e) {}
|
|
1730
1730
|
};
|
|
1731
|
-
function
|
|
1731
|
+
function ir(e, t) {
|
|
1732
1732
|
return e instanceof O ? "C_TIMER" !== Ne(e) ? (kt("not C_TIMER GObj"), -1) : (Xe(e, "periodic", !1), void Ze(e, "msec", t)) : (kt("not GObj TYPE"), -1);
|
|
1733
1733
|
}
|
|
1734
1734
|
function lr(e, t) {
|
|
@@ -1841,11 +1841,11 @@ var gobjJs = function(e) {
|
|
|
1841
1841
|
}, n) : (kt(`${we(e)}: Failed to initialize WebSocket.`), null);
|
|
1842
1842
|
}
|
|
1843
1843
|
function hr(e, t = 1e3, n = "") {
|
|
1844
|
-
let r = e.priv,
|
|
1845
|
-
if (r.websocket = null,
|
|
1844
|
+
let r = e.priv, o = r.websocket;
|
|
1845
|
+
if (r.websocket = null, o && o.readyState !== WebSocket.CLOSED && o.readyState !== WebSocket.CLOSING) {
|
|
1846
1846
|
At(`Closing WebSocket (Code: ${t}, Reason: "${n}")`);
|
|
1847
1847
|
try {
|
|
1848
|
-
|
|
1848
|
+
o.close(t, n);
|
|
1849
1849
|
} catch (e) {
|
|
1850
1850
|
kt("Error closing WebSocket:", e.message);
|
|
1851
1851
|
}
|
|
@@ -1868,8 +1868,8 @@ var gobjJs = function(e) {
|
|
|
1868
1868
|
return function(e, t) {
|
|
1869
1869
|
let n = e.priv, r = JSON.stringify(t);
|
|
1870
1870
|
if (Je(Te(), "trace_inter_event")) {
|
|
1871
|
-
let n = ze(e, "url"),
|
|
1872
|
-
|
|
1871
|
+
let n = ze(e, "url"), o = Oe(Te()) + " ==> " + n, i = Ye(Te(), "trace_ievent_callback");
|
|
1872
|
+
i ? i(o, t, 1, r.length) : yr(0, o, t);
|
|
1873
1873
|
}
|
|
1874
1874
|
if (!n.websocket || n.websocket.readyState !== WebSocket.OPEN) return $t(`${we(e)}: send_iev(): websocket not open, message lost`), -1;
|
|
1875
1875
|
try {
|
|
@@ -1894,15 +1894,15 @@ var gobjJs = function(e) {
|
|
|
1894
1894
|
};
|
|
1895
1895
|
}
|
|
1896
1896
|
function Sr(e) {
|
|
1897
|
-
let t = e.priv, n = Ee(Te()), r = ze(Te(), "yuno_version"),
|
|
1897
|
+
let t = e.priv, n = Ee(Te()), r = ze(Te(), "yuno_version"), o = ze(Te(), "yuno_release"), i = ze(Te(), "yuno_tag"), s = Ye(e, "required_services");
|
|
1898
1898
|
s && s.length || (s = Ye(Te(), "required_services"));
|
|
1899
1899
|
let _ = {
|
|
1900
1900
|
yuno_role: Se(),
|
|
1901
1901
|
yuno_id: je(),
|
|
1902
1902
|
yuno_name: ve(),
|
|
1903
|
-
yuno_tag:
|
|
1903
|
+
yuno_tag: i,
|
|
1904
1904
|
yuno_version: r,
|
|
1905
|
-
yuno_release:
|
|
1905
|
+
yuno_release: o,
|
|
1906
1906
|
yuneta_version: l,
|
|
1907
1907
|
playing: n,
|
|
1908
1908
|
pid: 0,
|
|
@@ -1916,50 +1916,50 @@ var gobjJs = function(e) {
|
|
|
1916
1916
|
language: "undefined" != typeof window ? window.navigator.language : "",
|
|
1917
1917
|
required_services: s
|
|
1918
1918
|
};
|
|
1919
|
-
return Pn(e, _, gr, vr(e, Oe(Re(e)), null)), Cn(e, _, "__identity__"),
|
|
1919
|
+
return Pn(e, _, gr, vr(e, Oe(Re(e)), null)), Cn(e, _, "__identity__"), ir(t.gobj_timer, qe(e, "timeout_idack")), Tr(e, "EV_IDENTITY_CARD", _);
|
|
1920
1920
|
}
|
|
1921
1921
|
function jr(e, t) {
|
|
1922
1922
|
if (on(t.event)) return -1;
|
|
1923
|
-
let n = {}, r = t.__global__,
|
|
1924
|
-
return
|
|
1923
|
+
let n = {}, r = t.__global__, o = t.__config__, i = t.__filter__, l = t.__service__, s = t.subscriber;
|
|
1924
|
+
return o && (n.__config__ = o), r && (n.__global__ = r), i && (n.__filter__ = i), Pn(e, n, gr, vr(e, Oe(s), l)), Cn(e, n, "__subscribing__"), Tr(e, t.event, n);
|
|
1925
1925
|
}
|
|
1926
1926
|
function Or(e, t, n, r) {
|
|
1927
|
-
let
|
|
1928
|
-
return me(e) && (
|
|
1927
|
+
let o = e.priv;
|
|
1928
|
+
return me(e) && (o.websocket = mr(e)), 0;
|
|
1929
1929
|
}
|
|
1930
1930
|
function Nr(e, t, n, r) {
|
|
1931
1931
|
return At("Websocket opened: " + e.priv.url), Sr(e), 0;
|
|
1932
1932
|
}
|
|
1933
1933
|
function wr(e, t, n, r) {
|
|
1934
|
-
let
|
|
1935
|
-
return Dt(), $t(`${we(e)}: WebSocket closed ${l} (Code: ${
|
|
1934
|
+
let o = e.priv, i = n.e, l = n.url;
|
|
1935
|
+
return Dt(), $t(`${we(e)}: WebSocket closed ${l} (Code: ${i.code}, Reason: "${i.reason}", Clean: ${i.wasClean})`), o.websocket && (o.websocket.onopen = null, o.websocket.onmessage = null, o.websocket.onerror = null, o.websocket.onclose = null, o.websocket = null), o.inform_on_close ? (o.inform_on_close = !1, mt(e, "EV_ON_CLOSE", {
|
|
1936
1936
|
url: l,
|
|
1937
|
-
remote_yuno_name:
|
|
1938
|
-
remote_yuno_role:
|
|
1939
|
-
remote_yuno_service:
|
|
1940
|
-
})) : ($t(`${we(e)}: EV_ON_OPEN_ERROR cannot open ${l} (Code: ${
|
|
1937
|
+
remote_yuno_name: o.remote_yuno_name,
|
|
1938
|
+
remote_yuno_role: o.remote_yuno_role,
|
|
1939
|
+
remote_yuno_service: o.remote_yuno_service
|
|
1940
|
+
})) : ($t(`${we(e)}: EV_ON_OPEN_ERROR cannot open ${l} (Code: ${i.code}, Reason: "${i.reason}", Clean: ${i.wasClean})`), mt(e, "EV_ON_OPEN_ERROR", {
|
|
1941
1941
|
url: l,
|
|
1942
|
-
remote_yuno_name:
|
|
1943
|
-
remote_yuno_role:
|
|
1944
|
-
remote_yuno_service:
|
|
1945
|
-
code:
|
|
1946
|
-
reason:
|
|
1947
|
-
was_clean:
|
|
1948
|
-
})), me(e) &&
|
|
1942
|
+
remote_yuno_name: o.remote_yuno_name,
|
|
1943
|
+
remote_yuno_role: o.remote_yuno_role,
|
|
1944
|
+
remote_yuno_service: o.remote_yuno_service,
|
|
1945
|
+
code: i.code,
|
|
1946
|
+
reason: i.reason,
|
|
1947
|
+
was_clean: i.wasClean
|
|
1948
|
+
})), me(e) && ir(o.gobj_timer, function(e) {
|
|
1949
1949
|
let t = e.priv, n = qe(e, "timeout_retry"), r = qe(e, "timeout_retry_max");
|
|
1950
1950
|
r < n && (r = n);
|
|
1951
1951
|
t.retry_ms = t.retry_ms ? Math.min(2 * t.retry_ms, r) : n;
|
|
1952
|
-
let
|
|
1953
|
-
return Math.max(1, Math.round(
|
|
1952
|
+
let o = .2 * t.retry_ms, i = t.retry_ms - o + 2 * Math.random() * o;
|
|
1953
|
+
return Math.max(1, Math.round(i));
|
|
1954
1954
|
}(e)), 0;
|
|
1955
1955
|
}
|
|
1956
1956
|
function Dr(e, t, n, r) {
|
|
1957
1957
|
return Sr(e), 0;
|
|
1958
1958
|
}
|
|
1959
1959
|
function Rr(e, t, n, r) {
|
|
1960
|
-
let
|
|
1961
|
-
sr(
|
|
1962
|
-
let
|
|
1960
|
+
let o = e.priv;
|
|
1961
|
+
sr(o.gobj_timer);
|
|
1962
|
+
let i = Un(e, n, gr, !0), l = pn(e, i, "src_yuno", ""), s = pn(e, i, "src_role", ""), _ = pn(e, i, "src_service", "");
|
|
1963
1963
|
et(e, "remote_yuno_name", l), et(e, "remote_yuno_role", s), et(e, "remote_yuno_service", _);
|
|
1964
1964
|
let a = bn(e, n, "result", -1, 0), u = pn(e, n, "comment", "", 0), c = pn(e, n, "username", "", 0), f = yn(e, n, "services_roles", {});
|
|
1965
1965
|
if (a < 0) {
|
|
@@ -1975,8 +1975,8 @@ var gobjJs = function(e) {
|
|
|
1975
1975
|
};
|
|
1976
1976
|
$e(e) ? lt(Re(e), "EV_ON_ID_NAK", t, e) : mt(e, "EV_ON_ID_NAK", t);
|
|
1977
1977
|
} else {
|
|
1978
|
-
if (tt(e, "ST_SESSION"),
|
|
1979
|
-
|
|
1978
|
+
if (tt(e, "ST_SESSION"), o.inside_on_open = !0, o.retry_ms = 0, !o.inform_on_close) {
|
|
1979
|
+
o.inform_on_close = !0;
|
|
1980
1980
|
let t = {
|
|
1981
1981
|
username: c,
|
|
1982
1982
|
remote_yuno_name: l,
|
|
@@ -1986,7 +1986,7 @@ var gobjJs = function(e) {
|
|
|
1986
1986
|
};
|
|
1987
1987
|
$e(e) ? lt(Re(e), "EV_ON_OPEN", t, e) : mt(e, "EV_ON_OPEN", t);
|
|
1988
1988
|
}
|
|
1989
|
-
|
|
1989
|
+
o.inside_on_open = !1, function(e) {
|
|
1990
1990
|
let t = bt(e, null, null, null);
|
|
1991
1991
|
for (let n = 0; n < t.length; n++) jr(e, t[n]);
|
|
1992
1992
|
}(e);
|
|
@@ -1994,7 +1994,7 @@ var gobjJs = function(e) {
|
|
|
1994
1994
|
return 0;
|
|
1995
1995
|
}
|
|
1996
1996
|
function kr(e, t, n, r) {
|
|
1997
|
-
let
|
|
1997
|
+
let o = e.priv.url, i = function(e, t) {
|
|
1998
1998
|
let n;
|
|
1999
1999
|
try {
|
|
2000
2000
|
n = JSON.parse(t);
|
|
@@ -2005,33 +2005,33 @@ var gobjJs = function(e) {
|
|
|
2005
2005
|
let r = n.event;
|
|
2006
2006
|
if (!r) return kt("parsing inter_event: no event"), null;
|
|
2007
2007
|
if ("string" != typeof r) return kt("parsing inter_event: event not a string"), null;
|
|
2008
|
-
let
|
|
2009
|
-
return
|
|
2008
|
+
let o = n.kw;
|
|
2009
|
+
return o ? o instanceof Object ? {
|
|
2010
2010
|
event: r,
|
|
2011
|
-
kw:
|
|
2011
|
+
kw: o || {}
|
|
2012
2012
|
} : (kt("parsing inter_event: kw not a json object"), null) : (kt("parsing inter_kw: no kw"), null);
|
|
2013
2013
|
}(0, n.data);
|
|
2014
2014
|
if (Je(Te(), "trace_inter_event")) {
|
|
2015
|
-
let e = Oe(Te()) + " <== " +
|
|
2016
|
-
r ? r(e,
|
|
2015
|
+
let e = Oe(Te()) + " <== " + o, t = n.data.length, r = Ye(Te(), "trace_ievent_callback");
|
|
2016
|
+
r ? r(e, i, 2, t) : yr(0, e, i);
|
|
2017
2017
|
}
|
|
2018
|
-
let l =
|
|
2018
|
+
let l = i.event, s = i.kw;
|
|
2019
2019
|
if ("ST_SESSION" !== nt(e)) {
|
|
2020
|
-
if (
|
|
2020
|
+
if (ot(e, l, R.EVF_PUBLIC_EVENT)) {
|
|
2021
2021
|
if (0 === lt(e, l, s, e)) return 0;
|
|
2022
2022
|
} else kt(`${we(e)}: event UNKNOWN in not-session state ${l}`);
|
|
2023
2023
|
return hr(e), -1;
|
|
2024
2024
|
}
|
|
2025
|
-
|
|
2025
|
+
i = null;
|
|
2026
2026
|
let _ = Fn(e, s), a = Un(e, s, gr), u = pn(e, a, "dst_role", "");
|
|
2027
|
-
if (u !== Se()) return kt(`"It's not my role, dst_role: ${u}, my_role: ${Se()}`), 0;
|
|
2027
|
+
if (u.toLowerCase() !== Se().toLowerCase()) return kt(`"It's not my role, dst_role: ${u}, my_role: ${Se()}`), 0;
|
|
2028
2028
|
let c = pn(e, a, "dst_service", "");
|
|
2029
2029
|
if ("__subscribing__" === _) return -1;
|
|
2030
2030
|
if ("__unsubscribing__" === _) return -1;
|
|
2031
|
-
if (
|
|
2031
|
+
if (ot(e, l, R.EVF_PUBLIC_EVENT)) return lt(e, l, s, e), 0;
|
|
2032
2032
|
let f = ee(c, !0);
|
|
2033
2033
|
if (f) {
|
|
2034
|
-
if (!
|
|
2034
|
+
if (!ot(f, l, R.EVF_PUBLIC_EVENT)) return kt(`${we(e)}: Service found but no event or not public, service '${we(f)}', ev '${l}'`), -1;
|
|
2035
2035
|
lt(f, l, s, e);
|
|
2036
2036
|
} else $e(e) ? lt(Re(e), l, s, e) : mt(e, l, s);
|
|
2037
2037
|
return 0;
|
|
@@ -2076,27 +2076,27 @@ var gobjJs = function(e) {
|
|
|
2076
2076
|
mt_stats: function(e, t, n, r) {
|
|
2077
2077
|
if ("ST_SESSION" !== nt(e)) return kt("Not in session"), null;
|
|
2078
2078
|
n || (n = {});
|
|
2079
|
-
let
|
|
2080
|
-
return
|
|
2079
|
+
let o = vr(e, Oe(r), pn(e, n, "service", null, 0)), i = yn(e, n, "__md_stats__", null, ht.KW_EXTRACT);
|
|
2080
|
+
return i || (i = {}), Pn(e, n, "stats_stack", {
|
|
2081
2081
|
stats: t,
|
|
2082
|
-
kw:
|
|
2083
|
-
}), Pn(e, n, gr,
|
|
2082
|
+
kw: i
|
|
2083
|
+
}), Pn(e, n, gr, o), n.__stats__ = t, Cn(e, n, "__stats__"), Tr(e, "EV_MT_STATS", n, r), null;
|
|
2084
2084
|
},
|
|
2085
2085
|
mt_command_parser: function(e, t, n, r) {
|
|
2086
2086
|
if ("ST_SESSION" !== nt(e)) return kt("Not in session"), null;
|
|
2087
2087
|
n || (n = {});
|
|
2088
|
-
let
|
|
2089
|
-
return
|
|
2088
|
+
let o = vr(e, Oe(r), pn(e, n, "service", "", 0)), i = yn(e, n, "__md_command__", null, ht.KW_EXTRACT);
|
|
2089
|
+
return i || (i = {}), Pn(e, n, "command_stack", {
|
|
2090
2090
|
command: t,
|
|
2091
|
-
kw:
|
|
2092
|
-
}), Pn(e, n, gr,
|
|
2091
|
+
kw: i
|
|
2092
|
+
}), Pn(e, n, gr, o), n.__command__ = t, Cn(e, n, "__command__"), Tr(e, "EV_MT_COMMAND", n, r), null;
|
|
2093
2093
|
},
|
|
2094
2094
|
mt_inject_event: function(e, t, n, r) {
|
|
2095
2095
|
if ("ST_SESSION" !== nt(e)) return window.console.error("Not in session"), -1;
|
|
2096
2096
|
if (n || (n = {}), Un(e, n, gr));
|
|
2097
2097
|
else {
|
|
2098
|
-
let
|
|
2099
|
-
Wt(n, "__service__"), Pn(e, n, "__message__", t), Pn(e, n, gr,
|
|
2098
|
+
let o = vr(e, Oe(r), pn(e, n, "__service__", 0, 0));
|
|
2099
|
+
Wt(n, "__service__"), Pn(e, n, "__message__", t), Pn(e, n, gr, o);
|
|
2100
2100
|
}
|
|
2101
2101
|
return Cn(e, n, "__message__"), Tr(e, t, n, r);
|
|
2102
2102
|
},
|
|
@@ -2109,37 +2109,37 @@ var gobjJs = function(e) {
|
|
|
2109
2109
|
if ("ST_SESSION" !== nt(e) || !n.websocket) return 0;
|
|
2110
2110
|
if (n.inside_on_open) return 0;
|
|
2111
2111
|
if (on(t.event)) return 0;
|
|
2112
|
-
let r = {},
|
|
2113
|
-
return
|
|
2112
|
+
let r = {}, o = t.__global__, i = t.__config__, l = t.__filter__, s = t.__service__, _ = t.subscriber;
|
|
2113
|
+
return i && (r.__config__ = i), o && (r.__global__ = o), l && (r.__filter__ = l), Pn(e, r, gr, vr(e, Oe(_), s)), Cn(e, r, "__unsubscribing__"), Tr(e, t.event, r, e);
|
|
2114
2114
|
}
|
|
2115
2115
|
};
|
|
2116
|
-
return e.GObj = O, e.SDATA = S, e.SDATAAUTHZ = (e, t, n, r,
|
|
2116
|
+
return e.GObj = O, e.SDATA = S, e.SDATAAUTHZ = (e, t, n, r, o, i) => new T(e, t, n, null, i, r, null, 0, null, o, null), e.SDATACM = (e, t, n, r, o, i) => new T(e, t, 0, null, i, n, null, 0, o, r, null), e.SDATACM2 = (e, t, n, r, o, i, l) => new T(e, t, n, null, l, r, null, 0, i, o, null), e.SDATADF = (e, t, n, r, o, i) => new T(e, t, n, null, i, null, r, o), e.SDATAPM = (e, t, n, r, o) => new T(e, t, n, r, o), e.SDATAPM0 = (e, t, n, r, o) => new T(e, t, n, null, o, null, null, 0, null, null, r), e.SDATA_END = v, e.SDataDesc = T, e.YUNETA_VERSION = l, Object.defineProperty(e, "__yuno__", {
|
|
2117
2117
|
enumerable: !0,
|
|
2118
2118
|
get: function() {
|
|
2119
2119
|
return p;
|
|
2120
2120
|
}
|
|
2121
|
-
}), e.build_command_response =
|
|
2121
|
+
}), e.build_command_response = o, e.build_path = function(...e) {
|
|
2122
2122
|
let t = "", n = 0;
|
|
2123
2123
|
for (let r of e) null != r && "" !== r && (r = String(r), r = 0 === n ? r.replace(/\/+$/, "") : r.replace(/^\/+/, "").replace(/\/+$/, ""), "" !== r && (n > 0 && (t += "/"), t += r, n++));
|
|
2124
2124
|
return t;
|
|
2125
|
-
}, e.build_stats_response =
|
|
2125
|
+
}, e.build_stats_response = i, e.clean_name = function(e) {
|
|
2126
2126
|
return e.replace(/[?# ^:]/g, "_");
|
|
2127
2127
|
}, e.clear_timeout = sr, e.cmp_two_simple_json = an, e.command_parser = function(e, t, n, r) {}, e.createElement2 = function e(t, n) {
|
|
2128
|
-
let [r,
|
|
2128
|
+
let [r, o, i, l] = t;
|
|
2129
2129
|
if (!r) return void kt("Tag must be a valid HTML element.");
|
|
2130
2130
|
let s = document.createElement(r), _ = "";
|
|
2131
|
-
if (
|
|
2131
|
+
if (o && "object" == typeof o) for (let e of Object.keys(o)) if ("style" === e && "object" == typeof o[e]) {
|
|
2132
2132
|
let t = "";
|
|
2133
|
-
for (const n of Object.keys(
|
|
2133
|
+
for (const n of Object.keys(o[e])) t += `${n}: ${o[e][n]};`;
|
|
2134
2134
|
s.style.cssText = t;
|
|
2135
|
-
} else "style" === e ? s.style.cssText =
|
|
2136
|
-
if (Xt(
|
|
2137
|
-
else if (n && _) s.textContent = n(_) ||
|
|
2138
|
-
else s.textContent =
|
|
2139
|
-
else if (Ht(
|
|
2140
|
-
if (
|
|
2141
|
-
else for (let t of
|
|
2142
|
-
} else
|
|
2135
|
+
} else "style" === e ? s.style.cssText = o[e] : "i18n" === e || "data-i18n" === e || "data_i18next" === e || "data-i18next" === e ? null !== o[e] && void 0 !== o[e] && (_ = o[e], s.setAttribute("data-i18n", _)) : s.setAttribute(e, o[e]);
|
|
2136
|
+
if (Xt(i)) if (i = i.trim(), i.length > 0 && "<" === i[0]) s.appendChild(Kn(i));
|
|
2137
|
+
else if (n && _) s.textContent = n(_) || i;
|
|
2138
|
+
else s.textContent = i;
|
|
2139
|
+
else if (Ht(i)) {
|
|
2140
|
+
if (i.length > 0) if (Xt(i[0])) s.appendChild(e(i, n));
|
|
2141
|
+
else for (let t of i) Array.isArray(t) && t.length > 0 ? s.appendChild(e(t, n)) : t instanceof HTMLElement && s.appendChild(t);
|
|
2142
|
+
} else i instanceof HTMLElement || i instanceof Text || i instanceof SVGElement ? s.appendChild(i) : null != i && (kt("content ignored"), Lt(i));
|
|
2143
2143
|
if (l && "object" == typeof l) for (const e of Object.keys(l)) s.addEventListener(e, l[e]);
|
|
2144
2144
|
return s;
|
|
2145
2145
|
}, e.createOneHtml = Kn, e.create_json_record = function(e, t) {
|
|
@@ -2148,8 +2148,8 @@ var gobjJs = function(e) {
|
|
|
2148
2148
|
}, e.create_template_record = function(e, t) {
|
|
2149
2149
|
let n = {};
|
|
2150
2150
|
return t || (t = {}), Object.entries(e).forEach(([e, r]) => {
|
|
2151
|
-
let
|
|
2152
|
-
Qt(r) && (
|
|
2151
|
+
let o;
|
|
2152
|
+
Qt(r) && (o = r.default), n[e] = yn(null, t, e, o);
|
|
2153
2153
|
}), n;
|
|
2154
2154
|
}, e.current_timestamp = xn, e.data_type_t = y, e.db_list_persistent_attrs = function(e, t) {
|
|
2155
2155
|
let n = Nn(qn(e), null, !1), r = {};
|
|
@@ -2157,8 +2157,8 @@ var gobjJs = function(e) {
|
|
|
2157
2157
|
}, e.db_load_persistent_attrs = function(e, t) {
|
|
2158
2158
|
let n = Be(e, E.SDF_PERSIST), r = Nn(qn(e), null, !1);
|
|
2159
2159
|
if (r && Qt(r)) {
|
|
2160
|
-
let
|
|
2161
|
-
|
|
2160
|
+
let o = jn(e, r, t, !1);
|
|
2161
|
+
o = jn(e, o, n, !1), He(e, o, E.SDF_PERSIST);
|
|
2162
2162
|
}
|
|
2163
2163
|
}, e.db_remove_persistent_attrs = function(e, t) {
|
|
2164
2164
|
let n = On(e, Nn(qn(e), null, !1), t, !1);
|
|
@@ -2167,18 +2167,18 @@ var gobjJs = function(e) {
|
|
|
2167
2167
|
let n = jn(e, Be(e, E.SDF_PERSIST), t, !1), r = Nn(qn(e), null, !1);
|
|
2168
2168
|
return r && Qt(r) && Gt(n, r), wn(qn(e), n);
|
|
2169
2169
|
}, e.debounce = function(e, t = 0, n = !1) {
|
|
2170
|
-
let r = null,
|
|
2170
|
+
let r = null, o = null, i = null;
|
|
2171
2171
|
const l = (...l) => {
|
|
2172
|
-
|
|
2172
|
+
i = this, o = l;
|
|
2173
2173
|
const s = n && !r;
|
|
2174
2174
|
clearTimeout(r), r = setTimeout(() => {
|
|
2175
|
-
r = null, n || e.apply(
|
|
2176
|
-
}, t), s && e.apply(
|
|
2175
|
+
r = null, n || e.apply(i, o);
|
|
2176
|
+
}, t), s && e.apply(i, o);
|
|
2177
2177
|
};
|
|
2178
2178
|
return l.flush = () => {
|
|
2179
|
-
r && (clearTimeout(r), r = null, e.apply(
|
|
2179
|
+
r && (clearTimeout(r), r = null, e.apply(i, o));
|
|
2180
2180
|
}, l.cancel = () => {
|
|
2181
|
-
clearTimeout(r), r = null,
|
|
2181
|
+
clearTimeout(r), r = null, o = null, i = null;
|
|
2182
2182
|
}, l;
|
|
2183
2183
|
}, e.delete_from_list = function(e, t) {
|
|
2184
2184
|
for (let n = 0; n < e.length; n++) if (t === e[n]) return e.splice(n, 1), !0;
|
|
@@ -2197,26 +2197,26 @@ var gobjJs = function(e) {
|
|
|
2197
2197
|
right: 0,
|
|
2198
2198
|
bottom: 0
|
|
2199
2199
|
};
|
|
2200
|
-
const { top: t, left: n, width: r, height:
|
|
2200
|
+
const { top: t, left: n, width: r, height: o } = e.getBoundingClientRect?.() || {
|
|
2201
2201
|
top: 0,
|
|
2202
2202
|
left: 0,
|
|
2203
2203
|
width: 0,
|
|
2204
2204
|
height: 0
|
|
2205
|
-
},
|
|
2205
|
+
}, i = "undefined" != typeof window, l = i && (window.scrollY || document.documentElement?.scrollTop || document.body?.scrollTop) || 0, s = i && (window.scrollX || document.documentElement?.scrollLeft || document.body?.scrollLeft) || 0;
|
|
2206
2206
|
return {
|
|
2207
2207
|
top: t + l,
|
|
2208
2208
|
left: n + s,
|
|
2209
2209
|
right: n + s + r,
|
|
2210
|
-
bottom: t + l +
|
|
2210
|
+
bottom: t + l + o
|
|
2211
2211
|
};
|
|
2212
2212
|
}, e.get_function_name = Jn, e.get_now = function() {
|
|
2213
2213
|
return Math.floor(Date.now() / 1e3);
|
|
2214
2214
|
}, e.gobj_bottom_gobj = Ie, e.gobj_change_parent = function(e, t) {
|
|
2215
2215
|
return Ae(e) ? (kt("gobj NULL or DESTROYED"), null) : t instanceof O ? (e.parent && e.parent.mt_child_removed && e.parent.mt_child_removed(e.parent, e), e.parent && (re(e.parent, e), e.parent = null), ne(t, e), t.mt_child_added && (p && Je(p, "trace_creation") && At(n("👦👦🔵 child_added(%s): %s", De(t), we(e))), t.mt_child_added(t, e)), 0) : (kt(`${we(e)}: gobj_change_parent() BAD TYPE of parent`), -1);
|
|
2216
|
-
}, e.gobj_change_state = tt, e.gobj_command = function(e, t, r,
|
|
2216
|
+
}, e.gobj_change_state = tt, e.gobj_command = function(e, t, r, i) {
|
|
2217
2217
|
if (Ae(e)) return kt("gobj NULL or DESTROYED"), -1;
|
|
2218
2218
|
let l = p && qe(p, "tracing");
|
|
2219
|
-
return l && (P(n("🌀🌀 mach(%s%s), cmd: %s, src: %s", me(e) ? "" : "!!", we(e), t, we(
|
|
2219
|
+
return l && (P(n("🌀🌀 mach(%s%s), cmd: %s, src: %s", me(e) ? "" : "!!", we(e), t, we(i))), l > 1 && Lt(r)), e.gclass.gmt.mt_command_parser ? e.gclass.gmt.mt_command_parser(e, t, r, i) : e.gclass.command_table ? c ? c(e, t, r, i) : o(0, -1, n("%s: global command parser not available", we(e)), 0, 0) : o(0, -1, n("%s: command table not available", we(e)), 0, 0);
|
|
2220
2220
|
}, e.gobj_create = function(e, t, n, r) {
|
|
2221
2221
|
return le(e, t, n, r, 0);
|
|
2222
2222
|
}, e.gobj_create2 = le, e.gobj_create_default_service = function(e, t, n, r) {
|
|
@@ -2231,18 +2231,18 @@ var gobjJs = function(e) {
|
|
|
2231
2231
|
if (on(t)) return null;
|
|
2232
2232
|
const n = t.toLowerCase();
|
|
2233
2233
|
return "__default_service__" === n ? m : "__yuno__" === n || "__root__" === n ? p : Ke(p, t);
|
|
2234
|
-
}, e.gobj_find_service = ee, e.gobj_find_subscribings = pt, e.gobj_find_subscriptions = bt, e.gobj_flag_t = w, e.gobj_full_name = De, e.gobj_gclass_name = Ne, e.gobj_has_attr = xe, e.gobj_has_event =
|
|
2234
|
+
}, e.gobj_find_service = ee, e.gobj_find_subscribings = pt, e.gobj_find_subscriptions = bt, e.gobj_flag_t = w, e.gobj_full_name = De, e.gobj_gclass_name = Ne, e.gobj_has_attr = xe, e.gobj_has_event = ot, e.gobj_has_output_event = it, e.gobj_hsdata = G, e.gobj_is_destroying = Ae, e.gobj_is_playing = Ee, e.gobj_is_pure_child = $e, e.gobj_is_running = me, e.gobj_is_service = ye, e.gobj_is_volatil = ke, e.gobj_list_persistent_attrs = function(e, t) {
|
|
2235
2235
|
return u ? u(e, t) : null;
|
|
2236
2236
|
}, e.gobj_list_subscriptions = function(e) {
|
|
2237
2237
|
let t = bt(e, null, null, null);
|
|
2238
2238
|
for (let n = 0; n < t.length; n++) {
|
|
2239
|
-
let r = t[n],
|
|
2240
|
-
Kt(r, "s_event", pn(e, r, "event", "", ht.KW_REQUIRED)), Kt(r, "s_publisher", we(
|
|
2239
|
+
let r = t[n], o = mn(e, r, "publisher", null, ht.KW_REQUIRED), i = mn(e, r, "subscriber", null, ht.KW_REQUIRED);
|
|
2240
|
+
Kt(r, "s_event", pn(e, r, "event", "", ht.KW_REQUIRED)), Kt(r, "s_publisher", we(o)), Kt(r, "s_subscriber", we(i));
|
|
2241
2241
|
}
|
|
2242
2242
|
let n = pt(e, 0, null, 0);
|
|
2243
2243
|
for (let t = 0; t < n.length; t++) {
|
|
2244
|
-
let r = n[t],
|
|
2245
|
-
Kt(r, "s_event", pn(e, r, "event", "", ht.KW_REQUIRED)), Kt(r, "s_publisher", we(
|
|
2244
|
+
let r = n[t], o = mn(e, r, "publisher", null, ht.KW_REQUIRED), i = mn(e, r, "subscriber", null, ht.KW_REQUIRED);
|
|
2245
|
+
Kt(r, "s_event", pn(e, r, "event", "", ht.KW_REQUIRED)), Kt(r, "s_publisher", we(o)), Kt(r, "s_subscriber", we(i));
|
|
2246
2246
|
}
|
|
2247
2247
|
return {
|
|
2248
2248
|
subscriptions: t,
|
|
@@ -2258,18 +2258,18 @@ var gobjJs = function(e) {
|
|
|
2258
2258
|
let n = [];
|
|
2259
2259
|
const r = e.dl_children;
|
|
2260
2260
|
for (let e = 0; e < r.length; e++) {
|
|
2261
|
-
const
|
|
2262
|
-
We(
|
|
2261
|
+
const o = r[e];
|
|
2262
|
+
We(o, t) && n.push(o);
|
|
2263
2263
|
}
|
|
2264
2264
|
return n;
|
|
2265
2265
|
}, e.gobj_match_children_tree = function(e, t) {
|
|
2266
2266
|
t = t || {};
|
|
2267
2267
|
let n = [];
|
|
2268
2268
|
return function e(n, r) {
|
|
2269
|
-
let
|
|
2270
|
-
for (let r = 0; r <
|
|
2271
|
-
let
|
|
2272
|
-
We(
|
|
2269
|
+
let o = r.dl_children;
|
|
2270
|
+
for (let r = 0; r < o.length; r++) {
|
|
2271
|
+
let i = o[r];
|
|
2272
|
+
We(i, t) && n.push(i), e(n, i);
|
|
2273
2273
|
}
|
|
2274
2274
|
}(n, e), n;
|
|
2275
2275
|
}, e.gobj_match_gobj = We, e.gobj_name = Oe, e.gobj_parent = Re, e.gobj_pause = pe, e.gobj_play = be, e.gobj_post_event = function(e, t, n, r) {
|
|
@@ -2282,11 +2282,11 @@ var gobjJs = function(e) {
|
|
|
2282
2282
|
return function(e, t, n) {
|
|
2283
2283
|
if (Ae(e)) return kt("gobj NULL or DESTROYED"), -1;
|
|
2284
2284
|
let r = e.gclass.attrs_table;
|
|
2285
|
-
for (let
|
|
2286
|
-
const
|
|
2287
|
-
if (
|
|
2288
|
-
const t = C(e, e.jn_attrs,
|
|
2289
|
-
Qt(e.priv) && e.priv.hasOwnProperty(
|
|
2285
|
+
for (let o = 0; o < r.length; o++) {
|
|
2286
|
+
const i = r[o];
|
|
2287
|
+
if (i.name && !(n && i.flag & n) && (-1 === t || i.flag & t)) {
|
|
2288
|
+
const t = C(e, e.jn_attrs, i);
|
|
2289
|
+
Qt(e.priv) && e.priv.hasOwnProperty(i.name) && (e.priv[i.name] = t), e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, i.name);
|
|
2290
2290
|
}
|
|
2291
2291
|
}
|
|
2292
2292
|
return 0;
|
|
@@ -2303,16 +2303,16 @@ var gobjJs = function(e) {
|
|
|
2303
2303
|
return Ae(e) ? (kt("gobj NULL or DESTROYED"), -1) : Ue(e, k.WALK_FIRST2LAST, ue, 0, 0);
|
|
2304
2304
|
}, e.gobj_start_tree = function(e) {
|
|
2305
2305
|
return Ae(e) ? (kt("gobj NULL or DESTROYED"), -1) : (p && Je(p, "trace_start_stop") && P(n("⏺ ⏺ ⏺ ⏺ start_tree: %s", De(e))), e.gclass.gclass_flag & N.gcflag_manual_start || e.disabled ? 0 : (e.running || ae(e), Ce(e, k.WALK_TOP2BOTTOM, ce, 0, 0)));
|
|
2306
|
-
}, e.gobj_start_up = function(e, t, n, r,
|
|
2307
|
-
s = t, _ = n, a = r, u =
|
|
2306
|
+
}, e.gobj_start_up = function(e, t, n, r, o, i, l) {
|
|
2307
|
+
s = t, _ = n, a = r, u = o, c = i, f = l;
|
|
2308
2308
|
const d = [["EV_STATE_CHANGED", R.EVF_SYSTEM_EVENT | R.EVF_OUTPUT_EVENT | R.EVF_NO_WARN_SUBS], [0, 0]];
|
|
2309
2309
|
for (let e = 0; e < d.length; e++) {
|
|
2310
2310
|
let t = d[e][0], n = d[e][1];
|
|
2311
2311
|
q(g, t, n);
|
|
2312
2312
|
}
|
|
2313
2313
|
return 0;
|
|
2314
|
-
}, e.gobj_stats = function(e, t, r,
|
|
2315
|
-
return Ae(e) ? (kt("gobj NULL or DESTROYED"), -1) : e.gclass.gmt.mt_stats ? e.gclass.gmt.mt_stats(e, t, r,
|
|
2314
|
+
}, e.gobj_stats = function(e, t, r, o) {
|
|
2315
|
+
return Ae(e) ? (kt("gobj NULL or DESTROYED"), -1) : e.gclass.gmt.mt_stats ? e.gclass.gmt.mt_stats(e, t, r, o) : f ? f(e, t, r, o) : i(0, -1, n("%s, stats parser not available", we(e)), 0, 0);
|
|
2316
2316
|
}, e.gobj_stop = fe, e.gobj_stop_children = de, e.gobj_stop_tree = function(e) {
|
|
2317
2317
|
return Ae(e) ? (kt("gobj NULL or DESTROYED"), -1) : (p && Je(p, "trace_start_stop") && P(n("⏹ ⏹ ⏹ ⏹ stop_tree: %s", De(e))), me(e) && fe(e), Ce(e, k.WALK_TOP2BOTTOM, ge, 0, 0));
|
|
2318
2318
|
}, e.gobj_subscribe_event = gt, e.gobj_trace_machine_format = function() {
|
|
@@ -2320,7 +2320,7 @@ var gobjJs = function(e) {
|
|
|
2320
2320
|
}, e.gobj_unsubscribe_event = function(e, t, n, r) {
|
|
2321
2321
|
if (null == n && (n = {}), !e) return kt(`publisher NULL: ev ${t}`), 0;
|
|
2322
2322
|
if (!r) return kt(`subscriber NULL: ev ${t}`), 0;
|
|
2323
|
-
const
|
|
2323
|
+
const o = new Set([
|
|
2324
2324
|
"__config__",
|
|
2325
2325
|
"__global__",
|
|
2326
2326
|
"__local__",
|
|
@@ -2328,35 +2328,35 @@ var gobjJs = function(e) {
|
|
|
2328
2328
|
"__service__"
|
|
2329
2329
|
]);
|
|
2330
2330
|
if (Object.keys(n).forEach((n) => {
|
|
2331
|
-
|
|
2331
|
+
o.has(n) || kt(`${we(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
|
|
2332
2332
|
}), on(t)) t = "";
|
|
2333
|
-
else if (!(
|
|
2334
|
-
let
|
|
2335
|
-
for (let t = 0; t <
|
|
2336
|
-
let n =
|
|
2333
|
+
else if (!(it(e, t, R.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & N.gcflag_no_check_output_events)) return kt(`event NOT in output event list: ${we(e)}, ev ${t}`), 0;
|
|
2334
|
+
let i = ut(e.dl_subscriptions, e, t, n, r), l = 0;
|
|
2335
|
+
for (let t = 0; t < i.length; t++) {
|
|
2336
|
+
let n = i[t];
|
|
2337
2337
|
ft(e, n, !1, !1), l++;
|
|
2338
2338
|
}
|
|
2339
2339
|
return l || ($t(`${we(e)}: No subscription found`), Lt(n, "No subscription found")), 0;
|
|
2340
|
-
}, e.gobj_unsubscribe_list = dt, e.gobj_walk_gobj_children = Ue, e.gobj_walk_gobj_children_tree = Ce, e.gobj_write_attr = function(e, t, r,
|
|
2340
|
+
}, e.gobj_unsubscribe_list = dt, e.gobj_walk_gobj_children = Ue, e.gobj_walk_gobj_children_tree = Ce, e.gobj_write_attr = function(e, t, r, o) {
|
|
2341
2341
|
if (!Xt(t)) return kt(n("gobj_write_attr(%s): path must be a string", we(e))), -1;
|
|
2342
|
-
let
|
|
2342
|
+
let i, l = e.jn_attrs, s = t.split("`");
|
|
2343
2343
|
if (s.length <= 1) {
|
|
2344
|
-
let
|
|
2345
|
-
return
|
|
2344
|
+
let o = t;
|
|
2345
|
+
return o in l && l.hasOwnProperty(o) ? (l[o] = r, Qt(e.priv) && e.priv.hasOwnProperty(o) && (e.priv[o] = r), e.obflag & D.obflag_created && !(e.obflag & D.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, o), 0) : (kt(n("gobj_write_attr(%s): attr not found '%s'", we(e), o)), -1);
|
|
2346
2346
|
}
|
|
2347
2347
|
let _ = s.length;
|
|
2348
2348
|
for (let t = 0; t < _; t++) {
|
|
2349
|
-
|
|
2350
|
-
let n = Me(e, { __gobj_name__:
|
|
2349
|
+
i = s[t];
|
|
2350
|
+
let n = Me(e, { __gobj_name__: i });
|
|
2351
2351
|
if (n && t < _ - 1) {
|
|
2352
2352
|
e = n;
|
|
2353
2353
|
continue;
|
|
2354
2354
|
}
|
|
2355
|
-
let
|
|
2356
|
-
if (
|
|
2355
|
+
let o = e.jn_attrs;
|
|
2356
|
+
if (i in o && o.hasOwnProperty(i)) return o[i] = r, Qt(e.priv) && e.priv.hasOwnProperty(i) && (e.priv[i] = r), e.obflag & D.obflag_created && !(e.obflag & D.obflag_destroyed) && e.mt_writing && e.mt_writing(e, i), 0;
|
|
2357
2357
|
break;
|
|
2358
2358
|
}
|
|
2359
|
-
return kt(n("gobj_write_attr(%s): attr not found '%s'", we(e),
|
|
2359
|
+
return kt(n("gobj_write_attr(%s): attr not found '%s'", we(e), i)), -1;
|
|
2360
2360
|
}, e.gobj_write_attrs = He, e.gobj_write_bool_attr = Xe, e.gobj_write_integer_attr = Ze, e.gobj_write_str_attr = et, e.gobj_yuno = Te, e.gobj_yuno_id = je, e.gobj_yuno_name = ve, e.gobj_yuno_role = Se, e.id_index_in_obj_list = $n, e.index_in_list = Yn, e.is_array = Ht, e.is_boolean = en, e.is_date = function(e) {
|
|
2361
2361
|
return e instanceof Date && !isNaN(e);
|
|
2362
2362
|
}, e.is_function = nn, e.is_gobj = rn, e.is_metadata_key = function(e) {
|
|
@@ -2375,11 +2375,11 @@ var gobjJs = function(e) {
|
|
|
2375
2375
|
const t = Number(e);
|
|
2376
2376
|
return !isNaN(t) && "" !== e.trim() && !isNaN(t);
|
|
2377
2377
|
}, e.is_string = Xt, e.jdb_delete = function(e, t, n, r) {
|
|
2378
|
-
let
|
|
2379
|
-
if (!
|
|
2378
|
+
let o = yn(null, yn(null, e, "topics", null, 0), t, null, 0);
|
|
2379
|
+
if (!o) return kt("jdb_delete: topic not found: " + t), null;
|
|
2380
2380
|
if (on(r.id)) return kt("jdb_delete: record without id: " + r), It(r), null;
|
|
2381
|
-
let
|
|
2382
|
-
for (; (
|
|
2381
|
+
let i, l = n.split("`"), s = o;
|
|
2382
|
+
for (; (i = l.shift()) && !on(i) && s;) Qt(s) && (s = yn(null, s, e.hook, null, 0)), s = Vn(s, null, i, !1);
|
|
2383
2383
|
if (0 === l.length && s) if (Ht(s)) {
|
|
2384
2384
|
let e = $n(s, r.id);
|
|
2385
2385
|
e >= 0 && s.splice(e, 1);
|
|
@@ -2387,10 +2387,10 @@ var gobjJs = function(e) {
|
|
|
2387
2387
|
let t = yn(null, s, e.hook, null, 0), n = $n(t, r.id);
|
|
2388
2388
|
n >= 0 && t.splice(n, 1);
|
|
2389
2389
|
}
|
|
2390
|
-
return
|
|
2390
|
+
return o;
|
|
2391
2391
|
}, e.jdb_get = function(e, t, n, r) {
|
|
2392
|
-
let
|
|
2393
|
-
return
|
|
2392
|
+
let o = yn(null, yn(null, e, "topics", null, 0), t, null, 0);
|
|
2393
|
+
return o ? (void 0 === r && (r = !0), Vn(o, e.hook, n, r)) : (kt("jdb_get: topic not found: " + t), null);
|
|
2394
2394
|
}, e.jdb_get_by_idx = function(e, t, n) {
|
|
2395
2395
|
let r = yn(null, yn(null, e, "topics", null, 0), t, null, 0);
|
|
2396
2396
|
return r ? n < r.length ? r[n] : {} : (kt("jdb_get_by_idx: topic not found: " + t), null);
|
|
@@ -2402,23 +2402,23 @@ var gobjJs = function(e) {
|
|
|
2402
2402
|
n && (e = Pt(e));
|
|
2403
2403
|
let r = yn(null, e, "type", [], 1);
|
|
2404
2404
|
pn(null, e, "hook", "data", 1);
|
|
2405
|
-
let
|
|
2406
|
-
return Gn(
|
|
2407
|
-
"__" !== t.substring(0, 2) && yn(null,
|
|
2405
|
+
let o = yn(null, e, "schema", {}, 1), i = yn(null, e, "topics", {}, 1);
|
|
2406
|
+
return Gn(o, function(e, t, n, o) {
|
|
2407
|
+
"__" !== t.substring(0, 2) && yn(null, i, o, Pt(r), 1);
|
|
2408
2408
|
}, t), e;
|
|
2409
2409
|
}, e.jdb_update = function(e, t, n, r) {
|
|
2410
|
-
let
|
|
2411
|
-
if (!
|
|
2410
|
+
let o = yn(null, yn(null, e, "topics", null, 0), t, null, 0);
|
|
2411
|
+
if (!o) return kt("jdb_update: topic not found: " + t), null;
|
|
2412
2412
|
if (on(r.id)) return kt("jdb_update: record without id: " + r), It(r), null;
|
|
2413
|
-
let
|
|
2414
|
-
for (; (
|
|
2413
|
+
let i, l = n.split("`"), s = o;
|
|
2414
|
+
for (; (i = l.shift()) && !on(i) && s;) Qt(s) && (s = yn(null, s, e.hook, [], 1)), s = Vn(s, null, i, !1);
|
|
2415
2415
|
if (0 === l.length && s) if (Ht(s)) s.push(r);
|
|
2416
2416
|
else if (s.id === r.id) Object.assign(s, r);
|
|
2417
2417
|
else {
|
|
2418
2418
|
let t = yn(null, s, e.hook, [], 1), n = Vn(t, e.hook, r.id, !1);
|
|
2419
2419
|
n ? Object.assign(n, r) : t.push(r);
|
|
2420
2420
|
}
|
|
2421
|
-
return
|
|
2421
|
+
return o;
|
|
2422
2422
|
}, e.json_array_append = xt, e.json_array_append_new = Yt, e.json_array_extend = function(e, t) {
|
|
2423
2423
|
return t ? (Array.prototype.push.apply(e, t), e) : e;
|
|
2424
2424
|
}, e.json_array_remove = Bt, e.json_array_size = qt, e.json_deep_copy = Pt, e.json_is_identical = Ut, e.json_object_del = Wt, e.json_object_get = Vt, e.json_object_set = Mt, e.json_object_set_new = Kt, e.json_object_size = Jt, e.json_object_update = Ct, e.json_object_update_existing = Ft, e.json_object_update_missing = Gt, e.json_size = zt, e.jwt2json = function(e, t) {
|
|
@@ -2435,61 +2435,61 @@ var gobjJs = function(e) {
|
|
|
2435
2435
|
}, e.jwtDecode = Wn, e.kw_clone_by_keys = jn, e.kw_clone_by_not_keys = On, e.kw_collect = function(e, t, n, r) {
|
|
2436
2436
|
if (e && !rn(e) && kt("GObj bad instanceof"), !t) return null;
|
|
2437
2437
|
r || (r = Sn);
|
|
2438
|
-
let
|
|
2438
|
+
let o = [];
|
|
2439
2439
|
if (Ht(t)) for (let e = 0; e < t.length; e++) {
|
|
2440
|
-
let
|
|
2441
|
-
r(
|
|
2440
|
+
let i = t[e];
|
|
2441
|
+
r(i, n) && o.push(i);
|
|
2442
2442
|
}
|
|
2443
2443
|
else {
|
|
2444
2444
|
if (!Qt(t)) return kt("kw_select() BAD kw parameter"), null;
|
|
2445
|
-
r(t, n) &&
|
|
2445
|
+
r(t, n) && o.push(t);
|
|
2446
2446
|
}
|
|
2447
|
-
return
|
|
2447
|
+
return o;
|
|
2448
2448
|
}, e.kw_delete = gn, e.kw_find_json_in_list = function(e, t, n, r) {
|
|
2449
2449
|
if (!n || !Ht(t)) return r && kt("item NULL or kw_list is not a list"), -1;
|
|
2450
2450
|
for (let e = 0; e < t.length; e++) if (Ut(n, t[e])) return e;
|
|
2451
2451
|
return r && kt("item not found in this list"), -1;
|
|
2452
|
-
}, e.kw_find_path = fn, e.kw_flag_t = ht, e.kw_get_bool = dn, e.kw_get_dict = hn, e.kw_get_dict_value = yn, e.kw_get_int = bn, e.kw_get_list = function(e, t, n, r,
|
|
2452
|
+
}, e.kw_find_path = fn, e.kw_flag_t = ht, e.kw_get_bool = dn, e.kw_get_dict = hn, e.kw_get_dict_value = yn, e.kw_get_int = bn, e.kw_get_list = function(e, t, n, r, o) {
|
|
2453
2453
|
e && !rn(e) && kt("GObj bad instanceof");
|
|
2454
|
-
let
|
|
2455
|
-
const l =
|
|
2456
|
-
if (void 0 ===
|
|
2454
|
+
let i = fn(e, t, n, !1);
|
|
2455
|
+
const l = o && o & ht.KW_REQUIRED, s = o && o & ht.KW_CREATE, _ = o && o & ht.KW_EXTRACT;
|
|
2456
|
+
if (void 0 === i) {
|
|
2457
2457
|
if (s) {
|
|
2458
|
-
let
|
|
2459
|
-
return En(e, t, n,
|
|
2458
|
+
let o = Array(r);
|
|
2459
|
+
return En(e, t, n, o), o;
|
|
2460
2460
|
}
|
|
2461
2461
|
return l && (kt(`path not found: '${n}'`), Lt(t)), Array(r);
|
|
2462
2462
|
}
|
|
2463
|
-
return _ && gn(e, t, n), Ht(
|
|
2464
|
-
}, e.kw_get_local_storage_value = Nn, e.kw_get_pointer = mn, e.kw_get_real = function(e, t, n, r,
|
|
2463
|
+
return _ && gn(e, t, n), Ht(i) ? Array(i) : (l && (kt(`path value MUST BE an array: ${n}`), It(t)), Array(r));
|
|
2464
|
+
}, e.kw_get_local_storage_value = Nn, e.kw_get_pointer = mn, e.kw_get_real = function(e, t, n, r, o) {
|
|
2465
2465
|
e && !rn(e) && kt("GObj bad instanceof");
|
|
2466
|
-
let
|
|
2467
|
-
const l =
|
|
2468
|
-
if (void 0 ===
|
|
2466
|
+
let i = fn(e, t, n, !1);
|
|
2467
|
+
const l = o && o & ht.KW_REQUIRED, s = o && o & ht.KW_CREATE, _ = o && o & ht.KW_EXTRACT;
|
|
2468
|
+
if (void 0 === i) {
|
|
2469
2469
|
if (s) {
|
|
2470
|
-
let
|
|
2471
|
-
return En(e, t, n,
|
|
2470
|
+
let o = Number(r);
|
|
2471
|
+
return En(e, t, n, o), o;
|
|
2472
2472
|
}
|
|
2473
2473
|
return l && (kt(`path not found: '${n}'`), Lt(t)), Number(r);
|
|
2474
2474
|
}
|
|
2475
|
-
return _ && gn(e, t, n), Zt(
|
|
2475
|
+
return _ && gn(e, t, n), Zt(i) ? Number(i) : (l && (kt(`path value MUST BE a number: ${n}`), It(t)), Number(r));
|
|
2476
2476
|
}, e.kw_get_str = pn, e.kw_has_key = cn, e.kw_match_simple = Sn, e.kw_pop = un, e.kw_remove_local_storage_value = Dn, e.kw_select = function(e, t, n, r) {
|
|
2477
2477
|
if (e && !rn(e) && kt("GObj bad instanceof"), !t) return null;
|
|
2478
2478
|
r || (r = Sn);
|
|
2479
|
-
let
|
|
2479
|
+
let o = [];
|
|
2480
2480
|
if (Ht(t)) for (let e = 0; e < t.length; e++) {
|
|
2481
|
-
let
|
|
2482
|
-
r(
|
|
2481
|
+
let i = t[e];
|
|
2482
|
+
r(i, n) && o.push(Pt(i));
|
|
2483
2483
|
}
|
|
2484
2484
|
else {
|
|
2485
2485
|
if (!Qt(t)) return kt("kw_select() BAD kw parameter"), null;
|
|
2486
|
-
r(t, n) &&
|
|
2486
|
+
r(t, n) && o.push(Pt(t));
|
|
2487
2487
|
}
|
|
2488
|
-
return
|
|
2489
|
-
}, e.kw_set_dict_value = En, e.kw_set_local_storage_value = wn, e.kw_set_subdict_value = Tn, e.kwid_collect = kn, e.kwid_find_one_record = function(e, t, n, r,
|
|
2488
|
+
return o;
|
|
2489
|
+
}, e.kw_set_dict_value = En, e.kw_set_local_storage_value = wn, e.kw_set_subdict_value = Tn, e.kwid_collect = kn, e.kwid_find_one_record = function(e, t, n, r, o) {
|
|
2490
2490
|
e && !rn(e) && kt("GObj bad instanceof");
|
|
2491
|
-
let
|
|
2492
|
-
return
|
|
2491
|
+
let i = kn(e, t, n, r, o);
|
|
2492
|
+
return i.length > 0 ? i[0] : null;
|
|
2493
2493
|
}, e.kwid_get_ids = function(e, t) {
|
|
2494
2494
|
if (e && !rn(e) && kt("GObj bad instanceof"), !t) return [];
|
|
2495
2495
|
let n = [];
|
|
@@ -2508,37 +2508,37 @@ var gobjJs = function(e) {
|
|
|
2508
2508
|
let r = {};
|
|
2509
2509
|
if (on(n) || (t = fn(e, t, n)), Qt(t)) r = t;
|
|
2510
2510
|
else if (Ht(t)) for (let n = 0; n < t.length; n++) {
|
|
2511
|
-
let
|
|
2512
|
-
on(
|
|
2511
|
+
let o = t[n], i = pn(e, o, "id", "", 0);
|
|
2512
|
+
on(i) || (r[i] = o);
|
|
2513
2513
|
}
|
|
2514
2514
|
else kt(`${we(e)} kwid_new_dict: data type unknown`);
|
|
2515
2515
|
return r;
|
|
2516
2516
|
}, e.list2options = function(e, t, n) {
|
|
2517
2517
|
t = t || "id", n = n || "value";
|
|
2518
2518
|
let r = [];
|
|
2519
|
-
if (Ht(e)) for (let
|
|
2520
|
-
let
|
|
2521
|
-
if (Xt(
|
|
2522
|
-
id: e[
|
|
2523
|
-
value: e[
|
|
2519
|
+
if (Ht(e)) for (let o = 0; o < e.length; o++) {
|
|
2520
|
+
let i = e[o];
|
|
2521
|
+
if (Xt(i)) r.push({
|
|
2522
|
+
id: e[o],
|
|
2523
|
+
value: e[o]
|
|
2524
2524
|
});
|
|
2525
|
-
else if (Qt(
|
|
2525
|
+
else if (Qt(i)) {
|
|
2526
2526
|
let e = {};
|
|
2527
|
-
if (cn(
|
|
2528
|
-
if (!cn(
|
|
2529
|
-
if (!(zt(
|
|
2527
|
+
if (cn(i, t)) {
|
|
2528
|
+
if (!cn(i, n)) {
|
|
2529
|
+
if (!(zt(i) > 0)) {
|
|
2530
2530
|
kt("list2options(): object without field value: " + n);
|
|
2531
2531
|
continue;
|
|
2532
2532
|
}
|
|
2533
|
-
n = Object.keys(
|
|
2533
|
+
n = Object.keys(i)[0];
|
|
2534
2534
|
}
|
|
2535
|
-
e.id =
|
|
2535
|
+
e.id = i[t], e.value = i[n];
|
|
2536
2536
|
} else {
|
|
2537
|
-
if (!(zt(
|
|
2537
|
+
if (!(zt(i) > 0)) {
|
|
2538
2538
|
kt("list2options(): object without field id: " + t);
|
|
2539
2539
|
continue;
|
|
2540
2540
|
}
|
|
2541
|
-
t = Object.keys(
|
|
2541
|
+
t = Object.keys(i)[0], e.id = t, e.value = i[t];
|
|
2542
2542
|
}
|
|
2543
2543
|
r.push(e);
|
|
2544
2544
|
} else kt("list2options(): case1 not implemented");
|
|
@@ -2689,7 +2689,7 @@ var gobjJs = function(e) {
|
|
|
2689
2689
|
["EV_TIMEOUT", R.EVF_OUTPUT_EVENT],
|
|
2690
2690
|
["EV_TIMEOUT_PERIODIC", R.EVF_OUTPUT_EVENT],
|
|
2691
2691
|
[0, 0]
|
|
2692
|
-
], t,
|
|
2692
|
+
], t, or, 0, er, tr, 0, 0, 0, N.gcflag_manual_start)) ? 0 : -1;
|
|
2693
2693
|
}("C_TIMER");
|
|
2694
2694
|
}, e.register_c_yuno = function() {
|
|
2695
2695
|
return function(e) {
|
|
@@ -2714,9 +2714,9 @@ var gobjJs = function(e) {
|
|
|
2714
2714
|
Ot = !!e;
|
|
2715
2715
|
}, e.set_log_callback = function(e) {
|
|
2716
2716
|
jt = "function" == typeof e ? e : null;
|
|
2717
|
-
}, e.set_remote_log_functions = Dt, e.set_timeout =
|
|
2718
|
-
var r = (e + "").substring(0, n),
|
|
2719
|
-
return r ===
|
|
2717
|
+
}, e.set_remote_log_functions = Dt, e.set_timeout = ir, e.set_timeout_periodic = lr, e.sprintf = n, e.stats_parser = function(e, t, n, r) {}, e.str_in_list = An, e.strcasecmp = _n, e.strcmp = sn, e.strncmp = function(e, t, n) {
|
|
2718
|
+
var r = (e + "").substring(0, n), o = (t + "").substring(0, n);
|
|
2719
|
+
return r === o ? 0 : r > o ? 1 : -1;
|
|
2720
2720
|
}, e.strs_in_list = function(e, t, n) {
|
|
2721
2721
|
if (!e) return kt("ERROR: strs_in_list() list empty"), !1;
|
|
2722
2722
|
if (!t) return kt("ERROR: strs_in_list() str empty"), !1;
|
|
@@ -2761,10 +2761,10 @@ var gobjJs = function(e) {
|
|
|
2761
2761
|
return n.type || (n.type = n.real_type), n;
|
|
2762
2762
|
}, e.timeTracker = function(e = "Time Tracker", t = !1) {
|
|
2763
2763
|
const n = e, r = performance.now();
|
|
2764
|
-
let
|
|
2765
|
-
return t && $t(`--\x3e ${n} - starting`), { mark: (e = "Intermediate",
|
|
2766
|
-
const l = performance.now(), s = (l -
|
|
2767
|
-
return t && $t(`--\x3e ${n} ${e} - partial: ${s} sec, total: ${_} sec, ${
|
|
2764
|
+
let o = r;
|
|
2765
|
+
return t && $t(`--\x3e ${n} - starting`), { mark: (e = "Intermediate", i = "") => {
|
|
2766
|
+
const l = performance.now(), s = (l - o) / 1e3, _ = (l - r) / 1e3;
|
|
2767
|
+
return t && $t(`--\x3e ${n} ${e} - partial: ${s} sec, total: ${_} sec, ${i}`), o = l, {
|
|
2768
2768
|
partial: s,
|
|
2769
2769
|
total: _
|
|
2770
2770
|
};
|