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