@yuneta/gobj-js 7.9.4 → 7.9.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/gobj-js.cjs.js +293 -18
- package/dist/gobj-js.cjs.js.map +1 -1
- package/dist/gobj-js.cjs.min.js +1267 -1093
- package/dist/gobj-js.cjs.min.js.map +1 -1
- package/dist/gobj-js.es.js +283 -19
- package/dist/gobj-js.es.js.map +1 -1
- package/dist/gobj-js.es.min.js +1245 -1063
- package/dist/gobj-js.es.min.js.map +1 -1
- package/dist/gobj-js.iife.js +293 -18
- package/dist/gobj-js.iife.js.map +1 -1
- package/dist/gobj-js.iife.min.js +1268 -1094
- package/dist/gobj-js.iife.min.js.map +1 -1
- package/dist/gobj-js.umd.js +293 -18
- package/dist/gobj-js.umd.js.map +1 -1
- package/dist/gobj-js.umd.min.js +1266 -1092
- package/dist/gobj-js.umd.min.js.map +1 -1
- package/package.json +1 -1
package/dist/gobj-js.umd.min.js
CHANGED
|
@@ -133,7 +133,7 @@
|
|
|
133
133
|
data: o || []
|
|
134
134
|
};
|
|
135
135
|
}
|
|
136
|
-
var l = "7.0.0a", s = null, _ = null, a = null, u = null, c = null, f = null, g = [], d = Object.create(null), b = {}, p = null, m = null,
|
|
136
|
+
var l = "7.0.0a", s = null, _ = null, a = null, u = null, c = null, f = null, g = [], d = Object.create(null), b = {}, p = null, m = null, E = 0, T = Object.freeze({
|
|
137
137
|
DTP_STRING: 1,
|
|
138
138
|
DTP_BOOLEAN: 2,
|
|
139
139
|
DTP_INTEGER: 3,
|
|
@@ -143,8 +143,8 @@
|
|
|
143
143
|
DTP_JSON: 7,
|
|
144
144
|
DTP_POINTER: 8
|
|
145
145
|
});
|
|
146
|
-
|
|
147
|
-
var
|
|
146
|
+
T.DTP_POINTER;
|
|
147
|
+
var h = Object.freeze({
|
|
148
148
|
SDF_NOTACCESS: 1,
|
|
149
149
|
SDF_RD: 2,
|
|
150
150
|
SDF_WR: 4,
|
|
@@ -167,18 +167,18 @@
|
|
|
167
167
|
SDF_AUTHZ_S: 524288,
|
|
168
168
|
SDF_AUTHZ_RS: 1048576
|
|
169
169
|
});
|
|
170
|
-
|
|
171
|
-
var
|
|
170
|
+
h.SDF_RD, h.SDF_WR, h.SDF_STATS, h.SDF_PERSIST, h.SDF_VOLATIL, h.SDF_RSTATS, h.SDF_PSTATS, h.SDF_WR, h.SDF_PERSIST;
|
|
171
|
+
var y = class {
|
|
172
172
|
constructor(e, t, n = 0, r = null, o = "", i = null, l = null, s = 0, _ = null, a = null, u = null) {
|
|
173
173
|
this.type = e, this.name = t, this.alias = i, this.flag = n, this.default_value = r, this.header = l, this.fillspace = s, this.description = o, this.json_fn = _, this.schema = a, this.authpth = u;
|
|
174
174
|
}
|
|
175
|
-
}, v = () => new
|
|
175
|
+
}, v = () => new y(0, null), j = (e, t, n, r, o) => new y(e, t, n, r, o), S = class {
|
|
176
176
|
constructor(e, t, n, r, o, i, l, s, _) {
|
|
177
177
|
this.gclass_name = e, this.dl_states = [], this.dl_events = [], this.gmt = t, this.lmt = n, this.attrs_table = r, this.priv = o, this.authz_table = i, this.command_table = l, this.s_user_trace_level = s, this.gclass_flag = Number(_) || 0, this.instances = 0, this.trace_level = 0, this.no_trace_level = 0, this.jn_trace_filter = null, this.fsm_checked = !1;
|
|
178
178
|
}
|
|
179
179
|
}, O = class {
|
|
180
180
|
constructor(e, t, n, r, o) {
|
|
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(o) || 0, this.gobj_name = e, this.jn_attrs = null, this.jn_stats = {}, this.jn_user_data = {}, this.full_name = null, this.short_name = null, this.priv =
|
|
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(o) || 0, this.gobj_name = e, this.jn_attrs = null, this.jn_stats = {}, this.jn_user_data = {}, this.full_name = null, this.short_name = null, this.priv = Jt(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
182
|
}
|
|
183
183
|
}, N = Object.freeze({
|
|
184
184
|
gcflag_manual_start: 1,
|
|
@@ -186,7 +186,7 @@
|
|
|
186
186
|
gcflag_ignore_unknown_attrs: 4,
|
|
187
187
|
gcflag_required_start_to_play: 8,
|
|
188
188
|
gcflag_singleton: 16
|
|
189
|
-
}),
|
|
189
|
+
}), R = Object.freeze({
|
|
190
190
|
gobj_flag_yuno: 1,
|
|
191
191
|
gobj_flag_default_service: 2,
|
|
192
192
|
gobj_flag_service: 4,
|
|
@@ -194,201 +194,335 @@
|
|
|
194
194
|
gobj_flag_pure_child: 16,
|
|
195
195
|
gobj_flag_autostart: 32,
|
|
196
196
|
gobj_flag_autoplay: 64
|
|
197
|
-
}),
|
|
197
|
+
}), w = Object.freeze({
|
|
198
198
|
obflag_destroying: 1,
|
|
199
199
|
obflag_destroyed: 2,
|
|
200
200
|
obflag_created: 4
|
|
201
|
-
}),
|
|
201
|
+
}), D = Object.freeze({
|
|
202
202
|
EVF_NO_WARN_SUBS: 1,
|
|
203
203
|
EVF_OUTPUT_EVENT: 2,
|
|
204
204
|
EVF_SYSTEM_EVENT: 4,
|
|
205
205
|
EVF_PUBLIC_EVENT: 8
|
|
206
|
-
}),
|
|
206
|
+
}), A = Object.freeze({
|
|
207
207
|
WALK_TOP2BOTTOM: 1,
|
|
208
208
|
WALK_BOTTOM2TOP: 2,
|
|
209
209
|
WALK_BYLEVEL: 4,
|
|
210
210
|
WALK_FIRST2LAST: 16,
|
|
211
211
|
WALK_LAST2FIRST: 32
|
|
212
|
-
}),
|
|
212
|
+
}), k = class {
|
|
213
213
|
constructor(e, t, n) {
|
|
214
214
|
this.event_name = e, this.action = t, this.next_state = n;
|
|
215
215
|
}
|
|
216
|
-
},
|
|
216
|
+
}, I = class {
|
|
217
217
|
constructor(e) {
|
|
218
218
|
this.state_name = e, this.dl_actions = [];
|
|
219
219
|
}
|
|
220
|
-
},
|
|
220
|
+
}, $ = class {
|
|
221
221
|
constructor(e, t) {
|
|
222
222
|
this.event_name = e, this.event_flag = Number(t) || 0;
|
|
223
223
|
}
|
|
224
224
|
};
|
|
225
|
-
var
|
|
226
|
-
function
|
|
227
|
-
|
|
225
|
+
var C = 0;
|
|
226
|
+
function L(e) {
|
|
227
|
+
an(e) && (e = JSON.stringify(e)), xt(" ".repeat(Math.max(1, 2 * E)) + String(e));
|
|
228
|
+
}
|
|
229
|
+
var P = Object.freeze({
|
|
230
|
+
TRACE_MACHINE: 65536,
|
|
231
|
+
TRACE_CREATE_DELETE: 131072,
|
|
232
|
+
TRACE_CREATE_DELETE2: 262144,
|
|
233
|
+
TRACE_SUBSCRIPTIONS: 524288,
|
|
234
|
+
TRACE_START_STOP: 1048576,
|
|
235
|
+
TRACE_EV_KW: 2097152,
|
|
236
|
+
TRACE_AUTHZS: 4194304,
|
|
237
|
+
TRACE_STATES: 8388608,
|
|
238
|
+
TRACE_GBUFFERS: 16777216,
|
|
239
|
+
TRACE_TIMER: 33554432,
|
|
240
|
+
TRACE_FS: 67108864,
|
|
241
|
+
TRACE_URING: 134217728,
|
|
242
|
+
TRACE_TIMER_PERIODIC: 268435456,
|
|
243
|
+
TRACE_URING_TIME: 536870912,
|
|
244
|
+
TRACE_COMMANDS: 1073741824
|
|
245
|
+
}), U = [
|
|
246
|
+
[
|
|
247
|
+
"machine",
|
|
248
|
+
P.TRACE_MACHINE,
|
|
249
|
+
"Trace machine"
|
|
250
|
+
],
|
|
251
|
+
[
|
|
252
|
+
"create_delete",
|
|
253
|
+
P.TRACE_CREATE_DELETE,
|
|
254
|
+
"Trace create/delete of gobjs"
|
|
255
|
+
],
|
|
256
|
+
[
|
|
257
|
+
"create_delete2",
|
|
258
|
+
P.TRACE_CREATE_DELETE2,
|
|
259
|
+
"Trace create/delete of gobjs level 2: with kw"
|
|
260
|
+
],
|
|
261
|
+
[
|
|
262
|
+
"subscriptions",
|
|
263
|
+
P.TRACE_SUBSCRIPTIONS,
|
|
264
|
+
"Trace subscriptions of gobjs"
|
|
265
|
+
],
|
|
266
|
+
[
|
|
267
|
+
"start_stop",
|
|
268
|
+
P.TRACE_START_STOP,
|
|
269
|
+
"Trace start/stop of gobjs"
|
|
270
|
+
],
|
|
271
|
+
[
|
|
272
|
+
"ev_kw",
|
|
273
|
+
P.TRACE_EV_KW,
|
|
274
|
+
"Trace event keywords"
|
|
275
|
+
],
|
|
276
|
+
[
|
|
277
|
+
"authzs",
|
|
278
|
+
P.TRACE_AUTHZS,
|
|
279
|
+
"Trace authorizations"
|
|
280
|
+
],
|
|
281
|
+
[
|
|
282
|
+
"states",
|
|
283
|
+
P.TRACE_STATES,
|
|
284
|
+
"Trace change of states"
|
|
285
|
+
],
|
|
286
|
+
[
|
|
287
|
+
"gbuffers",
|
|
288
|
+
P.TRACE_GBUFFERS,
|
|
289
|
+
"Trace gbuffers"
|
|
290
|
+
],
|
|
291
|
+
[
|
|
292
|
+
"timer",
|
|
293
|
+
P.TRACE_TIMER,
|
|
294
|
+
"Trace timers"
|
|
295
|
+
],
|
|
296
|
+
[
|
|
297
|
+
"fs",
|
|
298
|
+
P.TRACE_FS,
|
|
299
|
+
"Trace file system"
|
|
300
|
+
],
|
|
301
|
+
[
|
|
302
|
+
"liburing",
|
|
303
|
+
P.TRACE_URING,
|
|
304
|
+
"Trace liburing mixins"
|
|
305
|
+
],
|
|
306
|
+
[
|
|
307
|
+
"timer_periodic",
|
|
308
|
+
P.TRACE_TIMER_PERIODIC,
|
|
309
|
+
"Trace periodic timers"
|
|
310
|
+
],
|
|
311
|
+
[
|
|
312
|
+
"liburing_timer",
|
|
313
|
+
P.TRACE_URING_TIME,
|
|
314
|
+
"Trace liburing timer"
|
|
315
|
+
],
|
|
316
|
+
[
|
|
317
|
+
"commands",
|
|
318
|
+
P.TRACE_COMMANDS,
|
|
319
|
+
"Trace commands"
|
|
320
|
+
]
|
|
321
|
+
], F = 0, G = 0, V = 0;
|
|
322
|
+
function M(e, t) {
|
|
323
|
+
if (mn(e)) return 268369920;
|
|
324
|
+
if (/^[0-9]+$/.test(String(e))) {
|
|
325
|
+
const t = Number(e);
|
|
326
|
+
if (t) return t;
|
|
327
|
+
}
|
|
328
|
+
return function(e) {
|
|
329
|
+
for (const [t, n] of U) if (t === e) return n;
|
|
330
|
+
return 0;
|
|
331
|
+
}(String(e)) || (Wt(`${t}: trace level NOT FOUND: ${e}`), 0);
|
|
332
|
+
}
|
|
333
|
+
function W(e) {
|
|
334
|
+
if (V) return 4294967295;
|
|
335
|
+
let t = F;
|
|
336
|
+
return e && (t |= e.trace_level || 0, e.gclass && (t |= e.gclass.trace_level || 0)), t;
|
|
228
337
|
}
|
|
229
|
-
function
|
|
338
|
+
function K(e) {
|
|
339
|
+
let t = G;
|
|
340
|
+
return e && (t |= e.no_trace_level || 0, e.gclass && (t |= e.gclass.no_trace_level || 0)), t;
|
|
341
|
+
}
|
|
342
|
+
function x() {
|
|
343
|
+
if (!p || !p.jn_attrs) return 0;
|
|
344
|
+
let e = 0;
|
|
345
|
+
if (nt(p, "tracing")) {
|
|
346
|
+
const t = Number(rt(p, "tracing")) || 0;
|
|
347
|
+
t >= 1 && (e |= P.TRACE_MACHINE), t >= 2 && (e |= P.TRACE_EV_KW);
|
|
348
|
+
}
|
|
349
|
+
return nt(p, "trace_timer") && rt(p, "trace_timer") && (e |= P.TRACE_TIMER), nt(p, "trace_creation") && rt(p, "trace_creation") && (e |= P.TRACE_CREATE_DELETE), nt(p, "trace_start_stop") && rt(p, "trace_start_stop") && (e |= P.TRACE_START_STOP), e;
|
|
350
|
+
}
|
|
351
|
+
function Y(e) {
|
|
352
|
+
return (W(e) | x()) & P.TRACE_CREATE_DELETE;
|
|
353
|
+
}
|
|
354
|
+
function B(e) {
|
|
355
|
+
return (W(e) | x()) & P.TRACE_START_STOP;
|
|
356
|
+
}
|
|
357
|
+
function J(e, t) {
|
|
358
|
+
if (V > 1) return !0;
|
|
359
|
+
if (!e) return !1;
|
|
360
|
+
const n = W(e) | x();
|
|
361
|
+
return !!(n & P.TRACE_MACHINE || n & P.TRACE_TIMER_PERIODIC && "EV_TIMEOUT_PERIODIC" === t || n & P.TRACE_TIMER && "EV_TIMEOUT" === t);
|
|
362
|
+
}
|
|
363
|
+
function H(e, t) {
|
|
230
364
|
let n = {};
|
|
231
|
-
if (!
|
|
365
|
+
if (!un(t)) return Wt("sdata_desc MUST be an array"), Bt(t), n;
|
|
232
366
|
for (let r = 0; r < t.length; r++) {
|
|
233
367
|
const o = t[r];
|
|
234
|
-
o.name &&
|
|
368
|
+
o.name && q(e, n, o);
|
|
235
369
|
}
|
|
236
370
|
return n;
|
|
237
371
|
}
|
|
238
|
-
function
|
|
372
|
+
function q(e, t, n) {
|
|
239
373
|
let r, o = n.default_value;
|
|
240
374
|
switch (n.type) {
|
|
241
|
-
case
|
|
375
|
+
case T.DTP_STRING:
|
|
242
376
|
r = String(o);
|
|
243
377
|
break;
|
|
244
|
-
case
|
|
245
|
-
r =
|
|
378
|
+
case T.DTP_BOOLEAN:
|
|
379
|
+
r = En(o);
|
|
246
380
|
break;
|
|
247
|
-
case
|
|
248
|
-
r = parseInt(o), isNaN(r) &&
|
|
381
|
+
case T.DTP_INTEGER:
|
|
382
|
+
r = parseInt(o), isNaN(r) && Wt(`${Ge(e)}: attr NaN: ${n.name}`);
|
|
249
383
|
break;
|
|
250
|
-
case
|
|
251
|
-
r = Number(o), isNaN(r) &&
|
|
384
|
+
case T.DTP_REAL:
|
|
385
|
+
r = Number(o), isNaN(r) && Wt(`${Ge(e)}: attr NaN: ${n.name}`);
|
|
252
386
|
break;
|
|
253
|
-
case
|
|
254
|
-
if (
|
|
387
|
+
case T.DTP_LIST:
|
|
388
|
+
if (cn(o)) try {
|
|
255
389
|
r = JSON.parse(o);
|
|
256
390
|
} catch (e) {
|
|
257
|
-
|
|
391
|
+
Wt(`JSON parse error: ${e.message}`);
|
|
258
392
|
}
|
|
259
393
|
else r = o;
|
|
260
|
-
|
|
394
|
+
un(r) || (r = []);
|
|
261
395
|
break;
|
|
262
|
-
case
|
|
263
|
-
if (
|
|
396
|
+
case T.DTP_DICT:
|
|
397
|
+
if (cn(o)) try {
|
|
264
398
|
r = JSON.parse(o);
|
|
265
399
|
} catch (e) {
|
|
266
|
-
|
|
400
|
+
Wt(`JSON parse error: ${e.message}`);
|
|
267
401
|
}
|
|
268
402
|
else r = o;
|
|
269
|
-
|
|
403
|
+
an(r) || (r = {});
|
|
270
404
|
break;
|
|
271
|
-
case
|
|
272
|
-
if (
|
|
405
|
+
case T.DTP_JSON:
|
|
406
|
+
if (cn(o)) try {
|
|
273
407
|
r = JSON.parse(o);
|
|
274
408
|
} catch (e) {
|
|
275
|
-
|
|
409
|
+
Wt(`JSON parse error: ${e.message}`);
|
|
276
410
|
}
|
|
277
411
|
else r = o;
|
|
278
412
|
break;
|
|
279
|
-
case
|
|
413
|
+
case T.DTP_POINTER: r = o;
|
|
280
414
|
}
|
|
281
|
-
return void 0 === r && (
|
|
415
|
+
return void 0 === r && (Wt(`default_value WRONG, it: ${n.name}, value: ${n.default_value}`), r = null), t[n.name] = r, 0;
|
|
282
416
|
}
|
|
283
|
-
function
|
|
417
|
+
function z(e, t, n, r) {
|
|
284
418
|
let o;
|
|
285
419
|
switch (n.type) {
|
|
286
|
-
case
|
|
420
|
+
case T.DTP_STRING:
|
|
287
421
|
if (null == r) o = "";
|
|
288
|
-
else if (
|
|
422
|
+
else if (cn(r)) o = String(r);
|
|
289
423
|
else {
|
|
290
424
|
let e = JSON.stringify(r);
|
|
291
425
|
e && (o = String(e));
|
|
292
426
|
}
|
|
293
427
|
break;
|
|
294
|
-
case
|
|
295
|
-
o =
|
|
428
|
+
case T.DTP_BOOLEAN:
|
|
429
|
+
o = En(r);
|
|
296
430
|
break;
|
|
297
|
-
case
|
|
298
|
-
o = parseInt(r), isNaN(o) &&
|
|
431
|
+
case T.DTP_INTEGER:
|
|
432
|
+
o = parseInt(r), isNaN(o) && Wt(`${Ge(e)}: attr NaN: ${n.name}`);
|
|
299
433
|
break;
|
|
300
|
-
case
|
|
301
|
-
o = Number(r), isNaN(o) &&
|
|
434
|
+
case T.DTP_REAL:
|
|
435
|
+
o = Number(r), isNaN(o) && Wt(`${Ge(e)}: attr NaN: ${n.name}`);
|
|
302
436
|
break;
|
|
303
|
-
case
|
|
304
|
-
if (
|
|
437
|
+
case T.DTP_LIST:
|
|
438
|
+
if (cn(r)) try {
|
|
305
439
|
o = JSON.parse(r);
|
|
306
440
|
} catch (e) {
|
|
307
|
-
|
|
441
|
+
Wt(`JSON parse error: ${e.message}`);
|
|
308
442
|
}
|
|
309
443
|
else o = r;
|
|
310
|
-
if (!
|
|
444
|
+
if (!un(o)) return Wt(`attr must be an array: ${n.name}`), -1;
|
|
311
445
|
break;
|
|
312
|
-
case
|
|
313
|
-
if (
|
|
446
|
+
case T.DTP_DICT:
|
|
447
|
+
if (cn(r)) try {
|
|
314
448
|
o = JSON.parse(r);
|
|
315
449
|
} catch (e) {
|
|
316
|
-
|
|
450
|
+
Wt(`JSON parse error: ${e.message}`);
|
|
317
451
|
}
|
|
318
452
|
else o = r;
|
|
319
|
-
if (!
|
|
453
|
+
if (!an(o)) return Wt(`attr must be an object: ${n.name}`), -1;
|
|
320
454
|
break;
|
|
321
|
-
case
|
|
322
|
-
if (
|
|
455
|
+
case T.DTP_JSON:
|
|
456
|
+
if (cn(r)) try {
|
|
323
457
|
o = JSON.parse(r);
|
|
324
458
|
} catch (e) {
|
|
325
|
-
|
|
459
|
+
Wt(`JSON parse error: ${e.message}`);
|
|
326
460
|
}
|
|
327
461
|
else o = r;
|
|
328
|
-
if (!
|
|
462
|
+
if (!un(o) && !an(o)) return Wt(`attr must be a json dict/list: ${n.name}`), -1;
|
|
329
463
|
break;
|
|
330
|
-
case
|
|
464
|
+
case T.DTP_POINTER: o = r;
|
|
331
465
|
}
|
|
332
|
-
return void 0 === o &&
|
|
466
|
+
return void 0 === o && Wt(`${Ge(e)}: attr undefined: ${n.name}`), t[n.name] = o, an(e.priv) && e.priv.hasOwnProperty(n.name) && (e.priv[n.name] = o), e.obflag & w.obflag_created && !(e.obflag & w.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, n.name), 0;
|
|
333
467
|
}
|
|
334
|
-
function
|
|
468
|
+
function Q(e) {
|
|
335
469
|
return e.jn_attrs;
|
|
336
470
|
}
|
|
337
|
-
function
|
|
338
|
-
return
|
|
471
|
+
function X(e, t, n) {
|
|
472
|
+
return nt(e, t) ? Q(e) : e && e.bottom_gobj ? X(e.bottom_gobj, t, n) : (n && Wt(`GClass Attribute NOT FOUND: ${Ge(e)}, attr ${t}`), null);
|
|
339
473
|
}
|
|
340
|
-
function
|
|
341
|
-
if (!(e && e instanceof S)) return n &&
|
|
474
|
+
function Z(e, t, n) {
|
|
475
|
+
if (!(e && e instanceof S)) return n && Wt("gclass NULL"), null;
|
|
342
476
|
if (!t) return e.attrs_table;
|
|
343
477
|
for (let n = 0; n < e.attrs_table.length; n++) {
|
|
344
478
|
const r = e.attrs_table[n];
|
|
345
479
|
if (r.name && r.name === t) return r;
|
|
346
480
|
}
|
|
347
|
-
return n &&
|
|
481
|
+
return n && Wt(`${e.gclass_name}: GClass Attribute NOT FOUND: ${t}`), null;
|
|
348
482
|
}
|
|
349
|
-
function
|
|
350
|
-
if (
|
|
351
|
-
if (e.includes("`") || e.includes("^") || e.includes(".")) return
|
|
352
|
-
if (
|
|
483
|
+
function ee(e, t, n, r, o, i, l, s, _, a, u) {
|
|
484
|
+
if (mn(e)) return Wt("gclass_name EMPTY"), null;
|
|
485
|
+
if (e.includes("`") || e.includes("^") || e.includes(".")) return Wt(`GClass name CANNOT have '.' or '^' or '\`' char: ${e}`), null;
|
|
486
|
+
if (ue(e)) return Wt(`GClass ALREADY exists: ${e}`), null;
|
|
353
487
|
let c = new S(e, r, o, i, l, s, _, a, u);
|
|
354
488
|
(function(e, t) {
|
|
355
|
-
e && e instanceof S ? t ? d[t] ?
|
|
489
|
+
e && e instanceof S ? t ? d[t] ? Wt(`gclass ALREADY REGISTERED: ${t}`) : d[t] = e : Wt("gclass_name undefined") : Wt("gclass undefined");
|
|
356
490
|
})(c, e);
|
|
357
491
|
const f = n.length;
|
|
358
492
|
for (let e = 0; e < f; e++) {
|
|
359
493
|
let t = n[e][0], r = n[e][1];
|
|
360
|
-
if (
|
|
361
|
-
if (
|
|
494
|
+
if (mn(t)) continue;
|
|
495
|
+
if (oe(c, t) < 0) return te(c), null;
|
|
362
496
|
const o = r.length;
|
|
363
497
|
for (let e = 0; e < o; e++) {
|
|
364
498
|
let n = r[e][0], o = r[e][1], i = r[e][2];
|
|
365
|
-
|
|
499
|
+
mn(n) || ie(c, t, n, o, i);
|
|
366
500
|
}
|
|
367
501
|
}
|
|
368
502
|
for (let e = 0; e < t.length; e++) {
|
|
369
503
|
let n = t[e][0], r = t[e][1];
|
|
370
|
-
if (!
|
|
371
|
-
if (
|
|
372
|
-
|
|
504
|
+
if (!mn(n)) {
|
|
505
|
+
if (_e(c, n)) return Wt(`SMachine: event repeated in input_events: ${n}`), te(c), null;
|
|
506
|
+
se(c, n, r);
|
|
373
507
|
}
|
|
374
508
|
}
|
|
375
509
|
if (!c.fsm_checked) {
|
|
376
|
-
if (
|
|
510
|
+
if (ae(c) < 0) return te(c), null;
|
|
377
511
|
c.fsm_checked = !0;
|
|
378
512
|
}
|
|
379
513
|
return c;
|
|
380
514
|
}
|
|
381
|
-
function
|
|
515
|
+
function te(e) {
|
|
382
516
|
let t;
|
|
383
|
-
if (
|
|
517
|
+
if (cn(e)) t = e;
|
|
384
518
|
else {
|
|
385
|
-
if (!(e instanceof S)) return
|
|
519
|
+
if (!(e instanceof S)) return Wt("Cannot unregister gclass, type unknown"), -1;
|
|
386
520
|
t = e.gclass_name;
|
|
387
521
|
}
|
|
388
522
|
let n = d[t];
|
|
389
|
-
return n ? n.instances > 0 ? (
|
|
523
|
+
return n ? n.instances > 0 ? (Wt(`Cannot unregister gclass, instances in use: ${t}`), -1) : (delete d[t], 0) : (Wt(`Cannot unregister gclass, not found: ${t}`), -1);
|
|
390
524
|
}
|
|
391
|
-
function
|
|
525
|
+
function ne(e, t) {
|
|
392
526
|
const n = e.dl_states.length, r = e.dl_states;
|
|
393
527
|
for (let e = 0; e < n; e++) {
|
|
394
528
|
let n = r[e];
|
|
@@ -396,7 +530,7 @@
|
|
|
396
530
|
}
|
|
397
531
|
return null;
|
|
398
532
|
}
|
|
399
|
-
function
|
|
533
|
+
function re(e, t) {
|
|
400
534
|
const n = e.dl_actions.length, r = e.dl_actions;
|
|
401
535
|
for (let e = 0; e < n; e++) {
|
|
402
536
|
let n = r[e];
|
|
@@ -404,23 +538,23 @@
|
|
|
404
538
|
}
|
|
405
539
|
return null;
|
|
406
540
|
}
|
|
407
|
-
function
|
|
408
|
-
return e instanceof S ?
|
|
541
|
+
function oe(e, t) {
|
|
542
|
+
return e instanceof S ? ne(e, t) ? (Wt(`state already exists: ${t}`), -1) : (e.dl_states.push(new I(t)), 0) : (Wt("Cannot add state, typeof not GClass"), -1);
|
|
409
543
|
}
|
|
410
|
-
function
|
|
411
|
-
if (!(e instanceof S)) return
|
|
412
|
-
if (
|
|
413
|
-
let i =
|
|
414
|
-
return i ?
|
|
544
|
+
function ie(e, t, n, r, o) {
|
|
545
|
+
if (!(e instanceof S)) return Wt("Cannot add state, typeof not GClass"), -1;
|
|
546
|
+
if (mn(t)) return Wt("state_name EMPTY"), -1;
|
|
547
|
+
let i = ne(e, t);
|
|
548
|
+
return i ? re(i, n) ? (Wt(`event already exists: gclass ${e.gclass_name}, state ${t}, event ${n}`), -1) : (i.dl_actions.push(new k(n, r, o)), 0) : (Wt(`state not found: ${t}`), -1);
|
|
415
549
|
}
|
|
416
|
-
function
|
|
417
|
-
|
|
550
|
+
function le(e, t, n) {
|
|
551
|
+
mn(t) || e.push(new $(t, n));
|
|
418
552
|
}
|
|
419
|
-
function
|
|
420
|
-
return e instanceof S ?
|
|
553
|
+
function se(e, t, n) {
|
|
554
|
+
return e instanceof S ? le(e.dl_events, t, n) : (Wt("Cannot add state, typeof not GClass"), -1);
|
|
421
555
|
}
|
|
422
|
-
function
|
|
423
|
-
if (!(e instanceof S)) return
|
|
556
|
+
function _e(e, t) {
|
|
557
|
+
if (!(e instanceof S)) return Wt("Cannot add state, typeof not GClass"), 0;
|
|
424
558
|
const n = e.dl_events.length, r = e.dl_events;
|
|
425
559
|
for (let e = 0; e < n; e++) {
|
|
426
560
|
let n = r[e];
|
|
@@ -428,234 +562,234 @@
|
|
|
428
562
|
}
|
|
429
563
|
return null;
|
|
430
564
|
}
|
|
431
|
-
function
|
|
432
|
-
if (!(e instanceof S)) return
|
|
565
|
+
function ae(e) {
|
|
566
|
+
if (!(e instanceof S)) return Wt("Cannot add state, typeof not GClass"), -1;
|
|
433
567
|
let t = 0;
|
|
434
|
-
|
|
568
|
+
sn(e.dl_states) || (Wt(`GClass without states: ${e.gclass_name}`), t += -1);
|
|
435
569
|
for (let n = 0; n < e.dl_states.length; n++) {
|
|
436
570
|
let r = e.dl_states[n];
|
|
437
|
-
if (!
|
|
571
|
+
if (!mn(r.state_name)) for (let n = 0; n < r.dl_actions.length; n++) {
|
|
438
572
|
let o = r.dl_actions[n];
|
|
439
|
-
|
|
573
|
+
mn(o.event_name) || (_e(e, o.event_name) || (Wt(`SMachine: state's event NOT in input_events: gclass ${e.gclass_name}, state ${r.state_name}, event ${o.event_name}`), t += -1), o.next_state && (ne(e, o.next_state) || (Wt(`SMachine: next state NOT in state names: gclass ${e.gclass_name}, state ${r.state_name}, next_state ${o.next_state}`), t += -1)));
|
|
440
574
|
}
|
|
441
575
|
}
|
|
442
576
|
for (let n = 0; n < e.dl_events.length; n++) {
|
|
443
577
|
let r = e.dl_events[n];
|
|
444
|
-
if (!
|
|
578
|
+
if (!mn(r.event_name) && (fn(r.event_flag) || (Wt(`SMachine: event flag is NOT number: gclass ${e.gclass_name}, event ${r.event_name}`), t += -1), !(r.event_flag & D.EVF_OUTPUT_EVENT))) {
|
|
445
579
|
let n = !1;
|
|
446
580
|
for (let t = 0; t < e.dl_states.length; t++) {
|
|
447
581
|
let o = e.dl_states[t];
|
|
448
|
-
|
|
582
|
+
mn(o.state_name) || re(o, r.event_name) && (n = !0);
|
|
449
583
|
}
|
|
450
|
-
n || (
|
|
584
|
+
n || (Wt(`SMachine: input_list's event NOT in state: gclass ${e.gclass_name}, event ${r.event_name}`), t += -1);
|
|
451
585
|
}
|
|
452
586
|
}
|
|
453
587
|
return t;
|
|
454
588
|
}
|
|
455
|
-
function
|
|
589
|
+
function ue(e, t) {
|
|
456
590
|
let n = null;
|
|
457
591
|
try {
|
|
458
592
|
n = d[e];
|
|
459
593
|
} catch (e) {}
|
|
460
|
-
return n || t &&
|
|
594
|
+
return n || t && Wt(`gclass not found: ${e}`), n;
|
|
461
595
|
}
|
|
462
|
-
function
|
|
463
|
-
return !m || m.obflag &
|
|
596
|
+
function ce() {
|
|
597
|
+
return !m || m.obflag & w.obflag_destroyed ? null : m;
|
|
464
598
|
}
|
|
465
|
-
function
|
|
599
|
+
function fe(e, t) {
|
|
466
600
|
e = e.toLowerCase();
|
|
467
601
|
let n = b[e];
|
|
468
|
-
return !n && t ? (
|
|
602
|
+
return !n && t ? (Wt(`gobj service not found: ${e}`), null) : n;
|
|
469
603
|
}
|
|
470
|
-
function
|
|
471
|
-
let t =
|
|
472
|
-
return t = t.toLowerCase(), b[t] &&
|
|
604
|
+
function ge(e) {
|
|
605
|
+
let t = Ue(e);
|
|
606
|
+
return t = t.toLowerCase(), b[t] && Wt(`service ALREADY REGISTERED: ${t}. Will be UPDATED`), b[t] = e, 0;
|
|
473
607
|
}
|
|
474
|
-
function
|
|
475
|
-
t.parent &&
|
|
608
|
+
function de(e, t) {
|
|
609
|
+
t.parent && Wt(`_add_child() ALREADY HAS PARENT: ${t.gobj_name}`), e.dl_children.push(t), t.parent = e;
|
|
476
610
|
}
|
|
477
|
-
function
|
|
478
|
-
let n =
|
|
479
|
-
n >= 0 && (
|
|
611
|
+
function be(e, t) {
|
|
612
|
+
let n = rr(e.dl_children, t);
|
|
613
|
+
n >= 0 && (on(e.dl_children, n), t.parent = null);
|
|
480
614
|
}
|
|
481
|
-
function
|
|
482
|
-
"__json_config_variables__" !== t &&
|
|
615
|
+
function pe(e, t) {
|
|
616
|
+
"__json_config_variables__" !== t && Wt(`GClass Attribute NOT FOUND: ${Ge(e)}, attr ${t}`);
|
|
483
617
|
}
|
|
484
|
-
function
|
|
618
|
+
function me(e, t, n) {
|
|
485
619
|
let r = t;
|
|
486
620
|
(function(e, t, n, r, o) {
|
|
487
|
-
if (!e || !t) return
|
|
621
|
+
if (!e || !t) return Wt("hsdata or kw NULL"), -1;
|
|
488
622
|
let i = 0;
|
|
489
623
|
for (const [l, s] of Object.entries(t)) {
|
|
490
|
-
const t =
|
|
491
|
-
t ? (-1 === n || t.flag & n) && (t.flag &
|
|
624
|
+
const t = Z(o.gclass, l, !1);
|
|
625
|
+
t ? (-1 === n || t.flag & n) && (t.flag & h.SDF_DEPRECATED && Kt(`${Ge(o)}: Deprecated attribute used in gobj creation: ${l}`), i += z(o, e, t, s)) : r && (r(o, l), i--);
|
|
492
626
|
}
|
|
493
627
|
return i;
|
|
494
|
-
})(
|
|
628
|
+
})(Q(e), r, -1, e.gclass.gclass_flag & N.gcflag_ignore_unknown_attrs ? 0 : pe, e) < 0 && (Wt(`${Ge(e)} json2data() FAILED`), Bt(r));
|
|
495
629
|
}
|
|
496
|
-
function
|
|
497
|
-
if (i &
|
|
498
|
-
if (p) return
|
|
499
|
-
i |=
|
|
630
|
+
function Ee(e, t, r, o, i) {
|
|
631
|
+
if (i & R.gobj_flag_yuno) {
|
|
632
|
+
if (p) return Wt("__yuno__ already created"), null;
|
|
633
|
+
i |= R.gobj_flag_service;
|
|
500
634
|
} else {
|
|
501
|
-
if (!o) return
|
|
502
|
-
if (!("string" == typeof o || o instanceof O)) return
|
|
503
|
-
if (
|
|
504
|
-
}
|
|
505
|
-
if (i &
|
|
506
|
-
if (i &
|
|
507
|
-
if (m) return
|
|
508
|
-
i |=
|
|
509
|
-
}
|
|
510
|
-
if (
|
|
511
|
-
let l =
|
|
512
|
-
if (!l) return
|
|
513
|
-
if (!
|
|
514
|
-
if (!
|
|
515
|
-
if (e.includes("`")) return
|
|
516
|
-
if (e.includes("^")) return
|
|
635
|
+
if (!o) return Wt("gobj NEEDS a parent!"), null;
|
|
636
|
+
if (!("string" == typeof o || o instanceof O)) return Wt(`BAD TYPE of parent: ${o}`), null;
|
|
637
|
+
if (cn(o) && !(o = fe(o))) return Kt(`parent service not found: ${o}`), null;
|
|
638
|
+
}
|
|
639
|
+
if (i & R.gobj_flag_service && fe(e, !1)) return Wt(`service ALREADY registered: ${t}^${e}`), null;
|
|
640
|
+
if (i & R.gobj_flag_default_service) {
|
|
641
|
+
if (m) return Wt(`default service ALREADY registered: ${t}^${e}`), null;
|
|
642
|
+
i |= R.gobj_flag_service;
|
|
643
|
+
}
|
|
644
|
+
if (mn(t)) return Wt("gclass_name must be a string"), null;
|
|
645
|
+
let l = ue(t, !1);
|
|
646
|
+
if (!l) return Wt(`GClass not registered: ${t}^${e}`), null;
|
|
647
|
+
if (!cn(e)) return Wt(`gobj_name must be a string: ${t}`), null;
|
|
648
|
+
if (!mn(e)) {
|
|
649
|
+
if (e.includes("`")) return Wt(`gobj_name cannot contain char ': ${t}^${e}`), null;
|
|
650
|
+
if (e.includes("^")) return Wt(`gobj_name cannot contain char ^: ${t}^${e}`), null;
|
|
517
651
|
}
|
|
518
652
|
let _ = new O(e, l, r, o, i);
|
|
519
|
-
_.jn_attrs =
|
|
653
|
+
_.jn_attrs = H(_, l.attrs_table);
|
|
520
654
|
for (const [e, t] of Object.entries(_.jn_attrs)) e in _.priv && (_.priv[e] = t);
|
|
521
|
-
let a =
|
|
522
|
-
return a &&
|
|
523
|
-
}
|
|
524
|
-
function
|
|
525
|
-
return
|
|
526
|
-
}
|
|
527
|
-
function
|
|
528
|
-
if (
|
|
529
|
-
e.__refs__ > 0 &&
|
|
530
|
-
let t =
|
|
531
|
-
t &&
|
|
532
|
-
let r =
|
|
533
|
-
r && r.gclass.gmt.mt_child_removed && (t &&
|
|
534
|
-
let t =
|
|
535
|
-
t = t.toLowerCase(), b[t] ? delete b[t] :
|
|
536
|
-
}(e),
|
|
655
|
+
let a = Y(_);
|
|
656
|
+
return a && L(n("💙💙⏩ creating: %s^%s", l.gclass_name, e)), _.gobj_flag & R.gobj_flag_service && ge(_), _.gobj_flag & R.gobj_flag_yuno && (p = _), _.gobj_flag & R.gobj_flag_default_service && (m = _), _.gobj_flag & R.gobj_flag_yuno || de(o, _), _.obflag |= w.obflag_created, _.gclass.instances++, me(_, r), _.gobj_flag & R.gobj_flag_service && s && s(_, null), _.gclass.gmt.mt_create2 ? _.gclass.gmt.mt_create2(_, r) : _.gclass.gmt.mt_create && _.gclass.gmt.mt_create(_), o && o.gclass.gmt.mt_child_added && (a && L(n("👦👦🔵 child_added(%s): %s", Ve(o), Ge(_))), o.gclass.gmt.mt_child_added(o, _)), a && L(n("💙💙⏪ created: %s", Ve(_))), _;
|
|
657
|
+
}
|
|
658
|
+
function Te(e, t, n, r) {
|
|
659
|
+
return Ee(e, t, n, r, R.gobj_flag_pure_child);
|
|
660
|
+
}
|
|
661
|
+
function he(e) {
|
|
662
|
+
if (xe(e)) return void Wt("gobj NULL or DESTROYED");
|
|
663
|
+
e.__refs__ > 0 && Wt(`${Ge(e)}: gobj DESTROYING with references: ${e.__refs__}`), e.playing && (Wt(`Destroying a PLAYING gobj: ${Ve(e)}`), we(e)), e.running && (Wt(`Destroying a RUNNING gobj: ${Ve(e)}`), Se(e)), e.obflag |= w.obflag_destroying;
|
|
664
|
+
let t = Y(e);
|
|
665
|
+
t && L(n("💔💔⏩ destroying: %s", Ve(e)));
|
|
666
|
+
let r = Me(e);
|
|
667
|
+
r && r.gclass.gmt.mt_child_removed && (t && L(n("👦👦🔴 child_removed(%s): %s", Ve(r), Ge(e))), r.gclass.gmt.mt_child_removed(r, e)), e.gobj_flag & R.gobj_flag_service && function(e) {
|
|
668
|
+
let t = Ue(e);
|
|
669
|
+
t = t.toLowerCase(), b[t] ? delete b[t] : Wt(`"service NOT found in register": ${t}`);
|
|
670
|
+
}(e), Nt(e, e.dl_subscriptions, !0), Nt(e, e.dl_subscribings, !0), r && (be(r, e), We(e) && (Ye(r) !== e || xe(r) || Be(r, null))), function(e) {
|
|
537
671
|
let t = e.dl_children.slice();
|
|
538
672
|
for (let e = 0; e < t.length; e++) {
|
|
539
673
|
let n = t[e];
|
|
540
|
-
|
|
674
|
+
xe(n) || he(n);
|
|
541
675
|
}
|
|
542
|
-
}(e), e.obflag &
|
|
676
|
+
}(e), e.obflag & w.obflag_created && e.gclass.gmt.mt_destroy && e.gclass.gmt.mt_destroy(e), t && L(n("💔💔⏪ destroyed: %s", Ve(e))), e.obflag |= w.obflag_destroyed, e.obflag & w.obflag_created && e.gclass.instances--;
|
|
543
677
|
}
|
|
544
|
-
function
|
|
545
|
-
if (
|
|
546
|
-
if (e.running) return
|
|
547
|
-
if (e.disabled) return
|
|
548
|
-
|
|
678
|
+
function ye(e) {
|
|
679
|
+
if (xe(e)) return Wt("gobj NULL or DESTROYED"), -1;
|
|
680
|
+
if (e.running) return Wt(`${Ge(e)}: GObj ALREADY RUNNING`), -1;
|
|
681
|
+
if (e.disabled) return Wt(`${Ge(e)}: GObj DISABLED`), -1;
|
|
682
|
+
B(e) && L(n("⏺ ⏺ start: %s", Ve(e))), e.running = !0;
|
|
549
683
|
let t = 0;
|
|
550
684
|
return e.gclass.gmt.mt_start && (t = e.gclass.gmt.mt_start(e)), t;
|
|
551
685
|
}
|
|
552
|
-
function
|
|
553
|
-
return e.gclass.gclass_flag & N.gcflag_manual_start ||
|
|
686
|
+
function ve(e, t, n) {
|
|
687
|
+
return e.gclass.gclass_flag & N.gcflag_manual_start || xe(e) || De(e) || Ae(e) || ye(e), 0;
|
|
554
688
|
}
|
|
555
|
-
function
|
|
556
|
-
return e.gclass.gclass_flag & N.gcflag_manual_start ||
|
|
689
|
+
function je(e, t, n) {
|
|
690
|
+
return e.gclass.gclass_flag & N.gcflag_manual_start || Ae(e) ? 1 : (De(e) || ye(e), 0);
|
|
557
691
|
}
|
|
558
|
-
function
|
|
559
|
-
if (
|
|
560
|
-
if (!e.running) return
|
|
561
|
-
e.playing && (
|
|
692
|
+
function Se(e) {
|
|
693
|
+
if (xe(e)) return Wt("gobj NULL or DESTROYED"), -1;
|
|
694
|
+
if (!e.running) return Wt(`${Ge(e)}: GObj NOT RUNNING`), -1;
|
|
695
|
+
e.playing && (Kt(`${Ge(e)}: GObj stopping without previous pause`), we(e)), B(e) && L(n("⏹ ⏹ stop: %s", Ve(e))), e.running = !1;
|
|
562
696
|
let t = 0;
|
|
563
697
|
return e.gclass.gmt.mt_stop && (t = e.gclass.gmt.mt_stop(e)), t;
|
|
564
698
|
}
|
|
565
|
-
function
|
|
566
|
-
return
|
|
699
|
+
function Oe(e, t, n) {
|
|
700
|
+
return De(e) && Se(e), 0;
|
|
567
701
|
}
|
|
568
|
-
function
|
|
569
|
-
return
|
|
702
|
+
function Ne(e) {
|
|
703
|
+
return xe(e) ? (Wt("gobj NULL or DESTROYED"), -1) : He(e, A.WALK_FIRST2LAST, Oe, 0, 0);
|
|
570
704
|
}
|
|
571
|
-
function
|
|
572
|
-
if (
|
|
573
|
-
if (e.playing) return
|
|
574
|
-
if (e.disabled) return
|
|
575
|
-
if (!
|
|
576
|
-
if (e.gclass.gclass_flag & N.gcflag_required_start_to_play) return
|
|
577
|
-
|
|
578
|
-
}
|
|
579
|
-
|
|
705
|
+
function Re(e) {
|
|
706
|
+
if (xe(e)) return Wt(`gobj NULL or DESTROYED: ${Ge(e)}`), -1;
|
|
707
|
+
if (e.playing) return Wt(`${Ge(e)}: GObj ALREADY PLAYING`), -1;
|
|
708
|
+
if (e.disabled) return Wt(`${Ge(e)}: GObj DISABLED`), -1;
|
|
709
|
+
if (!De(e)) {
|
|
710
|
+
if (e.gclass.gclass_flag & N.gcflag_required_start_to_play) return Wt(`${Ge(e)}: Cannot play, start not done`), -1;
|
|
711
|
+
Kt(`${Ge(e)}: GObj playing without previous start`), ye(e);
|
|
712
|
+
}
|
|
713
|
+
B(e) && L(n("⏯ ⏯ play: %s", Ve(e))), e.playing = !0;
|
|
580
714
|
let t = 0;
|
|
581
715
|
return e.gclass.gmt.mt_play && (t = e.gclass.gmt.mt_play(e), t < 0 && (e.playing = !1)), t;
|
|
582
716
|
}
|
|
583
|
-
function
|
|
584
|
-
return
|
|
717
|
+
function we(e) {
|
|
718
|
+
return xe(e) ? (Wt("gobj NULL or DESTROYED"), -1) : e.playing ? (B(e) && L(n("⏸ ⏸ pause: %s", Ve(e))), e.playing = !1, e.gclass.gmt.mt_pause ? e.gclass.gmt.mt_pause(e) : 0) : (Wt(`${Ge(e)}: GObj NOT PLAYING`), -1);
|
|
585
719
|
}
|
|
586
|
-
function
|
|
587
|
-
return !
|
|
720
|
+
function De(e) {
|
|
721
|
+
return !xe(e) && e.running;
|
|
588
722
|
}
|
|
589
|
-
function
|
|
590
|
-
return !!
|
|
723
|
+
function Ae(e) {
|
|
724
|
+
return !!xe(e) || e.disabled;
|
|
591
725
|
}
|
|
592
|
-
function
|
|
593
|
-
return !!(e && e.gobj_flag &
|
|
726
|
+
function ke(e) {
|
|
727
|
+
return !!(e && e.gobj_flag & R.gobj_flag_service);
|
|
594
728
|
}
|
|
595
|
-
function
|
|
596
|
-
return !
|
|
729
|
+
function Ie(e) {
|
|
730
|
+
return !xe(e) && e.playing;
|
|
597
731
|
}
|
|
598
|
-
function
|
|
599
|
-
return !p || p.obflag &
|
|
732
|
+
function $e() {
|
|
733
|
+
return !p || p.obflag & w.obflag_destroyed ? null : p;
|
|
600
734
|
}
|
|
601
|
-
function
|
|
602
|
-
let e =
|
|
603
|
-
return e ?
|
|
735
|
+
function Ce() {
|
|
736
|
+
let e = $e();
|
|
737
|
+
return e ? Ue(e) : "";
|
|
604
738
|
}
|
|
605
|
-
function
|
|
606
|
-
let e =
|
|
607
|
-
return e ?
|
|
739
|
+
function Le() {
|
|
740
|
+
let e = $e();
|
|
741
|
+
return e ? st(e, "yuno_role") : "";
|
|
608
742
|
}
|
|
609
|
-
function
|
|
610
|
-
let e =
|
|
611
|
-
return e ?
|
|
743
|
+
function Pe() {
|
|
744
|
+
let e = $e();
|
|
745
|
+
return e ? st(e, "yuno_id") : "";
|
|
612
746
|
}
|
|
613
|
-
function
|
|
614
|
-
return
|
|
747
|
+
function Ue(e) {
|
|
748
|
+
return pn(e) ? e.gobj_name : (Wt("gobj bad type"), null);
|
|
615
749
|
}
|
|
616
|
-
function
|
|
617
|
-
return
|
|
750
|
+
function Fe(e) {
|
|
751
|
+
return pn(e) ? e.gclass.gclass_name : (Wt("gobj NULL of bad type"), null);
|
|
618
752
|
}
|
|
619
|
-
function
|
|
620
|
-
return
|
|
753
|
+
function Ge(e) {
|
|
754
|
+
return pn(e) ? e.gclass.gclass_name + "^" + Ue(e) : (Wt("gobj bad type"), null);
|
|
621
755
|
}
|
|
622
|
-
function
|
|
623
|
-
if (!
|
|
624
|
-
let t =
|
|
625
|
-
for (; n;) t =
|
|
756
|
+
function Ve(e) {
|
|
757
|
+
if (!pn(e)) return Wt("gobj NULL of bad type"), null;
|
|
758
|
+
let t = Ge(e), n = Me(e);
|
|
759
|
+
for (; n;) t = Ge(n) + "`" + t, n = Me(n);
|
|
626
760
|
return t;
|
|
627
761
|
}
|
|
628
|
-
function
|
|
629
|
-
return
|
|
762
|
+
function Me(e) {
|
|
763
|
+
return pn(e) ? e.parent : (Wt("gobj NULL of bad type"), null);
|
|
630
764
|
}
|
|
631
|
-
function
|
|
632
|
-
return
|
|
765
|
+
function We(e) {
|
|
766
|
+
return pn(e) ? !!(e.gobj_flag & R.gobj_flag_volatil) : (Wt("gobj NULL of bad type"), null);
|
|
633
767
|
}
|
|
634
|
-
function
|
|
635
|
-
return
|
|
768
|
+
function Ke(e) {
|
|
769
|
+
return pn(e) ? !!(e.gobj_flag & R.gobj_flag_pure_child) : (Wt("gobj NULL of bad type"), null);
|
|
636
770
|
}
|
|
637
|
-
function
|
|
638
|
-
return !
|
|
771
|
+
function xe(e) {
|
|
772
|
+
return !pn(e) || !!(e.obflag & (w.obflag_destroyed | w.obflag_destroying));
|
|
639
773
|
}
|
|
640
|
-
function
|
|
641
|
-
return
|
|
774
|
+
function Ye(e) {
|
|
775
|
+
return pn(e) ? e.bottom_gobj : (Wt("gobj NULL of bad type"), null);
|
|
642
776
|
}
|
|
643
|
-
function
|
|
644
|
-
if (!
|
|
645
|
-
e.bottom_gobj &&
|
|
777
|
+
function Be(e, t) {
|
|
778
|
+
if (!pn(e)) return Wt("gobj NULL of bad type"), null;
|
|
779
|
+
e.bottom_gobj && Kt(`${Ge(e)}: bottom_gobj already set`), e.bottom_gobj = t;
|
|
646
780
|
}
|
|
647
|
-
function
|
|
648
|
-
return
|
|
781
|
+
function Je(e, t, n) {
|
|
782
|
+
return pn(e) ? t ? Z(e.gclass, t, n) : e.gclass.attrs_table : (Wt("gobj NULL of bad type"), null);
|
|
649
783
|
}
|
|
650
|
-
function
|
|
651
|
-
return
|
|
784
|
+
function He(e, t, n, r, o) {
|
|
785
|
+
return xe(e) ? (Wt("gobj NULL, destroying, or bad type"), 0) : ze(e.dl_children, t, n, r, o);
|
|
652
786
|
}
|
|
653
|
-
function
|
|
654
|
-
return
|
|
787
|
+
function qe(e, t, n, r, o) {
|
|
788
|
+
return xe(e) ? (Wt("gobj NULL, destroying, or bad type"), 0) : Xe(e.dl_children, t, n, r, o);
|
|
655
789
|
}
|
|
656
|
-
function
|
|
790
|
+
function ze(e, t, n, r, o) {
|
|
657
791
|
let i, l = [...e];
|
|
658
|
-
if (t &
|
|
792
|
+
if (t & A.WALK_LAST2FIRST) for (let e = l.length; e > 0; e--) {
|
|
659
793
|
i = l[e - 1];
|
|
660
794
|
let t = n(i, r, o);
|
|
661
795
|
if (t < 0) return t;
|
|
@@ -667,149 +801,154 @@
|
|
|
667
801
|
}
|
|
668
802
|
return 0;
|
|
669
803
|
}
|
|
670
|
-
function
|
|
671
|
-
let i, l =
|
|
804
|
+
function Qe(e, t, n, r, o) {
|
|
805
|
+
let i, l = ze(e, t, n, r, o);
|
|
672
806
|
if (l < 0) return l;
|
|
673
|
-
if (t &
|
|
674
|
-
for (let s = e.length; s > 0; s--) if (i = e[s - 1], l =
|
|
675
|
-
} else for (let s = 0; s < e.length; s++) if (i = e[s], l =
|
|
807
|
+
if (t & A.WALK_LAST2FIRST) {
|
|
808
|
+
for (let s = e.length; s > 0; s--) if (i = e[s - 1], l = Qe([...i.dl_children], t, n, r, o), l < 0) return l;
|
|
809
|
+
} else for (let s = 0; s < e.length; s++) if (i = e[s], l = Qe([...i.dl_children], t, n, r, o), l < 0) return l;
|
|
676
810
|
return l;
|
|
677
811
|
}
|
|
678
|
-
function
|
|
679
|
-
if (t &
|
|
812
|
+
function Xe(e, t, n, r, o) {
|
|
813
|
+
if (t & A.WALK_BYLEVEL) return Qe(e, t, n, r, o);
|
|
680
814
|
let i, l;
|
|
681
|
-
if (t &
|
|
682
|
-
if (l = e[s - 1], i =
|
|
815
|
+
if (t & A.WALK_BOTTOM2TOP) for (let s = e.length; s > 0; s--) {
|
|
816
|
+
if (l = e[s - 1], i = Xe([...l.dl_children], t, n, r, o), i < 0) return i;
|
|
683
817
|
if (i = n(l, r, o), i < 0) return i;
|
|
684
818
|
}
|
|
685
819
|
else for (let s = 0; s < e.length; s++) {
|
|
686
820
|
if (l = e[s], i = n(l, r, o), i < 0) return i;
|
|
687
|
-
if (0 === i && (i =
|
|
821
|
+
if (0 === i && (i = Xe([...l.dl_children], t, n, r, o), i < 0)) return i;
|
|
688
822
|
}
|
|
689
823
|
return 0;
|
|
690
824
|
}
|
|
691
|
-
function
|
|
692
|
-
if (!
|
|
825
|
+
function Ze(e, t) {
|
|
826
|
+
if (!pn(e)) return Wt("gobj NULL of bad type"), !1;
|
|
693
827
|
let n = t.__gclass_name__, r = t.__gobj_name__, o = t.__prefix_gobj_name__;
|
|
694
828
|
t.__disabled__;
|
|
695
829
|
let i = t.__state__;
|
|
696
|
-
if (n && n !==
|
|
697
|
-
if (r && r !==
|
|
830
|
+
if (n && n !== Fe(e)) return !1;
|
|
831
|
+
if (r && r !== Ue(e)) return !1;
|
|
698
832
|
if (o) {
|
|
699
833
|
let t = o.length;
|
|
700
|
-
if (o !==
|
|
834
|
+
if (o !== Ue(e).substring(0, t)) return !1;
|
|
701
835
|
}
|
|
702
|
-
if (i && i !==
|
|
836
|
+
if (i && i !== dt(e)) return !1;
|
|
703
837
|
let l = e.jn_attrs;
|
|
704
|
-
for (const n of Object.keys(t)) if ("__gclass_name__" !== n && "__gobj_name__" !== n && "__prefix_gobj_name__" !== n && "__disabled__" !== n && "__state__" !== n &&
|
|
838
|
+
for (const n of Object.keys(t)) if ("__gclass_name__" !== n && "__gobj_name__" !== n && "__prefix_gobj_name__" !== n && "__disabled__" !== n && "__state__" !== n && nt(e, n) && l[n] !== t[n]) return !1;
|
|
705
839
|
return !0;
|
|
706
840
|
}
|
|
707
|
-
function
|
|
708
|
-
if (
|
|
841
|
+
function et(e, t) {
|
|
842
|
+
if (xe(e)) return Wt("gobj NULL or DESTROYED"), null;
|
|
709
843
|
const n = e.dl_children;
|
|
710
844
|
for (let e = 0; e < n.length; e++) {
|
|
711
845
|
const r = n[e];
|
|
712
|
-
if (
|
|
846
|
+
if (Ze(r, t)) return r;
|
|
713
847
|
}
|
|
714
848
|
return null;
|
|
715
849
|
}
|
|
716
|
-
function
|
|
850
|
+
function tt(e, t) {
|
|
717
851
|
if (!t) return null;
|
|
718
852
|
let n = t.split("`");
|
|
719
853
|
if (!function(e, t) {
|
|
720
854
|
let n = t.split("^"), r = null, o = null;
|
|
721
855
|
if (2 === n.length) {
|
|
722
|
-
if (o = n[0], r = n[1], o !==
|
|
856
|
+
if (o = n[0], r = n[1], o !== Fe(e)) return !1;
|
|
723
857
|
} else {
|
|
724
858
|
if (1 !== n.length) return !1;
|
|
725
859
|
r = n[0];
|
|
726
860
|
}
|
|
727
|
-
return r ===
|
|
861
|
+
return r === Ue(e);
|
|
728
862
|
}(e, n[0])) return null;
|
|
729
863
|
if (1 === n.length) return e;
|
|
730
864
|
let r = n[1].split("^"), o = {};
|
|
731
865
|
1 === r.length ? o.__gobj_name__ = r : (o.__gclass_name__ = r[0], o.__gobj_name__ = r[1]);
|
|
732
|
-
let i =
|
|
733
|
-
return i ? (n.splice(0, 1), n = n.join("`"),
|
|
866
|
+
let i = et(e, o);
|
|
867
|
+
return i ? (n.splice(0, 1), n = n.join("`"), tt(i, n)) : null;
|
|
734
868
|
}
|
|
735
|
-
function
|
|
736
|
-
return !
|
|
869
|
+
function nt(e, t) {
|
|
870
|
+
return !mn(t) && !!Z(e.gclass, t, !1);
|
|
737
871
|
}
|
|
738
|
-
function
|
|
872
|
+
function rt(e, t, n) {
|
|
739
873
|
let r = e.jn_attrs;
|
|
740
874
|
if (t in r && r.hasOwnProperty(t)) {
|
|
741
875
|
let n = r[t];
|
|
742
876
|
return e.gclass.gmt.mt_reading ? e.gclass.gmt.mt_reading(e, t, n) : n;
|
|
743
877
|
}
|
|
744
|
-
return
|
|
878
|
+
return Wt(`${Ge(e)}: GClass Attribute NOT FOUND, attr ${t}`), null;
|
|
745
879
|
}
|
|
746
|
-
function
|
|
880
|
+
function ot(e, t, n) {
|
|
747
881
|
let r = {}, o = e.gclass.attrs_table;
|
|
748
882
|
for (let n = 0; n < o.length; n++) {
|
|
749
883
|
const i = o[n];
|
|
750
884
|
if (i.name && (-1 === t || i.flag & t)) {
|
|
751
885
|
let t;
|
|
752
|
-
!e.gclass.gmt.mt_reading || e.obflag &
|
|
886
|
+
!e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ? t = Xt(e.jn_attrs, i.name) : (t = e.gclass.gmt.mt_reading(e, i.name), void 0 === t && (t = Xt(e.jn_attrs, i.name))), en(r, i.name, t);
|
|
753
887
|
}
|
|
754
888
|
}
|
|
755
889
|
return r;
|
|
756
890
|
}
|
|
757
|
-
function
|
|
891
|
+
function it(e, t) {
|
|
758
892
|
if (t) {
|
|
759
|
-
if (0 ===
|
|
760
|
-
if (0 ===
|
|
761
|
-
if (0 ===
|
|
762
|
-
if (0 ===
|
|
763
|
-
}
|
|
764
|
-
let n =
|
|
765
|
-
return n ? !e.gclass.gmt.mt_reading || e.obflag &
|
|
766
|
-
}
|
|
767
|
-
function
|
|
768
|
-
t &&
|
|
769
|
-
let n =
|
|
770
|
-
return n ? !e.gclass.gmt.mt_reading || e.obflag &
|
|
771
|
-
}
|
|
772
|
-
function
|
|
773
|
-
if (t && 0 ===
|
|
774
|
-
let n =
|
|
775
|
-
return n ? !e.gclass.gmt.mt_reading || e.obflag &
|
|
776
|
-
}
|
|
777
|
-
function
|
|
778
|
-
let n =
|
|
779
|
-
return n ? !e.gclass.gmt.mt_reading || e.obflag &
|
|
780
|
-
}
|
|
781
|
-
function
|
|
782
|
-
let o =
|
|
893
|
+
if (0 === hn(t, "__disabled__")) return Ae(e);
|
|
894
|
+
if (0 === hn(t, "__running__")) return De(e);
|
|
895
|
+
if (0 === hn(t, "__playing__")) return Ie(e);
|
|
896
|
+
if (0 === hn(t, "__service__")) return ke(e);
|
|
897
|
+
}
|
|
898
|
+
let n = X(e, t, !1);
|
|
899
|
+
return n ? !e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ? Xt(n, t) : e.gclass.gmt.mt_reading(e, t) : (Wt(`${Ge(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
|
|
900
|
+
}
|
|
901
|
+
function lt(e, t) {
|
|
902
|
+
t && hn(t, "__trace_level__");
|
|
903
|
+
let n = X(e, t, !1);
|
|
904
|
+
return n ? !e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ? Xt(n, t) : e.gclass.gmt.mt_reading(e, t) : (Wt(`${Ge(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
|
|
905
|
+
}
|
|
906
|
+
function st(e, t) {
|
|
907
|
+
if (t && 0 === hn(t, "__state__")) return dt(e);
|
|
908
|
+
let n = X(e, t, !1);
|
|
909
|
+
return n ? !e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ? Xt(n, t) : e.gclass.gmt.mt_reading(e, t) : (Wt(`${Ge(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
|
|
910
|
+
}
|
|
911
|
+
function _t(e, t) {
|
|
912
|
+
let n = X(e, t, !1);
|
|
913
|
+
return n ? !e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ? Xt(n, t) : e.gclass.gmt.mt_reading(e, t) : (Wt(`${Ge(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
|
|
914
|
+
}
|
|
915
|
+
function at(e, t, n, r) {
|
|
916
|
+
let o = Q(e), i = 0;
|
|
783
917
|
for (const [r, l] of Object.entries(t)) {
|
|
784
|
-
let t =
|
|
785
|
-
t && (-1 === n || t.flag & n) && (i +=
|
|
918
|
+
let t = Je(e, r, !0);
|
|
919
|
+
t && (-1 === n || t.flag & n) && (i += z(e, o, t, l));
|
|
786
920
|
}
|
|
787
921
|
return i;
|
|
788
922
|
}
|
|
789
|
-
function
|
|
790
|
-
let r =
|
|
791
|
-
return r ? (r[t] =
|
|
923
|
+
function ut(e, t, n) {
|
|
924
|
+
let r = X(e, t, !1);
|
|
925
|
+
return r ? (r[t] = En(n), an(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & w.obflag_created && !(e.obflag & w.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (Wt(`${Ge(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
|
|
792
926
|
}
|
|
793
|
-
function
|
|
794
|
-
let r =
|
|
795
|
-
return r ? (r[t] = parseInt(n),
|
|
927
|
+
function ct(e, t, n) {
|
|
928
|
+
let r = X(e, t, !1);
|
|
929
|
+
return r ? (r[t] = parseInt(n), an(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & w.obflag_created && !(e.obflag & w.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (Wt(`${Ge(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
|
|
796
930
|
}
|
|
797
|
-
function
|
|
798
|
-
let r =
|
|
799
|
-
return r ? (r[t] = String(n),
|
|
931
|
+
function ft(e, t, n) {
|
|
932
|
+
let r = X(e, t, !1);
|
|
933
|
+
return r ? (r[t] = String(n), an(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & w.obflag_created && !(e.obflag & w.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (Wt(`${Ge(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
|
|
800
934
|
}
|
|
801
|
-
function
|
|
802
|
-
if (
|
|
935
|
+
function gt(e, t) {
|
|
936
|
+
if (xe(e)) return Wt("gobj NULL or DESTROYED"), null;
|
|
803
937
|
if (e.current_state.state_name === t) return !1;
|
|
804
|
-
let
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
938
|
+
let r = ne(e.gclass, t);
|
|
939
|
+
if (!r) return Wt(`${Ge(e)}: state unknown, state ${t}`), !1;
|
|
940
|
+
e.last_state = e.current_state, e.current_state = r;
|
|
941
|
+
let o = J(e, "EV_STATE_CHANGED"), i = !!function(e) {
|
|
942
|
+
return W(e) & P.TRACE_STATES;
|
|
943
|
+
}(e);
|
|
944
|
+
return (o || i) && L(n("🔀🔀 mach(%s%s^%s), new st(%s), prev st(%s)", e.running ? "" : "!!", Fe(e), Ue(e), dt(e), e.last_state.state_name)), !0;
|
|
945
|
+
}
|
|
946
|
+
function dt(e) {
|
|
947
|
+
return pn(e) ? e.current_state.state_name : (Wt("hgobj NULL"), "");
|
|
948
|
+
}
|
|
949
|
+
function bt(e, t, n) {
|
|
950
|
+
if (!pn(e)) return Wt("gobj NULL of bad type"), null;
|
|
951
|
+
let r = _e(e.gclass, t);
|
|
813
952
|
if (r) return r;
|
|
814
953
|
if (n) {
|
|
815
954
|
const e = g.length, n = g;
|
|
@@ -820,96 +959,101 @@
|
|
|
820
959
|
}
|
|
821
960
|
return null;
|
|
822
961
|
}
|
|
823
|
-
function
|
|
824
|
-
let r =
|
|
962
|
+
function pt(e, t, n) {
|
|
963
|
+
let r = bt(e, t, !1);
|
|
825
964
|
return !!r && !(n && !(r.event_flag & n));
|
|
826
965
|
}
|
|
827
|
-
function
|
|
828
|
-
let r =
|
|
829
|
-
return !!r && !(n && !(r.event_flag & n)) && !!(r.event_flag &
|
|
966
|
+
function mt(e, t, n) {
|
|
967
|
+
let r = bt(e, t, !1);
|
|
968
|
+
return !!r && !(n && !(r.event_flag & n)) && !!(r.event_flag & D.EVF_OUTPUT_EVENT);
|
|
830
969
|
}
|
|
831
|
-
function
|
|
832
|
-
if (!(e && e instanceof O)) return
|
|
833
|
-
if (e.obflag & (
|
|
970
|
+
function Et(e, t, r, o) {
|
|
971
|
+
if (!(e && e instanceof O)) return Wt("gobj dst NULL"), -1;
|
|
972
|
+
if (e.obflag & (w.obflag_destroyed | w.obflag_destroying)) return Wt("gobj dst DESTROYED"), -1;
|
|
834
973
|
let i = e.current_state;
|
|
835
|
-
if (!i) return
|
|
836
|
-
let l =
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
974
|
+
if (!i) return Wt(`${Ge(e)}: current_state NULL`), -1;
|
|
975
|
+
let l = J(e, t) && !function(e, t) {
|
|
976
|
+
if (V > 1) return !1;
|
|
977
|
+
if (!e) return !0;
|
|
978
|
+
const n = K(e);
|
|
979
|
+
return !!(n & P.TRACE_MACHINE || n & P.TRACE_TIMER_PERIODIC && "EV_TIMEOUT_PERIODIC" === t || n & P.TRACE_TIMER && "EV_TIMEOUT" === t);
|
|
980
|
+
}(o, t);
|
|
981
|
+
E++;
|
|
982
|
+
let s = re(i, t);
|
|
983
|
+
if (!s) return e.gclass.gmt.mt_inject_event ? (E--, l && (L(n("🔃 mach(%s%s), st: %s, ev: %s, from(%s%s)", e.running ? "" : "!!", Ge(e), i.state_name, t || "", o && !o.running ? "!!" : "", Ge(o))), r && l > 1 && ln(r) && Bt(r)), e.gclass.gmt.mt_inject_event(e, t, r, o)) : (l && L(n("📛 mach(%s%s^%s), st: %s, ev: %s, 📛📛ERROR Event NOT DEFINED in state📛📛, from(%s%s^%s)", e.running ? "" : "!!", Fe(e), Ue(e), i.state_name, t || "", o && !o.running ? "!!" : "", Fe(o), Ue(o))), Wt(`📛📛 Event NOT DEFINED in state 📛📛: ${Ge(e)}, ${i.state_name}, ${t}`), E--, -1);
|
|
840
984
|
if (l) {
|
|
841
|
-
if (1 ===
|
|
985
|
+
if (1 === C) L(n("🔄 %s %s%s %s from %s%s", t || "", e.running ? "" : "!!", Ge(e), i.state_name, o && !o.running ? "!!" : "", Ge(o)));
|
|
842
986
|
else {
|
|
843
987
|
let r = "";
|
|
844
|
-
s.action && (r =
|
|
988
|
+
s.action && (r = ir(s.action)), L(n("🔄 mach(%s%s^%s), st: %s, ev: %s%s%s, ac: %s, from(%s%s^%s)", e.running ? "" : "!!", Fe(e), Ue(e), i.state_name, "", t || "", "", r, o && !o.running ? "!!" : "", Fe(o), Ue(o)));
|
|
845
989
|
}
|
|
846
|
-
r &&
|
|
990
|
+
r && (W(e) | x()) & P.TRACE_EV_KW && ln(r) && Bt(r);
|
|
847
991
|
}
|
|
848
|
-
s.next_state &&
|
|
992
|
+
s.next_state && gt(e, s.next_state);
|
|
849
993
|
let _ = -1;
|
|
850
994
|
try {
|
|
851
995
|
s.action && (_ = s.action(e, t, r, o));
|
|
852
996
|
} finally {}
|
|
853
|
-
return !l || 1 ===
|
|
997
|
+
return !l || 1 === C || e.obflag & w.obflag_destroyed || L(n("<- mach(%s%s^%s), st: %s, ev: %s, ret: %d", e.running ? "" : "!!", Fe(e), Ue(e), e.current_state.state_name, t || "", fn(_) ? _ : 0)), E--, _;
|
|
854
998
|
}
|
|
855
|
-
var
|
|
999
|
+
var Tt = Object.freeze({
|
|
856
1000
|
__hard_subscription__: 1,
|
|
857
1001
|
__own_event__: 2
|
|
858
|
-
}),
|
|
859
|
-
j(
|
|
860
|
-
j(
|
|
861
|
-
j(
|
|
862
|
-
j(
|
|
863
|
-
j(
|
|
864
|
-
j(
|
|
865
|
-
j(
|
|
866
|
-
j(
|
|
867
|
-
j(
|
|
868
|
-
j(
|
|
1002
|
+
}), ht = [
|
|
1003
|
+
j(T.DTP_POINTER, "publisher", 0, null, "publisher gobj"),
|
|
1004
|
+
j(T.DTP_POINTER, "subscriber", 0, null, "subscriber gobj"),
|
|
1005
|
+
j(T.DTP_STRING, "event", 0, "", "event name subscribed"),
|
|
1006
|
+
j(T.DTP_STRING, "renamed_event", 0, "", "rename event name"),
|
|
1007
|
+
j(T.DTP_INTEGER, "subs_flag", 0, 0, "subscription flag"),
|
|
1008
|
+
j(T.DTP_JSON, "__config__", 0, null, "subscription config"),
|
|
1009
|
+
j(T.DTP_JSON, "__global__", 0, null, "global kw, merge in publishing"),
|
|
1010
|
+
j(T.DTP_JSON, "__local__", 0, null, "local kw, remove in publishing"),
|
|
1011
|
+
j(T.DTP_JSON, "__filter__", 0, null, "filter kw, filter in publishing"),
|
|
1012
|
+
j(T.DTP_STRING, "__service__", 0, "", "subscription service"),
|
|
869
1013
|
v()
|
|
870
1014
|
];
|
|
871
|
-
function
|
|
872
|
-
let i =
|
|
873
|
-
if (t && t !==
|
|
874
|
-
let t =
|
|
875
|
-
|
|
1015
|
+
function yt(e, t, n, r, o) {
|
|
1016
|
+
let i = An(t, r, "__config__", null), l = An(t, r, "__global__", null), s = An(t, r, "__local__", null), _ = kn(t, r, "__filter__", null), a = !0;
|
|
1017
|
+
if (t && t !== Dn(null, e, "publisher", null) && (a = !1), o && o !== Dn(null, e, "subscriber", null) && (a = !1), n && n !== wn(null, e, "event", "") && (a = !1), _n(i) > 0) {
|
|
1018
|
+
let t = An(null, e, "__config__", null);
|
|
1019
|
+
_n(t) > 0 && Ht(t, i) || (a = !1);
|
|
876
1020
|
}
|
|
877
|
-
if (
|
|
878
|
-
let t =
|
|
879
|
-
|
|
1021
|
+
if (_n(l) > 0) {
|
|
1022
|
+
let t = An(null, e, "__global__", null);
|
|
1023
|
+
_n(t) > 0 && Ht(t, l) || (a = !1);
|
|
880
1024
|
}
|
|
881
|
-
if (
|
|
882
|
-
let t =
|
|
883
|
-
|
|
1025
|
+
if (_n(s) > 0) {
|
|
1026
|
+
let t = An(null, e, "__local__", null);
|
|
1027
|
+
_n(t) > 0 && Ht(t, s) || (a = !1);
|
|
884
1028
|
}
|
|
885
|
-
if (
|
|
886
|
-
let t =
|
|
887
|
-
|
|
1029
|
+
if (_n(_) > 0) {
|
|
1030
|
+
let t = kn(null, e, "__filter__", null);
|
|
1031
|
+
_n(t) > 0 && Ht(t, _) || (a = !1);
|
|
888
1032
|
}
|
|
889
1033
|
return a;
|
|
890
1034
|
}
|
|
891
|
-
function
|
|
1035
|
+
function vt(e, t, n, r, o) {
|
|
892
1036
|
let i = [];
|
|
893
1037
|
for (let l = 0; l < e.length; l++) {
|
|
894
1038
|
let s = e[l];
|
|
895
|
-
|
|
1039
|
+
yt(s, t, n, r, o) && nn(i, s);
|
|
896
1040
|
}
|
|
897
1041
|
return i;
|
|
898
1042
|
}
|
|
899
|
-
function
|
|
900
|
-
for (let i = 0; i < e.length; i++) if (
|
|
1043
|
+
function jt(e, t, n, r, o) {
|
|
1044
|
+
for (let i = 0; i < e.length; i++) if (yt(e[i], t, n, r, o)) return i;
|
|
901
1045
|
return -1;
|
|
902
1046
|
}
|
|
903
|
-
function
|
|
904
|
-
let i =
|
|
905
|
-
if (!!(
|
|
906
|
-
p &&
|
|
907
|
-
let _ =
|
|
908
|
-
return _ >= 0 ?
|
|
1047
|
+
function St(e, t, r, o) {
|
|
1048
|
+
let i = Dn(e, t, "publisher", null, At.KW_REQUIRED), l = Dn(e, t, "subscriber", null, At.KW_REQUIRED), s = wn(e, t, "event", "", At.KW_REQUIRED);
|
|
1049
|
+
if (!!(Rn(e, t, "subs_flag", null, At.KW_REQUIRED) & Tt.__hard_subscription__) && !r) return -1;
|
|
1050
|
+
p && it(p, "trace_subscriptions") && (L(n("💜💜👎 unsubscribing event '%s': publisher %s, subscriber'%s'", s || "", Ge(i), Ge(l))), Bt(t)), i.obflag & w.obflag_destroyed || o || i.gclass.gmt.mt_subscription_deleted && i.gclass.gmt.mt_subscription_deleted(i, t);
|
|
1051
|
+
let _ = jt(i.dl_subscriptions, i, s, t, l);
|
|
1052
|
+
return _ >= 0 ? on(i.dl_subscriptions, _) : (Wt(`${Ge(e)}: subscription in publisher not found`), Bt(t)), _ = jt(l.dl_subscribings, i, s, t, l), _ >= 0 ? on(l.dl_subscribings, _) : (Wt(`${Ge(e)}: subscription in subscriber not found`), Bt(t)), 0;
|
|
909
1053
|
}
|
|
910
|
-
function
|
|
911
|
-
if (null == r && (r = {}), !e) return
|
|
912
|
-
if (!o) return
|
|
1054
|
+
function Ot(e, t, r, o) {
|
|
1055
|
+
if (null == r && (r = {}), !e) return Wt(`publisher NULL: ev ${t}`), 0;
|
|
1056
|
+
if (!o) return Wt(`subscriber NULL: ev ${t}`), 0;
|
|
913
1057
|
const i = new Set([
|
|
914
1058
|
"__config__",
|
|
915
1059
|
"__global__",
|
|
@@ -918,52 +1062,52 @@
|
|
|
918
1062
|
"__service__"
|
|
919
1063
|
]);
|
|
920
1064
|
if (Object.keys(r).forEach((n) => {
|
|
921
|
-
i.has(n) ||
|
|
922
|
-
}),
|
|
923
|
-
else if (!(
|
|
924
|
-
let l =
|
|
925
|
-
|
|
1065
|
+
i.has(n) || Wt(`${Ge(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
|
|
1066
|
+
}), mn(t)) t = "";
|
|
1067
|
+
else if (!(mt(e, t, D.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & N.gcflag_no_check_output_events)) return Wt(`event NOT in output event list: ${Ge(e)}, ${t}`), 0;
|
|
1068
|
+
let l = vt(e.dl_subscriptions, e, t, r, o);
|
|
1069
|
+
sn(l) > 0 && (Wt(`${Ge(e)}: ${sn(l)} subscription(s) REPEATED, will be deleted and override`), Bt(l, "subscription REPEATED"), Nt(e, l, !1));
|
|
926
1070
|
let s = function(e, t, n, r) {
|
|
927
|
-
let o =
|
|
928
|
-
|
|
1071
|
+
let o = H(e, ht);
|
|
1072
|
+
tn(o, "event", t), tn(o, "subscriber", r), tn(o, "publisher", e);
|
|
929
1073
|
let i = 0;
|
|
930
1074
|
if (n) {
|
|
931
|
-
let t =
|
|
932
|
-
if (
|
|
933
|
-
let n =
|
|
934
|
-
if (
|
|
935
|
-
let t =
|
|
936
|
-
|
|
1075
|
+
let t = An(e, n, "__config__", null), r = An(e, n, "__global__", null), l = An(e, n, "__local__", null), s = kn(e, n, "__filter__", null), _ = wn(e, n, "__service__", "");
|
|
1076
|
+
if (_n(r) > 0 && tn(o, "__global__", Jt(r)), _n(t) > 0) {
|
|
1077
|
+
let n = Jt(t);
|
|
1078
|
+
if (tn(o, "__config__", n), jn(n, "__hard_subscription__")) {
|
|
1079
|
+
let t = Nn(e, n, "__hard_subscription__", !1);
|
|
1080
|
+
Zt(n, "__hard_subscription__"), t && (i |= Tt.__hard_subscription__);
|
|
937
1081
|
}
|
|
938
|
-
if (
|
|
939
|
-
let t =
|
|
940
|
-
|
|
1082
|
+
if (jn(n, "__own_event__")) {
|
|
1083
|
+
let t = Nn(e, n, "__own_event__", !1);
|
|
1084
|
+
Zt(n, "__own_event__"), t && (i |= Tt.__own_event__);
|
|
941
1085
|
}
|
|
942
1086
|
}
|
|
943
|
-
|
|
1087
|
+
_n(l) > 0 && tn(o, "__local__", Jt(l)), _n(s) > 0 && tn(o, "__filter__", Jt(s)), mn(_) || tn(o, "__service__", _);
|
|
944
1088
|
}
|
|
945
|
-
return
|
|
1089
|
+
return tn(o, "subs_flag", i), o;
|
|
946
1090
|
}(e, t, r, o);
|
|
947
|
-
return s ? (
|
|
1091
|
+
return s ? (nn(e.dl_subscriptions, s), nn(o.dl_subscribings, s), p && it(p, "trace_subscriptions") && (L(n("💜💜👍 subscribing event '%s', publisher '%s', subscriber %s", t || "", Ge(e), Ge(o))), r && Bt(r)), e.gclass.gmt.mt_subscription_added && e.gclass.gmt.mt_subscription_added(e, s) < 0 && (St(e, s, !0, !0), s = 0), s) : (Wt(`${Ge(e)}: _create_subscription() FAILED`), 0);
|
|
948
1092
|
}
|
|
949
|
-
function
|
|
1093
|
+
function Nt(e, t, n) {
|
|
950
1094
|
let r = [...t];
|
|
951
|
-
for (let t = 0; t < r.length; t++)
|
|
1095
|
+
for (let t = 0; t < r.length; t++) St(e, r[t], n, !1);
|
|
952
1096
|
return 0;
|
|
953
1097
|
}
|
|
954
|
-
function
|
|
955
|
-
return null == n && (n = {}),
|
|
1098
|
+
function Rt(e, t, n, r) {
|
|
1099
|
+
return null == n && (n = {}), vt(e.dl_subscriptions, e, t, n, r);
|
|
956
1100
|
}
|
|
957
|
-
function
|
|
958
|
-
return
|
|
1101
|
+
function wt(e, t, n, r) {
|
|
1102
|
+
return vt(e.dl_subscribings, r, t, n, e);
|
|
959
1103
|
}
|
|
960
|
-
function
|
|
961
|
-
if (
|
|
962
|
-
if (
|
|
963
|
-
let o =
|
|
964
|
-
if (!(o && o.event_flag & (
|
|
965
|
-
let i = p &&
|
|
966
|
-
if (i && (
|
|
1104
|
+
function Dt(e, t, r) {
|
|
1105
|
+
if (an(r) || (r = {}), !e || e.obflag & (w.obflag_destroyed | w.obflag_destroying)) return Wt("gobj NULL or DESTROYED"), -1;
|
|
1106
|
+
if (mn(t)) return Wt(`${Ge(e)}: event EMPTY`), -1;
|
|
1107
|
+
let o = bt(e, t, !0);
|
|
1108
|
+
if (!(o && o.event_flag & (D.EVF_SYSTEM_EVENT | D.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & N.gcflag_no_check_output_events)) return Wt(`event NOT in output event list: ${Ge(e)}, ev ${t}`), -1;
|
|
1109
|
+
let i = p && it(p, "trace_subscriptions");
|
|
1110
|
+
if (i && (L(n("🔝🔝 mach(%s%s^%s), st: %s, ev: %s%s%s", e.running ? "" : "!!", Fe(e), Ue(e), e.current_state.state_name, "", t || "", "")), Bt(r)), e.gclass.gmt.mt_publish_event) {
|
|
967
1111
|
let n = e.gclass.gmt.mt_publish_event(e, t, r);
|
|
968
1112
|
if (n <= 0) return n;
|
|
969
1113
|
}
|
|
@@ -975,28 +1119,28 @@
|
|
|
975
1119
|
if (n < 0) break;
|
|
976
1120
|
if (0 === n) continue;
|
|
977
1121
|
}
|
|
978
|
-
let u =
|
|
979
|
-
if (!u ||
|
|
980
|
-
let c =
|
|
981
|
-
if (
|
|
982
|
-
|
|
983
|
-
let o =
|
|
984
|
-
if (e.gclass.gmt.mt_publication_filter ? d = e.gclass.gmt.mt_publication_filter(e, t, g, u) :
|
|
1122
|
+
let u = Dn(e, a, "subscriber", null, At.KW_REQUIRED);
|
|
1123
|
+
if (!u || xe(u)) continue;
|
|
1124
|
+
let c = Rn(e, a, "subs_flag", 0, At.KW_REQUIRED), f = wn(e, a, "event", "", At.KW_REQUIRED);
|
|
1125
|
+
if (mn(f) || 0 === hn(f, t)) {
|
|
1126
|
+
An(e, a, "__config__", null, 0);
|
|
1127
|
+
let o = An(e, a, "__global__", null, 0), l = An(e, a, "__local__", null, 0), f = kn(e, a, "__filter__", null, 0), g = r, d = 1;
|
|
1128
|
+
if (e.gclass.gmt.mt_publication_filter ? d = e.gclass.gmt.mt_publication_filter(e, t, g, u) : _n(f) > 0 && (d = Ln(g, f), i && (L(n("💜💜🔄%s publishing with filter, event '%s', subscriber'%s', publisher %s", d ? "👍" : "👎", t || "", Ge(u), Ge(e))), Bt(f))), d < 0) break;
|
|
985
1129
|
if (0 === d) continue;
|
|
986
|
-
let b =
|
|
987
|
-
if (b && b.event_flag &
|
|
988
|
-
l &&
|
|
989
|
-
let p =
|
|
990
|
-
if (p < 0 && c &
|
|
1130
|
+
let b = bt(u, t, !0);
|
|
1131
|
+
if (b && b.event_flag & D.EVF_SYSTEM_EVENT && !pt(u, b.event_name, 0)) continue;
|
|
1132
|
+
l && vn(g, l), o && qt(g, o), i && (L(n("🔝🔄 mach(%s%s), st: %s, ev: %s, from(%s%s)", u.running ? "" : "!!", Ge(u), dt(u), t || "", e && !e.running ? "!!" : "", Ge(e))), Bt(g));
|
|
1133
|
+
let p = Et(u, t, g, e);
|
|
1134
|
+
if (p < 0 && c & Tt.__own_event__) {
|
|
991
1135
|
s = -1;
|
|
992
1136
|
break;
|
|
993
1137
|
}
|
|
994
|
-
if (_ += p, s++,
|
|
1138
|
+
if (_ += p, s++, xe(e)) break;
|
|
995
1139
|
}
|
|
996
1140
|
}
|
|
997
|
-
return s || o && o.event_flag &
|
|
1141
|
+
return s || o && o.event_flag & D.EVF_NO_WARN_SUBS || Kt(`${Ge(e)}: Publish event WITHOUT subscribers, ev ${t}`), _;
|
|
998
1142
|
}
|
|
999
|
-
var
|
|
1143
|
+
var At = Object.freeze({
|
|
1000
1144
|
KW_REQUIRED: 1,
|
|
1001
1145
|
KW_CREATE: 2,
|
|
1002
1146
|
KW_WILD_NUMBER: 4,
|
|
@@ -1005,7 +1149,7 @@
|
|
|
1005
1149
|
KW_VERBOSE: 32,
|
|
1006
1150
|
KW_LOWER: 64,
|
|
1007
1151
|
KW_RECURSIVE: 128
|
|
1008
|
-
}),
|
|
1152
|
+
}), kt = (Object.freeze({
|
|
1009
1153
|
JSON_OBJECT: 1,
|
|
1010
1154
|
JSON_ARRAY: 2,
|
|
1011
1155
|
JSON_STRING: 3,
|
|
@@ -1014,23 +1158,23 @@
|
|
|
1014
1158
|
JSON_TRUE: 6,
|
|
1015
1159
|
JSON_FALSE: 7,
|
|
1016
1160
|
JSON_NULL: 8
|
|
1017
|
-
}), "undefined" != typeof window ? window.console : console),
|
|
1018
|
-
var
|
|
1019
|
-
var
|
|
1020
|
-
function
|
|
1021
|
-
if (
|
|
1022
|
-
|
|
1161
|
+
}), "undefined" != typeof window ? window.console : console), It = kt.error, $t = kt.warn, Ct = kt.info, Lt = kt.debug, Pt = null;
|
|
1162
|
+
var Ut = !0;
|
|
1163
|
+
var Ft = !1;
|
|
1164
|
+
function Gt(e, t, n) {
|
|
1165
|
+
if (Pt && !Ft) {
|
|
1166
|
+
Ft = !0;
|
|
1023
1167
|
try {
|
|
1024
|
-
|
|
1168
|
+
Pt(e, t, n);
|
|
1025
1169
|
} catch (e) {} finally {
|
|
1026
|
-
|
|
1170
|
+
Ft = !1;
|
|
1027
1171
|
}
|
|
1028
1172
|
}
|
|
1029
1173
|
}
|
|
1030
|
-
function
|
|
1031
|
-
e ? (
|
|
1174
|
+
function Vt(e) {
|
|
1175
|
+
e ? (It = e, $t = e) : (It = kt.error, $t = kt.warn);
|
|
1032
1176
|
}
|
|
1033
|
-
function
|
|
1177
|
+
function Mt(e) {
|
|
1034
1178
|
const t = Array.prototype.slice.call(arguments);
|
|
1035
1179
|
let n = "";
|
|
1036
1180
|
if ("string" == typeof e) {
|
|
@@ -1052,36 +1196,36 @@
|
|
|
1052
1196
|
} else n = t.map((e) => "object" == typeof e ? JSON.stringify(e) : String(e)).join(" ");
|
|
1053
1197
|
return n;
|
|
1054
1198
|
}
|
|
1055
|
-
function
|
|
1056
|
-
let t =
|
|
1057
|
-
|
|
1199
|
+
function Wt(e) {
|
|
1200
|
+
let t = Mt(e), n = nr();
|
|
1201
|
+
It && (It === kt.error ? Ut && It("%c" + n + " ERROR: " + String(t), "color:red") : (Ut && kt.error("%c" + n + " ERROR: " + String(t), "color:red"), It(`${n} ERROR: ${String(t)}`))), Gt("error", t, n);
|
|
1058
1202
|
}
|
|
1059
|
-
function
|
|
1060
|
-
let t =
|
|
1061
|
-
|
|
1203
|
+
function Kt(e) {
|
|
1204
|
+
let t = Mt(e), n = nr();
|
|
1205
|
+
$t && ($t === kt.warn ? Ut && $t("%c" + n + " WARNING: " + String(t), "color:yellow") : (Ut && kt.warn("%c" + n + " WARNING: " + String(t), "color:yellow"), $t(`${n} WARNING: ${String(t)}`))), Gt("warning", t, n);
|
|
1062
1206
|
}
|
|
1063
|
-
function
|
|
1064
|
-
let t =
|
|
1065
|
-
|
|
1207
|
+
function xt(e) {
|
|
1208
|
+
let t = Mt(e), n = nr();
|
|
1209
|
+
Lt && Ut && Lt("%c" + n + " DEBUG: " + String(t), "color:silver"), Gt("debug", t, n);
|
|
1066
1210
|
}
|
|
1067
|
-
function
|
|
1068
|
-
let t =
|
|
1069
|
-
|
|
1211
|
+
function Yt(e) {
|
|
1212
|
+
let t = Mt(e), n = nr();
|
|
1213
|
+
Lt && Ut && Lt("%c" + n + " MSG: " + String(t), "color:cyan"), Gt("msg", t, n);
|
|
1070
1214
|
}
|
|
1071
|
-
function
|
|
1072
|
-
|
|
1215
|
+
function Bt(e, t) {
|
|
1216
|
+
Ut && (t && window.console.warn("=====> " + t), window.console.dir(e)), Gt("json", e, nr());
|
|
1073
1217
|
}
|
|
1074
|
-
function
|
|
1218
|
+
function Jt(e) {
|
|
1075
1219
|
return structuredClone(e);
|
|
1076
1220
|
}
|
|
1077
|
-
function
|
|
1221
|
+
function Ht(e, t) {
|
|
1078
1222
|
if (e === t) return !0;
|
|
1079
1223
|
if (null === e || null === t) return e === t;
|
|
1080
1224
|
if (typeof e != typeof t) return !1;
|
|
1081
1225
|
if (Array.isArray(e) !== Array.isArray(t)) return !1;
|
|
1082
1226
|
if (Array.isArray(e)) {
|
|
1083
1227
|
if (e.length !== t.length) return !1;
|
|
1084
|
-
for (let n = 0; n < e.length; n++) if (!
|
|
1228
|
+
for (let n = 0; n < e.length; n++) if (!Ht(e[n], t[n])) return !1;
|
|
1085
1229
|
return !0;
|
|
1086
1230
|
}
|
|
1087
1231
|
if ("object" == typeof e) {
|
|
@@ -1089,211 +1233,211 @@
|
|
|
1089
1233
|
if (n.length !== r.length) return !1;
|
|
1090
1234
|
for (let o = 0; o < n.length; o++) {
|
|
1091
1235
|
if (n[o] !== r[o]) return !1;
|
|
1092
|
-
if (!
|
|
1236
|
+
if (!Ht(e[n[o]], t[r[o]])) return !1;
|
|
1093
1237
|
}
|
|
1094
1238
|
return !0;
|
|
1095
1239
|
}
|
|
1096
1240
|
return e === t;
|
|
1097
1241
|
}
|
|
1098
|
-
function
|
|
1242
|
+
function qt(e, t) {
|
|
1099
1243
|
if (!t) return e;
|
|
1100
1244
|
for (let n of Object.keys(t)) e[n] = t[n];
|
|
1101
1245
|
return e;
|
|
1102
1246
|
}
|
|
1103
|
-
function
|
|
1247
|
+
function zt(e, t) {
|
|
1104
1248
|
if (!t) return e;
|
|
1105
1249
|
for (let n in t) t.hasOwnProperty(n) && e.hasOwnProperty(n) && (e[n] = t[n]);
|
|
1106
1250
|
return e;
|
|
1107
1251
|
}
|
|
1108
|
-
function
|
|
1252
|
+
function Qt(e, t) {
|
|
1109
1253
|
if (!t) return e;
|
|
1110
1254
|
for (let n in t) t.hasOwnProperty(n) && !e.hasOwnProperty(n) && (e[n] = t[n]);
|
|
1111
1255
|
return e;
|
|
1112
1256
|
}
|
|
1113
|
-
function
|
|
1257
|
+
function Xt(e, t) {
|
|
1114
1258
|
if (e && e.hasOwnProperty(t)) return e[t];
|
|
1115
1259
|
}
|
|
1116
|
-
function
|
|
1260
|
+
function Zt(e, t) {
|
|
1117
1261
|
e && e.hasOwnProperty(t) && delete e[t];
|
|
1118
1262
|
}
|
|
1119
|
-
function
|
|
1263
|
+
function en(e, t, n) {
|
|
1120
1264
|
e[t] = n;
|
|
1121
1265
|
}
|
|
1122
|
-
function
|
|
1266
|
+
function tn(e, t, n) {
|
|
1123
1267
|
e[t] = n;
|
|
1124
1268
|
}
|
|
1125
|
-
function
|
|
1269
|
+
function nn(e, t) {
|
|
1126
1270
|
e.push(t);
|
|
1127
1271
|
}
|
|
1128
|
-
function
|
|
1272
|
+
function rn(e, t) {
|
|
1129
1273
|
e.push(t);
|
|
1130
1274
|
}
|
|
1131
|
-
function
|
|
1275
|
+
function on(e, t) {
|
|
1132
1276
|
e.splice(t, 1);
|
|
1133
1277
|
}
|
|
1134
|
-
function
|
|
1135
|
-
return
|
|
1278
|
+
function ln(e) {
|
|
1279
|
+
return an(e) ? Object.keys(e).length : 0;
|
|
1136
1280
|
}
|
|
1137
|
-
function
|
|
1138
|
-
return
|
|
1281
|
+
function sn(e) {
|
|
1282
|
+
return un(e) ? e.length : 0;
|
|
1139
1283
|
}
|
|
1140
|
-
function
|
|
1141
|
-
return
|
|
1284
|
+
function _n(e) {
|
|
1285
|
+
return an(e) ? Object.keys(e).length : un(e) ? e.length : cn(e) && e.length > 0 ? 1 : 0;
|
|
1142
1286
|
}
|
|
1143
|
-
function
|
|
1287
|
+
function an(e) {
|
|
1144
1288
|
return null !== e && "object" == typeof e && !Array.isArray(e);
|
|
1145
1289
|
}
|
|
1146
|
-
function
|
|
1290
|
+
function un(e) {
|
|
1147
1291
|
return Array.isArray(e);
|
|
1148
1292
|
}
|
|
1149
|
-
function
|
|
1293
|
+
function cn(e) {
|
|
1150
1294
|
return "string" == typeof e;
|
|
1151
1295
|
}
|
|
1152
|
-
function
|
|
1296
|
+
function fn(e) {
|
|
1153
1297
|
return "number" == typeof e && Number.isFinite(e);
|
|
1154
1298
|
}
|
|
1155
|
-
function
|
|
1299
|
+
function gn(e) {
|
|
1156
1300
|
return "boolean" == typeof e;
|
|
1157
1301
|
}
|
|
1158
|
-
function
|
|
1302
|
+
function dn(e) {
|
|
1159
1303
|
return null == e;
|
|
1160
1304
|
}
|
|
1161
|
-
function
|
|
1305
|
+
function bn(e) {
|
|
1162
1306
|
return "function" == typeof e;
|
|
1163
1307
|
}
|
|
1164
|
-
function
|
|
1308
|
+
function pn(e) {
|
|
1165
1309
|
return e instanceof O;
|
|
1166
1310
|
}
|
|
1167
|
-
function
|
|
1168
|
-
return !
|
|
1311
|
+
function mn(e) {
|
|
1312
|
+
return !cn(e) || 0 === e.length;
|
|
1169
1313
|
}
|
|
1170
|
-
function
|
|
1171
|
-
return
|
|
1314
|
+
function En(e) {
|
|
1315
|
+
return fn(e) ? Boolean(e) : /^\s*(true|1|on)\s*$/i.test(e);
|
|
1172
1316
|
}
|
|
1173
|
-
function
|
|
1317
|
+
function Tn(e, t) {
|
|
1174
1318
|
return e === t ? 0 : e > t ? 1 : -1;
|
|
1175
1319
|
}
|
|
1176
|
-
function
|
|
1320
|
+
function hn(e, t) {
|
|
1177
1321
|
let n = e.toLowerCase(), r = t.toLowerCase();
|
|
1178
1322
|
return n === r ? 0 : n > r ? 1 : -1;
|
|
1179
1323
|
}
|
|
1180
|
-
function
|
|
1181
|
-
if (
|
|
1182
|
-
if (
|
|
1324
|
+
function yn(e, t) {
|
|
1325
|
+
if (an(e) || an(t) || un(e) || un(t)) return 0;
|
|
1326
|
+
if (fn(e) || fn(t)) {
|
|
1183
1327
|
let n = Number(e), r = Number(t);
|
|
1184
1328
|
return n > r ? 1 : n < r ? -1 : 0;
|
|
1185
1329
|
}
|
|
1186
|
-
if (
|
|
1330
|
+
if (gn(e) || gn(t)) {
|
|
1187
1331
|
let n = Number(e), r = Number(t);
|
|
1188
1332
|
return n > r ? 1 : n < r ? -1 : 0;
|
|
1189
1333
|
}
|
|
1190
|
-
return
|
|
1334
|
+
return Tn(String(e), String(t));
|
|
1191
1335
|
}
|
|
1192
|
-
function
|
|
1193
|
-
if ("object" != typeof t || Array.isArray(t)) if (Array.isArray(t)) for (const n of t)
|
|
1336
|
+
function vn(e, t) {
|
|
1337
|
+
if ("object" != typeof t || Array.isArray(t)) if (Array.isArray(t)) for (const n of t) vn(e, n);
|
|
1194
1338
|
else "string" == typeof t && delete e[t];
|
|
1195
1339
|
else for (const n of Object.keys(t)) delete e[n];
|
|
1196
1340
|
}
|
|
1197
|
-
function
|
|
1341
|
+
function jn(e, t) {
|
|
1198
1342
|
return !(!(t in e) || !e.hasOwnProperty(t));
|
|
1199
1343
|
}
|
|
1200
|
-
function
|
|
1201
|
-
if (e && !
|
|
1202
|
-
if (!
|
|
1344
|
+
function Sn(e, t, n, r) {
|
|
1345
|
+
if (e && !pn(e) && Wt("GObj bad instanceof"), !an(t) && !un(t)) return Wt(`${Ge(e)}: kw must be list or dict`), 0;
|
|
1346
|
+
if (!cn(n)) return Wt(`${Ge(e)}: path must be a string: ${String(n)}`), 0;
|
|
1203
1347
|
let o = n.split("`");
|
|
1204
1348
|
if (o.length <= 1) return t[n];
|
|
1205
1349
|
let i = o.length;
|
|
1206
|
-
for (let l = 0; l < i; l++) if (void 0 === (t = t[o[l]])) return void (r &&
|
|
1350
|
+
for (let l = 0; l < i; l++) if (void 0 === (t = t[o[l]])) return void (r && Wt(`${Ge(e)}: path not found: ${String(n)}`));
|
|
1207
1351
|
return t;
|
|
1208
1352
|
}
|
|
1209
|
-
function
|
|
1210
|
-
e && !
|
|
1353
|
+
function On(e, t, n) {
|
|
1354
|
+
e && !pn(e) && Wt("GObj bad instanceof");
|
|
1211
1355
|
let [r, o] = function(e, t) {
|
|
1212
1356
|
let n = e.lastIndexOf(t);
|
|
1213
1357
|
return -1 === n ? [e, ""] : [e.substring(0, n), e.substring(n + 1)];
|
|
1214
1358
|
}(n, "`");
|
|
1215
|
-
return
|
|
1359
|
+
return mn(o) ? Zt(t, n) : Zt(Sn(e, t, r, !0), o), 0;
|
|
1216
1360
|
}
|
|
1217
|
-
function
|
|
1218
|
-
e && !
|
|
1219
|
-
let i =
|
|
1220
|
-
const l = o && o &
|
|
1361
|
+
function Nn(e, t, n, r, o) {
|
|
1362
|
+
e && !pn(e) && Wt("GObj bad instanceof");
|
|
1363
|
+
let i = Sn(e, t, n, !1);
|
|
1364
|
+
const l = o && o & At.KW_REQUIRED, s = o && o & At.KW_CREATE, _ = o && o & At.KW_EXTRACT;
|
|
1221
1365
|
if (void 0 === i) {
|
|
1222
1366
|
if (s) {
|
|
1223
1367
|
let o = Boolean(r);
|
|
1224
|
-
return
|
|
1368
|
+
return In(e, t, n, o), o;
|
|
1225
1369
|
}
|
|
1226
|
-
return l && (
|
|
1370
|
+
return l && (Wt(`path not found: '${n}'`), Bt(t)), Boolean(r);
|
|
1227
1371
|
}
|
|
1228
|
-
return _ &&
|
|
1372
|
+
return _ && On(e, t, n), Boolean(i);
|
|
1229
1373
|
}
|
|
1230
|
-
function
|
|
1231
|
-
e && !
|
|
1232
|
-
let i =
|
|
1233
|
-
const l = o && o &
|
|
1374
|
+
function Rn(e, t, n, r, o) {
|
|
1375
|
+
e && !pn(e) && Wt("GObj bad instanceof");
|
|
1376
|
+
let i = Sn(e, t, n, !1);
|
|
1377
|
+
const l = o && o & At.KW_REQUIRED, s = o && o & At.KW_CREATE, _ = o && o & At.KW_EXTRACT;
|
|
1234
1378
|
if (void 0 === i) {
|
|
1235
1379
|
if (s) {
|
|
1236
1380
|
let o = parseInt(r);
|
|
1237
|
-
return
|
|
1381
|
+
return In(e, t, n, o), o;
|
|
1238
1382
|
}
|
|
1239
|
-
return l && (
|
|
1383
|
+
return l && (Wt(`path not found: '${n}'`), Bt(t)), parseInt(r);
|
|
1240
1384
|
}
|
|
1241
|
-
return _ &&
|
|
1385
|
+
return _ && On(e, t, n), fn(i) ? parseInt(i) : (l && (Wt(`path value MUST BE a number: ${n}`), Yt(t)), parseInt(r));
|
|
1242
1386
|
}
|
|
1243
|
-
function
|
|
1244
|
-
e && !
|
|
1245
|
-
let i =
|
|
1246
|
-
const l = o && o &
|
|
1387
|
+
function wn(e, t, n, r, o) {
|
|
1388
|
+
e && !pn(e) && Wt("GObj bad instanceof");
|
|
1389
|
+
let i = Sn(e, t, n, !1);
|
|
1390
|
+
const l = o && o & At.KW_REQUIRED, s = o && o & At.KW_CREATE, _ = o && o & At.KW_EXTRACT;
|
|
1247
1391
|
if (void 0 === i) {
|
|
1248
1392
|
if (s) {
|
|
1249
1393
|
let o = String(r);
|
|
1250
|
-
return
|
|
1394
|
+
return In(e, t, n, o), o;
|
|
1251
1395
|
}
|
|
1252
|
-
return l && (
|
|
1396
|
+
return l && (Wt(`path not found: '${n}'`), Bt(t)), String(r);
|
|
1253
1397
|
}
|
|
1254
|
-
return _ &&
|
|
1398
|
+
return _ && On(e, t, n), cn(i) ? String(i) : (l && (Wt(`${Ge(e)}: path value MUST BE a string: ${n}`), Yt(t)), String(r));
|
|
1255
1399
|
}
|
|
1256
|
-
function
|
|
1257
|
-
e && !
|
|
1258
|
-
let i =
|
|
1259
|
-
const l = o && o &
|
|
1400
|
+
function Dn(e, t, n, r, o) {
|
|
1401
|
+
e && !pn(e) && Wt("GObj bad instanceof");
|
|
1402
|
+
let i = Sn(e, t, n, !1);
|
|
1403
|
+
const l = o && o & At.KW_REQUIRED, s = o && o & At.KW_CREATE, _ = o && o & At.KW_EXTRACT;
|
|
1260
1404
|
if (void 0 === i) {
|
|
1261
1405
|
if (s) {
|
|
1262
1406
|
let o = r;
|
|
1263
|
-
return
|
|
1407
|
+
return In(e, t, n, o), o;
|
|
1264
1408
|
}
|
|
1265
|
-
return l && (
|
|
1409
|
+
return l && (Wt(`path not found: '${n}'`), Bt(t)), r;
|
|
1266
1410
|
}
|
|
1267
|
-
return _ &&
|
|
1411
|
+
return _ && On(e, t, n), i;
|
|
1268
1412
|
}
|
|
1269
|
-
function
|
|
1270
|
-
e && !
|
|
1271
|
-
let i =
|
|
1272
|
-
const l = o && o &
|
|
1413
|
+
function An(e, t, n, r, o) {
|
|
1414
|
+
e && !pn(e) && Wt("GObj bad instanceof");
|
|
1415
|
+
let i = Sn(e, t, n, !1);
|
|
1416
|
+
const l = o && o & At.KW_REQUIRED, s = o && o & At.KW_CREATE, _ = o && o & At.KW_EXTRACT;
|
|
1273
1417
|
if (void 0 === i) {
|
|
1274
1418
|
if (s) {
|
|
1275
1419
|
let o = Object(r);
|
|
1276
|
-
return
|
|
1420
|
+
return In(e, t, n, o), o;
|
|
1277
1421
|
}
|
|
1278
|
-
return l && (
|
|
1422
|
+
return l && (Wt(`path not found: '${n}'`), Bt(t)), Object(r);
|
|
1279
1423
|
}
|
|
1280
|
-
return _ &&
|
|
1424
|
+
return _ && On(e, t, n), an(i) ? Object(i) : (l && (Wt(`path value MUST BE a dict: ${n}`), Yt(t)), Object(r));
|
|
1281
1425
|
}
|
|
1282
|
-
function
|
|
1283
|
-
e && !
|
|
1284
|
-
let i =
|
|
1285
|
-
const l = o && o &
|
|
1426
|
+
function kn(e, t, n, r, o) {
|
|
1427
|
+
e && !pn(e) && Wt("GObj bad instanceof");
|
|
1428
|
+
let i = Sn(e, t, n, !1);
|
|
1429
|
+
const l = o && o & At.KW_REQUIRED, s = o && o & At.KW_CREATE, _ = o && o & At.KW_EXTRACT;
|
|
1286
1430
|
if (void 0 === i) {
|
|
1287
1431
|
if (s) {
|
|
1288
1432
|
let o = r;
|
|
1289
|
-
return
|
|
1433
|
+
return In(e, t, n, o), o;
|
|
1290
1434
|
}
|
|
1291
|
-
return l && (
|
|
1435
|
+
return l && (Wt(`path not found: '${n}'`), Bt(t)), r;
|
|
1292
1436
|
}
|
|
1293
|
-
return _ &&
|
|
1437
|
+
return _ && On(e, t, n), i;
|
|
1294
1438
|
}
|
|
1295
|
-
function
|
|
1296
|
-
if (e && !
|
|
1439
|
+
function In(e, t, n, r) {
|
|
1440
|
+
if (e && !pn(e) && Wt("GObj bad instanceof"), !an(t)) return Wt("kw is not an object"), -1;
|
|
1297
1441
|
let o = n.split("`");
|
|
1298
1442
|
if (o.length <= 1) return t[n] = r, 0;
|
|
1299
1443
|
let i = o.length;
|
|
@@ -1303,34 +1447,34 @@
|
|
|
1303
1447
|
}
|
|
1304
1448
|
return 0;
|
|
1305
1449
|
}
|
|
1306
|
-
function
|
|
1307
|
-
if (e && !
|
|
1308
|
-
let i =
|
|
1309
|
-
return
|
|
1450
|
+
function $n(e, t, n, r, o) {
|
|
1451
|
+
if (e && !pn(e) && Wt("GObj bad instanceof"), !an(t)) return Wt("kw is not an object"), -1;
|
|
1452
|
+
let i = An(e, t, n, {}, !0);
|
|
1453
|
+
return an(i) ? (i[r] = o, 0) : (Wt("subdict is not an object"), -1);
|
|
1310
1454
|
}
|
|
1311
|
-
function
|
|
1455
|
+
function Cn(e, t, r) {
|
|
1312
1456
|
let o = "", i = !1;
|
|
1313
|
-
if (
|
|
1457
|
+
if (un(t)) {
|
|
1314
1458
|
i = !1;
|
|
1315
1459
|
for (let l = 0; l < t.length; l++) {
|
|
1316
1460
|
let s = t[l];
|
|
1317
|
-
if (o =
|
|
1461
|
+
if (o = mn(r) ? n("%s", r) : n("%s`%d", r, l), i = Cn(e, s, o), i) break;
|
|
1318
1462
|
}
|
|
1319
|
-
} else if (
|
|
1463
|
+
} else if (an(t)) {
|
|
1320
1464
|
i = !0;
|
|
1321
1465
|
let l = Object.keys(t);
|
|
1322
1466
|
for (let s = 0; s < l.length; s++) {
|
|
1323
1467
|
let _ = l[s], a = t[_];
|
|
1324
|
-
if (o =
|
|
1325
|
-
if (i =
|
|
1468
|
+
if (o = mn(r) ? n("%s", _) : n("%s`%s", r, _), un(a) || an(a)) {
|
|
1469
|
+
if (i = Cn(e, a, o), !i) break;
|
|
1326
1470
|
continue;
|
|
1327
1471
|
}
|
|
1328
|
-
let u =
|
|
1329
|
-
if (u || (u =
|
|
1472
|
+
let u = kn(0, e, o, 0, 0);
|
|
1473
|
+
if (u || (u = Xt(e, o)), !u) {
|
|
1330
1474
|
i = !1;
|
|
1331
1475
|
break;
|
|
1332
1476
|
}
|
|
1333
|
-
if (0 !==
|
|
1477
|
+
if (0 !== yn(u, a)) {
|
|
1334
1478
|
i = !1;
|
|
1335
1479
|
break;
|
|
1336
1480
|
}
|
|
@@ -1338,58 +1482,58 @@
|
|
|
1338
1482
|
}
|
|
1339
1483
|
return i;
|
|
1340
1484
|
}
|
|
1341
|
-
function
|
|
1342
|
-
return 0 ===
|
|
1485
|
+
function Ln(e, t) {
|
|
1486
|
+
return 0 === _n(t) || Cn(e, t, "");
|
|
1343
1487
|
}
|
|
1344
|
-
function
|
|
1345
|
-
e && !
|
|
1488
|
+
function Pn(e, t, n, r) {
|
|
1489
|
+
e && !pn(e) && Wt("GObj bad instanceof");
|
|
1346
1490
|
let o = {};
|
|
1347
|
-
if (
|
|
1491
|
+
if (cn(n) && !mn(n)) {
|
|
1348
1492
|
let i = n;
|
|
1349
|
-
t.hasOwnProperty(i) ? o[i] = t[i] : r &&
|
|
1350
|
-
} else if (
|
|
1493
|
+
t.hasOwnProperty(i) ? o[i] = t[i] : r && Wt(`${Ge(e)}: key not found: ${i}`);
|
|
1494
|
+
} else if (an(n) && ln(n) > 0) for (let i of Object.keys(n)) t.hasOwnProperty(i) ? o[i] = t[i] : r && Wt(`${Ge(e)}: key not found: ${i}`);
|
|
1351
1495
|
else {
|
|
1352
|
-
if (!(
|
|
1496
|
+
if (!(un(n) && sn(n) > 0)) return t;
|
|
1353
1497
|
for (let i = 0; i < n.length; i++) {
|
|
1354
1498
|
let l = n[i];
|
|
1355
|
-
t.hasOwnProperty(l) ? o[l] = t[l] : r &&
|
|
1499
|
+
t.hasOwnProperty(l) ? o[l] = t[l] : r && Wt(`${Ge(e)}: key not found: ${l}`);
|
|
1356
1500
|
}
|
|
1357
1501
|
}
|
|
1358
1502
|
return o;
|
|
1359
1503
|
}
|
|
1360
|
-
function
|
|
1504
|
+
function Un(e, t, n, r) {
|
|
1361
1505
|
let o = {};
|
|
1362
|
-
if (
|
|
1506
|
+
if (qt(o, t), cn(n) && !mn(n)) {
|
|
1363
1507
|
let i = n;
|
|
1364
|
-
|
|
1365
|
-
} else if (
|
|
1508
|
+
kn(e, t, i, 0, 0) ? Zt(o, i) : r && Wt(`${Ge(e)}: key not found: ${i}`);
|
|
1509
|
+
} else if (an(n) && ln(n) > 0) for (let i of Object.keys(n)) t.hasOwnProperty(i) ? Zt(o, i) : r && Wt(`${Ge(e)}: key not found: ${i}`);
|
|
1366
1510
|
else {
|
|
1367
|
-
if (!(
|
|
1511
|
+
if (!(un(n) && sn(n) > 0)) return {};
|
|
1368
1512
|
for (let i = 0; i < n.length; i++) {
|
|
1369
1513
|
let l = n[i];
|
|
1370
|
-
t.hasOwnProperty(l) ?
|
|
1514
|
+
t.hasOwnProperty(l) ? Zt(o, l) : r && Wt(`${Ge(e)}: key not found: ${l}`);
|
|
1371
1515
|
}
|
|
1372
1516
|
}
|
|
1373
1517
|
return o;
|
|
1374
1518
|
}
|
|
1375
|
-
function
|
|
1519
|
+
function Fn(e, t, n = !1) {
|
|
1376
1520
|
if ("undefined" != typeof window && window.localStorage) try {
|
|
1377
1521
|
let r = window.localStorage.getItem(e);
|
|
1378
|
-
return null === r ? (n &&
|
|
1522
|
+
return null === r ? (n && Gn(e, t), t) : JSON.parse(r);
|
|
1379
1523
|
} catch (n) {
|
|
1380
1524
|
return window.console.warn(`Error reading localStorage key "${e}":`, n), t;
|
|
1381
1525
|
}
|
|
1382
1526
|
}
|
|
1383
|
-
function
|
|
1527
|
+
function Gn(e, t) {
|
|
1384
1528
|
if ("undefined" == typeof window || !window.localStorage) return 0;
|
|
1385
|
-
if (!e || void 0 === t) return
|
|
1529
|
+
if (!e || void 0 === t) return Wt(`kw_set_local_storage_value(): invalid key or value: key=${e}`), -1;
|
|
1386
1530
|
try {
|
|
1387
1531
|
return window.localStorage.setItem(e, JSON.stringify(t)), 0;
|
|
1388
1532
|
} catch (t) {
|
|
1389
|
-
return
|
|
1533
|
+
return Wt(`kw_set_local_storage_value(): cannot save "${e}" (storage full or blocked?): ${t && t.message ? t.message : t}`), -1;
|
|
1390
1534
|
}
|
|
1391
1535
|
}
|
|
1392
|
-
function
|
|
1536
|
+
function Vn(e) {
|
|
1393
1537
|
if ("undefined" != typeof window && window.localStorage) if (e) try {
|
|
1394
1538
|
window.localStorage.removeItem(e);
|
|
1395
1539
|
} catch (t) {
|
|
@@ -1397,46 +1541,46 @@
|
|
|
1397
1541
|
}
|
|
1398
1542
|
else window.console.warn(`Invalid key for localStorage removal: ${e}`);
|
|
1399
1543
|
}
|
|
1400
|
-
function
|
|
1401
|
-
if (
|
|
1402
|
-
if (
|
|
1544
|
+
function Mn(e, t) {
|
|
1545
|
+
if (dn(e) || dn(t)) return !0;
|
|
1546
|
+
if (un(e)) {
|
|
1403
1547
|
if (0 === e.length) return !0;
|
|
1404
1548
|
for (let n = 0; n < e.length; n++) if (e[n] === t) return !0;
|
|
1405
|
-
} else if (
|
|
1549
|
+
} else if (an(e)) {
|
|
1406
1550
|
if (0 === Object.keys(e).length) return !0;
|
|
1407
1551
|
for (let n in e) if (n === t) return !0;
|
|
1408
|
-
} else if (
|
|
1552
|
+
} else if (cn(e) && e === t) return !0;
|
|
1409
1553
|
return !1;
|
|
1410
1554
|
}
|
|
1411
|
-
function
|
|
1412
|
-
if (e && !
|
|
1413
|
-
o || (o =
|
|
1555
|
+
function Wn(e, t, n, r, o) {
|
|
1556
|
+
if (e && !pn(e) && Wt("GObj bad instanceof"), !t) return null;
|
|
1557
|
+
o || (o = Ln);
|
|
1414
1558
|
let i = [];
|
|
1415
|
-
if (
|
|
1559
|
+
if (un(t)) for (let l = 0; l < t.length; l++) {
|
|
1416
1560
|
let s, _ = t[l];
|
|
1417
|
-
if (
|
|
1561
|
+
if (an(_)) s = wn(e, _, "id", "", 0);
|
|
1418
1562
|
else {
|
|
1419
|
-
if (!
|
|
1563
|
+
if (!cn(_)) continue;
|
|
1420
1564
|
s = _;
|
|
1421
1565
|
}
|
|
1422
|
-
|
|
1566
|
+
Mn(n, s) && o(_, r) && i.push(_);
|
|
1423
1567
|
}
|
|
1424
1568
|
else {
|
|
1425
|
-
if (!
|
|
1569
|
+
if (!an(t)) return Wt("kw_collect() BAD kw parameter"), null;
|
|
1426
1570
|
for (let e of Object.keys(t)) {
|
|
1427
1571
|
let l = t[e];
|
|
1428
|
-
|
|
1572
|
+
Mn(n, e) && o(l, r) && i.push(l);
|
|
1429
1573
|
}
|
|
1430
1574
|
}
|
|
1431
1575
|
return i;
|
|
1432
1576
|
}
|
|
1433
|
-
function
|
|
1577
|
+
function Kn(e, t) {
|
|
1434
1578
|
if (!e) return -1;
|
|
1435
1579
|
for (let n = 0; n < e.length; n++) if (e[n] && e[n].id === t) return n;
|
|
1436
1580
|
return -1;
|
|
1437
1581
|
}
|
|
1438
|
-
function
|
|
1439
|
-
if (!e || !t) return
|
|
1582
|
+
function xn(e, t, n) {
|
|
1583
|
+
if (!e || !t) return Wt("ERROR: str_in_list() list or str empty"), !1;
|
|
1440
1584
|
let r = e.length;
|
|
1441
1585
|
if (n) {
|
|
1442
1586
|
t = t.toLowerCase();
|
|
@@ -1447,7 +1591,7 @@
|
|
|
1447
1591
|
} else for (let n = 0; n < r; n++) if (e[n] === t) return !0;
|
|
1448
1592
|
return !1;
|
|
1449
1593
|
}
|
|
1450
|
-
function
|
|
1594
|
+
function Yn(e, t) {
|
|
1451
1595
|
try {
|
|
1452
1596
|
let n = e.__md_iev__;
|
|
1453
1597
|
if (n) return n[t];
|
|
@@ -1455,35 +1599,35 @@
|
|
|
1455
1599
|
return;
|
|
1456
1600
|
}
|
|
1457
1601
|
}
|
|
1458
|
-
function
|
|
1602
|
+
function Bn(e, t, n) {
|
|
1459
1603
|
let r = e.__md_iev__;
|
|
1460
1604
|
r || (r = {}, e.__md_iev__ = r), r[t] = n;
|
|
1461
1605
|
}
|
|
1462
|
-
function
|
|
1463
|
-
if (!
|
|
1606
|
+
function Jn(e, t, n, r) {
|
|
1607
|
+
if (!pn(e)) return Wt("gobj is not a GObj"), null;
|
|
1464
1608
|
if (!t) return;
|
|
1465
|
-
let o =
|
|
1466
|
-
o || (o = [],
|
|
1609
|
+
let o = Yn(t, n);
|
|
1610
|
+
o || (o = [], Bn(t, n, o));
|
|
1467
1611
|
try {
|
|
1468
|
-
|
|
1612
|
+
un(o) && o.unshift(r);
|
|
1469
1613
|
} catch (e) {
|
|
1470
|
-
|
|
1614
|
+
Wt(e);
|
|
1471
1615
|
}
|
|
1472
1616
|
}
|
|
1473
|
-
function
|
|
1474
|
-
if (!
|
|
1475
|
-
if (!
|
|
1476
|
-
let o =
|
|
1477
|
-
return o ? 0 === o.length ? (r &&
|
|
1617
|
+
function Hn(e, t, n, r) {
|
|
1618
|
+
if (!pn(e)) return Wt("gobj is not a GObj"), null;
|
|
1619
|
+
if (!an(t)) return Wt("kw is not a dict"), null;
|
|
1620
|
+
let o = Yn(t, n);
|
|
1621
|
+
return o ? 0 === o.length ? (r && Wt(`stack empty: ${n}`), null) : o[0] : (r && Wt(`stack NOT FOUND: ${n}`), null);
|
|
1478
1622
|
}
|
|
1479
|
-
function
|
|
1480
|
-
return
|
|
1623
|
+
function qn(e, t, n) {
|
|
1624
|
+
return mn(n) ? On(e, t, "__md_iev__`__msg_type__") : $n(e, t, "__md_iev__", "__msg_type__", n), 0;
|
|
1481
1625
|
}
|
|
1482
|
-
function
|
|
1483
|
-
return
|
|
1626
|
+
function zn(e, t) {
|
|
1627
|
+
return wn(e, t, "__md_iev__`__msg_type__", "", 0);
|
|
1484
1628
|
}
|
|
1485
|
-
function
|
|
1486
|
-
void 0 !== n &&
|
|
1629
|
+
function Qn(e, t, n) {
|
|
1630
|
+
void 0 !== n && cn(n) || (n = "");
|
|
1487
1631
|
for (let r of Object.keys(e)) {
|
|
1488
1632
|
if (!e.hasOwnProperty(r)) continue;
|
|
1489
1633
|
let o = (n.length ? "`" : "") + r;
|
|
@@ -1492,10 +1636,10 @@
|
|
|
1492
1636
|
r,
|
|
1493
1637
|
e[r],
|
|
1494
1638
|
n
|
|
1495
|
-
]),
|
|
1639
|
+
]), an(e[r]) && Qn(e[r], t, n), n = n.slice(0, -o.length);
|
|
1496
1640
|
}
|
|
1497
1641
|
}
|
|
1498
|
-
function
|
|
1642
|
+
function Xn(e, t, n, r) {
|
|
1499
1643
|
if (!e) return null;
|
|
1500
1644
|
let o, i = e.length;
|
|
1501
1645
|
for (o = 0; o < i; o++) {
|
|
@@ -1503,15 +1647,15 @@
|
|
|
1503
1647
|
if (i) {
|
|
1504
1648
|
let e = i.id;
|
|
1505
1649
|
if (e && e === n) return i;
|
|
1506
|
-
if (r &&
|
|
1507
|
-
let e =
|
|
1650
|
+
if (r && jn(i, t)) {
|
|
1651
|
+
let e = Xn(i[t], t, n, r);
|
|
1508
1652
|
if (e) return e;
|
|
1509
1653
|
}
|
|
1510
1654
|
}
|
|
1511
1655
|
}
|
|
1512
1656
|
return null;
|
|
1513
1657
|
}
|
|
1514
|
-
function
|
|
1658
|
+
function Zn(e) {
|
|
1515
1659
|
function t(e) {
|
|
1516
1660
|
let t = e.replace(/-/g, "+").replace(/_/g, "/");
|
|
1517
1661
|
switch (t.length % 4) {
|
|
@@ -1542,38 +1686,38 @@
|
|
|
1542
1686
|
signature: t(n[2])
|
|
1543
1687
|
};
|
|
1544
1688
|
}
|
|
1545
|
-
function
|
|
1689
|
+
function er(e) {
|
|
1546
1690
|
return null == e ? "" : String(e).replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """).replace(/'/g, "'");
|
|
1547
1691
|
}
|
|
1548
|
-
function
|
|
1692
|
+
function tr(e) {
|
|
1549
1693
|
const t = document.createElement("template");
|
|
1550
1694
|
return t.innerHTML = e.trim(), t.content.firstChild;
|
|
1551
1695
|
}
|
|
1552
|
-
function
|
|
1696
|
+
function nr() {
|
|
1553
1697
|
const e = /* @__PURE__ */ new Date(), t = e.toISOString().slice(0, 19), n = String(e.getMilliseconds()).padStart(3, "0"), r = e.getTimezoneOffset();
|
|
1554
1698
|
return `${t}.${n}${r > 0 ? "-" : "+"}${String(Math.abs(r) / 60).padStart(2, "0")}${String(Math.abs(r) % 60).padStart(2, "0")}`;
|
|
1555
1699
|
}
|
|
1556
|
-
function
|
|
1700
|
+
function rr(e, t) {
|
|
1557
1701
|
if (!e) throw "ERROR: index_in_list() list empty";
|
|
1558
1702
|
for (let n = 0; n < e.length; n++) if (t === e[n]) return n;
|
|
1559
1703
|
return -1;
|
|
1560
1704
|
}
|
|
1561
|
-
function
|
|
1705
|
+
function or() {
|
|
1562
1706
|
let e = "";
|
|
1563
1707
|
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;
|
|
1564
1708
|
}
|
|
1565
|
-
function
|
|
1709
|
+
function ir(e) {
|
|
1566
1710
|
let t = null;
|
|
1567
1711
|
return "function" != typeof e && "object" != typeof e || (t = ("" + e).match(/function\s*([\w\$]*)\s*\(/)), null !== t ? t[1] + "()" : "";
|
|
1568
1712
|
}
|
|
1569
|
-
function
|
|
1570
|
-
return "persistent-attrs-" +
|
|
1713
|
+
function lr(e) {
|
|
1714
|
+
return "persistent-attrs-" + Ge(e);
|
|
1571
1715
|
}
|
|
1572
|
-
function
|
|
1573
|
-
if (
|
|
1716
|
+
function sr(e, t) {
|
|
1717
|
+
if (cn(t)) {
|
|
1574
1718
|
if (-1 === t.indexOf("^")) {
|
|
1575
1719
|
let n, r, o = e.fkey;
|
|
1576
|
-
if (1 !==
|
|
1720
|
+
if (1 !== ln(o)) return Wt("bad fkey 1"), Wt(e), Wt(t), null;
|
|
1577
1721
|
for (const e of Object.keys(o)) {
|
|
1578
1722
|
n = e, r = o[e];
|
|
1579
1723
|
break;
|
|
@@ -1586,20 +1730,20 @@
|
|
|
1586
1730
|
}
|
|
1587
1731
|
{
|
|
1588
1732
|
let n = t.split("^");
|
|
1589
|
-
return 3 !== n.length ? (
|
|
1733
|
+
return 3 !== n.length ? (Wt("bad fkey 2"), Wt(e), Wt(t), null) : {
|
|
1590
1734
|
topic_name: n[0],
|
|
1591
1735
|
id: n[1],
|
|
1592
1736
|
hook_name: n[2]
|
|
1593
1737
|
};
|
|
1594
1738
|
}
|
|
1595
1739
|
}
|
|
1596
|
-
return
|
|
1740
|
+
return an(t) ? {
|
|
1597
1741
|
topic_name: t.topic_name,
|
|
1598
1742
|
id: t.id,
|
|
1599
1743
|
hook_name: t.hook_name
|
|
1600
|
-
} : (
|
|
1744
|
+
} : (Wt("bad fkey 3"), Wt(e), Wt(t), null);
|
|
1601
1745
|
}
|
|
1602
|
-
var
|
|
1746
|
+
var _r = [
|
|
1603
1747
|
"string",
|
|
1604
1748
|
"integer",
|
|
1605
1749
|
"object",
|
|
@@ -1609,7 +1753,7 @@
|
|
|
1609
1753
|
"real",
|
|
1610
1754
|
"boolean",
|
|
1611
1755
|
"blob"
|
|
1612
|
-
],
|
|
1756
|
+
], ar = [
|
|
1613
1757
|
"persistent",
|
|
1614
1758
|
"required",
|
|
1615
1759
|
"notnull",
|
|
@@ -1621,7 +1765,7 @@
|
|
|
1621
1765
|
"stats",
|
|
1622
1766
|
"rstats",
|
|
1623
1767
|
"pstats"
|
|
1624
|
-
],
|
|
1768
|
+
], ur = [
|
|
1625
1769
|
"hook",
|
|
1626
1770
|
"fkey",
|
|
1627
1771
|
"enum",
|
|
@@ -1647,7 +1791,7 @@
|
|
|
1647
1791
|
"coordinates",
|
|
1648
1792
|
"gbuffer"
|
|
1649
1793
|
];
|
|
1650
|
-
function
|
|
1794
|
+
function cr(e) {
|
|
1651
1795
|
let t = {
|
|
1652
1796
|
name: e.id,
|
|
1653
1797
|
header: e.header,
|
|
@@ -1665,7 +1809,7 @@
|
|
|
1665
1809
|
if (!e.flag) return t;
|
|
1666
1810
|
for (let n = 0; n < e.flag.length; n++) {
|
|
1667
1811
|
let r = e.flag[n];
|
|
1668
|
-
if (
|
|
1812
|
+
if (xn(ur, r)) {
|
|
1669
1813
|
switch (r) {
|
|
1670
1814
|
case "enum":
|
|
1671
1815
|
t.enum_list = e.enum;
|
|
@@ -1676,7 +1820,7 @@
|
|
|
1676
1820
|
case "table": t.enum_list = e.table;
|
|
1677
1821
|
}
|
|
1678
1822
|
t.type = r;
|
|
1679
|
-
} else if (
|
|
1823
|
+
} else if (xn(ar, r)) switch (r) {
|
|
1680
1824
|
case "writable":
|
|
1681
1825
|
t.is_writable = !0;
|
|
1682
1826
|
break;
|
|
@@ -1689,36 +1833,36 @@
|
|
|
1689
1833
|
}
|
|
1690
1834
|
return t;
|
|
1691
1835
|
}
|
|
1692
|
-
var
|
|
1693
|
-
j(
|
|
1694
|
-
j(
|
|
1695
|
-
j(
|
|
1836
|
+
var fr = [
|
|
1837
|
+
j(T.DTP_POINTER, "subscriber", 0, null, "Subscriber of output events"),
|
|
1838
|
+
j(T.DTP_BOOLEAN, "periodic", 0, 0, "True for periodic timeouts"),
|
|
1839
|
+
j(T.DTP_INTEGER, "msec", 0, 0, "Timeout in milliseconds"),
|
|
1696
1840
|
v()
|
|
1697
|
-
],
|
|
1841
|
+
], gr = {
|
|
1698
1842
|
periodic: !1,
|
|
1699
1843
|
msec: 0,
|
|
1700
1844
|
timer_id: -1
|
|
1701
|
-
},
|
|
1702
|
-
function
|
|
1845
|
+
}, dr = null;
|
|
1846
|
+
function br(e, t, n, r) {
|
|
1703
1847
|
let o = e.priv, i = o.periodic ? "EV_TIMEOUT_PERIODIC" : "EV_TIMEOUT";
|
|
1704
|
-
return
|
|
1705
|
-
|
|
1848
|
+
return Ke(e) ? Et(Me(e), i, {}, e) : Dt(e, i, {}), o.periodic && (o.timer_id = setTimeout(function() {
|
|
1849
|
+
Et(e, "EV_TIMEOUT", {}, e);
|
|
1706
1850
|
}, o.msec)), 0;
|
|
1707
1851
|
}
|
|
1708
|
-
var
|
|
1852
|
+
var pr = {
|
|
1709
1853
|
mt_create: function(e) {
|
|
1710
1854
|
let t = e.priv;
|
|
1711
|
-
const n =
|
|
1712
|
-
n &&
|
|
1855
|
+
const n = _t(e, "subscriber");
|
|
1856
|
+
n && Ot(e, null, {}, n), t.periodic = it(e, "periodic"), t.msec = lt(e, "msec");
|
|
1713
1857
|
},
|
|
1714
1858
|
mt_writing: function(e, t) {
|
|
1715
1859
|
let n = e.priv;
|
|
1716
1860
|
switch (t) {
|
|
1717
1861
|
case "periodic":
|
|
1718
|
-
n.periodic =
|
|
1862
|
+
n.periodic = it(e, "periodic");
|
|
1719
1863
|
break;
|
|
1720
|
-
case "msec": n.msec =
|
|
1721
|
-
|
|
1864
|
+
case "msec": n.msec = lt(e, "msec"), -1 !== n.timer_id && (clearTimeout(n.timer_id), n.timer_id = -1), n.msec > 0 && (n.timer_id = setTimeout(function() {
|
|
1865
|
+
Et(e, "EV_TIMEOUT", {}, e);
|
|
1722
1866
|
}, n.msec));
|
|
1723
1867
|
}
|
|
1724
1868
|
},
|
|
@@ -1726,88 +1870,88 @@
|
|
|
1726
1870
|
return 0;
|
|
1727
1871
|
},
|
|
1728
1872
|
mt_stop: function(e) {
|
|
1729
|
-
return
|
|
1873
|
+
return ct(e, "msec", -1), 0;
|
|
1730
1874
|
},
|
|
1731
1875
|
mt_destroy: function(e) {}
|
|
1732
1876
|
};
|
|
1733
|
-
function
|
|
1734
|
-
return e instanceof O ? "C_TIMER" !==
|
|
1735
|
-
}
|
|
1736
|
-
function
|
|
1737
|
-
return e instanceof O ? "C_TIMER" !==
|
|
1738
|
-
}
|
|
1739
|
-
function
|
|
1740
|
-
return e instanceof O ? "C_TIMER" !==
|
|
1741
|
-
}
|
|
1742
|
-
var
|
|
1743
|
-
j(
|
|
1744
|
-
j(
|
|
1745
|
-
j(
|
|
1746
|
-
j(
|
|
1747
|
-
j(
|
|
1748
|
-
j(
|
|
1749
|
-
j(
|
|
1750
|
-
j(
|
|
1751
|
-
j(
|
|
1752
|
-
j(
|
|
1753
|
-
j(
|
|
1754
|
-
j(
|
|
1755
|
-
j(
|
|
1756
|
-
j(
|
|
1757
|
-
j(
|
|
1758
|
-
j(
|
|
1759
|
-
j(
|
|
1760
|
-
j(
|
|
1761
|
-
j(
|
|
1762
|
-
j(
|
|
1763
|
-
j(
|
|
1764
|
-
j(
|
|
1765
|
-
j(
|
|
1766
|
-
j(
|
|
1877
|
+
function mr(e, t) {
|
|
1878
|
+
return e instanceof O ? "C_TIMER" !== Fe(e) ? (Wt("not C_TIMER GObj"), -1) : (ut(e, "periodic", !1), void ct(e, "msec", t)) : (Wt("not GObj TYPE"), -1);
|
|
1879
|
+
}
|
|
1880
|
+
function Er(e, t) {
|
|
1881
|
+
return e instanceof O ? "C_TIMER" !== Fe(e) ? (Wt("not C_TIMER GObj"), -1) : (ut(e, "periodic", !0), void ct(e, "msec", t)) : (Wt("not GObj TYPE"), -1);
|
|
1882
|
+
}
|
|
1883
|
+
function Tr(e) {
|
|
1884
|
+
return e instanceof O ? "C_TIMER" !== Fe(e) ? (Wt("not C_TIMER GObj"), -1) : void ct(e, "msec", -1) : (Wt("not GObj TYPE"), -1);
|
|
1885
|
+
}
|
|
1886
|
+
var hr = [
|
|
1887
|
+
j(T.DTP_BOOLEAN, "changesLost", 0, !1, "Set true to warn about leaving page"),
|
|
1888
|
+
j(T.DTP_BOOLEAN, "browser_beforeunload", 0, !1, "Set true to refreshing browser"),
|
|
1889
|
+
j(T.DTP_STRING, "__username__", 0, "", "Username"),
|
|
1890
|
+
j(T.DTP_STRING, "start_date", 0, "", "Yuno starting date"),
|
|
1891
|
+
j(T.DTP_STRING, "node_uuid", 0, "", "uuid of node"),
|
|
1892
|
+
j(T.DTP_STRING, "yuno_role", 0, "", "Yuno role"),
|
|
1893
|
+
j(T.DTP_STRING, "yuno_id", 0, "", "Yuno Id. Set by agent"),
|
|
1894
|
+
j(T.DTP_STRING, "yuno_name", 0, "", "Yuno name. Set by agent"),
|
|
1895
|
+
j(T.DTP_STRING, "yuno_tag", 0, "", "Tags of yuno. Set by agent"),
|
|
1896
|
+
j(T.DTP_STRING, "yuno_release", 0, "", "Yuno Release. Set by agent"),
|
|
1897
|
+
j(T.DTP_STRING, "yuno_version", 0, "", "Yuno version (APP_VERSION)"),
|
|
1898
|
+
j(T.DTP_STRING, "yuneta_version", 0, l, "Yuneta version"),
|
|
1899
|
+
j(T.DTP_LIST, "required_services", 0, "[]", "Required services"),
|
|
1900
|
+
j(T.DTP_INTEGER, "tracing", 0, 0, "Tracing level"),
|
|
1901
|
+
j(T.DTP_BOOLEAN, "trace_timer", 0, 0, "Trace timers"),
|
|
1902
|
+
j(T.DTP_BOOLEAN, "trace_inter_event", 0, 0, "Trace traffic"),
|
|
1903
|
+
j(T.DTP_POINTER, "trace_ievent_callback", 0, null, "Trace traffic callback"),
|
|
1904
|
+
j(T.DTP_BOOLEAN, "trace_creation", 0, 0, "Trace creation"),
|
|
1905
|
+
j(T.DTP_BOOLEAN, "trace_start_stop", 0, 0, "Trace start/stop"),
|
|
1906
|
+
j(T.DTP_BOOLEAN, "trace_subscriptions", 0, 0, "Trace subscription"),
|
|
1907
|
+
j(T.DTP_BOOLEAN, "trace_i18n", 0, 0, "Trace i18n"),
|
|
1908
|
+
j(T.DTP_BOOLEAN, "no_poll", 0, 0, "no poll"),
|
|
1909
|
+
j(T.DTP_BOOLEAN, "developer", 0, !1, "Developer mode enabled"),
|
|
1910
|
+
j(T.DTP_INTEGER, "periodic_timeout", 0, "1000", "Timeout periodic, in miliseconds."),
|
|
1767
1911
|
v()
|
|
1768
|
-
],
|
|
1769
|
-
function
|
|
1770
|
-
return
|
|
1912
|
+
], yr = { gobj_timer: null }, vr = null;
|
|
1913
|
+
function jr(e, t, n, r) {
|
|
1914
|
+
return Dt(e, t, n), 0;
|
|
1771
1915
|
}
|
|
1772
|
-
var
|
|
1916
|
+
var Sr = {
|
|
1773
1917
|
mt_create: function(e) {
|
|
1774
1918
|
let t = e.priv;
|
|
1775
|
-
|
|
1919
|
+
ft(e, "start_date", nr()), ft(e, "node_uuid", or()), e.priv.gobj_timer = Te(Ue(e), "C_TIMER", {}, e), t.periodic_timeout = rt(e, "periodic_timeout");
|
|
1776
1920
|
},
|
|
1777
1921
|
mt_writing: function(e, t) {},
|
|
1778
1922
|
mt_start: function(e) {
|
|
1779
|
-
return
|
|
1923
|
+
return ye(e.priv.gobj_timer), Er(e.priv.gobj_timer, e.priv.periodic_timeout), 0;
|
|
1780
1924
|
},
|
|
1781
1925
|
mt_stop: function(e) {
|
|
1782
|
-
return
|
|
1926
|
+
return Se(e.priv.gobj_timer), Ne(e), 0;
|
|
1783
1927
|
},
|
|
1784
1928
|
mt_destroy: function(e) {},
|
|
1785
1929
|
mt_play: function(e) {
|
|
1786
|
-
let t =
|
|
1787
|
-
return
|
|
1930
|
+
let t = ce();
|
|
1931
|
+
return De(t) || ye(t), Ie(t) || Re(t), 0;
|
|
1788
1932
|
},
|
|
1789
1933
|
mt_pause: function(e) {
|
|
1790
|
-
return
|
|
1934
|
+
return we(ce()), 0;
|
|
1791
1935
|
}
|
|
1792
1936
|
};
|
|
1793
|
-
var
|
|
1794
|
-
j(
|
|
1795
|
-
j(
|
|
1796
|
-
j(
|
|
1797
|
-
j(
|
|
1798
|
-
j(
|
|
1799
|
-
j(
|
|
1800
|
-
j(
|
|
1801
|
-
j(
|
|
1802
|
-
j(
|
|
1803
|
-
j(
|
|
1804
|
-
j(
|
|
1805
|
-
j(
|
|
1806
|
-
j(
|
|
1807
|
-
j(
|
|
1808
|
-
j(
|
|
1937
|
+
var Or = "ievent_gate_stack", Nr = [
|
|
1938
|
+
j(T.DTP_STRING, "wanted_yuno_role", h.SDF_RD, "", "wanted yuno role"),
|
|
1939
|
+
j(T.DTP_STRING, "wanted_yuno_name", h.SDF_RD, "", "wanted yuno name"),
|
|
1940
|
+
j(T.DTP_STRING, "wanted_yuno_service", h.SDF_RD, "", "wanted yuno service"),
|
|
1941
|
+
j(T.DTP_STRING, "remote_yuno_role", h.SDF_RD, "", "confirmed remote yuno role"),
|
|
1942
|
+
j(T.DTP_STRING, "remote_yuno_name", h.SDF_RD, "", "confirmed remote yuno name"),
|
|
1943
|
+
j(T.DTP_STRING, "remote_yuno_service", h.SDF_RD, "", "confirmed remote yuno service"),
|
|
1944
|
+
j(T.DTP_STRING, "url", h.SDF_RD, "", "Url to connect"),
|
|
1945
|
+
j(T.DTP_STRING, "jwt", h.SDF_PERSIST, "", "JWT"),
|
|
1946
|
+
j(T.DTP_STRING, "cert_pem", h.SDF_PERSIST, "", "SSL server certification, PEM str format"),
|
|
1947
|
+
j(T.DTP_JSON, "extra_info", h.SDF_RD, "{}", "dict data set by user, added to the identity card msg."),
|
|
1948
|
+
j(T.DTP_LIST, "required_services", h.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."),
|
|
1949
|
+
j(T.DTP_INTEGER, "timeout_retry", h.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"),
|
|
1950
|
+
j(T.DTP_INTEGER, "timeout_retry_max", h.SDF_RD, "60000", "Cap of the reconnect backoff (ms). Set it equal to timeout_retry for the old fixed-interval behaviour"),
|
|
1951
|
+
j(T.DTP_INTEGER, "timeout_idack", h.SDF_RD, "5000", "timeout waiting idAck"),
|
|
1952
|
+
j(T.DTP_POINTER, "subscriber", 0, 0, "subscriber of output-events. If null then subscriber is the parent"),
|
|
1809
1953
|
v()
|
|
1810
|
-
],
|
|
1954
|
+
], Rr = {
|
|
1811
1955
|
url: null,
|
|
1812
1956
|
remote_yuno_name: null,
|
|
1813
1957
|
remote_yuno_role: null,
|
|
@@ -1817,91 +1961,91 @@
|
|
|
1817
1961
|
websocket: null,
|
|
1818
1962
|
inside_on_open: !1,
|
|
1819
1963
|
retry_ms: 0
|
|
1820
|
-
},
|
|
1821
|
-
function
|
|
1822
|
-
e.priv.websocket &&
|
|
1823
|
-
const t =
|
|
1964
|
+
}, wr = null;
|
|
1965
|
+
function Dr(e) {
|
|
1966
|
+
e.priv.websocket && Wt("Websocket ALREADY setup");
|
|
1967
|
+
const t = st(e, "url");
|
|
1824
1968
|
let n;
|
|
1825
|
-
|
|
1969
|
+
xt(`====> Starting WebSocket to '${t}' (${Ge(e)})`);
|
|
1826
1970
|
try {
|
|
1827
1971
|
n = new WebSocket(t);
|
|
1828
1972
|
} catch (n) {
|
|
1829
|
-
return
|
|
1973
|
+
return Wt(`${Ge(e)}: Cannot open WebSocket to '${t}', Error: ${n.message}`), null;
|
|
1830
1974
|
}
|
|
1831
1975
|
return n ? (n.onopen = () => {
|
|
1832
|
-
|
|
1976
|
+
Et(e, "EV_ON_OPEN", { url: t }, e);
|
|
1833
1977
|
}, n.onmessage = (n) => {
|
|
1834
|
-
|
|
1978
|
+
Et(e, "EV_ON_MESSAGE", {
|
|
1835
1979
|
url: t,
|
|
1836
1980
|
data: n.data
|
|
1837
1981
|
}, e);
|
|
1838
1982
|
}, n.onclose = (n) => {
|
|
1839
|
-
|
|
1983
|
+
xe(e) || (it($e(), "browser_beforeunload") ? Kt("Close websocket by unload page") : Et(e, "EV_ON_CLOSE", {
|
|
1840
1984
|
url: t,
|
|
1841
1985
|
e: n
|
|
1842
1986
|
}, e));
|
|
1843
|
-
}, n) : (
|
|
1987
|
+
}, n) : (Wt(`${Ge(e)}: Failed to initialize WebSocket.`), null);
|
|
1844
1988
|
}
|
|
1845
|
-
function
|
|
1989
|
+
function Ar(e, t = 1e3, n = "") {
|
|
1846
1990
|
let r = e.priv, o = r.websocket;
|
|
1847
1991
|
if (r.websocket = null, o && o.readyState !== WebSocket.CLOSED && o.readyState !== WebSocket.CLOSING) {
|
|
1848
|
-
|
|
1992
|
+
xt(`Closing WebSocket (Code: ${t}, Reason: "${n}")`);
|
|
1849
1993
|
try {
|
|
1850
1994
|
o.close(t, n);
|
|
1851
1995
|
} catch (e) {
|
|
1852
|
-
|
|
1996
|
+
Wt("Error closing WebSocket:", e.message);
|
|
1853
1997
|
}
|
|
1854
|
-
} else
|
|
1998
|
+
} else Kt("WebSocket is already closed or in the process of closing.");
|
|
1855
1999
|
}
|
|
1856
|
-
function
|
|
1857
|
-
let r =
|
|
2000
|
+
function kr(e, t, n) {
|
|
2001
|
+
let r = nr();
|
|
1858
2002
|
try {
|
|
1859
|
-
|
|
2003
|
+
xt("\n" + r + " " + t + "\n"), Bt(n);
|
|
1860
2004
|
} catch (e) {
|
|
1861
|
-
|
|
2005
|
+
xt("ERROR in trace_inter_event: " + e);
|
|
1862
2006
|
}
|
|
1863
2007
|
}
|
|
1864
|
-
var
|
|
2008
|
+
var Ir = class {
|
|
1865
2009
|
constructor(e, t) {
|
|
1866
2010
|
this.event = e, this.kw = t || {};
|
|
1867
2011
|
}
|
|
1868
2012
|
};
|
|
1869
|
-
function
|
|
2013
|
+
function $r(e, t, n, r) {
|
|
1870
2014
|
return function(e, t) {
|
|
1871
2015
|
let n = e.priv, r = JSON.stringify(t);
|
|
1872
|
-
if (
|
|
1873
|
-
let n =
|
|
1874
|
-
i ? i(o, t, 1, r.length) :
|
|
2016
|
+
if (it($e(), "trace_inter_event")) {
|
|
2017
|
+
let n = st(e, "url"), o = Ue($e()) + " ==> " + n, i = rt($e(), "trace_ievent_callback");
|
|
2018
|
+
i ? i(o, t, 1, r.length) : kr(0, o, t);
|
|
1875
2019
|
}
|
|
1876
|
-
if (!n.websocket || n.websocket.readyState !== WebSocket.OPEN) return
|
|
2020
|
+
if (!n.websocket || n.websocket.readyState !== WebSocket.OPEN) return Kt(`${Ge(e)}: send_iev(): websocket not open, message lost`), -1;
|
|
1877
2021
|
try {
|
|
1878
2022
|
n.websocket.send(r);
|
|
1879
2023
|
} catch (t) {
|
|
1880
|
-
|
|
2024
|
+
Wt(`${Ge(e)}: send_iev(): ${t}`);
|
|
1881
2025
|
}
|
|
1882
2026
|
return 0;
|
|
1883
2027
|
}(e, function(e, t) {
|
|
1884
|
-
return
|
|
2028
|
+
return mn(e) ? (Wt("iev_create() event NULL"), null) : new Ir(e, t);
|
|
1885
2029
|
}(t, n));
|
|
1886
2030
|
}
|
|
1887
|
-
function
|
|
1888
|
-
return
|
|
1889
|
-
dst_yuno:
|
|
1890
|
-
dst_role:
|
|
2031
|
+
function Cr(e, t, n) {
|
|
2032
|
+
return mn(n) && (n = st(e, "wanted_yuno_service")), {
|
|
2033
|
+
dst_yuno: st(e, "wanted_yuno_name"),
|
|
2034
|
+
dst_role: st(e, "wanted_yuno_role"),
|
|
1891
2035
|
dst_service: n,
|
|
1892
|
-
src_yuno:
|
|
1893
|
-
src_role:
|
|
2036
|
+
src_yuno: Ce(),
|
|
2037
|
+
src_role: Le(),
|
|
1894
2038
|
src_service: t,
|
|
1895
|
-
host:
|
|
2039
|
+
host: or()
|
|
1896
2040
|
};
|
|
1897
2041
|
}
|
|
1898
|
-
function
|
|
1899
|
-
let t = e.priv, n =
|
|
1900
|
-
s && s.length || (s =
|
|
2042
|
+
function Lr(e) {
|
|
2043
|
+
let t = e.priv, n = Ie($e()), r = st($e(), "yuno_version"), o = st($e(), "yuno_release"), i = st($e(), "yuno_tag"), s = rt(e, "required_services");
|
|
2044
|
+
s && s.length || (s = rt($e(), "required_services"));
|
|
1901
2045
|
let _ = {
|
|
1902
|
-
yuno_role:
|
|
1903
|
-
yuno_id:
|
|
1904
|
-
yuno_name:
|
|
2046
|
+
yuno_role: Le(),
|
|
2047
|
+
yuno_id: Pe(),
|
|
2048
|
+
yuno_name: Ce(),
|
|
1905
2049
|
yuno_tag: i,
|
|
1906
2050
|
yuno_version: r,
|
|
1907
2051
|
yuno_release: o,
|
|
@@ -1909,37 +2053,37 @@
|
|
|
1909
2053
|
playing: n,
|
|
1910
2054
|
pid: 0,
|
|
1911
2055
|
watcher_pid: 0,
|
|
1912
|
-
jwt:
|
|
1913
|
-
username:
|
|
2056
|
+
jwt: st(e, "jwt"),
|
|
2057
|
+
username: st($e(), "__username__"),
|
|
1914
2058
|
launch_id: 0,
|
|
1915
|
-
yuno_startdate:
|
|
1916
|
-
id:
|
|
2059
|
+
yuno_startdate: st($e(), "start_date"),
|
|
2060
|
+
id: or(),
|
|
1917
2061
|
user_agent: "undefined" != typeof window ? window.navigator.userAgent : "",
|
|
1918
2062
|
language: "undefined" != typeof window ? window.navigator.language : "",
|
|
1919
2063
|
required_services: s
|
|
1920
2064
|
};
|
|
1921
|
-
return
|
|
2065
|
+
return Jn(e, _, Or, Cr(e, Ue(Me(e)), null)), qn(e, _, "__identity__"), mr(t.gobj_timer, lt(e, "timeout_idack")), $r(e, "EV_IDENTITY_CARD", _);
|
|
1922
2066
|
}
|
|
1923
|
-
function
|
|
1924
|
-
if (
|
|
2067
|
+
function Pr(e, t) {
|
|
2068
|
+
if (mn(t.event)) return -1;
|
|
1925
2069
|
let n = {}, r = t.__global__, o = t.__config__, i = t.__filter__, l = t.__service__, s = t.subscriber;
|
|
1926
|
-
return o && (n.__config__ = o), r && (n.__global__ = r), i && (n.__filter__ = i),
|
|
2070
|
+
return o && (n.__config__ = o), r && (n.__global__ = r), i && (n.__filter__ = i), Jn(e, n, Or, Cr(e, Ue(s), l)), qn(e, n, "__subscribing__"), $r(e, t.event, n);
|
|
1927
2071
|
}
|
|
1928
|
-
function
|
|
2072
|
+
function Ur(e, t, n, r) {
|
|
1929
2073
|
let o = e.priv;
|
|
1930
|
-
return
|
|
2074
|
+
return De(e) && (o.websocket = Dr(e)), 0;
|
|
1931
2075
|
}
|
|
1932
|
-
function
|
|
1933
|
-
return
|
|
2076
|
+
function Fr(e, t, n, r) {
|
|
2077
|
+
return xt("Websocket opened: " + e.priv.url), Lr(e), 0;
|
|
1934
2078
|
}
|
|
1935
|
-
function
|
|
2079
|
+
function Gr(e, t, n, r) {
|
|
1936
2080
|
let o = e.priv, i = n.e, l = n.url;
|
|
1937
|
-
return
|
|
2081
|
+
return Vt(), Kt(`${Ge(e)}: WebSocket closed ${l} (Code: ${i.code}, Reason: "${i.reason}", Clean: ${i.wasClean})`), o.websocket && (o.websocket.onopen = null, o.websocket.onmessage = null, o.websocket.onerror = null, o.websocket.onclose = null, o.websocket = null), o.inform_on_close ? (o.inform_on_close = !1, Dt(e, "EV_ON_CLOSE", {
|
|
1938
2082
|
url: l,
|
|
1939
2083
|
remote_yuno_name: o.remote_yuno_name,
|
|
1940
2084
|
remote_yuno_role: o.remote_yuno_role,
|
|
1941
2085
|
remote_yuno_service: o.remote_yuno_service
|
|
1942
|
-
})) : (
|
|
2086
|
+
})) : (Kt(`${Ge(e)}: EV_ON_OPEN_ERROR cannot open ${l} (Code: ${i.code}, Reason: "${i.reason}", Clean: ${i.wasClean})`), Dt(e, "EV_ON_OPEN_ERROR", {
|
|
1943
2087
|
url: l,
|
|
1944
2088
|
remote_yuno_name: o.remote_yuno_name,
|
|
1945
2089
|
remote_yuno_role: o.remote_yuno_role,
|
|
@@ -1947,27 +2091,27 @@
|
|
|
1947
2091
|
code: i.code,
|
|
1948
2092
|
reason: i.reason,
|
|
1949
2093
|
was_clean: i.wasClean
|
|
1950
|
-
})),
|
|
1951
|
-
let t = e.priv, n =
|
|
2094
|
+
})), De(e) && mr(o.gobj_timer, function(e) {
|
|
2095
|
+
let t = e.priv, n = lt(e, "timeout_retry"), r = lt(e, "timeout_retry_max");
|
|
1952
2096
|
r < n && (r = n);
|
|
1953
2097
|
t.retry_ms = t.retry_ms ? Math.min(2 * t.retry_ms, r) : n;
|
|
1954
2098
|
let o = .2 * t.retry_ms, i = t.retry_ms - o + 2 * Math.random() * o;
|
|
1955
2099
|
return Math.max(1, Math.round(i));
|
|
1956
2100
|
}(e)), 0;
|
|
1957
2101
|
}
|
|
1958
|
-
function
|
|
1959
|
-
return
|
|
2102
|
+
function Vr(e, t, n, r) {
|
|
2103
|
+
return Lr(e), 0;
|
|
1960
2104
|
}
|
|
1961
|
-
function
|
|
2105
|
+
function Mr(e, t, n, r) {
|
|
1962
2106
|
let o = e.priv;
|
|
1963
|
-
|
|
1964
|
-
let i =
|
|
1965
|
-
|
|
1966
|
-
let a =
|
|
2107
|
+
Tr(o.gobj_timer);
|
|
2108
|
+
let i = Hn(e, n, Or, !0), l = wn(e, i, "src_yuno", ""), s = wn(e, i, "src_role", ""), _ = wn(e, i, "src_service", "");
|
|
2109
|
+
ft(e, "remote_yuno_name", l), ft(e, "remote_yuno_role", s), ft(e, "remote_yuno_service", _);
|
|
2110
|
+
let a = Rn(e, n, "result", -1, 0), u = wn(e, n, "comment", "", 0), c = wn(e, n, "username", "", 0), f = kn(e, n, "services_roles", {});
|
|
1967
2111
|
if (a < 0) {
|
|
1968
|
-
|
|
2112
|
+
Ar(e);
|
|
1969
2113
|
let t = {
|
|
1970
|
-
url:
|
|
2114
|
+
url: st(e, "url"),
|
|
1971
2115
|
result: a,
|
|
1972
2116
|
comment: u,
|
|
1973
2117
|
username: c,
|
|
@@ -1975,9 +2119,9 @@
|
|
|
1975
2119
|
remote_yuno_role: s,
|
|
1976
2120
|
remote_yuno_service: _
|
|
1977
2121
|
};
|
|
1978
|
-
|
|
2122
|
+
Ke(e) ? Et(Me(e), "EV_ON_ID_NAK", t, e) : Dt(e, "EV_ON_ID_NAK", t);
|
|
1979
2123
|
} else {
|
|
1980
|
-
if (
|
|
2124
|
+
if (gt(e, "ST_SESSION"), o.inside_on_open = !0, o.retry_ms = 0, !o.inform_on_close) {
|
|
1981
2125
|
o.inform_on_close = !0;
|
|
1982
2126
|
let t = {
|
|
1983
2127
|
username: c,
|
|
@@ -1986,136 +2130,136 @@
|
|
|
1986
2130
|
remote_yuno_service: _,
|
|
1987
2131
|
services_roles: f
|
|
1988
2132
|
};
|
|
1989
|
-
|
|
2133
|
+
Ke(e) ? Et(Me(e), "EV_ON_OPEN", t, e) : Dt(e, "EV_ON_OPEN", t);
|
|
1990
2134
|
}
|
|
1991
2135
|
o.inside_on_open = !1, function(e) {
|
|
1992
|
-
let t =
|
|
1993
|
-
for (let n = 0; n < t.length; n++)
|
|
2136
|
+
let t = Rt(e, null, null, null);
|
|
2137
|
+
for (let n = 0; n < t.length; n++) Pr(e, t[n]);
|
|
1994
2138
|
}(e);
|
|
1995
2139
|
}
|
|
1996
2140
|
return 0;
|
|
1997
2141
|
}
|
|
1998
|
-
function
|
|
2142
|
+
function Wr(e, t, n, r) {
|
|
1999
2143
|
let o = e.priv.url, i = function(e, t) {
|
|
2000
2144
|
let n;
|
|
2001
2145
|
try {
|
|
2002
2146
|
n = JSON.parse(t);
|
|
2003
2147
|
} catch (e) {
|
|
2004
|
-
return
|
|
2148
|
+
return Wt("parsing inter_event json: " + e), null;
|
|
2005
2149
|
}
|
|
2006
|
-
if (!(n instanceof Object)) return
|
|
2150
|
+
if (!(n instanceof Object)) return Wt("parsing inter_event: websocket data not a json object"), null;
|
|
2007
2151
|
let r = n.event;
|
|
2008
|
-
if (!r) return
|
|
2009
|
-
if ("string" != typeof r) return
|
|
2152
|
+
if (!r) return Wt("parsing inter_event: no event"), null;
|
|
2153
|
+
if ("string" != typeof r) return Wt("parsing inter_event: event not a string"), null;
|
|
2010
2154
|
let o = n.kw;
|
|
2011
2155
|
return o ? o instanceof Object ? {
|
|
2012
2156
|
event: r,
|
|
2013
2157
|
kw: o || {}
|
|
2014
|
-
} : (
|
|
2158
|
+
} : (Wt("parsing inter_event: kw not a json object"), null) : (Wt("parsing inter_kw: no kw"), null);
|
|
2015
2159
|
}(0, n.data);
|
|
2016
|
-
if (
|
|
2017
|
-
let e =
|
|
2018
|
-
r ? r(e, i, 2, t) :
|
|
2160
|
+
if (it($e(), "trace_inter_event")) {
|
|
2161
|
+
let e = Ue($e()) + " <== " + o, t = n.data.length, r = rt($e(), "trace_ievent_callback");
|
|
2162
|
+
r ? r(e, i, 2, t) : kr(0, e, i);
|
|
2019
2163
|
}
|
|
2020
2164
|
let l = i.event, s = i.kw;
|
|
2021
|
-
if ("ST_SESSION" !==
|
|
2022
|
-
if (
|
|
2023
|
-
if (0 ===
|
|
2024
|
-
} else
|
|
2025
|
-
return
|
|
2165
|
+
if ("ST_SESSION" !== dt(e)) {
|
|
2166
|
+
if (pt(e, l, D.EVF_PUBLIC_EVENT)) {
|
|
2167
|
+
if (0 === Et(e, l, s, e)) return 0;
|
|
2168
|
+
} else Wt(`${Ge(e)}: event UNKNOWN in not-session state ${l}`);
|
|
2169
|
+
return Ar(e), -1;
|
|
2026
2170
|
}
|
|
2027
2171
|
i = null;
|
|
2028
|
-
let _ =
|
|
2029
|
-
if (u.toLowerCase() !==
|
|
2030
|
-
let c =
|
|
2172
|
+
let _ = zn(e, s), a = Hn(e, s, Or), u = wn(e, a, "dst_role", "");
|
|
2173
|
+
if (u.toLowerCase() !== Le().toLowerCase()) return Wt(`"It's not my role, dst_role: ${u}, my_role: ${Le()}`), 0;
|
|
2174
|
+
let c = wn(e, a, "dst_service", "");
|
|
2031
2175
|
if ("__subscribing__" === _) return -1;
|
|
2032
2176
|
if ("__unsubscribing__" === _) return -1;
|
|
2033
|
-
if (
|
|
2034
|
-
let f =
|
|
2177
|
+
if (pt(e, l, D.EVF_PUBLIC_EVENT)) return Et(e, l, s, e), 0;
|
|
2178
|
+
let f = fe(c, !0);
|
|
2035
2179
|
if (f) {
|
|
2036
|
-
if (!
|
|
2037
|
-
|
|
2038
|
-
} else
|
|
2180
|
+
if (!pt(f, l, D.EVF_PUBLIC_EVENT)) return Wt(`${Ge(e)}: Service found but no event or not public, service '${Ge(f)}', ev '${l}'`), -1;
|
|
2181
|
+
Et(f, l, s, e);
|
|
2182
|
+
} else Ke(e) ? Et(Me(e), l, s, e) : Dt(e, l, s);
|
|
2039
2183
|
return 0;
|
|
2040
2184
|
}
|
|
2041
|
-
function
|
|
2185
|
+
function Kr(e, t, n, r) {
|
|
2042
2186
|
return 0;
|
|
2043
2187
|
}
|
|
2044
|
-
function
|
|
2188
|
+
function xr(e, t, n, r) {
|
|
2045
2189
|
return 0;
|
|
2046
2190
|
}
|
|
2047
|
-
var
|
|
2191
|
+
var Yr = {
|
|
2048
2192
|
mt_create: function(e) {
|
|
2049
2193
|
let t = e.priv;
|
|
2050
|
-
t.gobj_timer =
|
|
2051
|
-
const n =
|
|
2052
|
-
n &&
|
|
2194
|
+
t.gobj_timer = Te(Ue(e), "C_TIMER", {}, e), t.url = st(e, "url"), t.remote_yuno_name = st(e, "remote_yuno_name"), t.remote_yuno_role = st(e, "remote_yuno_role"), t.remote_yuno_service = st(e, "remote_yuno_service"), ft(e, "wanted_yuno_name", t.remote_yuno_name), ft(e, "wanted_yuno_role", t.remote_yuno_role), ft(e, "wanted_yuno_service", t.remote_yuno_service);
|
|
2195
|
+
const n = _t(e, "subscriber");
|
|
2196
|
+
n && Ot(e, null, {}, n);
|
|
2053
2197
|
},
|
|
2054
2198
|
mt_writing: function(e, t) {
|
|
2055
2199
|
let n = e.priv;
|
|
2056
2200
|
switch (t) {
|
|
2057
2201
|
case "url":
|
|
2058
|
-
n.url =
|
|
2202
|
+
n.url = st(e, "url");
|
|
2059
2203
|
break;
|
|
2060
2204
|
case "remote_yuno_name":
|
|
2061
|
-
n.remote_yuno_name =
|
|
2205
|
+
n.remote_yuno_name = st(e, "remote_yuno_name");
|
|
2062
2206
|
break;
|
|
2063
2207
|
case "remote_yuno_role":
|
|
2064
|
-
n.remote_yuno_role =
|
|
2208
|
+
n.remote_yuno_role = st(e, "remote_yuno_role");
|
|
2065
2209
|
break;
|
|
2066
|
-
case "remote_yuno_service": n.remote_yuno_service =
|
|
2210
|
+
case "remote_yuno_service": n.remote_yuno_service = st(e, "remote_yuno_service");
|
|
2067
2211
|
}
|
|
2068
2212
|
},
|
|
2069
2213
|
mt_start: function(e) {
|
|
2070
2214
|
let t = e.priv;
|
|
2071
|
-
return
|
|
2215
|
+
return ye(t.gobj_timer), t.retry_ms = 0, t.websocket = Dr(e), 0;
|
|
2072
2216
|
},
|
|
2073
2217
|
mt_stop: function(e) {
|
|
2074
2218
|
let t = e.priv;
|
|
2075
|
-
return
|
|
2219
|
+
return Tr(t.gobj_timer), Se(t.gobj_timer), t.websocket && Ar(e), 0;
|
|
2076
2220
|
},
|
|
2077
2221
|
mt_destroy: function(e) {},
|
|
2078
2222
|
mt_stats: function(e, t, n, r) {
|
|
2079
|
-
if ("ST_SESSION" !==
|
|
2223
|
+
if ("ST_SESSION" !== dt(e)) return Wt("Not in session"), null;
|
|
2080
2224
|
n || (n = {});
|
|
2081
|
-
let o =
|
|
2082
|
-
return i || (i = {}),
|
|
2225
|
+
let o = Cr(e, Ue(r), wn(e, n, "service", null, 0)), i = kn(e, n, "__md_stats__", null, At.KW_EXTRACT);
|
|
2226
|
+
return i || (i = {}), Jn(e, n, "stats_stack", {
|
|
2083
2227
|
stats: t,
|
|
2084
2228
|
kw: i
|
|
2085
|
-
}),
|
|
2229
|
+
}), Jn(e, n, Or, o), n.__stats__ = t, qn(e, n, "__stats__"), $r(e, "EV_MT_STATS", n, r), null;
|
|
2086
2230
|
},
|
|
2087
2231
|
mt_command_parser: function(e, t, n, r) {
|
|
2088
|
-
if ("ST_SESSION" !==
|
|
2232
|
+
if ("ST_SESSION" !== dt(e)) return Wt("Not in session"), null;
|
|
2089
2233
|
n || (n = {});
|
|
2090
|
-
let o =
|
|
2091
|
-
return i || (i = {}),
|
|
2234
|
+
let o = Cr(e, Ue(r), wn(e, n, "service", "", 0)), i = kn(e, n, "__md_command__", null, At.KW_EXTRACT);
|
|
2235
|
+
return i || (i = {}), Jn(e, n, "command_stack", {
|
|
2092
2236
|
command: t,
|
|
2093
2237
|
kw: i
|
|
2094
|
-
}),
|
|
2238
|
+
}), Jn(e, n, Or, o), n.__command__ = t, qn(e, n, "__command__"), $r(e, "EV_MT_COMMAND", n, r), null;
|
|
2095
2239
|
},
|
|
2096
2240
|
mt_inject_event: function(e, t, n, r) {
|
|
2097
|
-
if ("ST_SESSION" !==
|
|
2098
|
-
if (n || (n = {}),
|
|
2241
|
+
if ("ST_SESSION" !== dt(e)) return window.console.error("Not in session"), -1;
|
|
2242
|
+
if (n || (n = {}), Hn(e, n, Or));
|
|
2099
2243
|
else {
|
|
2100
|
-
let o =
|
|
2101
|
-
|
|
2244
|
+
let o = Cr(e, Ue(r), wn(e, n, "__service__", 0, 0));
|
|
2245
|
+
Zt(n, "__service__"), Jn(e, n, "__message__", t), Jn(e, n, Or, o);
|
|
2102
2246
|
}
|
|
2103
|
-
return
|
|
2247
|
+
return qn(e, n, "__message__"), $r(e, t, n, r);
|
|
2104
2248
|
},
|
|
2105
2249
|
mt_subscription_added: function(e, t) {
|
|
2106
2250
|
let n = e.priv;
|
|
2107
|
-
return "ST_SESSION" ===
|
|
2251
|
+
return "ST_SESSION" === dt(e) && n.websocket ? n.inside_on_open ? 0 : Pr(e, t) : 0;
|
|
2108
2252
|
},
|
|
2109
2253
|
mt_subscription_deleted: function(e, t) {
|
|
2110
2254
|
let n = e.priv;
|
|
2111
|
-
if ("ST_SESSION" !==
|
|
2255
|
+
if ("ST_SESSION" !== dt(e) || !n.websocket) return 0;
|
|
2112
2256
|
if (n.inside_on_open) return 0;
|
|
2113
|
-
if (
|
|
2257
|
+
if (mn(t.event)) return 0;
|
|
2114
2258
|
let r = {}, o = t.__global__, i = t.__config__, l = t.__filter__, s = t.__service__, _ = t.subscriber;
|
|
2115
|
-
return i && (r.__config__ = i), o && (r.__global__ = o), l && (r.__filter__ = l),
|
|
2259
|
+
return i && (r.__config__ = i), o && (r.__global__ = o), l && (r.__filter__ = l), Jn(e, r, Or, Cr(e, Ue(_), s)), qn(e, r, "__unsubscribing__"), $r(e, t.event, r, e);
|
|
2116
2260
|
}
|
|
2117
2261
|
};
|
|
2118
|
-
e.GObj = O, e.SDATA = j, e.SDATAAUTHZ = (e, t, n, r, o, i) => new
|
|
2262
|
+
e.GObj = O, e.SDATA = j, e.SDATAAUTHZ = (e, t, n, r, o, i) => new y(e, t, n, null, i, r, null, 0, null, o, null), e.SDATACM = (e, t, n, r, o, i) => new y(e, t, 0, null, i, n, null, 0, o, r, null), e.SDATACM2 = (e, t, n, r, o, i, l) => new y(e, t, n, null, l, r, null, 0, i, o, null), e.SDATADF = (e, t, n, r, o, i) => new y(e, t, n, null, i, null, r, o), e.SDATAPM = (e, t, n, r, o) => new y(e, t, n, r, o), e.SDATAPM0 = (e, t, n, r, o) => new y(e, t, n, null, o, null, null, 0, null, null, r), e.SDATA_END = v, e.SDataDesc = y, e.YUNETA_VERSION = l, Object.defineProperty(e, "__yuno__", {
|
|
2119
2263
|
enumerable: !0,
|
|
2120
2264
|
get: function() {
|
|
2121
2265
|
return p;
|
|
@@ -2126,48 +2270,48 @@
|
|
|
2126
2270
|
return t;
|
|
2127
2271
|
}, e.build_stats_response = i, e.clean_name = function(e) {
|
|
2128
2272
|
return e.replace(/[?# ^:]/g, "_");
|
|
2129
|
-
}, e.clear_timeout =
|
|
2273
|
+
}, e.clear_timeout = Tr, e.cmp_two_simple_json = yn, e.command_parser = function(e, t, n, r) {}, e.createElement2 = function e(t, n) {
|
|
2130
2274
|
let [r, o, i, l] = t;
|
|
2131
|
-
if (!r) return void
|
|
2275
|
+
if (!r) return void Wt("Tag must be a valid HTML element.");
|
|
2132
2276
|
let s = document.createElement(r), _ = "";
|
|
2133
2277
|
if (o && "object" == typeof o) for (let e of Object.keys(o)) if ("style" === e && "object" == typeof o[e]) {
|
|
2134
2278
|
let t = "";
|
|
2135
2279
|
for (const n of Object.keys(o[e])) t += `${n}: ${o[e][n]};`;
|
|
2136
2280
|
s.style.cssText = t;
|
|
2137
2281
|
} else "style" === e ? s.style.cssText = o[e] : "i18n" === e || "data-i18n" === e || "data_i18next" === e || "data-i18next" === e ? null !== o[e] && void 0 !== o[e] && (_ = o[e], s.setAttribute("data-i18n", _)) : s.setAttribute(e, o[e]);
|
|
2138
|
-
if (
|
|
2282
|
+
if (cn(i)) if (i = i.trim(), i.length > 0 && "<" === i[0]) s.appendChild(tr(i));
|
|
2139
2283
|
else if (n && _) s.textContent = n(_) || i;
|
|
2140
2284
|
else s.textContent = i;
|
|
2141
|
-
else if (
|
|
2142
|
-
if (i.length > 0) if (
|
|
2285
|
+
else if (un(i)) {
|
|
2286
|
+
if (i.length > 0) if (cn(i[0])) s.appendChild(e(i, n));
|
|
2143
2287
|
else for (let t of i) Array.isArray(t) && t.length > 0 ? s.appendChild(e(t, n)) : t instanceof HTMLElement && s.appendChild(t);
|
|
2144
|
-
} else i instanceof HTMLElement || i instanceof Text || i instanceof SVGElement ? s.appendChild(i) : null != i && (
|
|
2288
|
+
} else i instanceof HTMLElement || i instanceof Text || i instanceof SVGElement ? s.appendChild(i) : null != i && (Wt("content ignored"), Bt(i));
|
|
2145
2289
|
if (l && "object" == typeof l) for (const e of Object.keys(l)) s.addEventListener(e, l[e]);
|
|
2146
2290
|
return s;
|
|
2147
|
-
}, e.createOneHtml =
|
|
2148
|
-
let n =
|
|
2149
|
-
return
|
|
2291
|
+
}, e.createOneHtml = tr, e.create_json_record = function(e, t) {
|
|
2292
|
+
let n = Jt(e);
|
|
2293
|
+
return zt(n, t), n;
|
|
2150
2294
|
}, e.create_template_record = function(e, t) {
|
|
2151
2295
|
let n = {};
|
|
2152
2296
|
return t || (t = {}), Object.entries(e).forEach(([e, r]) => {
|
|
2153
2297
|
let o;
|
|
2154
|
-
|
|
2298
|
+
an(r) && (o = r.default), n[e] = kn(null, t, e, o);
|
|
2155
2299
|
}), n;
|
|
2156
|
-
}, e.current_timestamp =
|
|
2157
|
-
let n =
|
|
2158
|
-
return n &&
|
|
2300
|
+
}, e.current_timestamp = nr, e.data_type_t = T, e.db_list_persistent_attrs = function(e, t) {
|
|
2301
|
+
let n = Fn(lr(e), null, !1), r = {};
|
|
2302
|
+
return n && an(n) && (r = Pn(e, n, t, !1)), r;
|
|
2159
2303
|
}, e.db_load_persistent_attrs = function(e, t) {
|
|
2160
|
-
let n =
|
|
2161
|
-
if (r &&
|
|
2162
|
-
let o =
|
|
2163
|
-
o =
|
|
2304
|
+
let n = ot(e, h.SDF_PERSIST), r = Fn(lr(e), null, !1);
|
|
2305
|
+
if (r && an(r)) {
|
|
2306
|
+
let o = Pn(e, r, t, !1);
|
|
2307
|
+
o = Pn(e, o, n, !1), at(e, o, h.SDF_PERSIST);
|
|
2164
2308
|
}
|
|
2165
2309
|
}, e.db_remove_persistent_attrs = function(e, t) {
|
|
2166
|
-
let n =
|
|
2167
|
-
0 ===
|
|
2310
|
+
let n = Un(e, Fn(lr(e), null, !1), t, !1);
|
|
2311
|
+
0 === ln(n) ? Vn(lr(e)) : Gn(lr(e), n);
|
|
2168
2312
|
}, e.db_save_persistent_attrs = function(e, t) {
|
|
2169
|
-
let n =
|
|
2170
|
-
return r &&
|
|
2313
|
+
let n = Pn(e, ot(e, h.SDF_PERSIST), t, !1), r = Fn(lr(e), null, !1);
|
|
2314
|
+
return r && an(r) && Qt(n, r), Gn(lr(e), n);
|
|
2171
2315
|
}, e.debounce = function(e, t = 0, n = !1) {
|
|
2172
2316
|
let r = null, o = null, i = null;
|
|
2173
2317
|
const l = (...l) => {
|
|
@@ -2192,7 +2336,7 @@
|
|
|
2192
2336
|
Object.assign(t, e);
|
|
2193
2337
|
}
|
|
2194
2338
|
return t;
|
|
2195
|
-
}, e.empty_string =
|
|
2339
|
+
}, e.empty_string = mn, e.escapeHtml = er, e.event_flag_t = D, e.gclass_add_ev_action = ie, e.gclass_add_event_type = se, e.gclass_add_state = oe, e.gclass_check_fsm = ae, e.gclass_create = ee, e.gclass_event_type = _e, e.gclass_find_by_name = ue, e.gclass_flag_t = N, e.gclass_unregister = te, e.getPositionRelativeToBody = function(e) {
|
|
2196
2340
|
if (!e) return {
|
|
2197
2341
|
top: 0,
|
|
2198
2342
|
left: 0,
|
|
@@ -2211,57 +2355,59 @@
|
|
|
2211
2355
|
right: n + s + r,
|
|
2212
2356
|
bottom: t + l + o
|
|
2213
2357
|
};
|
|
2214
|
-
}, e.get_function_name =
|
|
2358
|
+
}, e.get_function_name = ir, e.get_now = function() {
|
|
2215
2359
|
return Math.floor(Date.now() / 1e3);
|
|
2216
|
-
}, e.gobj_bottom_gobj =
|
|
2217
|
-
return
|
|
2218
|
-
}, e.gobj_change_state =
|
|
2219
|
-
if (
|
|
2220
|
-
let l = p &&
|
|
2221
|
-
return l && (
|
|
2360
|
+
}, e.gobj_bottom_gobj = Ye, e.gobj_change_parent = function(e, t) {
|
|
2361
|
+
return xe(e) ? (Wt("gobj NULL or DESTROYED"), null) : t instanceof O ? (e.parent && e.parent.mt_child_removed && e.parent.mt_child_removed(e.parent, e), e.parent && (be(e.parent, e), e.parent = null), de(t, e), t.mt_child_added && (Y(e) && xt(n("👦👦🔵 child_added(%s): %s", Ve(t), Ge(e))), t.mt_child_added(t, e)), 0) : (Wt(`${Ge(e)}: gobj_change_parent() BAD TYPE of parent`), -1);
|
|
2362
|
+
}, e.gobj_change_state = gt, e.gobj_command = function(e, t, r, i) {
|
|
2363
|
+
if (xe(e)) return Wt("gobj NULL or DESTROYED"), -1;
|
|
2364
|
+
let l = p && lt(p, "tracing");
|
|
2365
|
+
return l && (L(n("🌀🌀 mach(%s%s), cmd: %s, src: %s", De(e) ? "" : "!!", Ge(e), t, Ge(i))), l > 1 && Bt(r)), e.gclass.gmt.mt_command_parser ? e.gclass.gmt.mt_command_parser(e, t, r, i) : e.gclass.command_table ? c ? c(e, t, r, i) : o(0, -1, n("%s: global command parser not available", Ge(e)), 0, 0) : o(0, -1, n("%s: command table not available", Ge(e)), 0, 0);
|
|
2222
2366
|
}, e.gobj_create = function(e, t, n, r) {
|
|
2223
|
-
return
|
|
2224
|
-
}, e.gobj_create2 =
|
|
2225
|
-
return
|
|
2226
|
-
}, e.gobj_create_pure_child =
|
|
2227
|
-
return
|
|
2367
|
+
return Ee(e, t, n, r, 0);
|
|
2368
|
+
}, e.gobj_create2 = Ee, e.gobj_create_default_service = function(e, t, n, r) {
|
|
2369
|
+
return Ee(e, t, n, r, R.gobj_flag_default_service | R.gobj_flag_autostart);
|
|
2370
|
+
}, e.gobj_create_pure_child = Te, e.gobj_create_service = function(e, t, n, r) {
|
|
2371
|
+
return Ee(e, t, n, r, R.gobj_flag_service);
|
|
2228
2372
|
}, e.gobj_create_volatil = function(e, t, n, r) {
|
|
2229
|
-
return
|
|
2373
|
+
return Ee(e, t, n, r, R.gobj_flag_volatil);
|
|
2230
2374
|
}, e.gobj_create_yuno = function(e, t, n) {
|
|
2231
|
-
return
|
|
2232
|
-
}, e.gobj_current_state =
|
|
2233
|
-
if (
|
|
2375
|
+
return Ee(e, t, n, null, R.gobj_flag_yuno);
|
|
2376
|
+
}, e.gobj_current_state = dt, e.gobj_default_service = ce, e.gobj_destroy = he, e.gobj_find_child = et, e.gobj_find_gobj = function(e, t) {
|
|
2377
|
+
if (mn(t)) return null;
|
|
2234
2378
|
const n = t.toLowerCase();
|
|
2235
|
-
return "__default_service__" === n ? m : "__yuno__" === n || "__root__" === n ? p :
|
|
2236
|
-
}, e.gobj_find_service =
|
|
2379
|
+
return "__default_service__" === n ? m : "__yuno__" === n || "__root__" === n ? p : tt(p, t);
|
|
2380
|
+
}, e.gobj_find_service = fe, e.gobj_find_subscribings = wt, e.gobj_find_subscriptions = Rt, e.gobj_flag_t = R, e.gobj_full_name = Ve, e.gobj_gclass_name = Fe, e.gobj_global_trace_level = function() {
|
|
2381
|
+
return F;
|
|
2382
|
+
}, e.gobj_has_attr = nt, e.gobj_has_event = pt, e.gobj_has_output_event = mt, e.gobj_hsdata = Q, e.gobj_is_destroying = xe, e.gobj_is_playing = Ie, e.gobj_is_pure_child = Ke, e.gobj_is_running = De, e.gobj_is_service = ke, e.gobj_is_volatil = We, e.gobj_list_persistent_attrs = function(e, t) {
|
|
2237
2383
|
return u ? u(e, t) : null;
|
|
2238
2384
|
}, e.gobj_list_subscriptions = function(e) {
|
|
2239
|
-
let t =
|
|
2385
|
+
let t = Rt(e, null, null, null);
|
|
2240
2386
|
for (let n = 0; n < t.length; n++) {
|
|
2241
|
-
let r = t[n], o =
|
|
2242
|
-
|
|
2387
|
+
let r = t[n], o = Dn(e, r, "publisher", null, At.KW_REQUIRED), i = Dn(e, r, "subscriber", null, At.KW_REQUIRED);
|
|
2388
|
+
tn(r, "s_event", wn(e, r, "event", "", At.KW_REQUIRED)), tn(r, "s_publisher", Ge(o)), tn(r, "s_subscriber", Ge(i));
|
|
2243
2389
|
}
|
|
2244
|
-
let n =
|
|
2390
|
+
let n = wt(e, 0, null, 0);
|
|
2245
2391
|
for (let t = 0; t < n.length; t++) {
|
|
2246
|
-
let r = n[t], o =
|
|
2247
|
-
|
|
2392
|
+
let r = n[t], o = Dn(e, r, "publisher", null, At.KW_REQUIRED), i = Dn(e, r, "subscriber", null, At.KW_REQUIRED);
|
|
2393
|
+
tn(r, "s_event", wn(e, r, "event", "", At.KW_REQUIRED)), tn(r, "s_publisher", Ge(o)), tn(r, "s_subscriber", Ge(i));
|
|
2248
2394
|
}
|
|
2249
2395
|
return {
|
|
2250
2396
|
subscriptions: t,
|
|
2251
2397
|
subscribings: n,
|
|
2252
|
-
"total subscriptions":
|
|
2253
|
-
total_subscribings:
|
|
2398
|
+
"total subscriptions": sn(t),
|
|
2399
|
+
total_subscribings: sn(n)
|
|
2254
2400
|
};
|
|
2255
2401
|
}, e.gobj_load_persistent_attrs = function(e, t) {
|
|
2256
|
-
return
|
|
2402
|
+
return ke(e) ? s ? s(e, t) : -1 : (Wt(`${Ge(e)}: Only gobj services can load/save writable-persistent`), -1);
|
|
2257
2403
|
}, e.gobj_match_children = function(e, t) {
|
|
2258
|
-
if (
|
|
2404
|
+
if (xe(e)) return Wt("gobj NULL or DESTROYED"), null;
|
|
2259
2405
|
t = t || {};
|
|
2260
2406
|
let n = [];
|
|
2261
2407
|
const r = e.dl_children;
|
|
2262
2408
|
for (let e = 0; e < r.length; e++) {
|
|
2263
2409
|
const o = r[e];
|
|
2264
|
-
|
|
2410
|
+
Ze(o, t) && n.push(o);
|
|
2265
2411
|
}
|
|
2266
2412
|
return n;
|
|
2267
2413
|
}, e.gobj_match_children_tree = function(e, t) {
|
|
@@ -2271,57 +2417,85 @@
|
|
|
2271
2417
|
let o = r.dl_children;
|
|
2272
2418
|
for (let r = 0; r < o.length; r++) {
|
|
2273
2419
|
let i = o[r];
|
|
2274
|
-
|
|
2420
|
+
Ze(i, t) && n.push(i), e(n, i);
|
|
2275
2421
|
}
|
|
2276
2422
|
}(n, e), n;
|
|
2277
|
-
}, e.gobj_match_gobj =
|
|
2423
|
+
}, e.gobj_match_gobj = Ze, e.gobj_name = Ue, e.gobj_parent = Me, e.gobj_pause = we, e.gobj_play = Re, e.gobj_post_event = function(e, t, n, r) {
|
|
2278
2424
|
setTimeout(() => {
|
|
2279
|
-
|
|
2425
|
+
xe(e) || Et(e, t, n, r);
|
|
2280
2426
|
}, 10);
|
|
2281
|
-
}, e.gobj_publish_event =
|
|
2282
|
-
return
|
|
2427
|
+
}, e.gobj_publish_event = Dt, e.gobj_read_attr = rt, e.gobj_read_attrs = ot, e.gobj_read_bool_attr = it, e.gobj_read_integer_attr = lt, e.gobj_read_pointer_attr = _t, e.gobj_read_str_attr = st, e.gobj_remove_persistent_attrs = function(e, t) {
|
|
2428
|
+
return ke(e) ? a ? a(e, t) : -1 : (Wt(`${Ge(e)}: Only gobj services can load/save writable-persistent`), -1);
|
|
2429
|
+
}, e.gobj_repr_global_trace_levels = function() {
|
|
2430
|
+
return U.map(([e, t, n]) => ({
|
|
2431
|
+
name: e,
|
|
2432
|
+
bit: t,
|
|
2433
|
+
description: n,
|
|
2434
|
+
set: !!(F & t)
|
|
2435
|
+
}));
|
|
2283
2436
|
}, e.gobj_reset_volatil_attrs = function(e) {
|
|
2284
2437
|
return function(e, t, n) {
|
|
2285
|
-
if (
|
|
2438
|
+
if (xe(e)) return Wt("gobj NULL or DESTROYED"), -1;
|
|
2286
2439
|
let r = e.gclass.attrs_table;
|
|
2287
2440
|
for (let o = 0; o < r.length; o++) {
|
|
2288
2441
|
const i = r[o];
|
|
2289
2442
|
if (i.name && !(n && i.flag & n) && (-1 === t || i.flag & t)) {
|
|
2290
|
-
const t =
|
|
2291
|
-
|
|
2443
|
+
const t = q(e, e.jn_attrs, i);
|
|
2444
|
+
an(e.priv) && e.priv.hasOwnProperty(i.name) && (e.priv[i.name] = t), e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, i.name);
|
|
2292
2445
|
}
|
|
2293
2446
|
}
|
|
2294
2447
|
return 0;
|
|
2295
|
-
}(e,
|
|
2448
|
+
}(e, h.SDF_VOLATIL, 0);
|
|
2296
2449
|
}, e.gobj_save_persistent_attrs = function(e, t) {
|
|
2297
|
-
return
|
|
2298
|
-
}, e.gobj_search_path =
|
|
2450
|
+
return ke(e) ? _ ? _(e, t) : -1 : (Wt(`${Ge(e)}: Only gobj services can load/save writable-persistent`), -1);
|
|
2451
|
+
}, e.gobj_search_path = tt, e.gobj_send_event = Et, e.gobj_services = function() {
|
|
2299
2452
|
let e = [];
|
|
2300
|
-
for (const t of Object.keys(b))
|
|
2453
|
+
for (const t of Object.keys(b)) rn(e, t);
|
|
2301
2454
|
return e;
|
|
2302
|
-
}, e.gobj_set_bottom_gobj =
|
|
2303
|
-
|
|
2304
|
-
}, e.
|
|
2305
|
-
|
|
2455
|
+
}, e.gobj_set_bottom_gobj = Be, e.gobj_set_deep_trace = function(e) {
|
|
2456
|
+
return V = Number(e) || 0, 0;
|
|
2457
|
+
}, e.gobj_set_gclass_trace = function(e, t, n) {
|
|
2458
|
+
const r = cn(e) ? ue(e) : e;
|
|
2459
|
+
if (!r) return Wt(`gobj_set_gclass_trace: gclass NOT FOUND: ${e}`), -1;
|
|
2460
|
+
const o = M(t, "gobj_set_gclass_trace");
|
|
2461
|
+
return o ? (n ? r.trace_level |= o : r.trace_level &= ~o, 0) : -1;
|
|
2462
|
+
}, e.gobj_set_global_no_trace = function(e, t) {
|
|
2463
|
+
const n = M(e, "gobj_set_global_no_trace");
|
|
2464
|
+
return n ? (t ? G |= n : G &= ~n, 0) : -1;
|
|
2465
|
+
}, e.gobj_set_global_trace = function(e, t) {
|
|
2466
|
+
const n = M(e, "gobj_set_global_trace");
|
|
2467
|
+
return n ? (t ? F |= n : F &= ~n, 0) : -1;
|
|
2468
|
+
}, e.gobj_set_gobj_no_trace = function(e, t, n) {
|
|
2469
|
+
if (!e) return Wt("gobj_set_gobj_no_trace: gobj NULL"), -1;
|
|
2470
|
+
const r = M(t, "gobj_set_gobj_no_trace");
|
|
2471
|
+
return r ? (n ? e.no_trace_level |= r : e.no_trace_level &= ~r, 0) : -1;
|
|
2472
|
+
}, e.gobj_set_gobj_trace = function(e, t, n) {
|
|
2473
|
+
if (!e) return Wt("gobj_set_gobj_trace: gobj NULL"), -1;
|
|
2474
|
+
const r = M(t, "gobj_set_gobj_trace");
|
|
2475
|
+
return r ? (n ? e.trace_level |= r : e.trace_level &= ~r, 0) : -1;
|
|
2476
|
+
}, e.gobj_set_trace_machine_format = function(e) {
|
|
2477
|
+
C = 1 === Number(e) ? 1 : 0;
|
|
2478
|
+
}, e.gobj_short_name = Ge, e.gobj_start = ye, e.gobj_start_children = function(e) {
|
|
2479
|
+
return xe(e) ? (Wt("gobj NULL or DESTROYED"), -1) : He(e, A.WALK_FIRST2LAST, ve, 0, 0);
|
|
2306
2480
|
}, e.gobj_start_tree = function(e) {
|
|
2307
|
-
return
|
|
2481
|
+
return xe(e) ? (Wt("gobj NULL or DESTROYED"), -1) : (B(e) && L(n("⏺ ⏺ ⏺ ⏺ start_tree: %s", Ve(e))), e.gclass.gclass_flag & N.gcflag_manual_start || e.disabled ? 0 : (e.running || ye(e), qe(e, A.WALK_TOP2BOTTOM, je, 0, 0)));
|
|
2308
2482
|
}, e.gobj_start_up = function(e, t, n, r, o, i, l) {
|
|
2309
2483
|
s = t, _ = n, a = r, u = o, c = i, f = l;
|
|
2310
|
-
const d = [["EV_STATE_CHANGED",
|
|
2484
|
+
const d = [["EV_STATE_CHANGED", D.EVF_SYSTEM_EVENT | D.EVF_OUTPUT_EVENT | D.EVF_NO_WARN_SUBS], [0, 0]];
|
|
2311
2485
|
for (let e = 0; e < d.length; e++) {
|
|
2312
2486
|
let t = d[e][0], n = d[e][1];
|
|
2313
|
-
|
|
2487
|
+
le(g, t, n);
|
|
2314
2488
|
}
|
|
2315
2489
|
return 0;
|
|
2316
2490
|
}, e.gobj_stats = function(e, t, r, o) {
|
|
2317
|
-
return
|
|
2318
|
-
}, e.gobj_stop =
|
|
2319
|
-
return
|
|
2320
|
-
}, e.gobj_subscribe_event =
|
|
2321
|
-
return
|
|
2322
|
-
}, e.gobj_unsubscribe_event = function(e, t, n, r) {
|
|
2323
|
-
if (null == n && (n = {}), !e) return
|
|
2324
|
-
if (!r) return
|
|
2491
|
+
return xe(e) ? (Wt("gobj NULL or DESTROYED"), -1) : e.gclass.gmt.mt_stats ? e.gclass.gmt.mt_stats(e, t, r, o) : f ? f(e, t, r, o) : i(0, -1, n("%s, stats parser not available", Ge(e)), 0, 0);
|
|
2492
|
+
}, e.gobj_stop = Se, e.gobj_stop_children = Ne, e.gobj_stop_tree = function(e) {
|
|
2493
|
+
return xe(e) ? (Wt("gobj NULL or DESTROYED"), -1) : (B(e) && L(n("⏹ ⏹ ⏹ ⏹ stop_tree: %s", Ve(e))), De(e) && Se(e), qe(e, A.WALK_TOP2BOTTOM, Oe, 0, 0));
|
|
2494
|
+
}, e.gobj_subscribe_event = Ot, e.gobj_trace_level = W, e.gobj_trace_machine_format = function() {
|
|
2495
|
+
return C;
|
|
2496
|
+
}, e.gobj_trace_no_level = K, e.gobj_unsubscribe_event = function(e, t, n, r) {
|
|
2497
|
+
if (null == n && (n = {}), !e) return Wt(`publisher NULL: ev ${t}`), 0;
|
|
2498
|
+
if (!r) return Wt(`subscriber NULL: ev ${t}`), 0;
|
|
2325
2499
|
const o = new Set([
|
|
2326
2500
|
"__config__",
|
|
2327
2501
|
"__global__",
|
|
@@ -2330,102 +2504,102 @@
|
|
|
2330
2504
|
"__service__"
|
|
2331
2505
|
]);
|
|
2332
2506
|
if (Object.keys(n).forEach((n) => {
|
|
2333
|
-
o.has(n) ||
|
|
2334
|
-
}),
|
|
2335
|
-
else if (!(
|
|
2336
|
-
let i =
|
|
2507
|
+
o.has(n) || Wt(`${Ge(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
|
|
2508
|
+
}), mn(t)) t = "";
|
|
2509
|
+
else if (!(mt(e, t, D.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & N.gcflag_no_check_output_events)) return Wt(`event NOT in output event list: ${Ge(e)}, ev ${t}`), 0;
|
|
2510
|
+
let i = vt(e.dl_subscriptions, e, t, n, r), l = 0;
|
|
2337
2511
|
for (let t = 0; t < i.length; t++) {
|
|
2338
2512
|
let n = i[t];
|
|
2339
|
-
|
|
2513
|
+
St(e, n, !1, !1), l++;
|
|
2340
2514
|
}
|
|
2341
|
-
return l || (
|
|
2342
|
-
}, e.gobj_unsubscribe_list =
|
|
2343
|
-
if (!
|
|
2515
|
+
return l || (Kt(`${Ge(e)}: No subscription found`), Bt(n, "No subscription found")), 0;
|
|
2516
|
+
}, e.gobj_unsubscribe_list = Nt, e.gobj_walk_gobj_children = He, e.gobj_walk_gobj_children_tree = qe, e.gobj_write_attr = function(e, t, r, o) {
|
|
2517
|
+
if (!cn(t)) return Wt(n("gobj_write_attr(%s): path must be a string", Ge(e))), -1;
|
|
2344
2518
|
let i, l = e.jn_attrs, s = t.split("`");
|
|
2345
2519
|
if (s.length <= 1) {
|
|
2346
2520
|
let o = t;
|
|
2347
|
-
return o in l && l.hasOwnProperty(o) ? (l[o] = r,
|
|
2521
|
+
return o in l && l.hasOwnProperty(o) ? (l[o] = r, an(e.priv) && e.priv.hasOwnProperty(o) && (e.priv[o] = r), e.obflag & w.obflag_created && !(e.obflag & w.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, o), 0) : (Wt(n("gobj_write_attr(%s): attr not found '%s'", Ge(e), o)), -1);
|
|
2348
2522
|
}
|
|
2349
2523
|
let _ = s.length;
|
|
2350
2524
|
for (let t = 0; t < _; t++) {
|
|
2351
2525
|
i = s[t];
|
|
2352
|
-
let n =
|
|
2526
|
+
let n = et(e, { __gobj_name__: i });
|
|
2353
2527
|
if (n && t < _ - 1) {
|
|
2354
2528
|
e = n;
|
|
2355
2529
|
continue;
|
|
2356
2530
|
}
|
|
2357
2531
|
let o = e.jn_attrs;
|
|
2358
|
-
if (i in o && o.hasOwnProperty(i)) return o[i] = r,
|
|
2532
|
+
if (i in o && o.hasOwnProperty(i)) return o[i] = r, an(e.priv) && e.priv.hasOwnProperty(i) && (e.priv[i] = r), e.obflag & w.obflag_created && !(e.obflag & w.obflag_destroyed) && e.mt_writing && e.mt_writing(e, i), 0;
|
|
2359
2533
|
break;
|
|
2360
2534
|
}
|
|
2361
|
-
return
|
|
2362
|
-
}, e.gobj_write_attrs =
|
|
2535
|
+
return Wt(n("gobj_write_attr(%s): attr not found '%s'", Ge(e), i)), -1;
|
|
2536
|
+
}, e.gobj_write_attrs = at, e.gobj_write_bool_attr = ut, e.gobj_write_integer_attr = ct, e.gobj_write_str_attr = ft, e.gobj_yuno = $e, e.gobj_yuno_id = Pe, e.gobj_yuno_name = Ce, e.gobj_yuno_role = Le, e.id_index_in_obj_list = Kn, e.index_in_list = rr, e.is_array = un, e.is_boolean = gn, e.is_date = function(e) {
|
|
2363
2537
|
return e instanceof Date && !isNaN(e);
|
|
2364
|
-
}, e.is_function =
|
|
2365
|
-
if (!
|
|
2538
|
+
}, e.is_function = bn, e.is_gobj = pn, e.is_metadata_key = function(e) {
|
|
2539
|
+
if (!cn(e)) return !1;
|
|
2366
2540
|
let t;
|
|
2367
2541
|
for (t = 0; t < e.length && "_" === e[t] && !(t > 2); t++);
|
|
2368
2542
|
return 2 === t;
|
|
2369
|
-
}, e.is_null =
|
|
2370
|
-
if (!
|
|
2543
|
+
}, e.is_null = dn, e.is_number = fn, e.is_object = an, e.is_private_key = function(e) {
|
|
2544
|
+
if (!cn(e)) return !1;
|
|
2371
2545
|
let t;
|
|
2372
2546
|
for (t = 0; t < e.length && "_" === e[t] && !(t > 2); t++);
|
|
2373
2547
|
return 1 === t;
|
|
2374
2548
|
}, e.is_pure_number = function(e) {
|
|
2375
|
-
if (
|
|
2376
|
-
if (!
|
|
2549
|
+
if (fn(e)) return !0;
|
|
2550
|
+
if (!cn(e)) return !1;
|
|
2377
2551
|
const t = Number(e);
|
|
2378
2552
|
return !isNaN(t) && "" !== e.trim() && !isNaN(t);
|
|
2379
|
-
}, e.is_string =
|
|
2380
|
-
let o =
|
|
2381
|
-
if (!o) return
|
|
2382
|
-
if (
|
|
2553
|
+
}, e.is_string = cn, e.jdb_delete = function(e, t, n, r) {
|
|
2554
|
+
let o = kn(null, kn(null, e, "topics", null, 0), t, null, 0);
|
|
2555
|
+
if (!o) return Wt("jdb_delete: topic not found: " + t), null;
|
|
2556
|
+
if (mn(r.id)) return Wt("jdb_delete: record without id: " + r), Yt(r), null;
|
|
2383
2557
|
let i, l = n.split("`"), s = o;
|
|
2384
|
-
for (; (i = l.shift()) && !
|
|
2385
|
-
if (0 === l.length && s) if (
|
|
2386
|
-
let e =
|
|
2558
|
+
for (; (i = l.shift()) && !mn(i) && s;) an(s) && (s = kn(null, s, e.hook, null, 0)), s = Xn(s, null, i, !1);
|
|
2559
|
+
if (0 === l.length && s) if (un(s)) {
|
|
2560
|
+
let e = Kn(s, r.id);
|
|
2387
2561
|
e >= 0 && s.splice(e, 1);
|
|
2388
2562
|
} else {
|
|
2389
|
-
let t =
|
|
2563
|
+
let t = kn(null, s, e.hook, null, 0), n = Kn(t, r.id);
|
|
2390
2564
|
n >= 0 && t.splice(n, 1);
|
|
2391
2565
|
}
|
|
2392
2566
|
return o;
|
|
2393
2567
|
}, e.jdb_get = function(e, t, n, r) {
|
|
2394
|
-
let o =
|
|
2395
|
-
return o ? (void 0 === r && (r = !0),
|
|
2568
|
+
let o = kn(null, kn(null, e, "topics", null, 0), t, null, 0);
|
|
2569
|
+
return o ? (void 0 === r && (r = !0), Xn(o, e.hook, n, r)) : (Wt("jdb_get: topic not found: " + t), null);
|
|
2396
2570
|
}, e.jdb_get_by_idx = function(e, t, n) {
|
|
2397
|
-
let r =
|
|
2398
|
-
return r ? n < r.length ? r[n] : {} : (
|
|
2571
|
+
let r = kn(null, kn(null, e, "topics", null, 0), t, null, 0);
|
|
2572
|
+
return r ? n < r.length ? r[n] : {} : (Wt("jdb_get_by_idx: topic not found: " + t), null);
|
|
2399
2573
|
}, e.jdb_get_topic = function(e, t) {
|
|
2400
|
-
let n =
|
|
2401
|
-
if (!n) return
|
|
2402
|
-
return
|
|
2574
|
+
let n = kn(null, e, "topics", null, 0);
|
|
2575
|
+
if (!n) return Wt("jdb topics section not found"), Yt(e), null;
|
|
2576
|
+
return kn(null, n, t, null, 0) || (Wt("jdb topic not found: " + t), Yt(n), null);
|
|
2403
2577
|
}, e.jdb_init = function(e, t, n) {
|
|
2404
|
-
n && (e =
|
|
2405
|
-
let r =
|
|
2406
|
-
|
|
2407
|
-
let o =
|
|
2408
|
-
return
|
|
2409
|
-
"__" !== t.substring(0, 2) &&
|
|
2578
|
+
n && (e = Jt(e));
|
|
2579
|
+
let r = kn(null, e, "type", [], 1);
|
|
2580
|
+
wn(null, e, "hook", "data", 1);
|
|
2581
|
+
let o = kn(null, e, "schema", {}, 1), i = kn(null, e, "topics", {}, 1);
|
|
2582
|
+
return Qn(o, function(e, t, n, o) {
|
|
2583
|
+
"__" !== t.substring(0, 2) && kn(null, i, o, Jt(r), 1);
|
|
2410
2584
|
}, t), e;
|
|
2411
2585
|
}, e.jdb_update = function(e, t, n, r) {
|
|
2412
|
-
let o =
|
|
2413
|
-
if (!o) return
|
|
2414
|
-
if (
|
|
2586
|
+
let o = kn(null, kn(null, e, "topics", null, 0), t, null, 0);
|
|
2587
|
+
if (!o) return Wt("jdb_update: topic not found: " + t), null;
|
|
2588
|
+
if (mn(r.id)) return Wt("jdb_update: record without id: " + r), Yt(r), null;
|
|
2415
2589
|
let i, l = n.split("`"), s = o;
|
|
2416
|
-
for (; (i = l.shift()) && !
|
|
2417
|
-
if (0 === l.length && s) if (
|
|
2590
|
+
for (; (i = l.shift()) && !mn(i) && s;) an(s) && (s = kn(null, s, e.hook, [], 1)), s = Xn(s, null, i, !1);
|
|
2591
|
+
if (0 === l.length && s) if (un(s)) s.push(r);
|
|
2418
2592
|
else if (s.id === r.id) Object.assign(s, r);
|
|
2419
2593
|
else {
|
|
2420
|
-
let t =
|
|
2594
|
+
let t = kn(null, s, e.hook, [], 1), n = Xn(t, e.hook, r.id, !1);
|
|
2421
2595
|
n ? Object.assign(n, r) : t.push(r);
|
|
2422
2596
|
}
|
|
2423
2597
|
return o;
|
|
2424
|
-
}, e.json_array_append =
|
|
2598
|
+
}, e.json_array_append = nn, e.json_array_append_new = rn, e.json_array_extend = function(e, t) {
|
|
2425
2599
|
return t ? (Array.prototype.push.apply(e, t), e) : e;
|
|
2426
|
-
}, e.json_array_remove =
|
|
2600
|
+
}, e.json_array_remove = on, e.json_array_size = sn, e.json_deep_copy = Jt, e.json_is_identical = Ht, e.json_object_del = Zt, e.json_object_get = Xt, e.json_object_set = en, e.json_object_set_new = tn, e.json_object_size = ln, e.json_object_update = qt, e.json_object_update_existing = zt, e.json_object_update_missing = Qt, e.json_size = _n, e.jwt2json = function(e, t) {
|
|
2427
2601
|
try {
|
|
2428
|
-
let n =
|
|
2602
|
+
let n = Zn(e);
|
|
2429
2603
|
switch (t) {
|
|
2430
2604
|
case "header": return JSON.parse(n.header);
|
|
2431
2605
|
case "signature": return JSON.parse(n.signature);
|
|
@@ -2434,122 +2608,122 @@
|
|
|
2434
2608
|
} catch (e) {
|
|
2435
2609
|
return null;
|
|
2436
2610
|
}
|
|
2437
|
-
}, e.jwtDecode =
|
|
2438
|
-
if (e && !
|
|
2439
|
-
r || (r =
|
|
2611
|
+
}, e.jwtDecode = Zn, e.kw_clone_by_keys = Pn, e.kw_clone_by_not_keys = Un, e.kw_collect = function(e, t, n, r) {
|
|
2612
|
+
if (e && !pn(e) && Wt("GObj bad instanceof"), !t) return null;
|
|
2613
|
+
r || (r = Ln);
|
|
2440
2614
|
let o = [];
|
|
2441
|
-
if (
|
|
2615
|
+
if (un(t)) for (let e = 0; e < t.length; e++) {
|
|
2442
2616
|
let i = t[e];
|
|
2443
2617
|
r(i, n) && o.push(i);
|
|
2444
2618
|
}
|
|
2445
2619
|
else {
|
|
2446
|
-
if (!
|
|
2620
|
+
if (!an(t)) return Wt("kw_select() BAD kw parameter"), null;
|
|
2447
2621
|
r(t, n) && o.push(t);
|
|
2448
2622
|
}
|
|
2449
2623
|
return o;
|
|
2450
|
-
}, e.kw_delete =
|
|
2451
|
-
if (!n || !
|
|
2452
|
-
for (let e = 0; e < t.length; e++) if (
|
|
2453
|
-
return r &&
|
|
2454
|
-
}, e.kw_find_path =
|
|
2455
|
-
e && !
|
|
2456
|
-
let i =
|
|
2457
|
-
const l = o && o &
|
|
2624
|
+
}, e.kw_delete = On, e.kw_find_json_in_list = function(e, t, n, r) {
|
|
2625
|
+
if (!n || !un(t)) return r && Wt("item NULL or kw_list is not a list"), -1;
|
|
2626
|
+
for (let e = 0; e < t.length; e++) if (Ht(n, t[e])) return e;
|
|
2627
|
+
return r && Wt("item not found in this list"), -1;
|
|
2628
|
+
}, e.kw_find_path = Sn, e.kw_flag_t = At, e.kw_get_bool = Nn, e.kw_get_dict = An, e.kw_get_dict_value = kn, e.kw_get_int = Rn, e.kw_get_list = function(e, t, n, r, o) {
|
|
2629
|
+
e && !pn(e) && Wt("GObj bad instanceof");
|
|
2630
|
+
let i = Sn(e, t, n, !1);
|
|
2631
|
+
const l = o && o & At.KW_REQUIRED, s = o && o & At.KW_CREATE, _ = o && o & At.KW_EXTRACT;
|
|
2458
2632
|
if (void 0 === i) {
|
|
2459
2633
|
if (s) {
|
|
2460
2634
|
let o = Array(r);
|
|
2461
|
-
return
|
|
2635
|
+
return In(e, t, n, o), o;
|
|
2462
2636
|
}
|
|
2463
|
-
return l && (
|
|
2637
|
+
return l && (Wt(`path not found: '${n}'`), Bt(t)), Array(r);
|
|
2464
2638
|
}
|
|
2465
|
-
return _ &&
|
|
2466
|
-
}, e.kw_get_local_storage_value =
|
|
2467
|
-
e && !
|
|
2468
|
-
let i =
|
|
2469
|
-
const l = o && o &
|
|
2639
|
+
return _ && On(e, t, n), un(i) ? Array(i) : (l && (Wt(`path value MUST BE an array: ${n}`), Yt(t)), Array(r));
|
|
2640
|
+
}, e.kw_get_local_storage_value = Fn, e.kw_get_pointer = Dn, e.kw_get_real = function(e, t, n, r, o) {
|
|
2641
|
+
e && !pn(e) && Wt("GObj bad instanceof");
|
|
2642
|
+
let i = Sn(e, t, n, !1);
|
|
2643
|
+
const l = o && o & At.KW_REQUIRED, s = o && o & At.KW_CREATE, _ = o && o & At.KW_EXTRACT;
|
|
2470
2644
|
if (void 0 === i) {
|
|
2471
2645
|
if (s) {
|
|
2472
2646
|
let o = Number(r);
|
|
2473
|
-
return
|
|
2647
|
+
return In(e, t, n, o), o;
|
|
2474
2648
|
}
|
|
2475
|
-
return l && (
|
|
2649
|
+
return l && (Wt(`path not found: '${n}'`), Bt(t)), Number(r);
|
|
2476
2650
|
}
|
|
2477
|
-
return _ &&
|
|
2478
|
-
}, e.kw_get_str =
|
|
2479
|
-
if (e && !
|
|
2480
|
-
r || (r =
|
|
2651
|
+
return _ && On(e, t, n), fn(i) ? Number(i) : (l && (Wt(`path value MUST BE a number: ${n}`), Yt(t)), Number(r));
|
|
2652
|
+
}, e.kw_get_str = wn, e.kw_has_key = jn, e.kw_match_simple = Ln, e.kw_pop = vn, e.kw_remove_local_storage_value = Vn, e.kw_select = function(e, t, n, r) {
|
|
2653
|
+
if (e && !pn(e) && Wt("GObj bad instanceof"), !t) return null;
|
|
2654
|
+
r || (r = Ln);
|
|
2481
2655
|
let o = [];
|
|
2482
|
-
if (
|
|
2656
|
+
if (un(t)) for (let e = 0; e < t.length; e++) {
|
|
2483
2657
|
let i = t[e];
|
|
2484
|
-
r(i, n) && o.push(
|
|
2658
|
+
r(i, n) && o.push(Jt(i));
|
|
2485
2659
|
}
|
|
2486
2660
|
else {
|
|
2487
|
-
if (!
|
|
2488
|
-
r(t, n) && o.push(
|
|
2661
|
+
if (!an(t)) return Wt("kw_select() BAD kw parameter"), null;
|
|
2662
|
+
r(t, n) && o.push(Jt(t));
|
|
2489
2663
|
}
|
|
2490
2664
|
return o;
|
|
2491
|
-
}, e.kw_set_dict_value =
|
|
2492
|
-
e && !
|
|
2493
|
-
let i =
|
|
2665
|
+
}, e.kw_set_dict_value = In, e.kw_set_local_storage_value = Gn, e.kw_set_subdict_value = $n, e.kwid_collect = Wn, e.kwid_find_one_record = function(e, t, n, r, o) {
|
|
2666
|
+
e && !pn(e) && Wt("GObj bad instanceof");
|
|
2667
|
+
let i = Wn(e, t, n, r, o);
|
|
2494
2668
|
return i.length > 0 ? i[0] : null;
|
|
2495
2669
|
}, e.kwid_get_ids = function(e, t) {
|
|
2496
|
-
if (e && !
|
|
2670
|
+
if (e && !pn(e) && Wt("GObj bad instanceof"), !t) return [];
|
|
2497
2671
|
let n = [];
|
|
2498
|
-
if (
|
|
2499
|
-
else if (
|
|
2500
|
-
else
|
|
2501
|
-
if (
|
|
2502
|
-
else if (
|
|
2503
|
-
let r =
|
|
2672
|
+
if (cn(t)) n.push(t);
|
|
2673
|
+
else if (an(t)) for (let e in t) t.hasOwnProperty(e) && n.push(e);
|
|
2674
|
+
else un(t) && t.forEach(function(t) {
|
|
2675
|
+
if (cn(t)) mn(t) || n.push(t);
|
|
2676
|
+
else if (an(t)) {
|
|
2677
|
+
let r = wn(e, t, "id", 0, 0);
|
|
2504
2678
|
r && n.push(r);
|
|
2505
2679
|
}
|
|
2506
2680
|
});
|
|
2507
2681
|
return n;
|
|
2508
|
-
}, e.kwid_match_id =
|
|
2509
|
-
e && !
|
|
2682
|
+
}, e.kwid_match_id = Mn, e.kwid_new_dict = function(e, t, n) {
|
|
2683
|
+
e && !pn(e) && Wt("GObj bad instanceof");
|
|
2510
2684
|
let r = {};
|
|
2511
|
-
if (
|
|
2512
|
-
else if (
|
|
2513
|
-
let o = t[n], i =
|
|
2514
|
-
|
|
2685
|
+
if (mn(n) || (t = Sn(e, t, n)), an(t)) r = t;
|
|
2686
|
+
else if (un(t)) for (let n = 0; n < t.length; n++) {
|
|
2687
|
+
let o = t[n], i = wn(e, o, "id", "", 0);
|
|
2688
|
+
mn(i) || (r[i] = o);
|
|
2515
2689
|
}
|
|
2516
|
-
else
|
|
2690
|
+
else Wt(`${Ge(e)} kwid_new_dict: data type unknown`);
|
|
2517
2691
|
return r;
|
|
2518
2692
|
}, e.list2options = function(e, t, n) {
|
|
2519
2693
|
t = t || "id", n = n || "value";
|
|
2520
2694
|
let r = [];
|
|
2521
|
-
if (
|
|
2695
|
+
if (un(e)) for (let o = 0; o < e.length; o++) {
|
|
2522
2696
|
let i = e[o];
|
|
2523
|
-
if (
|
|
2697
|
+
if (cn(i)) r.push({
|
|
2524
2698
|
id: e[o],
|
|
2525
2699
|
value: e[o]
|
|
2526
2700
|
});
|
|
2527
|
-
else if (
|
|
2701
|
+
else if (an(i)) {
|
|
2528
2702
|
let e = {};
|
|
2529
|
-
if (
|
|
2530
|
-
if (!
|
|
2531
|
-
if (!(
|
|
2532
|
-
|
|
2703
|
+
if (jn(i, t)) {
|
|
2704
|
+
if (!jn(i, n)) {
|
|
2705
|
+
if (!(_n(i) > 0)) {
|
|
2706
|
+
Wt("list2options(): object without field value: " + n);
|
|
2533
2707
|
continue;
|
|
2534
2708
|
}
|
|
2535
2709
|
n = Object.keys(i)[0];
|
|
2536
2710
|
}
|
|
2537
2711
|
e.id = i[t], e.value = i[n];
|
|
2538
2712
|
} else {
|
|
2539
|
-
if (!(
|
|
2540
|
-
|
|
2713
|
+
if (!(_n(i) > 0)) {
|
|
2714
|
+
Wt("list2options(): object without field id: " + t);
|
|
2541
2715
|
continue;
|
|
2542
2716
|
}
|
|
2543
2717
|
t = Object.keys(i)[0], e.id = t, e.value = i[t];
|
|
2544
2718
|
}
|
|
2545
2719
|
r.push(e);
|
|
2546
|
-
} else
|
|
2720
|
+
} else Wt("list2options(): case1 not implemented");
|
|
2547
2721
|
}
|
|
2548
|
-
else if (
|
|
2722
|
+
else if (an(e)) for (let t of Object.keys(e)) r.push({
|
|
2549
2723
|
id: t,
|
|
2550
2724
|
value: t
|
|
2551
2725
|
});
|
|
2552
|
-
else
|
|
2726
|
+
else Wt("list2options(): case2 not implemented");
|
|
2553
2727
|
return r;
|
|
2554
2728
|
}, e.load_json_file = function(e, t, n) {
|
|
2555
2729
|
let r = new XMLHttpRequest();
|
|
@@ -2557,18 +2731,18 @@
|
|
|
2557
2731
|
if (4 === r.readyState) if (200 === r.status || 0 === (e = r).status && e.responseText && e.responseURL.startsWith("file:")) try {
|
|
2558
2732
|
t(JSON.parse(r.responseText));
|
|
2559
2733
|
} catch (e) {
|
|
2560
|
-
n && (
|
|
2734
|
+
n && (Wt(`JSON parse status ${r.status}, error: ${e.message}`), n(r.status));
|
|
2561
2735
|
}
|
|
2562
2736
|
else n && n(r.status);
|
|
2563
2737
|
var e;
|
|
2564
2738
|
}, r.send();
|
|
2565
|
-
}, e.log_debug =
|
|
2566
|
-
let t =
|
|
2567
|
-
|
|
2568
|
-
}, e.log_warning =
|
|
2739
|
+
}, e.log_debug = xt, e.log_error = Wt, e.log_info = function(e) {
|
|
2740
|
+
let t = Mt(e), n = nr();
|
|
2741
|
+
Ct && Ut && Ct("%c" + n + " INFO: " + String(t), "color:cyan"), Gt("info", t, n);
|
|
2742
|
+
}, e.log_warning = Kt, e.msg_iev_get_msg_type = zn, e.msg_iev_get_stack = Hn, e.msg_iev_push_stack = Jn, e.msg_iev_read_key = Yn, e.msg_iev_set_msg_type = qn, e.msg_iev_write_key = Bn, e.node_uuid = or, e.parseBoolean = En, e.parseSVG = function(e) {
|
|
2569
2743
|
return new DOMParser().parseFromString(e, "image/svg+xml").firstChild;
|
|
2570
2744
|
}, e.refresh_language = function(e, t) {
|
|
2571
|
-
|
|
2745
|
+
bn(t) ? (e || (e = document), e.querySelectorAll("[data-i18n]").forEach(function(e) {
|
|
2572
2746
|
let n = e.getAttribute("data-i18n");
|
|
2573
2747
|
for (let r of e.childNodes) if (r.nodeType === Node.TEXT_NODE) {
|
|
2574
2748
|
n || (n = r.nodeValue), r.nodeValue = t(n);
|
|
@@ -2583,25 +2757,25 @@
|
|
|
2583
2757
|
}), e.querySelectorAll("[data-i18n-placeholder]").forEach(function(e) {
|
|
2584
2758
|
let n = e.getAttribute("data-i18n-placeholder");
|
|
2585
2759
|
n && e.setAttribute("placeholder", t(n));
|
|
2586
|
-
})) :
|
|
2760
|
+
})) : Wt("You must supply a translation function");
|
|
2587
2761
|
}, e.register_c_ievent_cli = function() {
|
|
2588
2762
|
return function(e) {
|
|
2589
|
-
if (
|
|
2763
|
+
if (wr) return Wt(`GClass ALREADY created: ${e}`), -1;
|
|
2590
2764
|
const t = [
|
|
2591
2765
|
["ST_DISCONNECTED", [
|
|
2592
2766
|
[
|
|
2593
2767
|
"EV_ON_OPEN",
|
|
2594
|
-
|
|
2768
|
+
Fr,
|
|
2595
2769
|
"ST_WAIT_IDENTITY_CARD_ACK"
|
|
2596
2770
|
],
|
|
2597
2771
|
[
|
|
2598
2772
|
"EV_ON_CLOSE",
|
|
2599
|
-
|
|
2773
|
+
Gr,
|
|
2600
2774
|
null
|
|
2601
2775
|
],
|
|
2602
2776
|
[
|
|
2603
2777
|
"EV_TIMEOUT",
|
|
2604
|
-
|
|
2778
|
+
Ur,
|
|
2605
2779
|
null
|
|
2606
2780
|
],
|
|
2607
2781
|
[
|
|
@@ -2613,22 +2787,22 @@
|
|
|
2613
2787
|
["ST_WAIT_IDENTITY_CARD_ACK", [
|
|
2614
2788
|
[
|
|
2615
2789
|
"EV_ON_MESSAGE",
|
|
2616
|
-
|
|
2790
|
+
Wr,
|
|
2617
2791
|
null
|
|
2618
2792
|
],
|
|
2619
2793
|
[
|
|
2620
2794
|
"EV_IDENTITY_CARD_ACK",
|
|
2621
|
-
|
|
2795
|
+
Mr,
|
|
2622
2796
|
null
|
|
2623
2797
|
],
|
|
2624
2798
|
[
|
|
2625
2799
|
"EV_ON_CLOSE",
|
|
2626
|
-
|
|
2800
|
+
Gr,
|
|
2627
2801
|
"ST_DISCONNECTED"
|
|
2628
2802
|
],
|
|
2629
2803
|
[
|
|
2630
2804
|
"EV_TIMEOUT",
|
|
2631
|
-
|
|
2805
|
+
Vr,
|
|
2632
2806
|
null
|
|
2633
2807
|
],
|
|
2634
2808
|
[
|
|
@@ -2640,22 +2814,22 @@
|
|
|
2640
2814
|
["ST_SESSION", [
|
|
2641
2815
|
[
|
|
2642
2816
|
"EV_ON_MESSAGE",
|
|
2643
|
-
|
|
2817
|
+
Wr,
|
|
2644
2818
|
null
|
|
2645
2819
|
],
|
|
2646
2820
|
[
|
|
2647
2821
|
"EV_MT_STATS",
|
|
2648
|
-
|
|
2822
|
+
Kr,
|
|
2649
2823
|
null
|
|
2650
2824
|
],
|
|
2651
2825
|
[
|
|
2652
2826
|
"EV_MT_COMMAND",
|
|
2653
|
-
|
|
2827
|
+
xr,
|
|
2654
2828
|
null
|
|
2655
2829
|
],
|
|
2656
2830
|
[
|
|
2657
2831
|
"EV_ON_CLOSE",
|
|
2658
|
-
|
|
2832
|
+
Gr,
|
|
2659
2833
|
"ST_DISCONNECTED"
|
|
2660
2834
|
],
|
|
2661
2835
|
[
|
|
@@ -2666,63 +2840,63 @@
|
|
|
2666
2840
|
]],
|
|
2667
2841
|
[null, null]
|
|
2668
2842
|
];
|
|
2669
|
-
return (
|
|
2670
|
-
["EV_ON_MESSAGE",
|
|
2671
|
-
["EV_IDENTITY_CARD_ACK",
|
|
2672
|
-
["EV_ON_ID_NAK",
|
|
2673
|
-
["EV_MT_STATS",
|
|
2674
|
-
["EV_MT_COMMAND",
|
|
2675
|
-
["EV_ON_OPEN",
|
|
2676
|
-
["EV_ON_CLOSE",
|
|
2677
|
-
["EV_ON_OPEN_ERROR",
|
|
2843
|
+
return (wr = ee(e, [
|
|
2844
|
+
["EV_ON_MESSAGE", D.EVF_OUTPUT_EVENT],
|
|
2845
|
+
["EV_IDENTITY_CARD_ACK", D.EVF_PUBLIC_EVENT],
|
|
2846
|
+
["EV_ON_ID_NAK", D.EVF_PUBLIC_EVENT | D.EVF_OUTPUT_EVENT],
|
|
2847
|
+
["EV_MT_STATS", D.EVF_PUBLIC_EVENT],
|
|
2848
|
+
["EV_MT_COMMAND", D.EVF_PUBLIC_EVENT],
|
|
2849
|
+
["EV_ON_OPEN", D.EVF_OUTPUT_EVENT | D.EVF_NO_WARN_SUBS],
|
|
2850
|
+
["EV_ON_CLOSE", D.EVF_OUTPUT_EVENT | D.EVF_NO_WARN_SUBS],
|
|
2851
|
+
["EV_ON_OPEN_ERROR", D.EVF_OUTPUT_EVENT | D.EVF_NO_WARN_SUBS],
|
|
2678
2852
|
["EV_TIMEOUT", 0],
|
|
2679
2853
|
[null, 0]
|
|
2680
|
-
], t,
|
|
2854
|
+
], t, Yr, 0, Nr, Rr, 0, 0, 0, N.gcflag_no_check_output_events)) ? 0 : -1;
|
|
2681
2855
|
}("C_IEVENT_CLI");
|
|
2682
2856
|
}, e.register_c_timer = function() {
|
|
2683
2857
|
return function(e) {
|
|
2684
|
-
if (
|
|
2858
|
+
if (dr) return Wt(`GClass ALREADY created: ${e}`), -1;
|
|
2685
2859
|
const t = [["ST_IDLE", [[
|
|
2686
2860
|
"EV_TIMEOUT",
|
|
2687
|
-
|
|
2861
|
+
br,
|
|
2688
2862
|
null
|
|
2689
2863
|
]]]];
|
|
2690
|
-
return (
|
|
2691
|
-
["EV_TIMEOUT",
|
|
2692
|
-
["EV_TIMEOUT_PERIODIC",
|
|
2864
|
+
return (dr = ee(e, [
|
|
2865
|
+
["EV_TIMEOUT", D.EVF_OUTPUT_EVENT],
|
|
2866
|
+
["EV_TIMEOUT_PERIODIC", D.EVF_OUTPUT_EVENT],
|
|
2693
2867
|
[0, 0]
|
|
2694
|
-
], t,
|
|
2868
|
+
], t, pr, 0, fr, gr, 0, 0, 0, N.gcflag_manual_start)) ? 0 : -1;
|
|
2695
2869
|
}("C_TIMER");
|
|
2696
2870
|
}, e.register_c_yuno = function() {
|
|
2697
2871
|
return function(e) {
|
|
2698
|
-
if (
|
|
2872
|
+
if (vr) return Wt(`GClass ALREADY created: ${e}`), -1;
|
|
2699
2873
|
const t = [["ST_IDLE", [[
|
|
2700
2874
|
"EV_TIMEOUT_PERIODIC",
|
|
2701
|
-
|
|
2875
|
+
jr,
|
|
2702
2876
|
null
|
|
2703
2877
|
]]]];
|
|
2704
|
-
return (
|
|
2878
|
+
return (vr = ee(e, [["EV_TIMEOUT_PERIODIC", D.EVF_OUTPUT_EVENT | D.EVF_NO_WARN_SUBS], [0, 0]], t, Sr, 0, hr, yr, 0, 0, 0, 0)) ? 0 : -1;
|
|
2705
2879
|
}("C_YUNO");
|
|
2706
2880
|
}, e.safeSrc = function(e) {
|
|
2707
2881
|
if (!e) return "";
|
|
2708
2882
|
const t = String(e).trim();
|
|
2709
|
-
return /^javascript:/i.test(t) || /^data:/i.test(t) ? "" :
|
|
2710
|
-
}, e.sdata_flag_t =
|
|
2883
|
+
return /^javascript:/i.test(t) || /^data:/i.test(t) ? "" : er(t);
|
|
2884
|
+
}, e.sdata_flag_t = h, e.send_http_json_post = function(e, t, n) {
|
|
2711
2885
|
let r = new XMLHttpRequest();
|
|
2712
2886
|
r.open("POST", e), r.setRequestHeader("Accept", "application/json"), r.setRequestHeader("Content-Type", "application/json"), r.onreadystatechange = function() {
|
|
2713
2887
|
4 === r.readyState && n(r.status, r.responseText);
|
|
2714
2888
|
}, r.send(t);
|
|
2715
2889
|
}, e.set_console_log_enabled = function(e) {
|
|
2716
|
-
|
|
2890
|
+
Ut = !!e;
|
|
2717
2891
|
}, e.set_log_callback = function(e) {
|
|
2718
|
-
|
|
2719
|
-
}, e.set_remote_log_functions =
|
|
2892
|
+
Pt = "function" == typeof e ? e : null;
|
|
2893
|
+
}, e.set_remote_log_functions = Vt, e.set_timeout = mr, e.set_timeout_periodic = Er, e.sprintf = n, e.stats_parser = function(e, t, n, r) {}, e.str_in_list = xn, e.strcasecmp = hn, e.strcmp = Tn, e.strncmp = function(e, t, n) {
|
|
2720
2894
|
var r = (e + "").substring(0, n), o = (t + "").substring(0, n);
|
|
2721
2895
|
return r === o ? 0 : r > o ? 1 : -1;
|
|
2722
2896
|
}, e.strs_in_list = function(e, t, n) {
|
|
2723
|
-
if (!e) return
|
|
2724
|
-
if (!t) return
|
|
2725
|
-
for (let r = 0; r < t.length; r++) if (
|
|
2897
|
+
if (!e) return Wt("ERROR: strs_in_list() list empty"), !1;
|
|
2898
|
+
if (!t) return Wt("ERROR: strs_in_list() str empty"), !1;
|
|
2899
|
+
for (let r = 0; r < t.length; r++) if (xn(e, t[r], n)) return !0;
|
|
2726
2900
|
return !1;
|
|
2727
2901
|
}, e.strstr = function(e, t, n) {
|
|
2728
2902
|
var r;
|
|
@@ -2741,13 +2915,13 @@
|
|
|
2741
2915
|
placeholder: void 0,
|
|
2742
2916
|
fkey: null
|
|
2743
2917
|
};
|
|
2744
|
-
if (
|
|
2918
|
+
if (cn(t)) {
|
|
2745
2919
|
let e = t.split(".");
|
|
2746
2920
|
for (let t = 0; t < e.length; t++) {
|
|
2747
2921
|
let r = e[t];
|
|
2748
|
-
if (
|
|
2749
|
-
else if (
|
|
2750
|
-
else if (
|
|
2922
|
+
if (xn(_r, r)) n.real_type || (n.real_type = r);
|
|
2923
|
+
else if (xn(ur, r)) n.type || (n.type = r);
|
|
2924
|
+
else if (xn(ar, r)) switch (r) {
|
|
2751
2925
|
case "writable":
|
|
2752
2926
|
n.is_writable = !0;
|
|
2753
2927
|
break;
|
|
@@ -2759,23 +2933,23 @@
|
|
|
2759
2933
|
}
|
|
2760
2934
|
}
|
|
2761
2935
|
n.real_type || (n.real_type = "string");
|
|
2762
|
-
} else
|
|
2936
|
+
} else an(t) ? (n = cr(t), n.name || (n.name = e), n.header || (n.header = e)) : un(t) && (n.real_type = "array", n.enum_list = t);
|
|
2763
2937
|
return n.type || (n.type = n.real_type), n;
|
|
2764
2938
|
}, e.timeTracker = function(e = "Time Tracker", t = !1) {
|
|
2765
2939
|
const n = e, r = performance.now();
|
|
2766
2940
|
let o = r;
|
|
2767
|
-
return t &&
|
|
2941
|
+
return t && Kt(`--\x3e ${n} - starting`), { mark: (e = "Intermediate", i = "") => {
|
|
2768
2942
|
const l = performance.now(), s = (l - o) / 1e3, _ = (l - r) / 1e3;
|
|
2769
|
-
return t &&
|
|
2943
|
+
return t && Kt(`--\x3e ${n} ${e} - partial: ${s} sec, total: ${_} sec, ${i}`), o = l, {
|
|
2770
2944
|
partial: s,
|
|
2771
2945
|
total: _
|
|
2772
2946
|
};
|
|
2773
2947
|
} };
|
|
2774
|
-
}, e.trace_json =
|
|
2775
|
-
if (
|
|
2948
|
+
}, e.trace_json = Bt, e.trace_level_t = P, e.trace_msg = Yt, e.treedb_decoder_fkey = sr, e.treedb_decoder_hook = function(e, t) {
|
|
2949
|
+
if (cn(t)) {
|
|
2776
2950
|
if (-1 === t.indexOf("^")) {
|
|
2777
2951
|
let n, r = e.hook;
|
|
2778
|
-
if (1 !==
|
|
2952
|
+
if (1 !== ln(r)) return Wt("bad hook 1"), Wt(e), Wt(t), null;
|
|
2779
2953
|
for (let e of Object.keys(r)) {
|
|
2780
2954
|
n = e, r[e];
|
|
2781
2955
|
break;
|
|
@@ -2787,25 +2961,25 @@
|
|
|
2787
2961
|
}
|
|
2788
2962
|
{
|
|
2789
2963
|
let n = t.split("^");
|
|
2790
|
-
return 2 !== n.length ? (
|
|
2964
|
+
return 2 !== n.length ? (Wt("bad hook 2"), Wt(e), Wt(t), null) : {
|
|
2791
2965
|
topic_name: n[0],
|
|
2792
2966
|
id: n[1]
|
|
2793
2967
|
};
|
|
2794
2968
|
}
|
|
2795
2969
|
}
|
|
2796
|
-
return
|
|
2970
|
+
return an(t) ? {
|
|
2797
2971
|
topic_name: t.topic_name,
|
|
2798
2972
|
id: t.id
|
|
2799
|
-
} : (
|
|
2973
|
+
} : (Wt("bad hook 3"), Wt(e), Wt(t), null);
|
|
2800
2974
|
}, e.treedb_encoder_fkey = function(e, t) {
|
|
2801
|
-
let n =
|
|
2975
|
+
let n = sr(e, t);
|
|
2802
2976
|
return n ? n.topic_name + "^" + n.id + "^" + n.hook_name : null;
|
|
2803
|
-
}, e.treedb_get_field_desc =
|
|
2804
|
-
if (
|
|
2977
|
+
}, e.treedb_get_field_desc = cr, e.treedb_hook_data_size = function(e) {
|
|
2978
|
+
if (un(e) && 1 === _n(e)) {
|
|
2805
2979
|
let t = e[0];
|
|
2806
|
-
return
|
|
2980
|
+
return jn(t, "size") ? t.size : 1;
|
|
2807
2981
|
}
|
|
2808
|
-
return
|
|
2982
|
+
return _n(e);
|
|
2809
2983
|
}, e.vsprintf = function(e, t) {
|
|
2810
2984
|
return n.apply(null, [e].concat(t || []));
|
|
2811
2985
|
};
|