@yuneta/gobj-js 7.25.7 → 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 +35 -0
- package/dist/gobj-js.cjs.js +440 -66
- package/dist/gobj-js.cjs.js.map +1 -1
- package/dist/gobj-js.cjs.min.js +1208 -988
- package/dist/gobj-js.cjs.min.js.map +1 -1
- package/dist/gobj-js.es.js +437 -67
- package/dist/gobj-js.es.js.map +1 -1
- package/dist/gobj-js.es.min.js +1225 -1005
- package/dist/gobj-js.es.min.js.map +1 -1
- package/dist/gobj-js.iife.js +440 -66
- package/dist/gobj-js.iife.js.map +1 -1
- package/dist/gobj-js.iife.min.js +1249 -1029
- package/dist/gobj-js.iife.min.js.map +1 -1
- package/dist/gobj-js.umd.js +440 -66
- package/dist/gobj-js.umd.js.map +1 -1
- package/dist/gobj-js.umd.min.js +1238 -1018
- 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,28 +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
|
-
|
|
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;
|
|
1224
1268
|
if (!d) continue;
|
|
1225
|
-
let b =
|
|
1269
|
+
let b = At(u, t, !0);
|
|
1226
1270
|
if (b && b.event_flag & D.EVF_SYSTEM_EVENT && !It(u, b.event_name, 0)) continue;
|
|
1227
|
-
|
|
1228
|
-
|
|
1229
|
-
|
|
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__) {
|
|
1230
1275
|
i = -1;
|
|
1231
1276
|
break;
|
|
1232
1277
|
}
|
|
1233
|
-
if (_ +=
|
|
1278
|
+
if (_ += m, i++, ot(e)) break;
|
|
1234
1279
|
}
|
|
1235
1280
|
}
|
|
1236
|
-
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}`), _;
|
|
1237
1282
|
}
|
|
1238
|
-
var
|
|
1283
|
+
var Xt = Object.freeze({
|
|
1239
1284
|
KW_REQUIRED: 1,
|
|
1240
1285
|
KW_CREATE: 2,
|
|
1241
1286
|
KW_WILD_NUMBER: 4,
|
|
@@ -1255,48 +1300,48 @@
|
|
|
1255
1300
|
JSON_FALSE: 7,
|
|
1256
1301
|
JSON_NULL: 8
|
|
1257
1302
|
});
|
|
1258
|
-
var
|
|
1259
|
-
var
|
|
1260
|
-
var
|
|
1261
|
-
function
|
|
1262
|
-
if (!
|
|
1263
|
-
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;
|
|
1264
1309
|
try {
|
|
1265
|
-
return !!
|
|
1310
|
+
return !!an(e, t);
|
|
1266
1311
|
} catch (e) {
|
|
1267
1312
|
return !0;
|
|
1268
1313
|
}
|
|
1269
1314
|
}
|
|
1270
|
-
var
|
|
1271
|
-
function
|
|
1272
|
-
|
|
1315
|
+
var cn = !1;
|
|
1316
|
+
function fn(e, t, n) {
|
|
1317
|
+
cn || (function(e, t, n) {
|
|
1273
1318
|
let r = t;
|
|
1274
1319
|
if ("json" === e) try {
|
|
1275
1320
|
r = JSON.stringify(t);
|
|
1276
1321
|
} catch (e) {
|
|
1277
1322
|
r = String(t);
|
|
1278
1323
|
}
|
|
1279
|
-
|
|
1324
|
+
sn.push([
|
|
1280
1325
|
e,
|
|
1281
1326
|
r,
|
|
1282
1327
|
n
|
|
1283
|
-
]),
|
|
1284
|
-
}(e, t, n),
|
|
1328
|
+
]), sn.length > on && sn.shift();
|
|
1329
|
+
}(e, t, n), gn(e, t, n));
|
|
1285
1330
|
}
|
|
1286
|
-
function
|
|
1287
|
-
if (
|
|
1288
|
-
|
|
1331
|
+
function gn(e, t, n) {
|
|
1332
|
+
if (ln && !cn) {
|
|
1333
|
+
cn = !0;
|
|
1289
1334
|
try {
|
|
1290
|
-
|
|
1335
|
+
ln(e, t, n);
|
|
1291
1336
|
} catch (e) {} finally {
|
|
1292
|
-
|
|
1337
|
+
cn = !1;
|
|
1293
1338
|
}
|
|
1294
1339
|
}
|
|
1295
1340
|
}
|
|
1296
|
-
function
|
|
1297
|
-
e ? (
|
|
1341
|
+
function dn(e) {
|
|
1342
|
+
e ? (en = e, tn = e) : (en = Zt.error, tn = Zt.warn);
|
|
1298
1343
|
}
|
|
1299
|
-
function
|
|
1344
|
+
function bn(e) {
|
|
1300
1345
|
const t = Array.prototype.slice.call(arguments);
|
|
1301
1346
|
let n = "";
|
|
1302
1347
|
if ("string" == typeof e) {
|
|
@@ -1318,36 +1363,206 @@
|
|
|
1318
1363
|
} else n = t.map((e) => "object" == typeof e ? JSON.stringify(e) : String(e)).join(" ");
|
|
1319
1364
|
return n;
|
|
1320
1365
|
}
|
|
1321
|
-
function dn(e) {
|
|
1322
|
-
let t = gn(e), n = wr();
|
|
1323
|
-
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);
|
|
1324
|
-
}
|
|
1325
|
-
function bn(e) {
|
|
1326
|
-
let t = gn(e), n = wr();
|
|
1327
|
-
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);
|
|
1328
|
-
}
|
|
1329
1366
|
function pn(e) {
|
|
1330
|
-
let t =
|
|
1331
|
-
|
|
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);
|
|
1332
1369
|
}
|
|
1333
1370
|
function mn(e) {
|
|
1334
|
-
let t =
|
|
1335
|
-
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);
|
|
1336
1373
|
}
|
|
1337
|
-
function hn(e
|
|
1338
|
-
|
|
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);
|
|
1339
1377
|
}
|
|
1340
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) {
|
|
1341
1556
|
return structuredClone(e);
|
|
1342
1557
|
}
|
|
1343
|
-
function
|
|
1558
|
+
function Un(e, t) {
|
|
1344
1559
|
if (e === t) return !0;
|
|
1345
1560
|
if (null === e || null === t) return e === t;
|
|
1346
1561
|
if (typeof e != typeof t) return !1;
|
|
1347
1562
|
if (Array.isArray(e) !== Array.isArray(t)) return !1;
|
|
1348
1563
|
if (Array.isArray(e)) {
|
|
1349
1564
|
if (e.length !== t.length) return !1;
|
|
1350
|
-
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;
|
|
1351
1566
|
return !0;
|
|
1352
1567
|
}
|
|
1353
1568
|
if ("object" == typeof e) {
|
|
@@ -1355,232 +1570,232 @@
|
|
|
1355
1570
|
if (n.length !== r.length) return !1;
|
|
1356
1571
|
for (let l = 0; l < n.length; l++) {
|
|
1357
1572
|
if (n[l] !== r[l]) return !1;
|
|
1358
|
-
if (!
|
|
1573
|
+
if (!Un(e[n[l]], t[r[l]])) return !1;
|
|
1359
1574
|
}
|
|
1360
1575
|
return !0;
|
|
1361
1576
|
}
|
|
1362
1577
|
return e === t;
|
|
1363
1578
|
}
|
|
1364
|
-
function
|
|
1579
|
+
function Fn(e, t) {
|
|
1365
1580
|
if (!t) return e;
|
|
1366
1581
|
for (let n of Object.keys(t)) e[n] = t[n];
|
|
1367
1582
|
return e;
|
|
1368
1583
|
}
|
|
1369
|
-
function
|
|
1584
|
+
function Vn(e, t) {
|
|
1370
1585
|
if (!t) return e;
|
|
1371
1586
|
for (let n in t) t.hasOwnProperty(n) && e.hasOwnProperty(n) && (e[n] = t[n]);
|
|
1372
1587
|
return e;
|
|
1373
1588
|
}
|
|
1374
|
-
function
|
|
1589
|
+
function Gn(e, t) {
|
|
1375
1590
|
if (!t) return e;
|
|
1376
1591
|
for (let n in t) t.hasOwnProperty(n) && !e.hasOwnProperty(n) && (e[n] = t[n]);
|
|
1377
1592
|
return e;
|
|
1378
1593
|
}
|
|
1379
|
-
function
|
|
1594
|
+
function Mn(e, t) {
|
|
1380
1595
|
if (e && e.hasOwnProperty(t)) return e[t];
|
|
1381
1596
|
}
|
|
1382
|
-
function
|
|
1597
|
+
function Wn(e, t) {
|
|
1383
1598
|
e && e.hasOwnProperty(t) && delete e[t];
|
|
1384
1599
|
}
|
|
1385
|
-
function
|
|
1600
|
+
function xn(e, t, n) {
|
|
1386
1601
|
e[t] = n;
|
|
1387
1602
|
}
|
|
1388
|
-
function
|
|
1603
|
+
function Kn(e, t, n) {
|
|
1389
1604
|
e[t] = n;
|
|
1390
1605
|
}
|
|
1391
|
-
function
|
|
1606
|
+
function Yn(e, t) {
|
|
1392
1607
|
e.push(t);
|
|
1393
1608
|
}
|
|
1394
|
-
function
|
|
1609
|
+
function Bn(e, t) {
|
|
1395
1610
|
e.push(t);
|
|
1396
1611
|
}
|
|
1397
|
-
function
|
|
1612
|
+
function Jn(e, t) {
|
|
1398
1613
|
e.splice(t, 1);
|
|
1399
1614
|
}
|
|
1400
|
-
function
|
|
1401
|
-
return
|
|
1615
|
+
function Hn(e) {
|
|
1616
|
+
return Qn(e) ? Object.keys(e).length : 0;
|
|
1402
1617
|
}
|
|
1403
|
-
function
|
|
1404
|
-
return
|
|
1618
|
+
function zn(e) {
|
|
1619
|
+
return Xn(e) ? e.length : 0;
|
|
1405
1620
|
}
|
|
1406
|
-
function
|
|
1407
|
-
return
|
|
1621
|
+
function qn(e) {
|
|
1622
|
+
return Qn(e) ? Object.keys(e).length : Xn(e) ? e.length : Zn(e) && e.length > 0 ? 1 : 0;
|
|
1408
1623
|
}
|
|
1409
|
-
function
|
|
1624
|
+
function Qn(e) {
|
|
1410
1625
|
return null !== e && "object" == typeof e && !Array.isArray(e);
|
|
1411
1626
|
}
|
|
1412
|
-
function
|
|
1627
|
+
function Xn(e) {
|
|
1413
1628
|
return Array.isArray(e);
|
|
1414
1629
|
}
|
|
1415
|
-
function
|
|
1630
|
+
function Zn(e) {
|
|
1416
1631
|
return "string" == typeof e;
|
|
1417
1632
|
}
|
|
1418
|
-
function
|
|
1633
|
+
function er(e) {
|
|
1419
1634
|
return "number" == typeof e && Number.isFinite(e);
|
|
1420
1635
|
}
|
|
1421
|
-
function
|
|
1636
|
+
function tr(e) {
|
|
1422
1637
|
return "boolean" == typeof e;
|
|
1423
1638
|
}
|
|
1424
|
-
function
|
|
1639
|
+
function nr(e) {
|
|
1425
1640
|
return null == e;
|
|
1426
1641
|
}
|
|
1427
|
-
function
|
|
1642
|
+
function rr(e) {
|
|
1428
1643
|
return "function" == typeof e;
|
|
1429
1644
|
}
|
|
1430
|
-
function
|
|
1431
|
-
return e instanceof
|
|
1645
|
+
function lr(e) {
|
|
1646
|
+
return e instanceof S;
|
|
1432
1647
|
}
|
|
1433
|
-
function
|
|
1434
|
-
return !
|
|
1648
|
+
function or(e) {
|
|
1649
|
+
return !Zn(e) || 0 === e.length;
|
|
1435
1650
|
}
|
|
1436
|
-
function
|
|
1437
|
-
return
|
|
1651
|
+
function sr(e) {
|
|
1652
|
+
return er(e) ? Boolean(e) : /^\s*(true|1|on)\s*$/i.test(e);
|
|
1438
1653
|
}
|
|
1439
|
-
function
|
|
1654
|
+
function ir(e, t) {
|
|
1440
1655
|
return e === t ? 0 : e > t ? 1 : -1;
|
|
1441
1656
|
}
|
|
1442
|
-
function
|
|
1657
|
+
function _r(e, t) {
|
|
1443
1658
|
let n = e.toLowerCase(), r = t.toLowerCase();
|
|
1444
1659
|
return n === r ? 0 : n > r ? 1 : -1;
|
|
1445
1660
|
}
|
|
1446
|
-
function
|
|
1447
|
-
if (
|
|
1448
|
-
if (
|
|
1661
|
+
function ar(e, t) {
|
|
1662
|
+
if (Qn(e) || Qn(t) || Xn(e) || Xn(t)) return 0;
|
|
1663
|
+
if (er(e) || er(t)) {
|
|
1449
1664
|
let n = Number(e), r = Number(t);
|
|
1450
1665
|
return n > r ? 1 : n < r ? -1 : 0;
|
|
1451
1666
|
}
|
|
1452
|
-
if (
|
|
1667
|
+
if (tr(e) || tr(t)) {
|
|
1453
1668
|
let n = Number(e), r = Number(t);
|
|
1454
1669
|
return n > r ? 1 : n < r ? -1 : 0;
|
|
1455
1670
|
}
|
|
1456
|
-
return
|
|
1671
|
+
return ir(String(e), String(t));
|
|
1457
1672
|
}
|
|
1458
|
-
function
|
|
1459
|
-
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);
|
|
1460
1675
|
else "string" == typeof t && delete e[t];
|
|
1461
1676
|
else for (const n of Object.keys(t)) delete e[n];
|
|
1462
1677
|
}
|
|
1463
|
-
function
|
|
1678
|
+
function cr(e, t) {
|
|
1464
1679
|
return !(!(t in e) || !e.hasOwnProperty(t));
|
|
1465
1680
|
}
|
|
1466
|
-
function
|
|
1467
|
-
e && !
|
|
1681
|
+
function fr(e, t, n, r) {
|
|
1682
|
+
e && !lr(e) && pn("GObj bad instanceof");
|
|
1468
1683
|
const l = e ? `${et(e)}: ` : "";
|
|
1469
|
-
if (!
|
|
1470
|
-
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)}`);
|
|
1471
1686
|
let o = n.split("`"), s = o.length;
|
|
1472
1687
|
for (let e = 0; e < s - 1; e++) {
|
|
1473
|
-
if (null == (t = t[o[e]])) return void (r &&
|
|
1474
|
-
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}'`);
|
|
1475
1690
|
}
|
|
1476
1691
|
let i = t[o[s - 1]];
|
|
1477
|
-
return void 0 === i && r &&
|
|
1692
|
+
return void 0 === i && r && pn(`${l}path not found: '${n}'`), i;
|
|
1478
1693
|
}
|
|
1479
|
-
function
|
|
1480
|
-
e && !
|
|
1694
|
+
function gr(e, t, n) {
|
|
1695
|
+
e && !lr(e) && pn("GObj bad instanceof");
|
|
1481
1696
|
let [r, l] = function(e, t) {
|
|
1482
1697
|
let n = e.lastIndexOf(t);
|
|
1483
1698
|
return -1 === n ? [e, ""] : [e.substring(0, n), e.substring(n + 1)];
|
|
1484
1699
|
}(n, "`");
|
|
1485
|
-
return
|
|
1700
|
+
return or(l) ? Wn(t, n) : Wn(fr(e, t, r, !0), l), 0;
|
|
1486
1701
|
}
|
|
1487
|
-
function
|
|
1488
|
-
e && !
|
|
1489
|
-
let o =
|
|
1490
|
-
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;
|
|
1491
1706
|
if (void 0 === o) {
|
|
1492
1707
|
if (i && t) {
|
|
1493
1708
|
let l = Boolean(r);
|
|
1494
|
-
return
|
|
1709
|
+
return yr(e, t, n, l), l;
|
|
1495
1710
|
}
|
|
1496
|
-
return s && (
|
|
1711
|
+
return s && (pn(`path not found: '${n}'`), Ln(t)), Boolean(r);
|
|
1497
1712
|
}
|
|
1498
1713
|
let u;
|
|
1499
|
-
if (
|
|
1500
|
-
else if (a &&
|
|
1501
|
-
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);
|
|
1502
1717
|
else {
|
|
1503
|
-
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));
|
|
1504
1719
|
u = !1;
|
|
1505
1720
|
}
|
|
1506
|
-
return _ &&
|
|
1721
|
+
return _ && gr(e, t, n), u;
|
|
1507
1722
|
}
|
|
1508
|
-
function
|
|
1509
|
-
e && !
|
|
1510
|
-
let o =
|
|
1511
|
-
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;
|
|
1512
1727
|
if (void 0 === o) {
|
|
1513
1728
|
if (i && t) {
|
|
1514
1729
|
let l = parseInt(r);
|
|
1515
|
-
return
|
|
1730
|
+
return yr(e, t, n, l), l;
|
|
1516
1731
|
}
|
|
1517
|
-
return s && (
|
|
1732
|
+
return s && (pn(`path not found: '${n}'`), Ln(t)), parseInt(r);
|
|
1518
1733
|
}
|
|
1519
1734
|
let u;
|
|
1520
|
-
if (
|
|
1735
|
+
if (er(o)) u = Math.trunc(o);
|
|
1521
1736
|
else {
|
|
1522
|
-
if (!a) return
|
|
1523
|
-
if (
|
|
1524
|
-
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) {
|
|
1525
1740
|
const t = /^\s*([+-]?)(0[xX][0-9a-fA-F]+|0[0-7]*|[1-9][0-9]*)/.exec(e);
|
|
1526
1741
|
if (!t) return 0;
|
|
1527
1742
|
let n, r = t[2];
|
|
1528
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;
|
|
1529
1744
|
}(o);
|
|
1530
1745
|
else {
|
|
1531
|
-
if (null !== o) return
|
|
1746
|
+
if (null !== o) return pn(`${e ? et(e) + ": " : ""}path MUST BE a simple json element: '${n}'`), Ln(t), 0;
|
|
1532
1747
|
u = 0;
|
|
1533
1748
|
}
|
|
1534
1749
|
}
|
|
1535
|
-
return _ &&
|
|
1750
|
+
return _ && gr(e, t, n), u;
|
|
1536
1751
|
}
|
|
1537
|
-
function
|
|
1538
|
-
e && !
|
|
1539
|
-
let o =
|
|
1540
|
-
const s = l && l &
|
|
1541
|
-
return void 0 === o ? i && t ? (
|
|
1542
|
-
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;
|
|
1543
1758
|
for (let e = 0; e < n.length - 1; e++) {
|
|
1544
|
-
if (!
|
|
1759
|
+
if (!Qn(r) && !Xn(r)) return !1;
|
|
1545
1760
|
r = r[n[e]];
|
|
1546
1761
|
}
|
|
1547
|
-
return !(!
|
|
1548
|
-
}(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);
|
|
1549
1764
|
}
|
|
1550
|
-
function
|
|
1551
|
-
e && !
|
|
1552
|
-
let o =
|
|
1553
|
-
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;
|
|
1554
1769
|
if (void 0 === o) {
|
|
1555
1770
|
if (i) {
|
|
1556
1771
|
let l = r;
|
|
1557
|
-
return
|
|
1772
|
+
return yr(e, t, n, l), l;
|
|
1558
1773
|
}
|
|
1559
|
-
return s && (
|
|
1774
|
+
return s && (pn(`path not found: '${n}'`), Ln(t)), r;
|
|
1560
1775
|
}
|
|
1561
|
-
return _ &&
|
|
1776
|
+
return _ && gr(e, t, n), o;
|
|
1562
1777
|
}
|
|
1563
|
-
function
|
|
1564
|
-
e && !
|
|
1565
|
-
let o =
|
|
1566
|
-
const s = l && l &
|
|
1567
|
-
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);
|
|
1568
1783
|
}
|
|
1569
|
-
function
|
|
1570
|
-
e && !
|
|
1571
|
-
let o =
|
|
1572
|
-
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;
|
|
1573
1788
|
if (void 0 === o) {
|
|
1574
1789
|
if (i) {
|
|
1575
1790
|
let l = r;
|
|
1576
|
-
return
|
|
1791
|
+
return yr(e, t, n, l), l;
|
|
1577
1792
|
}
|
|
1578
|
-
return s && (
|
|
1793
|
+
return s && (pn(`path not found: '${n}'`), Ln(t)), r;
|
|
1579
1794
|
}
|
|
1580
|
-
return _ &&
|
|
1795
|
+
return _ && gr(e, t, n), o;
|
|
1581
1796
|
}
|
|
1582
|
-
function
|
|
1583
|
-
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;
|
|
1584
1799
|
let l = n.split("`");
|
|
1585
1800
|
if (l.length <= 1) return t[n] = r, 0;
|
|
1586
1801
|
let o = l.length;
|
|
@@ -1590,40 +1805,40 @@
|
|
|
1590
1805
|
else {
|
|
1591
1806
|
let r = t[i];
|
|
1592
1807
|
if (void 0 === r) t[i] = {};
|
|
1593
|
-
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;
|
|
1594
1809
|
t = t[i];
|
|
1595
1810
|
}
|
|
1596
1811
|
}
|
|
1597
1812
|
return 0;
|
|
1598
1813
|
}
|
|
1599
|
-
function
|
|
1600
|
-
if (e && !
|
|
1601
|
-
let o =
|
|
1602
|
-
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);
|
|
1603
1818
|
}
|
|
1604
|
-
function
|
|
1819
|
+
function vr(e, t, r) {
|
|
1605
1820
|
let l = "", o = !1;
|
|
1606
|
-
if (
|
|
1821
|
+
if (Xn(t)) {
|
|
1607
1822
|
o = !1;
|
|
1608
1823
|
for (let s = 0; s < t.length; s++) {
|
|
1609
1824
|
let i = t[s];
|
|
1610
|
-
if (l =
|
|
1825
|
+
if (l = or(r) ? n("%s", r) : n("%s`%d", r, s), o = vr(e, i, l), o) break;
|
|
1611
1826
|
}
|
|
1612
|
-
} else if (
|
|
1827
|
+
} else if (Qn(t)) {
|
|
1613
1828
|
o = !0;
|
|
1614
1829
|
let s = Object.keys(t);
|
|
1615
1830
|
for (let i = 0; i < s.length; i++) {
|
|
1616
1831
|
let _ = s[i], a = t[_];
|
|
1617
|
-
if (l =
|
|
1618
|
-
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;
|
|
1619
1834
|
continue;
|
|
1620
1835
|
}
|
|
1621
|
-
let u =
|
|
1622
|
-
if (u || (u =
|
|
1836
|
+
let u = Er(0, e, l, 0, 0);
|
|
1837
|
+
if (u || (u = Mn(e, l)), !u) {
|
|
1623
1838
|
o = !1;
|
|
1624
1839
|
break;
|
|
1625
1840
|
}
|
|
1626
|
-
if (0 !==
|
|
1841
|
+
if (0 !== ar(u, a)) {
|
|
1627
1842
|
o = !1;
|
|
1628
1843
|
break;
|
|
1629
1844
|
}
|
|
@@ -1631,58 +1846,58 @@
|
|
|
1631
1846
|
}
|
|
1632
1847
|
return o;
|
|
1633
1848
|
}
|
|
1634
|
-
function
|
|
1635
|
-
return 0 ===
|
|
1849
|
+
function jr(e, t) {
|
|
1850
|
+
return 0 === qn(t) || vr(e, t, "");
|
|
1636
1851
|
}
|
|
1637
|
-
function
|
|
1638
|
-
e && !
|
|
1852
|
+
function Or(e, t, n, r) {
|
|
1853
|
+
e && !lr(e) && pn("GObj bad instanceof");
|
|
1639
1854
|
let l = {};
|
|
1640
|
-
if (
|
|
1855
|
+
if (Zn(n) && !or(n)) {
|
|
1641
1856
|
let o = n;
|
|
1642
|
-
t.hasOwnProperty(o) ? l[o] = t[o] : r &&
|
|
1643
|
-
} 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}`);
|
|
1644
1859
|
else {
|
|
1645
|
-
if (!(
|
|
1860
|
+
if (!(Xn(n) && zn(n) > 0)) return t;
|
|
1646
1861
|
for (let o = 0; o < n.length; o++) {
|
|
1647
1862
|
let s = n[o];
|
|
1648
|
-
t.hasOwnProperty(s) ? l[s] = t[s] : r &&
|
|
1863
|
+
t.hasOwnProperty(s) ? l[s] = t[s] : r && pn(`${et(e)}: key not found: ${s}`);
|
|
1649
1864
|
}
|
|
1650
1865
|
}
|
|
1651
1866
|
return l;
|
|
1652
1867
|
}
|
|
1653
|
-
function
|
|
1868
|
+
function Sr(e, t, n, r) {
|
|
1654
1869
|
let l = {};
|
|
1655
|
-
if (
|
|
1870
|
+
if (Fn(l, t), Zn(n) && !or(n)) {
|
|
1656
1871
|
let o = n;
|
|
1657
|
-
|
|
1658
|
-
} 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}`);
|
|
1659
1874
|
else {
|
|
1660
|
-
if (!(
|
|
1875
|
+
if (!(Xn(n) && zn(n) > 0)) return {};
|
|
1661
1876
|
for (let o = 0; o < n.length; o++) {
|
|
1662
1877
|
let s = n[o];
|
|
1663
|
-
t.hasOwnProperty(s) ?
|
|
1878
|
+
t.hasOwnProperty(s) ? Wn(l, s) : r && pn(`${et(e)}: key not found: ${s}`);
|
|
1664
1879
|
}
|
|
1665
1880
|
}
|
|
1666
1881
|
return l;
|
|
1667
1882
|
}
|
|
1668
|
-
function
|
|
1883
|
+
function wr(e, t, n = !1) {
|
|
1669
1884
|
if ("undefined" != typeof window && window.localStorage) try {
|
|
1670
1885
|
let r = window.localStorage.getItem(e);
|
|
1671
|
-
return null === r ? (n &&
|
|
1886
|
+
return null === r ? (n && Nr(e, t), t) : JSON.parse(r);
|
|
1672
1887
|
} catch (n) {
|
|
1673
1888
|
return window.console.warn(`Error reading localStorage key "${e}":`, n), t;
|
|
1674
1889
|
}
|
|
1675
1890
|
}
|
|
1676
|
-
function
|
|
1891
|
+
function Nr(e, t) {
|
|
1677
1892
|
if ("undefined" == typeof window || !window.localStorage) return 0;
|
|
1678
|
-
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;
|
|
1679
1894
|
try {
|
|
1680
1895
|
return window.localStorage.setItem(e, JSON.stringify(t)), 0;
|
|
1681
1896
|
} catch (t) {
|
|
1682
|
-
return
|
|
1897
|
+
return pn(`kw_set_local_storage_value(): cannot save "${e}" (storage full or blocked?): ${t && t.message ? t.message : t}`), -1;
|
|
1683
1898
|
}
|
|
1684
1899
|
}
|
|
1685
|
-
function
|
|
1900
|
+
function Rr(e) {
|
|
1686
1901
|
if ("undefined" != typeof window && window.localStorage) if (e) try {
|
|
1687
1902
|
window.localStorage.removeItem(e);
|
|
1688
1903
|
} catch (t) {
|
|
@@ -1690,46 +1905,46 @@
|
|
|
1690
1905
|
}
|
|
1691
1906
|
else window.console.warn(`Invalid key for localStorage removal: ${e}`);
|
|
1692
1907
|
}
|
|
1693
|
-
function
|
|
1694
|
-
if (
|
|
1695
|
-
if (
|
|
1908
|
+
function Dr(e, t) {
|
|
1909
|
+
if (nr(e) || nr(t)) return !0;
|
|
1910
|
+
if (Xn(e)) {
|
|
1696
1911
|
if (0 === e.length) return !0;
|
|
1697
1912
|
for (let n = 0; n < e.length; n++) if (e[n] === t) return !0;
|
|
1698
|
-
} else if (
|
|
1913
|
+
} else if (Qn(e)) {
|
|
1699
1914
|
if (0 === Object.keys(e).length) return !0;
|
|
1700
1915
|
for (let n in e) if (n === t) return !0;
|
|
1701
|
-
} else if (
|
|
1916
|
+
} else if (Zn(e) && e === t) return !0;
|
|
1702
1917
|
return !1;
|
|
1703
1918
|
}
|
|
1704
|
-
function
|
|
1705
|
-
if (e && !
|
|
1706
|
-
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);
|
|
1707
1922
|
let o = [];
|
|
1708
|
-
if (
|
|
1923
|
+
if (Xn(t)) for (let s = 0; s < t.length; s++) {
|
|
1709
1924
|
let i, _ = t[s];
|
|
1710
|
-
if (
|
|
1925
|
+
if (Qn(_)) i = pr(e, _, "id", "", 0);
|
|
1711
1926
|
else {
|
|
1712
|
-
if (!
|
|
1927
|
+
if (!Zn(_)) continue;
|
|
1713
1928
|
i = _;
|
|
1714
1929
|
}
|
|
1715
|
-
|
|
1930
|
+
Dr(n, i) && l(_, r) && o.push(_);
|
|
1716
1931
|
}
|
|
1717
1932
|
else {
|
|
1718
|
-
if (!
|
|
1933
|
+
if (!Qn(t)) return pn("kw_collect() BAD kw parameter"), null;
|
|
1719
1934
|
for (let e of Object.keys(t)) {
|
|
1720
1935
|
let s = t[e];
|
|
1721
|
-
|
|
1936
|
+
Dr(n, e) && l(s, r) && o.push(s);
|
|
1722
1937
|
}
|
|
1723
1938
|
}
|
|
1724
1939
|
return o;
|
|
1725
1940
|
}
|
|
1726
|
-
function
|
|
1941
|
+
function kr(e, t) {
|
|
1727
1942
|
if (!e) return -1;
|
|
1728
1943
|
for (let n = 0; n < e.length; n++) if (e[n] && e[n].id === t) return n;
|
|
1729
1944
|
return -1;
|
|
1730
1945
|
}
|
|
1731
|
-
function
|
|
1732
|
-
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;
|
|
1733
1948
|
let r = e.length;
|
|
1734
1949
|
if (n) {
|
|
1735
1950
|
t = t.toLowerCase();
|
|
@@ -1740,7 +1955,7 @@
|
|
|
1740
1955
|
} else for (let n = 0; n < r; n++) if (e[n] === t) return !0;
|
|
1741
1956
|
return !1;
|
|
1742
1957
|
}
|
|
1743
|
-
function
|
|
1958
|
+
function Ir(e, t) {
|
|
1744
1959
|
try {
|
|
1745
1960
|
let n = e.__md_iev__;
|
|
1746
1961
|
if (n) return n[t];
|
|
@@ -1748,35 +1963,35 @@
|
|
|
1748
1963
|
return;
|
|
1749
1964
|
}
|
|
1750
1965
|
}
|
|
1751
|
-
function
|
|
1966
|
+
function Cr(e, t, n) {
|
|
1752
1967
|
let r = e.__md_iev__;
|
|
1753
1968
|
r || (r = {}, e.__md_iev__ = r), r[t] = n;
|
|
1754
1969
|
}
|
|
1755
|
-
function
|
|
1756
|
-
if (!
|
|
1970
|
+
function Lr(e, t, n, r) {
|
|
1971
|
+
if (!lr(e)) return pn("gobj is not a GObj"), null;
|
|
1757
1972
|
if (!t) return;
|
|
1758
|
-
let l =
|
|
1759
|
-
l || (l = [],
|
|
1973
|
+
let l = Ir(t, n);
|
|
1974
|
+
l || (l = [], Cr(t, n, l));
|
|
1760
1975
|
try {
|
|
1761
|
-
|
|
1976
|
+
Xn(l) && l.unshift(r);
|
|
1762
1977
|
} catch (e) {
|
|
1763
|
-
|
|
1978
|
+
pn(e);
|
|
1764
1979
|
}
|
|
1765
1980
|
}
|
|
1766
|
-
function
|
|
1767
|
-
if (!
|
|
1768
|
-
if (!
|
|
1769
|
-
let l =
|
|
1770
|
-
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);
|
|
1771
1986
|
}
|
|
1772
|
-
function
|
|
1773
|
-
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;
|
|
1774
1989
|
}
|
|
1775
|
-
function
|
|
1776
|
-
return
|
|
1990
|
+
function Fr(e, t) {
|
|
1991
|
+
return pr(e, t, "__md_iev__`__msg_type__", "", 0);
|
|
1777
1992
|
}
|
|
1778
|
-
function
|
|
1779
|
-
void 0 !== n &&
|
|
1993
|
+
function Vr(e, t, n) {
|
|
1994
|
+
void 0 !== n && Zn(n) || (n = "");
|
|
1780
1995
|
for (let r of Object.keys(e)) {
|
|
1781
1996
|
if (!e.hasOwnProperty(r)) continue;
|
|
1782
1997
|
let l = (n.length ? "`" : "") + r;
|
|
@@ -1785,10 +2000,10 @@
|
|
|
1785
2000
|
r,
|
|
1786
2001
|
e[r],
|
|
1787
2002
|
n
|
|
1788
|
-
]),
|
|
2003
|
+
]), Qn(e[r]) && Vr(e[r], t, n), n = n.slice(0, -l.length);
|
|
1789
2004
|
}
|
|
1790
2005
|
}
|
|
1791
|
-
function
|
|
2006
|
+
function Gr(e, t, n, r) {
|
|
1792
2007
|
if (!e) return null;
|
|
1793
2008
|
let l, o = e.length;
|
|
1794
2009
|
for (l = 0; l < o; l++) {
|
|
@@ -1796,15 +2011,15 @@
|
|
|
1796
2011
|
if (o) {
|
|
1797
2012
|
let e = o.id;
|
|
1798
2013
|
if (e && e === n) return o;
|
|
1799
|
-
if (r &&
|
|
1800
|
-
let e =
|
|
2014
|
+
if (r && cr(o, t)) {
|
|
2015
|
+
let e = Gr(o[t], t, n, r);
|
|
1801
2016
|
if (e) return e;
|
|
1802
2017
|
}
|
|
1803
2018
|
}
|
|
1804
2019
|
}
|
|
1805
2020
|
return null;
|
|
1806
2021
|
}
|
|
1807
|
-
function
|
|
2022
|
+
function Mr(e) {
|
|
1808
2023
|
function t(e) {
|
|
1809
2024
|
let t = e.replace(/-/g, "+").replace(/_/g, "/");
|
|
1810
2025
|
switch (t.length % 4) {
|
|
@@ -1835,36 +2050,36 @@
|
|
|
1835
2050
|
signature: t(n[2])
|
|
1836
2051
|
};
|
|
1837
2052
|
}
|
|
1838
|
-
function
|
|
2053
|
+
function Wr(e) {
|
|
1839
2054
|
return null == e ? "" : String(e).replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """).replace(/'/g, "'");
|
|
1840
2055
|
}
|
|
1841
|
-
function
|
|
2056
|
+
function xr(e) {
|
|
1842
2057
|
const t = document.createElement("template");
|
|
1843
2058
|
return t.innerHTML = e.trim(), t.content.firstChild;
|
|
1844
2059
|
}
|
|
1845
|
-
function
|
|
2060
|
+
function Kr(e) {
|
|
1846
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();
|
|
1847
2062
|
return `${n}.${r}${l > 0 ? "-" : "+"}${t(Math.floor(Math.abs(l) / 60), 2)}${t(Math.abs(l) % 60, 2)}`;
|
|
1848
2063
|
}
|
|
1849
|
-
function
|
|
2064
|
+
function Yr(e, t) {
|
|
1850
2065
|
if (!e) throw "ERROR: index_in_list() list empty";
|
|
1851
2066
|
for (let n = 0; n < e.length; n++) if (t === e[n]) return n;
|
|
1852
2067
|
return -1;
|
|
1853
2068
|
}
|
|
1854
|
-
function
|
|
2069
|
+
function Br() {
|
|
1855
2070
|
let e = "";
|
|
1856
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;
|
|
1857
2072
|
}
|
|
1858
|
-
function
|
|
2073
|
+
function Jr(e) {
|
|
1859
2074
|
let t = null;
|
|
1860
2075
|
return "function" != typeof e && "object" != typeof e || (t = ("" + e).match(/function\s*([\w\$]*)\s*\(/)), null !== t ? t[1] + "()" : "";
|
|
1861
2076
|
}
|
|
1862
|
-
var
|
|
1863
|
-
function
|
|
2077
|
+
var Hr = 256, zr = 1e5;
|
|
2078
|
+
function qr(e) {
|
|
1864
2079
|
const t = String(e).replace(/`/g, "``");
|
|
1865
2080
|
return "[" === t[0] ? "[" + t : t;
|
|
1866
2081
|
}
|
|
1867
|
-
function
|
|
2082
|
+
function Qr(e) {
|
|
1868
2083
|
if ("string" != typeof e) return null;
|
|
1869
2084
|
let t = [], n = "";
|
|
1870
2085
|
for (let r = 0; r < e.length; r++) if ("`" !== e[r]) n += e[r];
|
|
@@ -1885,17 +2100,17 @@
|
|
|
1885
2100
|
return null !== t ? t : "[" === e[0] && "[" === e[1] ? e.slice(1) : e;
|
|
1886
2101
|
});
|
|
1887
2102
|
}
|
|
1888
|
-
function
|
|
2103
|
+
function Xr(e, t) {
|
|
1889
2104
|
return e === t || null !== e && null !== t && "object" == typeof e && "object" == typeof t && JSON.stringify(e) === JSON.stringify(t);
|
|
1890
2105
|
}
|
|
1891
|
-
function
|
|
2106
|
+
function Zr(e) {
|
|
1892
2107
|
return "persistent-attrs-" + et(e);
|
|
1893
2108
|
}
|
|
1894
|
-
function
|
|
1895
|
-
if (
|
|
2109
|
+
function el(e, t) {
|
|
2110
|
+
if (Zn(t)) {
|
|
1896
2111
|
if (-1 === t.indexOf("^")) {
|
|
1897
2112
|
let n, r, l = e.fkey;
|
|
1898
|
-
if (1 !==
|
|
2113
|
+
if (1 !== Hn(l)) return pn("bad fkey 1"), pn(e), pn(t), null;
|
|
1899
2114
|
for (const e of Object.keys(l)) {
|
|
1900
2115
|
n = e, r = l[e];
|
|
1901
2116
|
break;
|
|
@@ -1908,20 +2123,20 @@
|
|
|
1908
2123
|
}
|
|
1909
2124
|
{
|
|
1910
2125
|
let n = t.split("^");
|
|
1911
|
-
return 3 !== n.length ? (
|
|
2126
|
+
return 3 !== n.length ? (pn("bad fkey 2"), pn(e), pn(t), null) : {
|
|
1912
2127
|
topic_name: n[0],
|
|
1913
2128
|
id: n[1],
|
|
1914
2129
|
hook_name: n[2]
|
|
1915
2130
|
};
|
|
1916
2131
|
}
|
|
1917
2132
|
}
|
|
1918
|
-
return
|
|
2133
|
+
return Qn(t) ? {
|
|
1919
2134
|
topic_name: t.topic_name,
|
|
1920
2135
|
id: t.id,
|
|
1921
2136
|
hook_name: t.hook_name
|
|
1922
|
-
} : (
|
|
2137
|
+
} : (pn("bad fkey 3"), pn(e), pn(t), null);
|
|
1923
2138
|
}
|
|
1924
|
-
var
|
|
2139
|
+
var tl = [
|
|
1925
2140
|
"string",
|
|
1926
2141
|
"integer",
|
|
1927
2142
|
"object",
|
|
@@ -1931,7 +2146,7 @@
|
|
|
1931
2146
|
"real",
|
|
1932
2147
|
"boolean",
|
|
1933
2148
|
"blob"
|
|
1934
|
-
],
|
|
2149
|
+
], nl = [
|
|
1935
2150
|
"persistent",
|
|
1936
2151
|
"required",
|
|
1937
2152
|
"notnull",
|
|
@@ -1943,7 +2158,7 @@
|
|
|
1943
2158
|
"stats",
|
|
1944
2159
|
"rstats",
|
|
1945
2160
|
"pstats"
|
|
1946
|
-
],
|
|
2161
|
+
], rl = [
|
|
1947
2162
|
"hook",
|
|
1948
2163
|
"fkey",
|
|
1949
2164
|
"enum",
|
|
@@ -1972,7 +2187,7 @@
|
|
|
1972
2187
|
"coordinates",
|
|
1973
2188
|
"gbuffer"
|
|
1974
2189
|
];
|
|
1975
|
-
function
|
|
2190
|
+
function ll(e) {
|
|
1976
2191
|
let t = {
|
|
1977
2192
|
name: e.id,
|
|
1978
2193
|
header: e.header,
|
|
@@ -1991,7 +2206,7 @@
|
|
|
1991
2206
|
if (!e.flag) return t;
|
|
1992
2207
|
for (let n = 0; n < e.flag.length; n++) {
|
|
1993
2208
|
let r = e.flag[n];
|
|
1994
|
-
if (
|
|
2209
|
+
if (Ar(rl, r)) {
|
|
1995
2210
|
switch (r) {
|
|
1996
2211
|
case "enum":
|
|
1997
2212
|
t.enum_list = e.enum;
|
|
@@ -2005,7 +2220,7 @@
|
|
|
2005
2220
|
case "file": t.is_file = !0;
|
|
2006
2221
|
}
|
|
2007
2222
|
t.type = r;
|
|
2008
|
-
} else if (
|
|
2223
|
+
} else if (Ar(nl, r)) switch (r) {
|
|
2009
2224
|
case "writable":
|
|
2010
2225
|
t.is_writable = !0;
|
|
2011
2226
|
break;
|
|
@@ -2018,37 +2233,37 @@
|
|
|
2018
2233
|
}
|
|
2019
2234
|
return t.is_file && (t.type = "file"), t;
|
|
2020
2235
|
}
|
|
2021
|
-
var
|
|
2236
|
+
var ol = [
|
|
2022
2237
|
j(E.DTP_POINTER, "subscriber", 0, null, "Subscriber of output events"),
|
|
2023
2238
|
j(E.DTP_BOOLEAN, "periodic", 0, 0, "True for periodic timeouts"),
|
|
2024
2239
|
j(E.DTP_INTEGER, "msec", 0, 0, "Timeout in milliseconds"),
|
|
2025
2240
|
v()
|
|
2026
|
-
],
|
|
2241
|
+
], sl = {
|
|
2027
2242
|
periodic: !1,
|
|
2028
2243
|
msec: 0,
|
|
2029
2244
|
timer_id: -1
|
|
2030
|
-
},
|
|
2031
|
-
function
|
|
2245
|
+
}, il = null;
|
|
2246
|
+
function _l(e, t, n, r) {
|
|
2032
2247
|
let l = e.priv, o = l.periodic ? "EV_TIMEOUT_PERIODIC" : "EV_TIMEOUT";
|
|
2033
2248
|
return l.periodic && l.msec > 0 ? l.timer_id = setTimeout(function() {
|
|
2034
2249
|
Ft(e, "EV_TIMEOUT", {}, e);
|
|
2035
|
-
}, 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;
|
|
2036
2251
|
}
|
|
2037
|
-
var
|
|
2252
|
+
var al = {
|
|
2038
2253
|
mt_create: function(e) {
|
|
2039
2254
|
let t = e.priv;
|
|
2040
|
-
const n =
|
|
2041
|
-
n &&
|
|
2255
|
+
const n = Ot(e, "subscriber");
|
|
2256
|
+
n && Jt(e, null, {}, n), t.periodic = Tt(e, "periodic"), t.msec = vt(e, "msec");
|
|
2042
2257
|
},
|
|
2043
2258
|
mt_writing: function(e, t) {
|
|
2044
2259
|
let n = e.priv;
|
|
2045
2260
|
switch (t) {
|
|
2046
2261
|
case "periodic":
|
|
2047
|
-
n.periodic =
|
|
2262
|
+
n.periodic = Tt(e, "periodic");
|
|
2048
2263
|
break;
|
|
2049
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() {
|
|
2050
2265
|
Ft(e, "EV_TIMEOUT", {}, e);
|
|
2051
|
-
}, n.msec)), n.msec > 0 ? Ke(e) ||
|
|
2266
|
+
}, n.msec)), n.msec > 0 ? Ke(e) || Pe(e) : Ke(e) && Ve(e);
|
|
2052
2267
|
}
|
|
2053
2268
|
},
|
|
2054
2269
|
mt_start: function(e) {
|
|
@@ -2059,16 +2274,16 @@
|
|
|
2059
2274
|
},
|
|
2060
2275
|
mt_destroy: function(e) {}
|
|
2061
2276
|
};
|
|
2062
|
-
function
|
|
2063
|
-
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);
|
|
2064
2279
|
}
|
|
2065
|
-
function
|
|
2066
|
-
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);
|
|
2067
2282
|
}
|
|
2068
|
-
function
|
|
2069
|
-
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);
|
|
2070
2285
|
}
|
|
2071
|
-
var
|
|
2286
|
+
var gl = [
|
|
2072
2287
|
j(E.DTP_BOOLEAN, "changesLost", 0, !1, "Set true to warn about leaving page"),
|
|
2073
2288
|
j(E.DTP_BOOLEAN, "browser_beforeunload", 0, !1, "Set true to refreshing browser"),
|
|
2074
2289
|
j(E.DTP_STRING, "__username__", 0, "", "Username"),
|
|
@@ -2082,77 +2297,77 @@
|
|
|
2082
2297
|
j(E.DTP_STRING, "yuno_version", 0, "", "Yuno version (APP_VERSION)"),
|
|
2083
2298
|
j(E.DTP_STRING, "yuneta_version", 0, s, "Yuneta version"),
|
|
2084
2299
|
j(E.DTP_LIST, "required_services", 0, "[]", "Required services"),
|
|
2085
|
-
j(E.DTP_DICT, "trace_levels",
|
|
2086
|
-
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"),
|
|
2087
2302
|
j(E.DTP_POINTER, "trace_ievent_callback", 0, null, "Where the traffic trace goes (C_IEVENT_CLI levels ievents/ievents2); console when null"),
|
|
2088
2303
|
j(E.DTP_BOOLEAN, "developer", 0, !1, "Developer mode enabled"),
|
|
2089
2304
|
j(E.DTP_INTEGER, "periodic_timeout", 0, "1000", "Timeout periodic, in miliseconds."),
|
|
2090
2305
|
v()
|
|
2091
|
-
],
|
|
2092
|
-
function
|
|
2306
|
+
], dl = { gobj_timer: null }, bl = null;
|
|
2307
|
+
function pl(e, t, n, r) {
|
|
2093
2308
|
let l = Et(e, t);
|
|
2094
|
-
return
|
|
2309
|
+
return Qn(l) || (l = {}), l[n] = r, St(e, t, l), $e(e, t);
|
|
2095
2310
|
}
|
|
2096
|
-
function
|
|
2311
|
+
function ml(e) {
|
|
2097
2312
|
if (!0 === e || !1 === e) return e;
|
|
2098
2313
|
let t = String(null == e ? "" : e).toLowerCase();
|
|
2099
2314
|
return "true" === t || "set" === t || "false" !== t && "reset" !== t && ("" === t || isNaN(Number(t)) ? null : !!Number(t));
|
|
2100
2315
|
}
|
|
2101
|
-
function
|
|
2102
|
-
return `${
|
|
2316
|
+
function hl() {
|
|
2317
|
+
return `${qe()}^${ze()}`;
|
|
2103
2318
|
}
|
|
2104
|
-
function
|
|
2105
|
-
return
|
|
2319
|
+
function El(e, t, n, r) {
|
|
2320
|
+
return Qt(e, t, n), 0;
|
|
2106
2321
|
}
|
|
2107
|
-
var
|
|
2322
|
+
var yl = {
|
|
2108
2323
|
mt_create: function(e) {
|
|
2109
2324
|
let t = e.priv;
|
|
2110
|
-
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) {
|
|
2111
2326
|
let t = Et(e, "trace_levels");
|
|
2112
|
-
if (!
|
|
2327
|
+
if (!Qn(t)) return 0;
|
|
2113
2328
|
let n = t.__global_trace__;
|
|
2114
|
-
if (
|
|
2329
|
+
if (Xn(n)) {
|
|
2115
2330
|
Z(4294967295, !1);
|
|
2116
2331
|
for (let e of n) Q(e, !0);
|
|
2117
2332
|
}
|
|
2118
2333
|
for (const [n, r] of Object.entries(t)) {
|
|
2119
|
-
let t =
|
|
2120
|
-
if (t) if (
|
|
2334
|
+
let t = Oe(n);
|
|
2335
|
+
if (t) if (Xn(r)) {
|
|
2121
2336
|
se(t, null, !1);
|
|
2122
2337
|
for (let e of r) se(t, e, !0);
|
|
2123
|
-
} else
|
|
2338
|
+
} else pn(`${Xe(e)}: trace_levels of ${n} MUST be a list`);
|
|
2124
2339
|
}
|
|
2125
2340
|
}(e), function(e) {
|
|
2126
2341
|
let t = Et(e, "no_trace_levels");
|
|
2127
|
-
if (!
|
|
2342
|
+
if (!Qn(t)) return 0;
|
|
2128
2343
|
let n = t.__global_no_trace__;
|
|
2129
|
-
if (
|
|
2344
|
+
if (Xn(n)) {
|
|
2130
2345
|
ee(4294967295, !1);
|
|
2131
2346
|
for (let e of n) X(e, !0);
|
|
2132
2347
|
}
|
|
2133
2348
|
for (const [n, r] of Object.entries(t)) {
|
|
2134
|
-
let t =
|
|
2135
|
-
if (t) if (
|
|
2349
|
+
let t = Oe(n);
|
|
2350
|
+
if (t) if (Xn(r)) {
|
|
2136
2351
|
ie(t, null, !1);
|
|
2137
2352
|
for (let e of r) ie(t, e, !0);
|
|
2138
|
-
} else
|
|
2353
|
+
} else pn(`${Xe(e)}: no_trace_levels of ${n} MUST be a list`);
|
|
2139
2354
|
}
|
|
2140
2355
|
}(e);
|
|
2141
2356
|
},
|
|
2142
2357
|
mt_writing: function(e, t) {},
|
|
2143
2358
|
mt_start: function(e) {
|
|
2144
|
-
return
|
|
2359
|
+
return cl(e.priv.gobj_timer, e.priv.periodic_timeout), 0;
|
|
2145
2360
|
},
|
|
2146
2361
|
mt_stop: function(e) {
|
|
2147
|
-
return
|
|
2362
|
+
return fl(e.priv.gobj_timer), Me(e), 0;
|
|
2148
2363
|
},
|
|
2149
2364
|
mt_destroy: function(e) {},
|
|
2150
2365
|
mt_play: function(e) {
|
|
2151
|
-
let t =
|
|
2152
|
-
return Ke(t) ||
|
|
2366
|
+
let t = Se();
|
|
2367
|
+
return Ke(t) || Pe(t), Je(t) || We(t), 0;
|
|
2153
2368
|
},
|
|
2154
2369
|
mt_pause: function(e) {
|
|
2155
|
-
return xe(
|
|
2370
|
+
return xe(Se()), 0;
|
|
2156
2371
|
},
|
|
2157
2372
|
mt_command_parser: function(e, t, n, r) {
|
|
2158
2373
|
switch (n = n || {}, t) {
|
|
@@ -2160,49 +2375,49 @@
|
|
|
2160
2375
|
case "get-global-no-trace": return l(0, 0, null, null, ne());
|
|
2161
2376
|
case "set-global-trace":
|
|
2162
2377
|
case "set-global-no-trace": {
|
|
2163
|
-
let r = "set-global-no-trace" === t, o = n.level, s =
|
|
2164
|
-
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);
|
|
2165
2380
|
}
|
|
2166
2381
|
case "get-gclass-trace":
|
|
2167
2382
|
case "get-gclass-no-trace":
|
|
2168
2383
|
case "set-gclass-trace":
|
|
2169
2384
|
case "set-gclass-no-trace": {
|
|
2170
|
-
let r = t.indexOf("no-trace") >= 0, o = n.gclass_name || n.gclass || "", s =
|
|
2171
|
-
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);
|
|
2172
2387
|
if (0 === t.indexOf("get-")) return l(0, 0, null, null, r ? oe(s) : re(s));
|
|
2173
|
-
let i = n.level, _ =
|
|
2174
|
-
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);
|
|
2175
2390
|
}
|
|
2176
|
-
default: return l(0, -1, `${
|
|
2391
|
+
default: return l(0, -1, `${hl()}: command not available: ${t}`, null, null);
|
|
2177
2392
|
}
|
|
2178
2393
|
}
|
|
2179
2394
|
};
|
|
2180
|
-
var
|
|
2181
|
-
j(E.DTP_STRING, "wanted_yuno_role",
|
|
2182
|
-
j(E.DTP_STRING, "wanted_yuno_name",
|
|
2183
|
-
j(E.DTP_STRING, "wanted_yuno_service",
|
|
2184
|
-
j(E.DTP_STRING, "remote_yuno_role",
|
|
2185
|
-
j(E.DTP_STRING, "remote_yuno_name",
|
|
2186
|
-
j(E.DTP_STRING, "remote_yuno_service",
|
|
2187
|
-
j(E.DTP_STRING, "url",
|
|
2188
|
-
j(E.DTP_STRING, "jwt",
|
|
2189
|
-
j(E.DTP_STRING, "cert_pem",
|
|
2190
|
-
j(E.DTP_JSON, "extra_info",
|
|
2191
|
-
j(E.DTP_LIST, "required_services",
|
|
2192
|
-
j(E.DTP_INTEGER, "timeout_retry",
|
|
2193
|
-
j(E.DTP_INTEGER, "timeout_retry_max",
|
|
2194
|
-
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"),
|
|
2195
2410
|
j(E.DTP_POINTER, "subscriber", 0, 0, "subscriber of output-events. If null then subscriber is the parent"),
|
|
2196
2411
|
v()
|
|
2197
|
-
],
|
|
2412
|
+
], jl = [
|
|
2198
2413
|
["ievents", "Trace inter-events with metadata of kw"],
|
|
2199
2414
|
["ievents2", "Trace inter-events with full kw"],
|
|
2200
2415
|
["identity-card", "Trace identity_card messages"]
|
|
2201
2416
|
];
|
|
2202
|
-
function
|
|
2417
|
+
function Ol(e) {
|
|
2203
2418
|
return !!(3 & x(e));
|
|
2204
2419
|
}
|
|
2205
|
-
var
|
|
2420
|
+
var Sl = {
|
|
2206
2421
|
url: null,
|
|
2207
2422
|
remote_yuno_name: null,
|
|
2208
2423
|
remote_yuno_role: null,
|
|
@@ -2212,16 +2427,16 @@
|
|
|
2212
2427
|
websocket: null,
|
|
2213
2428
|
inside_on_open: !1,
|
|
2214
2429
|
retry_ms: 0
|
|
2215
|
-
},
|
|
2216
|
-
function
|
|
2217
|
-
e.priv.websocket &&
|
|
2430
|
+
}, wl = null;
|
|
2431
|
+
function Nl(e) {
|
|
2432
|
+
e.priv.websocket && pn("Websocket ALREADY setup");
|
|
2218
2433
|
const t = jt(e, "url");
|
|
2219
2434
|
let n;
|
|
2220
|
-
|
|
2435
|
+
hn(`====> Starting WebSocket to '${t}' (${et(e)})`);
|
|
2221
2436
|
try {
|
|
2222
2437
|
n = new WebSocket(t);
|
|
2223
2438
|
} catch (n) {
|
|
2224
|
-
return
|
|
2439
|
+
return pn(`${et(e)}: Cannot open WebSocket to '${t}', Error: ${n.message}`), null;
|
|
2225
2440
|
}
|
|
2226
2441
|
return n ? (n.onopen = () => {
|
|
2227
2442
|
Ft(e, "EV_ON_OPEN", { url: t }, e);
|
|
@@ -2231,72 +2446,72 @@
|
|
|
2231
2446
|
data: n.data
|
|
2232
2447
|
}, e);
|
|
2233
2448
|
}, n.onclose = (n) => {
|
|
2234
|
-
ot(e) || (
|
|
2449
|
+
ot(e) || (Tt(He(), "browser_beforeunload") ? mn("Close websocket by unload page") : Ft(e, "EV_ON_CLOSE", {
|
|
2235
2450
|
url: t,
|
|
2236
2451
|
e: n
|
|
2237
2452
|
}, e));
|
|
2238
|
-
}, n) : (
|
|
2453
|
+
}, n) : (pn(`${et(e)}: Failed to initialize WebSocket.`), null);
|
|
2239
2454
|
}
|
|
2240
|
-
function
|
|
2455
|
+
function Rl(e, t = 1e3, n = "") {
|
|
2241
2456
|
let r = e.priv, l = r.websocket;
|
|
2242
2457
|
if (r.websocket = null, l && l.readyState !== WebSocket.CLOSED && l.readyState !== WebSocket.CLOSING) {
|
|
2243
|
-
|
|
2458
|
+
hn(`Closing WebSocket (Code: ${t}, Reason: "${n}")`);
|
|
2244
2459
|
try {
|
|
2245
2460
|
l.close(t, n);
|
|
2246
2461
|
} catch (e) {
|
|
2247
|
-
|
|
2462
|
+
pn("Error closing WebSocket:", e.message);
|
|
2248
2463
|
}
|
|
2249
|
-
} else
|
|
2464
|
+
} else mn("WebSocket is already closed or in the process of closing.");
|
|
2250
2465
|
}
|
|
2251
|
-
function
|
|
2252
|
-
let r =
|
|
2466
|
+
function Dl(e, t, n) {
|
|
2467
|
+
let r = Kr();
|
|
2253
2468
|
try {
|
|
2254
|
-
|
|
2469
|
+
hn("\n" + r + " " + t + "\n"), Ln(n);
|
|
2255
2470
|
} catch (e) {
|
|
2256
|
-
|
|
2471
|
+
hn("ERROR in trace_inter_event: " + e);
|
|
2257
2472
|
}
|
|
2258
2473
|
}
|
|
2259
|
-
var
|
|
2474
|
+
var $l = class {
|
|
2260
2475
|
constructor(e, t) {
|
|
2261
2476
|
this.event = e, this.kw = t || {};
|
|
2262
2477
|
}
|
|
2263
2478
|
};
|
|
2264
|
-
function
|
|
2479
|
+
function kl(e, t, n, r) {
|
|
2265
2480
|
return function(e, t) {
|
|
2266
2481
|
let n = e.priv, r = JSON.stringify(t);
|
|
2267
|
-
if (
|
|
2482
|
+
if (Ol(e)) {
|
|
2268
2483
|
let n = jt(e, "url"), l = Xe(He()) + " ==> " + n, o = Et(He(), "trace_ievent_callback");
|
|
2269
|
-
o ? o(l, t, 1, r.length) :
|
|
2484
|
+
o ? o(l, t, 1, r.length) : Dl(0, l, t);
|
|
2270
2485
|
}
|
|
2271
|
-
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;
|
|
2272
2487
|
try {
|
|
2273
2488
|
n.websocket.send(r);
|
|
2274
2489
|
} catch (t) {
|
|
2275
|
-
|
|
2490
|
+
pn(`${et(e)}: send_iev(): ${t}`);
|
|
2276
2491
|
}
|
|
2277
2492
|
return 0;
|
|
2278
2493
|
}(e, function(e, t) {
|
|
2279
|
-
return
|
|
2494
|
+
return or(e) ? (pn("iev_create() event NULL"), null) : new $l(e, t);
|
|
2280
2495
|
}(t, n));
|
|
2281
2496
|
}
|
|
2282
|
-
function
|
|
2283
|
-
return
|
|
2497
|
+
function Al(e, t, n) {
|
|
2498
|
+
return or(n) && (n = jt(e, "wanted_yuno_service")), {
|
|
2284
2499
|
dst_yuno: jt(e, "wanted_yuno_name"),
|
|
2285
2500
|
dst_role: jt(e, "wanted_yuno_role"),
|
|
2286
2501
|
dst_service: n,
|
|
2287
|
-
src_yuno:
|
|
2288
|
-
src_role:
|
|
2502
|
+
src_yuno: ze(),
|
|
2503
|
+
src_role: qe(),
|
|
2289
2504
|
src_service: t,
|
|
2290
|
-
host:
|
|
2505
|
+
host: Br()
|
|
2291
2506
|
};
|
|
2292
2507
|
}
|
|
2293
|
-
function
|
|
2508
|
+
function Il(e) {
|
|
2294
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");
|
|
2295
2510
|
i && i.length || (i = Et(He(), "required_services"));
|
|
2296
2511
|
let _ = {
|
|
2297
|
-
yuno_role:
|
|
2512
|
+
yuno_role: qe(),
|
|
2298
2513
|
yuno_id: Qe(),
|
|
2299
|
-
yuno_name:
|
|
2514
|
+
yuno_name: ze(),
|
|
2300
2515
|
yuno_tag: o,
|
|
2301
2516
|
yuno_version: r,
|
|
2302
2517
|
yuno_release: l,
|
|
@@ -2308,34 +2523,34 @@
|
|
|
2308
2523
|
username: jt(He(), "__username__"),
|
|
2309
2524
|
launch_id: 0,
|
|
2310
2525
|
yuno_startdate: jt(He(), "start_date"),
|
|
2311
|
-
id:
|
|
2526
|
+
id: Br(),
|
|
2312
2527
|
user_agent: "undefined" != typeof window ? window.navigator.userAgent : "",
|
|
2313
2528
|
language: "undefined" != typeof window ? window.navigator.language : "",
|
|
2314
2529
|
required_services: i
|
|
2315
2530
|
};
|
|
2316
|
-
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", _);
|
|
2317
2532
|
}
|
|
2318
|
-
function
|
|
2319
|
-
if (
|
|
2533
|
+
function Cl(e, t) {
|
|
2534
|
+
if (or(t.event)) return -1;
|
|
2320
2535
|
let n = {}, r = t.__global__, l = t.__config__, o = t.__filter__, s = t.__service__, i = t.subscriber;
|
|
2321
2536
|
l && (n.__config__ = l), r && (n.__global__ = r), o && (n.__filter__ = o);
|
|
2322
|
-
return
|
|
2537
|
+
return Lr(e, n, Tl, Al(e, Xe(i), s)), Ur(e, n, "__subscribing__"), kl(e, t.event, n);
|
|
2323
2538
|
}
|
|
2324
|
-
function
|
|
2539
|
+
function Ll(e, t, n, r) {
|
|
2325
2540
|
let l = e.priv;
|
|
2326
|
-
return Ke(e) && (l.websocket =
|
|
2541
|
+
return Ke(e) && (l.websocket = Nl(e)), 0;
|
|
2327
2542
|
}
|
|
2328
|
-
function
|
|
2329
|
-
return
|
|
2543
|
+
function Pl(e, t, n, r) {
|
|
2544
|
+
return hn("Websocket opened: " + e.priv.url), Il(e), 0;
|
|
2330
2545
|
}
|
|
2331
|
-
function
|
|
2546
|
+
function Ul(e, t, n, r) {
|
|
2332
2547
|
let l = e.priv, o = n.e, s = n.url;
|
|
2333
|
-
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", {
|
|
2334
2549
|
url: s,
|
|
2335
2550
|
remote_yuno_name: l.remote_yuno_name,
|
|
2336
2551
|
remote_yuno_role: l.remote_yuno_role,
|
|
2337
2552
|
remote_yuno_service: l.remote_yuno_service
|
|
2338
|
-
})) : (
|
|
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", {
|
|
2339
2554
|
url: s,
|
|
2340
2555
|
remote_yuno_name: l.remote_yuno_name,
|
|
2341
2556
|
remote_yuno_role: l.remote_yuno_role,
|
|
@@ -2343,7 +2558,7 @@
|
|
|
2343
2558
|
code: o.code,
|
|
2344
2559
|
reason: o.reason,
|
|
2345
2560
|
was_clean: o.wasClean
|
|
2346
|
-
})), Ke(e) &&
|
|
2561
|
+
})), Ke(e) && ul(l.gobj_timer, function(e) {
|
|
2347
2562
|
let t = e.priv, n = vt(e, "timeout_retry"), r = vt(e, "timeout_retry_max");
|
|
2348
2563
|
r < n && (r = n);
|
|
2349
2564
|
t.retry_ms = t.retry_ms ? Math.min(2 * t.retry_ms, r) : n;
|
|
@@ -2351,17 +2566,17 @@
|
|
|
2351
2566
|
return Math.max(1, Math.round(o));
|
|
2352
2567
|
}(e)), 0;
|
|
2353
2568
|
}
|
|
2354
|
-
function
|
|
2355
|
-
return
|
|
2569
|
+
function Fl(e, t, n, r) {
|
|
2570
|
+
return Il(e), 0;
|
|
2356
2571
|
}
|
|
2357
|
-
function
|
|
2572
|
+
function Vl(e, t, n, r) {
|
|
2358
2573
|
let l = e.priv;
|
|
2359
|
-
|
|
2360
|
-
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", "");
|
|
2361
2576
|
Dt(e, "remote_yuno_name", s), Dt(e, "remote_yuno_role", i), Dt(e, "remote_yuno_service", _);
|
|
2362
|
-
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", {});
|
|
2363
2578
|
if (a < 0) {
|
|
2364
|
-
|
|
2579
|
+
Rl(e);
|
|
2365
2580
|
let t = {
|
|
2366
2581
|
url: jt(e, "url"),
|
|
2367
2582
|
result: a,
|
|
@@ -2371,7 +2586,7 @@
|
|
|
2371
2586
|
remote_yuno_role: i,
|
|
2372
2587
|
remote_yuno_service: _
|
|
2373
2588
|
};
|
|
2374
|
-
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);
|
|
2375
2590
|
} else {
|
|
2376
2591
|
if ($t(e, "ST_SESSION"), l.inside_on_open = !0, l.retry_ms = 0, !l.inform_on_close) {
|
|
2377
2592
|
l.inform_on_close = !0;
|
|
@@ -2382,69 +2597,69 @@
|
|
|
2382
2597
|
remote_yuno_service: _,
|
|
2383
2598
|
services_roles: f
|
|
2384
2599
|
};
|
|
2385
|
-
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);
|
|
2386
2601
|
}
|
|
2387
2602
|
l.inside_on_open = !1, function(e) {
|
|
2388
|
-
let t =
|
|
2389
|
-
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]);
|
|
2390
2605
|
}(e);
|
|
2391
2606
|
}
|
|
2392
2607
|
return 0;
|
|
2393
2608
|
}
|
|
2394
|
-
function
|
|
2609
|
+
function Gl(e, t, n, r) {
|
|
2395
2610
|
let l = e.priv.url, o = function(e, t) {
|
|
2396
2611
|
let n;
|
|
2397
2612
|
try {
|
|
2398
2613
|
n = JSON.parse(t);
|
|
2399
2614
|
} catch (e) {
|
|
2400
|
-
return
|
|
2615
|
+
return pn("parsing inter_event json: " + e), null;
|
|
2401
2616
|
}
|
|
2402
|
-
if (!(n instanceof Object)) return
|
|
2617
|
+
if (!(n instanceof Object)) return pn("parsing inter_event: websocket data not a json object"), null;
|
|
2403
2618
|
let r = n.event;
|
|
2404
|
-
if (!r) return
|
|
2405
|
-
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;
|
|
2406
2621
|
let l = n.kw;
|
|
2407
2622
|
return l ? l instanceof Object ? {
|
|
2408
2623
|
event: r,
|
|
2409
2624
|
kw: l || {}
|
|
2410
|
-
} : (
|
|
2625
|
+
} : (pn("parsing inter_event: kw not a json object"), null) : (pn("parsing inter_kw: no kw"), null);
|
|
2411
2626
|
}(0, n.data);
|
|
2412
|
-
if (
|
|
2627
|
+
if (Ol(e)) {
|
|
2413
2628
|
let e = Xe(He()) + " <== " + l, t = n.data.length, r = Et(He(), "trace_ievent_callback");
|
|
2414
|
-
r ? r(e, o, 2, t) :
|
|
2629
|
+
r ? r(e, o, 2, t) : Dl(0, e, o);
|
|
2415
2630
|
}
|
|
2416
2631
|
let s = o.event, i = o.kw;
|
|
2417
|
-
if ("ST_SESSION" !==
|
|
2632
|
+
if ("ST_SESSION" !== kt(e)) {
|
|
2418
2633
|
if (It(e, s, D.EVF_PUBLIC_EVENT)) {
|
|
2419
2634
|
if (!(Ft(e, s, i, e) < 0)) return 0;
|
|
2420
|
-
} else
|
|
2421
|
-
return
|
|
2635
|
+
} else pn(`${et(e)}: event UNKNOWN in not-session state ${s}`);
|
|
2636
|
+
return Rl(e), -1;
|
|
2422
2637
|
}
|
|
2423
2638
|
o = null;
|
|
2424
|
-
let _ =
|
|
2425
|
-
if (u.toLowerCase() !==
|
|
2426
|
-
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", "");
|
|
2427
2642
|
if ("__subscribing__" === _) return -1;
|
|
2428
2643
|
if ("__unsubscribing__" === _) return -1;
|
|
2429
2644
|
if (It(e, s, D.EVF_PUBLIC_EVENT)) return Ft(e, s, i, e), 0;
|
|
2430
|
-
if (!
|
|
2431
|
-
let t =
|
|
2432
|
-
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);
|
|
2433
2648
|
}
|
|
2434
|
-
return lt(e) ? Ft(nt(e), s, i, e) :
|
|
2649
|
+
return lt(e) ? Ft(nt(e), s, i, e) : Qt(e, s, i), 0;
|
|
2435
2650
|
}
|
|
2436
|
-
function
|
|
2651
|
+
function Ml(e, t, n, r) {
|
|
2437
2652
|
return 0;
|
|
2438
2653
|
}
|
|
2439
|
-
function
|
|
2654
|
+
function Wl(e, t, n, r) {
|
|
2440
2655
|
return 0;
|
|
2441
2656
|
}
|
|
2442
|
-
var
|
|
2657
|
+
var xl = {
|
|
2443
2658
|
mt_create: function(e) {
|
|
2444
2659
|
let t = e.priv;
|
|
2445
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);
|
|
2446
|
-
const n =
|
|
2447
|
-
n &&
|
|
2661
|
+
const n = Ot(e, "subscriber");
|
|
2662
|
+
n && Jt(e, null, {}, n);
|
|
2448
2663
|
},
|
|
2449
2664
|
mt_writing: function(e, t) {
|
|
2450
2665
|
let n = e.priv;
|
|
@@ -2463,55 +2678,55 @@
|
|
|
2463
2678
|
},
|
|
2464
2679
|
mt_start: function(e) {
|
|
2465
2680
|
let t = e.priv;
|
|
2466
|
-
return t.retry_ms = 0, t.websocket =
|
|
2681
|
+
return t.retry_ms = 0, t.websocket = Nl(e), 0;
|
|
2467
2682
|
},
|
|
2468
2683
|
mt_stop: function(e) {
|
|
2469
2684
|
let t = e.priv;
|
|
2470
|
-
return
|
|
2685
|
+
return fl(t.gobj_timer), t.websocket && Rl(e), 0;
|
|
2471
2686
|
},
|
|
2472
2687
|
mt_destroy: function(e) {},
|
|
2473
2688
|
mt_stats: function(e, t, n, r) {
|
|
2474
|
-
if ("ST_SESSION" !==
|
|
2689
|
+
if ("ST_SESSION" !== kt(e)) return pn("Not in session"), null;
|
|
2475
2690
|
n || (n = {});
|
|
2476
|
-
let l =
|
|
2477
|
-
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", {
|
|
2478
2693
|
stats: t,
|
|
2479
2694
|
kw: o
|
|
2480
|
-
}),
|
|
2695
|
+
}), Lr(e, n, Tl, l), n.__stats__ = t, Ur(e, n, "__stats__"), kl(e, "EV_MT_STATS", n, r), null;
|
|
2481
2696
|
},
|
|
2482
2697
|
mt_command_parser: function(e, t, n, r) {
|
|
2483
|
-
if ("ST_SESSION" !==
|
|
2698
|
+
if ("ST_SESSION" !== kt(e)) return pn("Not in session"), null;
|
|
2484
2699
|
n || (n = {});
|
|
2485
|
-
let l =
|
|
2486
|
-
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", {
|
|
2487
2702
|
command: t,
|
|
2488
2703
|
kw: o
|
|
2489
|
-
}),
|
|
2704
|
+
}), Lr(e, n, Tl, l), n.__command__ = t, Ur(e, n, "__command__"), kl(e, "EV_MT_COMMAND", n, r), null;
|
|
2490
2705
|
},
|
|
2491
2706
|
mt_inject_event: function(e, t, n, r) {
|
|
2492
|
-
if ("ST_SESSION" !==
|
|
2493
|
-
if (n
|
|
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));
|
|
2494
2709
|
else {
|
|
2495
|
-
let l =
|
|
2496
|
-
|
|
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);
|
|
2497
2712
|
}
|
|
2498
|
-
return
|
|
2713
|
+
return Ur(e, n, "__message__"), kl(e, t, n, r);
|
|
2499
2714
|
},
|
|
2500
2715
|
mt_subscription_added: function(e, t) {
|
|
2501
2716
|
let n = e.priv;
|
|
2502
|
-
return "ST_SESSION" ===
|
|
2717
|
+
return "ST_SESSION" === kt(e) && n.websocket ? n.inside_on_open ? 0 : Cl(e, t) : 0;
|
|
2503
2718
|
},
|
|
2504
2719
|
mt_subscription_deleted: function(e, t) {
|
|
2505
2720
|
let n = e.priv;
|
|
2506
|
-
if ("ST_SESSION" !==
|
|
2721
|
+
if ("ST_SESSION" !== kt(e) || !n.websocket) return 0;
|
|
2507
2722
|
if (n.inside_on_open) return 0;
|
|
2508
|
-
if (
|
|
2723
|
+
if (or(t.event)) return 0;
|
|
2509
2724
|
let r = {}, l = t.__global__, o = t.__config__, s = t.__filter__, i = t.__service__, _ = t.subscriber;
|
|
2510
2725
|
o && (r.__config__ = o), l && (r.__global__ = l), s && (r.__filter__ = s);
|
|
2511
|
-
return
|
|
2726
|
+
return Lr(e, r, Tl, Al(e, Xe(_), i)), Ur(e, r, "__unsubscribing__"), kl(e, t.event, r, e);
|
|
2512
2727
|
}
|
|
2513
2728
|
};
|
|
2514
|
-
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__", {
|
|
2515
2730
|
enumerable: !0,
|
|
2516
2731
|
get: function() {
|
|
2517
2732
|
return p;
|
|
@@ -2522,50 +2737,50 @@
|
|
|
2522
2737
|
return t;
|
|
2523
2738
|
}, e.build_stats_response = o, e.clean_name = function(e) {
|
|
2524
2739
|
return e.replace(/[?# ^:]/g, "_");
|
|
2525
|
-
}, 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) {
|
|
2526
2741
|
let [r, l, o, s] = t;
|
|
2527
|
-
if (!r) return void
|
|
2742
|
+
if (!r) return void pn("Tag must be a valid HTML element.");
|
|
2528
2743
|
let i = document.createElement(r), _ = "";
|
|
2529
2744
|
if (l && "object" == typeof l) for (let e of Object.keys(l)) if ("style" === e && "object" == typeof l[e]) {
|
|
2530
2745
|
let t = "";
|
|
2531
2746
|
for (const n of Object.keys(l[e])) t += `${n}: ${l[e][n]};`;
|
|
2532
2747
|
i.style.cssText = t;
|
|
2533
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]);
|
|
2534
|
-
if (
|
|
2749
|
+
if (Zn(o)) if (o = o.trim(), o.length > 0 && "<" === o[0]) i.appendChild(xr(o));
|
|
2535
2750
|
else if (n && _) i.textContent = n(_) || o;
|
|
2536
2751
|
else i.textContent = o;
|
|
2537
|
-
else if (
|
|
2538
|
-
if (o.length > 0) if (
|
|
2752
|
+
else if (Xn(o)) {
|
|
2753
|
+
if (o.length > 0) if (Zn(o[0])) i.appendChild(e(o, n));
|
|
2539
2754
|
else for (let t of o) Array.isArray(t) && t.length > 0 ? i.appendChild(e(t, n)) : t instanceof HTMLElement && i.appendChild(t);
|
|
2540
|
-
} 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));
|
|
2541
2756
|
if (s && "object" == typeof s) for (const e of Object.keys(s)) i.addEventListener(e, s[e]);
|
|
2542
2757
|
return i;
|
|
2543
|
-
}, e.createOneHtml =
|
|
2544
|
-
let n =
|
|
2545
|
-
return
|
|
2758
|
+
}, e.createOneHtml = xr, e.create_json_record = function(e, t) {
|
|
2759
|
+
let n = Pn(e);
|
|
2760
|
+
return Vn(n, t), n;
|
|
2546
2761
|
}, e.create_template_record = function(e, t) {
|
|
2547
2762
|
let n = {};
|
|
2548
2763
|
return t || (t = {}), Object.entries(e).forEach(([e, r]) => {
|
|
2549
2764
|
let l;
|
|
2550
|
-
|
|
2551
|
-
let o =
|
|
2765
|
+
Qn(r) && (l = r.default);
|
|
2766
|
+
let o = Er(null, t, e, l);
|
|
2552
2767
|
n[e] = o;
|
|
2553
2768
|
}), n;
|
|
2554
|
-
}, e.current_timestamp =
|
|
2555
|
-
let n =
|
|
2556
|
-
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;
|
|
2557
2772
|
}, e.db_load_persistent_attrs = function(e, t) {
|
|
2558
|
-
let n =
|
|
2559
|
-
if (r &&
|
|
2560
|
-
let l =
|
|
2561
|
-
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);
|
|
2562
2777
|
}
|
|
2563
2778
|
}, e.db_remove_persistent_attrs = function(e, t) {
|
|
2564
|
-
let n =
|
|
2565
|
-
0 ===
|
|
2779
|
+
let n = Sr(e, wr(Zr(e), null, !1), t, !1);
|
|
2780
|
+
0 === Hn(n) ? Rr(Zr(e)) : Nr(Zr(e), n);
|
|
2566
2781
|
}, e.db_save_persistent_attrs = function(e, t) {
|
|
2567
|
-
let n =
|
|
2568
|
-
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);
|
|
2569
2784
|
}, e.debounce = function(e, t = 0, n = !1) {
|
|
2570
2785
|
let r = null, l = null, o = null;
|
|
2571
2786
|
const s = (...s) => {
|
|
@@ -2591,21 +2806,21 @@
|
|
|
2591
2806
|
}
|
|
2592
2807
|
return t;
|
|
2593
2808
|
}, e.empty_json = function(e) {
|
|
2594
|
-
return 0 ===
|
|
2595
|
-
}, 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) {
|
|
2596
2811
|
if (null === e || "object" != typeof e || Array.isArray(e)) throw new Error("flat2json: a flat json is an object of id -> value");
|
|
2597
2812
|
let t = null;
|
|
2598
2813
|
for (const n of Object.keys(e)) {
|
|
2599
|
-
const r =
|
|
2814
|
+
const r = Qr(n);
|
|
2600
2815
|
if (!r || 0 === r.length) throw new Error(`flat2json: malformed flat id: '${n}'`);
|
|
2601
|
-
if (r.length >
|
|
2816
|
+
if (r.length > Hr) throw new Error(`flat2json: '${n}' deeper than 256`);
|
|
2602
2817
|
const l = "number" == typeof r[0];
|
|
2603
2818
|
if (null === t) t = l ? [] : {};
|
|
2604
2819
|
else if (l !== Array.isArray(t)) throw new Error(`flat2json: '${n}' does not fit a ${Array.isArray(t) ? "array" : "object"} root`);
|
|
2605
2820
|
let o = t;
|
|
2606
2821
|
for (let t = 0; t < r.length; t++) {
|
|
2607
2822
|
const l = r[t], s = "number" == typeof l, i = t === r.length - 1, _ = !i && "number" == typeof r[t + 1];
|
|
2608
|
-
if (s && l >
|
|
2823
|
+
if (s && l > zr) throw new Error(`flat2json: array index ${l} over the limit (100000) in '${n}'`);
|
|
2609
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"}`);
|
|
2610
2825
|
if (i) {
|
|
2611
2826
|
if (Array.isArray(o)) {
|
|
@@ -2645,15 +2860,15 @@
|
|
|
2645
2860
|
removed: {},
|
|
2646
2861
|
changed: {}
|
|
2647
2862
|
};
|
|
2648
|
-
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] = {
|
|
2649
2864
|
from: n[e],
|
|
2650
2865
|
to: r[e]
|
|
2651
2866
|
}) : l.removed[e] = n[e];
|
|
2652
2867
|
for (const e of Object.keys(r)) Object.prototype.hasOwnProperty.call(n, e) || (l.added[e] = r[e]);
|
|
2653
2868
|
return l;
|
|
2654
2869
|
}, e.flat_key_join = function(e) {
|
|
2655
|
-
return Array.isArray(e) && 0 !== e.length ? e.map((e) => "number" == typeof e ? `[${e}]` :
|
|
2656
|
-
}, 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) {
|
|
2657
2872
|
if (!e) return {
|
|
2658
2873
|
top: 0,
|
|
2659
2874
|
left: 0,
|
|
@@ -2672,55 +2887,60 @@
|
|
|
2672
2887
|
right: n + i + r,
|
|
2673
2888
|
bottom: t + s + l
|
|
2674
2889
|
};
|
|
2675
|
-
}, e.get_function_name =
|
|
2890
|
+
}, e.get_function_name = Jr, e.get_now = function() {
|
|
2676
2891
|
return Math.floor(Date.now() / 1e3);
|
|
2677
2892
|
}, e.gobj_bottom_gobj = st, e.gobj_change_parent = function(e, t) {
|
|
2678
|
-
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);
|
|
2679
2894
|
}, e.gobj_change_state = $t, e.gobj_command = function(e, t, r, o) {
|
|
2680
|
-
|
|
2681
|
-
|
|
2682
|
-
|
|
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);
|
|
2683
2903
|
}, e.gobj_create = function(e, t, n, r) {
|
|
2684
2904
|
return Ie(e, t, n, r, 0);
|
|
2685
2905
|
}, e.gobj_create2 = Ie, e.gobj_create_default_service = function(e, t, n, r) {
|
|
2686
|
-
return Ie(e, t, n, r,
|
|
2906
|
+
return Ie(e, t, n, r, N.gobj_flag_default_service | N.gobj_flag_autostart);
|
|
2687
2907
|
}, e.gobj_create_pure_child = Ce, e.gobj_create_service = function(e, t, n, r) {
|
|
2688
|
-
return Ie(e, t, n, r,
|
|
2908
|
+
return Ie(e, t, n, r, N.gobj_flag_service);
|
|
2689
2909
|
}, e.gobj_create_volatil = function(e, t, n, r) {
|
|
2690
|
-
return Ie(e, t, n, r,
|
|
2910
|
+
return Ie(e, t, n, r, N.gobj_flag_volatil);
|
|
2691
2911
|
}, e.gobj_create_yuno = function(e, t, n) {
|
|
2692
|
-
return Ie(e, t, n, null,
|
|
2693
|
-
}, e.gobj_current_state =
|
|
2694
|
-
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;
|
|
2695
2915
|
const n = t.toLowerCase();
|
|
2696
2916
|
return "__default_service__" === n ? m : "__yuno__" === n || "__root__" === n ? p : mt(p, t);
|
|
2697
|
-
}, 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() {
|
|
2698
2918
|
return F;
|
|
2699
2919
|
}, e.gobj_global_trace_no_level = function() {
|
|
2700
|
-
return
|
|
2920
|
+
return V;
|
|
2701
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) {
|
|
2702
2922
|
return u ? u(e, t) : null;
|
|
2703
2923
|
}, e.gobj_list_subscriptions = function(e) {
|
|
2704
|
-
let t =
|
|
2924
|
+
let t = zt(e, null, null, null);
|
|
2705
2925
|
for (let n = 0; n < t.length; n++) {
|
|
2706
|
-
let r = t[n], l =
|
|
2707
|
-
|
|
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));
|
|
2708
2928
|
}
|
|
2709
|
-
let n =
|
|
2929
|
+
let n = qt(e, 0, null, 0);
|
|
2710
2930
|
for (let t = 0; t < n.length; t++) {
|
|
2711
|
-
let r = n[t], l =
|
|
2712
|
-
|
|
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));
|
|
2713
2933
|
}
|
|
2714
2934
|
return {
|
|
2715
2935
|
subscriptions: t,
|
|
2716
2936
|
subscribings: n,
|
|
2717
|
-
"total subscriptions":
|
|
2718
|
-
total_subscribings:
|
|
2937
|
+
"total subscriptions": zn(t),
|
|
2938
|
+
total_subscribings: zn(n)
|
|
2719
2939
|
};
|
|
2720
2940
|
}, e.gobj_load_persistent_attrs = function(e, t) {
|
|
2721
|
-
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);
|
|
2722
2942
|
}, e.gobj_match_children = function(e, t) {
|
|
2723
|
-
if (ot(e)) return
|
|
2943
|
+
if (ot(e)) return pn("gobj NULL or DESTROYED"), null;
|
|
2724
2944
|
t = t || {};
|
|
2725
2945
|
let n = [];
|
|
2726
2946
|
const r = e.dl_children;
|
|
@@ -2740,18 +2960,18 @@
|
|
|
2740
2960
|
}
|
|
2741
2961
|
}(n, e), n;
|
|
2742
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) {
|
|
2743
|
-
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({
|
|
2744
2964
|
dst: e,
|
|
2745
2965
|
event: t,
|
|
2746
2966
|
kw: r,
|
|
2747
2967
|
src: l
|
|
2748
|
-
}),
|
|
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);
|
|
2749
2969
|
}, e.gobj_posted_events_size = function() {
|
|
2750
2970
|
return Lt.length;
|
|
2751
|
-
}, e.gobj_publish_event =
|
|
2752
|
-
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);
|
|
2753
2973
|
}, e.gobj_repr_global_trace_levels = function() {
|
|
2754
|
-
return
|
|
2974
|
+
return U.map(([e, t, n]) => ({
|
|
2755
2975
|
name: e,
|
|
2756
2976
|
bit: t,
|
|
2757
2977
|
description: n,
|
|
@@ -2759,54 +2979,54 @@
|
|
|
2759
2979
|
}));
|
|
2760
2980
|
}, e.gobj_reset_volatil_attrs = function(e) {
|
|
2761
2981
|
return function(e, t, n) {
|
|
2762
|
-
if (ot(e)) return
|
|
2982
|
+
if (ot(e)) return pn("gobj NULL or DESTROYED"), -1;
|
|
2763
2983
|
let r = e.gclass.attrs_table;
|
|
2764
2984
|
for (let l = 0; l < r.length; l++) {
|
|
2765
2985
|
const o = r[l];
|
|
2766
2986
|
if (o.name && !(n && o.flag & n) && (-1 === t || o.flag & t)) {
|
|
2767
2987
|
const t = ae(e, e.jn_attrs, o);
|
|
2768
|
-
|
|
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);
|
|
2769
2989
|
}
|
|
2770
2990
|
}
|
|
2771
2991
|
return 0;
|
|
2772
|
-
}(e,
|
|
2992
|
+
}(e, y.SDF_VOLATIL, 0);
|
|
2773
2993
|
}, e.gobj_save_persistent_attrs = $e, e.gobj_search_path = mt, e.gobj_send_event = Ft, e.gobj_services = function() {
|
|
2774
2994
|
let e = [];
|
|
2775
|
-
for (const t of Object.keys(b))
|
|
2995
|
+
for (const t of Object.keys(b)) Bn(e, t);
|
|
2776
2996
|
return e;
|
|
2777
2997
|
}, e.gobj_set_bottom_gobj = it, e.gobj_set_deep_trace = function(e) {
|
|
2778
|
-
return
|
|
2998
|
+
return G = Number(e) || 0, 0;
|
|
2779
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) {
|
|
2780
|
-
if (!e) return
|
|
3000
|
+
if (!e) return pn("gobj_set_gobj_no_trace: gobj NULL"), -1;
|
|
2781
3001
|
const r = W(t, "gobj_set_gobj_no_trace", e.gclass && e.gclass.s_user_trace_level || null);
|
|
2782
3002
|
return r ? (n ? e.no_trace_level |= r : e.no_trace_level &= ~r, 0) : -1;
|
|
2783
3003
|
}, e.gobj_set_gobj_trace = function(e, t, n) {
|
|
2784
|
-
if (!e) return
|
|
3004
|
+
if (!e) return pn("gobj_set_gobj_trace: gobj NULL"), -1;
|
|
2785
3005
|
const r = W(t, "gobj_set_gobj_trace", e.gclass && e.gclass.s_user_trace_level || null);
|
|
2786
3006
|
return r ? (n ? e.trace_level |= r : e.trace_level &= ~r, 0) : -1;
|
|
2787
3007
|
}, e.gobj_set_trace_machine_format = function(e) {
|
|
2788
3008
|
C = 1 === Number(e) ? 1 : 0;
|
|
2789
|
-
}, e.gobj_short_name = et, e.gobj_start =
|
|
2790
|
-
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);
|
|
2791
3011
|
}, e.gobj_start_tree = function(e) {
|
|
2792
|
-
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)));
|
|
2793
3013
|
}, e.gobj_start_up = function(e, t, n, r, l, o, s) {
|
|
2794
3014
|
i = t, _ = n, a = r, u = l, c = o, f = s;
|
|
2795
3015
|
const d = [["EV_STATE_CHANGED", D.EVF_SYSTEM_EVENT | D.EVF_OUTPUT_EVENT | D.EVF_NO_WARN_SUBS], [0, 0]];
|
|
2796
3016
|
for (let e = 0; e < d.length; e++) {
|
|
2797
3017
|
let t = d[e][0], n = d[e][1];
|
|
2798
|
-
|
|
3018
|
+
ye(g, t, n);
|
|
2799
3019
|
}
|
|
2800
3020
|
return 0;
|
|
2801
3021
|
}, e.gobj_stats = function(e, t, r, l) {
|
|
2802
|
-
return ot(e) ? (
|
|
2803
|
-
}, e.gobj_stop =
|
|
2804
|
-
return ot(e) ? (
|
|
2805
|
-
}, 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() {
|
|
2806
3026
|
return C;
|
|
2807
3027
|
}, e.gobj_trace_no_level = K, e.gobj_unsubscribe_event = function(e, t, n, r) {
|
|
2808
|
-
if (null == n && (n = {}), !e) return
|
|
2809
|
-
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;
|
|
2810
3030
|
const l = /* @__PURE__ */ new Set([
|
|
2811
3031
|
"__config__",
|
|
2812
3032
|
"__global__",
|
|
@@ -2815,80 +3035,80 @@
|
|
|
2815
3035
|
"__service__"
|
|
2816
3036
|
]);
|
|
2817
3037
|
if (Object.keys(n).forEach((n) => {
|
|
2818
|
-
l.has(n) ||
|
|
2819
|
-
}),
|
|
2820
|
-
else if (!(Ct(e, t, D.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag &
|
|
2821
|
-
let o = Wt(e.dl_subscriptions, e, t,
|
|
2822
|
-
for (let t = 0; t <
|
|
2823
|
-
let n =
|
|
2824
|
-
|
|
2825
|
-
}
|
|
2826
|
-
return
|
|
2827
|
-
}, 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) {
|
|
2828
3048
|
return e instanceof Date && !isNaN(e);
|
|
2829
|
-
}, e.is_function =
|
|
2830
|
-
if (!
|
|
2831
|
-
let t;
|
|
2832
|
-
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++);
|
|
2833
3053
|
return 2 === t;
|
|
2834
|
-
}, e.is_null =
|
|
2835
|
-
if (!
|
|
2836
|
-
let t;
|
|
2837
|
-
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++);
|
|
2838
3058
|
return 1 === t;
|
|
2839
3059
|
}, e.is_pure_number = function(e) {
|
|
2840
|
-
if (
|
|
2841
|
-
if (!
|
|
3060
|
+
if (er(e)) return !0;
|
|
3061
|
+
if (!Zn(e)) return !1;
|
|
2842
3062
|
const t = Number(e);
|
|
2843
3063
|
return !isNaN(t) && "" !== e.trim() && !isNaN(t);
|
|
2844
|
-
}, e.is_string =
|
|
2845
|
-
let l =
|
|
2846
|
-
if (!l) return
|
|
2847
|
-
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;
|
|
2848
3068
|
let o, s = n.split("`"), i = l;
|
|
2849
|
-
for (; (o = s.shift()) && !
|
|
2850
|
-
if (0 === s.length && i) if (
|
|
2851
|
-
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);
|
|
2852
3072
|
e >= 0 && i.splice(e, 1);
|
|
2853
3073
|
} else {
|
|
2854
|
-
let t =
|
|
3074
|
+
let t = Er(null, i, e.hook, null, 0), n = kr(t, r.id);
|
|
2855
3075
|
n >= 0 && t.splice(n, 1);
|
|
2856
3076
|
}
|
|
2857
3077
|
return l;
|
|
2858
3078
|
}, e.jdb_get = function(e, t, n, r) {
|
|
2859
|
-
let l =
|
|
2860
|
-
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);
|
|
2861
3081
|
}, e.jdb_get_by_idx = function(e, t, n) {
|
|
2862
|
-
let r =
|
|
2863
|
-
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);
|
|
2864
3084
|
}, e.jdb_get_topic = function(e, t) {
|
|
2865
|
-
let n =
|
|
2866
|
-
if (!n) return
|
|
2867
|
-
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);
|
|
2868
3088
|
}, e.jdb_init = function(e, t, n) {
|
|
2869
|
-
n && (e =
|
|
2870
|
-
let r =
|
|
2871
|
-
|
|
2872
|
-
let l =
|
|
2873
|
-
return
|
|
2874
|
-
"__" !== 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);
|
|
2875
3095
|
}, t), e;
|
|
2876
3096
|
}, e.jdb_update = function(e, t, n, r) {
|
|
2877
|
-
let l =
|
|
2878
|
-
if (!l) return
|
|
2879
|
-
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;
|
|
2880
3100
|
let o, s = n.split("`"), i = l;
|
|
2881
|
-
for (; (o = s.shift()) && !
|
|
2882
|
-
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);
|
|
2883
3103
|
else if (i.id === r.id) Object.assign(i, r);
|
|
2884
3104
|
else {
|
|
2885
|
-
let t =
|
|
3105
|
+
let t = Er(null, i, e.hook, [], 1), n = Gr(t, e.hook, r.id, !1);
|
|
2886
3106
|
n ? Object.assign(n, r) : t.push(r);
|
|
2887
3107
|
}
|
|
2888
3108
|
return l;
|
|
2889
3109
|
}, e.json2flat = function(e) {
|
|
2890
3110
|
const t = {}, n = (e, r, l) => {
|
|
2891
|
-
if (l >
|
|
3111
|
+
if (l > Hr) throw new Error("json2flat: deeper than 256");
|
|
2892
3112
|
if (null === e || "object" != typeof e || Array.isArray(e)) {
|
|
2893
3113
|
if (Array.isArray(e) && e.length > 0) return void e.forEach((e, t) => {
|
|
2894
3114
|
const o = `[${t}]`;
|
|
@@ -2898,7 +3118,7 @@
|
|
|
2898
3118
|
const t = Object.keys(e);
|
|
2899
3119
|
if (t.length > 0) {
|
|
2900
3120
|
for (const o of t) {
|
|
2901
|
-
const t =
|
|
3121
|
+
const t = qr(o);
|
|
2902
3122
|
n(e[o], 0 === l ? t : r + "`" + t, l + 1);
|
|
2903
3123
|
}
|
|
2904
3124
|
return;
|
|
@@ -2907,11 +3127,11 @@
|
|
|
2907
3127
|
0 !== l && (t[r] = e);
|
|
2908
3128
|
};
|
|
2909
3129
|
return null == e || n(e, "", 0), t;
|
|
2910
|
-
}, e.json_array_append =
|
|
3130
|
+
}, e.json_array_append = Yn, e.json_array_append_new = Bn, e.json_array_extend = function(e, t) {
|
|
2911
3131
|
return t ? (Array.prototype.push.apply(e, t), e) : e;
|
|
2912
|
-
}, 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) {
|
|
2913
3133
|
try {
|
|
2914
|
-
let n =
|
|
3134
|
+
let n = Mr(e);
|
|
2915
3135
|
switch (t) {
|
|
2916
3136
|
case "header": return JSON.parse(n.header);
|
|
2917
3137
|
case "signature": return JSON.parse(n.signature);
|
|
@@ -2920,137 +3140,137 @@
|
|
|
2920
3140
|
} catch (e) {
|
|
2921
3141
|
return null;
|
|
2922
3142
|
}
|
|
2923
|
-
}, e.jwtDecode =
|
|
2924
|
-
if (e && !
|
|
2925
|
-
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);
|
|
2926
3146
|
let l = [];
|
|
2927
|
-
if (
|
|
3147
|
+
if (Xn(t)) for (let e = 0; e < t.length; e++) {
|
|
2928
3148
|
let o = t[e];
|
|
2929
3149
|
r(o, n) && l.push(o);
|
|
2930
3150
|
}
|
|
2931
3151
|
else {
|
|
2932
|
-
if (!
|
|
3152
|
+
if (!Qn(t)) return pn("kw_select() BAD kw parameter"), null;
|
|
2933
3153
|
r(t, n) && l.push(t);
|
|
2934
3154
|
}
|
|
2935
3155
|
return l;
|
|
2936
|
-
}, e.kw_delete =
|
|
2937
|
-
if (!n || !
|
|
2938
|
-
for (let e = 0; e < t.length; e++) if (
|
|
2939
|
-
return r &&
|
|
2940
|
-
}, e.kw_find_path =
|
|
2941
|
-
e && !
|
|
2942
|
-
let o =
|
|
2943
|
-
const s = l && l &
|
|
2944
|
-
return void 0 === o ? i &&
|
|
2945
|
-
}, e.kw_get_local_storage_value =
|
|
2946
|
-
e && !
|
|
2947
|
-
let o =
|
|
2948
|
-
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;
|
|
2949
3169
|
if (void 0 === o) {
|
|
2950
3170
|
if (i && t) {
|
|
2951
3171
|
let l = Number(r);
|
|
2952
|
-
return
|
|
3172
|
+
return yr(e, t, n, l), l;
|
|
2953
3173
|
}
|
|
2954
|
-
return s && (
|
|
3174
|
+
return s && (pn(`path not found: '${n}'`), Ln(t)), Number(r);
|
|
2955
3175
|
}
|
|
2956
3176
|
let u;
|
|
2957
|
-
if (
|
|
3177
|
+
if (er(o)) u = o;
|
|
2958
3178
|
else {
|
|
2959
|
-
if (!a) return
|
|
2960
|
-
if (
|
|
2961
|
-
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);
|
|
2962
3182
|
else {
|
|
2963
|
-
if (null !== o) return
|
|
3183
|
+
if (null !== o) return pn(`${e ? et(e) + ": " : ""}path MUST BE a simple json element: '${n}'`), Ln(t), 0;
|
|
2964
3184
|
u = 0;
|
|
2965
3185
|
}
|
|
2966
3186
|
}
|
|
2967
|
-
return _ &&
|
|
2968
|
-
}, e.kw_get_str =
|
|
2969
|
-
if (e && !
|
|
2970
|
-
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);
|
|
2971
3191
|
let l = [];
|
|
2972
|
-
if (
|
|
3192
|
+
if (Xn(t)) for (let e = 0; e < t.length; e++) {
|
|
2973
3193
|
let o = t[e];
|
|
2974
|
-
r(o, n) && l.push(
|
|
3194
|
+
r(o, n) && l.push(Pn(o));
|
|
2975
3195
|
}
|
|
2976
3196
|
else {
|
|
2977
|
-
if (!
|
|
2978
|
-
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));
|
|
2979
3199
|
}
|
|
2980
3200
|
return l;
|
|
2981
|
-
}, e.kw_set_dict_value =
|
|
2982
|
-
e && !
|
|
2983
|
-
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);
|
|
2984
3204
|
return o && 0 !== o.length ? o[0] : null;
|
|
2985
3205
|
}, e.kwid_get_ids = function(e, t) {
|
|
2986
|
-
if (e && !
|
|
3206
|
+
if (e && !lr(e) && pn("GObj bad instanceof"), !t) return [];
|
|
2987
3207
|
let n = [];
|
|
2988
|
-
if (
|
|
2989
|
-
else if (
|
|
2990
|
-
else
|
|
2991
|
-
if (
|
|
2992
|
-
else if (
|
|
2993
|
-
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);
|
|
2994
3214
|
r && n.push(r);
|
|
2995
3215
|
}
|
|
2996
3216
|
});
|
|
2997
3217
|
return n;
|
|
2998
|
-
}, e.kwid_match_id =
|
|
2999
|
-
e && !
|
|
3218
|
+
}, e.kwid_match_id = Dr, e.kwid_new_dict = function(e, t, n) {
|
|
3219
|
+
e && !lr(e) && pn("GObj bad instanceof");
|
|
3000
3220
|
let r = {};
|
|
3001
|
-
if (
|
|
3002
|
-
else if (
|
|
3003
|
-
let l = t[n], o =
|
|
3004
|
-
|
|
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);
|
|
3005
3225
|
}
|
|
3006
|
-
else
|
|
3226
|
+
else pn(`${et(e)} kwid_new_dict: data type unknown`);
|
|
3007
3227
|
return r;
|
|
3008
3228
|
}, e.kwid_new_list = function(e, t, n) {
|
|
3009
|
-
if (e && !
|
|
3010
|
-
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)) {
|
|
3011
3231
|
let n = [];
|
|
3012
3232
|
for (let r of Object.keys(t)) {
|
|
3013
3233
|
let l = t[r];
|
|
3014
|
-
|
|
3234
|
+
Qn(l) ? (l.id = r, n.push(l)) : pn(`${et(e)} kwid_new_list: not a record: '${r}'`);
|
|
3015
3235
|
}
|
|
3016
3236
|
return n;
|
|
3017
3237
|
}
|
|
3018
|
-
return
|
|
3238
|
+
return pn(`${et(e)} kwid_new_list: wrong type for list`), [];
|
|
3019
3239
|
}, e.list2options = function(e, t, n) {
|
|
3020
3240
|
t = t || "id", n = n || "value";
|
|
3021
3241
|
let r = [];
|
|
3022
|
-
if (
|
|
3242
|
+
if (Xn(e)) for (let l = 0; l < e.length; l++) {
|
|
3023
3243
|
let o = e[l];
|
|
3024
|
-
if (
|
|
3244
|
+
if (Zn(o)) r.push({
|
|
3025
3245
|
id: e[l],
|
|
3026
3246
|
value: e[l]
|
|
3027
3247
|
});
|
|
3028
|
-
else if (
|
|
3248
|
+
else if (Qn(o)) {
|
|
3029
3249
|
let e = {};
|
|
3030
|
-
if (
|
|
3031
|
-
if (!
|
|
3032
|
-
if (!(
|
|
3033
|
-
|
|
3250
|
+
if (cr(o, t)) {
|
|
3251
|
+
if (!cr(o, n)) {
|
|
3252
|
+
if (!(qn(o) > 0)) {
|
|
3253
|
+
pn("list2options(): object without field value: " + n);
|
|
3034
3254
|
continue;
|
|
3035
3255
|
}
|
|
3036
3256
|
n = Object.keys(o)[0];
|
|
3037
3257
|
}
|
|
3038
3258
|
e.id = o[t], e.value = o[n];
|
|
3039
3259
|
} else {
|
|
3040
|
-
if (!(
|
|
3041
|
-
|
|
3260
|
+
if (!(qn(o) > 0)) {
|
|
3261
|
+
pn("list2options(): object without field id: " + t);
|
|
3042
3262
|
continue;
|
|
3043
3263
|
}
|
|
3044
3264
|
t = Object.keys(o)[0], e.id = t, e.value = o[t];
|
|
3045
3265
|
}
|
|
3046
3266
|
r.push(e);
|
|
3047
|
-
} else
|
|
3267
|
+
} else pn("list2options(): case1 not implemented");
|
|
3048
3268
|
}
|
|
3049
|
-
else if (
|
|
3269
|
+
else if (Qn(e)) for (let t of Object.keys(e)) r.push({
|
|
3050
3270
|
id: t,
|
|
3051
3271
|
value: t
|
|
3052
3272
|
});
|
|
3053
|
-
else
|
|
3273
|
+
else pn("list2options(): case2 not implemented");
|
|
3054
3274
|
return r;
|
|
3055
3275
|
}, e.load_json_file = function(e, t, n) {
|
|
3056
3276
|
let r = new XMLHttpRequest();
|
|
@@ -3058,18 +3278,18 @@
|
|
|
3058
3278
|
if (4 === r.readyState) if (200 === r.status || 0 === (e = r).status && e.responseText && e.responseURL.startsWith("file:")) try {
|
|
3059
3279
|
t(JSON.parse(r.responseText));
|
|
3060
3280
|
} catch (e) {
|
|
3061
|
-
n && (
|
|
3281
|
+
n && (pn(`JSON parse status ${r.status}, error: ${e.message}`), n(r.status));
|
|
3062
3282
|
}
|
|
3063
3283
|
else n && n(r.status);
|
|
3064
3284
|
var e;
|
|
3065
3285
|
}, r.send();
|
|
3066
|
-
}, e.log_debug =
|
|
3067
|
-
let t =
|
|
3068
|
-
|
|
3069
|
-
}, 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) {
|
|
3070
3290
|
return new DOMParser().parseFromString(e, "image/svg+xml").firstChild;
|
|
3071
3291
|
}, e.refresh_language = function(e, t) {
|
|
3072
|
-
if (!
|
|
3292
|
+
if (!rr(t)) return void pn("You must supply a translation function");
|
|
3073
3293
|
e || (e = document);
|
|
3074
3294
|
const n = (t) => {
|
|
3075
3295
|
let n = [];
|
|
@@ -3093,22 +3313,22 @@
|
|
|
3093
3313
|
});
|
|
3094
3314
|
}, e.register_c_ievent_cli = function() {
|
|
3095
3315
|
return function(e) {
|
|
3096
|
-
if (
|
|
3316
|
+
if (wl) return pn(`GClass ALREADY created: ${e}`), -1;
|
|
3097
3317
|
const t = [
|
|
3098
3318
|
["ST_DISCONNECTED", [
|
|
3099
3319
|
[
|
|
3100
3320
|
"EV_ON_OPEN",
|
|
3101
|
-
|
|
3321
|
+
Pl,
|
|
3102
3322
|
"ST_WAIT_IDENTITY_CARD_ACK"
|
|
3103
3323
|
],
|
|
3104
3324
|
[
|
|
3105
3325
|
"EV_ON_CLOSE",
|
|
3106
|
-
|
|
3326
|
+
Ul,
|
|
3107
3327
|
null
|
|
3108
3328
|
],
|
|
3109
3329
|
[
|
|
3110
3330
|
"EV_TIMEOUT",
|
|
3111
|
-
|
|
3331
|
+
Ll,
|
|
3112
3332
|
null
|
|
3113
3333
|
],
|
|
3114
3334
|
[
|
|
@@ -3120,22 +3340,22 @@
|
|
|
3120
3340
|
["ST_WAIT_IDENTITY_CARD_ACK", [
|
|
3121
3341
|
[
|
|
3122
3342
|
"EV_ON_MESSAGE",
|
|
3123
|
-
|
|
3343
|
+
Gl,
|
|
3124
3344
|
null
|
|
3125
3345
|
],
|
|
3126
3346
|
[
|
|
3127
3347
|
"EV_IDENTITY_CARD_ACK",
|
|
3128
|
-
|
|
3348
|
+
Vl,
|
|
3129
3349
|
null
|
|
3130
3350
|
],
|
|
3131
3351
|
[
|
|
3132
3352
|
"EV_ON_CLOSE",
|
|
3133
|
-
|
|
3353
|
+
Ul,
|
|
3134
3354
|
"ST_DISCONNECTED"
|
|
3135
3355
|
],
|
|
3136
3356
|
[
|
|
3137
3357
|
"EV_TIMEOUT",
|
|
3138
|
-
|
|
3358
|
+
Fl,
|
|
3139
3359
|
null
|
|
3140
3360
|
],
|
|
3141
3361
|
[
|
|
@@ -3147,22 +3367,22 @@
|
|
|
3147
3367
|
["ST_SESSION", [
|
|
3148
3368
|
[
|
|
3149
3369
|
"EV_ON_MESSAGE",
|
|
3150
|
-
|
|
3370
|
+
Gl,
|
|
3151
3371
|
null
|
|
3152
3372
|
],
|
|
3153
3373
|
[
|
|
3154
3374
|
"EV_MT_STATS",
|
|
3155
|
-
|
|
3375
|
+
Ml,
|
|
3156
3376
|
null
|
|
3157
3377
|
],
|
|
3158
3378
|
[
|
|
3159
3379
|
"EV_MT_COMMAND",
|
|
3160
|
-
|
|
3380
|
+
Wl,
|
|
3161
3381
|
null
|
|
3162
3382
|
],
|
|
3163
3383
|
[
|
|
3164
3384
|
"EV_ON_CLOSE",
|
|
3165
|
-
|
|
3385
|
+
Ul,
|
|
3166
3386
|
"ST_DISCONNECTED"
|
|
3167
3387
|
],
|
|
3168
3388
|
[
|
|
@@ -3173,7 +3393,7 @@
|
|
|
3173
3393
|
]],
|
|
3174
3394
|
[null, null]
|
|
3175
3395
|
];
|
|
3176
|
-
return (
|
|
3396
|
+
return (wl = de(e, [
|
|
3177
3397
|
["EV_ON_MESSAGE", D.EVF_OUTPUT_EVENT],
|
|
3178
3398
|
["EV_IDENTITY_CARD_ACK", D.EVF_PUBLIC_EVENT],
|
|
3179
3399
|
["EV_ON_ID_NAK", D.EVF_PUBLIC_EVENT | D.EVF_OUTPUT_EVENT],
|
|
@@ -3184,65 +3404,65 @@
|
|
|
3184
3404
|
["EV_ON_OPEN_ERROR", D.EVF_OUTPUT_EVENT | D.EVF_NO_WARN_SUBS],
|
|
3185
3405
|
["EV_TIMEOUT", 0],
|
|
3186
3406
|
[null, 0]
|
|
3187
|
-
], t,
|
|
3407
|
+
], t, xl, 0, vl, Sl, 0, 0, jl, w.gcflag_no_check_output_events)) ? 0 : -1;
|
|
3188
3408
|
}("C_IEVENT_CLI");
|
|
3189
3409
|
}, e.register_c_timer = function() {
|
|
3190
3410
|
return function(e) {
|
|
3191
|
-
if (
|
|
3411
|
+
if (il) return pn(`GClass ALREADY created: ${e}`), -1;
|
|
3192
3412
|
const t = [["ST_IDLE", [[
|
|
3193
3413
|
"EV_TIMEOUT",
|
|
3194
|
-
|
|
3414
|
+
_l,
|
|
3195
3415
|
null
|
|
3196
3416
|
]]]];
|
|
3197
|
-
return (
|
|
3417
|
+
return (il = de(e, [
|
|
3198
3418
|
["EV_TIMEOUT", D.EVF_OUTPUT_EVENT],
|
|
3199
3419
|
["EV_TIMEOUT_PERIODIC", D.EVF_OUTPUT_EVENT],
|
|
3200
3420
|
[0, 0]
|
|
3201
|
-
], t,
|
|
3421
|
+
], t, al, 0, ol, sl, 0, 0, 0, w.gcflag_manual_start)) ? 0 : -1;
|
|
3202
3422
|
}("C_TIMER");
|
|
3203
3423
|
}, e.register_c_yuno = function() {
|
|
3204
3424
|
return function(e) {
|
|
3205
|
-
if (
|
|
3425
|
+
if (bl) return pn(`GClass ALREADY created: ${e}`), -1;
|
|
3206
3426
|
const t = [["ST_IDLE", [[
|
|
3207
3427
|
"EV_TIMEOUT_PERIODIC",
|
|
3208
|
-
|
|
3428
|
+
El,
|
|
3209
3429
|
null
|
|
3210
3430
|
]]]];
|
|
3211
|
-
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;
|
|
3212
3432
|
}("C_YUNO");
|
|
3213
3433
|
}, e.safeSrc = function(e) {
|
|
3214
3434
|
if (!e) return "";
|
|
3215
3435
|
const t = String(e).trim();
|
|
3216
|
-
return /^javascript:/i.test(t) || /^data:/i.test(t) ? "" :
|
|
3217
|
-
}, 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) {
|
|
3218
3438
|
let r = new XMLHttpRequest();
|
|
3219
3439
|
r.open("POST", e), r.setRequestHeader("Accept", "application/json"), r.setRequestHeader("Content-Type", "application/json"), r.onreadystatechange = function() {
|
|
3220
3440
|
4 === r.readyState && n(r.status, r.responseText);
|
|
3221
3441
|
}, r.send(t);
|
|
3222
3442
|
}, e.set_console_log_enabled = function(e) {
|
|
3223
|
-
|
|
3443
|
+
_n = !!e;
|
|
3224
3444
|
}, e.set_console_log_filter = function(e) {
|
|
3225
|
-
|
|
3445
|
+
an = "function" == typeof e ? e : null;
|
|
3226
3446
|
}, e.set_log_callback = function(e) {
|
|
3227
|
-
if ((e = "function" == typeof e ? e : null) && e !==
|
|
3228
|
-
|
|
3229
|
-
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()) {
|
|
3230
3450
|
let r = t;
|
|
3231
3451
|
if ("json" === e) try {
|
|
3232
3452
|
r = JSON.parse(t);
|
|
3233
3453
|
} catch (e) {
|
|
3234
3454
|
r = t;
|
|
3235
3455
|
}
|
|
3236
|
-
|
|
3456
|
+
gn(e, r, n);
|
|
3237
3457
|
}
|
|
3238
|
-
} else
|
|
3239
|
-
}, 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) {
|
|
3240
3460
|
var r = (e + "").substring(0, n), l = (t + "").substring(0, n);
|
|
3241
3461
|
return r === l ? 0 : r > l ? 1 : -1;
|
|
3242
3462
|
}, e.strs_in_list = function(e, t, n) {
|
|
3243
|
-
if (!e) return
|
|
3244
|
-
if (!t) return
|
|
3245
|
-
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;
|
|
3246
3466
|
return !1;
|
|
3247
3467
|
}, e.strstr = function(e, t, n) {
|
|
3248
3468
|
var r;
|
|
@@ -3261,13 +3481,13 @@
|
|
|
3261
3481
|
placeholder: void 0,
|
|
3262
3482
|
fkey: null
|
|
3263
3483
|
};
|
|
3264
|
-
if (
|
|
3484
|
+
if (Zn(t)) {
|
|
3265
3485
|
let e = t.split(".");
|
|
3266
3486
|
for (let t = 0; t < e.length; t++) {
|
|
3267
3487
|
let r = e[t];
|
|
3268
|
-
if (
|
|
3269
|
-
else if (
|
|
3270
|
-
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) {
|
|
3271
3491
|
case "writable":
|
|
3272
3492
|
n.is_writable = !0;
|
|
3273
3493
|
break;
|
|
@@ -3279,23 +3499,23 @@
|
|
|
3279
3499
|
}
|
|
3280
3500
|
}
|
|
3281
3501
|
n.real_type || (n.real_type = "string");
|
|
3282
|
-
} 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);
|
|
3283
3503
|
return n.type || (n.type = n.real_type), n;
|
|
3284
3504
|
}, e.timeTracker = function(e = "Time Tracker", t = !1) {
|
|
3285
3505
|
const n = e, r = performance.now();
|
|
3286
3506
|
let l = r;
|
|
3287
|
-
return t &&
|
|
3507
|
+
return t && mn(`--\x3e ${n} - starting`), { mark: (e = "Intermediate", o = "") => {
|
|
3288
3508
|
const s = performance.now(), i = (s - l) / 1e3, _ = (s - r) / 1e3;
|
|
3289
|
-
return t &&
|
|
3509
|
+
return t && mn(`--\x3e ${n} ${e} - partial: ${i} sec, total: ${_} sec, ${o}`), l = s, {
|
|
3290
3510
|
partial: i,
|
|
3291
3511
|
total: _
|
|
3292
3512
|
};
|
|
3293
3513
|
} };
|
|
3294
|
-
}, e.trace_json =
|
|
3295
|
-
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)) {
|
|
3296
3516
|
if (-1 === t.indexOf("^")) {
|
|
3297
3517
|
let n, r = e.hook;
|
|
3298
|
-
if (1 !==
|
|
3518
|
+
if (1 !== Hn(r)) return pn("bad hook 1"), pn(e), pn(t), null;
|
|
3299
3519
|
for (let e of Object.keys(r)) {
|
|
3300
3520
|
n = e, r[e];
|
|
3301
3521
|
break;
|
|
@@ -3307,25 +3527,25 @@
|
|
|
3307
3527
|
}
|
|
3308
3528
|
{
|
|
3309
3529
|
let n = t.split("^");
|
|
3310
|
-
return 2 !== n.length ? (
|
|
3530
|
+
return 2 !== n.length ? (pn("bad hook 2"), pn(e), pn(t), null) : {
|
|
3311
3531
|
topic_name: n[0],
|
|
3312
3532
|
id: n[1]
|
|
3313
3533
|
};
|
|
3314
3534
|
}
|
|
3315
3535
|
}
|
|
3316
|
-
return
|
|
3536
|
+
return Qn(t) ? {
|
|
3317
3537
|
topic_name: t.topic_name,
|
|
3318
3538
|
id: t.id
|
|
3319
|
-
} : (
|
|
3539
|
+
} : (pn("bad hook 3"), pn(e), pn(t), null);
|
|
3320
3540
|
}, e.treedb_encoder_fkey = function(e, t) {
|
|
3321
|
-
let n =
|
|
3541
|
+
let n = el(e, t);
|
|
3322
3542
|
return n ? n.topic_name + "^" + n.id + "^" + n.hook_name : null;
|
|
3323
|
-
}, e.treedb_get_field_desc =
|
|
3324
|
-
if (
|
|
3543
|
+
}, e.treedb_get_field_desc = ll, e.treedb_hook_data_size = function(e) {
|
|
3544
|
+
if (Xn(e) && 1 === qn(e)) {
|
|
3325
3545
|
let t = e[0];
|
|
3326
|
-
return
|
|
3546
|
+
return cr(t, "size") ? t.size : 1;
|
|
3327
3547
|
}
|
|
3328
|
-
return
|
|
3548
|
+
return qn(e);
|
|
3329
3549
|
}, e.vsprintf = function(e, t) {
|
|
3330
3550
|
return n.apply(null, [e].concat(t || []));
|
|
3331
3551
|
}, e.walk_type_t = $;
|