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