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