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